@teleporthq/teleport-plugin-next-workflows 0.43.41 → 0.43.44
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/__tests__/cart-availability-add-to-cart.test.ts +47 -0
- package/__tests__/component-scope-trigger-routing.test.ts +130 -0
- package/__tests__/cron-route-loop-templateparams.test.ts +144 -0
- package/__tests__/data-api-on-conflict-do-nothing.test.ts +35 -0
- package/__tests__/email-body-context-resolution.test.ts +126 -0
- package/__tests__/page-loaded-scoping-skip.test.ts +97 -0
- package/__tests__/raw-sql-param-binding.test.ts +138 -0
- package/__tests__/route-changed-trigger.test.ts +106 -0
- package/__tests__/state-update-missing-setter-warn.test.ts +180 -0
- package/dist/cjs/account-delete-route-generator.d.ts +13 -0
- package/dist/cjs/account-delete-route-generator.d.ts.map +1 -0
- package/dist/cjs/account-delete-route-generator.js +247 -0
- package/dist/cjs/account-delete-route-generator.js.map +1 -0
- package/dist/cjs/api-route-generator.d.ts +1 -1
- package/dist/cjs/api-route-generator.d.ts.map +1 -1
- package/dist/cjs/api-route-generator.js +29 -33
- package/dist/cjs/api-route-generator.js.map +1 -1
- package/dist/cjs/auth-generator.d.ts +9 -1
- package/dist/cjs/auth-generator.d.ts.map +1 -1
- package/dist/cjs/auth-generator.js +53 -2
- package/dist/cjs/auth-generator.js.map +1 -1
- package/dist/cjs/data-api-route-generator.d.ts.map +1 -1
- package/dist/cjs/data-api-route-generator.js +11 -2
- package/dist/cjs/data-api-route-generator.js.map +1 -1
- package/dist/cjs/ecommerce/cart-availability.d.ts.map +1 -1
- package/dist/cjs/ecommerce/cart-availability.js +49 -2
- package/dist/cjs/ecommerce/cart-availability.js.map +1 -1
- package/dist/cjs/ecommerce/stock-decrement.d.ts +1 -1
- package/dist/cjs/ecommerce/stock-decrement.d.ts.map +1 -1
- package/dist/cjs/ecommerce/stock-decrement.js +48 -10
- package/dist/cjs/ecommerce/stock-decrement.js.map +1 -1
- package/dist/cjs/executor-generator.d.ts.map +1 -1
- package/dist/cjs/executor-generator.js +62 -0
- package/dist/cjs/executor-generator.js.map +1 -1
- package/dist/cjs/graph-utils.d.ts.map +1 -1
- package/dist/cjs/graph-utils.js +1 -0
- package/dist/cjs/graph-utils.js.map +1 -1
- package/dist/cjs/invoice/api-routes-code.d.ts.map +1 -1
- package/dist/cjs/invoice/api-routes-code.js +2 -0
- package/dist/cjs/invoice/api-routes-code.js.map +1 -1
- package/dist/cjs/invoice/data-access-code.d.ts.map +1 -1
- package/dist/cjs/invoice/data-access-code.js +2 -0
- package/dist/cjs/invoice/data-access-code.js.map +1 -1
- package/dist/cjs/invoice/invoice-html-code.d.ts.map +1 -1
- package/dist/cjs/invoice/invoice-html-code.js +22 -2
- package/dist/cjs/invoice/invoice-html-code.js.map +1 -1
- package/dist/cjs/nodes/account/account-delete-current.d.ts +3 -0
- package/dist/cjs/nodes/account/account-delete-current.d.ts.map +1 -0
- package/dist/cjs/nodes/account/account-delete-current.js +79 -0
- package/dist/cjs/nodes/account/account-delete-current.js.map +1 -0
- package/dist/cjs/nodes/account/account-signup.d.ts.map +1 -1
- package/dist/cjs/nodes/account/account-signup.js +20 -1
- package/dist/cjs/nodes/account/account-signup.js.map +1 -1
- package/dist/cjs/nodes/data/data-create-item.d.ts.map +1 -1
- package/dist/cjs/nodes/data/data-create-item.js +7 -0
- package/dist/cjs/nodes/data/data-create-item.js.map +1 -1
- package/dist/cjs/nodes/index.d.ts.map +1 -1
- package/dist/cjs/nodes/index.js +2 -1
- package/dist/cjs/nodes/index.js.map +1 -1
- package/dist/cjs/nodes/payment/payment-charge-user.d.ts.map +1 -1
- package/dist/cjs/nodes/payment/payment-charge-user.js +9 -1
- package/dist/cjs/nodes/payment/payment-charge-user.js.map +1 -1
- package/dist/cjs/pg-client-code.d.ts +11 -0
- package/dist/cjs/pg-client-code.d.ts.map +1 -0
- package/dist/cjs/pg-client-code.js +75 -0
- package/dist/cjs/pg-client-code.js.map +1 -0
- package/dist/cjs/raw-sql-param-binding.d.ts +82 -0
- package/dist/cjs/raw-sql-param-binding.d.ts.map +1 -0
- package/dist/cjs/raw-sql-param-binding.js +321 -0
- package/dist/cjs/raw-sql-param-binding.js.map +1 -0
- package/dist/cjs/transactional-email-code.d.ts +6 -0
- package/dist/cjs/transactional-email-code.d.ts.map +1 -0
- package/dist/cjs/transactional-email-code.js +112 -0
- package/dist/cjs/transactional-email-code.js.map +1 -0
- package/dist/cjs/trigger-generator.d.ts.map +1 -1
- package/dist/cjs/trigger-generator.js +29 -0
- package/dist/cjs/trigger-generator.js.map +1 -1
- package/dist/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/cjs/workflow-component-plugin.js +60 -2
- package/dist/cjs/workflow-component-plugin.js.map +1 -1
- package/dist/cjs/workflow-project-plugin.d.ts.map +1 -1
- package/dist/cjs/workflow-project-plugin.js +188 -28
- package/dist/cjs/workflow-project-plugin.js.map +1 -1
- package/dist/esm/account-delete-route-generator.d.ts +13 -0
- package/dist/esm/account-delete-route-generator.d.ts.map +1 -0
- package/dist/esm/account-delete-route-generator.js +243 -0
- package/dist/esm/account-delete-route-generator.js.map +1 -0
- package/dist/esm/api-route-generator.d.ts +1 -1
- package/dist/esm/api-route-generator.d.ts.map +1 -1
- package/dist/esm/api-route-generator.js +29 -33
- package/dist/esm/api-route-generator.js.map +1 -1
- package/dist/esm/auth-generator.d.ts +9 -1
- package/dist/esm/auth-generator.d.ts.map +1 -1
- package/dist/esm/auth-generator.js +53 -2
- package/dist/esm/auth-generator.js.map +1 -1
- package/dist/esm/data-api-route-generator.d.ts.map +1 -1
- package/dist/esm/data-api-route-generator.js +11 -2
- package/dist/esm/data-api-route-generator.js.map +1 -1
- package/dist/esm/ecommerce/cart-availability.d.ts.map +1 -1
- package/dist/esm/ecommerce/cart-availability.js +49 -2
- package/dist/esm/ecommerce/cart-availability.js.map +1 -1
- package/dist/esm/ecommerce/stock-decrement.d.ts +1 -1
- package/dist/esm/ecommerce/stock-decrement.d.ts.map +1 -1
- package/dist/esm/ecommerce/stock-decrement.js +48 -10
- package/dist/esm/ecommerce/stock-decrement.js.map +1 -1
- package/dist/esm/executor-generator.d.ts.map +1 -1
- package/dist/esm/executor-generator.js +62 -0
- package/dist/esm/executor-generator.js.map +1 -1
- package/dist/esm/graph-utils.d.ts.map +1 -1
- package/dist/esm/graph-utils.js +1 -0
- package/dist/esm/graph-utils.js.map +1 -1
- package/dist/esm/invoice/api-routes-code.d.ts.map +1 -1
- package/dist/esm/invoice/api-routes-code.js +2 -0
- package/dist/esm/invoice/api-routes-code.js.map +1 -1
- package/dist/esm/invoice/data-access-code.d.ts.map +1 -1
- package/dist/esm/invoice/data-access-code.js +2 -0
- package/dist/esm/invoice/data-access-code.js.map +1 -1
- package/dist/esm/invoice/invoice-html-code.d.ts.map +1 -1
- package/dist/esm/invoice/invoice-html-code.js +22 -2
- package/dist/esm/invoice/invoice-html-code.js.map +1 -1
- package/dist/esm/nodes/account/account-delete-current.d.ts +3 -0
- package/dist/esm/nodes/account/account-delete-current.d.ts.map +1 -0
- package/dist/esm/nodes/account/account-delete-current.js +76 -0
- package/dist/esm/nodes/account/account-delete-current.js.map +1 -0
- package/dist/esm/nodes/account/account-signup.d.ts.map +1 -1
- package/dist/esm/nodes/account/account-signup.js +20 -1
- package/dist/esm/nodes/account/account-signup.js.map +1 -1
- package/dist/esm/nodes/data/data-create-item.d.ts.map +1 -1
- package/dist/esm/nodes/data/data-create-item.js +7 -0
- package/dist/esm/nodes/data/data-create-item.js.map +1 -1
- package/dist/esm/nodes/index.d.ts.map +1 -1
- package/dist/esm/nodes/index.js +2 -1
- package/dist/esm/nodes/index.js.map +1 -1
- package/dist/esm/nodes/payment/payment-charge-user.d.ts.map +1 -1
- package/dist/esm/nodes/payment/payment-charge-user.js +9 -1
- package/dist/esm/nodes/payment/payment-charge-user.js.map +1 -1
- package/dist/esm/pg-client-code.d.ts +11 -0
- package/dist/esm/pg-client-code.d.ts.map +1 -0
- package/dist/esm/pg-client-code.js +71 -0
- package/dist/esm/pg-client-code.js.map +1 -0
- package/dist/esm/raw-sql-param-binding.d.ts +82 -0
- package/dist/esm/raw-sql-param-binding.d.ts.map +1 -0
- package/dist/esm/raw-sql-param-binding.js +314 -0
- package/dist/esm/raw-sql-param-binding.js.map +1 -0
- package/dist/esm/transactional-email-code.d.ts +6 -0
- package/dist/esm/transactional-email-code.d.ts.map +1 -0
- package/dist/esm/transactional-email-code.js +106 -0
- package/dist/esm/transactional-email-code.js.map +1 -0
- package/dist/esm/trigger-generator.d.ts.map +1 -1
- package/dist/esm/trigger-generator.js +29 -0
- package/dist/esm/trigger-generator.js.map +1 -1
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/dist/esm/workflow-component-plugin.js +60 -2
- package/dist/esm/workflow-component-plugin.js.map +1 -1
- package/dist/esm/workflow-project-plugin.d.ts.map +1 -1
- package/dist/esm/workflow-project-plugin.js +188 -28
- package/dist/esm/workflow-project-plugin.js.map +1 -1
- package/package.json +4 -4
- package/src/account-delete-route-generator.ts +269 -0
- package/src/api-route-generator.ts +35 -33
- package/src/auth-generator.ts +77 -2
- package/src/data-api-route-generator.ts +11 -2
- package/src/ecommerce/cart-availability.ts +49 -2
- package/src/ecommerce/stock-decrement.ts +48 -10
- package/src/executor-generator.ts +62 -0
- package/src/graph-utils.ts +1 -0
- package/src/invoice/api-routes-code.ts +2 -0
- package/src/invoice/data-access-code.ts +2 -0
- package/src/invoice/invoice-html-code.ts +22 -2
- package/src/nodes/account/account-delete-current.ts +86 -0
- package/src/nodes/account/account-signup.ts +20 -1
- package/src/nodes/data/data-create-item.ts +7 -0
- package/src/nodes/index.ts +2 -0
- package/src/nodes/payment/payment-charge-user.ts +9 -1
- package/src/pg-client-code.ts +70 -0
- package/src/raw-sql-param-binding.ts +406 -0
- package/src/transactional-email-code.ts +112 -0
- package/src/trigger-generator.ts +35 -0
- package/src/workflow-component-plugin.ts +71 -2
- package/src/workflow-project-plugin.ts +221 -26
|
@@ -0,0 +1,321 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* SECURITY NET — parameterize interpolated context/state values in raw-SQL nodes.
|
|
4
|
+
*
|
|
5
|
+
* Runs at GENERATION time (in the workflows plugin's `runBefore`), BEFORE any
|
|
6
|
+
* node config is emitted or redacted. For every raw-SQL-bearing node config it
|
|
7
|
+
* rewrites each `{{ … }}` VALUE interpolation into a positional `$N` placeholder
|
|
8
|
+
* and moves the bound value into the sibling `params` / `rawQueryUserPartParams`
|
|
9
|
+
* array:
|
|
10
|
+
* - a `{{ name }}` matching a `queryVariables` entry binds that entry's value
|
|
11
|
+
* (a `workflowContext` ref, resolved to the node output at runtime, or a
|
|
12
|
+
* literal string);
|
|
13
|
+
* - any other `{{ … }}` token (e.g. `{{state.X}}`) keeps its `{{ … }}` text in
|
|
14
|
+
* the params entry so the runtime executor resolves it to a concrete value.
|
|
15
|
+
* Either way the value binds via `client.query(sql, params)`, never as inline
|
|
16
|
+
* SQL text — SQL injection is impossible for the value class. Identifier-position
|
|
17
|
+
* tokens (and context refs inside a string literal) cannot be bound, so they are
|
|
18
|
+
* left in the query and reported as residuals; the workflow FAILS LOUDLY.
|
|
19
|
+
*
|
|
20
|
+
* PAIRED with the GUI source-of-truth
|
|
21
|
+
* `teleport-gui/packages/workflow-schema/src/validation/raw-sql-param-binding.ts`
|
|
22
|
+
* and the worker's
|
|
23
|
+
* `teleport-services-worker/.../ai-generation/utils/workflows/raw-sql-param-binding.ts`.
|
|
24
|
+
* Keep all three in sync.
|
|
25
|
+
*/
|
|
26
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
|
+
exports.parameterizeAllWorkflowRawSql = exports.parameterizeWorkflowRawSqlInterpolations = exports.WorkflowSqlInterpolationError = exports.parameterizeRawSqlInterpolations = void 0;
|
|
28
|
+
const TEMPLATE_TOKEN_RE = /\{\{[\s\S]*?\}\}/g;
|
|
29
|
+
const SENTINEL = '\x01';
|
|
30
|
+
const SENTINEL_MARKER = 'TQP';
|
|
31
|
+
const escapeRegExp = (s) => s.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
32
|
+
const LEADING_SENTINEL_RE = new RegExp(`^${escapeRegExp(SENTINEL)}${SENTINEL_MARKER}(\\d+)${escapeRegExp(SENTINEL)}`);
|
|
33
|
+
const SENTINEL_EXPAND_RE = new RegExp(`${escapeRegExp(SENTINEL)}${SENTINEL_MARKER}(\\d+)${escapeRegExp(SENTINEL)}`, 'g');
|
|
34
|
+
const VALUE_OPERATOR_CHARS = '=<>(,+-*/%|~';
|
|
35
|
+
const VALUE_KEYWORDS = new Set([
|
|
36
|
+
'LIKE',
|
|
37
|
+
'ILIKE',
|
|
38
|
+
'IN',
|
|
39
|
+
'VALUES',
|
|
40
|
+
'LIMIT',
|
|
41
|
+
'OFFSET',
|
|
42
|
+
'AND',
|
|
43
|
+
'OR',
|
|
44
|
+
'BETWEEN',
|
|
45
|
+
]);
|
|
46
|
+
function isValueContext(prefix) {
|
|
47
|
+
const trimmed = prefix.replace(/\s+$/, '');
|
|
48
|
+
if (trimmed.length === 0) {
|
|
49
|
+
return false;
|
|
50
|
+
}
|
|
51
|
+
const last = trimmed[trimmed.length - 1];
|
|
52
|
+
if (VALUE_OPERATOR_CHARS.indexOf(last) !== -1) {
|
|
53
|
+
return true;
|
|
54
|
+
}
|
|
55
|
+
const wordMatch = /([A-Za-z_]+)$/.exec(trimmed);
|
|
56
|
+
if (wordMatch && VALUE_KEYWORDS.has(wordMatch[1].toUpperCase())) {
|
|
57
|
+
return true;
|
|
58
|
+
}
|
|
59
|
+
return false;
|
|
60
|
+
}
|
|
61
|
+
function maxExistingPlaceholder(query) {
|
|
62
|
+
let max = 0;
|
|
63
|
+
const re = /\$(\d+)/g;
|
|
64
|
+
let m = re.exec(query);
|
|
65
|
+
while (m !== null) {
|
|
66
|
+
const n = parseInt(m[1], 10);
|
|
67
|
+
if (n > max) {
|
|
68
|
+
max = n;
|
|
69
|
+
}
|
|
70
|
+
m = re.exec(query);
|
|
71
|
+
}
|
|
72
|
+
return max;
|
|
73
|
+
}
|
|
74
|
+
function tokenName(token) {
|
|
75
|
+
return token
|
|
76
|
+
.replace(/^\{\{\s*/, '')
|
|
77
|
+
.replace(/\s*\}\}$/, '')
|
|
78
|
+
.trim();
|
|
79
|
+
}
|
|
80
|
+
function indexVariables(variables) {
|
|
81
|
+
const map = new Map();
|
|
82
|
+
if (!Array.isArray(variables)) {
|
|
83
|
+
return map;
|
|
84
|
+
}
|
|
85
|
+
for (const v of variables) {
|
|
86
|
+
if (v && typeof v.name === 'string' && v.name.length > 0) {
|
|
87
|
+
map.set(v.name, v.value);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
return map;
|
|
91
|
+
}
|
|
92
|
+
function isContextRef(value) {
|
|
93
|
+
return (!!value && typeof value === 'object' && value.type === 'workflowContext');
|
|
94
|
+
}
|
|
95
|
+
function parameterizeRawSqlInterpolations(rawQuery, variables = [], startIndex = 0) {
|
|
96
|
+
var _a, _b;
|
|
97
|
+
if (typeof rawQuery !== 'string' || rawQuery.indexOf('{{') === -1) {
|
|
98
|
+
return { query: rawQuery, params: [], residuals: [], changed: false };
|
|
99
|
+
}
|
|
100
|
+
const varMap = indexVariables(variables);
|
|
101
|
+
const paramFor = (token) => {
|
|
102
|
+
const match = varMap.get(tokenName(token));
|
|
103
|
+
return match !== undefined ? match : token;
|
|
104
|
+
};
|
|
105
|
+
const tokens = [];
|
|
106
|
+
const sentinelized = rawQuery.replace(TEMPLATE_TOKEN_RE, (match) => {
|
|
107
|
+
const idx = tokens.length;
|
|
108
|
+
tokens.push(match);
|
|
109
|
+
return `${SENTINEL}TQP${idx}${SENTINEL}`;
|
|
110
|
+
});
|
|
111
|
+
const expand = (s) => s.replace(SENTINEL_EXPAND_RE, (_full, d) => tokens[parseInt(d, 10)]);
|
|
112
|
+
const params = [];
|
|
113
|
+
let out = '';
|
|
114
|
+
let i = 0;
|
|
115
|
+
let paramN = Math.max(startIndex, maxExistingPlaceholder(rawQuery));
|
|
116
|
+
const n = sentinelized.length;
|
|
117
|
+
while (i < n) {
|
|
118
|
+
const ch = sentinelized[i];
|
|
119
|
+
if (ch === "'") {
|
|
120
|
+
let j = i + 1;
|
|
121
|
+
let body = '';
|
|
122
|
+
let closed = false;
|
|
123
|
+
while (j < n) {
|
|
124
|
+
if (sentinelized[j] === "'" && sentinelized[j + 1] === "'") {
|
|
125
|
+
body += "''";
|
|
126
|
+
j += 2;
|
|
127
|
+
continue;
|
|
128
|
+
}
|
|
129
|
+
if (sentinelized[j] === "'") {
|
|
130
|
+
j++;
|
|
131
|
+
closed = true;
|
|
132
|
+
break;
|
|
133
|
+
}
|
|
134
|
+
body += sentinelized[j];
|
|
135
|
+
j++;
|
|
136
|
+
}
|
|
137
|
+
const bodyTokens = (_a = expand(body).match(TEMPLATE_TOKEN_RE)) !== null && _a !== void 0 ? _a : [];
|
|
138
|
+
const hasRefToken = bodyTokens.some((t) => isContextRef(paramFor(t)));
|
|
139
|
+
if (closed && body.indexOf(SENTINEL) !== -1 && !hasRefToken) {
|
|
140
|
+
paramN++;
|
|
141
|
+
params.push(expand(body).replace(/''/g, "'"));
|
|
142
|
+
out += '$' + paramN;
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
145
|
+
out += "'" + expand(body) + (closed ? "'" : '');
|
|
146
|
+
}
|
|
147
|
+
i = j;
|
|
148
|
+
continue;
|
|
149
|
+
}
|
|
150
|
+
if (ch === SENTINEL) {
|
|
151
|
+
const m = LEADING_SENTINEL_RE.exec(sentinelized.slice(i));
|
|
152
|
+
if (m) {
|
|
153
|
+
const token = tokens[parseInt(m[1], 10)];
|
|
154
|
+
if (isValueContext(out)) {
|
|
155
|
+
paramN++;
|
|
156
|
+
params.push(paramFor(token));
|
|
157
|
+
out += '$' + paramN;
|
|
158
|
+
}
|
|
159
|
+
else {
|
|
160
|
+
out += token;
|
|
161
|
+
}
|
|
162
|
+
i += m[0].length;
|
|
163
|
+
continue;
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
out += ch;
|
|
167
|
+
i++;
|
|
168
|
+
}
|
|
169
|
+
out = expand(out);
|
|
170
|
+
const residuals = (_b = out.match(TEMPLATE_TOKEN_RE)) !== null && _b !== void 0 ? _b : [];
|
|
171
|
+
return {
|
|
172
|
+
query: out,
|
|
173
|
+
params,
|
|
174
|
+
residuals,
|
|
175
|
+
changed: params.length > 0 || residuals.length > 0,
|
|
176
|
+
};
|
|
177
|
+
}
|
|
178
|
+
exports.parameterizeRawSqlInterpolations = parameterizeRawSqlInterpolations;
|
|
179
|
+
class WorkflowSqlInterpolationError extends Error {
|
|
180
|
+
constructor(residualsByNode) {
|
|
181
|
+
const detail = residualsByNode
|
|
182
|
+
.map((r) => `${r.nodeId}.${r.field}: ${r.residuals.join(', ')}`)
|
|
183
|
+
.join('; ');
|
|
184
|
+
super(`Raw-SQL node interpolates a value that cannot be safely parameterized ` +
|
|
185
|
+
`(a dynamic identifier — table/column name — or a context ref inside a ` +
|
|
186
|
+
`string literal): ${detail}. Refusing to ship injectable SQL.`);
|
|
187
|
+
// Restore the prototype chain — `extends Error` loses it when this module is
|
|
188
|
+
// downlevelled to ES5, which would break `instanceof` checks.
|
|
189
|
+
Object.setPrototypeOf(this, WorkflowSqlInterpolationError.prototype);
|
|
190
|
+
this.name = 'WorkflowSqlInterpolationError';
|
|
191
|
+
this.residualsByNode = residualsByNode;
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
exports.WorkflowSqlInterpolationError = WorkflowSqlInterpolationError;
|
|
195
|
+
const RAW_SQL_FIELDS = [
|
|
196
|
+
{
|
|
197
|
+
nodeType: 'data-raw-query',
|
|
198
|
+
queryField: 'query',
|
|
199
|
+
variablesField: 'queryVariables',
|
|
200
|
+
paramsField: 'params',
|
|
201
|
+
},
|
|
202
|
+
{
|
|
203
|
+
nodeType: 'data-select',
|
|
204
|
+
queryField: 'rawQueryUserPart',
|
|
205
|
+
variablesField: 'rawQueryUserPartVariables',
|
|
206
|
+
paramsField: 'rawQueryUserPartParams',
|
|
207
|
+
},
|
|
208
|
+
{
|
|
209
|
+
nodeType: 'data-count',
|
|
210
|
+
queryField: 'rawQueryUserPart',
|
|
211
|
+
variablesField: 'rawQueryUserPartVariables',
|
|
212
|
+
paramsField: 'rawQueryUserPartParams',
|
|
213
|
+
},
|
|
214
|
+
];
|
|
215
|
+
function nodeConfigOf(node) {
|
|
216
|
+
var _a, _b;
|
|
217
|
+
return (_b = (_a = node.data) === null || _a === void 0 ? void 0 : _a.config) !== null && _b !== void 0 ? _b : node.config;
|
|
218
|
+
}
|
|
219
|
+
function nodeTypeOf(node) {
|
|
220
|
+
var _a, _b;
|
|
221
|
+
return (_b = (_a = node.data) === null || _a === void 0 ? void 0 : _a.nodeType) !== null && _b !== void 0 ? _b : node.type;
|
|
222
|
+
}
|
|
223
|
+
/**
|
|
224
|
+
* Convert every raw-SQL node's `{{ name }}` interpolations in one workflow into
|
|
225
|
+
* bound `$N` params, in place. All-or-nothing: mutates only when EVERY raw-SQL
|
|
226
|
+
* node is safe; otherwise throws {@link WorkflowSqlInterpolationError} and leaves
|
|
227
|
+
* the workflow untouched. `nodes` may be an array or an id-keyed record.
|
|
228
|
+
*/
|
|
229
|
+
function parameterizeWorkflowRawSqlInterpolations(workflow) {
|
|
230
|
+
var _a;
|
|
231
|
+
const rawNodes = workflow === null || workflow === void 0 ? void 0 : workflow.nodes;
|
|
232
|
+
const nodes = Array.isArray(rawNodes)
|
|
233
|
+
? rawNodes
|
|
234
|
+
: rawNodes && typeof rawNodes === 'object'
|
|
235
|
+
? Object.values(rawNodes)
|
|
236
|
+
: [];
|
|
237
|
+
const pendingWrites = [];
|
|
238
|
+
const residualsByNode = [];
|
|
239
|
+
for (const node of nodes) {
|
|
240
|
+
const nodeType = nodeTypeOf(node);
|
|
241
|
+
const spec = RAW_SQL_FIELDS.find((f) => f.nodeType === nodeType);
|
|
242
|
+
if (!spec) {
|
|
243
|
+
continue;
|
|
244
|
+
}
|
|
245
|
+
const config = nodeConfigOf(node);
|
|
246
|
+
if (!config) {
|
|
247
|
+
continue;
|
|
248
|
+
}
|
|
249
|
+
const rawQuery = config[spec.queryField];
|
|
250
|
+
if (typeof rawQuery !== 'string' || rawQuery.indexOf('{{') === -1) {
|
|
251
|
+
continue;
|
|
252
|
+
}
|
|
253
|
+
const variables = Array.isArray(config[spec.variablesField])
|
|
254
|
+
? config[spec.variablesField]
|
|
255
|
+
: [];
|
|
256
|
+
const existingParams = Array.isArray(config[spec.paramsField])
|
|
257
|
+
? config[spec.paramsField]
|
|
258
|
+
: [];
|
|
259
|
+
const result = parameterizeRawSqlInterpolations(rawQuery, variables, existingParams.length);
|
|
260
|
+
if (result.residuals.length > 0) {
|
|
261
|
+
residualsByNode.push({
|
|
262
|
+
nodeId: (_a = node.id) !== null && _a !== void 0 ? _a : 'node',
|
|
263
|
+
field: spec.queryField,
|
|
264
|
+
residuals: result.residuals,
|
|
265
|
+
});
|
|
266
|
+
continue;
|
|
267
|
+
}
|
|
268
|
+
if (result.params.length === 0) {
|
|
269
|
+
// Nothing to bind — still drop an empty variables field for tidiness.
|
|
270
|
+
pendingWrites.push({
|
|
271
|
+
config,
|
|
272
|
+
queryField: spec.queryField,
|
|
273
|
+
variablesField: spec.variablesField,
|
|
274
|
+
paramsField: spec.paramsField,
|
|
275
|
+
newQuery: rawQuery,
|
|
276
|
+
newParams: existingParams,
|
|
277
|
+
});
|
|
278
|
+
continue;
|
|
279
|
+
}
|
|
280
|
+
pendingWrites.push({
|
|
281
|
+
config,
|
|
282
|
+
queryField: spec.queryField,
|
|
283
|
+
variablesField: spec.variablesField,
|
|
284
|
+
paramsField: spec.paramsField,
|
|
285
|
+
newQuery: result.query,
|
|
286
|
+
newParams: [...existingParams, ...result.params],
|
|
287
|
+
});
|
|
288
|
+
}
|
|
289
|
+
if (residualsByNode.length > 0) {
|
|
290
|
+
throw new WorkflowSqlInterpolationError(residualsByNode);
|
|
291
|
+
}
|
|
292
|
+
for (const w of pendingWrites) {
|
|
293
|
+
w.config[w.queryField] = w.newQuery;
|
|
294
|
+
if (w.newParams.length > 0) {
|
|
295
|
+
w.config[w.paramsField] = w.newParams;
|
|
296
|
+
}
|
|
297
|
+
delete w.config[w.variablesField];
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
exports.parameterizeWorkflowRawSqlInterpolations = parameterizeWorkflowRawSqlInterpolations;
|
|
301
|
+
/**
|
|
302
|
+
* Runs the parameterization net across every workflow and custom node in a UIDL
|
|
303
|
+
* `workflows` block, in place. Throws {@link WorkflowSqlInterpolationError} if any
|
|
304
|
+
* raw-SQL node cannot be fully parameterized.
|
|
305
|
+
*/
|
|
306
|
+
function parameterizeAllWorkflowRawSql(workflows) {
|
|
307
|
+
if (!workflows) {
|
|
308
|
+
return;
|
|
309
|
+
}
|
|
310
|
+
const groups = [workflows.workflows, workflows.customNodes];
|
|
311
|
+
for (const group of groups) {
|
|
312
|
+
if (!group || typeof group !== 'object') {
|
|
313
|
+
continue;
|
|
314
|
+
}
|
|
315
|
+
for (const wf of Object.values(group)) {
|
|
316
|
+
parameterizeWorkflowRawSqlInterpolations(wf);
|
|
317
|
+
}
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
exports.parameterizeAllWorkflowRawSql = parameterizeAllWorkflowRawSql;
|
|
321
|
+
//# sourceMappingURL=raw-sql-param-binding.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"raw-sql-param-binding.js","sourceRoot":"","sources":["../../src/raw-sql-param-binding.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const SUPPORTED_EMAIL_PROVIDERS: Set<string>;
|
|
2
|
+
export declare const transactionalEmailDependencies: (provider?: string | null) => Record<string, string>;
|
|
3
|
+
export declare const generateProviderSendFunction: (provider?: string | null) => string;
|
|
4
|
+
export declare const generateFillTemplateFn: () => string;
|
|
5
|
+
export declare const WELCOME_EMAIL_CONFIG_KEYS: string[];
|
|
6
|
+
//# sourceMappingURL=transactional-email-code.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transactional-email-code.d.ts","sourceRoot":"","sources":["../../src/transactional-email-code.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,yBAAyB,aAMpC,CAAA;AAIF,eAAO,MAAM,8BAA8B,cAC9B,MAAM,GAAG,IAAI,KACvB,OAAO,MAAM,EAAE,MAAM,CAKvB,CAAA;AAKD,eAAO,MAAM,4BAA4B,cAAe,MAAM,GAAG,IAAI,KAAG,MAmDvE,CAAA;AAID,eAAO,MAAM,sBAAsB,QAAO,MASxC,CAAA;AAKF,eAAO,MAAM,yBAAyB,UAYrC,CAAA"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WELCOME_EMAIL_CONFIG_KEYS = exports.generateFillTemplateFn = exports.generateProviderSendFunction = exports.transactionalEmailDependencies = exports.SUPPORTED_EMAIL_PROVIDERS = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Shared building blocks for generated server routes that send a transactional
|
|
6
|
+
* email (account-delete farewell, account-signup welcome). Keeps the provider
|
|
7
|
+
* dispatch, template filler, dependency map, and config-key list in ONE place so
|
|
8
|
+
* every route stays byte-for-byte consistent.
|
|
9
|
+
*/
|
|
10
|
+
const email_sender_code_1 = require("./invoice/email-sender-code");
|
|
11
|
+
exports.SUPPORTED_EMAIL_PROVIDERS = new Set([
|
|
12
|
+
'resend',
|
|
13
|
+
'sendgrid',
|
|
14
|
+
'postmark',
|
|
15
|
+
'mailgun',
|
|
16
|
+
'mailersend',
|
|
17
|
+
]);
|
|
18
|
+
// npm deps for a provider (reuses the invoice sender's version map). Empty for
|
|
19
|
+
// an unknown/absent provider.
|
|
20
|
+
const transactionalEmailDependencies = (provider) => {
|
|
21
|
+
if (!provider || !exports.SUPPORTED_EMAIL_PROVIDERS.has(provider)) {
|
|
22
|
+
return {};
|
|
23
|
+
}
|
|
24
|
+
return (0, email_sender_code_1.getEmailProviderDependencies)(provider);
|
|
25
|
+
};
|
|
26
|
+
exports.transactionalEmailDependencies = transactionalEmailDependencies;
|
|
27
|
+
// Provider-specific `__sendProviderEmail({ from, to, subject, html, apiKey })`.
|
|
28
|
+
// No attachment (unlike the invoice sender). When no provider is configured the
|
|
29
|
+
// function is a no-op so the route stays self-contained and never throws.
|
|
30
|
+
const generateProviderSendFunction = (provider) => {
|
|
31
|
+
switch (provider) {
|
|
32
|
+
case 'resend':
|
|
33
|
+
return `async function __sendProviderEmail(msg) {
|
|
34
|
+
var Resend = require('resend').Resend;
|
|
35
|
+
var resend = new Resend(msg.apiKey);
|
|
36
|
+
var result = await resend.emails.send({ from: msg.from, to: [msg.to], subject: msg.subject, html: msg.html });
|
|
37
|
+
if (result && result.error) { throw new Error(result.error.message || 'Failed to send email'); }
|
|
38
|
+
}`;
|
|
39
|
+
case 'sendgrid':
|
|
40
|
+
return `async function __sendProviderEmail(msg) {
|
|
41
|
+
var sgMail = require('@sendgrid/mail');
|
|
42
|
+
sgMail.setApiKey(msg.apiKey);
|
|
43
|
+
await sgMail.send({ to: msg.to, from: msg.from, subject: msg.subject, html: msg.html });
|
|
44
|
+
}`;
|
|
45
|
+
case 'postmark':
|
|
46
|
+
return `async function __sendProviderEmail(msg) {
|
|
47
|
+
var postmark = require('postmark');
|
|
48
|
+
var client = new postmark.ServerClient(msg.apiKey);
|
|
49
|
+
await client.sendEmail({ From: msg.from, To: msg.to, Subject: msg.subject, HtmlBody: msg.html });
|
|
50
|
+
}`;
|
|
51
|
+
case 'mailgun':
|
|
52
|
+
return `async function __sendProviderEmail(msg) {
|
|
53
|
+
var Mailgun = require('mailgun.js');
|
|
54
|
+
var formData = require('form-data');
|
|
55
|
+
var domain = process.env.MAILGUN_DOMAIN || '';
|
|
56
|
+
if (!domain) { throw new Error('Mailgun domain not configured'); }
|
|
57
|
+
var mailgun = new Mailgun(formData);
|
|
58
|
+
var mg = mailgun.client({ username: 'api', key: msg.apiKey });
|
|
59
|
+
await mg.messages.create(domain, { from: msg.from, to: [msg.to], subject: msg.subject, html: msg.html });
|
|
60
|
+
}`;
|
|
61
|
+
case 'mailersend':
|
|
62
|
+
return `async function __sendProviderEmail(msg) {
|
|
63
|
+
var MailerSend = require('mailersend').MailerSend;
|
|
64
|
+
var EmailParams = require('mailersend').EmailParams;
|
|
65
|
+
var Sender = require('mailersend').Sender;
|
|
66
|
+
var Recipient = require('mailersend').Recipient;
|
|
67
|
+
var mailerSend = new MailerSend({ apiKey: msg.apiKey });
|
|
68
|
+
var fromStr = String(msg.from || '').trim();
|
|
69
|
+
var m = /^(.*)<([^<>]+)>\\s*$/.exec(fromStr);
|
|
70
|
+
var fromEmail = m ? m[2].trim() : fromStr;
|
|
71
|
+
var fromName = m ? m[1].trim() : '';
|
|
72
|
+
var sender = new Sender(fromEmail, fromName || fromEmail);
|
|
73
|
+
var params = new EmailParams().setFrom(sender).setTo([new Recipient(msg.to)]).setSubject(msg.subject).setHtml(msg.html);
|
|
74
|
+
await mailerSend.email.send(params);
|
|
75
|
+
}`;
|
|
76
|
+
default:
|
|
77
|
+
return `async function __sendProviderEmail(_msg) {
|
|
78
|
+
// No email provider configured — skip.
|
|
79
|
+
}`;
|
|
80
|
+
}
|
|
81
|
+
};
|
|
82
|
+
exports.generateProviderSendFunction = generateProviderSendFunction;
|
|
83
|
+
// Emits the `fillTemplate(str, values)` flat `{{key}}` replacer used to fill the
|
|
84
|
+
// email subject/body tokens at send time.
|
|
85
|
+
const generateFillTemplateFn = () => `function fillTemplate(str, values) {
|
|
86
|
+
if (!str) { return ''; }
|
|
87
|
+
var out = String(str);
|
|
88
|
+
var keys = Object.keys(values);
|
|
89
|
+
for (var i = 0; i < keys.length; i++) {
|
|
90
|
+
var v = values[keys[i]];
|
|
91
|
+
out = out.split('{{' + keys[i] + '}}').join(v == null ? '' : String(v));
|
|
92
|
+
}
|
|
93
|
+
return out;
|
|
94
|
+
}`;
|
|
95
|
+
exports.generateFillTemplateFn = generateFillTemplateFn;
|
|
96
|
+
// The account-signup node's welcome-email config keys. They must NEVER be
|
|
97
|
+
// forwarded from the client signup handler to /api/auth/signup nor inserted as
|
|
98
|
+
// user columns (they'd corrupt createUser and leak into the client bundle).
|
|
99
|
+
exports.WELCOME_EMAIL_CONFIG_KEYS = [
|
|
100
|
+
'emailProvider',
|
|
101
|
+
'from',
|
|
102
|
+
'fromName',
|
|
103
|
+
'apiKey',
|
|
104
|
+
'serverToken',
|
|
105
|
+
'subject',
|
|
106
|
+
'body',
|
|
107
|
+
'bodySource',
|
|
108
|
+
'bodyComponentId',
|
|
109
|
+
'bodyTemplatePurpose',
|
|
110
|
+
'templateParams',
|
|
111
|
+
];
|
|
112
|
+
//# sourceMappingURL=transactional-email-code.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transactional-email-code.js","sourceRoot":"","sources":["../../src/transactional-email-code.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACH,mEAA0E;AAE7D,QAAA,yBAAyB,GAAG,IAAI,GAAG,CAAC;IAC/C,QAAQ;IACR,UAAU;IACV,UAAU;IACV,SAAS;IACT,YAAY;CACb,CAAC,CAAA;AAEF,+EAA+E;AAC/E,8BAA8B;AACvB,MAAM,8BAA8B,GAAG,CAC5C,QAAwB,EACA,EAAE;IAC1B,IAAI,CAAC,QAAQ,IAAI,CAAC,iCAAyB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;QACzD,OAAO,EAAE,CAAA;KACV;IACD,OAAO,IAAA,gDAA4B,EAAC,QAAQ,CAAC,CAAA;AAC/C,CAAC,CAAA;AAPY,QAAA,8BAA8B,kCAO1C;AAED,gFAAgF;AAChF,gFAAgF;AAChF,0EAA0E;AACnE,MAAM,4BAA4B,GAAG,CAAC,QAAwB,EAAU,EAAE;IAC/E,QAAQ,QAAQ,EAAE;QAChB,KAAK,QAAQ;YACX,OAAO;;;;;EAKX,CAAA;QACE,KAAK,UAAU;YACb,OAAO;;;;EAIX,CAAA;QACE,KAAK,UAAU;YACb,OAAO;;;;EAIX,CAAA;QACE,KAAK,SAAS;YACZ,OAAO;;;;;;;;EAQX,CAAA;QACE,KAAK,YAAY;YACf,OAAO;;;;;;;;;;;;;EAaX,CAAA;QACE;YACE,OAAO;;EAEX,CAAA;KACC;AACH,CAAC,CAAA;AAnDY,QAAA,4BAA4B,gCAmDxC;AAED,iFAAiF;AACjF,0CAA0C;AACnC,MAAM,sBAAsB,GAAG,GAAW,EAAE,CAAC;;;;;;;;;EASlD,CAAA;AATW,QAAA,sBAAsB,0BASjC;AAEF,0EAA0E;AAC1E,+EAA+E;AAC/E,4EAA4E;AAC/D,QAAA,yBAAyB,GAAG;IACvC,eAAe;IACf,MAAM;IACN,UAAU;IACV,QAAQ;IACR,aAAa;IACb,SAAS;IACT,MAAM;IACN,YAAY;IACZ,iBAAiB;IACjB,qBAAqB;IACrB,gBAAgB;CACjB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trigger-generator.d.ts","sourceRoot":"","sources":["../../src/trigger-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAEzD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,wBAAwB,eAAgB,MAAM,KAAG,MAC4B,CAAA;AAE1F,eAAO,MAAM,mBAAmB,aAAc,YAAY,mBAAmB,MAAM,KAAG,
|
|
1
|
+
{"version":3,"file":"trigger-generator.d.ts","sourceRoot":"","sources":["../../src/trigger-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAEzD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,wBAAwB,eAAgB,MAAM,KAAG,MAC4B,CAAA;AAE1F,eAAO,MAAM,mBAAmB,aAAc,YAAY,mBAAmB,MAAM,KAAG,MA0DrF,CAAA"}
|
|
@@ -41,6 +41,10 @@ const generateTriggerCode = (workflow, workflowVarName) => {
|
|
|
41
41
|
return generateFormSubmittedTrigger(config, executionCall, workflow.id);
|
|
42
42
|
case 'event-page-loaded':
|
|
43
43
|
return generatePageLoadedTrigger(config, executionCall, workflow.id);
|
|
44
|
+
case 'event-component-loaded':
|
|
45
|
+
return generateComponentLoadedTrigger(config, executionCall, workflow.id);
|
|
46
|
+
case 'event-route-changed':
|
|
47
|
+
return generateRouteChangedTrigger(executionCall, workflow.id);
|
|
44
48
|
case 'event-user-logged-in':
|
|
45
49
|
return generateCustomEventTrigger('workflow:user-logged-in', executionCall, workflow.id);
|
|
46
50
|
case 'event-user-logged-out':
|
|
@@ -228,6 +232,31 @@ const generatePageLoadedTrigger = (config, executionCall, workflowId) => {
|
|
|
228
232
|
${delay ? `setTimeout(function() { ${executionCall}; }, ${delay});` : `${executionCall};`}
|
|
229
233
|
}`;
|
|
230
234
|
};
|
|
235
|
+
const generateComponentLoadedTrigger = (config, executionCall, workflowId) => {
|
|
236
|
+
const delay = config.delay;
|
|
237
|
+
const componentId = config.componentId || '';
|
|
238
|
+
const componentName = config.componentName || '';
|
|
239
|
+
return `
|
|
240
|
+
// Workflow trigger: component loaded (${workflowId})
|
|
241
|
+
{
|
|
242
|
+
const triggerContext = { componentId: '${componentId}', componentName: '${componentName}', url: window.location.href, timestamp: Date.now() };
|
|
243
|
+
${delay ? `setTimeout(function() { ${executionCall}; }, ${delay});` : `${executionCall};`}
|
|
244
|
+
}`;
|
|
245
|
+
};
|
|
246
|
+
// NOTE: the consumer must have \`Router\` from 'next/router' in scope.
|
|
247
|
+
const generateRouteChangedTrigger = (executionCall, workflowId) => {
|
|
248
|
+
const safeId = workflowId.replace(/[^a-zA-Z0-9]/g, '_');
|
|
249
|
+
return `
|
|
250
|
+
// Workflow trigger: route changed (${workflowId})
|
|
251
|
+
let __prevUrl_${safeId} = window.location.href;
|
|
252
|
+
const __rc_${safeId} = function(url) {
|
|
253
|
+
const triggerContext = { url: url, previousUrl: __prevUrl_${safeId}, pathname: window.location.pathname, timestamp: Date.now() };
|
|
254
|
+
__prevUrl_${safeId} = window.location.href;
|
|
255
|
+
${executionCall};
|
|
256
|
+
};
|
|
257
|
+
Router.events.on('routeChangeComplete', __rc_${safeId});
|
|
258
|
+
return function() { Router.events.off('routeChangeComplete', __rc_${safeId}); };`;
|
|
259
|
+
};
|
|
231
260
|
const generateCustomEventTrigger = (eventName, executionCall, workflowId) => {
|
|
232
261
|
const safeId = workflowId.replace(/[^a-zA-Z0-9]/g, '_');
|
|
233
262
|
return `
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trigger-generator.js","sourceRoot":"","sources":["../../src/trigger-generator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"trigger-generator.js","sourceRoot":"","sources":["../../src/trigger-generator.ts"],"names":[],"mappings":";;;AAEA;;;;;;;;;;;;;;;;;;;GAmBG;AACI,MAAM,wBAAwB,GAAG,CAAC,UAAkB,EAAU,EAAE,CACrE,UAAU,UAAU,oBAAoB,UAAU,oBAAoB,UAAU,QAAQ,CAAA;AAD7E,QAAA,wBAAwB,4BACqD;AAEnF,MAAM,mBAAmB,GAAG,CAAC,QAAsB,EAAE,eAAuB,EAAU,EAAE;IAC7F,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAA;IAChC,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAA;IAChC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAA;IAEnC,MAAM,aAAa,GAAG,qBAAqB,CAAC,eAAe,CAAC,CAAA;IAE5D,QAAQ,WAAW,EAAE;QACnB,KAAK,uBAAuB;YAC1B,OAAO,2BAA2B,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAA;QACxE,KAAK,uBAAuB;YAC1B,OAAO,6BAA6B,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAA;QAC1E,KAAK,qBAAqB;YACxB,OAAO,2BAA2B,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAA;QACxE,KAAK,qBAAqB;YACxB,OAAO,2BAA2B,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAA;QACxE,KAAK,sBAAsB;YACzB,OAAO,4BAA4B,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAA;QACzE,KAAK,mBAAmB;YACtB,OAAO,yBAAyB,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAA;QACtE,KAAK,wBAAwB;YAC3B,OAAO,8BAA8B,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAA;QAC3E,KAAK,qBAAqB;YACxB,OAAO,2BAA2B,CAAC,aAAa,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAA;QAChE,KAAK,sBAAsB;YACzB,OAAO,0BAA0B,CAAC,yBAAyB,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAA;QAC1F,KAAK,uBAAuB;YAC1B,OAAO,0BAA0B,CAAC,0BAA0B,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAA;QAC3F,KAAK,uBAAuB;YAC1B,OAAO,6BAA6B,CAAC,aAAa,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAA;QAClE,KAAK,wBAAwB;YAC3B,OAAO,+BAA+B,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAA;QAC5E,KAAK,uBAAuB,CAAC;QAC7B,KAAK,yBAAyB,CAAC;QAC/B,KAAK,yBAAyB;YAC5B,OAAO,wBAAwB,CAAC,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAA;QAClF,KAAK,6BAA6B,CAAC;QACnC,KAAK,2BAA2B,CAAC;QACjC,KAAK,iCAAiC,CAAC;QACvC,KAAK,+BAA+B;YAClC,OAAO,uBAAuB,CAAC,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAA;QACjF,KAAK,mBAAmB;YACtB,OAAO,yBAAyB,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAA;QACtE,KAAK,oBAAoB;YACvB,OAAO,0BAA0B,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAA;QACvE,KAAK,gBAAgB;YACnB,OAAO,uBAAuB,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAA;QACpE,KAAK,qBAAqB;YACxB,OAAO,2BAA2B,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAA;QACxE,KAAK,sBAAsB;YACzB,OAAO,EAAE,CAAA;QACX,KAAK,oBAAoB,CAAC;QAC1B,KAAK,2BAA2B,CAAC;QACjC,KAAK,sBAAsB;YACzB,OAAO,EAAE,CAAA;QACX;YACE,OAAO,4BAA4B,WAAW,EAAE,CAAA;KACnD;AACH,CAAC,CAAA;AA1DY,QAAA,mBAAmB,uBA0D/B;AAED,MAAM,qBAAqB,GAAG,CAAC,eAAuB,EAAU,EAAE;IAChE,OAAO,GAAG,eAAe,kBAAkB,CAAA;AAC7C,CAAC,CAAA;AAED,MAAM,2BAA2B,GAAG,CAClC,MAA+B,EAC/B,aAAqB,EACrB,UAAkB,EACV,EAAE;IACV,MAAM,SAAS,GAAG,CAAC,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,MAAM,CAAW,CAAA;IACnE,MAAM,SAAS,GAAI,MAAM,CAAC,SAAoB,IAAI,OAAO,CAAA;IACzD,MAAM,cAAc,GAAG,MAAM,CAAC,cAAyB,CAAA;IACvD,MAAM,eAAe,GAAG,MAAM,CAAC,eAA0B,CAAA;IACzD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAA8B,CAAA;IAEtD,IAAI,WAAW,GAAG,EAAE,CAAA;IACpB,IAAI,cAAc,EAAE;QAClB,WAAW,IAAI,iCAAiC,CAAA;KACjD;IACD,IAAI,eAAe,EAAE;QACnB,WAAW,IAAI,kCAAkC,CAAA;KAClD;IAED,WAAW,IAAI;sBACK,SAAS;;;;;QAKvB,aAAa,GAAG,CAAA;IAEtB,IAAI,IAAI,GAAG;0CAC6B,UAAU;eACrC,UAAU,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,+BAA+B,SAAS;aAClF,UAAU,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC;sBAC/B,UAAU,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC;EAC5D,WAAW;SACJ,CAAA;IAEP,IAAI,QAAQ,EAAE;QACZ,IAAI,IAAI;mBACO,UAAU,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC;uBACpC,UAAU,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC;8BACjC,UAAU,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC;iBACrD,UAAU,CAAC,OAAO,CACzB,eAAe,EACf,GAAG,CACJ,sCAAsC,UAAU,CAAC,OAAO,CAC3D,eAAe,EACf,GAAG,CACJ,eAAe,QAAQ;;WAEjB,UAAU,CAAC,OAAO,CACrB,eAAe,EACf,GAAG,CACJ,sBAAsB,SAAS,eAAe,UAAU,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC;+BAC9D,UAAU,CAAC,OAAO,CACzC,eAAe,EACf,GAAG,CACJ,yBAAyB,SAAS,eAAe,UAAU,CAAC,OAAO,CACpE,eAAe,EACf,GAAG,CACJ,OAAO,CAAA;KACT;SAAM;QACL,IAAI,IAAI;WACD,UAAU,CAAC,OAAO,CACrB,eAAe,EACf,GAAG,CACJ,sBAAsB,SAAS,cAAc,UAAU,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC;+BAC7D,UAAU,CAAC,OAAO,CACzC,eAAe,EACf,GAAG,CACJ,yBAAyB,SAAS,cAAc,UAAU,CAAC,OAAO,CACnE,eAAe,EACf,GAAG,CACJ,OAAO,CAAA;KACT;IAED,IAAI,IAAI,SAAS,CAAA;IACjB,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,MAAM,6BAA6B,GAAG,CACpC,MAA+B,EAC/B,aAAqB,EACrB,UAAkB,EACV,EAAE;IACV,MAAM,SAAS,GAAG,CAAC,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,MAAM,CAAW,CAAA;IACnE,MAAM,SAAS,GAAI,MAAM,CAAC,SAAoB,IAAI,CAAC,CAAA;IACnD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAe,CAAA;IAEnC,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAA;IACvD,OAAO;4CACmC,UAAU;eACvC,MAAM,+BAA+B,SAAS;aAChD,MAAM;kBACD,MAAM;;;;4BAII,SAAS;;;;cAIvB,aAAa;cACb,IAAI,CAAC,CAAC,CAAC,OAAO,MAAM,gBAAgB,CAAC,CAAC,CAAC,EAAE;;;wBAG/B,SAAS;YACrB,MAAM,eAAe,MAAM;gCACP,MAAM;MAChC,CAAA;AACN,CAAC,CAAA;AAED,MAAM,2BAA2B,GAAG,CAClC,MAA+B,EAC/B,aAAqB,EACrB,UAAkB,EACV,EAAE;IACV,MAAM,SAAS,GAAG,CAAC,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,MAAM,CAAW,CAAA;IACnE,MAAM,SAAS,GAAG,MAAM,CAAC,SAAmB,CAAA;IAC5C,MAAM,cAAc,GAAG,MAAM,CAAC,cAAyB,CAAA;IACvD,MAAM,eAAe,GAAG,MAAM,CAAC,eAA0B,CAAA;IACzD,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAA;IAEvD,OAAO;0CACiC,UAAU;eACrC,MAAM,+BAA+B,SAAS;aAChD,MAAM;sBACG,MAAM;UAClB,cAAc,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE;UAC/C,eAAe,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,EAAE;+CACZ,SAAS,kBAAkB,SAAS,iQAAiQ,IAAA,gCAAwB,EACxW,cAAc,CACf;UAEO,SAAS,KAAK,MAAM;QAClB,CAAC,CAAC,sHAAsH;QACxH,CAAC,CAAC,EACN;UACE,aAAa;;WAEZ,MAAM,sBAAsB,SAAS,cAAc,MAAM;+BACrC,MAAM,yBAAyB,SAAS,cAAc,MAAM;MACrF,CAAA;AACN,CAAC,CAAA;AAED,MAAM,2BAA2B,GAAG,CAClC,MAA+B,EAC/B,aAAqB,EACrB,UAAkB,EACV,EAAE;IACV,MAAM,SAAS,GAAG,CAAC,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,MAAM,CAAW,CAAA;IACnE,MAAM,QAAQ,GAAG,MAAM,CAAC,QAA8B,CAAA;IACtD,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAA;IAEvD,IAAI,OAAO,GAAG;gFACgE,MAAM,kCAAkC,SAAS;aACpH,MAAM;UACT,aAAa;QACf,CAAA;IAEN,IAAI,QAAQ,EAAE;QACZ,OAAO,GAAG;;uBAES,OAAO;wGAC0E,QAAQ;WACrG,CAAA;KACR;IAED,OAAO;0CACiC,UAAU;eACrC,MAAM,+BAA+B,SAAS;aAChD,MAAM;sBACG,MAAM,MAAM,OAAO;WAC9B,MAAM,sCAAsC,MAAM;+BAC9B,MAAM,yCAAyC,MAAM;MAC9E,CAAA;AACN,CAAC,CAAA;AAED,MAAM,4BAA4B,GAAG,CACnC,MAA+B,EAC/B,aAAqB,EACrB,UAAkB,EACV,EAAE;IACV,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,UAAU,CAAW,CAAA;IACpE,MAAM,cAAc,GAAG,MAAM,CAAC,cAAc,KAAK,KAAK,CAAA;IACtD,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAA;IAEvD,OAAO;2CACkC,UAAU;iBACpC,MAAM,+BAA+B,MAAM;eAC7C,MAAM;sBACC,MAAM;UAClB,cAAc,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE;;uCAElB,MAAM;;gEAEmB,MAAM;UAC5D,aAAa;;aAEV,MAAM,uCAAuC,MAAM;iCAC/B,MAAM,0CAA0C,MAAM;MACjF,CAAA;AACN,CAAC,CAAA;AAED,MAAM,yBAAyB,GAAG,CAChC,MAA+B,EAC/B,aAAqB,EACrB,UAAkB,EACV,EAAE;IACV,MAAM,KAAK,GAAG,MAAM,CAAC,KAA2B,CAAA;IAChD,OAAO;wCAC+B,UAAU;;;QAG1C,KAAK,CAAC,CAAC,CAAC,2BAA2B,aAAa,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,aAAa,GAAG;MACzF,CAAA;AACN,CAAC,CAAA;AAED,MAAM,8BAA8B,GAAG,CACrC,MAA+B,EAC/B,aAAqB,EACrB,UAAkB,EACV,EAAE;IACV,MAAM,KAAK,GAAG,MAAM,CAAC,KAA2B,CAAA;IAChD,MAAM,WAAW,GAAI,MAAM,CAAC,WAAsB,IAAI,EAAE,CAAA;IACxD,MAAM,aAAa,GAAI,MAAM,CAAC,aAAwB,IAAI,EAAE,CAAA;IAC5D,OAAO;6CACoC,UAAU;;+CAER,WAAW,sBAAsB,aAAa;QACrF,KAAK,CAAC,CAAC,CAAC,2BAA2B,aAAa,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,aAAa,GAAG;MACzF,CAAA;AACN,CAAC,CAAA;AAED,uEAAuE;AACvE,MAAM,2BAA2B,GAAG,CAAC,aAAqB,EAAE,UAAkB,EAAU,EAAE;IACxF,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAA;IACvD,OAAO;0CACiC,UAAU;oBAChC,MAAM;iBACT,MAAM;kEAC2C,MAAM;kBACtD,MAAM;QAChB,aAAa;;mDAE8B,MAAM;wEACe,MAAM,OAAO,CAAA;AACrF,CAAC,CAAA;AAED,MAAM,0BAA0B,GAAG,CACjC,SAAiB,EACjB,aAAqB,EACrB,UAAkB,EACV,EAAE;IACV,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAA;IACvD,OAAO;2BACkB,SAAS,KAAK,UAAU;oBAC/B,MAAM;;;QAGlB,aAAa;;+BAEU,SAAS,cAAc,MAAM;sDACN,SAAS,cAAc,MAAM,OAAO,CAAA;AAC1F,CAAC,CAAA;AAED,MAAM,+BAA+B,GAAG,CACtC,MAA+B,EAC/B,aAAqB,EACrB,UAAkB,EACV,EAAE;IACV,MAAM,SAAS,GAAG,MAAM,CAAC,SAAmB,CAAA;IAC5C,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAA;IACvD,OAAO;yCACgC,SAAS,MAAM,UAAU;oBAC9C,MAAM;6CACmB,SAAS;QAC9C,aAAa;;+CAE0B,SAAS,cAAc,MAAM;sEACN,SAAS,cAAc,MAAM,OAAO,CAAA;AAC1G,CAAC,CAAA;AAED,MAAM,6BAA6B,GAAG,CAAC,aAAqB,EAAE,UAAkB,EAAU,EAAE;IAC1F,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAA;IACvD,OAAO;4CACmC,UAAU;oBAClC,MAAM;;QAElB,aAAa;;+CAE0B,MAAM;sEACiB,MAAM,OAAO,CAAA;AACnF,CAAC,CAAA;AAED,MAAM,wBAAwB,GAAG,CAC/B,WAAmB,EACnB,MAA+B,EAC/B,aAAqB,EACrB,UAAkB,EACV,EAAE;IACV,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAA;IACvD,MAAM,SAAS,GAAG,iBAAiB,WAAW,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,EAAE,CAAA;IAChF,OAAO;2BACkB,WAAW,KAAK,UAAU;oBACjC,MAAM;2DACiC,MAAM,CAAC,YAAY,oCAAoC,MAAM,CAAC,SAAS;;;UAGxH,aAAa;;;+BAGQ,SAAS,cAAc,MAAM;sDACN,SAAS,cAAc,MAAM,OAAO,CAAA;AAC1F,CAAC,CAAA;AAED,MAAM,uBAAuB,GAAG,CAC9B,WAAmB,EACnB,MAA+B,EAC/B,aAAqB,EACrB,UAAkB,EACV,EAAE;IACV,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAA;IACvD,MAAM,WAAW,GAAG,MAAM,CAAC,WAAqB,CAAA;IAChD,MAAM,SAAS,GAAG,MAAM,CAAC,SAA+B,CAAA;IAExD,QAAQ,WAAW,EAAE;QACnB,KAAK,6BAA6B;YAChC,OAAO,8BAA8B,CAAC,WAAW,EAAE,aAAa,EAAE,MAAM,EAAE,UAAU,CAAC,CAAA;QACvF,KAAK,2BAA2B;YAC9B,OAAO,kCAAkC,CACvC,WAAW,EACX,SAAS,IAAI,EAAE,EACf,aAAa,EACb,MAAM,EACN,UAAU,CACX,CAAA;QACH,KAAK,iCAAiC;YACpC,OAAO,+BAA+B,CACpC,OAAO,EACP,WAAW,EACX,aAAa,EACb,MAAM,EACN,UAAU,CACX,CAAA;QACH,KAAK,+BAA+B;YAClC,OAAO,+BAA+B,CACpC,OAAO,EACP,WAAW,EACX,aAAa,EACb,MAAM,EACN,UAAU,CACX,CAAA;QACH;YACE,OAAO,qCAAqC,WAAW,EAAE,CAAA;KAC5D;AACH,CAAC,CAAA;AAED,MAAM,wBAAwB,GAAG,CAC/B,WAAmB,EACnB,aAAqB,EACrB,eAAuB,EACvB,MAAc,EACd,UAAkB,EAClB,WAAmB,EACX,EAAE;IACV,OAAO;2BACkB,WAAW,KAAK,UAAU;qBAChC,MAAM;sBACL,MAAM;iBACX,MAAM;eACR,MAAM;yBACI,MAAM,WAAW,MAAM;uBACzB,MAAM;eACd,MAAM;4BACO,MAAM;mCACC,MAAM,8BAA8B,WAAW;uCAC3C,MAAM;iBAC5B,MAAM;EACrB,aAAa;wBACS,MAAM;EAC5B,eAAe;mBACE,MAAM;;;;;;mBAMN,MAAM;wBACD,MAAM,iBAAiB,MAAM;QAC7C,CAAA;AACR,CAAC,CAAA;AAED,MAAM,8BAA8B,GAAG,CACrC,WAAmB,EACnB,aAAqB,EACrB,MAAc,EACd,UAAkB,EACV,EAAE;IACV,MAAM,aAAa,GAAG;6BACK,MAAM;;;;+CAIY,WAAW;;;;;;;;cAQ5C,aAAa;;oDAEyB,MAAM,IAAI,CAAA;IAC5D,MAAM,eAAe,GAAG,yDAAyD,MAAM,IAAI,CAAA;IAE3F,OAAO,wBAAwB,CAC7B,WAAW,EACX,aAAa,EACb,eAAe,EACf,MAAM,EACN,UAAU,EACV,6BAA6B,CAC9B,CAAA;AACH,CAAC,CAAA;AAED,MAAM,kCAAkC,GAAG,CACzC,WAAmB,EACnB,SAAiB,EACjB,aAAqB,EACrB,MAAc,EACd,UAAkB,EACV,EAAE;IACV,MAAM,aAAa,GAAG,SAAS,SAAS,EAAE,CAAA;IAC1C,MAAM,aAAa,GAAG;6BACK,MAAM;;;+CAGY,WAAW;2CACf,SAAS;;;;;;cAMtC,aAAa;;+BAEI,aAAa,iBAAiB,MAAM,IAAI,CAAA;IACrE,MAAM,eAAe,GAAG,oCAAoC,aAAa,iBAAiB,MAAM,IAAI,CAAA;IAEpG,OAAO,wBAAwB,CAC7B,WAAW,EACX,aAAa,EACb,eAAe,EACf,MAAM,EACN,UAAU,EACV,2BAA2B,CAC5B,CAAA;AACH,CAAC,CAAA;AAED,MAAM,+BAA+B,GAAG,CACtC,MAAyB,EACzB,WAAmB,EACnB,aAAqB,EACrB,MAAc,EACd,UAAkB,EACV,EAAE;IACV,MAAM,WAAW,GACf,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC,CAAC,+BAA+B,CAAA;IAC1F,MAAM,aAAa,GAAG;8BACM,MAAM;;;8BAGN,WAAW;;;;;;cAM3B,aAAa;;wCAEa,MAAM,kBAAkB,MAAM,IAAI,CAAA;IACxE,MAAM,eAAe,GAAG,6CAA6C,MAAM,kBAAkB,MAAM,IAAI,CAAA;IAEvG,OAAO,wBAAwB,CAC7B,WAAW,EACX,aAAa,EACb,eAAe,EACf,MAAM,EACN,UAAU,EACV,WAAW,CACZ,CAAA;AACH,CAAC,CAAA;AAED,MAAM,yBAAyB,GAAG,CAChC,MAA+B,EAC/B,aAAqB,EACrB,UAAkB,EACV,EAAE;IACV,MAAM,GAAG,GAAG,MAAM,CAAC,GAAa,CAAA;IAChC,MAAM,cAAc,GAAG,MAAM,CAAC,cAAyB,CAAA;IACvD,MAAM,YAAY,GAAG,MAAM,CAAC,YAAuB,CAAA;IACnD,MAAM,aAAa,GAAG,MAAM,CAAC,aAAmC,CAAA;IAChE,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAA;IAEvD,OAAO;wCAC+B,GAAG,MAAM,UAAU;wBACnC,MAAM;2BACH,GAAG;QACtB,YAAY,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,EAAE;QAC/C,cAAc,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE;;;;;;QAM/C,aAAa;;uBAEE,MAAM,MACzB,aAAa,CAAC,CAAC,CAAC,4BAA4B,aAAa,IAAI,CAAC,CAAC,CAAC,UAClE;qBACmB,MAAM;mBACR,MAAM,4CAA4C,MAAM;uCACpC,MAAM,+CAA+C,MAAM;MAC5F,CAAA;AACN,CAAC,CAAA;AAED,MAAM,0BAA0B,GAAG,CACjC,MAA+B,EAC/B,aAAqB,EACrB,UAAkB,EACV,EAAE;IACV,MAAM,GAAG,GAAG,MAAM,CAAC,GAAa,CAAA;IAChC,MAAM,aAAa,GAAG,MAAM,CAAC,aAAmC,CAAA;IAChE,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAA;IAEvD,OAAO;yCACgC,GAAG,MAAM,UAAU;wBACpC,MAAM;2BACH,GAAG;;;;;;QAMtB,aAAa;;uBAEE,MAAM,MACzB,aAAa,CAAC,CAAC,CAAC,4BAA4B,aAAa,IAAI,CAAC,CAAC,CAAC,UAClE;qBACmB,MAAM;mBACR,MAAM,0CAA0C,MAAM;uCAClC,MAAM,6CAA6C,MAAM;MAC1F,CAAA;AACN,CAAC,CAAA;AAED,MAAM,uBAAuB,GAAG,CAC9B,MAA+B,EAC/B,aAAqB,EACrB,UAAkB,EACV,EAAE;IACV,MAAM,UAAU,GAAG,MAAM,CAAC,UAAoB,CAAA;IAC9C,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,KAAK,KAAK,CAAA;IAC5C,MAAM,gBAAgB,GAAG,MAAM,CAAC,gBAAsC,CAAA;IACtE,MAAM,QAAQ,GAAG,MAAM,CAAC,QAA8B,CAAA;IACtD,MAAM,cAAc,GAAG,MAAM,CAAC,cAAyB,CAAA;IACvD,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAA;IAEvD,OAAO;oCAC2B,UAAU,OAAO,UAAU;uBACxC,MAAM;yBACJ,MAAM;wBACP,MAAM;kBACZ,MAAM;uBACD,MAAM;yBACJ,MAAM;;yBAEN,MAAM;qBACV,MAAM;;;mCAGQ,MAAM;mCACN,MAAM,0BAA0B,MAAM,MAAM,UAAU;4CAC7C,MAAM;;oCAEd,MAAM;;sBAEpB,MAAM;QAEpB,QAAQ,IAAI,QAAQ,GAAG,CAAC;QACtB,CAAC,CAAC,oBAAoB,MAAM,OAAO,QAAQ,iBAAiB,MAAM,OAAO;QACzE,CAAC,CAAC,EACN;QACE,aAAa;;;0BAGK,MAAM;oBACZ,MAAM,sBAAsB,MAAM;2BAC3B,MAAM;yBACR,MAAM;wBACP,MAAM,qBAAqB,MAAM;uBAClC,MAAM;;gBAEb,MAAM,4BAA4B,MAAM,KAAK,UAAU;qBAClD,MAAM;;;yBAGF,MAAM;oBACX,MAAM,2BAA2B,MAAM;gBAC3C,MAAM;qBACD,MAAM;;;MAIrB,CAAC,cAAc;QACb,CAAC,CAAC;0BACgB,MAAM;0BACN,MAAM;2BACL,MAAM;;0BAEP,MAAM,mBAAmB,MAAM;2BAC9B,MAAM,eAAe,MAAM;mCACnB,MAAM;qBACpB,MAAM;0BACD,MAAM;;;oEAGoC,MAAM,IAAI;QACtE,CAAC,CAAC,EACN;;MAGE,gBAAgB;QACd,CAAC,CAAC;2BACiB,MAAM;yBACR,MAAM,iBAAiB,MAAM;0BAC5B,MAAM;;+BAED,gBAAgB,uBAAuB,MAAM,IAAI;QACxE,CAAC,CAAC,EACN;;MAEE,SAAS,CAAC,CAAC,CAAC,cAAc,MAAM,KAAK,CAAC,CAAC,CAAC,EAAE;;;uBAGzB,MAAM;kBACX,MAAM;QAEhB,CAAC,cAAc;QACb,CAAC,CAAC,oEAAoE,MAAM,IAAI;QAChF,CAAC,CAAC,EACN;QAEE,gBAAgB;QACd,CAAC,CAAC,+BAA+B,gBAAgB,uBAAuB,MAAM,IAAI;QAClF,CAAC,CAAC,EACN;OACC,CAAA;AACP,CAAC,CAAA;AAED,MAAM,2BAA2B,GAAG,CAClC,MAA+B,EAC/B,aAAqB,EACrB,UAAkB,EACV,EAAE;IACV,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAqC,CAAA;IAC7D,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAqC,CAAA;IAC7D,MAAM,SAAS,GAAG,MAAM,CAAC,SAAsC,CAAA;IAC/D,MAAM,SAAS,GAAG,MAAM,CAAC,SAAsC,CAAA;IAC/D,MAAM,UAAU,GAAI,MAAM,CAAC,UAAqB,IAAI,GAAG,CAAA;IACvD,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAA;IAEvD,MAAM,aAAa,GACjB,QAAQ,IAAI,IAAI,IAAI,QAAQ,IAAI,IAAI,IAAI,SAAS,IAAI,IAAI,IAAI,SAAS,IAAI,IAAI,CAAA;IAEhF,MAAM,eAAe,GAAG;QACtB,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI;QAC5C,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI;QAC5C,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI;QAC9C,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI;KAC/C,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IAEjB,MAAM,mBAAmB,GAAG;QAC1B,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI;QAC7C,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI;QAC7C,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI;QAC/C,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI;KAChD,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IAEjB,OAAO;0CACiC,UAAU;qBAC/B,MAAM;qBACN,MAAM;qBACN,MAAM;uBACJ,MAAM;gCACG,MAAM;mBACnB,MAAM;;;8BAGK,MAAM;8BACN,MAAM;UAE1B,aAAa;QACX,CAAC,CAAC,eAAe,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK;YAChD,yBAAyB,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK;YAC9D,sDAAsD;YACtD,wBAAwB;YACxB,+JAA+J;YAC/J,aAAa,aAAa,KAAK;YAC/B,WAAW;QACb,CAAC,CAAC,yIAAyI;YACzI,WAAW,aAAa,GAC9B;qBACa,MAAM;qBACN,MAAM;WAChB,UAAU;;qDAEgC,MAAM;;0DAED,MAAM;gCAChC,MAAM;OAC/B,CAAA;AACP,CAAC,CAAA"}
|