@quadnix/octo 0.0.17 → 0.0.19

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 (187) hide show
  1. package/README.md +4 -2
  2. package/dist/app.type.d.ts +14 -16
  3. package/dist/app.type.js.map +1 -1
  4. package/dist/decorators/action.decorator.js +29 -15
  5. package/dist/decorators/action.decorator.js.map +1 -1
  6. package/dist/decorators/anchor.decorator.js +5 -1
  7. package/dist/decorators/anchor.decorator.js.map +1 -1
  8. package/dist/decorators/container.d.ts +1 -1
  9. package/dist/decorators/enable-hook.decorator.d.ts +3 -0
  10. package/dist/decorators/enable-hook.decorator.js +13 -0
  11. package/dist/decorators/enable-hook.decorator.js.map +1 -0
  12. package/dist/decorators/factory.decorator.d.ts +1 -1
  13. package/dist/decorators/model.decorator.js +5 -1
  14. package/dist/decorators/model.decorator.js.map +1 -1
  15. package/dist/decorators/module.decorator.d.ts +36 -1
  16. package/dist/decorators/module.decorator.js +15 -5
  17. package/dist/decorators/module.decorator.js.map +1 -1
  18. package/dist/decorators/overlay.decorator.js +5 -1
  19. package/dist/decorators/overlay.decorator.js.map +1 -1
  20. package/dist/decorators/resource.decorator.js +5 -1
  21. package/dist/decorators/resource.decorator.js.map +1 -1
  22. package/dist/decorators/test-container.d.ts +13 -2
  23. package/dist/decorators/test-container.js +18 -3
  24. package/dist/decorators/test-container.js.map +1 -1
  25. package/dist/functions/dependency/{dependency.model.d.ts → dependency.d.ts} +2 -3
  26. package/dist/functions/dependency/{dependency.model.js → dependency.js} +1 -17
  27. package/dist/functions/dependency/dependency.js.map +1 -0
  28. package/dist/functions/diff/diff-metadata.d.ts +20 -0
  29. package/dist/functions/diff/{diff-metadata.model.js → diff-metadata.js} +2 -6
  30. package/dist/functions/diff/diff-metadata.js.map +1 -0
  31. package/dist/functions/diff/{diff.model.d.ts → diff.d.ts} +2 -2
  32. package/dist/functions/diff/{diff.model.js → diff.js} +16 -2
  33. package/dist/functions/diff/diff.js.map +1 -0
  34. package/dist/functions/diff/diff.utility.d.ts +3 -2
  35. package/dist/functions/diff/diff.utility.js +30 -5
  36. package/dist/functions/diff/diff.utility.js.map +1 -1
  37. package/dist/functions/hook/commit.hook.d.ts +11 -0
  38. package/dist/functions/hook/commit.hook.js +39 -0
  39. package/dist/functions/hook/commit.hook.js.map +1 -0
  40. package/dist/functions/hook/hook.interface.d.ts +8 -0
  41. package/dist/functions/hook/hook.interface.js +2 -0
  42. package/dist/functions/hook/hook.interface.js.map +1 -0
  43. package/dist/functions/hook/model-action.hook.d.ts +12 -0
  44. package/dist/functions/hook/model-action.hook.js +70 -0
  45. package/dist/functions/hook/model-action.hook.js.map +1 -0
  46. package/dist/functions/hook/resource-action.hook.d.ts +12 -0
  47. package/dist/functions/hook/resource-action.hook.js +49 -0
  48. package/dist/functions/hook/resource-action.hook.js.map +1 -0
  49. package/dist/index.d.ts +29 -28
  50. package/dist/index.js +9 -8
  51. package/dist/index.js.map +1 -1
  52. package/dist/main.d.ts +31 -0
  53. package/dist/main.js +111 -0
  54. package/dist/main.js.map +1 -0
  55. package/dist/models/app/app.interface.d.ts +1 -1
  56. package/dist/models/app/app.model.d.ts +5 -5
  57. package/dist/models/app/app.model.js +4 -11
  58. package/dist/models/app/app.model.js.map +1 -1
  59. package/dist/models/deployment/deployment.interface.d.ts +1 -1
  60. package/dist/models/deployment/deployment.model.d.ts +5 -3
  61. package/dist/models/deployment/deployment.model.js +5 -2
  62. package/dist/models/deployment/deployment.model.js.map +1 -1
  63. package/dist/models/environment/environment.interface.d.ts +1 -1
  64. package/dist/models/environment/environment.model.d.ts +5 -5
  65. package/dist/models/environment/environment.model.js +3 -3
  66. package/dist/models/environment/environment.model.js.map +1 -1
  67. package/dist/models/execution/execution.interface.d.ts +2 -2
  68. package/dist/models/execution/execution.model.d.ts +8 -9
  69. package/dist/models/execution/execution.model.js +53 -21
  70. package/dist/models/execution/execution.model.js.map +1 -1
  71. package/dist/models/image/image.interface.d.ts +1 -1
  72. package/dist/models/image/image.model.d.ts +5 -3
  73. package/dist/models/image/image.model.js +5 -6
  74. package/dist/models/image/image.model.js.map +1 -1
  75. package/dist/models/model-action.interface.d.ts +9 -0
  76. package/dist/models/model-action.interface.js +2 -0
  77. package/dist/models/model-action.interface.js.map +1 -0
  78. package/dist/models/model.abstract.d.ts +40 -14
  79. package/dist/models/model.abstract.js +167 -57
  80. package/dist/models/model.abstract.js.map +1 -1
  81. package/dist/models/model.interface.d.ts +4 -3
  82. package/dist/models/pipeline/pipeline.interface.d.ts +1 -1
  83. package/dist/models/pipeline/pipeline.model.d.ts +5 -5
  84. package/dist/models/pipeline/pipeline.model.js +4 -4
  85. package/dist/models/pipeline/pipeline.model.js.map +1 -1
  86. package/dist/models/region/region.interface.d.ts +1 -1
  87. package/dist/models/region/region.model.d.ts +7 -3
  88. package/dist/models/region/region.model.js +14 -1
  89. package/dist/models/region/region.model.js.map +1 -1
  90. package/dist/models/server/server.interface.d.ts +1 -3
  91. package/dist/models/server/server.model.d.ts +6 -6
  92. package/dist/models/server/server.model.js +7 -10
  93. package/dist/models/server/server.model.js.map +1 -1
  94. package/dist/models/service/service.interface.d.ts +1 -1
  95. package/dist/models/service/service.model.d.ts +4 -2
  96. package/dist/models/service/service.model.js +4 -1
  97. package/dist/models/service/service.model.js.map +1 -1
  98. package/dist/models/subnet/subnet.interface.d.ts +8 -0
  99. package/dist/models/subnet/subnet.interface.js +2 -0
  100. package/dist/models/subnet/subnet.interface.js.map +1 -0
  101. package/dist/models/subnet/subnet.model.d.ts +25 -0
  102. package/dist/models/subnet/subnet.model.js +98 -0
  103. package/dist/models/subnet/subnet.model.js.map +1 -0
  104. package/dist/modules/module.container.d.ts +25 -0
  105. package/dist/modules/module.container.js +122 -0
  106. package/dist/modules/module.container.js.map +1 -0
  107. package/dist/modules/module.interface.d.ts +3 -0
  108. package/dist/modules/module.interface.js.map +1 -0
  109. package/dist/modules/test-module.container.d.ts +28 -0
  110. package/dist/modules/test-module.container.js +67 -0
  111. package/dist/modules/test-module.container.js.map +1 -0
  112. package/dist/overlays/anchor.abstract.d.ts +4 -4
  113. package/dist/overlays/anchor.abstract.js +8 -11
  114. package/dist/overlays/anchor.abstract.js.map +1 -1
  115. package/dist/overlays/anchor.interface.d.ts +5 -2
  116. package/dist/overlays/overlay-data.repository.d.ts +7 -7
  117. package/dist/overlays/overlay-data.repository.js +19 -7
  118. package/dist/overlays/overlay-data.repository.js.map +1 -1
  119. package/dist/overlays/overlay.abstract.d.ts +15 -8
  120. package/dist/overlays/overlay.abstract.js +78 -12
  121. package/dist/overlays/overlay.abstract.js.map +1 -1
  122. package/dist/overlays/overlay.interface.d.ts +1 -1
  123. package/dist/overlays/overlay.service.d.ts +10 -6
  124. package/dist/overlays/overlay.service.js +19 -13
  125. package/dist/overlays/overlay.service.js.map +1 -1
  126. package/dist/resources/resource-action.interface.d.ts +2 -1
  127. package/dist/resources/resource-data.repository.d.ts +8 -8
  128. package/dist/resources/resource-data.repository.js +52 -34
  129. package/dist/resources/resource-data.repository.js.map +1 -1
  130. package/dist/resources/resource.abstract.d.ts +15 -12
  131. package/dist/resources/resource.abstract.js +34 -34
  132. package/dist/resources/resource.abstract.js.map +1 -1
  133. package/dist/resources/shared-resource.abstract.d.ts +1 -1
  134. package/dist/resources/shared-resource.abstract.js.map +1 -1
  135. package/dist/services/capture/capture.service.d.ts +13 -0
  136. package/dist/services/capture/capture.service.js +30 -0
  137. package/dist/services/capture/capture.service.js.map +1 -0
  138. package/dist/services/input/input.service.d.ts +13 -0
  139. package/dist/services/input/input.service.js +45 -0
  140. package/dist/services/input/input.service.js.map +1 -0
  141. package/dist/services/serialization/model/model-serialization.service.d.ts +9 -5
  142. package/dist/services/serialization/model/model-serialization.service.js +65 -44
  143. package/dist/services/serialization/model/model-serialization.service.js.map +1 -1
  144. package/dist/services/serialization/resource/resource-serialization.service.d.ts +8 -3
  145. package/dist/services/serialization/resource/resource-serialization.service.js +29 -11
  146. package/dist/services/serialization/resource/resource-serialization.service.js.map +1 -1
  147. package/dist/services/state-management/local.state-provider.d.ts +1 -1
  148. package/dist/services/state-management/local.state-provider.js +9 -1
  149. package/dist/services/state-management/local.state-provider.js.map +1 -1
  150. package/dist/services/state-management/state-management.service.d.ts +16 -1
  151. package/dist/services/state-management/state-management.service.js +52 -1
  152. package/dist/services/state-management/state-management.service.js.map +1 -1
  153. package/dist/services/state-management/test.state-provider.d.ts +7 -0
  154. package/dist/services/state-management/test.state-provider.js +13 -0
  155. package/dist/services/state-management/test.state-provider.js.map +1 -0
  156. package/dist/services/transaction/transaction.service.d.ts +18 -11
  157. package/dist/services/transaction/transaction.service.js +57 -40
  158. package/dist/services/transaction/transaction.service.js.map +1 -1
  159. package/dist/utilities/array/array.utility.d.ts +3 -0
  160. package/dist/utilities/array/array.utility.js +24 -0
  161. package/dist/utilities/array/array.utility.js.map +1 -0
  162. package/dist/utilities/cidr/cidr.utility.d.ts +7 -0
  163. package/dist/utilities/cidr/cidr.utility.js +48 -0
  164. package/dist/utilities/cidr/cidr.utility.js.map +1 -0
  165. package/dist/utilities/object/object.utility.d.ts +3 -0
  166. package/dist/utilities/object/object.utility.js +9 -0
  167. package/dist/utilities/object/object.utility.js.map +1 -0
  168. package/package.json +2 -1
  169. package/dist/functions/dependency/dependency.model.js.map +0 -1
  170. package/dist/functions/diff/diff-metadata.model.d.ts +0 -20
  171. package/dist/functions/diff/diff-metadata.model.js.map +0 -1
  172. package/dist/functions/diff/diff.model.js.map +0 -1
  173. package/dist/functions/module/module.abstract.d.ts +0 -12
  174. package/dist/functions/module/module.abstract.js +0 -39
  175. package/dist/functions/module/module.abstract.js.map +0 -1
  176. package/dist/functions/module/module.interface.d.ts +0 -4
  177. package/dist/functions/module/module.interface.js.map +0 -1
  178. package/dist/models/action.interface.d.ts +0 -9
  179. package/dist/models/action.interface.js +0 -2
  180. package/dist/models/action.interface.js.map +0 -1
  181. package/dist/models/support/support.interface.d.ts +0 -5
  182. package/dist/models/support/support.interface.js +0 -2
  183. package/dist/models/support/support.interface.js.map +0 -1
  184. package/dist/models/support/support.model.d.ts +0 -14
  185. package/dist/models/support/support.model.js +0 -52
  186. package/dist/models/support/support.model.js.map +0 -1
  187. /package/dist/{functions/module → modules}/module.interface.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"state-management.service.js","sourceRoot":"","sources":["../../../src/services/state-management/state-management.service.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,uCAAuC,CAAC;AAGhE,MAAM,OAAO,sBAAsB;IAChB,aAAa,CAAiB;IAE/C,YAAY,aAA6B;QACvC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,aAAqB,EAAE,YAAkB;QACtD,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QAC1D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,YAAY,EAAE,CAAC;gBAC5C,OAAO,YAAY,CAAC;YACtB,CAAC;iBAAM,CAAC;gBACN,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,aAAqB,EAAE,IAAY;QACjD,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;IAC3D,CAAC;CACF;AAGM,IAAM,6BAA6B,GAAnC,MAAM,6BAA6B;IAChC,MAAM,CAAC,QAAQ,CAAyB;IAEhD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,aAA6B;QAC/C,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,OAAO,IAAI,CAAC,QAAQ,CAAC;QACvB,CAAC;QAED,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,gCAAgC,sBAAsB,CAAC,IAAI,iCAAiC,CAAC,CAAC;QAChH,CAAC;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,sBAAsB,CAAC,aAAa,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;CACF,CAAA;AAdY,6BAA6B;IADzC,OAAO,CAAyB,sBAAsB,CAAC;GAC3C,6BAA6B,CAczC"}
1
+ {"version":3,"file":"state-management.service.js","sourceRoot":"","sources":["../../../src/services/state-management/state-management.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /// <reference types="node" resolution-mode="require"/>
2
+ import type { IStateProvider } from './state-provider.interface.js';
3
+ export declare class TestStateProvider implements IStateProvider {
4
+ private readonly localState;
5
+ getState(stateFileName: string): Promise<Buffer>;
6
+ saveState(stateFileName: string, data: Buffer): Promise<void>;
7
+ }
@@ -0,0 +1,13 @@
1
+ export class TestStateProvider {
2
+ localState = {};
3
+ async getState(stateFileName) {
4
+ if (!(stateFileName in this.localState)) {
5
+ throw new Error('No state found!');
6
+ }
7
+ return this.localState[stateFileName];
8
+ }
9
+ async saveState(stateFileName, data) {
10
+ this.localState[stateFileName] = data;
11
+ }
12
+ }
13
+ //# sourceMappingURL=test.state-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test.state-provider.js","sourceRoot":"","sources":["../../../src/services/state-management/test.state-provider.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,iBAAiB;IACX,UAAU,GAA8B,EAAE,CAAC;IAE5D,KAAK,CAAC,QAAQ,CAAC,aAAqB;QAClC,IAAI,CAAC,CAAC,aAAa,IAAI,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,aAAqB,EAAE,IAAY;QACjD,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC;IACxC,CAAC;CACF"}
@@ -1,26 +1,33 @@
1
- import { ActionInputs, ActionOutputs, TransactionOptions, UnknownResource } from '../../app.type.js';
2
- import { DiffMetadata } from '../../functions/diff/diff-metadata.model.js';
3
- import { Diff } from '../../functions/diff/diff.model.js';
4
- import { IAction } from '../../models/action.interface.js';
5
- import { IResourceAction } from '../../resources/resource-action.interface.js';
1
+ import { type TransactionOptions } from '../../app.type.js';
2
+ import { DiffMetadata } from '../../functions/diff/diff-metadata.js';
3
+ import { type Diff } from '../../functions/diff/diff.js';
4
+ import type { IModelAction } from '../../models/model-action.interface.js';
5
+ import { OverlayDataRepository } from '../../overlays/overlay-data.repository.js';
6
+ import type { IResourceAction } from '../../resources/resource-action.interface.js';
7
+ import { ResourceDataRepository } from '../../resources/resource-data.repository.js';
8
+ import { CaptureService } from '../capture/capture.service.js';
9
+ import { InputService } from '../input/input.service.js';
6
10
  export declare class TransactionService {
7
- private readonly inputs;
11
+ private readonly captureService;
12
+ private readonly inputService;
13
+ private readonly overlayDataRepository;
14
+ private readonly resourceDataRepository;
8
15
  private readonly modelActions;
9
16
  private readonly overlayActions;
10
17
  private readonly resourceActions;
18
+ constructor(captureService: CaptureService, inputService: InputService, overlayDataRepository: OverlayDataRepository, resourceDataRepository: ResourceDataRepository);
11
19
  private applyModels;
12
20
  private applyResources;
13
21
  private getDuplicateDiffs;
14
22
  private getMatchingDiffs;
15
23
  private setApplyOrder;
16
- beginTransaction(diffs: Diff[], options?: TransactionOptions): AsyncGenerator<DiffMetadata[][] | UnknownResource[], DiffMetadata[][]>;
17
- registerModelActions(actions: IAction<ActionInputs, ActionOutputs>[]): void;
18
- registerOverlayActions(actions: IAction<ActionInputs, ActionOutputs>[]): void;
24
+ beginTransaction(diffs: Diff[], options?: TransactionOptions): AsyncGenerator<DiffMetadata[][], DiffMetadata[][]>;
25
+ registerModelActions(actions: IModelAction[]): void;
26
+ registerOverlayActions(actions: IModelAction[]): void;
19
27
  registerResourceActions(actions: IResourceAction[]): void;
20
- registerInputs(inputs: ActionInputs): void;
21
28
  rollbackTransaction(modelTransaction: DiffMetadata[][], options?: TransactionOptions): AsyncGenerator<DiffMetadata[][], DiffMetadata[][]>;
22
29
  }
23
30
  export declare class TransactionServiceFactory {
24
31
  private static instance;
25
- static create(): Promise<TransactionService>;
32
+ static create(forceNew?: boolean): Promise<TransactionService>;
26
33
  }
@@ -7,16 +7,27 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import { ModelType, } from '../../app.type.js';
8
8
  import { Container } from '../../decorators/container.js';
9
9
  import { Factory } from '../../decorators/factory.decorator.js';
10
- import { DiffMetadata } from '../../functions/diff/diff-metadata.model.js';
11
- import { DiffAction } from '../../functions/diff/diff.model.js';
10
+ import { DiffMetadata } from '../../functions/diff/diff-metadata.js';
11
+ import { DiffAction } from '../../functions/diff/diff.js';
12
12
  import { OverlayDataRepository } from '../../overlays/overlay-data.repository.js';
13
13
  import { ResourceDataRepository } from '../../resources/resource-data.repository.js';
14
+ import { CaptureService } from '../capture/capture.service.js';
15
+ import { InputService } from '../input/input.service.js';
14
16
  export class TransactionService {
15
- inputs = {};
17
+ captureService;
18
+ inputService;
19
+ overlayDataRepository;
20
+ resourceDataRepository;
16
21
  modelActions = [];
17
22
  overlayActions = [];
18
23
  resourceActions = [];
19
- async applyModels(diffs, resourceDataRepository) {
24
+ constructor(captureService, inputService, overlayDataRepository, resourceDataRepository) {
25
+ this.captureService = captureService;
26
+ this.inputService = inputService;
27
+ this.overlayDataRepository = overlayDataRepository;
28
+ this.resourceDataRepository = resourceDataRepository;
29
+ }
30
+ async applyModels(diffs) {
20
31
  const transaction = [];
21
32
  let currentApplyOrder = 0;
22
33
  let processed = 0;
@@ -33,19 +44,13 @@ export class TransactionService {
33
44
  for (const a of diff.actions) {
34
45
  const inputs = {};
35
46
  const inputKeys = a.collectInput(diffToProcess);
36
- inputKeys.map((k) => {
37
- if (k.startsWith('resource')) {
38
- const resourceId = k.substring('resource.'.length);
39
- inputs[k] = resourceDataRepository.getById(resourceId);
40
- }
41
- else {
42
- inputs[k] = this.inputs[k];
43
- }
47
+ inputKeys.forEach((k) => {
48
+ inputs[k] = this.inputService.getInput(k);
44
49
  if (!inputs[k]) {
45
50
  throw new Error('No matching input found to process action!');
46
51
  }
47
52
  });
48
- const promiseToApplyAction = a.handle(diffToProcess, inputs).then((outputs) => {
53
+ const promiseToApplyAction = a.handle(diffToProcess, inputs, {}).then((outputs) => {
49
54
  duplicateDiffs.forEach((d) => {
50
55
  d.updateInputs(inputs);
51
56
  d.updateOutputs(outputs);
@@ -60,12 +65,12 @@ export class TransactionService {
60
65
  const actionsOutputs = await Promise.all(promiseToApplyActions);
61
66
  for (const outputs of actionsOutputs) {
62
67
  for (const [resourceId, resource] of Object.entries(outputs)) {
63
- const previousResource = resourceDataRepository.getById(resourceId);
68
+ const previousResource = this.resourceDataRepository.getById(resourceId);
64
69
  if (resource.MODEL_TYPE === 'shared-resource' && previousResource) {
65
- resourceDataRepository.add(resource.merge(previousResource));
70
+ this.resourceDataRepository.add(resource.merge(previousResource));
66
71
  }
67
72
  else {
68
- resourceDataRepository.add(resource);
73
+ this.resourceDataRepository.add(resource);
69
74
  }
70
75
  }
71
76
  }
@@ -75,7 +80,7 @@ export class TransactionService {
75
80
  }
76
81
  return transaction;
77
82
  }
78
- async applyResources(diffs) {
83
+ async applyResources(diffs, { enableResourceCapture = false } = {}) {
79
84
  const transaction = [];
80
85
  let currentApplyOrder = 0;
81
86
  let processed = 0;
@@ -90,7 +95,14 @@ export class TransactionService {
90
95
  const duplicateDiffs = this.getDuplicateDiffs(diff, diffsInSameLevel);
91
96
  const diffToProcess = duplicateDiffs[0].diff;
92
97
  for (const a of diff.actions) {
93
- promiseToApplyActions.push(a.handle(diffToProcess));
98
+ if (enableResourceCapture) {
99
+ const capture = this.captureService.getCapture(diff.model.resourceId);
100
+ await a.mock(capture?.response, diff);
101
+ await a.handle(diffToProcess);
102
+ }
103
+ else {
104
+ promiseToApplyActions.push(a.handle(diffToProcess));
105
+ }
94
106
  }
95
107
  diffsProcessedInSameLevel.push(duplicateDiffs[0]);
96
108
  duplicateDiffs.forEach((d) => (d.applied = true));
@@ -109,7 +121,7 @@ export class TransactionService {
109
121
  d.value === diff.value);
110
122
  }
111
123
  getMatchingDiffs(diff, diffs) {
112
- return diffs.filter((d) => d.model.getContext() === diff.model.getContext());
124
+ return diffs.filter((d) => d.model.getContext() === diff.model.getContext() && d.field === diff.field && d.value === diff.value);
113
125
  }
114
126
  setApplyOrder(diff, diffs, seen = []) {
115
127
  if (this.getDuplicateDiffs(diff, seen).length > 0) {
@@ -128,7 +140,7 @@ export class TransactionService {
128
140
  if (diff.applyOrder >= 0) {
129
141
  return;
130
142
  }
131
- const dependencies = diff.model['dependencies'];
143
+ const dependencies = diff.model.getDependencies();
132
144
  const dependencyApplyOrders = [-1];
133
145
  for (const dependency of dependencies) {
134
146
  const matchingParentDiffs = diffs.filter((d) => d.model.getContext() === dependency.to.getContext() &&
@@ -141,14 +153,13 @@ export class TransactionService {
141
153
  diff.applyOrder = Math.max(...dependencyApplyOrders) + 1;
142
154
  }
143
155
  async *beginTransaction(diffs, options = {
156
+ enableResourceCapture: false,
157
+ yieldModelDiffs: false,
144
158
  yieldModelTransaction: false,
145
- yieldNewResources: false,
146
159
  yieldResourceDiffs: false,
147
160
  yieldResourceTransaction: false,
148
161
  }) {
149
- const overlayDataRepository = await Container.get(OverlayDataRepository);
150
- const resourceDataRepository = await Container.get(ResourceDataRepository);
151
- diffs.push(...overlayDataRepository.diff());
162
+ diffs.push(...(await this.overlayDataRepository.diff()));
152
163
  const modelDiffs = diffs.map((d) => {
153
164
  if (d.model.MODEL_TYPE === ModelType.OVERLAY) {
154
165
  return new DiffMetadata(d, this.overlayActions.filter((a) => a.filter(d)));
@@ -160,14 +171,14 @@ export class TransactionService {
160
171
  for (const diff of modelDiffs) {
161
172
  this.setApplyOrder(diff, modelDiffs);
162
173
  }
163
- const modelTransaction = await this.applyModels(modelDiffs, resourceDataRepository);
174
+ if (options.yieldModelDiffs) {
175
+ yield [modelDiffs];
176
+ }
177
+ const modelTransaction = await this.applyModels(modelDiffs);
164
178
  if (options.yieldModelTransaction) {
165
179
  yield modelTransaction;
166
180
  }
167
- if (options.yieldNewResources) {
168
- yield resourceDataRepository.getByProperties();
169
- }
170
- diffs = await resourceDataRepository.diff();
181
+ diffs = await this.resourceDataRepository.diff();
171
182
  const resourceDiffs = diffs.map((d) => new DiffMetadata(d, this.resourceActions.filter((a) => a.filter(d))));
172
183
  for (const diff of resourceDiffs) {
173
184
  this.setApplyOrder(diff, resourceDiffs);
@@ -175,7 +186,9 @@ export class TransactionService {
175
186
  if (options.yieldResourceDiffs) {
176
187
  yield [resourceDiffs];
177
188
  }
178
- const resourceTransaction = await this.applyResources(resourceDiffs);
189
+ const resourceTransaction = await this.applyResources(resourceDiffs, {
190
+ enableResourceCapture: options.enableResourceCapture,
191
+ });
179
192
  if (options.yieldResourceTransaction) {
180
193
  yield resourceTransaction;
181
194
  }
@@ -202,28 +215,22 @@ export class TransactionService {
202
215
  }
203
216
  }
204
217
  }
205
- registerInputs(inputs) {
206
- for (const key in inputs) {
207
- this.inputs[key] = inputs[key];
208
- }
209
- }
210
218
  async *rollbackTransaction(modelTransaction, options = {
211
219
  yieldResourceDiffs: false,
212
220
  yieldResourceTransaction: false,
213
221
  }) {
214
- const resourceDataRepository = await Container.get(ResourceDataRepository);
215
222
  for (let i = modelTransaction.length - 1; i >= 0; i--) {
216
223
  const diffsProcessedInSameLevel = modelTransaction[i];
217
224
  for (const diff of diffsProcessedInSameLevel) {
218
225
  for (const a of diff.actions) {
219
226
  const outputs = a.revert(diff.diff, diff.inputs, diff.outputs);
220
227
  for (const outputKey in outputs) {
221
- resourceDataRepository.add(outputs[outputKey]);
228
+ this.resourceDataRepository.add(outputs[outputKey]);
222
229
  }
223
230
  }
224
231
  }
225
232
  }
226
- const diffs = await resourceDataRepository.diff();
233
+ const diffs = await this.resourceDataRepository.diff();
227
234
  const resourceDiffs = diffs.map((d) => new DiffMetadata(d, this.resourceActions.filter((a) => a.filter(d))));
228
235
  for (const diff of resourceDiffs) {
229
236
  this.setApplyOrder(diff, resourceDiffs);
@@ -240,9 +247,19 @@ export class TransactionService {
240
247
  }
241
248
  let TransactionServiceFactory = class TransactionServiceFactory {
242
249
  static instance;
243
- static async create() {
250
+ static async create(forceNew = false) {
251
+ const [captureService, inputService, overlayDataRepository, resourceDataRepository] = await Promise.all([
252
+ Container.get(CaptureService),
253
+ Container.get(InputService),
254
+ Container.get(OverlayDataRepository),
255
+ Container.get(ResourceDataRepository),
256
+ ]);
244
257
  if (!this.instance) {
245
- this.instance = new TransactionService();
258
+ this.instance = new TransactionService(captureService, inputService, overlayDataRepository, resourceDataRepository);
259
+ }
260
+ if (forceNew) {
261
+ const newInstance = new TransactionService(captureService, inputService, overlayDataRepository, resourceDataRepository);
262
+ Object.keys(this.instance).forEach((key) => (this.instance[key] = newInstance[key]));
246
263
  }
247
264
  return this.instance;
248
265
  }
@@ -1 +1 @@
1
- {"version":3,"file":"transaction.service.js","sourceRoot":"","sources":["../../../src/services/transaction/transaction.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transaction.service.js","sourceRoot":"","sources":["../../../src/services/transaction/transaction.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare class ArrayUtility {
2
+ static intersect<T>(compareFn: (a: T, b: T) => boolean, ...args: T[][]): T[];
3
+ }
@@ -0,0 +1,24 @@
1
+ export class ArrayUtility {
2
+ static intersect(compareFn, ...args) {
3
+ for (const arg of args) {
4
+ if (!Array.isArray(arg)) {
5
+ throw new Error('Cannot intersect non-array elements!');
6
+ }
7
+ }
8
+ if (args.length === 0) {
9
+ return [];
10
+ }
11
+ if (args.length === 1) {
12
+ return args[0];
13
+ }
14
+ if (args.length === 2) {
15
+ return args[0].filter((a) => args[1].find((b) => compareFn(a, b)));
16
+ }
17
+ let intersected = args[0];
18
+ for (let i = 1; i < args.length; i++) {
19
+ intersected = ArrayUtility.intersect(compareFn, intersected, args[i]);
20
+ }
21
+ return intersected;
22
+ }
23
+ }
24
+ //# sourceMappingURL=array.utility.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array.utility.js","sourceRoot":"","sources":["../../../src/utilities/array/array.utility.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,YAAY;IACvB,MAAM,CAAC,SAAS,CAAI,SAAkC,EAAE,GAAG,IAAW;QACpE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBACxB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC;QACjB,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACrE,CAAC;QAED,IAAI,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,WAAW,GAAG,YAAY,CAAC,SAAS,CAAC,SAAS,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;CACF"}
@@ -0,0 +1,7 @@
1
+ export declare class CidrUtility {
2
+ private static ipToNumber;
3
+ private static numberToIp;
4
+ static addToIp(startIp: string, capacity: number): string;
5
+ static getCidrRange(startIp: string, endIp: string): string[];
6
+ static isPrivateIpV4CidrRange(cidrRange: string): boolean;
7
+ }
@@ -0,0 +1,48 @@
1
+ export class CidrUtility {
2
+ static ipToNumber(ipAsString) {
3
+ const octets = ipAsString.split('.').map((octet) => Number(octet));
4
+ return (octets[0] << 24) | (octets[1] << 16) | (octets[2] << 8) | (octets[3] << 0);
5
+ }
6
+ static numberToIp(ipAsNumber) {
7
+ return [
8
+ (ipAsNumber >> 24) & 0xff,
9
+ (ipAsNumber >> 16) & 0xff,
10
+ (ipAsNumber >> 8) & 0xff,
11
+ (ipAsNumber >> 0) & 0xff,
12
+ ].join('.');
13
+ }
14
+ static addToIp(startIp, capacity) {
15
+ const startIpAsNumber = CidrUtility.ipToNumber(startIp);
16
+ return CidrUtility.numberToIp(startIpAsNumber + capacity);
17
+ }
18
+ static getCidrRange(startIp, endIp) {
19
+ let startIpAsNumber = CidrUtility.ipToNumber(startIp);
20
+ const endIpAsNumber = CidrUtility.ipToNumber(endIp);
21
+ const cidrBlocks = [];
22
+ while (startIpAsNumber <= endIpAsNumber) {
23
+ const maxBits = 32 - Math.floor(Math.log2(endIpAsNumber - startIpAsNumber + 1));
24
+ const cidrBlock = CidrUtility.numberToIp(startIpAsNumber) + '/' + maxBits;
25
+ cidrBlocks.push(cidrBlock);
26
+ startIpAsNumber += Math.pow(2, 32 - maxBits);
27
+ }
28
+ return cidrBlocks;
29
+ }
30
+ static isPrivateIpV4CidrRange(cidrRange) {
31
+ const [firstIp, size = '32'] = cidrRange.split('/');
32
+ const firstIpOctets = firstIp.split('.');
33
+ if (firstIpOctets.length !== 4 || firstIpOctets.some((octet) => Number(octet) < 0 || Number(octet) > 255)) {
34
+ return false;
35
+ }
36
+ if (firstIpOctets[0] === '10') {
37
+ return Number(size) >= 8 && Number(size) <= 31;
38
+ }
39
+ else if (firstIpOctets[0] === '172' && Number(firstIpOctets[1]) >= 16 && Number(firstIpOctets[1]) <= 31) {
40
+ return Number(size) >= 12 && Number(size) <= 31;
41
+ }
42
+ else if (firstIpOctets[0] === '192' && firstIpOctets[1] === '168') {
43
+ return Number(size) >= 16 && Number(size) <= 31;
44
+ }
45
+ return false;
46
+ }
47
+ }
48
+ //# sourceMappingURL=cidr.utility.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cidr.utility.js","sourceRoot":"","sources":["../../../src/utilities/cidr/cidr.utility.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare class ObjectUtility {
2
+ static deepFreeze<T extends object>(object: T): void;
3
+ }
@@ -0,0 +1,9 @@
1
+ export class ObjectUtility {
2
+ static deepFreeze(object) {
3
+ Object.freeze(object);
4
+ Object.values(object)
5
+ .filter((x) => !Object.isFrozen(x))
6
+ .forEach(ObjectUtility.deepFreeze);
7
+ }
8
+ }
9
+ //# sourceMappingURL=object.utility.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object.utility.js","sourceRoot":"","sources":["../../../src/utilities/object/object.utility.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,aAAa;IAExB,MAAM,CAAC,UAAU,CAAmB,MAAS;QAC3C,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACtB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;aAClB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;aAClC,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IACvC,CAAC;CACF"}
package/package.json CHANGED
@@ -64,6 +64,7 @@
64
64
  },
65
65
  "scripts": {
66
66
  "build": "rimraf dist && tsc -p tsconfig.build.json",
67
+ "check:circular-dependency": "dpdm --no-tree --exit-code circular:1 --no-warning ./dist/index.js",
67
68
  "format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"",
68
69
  "lint": "eslint .",
69
70
  "lint:fix": "eslint \"{src,apps,libs,test}/**/*.ts\" --fix",
@@ -76,5 +77,5 @@
76
77
  },
77
78
  "type": "module",
78
79
  "types": "./dist/index.d.ts",
79
- "version": "0.0.17"
80
+ "version": "0.0.19"
80
81
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"dependency.model.js","sourceRoot":"","sources":["../../../src/functions/dependency/dependency.model.ts"],"names":[],"mappings":"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"}
@@ -1,20 +0,0 @@
1
- import { ActionInputs, ActionOutputs, UnknownModel, UnknownResource } from '../../app.type.js';
2
- import { IAction } from '../../models/action.interface.js';
3
- import { IResourceAction } from '../../resources/resource-action.interface.js';
4
- import { Diff, DiffAction } from './diff.model.js';
5
- export declare class DiffMetadata {
6
- readonly actions: IAction<ActionInputs, ActionOutputs>[] | IResourceAction[];
7
- applied: boolean;
8
- applyOrder: number;
9
- readonly diff: Diff;
10
- readonly action: DiffAction;
11
- readonly field: string;
12
- readonly model: UnknownModel | UnknownResource;
13
- readonly value: unknown;
14
- readonly inputs: ActionInputs;
15
- readonly outputs: ActionOutputs;
16
- constructor(diff: Diff, actions: IAction<ActionInputs, ActionOutputs>[] | IResourceAction[]);
17
- toJSON(): ReturnType<Diff['toJSON']>;
18
- updateInputs(inputs: ActionInputs): void;
19
- updateOutputs(outputs: ActionOutputs): void;
20
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"diff-metadata.model.js","sourceRoot":"","sources":["../../../src/functions/diff/diff-metadata.model.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,YAAY;IACd,OAAO,CAA6D;IAC7E,OAAO,CAAU;IACjB,UAAU,CAAS;IAEV,IAAI,CAAO;IACX,MAAM,CAAa;IACnB,KAAK,CAAS;IACd,KAAK,CAAiC;IACtC,KAAK,CAAU;IAEf,MAAM,GAAiB,EAAE,CAAC;IAC1B,OAAO,GAAkB,EAAE,CAAC;IAErC,YAAY,IAAU,EAAE,OAAmE;QACzF,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;QAErB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IAC1B,CAAC;IAED,MAAM;QACJ,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC;IACJ,CAAC;IAED,YAAY,CAAC,MAAoB;QAC/B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,CAAC;IAED,aAAa,CAAC,OAAsB;QAClC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACvC,CAAC;CACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"diff.model.js","sourceRoot":"","sources":["../../../src/functions/diff/diff.model.ts"],"names":[],"mappings":"AAEA,MAAM,CAAN,IAAY,UAKX;AALD,WAAY,UAAU;IACpB,yBAAW,CAAA;IACX,+BAAiB,CAAA;IACjB,iCAAmB,CAAA;IACnB,+BAAiB,CAAA;AACnB,CAAC,EALW,UAAU,KAAV,UAAU,QAKrB;AAED,MAAM,OAAO,IAAI;IACN,MAAM,CAAa;IAEnB,KAAK,CAAS;IAEd,KAAK,CAAe;IAEpB,KAAK,CAAU;IAExB,YAAY,KAAoB,EAAE,MAAsB,EAAE,KAAoB,EAAE,KAAoB;QAClG,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,MAAM;QACJ,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC;IACJ,CAAC;CACF"}
@@ -1,12 +0,0 @@
1
- import { UnknownModel } from '../../app.type.js';
2
- import { IModule } from './module.interface.js';
3
- export declare abstract class AModule {
4
- private readonly members;
5
- protected addMember(member: UnknownModel): void;
6
- abstract apply(...args: UnknownModel[]): void;
7
- abstract remove(...args: UnknownModel[]): void;
8
- removeAll(): void;
9
- protected removeMember(member: UnknownModel): void;
10
- synth(): IModule;
11
- static unSynth(deserializationClass: any, module: IModule, deReferenceContext: (context: string) => Promise<UnknownModel>): Promise<AModule>;
12
- }
@@ -1,39 +0,0 @@
1
- export class AModule {
2
- members = [];
3
- addMember(member) {
4
- const index = this.members.findIndex((m) => m.getContext() === member.getContext());
5
- if (index === -1) {
6
- this.members.push(member);
7
- }
8
- }
9
- removeAll() {
10
- for (const member of this.members) {
11
- member.remove(false, true);
12
- }
13
- for (const member of this.members) {
14
- member.remove(false, false);
15
- }
16
- }
17
- removeMember(member) {
18
- const index = this.members.findIndex((m) => m.getContext() === member.getContext());
19
- if (index !== -1) {
20
- this.members.splice(index, 1);
21
- }
22
- }
23
- synth() {
24
- return {
25
- members: this.members.map((m) => ({
26
- context: m.getContext(),
27
- })),
28
- };
29
- }
30
- static async unSynth(deserializationClass, module, deReferenceContext) {
31
- const newModule = new deserializationClass();
32
- for (const member of module.members) {
33
- const model = await deReferenceContext(member.context);
34
- newModule.addMember(model);
35
- }
36
- return newModule;
37
- }
38
- }
39
- //# sourceMappingURL=module.abstract.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"module.abstract.js","sourceRoot":"","sources":["../../../src/functions/module/module.abstract.ts"],"names":[],"mappings":"AAGA,MAAM,OAAgB,OAAO;IACV,OAAO,GAAmB,EAAE,CAAC;IAEpC,SAAS,CAAC,MAAoB;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,KAAK,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;QAEpF,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;YACjB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAMD,SAAS;QACP,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC7B,CAAC;QAED,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IAES,YAAY,CAAC,MAAoB;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,KAAK,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;QAEpF,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;YACjB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IAED,KAAK;QACH,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAChC,OAAO,EAAE,CAAC,CAAC,UAAU,EAAE;aACxB,CAAC,CAAC;SACJ,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,OAAO,CAClB,oBAAyB,EACzB,MAAe,EACf,kBAA8D;QAE9D,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;QAE7C,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACpC,MAAM,KAAK,GAAG,MAAM,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACvD,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;CACF"}
@@ -1,4 +0,0 @@
1
- import { IModelReference } from '../../models/model.interface.js';
2
- export interface IModule {
3
- members: IModelReference[];
4
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"module.interface.js","sourceRoot":"","sources":["../../../src/functions/module/module.interface.ts"],"names":[],"mappings":""}
@@ -1,9 +0,0 @@
1
- import { ActionInputs, ActionOutputs } from '../app.type.js';
2
- import { Diff } from '../functions/diff/diff.model.js';
3
- export interface IAction<I extends ActionInputs, O extends ActionOutputs> {
4
- readonly ACTION_NAME: string;
5
- collectInput(diff: Diff): (keyof I)[];
6
- filter(diff: Diff): boolean;
7
- handle(diff: Diff, actionInputs: I): Promise<O>;
8
- revert(diff: Diff, actionInputs: I, actionOutputs: O): Promise<O>;
9
- }
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=action.interface.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"action.interface.js","sourceRoot":"","sources":["../../src/models/action.interface.ts"],"names":[],"mappings":""}
@@ -1,5 +0,0 @@
1
- import { Support } from './support.model.js';
2
- export interface ISupport {
3
- applicationType: Support['applicationType'];
4
- serverKey: Support['serverKey'];
5
- }