@empire-builder-kit/nx 1.0.0-beta.10

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 (243) hide show
  1. package/LICENSE +201 -0
  2. package/NOTICE +5 -0
  3. package/README.md +34 -0
  4. package/executors.json +74 -0
  5. package/generators.json +40 -0
  6. package/migrations/standard-pre-v1-to-v1.md +11 -0
  7. package/package.json +80 -0
  8. package/src/blueprints/execution.d.ts +31 -0
  9. package/src/blueprints/execution.js +166 -0
  10. package/src/blueprints/execution.js.map +1 -0
  11. package/src/blueprints/index.d.ts +5 -0
  12. package/src/blueprints/index.js +9 -0
  13. package/src/blueprints/index.js.map +1 -0
  14. package/src/blueprints/inputs.d.ts +43 -0
  15. package/src/blueprints/inputs.js +103 -0
  16. package/src/blueprints/inputs.js.map +1 -0
  17. package/src/blueprints/manifest.d.ts +281 -0
  18. package/src/blueprints/manifest.js +441 -0
  19. package/src/blueprints/manifest.js.map +1 -0
  20. package/src/blueprints/resolver.d.ts +28 -0
  21. package/src/blueprints/resolver.js +218 -0
  22. package/src/blueprints/resolver.js.map +1 -0
  23. package/src/blueprints/transitions.d.ts +20 -0
  24. package/src/blueprints/transitions.js +61 -0
  25. package/src/blueprints/transitions.js.map +1 -0
  26. package/src/executors/deploy/deploy.d.ts +4 -0
  27. package/src/executors/deploy/deploy.js +6 -0
  28. package/src/executors/deploy/deploy.js.map +1 -0
  29. package/src/executors/deployment-plan/deployment-plan.d.ts +9 -0
  30. package/src/executors/deployment-plan/deployment-plan.js +50 -0
  31. package/src/executors/deployment-plan/deployment-plan.js.map +1 -0
  32. package/src/executors/deployment-plan/schema.json +24 -0
  33. package/src/executors/dev/dev.d.ts +4 -0
  34. package/src/executors/dev/dev.js +6 -0
  35. package/src/executors/dev/dev.js.map +1 -0
  36. package/src/executors/dev-doctor/dev-doctor.d.ts +31 -0
  37. package/src/executors/dev-doctor/dev-doctor.js +260 -0
  38. package/src/executors/dev-doctor/dev-doctor.js.map +1 -0
  39. package/src/executors/dev-doctor/schema.json +17 -0
  40. package/src/executors/dev-setup/dev-setup.d.ts +11 -0
  41. package/src/executors/dev-setup/dev-setup.js +454 -0
  42. package/src/executors/dev-setup/dev-setup.js.map +1 -0
  43. package/src/executors/dev-setup/schema.json +16 -0
  44. package/src/executors/fleet/fleet.d.ts +62 -0
  45. package/src/executors/fleet/fleet.js +613 -0
  46. package/src/executors/fleet/fleet.js.map +1 -0
  47. package/src/executors/fleet/schema.json +37 -0
  48. package/src/executors/foundation-preflight/foundation-preflight.d.ts +15 -0
  49. package/src/executors/foundation-preflight/foundation-preflight.js +116 -0
  50. package/src/executors/foundation-preflight/foundation-preflight.js.map +1 -0
  51. package/src/executors/foundation-preflight/schema.json +31 -0
  52. package/src/executors/foundation-profile-preflight/foundation-profile-preflight.d.ts +8 -0
  53. package/src/executors/foundation-profile-preflight/foundation-profile-preflight.js +41 -0
  54. package/src/executors/foundation-profile-preflight/foundation-profile-preflight.js.map +1 -0
  55. package/src/executors/foundation-profile-preflight/schema.json +21 -0
  56. package/src/executors/foundation-remove-preflight/foundation-remove-preflight.d.ts +13 -0
  57. package/src/executors/foundation-remove-preflight/foundation-remove-preflight.js +69 -0
  58. package/src/executors/foundation-remove-preflight/foundation-remove-preflight.js.map +1 -0
  59. package/src/executors/foundation-remove-preflight/schema.json +17 -0
  60. package/src/executors/github-bootstrap/github-bootstrap.d.ts +8 -0
  61. package/src/executors/github-bootstrap/github-bootstrap.js +30 -0
  62. package/src/executors/github-bootstrap/github-bootstrap.js.map +1 -0
  63. package/src/executors/github-bootstrap/schema.json +25 -0
  64. package/src/executors/refresh/refresh.d.ts +4 -0
  65. package/src/executors/refresh/refresh.js +6 -0
  66. package/src/executors/refresh/refresh.js.map +1 -0
  67. package/src/executors/remove/remove.d.ts +4 -0
  68. package/src/executors/remove/remove.js +6 -0
  69. package/src/executors/remove/remove.js.map +1 -0
  70. package/src/executors/sst-lifecycle/run-sst-command.d.ts +31 -0
  71. package/src/executors/sst-lifecycle/run-sst-command.js +226 -0
  72. package/src/executors/sst-lifecycle/run-sst-command.js.map +1 -0
  73. package/src/executors/sst-lifecycle/schema.json +45 -0
  74. package/src/executors/unlock/unlock.d.ts +4 -0
  75. package/src/executors/unlock/unlock.js +6 -0
  76. package/src/executors/unlock/unlock.js.map +1 -0
  77. package/src/executors/work-markers/schema.json +14 -0
  78. package/src/executors/work-markers/work-markers.d.ts +6 -0
  79. package/src/executors/work-markers/work-markers.js +20 -0
  80. package/src/executors/work-markers/work-markers.js.map +1 -0
  81. package/src/foundation/aurora-logical-database.d.ts +76 -0
  82. package/src/foundation/aurora-logical-database.js +419 -0
  83. package/src/foundation/aurora-logical-database.js.map +1 -0
  84. package/src/foundation/discovery.d.ts +55 -0
  85. package/src/foundation/discovery.js +55 -0
  86. package/src/foundation/discovery.js.map +1 -0
  87. package/src/foundation/index.d.ts +6 -0
  88. package/src/foundation/index.js +10 -0
  89. package/src/foundation/index.js.map +1 -0
  90. package/src/foundation/local-database-contract.d.ts +30 -0
  91. package/src/foundation/local-database-contract.js +75 -0
  92. package/src/foundation/local-database-contract.js.map +1 -0
  93. package/src/foundation/preflight.d.ts +31 -0
  94. package/src/foundation/preflight.js +114 -0
  95. package/src/foundation/preflight.js.map +1 -0
  96. package/src/foundation/provision-database-bindings.d.ts +30 -0
  97. package/src/foundation/provision-database-bindings.js +113 -0
  98. package/src/foundation/provision-database-bindings.js.map +1 -0
  99. package/src/foundation/provision-logical-database.d.ts +26 -0
  100. package/src/foundation/provision-logical-database.js +163 -0
  101. package/src/foundation/provision-logical-database.js.map +1 -0
  102. package/src/foundation/requirements.d.ts +37 -0
  103. package/src/foundation/requirements.js +141 -0
  104. package/src/foundation/requirements.js.map +1 -0
  105. package/src/foundation/stages.d.ts +14 -0
  106. package/src/foundation/stages.js +51 -0
  107. package/src/foundation/stages.js.map +1 -0
  108. package/src/generators/function/function.d.ts +13 -0
  109. package/src/generators/function/function.js +71 -0
  110. package/src/generators/function/function.js.map +1 -0
  111. package/src/generators/function/schema.d.ts +5 -0
  112. package/src/generators/function/schema.json +20 -0
  113. package/src/generators/job/job.d.ts +4 -0
  114. package/src/generators/job/job.js +5 -0
  115. package/src/generators/job/job.js.map +1 -0
  116. package/src/generators/preset/generator.d.ts +5 -0
  117. package/src/generators/preset/generator.js +41 -0
  118. package/src/generators/preset/generator.js.map +1 -0
  119. package/src/generators/preset/schema.d.ts +4 -0
  120. package/src/generators/preset/schema.json +22 -0
  121. package/src/generators/preset/workspace-files.d.ts +18 -0
  122. package/src/generators/preset/workspace-files.js +1605 -0
  123. package/src/generators/preset/workspace-files.js.map +1 -0
  124. package/src/generators/repository-policy/repository-policy.d.ts +4 -0
  125. package/src/generators/repository-policy/repository-policy.js +107 -0
  126. package/src/generators/repository-policy/repository-policy.js.map +1 -0
  127. package/src/generators/repository-policy/schema.d.ts +18 -0
  128. package/src/generators/repository-policy/schema.json +46 -0
  129. package/src/generators/service/service.d.ts +4 -0
  130. package/src/generators/service/service.js +5 -0
  131. package/src/generators/service/service.js.map +1 -0
  132. package/src/generators/slice/schema.d.ts +7 -0
  133. package/src/generators/slice/schema.json +38 -0
  134. package/src/generators/slice/slice.d.ts +26 -0
  135. package/src/generators/slice/slice.js +1698 -0
  136. package/src/generators/slice/slice.js.map +1 -0
  137. package/src/generators/upgrade/schema.d.ts +8 -0
  138. package/src/generators/upgrade/schema.json +31 -0
  139. package/src/generators/upgrade/upgrade.d.ts +27 -0
  140. package/src/generators/upgrade/upgrade.js +682 -0
  141. package/src/generators/upgrade/upgrade.js.map +1 -0
  142. package/src/generators/workload/schema.d.ts +6 -0
  143. package/src/generators/workload/schema.json +21 -0
  144. package/src/generators/workload/workload.d.ts +16 -0
  145. package/src/generators/workload/workload.js +157 -0
  146. package/src/generators/workload/workload.js.map +1 -0
  147. package/src/git-policy/action-pins.d.ts +28 -0
  148. package/src/git-policy/action-pins.js +35 -0
  149. package/src/git-policy/action-pins.js.map +1 -0
  150. package/src/git-policy/github-bootstrap.d.ts +23 -0
  151. package/src/git-policy/github-bootstrap.js +759 -0
  152. package/src/git-policy/github-bootstrap.js.map +1 -0
  153. package/src/git-policy/index.d.ts +3 -0
  154. package/src/git-policy/index.js +7 -0
  155. package/src/git-policy/index.js.map +1 -0
  156. package/src/git-policy/routing.d.ts +15 -0
  157. package/src/git-policy/routing.js +77 -0
  158. package/src/git-policy/routing.js.map +1 -0
  159. package/src/index.d.ts +8 -0
  160. package/src/index.js +12 -0
  161. package/src/index.js.map +1 -0
  162. package/src/local-dev/contracts.d.ts +31 -0
  163. package/src/local-dev/contracts.js +126 -0
  164. package/src/local-dev/contracts.js.map +1 -0
  165. package/src/local-dev/effects.d.ts +16 -0
  166. package/src/local-dev/effects.js +63 -0
  167. package/src/local-dev/effects.js.map +1 -0
  168. package/src/local-dev/gateway-daemon.d.ts +4 -0
  169. package/src/local-dev/gateway-daemon.js +39 -0
  170. package/src/local-dev/gateway-daemon.js.map +1 -0
  171. package/src/local-dev/gateway.d.ts +60 -0
  172. package/src/local-dev/gateway.js +368 -0
  173. package/src/local-dev/gateway.js.map +1 -0
  174. package/src/local-dev/identity.d.ts +16 -0
  175. package/src/local-dev/identity.js +101 -0
  176. package/src/local-dev/identity.js.map +1 -0
  177. package/src/local-dev/index.d.ts +7 -0
  178. package/src/local-dev/index.js +11 -0
  179. package/src/local-dev/index.js.map +1 -0
  180. package/src/local-dev/portless.d.ts +15 -0
  181. package/src/local-dev/portless.js +115 -0
  182. package/src/local-dev/portless.js.map +1 -0
  183. package/src/local-dev/ports.d.ts +10 -0
  184. package/src/local-dev/ports.js +39 -0
  185. package/src/local-dev/ports.js.map +1 -0
  186. package/src/local-dev/proxy.d.ts +37 -0
  187. package/src/local-dev/proxy.js +271 -0
  188. package/src/local-dev/proxy.js.map +1 -0
  189. package/src/local-dev/tls.d.ts +24 -0
  190. package/src/local-dev/tls.js +294 -0
  191. package/src/local-dev/tls.js.map +1 -0
  192. package/src/ownership/composition.d.ts +16 -0
  193. package/src/ownership/composition.js +125 -0
  194. package/src/ownership/composition.js.map +1 -0
  195. package/src/ownership/foundation-record.d.ts +66 -0
  196. package/src/ownership/foundation-record.js +108 -0
  197. package/src/ownership/foundation-record.js.map +1 -0
  198. package/src/ownership/hash.d.ts +2 -0
  199. package/src/ownership/hash.js +10 -0
  200. package/src/ownership/hash.js.map +1 -0
  201. package/src/ownership/index.d.ts +6 -0
  202. package/src/ownership/index.js +10 -0
  203. package/src/ownership/index.js.map +1 -0
  204. package/src/ownership/json-ownership.d.ts +13 -0
  205. package/src/ownership/json-ownership.js +147 -0
  206. package/src/ownership/json-ownership.js.map +1 -0
  207. package/src/ownership/record.d.ts +186 -0
  208. package/src/ownership/record.js +336 -0
  209. package/src/ownership/record.js.map +1 -0
  210. package/src/ownership/workspace-record.d.ts +66 -0
  211. package/src/ownership/workspace-record.js +108 -0
  212. package/src/ownership/workspace-record.js.map +1 -0
  213. package/src/repository-policy/aurora-preflight.d.ts +15 -0
  214. package/src/repository-policy/aurora-preflight.js +45 -0
  215. package/src/repository-policy/aurora-preflight.js.map +1 -0
  216. package/src/repository-policy/deployment-plan.d.ts +24 -0
  217. package/src/repository-policy/deployment-plan.js +124 -0
  218. package/src/repository-policy/deployment-plan.js.map +1 -0
  219. package/src/repository-policy/foundation-profile.d.ts +20 -0
  220. package/src/repository-policy/foundation-profile.js +45 -0
  221. package/src/repository-policy/foundation-profile.js.map +1 -0
  222. package/src/repository-policy/index.d.ts +4 -0
  223. package/src/repository-policy/index.js +8 -0
  224. package/src/repository-policy/index.js.map +1 -0
  225. package/src/repository-policy/policy.d.ts +59 -0
  226. package/src/repository-policy/policy.js +274 -0
  227. package/src/repository-policy/policy.js.map +1 -0
  228. package/src/schemas/blueprint-input-schema-v1.json +23 -0
  229. package/src/schemas/blueprint-v1.json +186 -0
  230. package/src/schemas/foundation-ownership-v2.json +42 -0
  231. package/src/schemas/foundation-requirement-v1.json +32 -0
  232. package/src/schemas/generated-ownership-v2.json +117 -0
  233. package/src/schemas/repository-policy-v1.json +58 -0
  234. package/src/schemas/workspace-ownership-v2.json +42 -0
  235. package/src/validation.d.ts +14 -0
  236. package/src/validation.js +14 -0
  237. package/src/validation.js.map +1 -0
  238. package/src/work-markers/index.d.ts +1 -0
  239. package/src/work-markers/index.js +5 -0
  240. package/src/work-markers/index.js.map +1 -0
  241. package/src/work-markers/work-markers.d.ts +39 -0
  242. package/src/work-markers/work-markers.js +359 -0
  243. package/src/work-markers/work-markers.js.map +1 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hash.js","sourceRoot":"","sources":["../../../../../packages/nx/src/ownership/hash.ts"],"names":[],"mappings":";;;AAIA,oDAEC;AAND,6CAAyC;AAE5B,QAAA,8BAA8B,GAAG,gBAAgB,CAAC;AAE/D,SAAgB,oBAAoB,CAAC,QAAgB;IACnD,OAAO,IAAA,wBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACrE,CAAC"}
@@ -0,0 +1,6 @@
1
+ export * from './composition.js';
2
+ export * from './foundation-record.js';
3
+ export * from './hash.js';
4
+ export * from './json-ownership.js';
5
+ export * from './record.js';
6
+ export * from './workspace-record.js';
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./composition.js"), exports);
5
+ tslib_1.__exportStar(require("./foundation-record.js"), exports);
6
+ tslib_1.__exportStar(require("./hash.js"), exports);
7
+ tslib_1.__exportStar(require("./json-ownership.js"), exports);
8
+ tslib_1.__exportStar(require("./record.js"), exports);
9
+ tslib_1.__exportStar(require("./workspace-record.js"), exports);
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/nx/src/ownership/index.ts"],"names":[],"mappings":";;;AAAA,2DAAiC;AACjC,iEAAuC;AACvC,oDAA0B;AAC1B,8DAAoC;AACpC,sDAA4B;AAC5B,gEAAsC"}
@@ -0,0 +1,13 @@
1
+ export declare const MANAGED_JSON_POINTER_PATTERN: RegExp;
2
+ export interface ManagedJsonOwnership {
3
+ managedJsonPointers?: readonly string[];
4
+ }
5
+ export interface ManagedJsonPointerTransition {
6
+ claimed: string[];
7
+ conflictingClaims: string[];
8
+ released: string[];
9
+ }
10
+ export declare function analyzeManagedJsonPointerTransition(currentContents: string, targetContents: string, currentPointers: readonly string[], targetPointers: readonly string[]): ManagedJsonPointerTransition;
11
+ export declare function hashOwnedContent(contents: string, ownership: ManagedJsonOwnership): string;
12
+ export declare function assertManagedJsonPointersExist(contents: string, pointers: readonly string[], label?: string): void;
13
+ export declare function mergeManagedJsonContents(currentContents: string, targetContents: string, targetPointers: readonly string[]): string;
@@ -0,0 +1,147 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MANAGED_JSON_POINTER_PATTERN = void 0;
4
+ exports.analyzeManagedJsonPointerTransition = analyzeManagedJsonPointerTransition;
5
+ exports.hashOwnedContent = hashOwnedContent;
6
+ exports.assertManagedJsonPointersExist = assertManagedJsonPointersExist;
7
+ exports.mergeManagedJsonContents = mergeManagedJsonContents;
8
+ const hash_js_1 = require("./hash.js");
9
+ exports.MANAGED_JSON_POINTER_PATTERN = /^(?:\/(?:[^~/]|~[01])*)+$/;
10
+ function pointerSegments(pointer) {
11
+ if (!exports.MANAGED_JSON_POINTER_PATTERN.test(pointer)) {
12
+ throw new Error(`Invalid managed JSON pointer: ${pointer}.`);
13
+ }
14
+ return pointer
15
+ .slice(1)
16
+ .split('/')
17
+ .map((segment) => segment.replace(/~1/g, '/').replace(/~0/g, '~'));
18
+ }
19
+ function parseJson(contents, label) {
20
+ try {
21
+ return JSON.parse(contents);
22
+ }
23
+ catch (error) {
24
+ throw new Error(`${label} is not valid JSON: ${error instanceof Error ? error.message : String(error)}`);
25
+ }
26
+ }
27
+ function isContainer(value) {
28
+ return typeof value === 'object' && value !== null;
29
+ }
30
+ function resolvePointer(document, pointer) {
31
+ let current = document;
32
+ for (const segment of pointerSegments(pointer)) {
33
+ if (!isContainer(current) ||
34
+ !Object.prototype.hasOwnProperty.call(current, segment)) {
35
+ return { exists: false };
36
+ }
37
+ current = current[segment];
38
+ }
39
+ return { exists: true, value: current };
40
+ }
41
+ function pointerParent(document, pointer) {
42
+ const segments = pointerSegments(pointer);
43
+ const key = segments.pop();
44
+ if (key === undefined) {
45
+ throw new Error('Managed JSON pointers cannot address the document root.');
46
+ }
47
+ let current = document;
48
+ for (const segment of segments) {
49
+ if (!isContainer(current) || Array.isArray(current)) {
50
+ throw new Error(`Managed JSON pointer ${pointer} traverses a non-object value.`);
51
+ }
52
+ if (!Object.prototype.hasOwnProperty.call(current, segment)) {
53
+ current[segment] = {};
54
+ }
55
+ current = current[segment];
56
+ }
57
+ if (!isContainer(current) || Array.isArray(current)) {
58
+ throw new Error(`Managed JSON pointer ${pointer} has a non-object parent.`);
59
+ }
60
+ return { key, parent: current };
61
+ }
62
+ function stableValue(value) {
63
+ if (Array.isArray(value))
64
+ return value.map(stableValue);
65
+ if (!isContainer(value))
66
+ return value;
67
+ return Object.fromEntries(Object.keys(value)
68
+ .sort()
69
+ .map((key) => [key, stableValue(value[key])]));
70
+ }
71
+ function stableJson(value) {
72
+ return JSON.stringify(stableValue(value));
73
+ }
74
+ function analyzeManagedJsonPointerTransition(currentContents, targetContents, currentPointers, targetPointers) {
75
+ const current = parseJson(currentContents, 'Current managed JSON file');
76
+ const target = parseJson(targetContents, 'Target managed JSON file');
77
+ assertManagedJsonPointersExist(targetContents, targetPointers, 'Target managed JSON file');
78
+ const currentPointerSet = new Set(currentPointers);
79
+ const targetPointerSet = new Set(targetPointers);
80
+ const claimed = [];
81
+ const conflictingClaims = [];
82
+ const released = currentPointers.filter((pointer) => !targetPointerSet.has(pointer));
83
+ for (const pointer of targetPointers) {
84
+ if (currentPointerSet.has(pointer))
85
+ continue;
86
+ const currentValue = resolvePointer(current, pointer);
87
+ const targetValue = resolvePointer(target, pointer);
88
+ if (!currentValue.exists) {
89
+ try {
90
+ pointerParent(structuredClone(current), pointer);
91
+ claimed.push(pointer);
92
+ }
93
+ catch {
94
+ conflictingClaims.push(pointer);
95
+ }
96
+ continue;
97
+ }
98
+ if (stableJson(currentValue.value) === stableJson(targetValue.value)) {
99
+ claimed.push(pointer);
100
+ }
101
+ else {
102
+ conflictingClaims.push(pointer);
103
+ }
104
+ }
105
+ claimed.sort();
106
+ conflictingClaims.sort();
107
+ released.sort();
108
+ return { claimed, conflictingClaims, released };
109
+ }
110
+ function hashOwnedContent(contents, ownership) {
111
+ const pointers = ownership.managedJsonPointers;
112
+ if (!pointers)
113
+ return (0, hash_js_1.hashGeneratedContent)(contents);
114
+ const document = parseJson(contents, 'Managed JSON file');
115
+ const projection = [...pointers].sort().map((pointer) => {
116
+ const resolved = resolvePointer(document, pointer);
117
+ return {
118
+ exists: resolved.exists,
119
+ pointer,
120
+ ...(resolved.exists ? { value: resolved.value } : {}),
121
+ };
122
+ });
123
+ return (0, hash_js_1.hashGeneratedContent)(stableJson(projection));
124
+ }
125
+ function assertManagedJsonPointersExist(contents, pointers, label = 'Managed JSON file') {
126
+ const document = parseJson(contents, label);
127
+ for (const pointer of pointers) {
128
+ if (!resolvePointer(document, pointer).exists) {
129
+ throw new Error(`${label} does not contain owned pointer ${pointer}.`);
130
+ }
131
+ }
132
+ }
133
+ function mergeManagedJsonContents(currentContents, targetContents, targetPointers) {
134
+ const current = parseJson(currentContents, 'Current managed JSON file');
135
+ const target = parseJson(targetContents, 'Target managed JSON file');
136
+ assertManagedJsonPointersExist(targetContents, targetPointers, 'Target managed JSON file');
137
+ const merged = structuredClone(current);
138
+ for (const pointer of targetPointers) {
139
+ const resolved = resolvePointer(target, pointer);
140
+ const { key, parent } = pointerParent(merged, pointer);
141
+ parent[key] = structuredClone(resolved.value);
142
+ }
143
+ if (stableJson(current) === stableJson(merged))
144
+ return currentContents;
145
+ return `${JSON.stringify(merged, null, 2)}\n`;
146
+ }
147
+ //# sourceMappingURL=json-ownership.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-ownership.js","sourceRoot":"","sources":["../../../../../packages/nx/src/ownership/json-ownership.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,186 @@
1
+ import { type FoundationRequirement } from '../foundation/index.js';
2
+ import { type ValidationIssue, type ValidationResult } from '../validation.js';
3
+ export declare const GENERATED_OWNERSHIP_SCHEMA_VERSION: 2;
4
+ export declare const GENERATED_PATH_MODES: readonly ["managed", "seeded"];
5
+ export declare const GENERATED_PATH_ORIGINS: readonly ["blueprint", "composition", "framework"];
6
+ export type GeneratedPathMode = (typeof GENERATED_PATH_MODES)[number];
7
+ export type GeneratedPathOrigin = (typeof GENERATED_PATH_ORIGINS)[number];
8
+ export interface GeneratedPathOwnership {
9
+ managedJsonPointers?: string[];
10
+ mode: GeneratedPathMode;
11
+ origin: GeneratedPathOrigin;
12
+ path: string;
13
+ sha256: string;
14
+ }
15
+ export interface GeneratedMigrationHistoryEntry {
16
+ managedPlanDigest: string;
17
+ migrationId: string;
18
+ sourceVersion: string;
19
+ targetVersion: string;
20
+ }
21
+ export declare function validateManagedJsonPointers(entry: Record<string, unknown>, path: string, issues: ValidationIssue[]): void;
22
+ export declare const managedJsonPointersSchema: {
23
+ readonly items: {
24
+ readonly pattern: "^(?:/(?:[^~/]|~[01])*)+$";
25
+ readonly type: "string";
26
+ };
27
+ readonly minItems: 1;
28
+ readonly type: "array";
29
+ readonly uniqueItems: true;
30
+ };
31
+ export interface GeneratedOwnershipRecord {
32
+ blueprint: {
33
+ name: string;
34
+ version: string;
35
+ };
36
+ contracts: {
37
+ consumes: string[];
38
+ publishes: string[];
39
+ };
40
+ foundation: FoundationRequirement;
41
+ inputs: Record<string, unknown>;
42
+ migrationHistory?: GeneratedMigrationHistoryEntry[];
43
+ paths: GeneratedPathOwnership[];
44
+ projects: string[];
45
+ schemaVersion: typeof GENERATED_OWNERSHIP_SCHEMA_VERSION;
46
+ slice: string;
47
+ verification: string[];
48
+ }
49
+ export declare function validateGeneratedOwnershipRecord(value: unknown): ValidationResult<GeneratedOwnershipRecord>;
50
+ export declare const generatedOwnershipSchema: {
51
+ readonly $id: "https://empirebuilderkit.dev/schemas/generated-ownership-v2.json";
52
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
53
+ readonly additionalProperties: false;
54
+ readonly properties: {
55
+ readonly blueprint: {
56
+ readonly additionalProperties: false;
57
+ readonly properties: {
58
+ readonly name: {
59
+ readonly minLength: 1;
60
+ readonly type: "string";
61
+ };
62
+ readonly version: {
63
+ readonly minLength: 1;
64
+ readonly type: "string";
65
+ };
66
+ };
67
+ readonly required: readonly ["name", "version"];
68
+ readonly type: "object";
69
+ };
70
+ readonly contracts: {
71
+ readonly additionalProperties: false;
72
+ readonly properties: {
73
+ readonly consumes: {
74
+ readonly items: {
75
+ readonly minLength: 1;
76
+ readonly type: "string";
77
+ };
78
+ readonly type: "array";
79
+ };
80
+ readonly publishes: {
81
+ readonly items: {
82
+ readonly minLength: 1;
83
+ readonly type: "string";
84
+ };
85
+ readonly type: "array";
86
+ };
87
+ };
88
+ readonly required: readonly ["publishes", "consumes"];
89
+ readonly type: "object";
90
+ };
91
+ readonly foundation: {
92
+ readonly $ref: "https://empirebuilderkit.dev/schemas/foundation-requirement-v1.json";
93
+ };
94
+ readonly inputs: {
95
+ readonly type: "object";
96
+ };
97
+ readonly migrationHistory: {
98
+ readonly items: {
99
+ readonly additionalProperties: false;
100
+ readonly properties: {
101
+ readonly managedPlanDigest: {
102
+ readonly pattern: string;
103
+ readonly type: "string";
104
+ };
105
+ readonly migrationId: {
106
+ readonly minLength: 1;
107
+ readonly type: "string";
108
+ };
109
+ readonly sourceVersion: {
110
+ readonly pattern: string;
111
+ readonly type: "string";
112
+ };
113
+ readonly targetVersion: {
114
+ readonly pattern: string;
115
+ readonly type: "string";
116
+ };
117
+ };
118
+ readonly required: readonly ["sourceVersion", "targetVersion", "migrationId", "managedPlanDigest"];
119
+ readonly type: "object";
120
+ };
121
+ readonly minItems: 1;
122
+ readonly type: "array";
123
+ readonly uniqueItems: true;
124
+ };
125
+ readonly paths: {
126
+ readonly items: {
127
+ readonly additionalProperties: false;
128
+ readonly properties: {
129
+ readonly managedJsonPointers: {
130
+ readonly items: {
131
+ readonly pattern: "^(?:/(?:[^~/]|~[01])*)+$";
132
+ readonly type: "string";
133
+ };
134
+ readonly minItems: 1;
135
+ readonly type: "array";
136
+ readonly uniqueItems: true;
137
+ };
138
+ readonly mode: {
139
+ readonly enum: readonly ["managed", "seeded"];
140
+ };
141
+ readonly origin: {
142
+ readonly enum: readonly ["blueprint", "composition", "framework"];
143
+ };
144
+ readonly path: {
145
+ readonly minLength: 1;
146
+ readonly not: {
147
+ readonly pattern: "(^[\\\\/])|(^|[\\\\/])\\.\\.([\\\\/]|$)";
148
+ };
149
+ readonly type: "string";
150
+ };
151
+ readonly sha256: {
152
+ readonly pattern: "^[a-f0-9]{64}$";
153
+ readonly type: "string";
154
+ };
155
+ };
156
+ readonly required: readonly ["path", "mode", "origin", "sha256"];
157
+ readonly type: "object";
158
+ };
159
+ readonly type: "array";
160
+ };
161
+ readonly projects: {
162
+ readonly items: {
163
+ readonly minLength: 1;
164
+ readonly type: "string";
165
+ };
166
+ readonly type: "array";
167
+ };
168
+ readonly schemaVersion: {
169
+ readonly const: 2;
170
+ };
171
+ readonly slice: {
172
+ readonly minLength: 1;
173
+ readonly type: "string";
174
+ };
175
+ readonly verification: {
176
+ readonly items: {
177
+ readonly minLength: 1;
178
+ readonly type: "string";
179
+ };
180
+ readonly type: "array";
181
+ };
182
+ };
183
+ readonly required: readonly ["schemaVersion", "slice", "blueprint", "foundation", "inputs", "paths", "projects", "verification", "contracts"];
184
+ readonly title: "Empire Builder Kit Generated Ownership Record v2";
185
+ readonly type: "object";
186
+ };