mythik 0.1.2 → 0.1.4
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/README.md +64 -16
- package/dist/actions/dispatcher.d.ts.map +1 -1
- package/dist/actions/dispatcher.js +21 -2
- package/dist/actions/dispatcher.js.map +1 -1
- package/dist/expressions/handlers/let.d.ts +6 -0
- package/dist/expressions/handlers/let.d.ts.map +1 -1
- package/dist/expressions/handlers/let.js +29 -4
- package/dist/expressions/handlers/let.js.map +1 -1
- package/dist/expressions/handlers/template.d.ts.map +1 -1
- package/dist/expressions/handlers/template.js +2 -1
- package/dist/expressions/handlers/template.js.map +1 -1
- package/dist/renderer/prop-schemas.js +1 -1
- package/dist/renderer/prop-schemas.js.map +1 -1
- package/dist/security/api-spec-validator.d.ts.map +1 -1
- package/dist/security/api-spec-validator.js +4 -0
- package/dist/security/api-spec-validator.js.map +1 -1
- package/dist/security/spec-validator.d.ts.map +1 -1
- package/dist/security/spec-validator.js +43 -31
- package/dist/security/spec-validator.js.map +1 -1
- package/dist/server.d.ts +7 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +3 -0
- package/dist/server.js.map +1 -1
- package/dist/spec-stores/sql-versioned.d.ts +38 -0
- package/dist/spec-stores/sql-versioned.d.ts.map +1 -0
- package/dist/spec-stores/sql-versioned.js +186 -0
- package/dist/spec-stores/sql-versioned.js.map +1 -0
- package/dist/spec-stores/sql.d.ts +21 -0
- package/dist/spec-stores/sql.d.ts.map +1 -0
- package/dist/spec-stores/sql.js +65 -0
- package/dist/spec-stores/sql.js.map +1 -0
- package/dist/spec-stores/sqlserver-versioned.d.ts +5 -30
- package/dist/spec-stores/sqlserver-versioned.d.ts.map +1 -1
- package/dist/spec-stores/sqlserver-versioned.js +16 -245
- package/dist/spec-stores/sqlserver-versioned.js.map +1 -1
- package/dist/spec-stores/sqlserver.d.ts +4 -11
- package/dist/spec-stores/sqlserver.d.ts.map +1 -1
- package/dist/spec-stores/sqlserver.js +16 -66
- package/dist/spec-stores/sqlserver.js.map +1 -1
- package/dist/sql/ddl.d.ts +7 -0
- package/dist/sql/ddl.d.ts.map +1 -0
- package/dist/sql/ddl.js +134 -0
- package/dist/sql/ddl.js.map +1 -0
- package/dist/sql/drivers/mysql.d.ts +25 -0
- package/dist/sql/drivers/mysql.d.ts.map +1 -0
- package/dist/sql/drivers/mysql.js +329 -0
- package/dist/sql/drivers/mysql.js.map +1 -0
- package/dist/sql/drivers/postgres.d.ts +30 -0
- package/dist/sql/drivers/postgres.d.ts.map +1 -0
- package/dist/sql/drivers/postgres.js +321 -0
- package/dist/sql/drivers/postgres.js.map +1 -0
- package/dist/sql/drivers/sqlite.d.ts +28 -0
- package/dist/sql/drivers/sqlite.d.ts.map +1 -0
- package/dist/sql/drivers/sqlite.js +369 -0
- package/dist/sql/drivers/sqlite.js.map +1 -0
- package/dist/sql/drivers/sqlserver.d.ts +46 -0
- package/dist/sql/drivers/sqlserver.d.ts.map +1 -0
- package/dist/sql/drivers/sqlserver.js +405 -0
- package/dist/sql/drivers/sqlserver.js.map +1 -0
- package/dist/sql/errors.d.ts +22 -0
- package/dist/sql/errors.d.ts.map +1 -0
- package/dist/sql/errors.js +27 -0
- package/dist/sql/errors.js.map +1 -0
- package/dist/sql/factory.d.ts +3 -0
- package/dist/sql/factory.d.ts.map +1 -0
- package/dist/sql/factory.js +24 -0
- package/dist/sql/factory.js.map +1 -0
- package/dist/sql/index.d.ts +17 -0
- package/dist/sql/index.d.ts.map +1 -0
- package/dist/sql/index.js +9 -0
- package/dist/sql/index.js.map +1 -0
- package/dist/sql/named-params.d.ts +8 -0
- package/dist/sql/named-params.d.ts.map +1 -0
- package/dist/sql/named-params.js +182 -0
- package/dist/sql/named-params.js.map +1 -0
- package/dist/sql/types.d.ts +49 -0
- package/dist/sql/types.d.ts.map +1 -0
- package/dist/sql/types.js +2 -0
- package/dist/sql/types.js.map +1 -0
- package/dist/types.d.ts +1 -1
- package/dist/types.d.ts.map +1 -1
- package/docs/consumer/README.md +1 -1
- package/docs/consumer/WHERE-TO-LOOK.md +4 -4
- package/docs/consumer/ai-context-api.md +44 -0
- package/docs/consumer/ai-context-primitives.md +3 -0
- package/docs/consumer/ai-context-runtime-semantics.md +8 -3
- package/docs/consumer/ai-context.md +123 -39
- package/docs/consumer/reference-doc.md +30 -8
- package/docs/wiki/compiled/README.md +1 -1
- package/docs/wiki/compiled/_lint.md +13 -8
- package/docs/wiki/compiled/action-fetch.md +7 -2
- package/docs/wiki/compiled/concept-action-chains.md +62 -24
- package/docs/wiki/compiled/concept-package-layout.md +11 -9
- package/docs/wiki/compiled/concept-public-package-names.md +24 -13
- package/docs/wiki/compiled/concept-shape-animations.md +1 -1
- package/docs/wiki/compiled/concept-spec-stores-catalog.md +28 -16
- package/docs/wiki/compiled/concept-transactions.md +20 -12
- package/docs/wiki/compiled/expression-let-ref.md +36 -18
- package/docs/wiki/compiled/expression-template.md +28 -17
- package/docs/wiki/compiled/path-ui-loading-error.md +5 -0
- package/docs/wiki/compiled/pattern-fetch-vs-datasources.md +5 -0
- package/docs/wiki/compiled/pattern-loading-content-empty.md +3 -2
- package/docs/wiki/compiled/primitive-select.md +16 -2
- package/package.json +25 -2
package/README.md
CHANGED
|
@@ -55,9 +55,11 @@ You install `mythik` whenever you're building anything Mythik-related:
|
|
|
55
55
|
interface:
|
|
56
56
|
- Browser-safe entry: `MemorySpecStore`, `SupabaseSpecStore`
|
|
57
57
|
- Node-only entry (`mythik/server`): `FileSpecStore`,
|
|
58
|
-
`
|
|
58
|
+
`SqlSpecStore`, `SqlVersionedSpecStore`, `SqlEnvironmentStore`,
|
|
59
|
+
and SQL Server compatibility stores
|
|
59
60
|
- Versioned variants (`SupabaseVersionedSpecStore`,
|
|
60
|
-
`SupabaseEnvironmentStore`
|
|
61
|
+
`SupabaseEnvironmentStore`, `SqlVersionedSpecStore`,
|
|
62
|
+
`SqlEnvironmentStore`) add snapshot+patch-chain history,
|
|
61
63
|
structural diffs, and atomic promote gates
|
|
62
64
|
|
|
63
65
|
- **Expression and action engines** — the runtime that resolves
|
|
@@ -77,14 +79,53 @@ You install `mythik` whenever you're building anything Mythik-related:
|
|
|
77
79
|
// Browser-safe (works in any runtime)
|
|
78
80
|
import { MemorySpecStore, SupabaseSpecStore } from 'mythik';
|
|
79
81
|
|
|
80
|
-
// Node-only (file system
|
|
81
|
-
import { FileSpecStore,
|
|
82
|
+
// Node-only (file system and SQL drivers)
|
|
83
|
+
import { FileSpecStore, SqlSpecStore, createSqlDriver } from 'mythik/server';
|
|
82
84
|
```
|
|
83
85
|
|
|
84
86
|
Bundlers like Vite or Webpack should always import from `mythik` (the
|
|
85
87
|
main entry). The `mythik/server` subpath is for Node scripts and
|
|
86
|
-
server processes only
|
|
87
|
-
|
|
88
|
+
server processes only. It uses Node APIs and dynamically loads the SQL
|
|
89
|
+
driver package you installed for the selected database.
|
|
90
|
+
|
|
91
|
+
SQL adapters are optional peer dependencies. Install only the adapter
|
|
92
|
+
you use:
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
npm install pg # PostgreSQL
|
|
96
|
+
npm install mysql2 # MySQL
|
|
97
|
+
npm install mssql # SQL Server
|
|
98
|
+
npm install better-sqlite3 # SQLite
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
SQLite uses the native `better-sqlite3` adapter. If npm prints warnings
|
|
102
|
+
from that adapter's transitive native-build helpers, the warning belongs
|
|
103
|
+
to the SQLite adapter install path, not to Mythik's browser/runtime
|
|
104
|
+
install.
|
|
105
|
+
Missing SQL adapter errors include the package name and install command
|
|
106
|
+
for the selected dialect.
|
|
107
|
+
|
|
108
|
+
SQL-backed stores use one dialect-aware driver boundary:
|
|
109
|
+
|
|
110
|
+
```ts
|
|
111
|
+
import { SqlSpecStore, createSqlDriver } from 'mythik/server';
|
|
112
|
+
|
|
113
|
+
const driver = createSqlDriver({
|
|
114
|
+
dialect: 'postgres', // 'sqlserver' | 'postgres' | 'mysql' | 'sqlite'
|
|
115
|
+
connection: process.env.DATABASE_URL!,
|
|
116
|
+
});
|
|
117
|
+
|
|
118
|
+
const store = new SqlSpecStore({ driver });
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
Initialize the required tables with the CLI:
|
|
122
|
+
|
|
123
|
+
```bash
|
|
124
|
+
npx mythik init-store --dialect sqlite --target ./mythik.db
|
|
125
|
+
npx mythik init-store --dialect postgres --dry-run
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
MySQL generated upsert SQL targets MySQL 8.0.19+.
|
|
88
129
|
|
|
89
130
|
## Minimal example
|
|
90
131
|
|
|
@@ -171,13 +212,20 @@ modify specs.
|
|
|
171
212
|
- [`mythik-server`](https://github.com/mldixdev/mythik/tree/main/packages/server#readme) — declarative REST server from an `ApiSpec`
|
|
172
213
|
|
|
173
214
|
React Native work is a repository preview track and is not part of
|
|
174
|
-
the
|
|
175
|
-
|
|
176
|
-
## Status
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
##
|
|
182
|
-
|
|
183
|
-
|
|
215
|
+
the supported npm publish surface yet.
|
|
216
|
+
|
|
217
|
+
## Status
|
|
218
|
+
|
|
219
|
+
Public release line. APIs are documented for real-world feedback as
|
|
220
|
+
the framework evolves.
|
|
221
|
+
|
|
222
|
+
## Releases
|
|
223
|
+
|
|
224
|
+
Release notes and patch details are published in the
|
|
225
|
+
[CHANGELOG](https://github.com/mldixdev/mythik/blob/main/CHANGELOG.md)
|
|
226
|
+
and on
|
|
227
|
+
[GitHub Releases](https://github.com/mldixdev/mythik/releases).
|
|
228
|
+
|
|
229
|
+
## License
|
|
230
|
+
|
|
231
|
+
Apache-2.0.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dispatcher.d.ts","sourceRoot":"","sources":["../../src/actions/dispatcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEhF,OAAO,KAAK,EAAE,aAAa,EAAmC,MAAM,oBAAoB,CAAC;AAIzF,OAAO,EAAyB,KAAK,gBAAgB,EAAwB,MAAM,iBAAiB,CAAC;AACrG,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAE5E,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC;IAC1C,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,UAAU,CAAC;IAClB,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC9C,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B,uFAAuF;IACvF,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;IACpE,wGAAwG;IACxG,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,qDAAqD;IACrD,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,2FAA2F;IAC3F,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAC/C,0EAA0E;IAC1E,UAAU,CAAC,EAAE,gBAAgB,EAAE,CAAC;CACjC;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,SAAS,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/E,cAAc,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,IAAI,CAAC;CACpD;AAED;;;GAGG;AACH,+DAA+D;AAC/D,eAAO,MAAM,WAAW,mCAA6B,CAAC;AAEtD,uDAAuD;AACvD,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAAE,OAAO,EAAE,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAOtH;
|
|
1
|
+
{"version":3,"file":"dispatcher.d.ts","sourceRoot":"","sources":["../../src/actions/dispatcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEhF,OAAO,KAAK,EAAE,aAAa,EAAmC,MAAM,oBAAoB,CAAC;AAIzF,OAAO,EAAyB,KAAK,gBAAgB,EAAwB,MAAM,iBAAiB,CAAC;AACrG,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAE5E,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC;IAC1C,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,UAAU,CAAC;IAClB,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC9C,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B,uFAAuF;IACvF,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;IACpE,wGAAwG;IACxG,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,qDAAqD;IACrD,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,2FAA2F;IAC3F,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAC/C,0EAA0E;IAC1E,UAAU,CAAC,EAAE,gBAAgB,EAAE,CAAC;CACjC;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,SAAS,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/E,cAAc,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,IAAI,CAAC;CACpD;AAED;;;GAGG;AACH,+DAA+D;AAC/D,eAAO,MAAM,WAAW,mCAA6B,CAAC;AAEtD,uDAAuD;AACvD,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAAE,OAAO,EAAE,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAOtH;AASD,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,sBAAsB,GAAG,wBAAwB,CA2Y/F"}
|
|
@@ -20,6 +20,12 @@ export function resolveParams(params, resolve) {
|
|
|
20
20
|
}
|
|
21
21
|
return resolved;
|
|
22
22
|
}
|
|
23
|
+
function shouldSkipAction(params, resolve) {
|
|
24
|
+
if (!params || !Object.prototype.hasOwnProperty.call(params, 'skipIf')) {
|
|
25
|
+
return false;
|
|
26
|
+
}
|
|
27
|
+
return Boolean(deepResolve(params.skipIf, resolve));
|
|
28
|
+
}
|
|
23
29
|
export function createActionDispatcher(config) {
|
|
24
30
|
const { store } = config;
|
|
25
31
|
const customActions = config.customActions ?? new Map();
|
|
@@ -188,6 +194,7 @@ export function createActionDispatcher(config) {
|
|
|
188
194
|
const method = params.method ?? 'GET';
|
|
189
195
|
const body = params.body;
|
|
190
196
|
const target = params.target;
|
|
197
|
+
const errorTarget = params.errorTarget;
|
|
191
198
|
const headers = params.headers ?? {};
|
|
192
199
|
if (!url)
|
|
193
200
|
throw new Error('fetch action requires "url" param');
|
|
@@ -208,8 +215,11 @@ export function createActionDispatcher(config) {
|
|
|
208
215
|
const response = await fetcher(url, options);
|
|
209
216
|
const data = await response.json().catch(() => null);
|
|
210
217
|
if (!response.ok) {
|
|
218
|
+
const error = { status: response.status, message: `HTTP ${response.status}`, data };
|
|
211
219
|
store.set('/ui/loading', false);
|
|
212
|
-
store.set('/ui/lastError',
|
|
220
|
+
store.set('/ui/lastError', error);
|
|
221
|
+
if (errorTarget)
|
|
222
|
+
store.set(errorTarget, error);
|
|
213
223
|
return;
|
|
214
224
|
}
|
|
215
225
|
if (target) {
|
|
@@ -217,10 +227,15 @@ export function createActionDispatcher(config) {
|
|
|
217
227
|
}
|
|
218
228
|
store.set('/ui/loading', false);
|
|
219
229
|
store.set('/ui/lastError', null);
|
|
230
|
+
if (errorTarget)
|
|
231
|
+
store.set(errorTarget, null);
|
|
220
232
|
}
|
|
221
233
|
catch (err) {
|
|
234
|
+
const error = { message: err instanceof Error ? err.message : 'Network error' };
|
|
222
235
|
store.set('/ui/loading', false);
|
|
223
|
-
store.set('/ui/lastError',
|
|
236
|
+
store.set('/ui/lastError', error);
|
|
237
|
+
if (errorTarget)
|
|
238
|
+
store.set(errorTarget, error);
|
|
224
239
|
}
|
|
225
240
|
},
|
|
226
241
|
toggleSelection: (params) => {
|
|
@@ -309,7 +324,11 @@ export function createActionDispatcher(config) {
|
|
|
309
324
|
};
|
|
310
325
|
async function dispatch(binding, resolve) {
|
|
311
326
|
const { action, params } = binding;
|
|
327
|
+
if (shouldSkipAction(params, resolve)) {
|
|
328
|
+
return;
|
|
329
|
+
}
|
|
312
330
|
const resolvedParams = resolveParams(params, resolve);
|
|
331
|
+
delete resolvedParams.skipIf;
|
|
313
332
|
// Build middleware context
|
|
314
333
|
const mwContext = {
|
|
315
334
|
action,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dispatcher.js","sourceRoot":"","sources":["../../src/actions/dispatcher.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dispatcher.js","sourceRoot":"","sources":["../../src/actions/dispatcher.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
import type { ExpressionHandlerDefinition } from '../../types.js';
|
|
2
|
+
export interface LetBindingLookup {
|
|
3
|
+
found: boolean;
|
|
4
|
+
missingPath?: boolean;
|
|
5
|
+
value: unknown;
|
|
6
|
+
}
|
|
7
|
+
export declare function resolveLetBindingPath(bindings: Record<string, unknown> | undefined, ref: string): LetBindingLookup;
|
|
2
8
|
export declare const letHandler: ExpressionHandlerDefinition;
|
|
3
9
|
export declare const refHandler: ExpressionHandlerDefinition;
|
|
4
10
|
//# sourceMappingURL=let.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"let.d.ts","sourceRoot":"","sources":["../../../src/expressions/handlers/let.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAA8B,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"let.d.ts","sourceRoot":"","sources":["../../../src/expressions/handlers/let.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAA8B,MAAM,gBAAgB,CAAC;AAG9F,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,KAAK,EAAE,OAAO,CAAC;CAChB;AAMD,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,gBAAgB,CAoBlH;AAED,eAAO,MAAM,UAAU,EAAE,2BA+BxB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,2BAUxB,CAAC"}
|
|
@@ -1,3 +1,28 @@
|
|
|
1
|
+
import { deepResolveExpressionValue } from '../deep-resolve.js';
|
|
2
|
+
function hasOwn(obj, key) {
|
|
3
|
+
return Object.prototype.hasOwnProperty.call(obj, key);
|
|
4
|
+
}
|
|
5
|
+
export function resolveLetBindingPath(bindings, ref) {
|
|
6
|
+
if (!bindings)
|
|
7
|
+
return { found: false, value: undefined };
|
|
8
|
+
if (hasOwn(bindings, ref))
|
|
9
|
+
return { found: true, value: bindings[ref] };
|
|
10
|
+
const [root, ...segments] = ref.split('.');
|
|
11
|
+
if (!root || segments.length === 0 || !hasOwn(bindings, root)) {
|
|
12
|
+
return { found: false, value: undefined };
|
|
13
|
+
}
|
|
14
|
+
let value = bindings[root];
|
|
15
|
+
for (const segment of segments) {
|
|
16
|
+
if (value === null || value === undefined || typeof value !== 'object') {
|
|
17
|
+
return { found: true, missingPath: true, value: undefined };
|
|
18
|
+
}
|
|
19
|
+
const record = value;
|
|
20
|
+
if (!hasOwn(record, segment))
|
|
21
|
+
return { found: true, missingPath: true, value: undefined };
|
|
22
|
+
value = record[segment];
|
|
23
|
+
}
|
|
24
|
+
return { found: true, value };
|
|
25
|
+
}
|
|
1
26
|
export const letHandler = {
|
|
2
27
|
key: '$let',
|
|
3
28
|
resolve(expr, context, resolveFn) {
|
|
@@ -19,18 +44,18 @@ export const letHandler = {
|
|
|
19
44
|
...context,
|
|
20
45
|
letBindings: resolvedBindings,
|
|
21
46
|
};
|
|
22
|
-
return
|
|
47
|
+
return deepResolveExpressionValue(body, (value) => resolve(value, innerContext));
|
|
23
48
|
},
|
|
24
49
|
};
|
|
25
50
|
export const refHandler = {
|
|
26
51
|
key: '$ref',
|
|
27
52
|
resolve(expr, context) {
|
|
28
53
|
const name = expr.$ref;
|
|
29
|
-
const
|
|
30
|
-
if (!
|
|
54
|
+
const binding = resolveLetBindingPath(context.letBindings, name);
|
|
55
|
+
if (!binding.found || binding.missingPath) {
|
|
31
56
|
throw new Error(`$ref "${name}" is not defined in any $let scope`);
|
|
32
57
|
}
|
|
33
|
-
return
|
|
58
|
+
return binding.value;
|
|
34
59
|
},
|
|
35
60
|
};
|
|
36
61
|
//# sourceMappingURL=let.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"let.js","sourceRoot":"","sources":["../../../src/expressions/handlers/let.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"let.js","sourceRoot":"","sources":["../../../src/expressions/handlers/let.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../../src/expressions/handlers/template.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAmB,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../../src/expressions/handlers/template.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAmB,MAAM,gBAAgB,CAAC;AAMnF,eAAO,MAAM,eAAe,EAAE,2BAoB7B,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { resolveLetBindingPath } from './let.js';
|
|
1
2
|
// Matches both ${/state/path} and ${localBinding}
|
|
2
3
|
const INTERPOLATION_REGEX = /\$\{([^}]+)\}/g;
|
|
3
4
|
export const templateHandler = {
|
|
@@ -12,7 +13,7 @@ export const templateHandler = {
|
|
|
12
13
|
}
|
|
13
14
|
else {
|
|
14
15
|
// $let binding: ${age}
|
|
15
|
-
value = context.letBindings
|
|
16
|
+
value = resolveLetBindingPath(context.letBindings, ref).value;
|
|
16
17
|
}
|
|
17
18
|
if (value === null || value === undefined)
|
|
18
19
|
return '';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template.js","sourceRoot":"","sources":["../../../src/expressions/handlers/template.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"template.js","sourceRoot":"","sources":["../../../src/expressions/handlers/template.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAEjD,kDAAkD;AAClD,MAAM,mBAAmB,GAAG,gBAAgB,CAAC;AAE7C,MAAM,CAAC,MAAM,eAAe,GAAgC;IAC1D,GAAG,EAAE,WAAW;IAChB,OAAO,CAAC,IAA6B,EAAE,OAAwB;QAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAmB,CAAC;QAE1C,OAAO,QAAQ,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC,MAAM,EAAE,GAAW,EAAE,EAAE;YACnE,IAAI,KAAc,CAAC;YAEnB,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACxB,4BAA4B;gBAC5B,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAChC,CAAC;iBAAM,CAAC;gBACN,uBAAuB;gBACvB,KAAK,GAAG,qBAAqB,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC;YAChE,CAAC;YAED,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;gBAAE,OAAO,EAAE,CAAC;YACrD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
|
|
@@ -10,7 +10,7 @@ export const PRIMITIVE_PROP_SCHEMAS = {
|
|
|
10
10
|
spacer: { validProps: ['size', 'direction', 'style'] },
|
|
11
11
|
input: { validProps: ['value', 'type', 'placeholder', 'label', 'disabled', 'readOnly', 'required', 'format', 'formatOptions', 'selectOnFocus', 'checks', 'validateOn', 'style', 'onChange'] },
|
|
12
12
|
textarea: { validProps: ['value', 'placeholder', 'label', 'rows', 'disabled', 'readOnly', 'style', 'onChange'] },
|
|
13
|
-
select: { validProps: ['value', 'options', 'placeholder', 'label', 'disabled', 'required', 'style', 'onChange'] },
|
|
13
|
+
select: { validProps: ['value', 'options', 'placeholder', 'label', 'labelKey', 'valueKey', 'disabled', 'required', 'style', 'onChange'] },
|
|
14
14
|
checkbox: { validProps: ['checked', 'label', 'disabled', 'style', 'onChange'] },
|
|
15
15
|
toggle: { validProps: ['checked', 'label', 'disabled', 'style', 'onChange'] },
|
|
16
16
|
slider: { validProps: ['value', 'min', 'max', 'step', 'label', 'disabled', 'style', 'onChange'] },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prop-schemas.js","sourceRoot":"","sources":["../../src/renderer/prop-schemas.ts"],"names":[],"mappings":"AAYA,MAAM,CAAC,MAAM,sBAAsB,GAAoC;IACrE,GAAG,EAAE,EAAE,UAAU,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE;IAC3C,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE;IAClE,KAAK,EAAE,EAAE,UAAU,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE;IAC5E,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE;IAClE,KAAK,EAAE,EAAE,UAAU,EAAE,CAAC,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE;IACrF,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE;IAC/E,MAAM,EAAE,EAAE,UAAU,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE;IACxE,OAAO,EAAE,EAAE,UAAU,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE;IAC/C,MAAM,EAAE,EAAE,UAAU,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE;IACtD,KAAK,EAAE,EAAE,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,EAAE,eAAe,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE;IAC7L,QAAQ,EAAE,EAAE,UAAU,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE;IAChH,MAAM,EAAE,EAAE,UAAU,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"prop-schemas.js","sourceRoot":"","sources":["../../src/renderer/prop-schemas.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-spec-validator.d.ts","sourceRoot":"","sources":["../../src/security/api-spec-validator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE3D,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB;;;;OAIG;IACH,YAAY,CAAC,EAAE,eAAe,EAAE,CAAC;CAClC;
|
|
1
|
+
{"version":3,"file":"api-spec-validator.d.ts","sourceRoot":"","sources":["../../src/security/api-spec-validator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE3D,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB;;;;OAIG;IACH,YAAY,CAAC,EAAE,eAAe,EAAE,CAAC;CAClC;AAiGD,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG,uBAAuB,CAgTtE"}
|
|
@@ -2,6 +2,7 @@ import { isValidIdentifier } from './identifier-guard.js';
|
|
|
2
2
|
const DANGEROUS_SQL_KEYWORDS = /\b(SELECT|INSERT|UPDATE|DELETE|DROP|ALTER|EXEC|EXECUTE|UNION|INTO)\b/i;
|
|
3
3
|
const SQL_COMMENTS = /(--|\/\*)/;
|
|
4
4
|
const SCOPE_COUNT_MACRO_PATTERN = /{{\s*scope(Where|And)(?::\s*([^}\s]+))?\s*}}/g;
|
|
5
|
+
const SUPPORTED_SQL_DIALECTS = new Set(['sqlserver', 'postgres', 'mysql', 'sqlite']);
|
|
5
6
|
function getScopeCountMacroAliases(sql) {
|
|
6
7
|
const aliases = [];
|
|
7
8
|
SCOPE_COUNT_MACRO_PATTERN.lastIndex = 0;
|
|
@@ -96,6 +97,9 @@ export function validateApiSpec(spec) {
|
|
|
96
97
|
}
|
|
97
98
|
const s = spec;
|
|
98
99
|
const errors = [];
|
|
100
|
+
if (s.dialect !== undefined && (typeof s.dialect !== 'string' || !SUPPORTED_SQL_DIALECTS.has(s.dialect))) {
|
|
101
|
+
errors.push('dialect must be one of: sqlserver, postgres, mysql, sqlite');
|
|
102
|
+
}
|
|
99
103
|
// Catalogs
|
|
100
104
|
const catalogs = s.catalogs;
|
|
101
105
|
if (catalogs) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-spec-validator.js","sourceRoot":"","sources":["../../src/security/api-spec-validator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"api-spec-validator.js","sourceRoot":"","sources":["../../src/security/api-spec-validator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spec-validator.d.ts","sourceRoot":"","sources":["../../src/security/spec-validator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAGvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAGnE,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,SAAS,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;
|
|
1
|
+
{"version":3,"file":"spec-validator.d.ts","sourceRoot":"","sources":["../../src/security/spec-validator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAGvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAGnE,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,SAAS,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAqDD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,YAAY,EAAE,CAAC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAC;IAC7B;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,eAAe,EAAE,CAAC;CAClC;AAED,MAAM,WAAW,iBAAiB;IAChC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,yKAAyK;IACzK,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,kKAAkK;IAClK,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5B,4EAA4E;IAC5E,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,sHAAsH;IACtH,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,2FAA2F;IAC3F,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;CAC/C;AAwUD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,GAAE,iBAAsB,GAAG,oBAAoB,CAolBjG"}
|
|
@@ -2,6 +2,44 @@ import { SPEC_KEYS } from '../types.js';
|
|
|
2
2
|
import { suggest } from '../utils/levenshtein.js';
|
|
3
3
|
import { COMMON_PROPS, TABLE_COLUMN_PROPS } from '../renderer/prop-schemas.js';
|
|
4
4
|
import { validateIdentityTokens } from './identity-token-validator.js';
|
|
5
|
+
function validateTransactionBinding(binding, elementId, eventPath, errors, spec) {
|
|
6
|
+
if (!binding || typeof binding !== 'object' || Array.isArray(binding))
|
|
7
|
+
return false;
|
|
8
|
+
if (!('transaction' in binding))
|
|
9
|
+
return false;
|
|
10
|
+
const tx = binding.transaction;
|
|
11
|
+
const transactionPath = `${eventPath}.transaction`;
|
|
12
|
+
const pathPrefix = `/elements/${elementId}/${eventPath.replace(/\./g, '/')}/transaction`;
|
|
13
|
+
if (!tx || typeof tx !== 'object' || Array.isArray(tx)) {
|
|
14
|
+
errors.push({ message: `Element "${elementId}": ${transactionPath} must be an object`, elementId, path: pathPrefix });
|
|
15
|
+
return true;
|
|
16
|
+
}
|
|
17
|
+
const txObj = tx;
|
|
18
|
+
if (!txObj.confirm || !Array.isArray(txObj.confirm) || txObj.confirm.length === 0) {
|
|
19
|
+
errors.push({ message: `Element "${elementId}": ${transactionPath}.confirm is required and must be a non-empty array`, elementId, path: `${pathPrefix}/confirm` });
|
|
20
|
+
}
|
|
21
|
+
for (const phase of ['before', 'optimistic', 'onSuccess', 'onError']) {
|
|
22
|
+
if (txObj[phase] !== undefined && !Array.isArray(txObj[phase])) {
|
|
23
|
+
errors.push({ message: `Element "${elementId}": ${transactionPath}.${phase} must be an array`, elementId, path: `${pathPrefix}/${phase}` });
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
if (txObj.timeout !== undefined) {
|
|
27
|
+
if (typeof txObj.timeout !== 'number' || txObj.timeout <= 0) {
|
|
28
|
+
errors.push({ message: `Element "${elementId}": ${transactionPath}.timeout must be a positive number`, elementId, path: `${pathPrefix}/timeout` });
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
for (const phase of ['before', 'optimistic', 'confirm', 'onSuccess', 'onError']) {
|
|
32
|
+
if (!Array.isArray(txObj[phase]))
|
|
33
|
+
continue;
|
|
34
|
+
for (const action of txObj[phase]) {
|
|
35
|
+
if (action && typeof action === 'object' && 'transaction' in action) {
|
|
36
|
+
errors.push({ message: `Element "${elementId}": ${transactionPath}.${phase} cannot contain nested transactions`, elementId, path: `${pathPrefix}/${phase}` });
|
|
37
|
+
}
|
|
38
|
+
validateActionBinding(action, elementId, `${transactionPath}.${phase}`, errors, spec);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
return true;
|
|
42
|
+
}
|
|
5
43
|
/** Expression handler rules: required properties and operation-specific requirements */
|
|
6
44
|
const EXPRESSION_RULES = {
|
|
7
45
|
$state: { required: ['$state'] },
|
|
@@ -508,40 +546,14 @@ export function validateSpec(spec, context = {}) {
|
|
|
508
546
|
}
|
|
509
547
|
if (el.on && typeof el.on === 'object' && !Array.isArray(el.on)) {
|
|
510
548
|
for (const [eventName, binding] of Object.entries(el.on)) {
|
|
511
|
-
if (
|
|
512
|
-
|
|
513
|
-
if (!tx || typeof tx !== 'object' || Array.isArray(tx)) {
|
|
514
|
-
errors.push({ message: `Element "${id}": on.${eventName}.transaction must be an object`, elementId: id, path: `/elements/${id}/on/${eventName}/transaction` });
|
|
515
|
-
continue;
|
|
516
|
-
}
|
|
517
|
-
const txObj = tx;
|
|
518
|
-
if (!txObj.confirm || !Array.isArray(txObj.confirm) || txObj.confirm.length === 0) {
|
|
519
|
-
errors.push({ message: `Element "${id}": on.${eventName}.transaction.confirm is required and must be a non-empty array`, elementId: id, path: `/elements/${id}/on/${eventName}/transaction/confirm` });
|
|
520
|
-
}
|
|
521
|
-
for (const phase of ['before', 'optimistic', 'onSuccess', 'onError']) {
|
|
522
|
-
if (txObj[phase] !== undefined && !Array.isArray(txObj[phase])) {
|
|
523
|
-
errors.push({ message: `Element "${id}": on.${eventName}.transaction.${phase} must be an array`, elementId: id, path: `/elements/${id}/on/${eventName}/transaction/${phase}` });
|
|
524
|
-
}
|
|
525
|
-
}
|
|
526
|
-
if (txObj.timeout !== undefined) {
|
|
527
|
-
if (typeof txObj.timeout !== 'number' || txObj.timeout <= 0) {
|
|
528
|
-
errors.push({ message: `Element "${id}": on.${eventName}.transaction.timeout must be a positive number`, elementId: id, path: `/elements/${id}/on/${eventName}/transaction/timeout` });
|
|
529
|
-
}
|
|
530
|
-
}
|
|
531
|
-
for (const phase of ['before', 'optimistic', 'confirm', 'onSuccess', 'onError']) {
|
|
532
|
-
if (Array.isArray(txObj[phase])) {
|
|
533
|
-
for (const action of txObj[phase]) {
|
|
534
|
-
if (action && typeof action === 'object' && 'transaction' in action) {
|
|
535
|
-
errors.push({ message: `Element "${id}": on.${eventName}.transaction.${phase} cannot contain nested transactions`, elementId: id, path: `/elements/${id}/on/${eventName}/transaction/${phase}` });
|
|
536
|
-
}
|
|
537
|
-
validateActionBinding(action, id, `on.${eventName}.transaction.${phase}`, errors, s);
|
|
538
|
-
}
|
|
539
|
-
}
|
|
540
|
-
}
|
|
549
|
+
if (validateTransactionBinding(binding, id, `on.${eventName}`, errors, s)) {
|
|
550
|
+
continue;
|
|
541
551
|
}
|
|
542
552
|
else if (Array.isArray(binding)) {
|
|
543
553
|
for (const action of binding) {
|
|
544
|
-
|
|
554
|
+
if (!validateTransactionBinding(action, id, `on.${eventName}`, errors, s)) {
|
|
555
|
+
validateActionBinding(action, id, `on.${eventName}`, errors, s);
|
|
556
|
+
}
|
|
545
557
|
}
|
|
546
558
|
}
|
|
547
559
|
else if (binding && typeof binding === 'object') {
|