drizzle-orm 0.25.2 → 0.25.3-4cc2d87
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/aws-data-api/pg/index.cjs +234 -1
- package/aws-data-api/pg/index.cjs.map +1 -1
- package/aws-data-api/pg/index.d.ts +5 -6
- package/aws-data-api/pg/index.mjs +228 -1
- package/aws-data-api/pg/index.mjs.map +1 -1
- package/aws-data-api/pg/migrator.cjs +13 -1
- package/aws-data-api/pg/migrator.cjs.map +1 -1
- package/aws-data-api/pg/migrator.d.ts +5 -6
- package/aws-data-api/pg/migrator.mjs +11 -1
- package/aws-data-api/pg/migrator.mjs.map +1 -1
- package/better-sqlite3/index.cjs +119 -1
- package/better-sqlite3/index.cjs.map +1 -1
- package/better-sqlite3/index.d.ts +14 -12
- package/better-sqlite3/index.mjs +114 -1
- package/better-sqlite3/index.mjs.map +1 -1
- package/better-sqlite3/migrator.cjs +13 -1
- package/better-sqlite3/migrator.cjs.map +1 -1
- package/better-sqlite3/migrator.d.ts +5 -5
- package/better-sqlite3/migrator.mjs +11 -1
- package/better-sqlite3/migrator.mjs.map +1 -1
- package/bun-sqlite/index.cjs +126 -1
- package/bun-sqlite/index.cjs.map +1 -1
- package/bun-sqlite/index.d.ts +14 -12
- package/bun-sqlite/index.mjs +121 -1
- package/bun-sqlite/index.mjs.map +1 -1
- package/bun-sqlite/migrator.cjs +13 -1
- package/bun-sqlite/migrator.cjs.map +1 -1
- package/bun-sqlite/migrator.d.ts +5 -5
- package/bun-sqlite/migrator.mjs +11 -1
- package/bun-sqlite/migrator.mjs.map +1 -1
- package/{column.d-8b137277.d.ts → column.d-c31e7ad3.d.ts} +77 -6
- package/d1/index.cjs +116 -1
- package/d1/index.cjs.map +1 -1
- package/d1/index.d.ts +15 -12
- package/d1/index.mjs +111 -1
- package/d1/index.mjs.map +1 -1
- package/d1/migrator.cjs +13 -1
- package/d1/migrator.cjs.map +1 -1
- package/d1/migrator.d.ts +5 -5
- package/d1/migrator.mjs +11 -1
- package/d1/migrator.mjs.map +1 -1
- package/{db.d-ae495c35.d.ts → db.d-a2311092.d.ts} +121 -44
- package/{db.d-66553b9e.d.ts → db.d-bc9a1d6c.d.ts} +193 -16
- package/driver.d-17ca4c15.d.ts +8 -0
- package/driver.d-300ddb0e.d.ts +64 -0
- package/driver.d-45e56643.d.ts +60 -0
- package/driver.d-64f2125c.d.ts +8 -0
- package/driver.d-7fde2e9d.d.ts +55 -0
- package/driver.d-9d703b84.d.ts +8 -0
- package/driver.d-b2b94bf9.d.ts +46 -0
- package/driver.d-b70ee7ee.d.ts +55 -0
- package/driver.d-dea23ee6.d.ts +8 -0
- package/driver.d-e54af17b.d.ts +52 -0
- package/driver.d-eb490c91.d.ts +9 -0
- package/driver.d-ef6fa2df.d.ts +14 -0
- package/errors-bb636d84.mjs +19 -0
- package/errors-bb636d84.mjs.map +1 -0
- package/errors-d0192d62.cjs +22 -0
- package/errors-d0192d62.cjs.map +1 -0
- package/index.cjs +105 -1
- package/index.cjs.map +1 -1
- package/index.d.ts +16 -432
- package/index.mjs +3 -1
- package/index.mjs.map +1 -1
- package/knex/index.cjs +2 -1
- package/knex/index.cjs.map +1 -1
- package/knex/index.d.ts +1 -1
- package/kysely/index.cjs +2 -1
- package/kysely/index.cjs.map +1 -1
- package/kysely/index.d.ts +1 -1
- package/libsql/index.cjs +155 -1
- package/libsql/index.cjs.map +1 -1
- package/libsql/index.d.ts +14 -12
- package/libsql/index.mjs +150 -1
- package/libsql/index.mjs.map +1 -1
- package/libsql/migrator.cjs +13 -1
- package/libsql/migrator.cjs.map +1 -1
- package/libsql/migrator.d.ts +5 -5
- package/libsql/migrator.mjs +11 -1
- package/libsql/migrator.mjs.map +1 -1
- package/logger-caa1ca6e.cjs +34 -0
- package/logger-caa1ca6e.cjs.map +1 -0
- package/logger-caf75bde.mjs +30 -0
- package/logger-caf75bde.mjs.map +1 -0
- package/migrator.cjs +48 -1
- package/migrator.cjs.map +1 -1
- package/migrator.mjs +46 -1
- package/migrator.mjs.map +1 -1
- package/mysql-core/index.cjs +1004 -1
- package/mysql-core/index.cjs.map +1 -1
- package/mysql-core/index.d.ts +347 -347
- package/mysql-core/index.mjs +869 -1
- package/mysql-core/index.mjs.map +1 -1
- package/mysql2/index.cjs +230 -1
- package/mysql2/index.cjs.map +1 -1
- package/mysql2/index.d.ts +5 -6
- package/mysql2/index.mjs +223 -1
- package/mysql2/index.mjs.map +1 -1
- package/mysql2/migrator.cjs +13 -1
- package/mysql2/migrator.cjs.map +1 -1
- package/mysql2/migrator.d.ts +5 -6
- package/mysql2/migrator.mjs +11 -1
- package/mysql2/migrator.mjs.map +1 -1
- package/neon-serverless/index.cjs +155 -1
- package/neon-serverless/index.cjs.map +1 -1
- package/neon-serverless/index.d.ts +5 -6
- package/neon-serverless/index.mjs +149 -1
- package/neon-serverless/index.mjs.map +1 -1
- package/neon-serverless/migrator.cjs +13 -1
- package/neon-serverless/migrator.cjs.map +1 -1
- package/neon-serverless/migrator.d.ts +5 -6
- package/neon-serverless/migrator.mjs +11 -1
- package/neon-serverless/migrator.mjs.map +1 -1
- package/node-postgres/index.cjs +157 -1
- package/node-postgres/index.cjs.map +1 -1
- package/node-postgres/index.d.ts +5 -6
- package/node-postgres/index.mjs +151 -1
- package/node-postgres/index.mjs.map +1 -1
- package/node-postgres/migrator.cjs +13 -1
- package/node-postgres/migrator.cjs.map +1 -1
- package/node-postgres/migrator.d.ts +5 -6
- package/node-postgres/migrator.mjs +11 -1
- package/node-postgres/migrator.mjs.map +1 -1
- package/package.json +97 -34
- package/pg-core/index.cjs +652 -1
- package/pg-core/index.cjs.map +1 -1
- package/pg-core/index.d.ts +13 -7
- package/pg-core/index.mjs +501 -1
- package/pg-core/index.mjs.map +1 -1
- package/planetscale-serverless/index.cjs +111 -1
- package/planetscale-serverless/index.cjs.map +1 -1
- package/planetscale-serverless/index.d.ts +5 -6
- package/planetscale-serverless/index.mjs +106 -1
- package/planetscale-serverless/index.mjs.map +1 -1
- package/planetscale-serverless/migrator.cjs +13 -1
- package/planetscale-serverless/migrator.cjs.map +1 -1
- package/planetscale-serverless/migrator.d.ts +5 -6
- package/planetscale-serverless/migrator.mjs +11 -1
- package/planetscale-serverless/migrator.mjs.map +1 -1
- package/postgres-js/index.cjs +113 -1
- package/postgres-js/index.cjs.map +1 -1
- package/postgres-js/index.d.ts +5 -6
- package/postgres-js/index.mjs +108 -1
- package/postgres-js/index.mjs.map +1 -1
- package/postgres-js/migrator.cjs +13 -1
- package/postgres-js/migrator.cjs.map +1 -1
- package/postgres-js/migrator.d.ts +5 -6
- package/postgres-js/migrator.mjs +11 -1
- package/postgres-js/migrator.mjs.map +1 -1
- package/query-promise.d-e370e0a9.d.ts +617 -0
- package/relations-47eb5c5f.mjs +2954 -0
- package/relations-47eb5c5f.mjs.map +1 -0
- package/relations-5e2d30dd.cjs +3117 -0
- package/relations-5e2d30dd.cjs.map +1 -0
- package/{select.types.d-c3e86d45.d.ts → select.types.d-34d7f74e.d.ts} +1 -1
- package/{select.types.d-adb82002.d.ts → select.types.d-ae2f8e44.d.ts} +58 -14
- package/session-483ed08d.mjs +1263 -0
- package/session-483ed08d.mjs.map +1 -0
- package/session-6bd76405.cjs +362 -0
- package/session-6bd76405.cjs.map +1 -0
- package/session-a90df8a2.cjs +1252 -0
- package/session-a90df8a2.cjs.map +1 -0
- package/session-b99382a2.mjs +1223 -0
- package/session-b99382a2.mjs.map +1 -0
- package/session-c62f6348.cjs +1298 -0
- package/session-c62f6348.cjs.map +1 -0
- package/session-e8745392.mjs +351 -0
- package/session-e8745392.mjs.map +1 -0
- package/sql-js/index.cjs +175 -1
- package/sql-js/index.cjs.map +1 -1
- package/sql-js/index.d.ts +14 -12
- package/sql-js/index.mjs +170 -1
- package/sql-js/index.mjs.map +1 -1
- package/sql-js/migrator.cjs +13 -1
- package/sql-js/migrator.cjs.map +1 -1
- package/sql-js/migrator.d.ts +5 -5
- package/sql-js/migrator.mjs +11 -1
- package/sql-js/migrator.mjs.map +1 -1
- package/sqlite-core/index.cjs +516 -1
- package/sqlite-core/index.cjs.map +1 -1
- package/sqlite-core/index.d.ts +6 -5
- package/sqlite-core/index.mjs +441 -1
- package/sqlite-core/index.mjs.map +1 -1
- package/sqlite-proxy/index.cjs +118 -1
- package/sqlite-proxy/index.cjs.map +1 -1
- package/sqlite-proxy/index.d.ts +12 -11
- package/sqlite-proxy/index.mjs +113 -1
- package/sqlite-proxy/index.mjs.map +1 -1
- package/sqlite-proxy/migrator.cjs +25 -2
- package/sqlite-proxy/migrator.cjs.map +1 -1
- package/sqlite-proxy/migrator.d.ts +5 -5
- package/sqlite-proxy/migrator.mjs +23 -2
- package/sqlite-proxy/migrator.mjs.map +1 -1
- package/version.cjs +9 -1
- package/version.cjs.map +1 -1
- package/version.d.ts +1 -1
- package/version.mjs +6 -1
- package/version.mjs.map +1 -1
- package/README.md +0 -150
- package/column-builder-592f0191.mjs +0 -2
- package/column-builder-592f0191.mjs.map +0 -1
- package/column-builder-b48639f3.cjs +0 -2
- package/column-builder-b48639f3.cjs.map +0 -1
- package/driver.d-0158cd93.d.ts +0 -11
- package/driver.d-1f73a4a9.d.ts +0 -70
- package/driver.d-2e907d12.d.ts +0 -17
- package/driver.d-3781598a.d.ts +0 -11
- package/driver.d-3a8adf2a.d.ts +0 -61
- package/driver.d-59580d08.d.ts +0 -11
- package/driver.d-5f3fc125.d.ts +0 -12
- package/driver.d-693f7f9f.d.ts +0 -56
- package/driver.d-6c43e393.d.ts +0 -60
- package/driver.d-b00fc6ec.d.ts +0 -57
- package/driver.d-e4bd120b.d.ts +0 -47
- package/driver.d-f4b5b390.d.ts +0 -11
- package/index-59b7992d.cjs +0 -2
- package/index-59b7992d.cjs.map +0 -1
- package/index-b71998f1.mjs +0 -2
- package/index-b71998f1.mjs.map +0 -1
- package/logger-04bad527.cjs +0 -2
- package/logger-04bad527.cjs.map +0 -1
- package/logger-2598bf05.mjs +0 -2
- package/logger-2598bf05.mjs.map +0 -1
- package/logger.d-37185354.d.ts +0 -21
- package/query-builder-2f2e8229.cjs +0 -2
- package/query-builder-2f2e8229.cjs.map +0 -1
- package/query-builder-2fcde2f0.mjs +0 -2
- package/query-builder-2fcde2f0.mjs.map +0 -1
- package/query-promise-2c5b43ab.cjs +0 -2
- package/query-promise-2c5b43ab.cjs.map +0 -1
- package/query-promise-a65edd44.mjs +0 -2
- package/query-promise-a65edd44.mjs.map +0 -1
- package/query-promise.d-a8af8583.d.ts +0 -9
- package/session-8a621f09.mjs +0 -8
- package/session-8a621f09.mjs.map +0 -1
- package/session-b6939bab.cjs +0 -14
- package/session-b6939bab.cjs.map +0 -1
- package/session-b977ce56.mjs +0 -14
- package/session-b977ce56.mjs.map +0 -1
- package/session-c891400d.mjs +0 -8
- package/session-c891400d.mjs.map +0 -1
- package/session-e6db6732.cjs +0 -8
- package/session-e6db6732.cjs.map +0 -1
- package/session-ef1ef979.cjs +0 -8
- package/session-ef1ef979.cjs.map +0 -1
- package/utils-9d882195.cjs +0 -2
- package/utils-9d882195.cjs.map +0 -1
- package/utils-e6870670.mjs +0 -2
- package/utils-e6870670.mjs.map +0 -1
package/libsql/index.cjs
CHANGED
|
@@ -1,2 +1,156 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var logger = require('../logger-caa1ca6e.cjs');
|
|
4
|
+
var relations = require('../relations-5e2d30dd.cjs');
|
|
5
|
+
var session = require('../session-a90df8a2.cjs');
|
|
6
|
+
require('../errors-d0192d62.cjs');
|
|
7
|
+
|
|
8
|
+
class LibSQLSession extends session.SQLiteSession {
|
|
9
|
+
constructor(client, dialect, schema, options, tx) {
|
|
10
|
+
super(dialect);
|
|
11
|
+
this.client = client;
|
|
12
|
+
this.schema = schema;
|
|
13
|
+
this.options = options;
|
|
14
|
+
this.tx = tx;
|
|
15
|
+
this.logger = options.logger ?? new logger.NoopLogger();
|
|
16
|
+
}
|
|
17
|
+
prepareQuery(query, fields, customResultMapper) {
|
|
18
|
+
return new PreparedQuery(this.client, query.sql, query.params, this.logger, fields, this.tx, customResultMapper);
|
|
19
|
+
}
|
|
20
|
+
/*override */ batch(queries) {
|
|
21
|
+
const builtQueries = queries.map((query) => {
|
|
22
|
+
const builtQuery = this.dialect.sqlToQuery(query);
|
|
23
|
+
return { sql: builtQuery.sql, args: builtQuery.params };
|
|
24
|
+
});
|
|
25
|
+
return this.client.batch(builtQueries);
|
|
26
|
+
}
|
|
27
|
+
async transaction(transaction, _config) {
|
|
28
|
+
// TODO: support transaction behavior
|
|
29
|
+
const libsqlTx = await this.client.transaction();
|
|
30
|
+
const session = new LibSQLSession(this.client, this.dialect, this.schema, this.options, libsqlTx);
|
|
31
|
+
const tx = new LibSQLTransaction('async', this.dialect, session, this.schema);
|
|
32
|
+
try {
|
|
33
|
+
const result = await transaction(tx);
|
|
34
|
+
await libsqlTx.commit();
|
|
35
|
+
return result;
|
|
36
|
+
}
|
|
37
|
+
catch (err) {
|
|
38
|
+
await libsqlTx.rollback();
|
|
39
|
+
throw err;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
class LibSQLTransaction extends session.SQLiteTransaction {
|
|
44
|
+
async transaction(transaction) {
|
|
45
|
+
const savepointName = `sp${this.nestedIndex}`;
|
|
46
|
+
const tx = new LibSQLTransaction('async', this.dialect, this.session, this.schema, this.nestedIndex + 1);
|
|
47
|
+
await this.session.run(relations.sql.raw(`savepoint ${savepointName}`));
|
|
48
|
+
try {
|
|
49
|
+
const result = await transaction(tx);
|
|
50
|
+
await this.session.run(relations.sql.raw(`release savepoint ${savepointName}`));
|
|
51
|
+
return result;
|
|
52
|
+
}
|
|
53
|
+
catch (err) {
|
|
54
|
+
await this.session.run(relations.sql.raw(`rollback to savepoint ${savepointName}`));
|
|
55
|
+
throw err;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
class PreparedQuery extends session.PreparedQuery {
|
|
60
|
+
constructor(client, queryString, params, logger, fields, tx, customResultMapper) {
|
|
61
|
+
super();
|
|
62
|
+
this.client = client;
|
|
63
|
+
this.queryString = queryString;
|
|
64
|
+
this.params = params;
|
|
65
|
+
this.logger = logger;
|
|
66
|
+
this.fields = fields;
|
|
67
|
+
this.tx = tx;
|
|
68
|
+
this.customResultMapper = customResultMapper;
|
|
69
|
+
}
|
|
70
|
+
run(placeholderValues) {
|
|
71
|
+
const params = relations.fillPlaceholders(this.params, placeholderValues ?? {});
|
|
72
|
+
this.logger.logQuery(this.queryString, params);
|
|
73
|
+
const stmt = { sql: this.queryString, args: params };
|
|
74
|
+
return this.tx ? this.tx.execute(stmt) : this.client.execute(stmt);
|
|
75
|
+
}
|
|
76
|
+
async all(placeholderValues) {
|
|
77
|
+
const { fields, joinsNotNullableMap, logger, queryString, tx, client, customResultMapper } = this;
|
|
78
|
+
if (!fields && !customResultMapper) {
|
|
79
|
+
const params = relations.fillPlaceholders(this.params, placeholderValues ?? {});
|
|
80
|
+
logger.logQuery(queryString, params);
|
|
81
|
+
const stmt = { sql: queryString, args: params };
|
|
82
|
+
return (tx ? tx.execute(stmt) : client.execute(stmt)).then(({ rows }) => rows.map((row) => normalizeRow(row)));
|
|
83
|
+
}
|
|
84
|
+
const rows = await this.values(placeholderValues);
|
|
85
|
+
if (customResultMapper) {
|
|
86
|
+
return customResultMapper(rows, normalizeFieldValue);
|
|
87
|
+
}
|
|
88
|
+
return rows.map((row) => {
|
|
89
|
+
return relations.mapResultRow(fields, Array.prototype.slice.call(row).map((v) => normalizeFieldValue(v)), joinsNotNullableMap);
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
get(placeholderValues) {
|
|
93
|
+
return this.all(placeholderValues).then((rows) => rows[0]);
|
|
94
|
+
}
|
|
95
|
+
values(placeholderValues) {
|
|
96
|
+
const params = relations.fillPlaceholders(this.params, placeholderValues ?? {});
|
|
97
|
+
this.logger.logQuery(this.queryString, params);
|
|
98
|
+
const stmt = { sql: this.queryString, args: params };
|
|
99
|
+
return (this.tx ? this.tx.execute(stmt) : this.client.execute(stmt)).then(({ rows }) => rows);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
function normalizeRow(obj) {
|
|
103
|
+
// The libSQL node-sqlite3 compatibility wrapper returns rows
|
|
104
|
+
// that can be accessed both as objects and arrays. Let's
|
|
105
|
+
// turn them into objects what's what other SQLite drivers
|
|
106
|
+
// do.
|
|
107
|
+
return Object.keys(obj).reduce((acc, key) => {
|
|
108
|
+
if (Object.prototype.propertyIsEnumerable.call(obj, key)) {
|
|
109
|
+
acc[key] = obj[key];
|
|
110
|
+
}
|
|
111
|
+
return acc;
|
|
112
|
+
}, {});
|
|
113
|
+
}
|
|
114
|
+
function normalizeFieldValue(value) {
|
|
115
|
+
if (value instanceof ArrayBuffer) {
|
|
116
|
+
if (typeof Buffer !== 'undefined') {
|
|
117
|
+
if (!(value instanceof Buffer)) {
|
|
118
|
+
return Buffer.from(value);
|
|
119
|
+
}
|
|
120
|
+
return value;
|
|
121
|
+
}
|
|
122
|
+
if (typeof TextDecoder !== 'undefined') {
|
|
123
|
+
return new TextDecoder().decode(value);
|
|
124
|
+
}
|
|
125
|
+
throw new Error('TextDecoder is not available. Please provide either Buffer or TextDecoder polyfill.');
|
|
126
|
+
}
|
|
127
|
+
return value;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
function drizzle(client, config = {}) {
|
|
131
|
+
const dialect = new session.SQLiteAsyncDialect();
|
|
132
|
+
let logger$1;
|
|
133
|
+
if (config.logger === true) {
|
|
134
|
+
logger$1 = new logger.DefaultLogger();
|
|
135
|
+
}
|
|
136
|
+
else if (config.logger !== false) {
|
|
137
|
+
logger$1 = config.logger;
|
|
138
|
+
}
|
|
139
|
+
let schema;
|
|
140
|
+
if (config.schema) {
|
|
141
|
+
const tablesConfig = relations.extractTablesRelationalConfig(config.schema, relations.createTableRelationsHelpers);
|
|
142
|
+
schema = {
|
|
143
|
+
fullSchema: config.schema,
|
|
144
|
+
schema: tablesConfig.tables,
|
|
145
|
+
tableNamesMap: tablesConfig.tableNamesMap,
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
const session$1 = new LibSQLSession(client, dialect, schema, { logger: logger$1 }, undefined);
|
|
149
|
+
return new session.BaseSQLiteDatabase('async', dialect, session$1, schema);
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
exports.LibSQLSession = LibSQLSession;
|
|
153
|
+
exports.LibSQLTransaction = LibSQLTransaction;
|
|
154
|
+
exports.PreparedQuery = PreparedQuery;
|
|
155
|
+
exports.drizzle = drizzle;
|
|
2
156
|
//# sourceMappingURL=index.cjs.map
|
package/libsql/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":["../../src/libsql/session.ts","../../src/libsql/driver.ts"],"sourcesContent":[null,null],"names":["
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../../src/libsql/session.ts","../../src/libsql/driver.ts"],"sourcesContent":[null,null],"names":["SQLiteSession","NoopLogger","SQLiteTransaction","sql","PreparedQueryBase","fillPlaceholders","mapResultRow","SQLiteAsyncDialect","logger","DefaultLogger","extractTablesRelationalConfig","createTableRelationsHelpers","session","BaseSQLiteDatabase"],"mappings":"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"}
|
package/libsql/index.d.ts
CHANGED
|
@@ -1,27 +1,28 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export { L as LibSQLDatabase, d as drizzle } from '../driver.d-64f2125c.js';
|
|
2
2
|
import { ResultSet, Client, Transaction } from '@libsql/client';
|
|
3
|
-
import { L as Logger } from '../
|
|
4
|
-
import {
|
|
5
|
-
import { S as SQLiteSession, f as SQLiteAsyncDialect, b as SelectedFieldsOrdered, c as SQLiteTransactionConfig, d as SQLiteTransaction, P as PreparedQuery$1, e as PreparedQueryConfig$1 } from '../db.d-
|
|
6
|
-
import '../select.types.d-
|
|
3
|
+
import { L as Logger, H as Query, S as SQL } from '../column.d-c31e7ad3.js';
|
|
4
|
+
import { J as TablesRelationalConfig, K as RelationalSchemaConfig } from '../query-promise.d-e370e0a9.js';
|
|
5
|
+
import { S as SQLiteSession, f as SQLiteAsyncDialect, b as SelectedFieldsOrdered, c as SQLiteTransactionConfig, d as SQLiteTransaction, P as PreparedQuery$1, e as PreparedQueryConfig$1 } from '../db.d-a2311092.js';
|
|
6
|
+
import '../select.types.d-34d7f74e.js';
|
|
7
7
|
import '../migrator.js';
|
|
8
8
|
|
|
9
9
|
interface LibSQLSessionOptions {
|
|
10
10
|
logger?: Logger;
|
|
11
11
|
}
|
|
12
12
|
type PreparedQueryConfig = Omit<PreparedQueryConfig$1, 'statement' | 'run'>;
|
|
13
|
-
declare class LibSQLSession extends SQLiteSession<'async', ResultSet> {
|
|
13
|
+
declare class LibSQLSession<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends SQLiteSession<'async', ResultSet, TFullSchema, TSchema> {
|
|
14
14
|
private client;
|
|
15
|
+
private schema;
|
|
15
16
|
private options;
|
|
16
17
|
private tx;
|
|
17
18
|
private logger;
|
|
18
|
-
constructor(client: Client, dialect: SQLiteAsyncDialect, options: LibSQLSessionOptions, tx: Transaction | undefined);
|
|
19
|
-
prepareQuery<T extends Omit<PreparedQueryConfig, 'run'>>(query: Query, fields: SelectedFieldsOrdered): PreparedQuery<T>;
|
|
19
|
+
constructor(client: Client, dialect: SQLiteAsyncDialect, schema: RelationalSchemaConfig<TSchema> | undefined, options: LibSQLSessionOptions, tx: Transaction | undefined);
|
|
20
|
+
prepareQuery<T extends Omit<PreparedQueryConfig, 'run'>>(query: Query, fields: SelectedFieldsOrdered, customResultMapper?: (rows: unknown[][]) => unknown): PreparedQuery<T>;
|
|
20
21
|
batch(queries: SQL[]): Promise<ResultSet[]>;
|
|
21
|
-
transaction<T>(transaction: (db: LibSQLTransaction) => T | Promise<T>, _config?: SQLiteTransactionConfig): Promise<T>;
|
|
22
|
+
transaction<T>(transaction: (db: LibSQLTransaction<TFullSchema, TSchema>) => T | Promise<T>, _config?: SQLiteTransactionConfig): Promise<T>;
|
|
22
23
|
}
|
|
23
|
-
declare class LibSQLTransaction extends SQLiteTransaction<'async', ResultSet> {
|
|
24
|
-
transaction<T>(transaction: (tx: LibSQLTransaction) => Promise<T>): Promise<T>;
|
|
24
|
+
declare class LibSQLTransaction<TFullSchema extends Record<string, unknown>, TSchema extends TablesRelationalConfig> extends SQLiteTransaction<'async', ResultSet, TFullSchema, TSchema> {
|
|
25
|
+
transaction<T>(transaction: (tx: LibSQLTransaction<TFullSchema, TSchema>) => Promise<T>): Promise<T>;
|
|
25
26
|
}
|
|
26
27
|
declare class PreparedQuery<T extends PreparedQueryConfig = PreparedQueryConfig> extends PreparedQuery$1<{
|
|
27
28
|
type: 'async';
|
|
@@ -36,7 +37,8 @@ declare class PreparedQuery<T extends PreparedQueryConfig = PreparedQueryConfig>
|
|
|
36
37
|
private logger;
|
|
37
38
|
private fields;
|
|
38
39
|
private tx;
|
|
39
|
-
|
|
40
|
+
private customResultMapper?;
|
|
41
|
+
constructor(client: Client, queryString: string, params: unknown[], logger: Logger, fields: SelectedFieldsOrdered | undefined, tx: Transaction | undefined, customResultMapper?: ((rows: unknown[][], mapColumnValue?: ((value: unknown) => unknown) | undefined) => unknown) | undefined);
|
|
40
42
|
run(placeholderValues?: Record<string, unknown>): Promise<ResultSet>;
|
|
41
43
|
all(placeholderValues?: Record<string, unknown>): Promise<T['all']>;
|
|
42
44
|
get(placeholderValues?: Record<string, unknown>): Promise<T['get']>;
|
package/libsql/index.mjs
CHANGED
|
@@ -1,2 +1,151 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { N as NoopLogger, D as DefaultLogger } from '../logger-caf75bde.mjs';
|
|
2
|
+
import { a6 as sql, a9 as fillPlaceholders, ao as mapResultRow, K as extractTablesRelationalConfig, U as createTableRelationsHelpers } from '../relations-47eb5c5f.mjs';
|
|
3
|
+
import { S as SQLiteSession, a as SQLiteTransaction, P as PreparedQuery$1, B as BaseSQLiteDatabase, c as SQLiteAsyncDialect } from '../session-b99382a2.mjs';
|
|
4
|
+
import '../errors-bb636d84.mjs';
|
|
5
|
+
|
|
6
|
+
class LibSQLSession extends SQLiteSession {
|
|
7
|
+
constructor(client, dialect, schema, options, tx) {
|
|
8
|
+
super(dialect);
|
|
9
|
+
this.client = client;
|
|
10
|
+
this.schema = schema;
|
|
11
|
+
this.options = options;
|
|
12
|
+
this.tx = tx;
|
|
13
|
+
this.logger = options.logger ?? new NoopLogger();
|
|
14
|
+
}
|
|
15
|
+
prepareQuery(query, fields, customResultMapper) {
|
|
16
|
+
return new PreparedQuery(this.client, query.sql, query.params, this.logger, fields, this.tx, customResultMapper);
|
|
17
|
+
}
|
|
18
|
+
/*override */ batch(queries) {
|
|
19
|
+
const builtQueries = queries.map((query) => {
|
|
20
|
+
const builtQuery = this.dialect.sqlToQuery(query);
|
|
21
|
+
return { sql: builtQuery.sql, args: builtQuery.params };
|
|
22
|
+
});
|
|
23
|
+
return this.client.batch(builtQueries);
|
|
24
|
+
}
|
|
25
|
+
async transaction(transaction, _config) {
|
|
26
|
+
// TODO: support transaction behavior
|
|
27
|
+
const libsqlTx = await this.client.transaction();
|
|
28
|
+
const session = new LibSQLSession(this.client, this.dialect, this.schema, this.options, libsqlTx);
|
|
29
|
+
const tx = new LibSQLTransaction('async', this.dialect, session, this.schema);
|
|
30
|
+
try {
|
|
31
|
+
const result = await transaction(tx);
|
|
32
|
+
await libsqlTx.commit();
|
|
33
|
+
return result;
|
|
34
|
+
}
|
|
35
|
+
catch (err) {
|
|
36
|
+
await libsqlTx.rollback();
|
|
37
|
+
throw err;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
class LibSQLTransaction extends SQLiteTransaction {
|
|
42
|
+
async transaction(transaction) {
|
|
43
|
+
const savepointName = `sp${this.nestedIndex}`;
|
|
44
|
+
const tx = new LibSQLTransaction('async', this.dialect, this.session, this.schema, this.nestedIndex + 1);
|
|
45
|
+
await this.session.run(sql.raw(`savepoint ${savepointName}`));
|
|
46
|
+
try {
|
|
47
|
+
const result = await transaction(tx);
|
|
48
|
+
await this.session.run(sql.raw(`release savepoint ${savepointName}`));
|
|
49
|
+
return result;
|
|
50
|
+
}
|
|
51
|
+
catch (err) {
|
|
52
|
+
await this.session.run(sql.raw(`rollback to savepoint ${savepointName}`));
|
|
53
|
+
throw err;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
class PreparedQuery extends PreparedQuery$1 {
|
|
58
|
+
constructor(client, queryString, params, logger, fields, tx, customResultMapper) {
|
|
59
|
+
super();
|
|
60
|
+
this.client = client;
|
|
61
|
+
this.queryString = queryString;
|
|
62
|
+
this.params = params;
|
|
63
|
+
this.logger = logger;
|
|
64
|
+
this.fields = fields;
|
|
65
|
+
this.tx = tx;
|
|
66
|
+
this.customResultMapper = customResultMapper;
|
|
67
|
+
}
|
|
68
|
+
run(placeholderValues) {
|
|
69
|
+
const params = fillPlaceholders(this.params, placeholderValues ?? {});
|
|
70
|
+
this.logger.logQuery(this.queryString, params);
|
|
71
|
+
const stmt = { sql: this.queryString, args: params };
|
|
72
|
+
return this.tx ? this.tx.execute(stmt) : this.client.execute(stmt);
|
|
73
|
+
}
|
|
74
|
+
async all(placeholderValues) {
|
|
75
|
+
const { fields, joinsNotNullableMap, logger, queryString, tx, client, customResultMapper } = this;
|
|
76
|
+
if (!fields && !customResultMapper) {
|
|
77
|
+
const params = fillPlaceholders(this.params, placeholderValues ?? {});
|
|
78
|
+
logger.logQuery(queryString, params);
|
|
79
|
+
const stmt = { sql: queryString, args: params };
|
|
80
|
+
return (tx ? tx.execute(stmt) : client.execute(stmt)).then(({ rows }) => rows.map((row) => normalizeRow(row)));
|
|
81
|
+
}
|
|
82
|
+
const rows = await this.values(placeholderValues);
|
|
83
|
+
if (customResultMapper) {
|
|
84
|
+
return customResultMapper(rows, normalizeFieldValue);
|
|
85
|
+
}
|
|
86
|
+
return rows.map((row) => {
|
|
87
|
+
return mapResultRow(fields, Array.prototype.slice.call(row).map((v) => normalizeFieldValue(v)), joinsNotNullableMap);
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
get(placeholderValues) {
|
|
91
|
+
return this.all(placeholderValues).then((rows) => rows[0]);
|
|
92
|
+
}
|
|
93
|
+
values(placeholderValues) {
|
|
94
|
+
const params = fillPlaceholders(this.params, placeholderValues ?? {});
|
|
95
|
+
this.logger.logQuery(this.queryString, params);
|
|
96
|
+
const stmt = { sql: this.queryString, args: params };
|
|
97
|
+
return (this.tx ? this.tx.execute(stmt) : this.client.execute(stmt)).then(({ rows }) => rows);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
function normalizeRow(obj) {
|
|
101
|
+
// The libSQL node-sqlite3 compatibility wrapper returns rows
|
|
102
|
+
// that can be accessed both as objects and arrays. Let's
|
|
103
|
+
// turn them into objects what's what other SQLite drivers
|
|
104
|
+
// do.
|
|
105
|
+
return Object.keys(obj).reduce((acc, key) => {
|
|
106
|
+
if (Object.prototype.propertyIsEnumerable.call(obj, key)) {
|
|
107
|
+
acc[key] = obj[key];
|
|
108
|
+
}
|
|
109
|
+
return acc;
|
|
110
|
+
}, {});
|
|
111
|
+
}
|
|
112
|
+
function normalizeFieldValue(value) {
|
|
113
|
+
if (value instanceof ArrayBuffer) {
|
|
114
|
+
if (typeof Buffer !== 'undefined') {
|
|
115
|
+
if (!(value instanceof Buffer)) {
|
|
116
|
+
return Buffer.from(value);
|
|
117
|
+
}
|
|
118
|
+
return value;
|
|
119
|
+
}
|
|
120
|
+
if (typeof TextDecoder !== 'undefined') {
|
|
121
|
+
return new TextDecoder().decode(value);
|
|
122
|
+
}
|
|
123
|
+
throw new Error('TextDecoder is not available. Please provide either Buffer or TextDecoder polyfill.');
|
|
124
|
+
}
|
|
125
|
+
return value;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
function drizzle(client, config = {}) {
|
|
129
|
+
const dialect = new SQLiteAsyncDialect();
|
|
130
|
+
let logger;
|
|
131
|
+
if (config.logger === true) {
|
|
132
|
+
logger = new DefaultLogger();
|
|
133
|
+
}
|
|
134
|
+
else if (config.logger !== false) {
|
|
135
|
+
logger = config.logger;
|
|
136
|
+
}
|
|
137
|
+
let schema;
|
|
138
|
+
if (config.schema) {
|
|
139
|
+
const tablesConfig = extractTablesRelationalConfig(config.schema, createTableRelationsHelpers);
|
|
140
|
+
schema = {
|
|
141
|
+
fullSchema: config.schema,
|
|
142
|
+
schema: tablesConfig.tables,
|
|
143
|
+
tableNamesMap: tablesConfig.tableNamesMap,
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
const session = new LibSQLSession(client, dialect, schema, { logger }, undefined);
|
|
147
|
+
return new BaseSQLiteDatabase('async', dialect, session, schema);
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
export { LibSQLSession, LibSQLTransaction, PreparedQuery, drizzle };
|
|
2
151
|
//# sourceMappingURL=index.mjs.map
|
package/libsql/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/libsql/session.ts","../../src/libsql/driver.ts"],"sourcesContent":[null,null],"names":["
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/libsql/session.ts","../../src/libsql/driver.ts"],"sourcesContent":[null,null],"names":["PreparedQueryBase"],"mappings":"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"}
|
package/libsql/migrator.cjs
CHANGED
|
@@ -1,2 +1,14 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var migrator = require('../migrator.cjs');
|
|
4
|
+
require('node:crypto');
|
|
5
|
+
require('node:fs');
|
|
6
|
+
require('node:path');
|
|
7
|
+
|
|
8
|
+
function migrate(db, config) {
|
|
9
|
+
const migrations = migrator.readMigrationFiles(config);
|
|
10
|
+
return db.dialect.migrate(migrations, db.session);
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
exports.migrate = migrate;
|
|
2
14
|
//# sourceMappingURL=migrator.cjs.map
|
package/libsql/migrator.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrator.cjs","sources":["../../src/libsql/migrator.ts"],"sourcesContent":[null],"names":["
|
|
1
|
+
{"version":3,"file":"migrator.cjs","sources":["../../src/libsql/migrator.ts"],"sourcesContent":[null],"names":["readMigrationFiles"],"mappings":";;;;;;;AAIgB,SAAA,OAAO,CAAC,EAAkB,EAAE,MAAuB,EAAA;AAClE,IAAA,MAAM,UAAU,GAAGA,2BAAkB,CAAC,MAAM,CAAC,CAAC;AAC9C,IAAA,OAAO,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;AACnD;;;;"}
|
package/libsql/migrator.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { MigrationConfig } from '../migrator.js';
|
|
2
|
-
import { L as LibSQLDatabase } from '../driver.d-
|
|
2
|
+
import { L as LibSQLDatabase } from '../driver.d-64f2125c.js';
|
|
3
3
|
import '@libsql/client';
|
|
4
|
-
import '../
|
|
5
|
-
import '../
|
|
6
|
-
import '../
|
|
7
|
-
import '../
|
|
4
|
+
import '../db.d-a2311092.js';
|
|
5
|
+
import '../select.types.d-34d7f74e.js';
|
|
6
|
+
import '../column.d-c31e7ad3.js';
|
|
7
|
+
import '../query-promise.d-e370e0a9.js';
|
|
8
8
|
|
|
9
9
|
declare function migrate(db: LibSQLDatabase, config: MigrationConfig): Promise<void>;
|
|
10
10
|
|
package/libsql/migrator.mjs
CHANGED
|
@@ -1,2 +1,12 @@
|
|
|
1
|
-
import{readMigrationFiles
|
|
1
|
+
import { readMigrationFiles } from '../migrator.mjs';
|
|
2
|
+
import 'node:crypto';
|
|
3
|
+
import 'node:fs';
|
|
4
|
+
import 'node:path';
|
|
5
|
+
|
|
6
|
+
function migrate(db, config) {
|
|
7
|
+
const migrations = readMigrationFiles(config);
|
|
8
|
+
return db.dialect.migrate(migrations, db.session);
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export { migrate };
|
|
2
12
|
//# sourceMappingURL=migrator.mjs.map
|
package/libsql/migrator.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrator.mjs","sources":["../../src/libsql/migrator.ts"],"sourcesContent":[null],"names":[
|
|
1
|
+
{"version":3,"file":"migrator.mjs","sources":["../../src/libsql/migrator.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAIgB,SAAA,OAAO,CAAC,EAAkB,EAAE,MAAuB,EAAA;AAClE,IAAA,MAAM,UAAU,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;AAC9C,IAAA,OAAO,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;AACnD;;;;"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
class ConsoleLogWriter {
|
|
4
|
+
write(message) {
|
|
5
|
+
console.log(message);
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
class DefaultLogger {
|
|
9
|
+
constructor(config) {
|
|
10
|
+
this.writer = config?.writer ?? new ConsoleLogWriter();
|
|
11
|
+
}
|
|
12
|
+
logQuery(query, params) {
|
|
13
|
+
const stringifiedParams = params.map((p) => {
|
|
14
|
+
try {
|
|
15
|
+
return JSON.stringify(p);
|
|
16
|
+
}
|
|
17
|
+
catch {
|
|
18
|
+
return String(p);
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
const paramsStr = stringifiedParams.length ? ` -- params: [${stringifiedParams.join(', ')}]` : '';
|
|
22
|
+
this.writer.write(`Query: ${query}${paramsStr}`);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
class NoopLogger {
|
|
26
|
+
logQuery() {
|
|
27
|
+
// noop
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
exports.ConsoleLogWriter = ConsoleLogWriter;
|
|
32
|
+
exports.DefaultLogger = DefaultLogger;
|
|
33
|
+
exports.NoopLogger = NoopLogger;
|
|
34
|
+
//# sourceMappingURL=logger-caa1ca6e.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger-caa1ca6e.cjs","sources":["../src/logger.ts"],"sourcesContent":[null],"names":[],"mappings":";;MAQa,gBAAgB,CAAA;AAC5B,IAAA,KAAK,CAAC,OAAe,EAAA;AACpB,QAAA,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;KACrB;AACD,CAAA;MAEY,aAAa,CAAA;AAGzB,IAAA,WAAA,CAAY,MAA8B,EAAA;QACzC,IAAI,CAAC,MAAM,GAAG,MAAM,EAAE,MAAM,IAAI,IAAI,gBAAgB,EAAE,CAAC;KACvD;IAED,QAAQ,CAAC,KAAa,EAAE,MAAiB,EAAA;QACxC,MAAM,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAI;YAC1C,IAAI;AACH,gBAAA,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AACzB,aAAA;YAAC,MAAM;AACP,gBAAA,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;AACjB,aAAA;AACF,SAAC,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,iBAAiB,CAAC,MAAM,GAAG,CAAgB,aAAA,EAAA,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,CAAA,CAAG,GAAG,EAAE,CAAC;QAClG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAU,OAAA,EAAA,KAAK,CAAG,EAAA,SAAS,CAAE,CAAA,CAAC,CAAC;KACjD;AACD,CAAA;MAEY,UAAU,CAAA;IACtB,QAAQ,GAAA;;KAEP;AACD;;;;;;"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
class ConsoleLogWriter {
|
|
2
|
+
write(message) {
|
|
3
|
+
console.log(message);
|
|
4
|
+
}
|
|
5
|
+
}
|
|
6
|
+
class DefaultLogger {
|
|
7
|
+
constructor(config) {
|
|
8
|
+
this.writer = config?.writer ?? new ConsoleLogWriter();
|
|
9
|
+
}
|
|
10
|
+
logQuery(query, params) {
|
|
11
|
+
const stringifiedParams = params.map((p) => {
|
|
12
|
+
try {
|
|
13
|
+
return JSON.stringify(p);
|
|
14
|
+
}
|
|
15
|
+
catch {
|
|
16
|
+
return String(p);
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
const paramsStr = stringifiedParams.length ? ` -- params: [${stringifiedParams.join(', ')}]` : '';
|
|
20
|
+
this.writer.write(`Query: ${query}${paramsStr}`);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
class NoopLogger {
|
|
24
|
+
logQuery() {
|
|
25
|
+
// noop
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export { ConsoleLogWriter as C, DefaultLogger as D, NoopLogger as N };
|
|
30
|
+
//# sourceMappingURL=logger-caf75bde.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger-caf75bde.mjs","sources":["../src/logger.ts"],"sourcesContent":[null],"names":[],"mappings":"MAQa,gBAAgB,CAAA;AAC5B,IAAA,KAAK,CAAC,OAAe,EAAA;AACpB,QAAA,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;KACrB;AACD,CAAA;MAEY,aAAa,CAAA;AAGzB,IAAA,WAAA,CAAY,MAA8B,EAAA;QACzC,IAAI,CAAC,MAAM,GAAG,MAAM,EAAE,MAAM,IAAI,IAAI,gBAAgB,EAAE,CAAC;KACvD;IAED,QAAQ,CAAC,KAAa,EAAE,MAAiB,EAAA;QACxC,MAAM,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAI;YAC1C,IAAI;AACH,gBAAA,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AACzB,aAAA;YAAC,MAAM;AACP,gBAAA,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;AACjB,aAAA;AACF,SAAC,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,iBAAiB,CAAC,MAAM,GAAG,CAAgB,aAAA,EAAA,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,CAAA,CAAG,GAAG,EAAE,CAAC;QAClG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAU,OAAA,EAAA,KAAK,CAAG,EAAA,SAAS,CAAE,CAAA,CAAC,CAAC;KACjD;AACD,CAAA;MAEY,UAAU,CAAA;IACtB,QAAQ,GAAA;;KAEP;AACD;;;;"}
|