@start9labs/start-sdk 0.3.6-alpha7 → 0.3.6-alpha8

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 (196) hide show
  1. package/cjs/lib/StartSdk.d.ts +2 -17
  2. package/cjs/lib/StartSdk.js +2 -8
  3. package/cjs/lib/StartSdk.js.map +1 -1
  4. package/cjs/lib/backup/Backups.js +2 -1
  5. package/cjs/lib/backup/Backups.js.map +1 -1
  6. package/cjs/lib/backup/setupBackups.d.ts +1 -1
  7. package/cjs/lib/backup/setupBackups.js +2 -1
  8. package/cjs/lib/backup/setupBackups.js.map +1 -1
  9. package/cjs/lib/config/setupConfig.js +2 -1
  10. package/cjs/lib/config/setupConfig.js.map +1 -1
  11. package/cjs/lib/exver/index.d.ts +2 -2
  12. package/cjs/lib/exver/index.js +1 -0
  13. package/cjs/lib/exver/index.js.map +1 -1
  14. package/cjs/lib/health/HealthCheck.js +2 -1
  15. package/cjs/lib/health/HealthCheck.js.map +1 -1
  16. package/cjs/lib/health/checkFns/checkWebUrl.js +2 -1
  17. package/cjs/lib/health/checkFns/checkWebUrl.js.map +1 -1
  18. package/cjs/lib/index.d.ts +1 -0
  19. package/cjs/lib/index.js +4 -0
  20. package/cjs/lib/index.js.map +1 -1
  21. package/cjs/lib/inits/migrations/Migration.d.ts +14 -27
  22. package/cjs/lib/inits/migrations/Migration.js +10 -3
  23. package/cjs/lib/inits/migrations/Migration.js.map +1 -1
  24. package/cjs/lib/inits/migrations/setupMigrations.d.ts +10 -5
  25. package/cjs/lib/inits/migrations/setupMigrations.js +90 -26
  26. package/cjs/lib/inits/migrations/setupMigrations.js.map +1 -1
  27. package/cjs/lib/inits/setupInit.d.ts +2 -2
  28. package/cjs/lib/inits/setupInit.js +29 -5
  29. package/cjs/lib/inits/setupInit.js.map +1 -1
  30. package/cjs/lib/inits/setupInstall.d.ts +1 -1
  31. package/cjs/lib/inits/setupInstall.js +4 -5
  32. package/cjs/lib/inits/setupInstall.js.map +1 -1
  33. package/cjs/lib/inits/setupUninstall.d.ts +1 -1
  34. package/cjs/lib/inits/setupUninstall.js +1 -1
  35. package/cjs/lib/inits/setupUninstall.js.map +1 -1
  36. package/cjs/lib/mainFn/CommandController.d.ts +7 -4
  37. package/cjs/lib/mainFn/CommandController.js +18 -8
  38. package/cjs/lib/mainFn/CommandController.js.map +1 -1
  39. package/cjs/lib/mainFn/Daemon.d.ts +4 -2
  40. package/cjs/lib/mainFn/Daemon.js +7 -2
  41. package/cjs/lib/mainFn/Daemon.js.map +1 -1
  42. package/cjs/lib/mainFn/Daemons.d.ts +2 -2
  43. package/cjs/lib/mainFn/HealthDaemon.d.ts +6 -3
  44. package/cjs/lib/mainFn/HealthDaemon.js +23 -35
  45. package/cjs/lib/mainFn/HealthDaemon.js.map +1 -1
  46. package/cjs/lib/manifest/ManifestTypes.d.ts +1 -10
  47. package/cjs/lib/manifest/setupManifest.d.ts +2 -2
  48. package/cjs/lib/manifest/setupManifest.js +6 -2
  49. package/cjs/lib/manifest/setupManifest.js.map +1 -1
  50. package/cjs/lib/osBindings/Manifest.d.ts +2 -0
  51. package/cjs/lib/osBindings/PackageDataEntry.d.ts +2 -0
  52. package/cjs/lib/osBindings/SetDataVersionParams.d.ts +3 -0
  53. package/cjs/lib/osBindings/SetDataVersionParams.js +4 -0
  54. package/cjs/lib/osBindings/SetDataVersionParams.js.map +1 -0
  55. package/cjs/lib/osBindings/index.d.ts +1 -3
  56. package/cjs/lib/s9pk/merkleArchive/varint.js +2 -1
  57. package/cjs/lib/s9pk/merkleArchive/varint.js.map +1 -1
  58. package/cjs/lib/test/configBuilder.test.js +7 -4
  59. package/cjs/lib/test/configBuilder.test.js.map +1 -1
  60. package/cjs/lib/test/graph.test.d.ts +1 -0
  61. package/cjs/lib/test/graph.test.js +78 -0
  62. package/cjs/lib/test/graph.test.js.map +1 -0
  63. package/cjs/lib/test/output.sdk.d.ts +2 -214
  64. package/cjs/lib/test/output.sdk.js +9 -3
  65. package/cjs/lib/test/output.sdk.js.map +1 -1
  66. package/cjs/lib/test/startosTypeValidation.test.js +2 -0
  67. package/cjs/lib/test/startosTypeValidation.test.js.map +1 -1
  68. package/cjs/lib/types.d.ts +18 -14
  69. package/cjs/lib/types.js.map +1 -1
  70. package/cjs/lib/util/Overlay.d.ts +39 -2
  71. package/cjs/lib/util/Overlay.js +38 -6
  72. package/cjs/lib/util/Overlay.js.map +1 -1
  73. package/cjs/lib/util/asError.d.ts +1 -0
  74. package/cjs/lib/util/asError.js +11 -0
  75. package/cjs/lib/util/asError.js.map +1 -0
  76. package/cjs/lib/util/graph.d.ts +19 -0
  77. package/cjs/lib/util/graph.js +206 -0
  78. package/cjs/lib/util/graph.js.map +1 -0
  79. package/cjs/lib/util/index.d.ts +1 -0
  80. package/cjs/lib/util/index.js +3 -1
  81. package/cjs/lib/util/index.js.map +1 -1
  82. package/cjs/lib/version/VersionGraph.d.ts +18 -0
  83. package/cjs/lib/version/VersionGraph.js +104 -0
  84. package/cjs/lib/version/VersionGraph.js.map +1 -0
  85. package/cjs/lib/version/VersionInfo.d.ts +44 -0
  86. package/cjs/lib/version/VersionInfo.js +48 -0
  87. package/cjs/lib/version/VersionInfo.js.map +1 -0
  88. package/cjs/lib/version/index.d.ts +2 -0
  89. package/cjs/lib/version/index.js +19 -0
  90. package/cjs/lib/version/index.js.map +1 -0
  91. package/cjs/lib/versionInfo/VersionInfo.d.ts +44 -0
  92. package/cjs/lib/versionInfo/VersionInfo.js +48 -0
  93. package/cjs/lib/versionInfo/VersionInfo.js.map +1 -0
  94. package/cjs/lib/versionInfo/setupVersionGraph.d.ts +19 -0
  95. package/cjs/lib/versionInfo/setupVersionGraph.js +108 -0
  96. package/cjs/lib/versionInfo/setupVersionGraph.js.map +1 -0
  97. package/mjs/lib/StartSdk.d.ts +2 -17
  98. package/mjs/lib/StartSdk.js +2 -8
  99. package/mjs/lib/StartSdk.js.map +1 -1
  100. package/mjs/lib/backup/Backups.js +2 -1
  101. package/mjs/lib/backup/Backups.js.map +1 -1
  102. package/mjs/lib/backup/setupBackups.d.ts +1 -1
  103. package/mjs/lib/backup/setupBackups.js +2 -1
  104. package/mjs/lib/backup/setupBackups.js.map +1 -1
  105. package/mjs/lib/config/setupConfig.js +1 -1
  106. package/mjs/lib/config/setupConfig.js.map +1 -1
  107. package/mjs/lib/exver/index.d.ts +2 -2
  108. package/mjs/lib/exver/index.js +1 -0
  109. package/mjs/lib/exver/index.js.map +1 -1
  110. package/mjs/lib/health/HealthCheck.js +2 -1
  111. package/mjs/lib/health/HealthCheck.js.map +1 -1
  112. package/mjs/lib/health/checkFns/checkWebUrl.js +2 -1
  113. package/mjs/lib/health/checkFns/checkWebUrl.js.map +1 -1
  114. package/mjs/lib/index.d.ts +1 -0
  115. package/mjs/lib/index.js +1 -0
  116. package/mjs/lib/index.js.map +1 -1
  117. package/mjs/lib/inits/migrations/Migration.d.ts +14 -27
  118. package/mjs/lib/inits/migrations/Migration.js +9 -2
  119. package/mjs/lib/inits/migrations/Migration.js.map +1 -1
  120. package/mjs/lib/inits/migrations/setupMigrations.d.ts +10 -5
  121. package/mjs/lib/inits/migrations/setupMigrations.js +92 -28
  122. package/mjs/lib/inits/migrations/setupMigrations.js.map +1 -1
  123. package/mjs/lib/inits/setupInit.d.ts +2 -2
  124. package/mjs/lib/inits/setupInit.js +29 -5
  125. package/mjs/lib/inits/setupInit.js.map +1 -1
  126. package/mjs/lib/inits/setupInstall.d.ts +1 -1
  127. package/mjs/lib/inits/setupInstall.js +4 -5
  128. package/mjs/lib/inits/setupInstall.js.map +1 -1
  129. package/mjs/lib/inits/setupUninstall.d.ts +1 -1
  130. package/mjs/lib/inits/setupUninstall.js +1 -1
  131. package/mjs/lib/inits/setupUninstall.js.map +1 -1
  132. package/mjs/lib/mainFn/CommandController.d.ts +7 -4
  133. package/mjs/lib/mainFn/CommandController.js +17 -9
  134. package/mjs/lib/mainFn/CommandController.js.map +1 -1
  135. package/mjs/lib/mainFn/Daemon.d.ts +4 -2
  136. package/mjs/lib/mainFn/Daemon.js +7 -3
  137. package/mjs/lib/mainFn/Daemon.js.map +1 -1
  138. package/mjs/lib/mainFn/Daemons.d.ts +2 -2
  139. package/mjs/lib/mainFn/HealthDaemon.d.ts +6 -3
  140. package/mjs/lib/mainFn/HealthDaemon.js +22 -21
  141. package/mjs/lib/mainFn/HealthDaemon.js.map +1 -1
  142. package/mjs/lib/manifest/ManifestTypes.d.ts +1 -10
  143. package/mjs/lib/manifest/setupManifest.d.ts +2 -2
  144. package/mjs/lib/manifest/setupManifest.js +6 -2
  145. package/mjs/lib/manifest/setupManifest.js.map +1 -1
  146. package/mjs/lib/osBindings/Manifest.d.ts +2 -0
  147. package/mjs/lib/osBindings/PackageDataEntry.d.ts +2 -0
  148. package/mjs/lib/osBindings/SetDataVersionParams.d.ts +3 -0
  149. package/mjs/lib/osBindings/SetDataVersionParams.js +3 -0
  150. package/mjs/lib/osBindings/SetDataVersionParams.js.map +1 -0
  151. package/mjs/lib/osBindings/index.d.ts +1 -3
  152. package/mjs/lib/s9pk/merkleArchive/varint.js +2 -1
  153. package/mjs/lib/s9pk/merkleArchive/varint.js.map +1 -1
  154. package/mjs/lib/test/configBuilder.test.js +7 -4
  155. package/mjs/lib/test/configBuilder.test.js.map +1 -1
  156. package/mjs/lib/test/graph.test.d.ts +1 -0
  157. package/mjs/lib/test/graph.test.js +76 -0
  158. package/mjs/lib/test/graph.test.js.map +1 -0
  159. package/mjs/lib/test/output.sdk.d.ts +2 -214
  160. package/mjs/lib/test/output.sdk.js +9 -3
  161. package/mjs/lib/test/output.sdk.js.map +1 -1
  162. package/mjs/lib/test/startosTypeValidation.test.js +2 -0
  163. package/mjs/lib/test/startosTypeValidation.test.js.map +1 -1
  164. package/mjs/lib/types.d.ts +18 -14
  165. package/mjs/lib/types.js.map +1 -1
  166. package/mjs/lib/util/Overlay.d.ts +39 -2
  167. package/mjs/lib/util/Overlay.js +37 -5
  168. package/mjs/lib/util/Overlay.js.map +1 -1
  169. package/mjs/lib/util/asError.d.ts +1 -0
  170. package/mjs/lib/util/asError.js +7 -0
  171. package/mjs/lib/util/asError.js.map +1 -0
  172. package/mjs/lib/util/graph.d.ts +19 -0
  173. package/mjs/lib/util/graph.js +201 -0
  174. package/mjs/lib/util/graph.js.map +1 -0
  175. package/mjs/lib/util/index.d.ts +1 -0
  176. package/mjs/lib/util/index.js +1 -0
  177. package/mjs/lib/util/index.js.map +1 -1
  178. package/mjs/lib/version/VersionGraph.d.ts +18 -0
  179. package/mjs/lib/version/VersionGraph.js +102 -0
  180. package/mjs/lib/version/VersionGraph.js.map +1 -0
  181. package/mjs/lib/version/VersionInfo.d.ts +44 -0
  182. package/mjs/lib/version/VersionInfo.js +45 -0
  183. package/mjs/lib/version/VersionInfo.js.map +1 -0
  184. package/mjs/lib/version/index.d.ts +2 -0
  185. package/mjs/lib/version/index.js +3 -0
  186. package/mjs/lib/version/index.js.map +1 -0
  187. package/mjs/lib/versionInfo/VersionInfo.d.ts +44 -0
  188. package/mjs/lib/versionInfo/VersionInfo.js +45 -0
  189. package/mjs/lib/versionInfo/VersionInfo.js.map +1 -0
  190. package/mjs/lib/versionInfo/setupVersionGraph.d.ts +19 -0
  191. package/mjs/lib/versionInfo/setupVersionGraph.js +105 -0
  192. package/mjs/lib/versionInfo/setupVersionGraph.js.map +1 -0
  193. package/mjs/lib/versionInfo/setupVersionInfo.d.ts +19 -0
  194. package/mjs/lib/versionInfo/setupVersionInfo.js +105 -0
  195. package/mjs/lib/versionInfo/setupVersionInfo.js.map +1 -0
  196. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Overlay.js","sourceRoot":"","sources":["../../../../lib/util/Overlay.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Overlay.js","sourceRoot":"","sources":["../../../../lib/util/Overlay.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare const asError: (e: unknown) => Error;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.asError = void 0;
4
+ const asError = (e) => {
5
+ if (e instanceof Error) {
6
+ return new Error(e);
7
+ }
8
+ return new Error(`${e}`);
9
+ };
10
+ exports.asError = asError;
11
+ //# sourceMappingURL=asError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"asError.js","sourceRoot":"","sources":["../../../../lib/util/asError.ts"],"names":[],"mappings":";;;AAAO,MAAM,OAAO,GAAG,CAAC,CAAU,EAAE,EAAE;IACpC,IAAI,CAAC,YAAY,KAAK,EAAE;QACtB,OAAO,IAAI,KAAK,CAAC,CAAQ,CAAC,CAAA;KAC3B;IACD,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;AAC1B,CAAC,CAAA;AALY,QAAA,OAAO,WAKnB"}
@@ -0,0 +1,19 @@
1
+ export type Vertex<VMetadata = void, EMetadata = void> = {
2
+ metadata: VMetadata;
3
+ edges: Array<Edge<EMetadata, VMetadata>>;
4
+ };
5
+ export type Edge<EMetadata = void, VMetadata = void> = {
6
+ metadata: EMetadata;
7
+ from: Vertex<VMetadata, EMetadata>;
8
+ to: Vertex<VMetadata, EMetadata>;
9
+ };
10
+ export declare class Graph<VMetadata = void, EMetadata = void> {
11
+ private readonly vertices;
12
+ constructor();
13
+ addVertex(metadata: VMetadata, fromEdges: Array<Omit<Edge<EMetadata, VMetadata>, "to">>, toEdges: Array<Omit<Edge<EMetadata, VMetadata>, "from">>): Vertex<VMetadata, EMetadata>;
14
+ findVertex(predicate: (vertex: Vertex<VMetadata, EMetadata>) => boolean): Generator<Vertex<VMetadata, EMetadata>, void>;
15
+ addEdge(metadata: EMetadata, from: Vertex<VMetadata, EMetadata>, to: Vertex<VMetadata, EMetadata>): Edge<EMetadata, VMetadata>;
16
+ breadthFirstSearch(from: Vertex<VMetadata, EMetadata> | ((vertex: Vertex<VMetadata, EMetadata>) => boolean)): Generator<Vertex<VMetadata, EMetadata>, void>;
17
+ reverseBreadthFirstSearch(to: Vertex<VMetadata, EMetadata> | ((vertex: Vertex<VMetadata, EMetadata>) => boolean)): Generator<Vertex<VMetadata, EMetadata>, void>;
18
+ shortestPath(from: Vertex<VMetadata, EMetadata> | ((vertex: Vertex<VMetadata, EMetadata>) => boolean), to: Vertex<VMetadata, EMetadata> | ((vertex: Vertex<VMetadata, EMetadata>) => boolean)): Array<Edge<EMetadata, VMetadata>> | void;
19
+ }
@@ -0,0 +1,206 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Graph = void 0;
4
+ class Graph {
5
+ constructor() {
6
+ this.vertices = [];
7
+ }
8
+ addVertex(metadata, fromEdges, toEdges) {
9
+ const vertex = {
10
+ metadata,
11
+ edges: [],
12
+ };
13
+ for (let edge of fromEdges) {
14
+ const vEdge = {
15
+ metadata: edge.metadata,
16
+ from: edge.from,
17
+ to: vertex,
18
+ };
19
+ edge.from.edges.push(vEdge);
20
+ vertex.edges.push(vEdge);
21
+ }
22
+ for (let edge of toEdges) {
23
+ const vEdge = {
24
+ metadata: edge.metadata,
25
+ from: vertex,
26
+ to: edge.to,
27
+ };
28
+ edge.to.edges.push(vEdge);
29
+ vertex.edges.push(vEdge);
30
+ }
31
+ this.vertices.push(vertex);
32
+ return vertex;
33
+ }
34
+ findVertex(predicate) {
35
+ const veritces = this.vertices;
36
+ function* gen() {
37
+ for (let vertex of veritces) {
38
+ if (predicate(vertex)) {
39
+ yield vertex;
40
+ }
41
+ }
42
+ }
43
+ return gen();
44
+ }
45
+ addEdge(metadata, from, to) {
46
+ const edge = {
47
+ metadata,
48
+ from,
49
+ to,
50
+ };
51
+ edge.from.edges.push(edge);
52
+ edge.to.edges.push(edge);
53
+ return edge;
54
+ }
55
+ breadthFirstSearch(from) {
56
+ const visited = [];
57
+ function* rec(vertex) {
58
+ if (visited.includes(vertex)) {
59
+ return;
60
+ }
61
+ visited.push(vertex);
62
+ yield vertex;
63
+ let generators = vertex.edges
64
+ .filter((e) => e.from === vertex)
65
+ .map((e) => rec(e.to));
66
+ while (generators.length) {
67
+ let prev = generators;
68
+ generators = [];
69
+ for (let gen of prev) {
70
+ const next = gen.next();
71
+ if (!next.done) {
72
+ generators.push(gen);
73
+ yield next.value;
74
+ }
75
+ }
76
+ }
77
+ }
78
+ if (from instanceof Function) {
79
+ let generators = this.vertices.filter(from).map(rec);
80
+ return (function* () {
81
+ while (generators.length) {
82
+ let prev = generators;
83
+ generators = [];
84
+ for (let gen of prev) {
85
+ const next = gen.next();
86
+ if (!next.done) {
87
+ generators.push(gen);
88
+ yield next.value;
89
+ }
90
+ }
91
+ }
92
+ })();
93
+ }
94
+ else {
95
+ return rec(from);
96
+ }
97
+ }
98
+ reverseBreadthFirstSearch(to) {
99
+ const visited = [];
100
+ function* rec(vertex) {
101
+ if (visited.includes(vertex)) {
102
+ return;
103
+ }
104
+ visited.push(vertex);
105
+ yield vertex;
106
+ let generators = vertex.edges
107
+ .filter((e) => e.to === vertex)
108
+ .map((e) => rec(e.from));
109
+ while (generators.length) {
110
+ let prev = generators;
111
+ generators = [];
112
+ for (let gen of prev) {
113
+ const next = gen.next();
114
+ if (!next.done) {
115
+ generators.push(gen);
116
+ yield next.value;
117
+ }
118
+ }
119
+ }
120
+ }
121
+ if (to instanceof Function) {
122
+ let generators = this.vertices.filter(to).map(rec);
123
+ return (function* () {
124
+ while (generators.length) {
125
+ let prev = generators;
126
+ generators = [];
127
+ for (let gen of prev) {
128
+ const next = gen.next();
129
+ if (!next.done) {
130
+ generators.push(gen);
131
+ yield next.value;
132
+ }
133
+ }
134
+ }
135
+ })();
136
+ }
137
+ else {
138
+ return rec(to);
139
+ }
140
+ }
141
+ shortestPath(from, to) {
142
+ const isDone = to instanceof Function
143
+ ? to
144
+ : (v) => v === to;
145
+ const path = [];
146
+ const visited = [];
147
+ function* check(vertex, path) {
148
+ if (isDone(vertex)) {
149
+ return path;
150
+ }
151
+ if (visited.includes(vertex)) {
152
+ return;
153
+ }
154
+ visited.push(vertex);
155
+ yield;
156
+ let generators = vertex.edges
157
+ .filter((e) => e.from === vertex)
158
+ .map((e) => check(e.to, [...path, e]));
159
+ while (generators.length) {
160
+ let prev = generators;
161
+ generators = [];
162
+ for (let gen of prev) {
163
+ const next = gen.next();
164
+ if (next.done === true) {
165
+ if (next.value) {
166
+ return next.value;
167
+ }
168
+ }
169
+ else {
170
+ generators.push(gen);
171
+ yield;
172
+ }
173
+ }
174
+ }
175
+ }
176
+ if (from instanceof Function) {
177
+ let generators = this.vertices.filter(from).map((v) => check(v, []));
178
+ while (generators.length) {
179
+ let prev = generators;
180
+ generators = [];
181
+ for (let gen of prev) {
182
+ const next = gen.next();
183
+ if (next.done === true) {
184
+ if (next.value) {
185
+ return next.value;
186
+ }
187
+ }
188
+ else {
189
+ generators.push(gen);
190
+ }
191
+ }
192
+ }
193
+ }
194
+ else {
195
+ const gen = check(from, []);
196
+ while (true) {
197
+ const next = gen.next();
198
+ if (next.done) {
199
+ return next.value;
200
+ }
201
+ }
202
+ }
203
+ }
204
+ }
205
+ exports.Graph = Graph;
206
+ //# sourceMappingURL=graph.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graph.js","sourceRoot":"","sources":["../../../../lib/util/graph.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ import "./deepMerge";
6
6
  import "./Overlay";
7
7
  import "./once";
8
8
  export { GetServiceInterface, getServiceInterface } from "./getServiceInterface";
9
+ export { asError } from "./asError";
9
10
  export { getServiceInterfaces } from "./getServiceInterfaces";
10
11
  export { addressHostToUrl } from "./getServiceInterface";
11
12
  export { hostnameInfoToAddress } from "./Hostname";
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.inMs = exports.getDefaultString = exports.hostnameInfoToAddress = exports.addressHostToUrl = exports.getServiceInterfaces = exports.getServiceInterface = exports.GetServiceInterface = void 0;
17
+ exports.inMs = exports.getDefaultString = exports.hostnameInfoToAddress = exports.addressHostToUrl = exports.getServiceInterfaces = exports.asError = exports.getServiceInterface = exports.GetServiceInterface = void 0;
18
18
  require("./nullIfEmpty");
19
19
  require("./fileHelper");
20
20
  require("../store/getStore");
@@ -25,6 +25,8 @@ require("./once");
25
25
  var getServiceInterface_1 = require("./getServiceInterface");
26
26
  Object.defineProperty(exports, "GetServiceInterface", { enumerable: true, get: function () { return getServiceInterface_1.GetServiceInterface; } });
27
27
  Object.defineProperty(exports, "getServiceInterface", { enumerable: true, get: function () { return getServiceInterface_1.getServiceInterface; } });
28
+ var asError_1 = require("./asError");
29
+ Object.defineProperty(exports, "asError", { enumerable: true, get: function () { return asError_1.asError; } });
28
30
  var getServiceInterfaces_1 = require("./getServiceInterfaces");
29
31
  Object.defineProperty(exports, "getServiceInterfaces", { enumerable: true, get: function () { return getServiceInterfaces_1.getServiceInterfaces; } });
30
32
  var getServiceInterface_2 = require("./getServiceInterface");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/util/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,yBAAsB;AACtB,wBAAqB;AACrB,6BAA0B;AAC1B,uBAAoB;AACpB,uBAAoB;AACpB,qBAAkB;AAClB,kBAAe;AAEf,6DAAgF;AAAvE,0HAAA,mBAAmB,OAAA;AAAE,0HAAA,mBAAmB,OAAA;AACjD,+DAA6D;AAApD,4HAAA,oBAAoB,OAAA;AAC7B,6DAAwD;AAA/C,uHAAA,gBAAgB,OAAA;AACzB,uCAAkD;AAAzC,iHAAA,qBAAqB,OAAA;AAC9B,gDAA6B;AAC7B,uDAAqD;AAA5C,oHAAA,gBAAgB,OAAA;AACzB,+BAA6B;AAApB,4FAAA,IAAI,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/util/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,yBAAsB;AACtB,wBAAqB;AACrB,6BAA0B;AAC1B,uBAAoB;AACpB,uBAAoB;AACpB,qBAAkB;AAClB,kBAAe;AAEf,6DAAgF;AAAvE,0HAAA,mBAAmB,OAAA;AAAE,0HAAA,mBAAmB,OAAA;AACjD,qCAAmC;AAA1B,kGAAA,OAAO,OAAA;AAChB,+DAA6D;AAApD,4HAAA,oBAAoB,OAAA;AAC7B,6DAAwD;AAA/C,uHAAA,gBAAgB,OAAA;AACzB,uCAAkD;AAAzC,iHAAA,qBAAqB,OAAA;AAC9B,gDAA6B;AAC7B,uDAAqD;AAA5C,oHAAA,gBAAgB,OAAA;AACzB,+BAA6B;AAApB,4FAAA,IAAI,OAAA"}
@@ -0,0 +1,18 @@
1
+ import { ExtendedVersion, VersionRange } from "../exver";
2
+ import * as T from "../types";
3
+ import { VersionInfo } from "./VersionInfo";
4
+ export declare class VersionGraph<CurrentVersion extends string> {
5
+ readonly current: VersionInfo<CurrentVersion>;
6
+ private readonly graph;
7
+ private constructor();
8
+ currentVersion: () => ExtendedVersion;
9
+ static of<CurrentVersion extends string, OtherVersions extends Array<VersionInfo<any>>>(currentVersion: VersionInfo<CurrentVersion>, ...other: EnsureUniqueId<OtherVersions, OtherVersions, CurrentVersion>): VersionGraph<CurrentVersion>;
10
+ migrate({ effects, from, to, }: {
11
+ effects: T.Effects;
12
+ from: ExtendedVersion;
13
+ to: ExtendedVersion;
14
+ }): Promise<void>;
15
+ canMigrateFrom: () => VersionRange;
16
+ canMigrateTo: () => VersionRange;
17
+ }
18
+ export type EnsureUniqueId<A, B = A, OtherVersions = never> = B extends [] ? A : B extends [VersionInfo<infer Version>, ...infer Rest] ? (Version extends OtherVersions ? "One or more versions are not unique"[] : EnsureUniqueId<A, Rest, Version | OtherVersions>) : "There exists a migration that is not a Migration"[];
@@ -0,0 +1,104 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.VersionGraph = void 0;
4
+ const exver_1 = require("../exver");
5
+ const graph_1 = require("../util/graph");
6
+ const once_1 = require("../util/once");
7
+ const VersionInfo_1 = require("./VersionInfo");
8
+ class VersionGraph {
9
+ constructor(current, versions) {
10
+ this.current = current;
11
+ this.currentVersion = (0, once_1.once)(() => exver_1.ExtendedVersion.parse(this.current.options.version));
12
+ this.canMigrateFrom = (0, once_1.once)(() => Array.from(this.graph().reverseBreadthFirstSearch((v) => (v.metadata instanceof exver_1.VersionRange &&
13
+ v.metadata.satisfiedBy(this.currentVersion())) ||
14
+ (v.metadata instanceof exver_1.ExtendedVersion &&
15
+ v.metadata.equals(this.currentVersion())))).reduce((acc, x) => acc.or(x.metadata instanceof exver_1.VersionRange
16
+ ? x.metadata
17
+ : exver_1.VersionRange.anchor("=", x.metadata)), exver_1.VersionRange.none()));
18
+ this.canMigrateTo = (0, once_1.once)(() => Array.from(this.graph().breadthFirstSearch((v) => (v.metadata instanceof exver_1.VersionRange &&
19
+ v.metadata.satisfiedBy(this.currentVersion())) ||
20
+ (v.metadata instanceof exver_1.ExtendedVersion &&
21
+ v.metadata.equals(this.currentVersion())))).reduce((acc, x) => acc.or(x.metadata instanceof exver_1.VersionRange
22
+ ? x.metadata
23
+ : exver_1.VersionRange.anchor("=", x.metadata)), exver_1.VersionRange.none()));
24
+ this.graph = (0, once_1.once)(() => {
25
+ const graph = new graph_1.Graph();
26
+ const flavorMap = {};
27
+ for (let version of [current, ...versions]) {
28
+ const v = exver_1.ExtendedVersion.parse(version.options.version);
29
+ const vertex = graph.addVertex(v, [], []);
30
+ const flavor = v.flavor || "";
31
+ if (!flavorMap[flavor]) {
32
+ flavorMap[flavor] = [];
33
+ }
34
+ flavorMap[flavor].push([v, version, vertex]);
35
+ }
36
+ for (let flavor in flavorMap) {
37
+ flavorMap[flavor].sort((a, b) => a[0].compareForSort(b[0]));
38
+ let prev = undefined;
39
+ for (let [v, version, vertex] of flavorMap[flavor]) {
40
+ if (version.options.migrations.up !== VersionInfo_1.IMPOSSIBLE) {
41
+ let range;
42
+ if (prev) {
43
+ graph.addEdge(version.options.migrations.up, prev[2], vertex);
44
+ range = exver_1.VersionRange.anchor(">=", prev[0]).and(exver_1.VersionRange.anchor("<", v));
45
+ }
46
+ else {
47
+ range = exver_1.VersionRange.anchor("<", v);
48
+ }
49
+ const vRange = graph.addVertex(range, [], []);
50
+ graph.addEdge(version.options.migrations.up, vRange, vertex);
51
+ }
52
+ if (version.options.migrations.down !== VersionInfo_1.IMPOSSIBLE) {
53
+ let range;
54
+ if (prev) {
55
+ graph.addEdge(version.options.migrations.down, vertex, prev[2]);
56
+ range = exver_1.VersionRange.anchor(">=", prev[0]).and(exver_1.VersionRange.anchor("<", v));
57
+ }
58
+ else {
59
+ range = exver_1.VersionRange.anchor("<", v);
60
+ }
61
+ const vRange = graph.addVertex(range, [], []);
62
+ graph.addEdge(version.options.migrations.down, vertex, vRange);
63
+ }
64
+ if (version.options.migrations.other) {
65
+ for (let rangeStr in version.options.migrations.other) {
66
+ const range = exver_1.VersionRange.parse(rangeStr);
67
+ const vRange = graph.addVertex(range, [], []);
68
+ graph.addEdge(version.options.migrations.other[rangeStr], vRange, vertex);
69
+ for (let matching of graph.findVertex((v) => v.metadata instanceof exver_1.ExtendedVersion &&
70
+ v.metadata.satisfies(range))) {
71
+ graph.addEdge(version.options.migrations.other[rangeStr], matching, vertex);
72
+ }
73
+ }
74
+ }
75
+ }
76
+ }
77
+ return graph;
78
+ });
79
+ }
80
+ static of(currentVersion, ...other) {
81
+ return new VersionGraph(currentVersion, other);
82
+ }
83
+ async migrate({ effects, from, to, }) {
84
+ const graph = this.graph();
85
+ if (from && to) {
86
+ const path = graph.shortestPath((v) => (v.metadata instanceof exver_1.VersionRange &&
87
+ v.metadata.satisfiedBy(from)) ||
88
+ (v.metadata instanceof exver_1.ExtendedVersion && v.metadata.equals(from)), (v) => (v.metadata instanceof exver_1.VersionRange && v.metadata.satisfiedBy(to)) ||
89
+ (v.metadata instanceof exver_1.ExtendedVersion && v.metadata.equals(to)));
90
+ if (path) {
91
+ for (let edge of path) {
92
+ if (edge.metadata) {
93
+ await edge.metadata({ effects });
94
+ }
95
+ await effects.setDataVersion({ version: edge.to.metadata.toString() });
96
+ }
97
+ return;
98
+ }
99
+ }
100
+ throw new Error();
101
+ }
102
+ }
103
+ exports.VersionGraph = VersionGraph;
104
+ //# sourceMappingURL=VersionGraph.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VersionGraph.js","sourceRoot":"","sources":["../../../../lib/version/VersionGraph.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ import { ValidateExVer } from "../exver";
2
+ import * as T from "../types";
3
+ export declare const IMPOSSIBLE: unique symbol;
4
+ export type VersionOptions<Version extends string> = {
5
+ /** The version being described */
6
+ version: Version & ValidateExVer<Version>;
7
+ /** The release notes for this version */
8
+ releaseNotes: string;
9
+ /** Data migrations for this version */
10
+ migrations: {
11
+ /**
12
+ * A migration from the previous version
13
+ * Leave blank to indicate no migration is necessary
14
+ * Set to `IMPOSSIBLE` to indicate migrating from the previous version is not possible
15
+ */
16
+ up?: ((opts: {
17
+ effects: T.Effects;
18
+ }) => Promise<void>) | typeof IMPOSSIBLE;
19
+ /**
20
+ * A migration to the previous version
21
+ * Leave blank to indicate no migration is necessary
22
+ * Set to `IMPOSSIBLE` to indicate downgrades are prohibited
23
+ */
24
+ down?: ((opts: {
25
+ effects: T.Effects;
26
+ }) => Promise<void>) | typeof IMPOSSIBLE;
27
+ /**
28
+ * Additional migrations, such as fast-forward migrations, or migrations from other flavors
29
+ */
30
+ other?: Record<string, (opts: {
31
+ effects: T.Effects;
32
+ }) => Promise<void>>;
33
+ };
34
+ };
35
+ export declare class VersionInfo<Version extends string> {
36
+ readonly options: VersionOptions<Version> & {
37
+ satisfies: string[];
38
+ };
39
+ private _version;
40
+ private constructor();
41
+ static of<Version extends string>(options: VersionOptions<Version>): VersionInfo<Version>;
42
+ /** Specify a version that this version is 100% backwards compatible to */
43
+ satisfies<V extends string>(version: V & ValidateExVer<V>): VersionInfo<Version>;
44
+ }
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.VersionInfo = exports.IMPOSSIBLE = void 0;
4
+ exports.IMPOSSIBLE = Symbol("IMPOSSIBLE");
5
+ class VersionInfo {
6
+ constructor(options) {
7
+ this.options = options;
8
+ this._version = null;
9
+ }
10
+ static of(options) {
11
+ return new VersionInfo({ ...options, satisfies: [] });
12
+ }
13
+ /** Specify a version that this version is 100% backwards compatible to */
14
+ satisfies(version) {
15
+ return new VersionInfo({
16
+ ...this.options,
17
+ satisfies: [...this.options.satisfies, version],
18
+ });
19
+ }
20
+ }
21
+ exports.VersionInfo = VersionInfo;
22
+ function __type_tests() {
23
+ const version = VersionInfo.of({
24
+ version: "1.0.0:0",
25
+ releaseNotes: "",
26
+ migrations: {},
27
+ })
28
+ .satisfies("#other:1.0.0:0")
29
+ .satisfies("#other:2.0.0:0")
30
+ // @ts-expect-error
31
+ .satisfies("#other:2.f.0:0");
32
+ let a = version;
33
+ // @ts-expect-error
34
+ let b = version;
35
+ VersionInfo.of({
36
+ // @ts-expect-error
37
+ version: "test",
38
+ releaseNotes: "",
39
+ migrations: {},
40
+ });
41
+ VersionInfo.of({
42
+ // @ts-expect-error
43
+ version: "test",
44
+ releaseNotes: "",
45
+ migrations: {},
46
+ });
47
+ }
48
+ //# sourceMappingURL=VersionInfo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VersionInfo.js","sourceRoot":"","sources":["../../../../lib/version/VersionInfo.ts"],"names":[],"mappings":";;;AAGa,QAAA,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC,CAAA;AA4B9C,MAAa,WAAW;IAEtB,YACW,OAA0D;QAA1D,YAAO,GAAP,OAAO,CAAmD;QAF7D,aAAQ,GAAmB,IAAI,CAAA;IAGpC,CAAC;IACJ,MAAM,CAAC,EAAE,CAAyB,OAAgC;QAChE,OAAO,IAAI,WAAW,CAAU,EAAE,GAAG,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAA;IAChE,CAAC;IACD,0EAA0E;IAC1E,SAAS,CACP,OAA6B;QAE7B,OAAO,IAAI,WAAW,CAAC;YACrB,GAAG,IAAI,CAAC,OAAO;YACf,SAAS,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC;SAChD,CAAC,CAAA;IACJ,CAAC;CACF;AAjBD,kCAiBC;AAED,SAAS,YAAY;IACnB,MAAM,OAAO,GAA2B,WAAW,CAAC,EAAE,CAAC;QACrD,OAAO,EAAE,SAAS;QAClB,YAAY,EAAE,EAAE;QAChB,UAAU,EAAE,EAAE;KACf,CAAC;SACC,SAAS,CAAC,gBAAgB,CAAC;SAC3B,SAAS,CAAC,gBAAgB,CAAC;QAC5B,mBAAmB;SAClB,SAAS,CAAC,gBAAgB,CAAC,CAAA;IAE9B,IAAI,CAAC,GAA2B,OAAO,CAAA;IACvC,mBAAmB;IACnB,IAAI,CAAC,GAA2B,OAAO,CAAA;IAEvC,WAAW,CAAC,EAAE,CAAC;QACb,mBAAmB;QACnB,OAAO,EAAE,MAAM;QACf,YAAY,EAAE,EAAE;QAChB,UAAU,EAAE,EAAE;KACf,CAAC,CAAA;IACF,WAAW,CAAC,EAAE,CAAC;QACb,mBAAmB;QACnB,OAAO,EAAE,MAAgB;QACzB,YAAY,EAAE,EAAE;QAChB,UAAU,EAAE,EAAE;KACf,CAAC,CAAA;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from "./VersionGraph";
2
+ export * from "./VersionInfo";
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./VersionGraph"), exports);
18
+ __exportStar(require("./VersionInfo"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/version/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA8B;AAC9B,gDAA6B"}
@@ -0,0 +1,44 @@
1
+ import { ValidateExVer } from "../exver";
2
+ import * as T from "../types";
3
+ export declare const IMPOSSIBLE: unique symbol;
4
+ export type VersionOptions<Version extends string> = {
5
+ /** The version being described */
6
+ version: Version & ValidateExVer<Version>;
7
+ /** The release notes for this version */
8
+ releaseNotes: string;
9
+ /** Data migrations for this version */
10
+ migrations: {
11
+ /**
12
+ * A migration from the previous version
13
+ * Leave blank to indicate no migration is necessary
14
+ * Set to `IMPOSSIBLE` to indicate migrating from the previous version is not possible
15
+ */
16
+ up?: ((opts: {
17
+ effects: T.Effects;
18
+ }) => Promise<void>) | typeof IMPOSSIBLE;
19
+ /**
20
+ * A migration to the previous version
21
+ * Leave blank to indicate no migration is necessary
22
+ * Set to `IMPOSSIBLE` to indicate downgrades are prohibited
23
+ */
24
+ down?: ((opts: {
25
+ effects: T.Effects;
26
+ }) => Promise<void>) | typeof IMPOSSIBLE;
27
+ /**
28
+ * Additional migrations, such as fast-forward migrations, or migrations from other flavors
29
+ */
30
+ other?: Record<string, (opts: {
31
+ effects: T.Effects;
32
+ }) => Promise<void>>;
33
+ };
34
+ };
35
+ export declare class VersionInfo<Version extends string> {
36
+ readonly options: VersionOptions<Version> & {
37
+ satisfies: string[];
38
+ };
39
+ private _version;
40
+ private constructor();
41
+ static of<Version extends string>(options: VersionOptions<Version>): VersionInfo<Version>;
42
+ /** Specify a version that this version is 100% backwards compatible to */
43
+ satisfies<V extends string>(version: V & ValidateExVer<V>): VersionInfo<Version>;
44
+ }