@quatrain/core 1.1.23 → 1.1.28
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/README.md +56 -8
- package/{lib → dist}/Core.d.ts +3 -17
- package/dist/Core.d.ts.map +1 -0
- package/dist/Core.js +105 -0
- package/dist/Core.js.map +1 -0
- package/dist/common/DataGenerator.d.ts +3 -0
- package/dist/common/DataGenerator.d.ts.map +1 -0
- package/dist/common/DataGenerator.js +86 -0
- package/dist/common/DataGenerator.js.map +1 -0
- package/{lib → dist}/common/ResourcesErrors.d.ts +1 -0
- package/dist/common/ResourcesErrors.d.ts.map +1 -0
- package/{lib → dist}/common/ResourcesErrors.js +1 -0
- package/dist/common/ResourcesErrors.js.map +1 -0
- package/{lib → dist}/common/statuses.d.ts +5 -0
- package/dist/common/statuses.d.ts.map +1 -0
- package/dist/common/statuses.js +24 -0
- package/dist/common/statuses.js.map +1 -0
- package/{lib → dist}/components/AbstractObject.d.ts +1 -5
- package/dist/components/AbstractObject.d.ts.map +1 -0
- package/{lib → dist}/components/AbstractObject.js +7 -10
- package/dist/components/AbstractObject.js.map +1 -0
- package/{lib → dist}/components/BaseObject.d.ts +4 -17
- package/dist/components/BaseObject.d.ts.map +1 -0
- package/dist/components/BaseObject.js +71 -0
- package/dist/components/BaseObject.js.map +1 -0
- package/dist/components/BaseObjectProperties.d.ts +2 -0
- package/dist/components/BaseObjectProperties.d.ts.map +1 -0
- package/{lib → dist}/components/BaseObjectProperties.js +1 -2
- package/dist/components/BaseObjectProperties.js.map +1 -0
- package/{lib → dist}/components/DataObject.d.ts +2 -51
- package/dist/components/DataObject.d.ts.map +1 -0
- package/{lib → dist}/components/DataObject.js +38 -111
- package/dist/components/DataObject.js.map +1 -0
- package/{lib → dist}/components/Entity.d.ts +1 -0
- package/dist/components/Entity.d.ts.map +1 -0
- package/dist/components/Entity.js +48 -0
- package/dist/components/Entity.js.map +1 -0
- package/{lib → dist}/components/ObjectUri.d.ts +1 -26
- package/dist/components/ObjectUri.d.ts.map +1 -0
- package/{lib → dist}/components/ObjectUri.js +13 -41
- package/dist/components/ObjectUri.js.map +1 -0
- package/{lib → dist}/components/User.d.ts +1 -0
- package/dist/components/User.d.ts.map +1 -0
- package/{lib → dist}/components/User.js +7 -26
- package/dist/components/User.js.map +1 -0
- package/dist/components/__test__/fixtures/dao.d.ts +37 -0
- package/dist/components/__test__/fixtures/dao.d.ts.map +1 -0
- package/dist/components/__test__/fixtures/dao.js +100 -0
- package/dist/components/__test__/fixtures/dao.js.map +1 -0
- package/{lib → dist}/components/index.d.ts +5 -2
- package/dist/components/index.d.ts.map +1 -0
- package/{lib → dist}/components/index.js +1 -0
- package/dist/components/index.js.map +1 -0
- package/{lib → dist}/components/types/AbstractObjectClass.d.ts +1 -0
- package/dist/components/types/AbstractObjectClass.d.ts.map +1 -0
- package/dist/components/types/AbstractObjectClass.js +3 -0
- package/dist/components/types/AbstractObjectClass.js.map +1 -0
- package/{lib → dist}/components/types/BaseObjectClass.d.ts +1 -0
- package/dist/components/types/BaseObjectClass.d.ts.map +1 -0
- package/{lib → dist}/components/types/BaseObjectClass.js +1 -0
- package/dist/components/types/BaseObjectClass.js.map +1 -0
- package/{lib → dist}/components/types/BaseObjectType.d.ts +2 -1
- package/dist/components/types/BaseObjectType.d.ts.map +1 -0
- package/{lib → dist}/components/types/BaseObjectType.js +1 -0
- package/dist/components/types/BaseObjectType.js.map +1 -0
- package/{lib → dist}/components/types/DataObjectClass.d.ts +1 -0
- package/dist/components/types/DataObjectClass.d.ts.map +1 -0
- package/{lib → dist}/components/types/DataObjectClass.js +1 -0
- package/dist/components/types/DataObjectClass.js.map +1 -0
- package/dist/components/types/DataObjectParams.d.ts +8 -0
- package/dist/components/types/DataObjectParams.d.ts.map +1 -0
- package/dist/components/types/DataObjectParams.js +3 -0
- package/dist/components/types/DataObjectParams.js.map +1 -0
- package/{lib → dist}/components/types/DataObjectType.d.ts +1 -0
- package/dist/components/types/DataObjectType.d.ts.map +1 -0
- package/{lib → dist}/components/types/DataObjectType.js +1 -0
- package/dist/components/types/DataObjectType.js.map +1 -0
- package/{lib → dist}/components/types/EntityClass.d.ts +1 -0
- package/dist/components/types/EntityClass.d.ts.map +1 -0
- package/{lib → dist}/components/types/EntityClass.js +1 -0
- package/dist/components/types/EntityClass.js.map +1 -0
- package/{lib → dist}/components/types/Payload.d.ts +1 -0
- package/dist/components/types/Payload.d.ts.map +1 -0
- package/{lib → dist}/components/types/Payload.js +1 -0
- package/dist/components/types/Payload.js.map +1 -0
- package/{lib → dist}/components/types/Persisted.d.ts +1 -0
- package/dist/components/types/Persisted.d.ts.map +1 -0
- package/{lib → dist}/components/types/Persisted.js +1 -0
- package/dist/components/types/Persisted.js.map +1 -0
- package/dist/components/types/Properties.d.ts +2 -0
- package/dist/components/types/Properties.d.ts.map +1 -0
- package/{lib/components/types/AbstractObjectClass.js → dist/components/types/Properties.js} +1 -0
- package/dist/components/types/Properties.js.map +1 -0
- package/{lib → dist}/components/types/ProxyConstructor.d.ts +1 -0
- package/dist/components/types/ProxyConstructor.d.ts.map +1 -0
- package/{lib → dist}/components/types/ProxyConstructor.js +1 -0
- package/dist/components/types/ProxyConstructor.js.map +1 -0
- package/{lib → dist}/components/types/toJSONParams.d.ts +1 -0
- package/dist/components/types/toJSONParams.d.ts.map +1 -0
- package/{lib → dist}/components/types/toJSONParams.js +1 -0
- package/dist/components/types/toJSONParams.js.map +1 -0
- package/{lib → dist}/index.d.ts +5 -1
- package/dist/index.d.ts.map +1 -0
- package/{lib → dist}/index.js +4 -1
- package/dist/index.js.map +1 -0
- package/{lib → dist}/properties/ArrayProperty.d.ts +1 -0
- package/dist/properties/ArrayProperty.d.ts.map +1 -0
- package/{lib → dist}/properties/ArrayProperty.js +5 -4
- package/dist/properties/ArrayProperty.js.map +1 -0
- package/{lib → dist}/properties/BaseProperty.d.ts +3 -2
- package/dist/properties/BaseProperty.d.ts.map +1 -0
- package/{lib → dist}/properties/BaseProperty.js +18 -11
- package/dist/properties/BaseProperty.js.map +1 -0
- package/{lib → dist}/properties/BooleanProperty.d.ts +1 -0
- package/dist/properties/BooleanProperty.d.ts.map +1 -0
- package/{lib → dist}/properties/BooleanProperty.js +2 -1
- package/dist/properties/BooleanProperty.js.map +1 -0
- package/{lib → dist}/properties/CollectionProperty.d.ts +1 -0
- package/dist/properties/CollectionProperty.d.ts.map +1 -0
- package/{lib → dist}/properties/CollectionProperty.js +6 -4
- package/dist/properties/CollectionProperty.js.map +1 -0
- package/{lib → dist}/properties/DateTimeProperty.d.ts +1 -0
- package/dist/properties/DateTimeProperty.d.ts.map +1 -0
- package/{lib → dist}/properties/DateTimeProperty.js +12 -5
- package/dist/properties/DateTimeProperty.js.map +1 -0
- package/{lib → dist}/properties/EnumProperty.d.ts +1 -0
- package/dist/properties/EnumProperty.d.ts.map +1 -0
- package/{lib → dist}/properties/EnumProperty.js +4 -3
- package/dist/properties/EnumProperty.js.map +1 -0
- package/{lib → dist}/properties/FileProperty.d.ts +1 -0
- package/dist/properties/FileProperty.d.ts.map +1 -0
- package/{lib → dist}/properties/FileProperty.js +3 -2
- package/dist/properties/FileProperty.js.map +1 -0
- package/{lib → dist}/properties/HashProperty.d.ts +2 -7
- package/dist/properties/HashProperty.d.ts.map +1 -0
- package/{lib → dist}/properties/HashProperty.js +15 -23
- package/dist/properties/HashProperty.js.map +1 -0
- package/{lib → dist}/properties/MapProperty.d.ts +1 -0
- package/dist/properties/MapProperty.d.ts.map +1 -0
- package/{lib → dist}/properties/MapProperty.js +2 -1
- package/dist/properties/MapProperty.js.map +1 -0
- package/{lib → dist}/properties/NumberProperty.d.ts +1 -0
- package/dist/properties/NumberProperty.d.ts.map +1 -0
- package/{lib → dist}/properties/NumberProperty.js +15 -14
- package/dist/properties/NumberProperty.js.map +1 -0
- package/{lib → dist}/properties/ObjectProperty.d.ts +1 -0
- package/dist/properties/ObjectProperty.d.ts.map +1 -0
- package/{lib → dist}/properties/ObjectProperty.js +4 -3
- package/dist/properties/ObjectProperty.js.map +1 -0
- package/{lib → dist}/properties/Property.d.ts +1 -0
- package/dist/properties/Property.d.ts.map +1 -0
- package/{lib → dist}/properties/Property.js +12 -11
- package/dist/properties/Property.js.map +1 -0
- package/{lib → dist}/properties/StringProperty.d.ts +3 -5
- package/dist/properties/StringProperty.d.ts.map +1 -0
- package/{lib → dist}/properties/StringProperty.js +20 -28
- package/dist/properties/StringProperty.js.map +1 -0
- package/{lib → dist}/properties/index.d.ts +4 -2
- package/dist/properties/index.d.ts.map +1 -0
- package/{lib → dist}/properties/index.js +1 -0
- package/dist/properties/index.js.map +1 -0
- package/{lib → dist}/properties/types/AbstractPropertyType.d.ts +1 -0
- package/dist/properties/types/AbstractPropertyType.d.ts.map +1 -0
- package/{lib → dist}/properties/types/AbstractPropertyType.js +1 -0
- package/dist/properties/types/AbstractPropertyType.js.map +1 -0
- package/{lib → dist}/properties/types/PropertyClassType.d.ts +1 -0
- package/dist/properties/types/PropertyClassType.d.ts.map +1 -0
- package/{lib → dist}/properties/types/PropertyClassType.js +1 -0
- package/dist/properties/types/PropertyClassType.js.map +1 -0
- package/{lib → dist}/properties/types/PropertyHTMLType.d.ts +1 -0
- package/dist/properties/types/PropertyHTMLType.d.ts.map +1 -0
- package/{lib → dist}/properties/types/PropertyHTMLType.js +1 -2
- package/dist/properties/types/PropertyHTMLType.js.map +1 -0
- package/{lib → dist}/properties/types/PropertyTypes.d.ts +1 -0
- package/dist/properties/types/PropertyTypes.d.ts.map +1 -0
- package/{lib → dist}/properties/types/PropertyTypes.js +1 -0
- package/dist/properties/types/PropertyTypes.js.map +1 -0
- package/package.json +47 -41
- package/src/Core.ts +145 -0
- package/src/common/DataGenerator.ts +81 -0
- package/src/common/ResourcesErrors.ts +17 -0
- package/src/common/statuses.ts +20 -0
- package/src/components/AbstractObject.ts +71 -0
- package/src/components/BaseObject.ts +123 -0
- package/src/components/BaseObjectProperties.ts +65 -0
- package/src/components/DataObject.ts +418 -0
- package/src/components/Entity.ts +38 -0
- package/src/components/ObjectUri.test.ts +74 -0
- package/src/components/ObjectUri.ts +174 -0
- package/src/components/User.ts +111 -0
- package/src/components/index.ts +19 -0
- package/src/components/types/AbstractObjectClass.ts +7 -0
- package/src/components/types/BaseObjectClass.ts +8 -0
- package/src/components/types/BaseObjectType.ts +10 -0
- package/src/components/types/DataObjectClass.ts +27 -0
- package/src/components/types/DataObjectParams.ts +8 -0
- package/src/components/types/DataObjectType.ts +27 -0
- package/src/components/types/EntityClass.ts +3 -0
- package/src/components/types/Payload.ts +11 -0
- package/src/components/types/Persisted.ts +7 -0
- package/src/components/types/Properties.ts +1 -0
- package/src/components/types/ProxyConstructor.ts +13 -0
- package/src/components/types/toJSONParams.ts +12 -0
- package/src/index.ts +97 -0
- package/src/properties/ArrayProperty.test.ts +46 -0
- package/src/properties/ArrayProperty.ts +87 -0
- package/src/properties/BaseProperty.test.ts +79 -0
- package/src/properties/BaseProperty.ts +140 -0
- package/src/properties/BooleanProperty.ts +11 -0
- package/src/properties/CollectionProperty.test.ts +22 -0
- package/src/properties/CollectionProperty.ts +43 -0
- package/src/properties/DateTimeProperty.ts +47 -0
- package/src/properties/EnumProperty.ts +36 -0
- package/src/properties/FileProperty.ts +14 -0
- package/src/properties/HashProperty.test.ts +108 -0
- package/src/properties/HashProperty.ts +70 -0
- package/src/properties/MapProperty.ts +19 -0
- package/src/properties/NumberProperty.test.ts +38 -0
- package/src/properties/NumberProperty.ts +110 -0
- package/src/properties/ObjectProperty.ts +118 -0
- package/src/properties/Property.ts +85 -0
- package/src/properties/StringProperty.test.ts +46 -0
- package/src/properties/StringProperty.ts +121 -0
- package/src/properties/index.ts +62 -0
- package/src/properties/types/AbstractPropertyType.ts +8 -0
- package/src/properties/types/PropertyClassType.ts +11 -0
- package/src/properties/types/PropertyHTMLType.ts +23 -0
- package/src/properties/types/PropertyTypes.ts +13 -0
- package/lib/Core.js +0 -133
- package/lib/common/statuses.js +0 -19
- package/lib/components/BaseObject.js +0 -103
- package/lib/components/BaseObjectProperties.d.ts +0 -1
- package/lib/components/Entity.js +0 -71
- package/lib/components/types/Properties.d.ts +0 -3
- package/lib/components/types/Properties.js +0 -1
package/lib/Core.js
DELETED
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
var _a;
|
|
15
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
-
exports.Core = void 0;
|
|
17
|
-
const DataObject_1 = require("./components/DataObject");
|
|
18
|
-
const User_1 = require("./components/User");
|
|
19
|
-
const log_1 = require("@quatrain/log");
|
|
20
|
-
const child_process_1 = require("child_process");
|
|
21
|
-
const which_1 = __importDefault(require("which"));
|
|
22
|
-
class Core {
|
|
23
|
-
static addLogger(alias = this.name) {
|
|
24
|
-
return log_1.Log.addLogger('@' + alias, new log_1.DefaultLoggerAdapter(alias, this.logLevel), true);
|
|
25
|
-
}
|
|
26
|
-
static setLogLevel(level) {
|
|
27
|
-
this.logger.logLevel(level);
|
|
28
|
-
}
|
|
29
|
-
static definition(key) {
|
|
30
|
-
return {
|
|
31
|
-
manifest: {
|
|
32
|
-
type: String,
|
|
33
|
-
mandatory: true,
|
|
34
|
-
},
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
static addConfig(key, value) {
|
|
38
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
39
|
-
if (!this.storage.set) {
|
|
40
|
-
yield this.storage.init();
|
|
41
|
-
}
|
|
42
|
-
yield this.storage.set(`${this.storagePrefix}_${key}`, value);
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
static getConfig(key) {
|
|
46
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
47
|
-
if (!this.storage.get) {
|
|
48
|
-
yield this.storage.init();
|
|
49
|
-
}
|
|
50
|
-
return yield this.storage.get(`${this.storagePrefix}_${key}`);
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
|
-
static addClass(name, obj) {
|
|
54
|
-
_a.classRegistry[name] = obj;
|
|
55
|
-
}
|
|
56
|
-
static getClass(name) {
|
|
57
|
-
return _a.classRegistry[name];
|
|
58
|
-
}
|
|
59
|
-
static sleep(seconds = 1) {
|
|
60
|
-
return new Promise((resolve) => setTimeout(resolve, seconds * 1000));
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* Returns the class to use for a data object
|
|
64
|
-
* This is currently just a stub that will be implemented from config in the future
|
|
65
|
-
* @returns DataObjectClass
|
|
66
|
-
*/
|
|
67
|
-
static getDataObjectClass() {
|
|
68
|
-
return DataObject_1.DataObject.prototype;
|
|
69
|
-
}
|
|
70
|
-
static log(...message) {
|
|
71
|
-
return this.logger.log(message);
|
|
72
|
-
}
|
|
73
|
-
static debug(...message) {
|
|
74
|
-
return this.logger.debug(message);
|
|
75
|
-
}
|
|
76
|
-
static warn(...message) {
|
|
77
|
-
return this.logger.warn(message);
|
|
78
|
-
}
|
|
79
|
-
static info(...message) {
|
|
80
|
-
return this.logger.info(message);
|
|
81
|
-
}
|
|
82
|
-
static error(...message) {
|
|
83
|
-
return this.logger.error(message);
|
|
84
|
-
}
|
|
85
|
-
static trace(...message) {
|
|
86
|
-
return this.logger.trace(message);
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
exports.Core = Core;
|
|
90
|
-
_a = Core;
|
|
91
|
-
Core.me = _a.name;
|
|
92
|
-
Core.storage = require('node-persist');
|
|
93
|
-
Core.storagePrefix = 'core';
|
|
94
|
-
Core.classRegistry = {};
|
|
95
|
-
Core.logLevel = log_1.LogLevel.DEBUG;
|
|
96
|
-
Core.logger = _a.addLogger();
|
|
97
|
-
Core.userClass = User_1.User;
|
|
98
|
-
// How timestamp are formatted
|
|
99
|
-
Core.timestamp = () => new Date().toISOString();
|
|
100
|
-
/**
|
|
101
|
-
* Execute an external command in a promise
|
|
102
|
-
* @see https://stackoverflow.com/questions/46289682/how-to-wait-for-child-process-spawn-execution-with-async-await
|
|
103
|
-
* @see https://dzone.com/articles/understanding-execfile-spawn-exec-and-fork-in-node
|
|
104
|
-
* @param string command
|
|
105
|
-
* @param array args
|
|
106
|
-
* @return Promise
|
|
107
|
-
*/
|
|
108
|
-
Core.execPromise = (command, args = [], cwd = process.cwd()) => {
|
|
109
|
-
try {
|
|
110
|
-
_a.info(`Executing command ${command} in ${cwd} with arguments:`);
|
|
111
|
-
args.forEach((arg) => console.log(`\t${arg}`));
|
|
112
|
-
return new Promise((resolve, reject) => {
|
|
113
|
-
const child = (0, child_process_1.spawn)(command, args, { cwd });
|
|
114
|
-
child.stdout.on('data', (data) => _a.debug(data.toString()));
|
|
115
|
-
child.stderr.on('data', (data) => _a.debug(data.toString()));
|
|
116
|
-
child.on('close', (code) => {
|
|
117
|
-
if (code !== 0) {
|
|
118
|
-
_a.error(`Command execution failed with code: ${code}`);
|
|
119
|
-
reject(new Error(`Process failed and returned code: ${code}`));
|
|
120
|
-
}
|
|
121
|
-
else {
|
|
122
|
-
_a.info(`Command execution completed with code: ${code}`);
|
|
123
|
-
resolve(undefined);
|
|
124
|
-
}
|
|
125
|
-
});
|
|
126
|
-
});
|
|
127
|
-
}
|
|
128
|
-
catch (err) {
|
|
129
|
-
_a.error(err.message);
|
|
130
|
-
throw err;
|
|
131
|
-
}
|
|
132
|
-
};
|
|
133
|
-
Core.getSystemCommandPath = (command) => (0, which_1.default)(command);
|
package/lib/common/statuses.js
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.UNKNOWN = exports.QUEUED = exports.PROCESSING = exports.PREPARING = exports.PENDING = exports.KO = exports.ERROR = exports.DOWNLOADED = exports.DOWNLOADING = exports.DONE = exports.DISABLED = exports.DELETED = exports.DELETABLE = exports.CREATED = exports.COMPLETED = exports.ACTIVE = void 0;
|
|
4
|
-
exports.ACTIVE = 'active';
|
|
5
|
-
exports.COMPLETED = 'completed';
|
|
6
|
-
exports.CREATED = 'created';
|
|
7
|
-
exports.DELETABLE = 'deletable';
|
|
8
|
-
exports.DELETED = 'deleted';
|
|
9
|
-
exports.DISABLED = 'disabled';
|
|
10
|
-
exports.DONE = 'done';
|
|
11
|
-
exports.DOWNLOADING = 'downloading';
|
|
12
|
-
exports.DOWNLOADED = 'downloaded';
|
|
13
|
-
exports.ERROR = 'error';
|
|
14
|
-
exports.KO = 'ko';
|
|
15
|
-
exports.PENDING = 'pending';
|
|
16
|
-
exports.PREPARING = 'preparing';
|
|
17
|
-
exports.PROCESSING = 'processing';
|
|
18
|
-
exports.QUEUED = 'queued';
|
|
19
|
-
exports.UNKNOWN = 'unknown';
|
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.BaseObject = void 0;
|
|
13
|
-
const __1 = require("..");
|
|
14
|
-
const BaseObjectProperties_1 = require("./BaseObjectProperties");
|
|
15
|
-
const AbstractObject_1 = require("./AbstractObject");
|
|
16
|
-
class BaseObject extends AbstractObject_1.AbstractObject {
|
|
17
|
-
static getProperty(key) {
|
|
18
|
-
return BaseObject.PROPS_DEFINITION.find((prop) => prop.name === key);
|
|
19
|
-
}
|
|
20
|
-
static fillProperties(child = this) {
|
|
21
|
-
// merge base properties with additional or redefined ones
|
|
22
|
-
const base = [...BaseObject.PROPS_DEFINITION];
|
|
23
|
-
child.PROPS_DEFINITION.forEach((property) => {
|
|
24
|
-
// manage parent properties potential redeclaration
|
|
25
|
-
const found = base.findIndex((el) => el.name === property.name);
|
|
26
|
-
if (found !== -1) {
|
|
27
|
-
base[found] = property;
|
|
28
|
-
}
|
|
29
|
-
else {
|
|
30
|
-
base.push(property);
|
|
31
|
-
}
|
|
32
|
-
});
|
|
33
|
-
const dao = __1.DataObject.factory({
|
|
34
|
-
properties: base,
|
|
35
|
-
parentProp: this.PARENT_PROP,
|
|
36
|
-
});
|
|
37
|
-
dao.uri.class = child;
|
|
38
|
-
return dao;
|
|
39
|
-
}
|
|
40
|
-
static daoFactory(src = undefined, child = this) {
|
|
41
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
42
|
-
const dao = this.fillProperties(child);
|
|
43
|
-
return dao;
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* Instantiates from an object
|
|
48
|
-
* @param src
|
|
49
|
-
* @param child
|
|
50
|
-
* @returns
|
|
51
|
-
*/
|
|
52
|
-
static fromObject(src, child = this) {
|
|
53
|
-
const dao = this.fillProperties(child);
|
|
54
|
-
dao.uri = new __1.ObjectUri(`${this.COLLECTION}${__1.ObjectUri.DEFAULT}`, Reflect.get(src, 'name'));
|
|
55
|
-
dao.uri.class = child;
|
|
56
|
-
dao.populateFromData(src);
|
|
57
|
-
const obj = new this(dao);
|
|
58
|
-
return obj;
|
|
59
|
-
}
|
|
60
|
-
static factory(src = undefined, child = this) {
|
|
61
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
62
|
-
try {
|
|
63
|
-
if (typeof src == 'object' && !(src instanceof __1.ObjectUri)) {
|
|
64
|
-
return this.fromObject(src);
|
|
65
|
-
}
|
|
66
|
-
const dao = yield this.daoFactory(src, child);
|
|
67
|
-
const constructedObject = Reflect.construct(this, [dao]);
|
|
68
|
-
return constructedObject;
|
|
69
|
-
}
|
|
70
|
-
catch (err) {
|
|
71
|
-
throw new Error(`Unable to build instance for '${this.name}': ${err.message}`);
|
|
72
|
-
}
|
|
73
|
-
});
|
|
74
|
-
}
|
|
75
|
-
/**
|
|
76
|
-
* Fetches an object from its backend path
|
|
77
|
-
* @param path
|
|
78
|
-
* @returns
|
|
79
|
-
*/
|
|
80
|
-
static fromBackend(path) {
|
|
81
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
82
|
-
if (!path.includes('/')) {
|
|
83
|
-
return this.factory(`${this.COLLECTION}/${path}`);
|
|
84
|
-
}
|
|
85
|
-
return this.factory(path);
|
|
86
|
-
});
|
|
87
|
-
}
|
|
88
|
-
/**
|
|
89
|
-
* Instantiates from a DataObject
|
|
90
|
-
* @param dao
|
|
91
|
-
* @returns
|
|
92
|
-
*/
|
|
93
|
-
static fromDataObject(dao) {
|
|
94
|
-
const obj = new this(dao);
|
|
95
|
-
return obj; //.toProxy()
|
|
96
|
-
}
|
|
97
|
-
asReference() {
|
|
98
|
-
return this._dataObject.toReference();
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
exports.BaseObject = BaseObject;
|
|
102
|
-
// implements BaseObjectClass {
|
|
103
|
-
BaseObject.PROPS_DEFINITION = BaseObjectProperties_1.BaseObjectProperties;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const BaseObjectProperties: any;
|
package/lib/components/Entity.js
DELETED
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
28
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
29
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
30
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
31
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
32
|
-
});
|
|
33
|
-
};
|
|
34
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35
|
-
exports.Entity = void 0;
|
|
36
|
-
const BaseObject_1 = require("./BaseObject");
|
|
37
|
-
const BaseObjectProperties_1 = require("./BaseObjectProperties");
|
|
38
|
-
//import { User } from './User'
|
|
39
|
-
//import { CollectionProperty } from '../properties/CollectionProperty'
|
|
40
|
-
const StringProperty_1 = require("../properties/StringProperty");
|
|
41
|
-
const htmlType = __importStar(require("../properties/types/PropertyHTMLType"));
|
|
42
|
-
class Entity extends BaseObject_1.BaseObject {
|
|
43
|
-
static factory(src = undefined) {
|
|
44
|
-
const _super = Object.create(null, {
|
|
45
|
-
factory: { get: () => super.factory }
|
|
46
|
-
});
|
|
47
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
48
|
-
return _super.factory.call(this, src, Entity);
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
exports.Entity = Entity;
|
|
53
|
-
Entity.COLLECTION = 'entities';
|
|
54
|
-
Entity.PROPS_DEFINITION = [
|
|
55
|
-
...BaseObjectProperties_1.BaseObjectProperties,
|
|
56
|
-
{
|
|
57
|
-
// surcharge property minLength and htmlType
|
|
58
|
-
name: 'name',
|
|
59
|
-
type: StringProperty_1.StringProperty.TYPE,
|
|
60
|
-
mandatory: true,
|
|
61
|
-
minLength: 1,
|
|
62
|
-
htmlType: htmlType.ORG,
|
|
63
|
-
},
|
|
64
|
-
// {
|
|
65
|
-
// name: 'users',
|
|
66
|
-
// mandatory: true,
|
|
67
|
-
// type: CollectionProperty.TYPE,
|
|
68
|
-
// instanceOf: User,
|
|
69
|
-
// parentKey: 'entity',
|
|
70
|
-
// },
|
|
71
|
-
];
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";
|