@spinajs/orm-lowdb 2.0.180 → 2.0.181
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/lib/cjs/index.d.ts +63 -63
- package/lib/cjs/index.js +265 -265
- package/lib/cjs/index.js.map +1 -1
- package/lib/mjs/index.d.ts +63 -63
- package/lib/mjs/index.js +234 -234
- package/lib/mjs/index.js.map +1 -1
- package/lib/tsconfig.cjs.tsbuildinfo +1 -1
- package/lib/tsconfig.mjs.tsbuildinfo +1 -1
- package/package.json +6 -6
package/lib/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sCAA2C;AAC3C,oCAAoE;AACpE,0DAAgD;AAChD,sCAAoO;AACpO,iCAA4B;AAC5B,qCAAsC;AACtC,oDAAuB;AACvB,sCAA8C;AAC9C,sCAA4C;AAC5C,uCAAyB;AACzB,gDAAwB;AACxB,mDAAqC;AACrC,oDAAkC;AAGlC,MAAM,aAAiB,SAAQ,WAAM;IAArC;;QACE,UAAK,GAA6B,gBAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9D,CAAC;CAAA;AAM4D,CAAC;AAE9D;;;GAGG;AACH,MAAsB,qBAAsB,SAAQ,iBAAY;CAK/D;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sCAA2C;AAC3C,oCAAoE;AACpE,0DAAgD;AAChD,sCAAoO;AACpO,iCAA4B;AAC5B,qCAAsC;AACtC,oDAAuB;AACvB,sCAA8C;AAC9C,sCAA4C;AAC5C,uCAAyB;AACzB,gDAAwB;AACxB,mDAAqC;AACrC,oDAAkC;AAGlC,MAAM,aAAiB,SAAQ,WAAM;IAArC;;QACE,UAAK,GAA6B,gBAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9D,CAAC;CAAA;AAM4D,CAAC;AAE9D;;;GAGG;AACH,MAAsB,qBAAsB,SAAQ,iBAAY;CAK/D;AALD,sDAKC;AAFC;IADC,IAAA,oBAAG,EAAC,gBAAY,CAAC;;mDACP;AAUb,MAAa,qBAAsB,SAAQ,qBAAqB;IAM9D,YAAsB,OAAqC,EAAY,MAAkB;QACvF,KAAK,EAAE,CAAC;QADY,YAAO,GAAP,OAAO,CAA8B;QAAY,WAAM,GAAN,MAAM,CAAY;IAEzF,CAAC;IAEM,KAAK,CAAC,OAAO;QAClB,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;YAEtC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;YAElD,MAAM,UAAU,GAAI,IAAA,sBAAM,EAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC7D,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAGrC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;gBAC5C,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE;oBACP,mBAAmB,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;iBAC9C;aACF,CAAC,CAAC;YAEH,IAAG,MAAM,CAAC,MAAM,KAAK,GAAG,EAAC;gBACvB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;gBACxD,OAAO;aACR;YAED,IAAG,MAAM,CAAC,MAAM,KAAK,GAAG,EAAC;gBACvB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,mCAAmC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;gBACnE,OAAO;aACR;YAED,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YAE/B,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,EAAE,EAAE;gBAC/B,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;YAEH,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,4CAA4C,CAAC,CAAC;YAE/D,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAE5B,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IAEM,KAAK,CAAC,OAAO;QAClB,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SAC/B;IACH,CAAC;CACF;AAtDD,sDAsDC;AApDW;IADT,IAAA,YAAM,EAAC,qBAAqB,CAAC;8BACf,SAAG;kDAAC;AAwDd,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,eAAS;IAAnC;;QACK,gBAAW,GAAG,CAAC,CAAC;IA+K5B,CAAC;IAzKQ,OAAO,CAAC,OAAqB;QAClC;;;;;WAKG;QACH,QAAQ,OAAO,CAAC,YAAY,EAAE;YAC5B,KAAK,kBAAY,CAAC,MAAM;gBACtB,OAAO,IAAI,CAAC,YAAY,CAAC,OAAsC,CAAC,CAAC;YACnE,KAAK,kBAAY,CAAC,MAAM;gBACtB,OAAO,IAAI,CAAC,YAAY,CAAC,OAA6B,CAAC,CAAC;YAC1D,KAAK,kBAAY,CAAC,MAAM;gBACtB,OAAO,IAAI,CAAC,YAAY,CAAC,OAAsC,CAAC,CAAC;YACnE,KAAK,kBAAY,CAAC,MAAM;gBACtB,OAAO,IAAI,CAAC,YAAY,CAAC,OAA4B,CAAC,CAAC;SAC1D;IACH,CAAC;IAES,KAAK,CAAC,YAAY,CAAC,OAA2B;QACtD,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAChC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;SAClC;QAED,MAAM,IAAI,GAAU,EAAE,CAAC;QAEvB,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YAC7B,MAAM,CAAC,GAAQ,EAAE,CAAC;YAClB,OAAO,CAAC,UAAU,EAAE,CAAC,OAAO,CAAC,CAAC,CAAkB,EAAE,MAAM,EAAE,EAAE;gBAC1D,IAAI,gBAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE;oBACxB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC;iBAC3B;YACH,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACf,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;QAE1E,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;IAES,KAAK,CAAC,YAAY,CAAC,OAAgC;QAC3D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAE9C,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,OAAO;SACR;QAED,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YACrE,OAAO,gBAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,gBAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;IAES,KAAK,CAAC,YAAY,CAAC,OAAgC;QAC3D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAE9C,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,OAAO;SACR;QAED,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QAEtC,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;IAES,KAAK,CAAC,YAAY,CAAC,OAA0B;QACrD,yBAAyB;QACzB,6DAA6D;QAC7D,YAAY;QACZ,MAAM,EAAE,GAAG,OAAmC,CAAC;QAE/C,OAAO,IAAI,CAAC,EAAE,CAAC,KAAK;aACjB,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC;aAClB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YACZ,IACE,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE;gBAC1B,OAAO,EAAE,YAAY,oBAAc,CAAC;YACtC,CAAC,CAAC,EACF;gBACA,MAAM,IAAI,kBAAY,CAAC,oCAAoC,CAAC,CAAC;aAC9D;YAED,OAAO,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,IAAoB,EAAE,EAAE;gBAClD,IAAI,IAAI,CAAC,MAAM,YAAY,UAAI,EAAE;oBAC/B,OAAO,KAAK,CAAC;iBACd;gBAED,MAAM,GAAG,GAAI,CAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACpC,QAAQ,IAAI,CAAC,QAAQ,EAAE;oBACrB,KAAK,iBAAW,CAAC,EAAE;wBACjB,OAAO,GAAG,KAAK,IAAI,CAAC,KAAK,CAAC;oBAC5B,KAAK,iBAAW,CAAC,EAAE;wBACjB,OAAO,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC;oBAC1B,KAAK,iBAAW,CAAC,GAAG;wBAClB,OAAO,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC;oBAC3B,KAAK,iBAAW,CAAC,IAAI;wBACnB,OAAO,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,CAAC;oBAC3C,KAAK,iBAAW,CAAC,EAAE;wBACjB,OAAO,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC;oBAC1B,KAAK,iBAAW,CAAC,GAAG;wBAClB,OAAO,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC;oBAC3B,KAAK,iBAAW,CAAC,GAAG;wBAClB,OAAO,GAAG,KAAK,IAAI,CAAC,KAAK,CAAC;oBAC5B,KAAK,iBAAW,CAAC,QAAQ;wBACvB,OAAO,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,CAAC;oBAC3C,KAAK,iBAAW,CAAC,IAAI;wBACnB,OAAQ,GAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC9C,KAAK,iBAAW,CAAC,EAAE;wBACjB,OAAQ,IAAI,CAAC,KAAe,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;oBACnD,KAAK,iBAAW,CAAC,MAAM;wBACrB,OAAQ,IAAI,CAAC,KAAe,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;iBACpD;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;aACD,KAAK,EAAE,CAAC;IACb,CAAC;IAEM,KAAK,CAAC,IAAI;QACf,OAAO,IAAI,CAAC,EAAE,KAAK,IAAI,IAAI,IAAI,CAAC,EAAE,KAAK,SAAS,CAAC;IACnD,CAAC;IAEM,KAAK,CAAC,OAAO;QAClB,MAAM,UAAU,GAAG,IAAA,sBAAM,EAAC,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACrD,MAAM,IAAI,GAAG,cAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACpC,MAAM,cAAc,GAAG,IAAA,sBAAM,EAAC,EAAE,EAAE,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,cAAc,CAAC,CAAC,CAAC;QAEnF,IAAI,CAAC,OAAO,GAAG,IAAI,eAAQ,CAAY,UAAU,CAAC,CAAC;QACnD,IAAI,CAAC,EAAE,GAAG,IAAI,aAAa,CAAY,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACzD,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;QAErB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE;YAClC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,kBAAkB,cAAc,8DAA8D,CAAC,CAAC;SAC/G;aAAM;YACL,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC;SACtE;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,UAAU;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,OAAO;QACZ,KAAK,CAAC,OAAO,EAAE,CAAC;IAClB,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,aAAmD;QAC1E;;;;;WAKG;IACL,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,SAAS,CAAC,KAAa,EAAE,OAAgB;QACpD,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;CACF,CAAA;AAhLY,kCAAW;sBAAX,WAAW;IAFvB,IAAA,eAAU,EAAC,kBAAkB,CAAC;IAC9B,IAAA,gBAAW,GAAE;GACD,WAAW,CAgLvB"}
|
package/lib/mjs/index.d.ts
CHANGED
|
@@ -1,64 +1,64 @@
|
|
|
1
|
-
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
-
/// <reference types="node" resolution-mode="require"/>
|
|
3
|
-
import { Log } from '@spinajs/log';
|
|
4
|
-
import { AsyncService } from '@spinajs/di';
|
|
5
|
-
import { IColumnDescriptor, OrmDriver, QueryBuilder, TransactionCallback, Builder, UpdateQueryBuilder, InsertQueryBuilder, DeleteQueryBuilder } from '@spinajs/orm';
|
|
6
|
-
import { Low } from 'lowdb';
|
|
7
|
-
import { JSONFile } from 'lowdb/node';
|
|
8
|
-
import _ from 'lodash';
|
|
9
|
-
import EventEmitter from 'events';
|
|
10
|
-
declare class LowWithLodash<T> extends Low<T> {
|
|
11
|
-
chain: _.ExpChain<this['data']>;
|
|
12
|
-
}
|
|
13
|
-
interface LowDBData {
|
|
14
|
-
[key: string]: any[];
|
|
15
|
-
}
|
|
16
|
-
export interface LowdbDataSynchronizer extends EventEmitter {
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Lowdb can synchronzie db file from external source
|
|
20
|
-
* eg. download db from api
|
|
21
|
-
*/
|
|
22
|
-
export declare abstract class LowdbDataSynchronizer extends AsyncService {
|
|
23
|
-
this: this;
|
|
24
|
-
}
|
|
25
|
-
interface ILowDbHttpSynchronizeOptions {
|
|
26
|
-
Host: string;
|
|
27
|
-
Port: number;
|
|
28
|
-
Interval: number;
|
|
29
|
-
}
|
|
30
|
-
export declare class LowDBHttpSynchronizer extends LowdbDataSynchronizer {
|
|
31
|
-
protected Options: ILowDbHttpSynchronizeOptions;
|
|
32
|
-
protected Driver: OrmDriver;
|
|
33
|
-
protected log: Log;
|
|
34
|
-
protected syncTimer: NodeJS.Timer;
|
|
35
|
-
constructor(Options: ILowDbHttpSynchronizeOptions, Driver: OrmDriver);
|
|
36
|
-
resolve(): Promise<void>;
|
|
37
|
-
dispose(): Promise<void>;
|
|
38
|
-
}
|
|
39
|
-
export declare class LowDBDriver extends OrmDriver {
|
|
40
|
-
protected executionId: number;
|
|
41
|
-
protected adapter: JSONFile<LowDBData>;
|
|
42
|
-
protected db: LowWithLodash<LowDBData>;
|
|
43
|
-
protected dbSchema: any;
|
|
44
|
-
execute(builder: Builder<any>): Promise<unknown>;
|
|
45
|
-
protected handleInsert(builder: InsertQueryBuilder): Promise<void>;
|
|
46
|
-
protected handleDelete(builder: DeleteQueryBuilder<any>): Promise<void>;
|
|
47
|
-
protected handleUpdate(builder: UpdateQueryBuilder<any>): Promise<void>;
|
|
48
|
-
protected handleSelect(builder: QueryBuilder<any>): Promise<any[]>;
|
|
49
|
-
ping(): Promise<boolean>;
|
|
50
|
-
connect(): Promise<OrmDriver>;
|
|
51
|
-
disconnect(): Promise<OrmDriver>;
|
|
52
|
-
resolve(): void;
|
|
53
|
-
transaction(_qrOrCallback: QueryBuilder[] | TransactionCallback): Promise<void>;
|
|
54
|
-
/**
|
|
55
|
-
*
|
|
56
|
-
* Retrieves information about specific DB table if exists. If table not exists returns null
|
|
57
|
-
*
|
|
58
|
-
* @param name - table name to retrieve info
|
|
59
|
-
* @param _schema - optional schema name
|
|
60
|
-
*/
|
|
61
|
-
tableInfo(_name: string, _schema?: string): Promise<IColumnDescriptor[]>;
|
|
62
|
-
}
|
|
63
|
-
export {};
|
|
1
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
3
|
+
import { Log } from '@spinajs/log';
|
|
4
|
+
import { AsyncService } from '@spinajs/di';
|
|
5
|
+
import { IColumnDescriptor, OrmDriver, QueryBuilder, TransactionCallback, Builder, UpdateQueryBuilder, InsertQueryBuilder, DeleteQueryBuilder } from '@spinajs/orm';
|
|
6
|
+
import { Low } from 'lowdb';
|
|
7
|
+
import { JSONFile } from 'lowdb/node';
|
|
8
|
+
import _ from 'lodash';
|
|
9
|
+
import EventEmitter from 'events';
|
|
10
|
+
declare class LowWithLodash<T> extends Low<T> {
|
|
11
|
+
chain: _.ExpChain<this['data']>;
|
|
12
|
+
}
|
|
13
|
+
interface LowDBData {
|
|
14
|
+
[key: string]: any[];
|
|
15
|
+
}
|
|
16
|
+
export interface LowdbDataSynchronizer extends EventEmitter {
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Lowdb can synchronzie db file from external source
|
|
20
|
+
* eg. download db from api
|
|
21
|
+
*/
|
|
22
|
+
export declare abstract class LowdbDataSynchronizer extends AsyncService {
|
|
23
|
+
this: this;
|
|
24
|
+
}
|
|
25
|
+
interface ILowDbHttpSynchronizeOptions {
|
|
26
|
+
Host: string;
|
|
27
|
+
Port: number;
|
|
28
|
+
Interval: number;
|
|
29
|
+
}
|
|
30
|
+
export declare class LowDBHttpSynchronizer extends LowdbDataSynchronizer {
|
|
31
|
+
protected Options: ILowDbHttpSynchronizeOptions;
|
|
32
|
+
protected Driver: OrmDriver;
|
|
33
|
+
protected log: Log;
|
|
34
|
+
protected syncTimer: NodeJS.Timer;
|
|
35
|
+
constructor(Options: ILowDbHttpSynchronizeOptions, Driver: OrmDriver);
|
|
36
|
+
resolve(): Promise<void>;
|
|
37
|
+
dispose(): Promise<void>;
|
|
38
|
+
}
|
|
39
|
+
export declare class LowDBDriver extends OrmDriver {
|
|
40
|
+
protected executionId: number;
|
|
41
|
+
protected adapter: JSONFile<LowDBData>;
|
|
42
|
+
protected db: LowWithLodash<LowDBData>;
|
|
43
|
+
protected dbSchema: any;
|
|
44
|
+
execute(builder: Builder<any>): Promise<unknown>;
|
|
45
|
+
protected handleInsert(builder: InsertQueryBuilder): Promise<void>;
|
|
46
|
+
protected handleDelete(builder: DeleteQueryBuilder<any>): Promise<void>;
|
|
47
|
+
protected handleUpdate(builder: UpdateQueryBuilder<any>): Promise<void>;
|
|
48
|
+
protected handleSelect(builder: QueryBuilder<any>): Promise<any[]>;
|
|
49
|
+
ping(): Promise<boolean>;
|
|
50
|
+
connect(): Promise<OrmDriver>;
|
|
51
|
+
disconnect(): Promise<OrmDriver>;
|
|
52
|
+
resolve(): void;
|
|
53
|
+
transaction(_qrOrCallback: QueryBuilder[] | TransactionCallback): Promise<void>;
|
|
54
|
+
/**
|
|
55
|
+
*
|
|
56
|
+
* Retrieves information about specific DB table if exists. If table not exists returns null
|
|
57
|
+
*
|
|
58
|
+
* @param name - table name to retrieve info
|
|
59
|
+
* @param _schema - optional schema name
|
|
60
|
+
*/
|
|
61
|
+
tableInfo(_name: string, _schema?: string): Promise<IColumnDescriptor[]>;
|
|
62
|
+
}
|
|
63
|
+
export {};
|
|
64
64
|
//# sourceMappingURL=index.d.ts.map
|
package/lib/mjs/index.js
CHANGED
|
@@ -1,235 +1,235 @@
|
|
|
1
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
-
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;
|
|
5
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
-
};
|
|
7
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
-
};
|
|
10
|
-
import { Log, Logger } from '@spinajs/log';
|
|
11
|
-
import { AsyncService, Injectable, NewInstance } from '@spinajs/di';
|
|
12
|
-
import { format } from '@spinajs/configuration';
|
|
13
|
-
import { OrmDriver, QueryContext, SqlOperator, Wrap } from '@spinajs/orm';
|
|
14
|
-
import { Low } from 'lowdb';
|
|
15
|
-
import { JSONFile } from 'lowdb/node';
|
|
16
|
-
import _ from 'lodash';
|
|
17
|
-
import { WhereStatement } from '@spinajs/orm';
|
|
18
|
-
import { OrmException } from '@spinajs/orm';
|
|
19
|
-
import * as fs from 'fs';
|
|
20
|
-
import Path from 'path';
|
|
21
|
-
import { use } from 'typescript-mix';
|
|
22
|
-
import EventEmitter from 'events';
|
|
23
|
-
class LowWithLodash extends Low {
|
|
24
|
-
constructor() {
|
|
25
|
-
super(...arguments);
|
|
26
|
-
this.chain = _.chain(this).get('data');
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
;
|
|
30
|
-
/**
|
|
31
|
-
* Lowdb can synchronzie db file from external source
|
|
32
|
-
* eg. download db from api
|
|
33
|
-
*/
|
|
34
|
-
export class LowdbDataSynchronizer extends AsyncService {
|
|
35
|
-
}
|
|
36
|
-
__decorate([
|
|
37
|
-
use(EventEmitter),
|
|
38
|
-
__metadata("design:type", Object)
|
|
39
|
-
], LowdbDataSynchronizer.prototype, "this", void 0);
|
|
40
|
-
export class LowDBHttpSynchronizer extends LowdbDataSynchronizer {
|
|
41
|
-
constructor(Options, Driver) {
|
|
42
|
-
super();
|
|
43
|
-
this.Options = Options;
|
|
44
|
-
this.Driver = Driver;
|
|
45
|
-
}
|
|
46
|
-
async resolve() {
|
|
47
|
-
this.syncTimer = setInterval(async () => {
|
|
48
|
-
this.log.trace(`Synchronizing lowdb database...`);
|
|
49
|
-
const dbFileName = format({}, this.Driver.Options.Filename);
|
|
50
|
-
const stat = fs.statSync(dbFileName);
|
|
51
|
-
const result = await fetch(this.Options.Host, {
|
|
52
|
-
method: "GET",
|
|
53
|
-
headers: {
|
|
54
|
-
"if-modified-since": stat.mtime.toISOString()
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
if (result.status === 304) {
|
|
58
|
-
this.log.info(`Synchronization finished, not modified`);
|
|
59
|
-
return;
|
|
60
|
-
}
|
|
61
|
-
if (result.status !== 200) {
|
|
62
|
-
this.log.error(`Synchronization failed, status: ${result.status}`);
|
|
63
|
-
return;
|
|
64
|
-
}
|
|
65
|
-
const js = await result.json();
|
|
66
|
-
fs.writeFileSync(dbFileName, js, {
|
|
67
|
-
encoding: "utf-8"
|
|
68
|
-
});
|
|
69
|
-
this.log.success(`Synchronization finished, new data arrived`);
|
|
70
|
-
this.emit('synchronized');
|
|
71
|
-
}, this.Options.Interval);
|
|
72
|
-
}
|
|
73
|
-
async dispose() {
|
|
74
|
-
if (this.syncTimer) {
|
|
75
|
-
clearInterval(this.syncTimer);
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
__decorate([
|
|
80
|
-
Logger('low-db-synchronizer'),
|
|
81
|
-
__metadata("design:type", Log)
|
|
82
|
-
], LowDBHttpSynchronizer.prototype, "log", void 0);
|
|
83
|
-
let LowDBDriver = class LowDBDriver extends OrmDriver {
|
|
84
|
-
constructor() {
|
|
85
|
-
super(...arguments);
|
|
86
|
-
this.executionId = 0;
|
|
87
|
-
}
|
|
88
|
-
execute(builder) {
|
|
89
|
-
/**
|
|
90
|
-
* We skip all compilation process
|
|
91
|
-
* We take builder and query lowdb data
|
|
92
|
-
*
|
|
93
|
-
* Support for full orm builder function is limited
|
|
94
|
-
*/
|
|
95
|
-
switch (builder.QueryContext) {
|
|
96
|
-
case QueryContext.Delete:
|
|
97
|
-
return this.handleDelete(builder);
|
|
98
|
-
case QueryContext.Insert:
|
|
99
|
-
return this.handleInsert(builder);
|
|
100
|
-
case QueryContext.Update:
|
|
101
|
-
return this.handleUpdate(builder);
|
|
102
|
-
case QueryContext.Select:
|
|
103
|
-
return this.handleSelect(builder);
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
async handleInsert(builder) {
|
|
107
|
-
if (!this.db.data[builder.Table]) {
|
|
108
|
-
this.db.data[builder.Table] = [];
|
|
109
|
-
}
|
|
110
|
-
const data = [];
|
|
111
|
-
builder.Values.forEach((val) => {
|
|
112
|
-
const d = {};
|
|
113
|
-
builder.getColumns().forEach((x, cIndex) => {
|
|
114
|
-
if (_.isString(x.Column)) {
|
|
115
|
-
d[x.Column] = val[cIndex];
|
|
116
|
-
}
|
|
117
|
-
});
|
|
118
|
-
data.push(d);
|
|
119
|
-
});
|
|
120
|
-
this.db.data[builder.Table] = this.db.data[builder.Table].concat(...data);
|
|
121
|
-
await this.db.write();
|
|
122
|
-
}
|
|
123
|
-
async handleDelete(builder) {
|
|
124
|
-
const data = await this.handleSelect(builder);
|
|
125
|
-
if (!data || data.length === 0) {
|
|
126
|
-
return;
|
|
127
|
-
}
|
|
128
|
-
this.db.data[builder.Table] = this.db.data[builder.Table].filter((x) => {
|
|
129
|
-
return _.every(data, (b) => !_.isEqual(x, b));
|
|
130
|
-
});
|
|
131
|
-
await this.db.write();
|
|
132
|
-
}
|
|
133
|
-
async handleUpdate(builder) {
|
|
134
|
-
const data = await this.handleSelect(builder);
|
|
135
|
-
if (!data || data.length === 0) {
|
|
136
|
-
return;
|
|
137
|
-
}
|
|
138
|
-
Object.assign(data[0], builder.Value);
|
|
139
|
-
await this.db.write();
|
|
140
|
-
}
|
|
141
|
-
async handleSelect(builder) {
|
|
142
|
-
// double cast for linter
|
|
143
|
-
// we are sure that builder passed here implements this class
|
|
144
|
-
// by mixins
|
|
145
|
-
const wb = builder;
|
|
146
|
-
return this.db.chain
|
|
147
|
-
.get(builder.Table)
|
|
148
|
-
.filter((x) => {
|
|
149
|
-
if (!wb.Statements.every((qs) => {
|
|
150
|
-
return qs instanceof WhereStatement;
|
|
151
|
-
})) {
|
|
152
|
-
throw new OrmException(`Lowdb does not support raw queries`);
|
|
153
|
-
}
|
|
154
|
-
return wb.Statements.every((stmt) => {
|
|
155
|
-
if (stmt.Column instanceof Wrap) {
|
|
156
|
-
return false;
|
|
157
|
-
}
|
|
158
|
-
const val = x[stmt.Column];
|
|
159
|
-
switch (stmt.Operator) {
|
|
160
|
-
case SqlOperator.EQ:
|
|
161
|
-
return val === stmt.Value;
|
|
162
|
-
case SqlOperator.GT:
|
|
163
|
-
return val > stmt.Value;
|
|
164
|
-
case SqlOperator.GTE:
|
|
165
|
-
return val >= stmt.Value;
|
|
166
|
-
case SqlOperator.NULL:
|
|
167
|
-
return val === null || val === undefined;
|
|
168
|
-
case SqlOperator.LT:
|
|
169
|
-
return val < stmt.Value;
|
|
170
|
-
case SqlOperator.LTE:
|
|
171
|
-
return val <= stmt.Value;
|
|
172
|
-
case SqlOperator.NOT:
|
|
173
|
-
return val !== stmt.Value;
|
|
174
|
-
case SqlOperator.NOT_NULL:
|
|
175
|
-
return val !== null && val !== undefined;
|
|
176
|
-
case SqlOperator.LIKE:
|
|
177
|
-
return val.includes(stmt.Value);
|
|
178
|
-
case SqlOperator.IN:
|
|
179
|
-
return stmt.Value.indexOf(val) !== -1;
|
|
180
|
-
case SqlOperator.NOT_IN:
|
|
181
|
-
return stmt.Value.indexOf(val) === -1;
|
|
182
|
-
}
|
|
183
|
-
});
|
|
184
|
-
})
|
|
185
|
-
.value();
|
|
186
|
-
}
|
|
187
|
-
async ping() {
|
|
188
|
-
return this.db !== null && this.db !== undefined;
|
|
189
|
-
}
|
|
190
|
-
async connect() {
|
|
191
|
-
const dbFileName = format({}, this.Options.Filename);
|
|
192
|
-
const path = Path.parse(dbFileName);
|
|
193
|
-
const schemaFileName = format({}, Path.join(path.dir, `${path.name}.schema.json`));
|
|
194
|
-
this.adapter = new JSONFile(dbFileName);
|
|
195
|
-
this.db = new LowWithLodash(this.adapter, {});
|
|
196
|
-
await this.db.read();
|
|
197
|
-
if (!fs.existsSync(schemaFileName)) {
|
|
198
|
-
this.Log.warn(`Schema file at ${schemaFileName} not exists. Lowdb will not be able to proper insert into DB`);
|
|
199
|
-
}
|
|
200
|
-
else {
|
|
201
|
-
this.dbSchema = JSON.parse(fs.readFileSync(schemaFileName, 'utf-8'));
|
|
202
|
-
}
|
|
203
|
-
return this;
|
|
204
|
-
}
|
|
205
|
-
async disconnect() {
|
|
206
|
-
return this;
|
|
207
|
-
}
|
|
208
|
-
resolve() {
|
|
209
|
-
super.resolve();
|
|
210
|
-
}
|
|
211
|
-
async transaction(_qrOrCallback) {
|
|
212
|
-
/**
|
|
213
|
-
*
|
|
214
|
-
* LOW DB have no transactions
|
|
215
|
-
*
|
|
216
|
-
*
|
|
217
|
-
*/
|
|
218
|
-
}
|
|
219
|
-
/**
|
|
220
|
-
*
|
|
221
|
-
* Retrieves information about specific DB table if exists. If table not exists returns null
|
|
222
|
-
*
|
|
223
|
-
* @param name - table name to retrieve info
|
|
224
|
-
* @param _schema - optional schema name
|
|
225
|
-
*/
|
|
226
|
-
async tableInfo(_name, _schema) {
|
|
227
|
-
return Promise.resolve([]);
|
|
228
|
-
}
|
|
229
|
-
};
|
|
230
|
-
LowDBDriver = __decorate([
|
|
231
|
-
Injectable('orm-driver-lowdb'),
|
|
232
|
-
NewInstance()
|
|
233
|
-
], LowDBDriver);
|
|
234
|
-
export { LowDBDriver };
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
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;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
import { Log, Logger } from '@spinajs/log';
|
|
11
|
+
import { AsyncService, Injectable, NewInstance } from '@spinajs/di';
|
|
12
|
+
import { format } from '@spinajs/configuration';
|
|
13
|
+
import { OrmDriver, QueryContext, SqlOperator, Wrap } from '@spinajs/orm';
|
|
14
|
+
import { Low } from 'lowdb';
|
|
15
|
+
import { JSONFile } from 'lowdb/node';
|
|
16
|
+
import _ from 'lodash';
|
|
17
|
+
import { WhereStatement } from '@spinajs/orm';
|
|
18
|
+
import { OrmException } from '@spinajs/orm';
|
|
19
|
+
import * as fs from 'fs';
|
|
20
|
+
import Path from 'path';
|
|
21
|
+
import { use } from 'typescript-mix';
|
|
22
|
+
import EventEmitter from 'events';
|
|
23
|
+
class LowWithLodash extends Low {
|
|
24
|
+
constructor() {
|
|
25
|
+
super(...arguments);
|
|
26
|
+
this.chain = _.chain(this).get('data');
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
;
|
|
30
|
+
/**
|
|
31
|
+
* Lowdb can synchronzie db file from external source
|
|
32
|
+
* eg. download db from api
|
|
33
|
+
*/
|
|
34
|
+
export class LowdbDataSynchronizer extends AsyncService {
|
|
35
|
+
}
|
|
36
|
+
__decorate([
|
|
37
|
+
use(EventEmitter),
|
|
38
|
+
__metadata("design:type", Object)
|
|
39
|
+
], LowdbDataSynchronizer.prototype, "this", void 0);
|
|
40
|
+
export class LowDBHttpSynchronizer extends LowdbDataSynchronizer {
|
|
41
|
+
constructor(Options, Driver) {
|
|
42
|
+
super();
|
|
43
|
+
this.Options = Options;
|
|
44
|
+
this.Driver = Driver;
|
|
45
|
+
}
|
|
46
|
+
async resolve() {
|
|
47
|
+
this.syncTimer = setInterval(async () => {
|
|
48
|
+
this.log.trace(`Synchronizing lowdb database...`);
|
|
49
|
+
const dbFileName = format({}, this.Driver.Options.Filename);
|
|
50
|
+
const stat = fs.statSync(dbFileName);
|
|
51
|
+
const result = await fetch(this.Options.Host, {
|
|
52
|
+
method: "GET",
|
|
53
|
+
headers: {
|
|
54
|
+
"if-modified-since": stat.mtime.toISOString()
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
if (result.status === 304) {
|
|
58
|
+
this.log.info(`Synchronization finished, not modified`);
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
if (result.status !== 200) {
|
|
62
|
+
this.log.error(`Synchronization failed, status: ${result.status}`);
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
const js = await result.json();
|
|
66
|
+
fs.writeFileSync(dbFileName, js, {
|
|
67
|
+
encoding: "utf-8"
|
|
68
|
+
});
|
|
69
|
+
this.log.success(`Synchronization finished, new data arrived`);
|
|
70
|
+
this.emit('synchronized');
|
|
71
|
+
}, this.Options.Interval);
|
|
72
|
+
}
|
|
73
|
+
async dispose() {
|
|
74
|
+
if (this.syncTimer) {
|
|
75
|
+
clearInterval(this.syncTimer);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
__decorate([
|
|
80
|
+
Logger('low-db-synchronizer'),
|
|
81
|
+
__metadata("design:type", Log)
|
|
82
|
+
], LowDBHttpSynchronizer.prototype, "log", void 0);
|
|
83
|
+
let LowDBDriver = class LowDBDriver extends OrmDriver {
|
|
84
|
+
constructor() {
|
|
85
|
+
super(...arguments);
|
|
86
|
+
this.executionId = 0;
|
|
87
|
+
}
|
|
88
|
+
execute(builder) {
|
|
89
|
+
/**
|
|
90
|
+
* We skip all compilation process
|
|
91
|
+
* We take builder and query lowdb data
|
|
92
|
+
*
|
|
93
|
+
* Support for full orm builder function is limited
|
|
94
|
+
*/
|
|
95
|
+
switch (builder.QueryContext) {
|
|
96
|
+
case QueryContext.Delete:
|
|
97
|
+
return this.handleDelete(builder);
|
|
98
|
+
case QueryContext.Insert:
|
|
99
|
+
return this.handleInsert(builder);
|
|
100
|
+
case QueryContext.Update:
|
|
101
|
+
return this.handleUpdate(builder);
|
|
102
|
+
case QueryContext.Select:
|
|
103
|
+
return this.handleSelect(builder);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
async handleInsert(builder) {
|
|
107
|
+
if (!this.db.data[builder.Table]) {
|
|
108
|
+
this.db.data[builder.Table] = [];
|
|
109
|
+
}
|
|
110
|
+
const data = [];
|
|
111
|
+
builder.Values.forEach((val) => {
|
|
112
|
+
const d = {};
|
|
113
|
+
builder.getColumns().forEach((x, cIndex) => {
|
|
114
|
+
if (_.isString(x.Column)) {
|
|
115
|
+
d[x.Column] = val[cIndex];
|
|
116
|
+
}
|
|
117
|
+
});
|
|
118
|
+
data.push(d);
|
|
119
|
+
});
|
|
120
|
+
this.db.data[builder.Table] = this.db.data[builder.Table].concat(...data);
|
|
121
|
+
await this.db.write();
|
|
122
|
+
}
|
|
123
|
+
async handleDelete(builder) {
|
|
124
|
+
const data = await this.handleSelect(builder);
|
|
125
|
+
if (!data || data.length === 0) {
|
|
126
|
+
return;
|
|
127
|
+
}
|
|
128
|
+
this.db.data[builder.Table] = this.db.data[builder.Table].filter((x) => {
|
|
129
|
+
return _.every(data, (b) => !_.isEqual(x, b));
|
|
130
|
+
});
|
|
131
|
+
await this.db.write();
|
|
132
|
+
}
|
|
133
|
+
async handleUpdate(builder) {
|
|
134
|
+
const data = await this.handleSelect(builder);
|
|
135
|
+
if (!data || data.length === 0) {
|
|
136
|
+
return;
|
|
137
|
+
}
|
|
138
|
+
Object.assign(data[0], builder.Value);
|
|
139
|
+
await this.db.write();
|
|
140
|
+
}
|
|
141
|
+
async handleSelect(builder) {
|
|
142
|
+
// double cast for linter
|
|
143
|
+
// we are sure that builder passed here implements this class
|
|
144
|
+
// by mixins
|
|
145
|
+
const wb = builder;
|
|
146
|
+
return this.db.chain
|
|
147
|
+
.get(builder.Table)
|
|
148
|
+
.filter((x) => {
|
|
149
|
+
if (!wb.Statements.every((qs) => {
|
|
150
|
+
return qs instanceof WhereStatement;
|
|
151
|
+
})) {
|
|
152
|
+
throw new OrmException(`Lowdb does not support raw queries`);
|
|
153
|
+
}
|
|
154
|
+
return wb.Statements.every((stmt) => {
|
|
155
|
+
if (stmt.Column instanceof Wrap) {
|
|
156
|
+
return false;
|
|
157
|
+
}
|
|
158
|
+
const val = x[stmt.Column];
|
|
159
|
+
switch (stmt.Operator) {
|
|
160
|
+
case SqlOperator.EQ:
|
|
161
|
+
return val === stmt.Value;
|
|
162
|
+
case SqlOperator.GT:
|
|
163
|
+
return val > stmt.Value;
|
|
164
|
+
case SqlOperator.GTE:
|
|
165
|
+
return val >= stmt.Value;
|
|
166
|
+
case SqlOperator.NULL:
|
|
167
|
+
return val === null || val === undefined;
|
|
168
|
+
case SqlOperator.LT:
|
|
169
|
+
return val < stmt.Value;
|
|
170
|
+
case SqlOperator.LTE:
|
|
171
|
+
return val <= stmt.Value;
|
|
172
|
+
case SqlOperator.NOT:
|
|
173
|
+
return val !== stmt.Value;
|
|
174
|
+
case SqlOperator.NOT_NULL:
|
|
175
|
+
return val !== null && val !== undefined;
|
|
176
|
+
case SqlOperator.LIKE:
|
|
177
|
+
return val.includes(stmt.Value);
|
|
178
|
+
case SqlOperator.IN:
|
|
179
|
+
return stmt.Value.indexOf(val) !== -1;
|
|
180
|
+
case SqlOperator.NOT_IN:
|
|
181
|
+
return stmt.Value.indexOf(val) === -1;
|
|
182
|
+
}
|
|
183
|
+
});
|
|
184
|
+
})
|
|
185
|
+
.value();
|
|
186
|
+
}
|
|
187
|
+
async ping() {
|
|
188
|
+
return this.db !== null && this.db !== undefined;
|
|
189
|
+
}
|
|
190
|
+
async connect() {
|
|
191
|
+
const dbFileName = format({}, this.Options.Filename);
|
|
192
|
+
const path = Path.parse(dbFileName);
|
|
193
|
+
const schemaFileName = format({}, Path.join(path.dir, `${path.name}.schema.json`));
|
|
194
|
+
this.adapter = new JSONFile(dbFileName);
|
|
195
|
+
this.db = new LowWithLodash(this.adapter, {});
|
|
196
|
+
await this.db.read();
|
|
197
|
+
if (!fs.existsSync(schemaFileName)) {
|
|
198
|
+
this.Log.warn(`Schema file at ${schemaFileName} not exists. Lowdb will not be able to proper insert into DB`);
|
|
199
|
+
}
|
|
200
|
+
else {
|
|
201
|
+
this.dbSchema = JSON.parse(fs.readFileSync(schemaFileName, 'utf-8'));
|
|
202
|
+
}
|
|
203
|
+
return this;
|
|
204
|
+
}
|
|
205
|
+
async disconnect() {
|
|
206
|
+
return this;
|
|
207
|
+
}
|
|
208
|
+
resolve() {
|
|
209
|
+
super.resolve();
|
|
210
|
+
}
|
|
211
|
+
async transaction(_qrOrCallback) {
|
|
212
|
+
/**
|
|
213
|
+
*
|
|
214
|
+
* LOW DB have no transactions
|
|
215
|
+
*
|
|
216
|
+
*
|
|
217
|
+
*/
|
|
218
|
+
}
|
|
219
|
+
/**
|
|
220
|
+
*
|
|
221
|
+
* Retrieves information about specific DB table if exists. If table not exists returns null
|
|
222
|
+
*
|
|
223
|
+
* @param name - table name to retrieve info
|
|
224
|
+
* @param _schema - optional schema name
|
|
225
|
+
*/
|
|
226
|
+
async tableInfo(_name, _schema) {
|
|
227
|
+
return Promise.resolve([]);
|
|
228
|
+
}
|
|
229
|
+
};
|
|
230
|
+
LowDBDriver = __decorate([
|
|
231
|
+
Injectable('orm-driver-lowdb'),
|
|
232
|
+
NewInstance()
|
|
233
|
+
], LowDBDriver);
|
|
234
|
+
export { LowDBDriver };
|
|
235
235
|
//# sourceMappingURL=index.js.map
|