dyo-tools 0.3.2 → 0.4.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.
Files changed (209) hide show
  1. package/.c8rc.json +4 -4
  2. package/.eslintignore +1 -1
  3. package/.eslintrc.json +47 -47
  4. package/Makefile +34 -34
  5. package/dist/constants.d.ts +1 -0
  6. package/dist/constants.d.ts.map +1 -0
  7. package/dist/constants.js +24 -20
  8. package/dist/constants.js.map +1 -1
  9. package/dist/core/DTAction.d.ts +6 -4
  10. package/dist/core/DTAction.d.ts.map +1 -0
  11. package/dist/core/DTAction.js +3 -6
  12. package/dist/core/DTAction.js.map +1 -1
  13. package/dist/core/DTBunch.d.ts +8 -5
  14. package/dist/core/DTBunch.d.ts.map +1 -0
  15. package/dist/core/DTBunch.js +53 -19
  16. package/dist/core/DTBunch.js.map +1 -1
  17. package/dist/core/DTComponent.d.ts +13 -10
  18. package/dist/core/DTComponent.d.ts.map +1 -0
  19. package/dist/core/DTComponent.js +23 -10
  20. package/dist/core/DTComponent.js.map +1 -1
  21. package/dist/core/DTComponentPhysical.d.ts +11 -8
  22. package/dist/core/DTComponentPhysical.d.ts.map +1 -0
  23. package/dist/core/DTComponentPhysical.js +21 -6
  24. package/dist/core/DTComponentPhysical.js.map +1 -1
  25. package/dist/core/DTComponentWithMeta.d.ts +6 -3
  26. package/dist/core/DTComponentWithMeta.d.ts.map +1 -0
  27. package/dist/core/DTComponentWithMeta.js +21 -7
  28. package/dist/core/DTComponentWithMeta.js.map +1 -1
  29. package/dist/core/DTElement.d.ts +10 -8
  30. package/dist/core/DTElement.d.ts.map +1 -0
  31. package/dist/core/DTElement.js +8 -9
  32. package/dist/core/DTElement.js.map +1 -1
  33. package/dist/core/DTError.d.ts +8 -7
  34. package/dist/core/DTError.d.ts.map +1 -0
  35. package/dist/core/DTError.js +1 -5
  36. package/dist/core/DTError.js.map +1 -1
  37. package/dist/core/DTManager.d.ts +17 -14
  38. package/dist/core/DTManager.d.ts.map +1 -0
  39. package/dist/core/DTManager.js +84 -26
  40. package/dist/core/DTManager.js.map +1 -1
  41. package/dist/core/DTMaster.d.ts +19 -16
  42. package/dist/core/DTMaster.d.ts.map +1 -0
  43. package/dist/core/DTMaster.js +48 -31
  44. package/dist/core/DTMaster.js.map +1 -1
  45. package/dist/core/DTModule.d.ts +8 -5
  46. package/dist/core/DTModule.d.ts.map +1 -0
  47. package/dist/core/DTModule.js +6 -6
  48. package/dist/core/DTModule.js.map +1 -1
  49. package/dist/index.d.ts +1 -0
  50. package/dist/index.d.ts.map +1 -0
  51. package/dist/index.js +12 -28
  52. package/dist/index.js.map +1 -1
  53. package/dist/libs/DYOFinder.d.ts +1 -0
  54. package/dist/libs/DYOFinder.d.ts.map +1 -0
  55. package/dist/libs/DYOFinder.js +10 -14
  56. package/dist/libs/DYOFinder.js.map +1 -1
  57. package/dist/libs/dix/DIXModule.module.d.ts +8 -0
  58. package/dist/libs/dix/DIXModule.module.d.ts.map +1 -0
  59. package/dist/libs/dix/DIXModule.module.js +73 -0
  60. package/dist/libs/player/DTPlayer.element.d.ts +3 -2
  61. package/dist/libs/player/DTPlayer.element.d.ts.map +1 -0
  62. package/dist/libs/player/DTPlayer.element.js +2 -6
  63. package/dist/libs/player/DTPlayer.element.js.map +1 -1
  64. package/dist/libs/player/DTPlayer.manager.d.ts +8 -7
  65. package/dist/libs/player/DTPlayer.manager.d.ts.map +1 -0
  66. package/dist/libs/player/DTPlayer.manager.js +13 -20
  67. package/dist/libs/player/DTPlayer.manager.js.map +1 -1
  68. package/dist/tsconfig.dev.tsbuildinfo +1 -0
  69. package/dist/tsconfig.tsbuildinfo +1 -1
  70. package/dist/types/core.d.ts +40 -12
  71. package/dist/types/core.d.ts.map +1 -0
  72. package/dist/types/core.js +2 -6
  73. package/dist/types/core.js.map +1 -1
  74. package/dist/types/index.d.ts +1 -0
  75. package/dist/types/index.d.ts.map +1 -0
  76. package/dist/types/index.js +2 -19
  77. package/dist/types/index.js.map +1 -1
  78. package/dist/types/player.d.ts +1 -1
  79. package/dist/types/player.d.ts.map +1 -0
  80. package/dist/types/player.js +1 -3
  81. package/integration/data/components/DTHero.ts +42 -0
  82. package/integration/data/components/DTHeroManager.ts +11 -0
  83. package/integration/data/components/DTHeroPlayZone.ts +6 -0
  84. package/integration/data/components/DTHeroPlayerHand.ts +11 -0
  85. package/integration/data/components/index.ts +5 -0
  86. package/integration/data/in/heroIn.helper.ts +8 -0
  87. package/integration/data/in/playerIn.helper.ts +13 -0
  88. package/integration/data/out/heroOut.helper.ts +48 -0
  89. package/integration/endings/synchronisation.ending.ts +25 -0
  90. package/integration/scenes/drawCard.scene.ts +31 -0
  91. package/integration/scenes/empty.scene.ts +6 -0
  92. package/integration/scenes/playCard.scene.ts +23 -0
  93. package/integration/scenes/playerLeave.scene.ts +33 -0
  94. package/integration/stages/baseDix.stage.ts +137 -0
  95. package/integration/stages/syncDix.stage.ts +36 -0
  96. package/integration/tests/scenario1.spec.ts +55 -0
  97. package/integration/types/index.ts +24 -0
  98. package/jest-integration.config.ts +25 -0
  99. package/jest.config.ts +26 -0
  100. package/package.json +31 -19
  101. package/src/constants.ts +2 -0
  102. package/src/core/DTAction.ts +7 -5
  103. package/src/core/DTBunch.ts +78 -14
  104. package/src/core/DTComponent.ts +48 -15
  105. package/src/core/DTComponentPhysical.ts +45 -11
  106. package/src/core/DTComponentWithMeta.ts +37 -4
  107. package/src/core/DTElement.ts +19 -10
  108. package/src/core/DTError.ts +7 -7
  109. package/src/core/DTManager.ts +120 -30
  110. package/src/core/DTMaster.ts +76 -28
  111. package/src/core/DTModule.ts +12 -6
  112. package/src/index.ts +17 -17
  113. package/src/libs/DYOFinder.ts +175 -175
  114. package/src/libs/dix/DIXModule.module.ts +98 -0
  115. package/src/libs/player/DTPlayer.element.ts +2 -2
  116. package/src/libs/player/DTPlayer.manager.ts +20 -34
  117. package/src/types/core.ts +39 -4
  118. package/src/types/index.ts +2 -2
  119. package/src/types/player.ts +0 -1
  120. package/test/core/DTAction.double.ts +12 -28
  121. package/test/core/DTAction.spec.ts +8 -16
  122. package/test/core/DTBunch.double.ts +49 -135
  123. package/test/core/DTBunch.spec.ts +157 -245
  124. package/test/core/DTComponent.double.ts +17 -2
  125. package/test/core/DTComponent.spec.ts +6 -4
  126. package/test/core/DTComponentPhysical.double.ts +29 -43
  127. package/test/core/DTComponentPhysical.spec.ts +22 -19
  128. package/test/core/DTComponentWithMeta.double.ts +38 -31
  129. package/test/core/DTComponentWithMeta.spec.ts +23 -18
  130. package/test/core/DTElement.double.ts +32 -53
  131. package/test/core/DTElement.spec.ts +15 -38
  132. package/test/core/DTError.double.ts +18 -53
  133. package/test/core/DTError.spec.ts +21 -32
  134. package/test/core/DTManager.double.ts +74 -141
  135. package/test/core/DTManager.spec.ts +289 -380
  136. package/test/core/DTMaster.double.ts +56 -80
  137. package/test/core/DTMaster.spec.ts +185 -232
  138. package/test/core/DTModule.double.ts +12 -25
  139. package/test/core/DTModule.spec.ts +14 -28
  140. package/test/core/copy.spec.ts +9 -30
  141. package/tsconfig.dev.json +5 -8
  142. package/tsconfig.json +5 -8
  143. package/cucumber-report.html +0 -48
  144. package/docs/assets/navigation.js +0 -1
  145. package/docs/classes/core_DTAction.DYOToolsAction.html +0 -89
  146. package/docs/classes/core_DTBunch.DYOToolsBunch.html +0 -254
  147. package/docs/classes/core_DTComponent.DYOToolsComponent.html +0 -76
  148. package/docs/classes/core_DTComponentPhysical.DYOToolsComponentPhysical.html +0 -110
  149. package/docs/classes/core_DTComponentWithMeta.DYOToolsComponentWithMeta.html +0 -96
  150. package/docs/classes/core_DTElement.DYOToolsElement.html +0 -135
  151. package/docs/classes/core_DTError.DYOToolsError.html +0 -37
  152. package/docs/classes/core_DTManager.DYOToolsManager.html +0 -237
  153. package/docs/classes/core_DTMaster.DYOToolsMaster.html +0 -150
  154. package/docs/classes/core_DTModule.DYOToolsModule.html +0 -92
  155. package/docs/classes/libs_DYOFinder.DYOFinder.html +0 -34
  156. package/docs/classes/libs_player_DTPlayer_element.DYOToolsPlayer.html +0 -134
  157. package/docs/classes/libs_player_DTPlayer_manager.DYOToolsPlayerManager.html +0 -243
  158. package/docs/enums/types_core.FilterOperatorType.html +0 -10
  159. package/docs/hierarchy.html +0 -1
  160. package/docs/interfaces/types_core.DTBunchFilters.html +0 -6
  161. package/docs/interfaces/types_core.DTBunchOptions.html +0 -19
  162. package/docs/interfaces/types_core.DTBunchToObject.html +0 -7
  163. package/docs/interfaces/types_core.DTComponentOptions.html +0 -5
  164. package/docs/interfaces/types_core.DTComponentToObject.html +0 -4
  165. package/docs/interfaces/types_core.DTElementToObject.html +0 -7
  166. package/docs/interfaces/types_core.DTManagerFilters.html +0 -6
  167. package/docs/interfaces/types_core.DTManagerOptions.html +0 -8
  168. package/docs/interfaces/types_core.DTManagerToObject.html +0 -5
  169. package/docs/interfaces/types_core.DTMasterToObject.html +0 -8
  170. package/docs/interfaces/types_core.DTModuleToObject.html +0 -6
  171. package/docs/interfaces/types_core.DYOFinderConfigurationPropDefault.html +0 -4
  172. package/docs/interfaces/types_core.DYOFinderConfigurationPropObjectSearch.html +0 -4
  173. package/docs/interfaces/types_core.DYOFinderFilterOperatorAdvanced.html +0 -5
  174. package/docs/interfaces/types_core.DYOFinderFilterOperatorBase.html +0 -5
  175. package/docs/interfaces/types_player.DTPlayerManagerSimpleConfiguration.html +0 -3
  176. package/docs/modules/constants.html +0 -6
  177. package/docs/modules/core_DTAction.html +0 -2
  178. package/docs/modules/core_DTBunch.html +0 -2
  179. package/docs/modules/core_DTComponent.html +0 -2
  180. package/docs/modules/core_DTComponentPhysical.html +0 -2
  181. package/docs/modules/core_DTComponentWithMeta.html +0 -2
  182. package/docs/modules/core_DTElement.html +0 -2
  183. package/docs/modules/core_DTError.html +0 -2
  184. package/docs/modules/core_DTManager.html +0 -2
  185. package/docs/modules/core_DTMaster.html +0 -2
  186. package/docs/modules/core_DTModule.html +0 -2
  187. package/docs/modules/libs_DYOFinder.html +0 -2
  188. package/docs/modules/libs_player_DTPlayer_element.html +0 -2
  189. package/docs/modules/libs_player_DTPlayer_manager.html +0 -2
  190. package/docs/modules/types.html +0 -29
  191. package/docs/modules/types_core.html +0 -28
  192. package/docs/modules/types_player.html +0 -2
  193. package/docs/types/types_core.DTAcceptedMetaData.html +0 -2
  194. package/docs/types/types_core.DTManagerItemType.html +0 -1
  195. package/docs/types/types_core.DTManagerItemsType.html +0 -2
  196. package/docs/types/types_core.DYOFinderComponentType.html +0 -1
  197. package/docs/types/types_core.DYOFinderConfiguration.html +0 -2
  198. package/docs/types/types_core.DYOFinderConfigurationProp.html +0 -1
  199. package/docs/types/types_core.DYOFinderFilterOperator.html +0 -1
  200. package/docs/types/types_core.DYOFinderFilterOperatorArgument.html +0 -1
  201. package/docs/types/types_core.DYOFinderFilters.html +0 -1
  202. package/docs/types/types_core.StandardPrimitiveType.html +0 -2
  203. package/docs/types/types_core.StandardPrimitiveTypeWithArray.html +0 -1
  204. package/docs/variables/constants.bunchDefaultOptions.html +0 -2
  205. package/docs/variables/constants.componentBunchDefaultFinderConfiguration.html +0 -1
  206. package/docs/variables/constants.componentManagerDefaultFinderConfiguration.html +0 -1
  207. package/docs/variables/constants.componentPhysicalDefaultFinderConfiguration.html +0 -1
  208. package/docs/variables/constants.managerDefaultOptions.html +0 -2
  209. package/jest.config.js +0 -6
package/.c8rc.json CHANGED
@@ -1,4 +1,4 @@
1
- {
2
- "src": ["./src"],
3
- "reporter": ["html", "text"]
4
- }
1
+ {
2
+ "src": ["./src"],
3
+ "reporter": ["html", "text"]
4
+ }
package/.eslintignore CHANGED
@@ -1,2 +1,2 @@
1
- node_modules
1
+ node_modules
2
2
  dist
package/.eslintrc.json CHANGED
@@ -1,47 +1,47 @@
1
- {
2
- "root": true,
3
- "parser": "@typescript-eslint/parser",
4
- "parserOptions": {
5
- "project": "./tsconfig.json"
6
- },
7
- "plugins": [
8
- "@typescript-eslint"
9
- ],
10
- "extends": [
11
- "eslint:recommended",
12
- "plugin:@typescript-eslint/eslint-recommended",
13
- "plugin:@typescript-eslint/recommended",
14
- "airbnb-base",
15
- "airbnb-typescript"
16
- ],
17
- "rules": {
18
- // Allow class methods without this
19
- "class-methods-use-this": "off",
20
- // Use of underscored private props
21
- "no-underscore-dangle": "off",
22
- // Disable JSX unexpected error
23
- "react/jsx-filename-extension": "off",
24
- // Max length line : 130
25
- "max-len": ["error", 160],
26
- // TEMPORARY : Authorize Dependency cycle
27
- "import/no-cycle": "off",
28
- // Authorize for-of to return and break
29
- "no-restricted-syntax": [
30
- "error",
31
- {
32
- "selector": "ForInStatement",
33
- "message": "for..in loops iterate over the entire prototype chain, which is virtually never what you want. Use Object.{keys,values,entries}, and iterate over the resulting array."
34
- },
35
- {
36
- "selector": "LabeledStatement",
37
- "message": "Labels are a form of GOTO; using them makes code confusing and hard to maintain and understand."
38
- },
39
- {
40
- "selector": "WithStatement",
41
- "message": "`with` is disallowed in strict mode because it makes code impossible to predict and optimize."
42
- }
43
- ],
44
- // Forbid use of any
45
- "@typescript-eslint/no-explicit-any": "error"
46
- }
47
- }
1
+ {
2
+ "root": true,
3
+ "parser": "@typescript-eslint/parser",
4
+ "parserOptions": {
5
+ "project": "./tsconfig.json"
6
+ },
7
+ "plugins": [
8
+ "@typescript-eslint"
9
+ ],
10
+ "extends": [
11
+ "eslint:recommended",
12
+ "plugin:@typescript-eslint/eslint-recommended",
13
+ "plugin:@typescript-eslint/recommended",
14
+ "airbnb-base",
15
+ "airbnb-typescript"
16
+ ],
17
+ "rules": {
18
+ // Allow class methods without this
19
+ "class-methods-use-this": "off",
20
+ // Use of underscored private props
21
+ "no-underscore-dangle": "off",
22
+ // Disable JSX unexpected error
23
+ "react/jsx-filename-extension": "off",
24
+ // Max length line : 130
25
+ "max-len": ["error", 160],
26
+ // TEMPORARY : Authorize Dependency cycle
27
+ "import/no-cycle": "off",
28
+ // Authorize for-of to return and break
29
+ "no-restricted-syntax": [
30
+ "error",
31
+ {
32
+ "selector": "ForInStatement",
33
+ "message": "for..in loops iterate over the entire prototype chain, which is virtually never what you want. Use Object.{keys,values,entries}, and iterate over the resulting array."
34
+ },
35
+ {
36
+ "selector": "LabeledStatement",
37
+ "message": "Labels are a form of GOTO; using them makes code confusing and hard to maintain and understand."
38
+ },
39
+ {
40
+ "selector": "WithStatement",
41
+ "message": "`with` is disallowed in strict mode because it makes code impossible to predict and optimize."
42
+ }
43
+ ],
44
+ // Forbid use of any
45
+ "@typescript-eslint/no-explicit-any": "error"
46
+ }
47
+ }
package/Makefile CHANGED
@@ -1,34 +1,34 @@
1
- .DEFAULT_GOAL := all
2
-
3
- .PHONY: all
4
- all: dist
5
-
6
- .PHONY: check
7
- check:
8
- npm run-script lint
9
-
10
- .PHONY: checkfix
11
- checkfix:
12
- npm run-script lint:fix
13
-
14
- .PHONY: clean
15
- clean: distclean
16
- rm -Rf node_modules/
17
-
18
- dist: node_modules distclean
19
- npm run-script build:prod
20
-
21
- .PHONY: distclean
22
- distclean:
23
- rm -Rf dist/
24
-
25
- node_modules:
26
- npm install
27
-
28
- .PHONY: test
29
- test:
30
- npm run-script test
31
-
32
- .PHONY: verify
33
- verify: dist check
34
- npm run-script test:coverage:verify
1
+ .DEFAULT_GOAL := all
2
+
3
+ .PHONY: all
4
+ all: dist
5
+
6
+ .PHONY: check
7
+ check:
8
+ npm run-script lint
9
+
10
+ .PHONY: checkfix
11
+ checkfix:
12
+ npm run-script lint:fix
13
+
14
+ .PHONY: clean
15
+ clean: distclean
16
+ rm -Rf node_modules/
17
+
18
+ dist: node_modules distclean
19
+ npm run-script build:prod
20
+
21
+ .PHONY: distclean
22
+ distclean:
23
+ rm -Rf dist/
24
+
25
+ node_modules:
26
+ npm install
27
+
28
+ .PHONY: test
29
+ test:
30
+ npm run-script test
31
+
32
+ .PHONY: verify
33
+ verify: dist check
34
+ npm run-script test:coverage:verify
@@ -4,3 +4,4 @@ export declare const managerDefaultOptions: DTManagerOptions;
4
4
  export declare const componentPhysicalDefaultFinderConfiguration: DYOFinderConfiguration;
5
5
  export declare const componentManagerDefaultFinderConfiguration: DYOFinderConfiguration;
6
6
  export declare const componentBunchDefaultFinderConfiguration: DYOFinderConfiguration;
7
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EAGvB,MAAM,SAAS,CAAC;AAOjB,eAAO,MAAM,mBAAmB,EAAE,cAOjC,CAAC;AAGF,eAAO,MAAM,qBAAqB,EAAE,gBAInC,CAAC;AAiBF,eAAO,MAAM,2CAA2C,EAAE,sBAqBzD,CAAC;AAEF,eAAO,MAAM,0CAA0C,EAAE,sBASxD,CAAC;AAEF,eAAO,MAAM,wCAAwC,EAAE,sBAOtD,CAAC"}
package/dist/constants.js CHANGED
@@ -1,32 +1,31 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.componentBunchDefaultFinderConfiguration = exports.componentManagerDefaultFinderConfiguration = exports.componentPhysicalDefaultFinderConfiguration = exports.managerDefaultOptions = exports.bunchDefaultOptions = void 0;
4
- const types_1 = require("./types");
5
- exports.bunchDefaultOptions = {
1
+ import { FilterOperatorType, } from './types';
2
+ export const bunchDefaultOptions = {
6
3
  errors: false,
4
+ syncId: undefined,
7
5
  uniqueKey: false,
8
6
  inheritOwner: false,
9
7
  replaceIndex: false,
10
8
  virtualContainer: false,
11
9
  };
12
- exports.managerDefaultOptions = {
10
+ export const managerDefaultOptions = {
13
11
  errors: false,
12
+ syncId: undefined,
14
13
  libraryDeletion: false,
15
14
  };
16
15
  const baseOperators = [
17
- types_1.FilterOperatorType.EQ,
18
- types_1.FilterOperatorType.IN,
19
- types_1.FilterOperatorType.NIN,
20
- types_1.FilterOperatorType.NE,
16
+ FilterOperatorType.EQ,
17
+ FilterOperatorType.IN,
18
+ FilterOperatorType.NIN,
19
+ FilterOperatorType.NE,
21
20
  ];
22
21
  const advancedOperators = [
23
22
  ...baseOperators,
24
- types_1.FilterOperatorType.GTE,
25
- types_1.FilterOperatorType.LTE,
26
- types_1.FilterOperatorType.CONTAINS,
27
- types_1.FilterOperatorType.NCONTAINS,
23
+ FilterOperatorType.GTE,
24
+ FilterOperatorType.LTE,
25
+ FilterOperatorType.CONTAINS,
26
+ FilterOperatorType.NCONTAINS,
28
27
  ];
29
- exports.componentPhysicalDefaultFinderConfiguration = {
28
+ export const componentPhysicalDefaultFinderConfiguration = {
30
29
  id: {
31
30
  operators: baseOperators,
32
31
  getValue: (item) => item.getId(),
@@ -48,16 +47,21 @@ exports.componentPhysicalDefaultFinderConfiguration = {
48
47
  objectSearch: true,
49
48
  },
50
49
  };
51
- exports.componentManagerDefaultFinderConfiguration = Object.assign(Object.assign({}, exports.componentPhysicalDefaultFinderConfiguration), { scope: {
50
+ export const componentManagerDefaultFinderConfiguration = {
51
+ ...componentPhysicalDefaultFinderConfiguration,
52
+ scope: {
52
53
  operators: baseOperators,
53
54
  getValue(item, ctx) {
54
55
  return ctx.getScope(item.getId());
55
56
  },
56
57
  objectSearch: false,
57
- } });
58
- exports.componentBunchDefaultFinderConfiguration = Object.assign(Object.assign({}, exports.componentPhysicalDefaultFinderConfiguration), { container: {
58
+ },
59
+ };
60
+ export const componentBunchDefaultFinderConfiguration = {
61
+ ...componentPhysicalDefaultFinderConfiguration,
62
+ container: {
59
63
  operators: baseOperators,
60
64
  getValue: (item) => (item.getContainer() ? item.getContainer().getId() : null),
61
65
  objectSearch: false,
62
- } });
63
- //# sourceMappingURL=constants.js.map
66
+ },
67
+ };
@@ -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,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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,kBAAkB,GAEnB,MAAM,SAAS,CAAC;AAOjB,MAAM,CAAC,MAAM,mBAAmB,GAAmB;IACjD,MAAM,EAAE,KAAK;IACb,SAAS,EAAE,KAAK;IAChB,YAAY,EAAE,KAAK;IACnB,YAAY,EAAE,KAAK;IACnB,gBAAgB,EAAE,KAAK;CACxB,CAAC;AAGF,MAAM,CAAC,MAAM,qBAAqB,GAAqB;IACrD,MAAM,EAAE,KAAK;IACb,eAAe,EAAE,KAAK;CACvB,CAAC;AAGF,MAAM,aAAa,GAAG;IACpB,kBAAkB,CAAC,EAAE;IACrB,kBAAkB,CAAC,EAAE;IACrB,kBAAkB,CAAC,GAAG;IACtB,kBAAkB,CAAC,EAAE;CACtB,CAAC;AACF,MAAM,iBAAiB,GAAG;IACxB,GAAG,aAAa;IAChB,kBAAkB,CAAC,GAAG;IACtB,kBAAkB,CAAC,GAAG;IACtB,kBAAkB,CAAC,QAAQ;IAC3B,kBAAkB,CAAC,SAAS;CAC7B,CAAC;AAEF,MAAM,CAAC,MAAM,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;AAEF,MAAM,CAAC,MAAM,0CAA0C,mCAClD,2CAA2C,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,GACF,CAAC;AAEF,MAAM,CAAC,MAAM,wCAAwC,mCAChD,2CAA2C,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,GACF,CAAC"}
@@ -1,10 +1,12 @@
1
- import DYOToolsComponent from './DTComponent';
1
+ import DTComponent from './DTComponent';
2
2
  import { DTComponentToObject } from '../types';
3
- import DYOToolsMaster from './DTMaster';
4
- export default abstract class DYOToolsAction<Payload = unknown> extends DYOToolsComponent {
3
+ import DTMaster from './DTMaster';
4
+ export default abstract class DTAction<Payload = unknown> extends DTComponent {
5
5
  protected _componentType: string;
6
- getMaster(): DYOToolsMaster | undefined;
6
+ getMaster(): DTMaster | undefined;
7
7
  abstract execute(payload: Payload): Promise<void>;
8
8
  toString(): string;
9
9
  toObject(): DTComponentToObject;
10
+ updateFromDix(): void;
10
11
  }
12
+ //# sourceMappingURL=DTAction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DTAction.d.ts","sourceRoot":"","sources":["../../src/core/DTAction.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,QAAQ,MAAM,YAAY,CAAC;AAElC,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,QAAQ,CAAC,OAAO,GAAG,OAAO,CAAE,SAAQ,WAAW;IAI3E,SAAS,CAAC,cAAc,EAAE,MAAM,CAAY;IAK5C,SAAS,IAAI,QAAQ,GAAG,SAAS;IAUjC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAOjD,QAAQ,IAAI,MAAM;IAclB,QAAQ,IAAI,mBAAmB;IAQ/B,aAAa;CACd"}
@@ -1,7 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const DTComponent_1 = require("./DTComponent");
4
- class DYOToolsAction extends DTComponent_1.default {
1
+ import DTComponent from './DTComponent';
2
+ export default class DTAction extends DTComponent {
5
3
  constructor() {
6
4
  super(...arguments);
7
5
  this._componentType = 'action';
@@ -19,6 +17,5 @@ class DYOToolsAction extends DTComponent_1.default {
19
17
  type: this._componentType,
20
18
  };
21
19
  }
20
+ updateFromDix() { }
22
21
  }
23
- exports.default = DYOToolsAction;
24
- //# sourceMappingURL=DTAction.js.map
@@ -1 +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"}
1
+ {"version":3,"file":"DTAction.js","sourceRoot":"","sources":["../../src/core/DTAction.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,MAAM,eAAe,CAAC;AAI9C,MAAM,CAAC,OAAO,OAAgB,cAAkC,SAAQ,iBAAiB;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"}
@@ -1,8 +1,8 @@
1
- import DYOToolsElement from './DTElement';
2
- import { DTAcceptedMetaData, DTBunchFilters, DTBunchOptions, DTBunchToObject, DYOFinderConfiguration } from '../types';
3
- import DYOToolsComponentPhysical from './DTComponentPhysical';
1
+ import DTElement from './DTElement';
2
+ import { DIXObject, DTAcceptedMetaData, DTBunchFilters, DTBunchOptions, DTBunchToObject, DYOFinderConfiguration } from '../types';
3
+ import DTComponentPhysical from './DTComponentPhysical';
4
4
  import DYOFinder from '../libs/DYOFinder';
5
- export default class DYOToolsBunch<IBunchItem extends DYOToolsElement<DTAcceptedMetaData> = DYOToolsElement<DTAcceptedMetaData>, IComponentMeta extends DTAcceptedMetaData = DTAcceptedMetaData> extends DYOToolsComponentPhysical<IComponentMeta, DTBunchOptions> {
5
+ export default class DTBunch<IBunchItem extends DTElement<DTAcceptedMetaData> = DTElement<DTAcceptedMetaData>, IComponentMeta extends DTAcceptedMetaData = DTAcceptedMetaData> extends DTComponentPhysical<IComponentMeta, DTBunchOptions> {
6
6
  protected _componentType: string;
7
7
  protected _items: IBunchItem[];
8
8
  protected _finder: DYOFinder;
@@ -21,7 +21,10 @@ export default class DYOToolsBunch<IBunchItem extends DYOToolsElement<DTAccepted
21
21
  removeMany(indexes: string[] | number[]): void;
22
22
  removeAll(): void;
23
23
  find(filters: Partial<DTBunchFilters>): IBunchItem[];
24
- copy(): DYOToolsBunch<IBunchItem, IComponentMeta>;
24
+ copy(): DTBunch<IBunchItem, IComponentMeta>;
25
25
  toObject(): DTBunchToObject<IComponentMeta>;
26
26
  toString(): string;
27
+ toDIXObject(): Record<string, DIXObject>;
28
+ updateFromDix(dix: Record<string, DIXObject>): void;
27
29
  }
30
+ //# sourceMappingURL=DTBunch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DTBunch.d.ts","sourceRoot":"","sources":["../../src/core/DTBunch.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,aAAa,CAAC;AAEpC,OAAO,EACL,SAAS,EACT,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,eAAe,EACf,sBAAsB,EACvB,MAAM,UAAU,CAAC;AAElB,OAAO,mBAAmB,MAAM,uBAAuB,CAAC;AAExD,OAAO,SAAS,MAAM,mBAAmB,CAAC;AAG1C,MAAM,CAAC,OAAO,OAAO,OAAO,CACxB,UAAU,SAAS,SAAS,CAAC,kBAAkB,CAAC,GAAG,SAAS,CAAC,kBAAkB,CAAC,EAChF,cAAc,SAAS,kBAAkB,GAAG,kBAAkB,CAC9D,SAAQ,mBAAmB,CAAC,cAAc,EAAE,cAAc,CAAC;IAI7D,SAAS,CAAC,cAAc,SAAW;IAKnC,SAAS,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC;IAO/B,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC;gBAajB,GAAG,CAAC,EAAE,MAAM,EAAE,KAAK,GAAE,UAAU,EAAO,EAAE,OAAO,GAAE,OAAO,CAAC,cAAc,CAAM;IAkBzF,sBAAsB,IAAI,sBAAsB;IAShD,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAe7B,WAAW,IAAI,IAAI;IAmBnB,GAAG,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,GAAE,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAM,GAAG,IAAI;IA2B5F,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC,CAAM,GAAG,IAAI;IAyFlG,OAAO,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,OAAO,GAAE,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAM,GAAG,IAAI;IAiBnG,cAAc,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAM,GAAG,IAAI;IA+BzH,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS;IAanD,MAAM,IAAI,UAAU,EAAE;IAUtB,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM;IAsB3B,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAoBpC,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,GAAG,IAAI;IA0B9C,SAAS,IAAI,IAAI;IAgCjB,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,UAAU,EAAE;IAapD,IAAI,IAAI,OAAO,CAAC,UAAU,EAAE,cAAc,CAAC;IA2B3C,QAAQ,IAAI,eAAe,CAAC,cAAc,CAAC;IA4B3C,QAAQ,IAAI,MAAM;IAclB,WAAW,IAAI,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC;IAsBxC,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAI;CA8BpD"}
@@ -1,21 +1,19 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const DTError_1 = require("./DTError");
4
- const DTComponentPhysical_1 = require("./DTComponentPhysical");
5
- const constants_1 = require("../constants");
6
- const DYOFinder_1 = require("../libs/DYOFinder");
7
- class DYOToolsBunch extends DTComponentPhysical_1.default {
1
+ import DTError from './DTError';
2
+ import DTComponentPhysical from './DTComponentPhysical';
3
+ import { bunchDefaultOptions as defaultOptions, componentBunchDefaultFinderConfiguration } from '../constants';
4
+ import DYOFinder from '../libs/DYOFinder';
5
+ export default class DTBunch extends DTComponentPhysical {
8
6
  constructor(key, items = [], options = {}) {
9
- super(key, Object.assign(Object.assign({}, constants_1.bunchDefaultOptions), options));
7
+ super(key, { ...defaultOptions, ...options });
10
8
  this._componentType = 'bunch';
11
9
  this._items = [];
12
10
  if (items && items.length > 0) {
13
11
  this.addMany(items);
14
12
  }
15
- this._finder = new DYOFinder_1.default(this, this.getFinderConfiguration());
13
+ this._finder = new DYOFinder(this, this.getFinderConfiguration());
16
14
  }
17
15
  getFinderConfiguration() {
18
- return constants_1.componentBunchDefaultFinderConfiguration;
16
+ return componentBunchDefaultFinderConfiguration;
19
17
  }
20
18
  setOwner(value) {
21
19
  super.setOwner(value);
@@ -35,19 +33,19 @@ class DYOToolsBunch extends DTComponentPhysical_1.default {
35
33
  this.addAtIndex(item, this._items.length, options);
36
34
  }
37
35
  addAtIndex(item, index, options = {}) {
38
- const { uniqueKey, replaceIndex, inheritOwner, virtualContainer, } = Object.assign(Object.assign({}, this._options), options);
36
+ const { uniqueKey, replaceIndex, inheritOwner, virtualContainer, } = { ...this._options, ...options };
39
37
  let hasError = false;
40
38
  let finalIndex = index;
41
39
  const existingItem = this.get(item.getId());
42
40
  if (existingItem) {
43
41
  hasError = true;
44
- this.triggerError(new DTError_1.default('id_conflict', 'Element with same id already exists in the bunch', this, item));
42
+ this.triggerError(new DTError('id_conflict', 'Element with same id already exists in the bunch', this, item));
45
43
  }
46
44
  if (uniqueKey && !hasError) {
47
45
  const existingItemByKey = this.find({ key: { $eq: item.getKey() } });
48
46
  if (existingItemByKey) {
49
47
  hasError = true;
50
- this.triggerError(new DTError_1.default('key_conflict', 'Element with same key already exists in the bunch', this, item));
48
+ this.triggerError(new DTError('key_conflict', 'Element with same key already exists in the bunch', this, item));
51
49
  }
52
50
  }
53
51
  if (!hasError) {
@@ -91,7 +89,7 @@ class DYOToolsBunch extends DTComponentPhysical_1.default {
91
89
  }
92
90
  addManyAtIndex(items, index, options = {}) {
93
91
  const previousItems = this._items;
94
- const { errors } = Object.assign(Object.assign({}, this._options), options);
92
+ const { errors } = { ...this._options, ...options };
95
93
  let currentIndex = index;
96
94
  if (index < 0) {
97
95
  currentIndex = 0;
@@ -173,8 +171,8 @@ class DYOToolsBunch extends DTComponentPhysical_1.default {
173
171
  else {
174
172
  copyItems = this._items.length === 0 ? [] : this._items.map((item) => item.copy());
175
173
  }
176
- const copyBunch = new DYOToolsBunch(this._key, copyItems, this._options);
177
- copyBunch.setManyMeta(Object.assign({}, this.getManyMeta()));
174
+ const copyBunch = new DTBunch(this._key, copyItems, this._options);
175
+ copyBunch.setManyMeta({ ...this.getManyMeta() });
178
176
  return copyBunch;
179
177
  }
180
178
  toObject() {
@@ -191,7 +189,7 @@ class DYOToolsBunch extends DTComponentPhysical_1.default {
191
189
  objectBunch.owner = this._owner.toString();
192
190
  }
193
191
  if (this._meta && Object.keys(this._meta).length > 0) {
194
- objectBunch.meta = Object.assign({}, this.getManyMeta());
192
+ objectBunch.meta = { ...this.getManyMeta() };
195
193
  }
196
194
  return objectBunch;
197
195
  }
@@ -202,6 +200,42 @@ class DYOToolsBunch extends DTComponentPhysical_1.default {
202
200
  }
203
201
  return `Component ${this._key} - Type: Bunch${ownerKey} - Items: ${this._items.length}`;
204
202
  }
203
+ toDIXObject() {
204
+ const parentDixObject = super.toDIXObject();
205
+ const dixObject = {
206
+ ...parentDixObject[this._id],
207
+ items: this._items.map((item) => item.getId()),
208
+ };
209
+ const finalDix = {
210
+ [this._id]: dixObject,
211
+ };
212
+ this._items.forEach((item) => {
213
+ Object.assign(finalDix, item.toDIXObject());
214
+ });
215
+ return finalDix;
216
+ }
217
+ updateFromDix(dix) {
218
+ const dixObject = dix[this._id];
219
+ const dixModule = this.getMaster()?.getModule('dix');
220
+ if (dixObject) {
221
+ super.updateFromDix(dix);
222
+ if (dixObject.items && dixModule?.isEnabled()) {
223
+ this.getAll().forEach((it) => {
224
+ if (!dixObject.items.includes(it.getId())) {
225
+ this.remove(it.getId());
226
+ }
227
+ });
228
+ dixObject.items.forEach((itemId) => {
229
+ if (this.get(itemId)) {
230
+ this.get(itemId).updateFromDix(dix);
231
+ }
232
+ else {
233
+ const newElement = dixModule.syncNewItem(itemId, dix);
234
+ this.add(newElement);
235
+ newElement.updateFromDix(dix);
236
+ }
237
+ });
238
+ }
239
+ }
240
+ }
205
241
  }
206
- exports.default = DYOToolsBunch;
207
- //# sourceMappingURL=DTBunch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DTBunch.js","sourceRoot":"","sources":["../../src/core/DTBunch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DTBunch.js","sourceRoot":"","sources":["../../src/core/DTBunch.ts"],"names":[],"mappings":"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"}
@@ -1,28 +1,31 @@
1
- import DYOToolsError from './DTError';
2
- import { DTComponentOptions } from '../types';
3
- export default abstract class DYOToolsComponent<IComponentOptions extends DTComponentOptions = DTComponentOptions> {
1
+ import DTError from './DTError';
2
+ import { DIXObject, DTComponentOptions } from '../types';
3
+ export default abstract class DTComponent<IComponentOptions extends DTComponentOptions = DTComponentOptions> {
4
4
  protected _id: string;
5
5
  protected _key: string;
6
- protected _context?: DYOToolsComponent;
6
+ protected _context?: DTComponent;
7
7
  protected abstract _componentType: string;
8
8
  protected _domain?: string;
9
9
  protected _subKind?: string;
10
- protected _errors: DYOToolsError[];
10
+ protected _errors: DTError[];
11
11
  protected _options: IComponentOptions;
12
12
  constructor(key?: string, options?: Partial<IComponentOptions>);
13
13
  getId(): string;
14
14
  getKey(): string;
15
- getContext<IContext extends DYOToolsComponent = DYOToolsComponent>(contextType?: string): IContext | undefined;
16
- setContext<IContext extends DYOToolsComponent = DYOToolsComponent>(value: IContext): void;
15
+ getContext<IContext extends DTComponent = DTComponent>(contextType?: string): IContext | undefined;
16
+ setContext<IContext extends DTComponent = DTComponent>(value: IContext): void;
17
17
  removeContext(): void;
18
18
  getComponentType(): string;
19
19
  getDomain(): string;
20
20
  getSubKind(): string;
21
- getErrors(): DYOToolsError[];
22
- getLastError(): DYOToolsError | undefined;
23
- triggerError(error: DYOToolsError): void;
21
+ getErrors(): DTError[];
22
+ getLastError(): DTError | undefined;
23
+ triggerError(error: DTError): void;
24
24
  clearErrors(): void;
25
25
  getOptions(): IComponentOptions;
26
+ toDIXObject(): Record<string, DIXObject>;
27
+ abstract updateFromDix(dix: Record<string, DIXObject>): void;
26
28
  abstract toObject(): unknown;
27
29
  abstract toString(): string;
28
30
  }
31
+ //# sourceMappingURL=DTComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DTComponent.d.ts","sourceRoot":"","sources":["../../src/core/DTComponent.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAKzD,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,WAAW,CACvC,iBAAiB,SAAS,kBAAkB,GAAG,kBAAkB;IAKjE,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC;IAMtB,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC;IAOvB,SAAS,CAAC,QAAQ,CAAC,EAAE,WAAW,CAAC;IAOjC,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAO1C,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAO3B,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAO5B,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;IAY7B,SAAS,CAAC,QAAQ,EAAE,iBAAiB,CAAC;gBAQ1B,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,GAAE,OAAO,CAAC,iBAAiB,CAAM;IAmBlE,KAAK,IAAI,MAAM;IAOf,MAAM,IAAI,MAAM;IAahB,UAAU,CAAC,QAAQ,SAAS,WAAW,GAAG,WAAW,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS;IAalG,UAAU,CAAC,QAAQ,SAAS,WAAW,GAAG,WAAW,EAAE,KAAK,EAAE,QAAQ,GAAG,IAAI;IAO7E,aAAa,IAAI,IAAI;IAOrB,gBAAgB,IAAI,MAAM;IAO1B,SAAS,IAAI,MAAM;IAOnB,UAAU,IAAI,MAAM;IASpB,SAAS,IAAI,OAAO,EAAE;IAYtB,YAAY,IAAI,OAAO,GAAG,SAAS;IAgBnC,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAgBlC,WAAW,IAAI,IAAI;IAUnB,UAAU,IAAI,iBAAiB;IAS/B,WAAW,IAAI,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC;IAoBxC,QAAQ,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAI;IAK5D,QAAQ,CAAC,QAAQ,IAAI,OAAO;IAK5B,QAAQ,CAAC,QAAQ,IAAI,MAAM;CAC5B"}
@@ -1,15 +1,17 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const uuid = require("uuid");
4
- class DYOToolsComponent {
1
+ import { v6 as uuidV6 } from 'uuid';
2
+ export default class DTComponent {
5
3
  constructor(key, options = {}) {
6
- this._id = uuid.v4();
7
- this._key = key || this._id;
8
- this._errors = [];
9
4
  const defaultOptions = {
10
5
  errors: false,
6
+ syncId: undefined,
11
7
  };
12
- this._options = Object.assign(Object.assign({}, defaultOptions), options);
8
+ this._options = {
9
+ ...defaultOptions,
10
+ ...options,
11
+ };
12
+ this._id = this._options.syncId ?? uuidV6();
13
+ this._key = key || this._id;
14
+ this._errors = [];
13
15
  }
14
16
  getId() {
15
17
  return this._id;
@@ -74,6 +76,17 @@ class DYOToolsComponent {
74
76
  getOptions() {
75
77
  return this._options;
76
78
  }
79
+ toDIXObject() {
80
+ const dixOptions = this._options;
81
+ delete dixOptions.syncId;
82
+ const dixObject = {
83
+ useClass: this.constructor.name,
84
+ key: this._key,
85
+ componentType: this._componentType,
86
+ options: JSON.stringify(this._options),
87
+ };
88
+ return {
89
+ [this._id]: dixObject,
90
+ };
91
+ }
77
92
  }
78
- exports.default = DYOToolsComponent;
79
- //# sourceMappingURL=DTComponent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DTComponent.js","sourceRoot":"","sources":["../../src/core/DTComponent.ts"],"names":[],"mappings":";;AAAA,6BAA6B;AAO7B,MAA8B,iBAAiB;IA+D7C,YAAY,GAAY,EAAE,UAAsC,EAAE;QAChE,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAElB,MAAM,cAAc,GAAuB;YACzC,MAAM,EAAE,KAAK;SACd,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,gCACX,cAAc,GACd,OAAO,CACU,CAAC;IACzB,CAAC;IAKD,KAAK;QACH,OAAO,IAAI,CAAC,GAAG,CAAC;IAClB,CAAC;IAKD,MAAM;QACJ,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAWD,UAAU,CAAyD,WAAoB;QACrF,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,KAAK,WAAW,EAAE;gBACpE,OAAO,IAAI,CAAC,QAAoB,CAAC;aAClC;YACD,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;SAC9C;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAKD,UAAU,CAAyD,KAAe;QAChF,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;IACxB,CAAC;IAKD,aAAa;QACX,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;IAC5B,CAAC;IAKD,gBAAgB;QACd,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAKD,SAAS;QACP,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAKD,UAAU;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAOD,SAAS;QACP,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC,SAAS,EAAE,CAAC;SACtC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAOD,YAAY;QACV,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC,YAAY,EAAE,CAAC;SACzC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACrF,CAAC;IAWD,YAAY,CAAC,KAAoB;QAC/B,MAAM,EAAE,MAAM,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;QACzC,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,IAAI,CAAC,UAAU,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;SACvC;aAAM,IAAI,CAAC,MAAM,EAAE;YAClB,MAAM,KAAK,CAAC;SACb;aAAM;YACL,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC1B;IACH,CAAC;IAOD,WAAW;QACT,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,IAAI,CAAC,UAAU,EAAE,CAAC,WAAW,EAAE,CAAC;SACjC;QACD,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;IACpB,CAAC;IAKD,UAAU;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;CAWF;AAzND,oCAyNC"}
1
+ {"version":3,"file":"DTComponent.js","sourceRoot":"","sources":["../../src/core/DTComponent.ts"],"names":[],"mappings":"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"}