@decaf-ts/core 0.2.0 → 0.2.1
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/dist/core.bundle.min.js +1 -1
- package/dist/esm/core.bundle.min.esm.js +1 -1
- package/lib/esm/identity/utils.js +3 -3
- package/lib/esm/index.d.ts +1 -1
- package/lib/esm/index.js +2 -2
- package/lib/esm/model/decorators.d.ts +2 -2
- package/lib/esm/model/decorators.js +11 -14
- package/lib/esm/persistence/Adapter.d.ts +5 -3
- package/lib/esm/persistence/Adapter.js +32 -7
- package/lib/esm/persistence/constants.d.ts +0 -1
- package/lib/esm/persistence/constants.js +1 -2
- package/lib/esm/persistence/index.d.ts +0 -1
- package/lib/esm/persistence/index.js +1 -2
- package/lib/esm/query/Statement.js +3 -8
- package/lib/esm/repository/Repository.d.ts +4 -0
- package/lib/esm/repository/Repository.js +32 -3
- package/lib/esm/repository/decorators.js +1 -5
- package/lib/esm/repository/types.d.ts +3 -0
- package/lib/esm/repository/types.js +1 -1
- package/lib/esm/repository/utils.d.ts +0 -3
- package/lib/esm/repository/utils.js +4 -32
- package/lib/esm/validators/ClauseSequenceValidator.js +4 -3
- package/lib/identity/utils.cjs +3 -3
- package/lib/index.cjs +2 -2
- package/lib/index.d.ts +1 -1
- package/lib/model/decorators.cjs +13 -16
- package/lib/model/decorators.d.ts +2 -2
- package/lib/persistence/Adapter.cjs +30 -5
- package/lib/persistence/Adapter.d.ts +5 -3
- package/lib/persistence/constants.cjs +1 -2
- package/lib/persistence/constants.d.ts +0 -1
- package/lib/persistence/index.cjs +1 -2
- package/lib/persistence/index.d.ts +0 -1
- package/lib/query/Statement.cjs +3 -8
- package/lib/repository/Repository.cjs +34 -5
- package/lib/repository/Repository.d.ts +4 -0
- package/lib/repository/decorators.cjs +1 -5
- package/lib/repository/types.cjs +1 -1
- package/lib/repository/types.d.ts +3 -0
- package/lib/repository/utils.cjs +3 -33
- package/lib/repository/utils.d.ts +0 -3
- package/lib/validators/ClauseSequenceValidator.cjs +8 -7
- package/package.json +1 -1
- package/lib/esm/persistence/utils.d.ts +0 -3
- package/lib/esm/persistence/utils.js +0 -12
- package/lib/persistence/utils.cjs +0 -16
- package/lib/persistence/utils.d.ts +0 -3
package/lib/repository/utils.cjs
CHANGED
|
@@ -1,42 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.bootRepository = bootRepository;
|
|
4
|
-
exports.getTableName = getTableName;
|
|
5
3
|
exports.generateInjectableNameForRepository = generateInjectableNameForRepository;
|
|
6
4
|
const db_decorators_1 = require("@decaf-ts/db-decorators");
|
|
7
|
-
const injectable_decorators_1 = require("@decaf-ts/injectable-decorators");
|
|
8
|
-
const Repository_1 = require("./Repository.cjs");
|
|
9
5
|
const decorator_validation_1 = require("@decaf-ts/decorator-validation");
|
|
10
6
|
const Adapter_1 = require("../persistence/Adapter.cjs");
|
|
11
7
|
const constants_1 = require("../persistence/constants.cjs");
|
|
12
8
|
const decorator_validation_2 = require("@decaf-ts/decorator-validation");
|
|
13
|
-
|
|
14
|
-
const repo = Repository_1.Repository.forModel(model);
|
|
15
|
-
console.log(repo);
|
|
16
|
-
const injectableName = Reflect.getMetadata(Repository_1.Repository.key(db_decorators_1.DBKeys.REPOSITORY), model);
|
|
17
|
-
if (!injectableName)
|
|
18
|
-
throw new db_decorators_1.InternalError(`No Repository defined for model ${model.constructor.name}`);
|
|
19
|
-
const flavour = Reflect.getMetadata(Adapter_1.Adapter.key(constants_1.PersistenceKeys.ADAPTER), original);
|
|
20
|
-
if (!flavour)
|
|
21
|
-
throw new db_decorators_1.InternalError(`Could not find persistence adapter definition for repository ${original.name}`);
|
|
22
|
-
try {
|
|
23
|
-
const adapter = Adapter_1.Adapter.get(flavour);
|
|
24
|
-
return injectable_decorators_1.Injectables.get(injectableName, adapter);
|
|
25
|
-
}
|
|
26
|
-
catch (e) {
|
|
27
|
-
throw new db_decorators_1.InternalError(e);
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
function getTableName(model) {
|
|
31
|
-
const metadata = Reflect.getMetadata(Adapter_1.Adapter.key(constants_1.PersistenceKeys.TABLE), model instanceof decorator_validation_2.Model ? model.constructor : model);
|
|
32
|
-
if (metadata) {
|
|
33
|
-
return metadata;
|
|
34
|
-
}
|
|
35
|
-
if (model instanceof decorator_validation_2.Model) {
|
|
36
|
-
return model.constructor.name;
|
|
37
|
-
}
|
|
38
|
-
return model.name;
|
|
39
|
-
}
|
|
9
|
+
const Repository_1 = require("./Repository.cjs");
|
|
40
10
|
function generateInjectableNameForRepository(model, flavour) {
|
|
41
11
|
if (!flavour) {
|
|
42
12
|
const key = Adapter_1.Adapter.key(constants_1.PersistenceKeys.ADAPTER);
|
|
@@ -44,7 +14,7 @@ function generateInjectableNameForRepository(model, flavour) {
|
|
|
44
14
|
if (!flavour)
|
|
45
15
|
throw new db_decorators_1.InternalError(`Could not retrieve flavour from model ${model instanceof decorator_validation_2.Model ? model.constructor.name : model.name}`);
|
|
46
16
|
}
|
|
47
|
-
return (0, decorator_validation_1.sf)(constants_1.PersistenceKeys.INJECTABLE, flavour,
|
|
17
|
+
return (0, decorator_validation_1.sf)(constants_1.PersistenceKeys.INJECTABLE, flavour, Repository_1.Repository.table(model));
|
|
48
18
|
}
|
|
49
19
|
|
|
50
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9yZXBvc2l0b3J5L3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBT0Esa0ZBZ0JDO0FBdkJELDJEQUF3RDtBQUN4RCx5RUFBaUU7QUFDakUsb0RBQWlEO0FBQ2pELHdEQUEyRDtBQUMzRCx5RUFBdUQ7QUFDdkQsNkNBQTBDO0FBRTFDLFNBQWdCLG1DQUFtQyxDQUNqRCxLQUF5QixFQUN6QixPQUFnQjtJQUVoQixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDYixNQUFNLEdBQUcsR0FBRyxpQkFBTyxDQUFDLEdBQUcsQ0FBQywyQkFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2pELE9BQU8sR0FBRyxPQUFPLENBQUMsV0FBVyxDQUMzQixHQUFHLEVBQ0gsS0FBSyxZQUFZLDRCQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FDbkQsQ0FBQztRQUNGLElBQUksQ0FBQyxPQUFPO1lBQ1YsTUFBTSxJQUFJLDZCQUFhLENBQ3JCLHlDQUF5QyxLQUFLLFlBQVksNEJBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FDeEcsQ0FBQztJQUNOLENBQUM7SUFDRCxPQUFPLElBQUEseUJBQUUsRUFBQywyQkFBZSxDQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUUsdUJBQVUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztBQUMxRSxDQUFDIiwiZmlsZSI6InJlcG9zaXRvcnkvdXRpbHMuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbnRlcm5hbEVycm9yIH0gZnJvbSBcIkBkZWNhZi10cy9kYi1kZWNvcmF0b3JzXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3Rvciwgc2YgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBBZGFwdGVyIH0gZnJvbSBcIi4uL3BlcnNpc3RlbmNlL0FkYXB0ZXJcIjtcbmltcG9ydCB7IFBlcnNpc3RlbmNlS2V5cyB9IGZyb20gXCIuLi9wZXJzaXN0ZW5jZS9jb25zdGFudHNcIjtcbmltcG9ydCB7IE1vZGVsIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgUmVwb3NpdG9yeSB9IGZyb20gXCIuL1JlcG9zaXRvcnlcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGdlbmVyYXRlSW5qZWN0YWJsZU5hbWVGb3JSZXBvc2l0b3J5PFQgZXh0ZW5kcyBNb2RlbD4oXG4gIG1vZGVsOiBDb25zdHJ1Y3RvcjxUPiB8IFQsXG4gIGZsYXZvdXI/OiBzdHJpbmdcbikge1xuICBpZiAoIWZsYXZvdXIpIHtcbiAgICBjb25zdCBrZXkgPSBBZGFwdGVyLmtleShQZXJzaXN0ZW5jZUtleXMuQURBUFRFUik7XG4gICAgZmxhdm91ciA9IFJlZmxlY3QuZ2V0TWV0YWRhdGEoXG4gICAgICBrZXksXG4gICAgICBtb2RlbCBpbnN0YW5jZW9mIE1vZGVsID8gbW9kZWwuY29uc3RydWN0b3IgOiBtb2RlbFxuICAgICk7XG4gICAgaWYgKCFmbGF2b3VyKVxuICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXG4gICAgICAgIGBDb3VsZCBub3QgcmV0cmlldmUgZmxhdm91ciBmcm9tIG1vZGVsICR7bW9kZWwgaW5zdGFuY2VvZiBNb2RlbCA/IG1vZGVsLmNvbnN0cnVjdG9yLm5hbWUgOiBtb2RlbC5uYW1lfWBcbiAgICAgICk7XG4gIH1cbiAgcmV0dXJuIHNmKFBlcnNpc3RlbmNlS2V5cy5JTkpFQ1RBQkxFLCBmbGF2b3VyLCBSZXBvc2l0b3J5LnRhYmxlKG1vZGVsKSk7XG59XG4iXX0=
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
import { Repository } from "./Repository";
|
|
2
1
|
import { Constructor } from "@decaf-ts/decorator-validation";
|
|
3
2
|
import { Model } from "@decaf-ts/decorator-validation";
|
|
4
|
-
export declare function bootRepository<T extends Model>(model: Constructor<T>, original: Constructor<Repository<T>>): Repository<T>;
|
|
5
|
-
export declare function getTableName<T extends Model>(model: T | Constructor<T>): any;
|
|
6
3
|
export declare function generateInjectableNameForRepository<T extends Model>(model: Constructor<T> | T, flavour?: string): string;
|
|
@@ -13,8 +13,9 @@ exports.ClauseSequenceValidator = void 0;
|
|
|
13
13
|
const decorator_validation_1 = require("@decaf-ts/decorator-validation");
|
|
14
14
|
const reflection_1 = require("@decaf-ts/reflection");
|
|
15
15
|
const Clause_1 = require("../query/Clause.cjs");
|
|
16
|
-
const
|
|
17
|
-
const
|
|
16
|
+
const constants_1 = require("../query/constants.cjs");
|
|
17
|
+
const errors_1 = require("../query/errors.cjs");
|
|
18
|
+
const constants_2 = require("../persistence/constants.cjs");
|
|
18
19
|
/**
|
|
19
20
|
* @summary Validates a {@link Sequence}'s {@link Clause}s
|
|
20
21
|
*
|
|
@@ -27,11 +28,11 @@ const persistence_1 = require("../persistence/index.cjs");
|
|
|
27
28
|
* @subcategory Validators
|
|
28
29
|
*/
|
|
29
30
|
let ClauseSequenceValidator = class ClauseSequenceValidator extends decorator_validation_1.Validator {
|
|
30
|
-
constructor(message = decorator_validation_1.DEFAULT_ERROR_MESSAGES[
|
|
31
|
+
constructor(message = decorator_validation_1.DEFAULT_ERROR_MESSAGES[constants_2.PersistenceKeys.CLAUSE_SEQUENCE]) {
|
|
31
32
|
super(message);
|
|
32
33
|
}
|
|
33
34
|
validateSequence(clauses, message) {
|
|
34
|
-
return
|
|
35
|
+
return constants_1.MandatoryPriorities.every((p) => !!clauses.find((c) => c.getPriority() === p))
|
|
35
36
|
? undefined
|
|
36
37
|
: this.getMessage((0, decorator_validation_1.sf)(message || this.message, "Missing required Clause Priorities"));
|
|
37
38
|
}
|
|
@@ -85,14 +86,14 @@ let ClauseSequenceValidator = class ClauseSequenceValidator extends decorator_va
|
|
|
85
86
|
return this.getMessage((0, decorator_validation_1.sf)(message || this.message, "Invalid sequence"));
|
|
86
87
|
}
|
|
87
88
|
catch (e) {
|
|
88
|
-
throw new
|
|
89
|
+
throw new errors_1.QueryError((0, decorator_validation_1.sf)("Failed to verify clause sequence {0}: {1}", value, e));
|
|
89
90
|
}
|
|
90
91
|
}
|
|
91
92
|
};
|
|
92
93
|
exports.ClauseSequenceValidator = ClauseSequenceValidator;
|
|
93
94
|
exports.ClauseSequenceValidator = ClauseSequenceValidator = __decorate([
|
|
94
|
-
(0, decorator_validation_1.validator)(
|
|
95
|
+
(0, decorator_validation_1.validator)(constants_2.PersistenceKeys.CLAUSE_SEQUENCE),
|
|
95
96
|
__metadata("design:paramtypes", [String])
|
|
96
97
|
], ClauseSequenceValidator);
|
|
97
98
|
|
|
98
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
|
99
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy92YWxpZGF0b3JzL0NsYXVzZVNlcXVlbmNlVmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBLHlFQUt3QztBQUN4QyxxREFBK0M7QUFDL0MsNENBQXlDO0FBQ3pDLGtEQUF5RDtBQUN6RCw0Q0FBNkM7QUFDN0Msd0RBQTJEO0FBRTNEOzs7Ozs7Ozs7O0dBVUc7QUFFSSxJQUFNLHVCQUF1QixHQUE3QixNQUFNLHVCQUF3QixTQUFRLGdDQUFTO0lBQ3BELFlBQ0UsVUFBa0IsNkNBQXNCLENBQUMsMkJBQWUsQ0FBQyxlQUFlLENBQUM7UUFFekUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2pCLENBQUM7SUFFTyxnQkFBZ0IsQ0FDdEIsT0FBc0IsRUFDdEIsT0FBZ0I7UUFFaEIsT0FBTywrQkFBbUIsQ0FBQyxLQUFLLENBQzlCLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUNwRDtZQUNDLENBQUMsQ0FBQyxTQUFTO1lBQ1gsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQ2IsSUFBQSx5QkFBRSxFQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLG9DQUFvQyxDQUFDLENBQ2xFLENBQUM7SUFDUixDQUFDO0lBRUQ7Ozs7Ozs7Ozs7T0FVRztJQUNJLFNBQVMsQ0FBQyxLQUFVLEVBQUUsT0FBZ0I7UUFDM0MsSUFBSSxDQUFDO1lBQ0gsSUFDRSxDQUFDLEtBQUs7Z0JBQ04sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztnQkFDckIsQ0FBQyxLQUFLLENBQUMsTUFBTTtnQkFDYixDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsWUFBWSxlQUFNLENBQUM7Z0JBRXhD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LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgREVGQVVMVF9FUlJPUl9NRVNTQUdFUyxcbiAgc2YsXG4gIHZhbGlkYXRvcixcbiAgVmFsaWRhdG9yLFxufSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBpc0VxdWFsIH0gZnJvbSBcIkBkZWNhZi10cy9yZWZsZWN0aW9uXCI7XG5pbXBvcnQgeyBDbGF1c2UgfSBmcm9tIFwiLi4vcXVlcnkvQ2xhdXNlXCI7XG5pbXBvcnQgeyBNYW5kYXRvcnlQcmlvcml0aWVzIH0gZnJvbSBcIi4uL3F1ZXJ5L2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgUXVlcnlFcnJvciB9IGZyb20gXCIuLi9xdWVyeS9lcnJvcnNcIjtcbmltcG9ydCB7IFBlcnNpc3RlbmNlS2V5cyB9IGZyb20gXCIuLi9wZXJzaXN0ZW5jZS9jb25zdGFudHNcIjtcblxuLyoqXG4gKiBAc3VtbWFyeSBWYWxpZGF0ZXMgYSB7QGxpbmsgU2VxdWVuY2V9J3Mge0BsaW5rIENsYXVzZX1zXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IFttZXNzYWdlXVxuICpcbiAqIEBjbGFzcyBDbGF1c2VTZXF1ZW5jZVZhbGlkYXRvclxuICogQGV4dGVuZHMgVmFsaWRhdG9yXG4gKlxuICogQGNhdGVnb3J5IFZhbGlkYXRpb25cbiAqIEBzdWJjYXRlZ29yeSBWYWxpZGF0b3JzXG4gKi9cbkB2YWxpZGF0b3IoUGVyc2lzdGVuY2VLZXlzLkNMQVVTRV9TRVFVRU5DRSlcbmV4cG9ydCBjbGFzcyBDbGF1c2VTZXF1ZW5jZVZhbGlkYXRvciBleHRlbmRzIFZhbGlkYXRvciB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIG1lc3NhZ2U6IHN0cmluZyA9IERFRkFVTFRfRVJST1JfTUVTU0FHRVNbUGVyc2lzdGVuY2VLZXlzLkNMQVVTRV9TRVFVRU5DRV1cbiAgKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gIH1cblxuICBwcml2YXRlIHZhbGlkYXRlU2VxdWVuY2UoXG4gICAgY2xhdXNlczogQ2xhdXNlPGFueT5bXSxcbiAgICBtZXNzYWdlPzogc3RyaW5nXG4gICk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIE1hbmRhdG9yeVByaW9yaXRpZXMuZXZlcnkoXG4gICAgICAocCkgPT4gISFjbGF1c2VzLmZpbmQoKGMpID0+IGMuZ2V0UHJpb3JpdHkoKSA9PT0gcClcbiAgICApXG4gICAgICA/IHVuZGVmaW5lZFxuICAgICAgOiB0aGlzLmdldE1lc3NhZ2UoXG4gICAgICAgICAgc2YobWVzc2FnZSB8fCB0aGlzLm1lc3NhZ2UsIFwiTWlzc2luZyByZXF1aXJlZCBDbGF1c2UgUHJpb3JpdGllc1wiKVxuICAgICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEBzdW1tYXJ5IFZlcmlmaWVzIHRoZSBtb2RlbCBmb3IgZXJyb3JzXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB2YWx1ZVxuICAgKiBAcGFyYW0ge3N0cmluZ30gW21lc3NhZ2VdXG4gICAqXG4gICAqIEByZXR1cm4gRXJyb3JzXG4gICAqXG4gICAqIEBvdmVycmlkZVxuICAgKlxuICAgKiBAc2VlIFZhbGlkYXRvclxuICAgKi9cbiAgcHVibGljIGhhc0Vycm9ycyh2YWx1ZTogYW55LCBtZXNzYWdlPzogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICB0cnkge1xuICAgICAgaWYgKFxuICAgICAgICAhdmFsdWUgfHxcbiAgICAgICAgIUFycmF5LmlzQXJyYXkodmFsdWUpIHx8XG4gICAgICAgICF2YWx1ZS5sZW5ndGggfHxcbiAgICAgICAgIXZhbHVlLmV2ZXJ5KChlKSA9PiBlIGluc3RhbmNlb2YgQ2xhdXNlKVxuICAgICAgKVxuICAgICAgICByZXR1cm4gdGhpcy5nZXRNZXNzYWdlKFxuICAgICAgICAgIHNmKG1lc3NhZ2UgfHwgdGhpcy5tZXNzYWdlLCBcIk5vIG9yIGludmFsaWQgQ2xhdXNlcyBmb3VuZFwiKVxuICAgICAgICApO1xuXG4gICAgICBjb25zdCBjbGF1c2VzOiBDbGF1c2U8YW55PltdID0gdmFsdWUgYXMgQ2xhdXNlPGFueT5bXTtcblxuICAgICAgY29uc3QgY2xhdXNlRXJyb3JzID0gY2xhdXNlcy5yZWR1Y2UoXG4gICAgICAgIChhY2N1bTogc3RyaW5nIHwgdW5kZWZpbmVkLCBjOiBDbGF1c2U8YW55PikgPT4ge1xuICAgICAgICAgIGNvbnN0IGVycnMgPSBjLmhhc0Vycm9ycygpO1xuICAgICAgICAgIGlmIChlcnJzKVxuICAgICAgICAgICAgaWYgKGFjY3VtKVxuICAgICAgICAgICAgICBhY2N1bSArPSBzZihcbiAgICAgICAgICAgICAgICBcIlxcbkNsYXVzZSB7MH06IHsxfVwiLFxuICAgICAgICAgICAgICAgIGMuY29uc3RydWN0b3IubmFtZSxcbiAgICAgICAgICAgICAgICBlcnJzLnRvU3RyaW5nKClcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgYWNjdW0gPSBzZihcbiAgICAgICAgICAgICAgICBcIkNsYXVzZSB7MH06IHsxfVwiLFxuICAgICAgICAgICAgICAgIGMuY29uc3RydWN0b3IubmFtZSxcbiAgICAgICAgICAgICAgICBlcnJzLnRvU3RyaW5nKClcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICByZXR1cm4gYWNjdW07XG4gICAgICAgIH0sXG4gICAgICAgIHVuZGVmaW5lZFxuICAgICAgKTtcblxuICAgICAgaWYgKGNsYXVzZUVycm9ycylcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0TWVzc2FnZShcbiAgICAgICAgICBzZihtZXNzYWdlIHx8IHRoaXMubWVzc2FnZSwgY2xhdXNlRXJyb3JzLnRvU3RyaW5nKCkpXG4gICAgICAgICk7XG5cbiAgICAgIGNvbnN0IHZlcmlmeVByaW9yaXR5ID0gKCkgPT4ge1xuICAgICAgICBjb25zdCBwcmlvcml0aWVzID0gY2xhdXNlcy5tYXAoKGMpID0+IGMuZ2V0UHJpb3JpdHkoKSk7XG4gICAgICAgIGNvbnN0IGFsbFVuaXF1ZSA9IG5ldyBTZXQocHJpb3JpdGllcykuc2l6ZSA9PT0gcHJpb3JpdGllcy5sZW5ndGg7XG4gICAgICAgIGlmICghYWxsVW5pcXVlKSByZXR1cm4gXCJOb3QgYWxsIGNsYXVzZXMgIGhhdmUgdW5pcXVlIHByaW9yaXRpZXNcIjtcbiAgICAgICAgY29uc3Qgc29ydGVkID0gcHJpb3JpdGllcy5zb3J0KChhLCBiKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGIgLSBhO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gaXNFcXVhbChwcmlvcml0aWVzLCBzb3J0ZWQpXG4gICAgICAgICAgPyB0cnVlXG4gICAgICAgICAgOiBcIkNsYXVzZXMgIGFyZSBub3QgcHJvcGVybHkgc29ydGVkXCI7XG4gICAgICB9O1xuXG4gICAgICBjb25zdCBwcmlvcml0eUNoZWNrID0gdmVyaWZ5UHJpb3JpdHkoKTtcbiAgICAgIGlmIChwcmlvcml0eUNoZWNrICE9PSB0cnVlKVxuICAgICAgICByZXR1cm4gdGhpcy5nZXRNZXNzYWdlKFxuICAgICAgICAgIHNmKG1lc3NhZ2UgfHwgdGhpcy5tZXNzYWdlLCBcIkludmFsaWQgcHJpb3JpdGl6YXRpb25cIilcbiAgICAgICAgKTtcblxuICAgICAgY29uc3Qgc2VxdWVuY2VDaGVjayA9IHRoaXMudmFsaWRhdGVTZXF1ZW5jZShjbGF1c2VzLCBtZXNzYWdlKTtcbiAgICAgIGlmIChzZXF1ZW5jZUNoZWNrKVxuICAgICAgICByZXR1cm4gdGhpcy5nZXRNZXNzYWdlKHNmKG1lc3NhZ2UgfHwgdGhpcy5tZXNzYWdlLCBcIkludmFsaWQgc2VxdWVuY2VcIikpO1xuICAgIH0gY2F0Y2ggKGU6IGFueSkge1xuICAgICAgdGhyb3cgbmV3IFF1ZXJ5RXJyb3IoXG4gICAgICAgIHNmKFwiRmFpbGVkIHRvIHZlcmlmeSBjbGF1c2Ugc2VxdWVuY2UgezB9OiB7MX1cIiwgdmFsdWUsIGUpXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuIl19
|
package/package.json
CHANGED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { sf } from "@decaf-ts/decorator-validation";
|
|
2
|
-
import { PersistenceKeys } from "./constants";
|
|
3
|
-
import { Adapter } from "./Adapter";
|
|
4
|
-
export function genAdapterInjectableKey(flavour) {
|
|
5
|
-
return sf(PersistenceKeys.INJECTABLE, flavour);
|
|
6
|
-
}
|
|
7
|
-
export function getColumnName(model, attribute) {
|
|
8
|
-
const metadata = Reflect.getMetadata(Adapter.key(PersistenceKeys.COLUMN), model, attribute);
|
|
9
|
-
return metadata ? metadata : attribute;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9wZXJzaXN0ZW5jZS91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsRUFBRSxFQUFTLE1BQU0sZ0NBQWdDLENBQUM7QUFDM0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM5QyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRXBDLE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxPQUFlO0lBQ3JELE9BQU8sRUFBRSxDQUFDLGVBQWUsQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFDakQsQ0FBQztBQUVELE1BQU0sVUFBVSxhQUFhLENBQWtCLEtBQVEsRUFBRSxTQUFpQjtJQUN4RSxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUNsQyxPQUFPLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsRUFDbkMsS0FBSyxFQUNMLFNBQVMsQ0FDVixDQUFDO0lBQ0YsT0FBTyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0FBQ3pDLENBQUMiLCJmaWxlIjoicGVyc2lzdGVuY2UvdXRpbHMuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBzZiwgTW9kZWwgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBQZXJzaXN0ZW5jZUtleXMgfSBmcm9tIFwiLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IEFkYXB0ZXIgfSBmcm9tIFwiLi9BZGFwdGVyXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZW5BZGFwdGVySW5qZWN0YWJsZUtleShmbGF2b3VyOiBzdHJpbmcpIHtcbiAgcmV0dXJuIHNmKFBlcnNpc3RlbmNlS2V5cy5JTkpFQ1RBQkxFLCBmbGF2b3VyKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldENvbHVtbk5hbWU8VCBleHRlbmRzIE1vZGVsPihtb2RlbDogVCwgYXR0cmlidXRlOiBzdHJpbmcpIHtcbiAgY29uc3QgbWV0YWRhdGEgPSBSZWZsZWN0LmdldE1ldGFkYXRhKFxuICAgIEFkYXB0ZXIua2V5KFBlcnNpc3RlbmNlS2V5cy5DT0xVTU4pLFxuICAgIG1vZGVsLFxuICAgIGF0dHJpYnV0ZVxuICApO1xuICByZXR1cm4gbWV0YWRhdGEgPyBtZXRhZGF0YSA6IGF0dHJpYnV0ZTtcbn1cbiJdfQ==
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.genAdapterInjectableKey = genAdapterInjectableKey;
|
|
4
|
-
exports.getColumnName = getColumnName;
|
|
5
|
-
const decorator_validation_1 = require("@decaf-ts/decorator-validation");
|
|
6
|
-
const constants_1 = require("./constants.cjs");
|
|
7
|
-
const Adapter_1 = require("./Adapter.cjs");
|
|
8
|
-
function genAdapterInjectableKey(flavour) {
|
|
9
|
-
return (0, decorator_validation_1.sf)(constants_1.PersistenceKeys.INJECTABLE, flavour);
|
|
10
|
-
}
|
|
11
|
-
function getColumnName(model, attribute) {
|
|
12
|
-
const metadata = Reflect.getMetadata(Adapter_1.Adapter.key(constants_1.PersistenceKeys.COLUMN), model, attribute);
|
|
13
|
-
return metadata ? metadata : attribute;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9wZXJzaXN0ZW5jZS91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUlBLDBEQUVDO0FBRUQsc0NBT0M7QUFmRCx5RUFBMkQ7QUFDM0QsMkNBQThDO0FBQzlDLHVDQUFvQztBQUVwQyxTQUFnQix1QkFBdUIsQ0FBQyxPQUFlO0lBQ3JELE9BQU8sSUFBQSx5QkFBRSxFQUFDLDJCQUFlLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQ2pELENBQUM7QUFFRCxTQUFnQixhQUFhLENBQWtCLEtBQVEsRUFBRSxTQUFpQjtJQUN4RSxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUNsQyxpQkFBTyxDQUFDLEdBQUcsQ0FBQywyQkFBZSxDQUFDLE1BQU0sQ0FBQyxFQUNuQyxLQUFLLEVBQ0wsU0FBUyxDQUNWLENBQUM7SUFDRixPQUFPLFFBQVEsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7QUFDekMsQ0FBQyIsImZpbGUiOiJwZXJzaXN0ZW5jZS91dGlscy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNmLCBNb2RlbCB9IGZyb20gXCJAZGVjYWYtdHMvZGVjb3JhdG9yLXZhbGlkYXRpb25cIjtcbmltcG9ydCB7IFBlcnNpc3RlbmNlS2V5cyB9IGZyb20gXCIuL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgQWRhcHRlciB9IGZyb20gXCIuL0FkYXB0ZXJcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGdlbkFkYXB0ZXJJbmplY3RhYmxlS2V5KGZsYXZvdXI6IHN0cmluZykge1xuICByZXR1cm4gc2YoUGVyc2lzdGVuY2VLZXlzLklOSkVDVEFCTEUsIGZsYXZvdXIpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q29sdW1uTmFtZTxUIGV4dGVuZHMgTW9kZWw+KG1vZGVsOiBULCBhdHRyaWJ1dGU6IHN0cmluZykge1xuICBjb25zdCBtZXRhZGF0YSA9IFJlZmxlY3QuZ2V0TWV0YWRhdGEoXG4gICAgQWRhcHRlci5rZXkoUGVyc2lzdGVuY2VLZXlzLkNPTFVNTiksXG4gICAgbW9kZWwsXG4gICAgYXR0cmlidXRlXG4gICk7XG4gIHJldHVybiBtZXRhZGF0YSA/IG1ldGFkYXRhIDogYXR0cmlidXRlO1xufVxuIl19
|