@ignisia/sql 0.3.0 → 0.4.0
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/README.md +1 -1
- package/dist/cjs/column/index.js +2 -9
- package/dist/cjs/database/alter.d.cts +2 -2
- package/dist/cjs/database/column.d.cts +2 -2
- package/dist/cjs/database/contract.d.cts +2 -2
- package/dist/cjs/database/index.d.cts +2 -2
- package/dist/cjs/database/index.js +1 -1
- package/dist/cjs/database/table.d.cts +2 -2
- package/dist/cjs/database/types.d.cts +1 -1
- package/dist/cjs/database/wrapper.d.cts +3 -3
- package/dist/cjs/database/wrapper.js +1 -17
- package/dist/cjs/{index-CnQVnCEI.d.cts → index-CHxuUiO4.d.cts} +178 -98
- package/dist/cjs/{index-2jl8MRfX.d.cts → index-CZhrzE5r.d.cts} +2 -2
- package/dist/cjs/index.d.cts +2 -2
- package/dist/cjs/migration/index.d.cts +2 -2
- package/dist/cjs/migration/type.d.cts +2 -2
- package/dist/cjs/query/builder.d.cts +3 -3
- package/dist/cjs/query/builder.js +1 -1
- package/dist/cjs/query/condition/common.d.cts +41 -0
- package/dist/cjs/query/condition/common.js +62 -0
- package/dist/cjs/query/condition/core.d.cts +8 -0
- package/dist/cjs/query/condition/core.js +57 -0
- package/dist/cjs/query/condition/index.d.cts +10 -0
- package/dist/cjs/query/condition/index.js +33 -0
- package/dist/cjs/query/condition/not.d.cts +34 -0
- package/dist/cjs/query/condition/not.js +51 -0
- package/dist/cjs/query/condition/raw.d.cts +8 -0
- package/dist/cjs/query/condition/raw.js +54 -0
- package/dist/cjs/query/constants.d.cts +27 -1
- package/dist/cjs/query/constants.js +28 -2
- package/dist/cjs/query/contract.d.cts +2 -2
- package/dist/cjs/query/explain.d.cts +12 -0
- package/dist/cjs/query/explain.js +65 -0
- package/dist/cjs/query/helper.d.cts +3 -3
- package/dist/cjs/query/helper.js +1 -1
- package/dist/cjs/query/index.d.cts +2 -2
- package/dist/cjs/query/index.js +59 -64
- package/dist/cjs/query/join.d.cts +18 -6
- package/dist/cjs/query/join.js +38 -9
- package/dist/cjs/query/sql.d.cts +5 -3
- package/dist/cjs/query/sql.js +46 -15
- package/dist/cjs/query/types.d.cts +2 -2
- package/dist/cjs/query/utilities.d.cts +5 -4
- package/dist/cjs/query/utilities.js +73 -2
- package/dist/cjs/table/index.d.cts +3 -3
- package/dist/cjs/table/types.d.cts +2 -2
- package/dist/cjs/table/utilities.d.cts +2 -2
- package/dist/cjs/types.d.cts +5 -1
- package/dist/cjs/utilities.d.cts +2 -1
- package/dist/cjs/utilities.js +22 -0
- package/dist/esm/column/index.js +3 -10
- package/dist/esm/database/alter.d.ts +2 -2
- package/dist/esm/database/column.d.ts +2 -2
- package/dist/esm/database/contract.d.ts +2 -2
- package/dist/esm/database/index.d.ts +2 -2
- package/dist/esm/database/index.js +2 -2
- package/dist/esm/database/table.d.ts +2 -2
- package/dist/esm/database/types.d.ts +1 -1
- package/dist/esm/database/wrapper.d.ts +3 -3
- package/dist/esm/database/wrapper.js +1 -17
- package/dist/esm/{index-BdpoD4zk.d.ts → index-CjurLJdK.d.ts} +178 -98
- package/dist/esm/{index-BXOAxB_h.d.ts → index-DgOs61lH.d.ts} +2 -2
- package/dist/esm/index.d.ts +2 -2
- package/dist/esm/migration/index.d.ts +2 -2
- package/dist/esm/migration/type.d.ts +2 -2
- package/dist/esm/query/builder.d.ts +3 -3
- package/dist/esm/query/builder.js +1 -1
- package/dist/esm/query/condition/common.d.ts +41 -0
- package/dist/esm/query/condition/common.js +56 -0
- package/dist/esm/query/condition/core.d.ts +8 -0
- package/dist/esm/query/condition/core.js +55 -0
- package/dist/esm/query/condition/index.d.ts +10 -0
- package/dist/esm/query/condition/index.js +4 -0
- package/dist/esm/query/condition/not.d.ts +34 -0
- package/dist/esm/query/condition/not.js +46 -0
- package/dist/esm/query/condition/raw.d.ts +8 -0
- package/dist/esm/query/condition/raw.js +50 -0
- package/dist/esm/query/constants.d.ts +27 -1
- package/dist/esm/query/constants.js +27 -3
- package/dist/esm/query/contract.d.ts +2 -2
- package/dist/esm/query/explain.d.ts +12 -0
- package/dist/esm/query/explain.js +64 -0
- package/dist/esm/query/helper.d.ts +3 -3
- package/dist/esm/query/helper.js +2 -2
- package/dist/esm/query/index.d.ts +2 -2
- package/dist/esm/query/index.js +62 -67
- package/dist/esm/query/join.d.ts +18 -6
- package/dist/esm/query/join.js +37 -9
- package/dist/esm/query/sql.d.ts +5 -3
- package/dist/esm/query/sql.js +46 -17
- package/dist/esm/query/types.d.ts +2 -2
- package/dist/esm/query/utilities.d.ts +5 -4
- package/dist/esm/query/utilities.js +73 -3
- package/dist/esm/table/index.d.ts +3 -3
- package/dist/esm/table/types.d.ts +2 -2
- package/dist/esm/table/utilities.d.ts +2 -2
- package/dist/esm/types.d.ts +5 -1
- package/dist/esm/utilities.d.ts +2 -1
- package/dist/esm/utilities.js +22 -1
- package/package.json +8 -2
- package/dist/cjs/query/condition.d.cts +0 -8
- package/dist/cjs/query/condition.js +0 -109
- package/dist/esm/query/condition.d.ts +0 -8
- package/dist/esm/query/condition.js +0 -101
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import 'bun';
|
|
2
|
-
export {
|
|
2
|
+
export { X as ExecOptions, M as MergeTimestampParanoid, U as TableOptions, V as TableOutput, f as TimestampOptions } from '../index-CHxuUiO4.cjs';
|
|
3
3
|
import '../column/index.cjs';
|
|
4
4
|
import './constants.cjs';
|
|
5
|
-
import '../column/constants.cjs';
|
|
6
5
|
import '../types.cjs';
|
|
7
6
|
import '../query/constants.cjs';
|
|
7
|
+
import '../column/constants.cjs';
|
|
8
8
|
import '../column/types.cjs';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import '../column/constants.cjs';
|
|
2
2
|
import '../column/index.cjs';
|
|
3
3
|
import './constants.cjs';
|
|
4
|
-
export {
|
|
4
|
+
export { K as createdAt, O as defineColumns, N as deletedAt, L as updatedAt } from '../index-CHxuUiO4.cjs';
|
|
5
5
|
import '../column/types.cjs';
|
|
6
|
+
import 'bun';
|
|
6
7
|
import '../types.cjs';
|
|
7
8
|
import '../query/constants.cjs';
|
|
8
|
-
import 'bun';
|
package/dist/cjs/types.d.cts
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
1
|
type UnionToIntersection<U> = (U extends unknown ? (k: U) => void : never) extends (k: infer I) => void ? I : never;
|
|
2
|
+
type BuildTuple<N extends number, T extends unknown[] = []> = T['length'] extends N ? T : BuildTuple<N, [...T, unknown]>;
|
|
3
|
+
type Add<A extends number, B extends number, Result extends unknown[] = [...BuildTuple<A>, ...BuildTuple<B>]> = Result['length'] extends number ? Result['length'] : never;
|
|
4
|
+
type Subtract<A extends number, B extends number> = BuildTuple<A> extends [...BuildTuple<B>, ...infer Rest] ? Rest['length'] : never;
|
|
5
|
+
type Multiply<A extends number, B extends number, Result extends unknown[] = []> = B extends 0 ? Result['length'] : Multiply<A, Subtract<B, 1>, [...Result, ...BuildTuple<A>]>;
|
|
2
6
|
|
|
3
|
-
export type { UnionToIntersection };
|
|
7
|
+
export type { Add, BuildTuple, Multiply, Subtract, UnionToIntersection };
|
package/dist/cjs/utilities.d.cts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
declare function deepClone<T>(obj: T): T;
|
|
2
|
+
declare function cloneDefinition<T extends Record<string, unknown>>(def: T): T;
|
|
2
3
|
declare function quoteIdentifier<T extends string, U extends `"${T}"`>(identifier: T): U;
|
|
3
4
|
|
|
4
|
-
export { deepClone, quoteIdentifier };
|
|
5
|
+
export { cloneDefinition, deepClone, quoteIdentifier };
|
package/dist/cjs/utilities.js
CHANGED
|
@@ -13,9 +13,31 @@ function deepClone(obj) {
|
|
|
13
13
|
}
|
|
14
14
|
return obj;
|
|
15
15
|
}
|
|
16
|
+
function cloneArray(arr) {
|
|
17
|
+
if (arr.length === 0) return [];
|
|
18
|
+
if (typeof arr[0] === "object" && arr[0] !== null) {
|
|
19
|
+
return arr.map((item) => ({ ...item }));
|
|
20
|
+
}
|
|
21
|
+
return arr.slice();
|
|
22
|
+
}
|
|
23
|
+
function cloneDefinition(def) {
|
|
24
|
+
const clone = {};
|
|
25
|
+
for (const key in def) {
|
|
26
|
+
const val = def[key];
|
|
27
|
+
if (val === null || typeof val !== "object") {
|
|
28
|
+
clone[key] = val;
|
|
29
|
+
} else if (Array.isArray(val)) {
|
|
30
|
+
clone[key] = cloneArray(val);
|
|
31
|
+
} else {
|
|
32
|
+
clone[key] = { ...val };
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
return clone;
|
|
36
|
+
}
|
|
16
37
|
function quoteIdentifier(identifier) {
|
|
17
38
|
return `"${identifier.replace(/"/g, '""')}"`;
|
|
18
39
|
}
|
|
19
40
|
|
|
41
|
+
exports.cloneDefinition = cloneDefinition;
|
|
20
42
|
exports.deepClone = deepClone;
|
|
21
43
|
exports.quoteIdentifier = quoteIdentifier;
|
package/dist/esm/column/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Dialect } from '../table/constants.js';
|
|
2
|
-
import {
|
|
2
|
+
import { cloneDefinition } from '../utilities.js';
|
|
3
3
|
import { ColumnTypeMapping, AcceptedColumnTypes } from './constants.js';
|
|
4
4
|
import { columnProperty } from './utils.js';
|
|
5
5
|
|
|
@@ -20,14 +20,7 @@ var Column = class _Column {
|
|
|
20
20
|
if ("values" in options) {
|
|
21
21
|
this.enums = options.values;
|
|
22
22
|
}
|
|
23
|
-
this.definition = {
|
|
24
|
-
autoIncrement: false,
|
|
25
|
-
primaryKey: false,
|
|
26
|
-
notNull: false,
|
|
27
|
-
unique: false,
|
|
28
|
-
comment: null,
|
|
29
|
-
default: void 0
|
|
30
|
-
};
|
|
23
|
+
this.definition = {};
|
|
31
24
|
}
|
|
32
25
|
static define(options) {
|
|
33
26
|
return new _Column(options);
|
|
@@ -66,7 +59,7 @@ var Column = class _Column {
|
|
|
66
59
|
...this.length && { length: this.length },
|
|
67
60
|
...this.enums.length && { values: this.enums }
|
|
68
61
|
});
|
|
69
|
-
Object.assign(column.definition,
|
|
62
|
+
Object.assign(column.definition, cloneDefinition(this.definition));
|
|
70
63
|
return column;
|
|
71
64
|
}
|
|
72
65
|
toQuery() {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { D as Database } from '../index-
|
|
1
|
+
import { D as Database } from '../index-DgOs61lH.js';
|
|
2
2
|
import { Column } from '../column/index.js';
|
|
3
3
|
import { AcceptedColumnTypes } from '../column/constants.js';
|
|
4
|
-
import { T as Table, D as DatabaseDefinition } from '../index-
|
|
4
|
+
import { T as Table, D as DatabaseDefinition } from '../index-CjurLJdK.js';
|
|
5
5
|
import { Dialect } from '../table/constants.js';
|
|
6
6
|
import 'bun';
|
|
7
7
|
import '../query/constants.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { D as Database } from '../index-
|
|
1
|
+
import { D as Database } from '../index-DgOs61lH.js';
|
|
2
2
|
import { Column } from '../column/index.js';
|
|
3
|
-
import { T as Table, D as DatabaseDefinition } from '../index-
|
|
3
|
+
import { T as Table, D as DatabaseDefinition } from '../index-CjurLJdK.js';
|
|
4
4
|
import { Dialect } from '../table/constants.js';
|
|
5
5
|
import 'bun';
|
|
6
6
|
import '../query/constants.js';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { C as ColumnAlterationContract, T as TableAlterationContract } from '../index-
|
|
1
|
+
export { C as ColumnAlterationContract, T as TableAlterationContract } from '../index-DgOs61lH.js';
|
|
2
2
|
import '../column/index.js';
|
|
3
3
|
import '../column/constants.js';
|
|
4
|
-
import '../index-
|
|
4
|
+
import '../index-CjurLJdK.js';
|
|
5
5
|
import '../table/constants.js';
|
|
6
6
|
import 'bun';
|
|
7
7
|
import '../query/constants.js';
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import 'bun';
|
|
2
2
|
import '../column/index.js';
|
|
3
|
-
import '../index-
|
|
3
|
+
import '../index-CjurLJdK.js';
|
|
4
4
|
import '../query/constants.js';
|
|
5
5
|
import '../table/constants.js';
|
|
6
|
-
export { D as Database } from '../index-
|
|
6
|
+
export { D as Database } from '../index-DgOs61lH.js';
|
|
7
7
|
import '../column/constants.js';
|
|
8
8
|
import '../column/types.js';
|
|
9
9
|
import '../types.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import '../table/index.js';
|
|
2
2
|
import { Dialect } from '../table/constants.js';
|
|
3
|
-
import { alterColumnType, setColumnDefault, dropColumnDefault, dropColumnNotNull } from './alter.js';
|
|
3
|
+
import { alterColumnType, setColumnDefault, dropColumnDefault, setColumnNotNull, dropColumnNotNull } from './alter.js';
|
|
4
4
|
import { addColumn, renameColumn, dropColumn } from './column.js';
|
|
5
5
|
import { createTable, renameTable, dropTable } from './table.js';
|
|
6
6
|
import { DatabaseMysql, DatabasePsql, DatabaseSqlite } from './wrapper.js';
|
|
@@ -53,7 +53,7 @@ var Database = class _Database {
|
|
|
53
53
|
this.dropColumnDefault = dropColumnDefault.bind(
|
|
54
54
|
this
|
|
55
55
|
);
|
|
56
|
-
this.setColumnNotNull =
|
|
56
|
+
this.setColumnNotNull = setColumnNotNull.bind(
|
|
57
57
|
this
|
|
58
58
|
);
|
|
59
59
|
this.dropColumnNotNull = dropColumnNotNull.bind(
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { D as Database } from '../index-
|
|
1
|
+
import { D as Database } from '../index-DgOs61lH.js';
|
|
2
2
|
import { Column } from '../column/index.js';
|
|
3
|
-
import { T as Table, D as DatabaseDefinition,
|
|
3
|
+
import { T as Table, D as DatabaseDefinition, f as TimestampOptions, M as MergeTimestampParanoid } from '../index-CjurLJdK.js';
|
|
4
4
|
import { Dialect } from '../table/constants.js';
|
|
5
5
|
import 'bun';
|
|
6
6
|
import '../query/constants.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import 'bun';
|
|
2
2
|
import '../column/index.js';
|
|
3
|
-
export { D as DatabaseDefinition,
|
|
3
|
+
export { D as DatabaseDefinition, g as DatabaseDialect, h as DatabaseExecOptions, q as DatabaseOptions, i as MysqlConfig, P as PostgresConfig, J as SqlConfig, S as SqlConfigMapping, j as SqliteConfig } from '../index-CjurLJdK.js';
|
|
4
4
|
import '../table/constants.js';
|
|
5
5
|
import '../column/constants.js';
|
|
6
6
|
import '../column/types.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { SQL, TransactionSQL } from 'bun';
|
|
2
2
|
import { Dialect } from '../table/constants.js';
|
|
3
|
-
import { S as SqlConfigMapping,
|
|
3
|
+
import { S as SqlConfigMapping, g as DatabaseDialect, h as DatabaseExecOptions, P as PostgresConfig, i as MysqlConfig, j as SqliteConfig } from '../index-CjurLJdK.js';
|
|
4
4
|
import '../column/index.js';
|
|
5
5
|
import '../column/constants.js';
|
|
6
6
|
import '../column/types.js';
|
|
@@ -22,8 +22,8 @@ declare class BaseSql<DbDialect extends Dialect, Options extends SqlConfigMappin
|
|
|
22
22
|
declare class DatabasePsql extends BaseSql<typeof Dialect.POSTGRES, PostgresConfig> {
|
|
23
23
|
constructor(options: PostgresConfig);
|
|
24
24
|
}
|
|
25
|
-
declare class DatabaseMysql extends BaseSql<typeof Dialect.MYSQL,
|
|
26
|
-
constructor(options:
|
|
25
|
+
declare class DatabaseMysql extends BaseSql<typeof Dialect.MYSQL, MysqlConfig> {
|
|
26
|
+
constructor(options: MysqlConfig);
|
|
27
27
|
}
|
|
28
28
|
declare class DatabaseSqlite extends BaseSql<typeof Dialect.SQLITE, SqliteConfig> {
|
|
29
29
|
constructor(options: SqliteConfig);
|
|
@@ -39,23 +39,7 @@ var BaseSql = class {
|
|
|
39
39
|
if (!options.params) {
|
|
40
40
|
return client.unsafe(options.sql);
|
|
41
41
|
}
|
|
42
|
-
|
|
43
|
-
if (param === null || typeof param === "string" || typeof param === "number" || typeof param === "boolean" || typeof param === "bigint") {
|
|
44
|
-
return param;
|
|
45
|
-
}
|
|
46
|
-
if (param === void 0) {
|
|
47
|
-
return null;
|
|
48
|
-
}
|
|
49
|
-
if (param instanceof Date) {
|
|
50
|
-
return param.toISOString();
|
|
51
|
-
}
|
|
52
|
-
try {
|
|
53
|
-
return JSON.stringify(param);
|
|
54
|
-
} catch {
|
|
55
|
-
return null;
|
|
56
|
-
}
|
|
57
|
-
});
|
|
58
|
-
return client.unsafe(options.sql, params);
|
|
42
|
+
return client.unsafe(options.sql, options.params);
|
|
59
43
|
}
|
|
60
44
|
async transaction(fn) {
|
|
61
45
|
return this.client.transaction(fn);
|