drizzle-orm 0.33.0-5b9600e → 0.33.0-5be80aa
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/common/index.d.cts +1 -1
- package/aws-data-api/common/index.d.ts +1 -1
- package/index.cjs +0 -2
- package/index.cjs.map +1 -1
- package/index.d.cts +0 -1
- package/index.d.ts +0 -1
- package/index.js +0 -1
- package/index.js.map +1 -1
- package/mysql-core/db.cjs +0 -4
- package/mysql-core/db.cjs.map +1 -1
- package/mysql-core/db.d.cts +1 -4
- package/mysql-core/db.d.ts +1 -4
- package/mysql-core/db.js +0 -4
- package/mysql-core/db.js.map +1 -1
- package/operations.cjs.map +1 -1
- package/package.json +51 -99
- package/pg-core/db.cjs +0 -4
- package/pg-core/db.cjs.map +1 -1
- package/pg-core/db.d.cts +1 -4
- package/pg-core/db.d.ts +1 -4
- package/pg-core/db.js +0 -4
- package/pg-core/db.js.map +1 -1
- package/sqlite-core/db.cjs +0 -4
- package/sqlite-core/db.cjs.map +1 -1
- package/sqlite-core/db.d.cts +1 -4
- package/sqlite-core/db.d.ts +1 -4
- package/sqlite-core/db.js +0 -4
- package/sqlite-core/db.js.map +1 -1
- package/version.cjs +1 -1
- package/version.d.cts +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/monodriver.cjs +0 -130
- package/monodriver.cjs.map +0 -1
- package/monodriver.d.cts +0 -117
- package/monodriver.d.ts +0 -117
- package/monodriver.js +0 -96
- package/monodriver.js.map +0 -1
- package/mysql-core/query-builders/count.cjs +0 -74
- package/mysql-core/query-builders/count.cjs.map +0 -1
- package/mysql-core/query-builders/count.d.cts +0 -30
- package/mysql-core/query-builders/count.d.ts +0 -30
- package/mysql-core/query-builders/count.js +0 -50
- package/mysql-core/query-builders/count.js.map +0 -1
- package/pg-core/query-builders/count.cjs +0 -74
- package/pg-core/query-builders/count.cjs.map +0 -1
- package/pg-core/query-builders/count.d.cts +0 -29
- package/pg-core/query-builders/count.d.ts +0 -29
- package/pg-core/query-builders/count.js +0 -50
- package/pg-core/query-builders/count.js.map +0 -1
- package/sqlite-core/query-builders/count.cjs +0 -72
- package/sqlite-core/query-builders/count.cjs.map +0 -1
- package/sqlite-core/query-builders/count.d.cts +0 -30
- package/sqlite-core/query-builders/count.d.ts +0 -30
- package/sqlite-core/query-builders/count.js +0 -48
- package/sqlite-core/query-builders/count.js.map +0 -1
package/monodriver.js
DELETED
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
const importError = (libName) => {
|
|
2
|
-
throw new Error(
|
|
3
|
-
`Please install '${libName}' for Drizzle ORM to connect to database`
|
|
4
|
-
);
|
|
5
|
-
};
|
|
6
|
-
const drizzle = async (params) => {
|
|
7
|
-
const { client, connection, ...drizzleConfig } = params;
|
|
8
|
-
switch (client) {
|
|
9
|
-
case "node-postgres": {
|
|
10
|
-
const { Pool } = await import("pg").catch(() => importError("pg"));
|
|
11
|
-
const { drizzle: drizzle2 } = await import("./node-postgres");
|
|
12
|
-
const instance = new Pool(connection);
|
|
13
|
-
return drizzle2(instance, drizzleConfig);
|
|
14
|
-
}
|
|
15
|
-
case "aws-data-api-pg": {
|
|
16
|
-
const { RDSDataClient } = await import("@aws-sdk/client-rds-data").catch(
|
|
17
|
-
() => importError("@aws-sdk/client-rds-data")
|
|
18
|
-
);
|
|
19
|
-
const { drizzle: drizzle2 } = await import("./aws-data-api/pg");
|
|
20
|
-
const instance = new RDSDataClient(connection);
|
|
21
|
-
return drizzle2(instance, drizzleConfig);
|
|
22
|
-
}
|
|
23
|
-
case "better-sqlite3": {
|
|
24
|
-
const { default: Client } = await import("better-sqlite3").catch(() => importError("better-sqlite3"));
|
|
25
|
-
const { filename, options } = connection;
|
|
26
|
-
const { drizzle: drizzle2 } = await import("./better-sqlite3");
|
|
27
|
-
const instance = new Client(filename, options);
|
|
28
|
-
return drizzle2(instance, drizzleConfig);
|
|
29
|
-
}
|
|
30
|
-
case "bun-sqlite": {
|
|
31
|
-
const { Database: Client } = await import("bun:sqlite").catch(() => importError("bun:sqlite"));
|
|
32
|
-
const { filename, options } = connection;
|
|
33
|
-
const { drizzle: drizzle2 } = await import("./bun-sqlite");
|
|
34
|
-
const instance = new Client(filename, options);
|
|
35
|
-
return drizzle2(instance, drizzleConfig);
|
|
36
|
-
}
|
|
37
|
-
case "d1": {
|
|
38
|
-
const { drizzle: drizzle2 } = await import("./d1");
|
|
39
|
-
return drizzle2(connection, drizzleConfig);
|
|
40
|
-
}
|
|
41
|
-
case "libsql": {
|
|
42
|
-
const { createClient } = await import("@libsql/client").catch(() => importError("@libsql/client"));
|
|
43
|
-
const { drizzle: drizzle2 } = await import("./libsql");
|
|
44
|
-
const instance = createClient(connection);
|
|
45
|
-
return drizzle2(instance, drizzleConfig);
|
|
46
|
-
}
|
|
47
|
-
case "mysql2": {
|
|
48
|
-
const { createConnection } = await import("mysql2/promise").catch(() => importError("mysql2/promise"));
|
|
49
|
-
const instance = await createConnection(connection);
|
|
50
|
-
const { drizzle: drizzle2 } = await import("./mysql2");
|
|
51
|
-
return drizzle2(instance, drizzleConfig);
|
|
52
|
-
}
|
|
53
|
-
case "neon-http": {
|
|
54
|
-
const { neon } = await import("@neondatabase/serverless").catch(() => importError("@neondatabase/serverless"));
|
|
55
|
-
const { connectionString, options } = connection;
|
|
56
|
-
const { drizzle: drizzle2 } = await import("./neon-http");
|
|
57
|
-
const instance = neon(connectionString, options);
|
|
58
|
-
return drizzle2(instance, drizzleConfig);
|
|
59
|
-
}
|
|
60
|
-
case "neon-serverless": {
|
|
61
|
-
const { Pool } = await import("@neondatabase/serverless").catch(() => importError("@neondatabase/serverless"));
|
|
62
|
-
const { drizzle: drizzle2 } = await import("./neon-serverless");
|
|
63
|
-
const instance = new Pool(connection);
|
|
64
|
-
return drizzle2(instance, drizzleConfig);
|
|
65
|
-
}
|
|
66
|
-
case "planetscale": {
|
|
67
|
-
const { Client } = await import("@planetscale/database").catch(() => importError("@planetscale/database"));
|
|
68
|
-
const { drizzle: drizzle2 } = await import("./planetscale-serverless");
|
|
69
|
-
const instance = new Client(
|
|
70
|
-
connection
|
|
71
|
-
);
|
|
72
|
-
return drizzle2(instance, drizzleConfig);
|
|
73
|
-
}
|
|
74
|
-
case "postgres-js": {
|
|
75
|
-
const { default: client2 } = await import("postgres").catch(() => importError("postgres"));
|
|
76
|
-
const { drizzle: drizzle2 } = await import("./postgres-js");
|
|
77
|
-
const instance = client2(connection);
|
|
78
|
-
return drizzle2(instance, drizzleConfig);
|
|
79
|
-
}
|
|
80
|
-
case "tidb-serverless": {
|
|
81
|
-
const { connect } = await import("@tidbcloud/serverless").catch(() => importError("@tidbcloud/serverless"));
|
|
82
|
-
const { drizzle: drizzle2 } = await import("./tidb-serverless");
|
|
83
|
-
const instance = connect(connection);
|
|
84
|
-
return drizzle2(instance, drizzleConfig);
|
|
85
|
-
}
|
|
86
|
-
case "vercel-postgres": {
|
|
87
|
-
const { sql } = await import("@vercel/postgres").catch(() => importError("@vercel/postgres"));
|
|
88
|
-
const { drizzle: drizzle2 } = await import("./vercel-postgres");
|
|
89
|
-
return drizzle2(sql, drizzleConfig);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
};
|
|
93
|
-
export {
|
|
94
|
-
drizzle
|
|
95
|
-
};
|
|
96
|
-
//# sourceMappingURL=monodriver.js.map
|
package/monodriver.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/monodriver.ts"],"sourcesContent":["/* eslint-disable import/extensions */\nimport type { RDSDataClientConfig as RDSConfig } from '@aws-sdk/client-rds-data';\nimport type { Config as LibsqlConfig } from '@libsql/client';\nimport type {\n\tHTTPTransactionOptions as NeonHttpConfig,\n\tPoolConfig as NeonServerlessConfig,\n} from '@neondatabase/serverless';\nimport type { Config as PlanetscaleConfig } from '@planetscale/database';\nimport type { Config as TiDBServerlessConfig } from '@tidbcloud/serverless';\nimport type { VercelPool } from '@vercel/postgres';\nimport type { Options as BetterSQLite3Options } from 'better-sqlite3';\nimport type { PoolOptions as Mysql2Config } from 'mysql2';\nimport type { PoolConfig as NodePGPoolConfig } from 'pg';\nimport type { Options as PostgresJSOptions, PostgresType as PostgresJSPostgresType } from 'postgres';\nimport type { AwsDataApiPgDatabase, DrizzleAwsDataApiPgConfig } from './aws-data-api/pg/index.ts';\nimport type { BetterSQLite3Database } from './better-sqlite3/index.ts';\nimport type { BunSQLiteDatabase } from './bun-sqlite/index.ts';\nimport type { DrizzleD1Database } from './d1/index.ts';\nimport type { LibSQLDatabase } from './libsql/index.ts';\nimport type { MySql2Database, MySql2DrizzleConfig } from './mysql2/index.ts';\nimport type { NeonHttpDatabase } from './neon-http/index.ts';\nimport type { NeonDatabase } from './neon-serverless/index.ts';\nimport type { NodePgDatabase } from './node-postgres/index.ts';\nimport type { PlanetScaleDatabase } from './planetscale-serverless/index.ts';\nimport type { PostgresJsDatabase } from './postgres-js/index.ts';\nimport type { TiDBServerlessDatabase } from './tidb-serverless/index.ts';\nimport type { DrizzleConfig } from './utils.ts';\nimport type { VercelPgDatabase } from './vercel-postgres/index.ts';\n\ntype BunSqliteDatabaseOptions =\n\t| number\n\t| {\n\t\t/**\n\t\t * Open the database as read-only (no write operations, no create).\n\t\t *\n\t\t * Equivalent to {@link constants.SQLITE_OPEN_READONLY}\n\t\t */\n\t\treadonly?: boolean;\n\t\t/**\n\t\t * Allow creating a new database\n\t\t *\n\t\t * Equivalent to {@link constants.SQLITE_OPEN_CREATE}\n\t\t */\n\t\tcreate?: boolean;\n\t\t/**\n\t\t * Open the database as read-write\n\t\t *\n\t\t * Equivalent to {@link constants.SQLITE_OPEN_READWRITE}\n\t\t */\n\t\treadwrite?: boolean;\n\t};\n\ntype BunSqliteDatabaseConfig = {\n\tfilename?: string;\n\toptions?: BunSqliteDatabaseOptions;\n};\n\ntype BetterSQLite3DatabaseConfig = {\n\tfilename?: string | Buffer;\n\toptions?: BetterSQLite3Options;\n};\n\ntype MonodriverNeonHttpConfig = {\n\tconnectionString: string;\n\toptions?: NeonHttpConfig<boolean, boolean>;\n};\n\ntype ClientDrizzleInstanceMap<TSchema extends Record<string, any>> = {\n\t'node-postgres': NodePgDatabase<TSchema>;\n\t'postgres-js': PostgresJsDatabase<TSchema>;\n\t'neon-serverless': NeonDatabase<TSchema>;\n\t'neon-http': NeonHttpDatabase<TSchema>;\n\t'vercel-postgres': VercelPgDatabase<TSchema>;\n\t'aws-data-api-pg': AwsDataApiPgDatabase<TSchema>;\n\tplanetscale: PlanetScaleDatabase<TSchema>;\n\tmysql2: MySql2Database<TSchema>;\n\t'tidb-serverless': TiDBServerlessDatabase<TSchema>;\n\tlibsql: LibSQLDatabase<TSchema>;\n\td1: DrizzleD1Database<TSchema>;\n\t'bun-sqlite': BunSQLiteDatabase<TSchema>;\n\t'better-sqlite3': BetterSQLite3Database<TSchema>;\n};\n\ntype InitializerParams<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n> =\n\t| ({\n\t\tclient: 'node-postgres';\n\t\tconnection: NodePGPoolConfig;\n\t} & DrizzleConfig<TSchema>)\n\t| ({\n\t\tclient: 'postgres-js';\n\t\tconnection: PostgresJSOptions<Record<string, PostgresJSPostgresType>>;\n\t} & DrizzleConfig<TSchema>)\n\t| ({\n\t\tclient: 'neon-serverless';\n\t\tconnection: NeonServerlessConfig;\n\t} & DrizzleConfig<TSchema>)\n\t| ({\n\t\tclient: 'neon-http';\n\t\tconnection: MonodriverNeonHttpConfig;\n\t} & DrizzleConfig<TSchema>)\n\t| ({\n\t\tclient: 'vercel-postgres';\n\t\tconnection: VercelPool;\n\t} & DrizzleConfig<TSchema>)\n\t| ({\n\t\tclient: 'aws-data-api-pg';\n\t\tconnection: RDSConfig;\n\t} & DrizzleAwsDataApiPgConfig<TSchema>)\n\t| ({\n\t\tclient: 'planetscale';\n\t\tconnection: PlanetscaleConfig;\n\t} & DrizzleConfig<TSchema>)\n\t| ({\n\t\tclient: 'mysql2';\n\t\tconnection: Mysql2Config;\n\t} & MySql2DrizzleConfig<TSchema>)\n\t| ({\n\t\tclient: 'tidb-serverless';\n\t\tconnection: TiDBServerlessConfig;\n\t} & DrizzleConfig<TSchema>)\n\t| ({\n\t\tclient: 'libsql';\n\t\tconnection: LibsqlConfig;\n\t} & DrizzleConfig<TSchema>)\n\t| ({\n\t\tclient: 'd1';\n\t\tconnection: D1Database;\n\t} & DrizzleConfig<TSchema>)\n\t| ({\n\t\tclient: 'bun-sqlite';\n\t\tconnection: BunSqliteDatabaseConfig;\n\t} & DrizzleConfig<TSchema>)\n\t| ({\n\t\tclient: 'better-sqlite3';\n\t\tconnection: BetterSQLite3DatabaseConfig;\n\t} & DrizzleConfig<TSchema>);\n\ntype DetermineClient<\n\tTParams extends InitializerParams<any>,\n> = ClientDrizzleInstanceMap<TParams['schema']>[TParams['client']];\n\nconst importError = (libName: string) => {\n\tthrow new Error(\n\t\t`Please install '${libName}' for Drizzle ORM to connect to database`,\n\t);\n};\n\nexport const drizzle = async <\n\tTSchema extends Record<string, any>,\n\tTParams extends InitializerParams<TSchema>,\n>(params: TParams): Promise<DetermineClient<TParams>> => {\n\tconst { client, connection, ...drizzleConfig } = params;\n\n\tswitch (client) {\n\t\tcase 'node-postgres': {\n\t\t\tconst { Pool } = await import('pg').catch(() => importError('pg'));\n\t\t\tconst { drizzle } = await import('./node-postgres');\n\t\t\tconst instance = new Pool(connection as NodePGPoolConfig);\n\n\t\t\treturn drizzle(instance, drizzleConfig) as any;\n\t\t}\n\t\tcase 'aws-data-api-pg': {\n\t\t\tconst { RDSDataClient } = await import('@aws-sdk/client-rds-data').catch(() =>\n\t\t\t\timportError('@aws-sdk/client-rds-data')\n\t\t\t);\n\t\t\tconst { drizzle } = await import('./aws-data-api/pg');\n\t\t\tconst instance = new RDSDataClient(connection);\n\n\t\t\treturn drizzle(instance, drizzleConfig as any as DrizzleAwsDataApiPgConfig) as any;\n\t\t}\n\t\tcase 'better-sqlite3': {\n\t\t\tconst { default: Client } = await import('better-sqlite3').catch(() => importError('better-sqlite3'));\n\t\t\tconst { filename, options } = connection as BetterSQLite3DatabaseConfig;\n\t\t\tconst { drizzle } = await import('./better-sqlite3');\n\t\t\tconst instance = new Client(filename, options);\n\n\t\t\treturn drizzle(instance, drizzleConfig) as any;\n\t\t}\n\t\tcase 'bun-sqlite': {\n\t\t\tconst { Database: Client } = await import('bun:sqlite').catch(() => importError('bun:sqlite'));\n\t\t\tconst { filename, options } = connection as BunSqliteDatabaseConfig;\n\t\t\tconst { drizzle } = await import('./bun-sqlite');\n\t\t\tconst instance = new Client(filename, options);\n\n\t\t\treturn drizzle(instance, drizzleConfig) as any;\n\t\t}\n\t\tcase 'd1': {\n\t\t\tconst { drizzle } = await import('./d1');\n\t\t\treturn drizzle(connection as D1Database, drizzleConfig) as any;\n\t\t}\n\t\tcase 'libsql': {\n\t\t\tconst { createClient } = await import('@libsql/client').catch(() => importError('@libsql/client'));\n\t\t\tconst { drizzle } = await import('./libsql');\n\t\t\tconst instance = createClient(connection as LibsqlConfig);\n\n\t\t\treturn drizzle(instance, drizzleConfig) as any;\n\t\t}\n\t\tcase 'mysql2': {\n\t\t\tconst { createConnection } = await import('mysql2/promise').catch(() => importError('mysql2/promise'));\n\t\t\tconst instance = await createConnection(connection as Mysql2Config);\n\t\t\tconst { drizzle } = await import('./mysql2');\n\n\t\t\treturn drizzle(instance, drizzleConfig as MySql2DrizzleConfig) as any;\n\t\t}\n\t\tcase 'neon-http': {\n\t\t\tconst { neon } = await import('@neondatabase/serverless').catch(() => importError('@neondatabase/serverless'));\n\t\t\tconst { connectionString, options } = connection as MonodriverNeonHttpConfig;\n\t\t\tconst { drizzle } = await import('./neon-http');\n\t\t\tconst instance = neon(connectionString, options);\n\n\t\t\treturn drizzle(instance, drizzleConfig) as any;\n\t\t}\n\t\tcase 'neon-serverless': {\n\t\t\tconst { Pool } = await import('@neondatabase/serverless').catch(() => importError('@neondatabase/serverless'));\n\t\t\tconst { drizzle } = await import('./neon-serverless');\n\t\t\tconst instance = new Pool(connection as NeonServerlessConfig);\n\n\t\t\treturn drizzle(instance, drizzleConfig) as any;\n\t\t}\n\t\tcase 'planetscale': {\n\t\t\tconst { Client } = await import('@planetscale/database').catch(() => importError('@planetscale/database'));\n\t\t\tconst { drizzle } = await import('./planetscale-serverless');\n\t\t\tconst instance = new Client(\n\t\t\t\tconnection as PlanetscaleConfig,\n\t\t\t);\n\n\t\t\treturn drizzle(instance, drizzleConfig) as any;\n\t\t}\n\t\tcase 'postgres-js': {\n\t\t\tconst { default: client } = await import('postgres').catch(() => importError('postgres'));\n\t\t\tconst { drizzle } = await import('./postgres-js');\n\t\t\tconst instance = client(connection as PostgresJSOptions<Record<string, PostgresJSPostgresType>>);\n\n\t\t\treturn drizzle(instance, drizzleConfig) as any;\n\t\t}\n\t\tcase 'tidb-serverless': {\n\t\t\tconst { connect } = await import('@tidbcloud/serverless').catch(() => importError('@tidbcloud/serverless'));\n\t\t\tconst { drizzle } = await import('./tidb-serverless');\n\t\t\tconst instance = connect(connection as TiDBServerlessConfig);\n\n\t\t\treturn drizzle(instance, drizzleConfig) as any;\n\t\t}\n\t\tcase 'vercel-postgres': {\n\t\t\tconst { sql } = await import('@vercel/postgres').catch(() => importError('@vercel/postgres'));\n\t\t\tconst { drizzle } = await import('./vercel-postgres');\n\n\t\t\treturn drizzle(sql, drizzleConfig) as any;\n\t\t}\n\t}\n};\n"],"mappings":"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","names":["drizzle","client"]}
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __export = (target, all) => {
|
|
7
|
-
for (var name in all)
|
|
8
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
-
};
|
|
10
|
-
var __copyProps = (to, from, except, desc) => {
|
|
11
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
-
for (let key of __getOwnPropNames(from))
|
|
13
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
-
}
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var count_exports = {};
|
|
20
|
-
__export(count_exports, {
|
|
21
|
-
MySqlCountBuilder: () => MySqlCountBuilder
|
|
22
|
-
});
|
|
23
|
-
module.exports = __toCommonJS(count_exports);
|
|
24
|
-
var import__ = require("../../index.cjs");
|
|
25
|
-
var import_sql = require("../../sql/sql.cjs");
|
|
26
|
-
class MySqlCountBuilder extends import_sql.SQL {
|
|
27
|
-
constructor(params) {
|
|
28
|
-
super(MySqlCountBuilder.buildEmbeddedCount(params.source, params.filters).queryChunks);
|
|
29
|
-
this.params = params;
|
|
30
|
-
this.session = params.session;
|
|
31
|
-
this.sql = MySqlCountBuilder.buildCount(
|
|
32
|
-
params.source,
|
|
33
|
-
params.filters
|
|
34
|
-
);
|
|
35
|
-
}
|
|
36
|
-
sql;
|
|
37
|
-
static [import__.entityKind] = "MySqlCountBuilder";
|
|
38
|
-
[Symbol.toStringTag] = "MySqlCountBuilder";
|
|
39
|
-
session;
|
|
40
|
-
static buildEmbeddedCount(source, filters) {
|
|
41
|
-
return import__.sql`(select count(*) from ${source}${import__.sql.raw(" where ").if(filters)}${filters})`;
|
|
42
|
-
}
|
|
43
|
-
static buildCount(source, filters) {
|
|
44
|
-
return import__.sql`select count(*) from ${source}${import__.sql.raw(" where ").if(filters)}${filters}`;
|
|
45
|
-
}
|
|
46
|
-
then(onfulfilled, onrejected) {
|
|
47
|
-
return Promise.resolve(this.session.all(this.sql)).then((it) => {
|
|
48
|
-
return it[0]["count(*)"];
|
|
49
|
-
}).then(
|
|
50
|
-
onfulfilled,
|
|
51
|
-
onrejected
|
|
52
|
-
);
|
|
53
|
-
}
|
|
54
|
-
catch(onRejected) {
|
|
55
|
-
return this.then(void 0, onRejected);
|
|
56
|
-
}
|
|
57
|
-
finally(onFinally) {
|
|
58
|
-
return this.then(
|
|
59
|
-
(value) => {
|
|
60
|
-
onFinally?.();
|
|
61
|
-
return value;
|
|
62
|
-
},
|
|
63
|
-
(reason) => {
|
|
64
|
-
onFinally?.();
|
|
65
|
-
throw reason;
|
|
66
|
-
}
|
|
67
|
-
);
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
71
|
-
0 && (module.exports = {
|
|
72
|
-
MySqlCountBuilder
|
|
73
|
-
});
|
|
74
|
-
//# sourceMappingURL=count.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/mysql-core/query-builders/count.ts"],"sourcesContent":["import { entityKind, sql } from '~/index.ts';\nimport type { SQLWrapper } from '~/sql/sql.ts';\nimport { SQL } from '~/sql/sql.ts';\nimport type { MySqlDialect } from '../dialect.ts';\nimport type { MySqlSession } from '../session.ts';\nimport type { MySqlTable } from '../table.ts';\nimport type { MySqlViewBase } from '../view-base.ts';\n\nexport class MySqlCountBuilder<\n\tTSession extends MySqlSession<any, any, any>,\n> extends SQL<number> implements Promise<number>, SQLWrapper {\n\tprivate sql: SQL<number>;\n\n\tstatic readonly [entityKind] = 'MySqlCountBuilder';\n\t[Symbol.toStringTag] = 'MySqlCountBuilder';\n\n\tprivate session: TSession;\n\n\tprivate static buildEmbeddedCount(\n\t\tsource: MySqlTable | MySqlViewBase | SQL | SQLWrapper,\n\t\tfilters?: SQL<unknown>,\n\t): SQL<number> {\n\t\treturn sql<number>`(select count(*) from ${source}${sql.raw(' where ').if(filters)}${filters})`;\n\t}\n\n\tprivate static buildCount(\n\t\tsource: MySqlTable | MySqlViewBase | SQL | SQLWrapper,\n\t\tfilters?: SQL<unknown>,\n\t): SQL<number> {\n\t\treturn sql<number>`select count(*) from ${source}${sql.raw(' where ').if(filters)}${filters}`;\n\t}\n\n\tconstructor(\n\t\treadonly params: {\n\t\t\tsource: MySqlTable | MySqlViewBase | SQL | SQLWrapper;\n\t\t\tfilters?: SQL<unknown>;\n\t\t\tdialect: MySqlDialect;\n\t\t\tsession: TSession;\n\t\t},\n\t) {\n\t\tsuper(MySqlCountBuilder.buildEmbeddedCount(params.source, params.filters).queryChunks);\n\n\t\tthis.session = params.session;\n\n\t\tthis.sql = MySqlCountBuilder.buildCount(\n\t\t\tparams.source,\n\t\t\tparams.filters,\n\t\t);\n\t}\n\n\tthen<TResult1 = number, TResult2 = never>(\n\t\tonfulfilled?: ((value: number) => TResult1 | PromiseLike<TResult1>) | null | undefined,\n\t\tonrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | null | undefined,\n\t): Promise<TResult1 | TResult2> {\n\t\treturn Promise.resolve(this.session.all(this.sql)).then<number>((it) => {\n\t\t\treturn (<[{ 'count(*)': number }]> it)[0]['count(*)'];\n\t\t})\n\t\t\t.then(\n\t\t\t\tonfulfilled,\n\t\t\t\tonrejected,\n\t\t\t);\n\t}\n\n\tcatch(\n\t\tonRejected?: ((reason: any) => never | PromiseLike<never>) | null | undefined,\n\t): Promise<number> {\n\t\treturn this.then(undefined, onRejected);\n\t}\n\n\tfinally(onFinally?: (() => void) | null | undefined): Promise<number> {\n\t\treturn this.then(\n\t\t\t(value) => {\n\t\t\t\tonFinally?.();\n\t\t\t\treturn value;\n\t\t\t},\n\t\t\t(reason) => {\n\t\t\t\tonFinally?.();\n\t\t\t\tthrow reason;\n\t\t\t},\n\t\t);\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,eAAgC;AAEhC,iBAAoB;AAMb,MAAM,0BAEH,eAAmD;AAAA,EAsB5D,YACU,QAMR;AACD,UAAM,kBAAkB,mBAAmB,OAAO,QAAQ,OAAO,OAAO,EAAE,WAAW;AAP5E;AAST,SAAK,UAAU,OAAO;AAEtB,SAAK,MAAM,kBAAkB;AAAA,MAC5B,OAAO;AAAA,MACP,OAAO;AAAA,IACR;AAAA,EACD;AAAA,EArCQ;AAAA,EAER,QAAiB,mBAAU,IAAI;AAAA,EAC/B,CAAC,OAAO,WAAW,IAAI;AAAA,EAEf;AAAA,EAER,OAAe,mBACd,QACA,SACc;AACd,WAAO,qCAAoC,MAAM,GAAG,aAAI,IAAI,SAAS,EAAE,GAAG,OAAO,CAAC,GAAG,OAAO;AAAA,EAC7F;AAAA,EAEA,OAAe,WACd,QACA,SACc;AACd,WAAO,oCAAmC,MAAM,GAAG,aAAI,IAAI,SAAS,EAAE,GAAG,OAAO,CAAC,GAAG,OAAO;AAAA,EAC5F;AAAA,EAoBA,KACC,aACA,YAC+B;AAC/B,WAAO,QAAQ,QAAQ,KAAK,QAAQ,IAAI,KAAK,GAAG,CAAC,EAAE,KAAa,CAAC,OAAO;AACvE,aAAmC,GAAI,CAAC,EAAE,UAAU;AAAA,IACrD,CAAC,EACC;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,EACF;AAAA,EAEA,MACC,YACkB;AAClB,WAAO,KAAK,KAAK,QAAW,UAAU;AAAA,EACvC;AAAA,EAEA,QAAQ,WAA8D;AACrE,WAAO,KAAK;AAAA,MACX,CAAC,UAAU;AACV,oBAAY;AACZ,eAAO;AAAA,MACR;AAAA,MACA,CAAC,WAAW;AACX,oBAAY;AACZ,cAAM;AAAA,MACP;AAAA,IACD;AAAA,EACD;AACD;","names":[]}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { entityKind } from "../../index.cjs";
|
|
2
|
-
import type { SQLWrapper } from "../../sql/sql.cjs";
|
|
3
|
-
import { SQL } from "../../sql/sql.cjs";
|
|
4
|
-
import type { MySqlDialect } from "../dialect.cjs";
|
|
5
|
-
import type { MySqlSession } from "../session.cjs";
|
|
6
|
-
import type { MySqlTable } from "../table.cjs";
|
|
7
|
-
import type { MySqlViewBase } from "../view-base.cjs";
|
|
8
|
-
export declare class MySqlCountBuilder<TSession extends MySqlSession<any, any, any>> extends SQL<number> implements Promise<number>, SQLWrapper {
|
|
9
|
-
readonly params: {
|
|
10
|
-
source: MySqlTable | MySqlViewBase | SQL | SQLWrapper;
|
|
11
|
-
filters?: SQL<unknown>;
|
|
12
|
-
dialect: MySqlDialect;
|
|
13
|
-
session: TSession;
|
|
14
|
-
};
|
|
15
|
-
private sql;
|
|
16
|
-
static readonly [entityKind] = "MySqlCountBuilder";
|
|
17
|
-
[Symbol.toStringTag]: string;
|
|
18
|
-
private session;
|
|
19
|
-
private static buildEmbeddedCount;
|
|
20
|
-
private static buildCount;
|
|
21
|
-
constructor(params: {
|
|
22
|
-
source: MySqlTable | MySqlViewBase | SQL | SQLWrapper;
|
|
23
|
-
filters?: SQL<unknown>;
|
|
24
|
-
dialect: MySqlDialect;
|
|
25
|
-
session: TSession;
|
|
26
|
-
});
|
|
27
|
-
then<TResult1 = number, TResult2 = never>(onfulfilled?: ((value: number) => TResult1 | PromiseLike<TResult1>) | null | undefined, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | null | undefined): Promise<TResult1 | TResult2>;
|
|
28
|
-
catch(onRejected?: ((reason: any) => never | PromiseLike<never>) | null | undefined): Promise<number>;
|
|
29
|
-
finally(onFinally?: (() => void) | null | undefined): Promise<number>;
|
|
30
|
-
}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { entityKind } from "../../index.js";
|
|
2
|
-
import type { SQLWrapper } from "../../sql/sql.js";
|
|
3
|
-
import { SQL } from "../../sql/sql.js";
|
|
4
|
-
import type { MySqlDialect } from "../dialect.js";
|
|
5
|
-
import type { MySqlSession } from "../session.js";
|
|
6
|
-
import type { MySqlTable } from "../table.js";
|
|
7
|
-
import type { MySqlViewBase } from "../view-base.js";
|
|
8
|
-
export declare class MySqlCountBuilder<TSession extends MySqlSession<any, any, any>> extends SQL<number> implements Promise<number>, SQLWrapper {
|
|
9
|
-
readonly params: {
|
|
10
|
-
source: MySqlTable | MySqlViewBase | SQL | SQLWrapper;
|
|
11
|
-
filters?: SQL<unknown>;
|
|
12
|
-
dialect: MySqlDialect;
|
|
13
|
-
session: TSession;
|
|
14
|
-
};
|
|
15
|
-
private sql;
|
|
16
|
-
static readonly [entityKind] = "MySqlCountBuilder";
|
|
17
|
-
[Symbol.toStringTag]: string;
|
|
18
|
-
private session;
|
|
19
|
-
private static buildEmbeddedCount;
|
|
20
|
-
private static buildCount;
|
|
21
|
-
constructor(params: {
|
|
22
|
-
source: MySqlTable | MySqlViewBase | SQL | SQLWrapper;
|
|
23
|
-
filters?: SQL<unknown>;
|
|
24
|
-
dialect: MySqlDialect;
|
|
25
|
-
session: TSession;
|
|
26
|
-
});
|
|
27
|
-
then<TResult1 = number, TResult2 = never>(onfulfilled?: ((value: number) => TResult1 | PromiseLike<TResult1>) | null | undefined, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | null | undefined): Promise<TResult1 | TResult2>;
|
|
28
|
-
catch(onRejected?: ((reason: any) => never | PromiseLike<never>) | null | undefined): Promise<number>;
|
|
29
|
-
finally(onFinally?: (() => void) | null | undefined): Promise<number>;
|
|
30
|
-
}
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { entityKind, sql } from "../../index.js";
|
|
2
|
-
import { SQL } from "../../sql/sql.js";
|
|
3
|
-
class MySqlCountBuilder extends SQL {
|
|
4
|
-
constructor(params) {
|
|
5
|
-
super(MySqlCountBuilder.buildEmbeddedCount(params.source, params.filters).queryChunks);
|
|
6
|
-
this.params = params;
|
|
7
|
-
this.session = params.session;
|
|
8
|
-
this.sql = MySqlCountBuilder.buildCount(
|
|
9
|
-
params.source,
|
|
10
|
-
params.filters
|
|
11
|
-
);
|
|
12
|
-
}
|
|
13
|
-
sql;
|
|
14
|
-
static [entityKind] = "MySqlCountBuilder";
|
|
15
|
-
[Symbol.toStringTag] = "MySqlCountBuilder";
|
|
16
|
-
session;
|
|
17
|
-
static buildEmbeddedCount(source, filters) {
|
|
18
|
-
return sql`(select count(*) from ${source}${sql.raw(" where ").if(filters)}${filters})`;
|
|
19
|
-
}
|
|
20
|
-
static buildCount(source, filters) {
|
|
21
|
-
return sql`select count(*) from ${source}${sql.raw(" where ").if(filters)}${filters}`;
|
|
22
|
-
}
|
|
23
|
-
then(onfulfilled, onrejected) {
|
|
24
|
-
return Promise.resolve(this.session.all(this.sql)).then((it) => {
|
|
25
|
-
return it[0]["count(*)"];
|
|
26
|
-
}).then(
|
|
27
|
-
onfulfilled,
|
|
28
|
-
onrejected
|
|
29
|
-
);
|
|
30
|
-
}
|
|
31
|
-
catch(onRejected) {
|
|
32
|
-
return this.then(void 0, onRejected);
|
|
33
|
-
}
|
|
34
|
-
finally(onFinally) {
|
|
35
|
-
return this.then(
|
|
36
|
-
(value) => {
|
|
37
|
-
onFinally?.();
|
|
38
|
-
return value;
|
|
39
|
-
},
|
|
40
|
-
(reason) => {
|
|
41
|
-
onFinally?.();
|
|
42
|
-
throw reason;
|
|
43
|
-
}
|
|
44
|
-
);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
export {
|
|
48
|
-
MySqlCountBuilder
|
|
49
|
-
};
|
|
50
|
-
//# sourceMappingURL=count.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/mysql-core/query-builders/count.ts"],"sourcesContent":["import { entityKind, sql } from '~/index.ts';\nimport type { SQLWrapper } from '~/sql/sql.ts';\nimport { SQL } from '~/sql/sql.ts';\nimport type { MySqlDialect } from '../dialect.ts';\nimport type { MySqlSession } from '../session.ts';\nimport type { MySqlTable } from '../table.ts';\nimport type { MySqlViewBase } from '../view-base.ts';\n\nexport class MySqlCountBuilder<\n\tTSession extends MySqlSession<any, any, any>,\n> extends SQL<number> implements Promise<number>, SQLWrapper {\n\tprivate sql: SQL<number>;\n\n\tstatic readonly [entityKind] = 'MySqlCountBuilder';\n\t[Symbol.toStringTag] = 'MySqlCountBuilder';\n\n\tprivate session: TSession;\n\n\tprivate static buildEmbeddedCount(\n\t\tsource: MySqlTable | MySqlViewBase | SQL | SQLWrapper,\n\t\tfilters?: SQL<unknown>,\n\t): SQL<number> {\n\t\treturn sql<number>`(select count(*) from ${source}${sql.raw(' where ').if(filters)}${filters})`;\n\t}\n\n\tprivate static buildCount(\n\t\tsource: MySqlTable | MySqlViewBase | SQL | SQLWrapper,\n\t\tfilters?: SQL<unknown>,\n\t): SQL<number> {\n\t\treturn sql<number>`select count(*) from ${source}${sql.raw(' where ').if(filters)}${filters}`;\n\t}\n\n\tconstructor(\n\t\treadonly params: {\n\t\t\tsource: MySqlTable | MySqlViewBase | SQL | SQLWrapper;\n\t\t\tfilters?: SQL<unknown>;\n\t\t\tdialect: MySqlDialect;\n\t\t\tsession: TSession;\n\t\t},\n\t) {\n\t\tsuper(MySqlCountBuilder.buildEmbeddedCount(params.source, params.filters).queryChunks);\n\n\t\tthis.session = params.session;\n\n\t\tthis.sql = MySqlCountBuilder.buildCount(\n\t\t\tparams.source,\n\t\t\tparams.filters,\n\t\t);\n\t}\n\n\tthen<TResult1 = number, TResult2 = never>(\n\t\tonfulfilled?: ((value: number) => TResult1 | PromiseLike<TResult1>) | null | undefined,\n\t\tonrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | null | undefined,\n\t): Promise<TResult1 | TResult2> {\n\t\treturn Promise.resolve(this.session.all(this.sql)).then<number>((it) => {\n\t\t\treturn (<[{ 'count(*)': number }]> it)[0]['count(*)'];\n\t\t})\n\t\t\t.then(\n\t\t\t\tonfulfilled,\n\t\t\t\tonrejected,\n\t\t\t);\n\t}\n\n\tcatch(\n\t\tonRejected?: ((reason: any) => never | PromiseLike<never>) | null | undefined,\n\t): Promise<number> {\n\t\treturn this.then(undefined, onRejected);\n\t}\n\n\tfinally(onFinally?: (() => void) | null | undefined): Promise<number> {\n\t\treturn this.then(\n\t\t\t(value) => {\n\t\t\t\tonFinally?.();\n\t\t\t\treturn value;\n\t\t\t},\n\t\t\t(reason) => {\n\t\t\t\tonFinally?.();\n\t\t\t\tthrow reason;\n\t\t\t},\n\t\t);\n\t}\n}\n"],"mappings":"AAAA,SAAS,YAAY,WAAW;AAEhC,SAAS,WAAW;AAMb,MAAM,0BAEH,IAAmD;AAAA,EAsB5D,YACU,QAMR;AACD,UAAM,kBAAkB,mBAAmB,OAAO,QAAQ,OAAO,OAAO,EAAE,WAAW;AAP5E;AAST,SAAK,UAAU,OAAO;AAEtB,SAAK,MAAM,kBAAkB;AAAA,MAC5B,OAAO;AAAA,MACP,OAAO;AAAA,IACR;AAAA,EACD;AAAA,EArCQ;AAAA,EAER,QAAiB,UAAU,IAAI;AAAA,EAC/B,CAAC,OAAO,WAAW,IAAI;AAAA,EAEf;AAAA,EAER,OAAe,mBACd,QACA,SACc;AACd,WAAO,4BAAoC,MAAM,GAAG,IAAI,IAAI,SAAS,EAAE,GAAG,OAAO,CAAC,GAAG,OAAO;AAAA,EAC7F;AAAA,EAEA,OAAe,WACd,QACA,SACc;AACd,WAAO,2BAAmC,MAAM,GAAG,IAAI,IAAI,SAAS,EAAE,GAAG,OAAO,CAAC,GAAG,OAAO;AAAA,EAC5F;AAAA,EAoBA,KACC,aACA,YAC+B;AAC/B,WAAO,QAAQ,QAAQ,KAAK,QAAQ,IAAI,KAAK,GAAG,CAAC,EAAE,KAAa,CAAC,OAAO;AACvE,aAAmC,GAAI,CAAC,EAAE,UAAU;AAAA,IACrD,CAAC,EACC;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,EACF;AAAA,EAEA,MACC,YACkB;AAClB,WAAO,KAAK,KAAK,QAAW,UAAU;AAAA,EACvC;AAAA,EAEA,QAAQ,WAA8D;AACrE,WAAO,KAAK;AAAA,MACX,CAAC,UAAU;AACV,oBAAY;AACZ,eAAO;AAAA,MACR;AAAA,MACA,CAAC,WAAW;AACX,oBAAY;AACZ,cAAM;AAAA,MACP;AAAA,IACD;AAAA,EACD;AACD;","names":[]}
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __export = (target, all) => {
|
|
7
|
-
for (var name in all)
|
|
8
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
-
};
|
|
10
|
-
var __copyProps = (to, from, except, desc) => {
|
|
11
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
-
for (let key of __getOwnPropNames(from))
|
|
13
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
-
}
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var count_exports = {};
|
|
20
|
-
__export(count_exports, {
|
|
21
|
-
PgCountBuilder: () => PgCountBuilder
|
|
22
|
-
});
|
|
23
|
-
module.exports = __toCommonJS(count_exports);
|
|
24
|
-
var import__ = require("../../index.cjs");
|
|
25
|
-
var import_sql = require("../../sql/sql.cjs");
|
|
26
|
-
class PgCountBuilder extends import_sql.SQL {
|
|
27
|
-
constructor(params) {
|
|
28
|
-
super(PgCountBuilder.buildEmbeddedCount(params.source, params.filters).queryChunks);
|
|
29
|
-
this.params = params;
|
|
30
|
-
this.session = params.session;
|
|
31
|
-
this.sql = PgCountBuilder.buildCount(
|
|
32
|
-
params.source,
|
|
33
|
-
params.filters
|
|
34
|
-
);
|
|
35
|
-
}
|
|
36
|
-
sql;
|
|
37
|
-
static [import__.entityKind] = "PgCountBuilder";
|
|
38
|
-
[Symbol.toStringTag] = "PgCountBuilder";
|
|
39
|
-
session;
|
|
40
|
-
static buildEmbeddedCount(source, filters) {
|
|
41
|
-
return import__.sql`(select count(*)::int from ${source}${import__.sql.raw(" where ").if(filters)}${filters})`;
|
|
42
|
-
}
|
|
43
|
-
static buildCount(source, filters) {
|
|
44
|
-
return import__.sql`select count(*)::int from ${source}${import__.sql.raw(" where ").if(filters)}${filters};`;
|
|
45
|
-
}
|
|
46
|
-
then(onfulfilled, onrejected) {
|
|
47
|
-
return Promise.resolve(this.session.all(this.sql)).then((it) => {
|
|
48
|
-
return it[0]["count"];
|
|
49
|
-
}).then(
|
|
50
|
-
onfulfilled,
|
|
51
|
-
onrejected
|
|
52
|
-
);
|
|
53
|
-
}
|
|
54
|
-
catch(onRejected) {
|
|
55
|
-
return this.then(void 0, onRejected);
|
|
56
|
-
}
|
|
57
|
-
finally(onFinally) {
|
|
58
|
-
return this.then(
|
|
59
|
-
(value) => {
|
|
60
|
-
onFinally?.();
|
|
61
|
-
return value;
|
|
62
|
-
},
|
|
63
|
-
(reason) => {
|
|
64
|
-
onFinally?.();
|
|
65
|
-
throw reason;
|
|
66
|
-
}
|
|
67
|
-
);
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
71
|
-
0 && (module.exports = {
|
|
72
|
-
PgCountBuilder
|
|
73
|
-
});
|
|
74
|
-
//# sourceMappingURL=count.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/pg-core/query-builders/count.ts"],"sourcesContent":["import { entityKind, sql } from '~/index.ts';\nimport type { SQLWrapper } from '~/sql/sql.ts';\nimport { SQL } from '~/sql/sql.ts';\nimport type { PgDialect } from '../dialect.ts';\nimport type { PgSession } from '../session.ts';\nimport type { PgTable } from '../table.ts';\n\nexport class PgCountBuilder<\n\tTSession extends PgSession<any, any, any>,\n> extends SQL<number> implements Promise<number>, SQLWrapper {\n\tprivate sql: SQL<number>;\n\n\tstatic readonly [entityKind] = 'PgCountBuilder';\n\t[Symbol.toStringTag] = 'PgCountBuilder';\n\n\tprivate session: TSession;\n\n\tprivate static buildEmbeddedCount(\n\t\tsource: PgTable | SQL | SQLWrapper,\n\t\tfilters?: SQL<unknown>,\n\t): SQL<number> {\n\t\treturn sql<number>`(select count(*)::int from ${source}${sql.raw(' where ').if(filters)}${filters})`;\n\t}\n\n\tprivate static buildCount(\n\t\tsource: PgTable | SQL | SQLWrapper,\n\t\tfilters?: SQL<unknown>,\n\t): SQL<number> {\n\t\treturn sql<number>`select count(*)::int from ${source}${sql.raw(' where ').if(filters)}${filters};`;\n\t}\n\n\tconstructor(\n\t\treadonly params: {\n\t\t\tsource: PgTable | SQL | SQLWrapper;\n\t\t\tfilters?: SQL<unknown>;\n\t\t\tdialect: PgDialect;\n\t\t\tsession: TSession;\n\t\t},\n\t) {\n\t\tsuper(PgCountBuilder.buildEmbeddedCount(params.source, params.filters).queryChunks);\n\n\t\tthis.session = params.session;\n\n\t\tthis.sql = PgCountBuilder.buildCount(\n\t\t\tparams.source,\n\t\t\tparams.filters,\n\t\t);\n\t}\n\n\tthen<TResult1 = number, TResult2 = never>(\n\t\tonfulfilled?: ((value: number) => TResult1 | PromiseLike<TResult1>) | null | undefined,\n\t\tonrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | null | undefined,\n\t): Promise<TResult1 | TResult2> {\n\t\treturn Promise.resolve(this.session.all(this.sql)).then<number>((it) => {\n\t\t\treturn (<[{ count: number }]> it)[0]['count'] as number;\n\t\t})\n\t\t\t.then(\n\t\t\t\tonfulfilled,\n\t\t\t\tonrejected,\n\t\t\t);\n\t}\n\n\tcatch(\n\t\tonRejected?: ((reason: any) => never | PromiseLike<never>) | null | undefined,\n\t): Promise<number> {\n\t\treturn this.then(undefined, onRejected);\n\t}\n\n\tfinally(onFinally?: (() => void) | null | undefined): Promise<number> {\n\t\treturn this.then(\n\t\t\t(value) => {\n\t\t\t\tonFinally?.();\n\t\t\t\treturn value;\n\t\t\t},\n\t\t\t(reason) => {\n\t\t\t\tonFinally?.();\n\t\t\t\tthrow reason;\n\t\t\t},\n\t\t);\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,eAAgC;AAEhC,iBAAoB;AAKb,MAAM,uBAEH,eAAmD;AAAA,EAsB5D,YACU,QAMR;AACD,UAAM,eAAe,mBAAmB,OAAO,QAAQ,OAAO,OAAO,EAAE,WAAW;AAPzE;AAST,SAAK,UAAU,OAAO;AAEtB,SAAK,MAAM,eAAe;AAAA,MACzB,OAAO;AAAA,MACP,OAAO;AAAA,IACR;AAAA,EACD;AAAA,EArCQ;AAAA,EAER,QAAiB,mBAAU,IAAI;AAAA,EAC/B,CAAC,OAAO,WAAW,IAAI;AAAA,EAEf;AAAA,EAER,OAAe,mBACd,QACA,SACc;AACd,WAAO,0CAAyC,MAAM,GAAG,aAAI,IAAI,SAAS,EAAE,GAAG,OAAO,CAAC,GAAG,OAAO;AAAA,EAClG;AAAA,EAEA,OAAe,WACd,QACA,SACc;AACd,WAAO,yCAAwC,MAAM,GAAG,aAAI,IAAI,SAAS,EAAE,GAAG,OAAO,CAAC,GAAG,OAAO;AAAA,EACjG;AAAA,EAoBA,KACC,aACA,YAC+B;AAC/B,WAAO,QAAQ,QAAQ,KAAK,QAAQ,IAAI,KAAK,GAAG,CAAC,EAAE,KAAa,CAAC,OAAO;AACvE,aAA8B,GAAI,CAAC,EAAE,OAAO;AAAA,IAC7C,CAAC,EACC;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,EACF;AAAA,EAEA,MACC,YACkB;AAClB,WAAO,KAAK,KAAK,QAAW,UAAU;AAAA,EACvC;AAAA,EAEA,QAAQ,WAA8D;AACrE,WAAO,KAAK;AAAA,MACX,CAAC,UAAU;AACV,oBAAY;AACZ,eAAO;AAAA,MACR;AAAA,MACA,CAAC,WAAW;AACX,oBAAY;AACZ,cAAM;AAAA,MACP;AAAA,IACD;AAAA,EACD;AACD;","names":[]}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { entityKind } from "../../index.cjs";
|
|
2
|
-
import type { SQLWrapper } from "../../sql/sql.cjs";
|
|
3
|
-
import { SQL } from "../../sql/sql.cjs";
|
|
4
|
-
import type { PgDialect } from "../dialect.cjs";
|
|
5
|
-
import type { PgSession } from "../session.cjs";
|
|
6
|
-
import type { PgTable } from "../table.cjs";
|
|
7
|
-
export declare class PgCountBuilder<TSession extends PgSession<any, any, any>> extends SQL<number> implements Promise<number>, SQLWrapper {
|
|
8
|
-
readonly params: {
|
|
9
|
-
source: PgTable | SQL | SQLWrapper;
|
|
10
|
-
filters?: SQL<unknown>;
|
|
11
|
-
dialect: PgDialect;
|
|
12
|
-
session: TSession;
|
|
13
|
-
};
|
|
14
|
-
private sql;
|
|
15
|
-
static readonly [entityKind] = "PgCountBuilder";
|
|
16
|
-
[Symbol.toStringTag]: string;
|
|
17
|
-
private session;
|
|
18
|
-
private static buildEmbeddedCount;
|
|
19
|
-
private static buildCount;
|
|
20
|
-
constructor(params: {
|
|
21
|
-
source: PgTable | SQL | SQLWrapper;
|
|
22
|
-
filters?: SQL<unknown>;
|
|
23
|
-
dialect: PgDialect;
|
|
24
|
-
session: TSession;
|
|
25
|
-
});
|
|
26
|
-
then<TResult1 = number, TResult2 = never>(onfulfilled?: ((value: number) => TResult1 | PromiseLike<TResult1>) | null | undefined, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | null | undefined): Promise<TResult1 | TResult2>;
|
|
27
|
-
catch(onRejected?: ((reason: any) => never | PromiseLike<never>) | null | undefined): Promise<number>;
|
|
28
|
-
finally(onFinally?: (() => void) | null | undefined): Promise<number>;
|
|
29
|
-
}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { entityKind } from "../../index.js";
|
|
2
|
-
import type { SQLWrapper } from "../../sql/sql.js";
|
|
3
|
-
import { SQL } from "../../sql/sql.js";
|
|
4
|
-
import type { PgDialect } from "../dialect.js";
|
|
5
|
-
import type { PgSession } from "../session.js";
|
|
6
|
-
import type { PgTable } from "../table.js";
|
|
7
|
-
export declare class PgCountBuilder<TSession extends PgSession<any, any, any>> extends SQL<number> implements Promise<number>, SQLWrapper {
|
|
8
|
-
readonly params: {
|
|
9
|
-
source: PgTable | SQL | SQLWrapper;
|
|
10
|
-
filters?: SQL<unknown>;
|
|
11
|
-
dialect: PgDialect;
|
|
12
|
-
session: TSession;
|
|
13
|
-
};
|
|
14
|
-
private sql;
|
|
15
|
-
static readonly [entityKind] = "PgCountBuilder";
|
|
16
|
-
[Symbol.toStringTag]: string;
|
|
17
|
-
private session;
|
|
18
|
-
private static buildEmbeddedCount;
|
|
19
|
-
private static buildCount;
|
|
20
|
-
constructor(params: {
|
|
21
|
-
source: PgTable | SQL | SQLWrapper;
|
|
22
|
-
filters?: SQL<unknown>;
|
|
23
|
-
dialect: PgDialect;
|
|
24
|
-
session: TSession;
|
|
25
|
-
});
|
|
26
|
-
then<TResult1 = number, TResult2 = never>(onfulfilled?: ((value: number) => TResult1 | PromiseLike<TResult1>) | null | undefined, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | null | undefined): Promise<TResult1 | TResult2>;
|
|
27
|
-
catch(onRejected?: ((reason: any) => never | PromiseLike<never>) | null | undefined): Promise<number>;
|
|
28
|
-
finally(onFinally?: (() => void) | null | undefined): Promise<number>;
|
|
29
|
-
}
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { entityKind, sql } from "../../index.js";
|
|
2
|
-
import { SQL } from "../../sql/sql.js";
|
|
3
|
-
class PgCountBuilder extends SQL {
|
|
4
|
-
constructor(params) {
|
|
5
|
-
super(PgCountBuilder.buildEmbeddedCount(params.source, params.filters).queryChunks);
|
|
6
|
-
this.params = params;
|
|
7
|
-
this.session = params.session;
|
|
8
|
-
this.sql = PgCountBuilder.buildCount(
|
|
9
|
-
params.source,
|
|
10
|
-
params.filters
|
|
11
|
-
);
|
|
12
|
-
}
|
|
13
|
-
sql;
|
|
14
|
-
static [entityKind] = "PgCountBuilder";
|
|
15
|
-
[Symbol.toStringTag] = "PgCountBuilder";
|
|
16
|
-
session;
|
|
17
|
-
static buildEmbeddedCount(source, filters) {
|
|
18
|
-
return sql`(select count(*)::int from ${source}${sql.raw(" where ").if(filters)}${filters})`;
|
|
19
|
-
}
|
|
20
|
-
static buildCount(source, filters) {
|
|
21
|
-
return sql`select count(*)::int from ${source}${sql.raw(" where ").if(filters)}${filters};`;
|
|
22
|
-
}
|
|
23
|
-
then(onfulfilled, onrejected) {
|
|
24
|
-
return Promise.resolve(this.session.all(this.sql)).then((it) => {
|
|
25
|
-
return it[0]["count"];
|
|
26
|
-
}).then(
|
|
27
|
-
onfulfilled,
|
|
28
|
-
onrejected
|
|
29
|
-
);
|
|
30
|
-
}
|
|
31
|
-
catch(onRejected) {
|
|
32
|
-
return this.then(void 0, onRejected);
|
|
33
|
-
}
|
|
34
|
-
finally(onFinally) {
|
|
35
|
-
return this.then(
|
|
36
|
-
(value) => {
|
|
37
|
-
onFinally?.();
|
|
38
|
-
return value;
|
|
39
|
-
},
|
|
40
|
-
(reason) => {
|
|
41
|
-
onFinally?.();
|
|
42
|
-
throw reason;
|
|
43
|
-
}
|
|
44
|
-
);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
export {
|
|
48
|
-
PgCountBuilder
|
|
49
|
-
};
|
|
50
|
-
//# sourceMappingURL=count.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/pg-core/query-builders/count.ts"],"sourcesContent":["import { entityKind, sql } from '~/index.ts';\nimport type { SQLWrapper } from '~/sql/sql.ts';\nimport { SQL } from '~/sql/sql.ts';\nimport type { PgDialect } from '../dialect.ts';\nimport type { PgSession } from '../session.ts';\nimport type { PgTable } from '../table.ts';\n\nexport class PgCountBuilder<\n\tTSession extends PgSession<any, any, any>,\n> extends SQL<number> implements Promise<number>, SQLWrapper {\n\tprivate sql: SQL<number>;\n\n\tstatic readonly [entityKind] = 'PgCountBuilder';\n\t[Symbol.toStringTag] = 'PgCountBuilder';\n\n\tprivate session: TSession;\n\n\tprivate static buildEmbeddedCount(\n\t\tsource: PgTable | SQL | SQLWrapper,\n\t\tfilters?: SQL<unknown>,\n\t): SQL<number> {\n\t\treturn sql<number>`(select count(*)::int from ${source}${sql.raw(' where ').if(filters)}${filters})`;\n\t}\n\n\tprivate static buildCount(\n\t\tsource: PgTable | SQL | SQLWrapper,\n\t\tfilters?: SQL<unknown>,\n\t): SQL<number> {\n\t\treturn sql<number>`select count(*)::int from ${source}${sql.raw(' where ').if(filters)}${filters};`;\n\t}\n\n\tconstructor(\n\t\treadonly params: {\n\t\t\tsource: PgTable | SQL | SQLWrapper;\n\t\t\tfilters?: SQL<unknown>;\n\t\t\tdialect: PgDialect;\n\t\t\tsession: TSession;\n\t\t},\n\t) {\n\t\tsuper(PgCountBuilder.buildEmbeddedCount(params.source, params.filters).queryChunks);\n\n\t\tthis.session = params.session;\n\n\t\tthis.sql = PgCountBuilder.buildCount(\n\t\t\tparams.source,\n\t\t\tparams.filters,\n\t\t);\n\t}\n\n\tthen<TResult1 = number, TResult2 = never>(\n\t\tonfulfilled?: ((value: number) => TResult1 | PromiseLike<TResult1>) | null | undefined,\n\t\tonrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | null | undefined,\n\t): Promise<TResult1 | TResult2> {\n\t\treturn Promise.resolve(this.session.all(this.sql)).then<number>((it) => {\n\t\t\treturn (<[{ count: number }]> it)[0]['count'] as number;\n\t\t})\n\t\t\t.then(\n\t\t\t\tonfulfilled,\n\t\t\t\tonrejected,\n\t\t\t);\n\t}\n\n\tcatch(\n\t\tonRejected?: ((reason: any) => never | PromiseLike<never>) | null | undefined,\n\t): Promise<number> {\n\t\treturn this.then(undefined, onRejected);\n\t}\n\n\tfinally(onFinally?: (() => void) | null | undefined): Promise<number> {\n\t\treturn this.then(\n\t\t\t(value) => {\n\t\t\t\tonFinally?.();\n\t\t\t\treturn value;\n\t\t\t},\n\t\t\t(reason) => {\n\t\t\t\tonFinally?.();\n\t\t\t\tthrow reason;\n\t\t\t},\n\t\t);\n\t}\n}\n"],"mappings":"AAAA,SAAS,YAAY,WAAW;AAEhC,SAAS,WAAW;AAKb,MAAM,uBAEH,IAAmD;AAAA,EAsB5D,YACU,QAMR;AACD,UAAM,eAAe,mBAAmB,OAAO,QAAQ,OAAO,OAAO,EAAE,WAAW;AAPzE;AAST,SAAK,UAAU,OAAO;AAEtB,SAAK,MAAM,eAAe;AAAA,MACzB,OAAO;AAAA,MACP,OAAO;AAAA,IACR;AAAA,EACD;AAAA,EArCQ;AAAA,EAER,QAAiB,UAAU,IAAI;AAAA,EAC/B,CAAC,OAAO,WAAW,IAAI;AAAA,EAEf;AAAA,EAER,OAAe,mBACd,QACA,SACc;AACd,WAAO,iCAAyC,MAAM,GAAG,IAAI,IAAI,SAAS,EAAE,GAAG,OAAO,CAAC,GAAG,OAAO;AAAA,EAClG;AAAA,EAEA,OAAe,WACd,QACA,SACc;AACd,WAAO,gCAAwC,MAAM,GAAG,IAAI,IAAI,SAAS,EAAE,GAAG,OAAO,CAAC,GAAG,OAAO;AAAA,EACjG;AAAA,EAoBA,KACC,aACA,YAC+B;AAC/B,WAAO,QAAQ,QAAQ,KAAK,QAAQ,IAAI,KAAK,GAAG,CAAC,EAAE,KAAa,CAAC,OAAO;AACvE,aAA8B,GAAI,CAAC,EAAE,OAAO;AAAA,IAC7C,CAAC,EACC;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,EACF;AAAA,EAEA,MACC,YACkB;AAClB,WAAO,KAAK,KAAK,QAAW,UAAU;AAAA,EACvC;AAAA,EAEA,QAAQ,WAA8D;AACrE,WAAO,KAAK;AAAA,MACX,CAAC,UAAU;AACV,oBAAY;AACZ,eAAO;AAAA,MACR;AAAA,MACA,CAAC,WAAW;AACX,oBAAY;AACZ,cAAM;AAAA,MACP;AAAA,IACD;AAAA,EACD;AACD;","names":[]}
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __export = (target, all) => {
|
|
7
|
-
for (var name in all)
|
|
8
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
-
};
|
|
10
|
-
var __copyProps = (to, from, except, desc) => {
|
|
11
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
-
for (let key of __getOwnPropNames(from))
|
|
13
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
-
}
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var count_exports = {};
|
|
20
|
-
__export(count_exports, {
|
|
21
|
-
SQLiteCountBuilder: () => SQLiteCountBuilder
|
|
22
|
-
});
|
|
23
|
-
module.exports = __toCommonJS(count_exports);
|
|
24
|
-
var import__ = require("../../index.cjs");
|
|
25
|
-
var import_sql = require("../../sql/sql.cjs");
|
|
26
|
-
class SQLiteCountBuilder extends import_sql.SQL {
|
|
27
|
-
constructor(params) {
|
|
28
|
-
super(SQLiteCountBuilder.buildEmbeddedCount(params.source, params.filters).queryChunks);
|
|
29
|
-
this.params = params;
|
|
30
|
-
this.session = params.session;
|
|
31
|
-
this.sql = SQLiteCountBuilder.buildCount(
|
|
32
|
-
params.source,
|
|
33
|
-
params.filters
|
|
34
|
-
);
|
|
35
|
-
}
|
|
36
|
-
sql;
|
|
37
|
-
static [import__.entityKind] = "SQLiteCountBuilderAsync";
|
|
38
|
-
[Symbol.toStringTag] = "SQLiteCountBuilderAsync";
|
|
39
|
-
session;
|
|
40
|
-
static buildEmbeddedCount(source, filters) {
|
|
41
|
-
return import__.sql`(select count(*) from ${source}${import__.sql.raw(" where ").if(filters)}${filters})`;
|
|
42
|
-
}
|
|
43
|
-
static buildCount(source, filters) {
|
|
44
|
-
return import__.sql`select count(*) from ${source}${import__.sql.raw(" where ").if(filters)}${filters}`;
|
|
45
|
-
}
|
|
46
|
-
then(onfulfilled, onrejected) {
|
|
47
|
-
return Promise.resolve(this.session.values(this.sql)).then((it) => it[0][0]).then(
|
|
48
|
-
onfulfilled,
|
|
49
|
-
onrejected
|
|
50
|
-
);
|
|
51
|
-
}
|
|
52
|
-
catch(onRejected) {
|
|
53
|
-
return this.then(void 0, onRejected);
|
|
54
|
-
}
|
|
55
|
-
finally(onFinally) {
|
|
56
|
-
return this.then(
|
|
57
|
-
(value) => {
|
|
58
|
-
onFinally?.();
|
|
59
|
-
return value;
|
|
60
|
-
},
|
|
61
|
-
(reason) => {
|
|
62
|
-
onFinally?.();
|
|
63
|
-
throw reason;
|
|
64
|
-
}
|
|
65
|
-
);
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
69
|
-
0 && (module.exports = {
|
|
70
|
-
SQLiteCountBuilder
|
|
71
|
-
});
|
|
72
|
-
//# sourceMappingURL=count.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/sqlite-core/query-builders/count.ts"],"sourcesContent":["import { entityKind, sql } from '~/index.ts';\nimport type { SQLWrapper } from '~/sql/sql.ts';\nimport { SQL } from '~/sql/sql.ts';\nimport type { SQLiteDialect } from '../dialect.ts';\nimport type { SQLiteSession } from '../session.ts';\nimport type { SQLiteTable } from '../table.ts';\nimport type { SQLiteView } from '../view.ts';\n\nexport class SQLiteCountBuilder<\n\tTSession extends SQLiteSession<any, any, any, any>,\n> extends SQL<number> implements Promise<number>, SQLWrapper {\n\tprivate sql: SQL<number>;\n\n\tstatic readonly [entityKind] = 'SQLiteCountBuilderAsync';\n\t[Symbol.toStringTag] = 'SQLiteCountBuilderAsync';\n\n\tprivate session: TSession;\n\n\tprivate static buildEmbeddedCount(\n\t\tsource: SQLiteTable | SQLiteView | SQL | SQLWrapper,\n\t\tfilters?: SQL<unknown>,\n\t): SQL<number> {\n\t\treturn sql<number>`(select count(*) from ${source}${sql.raw(' where ').if(filters)}${filters})`;\n\t}\n\n\tprivate static buildCount(\n\t\tsource: SQLiteTable | SQLiteView | SQL | SQLWrapper,\n\t\tfilters?: SQL<unknown>,\n\t): SQL<number> {\n\t\treturn sql<number>`select count(*) from ${source}${sql.raw(' where ').if(filters)}${filters}`;\n\t}\n\n\tconstructor(\n\t\treadonly params: {\n\t\t\tsource: SQLiteTable | SQLiteView | SQL | SQLWrapper;\n\t\t\tfilters?: SQL<unknown>;\n\t\t\tdialect: SQLiteDialect;\n\t\t\tsession: TSession;\n\t\t},\n\t) {\n\t\tsuper(SQLiteCountBuilder.buildEmbeddedCount(params.source, params.filters).queryChunks);\n\n\t\tthis.session = params.session;\n\n\t\tthis.sql = SQLiteCountBuilder.buildCount(\n\t\t\tparams.source,\n\t\t\tparams.filters,\n\t\t);\n\t}\n\n\tthen<TResult1 = number, TResult2 = never>(\n\t\tonfulfilled?: ((value: number) => TResult1 | PromiseLike<TResult1>) | null | undefined,\n\t\tonrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | null | undefined,\n\t): Promise<TResult1 | TResult2> {\n\t\treturn Promise.resolve(this.session.values(this.sql)).then<number>((it) => it[0]![0] as number).then(\n\t\t\tonfulfilled,\n\t\t\tonrejected,\n\t\t);\n\t}\n\n\tcatch(\n\t\tonRejected?: ((reason: any) => never | PromiseLike<never>) | null | undefined,\n\t): Promise<number> {\n\t\treturn this.then(undefined, onRejected);\n\t}\n\n\tfinally(onFinally?: (() => void) | null | undefined): Promise<number> {\n\t\treturn this.then(\n\t\t\t(value) => {\n\t\t\t\tonFinally?.();\n\t\t\t\treturn value;\n\t\t\t},\n\t\t\t(reason) => {\n\t\t\t\tonFinally?.();\n\t\t\t\tthrow reason;\n\t\t\t},\n\t\t);\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,eAAgC;AAEhC,iBAAoB;AAMb,MAAM,2BAEH,eAAmD;AAAA,EAsB5D,YACU,QAMR;AACD,UAAM,mBAAmB,mBAAmB,OAAO,QAAQ,OAAO,OAAO,EAAE,WAAW;AAP7E;AAST,SAAK,UAAU,OAAO;AAEtB,SAAK,MAAM,mBAAmB;AAAA,MAC7B,OAAO;AAAA,MACP,OAAO;AAAA,IACR;AAAA,EACD;AAAA,EArCQ;AAAA,EAER,QAAiB,mBAAU,IAAI;AAAA,EAC/B,CAAC,OAAO,WAAW,IAAI;AAAA,EAEf;AAAA,EAER,OAAe,mBACd,QACA,SACc;AACd,WAAO,qCAAoC,MAAM,GAAG,aAAI,IAAI,SAAS,EAAE,GAAG,OAAO,CAAC,GAAG,OAAO;AAAA,EAC7F;AAAA,EAEA,OAAe,WACd,QACA,SACc;AACd,WAAO,oCAAmC,MAAM,GAAG,aAAI,IAAI,SAAS,EAAE,GAAG,OAAO,CAAC,GAAG,OAAO;AAAA,EAC5F;AAAA,EAoBA,KACC,aACA,YAC+B;AAC/B,WAAO,QAAQ,QAAQ,KAAK,QAAQ,OAAO,KAAK,GAAG,CAAC,EAAE,KAAa,CAAC,OAAO,GAAG,CAAC,EAAG,CAAC,CAAW,EAAE;AAAA,MAC/F;AAAA,MACA;AAAA,IACD;AAAA,EACD;AAAA,EAEA,MACC,YACkB;AAClB,WAAO,KAAK,KAAK,QAAW,UAAU;AAAA,EACvC;AAAA,EAEA,QAAQ,WAA8D;AACrE,WAAO,KAAK;AAAA,MACX,CAAC,UAAU;AACV,oBAAY;AACZ,eAAO;AAAA,MACR;AAAA,MACA,CAAC,WAAW;AACX,oBAAY;AACZ,cAAM;AAAA,MACP;AAAA,IACD;AAAA,EACD;AACD;","names":[]}
|