@nymphjs/nymph 1.0.0-alpha.2 → 1.0.0-alpha.3

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.
Files changed (47) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/README.md +2 -4
  3. package/dist/Entity.d.ts +1 -1
  4. package/dist/Entity.js +4 -9
  5. package/dist/Entity.js.map +1 -1
  6. package/dist/Entity.test.js +6 -3
  7. package/dist/Entity.test.js.map +1 -1
  8. package/dist/Entity.types.d.ts +2 -2
  9. package/dist/Nymph.d.ts +2 -5
  10. package/dist/Nymph.js +22 -23
  11. package/dist/Nymph.js.map +1 -1
  12. package/dist/Nymph.types.d.ts +2 -1
  13. package/dist/driver/NymphDriver.d.ts +1 -1
  14. package/dist/driver/index.d.ts +0 -2
  15. package/dist/driver/index.js +1 -3
  16. package/dist/driver/index.js.map +1 -1
  17. package/dist/driver/testArtifacts.d.ts +4 -3
  18. package/dist/driver/testArtifacts.js +158 -153
  19. package/dist/driver/testArtifacts.js.map +1 -1
  20. package/dist/index.d.ts +2 -2
  21. package/dist/index.js +2 -2
  22. package/dist/index.js.map +1 -1
  23. package/dist/testArtifacts.js +0 -3
  24. package/dist/testArtifacts.js.map +1 -1
  25. package/dist/testMocks.d.ts +14 -11
  26. package/dist/testMocks.js +20 -10
  27. package/dist/testMocks.js.map +1 -1
  28. package/dist/utils.d.ts +2 -2
  29. package/dist/utils.js +9 -7
  30. package/dist/utils.js.map +1 -1
  31. package/package.json +2 -2
  32. package/src/Entity.test.ts +7 -4
  33. package/src/Entity.ts +6 -7
  34. package/src/Entity.types.ts +2 -2
  35. package/src/Nymph.ts +37 -35
  36. package/src/Nymph.types.ts +2 -1
  37. package/src/driver/NymphDriver.ts +1 -1
  38. package/src/driver/index.ts +0 -3
  39. package/src/driver/testArtifacts.ts +22 -4
  40. package/src/index.ts +2 -2
  41. package/src/testArtifacts.ts +0 -5
  42. package/src/testMocks.ts +33 -28
  43. package/src/utils.ts +6 -9
  44. package/dist/driver/PreInitializedDriver.d.ts +0 -30
  45. package/dist/driver/PreInitializedDriver.js +0 -65
  46. package/dist/driver/PreInitializedDriver.js.map +0 -1
  47. package/src/driver/PreInitializedDriver.ts +0 -88
@@ -1,5 +1,5 @@
1
- import { Nymph } from './Nymph';
2
- import { Options } from './Nymph.types';
1
+ import type Nymph from './Nymph';
2
+ import type { Options } from './Nymph.types';
3
3
 
4
4
  export type ACProperties = {
5
5
  user: any;
package/src/Nymph.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { Config, ConfigDefaults as defaults } from './conf';
2
2
  import { NymphDriver } from './driver';
3
- import PreInitializedDriver from './driver/PreInitializedDriver';
3
+ import Entity from './Entity';
4
4
  import { EntityConstructor, EntityInterface } from './Entity.types';
5
5
  import { ClassNotAvailableError } from './errors';
6
6
  import type {
@@ -39,7 +39,7 @@ import type {
39
39
  * @copyright SciActive Inc
40
40
  * @see http://nymph.io/
41
41
  */
42
- export class Nymph {
42
+ export default class Nymph {
43
43
  /**
44
44
  * The PubSub config.
45
45
  */
@@ -84,6 +84,7 @@ export class Nymph {
84
84
 
85
85
  public setEntityClass(className: string, entityClass: EntityConstructor) {
86
86
  this.entityClasses[className] = entityClass;
87
+ entityClass.nymph = this;
87
88
  }
88
89
 
89
90
  public getEntityClass(className: string): EntityConstructor {
@@ -95,19 +96,42 @@ export class Nymph {
95
96
  throw new ClassNotAvailableError('Tried to use class: ' + className);
96
97
  }
97
98
 
98
- public constructor() {
99
- this.config = { ...defaults };
100
- this.driver = new PreInitializedDriver();
99
+ /**
100
+ * Initialize Nymph.
101
+ *
102
+ * @param config The Nymph configuration.
103
+ * @param driver The Nymph database driver.
104
+ * @param tilmeld The Tilmeld user/group manager instance, if you want to use it.
105
+ */
106
+ public constructor(
107
+ config: Partial<Config>,
108
+ driver: NymphDriver,
109
+ tilmeld?: TilmeldInterface
110
+ ) {
111
+ this.config = { ...defaults, ...config };
112
+ this.driver = driver;
113
+ if (typeof tilmeld !== 'undefined') {
114
+ this.tilmeld = tilmeld;
115
+ }
116
+
117
+ class NymphEntity extends Entity {}
118
+ this.setEntityClass(NymphEntity.class, NymphEntity);
119
+
120
+ this.driver.init(this);
121
+ if (this.tilmeld) {
122
+ this.tilmeld.init(this);
123
+ }
101
124
  }
102
125
 
126
+ /**
127
+ * This is used internally by Nymph. Don't call it yourself.
128
+ * @returns A clone of this instance.
129
+ */
103
130
  public clone() {
104
- const nymph = new Nymph();
105
- nymph.config = this.config;
106
- nymph.driver = this.driver;
107
- nymph.tilmeld = this.tilmeld;
131
+ const nymph = new Nymph(this.config, this.driver, this.tilmeld?.clone());
108
132
  nymph.entityClasses = this.entityClasses;
109
133
  if (nymph.tilmeld) {
110
- nymph.tilmeld.nymph = nymph;
134
+ nymph.tilmeld.init(nymph);
111
135
  }
112
136
 
113
137
  const events = [
@@ -137,6 +161,9 @@ export class Nymph {
137
161
  // @ts-ignore: The callback should be the right type here.
138
162
  const callbacks = this[prop];
139
163
  for (let callback of callbacks) {
164
+ if (callback.tilmeld) {
165
+ continue;
166
+ }
140
167
  nymph.on(event as NymphEventType, callback);
141
168
  }
142
169
  }
@@ -144,29 +171,6 @@ export class Nymph {
144
171
  return nymph;
145
172
  }
146
173
 
147
- /**
148
- * Initialize Nymph.
149
- *
150
- * @param config The Nymph configuration.
151
- * @param driver The Nymph database driver.
152
- * @param tilmeld The Tilmeld user/group manager instance, if you want to use it.
153
- */
154
- public init(
155
- config: Partial<Config>,
156
- driver: NymphDriver,
157
- tilmeld?: TilmeldInterface
158
- ) {
159
- this.config = { ...defaults, ...config };
160
- this.driver = driver;
161
- if (typeof tilmeld !== 'undefined') {
162
- this.tilmeld = tilmeld;
163
- }
164
- this.driver.init(this);
165
- if (this.tilmeld) {
166
- this.tilmeld.init(this);
167
- }
168
- }
169
-
170
174
  /**
171
175
  * Connect to the database.
172
176
  *
@@ -909,5 +913,3 @@ export class Nymph {
909
913
  return true;
910
914
  }
911
915
  }
912
-
913
- export default new Nymph();
@@ -1,5 +1,5 @@
1
1
  import { EntityConstructor, EntityInterface } from './Entity.types';
2
- import { Nymph } from './Nymph';
2
+ import Nymph from './Nymph';
3
3
 
4
4
  export type NymphEventType =
5
5
  | 'connect'
@@ -243,6 +243,7 @@ export interface TilmeldInterface {
243
243
  request: any;
244
244
  response: any;
245
245
  init(nymph: Nymph): void;
246
+ clone(): TilmeldInterface;
246
247
  gatekeeper(ability?: string): boolean;
247
248
  authenticate(): void;
248
249
  clearSession(): void;
@@ -3,7 +3,7 @@ import { difference } from 'lodash';
3
3
  import ReadLines from 'n-readlines';
4
4
  import strtotime from 'locutus/php/datetime/strtotime';
5
5
 
6
- import type { Nymph } from '../Nymph';
6
+ import type Nymph from '../Nymph';
7
7
  import newGUID from '../newGUID';
8
8
  import {
9
9
  EntityConstructor,
@@ -1,7 +1,4 @@
1
1
  import NymphDriver from './NymphDriver';
2
2
  export { NymphDriver };
3
3
 
4
- import PreInitializedDriver from './PreInitializedDriver';
5
- export { PreInitializedDriver };
6
-
7
4
  export * from './testArtifacts';
@@ -1,11 +1,17 @@
1
1
  import fs from 'fs';
2
2
  import strtotime from 'locutus/php/datetime/strtotime';
3
3
 
4
+ import type Nymph from '../Nymph';
4
5
  import newGUID from '../newGUID';
5
- import nymph from '../Nymph';
6
6
  import { TestBModel, TestModel, TestModelData } from '../testArtifacts';
7
7
 
8
- export function QueriesTest(it: (name: string, fn: () => void) => void) {
8
+ export function QueriesTest(
9
+ nymph: Nymph,
10
+ it: (name: string, fn: () => void) => void
11
+ ) {
12
+ nymph.setEntityClass(TestModel.class, TestModel);
13
+ nymph.setEntityClass(TestBModel.class, TestBModel);
14
+
9
15
  let testEntity: TestModel & TestModelData;
10
16
  let testGuid: string;
11
17
  let refGuid: string;
@@ -1669,7 +1675,13 @@ This one's zip code is 92064.`;
1669
1675
  });
1670
1676
  }
1671
1677
 
1672
- export function UIDTest(it: (name: string, fn: () => void) => void) {
1678
+ export function UIDTest(
1679
+ nymph: Nymph,
1680
+ it: (name: string, fn: () => void) => void
1681
+ ) {
1682
+ nymph.setEntityClass(TestModel.class, TestModel);
1683
+ nymph.setEntityClass(TestBModel.class, TestBModel);
1684
+
1673
1685
  it('delete old test data', async () => {
1674
1686
  expect(await nymph.deleteUID('TestUID')).toEqual(true);
1675
1687
  expect(await nymph.deleteUID('NewUID')).toEqual(true);
@@ -1707,7 +1719,13 @@ export function UIDTest(it: (name: string, fn: () => void) => void) {
1707
1719
  });
1708
1720
  }
1709
1721
 
1710
- export function ExportImportTest(it: (name: string, fn: () => void) => void) {
1722
+ export function ExportImportTest(
1723
+ nymph: Nymph,
1724
+ it: (name: string, fn: () => void) => void
1725
+ ) {
1726
+ nymph.setEntityClass(TestModel.class, TestModel);
1727
+ nymph.setEntityClass(TestBModel.class, TestBModel);
1728
+
1711
1729
  async function deleteTestData() {
1712
1730
  let all = await nymph.getEntities({ class: TestModel });
1713
1731
  expect(Array.isArray(all)).toEqual(true);
package/src/index.ts CHANGED
@@ -14,7 +14,7 @@ export { newGUID };
14
14
  export * from './Nymph.types';
15
15
 
16
16
  export * from './Nymph';
17
- import nymph from './Nymph';
18
- export default nymph;
17
+ import Nymph from './Nymph';
18
+ export { Nymph };
19
19
 
20
20
  export * from './utils';
@@ -1,5 +1,4 @@
1
1
  import Entity from './Entity';
2
- import nymph from './Nymph';
3
2
 
4
3
  export type TestModelData = {
5
4
  name?: string;
@@ -72,8 +71,6 @@ export class TestModel extends Entity<TestModelData> {
72
71
  }
73
72
  }
74
73
 
75
- nymph.setEntityClass(TestModel.class, TestModel);
76
-
77
74
  /**
78
75
  * This class is a test class that extends the Entity class.
79
76
  */
@@ -89,5 +86,3 @@ export class TestBModel extends TestModel {
89
86
  return super.factorySync(guid) as TestBModel & TestModelData;
90
87
  }
91
88
  }
92
-
93
- nymph.setEntityClass(TestBModel.class, TestBModel);
package/src/testMocks.ts CHANGED
@@ -1,11 +1,19 @@
1
+ import type Nymph from './Nymph';
1
2
  import { EntityConstructor, EntityInterface, EntityJson } from './Entity.types';
2
3
  import { Options, Selector } from './Nymph.types';
3
4
  import newGUID from './newGUID';
4
5
  import { ClassNotAvailableError } from './errors';
6
+ import Entity from './Entity';
5
7
 
6
8
  const entities: { [k: string]: EntityJson } = {};
7
9
 
8
10
  export class MockNymphDriver {
11
+ private nymph: MockNymph;
12
+
13
+ public constructor(nymph: MockNymph) {
14
+ this.nymph = nymph;
15
+ }
16
+
9
17
  public getEntitySync<T extends EntityConstructor = EntityConstructor>(
10
18
  options: Options<T> & { return: 'guid' },
11
19
  ...selectors: Selector[]
@@ -33,7 +41,7 @@ export class MockNymphDriver {
33
41
  }
34
42
 
35
43
  const entity: EntityInterface = (
36
- (options.class as T) ?? MockNymph.getEntityClass('Entity')
44
+ (options.class as T) ?? this.nymph.getEntityClass('Entity')
37
45
  ).factorySync();
38
46
  const entityJson = entities[guid];
39
47
  entity.guid = guid;
@@ -47,51 +55,48 @@ export class MockNymphDriver {
47
55
  }
48
56
 
49
57
  export class MockNymph {
50
- public static entityClasses: { [k: string]: EntityConstructor } = {};
51
- public static driver = new MockNymphDriver();
52
- public static Tilmeld: any = undefined;
53
-
54
- public static setEntityClass(
55
- className: string,
56
- entityClass: EntityConstructor
57
- ) {
58
+ public entityClasses: { [k: string]: EntityConstructor } = {};
59
+ public driver: MockNymphDriver;
60
+ public Tilmeld: any = undefined;
61
+
62
+ public constructor() {
63
+ this.driver = new MockNymphDriver(this);
64
+
65
+ // class NymphEntity extends Entity {}
66
+ this.setEntityClass(Entity.class, Entity);
67
+ }
68
+
69
+ public setEntityClass(className: string, entityClass: EntityConstructor) {
58
70
  this.entityClasses[className] = entityClass;
71
+ entityClass.nymph = this as unknown as Nymph;
59
72
  }
60
73
 
61
- public static getEntityClass(className: string): EntityConstructor {
74
+ public getEntityClass(className: string): EntityConstructor {
62
75
  if (className in this.entityClasses) {
63
- return this.entityClasses[className];
76
+ const EntityClass = this.entityClasses[className];
77
+ EntityClass.nymph = this as unknown as Nymph;
78
+ return EntityClass;
64
79
  }
65
80
  throw new ClassNotAvailableError('Tried to use class: ' + className);
66
81
  }
67
82
 
68
- public static async getEntity<
69
- T extends EntityConstructor = EntityConstructor
70
- >(
83
+ public async getEntity<T extends EntityConstructor = EntityConstructor>(
71
84
  options: Options<T> & { return: 'guid' },
72
85
  ...selectors: Selector[]
73
86
  ): Promise<string | null>;
74
- public static async getEntity<
75
- T extends EntityConstructor = EntityConstructor
76
- >(
87
+ public async getEntity<T extends EntityConstructor = EntityConstructor>(
77
88
  options: Options<T>,
78
89
  ...selectors: Selector[]
79
90
  ): Promise<ReturnType<T['factorySync']> | null>;
80
- public static async getEntity<
81
- T extends EntityConstructor = EntityConstructor
82
- >(
91
+ public async getEntity<T extends EntityConstructor = EntityConstructor>(
83
92
  options: Options<T> & { return: 'guid' },
84
93
  guid: string
85
94
  ): Promise<string | null>;
86
- public static async getEntity<
87
- T extends EntityConstructor = EntityConstructor
88
- >(
95
+ public async getEntity<T extends EntityConstructor = EntityConstructor>(
89
96
  options: Options<T>,
90
97
  guid: string
91
98
  ): Promise<ReturnType<T['factorySync']> | null>;
92
- public static async getEntity<
93
- T extends EntityConstructor = EntityConstructor
94
- >(
99
+ public async getEntity<T extends EntityConstructor = EntityConstructor>(
95
100
  options: Options<T> = {},
96
101
  ...selectors: Selector[] | string[]
97
102
  ): Promise<ReturnType<T['factorySync']> | string | null> {
@@ -99,7 +104,7 @@ export class MockNymph {
99
104
  return this.driver.getEntitySync(options, ...selectors);
100
105
  }
101
106
 
102
- public static async saveEntity(entity: EntityInterface): Promise<boolean> {
107
+ public async saveEntity(entity: EntityInterface): Promise<boolean> {
103
108
  const className = (entity.constructor as any).class as string;
104
109
 
105
110
  if (entity.guid == null) {
@@ -127,7 +132,7 @@ export class MockNymph {
127
132
  return true;
128
133
  }
129
134
 
130
- public static async deleteEntity(entity: EntityInterface): Promise<boolean> {
135
+ public async deleteEntity(entity: EntityInterface): Promise<boolean> {
131
136
  if (entity.guid != null && entity.guid in entities) {
132
137
  delete entities[entity.guid];
133
138
  return true;
package/src/utils.ts CHANGED
@@ -1,5 +1,6 @@
1
+ import Entity from './Entity';
1
2
  import { EntityReference } from './Entity.types';
2
- import { Nymph } from './Nymph';
3
+ import Nymph from './Nymph';
3
4
 
4
5
  export function xor(a: any, b: any): boolean {
5
6
  return !!(a && !b) || (!a && b);
@@ -13,19 +14,17 @@ export function uniqueStrings(array: string[]) {
13
14
  return Object.keys(obj);
14
15
  }
15
16
 
16
- export function entitiesToReferences(item: any, nymph: Nymph): any {
17
- const EntityClass = nymph.getEntityClass('Entity');
18
-
19
- if (item instanceof EntityClass && typeof item.$toReference === 'function') {
17
+ export function entitiesToReferences(item: any): any {
18
+ if (item instanceof Entity && typeof item.$toReference === 'function') {
20
19
  // Convert entities to references.
21
20
  return item.$toReference();
22
21
  } else if (Array.isArray(item)) {
23
22
  // Recurse into lower arrays.
24
- return item.map((entry) => entitiesToReferences(entry, nymph));
23
+ return item.map((entry) => entitiesToReferences(entry));
25
24
  } else if (item instanceof Object) {
26
25
  let newObj = Object.create(item);
27
26
  for (let [key, value] of Object.entries(item)) {
28
- newObj[key] = entitiesToReferences(value, nymph);
27
+ newObj[key] = entitiesToReferences(value);
29
28
  }
30
29
  return newObj;
31
30
  }
@@ -38,8 +37,6 @@ export function referencesToEntities(
38
37
  nymph: Nymph,
39
38
  useSkipAc = false
40
39
  ): any {
41
- const Entity = nymph.getEntityClass('Entity');
42
-
43
40
  if (Array.isArray(item)) {
44
41
  // Check if it's a reference.
45
42
  if (item[0] === 'nymph_entity_reference') {
@@ -1,30 +0,0 @@
1
- import type { Nymph } from '../Nymph';
2
- import { EntityConstructor, EntityInterface } from '../Entity.types';
3
- import { Options, Selector } from '../Nymph.types';
4
- import NymphDriver from './NymphDriver';
5
- export default class PreInitializedDriver extends NymphDriver {
6
- connect(): Promise<boolean>;
7
- isConnected(): boolean;
8
- startTransaction(_name: string): Promise<Nymph>;
9
- commit(_name: string): Promise<boolean>;
10
- rollback(_name: string): Promise<boolean>;
11
- inTransaction(): Promise<boolean>;
12
- deleteEntityByID(_guid: string, _className?: EntityConstructor | string | null): Promise<boolean>;
13
- deleteUID(_name: string): Promise<boolean>;
14
- disconnect(): Promise<boolean>;
15
- protected exportEntities(_writeLine: (line: string) => void): Promise<void>;
16
- getEntities<T extends EntityConstructor = EntityConstructor>(options: Options<T> & {
17
- return: 'guid';
18
- }, ...selectors: Selector[]): Promise<string[]>;
19
- getEntities<T extends EntityConstructor = EntityConstructor>(options?: Options<T>, ...selectors: Selector[]): Promise<ReturnType<T['factorySync']>[]>;
20
- protected getEntitiesSync<T extends EntityConstructor = EntityConstructor>(options: Options<T> & {
21
- return: 'guid';
22
- }, ...selectors: Selector[]): string[];
23
- protected getEntitiesSync<T extends EntityConstructor = EntityConstructor>(options?: Options<T>, ...selectors: Selector[]): ReturnType<T['factorySync']>[];
24
- getUID(_name: string): Promise<number | null>;
25
- import(_filename: string): Promise<boolean>;
26
- newUID(_name: string): Promise<number | null>;
27
- renameUID(_oldName: string, _newName: string): Promise<boolean>;
28
- saveEntity(_entity: EntityInterface): Promise<boolean>;
29
- setUID(_name: string, _value: number): Promise<boolean>;
30
- }
@@ -1,65 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const NymphDriver_1 = __importDefault(require("./NymphDriver"));
7
- const MSG = 'Nymph is not yet initialized!';
8
- class PreInitializedDriver extends NymphDriver_1.default {
9
- connect() {
10
- throw new Error(MSG);
11
- }
12
- isConnected() {
13
- throw new Error(MSG);
14
- }
15
- startTransaction(_name) {
16
- throw new Error(MSG);
17
- }
18
- commit(_name) {
19
- throw new Error(MSG);
20
- }
21
- rollback(_name) {
22
- throw new Error(MSG);
23
- }
24
- inTransaction() {
25
- throw new Error(MSG);
26
- }
27
- deleteEntityByID(_guid, _className) {
28
- throw new Error(MSG);
29
- }
30
- deleteUID(_name) {
31
- throw new Error(MSG);
32
- }
33
- disconnect() {
34
- throw new Error(MSG);
35
- }
36
- exportEntities(_writeLine) {
37
- throw new Error(MSG);
38
- }
39
- getEntities(_options = {}, ..._selectors) {
40
- throw new Error(MSG);
41
- }
42
- getEntitiesSync(_options = {}, ..._selectors) {
43
- throw new Error(MSG);
44
- }
45
- getUID(_name) {
46
- throw new Error(MSG);
47
- }
48
- import(_filename) {
49
- throw new Error(MSG);
50
- }
51
- newUID(_name) {
52
- throw new Error(MSG);
53
- }
54
- renameUID(_oldName, _newName) {
55
- throw new Error(MSG);
56
- }
57
- saveEntity(_entity) {
58
- throw new Error(MSG);
59
- }
60
- setUID(_name, _value) {
61
- throw new Error(MSG);
62
- }
63
- }
64
- exports.default = PreInitializedDriver;
65
- //# sourceMappingURL=PreInitializedDriver.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PreInitializedDriver.js","sourceRoot":"","sources":["../../src/driver/PreInitializedDriver.ts"],"names":[],"mappings":";;;;;AAGA,gEAAwC;AAExC,MAAM,GAAG,GAAG,+BAA+B,CAAC;AAE5C,MAAqB,oBAAqB,SAAQ,qBAAW;IAC3D,OAAO;QACL,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IACD,WAAW;QACT,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IACD,gBAAgB,CAAC,KAAa;QAC5B,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IACD,MAAM,CAAC,KAAa;QAClB,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IACD,QAAQ,CAAC,KAAa;QACpB,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IACD,aAAa;QACX,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IACD,gBAAgB,CACd,KAAa,EACb,UAA8C;QAE9C,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IACD,SAAS,CAAC,KAAa;QACrB,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IACD,UAAU;QACR,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IACS,cAAc,CAAC,UAAkC;QACzD,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IASD,WAAW,CACT,WAAuB,EAAE,EACzB,GAAG,UAAsB;QAEzB,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IASS,eAAe,CACvB,WAAuB,EAAE,EACzB,GAAG,UAAsB;QAEzB,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IACD,MAAM,CAAC,KAAa;QAClB,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IACD,MAAM,CAAC,SAAiB;QACtB,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IACD,MAAM,CAAC,KAAa;QAClB,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IACD,SAAS,CAAC,QAAgB,EAAE,QAAgB;QAC1C,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IACD,UAAU,CAAC,OAAwB;QACjC,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IACD,MAAM,CAAC,KAAa,EAAE,MAAc;QAClC,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;CACF;AAhFD,uCAgFC"}
@@ -1,88 +0,0 @@
1
- import type { Nymph } from '../Nymph';
2
- import { EntityConstructor, EntityInterface } from '../Entity.types';
3
- import { Options, Selector } from '../Nymph.types';
4
- import NymphDriver from './NymphDriver';
5
-
6
- const MSG = 'Nymph is not yet initialized!';
7
-
8
- export default class PreInitializedDriver extends NymphDriver {
9
- connect(): Promise<boolean> {
10
- throw new Error(MSG);
11
- }
12
- isConnected(): boolean {
13
- throw new Error(MSG);
14
- }
15
- startTransaction(_name: string): Promise<Nymph> {
16
- throw new Error(MSG);
17
- }
18
- commit(_name: string): Promise<boolean> {
19
- throw new Error(MSG);
20
- }
21
- rollback(_name: string): Promise<boolean> {
22
- throw new Error(MSG);
23
- }
24
- inTransaction(): Promise<boolean> {
25
- throw new Error(MSG);
26
- }
27
- deleteEntityByID(
28
- _guid: string,
29
- _className?: EntityConstructor | string | null
30
- ): Promise<boolean> {
31
- throw new Error(MSG);
32
- }
33
- deleteUID(_name: string): Promise<boolean> {
34
- throw new Error(MSG);
35
- }
36
- disconnect(): Promise<boolean> {
37
- throw new Error(MSG);
38
- }
39
- protected exportEntities(_writeLine: (line: string) => void): Promise<void> {
40
- throw new Error(MSG);
41
- }
42
- getEntities<T extends EntityConstructor = EntityConstructor>(
43
- options: Options<T> & { return: 'guid' },
44
- ...selectors: Selector[]
45
- ): Promise<string[]>;
46
- getEntities<T extends EntityConstructor = EntityConstructor>(
47
- options?: Options<T>,
48
- ...selectors: Selector[]
49
- ): Promise<ReturnType<T['factorySync']>[]>;
50
- getEntities<T extends EntityConstructor = EntityConstructor>(
51
- _options: Options<T> = {},
52
- ..._selectors: Selector[]
53
- ): Promise<ReturnType<T['factorySync']>[] | string[]> {
54
- throw new Error(MSG);
55
- }
56
- protected getEntitiesSync<T extends EntityConstructor = EntityConstructor>(
57
- options: Options<T> & { return: 'guid' },
58
- ...selectors: Selector[]
59
- ): string[];
60
- protected getEntitiesSync<T extends EntityConstructor = EntityConstructor>(
61
- options?: Options<T>,
62
- ...selectors: Selector[]
63
- ): ReturnType<T['factorySync']>[];
64
- protected getEntitiesSync<T extends EntityConstructor = EntityConstructor>(
65
- _options: Options<T> = {},
66
- ..._selectors: Selector[]
67
- ): ReturnType<T['factorySync']>[] | string[] {
68
- throw new Error(MSG);
69
- }
70
- getUID(_name: string): Promise<number | null> {
71
- throw new Error(MSG);
72
- }
73
- import(_filename: string): Promise<boolean> {
74
- throw new Error(MSG);
75
- }
76
- newUID(_name: string): Promise<number | null> {
77
- throw new Error(MSG);
78
- }
79
- renameUID(_oldName: string, _newName: string): Promise<boolean> {
80
- throw new Error(MSG);
81
- }
82
- saveEntity(_entity: EntityInterface): Promise<boolean> {
83
- throw new Error(MSG);
84
- }
85
- setUID(_name: string, _value: number): Promise<boolean> {
86
- throw new Error(MSG);
87
- }
88
- }