@quadnix/octo 0.1.0 → 0.2.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 (221) hide show
  1. package/README.md +108 -21
  2. package/dist/app.type.d.ts +141 -22
  3. package/dist/app.type.js.map +1 -1
  4. package/dist/decorators/model.decorator.d.ts +3 -5
  5. package/dist/decorators/model.decorator.js +1 -6
  6. package/dist/decorators/model.decorator.js.map +1 -1
  7. package/dist/decorators/on-event.decorator.d.ts +2 -2
  8. package/dist/decorators/on-event.decorator.js.map +1 -1
  9. package/dist/decorators/resource.decorator.d.ts +50 -1
  10. package/dist/decorators/resource.decorator.js +38 -1
  11. package/dist/decorators/resource.decorator.js.map +1 -1
  12. package/dist/errors/schema.error.d.ts +8 -1
  13. package/dist/errors/schema.error.js +5 -1
  14. package/dist/errors/schema.error.js.map +1 -1
  15. package/dist/errors/terraform.error.d.ts +4 -3
  16. package/dist/errors/terraform.error.js +4 -3
  17. package/dist/errors/terraform.error.js.map +1 -1
  18. package/dist/errors/transaction.error.d.ts +32 -2
  19. package/dist/errors/transaction.error.js +22 -0
  20. package/dist/errors/transaction.error.js.map +1 -1
  21. package/dist/events/action.event.d.ts +8 -2
  22. package/dist/events/action.event.js +2 -2
  23. package/dist/events/action.event.js.map +1 -1
  24. package/dist/events/command.event.d.ts +43 -0
  25. package/dist/events/command.event.js +33 -0
  26. package/dist/events/command.event.js.map +1 -0
  27. package/dist/events/event.model.d.ts +7 -5
  28. package/dist/events/event.model.js +5 -3
  29. package/dist/events/event.model.js.map +1 -1
  30. package/dist/events/hook/commit.hook.event.d.ts +1 -1
  31. package/dist/events/hook/commit.hook.event.js.map +1 -1
  32. package/dist/events/hook/hook.event.d.ts +1 -1
  33. package/dist/events/hook/hook.event.js.map +1 -1
  34. package/dist/events/hook/model.hook.event.d.ts +1 -1
  35. package/dist/events/hook/model.hook.event.js.map +1 -1
  36. package/dist/events/hook/resource.hook.event.d.ts +1 -1
  37. package/dist/events/hook/resource.hook.event.js.map +1 -1
  38. package/dist/events/index.d.ts +2 -0
  39. package/dist/events/index.js +2 -0
  40. package/dist/events/index.js.map +1 -1
  41. package/dist/events/mode-result.event.d.ts +1 -1
  42. package/dist/events/mode-result.event.js.map +1 -1
  43. package/dist/events/mode.event.d.ts +8 -4
  44. package/dist/events/mode.event.js.map +1 -1
  45. package/dist/events/module.event.d.ts +7 -3
  46. package/dist/events/module.event.js +3 -2
  47. package/dist/events/module.event.js.map +1 -1
  48. package/dist/events/registration.event.d.ts +1 -1
  49. package/dist/events/registration.event.js.map +1 -1
  50. package/dist/events/serialization.event.d.ts +1 -1
  51. package/dist/events/serialization.event.js.map +1 -1
  52. package/dist/events/state.event.d.ts +102 -0
  53. package/dist/events/state.event.js +69 -0
  54. package/dist/events/state.event.js.map +1 -0
  55. package/dist/events/terraform.event.d.ts +37 -1
  56. package/dist/events/terraform.event.js +24 -0
  57. package/dist/events/terraform.event.js.map +1 -1
  58. package/dist/events/transaction.event.d.ts +3 -3
  59. package/dist/events/transaction.event.js +1 -1
  60. package/dist/events/transaction.event.js.map +1 -1
  61. package/dist/functions/container/container.js +1 -1
  62. package/dist/functions/container/container.js.map +1 -1
  63. package/dist/functions/container/test-container.js +2 -2
  64. package/dist/functions/container/test-container.js.map +1 -1
  65. package/dist/functions/dependency/dependency.d.ts +9 -22
  66. package/dist/functions/dependency/dependency.js +5 -1
  67. package/dist/functions/dependency/dependency.js.map +1 -1
  68. package/dist/functions/diff/diff.d.ts +14 -7
  69. package/dist/functions/diff/diff.js.map +1 -1
  70. package/dist/functions/node/node-action.abstract.d.ts +8 -10
  71. package/dist/functions/node/node-action.abstract.js +10 -16
  72. package/dist/functions/node/node-action.abstract.js.map +1 -1
  73. package/dist/functions/node/node.abstract.js +21 -10
  74. package/dist/functions/node/node.abstract.js.map +1 -1
  75. package/dist/functions/node/node.interface.d.ts +2 -1
  76. package/dist/functions/schema/schema.js +1 -1
  77. package/dist/functions/schema/schema.js.map +1 -1
  78. package/dist/index.d.ts +8 -6
  79. package/dist/index.js +6 -4
  80. package/dist/index.js.map +1 -1
  81. package/dist/index.type.d.ts +5 -0
  82. package/dist/index.type.js +2 -0
  83. package/dist/index.type.js.map +1 -0
  84. package/dist/main.d.ts +4 -3
  85. package/dist/main.js +27 -11
  86. package/dist/main.js.map +1 -1
  87. package/dist/models/account/account.model.d.ts +6 -0
  88. package/dist/models/account/account.model.js +16 -0
  89. package/dist/models/account/account.model.js.map +1 -1
  90. package/dist/models/app/app.model.d.ts +0 -10
  91. package/dist/models/app/app.model.js +0 -30
  92. package/dist/models/app/app.model.js.map +1 -1
  93. package/dist/models/deployment/deployment.schema.d.ts +4 -0
  94. package/dist/models/deployment/deployment.schema.js +4 -0
  95. package/dist/models/deployment/deployment.schema.js.map +1 -1
  96. package/dist/models/environment/environment.model.d.ts +2 -2
  97. package/dist/models/environment/environment.model.js +2 -2
  98. package/dist/models/execution/execution.model.d.ts +1 -1
  99. package/dist/models/execution/execution.model.js +1 -1
  100. package/dist/models/image/image.model.d.ts +4 -3
  101. package/dist/models/image/image.model.js +7 -6
  102. package/dist/models/image/image.model.js.map +1 -1
  103. package/dist/models/model.abstract.js +1 -1
  104. package/dist/models/model.abstract.js.map +1 -1
  105. package/dist/models/pipeline/pipeline.model.d.ts +1 -1
  106. package/dist/models/pipeline/pipeline.model.js +1 -1
  107. package/dist/models/server/server.model.d.ts +2 -2
  108. package/dist/models/server/server.model.js +2 -2
  109. package/dist/models/service/service.model.d.ts +28 -11
  110. package/dist/models/service/service.model.js +56 -16
  111. package/dist/models/service/service.model.js.map +1 -1
  112. package/dist/models/service/service.schema.d.ts +46 -2
  113. package/dist/models/service/service.schema.js +54 -2
  114. package/dist/models/service/service.schema.js.map +1 -1
  115. package/dist/modes/commit.mode.d.ts +2 -2
  116. package/dist/modes/commit.mode.js +2 -2
  117. package/dist/modes/generate.mode.d.ts +2 -1
  118. package/dist/modes/generate.mode.js +3 -2
  119. package/dist/modes/generate.mode.js.map +1 -1
  120. package/dist/modes/run-action.mode.d.ts +1 -1
  121. package/dist/modes/run-action.mode.js +1 -1
  122. package/dist/modes/validate.mode.d.ts +24 -0
  123. package/dist/modes/validate.mode.js +89 -11
  124. package/dist/modes/validate.mode.js.map +1 -1
  125. package/dist/modules/module.container.d.ts +7 -1
  126. package/dist/modules/module.container.js +41 -5
  127. package/dist/modules/module.container.js.map +1 -1
  128. package/dist/modules/test-module.container.js +35 -83
  129. package/dist/modules/test-module.container.js.map +1 -1
  130. package/dist/overlays/overlay.abstract.js +1 -1
  131. package/dist/overlays/overlay.abstract.js.map +1 -1
  132. package/dist/resources/resource-action.interface.d.ts +4 -2
  133. package/dist/resources/resource.abstract.d.ts +50 -8
  134. package/dist/resources/resource.abstract.js +63 -32
  135. package/dist/resources/resource.abstract.js.map +1 -1
  136. package/dist/resources/resource.interface.d.ts +0 -2
  137. package/dist/resources/resource.schema.d.ts +11 -1
  138. package/dist/resources/resource.schema.js +11 -1
  139. package/dist/resources/resource.schema.js.map +1 -1
  140. package/dist/services/event/event.service.d.ts +2 -2
  141. package/dist/services/event/event.service.js.map +1 -1
  142. package/dist/services/input/input.service.d.ts +30 -2
  143. package/dist/services/input/input.service.js +71 -4
  144. package/dist/services/input/input.service.js.map +1 -1
  145. package/dist/services/serialization/model/model-serialization.service.d.ts +4 -6
  146. package/dist/services/serialization/model/model-serialization.service.js +20 -17
  147. package/dist/services/serialization/model/model-serialization.service.js.map +1 -1
  148. package/dist/services/serialization/resource/resource-serialization.service.d.ts +7 -6
  149. package/dist/services/serialization/resource/resource-serialization.service.js +25 -12
  150. package/dist/services/serialization/resource/resource-serialization.service.js.map +1 -1
  151. package/dist/services/state-management/local.state-provider.d.ts +25 -9
  152. package/dist/services/state-management/local.state-provider.js +127 -21
  153. package/dist/services/state-management/local.state-provider.js.map +1 -1
  154. package/dist/services/state-management/remote.state-provider.d.ts +216 -0
  155. package/dist/services/state-management/remote.state-provider.js +645 -0
  156. package/dist/services/state-management/remote.state-provider.js.map +1 -0
  157. package/dist/services/state-management/state-management.service.d.ts +83 -40
  158. package/dist/services/state-management/state-management.service.js +130 -26
  159. package/dist/services/state-management/state-management.service.js.map +1 -1
  160. package/dist/services/state-management/state-provider.interface.d.ts +50 -9
  161. package/dist/services/state-management/state-provider.interface.js +14 -1
  162. package/dist/services/state-management/state-provider.interface.js.map +1 -1
  163. package/dist/services/state-management/terraform-state.service.d.ts +32 -9
  164. package/dist/services/state-management/terraform-state.service.js +64 -21
  165. package/dist/services/state-management/terraform-state.service.js.map +1 -1
  166. package/dist/services/state-management/test.state-provider.d.ts +11 -10
  167. package/dist/services/state-management/test.state-provider.js +35 -14
  168. package/dist/services/state-management/test.state-provider.js.map +1 -1
  169. package/dist/services/terraform/terraform.service.d.ts +57 -3
  170. package/dist/services/terraform/terraform.service.js +95 -8
  171. package/dist/services/terraform/terraform.service.js.map +1 -1
  172. package/dist/services/terraform/terraform.type.js +1 -1
  173. package/dist/services/terraform/terraform.type.js.map +1 -1
  174. package/dist/services/transaction/transaction.service.d.ts +29 -5
  175. package/dist/services/transaction/transaction.service.js +198 -34
  176. package/dist/services/transaction/transaction.service.js.map +1 -1
  177. package/dist/services/validation/validation.service.d.ts +2 -2
  178. package/dist/{functions → utilities}/diff/diff.utility.d.ts +2 -1
  179. package/dist/{functions → utilities}/diff/diff.utility.js +4 -3
  180. package/dist/utilities/diff/diff.utility.js.map +1 -0
  181. package/dist/utilities/file/file.utility.d.ts +6 -7
  182. package/dist/utilities/file/file.utility.js +13 -68
  183. package/dist/utilities/file/file.utility.js.map +1 -1
  184. package/dist/utilities/hcl/hcl.utility.d.ts +83 -16
  185. package/dist/utilities/hcl/hcl.utility.js +200 -27
  186. package/dist/utilities/hcl/hcl.utility.js.map +1 -1
  187. package/dist/utilities/http/http.utility.d.ts +57 -0
  188. package/dist/utilities/http/http.utility.js +98 -0
  189. package/dist/utilities/http/http.utility.js.map +1 -0
  190. package/dist/utilities/string/string.utility.d.ts +23 -3
  191. package/dist/utilities/string/string.utility.js +29 -3
  192. package/dist/utilities/string/string.utility.js.map +1 -1
  193. package/dist/utilities/terraform/terraform.utility.d.ts +70 -21
  194. package/dist/utilities/terraform/terraform.utility.js +255 -66
  195. package/dist/utilities/terraform/terraform.utility.js.map +1 -1
  196. package/dist/utilities/test-helpers/test-classes.d.ts +19 -0
  197. package/dist/utilities/test-helpers/test-classes.js +22 -0
  198. package/dist/utilities/test-helpers/test-classes.js.map +1 -1
  199. package/dist/utilities/test-helpers/test-models.d.ts +8 -1
  200. package/dist/utilities/test-helpers/test-models.js +25 -12
  201. package/dist/utilities/test-helpers/test-models.js.map +1 -1
  202. package/dist/utilities/test-helpers/test-modes.d.ts +1 -1
  203. package/dist/utilities/test-helpers/test-modes.js +36 -13
  204. package/dist/utilities/test-helpers/test-modes.js.map +1 -1
  205. package/dist/utilities/test-helpers/test-modules.d.ts +6 -0
  206. package/dist/utilities/test-helpers/test-modules.js +6 -0
  207. package/dist/utilities/test-helpers/test-modules.js.map +1 -1
  208. package/dist/utilities/test-helpers/test-overlays.d.ts +3 -1
  209. package/dist/utilities/test-helpers/test-overlays.js +8 -2
  210. package/dist/utilities/test-helpers/test-overlays.js.map +1 -1
  211. package/dist/utilities/test-helpers/test-resources.d.ts +4 -2
  212. package/dist/utilities/test-helpers/test-resources.js +22 -20
  213. package/dist/utilities/test-helpers/test-resources.js.map +1 -1
  214. package/package.json +7 -2
  215. package/dist/functions/diff/diff.utility.js.map +0 -1
  216. package/dist/services/state-management/file-app-lock.utility.d.ts +0 -43
  217. package/dist/services/state-management/file-app-lock.utility.js +0 -124
  218. package/dist/services/state-management/file-app-lock.utility.js.map +0 -1
  219. package/dist/services/state-management/local-encryption.state-provider.d.ts +0 -71
  220. package/dist/services/state-management/local-encryption.state-provider.js +0 -116
  221. package/dist/services/state-management/local-encryption.state-provider.js.map +0 -1
@@ -0,0 +1,102 @@
1
+ import type { IStateProvider } from '../services/state-management/state-provider.interface.js';
2
+ import { Event } from './event.model.js';
3
+ /**
4
+ * The superclass of the events about Octo's state: what was written, refreshed, locked, or unlocked.
5
+ *
6
+ * @group Events/State
7
+ */
8
+ export declare abstract class StateEvent<T> extends Event<T> {
9
+ }
10
+ /**
11
+ * This event is emitted when the app lock is refused, before the error is thrown. `holder` is the
12
+ * command holding the lock, as far as the state provider knows it.
13
+ *
14
+ * @group Events/State
15
+ */
16
+ export declare class AppLockRefusedEvent extends StateEvent<{
17
+ holder?: {
18
+ commitId?: string;
19
+ context?: string;
20
+ lockId: string;
21
+ takenAt?: number;
22
+ };
23
+ newestCommitId?: string;
24
+ reason: 'held' | 'not-held' | 'state-moved' | 'unfinished';
25
+ refreshedCommitId?: string;
26
+ stateFileNames?: string[];
27
+ }> {
28
+ }
29
+ /**
30
+ * This event is emitted when the app lock is taken, or resumed with its id. A provider sharing state
31
+ * names where a resume took the state directory from: the directory the lock was taken in
32
+ * (`directory`), what the run uploaded so far (`run`), or the newest sealed state, because the run
33
+ * uploaded nothing (`sealed`).
34
+ *
35
+ * @group Events/State
36
+ */
37
+ export declare class AppLockTakenEvent extends StateEvent<{
38
+ commitId?: string;
39
+ lockId: string;
40
+ resumed: boolean;
41
+ resumedFrom?: 'directory' | 'run' | 'sealed';
42
+ }> {
43
+ }
44
+ /**
45
+ * This event is emitted after the app lock is released. The run's journal files are archived, and
46
+ * with a remote state provider its record is sealed, by then. Nothing is written after it.
47
+ *
48
+ * @group Events/State
49
+ */
50
+ export declare class AppUnlockedEvent extends StateEvent<{
51
+ lockId: string;
52
+ }> {
53
+ }
54
+ /**
55
+ * This event is emitted before the app lock is released. A listener that returns a promise is
56
+ * awaited, so what it writes lands in the run's record before the record is sealed. A listener that
57
+ * fails keeps the lock held.
58
+ *
59
+ * @group Events/State
60
+ */
61
+ export declare class AppUnlockingEvent extends StateEvent<{
62
+ lockId: string;
63
+ }> {
64
+ }
65
+ /**
66
+ * This event is emitted after state files are written, with the bytes written and their MD5. A file
67
+ * copied from a path carries only its path, which its saver may delete once this event is emitted, and a
68
+ * deleted file has neither.
69
+ *
70
+ * @group Events/State
71
+ */
72
+ export declare class StateFilesSavedEvent extends StateEvent<{
73
+ stateFiles: {
74
+ data: Buffer | undefined;
75
+ filePath?: string;
76
+ md5: string | undefined;
77
+ stateFileName: string;
78
+ }[];
79
+ }> {
80
+ }
81
+ /**
82
+ * This event is emitted before state files are written. A listener that returns a promise is awaited,
83
+ * and may add files to `stateFiles`, which are then written in the same change.
84
+ *
85
+ * @group Events/State
86
+ */
87
+ export declare class StateFilesSavingEvent extends StateEvent<{
88
+ stateFiles: Parameters<IStateProvider['saveStates']>[0];
89
+ }> {
90
+ }
91
+ /**
92
+ * This event is emitted after the state is brought up to the newest a command may plan against.
93
+ * `replaced` is true when the state files were replaced with the ones of another commit.
94
+ *
95
+ * @group Events/State
96
+ */
97
+ export declare class StateRefreshedEvent extends StateEvent<{
98
+ commitId?: string;
99
+ previousCommitId?: string;
100
+ replaced: boolean;
101
+ }> {
102
+ }
@@ -0,0 +1,69 @@
1
+ import { Event } from './event.model.js';
2
+ /**
3
+ * The superclass of the events about Octo's state: what was written, refreshed, locked, or unlocked.
4
+ *
5
+ * @group Events/State
6
+ */
7
+ export class StateEvent extends Event {
8
+ }
9
+ /**
10
+ * This event is emitted when the app lock is refused, before the error is thrown. `holder` is the
11
+ * command holding the lock, as far as the state provider knows it.
12
+ *
13
+ * @group Events/State
14
+ */
15
+ export class AppLockRefusedEvent extends StateEvent {
16
+ }
17
+ /**
18
+ * This event is emitted when the app lock is taken, or resumed with its id. A provider sharing state
19
+ * names where a resume took the state directory from: the directory the lock was taken in
20
+ * (`directory`), what the run uploaded so far (`run`), or the newest sealed state, because the run
21
+ * uploaded nothing (`sealed`).
22
+ *
23
+ * @group Events/State
24
+ */
25
+ export class AppLockTakenEvent extends StateEvent {
26
+ }
27
+ /**
28
+ * This event is emitted after the app lock is released. The run's journal files are archived, and
29
+ * with a remote state provider its record is sealed, by then. Nothing is written after it.
30
+ *
31
+ * @group Events/State
32
+ */
33
+ export class AppUnlockedEvent extends StateEvent {
34
+ }
35
+ /**
36
+ * This event is emitted before the app lock is released. A listener that returns a promise is
37
+ * awaited, so what it writes lands in the run's record before the record is sealed. A listener that
38
+ * fails keeps the lock held.
39
+ *
40
+ * @group Events/State
41
+ */
42
+ export class AppUnlockingEvent extends StateEvent {
43
+ }
44
+ /**
45
+ * This event is emitted after state files are written, with the bytes written and their MD5. A file
46
+ * copied from a path carries only its path, which its saver may delete once this event is emitted, and a
47
+ * deleted file has neither.
48
+ *
49
+ * @group Events/State
50
+ */
51
+ export class StateFilesSavedEvent extends StateEvent {
52
+ }
53
+ /**
54
+ * This event is emitted before state files are written. A listener that returns a promise is awaited,
55
+ * and may add files to `stateFiles`, which are then written in the same change.
56
+ *
57
+ * @group Events/State
58
+ */
59
+ export class StateFilesSavingEvent extends StateEvent {
60
+ }
61
+ /**
62
+ * This event is emitted after the state is brought up to the newest a command may plan against.
63
+ * `replaced` is true when the state files were replaced with the ones of another commit.
64
+ *
65
+ * @group Events/State
66
+ */
67
+ export class StateRefreshedEvent extends StateEvent {
68
+ }
69
+ //# sourceMappingURL=state.event.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.event.js","sourceRoot":"","sources":["../../src/events/state.event.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC;;;;GAIG;AACH,MAAM,OAAgB,UAAc,SAAQ,KAAQ;CAAG;AAEvD;;;;;GAKG;AACH,MAAM,OAAO,mBAAoB,SAAQ,UAMvC;CAAG;AAEL;;;;;;;GAOG;AACH,MAAM,OAAO,iBAAkB,SAAQ,UAKrC;CAAG;AAEL;;;;;GAKG;AACH,MAAM,OAAO,gBAAiB,SAAQ,UAA8B;CAAG;AAEvE;;;;;;GAMG;AACH,MAAM,OAAO,iBAAkB,SAAQ,UAA8B;CAAG;AAExE;;;;;;GAMG;AACH,MAAM,OAAO,oBAAqB,SAAQ,UAExC;CAAG;AAEL;;;;;GAKG;AACH,MAAM,OAAO,qBAAsB,SAAQ,UAEzC;CAAG;AAEL;;;;;GAKG;AACH,MAAM,OAAO,mBAAoB,SAAQ,UAIvC;CAAG"}
@@ -4,7 +4,7 @@ import { Event } from './event.model.js';
4
4
  *
5
5
  * @group Events/Terraform
6
6
  */
7
- export declare class TerraformEvent<T = undefined> extends Event<T> {
7
+ export declare abstract class TerraformEvent<T = undefined> extends Event<T> {
8
8
  }
9
9
  /**
10
10
  * This event is emitted when generate finishes writing terragrunt module folders.
@@ -40,3 +40,39 @@ export declare class TerraformCommandFinishedEvent extends TerraformEvent<{
40
40
  exitCode: number;
41
41
  }> {
42
42
  }
43
+ /**
44
+ * This event is emitted when octo starts a terraform or terragrunt process, before it writes anything.
45
+ * `processId` tells apart the processes of one octo process: a JSON plan runs a plan and a show in
46
+ * every folder.
47
+ *
48
+ * @group Events/Terraform
49
+ */
50
+ export declare class TerraformProcessStartedEvent extends TerraformEvent<{
51
+ args: string[];
52
+ binary: string;
53
+ dir: string;
54
+ processId: number;
55
+ }> {
56
+ }
57
+ /**
58
+ * This event is emitted for every chunk a terraform or terragrunt process writes, as it writes it.
59
+ *
60
+ * @group Events/Terraform
61
+ */
62
+ export declare class TerraformProcessOutputEvent extends TerraformEvent<{
63
+ processId: number;
64
+ stream: 'stderr' | 'stdout';
65
+ text: string;
66
+ }> {
67
+ }
68
+ /**
69
+ * This event is emitted after every terraform or terragrunt process exits, whatever its exit code.
70
+ * `exitCode` is -1 for a process that could not start or was killed.
71
+ *
72
+ * @group Events/Terraform
73
+ */
74
+ export declare class TerraformProcessExitedEvent extends TerraformEvent<{
75
+ exitCode: number;
76
+ processId: number;
77
+ }> {
78
+ }
@@ -28,4 +28,28 @@ export class TerraformCommandStartedEvent extends TerraformEvent {
28
28
  */
29
29
  export class TerraformCommandFinishedEvent extends TerraformEvent {
30
30
  }
31
+ /**
32
+ * This event is emitted when octo starts a terraform or terragrunt process, before it writes anything.
33
+ * `processId` tells apart the processes of one octo process: a JSON plan runs a plan and a show in
34
+ * every folder.
35
+ *
36
+ * @group Events/Terraform
37
+ */
38
+ export class TerraformProcessStartedEvent extends TerraformEvent {
39
+ }
40
+ /**
41
+ * This event is emitted for every chunk a terraform or terragrunt process writes, as it writes it.
42
+ *
43
+ * @group Events/Terraform
44
+ */
45
+ export class TerraformProcessOutputEvent extends TerraformEvent {
46
+ }
47
+ /**
48
+ * This event is emitted after every terraform or terragrunt process exits, whatever its exit code.
49
+ * `exitCode` is -1 for a process that could not start or was killed.
50
+ *
51
+ * @group Events/Terraform
52
+ */
53
+ export class TerraformProcessExitedEvent extends TerraformEvent {
54
+ }
31
55
  //# sourceMappingURL=terraform.event.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"terraform.event.js","sourceRoot":"","sources":["../../src/events/terraform.event.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC;;;;GAIG;AACH,MAAM,OAAO,cAA8B,SAAQ,KAAQ;CAAG;AAE9D;;;;;GAKG;AACH,MAAM,OAAO,4BAA6B,SAAQ,cAIhD;CAAG;AAEL;;;;GAIG;AACH,MAAM,OAAO,4BAA6B,SAAQ,cAAgD;CAAG;AAErG;;;;GAIG;AACH,MAAM,OAAO,6BAA8B,SAAQ,cAKjD;CAAG"}
1
+ {"version":3,"file":"terraform.event.js","sourceRoot":"","sources":["../../src/events/terraform.event.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC;;;;GAIG;AACH,MAAM,OAAgB,cAA8B,SAAQ,KAAQ;CAAG;AAEvE;;;;;GAKG;AACH,MAAM,OAAO,4BAA6B,SAAQ,cAIhD;CAAG;AAEL;;;;GAIG;AACH,MAAM,OAAO,4BAA6B,SAAQ,cAAgD;CAAG;AAErG;;;;GAIG;AACH,MAAM,OAAO,6BAA8B,SAAQ,cAKjD;CAAG;AAEL;;;;;;GAMG;AACH,MAAM,OAAO,4BAA6B,SAAQ,cAKhD;CAAG;AAEL;;;;GAIG;AACH,MAAM,OAAO,2BAA4B,SAAQ,cAI/C;CAAG;AAEL;;;;;GAKG;AACH,MAAM,OAAO,2BAA4B,SAAQ,cAG/C;CAAG"}
@@ -6,14 +6,14 @@ import { Event } from './event.model.js';
6
6
  *
7
7
  * @group Events/Transaction
8
8
  */
9
- export declare class TransactionEvent<T> extends Event<T> {
9
+ export declare abstract class TransactionEvent<T> extends Event<T> {
10
10
  }
11
11
  /**
12
- * This event is emitted when a model action in a transaction is done executing.
12
+ * This event is emitted when a model action in a transaction is done executing, with the diff it handled.
13
13
  *
14
14
  * @group Events/Transaction
15
15
  */
16
- export declare class ModelActionTransactionEvent extends TransactionEvent<void> {
16
+ export declare class ModelActionTransactionEvent extends TransactionEvent<DiffMetadata> {
17
17
  }
18
18
  /**
19
19
  * This event is emitted when transaction prepares a model diff.
@@ -8,7 +8,7 @@ import { Event } from './event.model.js';
8
8
  export class TransactionEvent extends Event {
9
9
  }
10
10
  /**
11
- * This event is emitted when a model action in a transaction is done executing.
11
+ * This event is emitted when a model action in a transaction is done executing, with the diff it handled.
12
12
  *
13
13
  * @group Events/Transaction
14
14
  */
@@ -1 +1 @@
1
- {"version":3,"file":"transaction.event.js","sourceRoot":"","sources":["../../src/events/transaction.event.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC;;;;;GAKG;AACH,MAAM,OAAO,gBAAoB,SAAQ,KAAQ;CAAG;AAEpD;;;;GAIG;AACH,MAAM,OAAO,2BAA4B,SAAQ,gBAAsB;CAAG;AAE1E;;;;GAIG;AACH,MAAM,OAAO,0BAA2B,SAAQ,gBAAkC;CAAG;AAErF;;;;GAIG;AACH,MAAM,OAAO,gCAAiC,SAAQ,gBAAkC;CAAG;AAE3F;;;;GAIG;AACH,MAAM,OAAO,uCAAwC,SAAQ,gBAA8B;CAAG;AAE9F;;;;GAIG;AACH,MAAM,OAAO,uCAAwC,SAAQ,gBAA8B;CAAG;AAE9F;;;;;GAKG;AACH,MAAM,OAAO,qCAAsC,SAAQ,gBAGzD;CAAG;AAEL;;;;GAIG;AACH,MAAM,OAAO,6BAA8B,SAAQ,gBAAsD;CAAG;AAE5G;;;;GAIG;AACH,MAAM,OAAO,mCAAoC,SAAQ,gBAAsD;CAAG"}
1
+ {"version":3,"file":"transaction.event.js","sourceRoot":"","sources":["../../src/events/transaction.event.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC;;;;;GAKG;AACH,MAAM,OAAgB,gBAAoB,SAAQ,KAAQ;CAAG;AAE7D;;;;GAIG;AACH,MAAM,OAAO,2BAA4B,SAAQ,gBAA8B;CAAG;AAElF;;;;GAIG;AACH,MAAM,OAAO,0BAA2B,SAAQ,gBAAkC;CAAG;AAErF;;;;GAIG;AACH,MAAM,OAAO,gCAAiC,SAAQ,gBAAkC;CAAG;AAE3F;;;;GAIG;AACH,MAAM,OAAO,uCAAwC,SAAQ,gBAA8B;CAAG;AAE9F;;;;GAIG;AACH,MAAM,OAAO,uCAAwC,SAAQ,gBAA8B;CAAG;AAE9F;;;;;GAKG;AACH,MAAM,OAAO,qCAAsC,SAAQ,gBAGzD;CAAG;AAEL;;;;GAIG;AACH,MAAM,OAAO,6BAA8B,SAAQ,gBAAsD;CAAG;AAE5G;;;;GAIG;AACH,MAAM,OAAO,mCAAoC,SAAQ,gBAAsD;CAAG"}
@@ -1,5 +1,5 @@
1
1
  import { ContainerRegistrationError, ContainerResolutionError } from '../../errors/index.js';
2
- import { DiffUtility } from '../diff/diff.utility.js';
2
+ import { DiffUtility } from '../../utilities/diff/diff.utility.js';
3
3
  /**
4
4
  * The Container class is a box to hold all registered factories.
5
5
  *
@@ -1 +1 @@
1
- {"version":3,"file":"container.js","sourceRoot":"","sources":["../../../src/functions/container/container.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"container.js","sourceRoot":"","sources":["../../../src/functions/container/container.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAC7F,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAMnE;;;;;;;;;;GAUG;AACH,MAAM,OAAO,SAAS;IASpB;;OAEG;IACH;QATiB,cAAS,GAAmD,EAAE,CAAC;QAExE,0BAAqB,GAAG,IAAI,CAAC;QAEpB,6BAAwB,GAAuB,EAAE,CAAC;IAK5C,CAAC;IAExB;;OAEG;IACH,MAAM,CAAC,WAAW;QAChB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,SAAS,EAAE,CAAC;QAClC,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,aAAa;QACX,MAAM,gBAAgB,GAAmD,EAAE,CAAC;QAE5E,KAAK,MAAM,CAAC,IAAI,EAAE,iBAAiB,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YACvE,gBAAgB,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YAC5B,KAAK,MAAM,gBAAgB,IAAI,iBAAiB,EAAE,CAAC;gBACjD,gBAAgB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;oBAC1B,OAAO,EAAE,gBAAgB,CAAC,OAAO;oBACjC,QAAQ,EAAE,EAAE,GAAG,gBAAgB,CAAC,QAAQ,EAAE;iBAC3C,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,GAAG,CACP,IAA+B,EAC/B,OAGC;QAED,MAAM,IAAI,GAAG,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC;QACjC,MAAM,QAAQ,GAAG,OAAO,EAAE,QAAQ,IAAI,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAEzD,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QAC5B,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;QAChH,IAAI,gBAAgB,EAAE,OAAO,EAAE,CAAC;YAC9B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC7C,OAAQ,gBAAgB,CAAC,OAAsB,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;YAClE,CAAC;iBAAM,CAAC;gBACN,MAAM,OAAO,GAAG,MAAO,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAyB,CAAC;gBAC3E,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;YACjC,CAAC;QACH,CAAC;QAED,MAAM,mBAAmB,GAAwB;YAC/C,QAAQ;SACc,CAAC;QACzB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAE/C,IAAI,eAAuD,CAAC;QAC5D,IAAI,cAA0C,CAAC;QAC/C,MAAM,OAAO,GAAG,IAAI,OAAO,CAAa,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC1D,cAAc,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC/B,MAAM,CAAC,IAAI,wBAAwB,CAAC,2CAA2C,EAAE,IAAI,CAAC,CAAC,CAAC;YAC1F,CAAC,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;YAC/B,eAAe,GAAG,OAAO,CAAC;QAC5B,CAAC,CAAC,CAAC;QACH,mBAAmB,CAAC,OAAO,GAAG,CAAC,OAAO,EAAE,eAAgB,CAAC,CAAC;QAE1D,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC;QAC9B,IAAI,cAAc,EAAE,CAAC;YACnB,YAAY,CAAC,cAAc,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,GAAG,CACD,IAA+B,EAC/B,OAEC;QAED,MAAM,QAAQ,GAAG,OAAO,EAAE,QAAQ,IAAI,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAEzD,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;IAChG,CAAC;IAED;;;;;;;;OAQG;IACH,eAAe,CACb,IAA+B,EAC/B,OAAmB,EACnB,OAEC;QAED,MAAM,QAAQ,GAAG,OAAO,EAAE,QAAQ,IAAI,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAEzD,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QAC5B,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;QAChH,IAAI,gBAAgB,EAAE,OAAO,EAAE,CAAC;YAC9B,kFAAkF;YAClF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC7C,MAAM,IAAI,0BAA0B,CAAC,sCAAsC,EAAE,IAAI,CAAC,CAAC;YACrF,CAAC;YAED,gBAAgB,CAAC,QAAQ,GAAG,QAAQ,CAAC;YACrC,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAkC,CAAC;YAC7E,OAAO,CAAC,OAAO,CAAC,CAAC;YACjB,gBAAgB,CAAC,OAAO,GAAG,OAAO,CAAC;YAEnC,OAAO;QACT,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;IACnD,CAAC;IAED;;OAEG;IACH,+BAA+B,CAAI,OAAmB;QACpD,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,aAAa,CACX,IAA+B,EAC/B,KAAQ,EACR,OAEC;QAED,IAAI,CAAC,eAAe,CAClB,IAAI,EACJ;YACE;;eAEG;YACH,MAAM,CAAC,KAAK,CAAC,MAAM;gBACjB,OAAO,KAAK,CAAC;YACf,CAAC;SACF,EACD,OAAO,CACR,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACH,YAAY,CACV,IAA+B,EAC/B,KAAQ,EACR,OAEC;QAED,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACxC,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;QAElC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;QAED,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC;IAChF,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,SAAyD;QACpE,KAAK,MAAM,CAAC,IAAI,EAAE,iBAAiB,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YAClE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YAC1B,KAAK,MAAM,gBAAgB,IAAI,iBAAiB,EAAE,CAAC;gBACjD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;oBACxB,OAAO,EAAE,gBAAgB,CAAC,OAAO;oBACjC,QAAQ,EAAE,EAAE,GAAG,gBAAgB,CAAC,QAAQ,EAAE;iBAC3C,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,iBAAiB,CAAC,WAAmB;QACnC,IAAI,CAAC,qBAAqB,GAAG,WAAW,CAAC;IAC3C,CAAC;IAED;;;;;;OAMG;IACH,iBAAiB,CAAI,IAA+B,EAAE,OAAkD;QACtG,MAAM,IAAI,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAEzD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC5B,OAAO;QACT,CAAC;QAED,MAAM,QAAQ,GAAG,OAAO,EAAE,QAAQ,IAAI,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC3G,IAAI,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC;YACf,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,yBAAyB;QAC7B,MAAM,4BAA4B,GAAgC,EAAE,CAAC;QAErE,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAC/C,KAAK,MAAM,gBAAgB,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;gBACpD,IAAI,gBAAgB,EAAE,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC;oBACzE,4BAA4B,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjE,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,4BAA4B,EAAE,GAAG,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC;IACzF,CAAC;CACF"}
@@ -107,13 +107,13 @@ export class TestContainer {
107
107
  });
108
108
  if (force) {
109
109
  const eventService = await container.get(EventService);
110
- const modelSerializationService = new ModelSerializationService(inputService);
110
+ const modelSerializationService = new ModelSerializationService(inputService, moduleContainer);
111
111
  container.unRegisterFactory(ModelSerializationService);
112
112
  container.registerValue(ModelSerializationService, modelSerializationService);
113
113
  const resourceSerializationService = new ResourceSerializationService(resourceDataRepository, inputService);
114
114
  container.unRegisterFactory(ResourceSerializationService);
115
115
  container.registerValue(ResourceSerializationService, resourceSerializationService);
116
- const transactionService = new TransactionService(eventService, inputService, moduleContainer, overlayDataRepository, resourceDataRepository, terraformService);
116
+ const transactionService = new TransactionService(eventService, inputService, moduleContainer, overlayDataRepository, resourceDataRepository, resourceSerializationService, terraformService);
117
117
  container.unRegisterFactory(TransactionService);
118
118
  container.registerValue(TransactionService, transactionService);
119
119
  }
@@ -1 +1 @@
1
- {"version":3,"file":"test-container.js","sourceRoot":"","sources":["../../../src/functions/container/test-container.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test-container.js","sourceRoot":"","sources":["../../../src/functions/container/test-container.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,5 @@
1
1
  import type { UnknownNode } from '../../app.type.js';
2
2
  import type { DiffAction } from '../diff/diff.js';
3
- /**
4
- * @internal
5
- */
6
- declare class DependencyBehavior {
7
- forAction: DiffAction;
8
- onAction: DiffAction;
9
- onField: string;
10
- toField: string;
11
- /**
12
- * @internal
13
- */
14
- constructor(onField: string, onAction: DiffAction, toField: string, forAction: DiffAction);
15
- }
16
3
  /**
17
4
  * How two nodes are related. A parent exists before its child, and outlives it.
18
5
  *
@@ -23,22 +10,23 @@ export declare enum DependencyRelationship {
23
10
  PARENT = "parent"
24
11
  }
25
12
  /**
26
- * The serialized form of a {@link Dependency}, as it is written to state.
13
+ * The serialized form of a {@link Dependency}, as it is written to state. A behavior says that the
14
+ * `forAction` diff of `to`'s `toField` waits for the `onAction` diff of `from`'s `onField`.
27
15
  *
28
16
  * @group Functions/Dependency
29
17
  */
30
18
  export interface IDependency {
31
19
  behaviors: {
32
- forAction: DependencyBehavior['forAction'];
33
- onAction: DependencyBehavior['onAction'];
34
- onField: DependencyBehavior['onField'];
35
- toField: DependencyBehavior['toField'];
20
+ forAction: `${DiffAction}`;
21
+ onAction: `${DiffAction}`;
22
+ onField: string;
23
+ toField: string;
36
24
  }[];
37
25
  from: string;
38
26
  relationship?: {
39
- onField: DependencyBehavior['onField'];
40
- toField: DependencyBehavior['toField'];
41
- type: DependencyRelationship;
27
+ onField: string;
28
+ toField: string;
29
+ type: `${DependencyRelationship}`;
42
30
  };
43
31
  to: string;
44
32
  }
@@ -132,4 +120,3 @@ export declare class Dependency {
132
120
  */
133
121
  private getBehaviorIndex;
134
122
  }
135
- export {};
@@ -52,11 +52,15 @@ export class Dependency {
52
52
  */
53
53
  static unSynth(from, to, dependency) {
54
54
  const newDependency = new Dependency(from, to);
55
+ // Read the actions and the relationship back as the values they were written from.
55
56
  dependency.behaviors.forEach((b) => {
56
57
  newDependency.addBehavior(b.onField, b.onAction, b.toField, b.forAction);
57
58
  });
58
59
  if (dependency.relationship) {
59
- newDependency.relationship = { ...dependency.relationship };
60
+ newDependency.relationship = {
61
+ ...dependency.relationship,
62
+ type: dependency.relationship.type,
63
+ };
60
64
  }
61
65
  return newDependency;
62
66
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dependency.js","sourceRoot":"","sources":["../../../src/functions/dependency/dependency.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dependency.js","sourceRoot":"","sources":["../../../src/functions/dependency/dependency.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,19 @@ export declare enum DiffAction {
31
31
  */
32
32
  VALIDATE = "validate"
33
33
  }
34
+ /**
35
+ * A diff as it leaves the process: `node` is the context of the model, overlay or resource changed,
36
+ * and a `value` naming a node is its context, or `anchorId=<id>` for an anchor.
37
+ *
38
+ * @group Functions/Diff
39
+ */
40
+ export type DiffSerializedOutput = {
41
+ action: `${DiffAction}`;
42
+ field: string;
43
+ node: string;
44
+ reason?: string;
45
+ value: unknown;
46
+ };
34
47
  /**
35
48
  * One change to one field of one node.
36
49
  *
@@ -74,11 +87,5 @@ export declare class Diff<N extends UnknownNode = UnknownNode, V = unknown> {
74
87
  *
75
88
  * @internal
76
89
  */
77
- toJSON(): {
78
- action: string;
79
- field: string;
80
- node: string;
81
- reason?: string;
82
- value: V | string;
83
- };
90
+ toJSON(): DiffSerializedOutput;
84
91
  }
@@ -1 +1 @@
1
- {"version":3,"file":"diff.js","sourceRoot":"","sources":["../../../src/functions/diff/diff.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,MAAM,CAAN,IAAY,UA2BX;AA3BD,WAAY,UAAU;IACpB;;OAEG;IACH,yBAAW,CAAA;IAEX;;OAEG;IACH,+BAAiB,CAAA;IAEjB;;;;OAIG;IACH,iCAAmB,CAAA;IAEnB;;OAEG;IACH,+BAAiB,CAAA;IAEjB;;OAEG;IACH,mCAAqB,CAAA;AACvB,CAAC,EA3BW,UAAU,KAAV,UAAU,QA2BrB;AAED;;;;;;;GAOG;AACH,MAAM,OAAO,IAAI;IA2Bf;;;;;;OAMG;IACH,YACE,IAAwB,EACxB,MAAsB,EACtB,KAAoB,EACpB,KAA0B,EAC1B,MAAuB;QAEvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;;;OAIG;IACH,MAAM;QACJ,IAAI,KAAK,GAAe,IAAI,CAAC,KAAK,CAAC;QACnC,IAAK,KAAqB,CAAC,UAAU,EAAE,CAAC;YACtC,KAAK,GAAI,KAAqB,CAAC,UAAU,EAAE,CAAC;QAC9C,CAAC;aAAM,IAAK,KAAuB,CAAC,QAAQ,EAAE,CAAC;YAC7C,KAAK,GAAG,YAAa,KAAuB,CAAC,QAAQ,EAAE,CAAC;QAC1D,CAAC;aAAM,CAAC;YACN,KAAK,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QAC9E,CAAC;QAED,MAAM,IAAI,GAAwF;YAChG,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YAC5B,KAAK;SACN,CAAC;QAEF,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC9B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC5B,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
1
+ {"version":3,"file":"diff.js","sourceRoot":"","sources":["../../../src/functions/diff/diff.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,MAAM,CAAN,IAAY,UA2BX;AA3BD,WAAY,UAAU;IACpB;;OAEG;IACH,yBAAW,CAAA;IAEX;;OAEG;IACH,+BAAiB,CAAA;IAEjB;;;;OAIG;IACH,iCAAmB,CAAA;IAEnB;;OAEG;IACH,+BAAiB,CAAA;IAEjB;;OAEG;IACH,mCAAqB,CAAA;AACvB,CAAC,EA3BW,UAAU,KAAV,UAAU,QA2BrB;AAgBD;;;;;;;GAOG;AACH,MAAM,OAAO,IAAI;IA2Bf;;;;;;OAMG;IACH,YACE,IAAwB,EACxB,MAAsB,EACtB,KAAoB,EACpB,KAA0B,EAC1B,MAAuB;QAEvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;;;OAIG;IACH,MAAM;QACJ,IAAI,KAAK,GAAY,IAAI,CAAC,KAAK,CAAC;QAChC,IAAK,KAAqB,CAAC,UAAU,EAAE,CAAC;YACtC,KAAK,GAAI,KAAqB,CAAC,UAAU,EAAE,CAAC;QAC9C,CAAC;aAAM,IAAK,KAAuB,CAAC,QAAQ,EAAE,CAAC;YAC7C,KAAK,GAAG,YAAa,KAAuB,CAAC,QAAQ,EAAE,CAAC;QAC1D,CAAC;aAAM,CAAC;YACN,KAAK,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QAC9E,CAAC;QAED,MAAM,IAAI,GAAyB;YACjC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YAC5B,KAAK;SACN,CAAC;QAEF,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC9B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC5B,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
@@ -1,11 +1,9 @@
1
1
  import { Container } from '../container/container.js';
2
+ import type { Diff } from '../diff/diff.js';
2
3
  /**
3
- * An optional base class for a model or resource action.
4
- *
5
- * Extending it is a convenience, not a requirement - an action only has to implement
6
- * {@link IModelAction} or {@link IResourceAction}. What you get here is the {@link Container},
7
- * and a `log()` that goes through Octo's event stream so your output lands in the run's report
8
- * alongside everything else.
4
+ * The base class of every resource action: an action implementing {@link IResourceAction} must extend
5
+ * it. It gives the action the {@link Container}, and a `log()` that goes through Octo's event stream so
6
+ * its output lands in the command's report alongside everything else.
9
7
  *
10
8
  * @example
11
9
  * ```ts
@@ -20,14 +18,14 @@ export declare abstract class ANodeAction {
20
18
  * The container, for resolving whatever services or SDK clients the action needs.
21
19
  */
22
20
  readonly container: Container;
23
- private readonly eventService;
24
21
  /**
25
22
  * @internal
26
23
  */
27
24
  protected constructor();
28
25
  /**
29
- * To report what the action is doing. The message is emitted as an {@link ActionEvent}, so it is
30
- * picked up by whatever listeners the run has, rather than written straight to the console.
26
+ * To report what the action is doing for `diff`, the diff its `handle()` was given. The message is
27
+ * emitted as an {@link ActionEvent}, so it is picked up by whatever listeners the command has,
28
+ * rather than written straight to the console.
31
29
  */
32
- log(message: string, metadata?: Record<string, unknown>): void;
30
+ log(diff: Diff, message: string, metadata?: Record<string, unknown>): void;
33
31
  }
@@ -2,12 +2,9 @@ import { ActionEvent } from '../../events/index.js';
2
2
  import { EventService } from '../../services/event/event.service.js';
3
3
  import { Container } from '../container/container.js';
4
4
  /**
5
- * An optional base class for a model or resource action.
6
- *
7
- * Extending it is a convenience, not a requirement - an action only has to implement
8
- * {@link IModelAction} or {@link IResourceAction}. What you get here is the {@link Container},
9
- * and a `log()` that goes through Octo's event stream so your output lands in the run's report
10
- * alongside everything else.
5
+ * The base class of every resource action: an action implementing {@link IResourceAction} must extend
6
+ * it. It gives the action the {@link Container}, and a `log()` that goes through Octo's event stream so
7
+ * its output lands in the command's report alongside everything else.
11
8
  *
12
9
  * @example
13
10
  * ```ts
@@ -23,21 +20,18 @@ export class ANodeAction {
23
20
  */
24
21
  constructor() {
25
22
  this.container = Container.getInstance();
26
- this.eventService = this.container.get(EventService);
27
23
  }
28
24
  /**
29
- * To report what the action is doing. The message is emitted as an {@link ActionEvent}, so it is
30
- * picked up by whatever listeners the run has, rather than written straight to the console.
25
+ * To report what the action is doing for `diff`, the diff its `handle()` was given. The message is
26
+ * emitted as an {@link ActionEvent}, so it is picked up by whatever listeners the command has,
27
+ * rather than written straight to the console.
31
28
  */
32
- log(message, metadata = {}) {
33
- this.eventService
34
- .then((eventService) => eventService.emit(new ActionEvent(this.constructor.name, {
29
+ log(diff, message, metadata = {}) {
30
+ EventService.getInstance().emit(new ActionEvent(this.constructor.name, {
31
+ diff: { action: diff.action, field: diff.field, node: diff.node.getContext() },
35
32
  message,
36
33
  metadata,
37
- })))
38
- .catch((error) => {
39
- console.error(`Unable to log action "${this.constructor.name}" with message "${message}"`, error);
40
- });
34
+ }));
41
35
  }
42
36
  }
43
37
  //# sourceMappingURL=node-action.abstract.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"node-action.abstract.js","sourceRoot":"","sources":["../../../src/functions/node/node-action.abstract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,OAAgB,WAAW;IAO/B;;OAEG;IACH;QACE,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;QACzC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACvD,CAAC;IAED;;;OAGG;IACH,GAAG,CAAC,OAAe,EAAE,WAAoC,EAAE;QACzD,IAAI,CAAC,YAAY;aACd,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE,CACrB,YAAY,CAAC,IAAI,CACf,IAAI,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE;YACrC,OAAO;YACP,QAAQ;SACT,CAAC,CACH,CACF;aACA,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACf,OAAO,CAAC,KAAK,CAAC,yBAAyB,IAAI,CAAC,WAAW,CAAC,IAAI,mBAAmB,OAAO,GAAG,EAAE,KAAK,CAAC,CAAC;QACpG,CAAC,CAAC,CAAC;IACP,CAAC;CACF"}
1
+ {"version":3,"file":"node-action.abstract.js","sourceRoot":"","sources":["../../../src/functions/node/node-action.abstract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAGtD;;;;;;;;;;;;GAYG;AACH,MAAM,OAAgB,WAAW;IAM/B;;OAEG;IACH;QACE,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;IAC3C,CAAC;IAED;;;;OAIG;IACH,GAAG,CAAC,IAAU,EAAE,OAAe,EAAE,WAAoC,EAAE;QACrE,YAAY,CAAC,WAAW,EAAE,CAAC,IAAI,CAC7B,IAAI,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE;YACrC,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE;YAC9E,OAAO;YACP,QAAQ;SACT,CAAC,CACH,CAAC;IACJ,CAAC;CACF"}