← Files RivetARCHIVED FILE

node_modules/drizzle-orm/sqlite-core/query-builders/query-builder.cjs

2.44 KB · Nov 5, 2026 · 12:09 UTC

↓ Download file

Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
const require_runtime = require('../../_virtual/_rolldown/runtime.cjs');
const require_sqlite_core_query_builders_select = require('./select.cjs');
let __entity_ts = require("../../entity.cjs");
let __subquery_ts = require("../../subquery.cjs");
let __selection_proxy_ts = require("../../selection-proxy.cjs");
let __sqlite_core_dialect_ts = require("../dialect.cjs");

//#region src/sqlite-core/query-builders/query-builder.ts
var QueryBuilder = class {
	static [__entity_ts.entityKind] = "SQLiteQueryBuilder";
	dialect;
	dialectConfig;
	constructor(dialect) {
		this.dialect = (0, __entity_ts.is)(dialect, __sqlite_core_dialect_ts.SQLiteDialect) ? dialect : void 0;
		this.dialectConfig = (0, __entity_ts.is)(dialect, __sqlite_core_dialect_ts.SQLiteDialect) ? void 0 : dialect;
	}
	$with = (alias, selection) => {
		const queryBuilder = this;
		const as = (qb) => {
			if (typeof qb === "function") qb = qb(queryBuilder);
			return new Proxy(new __subquery_ts.WithSubquery(qb.getSQL(), selection ?? ("getSelectedFields" in qb ? qb.getSelectedFields() ?? {} : {}), alias, true), new __selection_proxy_ts.SelectionProxyHandler({
				alias,
				sqlAliasedBehavior: "alias",
				sqlBehavior: "error"
			}));
		};
		return { as };
	};
	with(...queries) {
		const self = this;
		function select(fields) {
			return new require_sqlite_core_query_builders_select.SQLiteSelectBuilder({
				fields: fields ?? void 0,
				session: void 0,
				dialect: self.getDialect(),
				withList: queries
			});
		}
		function selectDistinct(fields) {
			return new require_sqlite_core_query_builders_select.SQLiteSelectBuilder({
				fields: fields ?? void 0,
				session: void 0,
				dialect: self.getDialect(),
				withList: queries,
				distinct: true
			});
		}
		return {
			select,
			selectDistinct
		};
	}
	select(fields) {
		return new require_sqlite_core_query_builders_select.SQLiteSelectBuilder({
			fields: fields ?? void 0,
			session: void 0,
			dialect: this.getDialect()
		});
	}
	selectDistinct(fields) {
		return new require_sqlite_core_query_builders_select.SQLiteSelectBuilder({
			fields: fields ?? void 0,
			session: void 0,
			dialect: this.getDialect(),
			distinct: true
		});
	}
	getDialect() {
		if (!this.dialect) this.dialect = new __sqlite_core_dialect_ts.SQLiteDialect(this.dialectConfig);
		return this.dialect;
	}
};

//#endregion
exports.QueryBuilder = QueryBuilder;
//# sourceMappingURL=query-builder.cjs.map

SHA-256: 57be5c250f9adeff5325b6a64be5c4932259fb22638dad06832043109bf9cf5b