/
opt
/
canhelp
/
node_modules
/
drizzle-orm
/
pg-core
/
/opt/canhelp/node_modules/drizzle-orm/pg-core
mkdir
upload
Name
Size
Mode
Actions
columns/
-
0755
rm
query-builders/
-
0755
rm
utils/
-
0755
rm
alias.cjs
1214
0644
edit
dl
rm
alias.cjs.map
716
0644
edit
dl
rm
alias.d.cts
323
0644
edit
dl
rm
alias.d.ts
320
0644
edit
dl
rm
alias.js
211
0644
edit
dl
rm
alias.js.map
678
0644
edit
dl
rm
checks.cjs
1704
0644
edit
dl
rm
checks.cjs.map
1369
0644
edit
dl
rm
checks.d.cts
606
0644
edit
dl
rm
checks.d.ts
603
0644
edit
dl
rm
checks.js
612
0644
edit
dl
rm
checks.js.map
1319
0644
edit
dl
rm
db.cjs
11381
0644
edit
dl
rm
db.cjs.map
29120
0644
edit
dl
rm
db.d.cts
12140
0644
edit
dl
rm
db.d.ts
12122
0644
edit
dl
rm
db.js
9976
0644
edit
dl
rm
db.js.map
29159
0644
edit
dl
rm
dialect.cjs
47536
0644
edit
dl
rm
dialect.cjs.map
69768
0644
edit
dl
rm
dialect.d.cts
3371
0644
edit
dl
rm
dialect.d.ts
3360
0644
edit
dl
rm
dialect.js
43020
0644
edit
dl
rm
dialect.js.map
69749
0644
edit
dl
rm
expressions.cjs
2033
0644
edit
dl
rm
expressions.cjs.map
1471
0644
edit
dl
rm
expressions.d.cts
457
0644
edit
dl
rm
expressions.d.ts
454
0644
edit
dl
rm
expressions.js
604
0644
edit
dl
rm
expressions.js.map
1416
0644
edit
dl
rm
foreign-keys.cjs
3113
0644
edit
dl
rm
foreign-keys.cjs.map
4835
0644
edit
dl
rm
foreign-keys.d.cts
1766
0644
edit
dl
rm
foreign-keys.d.ts
1763
0644
edit
dl
rm
foreign-keys.js
1926
0644
edit
dl
rm
foreign-keys.js.map
4788
0644
edit
dl
rm
index.cjs
3221
0644
edit
dl
rm
index.cjs.map
1176
0644
edit
dl
rm
index.d.cts
683
0644
edit
dl
rm
index.d.ts
662
0644
edit
dl
rm
index.js
695
0644
edit
dl
rm
index.js.map
994
0644
edit
dl
rm
indexes.cjs
4427
0644
edit
dl
rm
indexes.cjs.map
8557
0644
edit
dl
rm
indexes.d.cts
4227
0644
edit
dl
rm
indexes.d.ts
4222
0644
edit
dl
rm
indexes.js
3105
0644
edit
dl
rm
indexes.js.map
8498
0644
edit
dl
rm
policies.cjs
1683
0644
edit
dl
rm
policies.cjs.map
1957
0644
edit
dl
rm
policies.d.cts
1030
0644
edit
dl
rm
policies.d.ts
1026
0644
edit
dl
rm
policies.js
623
0644
edit
dl
rm
policies.js.map
1913
0644
edit
dl
rm
primary-keys.cjs
2164
0644
edit
dl
rm
primary-keys.cjs.map
2647
0644
edit
dl
rm
primary-keys.d.cts
1112
0644
edit
dl
rm
primary-keys.d.ts
1109
0644
edit
dl
rm
primary-keys.js
1006
0644
edit
dl
rm
primary-keys.js.map
2599
0644
edit
dl
rm
roles.cjs
1658
0644
edit
dl
rm
roles.cjs.map
1439
0644
edit
dl
rm
roles.d.cts
429
0644
edit
dl
rm
roles.d.ts
428
0644
edit
dl
rm
roles.js
615
0644
edit
dl
rm
roles.js.map
1395
0644
edit
dl
rm
schema.cjs
2699
0644
edit
dl
rm
schema.cjs.map
2932
0644
edit
dl
rm
schema.d.cts
866
0644
edit
dl
rm
schema.d.ts
860
0644
edit
dl
rm
schema.js
1534
0644
edit
dl
rm
schema.js.map
2924
0644
edit
dl
rm
sequence.cjs
1788
0644
edit
dl
rm
sequence.cjs.map
1469
0644
edit
dl
rm
sequence.d.cts
757
0644
edit
dl
rm
sequence.d.ts
756
0644
edit
dl
rm
sequence.js
617
0644
edit
dl
rm
sequence.js.map
1417
0644
edit
dl
rm
session.cjs
3566
0644
edit
dl
rm
session.cjs.map
7560
0644
edit
dl
rm
session.d.cts
3347
0644
edit
dl
rm
session.d.ts
3339
0644
edit
dl
rm
session.js
2348
0644
edit
dl
rm
session.js.map
7523
0644
edit
dl
rm
subquery.cjs
784
0644
edit
dl
rm
subquery.cjs.map
1630
0644
edit
dl
rm
subquery.d.cts
1465
0644
edit
dl
rm
subquery.d.ts
1460
0644
edit
dl
rm
subquery.js
36
0644
edit
dl
rm
subquery.js.map
71
0644
edit
dl
rm
table.cjs
3699
0644
edit
dl
rm
table.cjs.map
9788
0644
edit
dl
rm
table.d.cts
4373
0644
edit
dl
rm
table.d.ts
4362
0644
edit
dl
rm
table.js
2398
0644
edit
dl
rm
table.js.map
9727
0644
edit
dl
rm
unique-constraint.cjs
2871
0644
edit
dl
rm
unique-constraint.cjs.map
3036
0644
edit
dl
rm
unique-constraint.d.cts
1045
0644
edit
dl
rm
unique-constraint.d.ts
1042
0644
edit
dl
rm
unique-constraint.js
1558
0644
edit
dl
rm
unique-constraint.js.map
2979
0644
edit
dl
rm
utils.cjs
3966
0644
edit
dl
rm
utils.cjs.map
4932
0644
edit
dl
rm
utils.d.cts
2222
0644
edit
dl
rm
utils.d.ts
2213
0644
edit
dl
rm
utils.js
2422
0644
edit
dl
rm
utils.js.map
4872
0644
edit
dl
rm
view-base.cjs
1271
0644
edit
dl
rm
view-base.cjs.map
750
0644
edit
dl
rm
view-base.d.cts
484
0644
edit
dl
rm
view-base.d.ts
482
0644
edit
dl
rm
view-base.js
215
0644
edit
dl
rm
view-base.js.map
714
0644
edit
dl
rm
view-common.cjs
1155
0644
edit
dl
rm
view-common.cjs.map
247
0644
edit
dl
rm
view-common.d.cts
50
0644
edit
dl
rm
view-common.d.ts
50
0644
edit
dl
rm
view-common.js
123
0644
edit
dl
rm
view-common.js.map
204
0644
edit
dl
rm
view.cjs
9339
0644
edit
dl
rm
view.cjs.map
19028
0644
edit
dl
rm
view.d.cts
7548
0644
edit
dl
rm
view.d.ts
7538
0644
edit
dl
rm
view.js
7142
0644
edit
dl
rm
view.js.map
18933
0644
edit
dl
rm
Edit:
/opt/canhelp/node_modules/drizzle-orm/pg-core/db.cjs
(11381B)
"use strict"; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __hasOwnProp = Object.prototype.hasOwnProperty; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); var db_exports = {}; __export(db_exports, { PgDatabase: () => PgDatabase, withReplicas: () => withReplicas }); module.exports = __toCommonJS(db_exports); var import_entity = require("../entity.cjs"); var import_query_builders = require("./query-builders/index.cjs"); var import_selection_proxy = require("../selection-proxy.cjs"); var import_sql = require("../sql/sql.cjs"); var import_subquery = require("../subquery.cjs"); var import_count = require("./query-builders/count.cjs"); var import_query = require("./query-builders/query.cjs"); var import_raw = require("./query-builders/raw.cjs"); var import_refresh_materialized_view = require("./query-builders/refresh-materialized-view.cjs"); class PgDatabase { constructor(dialect, session, schema) { this.dialect = dialect; this.session = session; this._ = schema ? { schema: schema.schema, fullSchema: schema.fullSchema, tableNamesMap: schema.tableNamesMap, session } : { schema: void 0, fullSchema: {}, tableNamesMap: {}, session }; this.query = {}; if (this._.schema) { for (const [tableName, columns] of Object.entries(this._.schema)) { this.query[tableName] = new import_query.RelationalQueryBuilder( schema.fullSchema, this._.schema, this._.tableNamesMap, schema.fullSchema[tableName], columns, dialect, session ); } } } static [import_entity.entityKind] = "PgDatabase"; query; /** * Creates a subquery that defines a temporary named result set as a CTE. * * It is useful for breaking down complex queries into simpler parts and for reusing the result set in subsequent parts of the query. * * See docs: {@link https://orm.drizzle.team/docs/select#with-clause} * * @param alias The alias for the subquery. * * Failure to provide an alias will result in a DrizzleTypeError, preventing the subquery from being referenced in other queries. * * @example * * ```ts * // Create a subquery with alias 'sq' and use it in the select query * const sq = db.$with('sq').as(db.select().from(users).where(eq(users.id, 42))); * * const result = await db.with(sq).select().from(sq); * ``` * * To select arbitrary SQL values as fields in a CTE and reference them in other CTEs or in the main query, you need to add aliases to them: * * ```ts * // Select an arbitrary SQL value as a field in a CTE and reference it in the main query * const sq = db.$with('sq').as(db.select({ * name: sql<string>`upper(${users.name})`.as('name'), * }) * .from(users)); * * const result = await db.with(sq).select({ name: sq.name }).from(sq); * ``` */ $with = (alias, selection) => { const self = this; const as = (qb) => { if (typeof qb === "function") { qb = qb(new import_query_builders.QueryBuilder(self.dialect)); } return new Proxy( new import_subquery.WithSubquery( qb.getSQL(), selection ?? ("getSelectedFields" in qb ? qb.getSelectedFields() ?? {} : {}), alias, true ), new import_selection_proxy.SelectionProxyHandler({ alias, sqlAliasedBehavior: "alias", sqlBehavior: "error" }) ); }; return { as }; }; $count(source, filters) { return new import_count.PgCountBuilder({ source, filters, session: this.session }); } /** * Incorporates a previously defined CTE (using `$with`) into the main query. * * This method allows the main query to reference a temporary named result set. * * See docs: {@link https://orm.drizzle.team/docs/select#with-clause} * * @param queries The CTEs to incorporate into the main query. * * @example * * ```ts * // Define a subquery 'sq' as a CTE using $with * const sq = db.$with('sq').as(db.select().from(users).where(eq(users.id, 42))); * * // Incorporate the CTE 'sq' into the main query and select from it * const result = await db.with(sq).select().from(sq); * ``` */ with(...queries) { const self = this; function select(fields) { return new import_query_builders.PgSelectBuilder({ fields: fields ?? void 0, session: self.session, dialect: self.dialect, withList: queries }); } function selectDistinct(fields) { return new import_query_builders.PgSelectBuilder({ fields: fields ?? void 0, session: self.session, dialect: self.dialect, withList: queries, distinct: true }); } function selectDistinctOn(on, fields) { return new import_query_builders.PgSelectBuilder({ fields: fields ?? void 0, session: self.session, dialect: self.dialect, withList: queries, distinct: { on } }); } function update(table) { return new import_query_builders.PgUpdateBuilder(table, self.session, self.dialect, queries); } function insert(table) { return new import_query_builders.PgInsertBuilder(table, self.session, self.dialect, queries); } function delete_(table) { return new import_query_builders.PgDeleteBase(table, self.session, self.dialect, queries); } return { select, selectDistinct, selectDistinctOn, update, insert, delete: delete_ }; } select(fields) { return new import_query_builders.PgSelectBuilder({ fields: fields ?? void 0, session: this.session, dialect: this.dialect }); } selectDistinct(fields) { return new import_query_builders.PgSelectBuilder({ fields: fields ?? void 0, session: this.session, dialect: this.dialect, distinct: true }); } selectDistinctOn(on, fields) { return new import_query_builders.PgSelectBuilder({ fields: fields ?? void 0, session: this.session, dialect: this.dialect, distinct: { on } }); } /** * Creates an update query. * * Calling this method without `.where()` clause will update all rows in a table. The `.where()` clause specifies which rows should be updated. * * Use `.set()` method to specify which values to update. * * See docs: {@link https://orm.drizzle.team/docs/update} * * @param table The table to update. * * @example * * ```ts * // Update all rows in the 'cars' table * await db.update(cars).set({ color: 'red' }); * * // Update rows with filters and conditions * await db.update(cars).set({ color: 'red' }).where(eq(cars.brand, 'BMW')); * * // Update with returning clause * const updatedCar: Car[] = await db.update(cars) * .set({ color: 'red' }) * .where(eq(cars.id, 1)) * .returning(); * ``` */ update(table) { return new import_query_builders.PgUpdateBuilder(table, this.session, this.dialect); } /** * Creates an insert query. * * Calling this method will create new rows in a table. Use `.values()` method to specify which values to insert. * * See docs: {@link https://orm.drizzle.team/docs/insert} * * @param table The table to insert into. * * @example * * ```ts * // Insert one row * await db.insert(cars).values({ brand: 'BMW' }); * * // Insert multiple rows * await db.insert(cars).values([{ brand: 'BMW' }, { brand: 'Porsche' }]); * * // Insert with returning clause * const insertedCar: Car[] = await db.insert(cars) * .values({ brand: 'BMW' }) * .returning(); * ``` */ insert(table) { return new import_query_builders.PgInsertBuilder(table, this.session, this.dialect); } /** * Creates a delete query. * * Calling this method without `.where()` clause will delete all rows in a table. The `.where()` clause specifies which rows should be deleted. * * See docs: {@link https://orm.drizzle.team/docs/delete} * * @param table The table to delete from. * * @example * * ```ts * // Delete all rows in the 'cars' table * await db.delete(cars); * * // Delete rows with filters and conditions * await db.delete(cars).where(eq(cars.color, 'green')); * * // Delete with returning clause * const deletedCar: Car[] = await db.delete(cars) * .where(eq(cars.id, 1)) * .returning(); * ``` */ delete(table) { return new import_query_builders.PgDeleteBase(table, this.session, this.dialect); } refreshMaterializedView(view) { return new import_refresh_materialized_view.PgRefreshMaterializedView(view, this.session, this.dialect); } authToken; execute(query) { const sequel = typeof query === "string" ? import_sql.sql.raw(query) : query.getSQL(); const builtQuery = this.dialect.sqlToQuery(sequel); const prepared = this.session.prepareQuery( builtQuery, void 0, void 0, false ); return new import_raw.PgRaw( () => prepared.execute(void 0, this.authToken), sequel, builtQuery, (result) => prepared.mapResult(result, true) ); } transaction(transaction, config) { return this.session.transaction(transaction, config); } } const withReplicas = (primary, replicas, getReplica = () => replicas[Math.floor(Math.random() * replicas.length)]) => { const select = (...args) => getReplica(replicas).select(...args); const selectDistinct = (...args) => getReplica(replicas).selectDistinct(...args); const selectDistinctOn = (...args) => getReplica(replicas).selectDistinctOn(...args); const $count = (...args) => getReplica(replicas).$count(...args); const _with = (...args) => getReplica(replicas).with(...args); const $with = (arg) => getReplica(replicas).$with(arg); const update = (...args) => primary.update(...args); const insert = (...args) => primary.insert(...args); const $delete = (...args) => primary.delete(...args); const execute = (...args) => primary.execute(...args); const transaction = (...args) => primary.transaction(...args); const refreshMaterializedView = (...args) => primary.refreshMaterializedView(...args); return { ...primary, update, insert, delete: $delete, execute, transaction, refreshMaterializedView, $primary: primary, select, selectDistinct, selectDistinctOn, $count, $with, with: _with, get query() { return getReplica(replicas).query; } }; }; // Annotate the CommonJS export names for ESM import in node: 0 && (module.exports = { PgDatabase, withReplicas }); //# sourceMappingURL=db.cjs.map
Save
cmd:
run