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.
Files changed (104) hide show
  1. package/README.md +64 -16
  2. package/dist/actions/dispatcher.d.ts.map +1 -1
  3. package/dist/actions/dispatcher.js +21 -2
  4. package/dist/actions/dispatcher.js.map +1 -1
  5. package/dist/expressions/handlers/let.d.ts +6 -0
  6. package/dist/expressions/handlers/let.d.ts.map +1 -1
  7. package/dist/expressions/handlers/let.js +29 -4
  8. package/dist/expressions/handlers/let.js.map +1 -1
  9. package/dist/expressions/handlers/template.d.ts.map +1 -1
  10. package/dist/expressions/handlers/template.js +2 -1
  11. package/dist/expressions/handlers/template.js.map +1 -1
  12. package/dist/renderer/prop-schemas.js +1 -1
  13. package/dist/renderer/prop-schemas.js.map +1 -1
  14. package/dist/security/api-spec-validator.d.ts.map +1 -1
  15. package/dist/security/api-spec-validator.js +4 -0
  16. package/dist/security/api-spec-validator.js.map +1 -1
  17. package/dist/security/spec-validator.d.ts.map +1 -1
  18. package/dist/security/spec-validator.js +43 -31
  19. package/dist/security/spec-validator.js.map +1 -1
  20. package/dist/server.d.ts +7 -0
  21. package/dist/server.d.ts.map +1 -1
  22. package/dist/server.js +3 -0
  23. package/dist/server.js.map +1 -1
  24. package/dist/spec-stores/sql-versioned.d.ts +38 -0
  25. package/dist/spec-stores/sql-versioned.d.ts.map +1 -0
  26. package/dist/spec-stores/sql-versioned.js +186 -0
  27. package/dist/spec-stores/sql-versioned.js.map +1 -0
  28. package/dist/spec-stores/sql.d.ts +21 -0
  29. package/dist/spec-stores/sql.d.ts.map +1 -0
  30. package/dist/spec-stores/sql.js +65 -0
  31. package/dist/spec-stores/sql.js.map +1 -0
  32. package/dist/spec-stores/sqlserver-versioned.d.ts +5 -30
  33. package/dist/spec-stores/sqlserver-versioned.d.ts.map +1 -1
  34. package/dist/spec-stores/sqlserver-versioned.js +16 -245
  35. package/dist/spec-stores/sqlserver-versioned.js.map +1 -1
  36. package/dist/spec-stores/sqlserver.d.ts +4 -11
  37. package/dist/spec-stores/sqlserver.d.ts.map +1 -1
  38. package/dist/spec-stores/sqlserver.js +16 -66
  39. package/dist/spec-stores/sqlserver.js.map +1 -1
  40. package/dist/sql/ddl.d.ts +7 -0
  41. package/dist/sql/ddl.d.ts.map +1 -0
  42. package/dist/sql/ddl.js +134 -0
  43. package/dist/sql/ddl.js.map +1 -0
  44. package/dist/sql/drivers/mysql.d.ts +25 -0
  45. package/dist/sql/drivers/mysql.d.ts.map +1 -0
  46. package/dist/sql/drivers/mysql.js +329 -0
  47. package/dist/sql/drivers/mysql.js.map +1 -0
  48. package/dist/sql/drivers/postgres.d.ts +30 -0
  49. package/dist/sql/drivers/postgres.d.ts.map +1 -0
  50. package/dist/sql/drivers/postgres.js +321 -0
  51. package/dist/sql/drivers/postgres.js.map +1 -0
  52. package/dist/sql/drivers/sqlite.d.ts +28 -0
  53. package/dist/sql/drivers/sqlite.d.ts.map +1 -0
  54. package/dist/sql/drivers/sqlite.js +369 -0
  55. package/dist/sql/drivers/sqlite.js.map +1 -0
  56. package/dist/sql/drivers/sqlserver.d.ts +46 -0
  57. package/dist/sql/drivers/sqlserver.d.ts.map +1 -0
  58. package/dist/sql/drivers/sqlserver.js +405 -0
  59. package/dist/sql/drivers/sqlserver.js.map +1 -0
  60. package/dist/sql/errors.d.ts +22 -0
  61. package/dist/sql/errors.d.ts.map +1 -0
  62. package/dist/sql/errors.js +27 -0
  63. package/dist/sql/errors.js.map +1 -0
  64. package/dist/sql/factory.d.ts +3 -0
  65. package/dist/sql/factory.d.ts.map +1 -0
  66. package/dist/sql/factory.js +24 -0
  67. package/dist/sql/factory.js.map +1 -0
  68. package/dist/sql/index.d.ts +17 -0
  69. package/dist/sql/index.d.ts.map +1 -0
  70. package/dist/sql/index.js +9 -0
  71. package/dist/sql/index.js.map +1 -0
  72. package/dist/sql/named-params.d.ts +8 -0
  73. package/dist/sql/named-params.d.ts.map +1 -0
  74. package/dist/sql/named-params.js +182 -0
  75. package/dist/sql/named-params.js.map +1 -0
  76. package/dist/sql/types.d.ts +49 -0
  77. package/dist/sql/types.d.ts.map +1 -0
  78. package/dist/sql/types.js +2 -0
  79. package/dist/sql/types.js.map +1 -0
  80. package/dist/types.d.ts +1 -1
  81. package/dist/types.d.ts.map +1 -1
  82. package/docs/consumer/README.md +1 -1
  83. package/docs/consumer/WHERE-TO-LOOK.md +4 -4
  84. package/docs/consumer/ai-context-api.md +44 -0
  85. package/docs/consumer/ai-context-primitives.md +3 -0
  86. package/docs/consumer/ai-context-runtime-semantics.md +8 -3
  87. package/docs/consumer/ai-context.md +123 -39
  88. package/docs/consumer/reference-doc.md +30 -8
  89. package/docs/wiki/compiled/README.md +1 -1
  90. package/docs/wiki/compiled/_lint.md +13 -8
  91. package/docs/wiki/compiled/action-fetch.md +7 -2
  92. package/docs/wiki/compiled/concept-action-chains.md +62 -24
  93. package/docs/wiki/compiled/concept-package-layout.md +11 -9
  94. package/docs/wiki/compiled/concept-public-package-names.md +24 -13
  95. package/docs/wiki/compiled/concept-shape-animations.md +1 -1
  96. package/docs/wiki/compiled/concept-spec-stores-catalog.md +28 -16
  97. package/docs/wiki/compiled/concept-transactions.md +20 -12
  98. package/docs/wiki/compiled/expression-let-ref.md +36 -18
  99. package/docs/wiki/compiled/expression-template.md +28 -17
  100. package/docs/wiki/compiled/path-ui-loading-error.md +5 -0
  101. package/docs/wiki/compiled/pattern-fetch-vs-datasources.md +5 -0
  102. package/docs/wiki/compiled/pattern-loading-content-empty.md +3 -2
  103. package/docs/wiki/compiled/primitive-select.md +16 -2
  104. package/package.json +25 -2
@@ -0,0 +1,405 @@
1
+ import { compileNamedParams as compileSqlNamedParams } from '../named-params.js';
2
+ import { missingSqlDriverDependencyError, SqlDriverError } from '../errors.js';
3
+ const SQLSERVER_CAPABILITIES = {
4
+ dialect: 'sqlserver',
5
+ namedParams: true,
6
+ positionalParams: false,
7
+ nativeJson: false,
8
+ nativeBoolean: false,
9
+ returning: true,
10
+ upsert: true,
11
+ transactions: true,
12
+ };
13
+ function isRecord(value) {
14
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
15
+ }
16
+ function parseBoolean(value) {
17
+ if (value === null)
18
+ return undefined;
19
+ if (/^(true|1|yes)$/i.test(value))
20
+ return true;
21
+ if (/^(false|0|no)$/i.test(value))
22
+ return false;
23
+ return undefined;
24
+ }
25
+ function connectionConfig(connection) {
26
+ if (typeof connection !== 'string') {
27
+ return isRecord(connection) ? connection : {};
28
+ }
29
+ try {
30
+ const url = new URL(connection);
31
+ const database = decodeURIComponent(url.pathname.replace(/^\/+/, ''));
32
+ const port = url.port ? Number(url.port) : undefined;
33
+ const encrypt = parseBoolean(url.searchParams.get('encrypt'));
34
+ const trustServerCertificate = parseBoolean(url.searchParams.get('trustServerCertificate'));
35
+ const options = {};
36
+ if (encrypt !== undefined)
37
+ options.encrypt = encrypt;
38
+ if (trustServerCertificate !== undefined)
39
+ options.trustServerCertificate = trustServerCertificate;
40
+ return {
41
+ server: decodeURIComponent(url.hostname),
42
+ ...(port !== undefined && Number.isFinite(port) ? { port } : {}),
43
+ ...(database ? { database } : {}),
44
+ ...(url.username ? { user: decodeURIComponent(url.username) } : {}),
45
+ ...(url.password ? { password: decodeURIComponent(url.password) } : {}),
46
+ ...(Object.keys(options).length > 0 ? { options } : {}),
47
+ };
48
+ }
49
+ catch {
50
+ return connection;
51
+ }
52
+ }
53
+ function trimStatement(statement) {
54
+ return statement.trim().replace(/;\s*$/, '');
55
+ }
56
+ function hasOrderBy(statement) {
57
+ return /\border\s+by\b/i.test(statement);
58
+ }
59
+ function stripTrailingOrderBy(statement) {
60
+ return trimStatement(statement).replace(/\s+order\s+by\s+[\s\S]+$/i, '').trim();
61
+ }
62
+ function whereClause(where) {
63
+ const sql = trimStatement(where.sql);
64
+ return /^where\b/i.test(sql) ? sql : `WHERE ${sql}`;
65
+ }
66
+ function requireIdentifier(identifier) {
67
+ if (identifier.trim() === '') {
68
+ throw new SqlDriverError('SQL identifier cannot be empty.', {
69
+ code: 'SQL_IDENTIFIER_INVALID',
70
+ dialect: 'sqlserver',
71
+ });
72
+ }
73
+ return identifier;
74
+ }
75
+ function normalizeModule(mod) {
76
+ return mod.default ?? mod;
77
+ }
78
+ async function loadMssqlModule() {
79
+ try {
80
+ return (await import('mssql'));
81
+ }
82
+ catch (error) {
83
+ throw missingSqlDriverDependencyError({
84
+ label: 'SQL Server',
85
+ dialect: 'sqlserver',
86
+ packageName: 'mssql',
87
+ cause: error,
88
+ });
89
+ }
90
+ }
91
+ function normalizeStatement(statement, params) {
92
+ const source = typeof statement === 'string' ? { sql: statement, params } : statement;
93
+ if (source.params === undefined)
94
+ return source;
95
+ if (!isRecord(source.params)) {
96
+ throw new SqlDriverError('SQL Server driver requires named object params.', {
97
+ code: 'SQL_PARAMS_INVALID',
98
+ dialect: 'sqlserver',
99
+ });
100
+ }
101
+ return compileSqlNamedParams('sqlserver', source.sql, source.params);
102
+ }
103
+ function normalizeValue(value) {
104
+ if (value === undefined)
105
+ return null;
106
+ if (value instanceof Date)
107
+ return value;
108
+ if (value === null)
109
+ return null;
110
+ if (Buffer.isBuffer(value))
111
+ return value;
112
+ if (typeof value === 'object')
113
+ return JSON.stringify(value);
114
+ return value;
115
+ }
116
+ function sqlTypeFor(value, mssql) {
117
+ if (typeof value === 'boolean')
118
+ return mssql.Bit ?? mssql.NVarChar(mssql.MAX);
119
+ if (typeof value === 'bigint')
120
+ return mssql.BigInt ?? mssql.NVarChar(mssql.MAX);
121
+ if (typeof value === 'number')
122
+ return Number.isInteger(value) ? (mssql.Int ?? mssql.NVarChar(mssql.MAX)) : (mssql.Float ?? mssql.NVarChar(mssql.MAX));
123
+ if (value instanceof Date)
124
+ return mssql.DateTime2 ?? mssql.NVarChar(mssql.MAX);
125
+ return mssql.NVarChar(mssql.MAX);
126
+ }
127
+ function bindParams(request, mssql, params) {
128
+ if (params === undefined)
129
+ return request;
130
+ if (Array.isArray(params)) {
131
+ throw new SqlDriverError('SQL Server driver requires named object params.', {
132
+ code: 'SQL_PARAMS_INVALID',
133
+ dialect: 'sqlserver',
134
+ });
135
+ }
136
+ for (const [name, value] of Object.entries(params)) {
137
+ request.input(name, sqlTypeFor(value, mssql), normalizeValue(value));
138
+ }
139
+ return request;
140
+ }
141
+ function requireObjectParams(statement, purpose) {
142
+ if (statement.params === undefined)
143
+ return {};
144
+ if (!isRecord(statement.params)) {
145
+ throw new SqlDriverError(`${purpose} requires named object params.`, {
146
+ code: 'SQL_PARAMS_INVALID',
147
+ dialect: 'sqlserver',
148
+ });
149
+ }
150
+ return statement.params;
151
+ }
152
+ function uniqueParamName(base, used) {
153
+ const safeBase = base.replace(/[^A-Za-z0-9_]/g, '_').replace(/^[^A-Za-z_]+/, '') || 'value';
154
+ let name = safeBase;
155
+ let suffix = 1;
156
+ while (used.has(name)) {
157
+ suffix += 1;
158
+ name = `${safeBase}_${suffix}`;
159
+ }
160
+ used.add(name);
161
+ return name;
162
+ }
163
+ function affectedRows(rowsAffected) {
164
+ return rowsAffected?.reduce((sum, current) => sum + current, 0) ?? 0;
165
+ }
166
+ function insertIdFromRows(rows) {
167
+ const first = rows[0];
168
+ if (first && Object.prototype.hasOwnProperty.call(first, 'id'))
169
+ return first.id;
170
+ return undefined;
171
+ }
172
+ export function createSqlServerDriver(config, deps = {}) {
173
+ let mssqlModule;
174
+ let connection;
175
+ const loadMssql = deps.loadMssql ?? loadMssqlModule;
176
+ function mapError(error, code = 'SQL_DRIVER_QUERY_FAILED') {
177
+ if (error instanceof SqlDriverError)
178
+ return error;
179
+ return new SqlDriverError(error instanceof Error ? error.message : 'SQL Server driver error.', {
180
+ code,
181
+ dialect: 'sqlserver',
182
+ cause: error,
183
+ });
184
+ }
185
+ async function mssql() {
186
+ if (mssqlModule)
187
+ return mssqlModule;
188
+ try {
189
+ mssqlModule = normalizeModule(await loadMssql());
190
+ return mssqlModule;
191
+ }
192
+ catch (error) {
193
+ if (error instanceof SqlDriverError)
194
+ throw error;
195
+ throw missingSqlDriverDependencyError({
196
+ label: 'SQL Server',
197
+ dialect: 'sqlserver',
198
+ packageName: 'mssql',
199
+ cause: error,
200
+ });
201
+ }
202
+ }
203
+ async function pool() {
204
+ if (connection)
205
+ return connection;
206
+ const sql = await mssql();
207
+ connection = await new sql.ConnectionPool(connectionConfig(config.connection)).connect();
208
+ return connection;
209
+ }
210
+ async function runQuery(source, statement, params) {
211
+ const sql = await mssql();
212
+ const normalized = normalizeStatement(statement, params);
213
+ const requestSource = source ?? (await pool());
214
+ const request = bindParams(requestSource.request(), sql, normalized.params);
215
+ const result = await request.query(normalized.sql);
216
+ return (result.recordset ?? []);
217
+ }
218
+ async function runExec(source, statement, params) {
219
+ const sql = await mssql();
220
+ const normalized = normalizeStatement(statement, params);
221
+ const requestSource = source ?? (await pool());
222
+ const request = bindParams(requestSource.request(), sql, normalized.params);
223
+ const result = await request.query(normalized.sql);
224
+ const rows = (result.recordset ?? []);
225
+ return {
226
+ rows,
227
+ affectedRows: affectedRows(result.rowsAffected),
228
+ insertId: insertIdFromRows(rows),
229
+ };
230
+ }
231
+ const driver = {
232
+ dialect: 'sqlserver',
233
+ capabilities: SQLSERVER_CAPABILITIES,
234
+ async connect() {
235
+ await pool();
236
+ },
237
+ async close() {
238
+ await connection?.close();
239
+ connection = undefined;
240
+ },
241
+ async query(statement, params) {
242
+ try {
243
+ return await runQuery(undefined, statement, params);
244
+ }
245
+ catch (error) {
246
+ throw mapError(error);
247
+ }
248
+ },
249
+ async exec(statement, params) {
250
+ try {
251
+ return await runExec(undefined, statement, params);
252
+ }
253
+ catch (error) {
254
+ throw mapError(error);
255
+ }
256
+ },
257
+ async transaction(run) {
258
+ const sql = await mssql();
259
+ const currentPool = await pool();
260
+ if (!sql.Transaction) {
261
+ throw new SqlDriverError('SQL Server transaction support requires the mssql Transaction API.', {
262
+ code: 'SQL_TRANSACTION_UNAVAILABLE',
263
+ dialect: 'sqlserver',
264
+ });
265
+ }
266
+ const tx = new sql.Transaction(currentPool);
267
+ await tx.begin();
268
+ try {
269
+ const result = await run({
270
+ query: (statement, params) => runQuery(tx, statement, params),
271
+ exec: (statement, params) => runExec(tx, statement, params),
272
+ });
273
+ await tx.commit();
274
+ return result;
275
+ }
276
+ catch (error) {
277
+ await tx.rollback();
278
+ throw error;
279
+ }
280
+ },
281
+ quoteIdent(identifier) {
282
+ return `[${requireIdentifier(identifier).replace(/]/g, ']]')}]`;
283
+ },
284
+ quoteQualified(...identifiers) {
285
+ return identifiers.map((identifier) => driver.quoteIdent(identifier)).join('.');
286
+ },
287
+ compileNamedParams(statement, params) {
288
+ return compileSqlNamedParams('sqlserver', statement, params);
289
+ },
290
+ paginate(statement, limit, offset) {
291
+ const cleanLimit = Math.trunc(limit);
292
+ const cleanOffset = Math.trunc(offset);
293
+ if (!Number.isFinite(cleanLimit) || cleanLimit < 0 || !Number.isFinite(cleanOffset) || cleanOffset < 0) {
294
+ throw new SqlDriverError('SQL Server pagination limit and offset must be finite non-negative numbers.', {
295
+ code: 'SQL_PAGINATION_INVALID',
296
+ dialect: 'sqlserver',
297
+ });
298
+ }
299
+ const base = trimStatement(statement);
300
+ const ordered = hasOrderBy(base) ? base : `${base} ORDER BY (SELECT 0)`;
301
+ return `${ordered} OFFSET ${cleanOffset} ROWS FETCH NEXT ${cleanLimit} ROWS ONLY`;
302
+ },
303
+ countQuery(statement) {
304
+ return `SELECT COUNT(*) AS total FROM (${stripTrailingOrderBy(statement)}) AS [mythik_count]`;
305
+ },
306
+ totalsQuery(statement) {
307
+ return `SELECT * FROM (${stripTrailingOrderBy(statement)}) AS [mythik_totals]`;
308
+ },
309
+ buildInsertReturning(table, values, returning = ['*']) {
310
+ const columns = Object.keys(values);
311
+ if (columns.length === 0) {
312
+ throw new SqlDriverError('SQL Server insert requires at least one value.', {
313
+ code: 'SQL_VALUES_EMPTY',
314
+ dialect: 'sqlserver',
315
+ });
316
+ }
317
+ const used = new Set();
318
+ const params = {};
319
+ const placeholders = columns.map((column) => {
320
+ const name = uniqueParamName(column, used);
321
+ params[name] = values[column];
322
+ return `@${name}`;
323
+ });
324
+ const projection = returning.includes('*')
325
+ ? 'INSERTED.*'
326
+ : returning.map((column) => `INSERTED.${driver.quoteIdent(column)}`).join(', ');
327
+ return {
328
+ sql: `INSERT INTO ${driver.quoteIdent(table)} (${columns.map((column) => driver.quoteIdent(column)).join(', ')}) OUTPUT ${projection} VALUES (${placeholders.join(', ')})`,
329
+ params,
330
+ };
331
+ },
332
+ buildUpdateReturning(table, values, where, returning = ['*']) {
333
+ const columns = Object.keys(values);
334
+ if (columns.length === 0) {
335
+ throw new SqlDriverError('SQL Server update requires at least one value.', {
336
+ code: 'SQL_VALUES_EMPTY',
337
+ dialect: 'sqlserver',
338
+ });
339
+ }
340
+ const params = { ...requireObjectParams(where, 'SQL Server update') };
341
+ const used = new Set(Object.keys(params));
342
+ const assignments = columns.map((column) => {
343
+ const name = uniqueParamName(`set_${column}`, used);
344
+ params[name] = values[column];
345
+ return `${driver.quoteIdent(column)} = @${name}`;
346
+ });
347
+ const projection = returning.includes('*')
348
+ ? 'INSERTED.*'
349
+ : returning.map((column) => `INSERTED.${driver.quoteIdent(column)}`).join(', ');
350
+ return {
351
+ sql: `UPDATE ${driver.quoteIdent(table)} SET ${assignments.join(', ')} OUTPUT ${projection} ${whereClause(where)}`,
352
+ params,
353
+ };
354
+ },
355
+ buildDelete(table, where) {
356
+ return {
357
+ sql: `DELETE FROM ${driver.quoteIdent(table)} ${whereClause(where)}`,
358
+ params: where.params,
359
+ };
360
+ },
361
+ buildUpsert(table, values, keys) {
362
+ const columns = Object.keys(values);
363
+ if (columns.length === 0) {
364
+ throw new SqlDriverError('SQL Server upsert requires at least one value.', {
365
+ code: 'SQL_VALUES_EMPTY',
366
+ dialect: 'sqlserver',
367
+ });
368
+ }
369
+ if (keys.length === 0) {
370
+ throw new SqlDriverError('SQL Server upsert requires at least one conflict key.', {
371
+ code: 'SQL_KEYS_EMPTY',
372
+ dialect: 'sqlserver',
373
+ });
374
+ }
375
+ const used = new Set();
376
+ const params = {};
377
+ const sourceColumns = columns.map((column) => {
378
+ const name = uniqueParamName(column, used);
379
+ params[name] = values[column];
380
+ return `@${name} AS ${driver.quoteIdent(column)}`;
381
+ });
382
+ const onClause = keys
383
+ .map((key) => `target.${driver.quoteIdent(key)} = source.${driver.quoteIdent(key)}`)
384
+ .join(' AND ');
385
+ const updateColumns = columns.filter((column) => !keys.includes(column));
386
+ const updateClause = updateColumns.length === 0
387
+ ? ''
388
+ : `WHEN MATCHED THEN UPDATE SET ${updateColumns
389
+ .map((column) => `target.${driver.quoteIdent(column)} = source.${driver.quoteIdent(column)}`)
390
+ .join(', ')}`;
391
+ return {
392
+ sql: `MERGE ${driver.quoteIdent(table)} AS target USING (SELECT ${sourceColumns.join(', ')}) AS source ON ${onClause} ${updateClause} WHEN NOT MATCHED THEN INSERT (${columns.map((column) => driver.quoteIdent(column)).join(', ')}) VALUES (${columns.map((column) => `source.${driver.quoteIdent(column)}`).join(', ')}) OUTPUT INSERTED.*;`,
393
+ params,
394
+ };
395
+ },
396
+ async tableExists(table) {
397
+ const [schema, name] = table.includes('.') ? table.split('.', 2) : ['dbo', table];
398
+ const rows = await driver.query(`SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = @schema AND TABLE_NAME = @name`, { schema, name });
399
+ return rows.length > 0;
400
+ },
401
+ mapError,
402
+ };
403
+ return driver;
404
+ }
405
+ //# sourceMappingURL=sqlserver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqlserver.js","sourceRoot":"","sources":["../../../src/sql/drivers/sqlserver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ export interface SqlDriverErrorOptions {
2
+ code: string;
3
+ dialect?: string;
4
+ packageName?: string;
5
+ installCommand?: string;
6
+ cause?: unknown;
7
+ }
8
+ export declare class SqlDriverError extends Error {
9
+ readonly code: string;
10
+ readonly dialect?: string;
11
+ readonly packageName?: string;
12
+ readonly installCommand?: string;
13
+ readonly cause?: unknown;
14
+ constructor(message: string, options: SqlDriverErrorOptions);
15
+ }
16
+ export declare function missingSqlDriverDependencyError(args: {
17
+ label: string;
18
+ dialect: string;
19
+ packageName: string;
20
+ cause?: unknown;
21
+ }): SqlDriverError;
22
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/sql/errors.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,qBAAa,cAAe,SAAQ,KAAK;IACvC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,SAAkB,KAAK,CAAC,EAAE,OAAO,CAAC;gBAEtB,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB;CAS5D;AAED,wBAAgB,+BAA+B,CAAC,IAAI,EAAE;IACpD,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,GAAG,cAAc,CAYjB"}
@@ -0,0 +1,27 @@
1
+ export class SqlDriverError extends Error {
2
+ code;
3
+ dialect;
4
+ packageName;
5
+ installCommand;
6
+ cause;
7
+ constructor(message, options) {
8
+ super(message);
9
+ this.name = 'SqlDriverError';
10
+ this.code = options.code;
11
+ this.dialect = options.dialect;
12
+ this.packageName = options.packageName;
13
+ this.installCommand = options.installCommand;
14
+ this.cause = options.cause;
15
+ }
16
+ }
17
+ export function missingSqlDriverDependencyError(args) {
18
+ const installCommand = `npm install ${args.packageName}`;
19
+ return new SqlDriverError(`${args.label} support requires the optional peer dependency "${args.packageName}". Install it with: ${installCommand}`, {
20
+ code: 'SQL_DRIVER_DEPENDENCY_MISSING',
21
+ dialect: args.dialect,
22
+ packageName: args.packageName,
23
+ installCommand,
24
+ cause: args.cause,
25
+ });
26
+ }
27
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/sql/errors.ts"],"names":[],"mappings":"AAQA,MAAM,OAAO,cAAe,SAAQ,KAAK;IAC9B,IAAI,CAAS;IACb,OAAO,CAAU;IACjB,WAAW,CAAU;IACrB,cAAc,CAAU;IACf,KAAK,CAAW;IAElC,YAAY,OAAe,EAAE,OAA8B;QACzD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;QAC7C,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC7B,CAAC;CACF;AAED,MAAM,UAAU,+BAA+B,CAAC,IAK/C;IACC,MAAM,cAAc,GAAG,eAAe,IAAI,CAAC,WAAW,EAAE,CAAC;IACzD,OAAO,IAAI,cAAc,CACvB,GAAG,IAAI,CAAC,KAAK,mDAAmD,IAAI,CAAC,WAAW,uBAAuB,cAAc,EAAE,EACvH;QACE,IAAI,EAAE,+BAA+B;QACrC,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,cAAc;QACd,KAAK,EAAE,IAAI,CAAC,KAAK;KAClB,CACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { SqlDriver, SqlDriverConfig } from './types.js';
2
+ export declare function createSqlDriver(config: SqlDriverConfig): SqlDriver;
3
+ //# sourceMappingURL=factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/sql/factory.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7D,wBAAgB,eAAe,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS,CAqBlE"}
@@ -0,0 +1,24 @@
1
+ import { createMysqlDriver } from './drivers/mysql.js';
2
+ import { createPostgresDriver } from './drivers/postgres.js';
3
+ import { createSqliteDriver } from './drivers/sqlite.js';
4
+ import { createSqlServerDriver } from './drivers/sqlserver.js';
5
+ import { SqlDriverError } from './errors.js';
6
+ export function createSqlDriver(config) {
7
+ if (config.dialect === 'sqlite') {
8
+ return createSqliteDriver(config);
9
+ }
10
+ if (config.dialect === 'sqlserver') {
11
+ return createSqlServerDriver(config);
12
+ }
13
+ if (config.dialect === 'postgres') {
14
+ return createPostgresDriver(config);
15
+ }
16
+ if (config.dialect === 'mysql') {
17
+ return createMysqlDriver(config);
18
+ }
19
+ throw new SqlDriverError(`SQL driver "${String(config.dialect)}" is not implemented yet.`, {
20
+ code: 'SQL_DRIVER_NOT_IMPLEMENTED',
21
+ dialect: config.dialect,
22
+ });
23
+ }
24
+ //# sourceMappingURL=factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../src/sql/factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAG7C,MAAM,UAAU,eAAe,CAAC,MAAuB;IACrD,IAAI,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,kBAAkB,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,MAAM,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;QACnC,OAAO,qBAAqB,CAAC,MAAM,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,MAAM,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;QAClC,OAAO,oBAAoB,CAAC,MAAM,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,MAAM,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;QAC/B,OAAO,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;IAED,MAAM,IAAI,cAAc,CAAC,eAAe,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,2BAA2B,EAAE;QACzF,IAAI,EAAE,4BAA4B;QAClC,OAAO,EAAE,MAAM,CAAC,OAAO;KACxB,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,17 @@
1
+ export { SqlDriverError } from './errors.js';
2
+ export type { SqlDriverErrorOptions } from './errors.js';
3
+ export { getSqlStoreDdl, SQL_STORE_DDL } from './ddl.js';
4
+ export type { SqlStoreTable } from './ddl.js';
5
+ export { createSqlDriver } from './factory.js';
6
+ export { createMysqlDriver } from './drivers/mysql.js';
7
+ export type { MysqlDriverDeps } from './drivers/mysql.js';
8
+ export { createPostgresDriver } from './drivers/postgres.js';
9
+ export type { PostgresDriverDeps } from './drivers/postgres.js';
10
+ export { createSqliteDriver } from './drivers/sqlite.js';
11
+ export type { SqliteDriverDeps } from './drivers/sqlite.js';
12
+ export { createSqlServerDriver } from './drivers/sqlserver.js';
13
+ export type { SqlServerDriverDeps } from './drivers/sqlserver.js';
14
+ export { compileNamedParams } from './named-params.js';
15
+ export type { CompiledNamedParams } from './named-params.js';
16
+ export type { SqlCapabilities, SqlDialect, SqlDriver, SqlDriverConfig, SqlMutationResult, SqlParams, SqlStatement, SqlTransaction, } from './types.js';
17
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sql/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzD,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,YAAY,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,YAAY,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,YAAY,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,YAAY,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,YAAY,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,YAAY,EACV,eAAe,EACf,UAAU,EACV,SAAS,EACT,eAAe,EACf,iBAAiB,EACjB,SAAS,EACT,YAAY,EACZ,cAAc,GACf,MAAM,YAAY,CAAC"}
@@ -0,0 +1,9 @@
1
+ export { SqlDriverError } from './errors.js';
2
+ export { getSqlStoreDdl, SQL_STORE_DDL } from './ddl.js';
3
+ export { createSqlDriver } from './factory.js';
4
+ export { createMysqlDriver } from './drivers/mysql.js';
5
+ export { createPostgresDriver } from './drivers/postgres.js';
6
+ export { createSqliteDriver } from './drivers/sqlite.js';
7
+ export { createSqlServerDriver } from './drivers/sqlserver.js';
8
+ export { compileNamedParams } from './named-params.js';
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sql/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { SqlDialect, SqlStatement } from './types.js';
2
+ type CompiledParams = Record<string, unknown> | unknown[];
3
+ export interface CompiledNamedParams extends SqlStatement {
4
+ params: CompiledParams;
5
+ }
6
+ export declare function compileNamedParams(dialect: SqlDialect, sql: string, params: Record<string, unknown>): CompiledNamedParams;
7
+ export {};
8
+ //# sourceMappingURL=named-params.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"named-params.d.ts","sourceRoot":"","sources":["../../src/sql/named-params.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE3D,KAAK,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,EAAE,CAAC;AAE1D,MAAM,WAAW,mBAAoB,SAAQ,YAAY;IACvD,MAAM,EAAE,cAAc,CAAC;CACxB;AAoBD,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,UAAU,EACnB,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,mBAAmB,CA6KrB"}