@spinajs/orm-sqlite 1.2.26 → 1.2.30

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.
@@ -0,0 +1,221 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
10
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
11
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
12
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
13
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
14
+ };
15
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
17
+ };
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ exports.SqliteOrmDriver = void 0;
20
+ /* eslint-disable @typescript-eslint/no-explicit-any */
21
+ /* eslint-disable @typescript-eslint/no-unsafe-argument */
22
+ /* eslint-disable @typescript-eslint/no-unsafe-assignment */
23
+ /* eslint-disable @typescript-eslint/no-unsafe-call */
24
+ /* eslint-disable @typescript-eslint/no-unsafe-member-access */
25
+ /* eslint-disable @typescript-eslint/require-await */
26
+ const index_1 = require("./../../log-common/src/index");
27
+ /* eslint-disable prettier/prettier */
28
+ __exportStar(require("./compilers"), exports);
29
+ const orm_1 = require("@spinajs/orm");
30
+ const sqlite3_1 = require("sqlite3");
31
+ const orm_sql_1 = require("@spinajs/orm-sql");
32
+ const di_1 = require("@spinajs/di");
33
+ const compilers_1 = require("./compilers");
34
+ const statements_1 = require("./statements");
35
+ const converters_1 = require("./converters");
36
+ const exceptions_1 = require("@spinajs/exceptions");
37
+ let SqliteOrmDriver = class SqliteOrmDriver extends orm_sql_1.SqlDriver {
38
+ constructor() {
39
+ super(...arguments);
40
+ this.executionId = 0;
41
+ }
42
+ execute(stmt, params, queryContext) {
43
+ const queryParams = params !== null && params !== void 0 ? params : [];
44
+ if (!this.Db) {
45
+ throw new Error('cannot execute sqlite statement, no db connection avaible');
46
+ }
47
+ const tName = `query-${this.executionId++}`;
48
+ this.Log.timeStart(`query-${tName}`);
49
+ return new Promise((resolve, reject) => {
50
+ switch (queryContext) {
51
+ case orm_1.QueryContext.Update:
52
+ case orm_1.QueryContext.Delete:
53
+ case orm_1.QueryContext.Schema:
54
+ case orm_1.QueryContext.Transaction:
55
+ this.Db.run(stmt, ...queryParams, (err, data) => {
56
+ if (err) {
57
+ reject(err);
58
+ return;
59
+ }
60
+ resolve(data);
61
+ });
62
+ break;
63
+ case orm_1.QueryContext.Select:
64
+ this.Db.all(stmt, ...queryParams, (err, rows) => {
65
+ if (err) {
66
+ reject(err);
67
+ return;
68
+ }
69
+ resolve(rows);
70
+ });
71
+ break;
72
+ case orm_1.QueryContext.Insert:
73
+ this.Db.run(stmt, ...queryParams, function (err) {
74
+ if (err) {
75
+ if (err.code === 'SQLITE_CONSTRAINT') {
76
+ reject(new exceptions_1.ResourceDuplicated(err));
77
+ }
78
+ else {
79
+ reject(err);
80
+ }
81
+ return;
82
+ }
83
+ resolve(this.lastID);
84
+ });
85
+ break;
86
+ }
87
+ })
88
+ .then((val) => {
89
+ const tDiff = this.Log.timeEnd(`query-${tName}`);
90
+ void this.Log.write({
91
+ Level: index_1.LogLevel.Trace,
92
+ Variables: {
93
+ error: null,
94
+ message: `Executed: ${stmt}, bindings: ${params ? params.join(',') : 'none'}`,
95
+ logger: this.Log.Name,
96
+ level: 'trace',
97
+ duration: tDiff,
98
+ },
99
+ });
100
+ return val;
101
+ })
102
+ .catch((err) => {
103
+ const tDiff = this.Log.timeEnd(`query-${tName}`);
104
+ void this.Log.write({
105
+ Level: index_1.LogLevel.Error,
106
+ Variables: {
107
+ error: err,
108
+ message: `Failed: ${stmt}, bindings: ${params ? params.join(',') : 'none'}`,
109
+ logger: this.Log.Name,
110
+ level: 'Error',
111
+ duration: tDiff,
112
+ },
113
+ });
114
+ throw err;
115
+ });
116
+ }
117
+ async ping() {
118
+ return this.Db !== null && this.Db !== undefined;
119
+ }
120
+ async connect() {
121
+ return new Promise((resolve, reject) => {
122
+ this.Db = new sqlite3_1.Database(this.Options.Filename, (err) => {
123
+ if (err) {
124
+ reject(err);
125
+ return;
126
+ }
127
+ resolve(this);
128
+ });
129
+ });
130
+ }
131
+ async disconnect() {
132
+ return new Promise((resolve, reject) => {
133
+ this.Db.close((err) => {
134
+ if (err) {
135
+ reject(err);
136
+ return;
137
+ }
138
+ this.Db = null;
139
+ resolve(this);
140
+ });
141
+ });
142
+ }
143
+ resolve() {
144
+ super.resolve();
145
+ this.Container.register(compilers_1.SqliteColumnCompiler).as(orm_1.ColumnQueryCompiler);
146
+ this.Container.register(compilers_1.SqliteTableQueryCompiler).as(orm_1.TableQueryCompiler);
147
+ this.Container.register(compilers_1.SqliteOrderByCompiler).as(orm_1.OrderByQueryCompiler);
148
+ this.Container.register(statements_1.SqlLiteJoinStatement).as(orm_1.JoinStatement);
149
+ this.Container.register(compilers_1.SqliteOnDuplicateQueryCompiler).as(orm_1.OnDuplicateQueryCompiler);
150
+ this.Container.register(compilers_1.SqliteInsertQueryCompiler).as(orm_1.InsertQueryCompiler);
151
+ this.Container.register(converters_1.SqliteDatetimeValueConverter).as(orm_1.DatetimeValueConverter);
152
+ }
153
+ async transaction(qrOrCallback) {
154
+ if (!qrOrCallback) {
155
+ return;
156
+ }
157
+ await this.execute('BEGIN TRANSACTION', null, orm_1.QueryContext.Transaction);
158
+ try {
159
+ if (Array.isArray(qrOrCallback)) {
160
+ for (const q of qrOrCallback) {
161
+ await q;
162
+ }
163
+ }
164
+ else {
165
+ await qrOrCallback(this);
166
+ }
167
+ await this.execute('COMMIT', null, orm_1.QueryContext.Transaction);
168
+ }
169
+ catch (ex) {
170
+ await this.execute('ROLLBACK', null, orm_1.QueryContext.Transaction);
171
+ throw ex;
172
+ }
173
+ }
174
+ /**
175
+ *
176
+ * Retrieves information about specific DB table if exists. If table not exists returns null
177
+ *
178
+ * @param name - table name to retrieve info
179
+ * @param _schema - optional schema name
180
+ */
181
+ async tableInfo(name, _schema) {
182
+ const tblInfo = (await this.execute(`PRAGMA table_info(${name});`, null, orm_1.QueryContext.Select));
183
+ const indexInfo = (await this.execute(`select type, name, tbl_name, sql FROM sqlite_master WHERE type='index' AND tbl_name='${name}'`, null, orm_1.QueryContext.Select));
184
+ if (!tblInfo || !indexInfo || !Array.isArray(tblInfo) || tblInfo.length === 0) {
185
+ return null;
186
+ }
187
+ const re = /\((.*?)\)/;
188
+ const indices = indexInfo.map((i) => {
189
+ var _a;
190
+ return {
191
+ table: i.tbl_name,
192
+ column_name: (_a = i.sql) === null || _a === void 0 ? void 0 : _a.match(re)[0],
193
+ };
194
+ });
195
+ return tblInfo.map((r) => {
196
+ return {
197
+ Type: r.type,
198
+ MaxLength: -1,
199
+ Comment: '',
200
+ DefaultValue: r.dflt_value,
201
+ NativeType: r.type,
202
+ Unsigned: false,
203
+ Nullable: r.notnull === 0,
204
+ PrimaryKey: r.pk === 1,
205
+ Uuid: false,
206
+ Ignore: false,
207
+ // simply assumpt that integer pkeys are autoincement / auto fill by default
208
+ AutoIncrement: r.pk === 1 && r.type === 'INTEGER',
209
+ Name: r.name,
210
+ Converter: null,
211
+ Schema: _schema ? _schema : this.Options.Database,
212
+ Unique: indices.find((i) => i.column_name && i.column_name.includes(r.name) && i.table === name) !== undefined,
213
+ };
214
+ });
215
+ }
216
+ };
217
+ SqliteOrmDriver = __decorate([
218
+ (0, di_1.Injectable)('orm-driver-sqlite')
219
+ ], SqliteOrmDriver);
220
+ exports.SqliteOrmDriver = SqliteOrmDriver;
221
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { RawQuery } from '@spinajs/orm';
2
+ import { SqlJoinStatement } from '@spinajs/orm-sql';
3
+ import { JoinMethod } from '@spinajs/orm/lib/enums';
4
+ export declare class SqlLiteJoinStatement extends SqlJoinStatement {
5
+ constructor(table: string | RawQuery, method: JoinMethod, foreignKey: string, primaryKey: string, alias: string, tableAlias: string);
6
+ }
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.SqlLiteJoinStatement = void 0;
13
+ /* eslint-disable prettier/prettier */
14
+ const di_1 = require("@spinajs/di");
15
+ const orm_sql_1 = require("@spinajs/orm-sql");
16
+ const enums_1 = require("@spinajs/orm/lib/enums");
17
+ const exceptions_1 = require("@spinajs/exceptions");
18
+ let SqlLiteJoinStatement = class SqlLiteJoinStatement extends orm_sql_1.SqlJoinStatement {
19
+ constructor(table, method, foreignKey, primaryKey, alias, tableAlias) {
20
+ super(table, method, foreignKey, primaryKey, alias, tableAlias);
21
+ if (method === enums_1.JoinMethod.RIGHT || method === enums_1.JoinMethod.RIGHT_OUTER) {
22
+ throw new exceptions_1.NotSupported(`join method ${method} is not supported by sqlite driver`);
23
+ }
24
+ }
25
+ };
26
+ SqlLiteJoinStatement = __decorate([
27
+ (0, di_1.NewInstance)(),
28
+ __metadata("design:paramtypes", [Object, String, String, String, String, String])
29
+ ], SqlLiteJoinStatement);
30
+ exports.SqlLiteJoinStatement = SqlLiteJoinStatement;
31
+ //# sourceMappingURL=statements.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"statements.js","sourceRoot":"","sources":["../../../src/statements.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sCAAsC;AACtC,oCAA0C;AAE1C,8CAAoD;AACpD,kDAAoD;AACpD,oDAAmD;AAGnD,IAAa,oBAAoB,GAAjC,MAAa,oBAAqB,SAAQ,0BAAgB;IACxD,YAAY,KAAwB,EAAE,MAAkB,EAAE,UAAkB,EAAE,UAAkB,EAAE,KAAa,EAAE,UAAkB;QACjI,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;QAEhE,IAAI,MAAM,KAAK,kBAAU,CAAC,KAAK,IAAI,MAAM,KAAK,kBAAU,CAAC,WAAW,EAAE;YACpE,MAAM,IAAI,yBAAY,CAAC,eAAe,MAAM,oCAAoC,CAAC,CAAC;SACnF;IACH,CAAC;CACF,CAAA;AARY,oBAAoB;IADhC,IAAA,gBAAW,GAAE;;GACD,oBAAoB,CAQhC;AARY,oDAAoB"}
@@ -0,0 +1,13 @@
1
+ export interface IIndexInfo {
2
+ type: string;
3
+ name: string;
4
+ tbl_name: string;
5
+ sql: string;
6
+ }
7
+ export interface ITableInfo {
8
+ dflt_value: unknown;
9
+ type: string;
10
+ notnull: number;
11
+ pk: number;
12
+ name: string;
13
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ import { RawQuery } from '@spinajs/orm';
2
+ import { SqlJoinStatement } from '@spinajs/orm-sql';
3
+ import { JoinMethod } from '@spinajs/orm/lib/enums';
4
+ export declare class SqlLiteJoinStatement extends SqlJoinStatement {
5
+ constructor(table: string | RawQuery, method: JoinMethod, foreignKey: string, primaryKey: string, alias: string, tableAlias: string);
6
+ }
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.SqlLiteJoinStatement = void 0;
13
+ /* eslint-disable prettier/prettier */
14
+ const di_1 = require("@spinajs/di");
15
+ const orm_sql_1 = require("@spinajs/orm-sql");
16
+ const enums_1 = require("@spinajs/orm/lib/enums");
17
+ const exceptions_1 = require("@spinajs/exceptions");
18
+ let SqlLiteJoinStatement = class SqlLiteJoinStatement extends orm_sql_1.SqlJoinStatement {
19
+ constructor(table, method, foreignKey, primaryKey, alias, tableAlias) {
20
+ super(table, method, foreignKey, primaryKey, alias, tableAlias);
21
+ if (method === enums_1.JoinMethod.RIGHT || method === enums_1.JoinMethod.RIGHT_OUTER) {
22
+ throw new exceptions_1.NotSupported(`join method ${method} is not supported by sqlite driver`);
23
+ }
24
+ }
25
+ };
26
+ SqlLiteJoinStatement = __decorate([
27
+ (0, di_1.NewInstance)(),
28
+ __metadata("design:paramtypes", [Object, String, String, String, String, String])
29
+ ], SqlLiteJoinStatement);
30
+ exports.SqlLiteJoinStatement = SqlLiteJoinStatement;
31
+ //# sourceMappingURL=statements.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"statements.js","sourceRoot":"","sources":["../src/statements.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sCAAsC;AACtC,oCAA0C;AAE1C,8CAAoD;AACpD,kDAAoD;AACpD,oDAAmD;AAGnD,IAAa,oBAAoB,GAAjC,MAAa,oBAAqB,SAAQ,0BAAgB;IACxD,YAAY,KAAwB,EAAE,MAAkB,EAAE,UAAkB,EAAE,UAAkB,EAAE,KAAa,EAAE,UAAkB;QACjI,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;QAEhE,IAAI,MAAM,KAAK,kBAAU,CAAC,KAAK,IAAI,MAAM,KAAK,kBAAU,CAAC,WAAW,EAAE;YACpE,MAAM,IAAI,yBAAY,CAAC,eAAe,MAAM,oCAAoC,CAAC,CAAC;SACnF;IACH,CAAC;CACF,CAAA;AARY,oBAAoB;IADhC,IAAA,gBAAW,GAAE;;GACD,oBAAoB,CAQhC;AARY,oDAAoB"}
package/package.json CHANGED
@@ -1,30 +1,58 @@
1
1
  {
2
2
  "name": "@spinajs/orm-sqlite",
3
- "version": "1.2.26",
4
- "description": "> TODO: description",
5
- "author": "Grzegorz Beń <grzegorz.ben@coderush.pl>",
6
- "homepage": "https://github.com/spinajs/main#readme",
7
- "license": "ISC",
8
- "main": "lib/orm-sqlite.js",
9
- "directories": {
10
- "lib": "lib",
11
- "test": "__tests__"
3
+ "version": "1.2.30",
4
+ "description": "framework orm sql-lite language module",
5
+ "main": "lib/index.js",
6
+ "private": false,
7
+ "scripts": {
8
+ "build": "npm run clean && npm run compile",
9
+ "compile": "tsc -p tsconfig.build.json",
10
+ "clean": "",
11
+ "test": "ts-mocha -p tsconfig.json test/**/*.test.ts",
12
+ "coverage": "nyc npm run test",
13
+ "build-docs": "rimraf docs && typedoc --options typedoc.json src/",
14
+ "prepare": "npm run build",
15
+ "format": "prettier --write \"src/**/*.ts\"",
16
+ "lint": "eslint -c .eslintrc.js --ext .ts src --fix",
17
+ "prepublishOnly": "npm test && npm run lint",
18
+ "preversion": "npm run lint",
19
+ "version": "npm run format && git add -A src",
20
+ "postversion": "git push && git push --tags"
12
21
  },
13
22
  "files": [
14
- "lib"
23
+ "lib/**/*"
15
24
  ],
16
- "publishConfig": {
17
- "access": "public"
18
- },
25
+ "types": "lib",
19
26
  "repository": {
20
27
  "type": "git",
21
28
  "url": "git+https://github.com/spinajs/main.git"
22
29
  },
23
- "scripts": {
24
- "test": "echo \"Error: run tests from root\" && exit 1"
25
- },
30
+ "keywords": [
31
+ "di",
32
+ "container",
33
+ "spinajs",
34
+ "di"
35
+ ],
36
+ "author": "SpinaJS <spinajs@coderush.pl> (https://github.com/spinajs/main)",
37
+ "license": "MIT",
26
38
  "bugs": {
27
39
  "url": "https://github.com/spinajs/main/issues"
28
40
  },
29
- "gitHead": "db0a4879ea356c677f78938201ddf93e032e1e63"
41
+ "homepage": "https://github.com/spinajs/main#readme",
42
+ "dependencies": {
43
+ "@spinajs/configuration": "^1.2.30",
44
+ "@spinajs/di": "^1.2.30",
45
+ "@spinajs/exceptions": "^1.0.3",
46
+ "@spinajs/log": "^1.2.30",
47
+ "@spinajs/orm": "^1.2.30",
48
+ "@spinajs/orm-sql": "^1.2.30",
49
+ "lodash": "^4.17.15",
50
+ "luxon": "^2.3.0",
51
+ "sqlite3": "^4.2.0",
52
+ "typescript-mix": "^3.1.3"
53
+ },
54
+ "devDependencies": {
55
+ "@types/sqlite3": "^3.1.5"
56
+ },
57
+ "gitHead": "06aef45008bf43baf2d1a91917a1a1eaa23a15cc"
30
58
  }