@accordproject/concerto-util 4.2.0 → 5.0.0-beta.2

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 (193) hide show
  1. package/dist/baseexception.d.ts +2 -1
  2. package/dist/baseexception.js +5 -2
  3. package/dist/basefileexception.d.ts +3 -2
  4. package/dist/basefileexception.js +10 -4
  5. package/dist/esm/baseexception.mjs +13 -0
  6. package/dist/esm/baseexception.mjs.map +7 -0
  7. package/dist/esm/basefileexception.mjs +14 -0
  8. package/dist/esm/basefileexception.mjs.map +7 -0
  9. package/dist/esm/chunk-3RJ6JXLX.mjs +29 -0
  10. package/dist/esm/chunk-3RJ6JXLX.mjs.map +7 -0
  11. package/dist/esm/chunk-3U4T7O4P.mjs +41 -0
  12. package/dist/esm/chunk-3U4T7O4P.mjs.map +7 -0
  13. package/dist/esm/chunk-D4MNWWBB.mjs +43 -0
  14. package/dist/esm/chunk-D4MNWWBB.mjs.map +7 -0
  15. package/dist/esm/chunk-DTVQ7VXD.mjs +30 -0
  16. package/dist/esm/chunk-DTVQ7VXD.mjs.map +7 -0
  17. package/dist/esm/chunk-FHUVVHGR.mjs +48 -0
  18. package/dist/esm/chunk-FHUVVHGR.mjs.map +7 -0
  19. package/dist/esm/chunk-FK2LDKS6.mjs +36 -0
  20. package/dist/esm/chunk-FK2LDKS6.mjs.map +7 -0
  21. package/dist/esm/chunk-G6IDW2UD.mjs +183 -0
  22. package/dist/esm/chunk-G6IDW2UD.mjs.map +7 -0
  23. package/dist/esm/chunk-GOLEPEBI.mjs +56 -0
  24. package/dist/esm/chunk-GOLEPEBI.mjs.map +7 -0
  25. package/dist/esm/chunk-I33X6SGY.mjs +70 -0
  26. package/dist/esm/chunk-I33X6SGY.mjs.map +7 -0
  27. package/dist/esm/chunk-K4OOJFK5.mjs +93 -0
  28. package/dist/esm/chunk-K4OOJFK5.mjs.map +7 -0
  29. package/dist/esm/chunk-LPNGJFU2.mjs +22 -0
  30. package/dist/esm/chunk-LPNGJFU2.mjs.map +7 -0
  31. package/dist/esm/chunk-PBL5N3A2.mjs +33 -0
  32. package/dist/esm/chunk-PBL5N3A2.mjs.map +7 -0
  33. package/dist/esm/chunk-PMP2SMHG.mjs +17 -0
  34. package/dist/esm/chunk-PMP2SMHG.mjs.map +7 -0
  35. package/dist/esm/chunk-Q6G4HQJ7.mjs +151 -0
  36. package/dist/esm/chunk-Q6G4HQJ7.mjs.map +7 -0
  37. package/dist/esm/chunk-RBUQLLXW.mjs +51 -0
  38. package/dist/esm/chunk-RBUQLLXW.mjs.map +7 -0
  39. package/dist/esm/chunk-T6ZBQYEB.mjs +97 -0
  40. package/dist/esm/chunk-T6ZBQYEB.mjs.map +7 -0
  41. package/dist/esm/chunk-TP3CT6S4.mjs +35 -0
  42. package/dist/esm/chunk-TP3CT6S4.mjs.map +7 -0
  43. package/dist/esm/chunk-WPVG6LP3.mjs +63 -0
  44. package/dist/esm/chunk-WPVG6LP3.mjs.map +7 -0
  45. package/dist/esm/chunk-YQVUNOO6.mjs +93 -0
  46. package/dist/esm/chunk-YQVUNOO6.mjs.map +7 -0
  47. package/dist/esm/errorcodes.mjs +22 -0
  48. package/dist/esm/errorcodes.mjs.map +7 -0
  49. package/dist/esm/filedownloader.mjs +12 -0
  50. package/dist/esm/filedownloader.mjs.map +7 -0
  51. package/dist/esm/filewriter.mjs +13 -0
  52. package/dist/esm/filewriter.mjs.map +7 -0
  53. package/dist/esm/identifiers.mjs +12 -0
  54. package/dist/esm/identifiers.mjs.map +7 -0
  55. package/dist/esm/index.mjs +78 -0
  56. package/dist/esm/index.mjs.map +7 -0
  57. package/dist/esm/inmemorywriter.mjs +13 -0
  58. package/dist/esm/inmemorywriter.mjs.map +7 -0
  59. package/dist/esm/label.mjs +12 -0
  60. package/dist/esm/label.mjs.map +7 -0
  61. package/dist/esm/loaders/compositefileloader.mjs +12 -0
  62. package/dist/esm/loaders/compositefileloader.mjs.map +7 -0
  63. package/dist/esm/loaders/defaultfileloader.mjs +15 -0
  64. package/dist/esm/loaders/defaultfileloader.mjs.map +7 -0
  65. package/dist/esm/loaders/fileloader.mjs +3 -0
  66. package/dist/esm/loaders/fileloader.mjs.map +7 -0
  67. package/dist/esm/loaders/githubfileloader.mjs +13 -0
  68. package/dist/esm/loaders/githubfileloader.mjs.map +7 -0
  69. package/dist/esm/loaders/httpfileloader.mjs +12 -0
  70. package/dist/esm/loaders/httpfileloader.mjs.map +7 -0
  71. package/dist/esm/logger.mjs +12 -0
  72. package/dist/esm/logger.mjs.map +7 -0
  73. package/dist/esm/modelwriter.mjs +10 -0
  74. package/dist/esm/modelwriter.mjs.map +7 -0
  75. package/dist/esm/null.mjs +12 -0
  76. package/dist/esm/null.mjs.map +7 -0
  77. package/dist/esm/typedstack.mjs +12 -0
  78. package/dist/esm/typedstack.mjs.map +7 -0
  79. package/dist/esm/warning.mjs +10 -0
  80. package/dist/esm/warning.mjs.map +7 -0
  81. package/dist/esm/writer.mjs +12 -0
  82. package/dist/esm/writer.mjs.map +7 -0
  83. package/dist/esm-browser/baseexception.mjs +11 -0
  84. package/dist/esm-browser/baseexception.mjs.map +7 -0
  85. package/dist/esm-browser/basefileexception.mjs +12 -0
  86. package/dist/esm-browser/basefileexception.mjs.map +7 -0
  87. package/dist/esm-browser/chunk-3XGAUT4O.mjs +100 -0
  88. package/dist/esm-browser/chunk-3XGAUT4O.mjs.map +7 -0
  89. package/dist/esm-browser/chunk-4X5DBZDM.mjs +24 -0
  90. package/dist/esm-browser/chunk-4X5DBZDM.mjs.map +7 -0
  91. package/dist/esm-browser/chunk-6SOOHVQB.mjs +65 -0
  92. package/dist/esm-browser/chunk-6SOOHVQB.mjs.map +7 -0
  93. package/dist/esm-browser/chunk-7DYPHXUR.mjs +50 -0
  94. package/dist/esm-browser/chunk-7DYPHXUR.mjs.map +7 -0
  95. package/dist/esm-browser/chunk-7LYWQ57N.mjs +461 -0
  96. package/dist/esm-browser/chunk-7LYWQ57N.mjs.map +7 -0
  97. package/dist/esm-browser/chunk-BDMF4RRF.mjs +72 -0
  98. package/dist/esm-browser/chunk-BDMF4RRF.mjs.map +7 -0
  99. package/dist/esm-browser/chunk-BSBOEFWN.mjs +57 -0
  100. package/dist/esm-browser/chunk-BSBOEFWN.mjs.map +7 -0
  101. package/dist/esm-browser/chunk-DOL2YKDZ.mjs +26 -0
  102. package/dist/esm-browser/chunk-DOL2YKDZ.mjs.map +7 -0
  103. package/dist/esm-browser/chunk-EGOFDABS.mjs +62 -0
  104. package/dist/esm-browser/chunk-EGOFDABS.mjs.map +7 -0
  105. package/dist/esm-browser/chunk-LZTTRWN3.mjs +153 -0
  106. package/dist/esm-browser/chunk-LZTTRWN3.mjs.map +7 -0
  107. package/dist/esm-browser/chunk-MCUSZIV7.mjs +41 -0
  108. package/dist/esm-browser/chunk-MCUSZIV7.mjs.map +7 -0
  109. package/dist/esm-browser/chunk-N42BHUZ6.mjs +35 -0
  110. package/dist/esm-browser/chunk-N42BHUZ6.mjs.map +7 -0
  111. package/dist/esm-browser/chunk-NAP47VIV.mjs +36 -0
  112. package/dist/esm-browser/chunk-NAP47VIV.mjs.map +7 -0
  113. package/dist/esm-browser/chunk-NQ5PDAAD.mjs +95 -0
  114. package/dist/esm-browser/chunk-NQ5PDAAD.mjs.map +7 -0
  115. package/dist/esm-browser/chunk-NSJTBLWA.mjs +71 -0
  116. package/dist/esm-browser/chunk-NSJTBLWA.mjs.map +7 -0
  117. package/dist/esm-browser/chunk-R6CSKES3.mjs +183 -0
  118. package/dist/esm-browser/chunk-R6CSKES3.mjs.map +7 -0
  119. package/dist/esm-browser/chunk-S52XDDAF.mjs +30 -0
  120. package/dist/esm-browser/chunk-S52XDDAF.mjs.map +7 -0
  121. package/dist/esm-browser/chunk-SU6SG5PJ.mjs +45 -0
  122. package/dist/esm-browser/chunk-SU6SG5PJ.mjs.map +7 -0
  123. package/dist/esm-browser/chunk-WCGRUR5U.mjs +30 -0
  124. package/dist/esm-browser/chunk-WCGRUR5U.mjs.map +7 -0
  125. package/dist/esm-browser/chunk-YJQCJTA7.mjs +53 -0
  126. package/dist/esm-browser/chunk-YJQCJTA7.mjs.map +7 -0
  127. package/dist/esm-browser/chunk-YURYZDD2.mjs +453 -0
  128. package/dist/esm-browser/chunk-YURYZDD2.mjs.map +7 -0
  129. package/dist/esm-browser/errorcodes.mjs +20 -0
  130. package/dist/esm-browser/errorcodes.mjs.map +7 -0
  131. package/dist/esm-browser/filedownloader.mjs +11 -0
  132. package/dist/esm-browser/filedownloader.mjs.map +7 -0
  133. package/dist/esm-browser/filewriter.mjs +12 -0
  134. package/dist/esm-browser/filewriter.mjs.map +7 -0
  135. package/dist/esm-browser/identifiers.mjs +10 -0
  136. package/dist/esm-browser/identifiers.mjs.map +7 -0
  137. package/dist/esm-browser/index.mjs +83 -0
  138. package/dist/esm-browser/index.mjs.map +7 -0
  139. package/dist/esm-browser/inmemorywriter.mjs +11 -0
  140. package/dist/esm-browser/inmemorywriter.mjs.map +7 -0
  141. package/dist/esm-browser/label.mjs +10 -0
  142. package/dist/esm-browser/label.mjs.map +7 -0
  143. package/dist/esm-browser/loaders/compositefileloader.mjs +10 -0
  144. package/dist/esm-browser/loaders/compositefileloader.mjs.map +7 -0
  145. package/dist/esm-browser/loaders/defaultfileloader.mjs +14 -0
  146. package/dist/esm-browser/loaders/defaultfileloader.mjs.map +7 -0
  147. package/dist/esm-browser/loaders/fileloader.mjs +7 -0
  148. package/dist/esm-browser/loaders/fileloader.mjs.map +7 -0
  149. package/dist/esm-browser/loaders/githubfileloader.mjs +12 -0
  150. package/dist/esm-browser/loaders/githubfileloader.mjs.map +7 -0
  151. package/dist/esm-browser/loaders/httpfileloader.mjs +11 -0
  152. package/dist/esm-browser/loaders/httpfileloader.mjs.map +7 -0
  153. package/dist/esm-browser/logger.mjs +10 -0
  154. package/dist/esm-browser/logger.mjs.map +7 -0
  155. package/dist/esm-browser/modelwriter.mjs +9 -0
  156. package/dist/esm-browser/modelwriter.mjs.map +7 -0
  157. package/dist/esm-browser/null.mjs +10 -0
  158. package/dist/esm-browser/null.mjs.map +7 -0
  159. package/dist/esm-browser/typedstack.mjs +10 -0
  160. package/dist/esm-browser/typedstack.mjs.map +7 -0
  161. package/dist/esm-browser/warning.mjs +8 -0
  162. package/dist/esm-browser/warning.mjs.map +7 -0
  163. package/dist/esm-browser/writer.mjs +10 -0
  164. package/dist/esm-browser/writer.mjs.map +7 -0
  165. package/dist/filedownloader.d.ts +14 -6
  166. package/dist/filedownloader.js +32 -12
  167. package/dist/filewriter.d.ts +3 -2
  168. package/dist/filewriter.js +10 -4
  169. package/dist/identifiers.js +4 -2
  170. package/dist/index.d.ts +18 -17
  171. package/dist/index.js +34 -31
  172. package/dist/inmemorywriter.d.ts +3 -2
  173. package/dist/inmemorywriter.js +10 -4
  174. package/dist/loaders/compositefileloader.d.ts +2 -1
  175. package/dist/loaders/compositefileloader.js +5 -2
  176. package/dist/loaders/defaultfileloader.d.ts +3 -2
  177. package/dist/loaders/defaultfileloader.js +14 -8
  178. package/dist/loaders/githubfileloader.d.ts +3 -2
  179. package/dist/loaders/githubfileloader.js +10 -4
  180. package/dist/loaders/httpfileloader.d.ts +2 -1
  181. package/dist/loaders/httpfileloader.js +10 -3
  182. package/dist/logger.d.ts +2 -1
  183. package/dist/logger.js +5 -2
  184. package/dist/modelwriter.js +6 -4
  185. package/dist/null.d.ts +3 -2
  186. package/dist/null.js +5 -2
  187. package/dist/typedstack.d.ts +2 -1
  188. package/dist/typedstack.js +5 -2
  189. package/dist/writer.d.ts +2 -1
  190. package/dist/writer.js +5 -2
  191. package/package.json +16 -8
  192. package/dist/concerto-util.js +0 -2
  193. package/dist/concerto-util.js.LICENSE.txt +0 -19
@@ -0,0 +1,453 @@
1
+ import {
2
+ require_browser
3
+ } from "./chunk-7LYWQ57N.mjs";
4
+ import {
5
+ __commonJS,
6
+ __toESM,
7
+ init_browser_process_shim
8
+ } from "./chunk-NSJTBLWA.mjs";
9
+
10
+ // ../../node_modules/@supercharge/promise-pool/dist/promise-pool-error.js
11
+ var require_promise_pool_error = __commonJS({
12
+ "../../node_modules/@supercharge/promise-pool/dist/promise-pool-error.js"(exports) {
13
+ "use strict";
14
+ init_browser_process_shim();
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.PromisePoolError = void 0;
17
+ var PromisePoolError = class extends Error {
18
+ /**
19
+ * Create a new instance for the given `message` and `item`.
20
+ *
21
+ * @param error The original error
22
+ * @param item The item causing the error
23
+ */
24
+ constructor(error, item) {
25
+ super();
26
+ this.item = item;
27
+ this.name = this.constructor.name;
28
+ this.message = this.messageFrom(error);
29
+ Error.captureStackTrace(this, this.constructor);
30
+ }
31
+ /**
32
+ * Returns a new promise pool error instance wrapping the `error` and `item`.
33
+ *
34
+ * @param {*} error
35
+ * @param {*} item
36
+ *
37
+ * @returns {PromisePoolError}
38
+ */
39
+ static createFrom(error, item) {
40
+ return new this(error, item);
41
+ }
42
+ /**
43
+ * Returns the error message from the given `error`.
44
+ *
45
+ * @param {*} error
46
+ *
47
+ * @returns {String}
48
+ */
49
+ messageFrom(error) {
50
+ if (error instanceof Error) {
51
+ return error.message;
52
+ }
53
+ if (typeof error === "object") {
54
+ return error.message;
55
+ }
56
+ if (typeof error === "string" || typeof error === "number") {
57
+ return error.toString();
58
+ }
59
+ return "";
60
+ }
61
+ };
62
+ exports.PromisePoolError = PromisePoolError;
63
+ }
64
+ });
65
+
66
+ // ../../node_modules/@supercharge/promise-pool/dist/promise-pool-executor.js
67
+ var require_promise_pool_executor = __commonJS({
68
+ "../../node_modules/@supercharge/promise-pool/dist/promise-pool-executor.js"(exports) {
69
+ "use strict";
70
+ init_browser_process_shim();
71
+ Object.defineProperty(exports, "__esModule", { value: true });
72
+ exports.PromisePoolExecutor = void 0;
73
+ var promise_pool_error_1 = require_promise_pool_error();
74
+ var PromisePoolExecutor = class {
75
+ /**
76
+ * Creates a new promise pool executer instance with a default concurrency of 10.
77
+ */
78
+ constructor() {
79
+ this.tasks = [];
80
+ this.items = [];
81
+ this.errors = [];
82
+ this.results = [];
83
+ this.concurrency = 10;
84
+ this.handler = () => {
85
+ };
86
+ this.errorHandler = void 0;
87
+ }
88
+ /**
89
+ * Set the number of tasks to process concurrently the promise pool.
90
+ *
91
+ * @param {Integer} concurrency
92
+ *
93
+ * @returns {PromisePoolExecutor}
94
+ */
95
+ withConcurrency(concurrency) {
96
+ this.concurrency = concurrency;
97
+ return this;
98
+ }
99
+ /**
100
+ * Set the items to be processed in the promise pool.
101
+ *
102
+ * @param {Array} items
103
+ *
104
+ * @returns {PromisePoolExecutor}
105
+ */
106
+ for(items) {
107
+ this.items = items;
108
+ return this;
109
+ }
110
+ /**
111
+ * Set the handler that is applied to each item.
112
+ *
113
+ * @param {Function} action
114
+ *
115
+ * @returns {PromisePoolExecutor}
116
+ */
117
+ withHandler(action) {
118
+ this.handler = action;
119
+ return this;
120
+ }
121
+ /**
122
+ * Set the error handler function to execute when an error occurs.
123
+ *
124
+ * @param {Function} handler
125
+ *
126
+ * @returns {PromisePoolExecutor}
127
+ */
128
+ handleError(handler) {
129
+ this.errorHandler = handler;
130
+ return this;
131
+ }
132
+ /**
133
+ * Determines whether the number of active tasks is greater or equal to the concurrency limit.
134
+ *
135
+ * @returns {Boolean}
136
+ */
137
+ hasReachedConcurrencyLimit() {
138
+ return this.activeCount() >= this.concurrency;
139
+ }
140
+ /**
141
+ * Returns the number of active tasks.
142
+ *
143
+ * @returns {Number}
144
+ */
145
+ activeCount() {
146
+ return this.tasks.length;
147
+ }
148
+ /**
149
+ * Start processing the promise pool.
150
+ *
151
+ * @returns {Array}
152
+ */
153
+ async start() {
154
+ this.validateInputs();
155
+ return await this.process();
156
+ }
157
+ /**
158
+ * Ensure valid inputs and throw otherwise.
159
+ *
160
+ * @throws
161
+ */
162
+ validateInputs() {
163
+ if (typeof this.handler !== "function") {
164
+ throw new Error("The first parameter for the .process(fn) method must be a function");
165
+ }
166
+ if (!(typeof this.concurrency === "number" && this.concurrency >= 1)) {
167
+ throw new TypeError(`"concurrency" must be a number, 1 or up. Received "${this.concurrency}" (${typeof this.concurrency})`);
168
+ }
169
+ if (!Array.isArray(this.items)) {
170
+ throw new TypeError(`"items" must be an array. Received ${typeof this.items}`);
171
+ }
172
+ if (this.errorHandler) {
173
+ if (typeof this.errorHandler !== "function") {
174
+ throw new Error(`The error handler must be a function. Received ${typeof this.errorHandler}`);
175
+ }
176
+ }
177
+ }
178
+ /**
179
+ * Starts processing the promise pool by iterating over the items
180
+ * and running each item through the async `callback` function.
181
+ *
182
+ * @param {Function} callback
183
+ *
184
+ * @returns {Promise}
185
+ */
186
+ async process() {
187
+ for (const item of this.items) {
188
+ if (this.hasReachedConcurrencyLimit()) {
189
+ await this.processingSlot();
190
+ }
191
+ this.startProcessing(item);
192
+ }
193
+ return this.drained();
194
+ }
195
+ /**
196
+ * Creates a deferred promise and pushes the related callback to the pending
197
+ * queue. Returns the promise which is used to wait for the callback.
198
+ *
199
+ * @returns {Promise}
200
+ */
201
+ async processingSlot() {
202
+ return this.waitForTaskToFinish();
203
+ }
204
+ /**
205
+ * Wait for one of the active tasks to finish processing.
206
+ */
207
+ async waitForTaskToFinish() {
208
+ await Promise.race(this.tasks);
209
+ }
210
+ /**
211
+ * Create a processing function for the given `item`.
212
+ *
213
+ * @param {*} item
214
+ */
215
+ startProcessing(item) {
216
+ const task = this.createTaskFor(item).then((result) => {
217
+ this.results.push(result);
218
+ this.tasks.splice(this.tasks.indexOf(task), 1);
219
+ }).catch((error) => {
220
+ this.tasks.splice(this.tasks.indexOf(task), 1);
221
+ if (this.errorHandler) {
222
+ return this.errorHandler(error, item);
223
+ }
224
+ this.errors.push(promise_pool_error_1.PromisePoolError.createFrom(error, item));
225
+ });
226
+ this.tasks.push(task);
227
+ }
228
+ /**
229
+ * Ensures a returned promise for the processing of the given `item`.
230
+ *
231
+ * @param item
232
+ *
233
+ * @returns {*}
234
+ */
235
+ async createTaskFor(item) {
236
+ return this.handler(item);
237
+ }
238
+ /**
239
+ * Wait for all active tasks to finish. Once all the tasks finished
240
+ * processing, returns an object containing the results and errors.
241
+ *
242
+ * @returns {Object}
243
+ */
244
+ async drained() {
245
+ await this.drainActiveTasks();
246
+ return {
247
+ results: this.results,
248
+ errors: this.errors
249
+ };
250
+ }
251
+ /**
252
+ * Wait for all of the active tasks to finish processing.
253
+ */
254
+ async drainActiveTasks() {
255
+ await Promise.all(this.tasks);
256
+ }
257
+ };
258
+ exports.PromisePoolExecutor = PromisePoolExecutor;
259
+ }
260
+ });
261
+
262
+ // ../../node_modules/@supercharge/promise-pool/dist/promise-pool.js
263
+ var require_promise_pool = __commonJS({
264
+ "../../node_modules/@supercharge/promise-pool/dist/promise-pool.js"(exports) {
265
+ "use strict";
266
+ init_browser_process_shim();
267
+ Object.defineProperty(exports, "__esModule", { value: true });
268
+ exports.PromisePool = void 0;
269
+ var promise_pool_executor_1 = require_promise_pool_executor();
270
+ var PromisePool2 = class _PromisePool {
271
+ /**
272
+ * Instantiates a new promise pool with a default `concurrency: 10` and `items: []`.
273
+ *
274
+ * @param {Object} options
275
+ */
276
+ constructor(items) {
277
+ this.concurrency = 10;
278
+ this.items = items !== null && items !== void 0 ? items : [];
279
+ this.errorHandler = void 0;
280
+ }
281
+ /**
282
+ * Set the number of tasks to process concurrently in the promise pool.
283
+ *
284
+ * @param {Integer} concurrency
285
+ *
286
+ * @returns {PromisePool}
287
+ */
288
+ withConcurrency(concurrency) {
289
+ this.concurrency = concurrency;
290
+ return this;
291
+ }
292
+ /**
293
+ * Set the number of tasks to process concurrently in the promise pool.
294
+ *
295
+ * @param {Number} concurrency
296
+ *
297
+ * @returns {PromisePool}
298
+ */
299
+ static withConcurrency(concurrency) {
300
+ return new this().withConcurrency(concurrency);
301
+ }
302
+ /**
303
+ * Set the items to be processed in the promise pool.
304
+ *
305
+ * @param {Array} items
306
+ *
307
+ * @returns {PromisePool}
308
+ */
309
+ for(items) {
310
+ return new _PromisePool(items).withConcurrency(this.concurrency);
311
+ }
312
+ /**
313
+ * Set the items to be processed in the promise pool.
314
+ *
315
+ * @param {Array} items
316
+ *
317
+ * @returns {PromisePool}
318
+ */
319
+ static for(items) {
320
+ return new this().for(items);
321
+ }
322
+ /**
323
+ * Set the error handler function to execute when an error occurs.
324
+ *
325
+ * @param {Function} handler
326
+ *
327
+ * @returns {PromisePool}
328
+ */
329
+ handleError(handler) {
330
+ this.errorHandler = handler;
331
+ return this;
332
+ }
333
+ /**
334
+ * Starts processing the promise pool by iterating over the items
335
+ * and running each item through the async `callback` function.
336
+ *
337
+ * @param {Function} The async processing function receiving each item from the `items` array.
338
+ *
339
+ * @returns Promise<{ results, errors }>
340
+ */
341
+ async process(callback) {
342
+ return new promise_pool_executor_1.PromisePoolExecutor().withConcurrency(this.concurrency).withHandler(callback).handleError(this.errorHandler).for(this.items).start();
343
+ }
344
+ };
345
+ exports.PromisePool = PromisePool2;
346
+ }
347
+ });
348
+
349
+ // ../../node_modules/@supercharge/promise-pool/dist/index.js
350
+ var require_dist = __commonJS({
351
+ "../../node_modules/@supercharge/promise-pool/dist/index.js"(exports, module) {
352
+ "use strict";
353
+ init_browser_process_shim();
354
+ var promise_pool_1 = require_promise_pool();
355
+ module.exports = promise_pool_1.PromisePool;
356
+ }
357
+ });
358
+
359
+ // src/filedownloader.ts
360
+ init_browser_process_shim();
361
+ var import_debug = __toESM(require_browser());
362
+ var import_promise_pool = __toESM(require_dist());
363
+ var debug = (0, import_debug.default)("concerto:FileDownloader");
364
+ function flatten(arr) {
365
+ return [].concat(...arr);
366
+ }
367
+ var filterUndefined = (arr) => arr.filter((value) => Boolean(value));
368
+ var handleJobError = async (error, job) => {
369
+ const errLike = error;
370
+ const badHttpResponse = errLike.response && errLike.response.status && errLike.response.status !== 200;
371
+ const dnsFailure = errLike.code && errLike.code === "ENOTFOUND";
372
+ const jobUrl = job.url;
373
+ if (badHttpResponse || dnsFailure) {
374
+ const err = new Error(`Unable to download external model dependency '${jobUrl}'`);
375
+ err.code = "MISSING_DEPENDENCY";
376
+ throw err;
377
+ }
378
+ throw new Error("Failed to load model file. Job: " + jobUrl + " Details: " + error);
379
+ };
380
+ var FileDownloader = class {
381
+ /**
382
+ * Create a FileDownloader and bind to a FileLoader.
383
+ * @param fileLoader - the loader to use to download model files
384
+ * @param getExternalImports - a function taking a file and returning new files
385
+ * @param concurrency - the number of model files to download concurrently
386
+ */
387
+ constructor(fileLoader, getExternalImports, concurrency = 10) {
388
+ this.fileLoader = fileLoader;
389
+ this.concurrency = concurrency;
390
+ this.getExternalImports = getExternalImports;
391
+ }
392
+ /**
393
+ * Download all external dependencies for an array of model files
394
+ * @param files - the model files to start the walk from
395
+ * @param options - Options object passed to FileLoaders
396
+ * @return a promise that resolves to Files[] for the external model files
397
+ */
398
+ downloadExternalDependencies(files, options = {}) {
399
+ const method = "downloadExternalDependencies";
400
+ debug(method);
401
+ const downloadedUris = /* @__PURE__ */ new Set();
402
+ const jobs = flatten(files.map((file) => {
403
+ const externalImports = this.getExternalImports(file);
404
+ return Object.keys(externalImports).map((importDeclaration) => ({
405
+ downloadedUris,
406
+ url: externalImports[importDeclaration],
407
+ options
408
+ }));
409
+ }));
410
+ return import_promise_pool.default.withConcurrency(this.concurrency).for(jobs).handleError(handleJobError).process((x) => this.runJob(x, this.fileLoader)).then(({ results }) => filterUndefined(flatten(results)));
411
+ }
412
+ /**
413
+ * Execute a Job
414
+ * @param job - the job to execute
415
+ * @param fileLoader - the loader to use to download model files.
416
+ * @return a promise to the job results
417
+ */
418
+ runJob(job, fileLoader) {
419
+ const downloadedUris = job.downloadedUris;
420
+ const options = job.options;
421
+ const url = job.url;
422
+ downloadedUris.add(url);
423
+ debug("runJob", "Loading", url);
424
+ return fileLoader.load(url, options).then(async (file) => {
425
+ debug("runJob", "Loaded", url);
426
+ const externalImports = this.getExternalImports(file);
427
+ const importedUris = Array.from(
428
+ new Set(
429
+ Object.keys(externalImports).map((importDeclaration) => externalImports[importDeclaration])
430
+ )
431
+ );
432
+ debug("runJob", "importedUris", importedUris);
433
+ const externalImportsFiles = await import_promise_pool.default.withConcurrency(this.concurrency).for(importedUris).handleError(handleJobError).process((uri) => {
434
+ if (!downloadedUris.has(uri)) {
435
+ return this.runJob({
436
+ options,
437
+ url: uri,
438
+ downloadedUris
439
+ }, fileLoader);
440
+ }
441
+ return void 0;
442
+ }).then(({ results }) => filterUndefined(flatten(results)));
443
+ return externalImportsFiles.concat([file]);
444
+ });
445
+ }
446
+ };
447
+ var filedownloader_default = FileDownloader;
448
+
449
+ export {
450
+ FileDownloader,
451
+ filedownloader_default
452
+ };
453
+ //# sourceMappingURL=chunk-YURYZDD2.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../node_modules/@supercharge/promise-pool/dist/promise-pool-error.js", "../../../../node_modules/@supercharge/promise-pool/dist/promise-pool-executor.js", "../../../../node_modules/@supercharge/promise-pool/dist/promise-pool.js", "../../../../node_modules/@supercharge/promise-pool/dist/index.js", "../../src/filedownloader.ts"],
4
+ "sourcesContent": ["'use strict';\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromisePoolError = void 0;\nclass PromisePoolError extends Error {\n /**\n * Create a new instance for the given `message` and `item`.\n *\n * @param error The original error\n * @param item The item causing the error\n */\n constructor(error, item) {\n super();\n this.item = item;\n this.name = this.constructor.name;\n this.message = this.messageFrom(error);\n Error.captureStackTrace(this, this.constructor);\n }\n /**\n * Returns a new promise pool error instance wrapping the `error` and `item`.\n *\n * @param {*} error\n * @param {*} item\n *\n * @returns {PromisePoolError}\n */\n static createFrom(error, item) {\n return new this(error, item);\n }\n /**\n * Returns the error message from the given `error`.\n *\n * @param {*} error\n *\n * @returns {String}\n */\n messageFrom(error) {\n if (error instanceof Error) {\n return error.message;\n }\n if (typeof error === 'object') {\n return error.message;\n }\n if (typeof error === 'string' || typeof error === 'number') {\n return error.toString();\n }\n return '';\n }\n}\nexports.PromisePoolError = PromisePoolError;\n", "'use strict';\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromisePoolExecutor = void 0;\nconst promise_pool_error_1 = require(\"./promise-pool-error\");\nclass PromisePoolExecutor {\n /**\n * Creates a new promise pool executer instance with a default concurrency of 10.\n */\n constructor() {\n this.tasks = [];\n this.items = [];\n this.errors = [];\n this.results = [];\n this.concurrency = 10;\n this.handler = () => { };\n this.errorHandler = undefined;\n }\n /**\n * Set the number of tasks to process concurrently the promise pool.\n *\n * @param {Integer} concurrency\n *\n * @returns {PromisePoolExecutor}\n */\n withConcurrency(concurrency) {\n this.concurrency = concurrency;\n return this;\n }\n /**\n * Set the items to be processed in the promise pool.\n *\n * @param {Array} items\n *\n * @returns {PromisePoolExecutor}\n */\n for(items) {\n this.items = items;\n return this;\n }\n /**\n * Set the handler that is applied to each item.\n *\n * @param {Function} action\n *\n * @returns {PromisePoolExecutor}\n */\n withHandler(action) {\n this.handler = action;\n return this;\n }\n /**\n * Set the error handler function to execute when an error occurs.\n *\n * @param {Function} handler\n *\n * @returns {PromisePoolExecutor}\n */\n handleError(handler) {\n this.errorHandler = handler;\n return this;\n }\n /**\n * Determines whether the number of active tasks is greater or equal to the concurrency limit.\n *\n * @returns {Boolean}\n */\n hasReachedConcurrencyLimit() {\n return this.activeCount() >= this.concurrency;\n }\n /**\n * Returns the number of active tasks.\n *\n * @returns {Number}\n */\n activeCount() {\n return this.tasks.length;\n }\n /**\n * Start processing the promise pool.\n *\n * @returns {Array}\n */\n async start() {\n this.validateInputs();\n return await this.process();\n }\n /**\n * Ensure valid inputs and throw otherwise.\n *\n * @throws\n */\n validateInputs() {\n if (typeof this.handler !== 'function') {\n throw new Error('The first parameter for the .process(fn) method must be a function');\n }\n if (!(typeof this.concurrency === 'number' && this.concurrency >= 1)) {\n throw new TypeError(`\"concurrency\" must be a number, 1 or up. Received \"${this.concurrency}\" (${typeof this.concurrency})`);\n }\n if (!Array.isArray(this.items)) {\n throw new TypeError(`\"items\" must be an array. Received ${typeof this.items}`);\n }\n if (this.errorHandler) {\n if (typeof this.errorHandler !== 'function') {\n throw new Error(`The error handler must be a function. Received ${typeof this.errorHandler}`);\n }\n }\n }\n /**\n * Starts processing the promise pool by iterating over the items\n * and running each item through the async `callback` function.\n *\n * @param {Function} callback\n *\n * @returns {Promise}\n */\n async process() {\n for (const item of this.items) {\n if (this.hasReachedConcurrencyLimit()) {\n await this.processingSlot();\n }\n this.startProcessing(item);\n }\n return this.drained();\n }\n /**\n * Creates a deferred promise and pushes the related callback to the pending\n * queue. Returns the promise which is used to wait for the callback.\n *\n * @returns {Promise}\n */\n async processingSlot() {\n return this.waitForTaskToFinish();\n }\n /**\n * Wait for one of the active tasks to finish processing.\n */\n async waitForTaskToFinish() {\n await Promise.race(this.tasks);\n }\n /**\n * Create a processing function for the given `item`.\n *\n * @param {*} item\n */\n startProcessing(item) {\n const task = this.createTaskFor(item)\n .then(result => {\n this.results.push(result);\n this.tasks.splice(this.tasks.indexOf(task), 1);\n })\n .catch(error => {\n this.tasks.splice(this.tasks.indexOf(task), 1);\n if (this.errorHandler) {\n return this.errorHandler(error, item);\n }\n this.errors.push(promise_pool_error_1.PromisePoolError.createFrom(error, item));\n });\n this.tasks.push(task);\n }\n /**\n * Ensures a returned promise for the processing of the given `item`.\n *\n * @param item\n *\n * @returns {*}\n */\n async createTaskFor(item) {\n return this.handler(item);\n }\n /**\n * Wait for all active tasks to finish. Once all the tasks finished\n * processing, returns an object containing the results and errors.\n *\n * @returns {Object}\n */\n async drained() {\n await this.drainActiveTasks();\n return {\n results: this.results,\n errors: this.errors\n };\n }\n /**\n * Wait for all of the active tasks to finish processing.\n */\n async drainActiveTasks() {\n await Promise.all(this.tasks);\n }\n}\nexports.PromisePoolExecutor = PromisePoolExecutor;\n", "'use strict';\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PromisePool = void 0;\nconst promise_pool_executor_1 = require(\"./promise-pool-executor\");\nclass PromisePool {\n /**\n * Instantiates a new promise pool with a default `concurrency: 10` and `items: []`.\n *\n * @param {Object} options\n */\n constructor(items) {\n this.concurrency = 10;\n this.items = items !== null && items !== void 0 ? items : [];\n this.errorHandler = undefined;\n }\n /**\n * Set the number of tasks to process concurrently in the promise pool.\n *\n * @param {Integer} concurrency\n *\n * @returns {PromisePool}\n */\n withConcurrency(concurrency) {\n this.concurrency = concurrency;\n return this;\n }\n /**\n * Set the number of tasks to process concurrently in the promise pool.\n *\n * @param {Number} concurrency\n *\n * @returns {PromisePool}\n */\n static withConcurrency(concurrency) {\n return new this().withConcurrency(concurrency);\n }\n /**\n * Set the items to be processed in the promise pool.\n *\n * @param {Array} items\n *\n * @returns {PromisePool}\n */\n for(items) {\n return new PromisePool(items).withConcurrency(this.concurrency);\n }\n /**\n * Set the items to be processed in the promise pool.\n *\n * @param {Array} items\n *\n * @returns {PromisePool}\n */\n static for(items) {\n return new this().for(items);\n }\n /**\n * Set the error handler function to execute when an error occurs.\n *\n * @param {Function} handler\n *\n * @returns {PromisePool}\n */\n handleError(handler) {\n this.errorHandler = handler;\n return this;\n }\n /**\n * Starts processing the promise pool by iterating over the items\n * and running each item through the async `callback` function.\n *\n * @param {Function} The async processing function receiving each item from the `items` array.\n *\n * @returns Promise<{ results, errors }>\n */\n async process(callback) {\n return new promise_pool_executor_1.PromisePoolExecutor()\n .withConcurrency(this.concurrency)\n .withHandler(callback)\n .handleError(this.errorHandler)\n .for(this.items)\n .start();\n }\n}\nexports.PromisePool = PromisePool;\n", "'use strict';\nconst promise_pool_1 = require(\"./promise-pool\");\nmodule.exports = promise_pool_1.PromisePool;\n", "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport createDebug from 'debug';\nimport PromisePool from '@supercharge/promise-pool';\n\nimport type { FileLoader } from './loaders/fileloader';\n\nconst debug = createDebug('concerto:FileDownloader');\n\ntype ExternalImportMap = Record<string, string>;\ntype DownloadJob<TFile> = {\n downloadedUris: Set<string>;\n url: string;\n options: RequestInit;\n};\n\nfunction flatten<T>(arr: T[][]): T[];\nfunction flatten<T>(arr: Array<T[] | undefined>): Array<T | undefined>;\nfunction flatten<T>(arr: Array<T[] | undefined>): Array<T | undefined> {\n return ([] as Array<T | undefined>).concat(...arr);\n}\nconst filterUndefined = <T>(arr: Array<T | undefined | null>): T[] => arr.filter((value): value is T => Boolean(value));\n\n// Used as the PromisePool error handler for both the outer pool (whose items are\n// DownloadJob objects) and the inner recursive pool (whose items are plain URI\n// strings), hence the union.\nconst handleJobError = async (error: unknown, job: DownloadJob<unknown> | string): Promise<never> => {\n const errLike = error as { response?: { status?: number }; code?: string };\n const badHttpResponse = errLike.response && errLike.response.status && errLike.response.status !== 200;\n const dnsFailure = errLike.code && errLike.code === 'ENOTFOUND';\n // undefined for the inner pool's string jobs, as it has always been\n const jobUrl = (job as DownloadJob<unknown>).url;\n if(badHttpResponse || dnsFailure){\n const err = new Error(`Unable to download external model dependency '${jobUrl}'`);\n (err as { code?: string }).code = 'MISSING_DEPENDENCY';\n throw err;\n }\n throw new Error('Failed to load model file. Job: ' + jobUrl + ' Details: ' + error);\n};\n\n/**\n * Downloads the transitive closure of a set of model files.\n *\n * The files handed in to start the walk are not necessarily the same type as the files\n * the loader produces: a caller may seed the walk with model files it has already parsed\n * into its own representation, while everything downloaded from a URI is whatever the\n * bound FileLoader returns. TSeed is the former, TFile the latter, and both are only ever\n * inspected through getExternalImports. TSeed defaults to TFile for the common case where\n * a caller seeds the walk with files of the same type the loader produces.\n * @memberof module:concerto-core\n */\nclass FileDownloader<TFile = unknown, TSeed = TFile> {\n public fileLoader: FileLoader<TFile>;\n public getExternalImports: (file: TFile | TSeed) => ExternalImportMap;\n public concurrency: number;\n\n /**\n * Create a FileDownloader and bind to a FileLoader.\n * @param fileLoader - the loader to use to download model files\n * @param getExternalImports - a function taking a file and returning new files\n * @param concurrency - the number of model files to download concurrently\n */\n constructor(fileLoader: FileLoader<TFile>, getExternalImports: (file: TFile | TSeed) => ExternalImportMap, concurrency = 10) {\n this.fileLoader = fileLoader;\n this.concurrency = concurrency;\n this.getExternalImports = getExternalImports;\n }\n\n /**\n * Download all external dependencies for an array of model files\n * @param files - the model files to start the walk from\n * @param options - Options object passed to FileLoaders\n * @return a promise that resolves to Files[] for the external model files\n */\n downloadExternalDependencies(files: TSeed[], options: RequestInit = {} as RequestInit): Promise<TFile[]> {\n const method = 'downloadExternalDependencies';\n debug(method);\n\n const downloadedUris = new Set<string>();\n\n const jobs: Array<DownloadJob<TFile>> = flatten(files.map(file => {\n const externalImports = this.getExternalImports(file);\n return Object.keys(externalImports).map(importDeclaration => ({\n downloadedUris: downloadedUris,\n url: externalImports[importDeclaration],\n options: options\n }));\n }));\n\n return PromisePool\n .withConcurrency(this.concurrency)\n .for(jobs)\n .handleError(handleJobError)\n .process((x: DownloadJob<TFile>) => this.runJob(x, this.fileLoader))\n .then(({ results }) => filterUndefined(flatten(results)));\n }\n\n /**\n * Execute a Job\n * @param job - the job to execute\n * @param fileLoader - the loader to use to download model files.\n * @return a promise to the job results\n */\n runJob(job: DownloadJob<TFile>, fileLoader: FileLoader<TFile>): Promise<TFile[]> {\n const downloadedUris = job.downloadedUris;\n const options = job.options;\n const url = job.url;\n\n // cache the URI, so we don't download it again\n downloadedUris.add(url);\n\n debug('runJob', 'Loading', url);\n return fileLoader.load(url, options).\n then(async (file: TFile) => {\n debug('runJob', 'Loaded', url, );\n\n // get the external imports\n const externalImports = this.getExternalImports(file);\n const importedUris = Array.from(\n new Set(\n Object.keys(externalImports)\n .map((importDeclaration) => externalImports[importDeclaration])\n )\n );\n debug('runJob', 'importedUris', importedUris);\n\n const externalImportsFiles = await PromisePool\n .withConcurrency(this.concurrency)\n .for(importedUris)\n .handleError(handleJobError)\n .process((uri: string) => {\n if (!downloadedUris.has(uri)) {\n // recurse and add a new job for the referenced URI\n return this.runJob({\n options: options,\n url: uri,\n downloadedUris: downloadedUris\n }, fileLoader);\n }\n return undefined;\n })\n .then(({ results }) => filterUndefined(flatten(results)));\n\n return externalImportsFiles.concat([file]);\n });\n }\n}\n\nexport { FileDownloader };\nexport default FileDownloader;\n"],
5
+ "mappings": ";;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AACA,WAAO,eAAe,SAAS,cAAc,EAAE,OAAO,KAAK,CAAC;AAC5D,YAAQ,mBAAmB;AAC3B,QAAM,mBAAN,cAA+B,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAOjC,YAAY,OAAO,MAAM;AACrB,cAAM;AACN,aAAK,OAAO;AACZ,aAAK,OAAO,KAAK,YAAY;AAC7B,aAAK,UAAU,KAAK,YAAY,KAAK;AACrC,cAAM,kBAAkB,MAAM,KAAK,WAAW;AAAA,MAClD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MASA,OAAO,WAAW,OAAO,MAAM;AAC3B,eAAO,IAAI,KAAK,OAAO,IAAI;AAAA,MAC/B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAQA,YAAY,OAAO;AACf,YAAI,iBAAiB,OAAO;AACxB,iBAAO,MAAM;AAAA,QACjB;AACA,YAAI,OAAO,UAAU,UAAU;AAC3B,iBAAO,MAAM;AAAA,QACjB;AACA,YAAI,OAAO,UAAU,YAAY,OAAO,UAAU,UAAU;AACxD,iBAAO,MAAM,SAAS;AAAA,QAC1B;AACA,eAAO;AAAA,MACX;AAAA,IACJ;AACA,YAAQ,mBAAmB;AAAA;AAAA;;;AChD3B;AAAA;AAAA;AAAA;AACA,WAAO,eAAe,SAAS,cAAc,EAAE,OAAO,KAAK,CAAC;AAC5D,YAAQ,sBAAsB;AAC9B,QAAM,uBAAuB;AAC7B,QAAM,sBAAN,MAA0B;AAAA;AAAA;AAAA;AAAA,MAItB,cAAc;AACV,aAAK,QAAQ,CAAC;AACd,aAAK,QAAQ,CAAC;AACd,aAAK,SAAS,CAAC;AACf,aAAK,UAAU,CAAC;AAChB,aAAK,cAAc;AACnB,aAAK,UAAU,MAAM;AAAA,QAAE;AACvB,aAAK,eAAe;AAAA,MACxB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAQA,gBAAgB,aAAa;AACzB,aAAK,cAAc;AACnB,eAAO;AAAA,MACX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAQA,IAAI,OAAO;AACP,aAAK,QAAQ;AACb,eAAO;AAAA,MACX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAQA,YAAY,QAAQ;AAChB,aAAK,UAAU;AACf,eAAO;AAAA,MACX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAQA,YAAY,SAAS;AACjB,aAAK,eAAe;AACpB,eAAO;AAAA,MACX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAMA,6BAA6B;AACzB,eAAO,KAAK,YAAY,KAAK,KAAK;AAAA,MACtC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAMA,cAAc;AACV,eAAO,KAAK,MAAM;AAAA,MACtB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAMA,MAAM,QAAQ;AACV,aAAK,eAAe;AACpB,eAAO,MAAM,KAAK,QAAQ;AAAA,MAC9B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAMA,iBAAiB;AACb,YAAI,OAAO,KAAK,YAAY,YAAY;AACpC,gBAAM,IAAI,MAAM,oEAAoE;AAAA,QACxF;AACA,YAAI,EAAE,OAAO,KAAK,gBAAgB,YAAY,KAAK,eAAe,IAAI;AAClE,gBAAM,IAAI,UAAU,sDAAsD,KAAK,WAAW,MAAM,OAAO,KAAK,WAAW,GAAG;AAAA,QAC9H;AACA,YAAI,CAAC,MAAM,QAAQ,KAAK,KAAK,GAAG;AAC5B,gBAAM,IAAI,UAAU,sCAAsC,OAAO,KAAK,KAAK,EAAE;AAAA,QACjF;AACA,YAAI,KAAK,cAAc;AACnB,cAAI,OAAO,KAAK,iBAAiB,YAAY;AACzC,kBAAM,IAAI,MAAM,kDAAkD,OAAO,KAAK,YAAY,EAAE;AAAA,UAChG;AAAA,QACJ;AAAA,MACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MASA,MAAM,UAAU;AACZ,mBAAW,QAAQ,KAAK,OAAO;AAC3B,cAAI,KAAK,2BAA2B,GAAG;AACnC,kBAAM,KAAK,eAAe;AAAA,UAC9B;AACA,eAAK,gBAAgB,IAAI;AAAA,QAC7B;AACA,eAAO,KAAK,QAAQ;AAAA,MACxB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAOA,MAAM,iBAAiB;AACnB,eAAO,KAAK,oBAAoB;AAAA,MACpC;AAAA;AAAA;AAAA;AAAA,MAIA,MAAM,sBAAsB;AACxB,cAAM,QAAQ,KAAK,KAAK,KAAK;AAAA,MACjC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAMA,gBAAgB,MAAM;AAClB,cAAM,OAAO,KAAK,cAAc,IAAI,EAC/B,KAAK,YAAU;AAChB,eAAK,QAAQ,KAAK,MAAM;AACxB,eAAK,MAAM,OAAO,KAAK,MAAM,QAAQ,IAAI,GAAG,CAAC;AAAA,QACjD,CAAC,EACI,MAAM,WAAS;AAChB,eAAK,MAAM,OAAO,KAAK,MAAM,QAAQ,IAAI,GAAG,CAAC;AAC7C,cAAI,KAAK,cAAc;AACnB,mBAAO,KAAK,aAAa,OAAO,IAAI;AAAA,UACxC;AACA,eAAK,OAAO,KAAK,qBAAqB,iBAAiB,WAAW,OAAO,IAAI,CAAC;AAAA,QAClF,CAAC;AACD,aAAK,MAAM,KAAK,IAAI;AAAA,MACxB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAQA,MAAM,cAAc,MAAM;AACtB,eAAO,KAAK,QAAQ,IAAI;AAAA,MAC5B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAOA,MAAM,UAAU;AACZ,cAAM,KAAK,iBAAiB;AAC5B,eAAO;AAAA,UACH,SAAS,KAAK;AAAA,UACd,QAAQ,KAAK;AAAA,QACjB;AAAA,MACJ;AAAA;AAAA;AAAA;AAAA,MAIA,MAAM,mBAAmB;AACrB,cAAM,QAAQ,IAAI,KAAK,KAAK;AAAA,MAChC;AAAA,IACJ;AACA,YAAQ,sBAAsB;AAAA;AAAA;;;AC7L9B;AAAA;AAAA;AAAA;AACA,WAAO,eAAe,SAAS,cAAc,EAAE,OAAO,KAAK,CAAC;AAC5D,YAAQ,cAAc;AACtB,QAAM,0BAA0B;AAChC,QAAMA,eAAN,MAAM,aAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAMd,YAAY,OAAO;AACf,aAAK,cAAc;AACnB,aAAK,QAAQ,UAAU,QAAQ,UAAU,SAAS,QAAQ,CAAC;AAC3D,aAAK,eAAe;AAAA,MACxB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAQA,gBAAgB,aAAa;AACzB,aAAK,cAAc;AACnB,eAAO;AAAA,MACX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAQA,OAAO,gBAAgB,aAAa;AAChC,eAAO,IAAI,KAAK,EAAE,gBAAgB,WAAW;AAAA,MACjD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAQA,IAAI,OAAO;AACP,eAAO,IAAI,aAAY,KAAK,EAAE,gBAAgB,KAAK,WAAW;AAAA,MAClE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAQA,OAAO,IAAI,OAAO;AACd,eAAO,IAAI,KAAK,EAAE,IAAI,KAAK;AAAA,MAC/B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAQA,YAAY,SAAS;AACjB,aAAK,eAAe;AACpB,eAAO;AAAA,MACX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MASA,MAAM,QAAQ,UAAU;AACpB,eAAO,IAAI,wBAAwB,oBAAoB,EAClD,gBAAgB,KAAK,WAAW,EAChC,YAAY,QAAQ,EACpB,YAAY,KAAK,YAAY,EAC7B,IAAI,KAAK,KAAK,EACd,MAAM;AAAA,MACf;AAAA,IACJ;AACA,YAAQ,cAAcA;AAAA;AAAA;;;ACpFtB;AAAA;AAAA;AAAA;AACA,QAAM,iBAAiB;AACvB,WAAO,UAAU,eAAe;AAAA;AAAA;;;ACFhC;AAcA,mBAAwB;AACxB,0BAAwB;AAIxB,IAAM,YAAQ,aAAAC,SAAY,yBAAyB;AAWnD,SAAS,QAAW,KAAmD;AACnE,SAAQ,CAAC,EAA2B,OAAO,GAAG,GAAG;AACrD;AACA,IAAM,kBAAkB,CAAI,QAA0C,IAAI,OAAO,CAAC,UAAsB,QAAQ,KAAK,CAAC;AAKtH,IAAM,iBAAiB,OAAO,OAAgB,QAAuD;AACjG,QAAM,UAAU;AAChB,QAAM,kBAAkB,QAAQ,YAAY,QAAQ,SAAS,UAAU,QAAQ,SAAS,WAAW;AACnG,QAAM,aAAa,QAAQ,QAAQ,QAAQ,SAAS;AAEpD,QAAM,SAAU,IAA6B;AAC7C,MAAG,mBAAmB,YAAW;AAC7B,UAAM,MAAM,IAAI,MAAM,iDAAiD,MAAM,GAAG;AAChF,IAAC,IAA0B,OAAO;AAClC,UAAM;AAAA,EACV;AACA,QAAM,IAAI,MAAM,qCAAqC,SAAS,eAAe,KAAK;AACtF;AAaA,IAAM,iBAAN,MAAqD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWjD,YAAY,YAA+B,oBAAgE,cAAc,IAAI;AACzH,SAAK,aAAa;AAClB,SAAK,cAAc;AACnB,SAAK,qBAAqB;AAAA,EAC9B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,6BAA6B,OAAgB,UAAuB,CAAC,GAAoC;AACrG,UAAM,SAAS;AACf,UAAM,MAAM;AAEZ,UAAM,iBAAiB,oBAAI,IAAY;AAEvC,UAAM,OAAkC,QAAQ,MAAM,IAAI,UAAQ;AAC9D,YAAM,kBAAkB,KAAK,mBAAmB,IAAI;AACpD,aAAO,OAAO,KAAK,eAAe,EAAE,IAAI,wBAAsB;AAAA,QAC1D;AAAA,QACA,KAAK,gBAAgB,iBAAiB;AAAA,QACtC;AAAA,MACJ,EAAE;AAAA,IACN,CAAC,CAAC;AAEF,WAAO,oBAAAC,QACF,gBAAgB,KAAK,WAAW,EAChC,IAAI,IAAI,EACR,YAAY,cAAc,EAC1B,QAAQ,CAAC,MAA0B,KAAK,OAAO,GAAG,KAAK,UAAU,CAAC,EAClE,KAAK,CAAC,EAAE,QAAQ,MAAM,gBAAgB,QAAQ,OAAO,CAAC,CAAC;AAAA,EAChE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,OAAO,KAAyB,YAAiD;AAC7E,UAAM,iBAAiB,IAAI;AAC3B,UAAM,UAAU,IAAI;AACpB,UAAM,MAAM,IAAI;AAGhB,mBAAe,IAAI,GAAG;AAEtB,UAAM,UAAU,WAAW,GAAG;AAC9B,WAAO,WAAW,KAAK,KAAK,OAAO,EAC/B,KAAK,OAAO,SAAgB;AACxB,YAAM,UAAU,UAAU,GAAK;AAG/B,YAAM,kBAAkB,KAAK,mBAAmB,IAAI;AACpD,YAAM,eAAe,MAAM;AAAA,QACvB,IAAI;AAAA,UACA,OAAO,KAAK,eAAe,EACtB,IAAI,CAAC,sBAAsB,gBAAgB,iBAAiB,CAAC;AAAA,QACtE;AAAA,MACJ;AACA,YAAM,UAAU,gBAAgB,YAAY;AAE5C,YAAM,uBAAuB,MAAM,oBAAAA,QAC9B,gBAAgB,KAAK,WAAW,EAChC,IAAI,YAAY,EAChB,YAAY,cAAc,EAC1B,QAAQ,CAAC,QAAgB;AACtB,YAAI,CAAC,eAAe,IAAI,GAAG,GAAG;AAE1B,iBAAO,KAAK,OAAO;AAAA,YACf;AAAA,YACA,KAAK;AAAA,YACL;AAAA,UACJ,GAAG,UAAU;AAAA,QACjB;AACA,eAAO;AAAA,MACX,CAAC,EACA,KAAK,CAAC,EAAE,QAAQ,MAAM,gBAAgB,QAAQ,OAAO,CAAC,CAAC;AAE5D,aAAO,qBAAqB,OAAO,CAAC,IAAI,CAAC;AAAA,IAC7C,CAAC;AAAA,EACT;AACJ;AAGA,IAAO,yBAAQ;",
6
+ "names": ["PromisePool", "createDebug", "PromisePool"]
7
+ }
@@ -0,0 +1,20 @@
1
+ import {
2
+ CONCERTO_DEPRECATION_001,
3
+ CONCERTO_DEPRECATION_002,
4
+ DEFAULT_BASE_EXCEPTION,
5
+ DEFAULT_VALIDATOR_EXCEPTION,
6
+ DEPRECATION_WARNING,
7
+ REGEX_VALIDATOR_EXCEPTION,
8
+ TYPE_NOT_FOUND_EXCEPTION
9
+ } from "./chunk-NAP47VIV.mjs";
10
+ import "./chunk-NSJTBLWA.mjs";
11
+ export {
12
+ CONCERTO_DEPRECATION_001,
13
+ CONCERTO_DEPRECATION_002,
14
+ DEFAULT_BASE_EXCEPTION,
15
+ DEFAULT_VALIDATOR_EXCEPTION,
16
+ DEPRECATION_WARNING,
17
+ REGEX_VALIDATOR_EXCEPTION,
18
+ TYPE_NOT_FOUND_EXCEPTION
19
+ };
20
+ //# sourceMappingURL=errorcodes.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,11 @@
1
+ import {
2
+ FileDownloader,
3
+ filedownloader_default
4
+ } from "./chunk-YURYZDD2.mjs";
5
+ import "./chunk-7LYWQ57N.mjs";
6
+ import "./chunk-NSJTBLWA.mjs";
7
+ export {
8
+ FileDownloader,
9
+ filedownloader_default as default
10
+ };
11
+ //# sourceMappingURL=filedownloader.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,12 @@
1
+ import {
2
+ FileWriter,
3
+ filewriter_default
4
+ } from "./chunk-3XGAUT4O.mjs";
5
+ import "./chunk-DOL2YKDZ.mjs";
6
+ import "./chunk-NQ5PDAAD.mjs";
7
+ import "./chunk-NSJTBLWA.mjs";
8
+ export {
9
+ FileWriter,
10
+ filewriter_default as default
11
+ };
12
+ //# sourceMappingURL=filewriter.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,10 @@
1
+ import {
2
+ ID_REGEX,
3
+ normalizeIdentifier
4
+ } from "./chunk-MCUSZIV7.mjs";
5
+ import "./chunk-NSJTBLWA.mjs";
6
+ export {
7
+ ID_REGEX,
8
+ normalizeIdentifier
9
+ };
10
+ //# sourceMappingURL=identifiers.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,83 @@
1
+ import {
2
+ null_default
3
+ } from "./chunk-4X5DBZDM.mjs";
4
+ import {
5
+ typedstack_default
6
+ } from "./chunk-6SOOHVQB.mjs";
7
+ import {
8
+ warning_exports
9
+ } from "./chunk-S52XDDAF.mjs";
10
+ import {
11
+ label_exports
12
+ } from "./chunk-WCGRUR5U.mjs";
13
+ import {
14
+ defaultfileloader_default
15
+ } from "./chunk-N42BHUZ6.mjs";
16
+ import {
17
+ compositefileloader_default
18
+ } from "./chunk-BDMF4RRF.mjs";
19
+ import {
20
+ githubfileloader_default
21
+ } from "./chunk-SU6SG5PJ.mjs";
22
+ import {
23
+ httpfileloader_default
24
+ } from "./chunk-EGOFDABS.mjs";
25
+ import {
26
+ logger_default
27
+ } from "./chunk-LZTTRWN3.mjs";
28
+ import {
29
+ modelwriter_exports
30
+ } from "./chunk-BSBOEFWN.mjs";
31
+ import {
32
+ basefileexception_default
33
+ } from "./chunk-YJQCJTA7.mjs";
34
+ import {
35
+ baseexception_default
36
+ } from "./chunk-R6CSKES3.mjs";
37
+ import {
38
+ errorcodes_exports
39
+ } from "./chunk-NAP47VIV.mjs";
40
+ import {
41
+ filedownloader_default
42
+ } from "./chunk-YURYZDD2.mjs";
43
+ import "./chunk-7LYWQ57N.mjs";
44
+ import {
45
+ filewriter_default
46
+ } from "./chunk-3XGAUT4O.mjs";
47
+ import "./chunk-DOL2YKDZ.mjs";
48
+ import {
49
+ identifiers_exports
50
+ } from "./chunk-MCUSZIV7.mjs";
51
+ import {
52
+ inmemorywriter_default
53
+ } from "./chunk-7DYPHXUR.mjs";
54
+ import {
55
+ writer_default
56
+ } from "./chunk-NQ5PDAAD.mjs";
57
+ import {
58
+ init_browser_process_shim
59
+ } from "./chunk-NSJTBLWA.mjs";
60
+
61
+ // src/index.ts
62
+ init_browser_process_shim();
63
+ export {
64
+ baseexception_default as BaseException,
65
+ basefileexception_default as BaseFileException,
66
+ compositefileloader_default as CompositeFileLoader,
67
+ defaultfileloader_default as DefaultFileLoader,
68
+ errorcodes_exports as ErrorCodes,
69
+ filedownloader_default as FileDownloader,
70
+ filewriter_default as FileWriter,
71
+ githubfileloader_default as GitHubFileLoader,
72
+ httpfileloader_default as HTTPFileLoader,
73
+ identifiers_exports as Identifiers,
74
+ inmemorywriter_default as InMemoryWriter,
75
+ label_exports as Label,
76
+ logger_default as Logger,
77
+ modelwriter_exports as ModelWriter,
78
+ null_default as NullUtil,
79
+ typedstack_default as TypedStack,
80
+ warning_exports as Warning,
81
+ writer_default as Writer
82
+ };
83
+ //# sourceMappingURL=index.mjs.map