dyo-tools 0.2.0 → 0.3.0
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/constants.js +4 -4
- package/dist/constants.js.map +1 -1
- package/dist/core/DTAction.d.ts +10 -0
- package/dist/core/DTAction.js +24 -0
- package/dist/core/DTAction.js.map +1 -0
- package/dist/core/DTBunch.d.ts +6 -7
- package/dist/core/DTBunch.js +16 -13
- package/dist/core/DTBunch.js.map +1 -1
- package/dist/core/DTComponentPhysical.d.ts +6 -4
- package/dist/core/DTComponentPhysical.js +6 -0
- package/dist/core/DTComponentPhysical.js.map +1 -1
- package/dist/core/DTElement.d.ts +5 -0
- package/dist/core/DTElement.js +12 -2
- package/dist/core/DTElement.js.map +1 -1
- package/dist/core/DTManager.d.ts +3 -1
- package/dist/core/DTManager.js +24 -14
- package/dist/core/DTManager.js.map +1 -1
- package/dist/core/DTMaster.d.ts +24 -0
- package/dist/core/DTMaster.js +133 -0
- package/dist/core/DTMaster.js.map +1 -0
- package/dist/core/DTModule.d.ts +14 -0
- package/dist/core/DTModule.js +39 -0
- package/dist/core/DTModule.js.map +1 -0
- package/dist/index.d.ts +5 -1
- package/dist/index.js +11 -3
- package/dist/index.js.map +1 -1
- package/dist/libs/player/DTPlayer.element.d.ts +5 -0
- package/dist/libs/player/DTPlayer.element.js +11 -0
- package/dist/libs/player/DTPlayer.element.js.map +1 -0
- package/dist/libs/player/DTPlayer.manager.d.ts +11 -0
- package/dist/libs/player/DTPlayer.manager.js +42 -0
- package/dist/libs/player/DTPlayer.manager.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/core.d.ts +103 -0
- package/dist/types/core.js +15 -0
- package/dist/types/core.js.map +1 -0
- package/dist/types/index.d.ts +2 -98
- package/dist/types/index.js +16 -12
- package/dist/types/index.js.map +1 -1
- package/dist/types/player.d.ts +5 -0
- package/dist/types/player.js +3 -0
- package/dist/types/player.js.map +1 -0
- package/docs/assets/highlight.css +29 -29
- package/docs/assets/main.js +59 -58
- package/docs/assets/navigation.js +1 -0
- package/docs/assets/search.js +1 -1
- package/docs/assets/style.css +1414 -1367
- package/docs/classes/core_DTAction.DYOToolsAction.html +89 -0
- package/docs/classes/core_DTBunch.DYOToolsBunch.html +254 -0
- package/docs/classes/core_DTComponent.DYOToolsComponent.html +76 -0
- package/docs/classes/core_DTComponentPhysical.DYOToolsComponentPhysical.html +110 -0
- package/docs/classes/core_DTComponentWithMeta.DYOToolsComponentWithMeta.html +96 -0
- package/docs/classes/core_DTElement.DYOToolsElement.html +135 -0
- package/docs/classes/core_DTError.DYOToolsError.html +37 -0
- package/docs/classes/core_DTManager.DYOToolsManager.html +237 -0
- package/docs/classes/core_DTMaster.DYOToolsMaster.html +150 -0
- package/docs/classes/core_DTModule.DYOToolsModule.html +92 -0
- package/docs/classes/libs_DYOFinder.DYOFinder.html +34 -0
- package/docs/classes/libs_player_DTPlayer_element.DYOToolsPlayer.html +134 -0
- package/docs/classes/libs_player_DTPlayer_manager.DYOToolsPlayerManager.html +243 -0
- package/docs/enums/types_core.FilterOperatorType.html +10 -0
- package/docs/hierarchy.html +1 -0
- package/docs/index.html +1 -46
- package/docs/interfaces/types_core.DTBunchFilters.html +6 -0
- package/docs/interfaces/types_core.DTBunchOptions.html +19 -0
- package/docs/interfaces/types_core.DTBunchToObject.html +7 -0
- package/docs/interfaces/types_core.DTComponentOptions.html +5 -0
- package/docs/interfaces/types_core.DTComponentToObject.html +4 -0
- package/docs/interfaces/types_core.DTElementToObject.html +7 -0
- package/docs/interfaces/types_core.DTManagerFilters.html +6 -0
- package/docs/interfaces/types_core.DTManagerOptions.html +8 -0
- package/docs/interfaces/types_core.DTManagerToObject.html +5 -0
- package/docs/interfaces/types_core.DTMasterToObject.html +8 -0
- package/docs/interfaces/types_core.DTModuleToObject.html +6 -0
- package/docs/interfaces/types_core.DYOFinderConfigurationPropDefault.html +4 -0
- package/docs/interfaces/types_core.DYOFinderConfigurationPropObjectSearch.html +4 -0
- package/docs/interfaces/types_core.DYOFinderFilterOperatorAdvanced.html +5 -0
- package/docs/interfaces/types_core.DYOFinderFilterOperatorBase.html +5 -0
- package/docs/interfaces/types_player.DTPlayerManagerSimpleConfiguration.html +3 -0
- package/docs/modules/constants.html +6 -0
- package/docs/modules/core_DTAction.html +2 -0
- package/docs/modules/core_DTBunch.html +2 -0
- package/docs/modules/core_DTComponent.html +2 -0
- package/docs/modules/core_DTComponentPhysical.html +2 -0
- package/docs/modules/core_DTComponentWithMeta.html +2 -0
- package/docs/modules/core_DTElement.html +2 -0
- package/docs/modules/core_DTError.html +2 -0
- package/docs/modules/core_DTManager.html +2 -0
- package/docs/modules/core_DTMaster.html +2 -0
- package/docs/modules/core_DTModule.html +2 -0
- package/docs/modules/libs_DYOFinder.html +2 -0
- package/docs/modules/libs_player_DTPlayer_element.html +2 -0
- package/docs/modules/libs_player_DTPlayer_manager.html +2 -0
- package/docs/modules/types.html +29 -0
- package/docs/modules/types_core.html +28 -0
- package/docs/modules/types_player.html +2 -0
- package/docs/types/types_core.DTAcceptedMetaData.html +2 -0
- package/docs/types/types_core.DTManagerItemType.html +1 -0
- package/docs/types/types_core.DTManagerItemsType.html +2 -0
- package/docs/types/types_core.DYOFinderComponentType.html +1 -0
- package/docs/types/types_core.DYOFinderConfiguration.html +2 -0
- package/docs/types/types_core.DYOFinderConfigurationProp.html +1 -0
- package/docs/types/types_core.DYOFinderFilterOperator.html +1 -0
- package/docs/types/types_core.DYOFinderFilterOperatorArgument.html +1 -0
- package/docs/types/types_core.DYOFinderFilters.html +1 -0
- package/docs/types/types_core.StandardPrimitiveType.html +2 -0
- package/docs/types/types_core.StandardPrimitiveTypeWithArray.html +1 -0
- package/docs/variables/constants.bunchDefaultOptions.html +2 -0
- package/docs/variables/constants.componentBunchDefaultFinderConfiguration.html +1 -0
- package/docs/variables/constants.componentManagerDefaultFinderConfiguration.html +1 -0
- package/docs/variables/constants.componentPhysicalDefaultFinderConfiguration.html +1 -0
- package/docs/variables/constants.managerDefaultOptions.html +2 -0
- package/package.json +16 -17
- package/src/constants.ts +85 -85
- package/src/core/DTAction.ts +52 -0
- package/src/core/DTBunch.ts +467 -461
- package/src/core/DTComponent.ts +225 -225
- package/src/core/DTComponentPhysical.ts +53 -39
- package/src/core/DTComponentWithMeta.ts +65 -65
- package/src/core/DTElement.ts +102 -69
- package/src/core/DTError.ts +78 -78
- package/src/core/DTManager.ts +465 -446
- package/src/core/DTMaster.ts +318 -0
- package/src/core/DTModule.ts +90 -0
- package/src/index.ts +17 -9
- package/src/libs/DYOFinder.ts +175 -175
- package/src/libs/player/DTPlayer.element.ts +9 -0
- package/src/libs/player/DTPlayer.manager.ts +84 -0
- package/src/types/core.ts +169 -0
- package/src/types/index.ts +2 -162
- package/src/types/player.ts +6 -0
- package/test/core/DTAction.double.ts +78 -0
- package/test/core/DTAction.spec.ts +76 -0
- package/test/core/DTBunch.double.ts +18 -10
- package/test/core/DTBunch.spec.ts +70 -68
- package/test/core/DTComponentPhysical.double.ts +3 -3
- package/test/core/DTComponentPhysical.spec.ts +25 -11
- package/test/core/DTElement.double.ts +21 -5
- package/test/core/DTElement.spec.ts +52 -8
- package/test/core/DTError.double.ts +1 -1
- package/test/core/DTManager.double.ts +29 -5
- package/test/core/DTManager.spec.ts +80 -17
- package/test/core/DTMaster.double.ts +141 -0
- package/test/core/DTMaster.spec.ts +584 -0
- package/test/core/DTModule.double.ts +80 -0
- package/test/core/DTModule.spec.ts +138 -0
- package/test/core/copy.spec.ts +20 -4
- package/test/{core/DTPlayer.double.ts → libs/player/DTPlayer.element.double.ts} +15 -24
- package/test/libs/player/DTPlayer.element.spec.ts +28 -0
- package/test/libs/player/DTPlayer.manager.double.ts +92 -0
- package/test/libs/player/DTPlayer.manager.spec.ts +178 -0
- package/LICENSE +0 -21
- package/cucumber.js +0 -9
- package/dist/core/DTPlayer.d.ts +0 -8
- package/dist/core/DTPlayer.js +0 -30
- package/dist/core/DTPlayer.js.map +0 -1
- package/e2e/0.2.0/epic1.feature +0 -29
- package/e2e/0.2.0/epic2.feature +0 -22
- package/e2e/0.2.0/epic3.feature +0 -25
- package/e2e/0.2.0/resources/dominion.js +0 -195
- package/e2e/0.2.0/resources/utils.js +0 -27
- package/e2e/0.2.0/support/steps.js +0 -108
- package/e2e/future/epic4.feature +0 -39
- package/e2e/future/resources/dominion.js +0 -238
- package/e2e/future/resources/utils.js +0 -27
- package/src/core/DTPlayer.ts +0 -57
- package/test/core/DTPlayer.spec.ts +0 -80
package/dist/constants.js
CHANGED
|
@@ -7,7 +7,7 @@ exports.bunchDefaultOptions = {
|
|
|
7
7
|
uniqueKey: false,
|
|
8
8
|
inheritOwner: false,
|
|
9
9
|
replaceIndex: false,
|
|
10
|
-
|
|
10
|
+
virtualContainer: false,
|
|
11
11
|
};
|
|
12
12
|
exports.managerDefaultOptions = {
|
|
13
13
|
errors: false,
|
|
@@ -39,7 +39,7 @@ exports.componentPhysicalDefaultFinderConfiguration = {
|
|
|
39
39
|
},
|
|
40
40
|
owner: {
|
|
41
41
|
operators: baseOperators,
|
|
42
|
-
getValue: (item) =>
|
|
42
|
+
getValue: (item) => item.getOwner(),
|
|
43
43
|
objectSearch: false,
|
|
44
44
|
},
|
|
45
45
|
meta: {
|
|
@@ -55,9 +55,9 @@ exports.componentManagerDefaultFinderConfiguration = Object.assign(Object.assign
|
|
|
55
55
|
},
|
|
56
56
|
objectSearch: false,
|
|
57
57
|
} });
|
|
58
|
-
exports.componentBunchDefaultFinderConfiguration = Object.assign(Object.assign({}, exports.componentPhysicalDefaultFinderConfiguration), {
|
|
58
|
+
exports.componentBunchDefaultFinderConfiguration = Object.assign(Object.assign({}, exports.componentPhysicalDefaultFinderConfiguration), { container: {
|
|
59
59
|
operators: baseOperators,
|
|
60
|
-
getValue: (item) => (item.
|
|
60
|
+
getValue: (item) => (item.getContainer() ? item.getContainer().getId() : null),
|
|
61
61
|
objectSearch: false,
|
|
62
62
|
} });
|
|
63
63
|
//# sourceMappingURL=constants.js.map
|
package/dist/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAA,mCAOiB;AAOJ,QAAA,mBAAmB,GAAmB;IACjD,MAAM,EAAE,KAAK;IACb,SAAS,EAAE,KAAK;IAChB,YAAY,EAAE,KAAK;IACnB,YAAY,EAAE,KAAK;IACnB,
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAA,mCAOiB;AAOJ,QAAA,mBAAmB,GAAmB;IACjD,MAAM,EAAE,KAAK;IACb,SAAS,EAAE,KAAK;IAChB,YAAY,EAAE,KAAK;IACnB,YAAY,EAAE,KAAK;IACnB,gBAAgB,EAAE,KAAK;CACxB,CAAC;AAGW,QAAA,qBAAqB,GAAqB;IACrD,MAAM,EAAE,KAAK;IACb,eAAe,EAAE,KAAK;CACvB,CAAC;AAGF,MAAM,aAAa,GAAG;IACpB,0BAAkB,CAAC,EAAE;IACrB,0BAAkB,CAAC,EAAE;IACrB,0BAAkB,CAAC,GAAG;IACtB,0BAAkB,CAAC,EAAE;CACtB,CAAC;AACF,MAAM,iBAAiB,GAAG;IACxB,GAAG,aAAa;IAChB,0BAAkB,CAAC,GAAG;IACtB,0BAAkB,CAAC,GAAG;IACtB,0BAAkB,CAAC,QAAQ;IAC3B,0BAAkB,CAAC,SAAS;CAC7B,CAAC;AAEW,QAAA,2CAA2C,GAA2B;IACjF,EAAE,EAAE;QACF,SAAS,EAAE,aAAa;QACxB,QAAQ,EAAE,CAAC,IAA6C,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE;QACzE,YAAY,EAAE,KAAK;KACpB;IACD,GAAG,EAAE;QACH,SAAS,EAAE,aAAa;QACxB,QAAQ,EAAE,CAAC,IAA6C,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE;QAC1E,YAAY,EAAE,KAAK;KACpB;IACD,KAAK,EAAE;QACL,SAAS,EAAE,aAAa;QACxB,QAAQ,EAAE,CAAC,IAA6C,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE;QAC5E,YAAY,EAAE,KAAK;KACpB;IACD,IAAI,EAAE;QACJ,SAAS,EAAE,iBAAiB;QAC5B,QAAQ,EAAE,CAAC,IAA6C,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE;QAC/E,YAAY,EAAE,IAAI;KACnB;CACF,CAAC;AAEW,QAAA,0CAA0C,mCAClD,mDAA2C,KAC9C,KAAK,EAAE;QACL,SAAS,EAAE,aAAa;QACxB,QAAQ,CAAC,IAA4C,EAAE,GAA6C;YAClG,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QACpC,CAAC;QACD,YAAY,EAAE,KAAK;KACpB,IACD;AAEW,QAAA,wCAAwC,mCAChD,mDAA2C,KAC9C,SAAS,EAAE;QACT,SAAS,EAAE,aAAa;QACxB,QAAQ,EAAE,CAAC,IAAmC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAC7G,YAAY,EAAE,KAAK;KACpB,IACD"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import DYOToolsComponent from './DTComponent';
|
|
2
|
+
import { DTComponentToObject } from '../types';
|
|
3
|
+
import DYOToolsMaster from './DTMaster';
|
|
4
|
+
export default abstract class DYOToolsAction<Payload = unknown> extends DYOToolsComponent {
|
|
5
|
+
protected _componentType: string;
|
|
6
|
+
getMaster(): DYOToolsMaster | undefined;
|
|
7
|
+
abstract execute(payload: Payload): Promise<void>;
|
|
8
|
+
toString(): string;
|
|
9
|
+
toObject(): DTComponentToObject;
|
|
10
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const DTComponent_1 = require("./DTComponent");
|
|
4
|
+
class DYOToolsAction extends DTComponent_1.default {
|
|
5
|
+
constructor() {
|
|
6
|
+
super(...arguments);
|
|
7
|
+
this._componentType = 'action';
|
|
8
|
+
}
|
|
9
|
+
getMaster() {
|
|
10
|
+
return this.getContext('master');
|
|
11
|
+
}
|
|
12
|
+
toString() {
|
|
13
|
+
return `Component ${this._key} - Type: Action`;
|
|
14
|
+
}
|
|
15
|
+
toObject() {
|
|
16
|
+
return {
|
|
17
|
+
id: this._id,
|
|
18
|
+
key: this._key,
|
|
19
|
+
type: this._componentType,
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
exports.default = DYOToolsAction;
|
|
24
|
+
//# sourceMappingURL=DTAction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DTAction.js","sourceRoot":"","sources":["../../src/core/DTAction.ts"],"names":[],"mappings":";;AAAA,+CAA8C;AAI9C,MAA8B,cAAkC,SAAQ,qBAAiB;IAAzF;;QAIY,mBAAc,GAAW,QAAQ,CAAC;IA2C9C,CAAC;IAtCC,SAAS;QACP,OAAO,IAAI,CAAC,UAAU,CAAiB,QAAQ,CAAC,CAAC;IACnD,CAAC;IAeD,QAAQ;QACN,OAAO,aAAa,IAAI,CAAC,IAAI,iBAAiB,CAAC;IACjD,CAAC;IAYD,QAAQ;QACN,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,GAAG;YACZ,GAAG,EAAE,IAAI,CAAC,IAAI;YACd,IAAI,EAAE,IAAI,CAAC,cAAc;SAC1B,CAAC;IACJ,CAAC;CACF;AA/CD,iCA+CC"}
|
package/dist/core/DTBunch.d.ts
CHANGED
|
@@ -1,20 +1,19 @@
|
|
|
1
1
|
import DYOToolsElement from './DTElement';
|
|
2
2
|
import { DTAcceptedMetaData, DTBunchFilters, DTBunchOptions, DTBunchToObject, DYOFinderConfiguration } from '../types';
|
|
3
|
-
import DYOToolsPlayer from './DTPlayer';
|
|
4
3
|
import DYOToolsComponentPhysical from './DTComponentPhysical';
|
|
5
4
|
import DYOFinder from '../libs/DYOFinder';
|
|
6
|
-
export default class DYOToolsBunch<IBunchItem extends DYOToolsElement<DTAcceptedMetaData>, IComponentMeta extends DTAcceptedMetaData = DTAcceptedMetaData> extends DYOToolsComponentPhysical<IComponentMeta, DTBunchOptions> {
|
|
5
|
+
export default class DYOToolsBunch<IBunchItem extends DYOToolsElement<DTAcceptedMetaData> = DYOToolsElement<DTAcceptedMetaData>, IComponentMeta extends DTAcceptedMetaData = DTAcceptedMetaData> extends DYOToolsComponentPhysical<IComponentMeta, DTBunchOptions> {
|
|
7
6
|
protected _componentType: string;
|
|
8
7
|
protected _items: IBunchItem[];
|
|
9
8
|
protected _finder: DYOFinder;
|
|
10
9
|
constructor(key?: string, items?: IBunchItem[], options?: Partial<DTBunchOptions>);
|
|
11
10
|
getFinderConfiguration(): DYOFinderConfiguration;
|
|
12
|
-
setOwner(value:
|
|
11
|
+
setOwner(value: string): void;
|
|
13
12
|
removeOwner(): void;
|
|
14
|
-
add(item: IBunchItem, options?: Partial<Omit<DTBunchOptions, '
|
|
15
|
-
addAtIndex(item: IBunchItem, index: number, options?: Partial<Omit<DTBunchOptions, '
|
|
16
|
-
addMany(items: IBunchItem[], options?: Partial<Omit<DTBunchOptions, '
|
|
17
|
-
addManyAtIndex(items: IBunchItem[], index: number, options?: Partial<Omit<DTBunchOptions, '
|
|
13
|
+
add(item: IBunchItem, options?: Partial<Omit<DTBunchOptions, 'virtualContainer'>>): void;
|
|
14
|
+
addAtIndex(item: IBunchItem, index: number, options?: Partial<Omit<DTBunchOptions, ''>>): void;
|
|
15
|
+
addMany(items: IBunchItem[], options?: Partial<Omit<DTBunchOptions, 'virtualContainer'>>): void;
|
|
16
|
+
addManyAtIndex(items: IBunchItem[], index: number, options?: Partial<Omit<DTBunchOptions, 'virtualContainer'>>): void;
|
|
18
17
|
get(index: string | number): IBunchItem | undefined;
|
|
19
18
|
getAll(): IBunchItem[];
|
|
20
19
|
indexOf(id: string): number;
|
package/dist/core/DTBunch.js
CHANGED
|
@@ -35,7 +35,7 @@ class DYOToolsBunch extends DTComponentPhysical_1.default {
|
|
|
35
35
|
this.addAtIndex(item, this._items.length, options);
|
|
36
36
|
}
|
|
37
37
|
addAtIndex(item, index, options = {}) {
|
|
38
|
-
const { uniqueKey, replaceIndex, inheritOwner,
|
|
38
|
+
const { uniqueKey, replaceIndex, inheritOwner, virtualContainer, } = Object.assign(Object.assign({}, this._options), options);
|
|
39
39
|
let hasError = false;
|
|
40
40
|
let finalIndex = index;
|
|
41
41
|
const existingItem = this.get(item.getId());
|
|
@@ -57,12 +57,15 @@ class DYOToolsBunch extends DTComponentPhysical_1.default {
|
|
|
57
57
|
if (index > this._items.length) {
|
|
58
58
|
finalIndex = this._items.length;
|
|
59
59
|
}
|
|
60
|
-
if (
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
60
|
+
if (this._context) {
|
|
61
|
+
item.setContext(this._context);
|
|
62
|
+
}
|
|
63
|
+
if (!virtualContainer) {
|
|
64
|
+
const oldContainer = item.getContainer();
|
|
65
|
+
if (oldContainer && oldContainer.getComponentType() === 'bunch') {
|
|
66
|
+
oldContainer.remove(item.getId());
|
|
64
67
|
}
|
|
65
|
-
item.
|
|
68
|
+
item.setContainer(this);
|
|
66
69
|
}
|
|
67
70
|
if (inheritOwner) {
|
|
68
71
|
item.setOwner(this._owner);
|
|
@@ -135,22 +138,22 @@ class DYOToolsBunch extends DTComponentPhysical_1.default {
|
|
|
135
138
|
}
|
|
136
139
|
}
|
|
137
140
|
removeMany(indexes) {
|
|
138
|
-
const {
|
|
141
|
+
const { virtualContainer } = this._options;
|
|
139
142
|
const newItems = [];
|
|
140
143
|
for (let i = 0; i < this._items.length; i += 1) {
|
|
141
144
|
if (typeof indexes[0] === 'number') {
|
|
142
145
|
if (!indexes.includes(i)) {
|
|
143
146
|
newItems.push(this._items[i]);
|
|
144
147
|
}
|
|
145
|
-
else if (!
|
|
146
|
-
this._items[i].
|
|
148
|
+
else if (!virtualContainer) {
|
|
149
|
+
this._items[i].removeContainer();
|
|
147
150
|
}
|
|
148
151
|
}
|
|
149
152
|
else if (!indexes.includes(this._items[i].getId())) {
|
|
150
153
|
newItems.push(this._items[i]);
|
|
151
154
|
}
|
|
152
|
-
else if (!
|
|
153
|
-
this._items[i].
|
|
155
|
+
else if (!virtualContainer) {
|
|
156
|
+
this._items[i].removeContainer();
|
|
154
157
|
}
|
|
155
158
|
}
|
|
156
159
|
this._items = newItems;
|
|
@@ -164,7 +167,7 @@ class DYOToolsBunch extends DTComponentPhysical_1.default {
|
|
|
164
167
|
}
|
|
165
168
|
copy() {
|
|
166
169
|
let copyItems;
|
|
167
|
-
if (this._options.
|
|
170
|
+
if (this._options.virtualContainer) {
|
|
168
171
|
copyItems = this._items;
|
|
169
172
|
}
|
|
170
173
|
else {
|
|
@@ -195,7 +198,7 @@ class DYOToolsBunch extends DTComponentPhysical_1.default {
|
|
|
195
198
|
toString() {
|
|
196
199
|
let ownerKey = '';
|
|
197
200
|
if (this._owner) {
|
|
198
|
-
ownerKey = ` - Owner: ${this._owner
|
|
201
|
+
ownerKey = ` - Owner: ${this._owner}`;
|
|
199
202
|
}
|
|
200
203
|
return `Component ${this._key} - Type: Bunch${ownerKey} - Items: ${this._items.length}`;
|
|
201
204
|
}
|
package/dist/core/DTBunch.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DTBunch.js","sourceRoot":"","sources":["../../src/core/DTBunch.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"DTBunch.js","sourceRoot":"","sources":["../../src/core/DTBunch.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { DTAcceptedMetaData, DTComponentOptions } from '../types';
|
|
2
2
|
import DYOToolsComponentWithMeta from './DTComponentWithMeta';
|
|
3
|
-
import
|
|
3
|
+
import DYOToolsMaster from './DTMaster';
|
|
4
4
|
export default abstract class DYOToolsComponentPhysical<IComponentMeta extends DTAcceptedMetaData, IComponentOptions extends DTComponentOptions = DTComponentOptions> extends DYOToolsComponentWithMeta<IComponentMeta, IComponentOptions> {
|
|
5
|
-
protected _owner?:
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
protected _owner?: string;
|
|
6
|
+
getManager(): DYOToolsMaster | undefined;
|
|
7
|
+
getMaster(): DYOToolsMaster | undefined;
|
|
8
|
+
getOwner(): string;
|
|
9
|
+
setOwner(value: string): void;
|
|
8
10
|
removeOwner(): void;
|
|
9
11
|
abstract copy(): DYOToolsComponentPhysical<IComponentMeta, IComponentOptions>;
|
|
10
12
|
}
|
|
@@ -2,6 +2,12 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const DTComponentWithMeta_1 = require("./DTComponentWithMeta");
|
|
4
4
|
class DYOToolsComponentPhysical extends DTComponentWithMeta_1.default {
|
|
5
|
+
getManager() {
|
|
6
|
+
return this.getContext('manager');
|
|
7
|
+
}
|
|
8
|
+
getMaster() {
|
|
9
|
+
return this.getContext('master');
|
|
10
|
+
}
|
|
5
11
|
getOwner() {
|
|
6
12
|
return this._owner;
|
|
7
13
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DTComponentPhysical.js","sourceRoot":"","sources":["../../src/core/DTComponentPhysical.ts"],"names":[],"mappings":";;AACA,+DAA8D;AAG9D,MAA8B,yBAG1B,SAAQ,6BAA4D;IAStE,QAAQ;QACN,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAKD,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"DTComponentPhysical.js","sourceRoot":"","sources":["../../src/core/DTComponentPhysical.ts"],"names":[],"mappings":";;AACA,+DAA8D;AAG9D,MAA8B,yBAG1B,SAAQ,6BAA4D;IAStE,UAAU;QACR,OAAO,IAAI,CAAC,UAAU,CAAiB,SAAS,CAAC,CAAC;IACpD,CAAC;IAKD,SAAS;QACP,OAAO,IAAI,CAAC,UAAU,CAAiB,QAAQ,CAAC,CAAC;IACnD,CAAC;IAKD,QAAQ;QACN,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAKD,QAAQ,CAAC,KAAa;QACpB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAKD,WAAW;QACT,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;IAC1B,CAAC;CAMF;AAhDD,4CAgDC"}
|
package/dist/core/DTElement.d.ts
CHANGED
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
import { DTAcceptedMetaData, DTElementToObject } from '../types';
|
|
2
2
|
import DYOToolsComponentPhysical from './DTComponentPhysical';
|
|
3
|
+
import DYOToolsBunch from './DTBunch';
|
|
3
4
|
export default class DYOToolsElement<IComponentMeta extends DTAcceptedMetaData> extends DYOToolsComponentPhysical<IComponentMeta> {
|
|
4
5
|
protected _componentType: string;
|
|
6
|
+
protected _container: DYOToolsBunch;
|
|
7
|
+
getContainer(): DYOToolsBunch | undefined;
|
|
8
|
+
setContainer(container: DYOToolsBunch): void;
|
|
9
|
+
removeContainer(): void;
|
|
5
10
|
copy(): DYOToolsElement<IComponentMeta>;
|
|
6
11
|
toObject(): DTElementToObject<IComponentMeta>;
|
|
7
12
|
toString(): string;
|
package/dist/core/DTElement.js
CHANGED
|
@@ -6,6 +6,15 @@ class DYOToolsElement extends DTComponentPhysical_1.default {
|
|
|
6
6
|
super(...arguments);
|
|
7
7
|
this._componentType = 'element';
|
|
8
8
|
}
|
|
9
|
+
getContainer() {
|
|
10
|
+
return this._container;
|
|
11
|
+
}
|
|
12
|
+
setContainer(container) {
|
|
13
|
+
this._container = container;
|
|
14
|
+
}
|
|
15
|
+
removeContainer() {
|
|
16
|
+
this._container = undefined;
|
|
17
|
+
}
|
|
9
18
|
copy() {
|
|
10
19
|
const copyElement = new DYOToolsElement(this._key, this._options);
|
|
11
20
|
copyElement.setManyMeta(Object.assign({}, this.getManyMeta()));
|
|
@@ -28,9 +37,10 @@ class DYOToolsElement extends DTComponentPhysical_1.default {
|
|
|
28
37
|
toString() {
|
|
29
38
|
let ownerKey = '';
|
|
30
39
|
if (this._owner) {
|
|
31
|
-
ownerKey = ` - Owner: ${this._owner
|
|
40
|
+
ownerKey = ` - Owner: ${this._owner}`;
|
|
32
41
|
}
|
|
33
|
-
|
|
42
|
+
const domainLabel = this._domain ? ` ${this._domain}` : '';
|
|
43
|
+
return `Component${domainLabel} ${this._key} - Type: Element${ownerKey}`;
|
|
34
44
|
}
|
|
35
45
|
}
|
|
36
46
|
exports.default = DYOToolsElement;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DTElement.js","sourceRoot":"","sources":["../../src/core/DTElement.ts"],"names":[],"mappings":";;AACA,+DAA8D;
|
|
1
|
+
{"version":3,"file":"DTElement.js","sourceRoot":"","sources":["../../src/core/DTElement.ts"],"names":[],"mappings":";;AACA,+DAA8D;AAG9D,MAAqB,eAEjB,SAAQ,6BAAyC;IAFrD;;QAMY,mBAAc,GAAG,SAAS,CAAC;IA2FvC,CAAC;IA5EC,YAAY;QACV,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAKD,YAAY,CAAC,SAAwB;QACnC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAC9B,CAAC;IAKD,eAAe;QACb,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAC9B,CAAC;IASD,IAAI;QACF,MAAM,WAAW,GAAG,IAAI,eAAe,CAAiB,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClF,WAAW,CAAC,WAAW,mBAAM,IAAI,CAAC,WAAW,EAAE,EAAG,CAAC;QAEnD,OAAO,WAAW,CAAC;IACrB,CAAC;IAcD,QAAQ;QACN,MAAM,aAAa,GAAsC;YACvD,EAAE,EAAE,IAAI,CAAC,GAAG;YACZ,GAAG,EAAE,IAAI,CAAC,IAAI;YACd,IAAI,EAAE,IAAI,CAAC,cAAc;SAC1B,CAAC;QAEF,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,aAAa,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;SAC9C;QAED,IAAI,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YACpD,aAAa,CAAC,IAAI,qBAAQ,IAAI,CAAC,WAAW,EAAE,CAAE,CAAC;SAChD;QAED,OAAO,aAAa,CAAC;IACvB,CAAC;IAOD,QAAQ;QACN,IAAI,QAAQ,GAAG,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,QAAQ,GAAG,aAAa,IAAI,CAAC,MAAM,EAAE,CAAC;SACvC;QACD,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAE3D,OAAO,YAAY,WAAW,IAAI,IAAI,CAAC,IAAI,mBAAmB,QAAQ,EAAE,CAAC;IAC3E,CAAC;CACF;AAjGD,kCAiGC"}
|
package/dist/core/DTManager.d.ts
CHANGED
|
@@ -3,7 +3,8 @@ import DYOToolsBunch from './DTBunch';
|
|
|
3
3
|
import { DTAcceptedMetaData, DTManagerFilters, DTManagerItemsType, DTManagerOptions, DTManagerToObject, DYOFinderConfiguration } from '../types';
|
|
4
4
|
import DYOFinder from '../libs/DYOFinder';
|
|
5
5
|
import DYOToolsElement from './DTElement';
|
|
6
|
-
|
|
6
|
+
import DYOToolsMaster from './DTMaster';
|
|
7
|
+
export default class DYOToolsManager<IBunchItem extends DYOToolsElement<DTAcceptedMetaData> = DYOToolsElement<DTAcceptedMetaData>> extends DYOToolsComponent<DTManagerOptions> {
|
|
7
8
|
protected _componentType: string;
|
|
8
9
|
protected _items: DTManagerItemsType<IBunchItem>;
|
|
9
10
|
protected _scopes: string[];
|
|
@@ -20,6 +21,7 @@ export default class DYOToolsManager<IBunchItem extends DYOToolsElement<DTAccept
|
|
|
20
21
|
get(id: string): DYOToolsBunch<IBunchItem> | undefined;
|
|
21
22
|
getAll(scope?: string): DYOToolsBunch<IBunchItem>[];
|
|
22
23
|
getScope(id: string): string | undefined;
|
|
24
|
+
getMaster(): DYOToolsMaster | undefined;
|
|
23
25
|
remove(id: string): void;
|
|
24
26
|
removeMany(ids: string[], options?: Partial<DTManagerOptions>): void;
|
|
25
27
|
removeAll(): void;
|
package/dist/core/DTManager.js
CHANGED
|
@@ -16,7 +16,8 @@ class DYOToolsManager extends DTComponent_1.default {
|
|
|
16
16
|
'virtual',
|
|
17
17
|
...scopes,
|
|
18
18
|
];
|
|
19
|
-
this._library = new DTBunch_1.default('library', elements, {
|
|
19
|
+
this._library = new DTBunch_1.default('library', elements, { virtualContainer: true });
|
|
20
|
+
this._library.setContext(this);
|
|
20
21
|
this._finder = new DYOFinder_1.default(this, this.getFinderConfiguration());
|
|
21
22
|
}
|
|
22
23
|
getFinderConfiguration() {
|
|
@@ -36,13 +37,13 @@ class DYOToolsManager extends DTComponent_1.default {
|
|
|
36
37
|
this.triggerError(new DTError_1.default('id_conflict', 'Bunch with same id already exists in the manager', this, item));
|
|
37
38
|
return;
|
|
38
39
|
}
|
|
39
|
-
const {
|
|
40
|
+
const { virtualContainer } = item.getOptions();
|
|
40
41
|
let scope;
|
|
41
42
|
if (!targetScope) {
|
|
42
|
-
scope =
|
|
43
|
+
scope = virtualContainer ? 'virtual' : 'default';
|
|
43
44
|
}
|
|
44
45
|
else {
|
|
45
|
-
const { code: errorCode, message: errorMessage } = this.getErrorDataForScope(targetScope,
|
|
46
|
+
const { code: errorCode, message: errorMessage } = this.getErrorDataForScope(targetScope, virtualContainer);
|
|
46
47
|
if (errorCode && errorMessage) {
|
|
47
48
|
this.triggerError(new DTError_1.default(errorCode, errorMessage, this, item));
|
|
48
49
|
return;
|
|
@@ -61,6 +62,9 @@ class DYOToolsManager extends DTComponent_1.default {
|
|
|
61
62
|
if (oldContext && oldContext.getComponentType() === 'manager') {
|
|
62
63
|
oldContext.remove(item.getId());
|
|
63
64
|
}
|
|
65
|
+
item.getAll().forEach((element) => {
|
|
66
|
+
element.setContext(this);
|
|
67
|
+
});
|
|
64
68
|
this._items[item.getId()] = {
|
|
65
69
|
scope,
|
|
66
70
|
item,
|
|
@@ -87,8 +91,8 @@ class DYOToolsManager extends DTComponent_1.default {
|
|
|
87
91
|
return;
|
|
88
92
|
}
|
|
89
93
|
const bunch = this._items[bunchId].item;
|
|
90
|
-
const {
|
|
91
|
-
const { code: errorCode, message: errorMessage } = this.getErrorDataForScope(targetScope,
|
|
94
|
+
const { virtualContainer } = bunch.getOptions();
|
|
95
|
+
const { code: errorCode, message: errorMessage } = this.getErrorDataForScope(targetScope, virtualContainer);
|
|
92
96
|
if (errorCode && errorMessage) {
|
|
93
97
|
this.triggerError(new DTError_1.default(errorCode, errorMessage, this, bunch));
|
|
94
98
|
return;
|
|
@@ -111,6 +115,9 @@ class DYOToolsManager extends DTComponent_1.default {
|
|
|
111
115
|
getScope(id) {
|
|
112
116
|
return this._items[id] && this._items[id].scope;
|
|
113
117
|
}
|
|
118
|
+
getMaster() {
|
|
119
|
+
return this.getContext('master');
|
|
120
|
+
}
|
|
114
121
|
remove(id) {
|
|
115
122
|
this.removeMany([id]);
|
|
116
123
|
}
|
|
@@ -118,11 +125,13 @@ class DYOToolsManager extends DTComponent_1.default {
|
|
|
118
125
|
const { libraryDeletion } = Object.assign(Object.assign({}, this._options), options);
|
|
119
126
|
ids.forEach((id) => {
|
|
120
127
|
if (this._items[id]) {
|
|
121
|
-
|
|
122
|
-
|
|
128
|
+
this._items[id].item.getAll().forEach((item) => {
|
|
129
|
+
if (libraryDeletion) {
|
|
123
130
|
this._library.remove(item.getId());
|
|
124
|
-
}
|
|
125
|
-
|
|
131
|
+
}
|
|
132
|
+
item.removeContext();
|
|
133
|
+
});
|
|
134
|
+
this._items[id].item.removeContext();
|
|
126
135
|
delete this._items[id];
|
|
127
136
|
}
|
|
128
137
|
});
|
|
@@ -157,19 +166,20 @@ class DYOToolsManager extends DTComponent_1.default {
|
|
|
157
166
|
}
|
|
158
167
|
toString() {
|
|
159
168
|
const libraryLabel = `Library: ${this._library.getAll().length}`;
|
|
160
|
-
|
|
169
|
+
const domainLabel = this._domain ? ` ${this._domain}` : '';
|
|
170
|
+
return `Component${domainLabel} ${this._key} - Type: Manager - ${libraryLabel} - Items: ${Object.keys(this._items).length}`;
|
|
161
171
|
}
|
|
162
|
-
getErrorDataForScope(targetScope,
|
|
172
|
+
getErrorDataForScope(targetScope, virtualContainer = false) {
|
|
163
173
|
const response = { code: '', message: '' };
|
|
164
174
|
if (!this.isValidScope(targetScope)) {
|
|
165
175
|
response.code = 'invalid_scope';
|
|
166
176
|
response.message = "Scope provided doesn't exist in the manager";
|
|
167
177
|
}
|
|
168
|
-
if (
|
|
178
|
+
if (virtualContainer && targetScope !== 'virtual') {
|
|
169
179
|
response.code = 'forbidden_scope';
|
|
170
180
|
response.message = 'Scope provided cannot be associated to a virtual bunch';
|
|
171
181
|
}
|
|
172
|
-
if (!
|
|
182
|
+
if (!virtualContainer && targetScope === 'virtual') {
|
|
173
183
|
response.code = 'forbidden_virtual_scope';
|
|
174
184
|
response.message = 'Virtual Scope provided cannot be associated to a physical bunch';
|
|
175
185
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DTManager.js","sourceRoot":"","sources":["../../src/core/DTManager.ts"],"names":[],"mappings":";;AAAA,+CAA8C;AAC9C,uCAAsC;AACtC,uCAAsC;AAWtC,iDAA0C;AAC1C,4CAAmH;
|
|
1
|
+
{"version":3,"file":"DTManager.js","sourceRoot":"","sources":["../../src/core/DTManager.ts"],"names":[],"mappings":";;AAAA,+CAA8C;AAC9C,uCAAsC;AACtC,uCAAsC;AAWtC,iDAA0C;AAC1C,4CAAmH;AAInH,MAAqB,eAEnB,SAAQ,qBAAmC;IAqD3C,YAAY,GAAY,EAAE,WAAyB,EAAE,EAAE,SAAmB,EAAE,EAAE,UAAqC,EAAE;QACnH,KAAK,CAAC,GAAG,kCAAO,iCAAc,GAAK,OAAO,EAAG,CAAC;QAlDtC,mBAAc,GAAG,SAAS,CAAC;QAoDnC,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAExD,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG;YACb,SAAS;YACT,SAAS;YACT,GAAG,MAAM;SACV,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,IAAI,iBAAa,CAAC,SAAS,EAAE,QAAQ,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC;QACnF,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAE/B,IAAI,CAAC,OAAO,GAAG,IAAI,mBAAS,CAAC,IAAI,EAAE,IAAI,CAAC,sBAAsB,EAAE,CAAC,CAAC;IACpE,CAAC;IASD,sBAAsB;QACpB,OAAO,sDAA0C,CAAC;IACpD,CAAC;IAKD,UAAU;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAKD,SAAS;QACP,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAQD,YAAY,CAAC,KAAa;QACxB,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC;IAuBD,GAAG,CAAC,IAA+B,EAAE,WAAoB;QAEvD,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE;YACnD,IAAI,CAAC,YAAY,CAAC,IAAI,iBAAa,CACjC,aAAa,EACb,kDAAkD,EAClD,IAAI,EACJ,IAAI,CACL,CAAC,CAAC;YACH,OAAO;SACR;QAGD,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAC/C,IAAI,KAAK,CAAC;QACV,IAAI,CAAC,WAAW,EAAE;YAChB,KAAK,GAAG,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;SAClD;aAAM;YACL,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;YAE5G,IAAI,SAAS,IAAI,YAAY,EAAE;gBAC7B,IAAI,CAAC,YAAY,CAAC,IAAI,iBAAa,CAAC,SAAS,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;gBAC1E,OAAO;aACR;YACD,KAAK,GAAG,WAAW,CAAC;SACrB;QAGD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE;YACxB,IAAI,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC,OAAmB,EAAE,EAAE;gBAC5C,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,EAAE;oBACvC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;iBAC5B;YACH,CAAC,CAAC,CAAC;SACJ;QAID,IAAI,CAAC,UAAU,CAA8B,IAAI,CAAC,CAAC;QACnD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QACrC,IAAI,UAAU,IAAI,UAAU,CAAC,gBAAgB,EAAE,KAAK,SAAS,EAAE;YAC5D,UAA0C,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;SAClE;QAGD,IAAI,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAChC,OAAO,CAAC,UAAU,CAA8B,IAAI,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;QAGH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,GAAG;YAC1B,KAAK;YACL,IAAI;SACL,CAAC;IACJ,CAAC;IASD,OAAO,CAAC,KAAkC,EAAE,WAAoB;QAC9D,MAAM,aAAa,qBAAQ,IAAI,CAAC,MAAM,CAAE,CAAC;QACzC,MAAM,EAAE,MAAM,EAAE,GAAuB,IAAI,CAAC,QAAQ,CAAC;QAErD,IAAI;YACF,KAAK,CAAC,OAAO,CAAC,CAAC,IAA+B,EAAE,EAAE;gBAChD,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;YAC9B,CAAC,CAAC,CAAC;SACJ;QAAC,OAAO,GAAY,EAAE;YACrB,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC;YAC5B,IAAI,CAAC,MAAM,EAAE;gBACX,MAAM,GAAG,CAAC;aACX;SACF;IACH,CAAC;IAWD,WAAW,CAAC,OAAe,EAAE,WAAmB;QAC9C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;YAC/C,IAAI,CAAC,YAAY,CAAC,IAAI,iBAAa,CACjC,YAAY,EACZ,iDAAiD,EACjD,IAAI,CACL,CAAC,CAAC;YACH,OAAO;SACR;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC;QAExC,MAAM,EAAE,gBAAgB,EAAE,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC;QAChD,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;QAC5G,IAAI,SAAS,IAAI,YAAY,EAAE;YAC7B,IAAI,CAAC,YAAY,CAAC,IAAI,iBAAa,CAAC,SAAS,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;YAC3E,OAAO;SACR;QAED,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,GAAG,WAAW,CAAC;IAC3C,CAAC;IAQD,GAAG,CAAC,EAAU;;QACZ,OAAO,MAAA,MAAA,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,0CAAE,IAAI,mCAAI,SAAS,CAAC;IAC5C,CAAC;IAQD,MAAM,CAAC,KAAc;QACnB,MAAM,UAAU,GAAG,EAAE,CAAC;QACtB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,IAAmC,EAAE,EAAE;YACzE,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,EAAE;gBAClC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC5B;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,UAAU,CAAC;IACpB,CAAC;IAQD,QAAQ,CAAC,EAAU;QACjB,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC;IAClD,CAAC;IAKD,SAAS;QACP,OAAO,IAAI,CAAC,UAAU,CAAiB,QAAQ,CAAC,CAAC;IACnD,CAAC;IAUD,MAAM,CAAC,EAAU;QACf,IAAI,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACxB,CAAC;IAYD,UAAU,CAAC,GAAa,EAAE,UAAqC,EAAE;QAC/D,MAAM,EAAE,eAAe,EAAE,mCAAQ,IAAI,CAAC,QAAQ,GAAK,OAAO,CAAE,CAAC;QAE7D,GAAG,CAAC,OAAO,CAAC,CAAC,EAAU,EAAE,EAAE;YACzB,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE;gBACnB,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC,IAAgB,EAAE,EAAE;oBACzD,IAAI,eAAe,EAAE;wBACnB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;qBACpC;oBACD,IAAI,CAAC,aAAa,EAAE,CAAC;gBACvB,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gBACrC,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;aACxB;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAQD,SAAS;QACP,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAC5C,CAAC;IA6BD,IAAI,CAAC,OAAkC;QACrC,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAA4B,OAAO,CAAC,CAAC;IAClE,CAAC;IAQD,aAAa;QACX,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;QAE1B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,IAAmC,EAAE,EAAE;YACzE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC,OAAmB,EAAE,EAAE;gBACjD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,EAAE;oBACvC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;iBAC5B;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAaD,QAAQ;QACN,MAAM,aAAa,GAAsB;YACvC,EAAE,EAAE,IAAI,CAAC,GAAG;YACZ,GAAG,EAAE,IAAI,CAAC,IAAI;YACd,IAAI,EAAE,IAAI,CAAC,cAAc;YACzB,KAAK,EAAE,EAAE;SACV,CAAC;QAEF,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,OAAe,EAAE,EAAE;YACnD,aAAa,CAAC,KAAK,CAAC,IAAI,iBACtB,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,IAC9B,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,EACvC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,aAAa,CAAC;IACvB,CAAC;IAOD,QAAQ;QACN,MAAM,YAAY,GAAG,YAAY,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC;QACjE,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAE3D,OAAO,YAAY,WAAW,IAAI,IAAI,CAAC,IAAI,sBAAsB,YAAY,aAAa,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC;IAC9H,CAAC;IASO,oBAAoB,CAAC,WAAmB,EAAE,gBAAgB,GAAG,KAAK;QACxE,MAAM,QAAQ,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;QAC3C,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE;YACnC,QAAQ,CAAC,IAAI,GAAG,eAAe,CAAC;YAChC,QAAQ,CAAC,OAAO,GAAG,6CAA6C,CAAC;SAClE;QACD,IAAI,gBAAgB,IAAI,WAAW,KAAK,SAAS,EAAE;YACjD,QAAQ,CAAC,IAAI,GAAG,iBAAiB,CAAC;YAClC,QAAQ,CAAC,OAAO,GAAG,wDAAwD,CAAC;SAC7E;QACD,IAAI,CAAC,gBAAgB,IAAI,WAAW,KAAK,SAAS,EAAE;YAClD,QAAQ,CAAC,IAAI,GAAG,yBAAyB,CAAC;YAC1C,QAAQ,CAAC,OAAO,GAAG,iEAAiE,CAAC;SACtF;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AA9bD,kCA8bC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import DYOToolsComponent from './DTComponent';
|
|
2
|
+
import DYOToolsManager from './DTManager';
|
|
3
|
+
import DYOToolsAction from './DTAction';
|
|
4
|
+
import DYOToolsModule from './DTModule';
|
|
5
|
+
import { DTMasterToObject } from '../types';
|
|
6
|
+
export default class DYOToolsMaster extends DYOToolsComponent {
|
|
7
|
+
protected _componentType: string;
|
|
8
|
+
protected _managers: Record<string, DYOToolsManager>;
|
|
9
|
+
protected _actions: Record<string, DYOToolsAction>;
|
|
10
|
+
protected _modules: Record<string, DYOToolsModule>;
|
|
11
|
+
constructor(key?: string);
|
|
12
|
+
addManager(manager: DYOToolsManager): void;
|
|
13
|
+
getManager(idOrKey: string): DYOToolsManager | undefined;
|
|
14
|
+
removeManager(idOrKey: string): void;
|
|
15
|
+
addAction(action: DYOToolsAction): void;
|
|
16
|
+
getAction(idOrKey: string): DYOToolsAction | undefined;
|
|
17
|
+
removeAction(idOrKey: string): void;
|
|
18
|
+
executeAction(idOrKey: string, payload: unknown): Promise<void>;
|
|
19
|
+
addModule(module: DYOToolsModule): void;
|
|
20
|
+
getModule(idOrKey: string): DYOToolsModule | undefined;
|
|
21
|
+
removeModule(idOrKey: string): void;
|
|
22
|
+
toString(): string;
|
|
23
|
+
toObject(): DTMasterToObject;
|
|
24
|
+
}
|
|
@@ -0,0 +1,133 @@
|
|
|
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
|
+
const DTComponent_1 = require("./DTComponent");
|
|
13
|
+
const DTError_1 = require("./DTError");
|
|
14
|
+
class DYOToolsMaster extends DTComponent_1.default {
|
|
15
|
+
constructor(key) {
|
|
16
|
+
super(key);
|
|
17
|
+
this._componentType = 'master';
|
|
18
|
+
this._managers = {};
|
|
19
|
+
this._actions = {};
|
|
20
|
+
this._modules = {};
|
|
21
|
+
}
|
|
22
|
+
addManager(manager) {
|
|
23
|
+
if (Object.keys(this._managers).includes(manager.getId())) {
|
|
24
|
+
this.triggerError(new DTError_1.default('id_conflict', 'Manager with same id already exists in the Master instance', this, manager));
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
if (Object.values(this._managers).find((m) => m.getKey() === manager.getKey())) {
|
|
28
|
+
this.triggerError(new DTError_1.default('key_conflict', 'Manager with same key already exists in the Master instance', this, manager));
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
this._managers[manager.getId()] = manager;
|
|
32
|
+
manager.setContext(this);
|
|
33
|
+
}
|
|
34
|
+
getManager(idOrKey) {
|
|
35
|
+
let managerFound = this._managers[idOrKey];
|
|
36
|
+
if (!managerFound) {
|
|
37
|
+
managerFound = Object.values(this._managers).find((m) => m.getKey() === idOrKey);
|
|
38
|
+
}
|
|
39
|
+
return managerFound;
|
|
40
|
+
}
|
|
41
|
+
removeManager(idOrKey) {
|
|
42
|
+
const manager = this.getManager(idOrKey);
|
|
43
|
+
if (manager) {
|
|
44
|
+
delete this._managers[manager.getId()];
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
addAction(action) {
|
|
48
|
+
if (Object.keys(this._actions).includes(action.getId())) {
|
|
49
|
+
this.triggerError(new DTError_1.default('id_conflict', 'Action with same id already exists in the Master instance', this, action));
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
if (Object.values(this._actions).find((m) => m.getKey() === action.getKey())) {
|
|
53
|
+
this.triggerError(new DTError_1.default('key_conflict', 'Action with same key already exists in the Master instance', this, action));
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
this._actions[action.getId()] = action;
|
|
57
|
+
action.setContext(this);
|
|
58
|
+
}
|
|
59
|
+
getAction(idOrKey) {
|
|
60
|
+
let actionFound = this._actions[idOrKey];
|
|
61
|
+
if (!actionFound) {
|
|
62
|
+
actionFound = Object.values(this._actions).find((a) => a.getKey() === idOrKey);
|
|
63
|
+
}
|
|
64
|
+
return actionFound;
|
|
65
|
+
}
|
|
66
|
+
removeAction(idOrKey) {
|
|
67
|
+
const action = this.getAction(idOrKey);
|
|
68
|
+
if (action) {
|
|
69
|
+
delete this._actions[action.getId()];
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
executeAction(idOrKey, payload) {
|
|
73
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
74
|
+
const action = this.getAction(idOrKey);
|
|
75
|
+
if (action) {
|
|
76
|
+
yield this.getAction(idOrKey).execute(payload);
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
addModule(module) {
|
|
81
|
+
if (Object.keys(this._modules).includes(module.getId())) {
|
|
82
|
+
this.triggerError(new DTError_1.default('id_conflict', 'Module with same id already exists in the Master instance', this, module));
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
if (Object.values(this._modules).find((m) => m.getKey() === module.getKey())) {
|
|
86
|
+
this.triggerError(new DTError_1.default('key_conflict', 'Module with same key already exists in the Master instance', this, module));
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
this._modules[module.getId()] = module;
|
|
90
|
+
module.setContext(this);
|
|
91
|
+
}
|
|
92
|
+
getModule(idOrKey) {
|
|
93
|
+
let moduleFound = this._modules[idOrKey];
|
|
94
|
+
if (!moduleFound) {
|
|
95
|
+
moduleFound = Object.values(this._modules).find((m) => m.getKey() === idOrKey);
|
|
96
|
+
}
|
|
97
|
+
return moduleFound;
|
|
98
|
+
}
|
|
99
|
+
removeModule(idOrKey) {
|
|
100
|
+
const module = this.getModule(idOrKey);
|
|
101
|
+
if (module) {
|
|
102
|
+
delete this._modules[module.getId()];
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
toString() {
|
|
106
|
+
const managersLabel = `Managers: ${Object.keys(this._managers).length}`;
|
|
107
|
+
const actionsLabel = `Actions: ${Object.keys(this._actions).length}`;
|
|
108
|
+
const modulesLabel = `Modules: ${Object.keys(this._modules).length}`;
|
|
109
|
+
return `Component ${this._key} - Type: Master - ${managersLabel} - ${actionsLabel} - ${modulesLabel}`;
|
|
110
|
+
}
|
|
111
|
+
toObject() {
|
|
112
|
+
const toObject = {
|
|
113
|
+
id: this._id,
|
|
114
|
+
key: this._key,
|
|
115
|
+
type: this._componentType,
|
|
116
|
+
managers: [],
|
|
117
|
+
actions: [],
|
|
118
|
+
modules: [],
|
|
119
|
+
};
|
|
120
|
+
if (Object.keys(this._managers).length) {
|
|
121
|
+
toObject.managers = Object.values(this._managers).map((obj) => obj.toObject());
|
|
122
|
+
}
|
|
123
|
+
if (Object.keys(this._actions).length) {
|
|
124
|
+
toObject.actions = Object.values(this._actions).map((obj) => obj.toObject());
|
|
125
|
+
}
|
|
126
|
+
if (Object.keys(this._modules).length) {
|
|
127
|
+
toObject.modules = Object.values(this._modules).map((obj) => obj.toObject());
|
|
128
|
+
}
|
|
129
|
+
return toObject;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
exports.default = DYOToolsMaster;
|
|
133
|
+
//# sourceMappingURL=DTMaster.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DTMaster.js","sourceRoot":"","sources":["../../src/core/DTMaster.ts"],"names":[],"mappings":"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"}
|