@rawsql-ts/sql-contract 0.1.0 → 0.3.1

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.
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mapper/index.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- /** Parameters forwarded to SQL executors, either positional arrays or named records. */
2
- export type QueryParams = unknown[] | Record<string, unknown>;
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=query-params.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"query-params.js","sourceRoot":"","sources":["../src/query-params.ts"],"names":[],"mappings":""}
@@ -1,52 +0,0 @@
1
- import type { QueryParams } from '../query-params';
2
- import { writerPresets } from './presets';
3
- import type { WriterPreset } from './presets';
4
- /** Primitive values that can be serialized as SQL parameters. */
5
- export type ParamValue = string | number | boolean | null | bigint | Date | Uint8Array;
6
- /** Values keyed by column that may include undefined entries which are dropped. */
7
- export type RecordValues = Record<string, ParamValue | undefined>;
8
- /** Key columns used for equality-only WHERE clauses in update/remove helpers. */
9
- export type Key = Record<string, ParamValue>;
10
- /** Supported placeholder styles verified against the SQL formatter presets. */
11
- export type PlaceholderStyle = 'indexed' | 'question' | 'named';
12
- /** Per-statement options that remain specific to individual INSERT/UPDATE/DELETE calls. */
13
- export interface WriterStatementOptions {
14
- allowUnsafeIdentifiers?: boolean;
15
- /**
16
- * Optional columns to expose via a `RETURNING` clause; `'all'` maps to `RETURNING *`.
17
- * Sorted column lists guarantee deterministic SQL, and the writer itself stays DBMS-agnostic.
18
- */
19
- returning?: readonly string[] | 'all';
20
- }
21
- /** Legacy compatibility alias for historical usage. */
22
- export type WriterCoreOptions = WriterStatementOptions;
23
- type ReturningMetaValue = readonly string[] | '*';
24
- export type WriterStatementResult = {
25
- sql: string;
26
- params: QueryParams;
27
- meta?: {
28
- returning?: ReturningMetaValue;
29
- };
30
- };
31
- export type WriterBuild = {
32
- insert(table: string, values: RecordValues, options?: WriterStatementOptions): WriterStatementResult;
33
- update(table: string, values: RecordValues, where: Key, options?: WriterStatementOptions): WriterStatementResult;
34
- remove(table: string, where: Key, options?: WriterStatementOptions): WriterStatementResult;
35
- };
36
- export type WriterExecutor = (sql: string, params: QueryParams) => Promise<unknown>;
37
- export type Writer = {
38
- insert(table: string, values: RecordValues, options?: WriterStatementOptions): Promise<unknown>;
39
- update(table: string, values: RecordValues, where: Key, options?: WriterStatementOptions): Promise<unknown>;
40
- remove(table: string, where: Key, options?: WriterStatementOptions): Promise<unknown>;
41
- build: WriterBuild;
42
- };
43
- export declare const insert: (table: string, values: RecordValues, options?: WriterStatementOptions) => WriterStatementResult;
44
- export declare const update: (table: string, values: RecordValues, where: Key, options?: WriterStatementOptions) => WriterStatementResult;
45
- export declare const remove: (table: string, where: Key, options?: WriterStatementOptions) => WriterStatementResult;
46
- /** Creates a writer bound to the provided executor and preset-driven configuration. */
47
- export declare function createWriterFromExecutor(executor: WriterExecutor, preset?: WriterPreset): Writer;
48
- /** Convenience alias for `createWriterFromExecutor`. */
49
- export declare const createWriter: typeof createWriterFromExecutor;
50
- export type { QueryParams } from '../query-params';
51
- export { writerPresets };
52
- export type { WriterPreset };
@@ -1,155 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.writerPresets = exports.createWriter = exports.remove = exports.update = exports.insert = void 0;
4
- exports.createWriterFromExecutor = createWriterFromExecutor;
5
- const presets_1 = require("./presets");
6
- Object.defineProperty(exports, "writerPresets", { enumerable: true, get: function () { return presets_1.writerPresets; } });
7
- const identifierPattern = /^[A-Za-z_][A-Za-z0-9_]*$/;
8
- const identifierControlPattern = /[\u0000-\u001F\u007F]/;
9
- const assertIdentifierBasics = (identifier, kind) => {
10
- if (identifier.length === 0) {
11
- throw new Error(`${kind} identifier must not be empty`);
12
- }
13
- if (identifierControlPattern.test(identifier)) {
14
- throw new Error(`identifier "${identifier}" must not contain control characters`);
15
- }
16
- };
17
- const assertColumnIdentifier = (identifier, allowUnsafe) => {
18
- assertIdentifierBasics(identifier, 'column');
19
- if (!allowUnsafe && !identifierPattern.test(identifier)) {
20
- throw new Error(`column identifier "${identifier}" must match ${identifierPattern}`);
21
- }
22
- };
23
- const assertTableIdentifier = (identifier, allowUnsafe) => {
24
- assertIdentifierBasics(identifier, 'table');
25
- if (!allowUnsafe && !identifierPattern.test(identifier)) {
26
- throw new Error(`table identifier "${identifier}" must match ${identifierPattern}`);
27
- }
28
- };
29
- const hasParamValueEntry = (entry) => entry[1] !== undefined;
30
- const sortEntries = (entries) => entries.slice().sort(([a], [b]) => a.localeCompare(b));
31
- const ensureEntries = (entries, kind) => {
32
- if (entries.length === 0) {
33
- throw new Error(kind === 'insert' ? 'insert values must not be empty' : 'update values must not be empty');
34
- }
35
- };
36
- const buildReturningClause = (returning, allowUnsafe) => {
37
- if (returning === undefined) {
38
- return undefined;
39
- }
40
- if (returning === 'all') {
41
- return { clause: 'RETURNING *', meta: '*' };
42
- }
43
- if (!Array.isArray(returning)) {
44
- throw new Error('returning must be "all" or an array of column names');
45
- }
46
- if (returning.length === 0) {
47
- throw new Error('returning columns must not be empty');
48
- }
49
- const columns = returning.slice().sort((a, b) => a.localeCompare(b));
50
- for (const column of columns) {
51
- assertColumnIdentifier(column, allowUnsafe);
52
- }
53
- return {
54
- clause: `RETURNING ${columns.join(', ')}`,
55
- meta: columns,
56
- };
57
- };
58
- const finalizeStatement = (baseSql, params, returningClause) => {
59
- const sql = returningClause ? `${baseSql} ${returningClause.clause}` : baseSql;
60
- const result = { sql, params };
61
- if (returningClause) {
62
- result.meta = { returning: returningClause.meta };
63
- }
64
- return result;
65
- };
66
- const buildWhereClause = (key, allowUnsafe, binder) => {
67
- const entries = sortEntries(Object.entries(key));
68
- if (entries.length === 0) {
69
- throw new Error('where must not be empty');
70
- }
71
- const clauses = entries.map(([column, value]) => {
72
- assertColumnIdentifier(column, allowUnsafe);
73
- if (value === undefined) {
74
- throw new Error('key values must not be undefined');
75
- }
76
- return `${column} = ${binder.bind(value, column)}`;
77
- });
78
- return {
79
- clause: `WHERE ${clauses.join(' AND ')}`,
80
- };
81
- };
82
- const createBuilderSet = (preset) => ({
83
- insert: (table, values, options) => buildInsertStatement(table, values, options, preset),
84
- update: (table, values, where, options) => buildUpdateStatement(table, values, where, options, preset),
85
- remove: (table, where, options) => buildRemoveStatement(table, where, options, preset),
86
- });
87
- const buildInsertStatement = (table, values, options, preset) => {
88
- var _a, _b;
89
- const allowUnsafe = (options === null || options === void 0 ? void 0 : options.allowUnsafeIdentifiers) === true;
90
- const binder = preset.createBinder();
91
- assertTableIdentifier(table, allowUnsafe);
92
- const entries = sortEntries(Object.entries(values).filter(hasParamValueEntry));
93
- ensureEntries(entries, 'insert');
94
- const columns = [];
95
- const placeholders = [];
96
- for (const [column, value] of entries) {
97
- assertColumnIdentifier(column, allowUnsafe);
98
- columns.push(column);
99
- placeholders.push(binder.bind(value, column));
100
- }
101
- const returningClause = buildReturningClause(options === null || options === void 0 ? void 0 : options.returning, allowUnsafe);
102
- const baseSql = `INSERT INTO ${table} (${columns.join(', ')}) VALUES (${placeholders.join(', ')})`;
103
- const result = finalizeStatement(baseSql, binder.params, returningClause);
104
- return (_b = (_a = preset.finalize) === null || _a === void 0 ? void 0 : _a.call(preset, result)) !== null && _b !== void 0 ? _b : result;
105
- };
106
- const buildUpdateStatement = (table, values, where, options, preset) => {
107
- var _a, _b;
108
- const allowUnsafe = (options === null || options === void 0 ? void 0 : options.allowUnsafeIdentifiers) === true;
109
- const binder = preset.createBinder();
110
- assertTableIdentifier(table, allowUnsafe);
111
- const entries = sortEntries(Object.entries(values).filter(hasParamValueEntry));
112
- ensureEntries(entries, 'update');
113
- const clauses = entries.map(([column, value]) => {
114
- assertColumnIdentifier(column, allowUnsafe);
115
- return `${column} = ${binder.bind(value, column)}`;
116
- });
117
- const whereClause = buildWhereClause(where, allowUnsafe, binder);
118
- const returningClause = buildReturningClause(options === null || options === void 0 ? void 0 : options.returning, allowUnsafe);
119
- const baseSql = `UPDATE ${table} SET ${clauses.join(', ')} ${whereClause.clause}`;
120
- const result = finalizeStatement(baseSql, binder.params, returningClause);
121
- return (_b = (_a = preset.finalize) === null || _a === void 0 ? void 0 : _a.call(preset, result)) !== null && _b !== void 0 ? _b : result;
122
- };
123
- const buildRemoveStatement = (table, where, options, preset) => {
124
- var _a, _b;
125
- const allowUnsafe = (options === null || options === void 0 ? void 0 : options.allowUnsafeIdentifiers) === true;
126
- const binder = preset.createBinder();
127
- assertTableIdentifier(table, allowUnsafe);
128
- const whereClause = buildWhereClause(where, allowUnsafe, binder);
129
- const returningClause = buildReturningClause(options === null || options === void 0 ? void 0 : options.returning, allowUnsafe);
130
- const baseSql = `DELETE FROM ${table} ${whereClause.clause}`;
131
- const result = finalizeStatement(baseSql, binder.params, returningClause);
132
- return (_b = (_a = preset.finalize) === null || _a === void 0 ? void 0 : _a.call(preset, result)) !== null && _b !== void 0 ? _b : result;
133
- };
134
- const legacyPreset = presets_1.writerPresets.indexed();
135
- const legacyBuilders = createBuilderSet(legacyPreset);
136
- exports.insert = legacyBuilders.insert;
137
- exports.update = legacyBuilders.update;
138
- exports.remove = legacyBuilders.remove;
139
- /** Creates a writer bound to the provided executor and preset-driven configuration. */
140
- function createWriterFromExecutor(executor, preset = presets_1.writerPresets.indexed()) {
141
- const builders = createBuilderSet(preset);
142
- const execute = (builder) => async (...args) => {
143
- const result = builder(...args);
144
- await executor(result.sql, result.params);
145
- };
146
- return {
147
- insert: execute(builders.insert),
148
- update: execute(builders.update),
149
- remove: execute(builders.remove),
150
- build: builders,
151
- };
152
- }
153
- /** Convenience alias for `createWriterFromExecutor`. */
154
- exports.createWriter = createWriterFromExecutor;
155
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/writer/index.ts"],"names":[],"mappings":";;;AA0QA,4DAkBC;AA3RD,uCAAyC;AAiShC,8FAjSA,uBAAa,OAiSA;AAxPtB,MAAM,iBAAiB,GAAG,0BAA0B,CAAA;AACpD,MAAM,wBAAwB,GAAG,uBAAuB,CAAA;AAExD,MAAM,sBAAsB,GAAG,CAAC,UAAkB,EAAE,IAAwB,EAAE,EAAE;IAC9E,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,+BAA+B,CAAC,CAAA;IACzD,CAAC;IAED,IAAI,wBAAwB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,eAAe,UAAU,uCAAuC,CAAC,CAAA;IACnF,CAAC;AACH,CAAC,CAAA;AAED,MAAM,sBAAsB,GAAG,CAAC,UAAkB,EAAE,WAAqB,EAAE,EAAE;IAC3E,sBAAsB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;IAC5C,IAAI,CAAC,WAAW,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QACxD,MAAM,IAAI,KAAK,CAAC,sBAAsB,UAAU,gBAAgB,iBAAiB,EAAE,CAAC,CAAA;IACtF,CAAC;AACH,CAAC,CAAA;AAED,MAAM,qBAAqB,GAAG,CAAC,UAAkB,EAAE,WAAqB,EAAE,EAAE;IAC1E,sBAAsB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;IAC3C,IAAI,CAAC,WAAW,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QACxD,MAAM,IAAI,KAAK,CAAC,qBAAqB,UAAU,gBAAgB,iBAAiB,EAAE,CAAC,CAAA;IACrF,CAAC;AACH,CAAC,CAAA;AAED,MAAM,kBAAkB,GAAG,CAAC,KAAuC,EAAiC,EAAE,CACpG,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,CAAA;AAExB,MAAM,WAAW,GAAG,CAAC,OAA+B,EAA0B,EAAE,CAC9E,OAAO,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;AAExD,MAAM,aAAa,GAAG,CAAC,OAA2B,EAAE,IAAyB,EAAE,EAAE;IAC/E,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CACb,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC,CAAC,iCAAiC,CAC1F,CAAA;IACH,CAAC;AACH,CAAC,CAAA;AAED,MAAM,oBAAoB,GAAG,CAC3B,SAA8C,EAC9C,WAAoB,EACS,EAAE;IAC/B,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;QACxB,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,GAAG,EAAE,CAAA;IAC7C,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAA;IACxE,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;IACxD,CAAC;IAED,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;IACpE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,sBAAsB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IAC7C,CAAC;IAED,OAAO;QACL,MAAM,EAAE,aAAa,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QACzC,IAAI,EAAE,OAA4B;KACnC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,iBAAiB,GAAG,CACxB,OAAe,EACf,MAAmB,EACnB,eAAiC,EACjC,EAAE;IACF,MAAM,GAAG,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,OAAO,IAAI,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,OAAO,CAAA;IAC9E,MAAM,MAAM,GAA0B,EAAE,GAAG,EAAE,MAAM,EAAE,CAAA;IAErD,IAAI,eAAe,EAAE,CAAC;QACpB,MAAM,CAAC,IAAI,GAAG,EAAE,SAAS,EAAE,eAAe,CAAC,IAAI,EAAE,CAAA;IACnD,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAED,MAAM,gBAAgB,GAAG,CACvB,GAAQ,EACR,WAAoB,EACpB,MAA2D,EAC3D,EAAE;IACF,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAA;IAChD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;IAC5C,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE;QAC9C,sBAAsB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;QAC3C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAA;QACrD,CAAC;QACD,OAAO,GAAG,MAAM,MAAM,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAA;IACpD,CAAC,CAAC,CAAA;IAEF,OAAO;QACL,MAAM,EAAE,SAAS,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;KACzC,CAAA;AACH,CAAC,CAAA;AAkCD,MAAM,gBAAgB,GAAG,CAAC,MAAoB,EAAe,EAAE,CAAC,CAAC;IAC/D,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC;IACxF,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CACxC,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC;IAC7D,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,oBAAoB,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC;CACvF,CAAC,CAAA;AAEF,MAAM,oBAAoB,GAAG,CAC3B,KAAa,EACb,MAAoB,EACpB,OAA2C,EAC3C,MAAoB,EACG,EAAE;;IACzB,MAAM,WAAW,GAAG,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,sBAAsB,MAAK,IAAI,CAAA;IAC5D,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,EAAE,CAAA;IACpC,qBAAqB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAA;IACzC,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAA;IAC9E,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IAEhC,MAAM,OAAO,GAAa,EAAE,CAAA;IAC5B,MAAM,YAAY,GAAa,EAAE,CAAA;IACjC,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE,CAAC;QACtC,sBAAsB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;QAC3C,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACpB,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAA;IAC/C,CAAC;IAED,MAAM,eAAe,GAAG,oBAAoB,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,EAAE,WAAW,CAAC,CAAA;IAC7E,MAAM,OAAO,GAAG,eAAe,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAA;IAClG,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IACzE,OAAO,MAAA,MAAA,MAAM,CAAC,QAAQ,uDAAG,MAAM,CAAC,mCAAI,MAAM,CAAA;AAC5C,CAAC,CAAA;AAED,MAAM,oBAAoB,GAAG,CAC3B,KAAa,EACb,MAAoB,EACpB,KAAU,EACV,OAA2C,EAC3C,MAAoB,EACG,EAAE;;IACzB,MAAM,WAAW,GAAG,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,sBAAsB,MAAK,IAAI,CAAA;IAC5D,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,EAAE,CAAA;IACpC,qBAAqB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAA;IACzC,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAA;IAC9E,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IAEhC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE;QAC9C,sBAAsB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;QAC3C,OAAO,GAAG,MAAM,MAAM,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAA;IACpD,CAAC,CAAC,CAAA;IAEF,MAAM,WAAW,GAAG,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC,CAAA;IAChE,MAAM,eAAe,GAAG,oBAAoB,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,EAAE,WAAW,CAAC,CAAA;IAC7E,MAAM,OAAO,GAAG,UAAU,KAAK,QAAQ,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,MAAM,EAAE,CAAA;IACjF,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IACzE,OAAO,MAAA,MAAA,MAAM,CAAC,QAAQ,uDAAG,MAAM,CAAC,mCAAI,MAAM,CAAA;AAC5C,CAAC,CAAA;AAED,MAAM,oBAAoB,GAAG,CAC3B,KAAa,EACb,KAAU,EACV,OAA2C,EAC3C,MAAoB,EACG,EAAE;;IACzB,MAAM,WAAW,GAAG,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,sBAAsB,MAAK,IAAI,CAAA;IAC5D,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,EAAE,CAAA;IACpC,qBAAqB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAA;IACzC,MAAM,WAAW,GAAG,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC,CAAA;IAChE,MAAM,eAAe,GAAG,oBAAoB,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,EAAE,WAAW,CAAC,CAAA;IAC7E,MAAM,OAAO,GAAG,eAAe,KAAK,IAAI,WAAW,CAAC,MAAM,EAAE,CAAA;IAC5D,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IACzE,OAAO,MAAA,MAAA,MAAM,CAAC,QAAQ,uDAAG,MAAM,CAAC,mCAAI,MAAM,CAAA;AAC5C,CAAC,CAAA;AAED,MAAM,YAAY,GAAG,uBAAa,CAAC,OAAO,EAAE,CAAA;AAC5C,MAAM,cAAc,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAA;AAExC,QAAA,MAAM,GAAG,cAAc,CAAC,MAAM,CAAA;AAC9B,QAAA,MAAM,GAAG,cAAc,CAAC,MAAM,CAAA;AAC9B,QAAA,MAAM,GAAG,cAAc,CAAC,MAAM,CAAA;AAE3C,uFAAuF;AACvF,SAAgB,wBAAwB,CACtC,QAAwB,EACxB,SAAuB,uBAAa,CAAC,OAAO,EAAE;IAE9C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAA;IACzC,MAAM,OAAO,GACX,CAA2C,OAAU,EAAE,EAAE,CACzD,KAAK,EAAE,GAAG,IAAmB,EAAE,EAAE;QAC/B,MAAM,MAAM,GAAI,OAA6D,CAAC,GAAG,IAAI,CAAC,CAAA;QACtF,MAAM,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;IAC3C,CAAC,CAAA;IAEH,OAAO;QACL,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;QAChC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;QAChC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;QAChC,KAAK,EAAE,QAAQ;KAChB,CAAA;AACH,CAAC;AAED,wDAAwD;AAC3C,QAAA,YAAY,GAAG,wBAAwB,CAAA"}
@@ -1,25 +0,0 @@
1
- import type { ParamValue, WriterStatementResult, PlaceholderStyle } from './index';
2
- import type { QueryParams } from '../query-params';
3
- /** Indicates how writer parameters are emitted at runtime. */
4
- export type WriterParamsShape = 'array' | 'object';
5
- /** Tracks placeholders and their accumulated values for a single statement. */
6
- export interface WriterPlaceholderBinder {
7
- readonly params: QueryParams;
8
- bind(value: ParamValue, column: string): string;
9
- }
10
- /** Defines how placeholders and parameter accumulation behave for a writer instance. */
11
- export interface WriterPreset {
12
- readonly placeholderStyle: PlaceholderStyle;
13
- readonly paramsShape: WriterParamsShape;
14
- createBinder(): WriterPlaceholderBinder;
15
- finalize?(result: WriterStatementResult): WriterStatementResult;
16
- }
17
- type NamedWriterPresetOptions = {
18
- formatPlaceholder?: (paramName: string) => string;
19
- };
20
- export declare const writerPresets: {
21
- indexed(): WriterPreset;
22
- anonymous(): WriterPreset;
23
- named(options?: NamedWriterPresetOptions): WriterPreset;
24
- };
25
- export {};
@@ -1,67 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.writerPresets = void 0;
4
- const sanitizeColumn = (column) => column
5
- .replace(/[^A-Za-z0-9_]/g, '_')
6
- .replace(/__+/g, '_')
7
- .replace(/^_+|_+$/g, '') || 'param';
8
- const createNumberedBinder = (format) => {
9
- let index = 0;
10
- const params = [];
11
- return {
12
- params,
13
- bind(value, _column) {
14
- index += 1;
15
- params.push(value);
16
- return format(index);
17
- },
18
- };
19
- };
20
- exports.writerPresets = {
21
- indexed() {
22
- return {
23
- placeholderStyle: 'indexed',
24
- paramsShape: 'array',
25
- createBinder: () => createNumberedBinder((index) => `$${index}`),
26
- };
27
- },
28
- anonymous() {
29
- return {
30
- placeholderStyle: 'question',
31
- paramsShape: 'array',
32
- createBinder: () => {
33
- const params = [];
34
- return {
35
- params,
36
- bind(value) {
37
- params.push(value);
38
- return '?';
39
- },
40
- };
41
- },
42
- };
43
- },
44
- named(options) {
45
- var _a;
46
- const formatPlaceholder = (_a = options === null || options === void 0 ? void 0 : options.formatPlaceholder) !== null && _a !== void 0 ? _a : ((paramName) => paramName);
47
- return {
48
- placeholderStyle: 'named',
49
- paramsShape: 'object',
50
- createBinder: () => {
51
- let counter = 0;
52
- const params = {};
53
- return {
54
- params,
55
- bind(value, column) {
56
- counter += 1;
57
- const sanitized = sanitizeColumn(column);
58
- const paramName = `${sanitized}_${counter}`;
59
- params[paramName] = value;
60
- return formatPlaceholder(paramName);
61
- },
62
- };
63
- },
64
- };
65
- },
66
- };
67
- //# sourceMappingURL=presets.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"presets.js","sourceRoot":"","sources":["../../src/writer/presets.ts"],"names":[],"mappings":";;;AAwBA,MAAM,cAAc,GAAG,CAAC,MAAc,EAAE,EAAE,CACxC,MAAM;KACH,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC;KAC9B,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;KACpB,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,OAAO,CAAA;AAEvC,MAAM,oBAAoB,GAAG,CAAC,MAAiC,EAAE,EAAE;IACjE,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,MAAM,MAAM,GAAiB,EAAE,CAAA;IAC/B,OAAO;QACL,MAAM;QACN,IAAI,CAAC,KAAiB,EAAE,OAAe;YACrC,KAAK,IAAI,CAAC,CAAA;YACV,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAClB,OAAO,MAAM,CAAC,KAAK,CAAC,CAAA;QACtB,CAAC;KACF,CAAA;AACH,CAAC,CAAA;AAEY,QAAA,aAAa,GAAG;IAC3B,OAAO;QACL,OAAO;YACL,gBAAgB,EAAE,SAAS;YAC3B,WAAW,EAAE,OAAO;YACpB,YAAY,EAAE,GAAG,EAAE,CAAC,oBAAoB,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC;SACjE,CAAA;IACH,CAAC;IACD,SAAS;QACP,OAAO;YACL,gBAAgB,EAAE,UAAU;YAC5B,WAAW,EAAE,OAAO;YACpB,YAAY,EAAE,GAAG,EAAE;gBACjB,MAAM,MAAM,GAAiB,EAAE,CAAA;gBAC/B,OAAO;oBACL,MAAM;oBACN,IAAI,CAAC,KAAiB;wBACpB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;wBAClB,OAAO,GAAG,CAAA;oBACZ,CAAC;iBACF,CAAA;YACH,CAAC;SACF,CAAA;IACH,CAAC;IACD,KAAK,CAAC,OAAkC;;QACtC,MAAM,iBAAiB,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,iBAAiB,mCAAI,CAAC,CAAC,SAAiB,EAAE,EAAE,CAAC,SAAS,CAAC,CAAA;QAE1F,OAAO;YACL,gBAAgB,EAAE,OAAO;YACzB,WAAW,EAAE,QAAQ;YACrB,YAAY,EAAE,GAAG,EAAE;gBACjB,IAAI,OAAO,GAAG,CAAC,CAAA;gBACf,MAAM,MAAM,GAA+B,EAAE,CAAA;gBAC7C,OAAO;oBACL,MAAM;oBACN,IAAI,CAAC,KAAiB,EAAE,MAAc;wBACpC,OAAO,IAAI,CAAC,CAAA;wBACZ,MAAM,SAAS,GAAG,cAAc,CAAC,MAAM,CAAC,CAAA;wBACxC,MAAM,SAAS,GAAG,GAAG,SAAS,IAAI,OAAO,EAAE,CAAA;wBAC3C,MAAM,CAAC,SAAS,CAAC,GAAG,KAAK,CAAA;wBACzB,OAAO,iBAAiB,CAAC,SAAS,CAAC,CAAA;oBACrC,CAAC;iBACF,CAAA;YACH,CAAC;SACF,CAAA;IACH,CAAC;CACF,CAAA"}