@accordproject/concerto-cto 4.2.0 → 5.0.0-beta.1

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 (66) hide show
  1. package/dist/esm/chunk-ADZEFNZ5.mjs +46 -0
  2. package/dist/esm/chunk-ADZEFNZ5.mjs.map +7 -0
  3. package/dist/esm/chunk-JIDG6RUM.mjs +11851 -0
  4. package/dist/esm/chunk-JIDG6RUM.mjs.map +7 -0
  5. package/dist/esm/chunk-KXXMUWWS.mjs +370 -0
  6. package/dist/esm/chunk-KXXMUWWS.mjs.map +7 -0
  7. package/dist/esm/chunk-N5WVDVIT.mjs +831 -0
  8. package/dist/esm/chunk-N5WVDVIT.mjs.map +7 -0
  9. package/dist/esm/chunk-TXONDDFZ.mjs +53 -0
  10. package/dist/esm/chunk-TXONDDFZ.mjs.map +7 -0
  11. package/dist/esm/chunk-WNU2QZFD.mjs +40 -0
  12. package/dist/esm/chunk-WNU2QZFD.mjs.map +7 -0
  13. package/dist/esm/external.mjs +15 -0
  14. package/dist/esm/external.mjs.map +7 -0
  15. package/dist/esm/index.mjs +23 -0
  16. package/dist/esm/index.mjs.map +7 -0
  17. package/dist/esm/parseexception.mjs +12 -0
  18. package/dist/esm/parseexception.mjs.map +7 -0
  19. package/dist/esm/parserMain.mjs +16 -0
  20. package/dist/esm/parserMain.mjs.map +7 -0
  21. package/dist/esm/printer.mjs +12 -0
  22. package/dist/esm/printer.mjs.map +7 -0
  23. package/dist/esm-browser/chunk-ABBFUZVB.mjs +374 -0
  24. package/dist/esm-browser/chunk-ABBFUZVB.mjs.map +7 -0
  25. package/dist/esm-browser/chunk-E5UYTZNO.mjs +1696 -0
  26. package/dist/esm-browser/chunk-E5UYTZNO.mjs.map +7 -0
  27. package/dist/esm-browser/chunk-MSZDQHW6.mjs +66 -0
  28. package/dist/esm-browser/chunk-MSZDQHW6.mjs.map +7 -0
  29. package/dist/esm-browser/chunk-OMK4IF4X.mjs +48 -0
  30. package/dist/esm-browser/chunk-OMK4IF4X.mjs.map +7 -0
  31. package/dist/esm-browser/chunk-SEXNR5Y5.mjs +11851 -0
  32. package/dist/esm-browser/chunk-SEXNR5Y5.mjs.map +7 -0
  33. package/dist/esm-browser/chunk-VCWYA55K.mjs +933 -0
  34. package/dist/esm-browser/chunk-VCWYA55K.mjs.map +7 -0
  35. package/dist/esm-browser/chunk-YAX4W2RL.mjs +56 -0
  36. package/dist/esm-browser/chunk-YAX4W2RL.mjs.map +7 -0
  37. package/dist/esm-browser/external.mjs +14 -0
  38. package/dist/esm-browser/external.mjs.map +7 -0
  39. package/dist/esm-browser/index.mjs +27 -0
  40. package/dist/esm-browser/index.mjs.map +7 -0
  41. package/dist/esm-browser/parseexception.mjs +10 -0
  42. package/dist/esm-browser/parseexception.mjs.map +7 -0
  43. package/dist/esm-browser/parserMain.mjs +15 -0
  44. package/dist/esm-browser/parserMain.mjs.map +7 -0
  45. package/dist/esm-browser/printer.mjs +11 -0
  46. package/dist/esm-browser/printer.mjs.map +7 -0
  47. package/dist/external.d.ts +11 -5
  48. package/dist/external.js +6 -2
  49. package/dist/external.js.map +1 -1
  50. package/dist/index.d.ts +4 -4
  51. package/dist/index.js +11 -8
  52. package/dist/index.js.map +1 -1
  53. package/dist/parseexception.d.ts +2 -1
  54. package/dist/parseexception.js +6 -4
  55. package/dist/parseexception.js.map +1 -1
  56. package/dist/parser.js +374 -171
  57. package/dist/parser.js.map +1 -1
  58. package/dist/parserMain.d.ts +5 -5
  59. package/dist/parserMain.js +47 -6
  60. package/dist/parserMain.js.map +1 -1
  61. package/dist/printer.d.ts +3 -3
  62. package/dist/printer.js +4 -1
  63. package/dist/printer.js.map +1 -1
  64. package/package.json +19 -11
  65. package/dist/concerto-cto.js +0 -2
  66. package/dist/concerto-cto.js.LICENSE.txt +0 -12
@@ -0,0 +1,933 @@
1
+ import {
2
+ require_parser
3
+ } from "./chunk-SEXNR5Y5.mjs";
4
+ import {
5
+ require_concerto_metamodel
6
+ } from "./chunk-E5UYTZNO.mjs";
7
+ import {
8
+ __commonJS,
9
+ __toESM,
10
+ init_browser_process_shim,
11
+ process
12
+ } from "./chunk-MSZDQHW6.mjs";
13
+
14
+ // node_modules/ms/index.js
15
+ var require_ms = __commonJS({
16
+ "node_modules/ms/index.js"(exports, module) {
17
+ init_browser_process_shim();
18
+ var s = 1e3;
19
+ var m = s * 60;
20
+ var h = m * 60;
21
+ var d = h * 24;
22
+ var w = d * 7;
23
+ var y = d * 365.25;
24
+ module.exports = function(val, options) {
25
+ options = options || {};
26
+ var type = typeof val;
27
+ if (type === "string" && val.length > 0) {
28
+ return parse2(val);
29
+ } else if (type === "number" && isFinite(val)) {
30
+ return options.long ? fmtLong(val) : fmtShort(val);
31
+ }
32
+ throw new Error(
33
+ "val is not a non-empty string or a valid number. val=" + JSON.stringify(val)
34
+ );
35
+ };
36
+ function parse2(str) {
37
+ str = String(str);
38
+ if (str.length > 100) {
39
+ return;
40
+ }
41
+ var match = /^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(
42
+ str
43
+ );
44
+ if (!match) {
45
+ return;
46
+ }
47
+ var n = parseFloat(match[1]);
48
+ var type = (match[2] || "ms").toLowerCase();
49
+ switch (type) {
50
+ case "years":
51
+ case "year":
52
+ case "yrs":
53
+ case "yr":
54
+ case "y":
55
+ return n * y;
56
+ case "weeks":
57
+ case "week":
58
+ case "w":
59
+ return n * w;
60
+ case "days":
61
+ case "day":
62
+ case "d":
63
+ return n * d;
64
+ case "hours":
65
+ case "hour":
66
+ case "hrs":
67
+ case "hr":
68
+ case "h":
69
+ return n * h;
70
+ case "minutes":
71
+ case "minute":
72
+ case "mins":
73
+ case "min":
74
+ case "m":
75
+ return n * m;
76
+ case "seconds":
77
+ case "second":
78
+ case "secs":
79
+ case "sec":
80
+ case "s":
81
+ return n * s;
82
+ case "milliseconds":
83
+ case "millisecond":
84
+ case "msecs":
85
+ case "msec":
86
+ case "ms":
87
+ return n;
88
+ default:
89
+ return void 0;
90
+ }
91
+ }
92
+ function fmtShort(ms) {
93
+ var msAbs = Math.abs(ms);
94
+ if (msAbs >= d) {
95
+ return Math.round(ms / d) + "d";
96
+ }
97
+ if (msAbs >= h) {
98
+ return Math.round(ms / h) + "h";
99
+ }
100
+ if (msAbs >= m) {
101
+ return Math.round(ms / m) + "m";
102
+ }
103
+ if (msAbs >= s) {
104
+ return Math.round(ms / s) + "s";
105
+ }
106
+ return ms + "ms";
107
+ }
108
+ function fmtLong(ms) {
109
+ var msAbs = Math.abs(ms);
110
+ if (msAbs >= d) {
111
+ return plural(ms, msAbs, d, "day");
112
+ }
113
+ if (msAbs >= h) {
114
+ return plural(ms, msAbs, h, "hour");
115
+ }
116
+ if (msAbs >= m) {
117
+ return plural(ms, msAbs, m, "minute");
118
+ }
119
+ if (msAbs >= s) {
120
+ return plural(ms, msAbs, s, "second");
121
+ }
122
+ return ms + " ms";
123
+ }
124
+ function plural(ms, msAbs, n, name) {
125
+ var isPlural = msAbs >= n * 1.5;
126
+ return Math.round(ms / n) + " " + name + (isPlural ? "s" : "");
127
+ }
128
+ }
129
+ });
130
+
131
+ // node_modules/debug/src/common.js
132
+ var require_common = __commonJS({
133
+ "node_modules/debug/src/common.js"(exports, module) {
134
+ init_browser_process_shim();
135
+ function setup(env) {
136
+ createDebug.debug = createDebug;
137
+ createDebug.default = createDebug;
138
+ createDebug.coerce = coerce;
139
+ createDebug.disable = disable;
140
+ createDebug.enable = enable;
141
+ createDebug.enabled = enabled;
142
+ createDebug.humanize = require_ms();
143
+ createDebug.destroy = destroy;
144
+ Object.keys(env).forEach((key) => {
145
+ createDebug[key] = env[key];
146
+ });
147
+ createDebug.names = [];
148
+ createDebug.skips = [];
149
+ createDebug.formatters = {};
150
+ function selectColor(namespace) {
151
+ let hash = 0;
152
+ for (let i = 0; i < namespace.length; i++) {
153
+ hash = (hash << 5) - hash + namespace.charCodeAt(i);
154
+ hash |= 0;
155
+ }
156
+ return createDebug.colors[Math.abs(hash) % createDebug.colors.length];
157
+ }
158
+ createDebug.selectColor = selectColor;
159
+ function createDebug(namespace) {
160
+ let prevTime;
161
+ let enableOverride = null;
162
+ let namespacesCache;
163
+ let enabledCache;
164
+ function debug2(...args) {
165
+ if (!debug2.enabled) {
166
+ return;
167
+ }
168
+ const self = debug2;
169
+ const curr = Number(/* @__PURE__ */ new Date());
170
+ const ms = curr - (prevTime || curr);
171
+ self.diff = ms;
172
+ self.prev = prevTime;
173
+ self.curr = curr;
174
+ prevTime = curr;
175
+ args[0] = createDebug.coerce(args[0]);
176
+ if (typeof args[0] !== "string") {
177
+ args.unshift("%O");
178
+ }
179
+ let index = 0;
180
+ args[0] = args[0].replace(/%([a-zA-Z%])/g, (match, format) => {
181
+ if (match === "%%") {
182
+ return "%";
183
+ }
184
+ index++;
185
+ const formatter = createDebug.formatters[format];
186
+ if (typeof formatter === "function") {
187
+ const val = args[index];
188
+ match = formatter.call(self, val);
189
+ args.splice(index, 1);
190
+ index--;
191
+ }
192
+ return match;
193
+ });
194
+ createDebug.formatArgs.call(self, args);
195
+ const logFn = self.log || createDebug.log;
196
+ logFn.apply(self, args);
197
+ }
198
+ debug2.namespace = namespace;
199
+ debug2.useColors = createDebug.useColors();
200
+ debug2.color = createDebug.selectColor(namespace);
201
+ debug2.extend = extend;
202
+ debug2.destroy = createDebug.destroy;
203
+ Object.defineProperty(debug2, "enabled", {
204
+ enumerable: true,
205
+ configurable: false,
206
+ get: () => {
207
+ if (enableOverride !== null) {
208
+ return enableOverride;
209
+ }
210
+ if (namespacesCache !== createDebug.namespaces) {
211
+ namespacesCache = createDebug.namespaces;
212
+ enabledCache = createDebug.enabled(namespace);
213
+ }
214
+ return enabledCache;
215
+ },
216
+ set: (v) => {
217
+ enableOverride = v;
218
+ }
219
+ });
220
+ if (typeof createDebug.init === "function") {
221
+ createDebug.init(debug2);
222
+ }
223
+ return debug2;
224
+ }
225
+ function extend(namespace, delimiter) {
226
+ const newDebug = createDebug(this.namespace + (typeof delimiter === "undefined" ? ":" : delimiter) + namespace);
227
+ newDebug.log = this.log;
228
+ return newDebug;
229
+ }
230
+ function enable(namespaces) {
231
+ createDebug.save(namespaces);
232
+ createDebug.namespaces = namespaces;
233
+ createDebug.names = [];
234
+ createDebug.skips = [];
235
+ let i;
236
+ const split = (typeof namespaces === "string" ? namespaces : "").split(/[\s,]+/);
237
+ const len = split.length;
238
+ for (i = 0; i < len; i++) {
239
+ if (!split[i]) {
240
+ continue;
241
+ }
242
+ namespaces = split[i].replace(/\*/g, ".*?");
243
+ if (namespaces[0] === "-") {
244
+ createDebug.skips.push(new RegExp("^" + namespaces.slice(1) + "$"));
245
+ } else {
246
+ createDebug.names.push(new RegExp("^" + namespaces + "$"));
247
+ }
248
+ }
249
+ }
250
+ function disable() {
251
+ const namespaces = [
252
+ ...createDebug.names.map(toNamespace),
253
+ ...createDebug.skips.map(toNamespace).map((namespace) => "-" + namespace)
254
+ ].join(",");
255
+ createDebug.enable("");
256
+ return namespaces;
257
+ }
258
+ function enabled(name) {
259
+ if (name[name.length - 1] === "*") {
260
+ return true;
261
+ }
262
+ let i;
263
+ let len;
264
+ for (i = 0, len = createDebug.skips.length; i < len; i++) {
265
+ if (createDebug.skips[i].test(name)) {
266
+ return false;
267
+ }
268
+ }
269
+ for (i = 0, len = createDebug.names.length; i < len; i++) {
270
+ if (createDebug.names[i].test(name)) {
271
+ return true;
272
+ }
273
+ }
274
+ return false;
275
+ }
276
+ function toNamespace(regexp) {
277
+ return regexp.toString().substring(2, regexp.toString().length - 2).replace(/\.\*\?$/, "*");
278
+ }
279
+ function coerce(val) {
280
+ if (val instanceof Error) {
281
+ return val.stack || val.message;
282
+ }
283
+ return val;
284
+ }
285
+ function destroy() {
286
+ console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");
287
+ }
288
+ createDebug.enable(createDebug.load());
289
+ return createDebug;
290
+ }
291
+ module.exports = setup;
292
+ }
293
+ });
294
+
295
+ // node_modules/debug/src/browser.js
296
+ var require_browser = __commonJS({
297
+ "node_modules/debug/src/browser.js"(exports, module) {
298
+ init_browser_process_shim();
299
+ exports.formatArgs = formatArgs;
300
+ exports.save = save;
301
+ exports.load = load;
302
+ exports.useColors = useColors;
303
+ exports.storage = localstorage();
304
+ exports.destroy = /* @__PURE__ */ (() => {
305
+ let warned = false;
306
+ return () => {
307
+ if (!warned) {
308
+ warned = true;
309
+ console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");
310
+ }
311
+ };
312
+ })();
313
+ exports.colors = [
314
+ "#0000CC",
315
+ "#0000FF",
316
+ "#0033CC",
317
+ "#0033FF",
318
+ "#0066CC",
319
+ "#0066FF",
320
+ "#0099CC",
321
+ "#0099FF",
322
+ "#00CC00",
323
+ "#00CC33",
324
+ "#00CC66",
325
+ "#00CC99",
326
+ "#00CCCC",
327
+ "#00CCFF",
328
+ "#3300CC",
329
+ "#3300FF",
330
+ "#3333CC",
331
+ "#3333FF",
332
+ "#3366CC",
333
+ "#3366FF",
334
+ "#3399CC",
335
+ "#3399FF",
336
+ "#33CC00",
337
+ "#33CC33",
338
+ "#33CC66",
339
+ "#33CC99",
340
+ "#33CCCC",
341
+ "#33CCFF",
342
+ "#6600CC",
343
+ "#6600FF",
344
+ "#6633CC",
345
+ "#6633FF",
346
+ "#66CC00",
347
+ "#66CC33",
348
+ "#9900CC",
349
+ "#9900FF",
350
+ "#9933CC",
351
+ "#9933FF",
352
+ "#99CC00",
353
+ "#99CC33",
354
+ "#CC0000",
355
+ "#CC0033",
356
+ "#CC0066",
357
+ "#CC0099",
358
+ "#CC00CC",
359
+ "#CC00FF",
360
+ "#CC3300",
361
+ "#CC3333",
362
+ "#CC3366",
363
+ "#CC3399",
364
+ "#CC33CC",
365
+ "#CC33FF",
366
+ "#CC6600",
367
+ "#CC6633",
368
+ "#CC9900",
369
+ "#CC9933",
370
+ "#CCCC00",
371
+ "#CCCC33",
372
+ "#FF0000",
373
+ "#FF0033",
374
+ "#FF0066",
375
+ "#FF0099",
376
+ "#FF00CC",
377
+ "#FF00FF",
378
+ "#FF3300",
379
+ "#FF3333",
380
+ "#FF3366",
381
+ "#FF3399",
382
+ "#FF33CC",
383
+ "#FF33FF",
384
+ "#FF6600",
385
+ "#FF6633",
386
+ "#FF9900",
387
+ "#FF9933",
388
+ "#FFCC00",
389
+ "#FFCC33"
390
+ ];
391
+ function useColors() {
392
+ if (typeof window !== "undefined" && window.process && (window.process.type === "renderer" || window.process.__nwjs)) {
393
+ return true;
394
+ }
395
+ if (typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) {
396
+ return false;
397
+ }
398
+ return typeof document !== "undefined" && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || // Is firebug? http://stackoverflow.com/a/398120/376773
399
+ typeof window !== "undefined" && window.console && (window.console.firebug || window.console.exception && window.console.table) || // Is firefox >= v31?
400
+ // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages
401
+ typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31 || // Double check webkit in userAgent just in case we are in a worker
402
+ typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/);
403
+ }
404
+ function formatArgs(args) {
405
+ args[0] = (this.useColors ? "%c" : "") + this.namespace + (this.useColors ? " %c" : " ") + args[0] + (this.useColors ? "%c " : " ") + "+" + module.exports.humanize(this.diff);
406
+ if (!this.useColors) {
407
+ return;
408
+ }
409
+ const c = "color: " + this.color;
410
+ args.splice(1, 0, c, "color: inherit");
411
+ let index = 0;
412
+ let lastC = 0;
413
+ args[0].replace(/%[a-zA-Z%]/g, (match) => {
414
+ if (match === "%%") {
415
+ return;
416
+ }
417
+ index++;
418
+ if (match === "%c") {
419
+ lastC = index;
420
+ }
421
+ });
422
+ args.splice(lastC, 0, c);
423
+ }
424
+ exports.log = console.debug || console.log || (() => {
425
+ });
426
+ function save(namespaces) {
427
+ try {
428
+ if (namespaces) {
429
+ exports.storage.setItem("debug", namespaces);
430
+ } else {
431
+ exports.storage.removeItem("debug");
432
+ }
433
+ } catch (error) {
434
+ }
435
+ }
436
+ function load() {
437
+ let r;
438
+ try {
439
+ r = exports.storage.getItem("debug");
440
+ } catch (error) {
441
+ }
442
+ if (!r && typeof process !== "undefined" && "env" in process) {
443
+ r = process.env.DEBUG;
444
+ }
445
+ return r;
446
+ }
447
+ function localstorage() {
448
+ try {
449
+ return localStorage;
450
+ } catch (error) {
451
+ }
452
+ }
453
+ module.exports = require_common()(exports);
454
+ var { formatters } = module.exports;
455
+ formatters.j = function(v) {
456
+ try {
457
+ return JSON.stringify(v);
458
+ } catch (error) {
459
+ return "[UnexpectedJSONParseError]: " + error.message;
460
+ }
461
+ };
462
+ }
463
+ });
464
+
465
+ // ../../node_modules/path-browserify/index.js
466
+ var require_path_browserify = __commonJS({
467
+ "../../node_modules/path-browserify/index.js"(exports, module) {
468
+ "use strict";
469
+ init_browser_process_shim();
470
+ function assertPath(path) {
471
+ if (typeof path !== "string") {
472
+ throw new TypeError("Path must be a string. Received " + JSON.stringify(path));
473
+ }
474
+ }
475
+ function normalizeStringPosix(path, allowAboveRoot) {
476
+ var res = "";
477
+ var lastSegmentLength = 0;
478
+ var lastSlash = -1;
479
+ var dots = 0;
480
+ var code;
481
+ for (var i = 0; i <= path.length; ++i) {
482
+ if (i < path.length)
483
+ code = path.charCodeAt(i);
484
+ else if (code === 47)
485
+ break;
486
+ else
487
+ code = 47;
488
+ if (code === 47) {
489
+ if (lastSlash === i - 1 || dots === 1) {
490
+ } else if (lastSlash !== i - 1 && dots === 2) {
491
+ if (res.length < 2 || lastSegmentLength !== 2 || res.charCodeAt(res.length - 1) !== 46 || res.charCodeAt(res.length - 2) !== 46) {
492
+ if (res.length > 2) {
493
+ var lastSlashIndex = res.lastIndexOf("/");
494
+ if (lastSlashIndex !== res.length - 1) {
495
+ if (lastSlashIndex === -1) {
496
+ res = "";
497
+ lastSegmentLength = 0;
498
+ } else {
499
+ res = res.slice(0, lastSlashIndex);
500
+ lastSegmentLength = res.length - 1 - res.lastIndexOf("/");
501
+ }
502
+ lastSlash = i;
503
+ dots = 0;
504
+ continue;
505
+ }
506
+ } else if (res.length === 2 || res.length === 1) {
507
+ res = "";
508
+ lastSegmentLength = 0;
509
+ lastSlash = i;
510
+ dots = 0;
511
+ continue;
512
+ }
513
+ }
514
+ if (allowAboveRoot) {
515
+ if (res.length > 0)
516
+ res += "/..";
517
+ else
518
+ res = "..";
519
+ lastSegmentLength = 2;
520
+ }
521
+ } else {
522
+ if (res.length > 0)
523
+ res += "/" + path.slice(lastSlash + 1, i);
524
+ else
525
+ res = path.slice(lastSlash + 1, i);
526
+ lastSegmentLength = i - lastSlash - 1;
527
+ }
528
+ lastSlash = i;
529
+ dots = 0;
530
+ } else if (code === 46 && dots !== -1) {
531
+ ++dots;
532
+ } else {
533
+ dots = -1;
534
+ }
535
+ }
536
+ return res;
537
+ }
538
+ function _format(sep, pathObject) {
539
+ var dir = pathObject.dir || pathObject.root;
540
+ var base = pathObject.base || (pathObject.name || "") + (pathObject.ext || "");
541
+ if (!dir) {
542
+ return base;
543
+ }
544
+ if (dir === pathObject.root) {
545
+ return dir + base;
546
+ }
547
+ return dir + sep + base;
548
+ }
549
+ var posix = {
550
+ // path.resolve([from ...], to)
551
+ resolve: function resolve() {
552
+ var resolvedPath = "";
553
+ var resolvedAbsolute = false;
554
+ var cwd;
555
+ for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) {
556
+ var path;
557
+ if (i >= 0)
558
+ path = arguments[i];
559
+ else {
560
+ if (cwd === void 0)
561
+ cwd = process.cwd();
562
+ path = cwd;
563
+ }
564
+ assertPath(path);
565
+ if (path.length === 0) {
566
+ continue;
567
+ }
568
+ resolvedPath = path + "/" + resolvedPath;
569
+ resolvedAbsolute = path.charCodeAt(0) === 47;
570
+ }
571
+ resolvedPath = normalizeStringPosix(resolvedPath, !resolvedAbsolute);
572
+ if (resolvedAbsolute) {
573
+ if (resolvedPath.length > 0)
574
+ return "/" + resolvedPath;
575
+ else
576
+ return "/";
577
+ } else if (resolvedPath.length > 0) {
578
+ return resolvedPath;
579
+ } else {
580
+ return ".";
581
+ }
582
+ },
583
+ normalize: function normalize(path) {
584
+ assertPath(path);
585
+ if (path.length === 0) return ".";
586
+ var isAbsolute = path.charCodeAt(0) === 47;
587
+ var trailingSeparator = path.charCodeAt(path.length - 1) === 47;
588
+ path = normalizeStringPosix(path, !isAbsolute);
589
+ if (path.length === 0 && !isAbsolute) path = ".";
590
+ if (path.length > 0 && trailingSeparator) path += "/";
591
+ if (isAbsolute) return "/" + path;
592
+ return path;
593
+ },
594
+ isAbsolute: function isAbsolute(path) {
595
+ assertPath(path);
596
+ return path.length > 0 && path.charCodeAt(0) === 47;
597
+ },
598
+ join: function join() {
599
+ if (arguments.length === 0)
600
+ return ".";
601
+ var joined;
602
+ for (var i = 0; i < arguments.length; ++i) {
603
+ var arg = arguments[i];
604
+ assertPath(arg);
605
+ if (arg.length > 0) {
606
+ if (joined === void 0)
607
+ joined = arg;
608
+ else
609
+ joined += "/" + arg;
610
+ }
611
+ }
612
+ if (joined === void 0)
613
+ return ".";
614
+ return posix.normalize(joined);
615
+ },
616
+ relative: function relative(from, to) {
617
+ assertPath(from);
618
+ assertPath(to);
619
+ if (from === to) return "";
620
+ from = posix.resolve(from);
621
+ to = posix.resolve(to);
622
+ if (from === to) return "";
623
+ var fromStart = 1;
624
+ for (; fromStart < from.length; ++fromStart) {
625
+ if (from.charCodeAt(fromStart) !== 47)
626
+ break;
627
+ }
628
+ var fromEnd = from.length;
629
+ var fromLen = fromEnd - fromStart;
630
+ var toStart = 1;
631
+ for (; toStart < to.length; ++toStart) {
632
+ if (to.charCodeAt(toStart) !== 47)
633
+ break;
634
+ }
635
+ var toEnd = to.length;
636
+ var toLen = toEnd - toStart;
637
+ var length = fromLen < toLen ? fromLen : toLen;
638
+ var lastCommonSep = -1;
639
+ var i = 0;
640
+ for (; i <= length; ++i) {
641
+ if (i === length) {
642
+ if (toLen > length) {
643
+ if (to.charCodeAt(toStart + i) === 47) {
644
+ return to.slice(toStart + i + 1);
645
+ } else if (i === 0) {
646
+ return to.slice(toStart + i);
647
+ }
648
+ } else if (fromLen > length) {
649
+ if (from.charCodeAt(fromStart + i) === 47) {
650
+ lastCommonSep = i;
651
+ } else if (i === 0) {
652
+ lastCommonSep = 0;
653
+ }
654
+ }
655
+ break;
656
+ }
657
+ var fromCode = from.charCodeAt(fromStart + i);
658
+ var toCode = to.charCodeAt(toStart + i);
659
+ if (fromCode !== toCode)
660
+ break;
661
+ else if (fromCode === 47)
662
+ lastCommonSep = i;
663
+ }
664
+ var out = "";
665
+ for (i = fromStart + lastCommonSep + 1; i <= fromEnd; ++i) {
666
+ if (i === fromEnd || from.charCodeAt(i) === 47) {
667
+ if (out.length === 0)
668
+ out += "..";
669
+ else
670
+ out += "/..";
671
+ }
672
+ }
673
+ if (out.length > 0)
674
+ return out + to.slice(toStart + lastCommonSep);
675
+ else {
676
+ toStart += lastCommonSep;
677
+ if (to.charCodeAt(toStart) === 47)
678
+ ++toStart;
679
+ return to.slice(toStart);
680
+ }
681
+ },
682
+ _makeLong: function _makeLong(path) {
683
+ return path;
684
+ },
685
+ dirname: function dirname(path) {
686
+ assertPath(path);
687
+ if (path.length === 0) return ".";
688
+ var code = path.charCodeAt(0);
689
+ var hasRoot = code === 47;
690
+ var end = -1;
691
+ var matchedSlash = true;
692
+ for (var i = path.length - 1; i >= 1; --i) {
693
+ code = path.charCodeAt(i);
694
+ if (code === 47) {
695
+ if (!matchedSlash) {
696
+ end = i;
697
+ break;
698
+ }
699
+ } else {
700
+ matchedSlash = false;
701
+ }
702
+ }
703
+ if (end === -1) return hasRoot ? "/" : ".";
704
+ if (hasRoot && end === 1) return "//";
705
+ return path.slice(0, end);
706
+ },
707
+ basename: function basename(path, ext) {
708
+ if (ext !== void 0 && typeof ext !== "string") throw new TypeError('"ext" argument must be a string');
709
+ assertPath(path);
710
+ var start = 0;
711
+ var end = -1;
712
+ var matchedSlash = true;
713
+ var i;
714
+ if (ext !== void 0 && ext.length > 0 && ext.length <= path.length) {
715
+ if (ext.length === path.length && ext === path) return "";
716
+ var extIdx = ext.length - 1;
717
+ var firstNonSlashEnd = -1;
718
+ for (i = path.length - 1; i >= 0; --i) {
719
+ var code = path.charCodeAt(i);
720
+ if (code === 47) {
721
+ if (!matchedSlash) {
722
+ start = i + 1;
723
+ break;
724
+ }
725
+ } else {
726
+ if (firstNonSlashEnd === -1) {
727
+ matchedSlash = false;
728
+ firstNonSlashEnd = i + 1;
729
+ }
730
+ if (extIdx >= 0) {
731
+ if (code === ext.charCodeAt(extIdx)) {
732
+ if (--extIdx === -1) {
733
+ end = i;
734
+ }
735
+ } else {
736
+ extIdx = -1;
737
+ end = firstNonSlashEnd;
738
+ }
739
+ }
740
+ }
741
+ }
742
+ if (start === end) end = firstNonSlashEnd;
743
+ else if (end === -1) end = path.length;
744
+ return path.slice(start, end);
745
+ } else {
746
+ for (i = path.length - 1; i >= 0; --i) {
747
+ if (path.charCodeAt(i) === 47) {
748
+ if (!matchedSlash) {
749
+ start = i + 1;
750
+ break;
751
+ }
752
+ } else if (end === -1) {
753
+ matchedSlash = false;
754
+ end = i + 1;
755
+ }
756
+ }
757
+ if (end === -1) return "";
758
+ return path.slice(start, end);
759
+ }
760
+ },
761
+ extname: function extname2(path) {
762
+ assertPath(path);
763
+ var startDot = -1;
764
+ var startPart = 0;
765
+ var end = -1;
766
+ var matchedSlash = true;
767
+ var preDotState = 0;
768
+ for (var i = path.length - 1; i >= 0; --i) {
769
+ var code = path.charCodeAt(i);
770
+ if (code === 47) {
771
+ if (!matchedSlash) {
772
+ startPart = i + 1;
773
+ break;
774
+ }
775
+ continue;
776
+ }
777
+ if (end === -1) {
778
+ matchedSlash = false;
779
+ end = i + 1;
780
+ }
781
+ if (code === 46) {
782
+ if (startDot === -1)
783
+ startDot = i;
784
+ else if (preDotState !== 1)
785
+ preDotState = 1;
786
+ } else if (startDot !== -1) {
787
+ preDotState = -1;
788
+ }
789
+ }
790
+ if (startDot === -1 || end === -1 || // We saw a non-dot character immediately before the dot
791
+ preDotState === 0 || // The (right-most) trimmed path component is exactly '..'
792
+ preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) {
793
+ return "";
794
+ }
795
+ return path.slice(startDot, end);
796
+ },
797
+ format: function format(pathObject) {
798
+ if (pathObject === null || typeof pathObject !== "object") {
799
+ throw new TypeError('The "pathObject" argument must be of type Object. Received type ' + typeof pathObject);
800
+ }
801
+ return _format("/", pathObject);
802
+ },
803
+ parse: function parse2(path) {
804
+ assertPath(path);
805
+ var ret = { root: "", dir: "", base: "", ext: "", name: "" };
806
+ if (path.length === 0) return ret;
807
+ var code = path.charCodeAt(0);
808
+ var isAbsolute = code === 47;
809
+ var start;
810
+ if (isAbsolute) {
811
+ ret.root = "/";
812
+ start = 1;
813
+ } else {
814
+ start = 0;
815
+ }
816
+ var startDot = -1;
817
+ var startPart = 0;
818
+ var end = -1;
819
+ var matchedSlash = true;
820
+ var i = path.length - 1;
821
+ var preDotState = 0;
822
+ for (; i >= start; --i) {
823
+ code = path.charCodeAt(i);
824
+ if (code === 47) {
825
+ if (!matchedSlash) {
826
+ startPart = i + 1;
827
+ break;
828
+ }
829
+ continue;
830
+ }
831
+ if (end === -1) {
832
+ matchedSlash = false;
833
+ end = i + 1;
834
+ }
835
+ if (code === 46) {
836
+ if (startDot === -1) startDot = i;
837
+ else if (preDotState !== 1) preDotState = 1;
838
+ } else if (startDot !== -1) {
839
+ preDotState = -1;
840
+ }
841
+ }
842
+ if (startDot === -1 || end === -1 || // We saw a non-dot character immediately before the dot
843
+ preDotState === 0 || // The (right-most) trimmed path component is exactly '..'
844
+ preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) {
845
+ if (end !== -1) {
846
+ if (startPart === 0 && isAbsolute) ret.base = ret.name = path.slice(1, end);
847
+ else ret.base = ret.name = path.slice(startPart, end);
848
+ }
849
+ } else {
850
+ if (startPart === 0 && isAbsolute) {
851
+ ret.name = path.slice(1, startDot);
852
+ ret.base = path.slice(1, end);
853
+ } else {
854
+ ret.name = path.slice(startPart, startDot);
855
+ ret.base = path.slice(startPart, end);
856
+ }
857
+ ret.ext = path.slice(startDot, end);
858
+ }
859
+ if (startPart > 0) ret.dir = path.slice(0, startPart - 1);
860
+ else if (isAbsolute) ret.dir = "/";
861
+ return ret;
862
+ },
863
+ sep: "/",
864
+ delimiter: ":",
865
+ win32: null,
866
+ posix: null
867
+ };
868
+ posix.posix = posix;
869
+ module.exports = posix;
870
+ }
871
+ });
872
+
873
+ // src/external.ts
874
+ init_browser_process_shim();
875
+ var import_debug = __toESM(require_browser());
876
+ var pathBrowserify = __toESM(require_path_browserify());
877
+ var import_concerto_metamodel = __toESM(require_concerto_metamodel());
878
+ var Parser = __toESM(require_parser());
879
+ import { DefaultFileLoader, FileDownloader } from "@accordproject/concerto-util";
880
+ var debugLog = (0, import_debug.default)("concerto:ModelManager");
881
+ function updateModels(models, newModel) {
882
+ const result = {
883
+ $class: `${import_concerto_metamodel.MetaModelNamespace}.Models`,
884
+ models: []
885
+ };
886
+ const newNamespace = newModel.namespace;
887
+ const priors = models.models;
888
+ let found = false;
889
+ priors.forEach((priorModel) => {
890
+ if (priorModel.namespace === newNamespace) {
891
+ result.models.push(newModel);
892
+ found = true;
893
+ } else {
894
+ result.models.push(priorModel);
895
+ }
896
+ });
897
+ if (!found) {
898
+ result.models.push(newModel);
899
+ }
900
+ return result;
901
+ }
902
+ async function resolveExternal(models, options, fileDownloader) {
903
+ const NAME = "updateExternalModels";
904
+ debugLog(NAME, "updateExternalModels", options);
905
+ const downloader = fileDownloader || createDefaultFileDownloader();
906
+ const externalModelFiles = await downloader.downloadExternalDependencies(models.models, options);
907
+ let result = models;
908
+ externalModelFiles.forEach((mf) => {
909
+ result = updateModels(result, mf);
910
+ });
911
+ return result;
912
+ }
913
+ function createDefaultFileDownloader() {
914
+ const processFile = (name, data) => {
915
+ if (pathBrowserify.extname(name) === ".cto") {
916
+ return Parser.parse(data);
917
+ }
918
+ throw new Error("External model file references are expected to have a .cto extension");
919
+ };
920
+ return new FileDownloader(new DefaultFileLoader(processFile), (file) => import_concerto_metamodel.MetaModelUtil.getExternalImports(file));
921
+ }
922
+ var External = {
923
+ resolveExternal,
924
+ createDefaultFileDownloader
925
+ };
926
+ var external_default = External;
927
+
928
+ export {
929
+ resolveExternal,
930
+ createDefaultFileDownloader,
931
+ external_default
932
+ };
933
+ //# sourceMappingURL=chunk-VCWYA55K.mjs.map