@nymphjs/nymph 1.0.0-beta.12 → 1.0.0-beta.121
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/CHANGELOG.md +588 -0
- package/README.md +23 -21
- package/dist/Entity.d.ts +295 -12
- package/dist/Entity.js +560 -148
- package/dist/Entity.js.map +1 -1
- package/dist/Entity.test.js +52 -13
- package/dist/Entity.test.js.map +1 -1
- package/dist/Entity.types.d.ts +256 -23
- package/dist/Entity.types.js +1 -2
- package/dist/Nymph.d.ts +590 -13
- package/dist/Nymph.js +846 -180
- package/dist/Nymph.js.map +1 -1
- package/dist/Nymph.types.d.ts +131 -8
- package/dist/Nymph.types.js +47 -5
- package/dist/Nymph.types.js.map +1 -1
- package/dist/conf/defaults.d.ts +1 -1
- package/dist/conf/defaults.js +26 -3
- package/dist/conf/defaults.js.map +1 -1
- package/dist/conf/index.d.ts +50 -2
- package/dist/conf/index.js +2 -8
- package/dist/conf/index.js.map +1 -1
- package/dist/driver/NymphDriver.d.ts +205 -40
- package/dist/driver/NymphDriver.js +712 -238
- package/dist/driver/NymphDriver.js.map +1 -1
- package/dist/driver/index.d.ts +1 -2
- package/dist/driver/index.js +2 -23
- package/dist/driver/index.js.map +1 -1
- package/dist/driver/testArtifacts.d.ts +4 -4
- package/dist/driver/testArtifacts.js +1920 -1086
- package/dist/driver/testArtifacts.js.map +1 -1
- package/dist/errors/ClassNotAvailableError.js +1 -5
- package/dist/errors/ClassNotAvailableError.js.map +1 -1
- package/dist/errors/EntityConflictError.js +1 -5
- package/dist/errors/EntityConflictError.js.map +1 -1
- package/dist/errors/EntityInvalidDataError.d.ts +6 -0
- package/dist/errors/EntityInvalidDataError.js +8 -6
- package/dist/errors/EntityInvalidDataError.js.map +1 -1
- package/dist/errors/EntityIsSleepingReferenceError.js +1 -5
- package/dist/errors/EntityIsSleepingReferenceError.js.map +1 -1
- package/dist/errors/EntityUniqueConstraintError.d.ts +3 -0
- package/dist/errors/EntityUniqueConstraintError.js +7 -0
- package/dist/errors/EntityUniqueConstraintError.js.map +1 -0
- package/dist/errors/HttpError.d.ts +5 -0
- package/dist/errors/HttpError.js +11 -0
- package/dist/errors/HttpError.js.map +1 -0
- package/dist/errors/InvalidParametersError.js +1 -5
- package/dist/errors/InvalidParametersError.js.map +1 -1
- package/dist/errors/InvalidStateError.d.ts +3 -0
- package/dist/errors/InvalidStateError.js +7 -0
- package/dist/errors/InvalidStateError.js.map +1 -0
- package/dist/errors/NotConfiguredError.js +1 -5
- package/dist/errors/NotConfiguredError.js.map +1 -1
- package/dist/errors/QueryFailedError.d.ts +2 -1
- package/dist/errors/QueryFailedError.js +5 -6
- package/dist/errors/QueryFailedError.js.map +1 -1
- package/dist/errors/UnableToConnectError.js +1 -5
- package/dist/errors/UnableToConnectError.js.map +1 -1
- package/dist/errors/index.d.ts +11 -8
- package/dist/errors/index.js +11 -24
- package/dist/errors/index.js.map +1 -1
- package/dist/index.d.ts +11 -11
- package/dist/index.js +14 -34
- package/dist/index.js.map +1 -1
- package/dist/nymphJoiProps.d.ts +1 -1
- package/dist/nymphJoiProps.js +10 -15
- package/dist/nymphJoiProps.js.map +1 -1
- package/dist/testArtifacts.d.ts +19 -6
- package/dist/testArtifacts.js +32 -37
- package/dist/testArtifacts.js.map +1 -1
- package/dist/testMocks.d.ts +27 -12
- package/dist/testMocks.js +40 -29
- package/dist/testMocks.js.map +1 -1
- package/dist/utils.d.ts +4 -4
- package/dist/utils.js +40 -29
- package/dist/utils.js.map +1 -1
- package/jest.config.js +31 -5
- package/package.json +33 -23
- package/src/Entity.test.ts +50 -7
- package/src/Entity.ts +489 -150
- package/src/Entity.types.ts +72 -74
- package/src/Nymph.ts +991 -324
- package/src/Nymph.types.ts +201 -27
- package/src/conf/defaults.ts +34 -1
- package/src/conf/index.ts +50 -2
- package/src/driver/NymphDriver.ts +898 -413
- package/src/driver/index.ts +1 -3
- package/src/driver/testArtifacts.ts +2557 -1629
- package/src/errors/EntityUniqueConstraintError.ts +6 -0
- package/src/errors/HttpError.ts +12 -0
- package/src/errors/InvalidStateError.ts +6 -0
- package/src/errors/QueryFailedError.ts +3 -1
- package/src/errors/index.ts +14 -8
- package/src/index.ts +11 -11
- package/src/nymphJoiProps.ts +2 -2
- package/src/testArtifacts.ts +20 -20
- package/src/testMocks.ts +76 -35
- package/src/utils.ts +39 -18
- package/tsconfig.json +6 -3
- package/typedoc.json +4 -0
- package/dist/conf/d.d.ts +0 -6
- package/dist/conf/d.js +0 -3
- package/dist/conf/d.js.map +0 -1
- package/src/conf/d.ts +0 -24
package/dist/errors/index.js
CHANGED
|
@@ -1,25 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./ClassNotAvailableError"), exports);
|
|
18
|
-
__exportStar(require("./EntityConflictError"), exports);
|
|
19
|
-
__exportStar(require("./EntityInvalidDataError"), exports);
|
|
20
|
-
__exportStar(require("./EntityIsSleepingReferenceError"), exports);
|
|
21
|
-
__exportStar(require("./InvalidParametersError"), exports);
|
|
22
|
-
__exportStar(require("./NotConfiguredError"), exports);
|
|
23
|
-
__exportStar(require("./QueryFailedError"), exports);
|
|
24
|
-
__exportStar(require("./UnableToConnectError"), exports);
|
|
1
|
+
export * from './ClassNotAvailableError.js';
|
|
2
|
+
export * from './EntityConflictError.js';
|
|
3
|
+
export * from './EntityInvalidDataError.js';
|
|
4
|
+
export * from './EntityIsSleepingReferenceError.js';
|
|
5
|
+
export * from './EntityUniqueConstraintError.js';
|
|
6
|
+
export * from './HttpError.js';
|
|
7
|
+
export * from './InvalidParametersError.js';
|
|
8
|
+
export * from './InvalidStateError.js';
|
|
9
|
+
export * from './NotConfiguredError.js';
|
|
10
|
+
export * from './QueryFailedError.js';
|
|
11
|
+
export * from './UnableToConnectError.js';
|
|
25
12
|
//# sourceMappingURL=index.js.map
|
package/dist/errors/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC;AAE5C,cAAc,0BAA0B,CAAC;AAEzC,cAAc,6BAA6B,CAAC;AAE5C,cAAc,qCAAqC,CAAC;AAEpD,cAAc,kCAAkC,CAAC;AAEjD,cAAc,gBAAgB,CAAC;AAE/B,cAAc,6BAA6B,CAAC;AAE5C,cAAc,wBAAwB,CAAC;AAEvC,cAAc,yBAAyB,CAAC;AAExC,cAAc,uBAAuB,CAAC;AAEtC,cAAc,2BAA2B,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
export * from './conf';
|
|
2
|
-
export * from './driver';
|
|
3
|
-
export * from './errors';
|
|
4
|
-
export * from './Entity.types';
|
|
5
|
-
export * from './Entity';
|
|
6
|
-
import Entity from './Entity';
|
|
1
|
+
export * from './conf/index.js';
|
|
2
|
+
export * from './driver/index.js';
|
|
3
|
+
export * from './errors/index.js';
|
|
4
|
+
export * from './Entity.types.js';
|
|
5
|
+
export * from './Entity.js';
|
|
6
|
+
import Entity from './Entity.js';
|
|
7
7
|
export { Entity };
|
|
8
|
-
export * from './Nymph.types';
|
|
9
|
-
export * from './Nymph';
|
|
10
|
-
import Nymph from './Nymph';
|
|
8
|
+
export * from './Nymph.types.js';
|
|
9
|
+
export * from './Nymph.js';
|
|
10
|
+
import Nymph from './Nymph.js';
|
|
11
11
|
export { Nymph };
|
|
12
|
-
import nymphJoiProps from './nymphJoiProps';
|
|
12
|
+
import nymphJoiProps from './nymphJoiProps.js';
|
|
13
13
|
export { nymphJoiProps };
|
|
14
|
-
export * from './utils';
|
|
14
|
+
export * from './utils.js';
|
package/dist/index.js
CHANGED
|
@@ -1,35 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
};
|
|
16
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
17
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
18
|
-
};
|
|
19
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
-
exports.nymphJoiProps = exports.Nymph = exports.Entity = void 0;
|
|
21
|
-
__exportStar(require("./conf"), exports);
|
|
22
|
-
__exportStar(require("./driver"), exports);
|
|
23
|
-
__exportStar(require("./errors"), exports);
|
|
24
|
-
__exportStar(require("./Entity.types"), exports);
|
|
25
|
-
__exportStar(require("./Entity"), exports);
|
|
26
|
-
const Entity_1 = __importDefault(require("./Entity"));
|
|
27
|
-
exports.Entity = Entity_1.default;
|
|
28
|
-
__exportStar(require("./Nymph.types"), exports);
|
|
29
|
-
__exportStar(require("./Nymph"), exports);
|
|
30
|
-
const Nymph_1 = __importDefault(require("./Nymph"));
|
|
31
|
-
exports.Nymph = Nymph_1.default;
|
|
32
|
-
const nymphJoiProps_1 = __importDefault(require("./nymphJoiProps"));
|
|
33
|
-
exports.nymphJoiProps = nymphJoiProps_1.default;
|
|
34
|
-
__exportStar(require("./utils"), exports);
|
|
1
|
+
export * from './conf/index.js';
|
|
2
|
+
export * from './driver/index.js';
|
|
3
|
+
export * from './errors/index.js';
|
|
4
|
+
export * from './Entity.types.js';
|
|
5
|
+
export * from './Entity.js';
|
|
6
|
+
import Entity from './Entity.js';
|
|
7
|
+
export { Entity };
|
|
8
|
+
export * from './Nymph.types.js';
|
|
9
|
+
export * from './Nymph.js';
|
|
10
|
+
import Nymph from './Nymph.js';
|
|
11
|
+
export { Nymph };
|
|
12
|
+
import nymphJoiProps from './nymphJoiProps.js';
|
|
13
|
+
export { nymphJoiProps };
|
|
14
|
+
export * from './utils.js';
|
|
35
15
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAElC,cAAc,mBAAmB,CAAC;AAElC,cAAc,aAAa,CAAC;AAC5B,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,CAAC;AAElB,cAAc,kBAAkB,CAAC;AAEjC,cAAc,YAAY,CAAC;AAC3B,OAAO,KAAK,MAAM,YAAY,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,CAAC;AAEjB,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,CAAC;AAEzB,cAAc,YAAY,CAAC"}
|
package/dist/nymphJoiProps.d.ts
CHANGED
package/dist/nymphJoiProps.js
CHANGED
|
@@ -1,21 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const joi_1 = __importDefault(require("joi"));
|
|
7
|
-
exports.default = {
|
|
8
|
-
guid: joi_1.default.alternatives()
|
|
9
|
-
.try(joi_1.default.any().only().allow(null), joi_1.default.string().trim(false).length(24).hex())
|
|
1
|
+
import Joi from 'joi';
|
|
2
|
+
export default {
|
|
3
|
+
guid: Joi.alternatives()
|
|
4
|
+
.try(Joi.any().only().allow(null), Joi.string().trim(false).length(24).hex())
|
|
10
5
|
.required(),
|
|
11
|
-
cdate:
|
|
12
|
-
.try(
|
|
6
|
+
cdate: Joi.alternatives()
|
|
7
|
+
.try(Joi.any().only().allow(null), Joi.number())
|
|
13
8
|
.required(),
|
|
14
|
-
mdate:
|
|
15
|
-
.try(
|
|
9
|
+
mdate: Joi.alternatives()
|
|
10
|
+
.try(Joi.any().only().allow(null), Joi.number())
|
|
16
11
|
.required(),
|
|
17
|
-
tags:
|
|
18
|
-
.items(
|
|
12
|
+
tags: Joi.array()
|
|
13
|
+
.items(Joi.string().pattern(/[[\x01-\x1F\x7F]]/, {
|
|
19
14
|
name: 'control characters',
|
|
20
15
|
invert: true,
|
|
21
16
|
}))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nymphJoiProps.js","sourceRoot":"","sources":["../src/nymphJoiProps.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"nymphJoiProps.js","sourceRoot":"","sources":["../src/nymphJoiProps.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,eAAe;IACb,IAAI,EAAE,GAAG,CAAC,YAAY,EAAE;SACrB,GAAG,CACF,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAC5B,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAC1C;SACA,QAAQ,EAAE;IACb,KAAK,EAAE,GAAG,CAAC,YAAY,EAAE;SACtB,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC;SAC/C,QAAQ,EAAE;IACb,KAAK,EAAE,GAAG,CAAC,YAAY,EAAE;SACtB,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC;SAC/C,QAAQ,EAAE;IACb,IAAI,EAAE,GAAG,CAAC,KAAK,EAAE;SACd,KAAK,CACJ,GAAG,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,mBAAmB,EAAE;QACxC,IAAI,EAAE,oBAAoB;QAC1B,MAAM,EAAE,IAAI;KACb,CAAC,CACH;SACA,QAAQ,EAAE;CACd,CAAC"}
|
package/dist/testArtifacts.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import Entity from './Entity';
|
|
1
|
+
import Entity from './Entity.js';
|
|
2
2
|
export type TestModelData = {
|
|
3
3
|
name?: string;
|
|
4
4
|
null?: null;
|
|
@@ -6,6 +6,7 @@ export type TestModelData = {
|
|
|
6
6
|
test?: string;
|
|
7
7
|
array?: any[];
|
|
8
8
|
match?: string;
|
|
9
|
+
search?: string;
|
|
9
10
|
number?: number;
|
|
10
11
|
numberString?: string;
|
|
11
12
|
timestamp?: Number;
|
|
@@ -17,7 +18,11 @@ export type TestModelData = {
|
|
|
17
18
|
};
|
|
18
19
|
parent?: TestModel & TestModelData;
|
|
19
20
|
index?: string;
|
|
21
|
+
uniques?: string[];
|
|
20
22
|
};
|
|
23
|
+
/**
|
|
24
|
+
* This class is a test class that extends the Entity class.
|
|
25
|
+
*/
|
|
21
26
|
export declare class TestModel extends Entity<TestModelData> {
|
|
22
27
|
static ETYPE: string;
|
|
23
28
|
static class: string;
|
|
@@ -26,14 +31,22 @@ export declare class TestModel extends Entity<TestModelData> {
|
|
|
26
31
|
protected $allowlistData?: string[] | undefined;
|
|
27
32
|
protected $protectedTags: string[];
|
|
28
33
|
protected $allowlistTags?: string[] | undefined;
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
constructor(guid?: string);
|
|
34
|
+
constructor();
|
|
35
|
+
$getUniques(): Promise<string[]>;
|
|
32
36
|
$useProtectedData(): () => void;
|
|
33
37
|
}
|
|
38
|
+
/**
|
|
39
|
+
* This class is a test class that extends the Entity class.
|
|
40
|
+
*/
|
|
34
41
|
export declare class TestBModel extends TestModel {
|
|
35
42
|
static ETYPE: string;
|
|
36
43
|
static class: string;
|
|
37
|
-
|
|
38
|
-
|
|
44
|
+
}
|
|
45
|
+
export type TestEmptyModelData = {};
|
|
46
|
+
/**
|
|
47
|
+
* This class is a test class that extends the Entity class.
|
|
48
|
+
*/
|
|
49
|
+
export declare class TestEmptyModel extends Entity<TestEmptyModelData> {
|
|
50
|
+
static ETYPE: string;
|
|
51
|
+
static class: string;
|
|
39
52
|
}
|
package/dist/testArtifacts.js
CHANGED
|
@@ -1,27 +1,23 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
static
|
|
10
|
-
|
|
1
|
+
import Entity from './Entity.js';
|
|
2
|
+
/**
|
|
3
|
+
* This class is a test class that extends the Entity class.
|
|
4
|
+
*/
|
|
5
|
+
export class TestModel extends Entity {
|
|
6
|
+
static ETYPE = 'test_model';
|
|
7
|
+
static class = 'TestModel';
|
|
8
|
+
$privateData = ['boolean'];
|
|
9
|
+
static searchRestrictedData = ['fish'];
|
|
10
|
+
$allowlistData = ['string', 'array', 'mdate'];
|
|
11
|
+
$protectedTags = ['test', 'notag'];
|
|
12
|
+
$allowlistTags = ['newtag'];
|
|
13
|
+
constructor() {
|
|
14
|
+
super();
|
|
15
|
+
this.$addTag('test');
|
|
16
|
+
this.$data.boolean = true;
|
|
17
|
+
this.$data.uniques = [];
|
|
11
18
|
}
|
|
12
|
-
|
|
13
|
-
return
|
|
14
|
-
}
|
|
15
|
-
constructor(guid) {
|
|
16
|
-
super(guid);
|
|
17
|
-
this.$privateData = ['boolean'];
|
|
18
|
-
this.$allowlistData = ['string', 'array', 'mdate'];
|
|
19
|
-
this.$protectedTags = ['test', 'notag'];
|
|
20
|
-
this.$allowlistTags = ['newtag'];
|
|
21
|
-
if (this.guid == null) {
|
|
22
|
-
this.$addTag('test');
|
|
23
|
-
this.$data.boolean = true;
|
|
24
|
-
}
|
|
19
|
+
async $getUniques() {
|
|
20
|
+
return this.$data.uniques ?? [];
|
|
25
21
|
}
|
|
26
22
|
$useProtectedData() {
|
|
27
23
|
const $allowlistData = this.$allowlistData;
|
|
@@ -40,19 +36,18 @@ class TestModel extends Entity_1.default {
|
|
|
40
36
|
};
|
|
41
37
|
}
|
|
42
38
|
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
TestModel
|
|
47
|
-
|
|
48
|
-
static
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
39
|
+
/**
|
|
40
|
+
* This class is a test class that extends the Entity class.
|
|
41
|
+
*/
|
|
42
|
+
export class TestBModel extends TestModel {
|
|
43
|
+
static ETYPE = 'test_b_model';
|
|
44
|
+
static class = 'TestBModel';
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* This class is a test class that extends the Entity class.
|
|
48
|
+
*/
|
|
49
|
+
export class TestEmptyModel extends Entity {
|
|
50
|
+
static ETYPE = 'test_empty_model';
|
|
51
|
+
static class = 'TestEmptyModel';
|
|
54
52
|
}
|
|
55
|
-
exports.TestBModel = TestBModel;
|
|
56
|
-
TestBModel.ETYPE = 'test_b_model';
|
|
57
|
-
TestBModel.class = 'TestBModel';
|
|
58
53
|
//# sourceMappingURL=testArtifacts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testArtifacts.js","sourceRoot":"","sources":["../src/testArtifacts.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"testArtifacts.js","sourceRoot":"","sources":["../src/testArtifacts.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AA0BjC;;GAEG;AACH,MAAM,OAAO,SAAU,SAAQ,MAAqB;IAClD,MAAM,CAAC,KAAK,GAAG,YAAY,CAAC;IAC5B,MAAM,CAAC,KAAK,GAAG,WAAW,CAAC;IAEjB,YAAY,GAAG,CAAC,SAAS,CAAC,CAAC;IAC9B,MAAM,CAAC,oBAAoB,GAAG,CAAC,MAAM,CAAC,CAAC;IACpC,cAAc,GAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC/C,cAAc,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,cAAc,GAAI,CAAC,QAAQ,CAAC,CAAC;IAEvC;QACE,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACrB,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC;IAC1B,CAAC;IAEM,KAAK,CAAC,WAAW;QACtB,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC;IAClC,CAAC;IAEM,iBAAiB;QACtB,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAC3C,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAC3C,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAC3C,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAE3C,OAAO,IAAI,CAAC,cAAc,CAAC;QAC3B,OAAO,IAAI,CAAC,cAAc,CAAC;QAC3B,IAAI,CAAC,cAAc,GAAG,CAAC,QAAQ,CAAC,CAAC;QACjC,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;QAEzB,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;YACrC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;YACrC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;YACrC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACvC,CAAC,CAAC;IACJ,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,UAAW,SAAQ,SAAS;IACvC,MAAM,CAAC,KAAK,GAAG,cAAc,CAAC;IAC9B,MAAM,CAAC,KAAK,GAAG,YAAY,CAAC;CAC7B;AAID;;GAEG;AACH,MAAM,OAAO,cAAe,SAAQ,MAA0B;IAC5D,MAAM,CAAC,KAAK,GAAG,kBAAkB,CAAC;IAClC,MAAM,CAAC,KAAK,GAAG,gBAAgB,CAAC;CACjC"}
|
package/dist/testMocks.d.ts
CHANGED
|
@@ -1,17 +1,24 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
1
|
+
import type { EntityInstanceType, EntityObjectType } from './Entity.js';
|
|
2
|
+
import type { EntityConstructor, EntityInterface } from './Entity.types.js';
|
|
3
|
+
import { Options, Selector } from './Nymph.types.js';
|
|
4
|
+
import Entity from './Entity.js';
|
|
4
5
|
export declare class MockNymphDriver {
|
|
5
6
|
private nymph;
|
|
6
7
|
constructor(nymph: MockNymph);
|
|
7
|
-
|
|
8
|
+
getEntity<T extends EntityConstructor = EntityConstructor>(options: Options<T> & {
|
|
8
9
|
return: 'guid';
|
|
9
|
-
}, ...selectors: Selector[]): string | null
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
}, ...selectors: Selector[]): Promise<string | null>;
|
|
11
|
+
getEntity<T extends EntityConstructor = EntityConstructor>(options: Options<T> & {
|
|
12
|
+
return: 'object';
|
|
13
|
+
}, ...selectors: Selector[]): Promise<EntityObjectType<T> | null>;
|
|
14
|
+
getEntity<T extends EntityConstructor = EntityConstructor>(options: Options<T>, ...selectors: Selector[]): Promise<EntityInstanceType<T> | null>;
|
|
15
|
+
getEntity<T extends EntityConstructor = EntityConstructor>(options: Options<T> & {
|
|
12
16
|
return: 'guid';
|
|
13
|
-
}, guid: string): string | null
|
|
14
|
-
|
|
17
|
+
}, guid: string): Promise<string | null>;
|
|
18
|
+
getEntity<T extends EntityConstructor = EntityConstructor>(options: Options<T> & {
|
|
19
|
+
return: 'object';
|
|
20
|
+
}, guid: string): Promise<EntityObjectType<T> | null>;
|
|
21
|
+
getEntity<T extends EntityConstructor = EntityConstructor>(options: Options<T>, guid: string): Promise<EntityInstanceType<T> | null>;
|
|
15
22
|
}
|
|
16
23
|
export declare class MockNymph {
|
|
17
24
|
private entityClasses;
|
|
@@ -19,16 +26,24 @@ export declare class MockNymph {
|
|
|
19
26
|
Tilmeld: any;
|
|
20
27
|
Entity: typeof Entity;
|
|
21
28
|
constructor();
|
|
22
|
-
addEntityClass<T extends EntityConstructor>(
|
|
29
|
+
addEntityClass<T extends EntityConstructor>(EntityClass: T): T;
|
|
23
30
|
getEntityClass(className: string): EntityConstructor;
|
|
31
|
+
getEntityClass<T extends EntityConstructor>(className: T): T;
|
|
32
|
+
getEntityClassByEtype(etype: string): EntityConstructor;
|
|
24
33
|
getEntity<T extends EntityConstructor = EntityConstructor>(options: Options<T> & {
|
|
25
34
|
return: 'guid';
|
|
26
35
|
}, ...selectors: Selector[]): Promise<string | null>;
|
|
27
|
-
getEntity<T extends EntityConstructor = EntityConstructor>(options: Options<T
|
|
36
|
+
getEntity<T extends EntityConstructor = EntityConstructor>(options: Options<T> & {
|
|
37
|
+
return: 'object';
|
|
38
|
+
}, ...selectors: Selector[]): Promise<EntityObjectType<T> | null>;
|
|
39
|
+
getEntity<T extends EntityConstructor = EntityConstructor>(options: Options<T>, ...selectors: Selector[]): Promise<EntityInstanceType<T> | null>;
|
|
28
40
|
getEntity<T extends EntityConstructor = EntityConstructor>(options: Options<T> & {
|
|
29
41
|
return: 'guid';
|
|
30
42
|
}, guid: string): Promise<string | null>;
|
|
31
|
-
getEntity<T extends EntityConstructor = EntityConstructor>(options: Options<T
|
|
43
|
+
getEntity<T extends EntityConstructor = EntityConstructor>(options: Options<T> & {
|
|
44
|
+
return: 'object';
|
|
45
|
+
}, guid: string): Promise<EntityObjectType<T> | null>;
|
|
46
|
+
getEntity<T extends EntityConstructor = EntityConstructor>(options: Options<T>, guid: string): Promise<EntityInstanceType<T> | null>;
|
|
32
47
|
saveEntity(entity: EntityInterface): Promise<boolean>;
|
|
33
48
|
deleteEntity(entity: EntityInterface): Promise<boolean>;
|
|
34
49
|
}
|
package/dist/testMocks.js
CHANGED
|
@@ -1,18 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.MockNymph = exports.MockNymphDriver = void 0;
|
|
7
|
-
const guid_1 = require("@nymphjs/guid");
|
|
8
|
-
const errors_1 = require("./errors");
|
|
9
|
-
const Entity_1 = __importDefault(require("./Entity"));
|
|
1
|
+
import { guid } from '@nymphjs/guid';
|
|
2
|
+
import { ClassNotAvailableError } from './errors/index.js';
|
|
3
|
+
import Entity from './Entity.js';
|
|
10
4
|
const entities = {};
|
|
11
|
-
class MockNymphDriver {
|
|
5
|
+
export class MockNymphDriver {
|
|
6
|
+
nymph;
|
|
12
7
|
constructor(nymph) {
|
|
13
8
|
this.nymph = nymph;
|
|
14
9
|
}
|
|
15
|
-
|
|
10
|
+
async getEntity(options = {}, ...selectors) {
|
|
16
11
|
const guid = typeof selectors[0] === 'string' ? selectors[0] : selectors[0].guid;
|
|
17
12
|
if (!options || !guid || typeof guid !== 'string' || !(guid in entities)) {
|
|
18
13
|
return null;
|
|
@@ -23,42 +18,59 @@ class MockNymphDriver {
|
|
|
23
18
|
entity.cdate = entityJson.cdate;
|
|
24
19
|
entity.mdate = entityJson.mdate;
|
|
25
20
|
entity.tags = entityJson.tags;
|
|
26
|
-
entity.$putData(entityJson.data, {});
|
|
21
|
+
entity.$putData(entityJson.data, {}, 'server');
|
|
27
22
|
return entity;
|
|
28
23
|
}
|
|
29
24
|
}
|
|
30
|
-
|
|
31
|
-
|
|
25
|
+
export class MockNymph {
|
|
26
|
+
entityClasses = {};
|
|
27
|
+
driver;
|
|
28
|
+
Tilmeld = undefined;
|
|
29
|
+
Entity;
|
|
32
30
|
constructor() {
|
|
33
|
-
this.entityClasses = {};
|
|
34
|
-
this.Tilmeld = undefined;
|
|
35
31
|
this.driver = new MockNymphDriver(this);
|
|
36
|
-
|
|
32
|
+
// class NymphEntity extends Entity {}
|
|
33
|
+
this.Entity = this.addEntityClass(Entity);
|
|
37
34
|
}
|
|
38
|
-
addEntityClass(
|
|
35
|
+
addEntityClass(EntityClass) {
|
|
39
36
|
const nymph = this;
|
|
40
|
-
class
|
|
37
|
+
this.entityClasses[EntityClass.class] = class extends EntityClass {
|
|
38
|
+
static nymph = nymph;
|
|
41
39
|
constructor(...args) {
|
|
42
40
|
super(...args);
|
|
43
41
|
}
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
this.entityClasses[entityClass.class] = NymphEntity;
|
|
47
|
-
return NymphEntity;
|
|
42
|
+
};
|
|
43
|
+
return this.entityClasses[EntityClass.class];
|
|
48
44
|
}
|
|
49
45
|
getEntityClass(className) {
|
|
50
|
-
|
|
51
|
-
|
|
46
|
+
let key = null;
|
|
47
|
+
if (typeof className === 'string') {
|
|
48
|
+
key = className;
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
key = className.class;
|
|
52
|
+
}
|
|
53
|
+
if (key in this.entityClasses) {
|
|
54
|
+
return this.entityClasses[key];
|
|
55
|
+
}
|
|
56
|
+
throw new ClassNotAvailableError(`Tried to use missing class "${key}".`);
|
|
57
|
+
}
|
|
58
|
+
getEntityClassByEtype(etype) {
|
|
59
|
+
for (const EntityClass of Object.values(this.entityClasses)) {
|
|
60
|
+
if (EntityClass.ETYPE === etype) {
|
|
61
|
+
return EntityClass;
|
|
62
|
+
}
|
|
52
63
|
}
|
|
53
|
-
throw new
|
|
64
|
+
throw new ClassNotAvailableError(`Tried to use missing class by etype "${etype}".`);
|
|
54
65
|
}
|
|
55
66
|
async getEntity(options = {}, ...selectors) {
|
|
56
|
-
|
|
67
|
+
// @ts-ignore: The selector type is correct here.
|
|
68
|
+
return await this.driver.getEntity(options, ...selectors);
|
|
57
69
|
}
|
|
58
70
|
async saveEntity(entity) {
|
|
59
71
|
const className = entity.constructor.class;
|
|
60
72
|
if (entity.guid == null) {
|
|
61
|
-
entity.guid =
|
|
73
|
+
entity.guid = guid();
|
|
62
74
|
entity.cdate = Date.now();
|
|
63
75
|
}
|
|
64
76
|
else if (entity.guid in entities &&
|
|
@@ -85,5 +97,4 @@ class MockNymph {
|
|
|
85
97
|
return false;
|
|
86
98
|
}
|
|
87
99
|
}
|
|
88
|
-
exports.MockNymph = MockNymph;
|
|
89
100
|
//# sourceMappingURL=testMocks.js.map
|
package/dist/testMocks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testMocks.js","sourceRoot":"","sources":["../src/testMocks.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"testMocks.js","sourceRoot":"","sources":["../src/testMocks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAUrC,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,MAAM,QAAQ,GAAgC,EAAE,CAAC;AAEjD,MAAM,OAAO,eAAe;IAClB,KAAK,CAAY;IAEzB,YAAmB,KAAgB;QACjC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IA0BM,KAAK,CAAC,SAAS,CACpB,OAAO,GAAe,EAAE,EACxB,GAAG,SAAgC;QAEnC,MAAM,IAAI,GACR,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACtE,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,IAAI,QAAQ,CAAC,EAAE,CAAC;YACzE,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,MAAM,GACV,CAAC,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,CACtD,CAAC,WAAW,EAAE,CAAC;QAChB,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;QACnB,MAAM,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;QAChC,MAAM,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;QAChC,MAAM,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;QAC9B,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;QAE/C,OAAO,MAA+B,CAAC;IACzC,CAAC;CACF;AAED,MAAM,OAAO,SAAS;IACZ,aAAa,GAAuC,EAAE,CAAC;IACxD,MAAM,CAAkB;IACxB,OAAO,GAAQ,SAAS,CAAC;IACzB,MAAM,CAAgB;IAE7B;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;QAExC,sCAAsC;QACtC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC;IAEM,cAAc,CAA8B,WAAc;QAC/D,MAAM,KAAK,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,KAAM,SAAQ,WAAW;YAC/D,MAAM,CAAC,KAAK,GAAU,KAAyB,CAAC;YAEhD,YAAY,GAAG,IAAW;gBACxB,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;YACjB,CAAC;SACF,CAAC;QACF,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,KAAK,CAAM,CAAC;IACpD,CAAC;IAIM,cAAc,CACnB,SAAqB;QAErB,IAAI,GAAG,GAAkB,IAAI,CAAC;QAC9B,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;YAClC,GAAG,GAAG,SAAS,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,GAAG,GAAG,SAAS,CAAC,KAAK,CAAC;QACxB,CAAC;QACD,IAAI,GAAG,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QACjC,CAAC;QACD,MAAM,IAAI,sBAAsB,CAAC,+BAA+B,GAAG,IAAI,CAAC,CAAC;IAC3E,CAAC;IAEM,qBAAqB,CAAC,KAAa;QACxC,KAAK,MAAM,WAAW,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;YAC5D,IAAI,WAAW,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;gBAChC,OAAO,WAAW,CAAC;YACrB,CAAC;QACH,CAAC;QACD,MAAM,IAAI,sBAAsB,CAC9B,wCAAwC,KAAK,IAAI,CAClD,CAAC;IACJ,CAAC;IA0BM,KAAK,CAAC,SAAS,CACpB,OAAO,GAAe,EAAE,EACxB,GAAG,SAAgC;QAEnC,iDAAiD;QACjD,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,CAAC;IAC5D,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,MAAuB;QAC7C,MAAM,SAAS,GAAI,MAAM,CAAC,WAAmB,CAAC,KAAe,CAAC;QAE9D,IAAI,MAAM,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;YACxB,MAAM,CAAC,IAAI,GAAG,IAAI,EAAE,CAAC;YACrB,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC5B,CAAC;aAAM,IACL,MAAM,CAAC,IAAI,IAAI,QAAQ;YACvB,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,EACxD,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE1B,MAAM,UAAU,GAAe;YAC7B,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC;YACtB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;SACxD,CAAC;QAEF,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,YAAY,CAAC,MAAuB;QAC/C,IAAI,MAAM,CAAC,IAAI,IAAI,IAAI,IAAI,MAAM,CAAC,IAAI,IAAI,QAAQ,EAAE,CAAC;YACnD,OAAO,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC7B,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;CACF"}
|
package/dist/utils.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import Nymph from './Nymph';
|
|
2
|
-
import { Selector } from './Nymph.types';
|
|
1
|
+
import Nymph from './Nymph.js';
|
|
2
|
+
import { Selector } from './Nymph.types.js';
|
|
3
3
|
export declare function xor(a: any, b: any): boolean;
|
|
4
4
|
export declare function uniqueStrings(array: string[]): string[];
|
|
5
|
-
export declare function classNamesToEntityConstructors(nymph: Nymph, selectors: Selector[]): Selector[];
|
|
6
|
-
export declare function entitiesToReferences(item: any): any;
|
|
5
|
+
export declare function classNamesToEntityConstructors(nymph: Nymph, selectors: Selector[], enforceRestEnabledFlag?: boolean): Selector[];
|
|
6
|
+
export declare function entitiesToReferences(item: any, existingOnly?: boolean): any;
|
|
7
7
|
export declare function referencesToEntities(item: any, nymph: Nymph, useSkipAc?: boolean): any;
|
|
8
8
|
export declare function sortObj<T extends {
|
|
9
9
|
[k: string]: any;
|