@accordproject/concerto-cto 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 (66) hide show
  1. package/dist/esm/chunk-ADOFOC62.mjs +381 -0
  2. package/dist/esm/chunk-ADOFOC62.mjs.map +7 -0
  3. package/dist/esm/chunk-ADZEFNZ5.mjs +46 -0
  4. package/dist/esm/chunk-ADZEFNZ5.mjs.map +7 -0
  5. package/dist/esm/chunk-AKCFZ6K2.mjs +53 -0
  6. package/dist/esm/chunk-AKCFZ6K2.mjs.map +7 -0
  7. package/dist/esm/chunk-L6QXUSLL.mjs +819 -0
  8. package/dist/esm/chunk-L6QXUSLL.mjs.map +7 -0
  9. package/dist/esm/chunk-WNU2QZFD.mjs +40 -0
  10. package/dist/esm/chunk-WNU2QZFD.mjs.map +7 -0
  11. package/dist/esm/chunk-Z274WV22.mjs +11851 -0
  12. package/dist/esm/chunk-Z274WV22.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-5Z2F6LHO.mjs +933 -0
  24. package/dist/esm-browser/chunk-5Z2F6LHO.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-HZQXVGUH.mjs +56 -0
  28. package/dist/esm-browser/chunk-HZQXVGUH.mjs.map +7 -0
  29. package/dist/esm-browser/chunk-MSZDQHW6.mjs +66 -0
  30. package/dist/esm-browser/chunk-MSZDQHW6.mjs.map +7 -0
  31. package/dist/esm-browser/chunk-OMK4IF4X.mjs +48 -0
  32. package/dist/esm-browser/chunk-OMK4IF4X.mjs.map +7 -0
  33. package/dist/esm-browser/chunk-TQPDAJQB.mjs +11851 -0
  34. package/dist/esm-browser/chunk-TQPDAJQB.mjs.map +7 -0
  35. package/dist/esm-browser/chunk-W7LTTM2O.mjs +385 -0
  36. package/dist/esm-browser/chunk-W7LTTM2O.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 +379 -176
  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 +40 -8
  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,385 @@
1
+ import {
2
+ require_concerto_metamodel
3
+ } from "./chunk-E5UYTZNO.mjs";
4
+ import {
5
+ __toESM,
6
+ init_browser_process_shim
7
+ } from "./chunk-MSZDQHW6.mjs";
8
+
9
+ // src/printer.ts
10
+ init_browser_process_shim();
11
+ var import_concerto_metamodel = __toESM(require_concerto_metamodel());
12
+ function isMap(mm) {
13
+ return mm.$class === `${import_concerto_metamodel.MetaModelNamespace}.MapDeclaration`;
14
+ }
15
+ function isScalar(mm) {
16
+ return [
17
+ `${import_concerto_metamodel.MetaModelNamespace}.BooleanScalar`,
18
+ `${import_concerto_metamodel.MetaModelNamespace}.IntegerScalar`,
19
+ `${import_concerto_metamodel.MetaModelNamespace}.LongScalar`,
20
+ `${import_concerto_metamodel.MetaModelNamespace}.DoubleScalar`,
21
+ `${import_concerto_metamodel.MetaModelNamespace}.StringScalar`,
22
+ `${import_concerto_metamodel.MetaModelNamespace}.DateTimeScalar`
23
+ ].includes(mm.$class);
24
+ }
25
+ function decoratorArgFromMetaModel(mm) {
26
+ let result = "";
27
+ switch (mm.$class) {
28
+ case `${import_concerto_metamodel.MetaModelNamespace}.DecoratorTypeReference`:
29
+ const typeRef = mm;
30
+ result += `${typeRef.type.name}${!!typeRef.isArray ? "[]" : ""}`;
31
+ break;
32
+ case `${import_concerto_metamodel.MetaModelNamespace}.DecoratorString`:
33
+ const strRef = mm;
34
+ result += toStringLiteral(strRef.value);
35
+ break;
36
+ default:
37
+ result += `${mm.value}`;
38
+ break;
39
+ }
40
+ return result;
41
+ }
42
+ function decoratorFromMetaModel(mm) {
43
+ let result = "";
44
+ result += `@${mm.name}`;
45
+ if (mm.arguments) {
46
+ result += "(";
47
+ result += mm.arguments.map(decoratorArgFromMetaModel).join(",");
48
+ result += ")";
49
+ }
50
+ return result;
51
+ }
52
+ function decoratorsFromMetaModel(mm, prefix) {
53
+ let result = "";
54
+ result += mm.map(decoratorFromMetaModel).join(`
55
+ ${prefix}`);
56
+ result += `
57
+ ${prefix}`;
58
+ return result;
59
+ }
60
+ function typeFromMetaModel(mm) {
61
+ let result = "";
62
+ switch (mm.$class) {
63
+ case `${import_concerto_metamodel.MetaModelNamespace}.EnumProperty`:
64
+ break;
65
+ case `${import_concerto_metamodel.MetaModelNamespace}.BooleanScalar`:
66
+ case `${import_concerto_metamodel.MetaModelNamespace}.BooleanProperty`:
67
+ case `${import_concerto_metamodel.MetaModelNamespace}.BooleanMapValueType`:
68
+ result += " Boolean";
69
+ break;
70
+ case `${import_concerto_metamodel.MetaModelNamespace}.DateTimeProperty`:
71
+ case `${import_concerto_metamodel.MetaModelNamespace}.DateTimeScalar`:
72
+ case `${import_concerto_metamodel.MetaModelNamespace}.DateTimeMapKeyType`:
73
+ case `${import_concerto_metamodel.MetaModelNamespace}.DateTimeMapValueType`:
74
+ result += " DateTime";
75
+ break;
76
+ case `${import_concerto_metamodel.MetaModelNamespace}.DoubleProperty`:
77
+ case `${import_concerto_metamodel.MetaModelNamespace}.DoubleScalar`:
78
+ case `${import_concerto_metamodel.MetaModelNamespace}.DoubleMapValueType`:
79
+ result += " Double";
80
+ break;
81
+ case `${import_concerto_metamodel.MetaModelNamespace}.IntegerProperty`:
82
+ case `${import_concerto_metamodel.MetaModelNamespace}.IntegerScalar`:
83
+ case `${import_concerto_metamodel.MetaModelNamespace}.IntegerMapValueType`:
84
+ result += " Integer";
85
+ break;
86
+ case `${import_concerto_metamodel.MetaModelNamespace}.LongProperty`:
87
+ case `${import_concerto_metamodel.MetaModelNamespace}.LongScalar`:
88
+ case `${import_concerto_metamodel.MetaModelNamespace}.LongMapValueType`:
89
+ result += " Long";
90
+ break;
91
+ case `${import_concerto_metamodel.MetaModelNamespace}.StringProperty`:
92
+ case `${import_concerto_metamodel.MetaModelNamespace}.StringScalar`:
93
+ case `${import_concerto_metamodel.MetaModelNamespace}.StringMapKeyType`:
94
+ case `${import_concerto_metamodel.MetaModelNamespace}.StringMapValueType`:
95
+ result += " String";
96
+ break;
97
+ case `${import_concerto_metamodel.MetaModelNamespace}.ObjectProperty`:
98
+ case `${import_concerto_metamodel.MetaModelNamespace}.ObjectMapKeyType`:
99
+ case `${import_concerto_metamodel.MetaModelNamespace}.ObjectMapValueType`:
100
+ result += ` ${mm.type.name}`;
101
+ break;
102
+ case `${import_concerto_metamodel.MetaModelNamespace}.RelationshipProperty`:
103
+ case `${import_concerto_metamodel.MetaModelNamespace}.RelationshipMapValueType`:
104
+ result += ` ${mm.type.name}`;
105
+ break;
106
+ }
107
+ return result;
108
+ }
109
+ function modifiersFromMetaModel(mm) {
110
+ let result = "";
111
+ let defaultString = "";
112
+ let validatorString = "";
113
+ switch (mm.$class) {
114
+ case `${import_concerto_metamodel.MetaModelNamespace}.EnumProperty`:
115
+ break;
116
+ case `${import_concerto_metamodel.MetaModelNamespace}.BooleanProperty`:
117
+ case `${import_concerto_metamodel.MetaModelNamespace}.BooleanScalar`:
118
+ if (mm.defaultValue === true || mm.defaultValue === false) {
119
+ if (mm.defaultValue) {
120
+ defaultString += " default=true";
121
+ } else {
122
+ defaultString += " default=false";
123
+ }
124
+ }
125
+ break;
126
+ case `${import_concerto_metamodel.MetaModelNamespace}.DateTimeProperty`:
127
+ case `${import_concerto_metamodel.MetaModelNamespace}.DateTimeScalar`:
128
+ if (mm.defaultValue !== void 0) {
129
+ defaultString += ` default=${toStringLiteral(mm.defaultValue)}`;
130
+ }
131
+ break;
132
+ case `${import_concerto_metamodel.MetaModelNamespace}.DoubleProperty`:
133
+ case `${import_concerto_metamodel.MetaModelNamespace}.DoubleScalar`:
134
+ if (mm.defaultValue !== void 0) {
135
+ const doubleString = toDoubleString(mm.defaultValue);
136
+ defaultString += ` default=${doubleString}`;
137
+ }
138
+ if (mm.validator) {
139
+ const lowerString = mm.validator.lower !== void 0 ? toDoubleString(mm.validator.lower) : "";
140
+ const upperString = mm.validator.upper !== void 0 ? toDoubleString(mm.validator.upper) : "";
141
+ validatorString += ` range=[${lowerString},${upperString}]`;
142
+ }
143
+ break;
144
+ case `${import_concerto_metamodel.MetaModelNamespace}.IntegerProperty`:
145
+ case `${import_concerto_metamodel.MetaModelNamespace}.IntegerScalar`:
146
+ if (mm.defaultValue !== void 0) {
147
+ defaultString += ` default=${mm.defaultValue.toString()}`;
148
+ }
149
+ if (mm.validator) {
150
+ const lowerString = mm.validator.lower !== void 0 ? mm.validator.lower : "";
151
+ const upperString = mm.validator.upper !== void 0 ? mm.validator.upper : "";
152
+ validatorString += ` range=[${lowerString},${upperString}]`;
153
+ }
154
+ break;
155
+ case `${import_concerto_metamodel.MetaModelNamespace}.LongProperty`:
156
+ case `${import_concerto_metamodel.MetaModelNamespace}.LongScalar`:
157
+ if (mm.defaultValue !== void 0) {
158
+ defaultString += ` default=${mm.defaultValue.toString()}`;
159
+ }
160
+ if (mm.validator) {
161
+ const lowerString = mm.validator.lower !== void 0 ? mm.validator.lower : "";
162
+ const upperString = mm.validator.upper !== void 0 ? mm.validator.upper : "";
163
+ validatorString += ` range=[${lowerString},${upperString}]`;
164
+ }
165
+ break;
166
+ case `${import_concerto_metamodel.MetaModelNamespace}.StringProperty`:
167
+ case `${import_concerto_metamodel.MetaModelNamespace}.StringScalar`:
168
+ if (mm.defaultValue !== void 0) {
169
+ defaultString += ` default=${toStringLiteral(mm.defaultValue)}`;
170
+ }
171
+ if (mm.validator) {
172
+ validatorString += ` regex=${toRegexLiteral(mm.validator.pattern, mm.validator.flags)}`;
173
+ }
174
+ if (mm.lengthValidator) {
175
+ const minLength = mm.lengthValidator.minLength !== void 0 ? mm.lengthValidator.minLength : "";
176
+ const maxLength = mm.lengthValidator.maxLength !== void 0 ? mm.lengthValidator.maxLength : "";
177
+ validatorString += ` length=[${minLength},${maxLength}]`;
178
+ }
179
+ break;
180
+ case `${import_concerto_metamodel.MetaModelNamespace}.ObjectProperty`:
181
+ if (mm.defaultValue !== void 0) {
182
+ defaultString += ` default="${mm.defaultValue}"`;
183
+ }
184
+ break;
185
+ }
186
+ if (mm.sizeValidator) {
187
+ const minSize = mm.sizeValidator.minSize !== void 0 ? mm.sizeValidator.minSize : "";
188
+ const maxSize = mm.sizeValidator.maxSize !== void 0 ? mm.sizeValidator.maxSize : "";
189
+ validatorString += ` size=[${minSize},${maxSize}]`;
190
+ }
191
+ return result + defaultString + validatorString;
192
+ }
193
+ function toStringLiteral(value) {
194
+ return JSON.stringify(String(value));
195
+ }
196
+ function toRegexLiteral(pattern, flags) {
197
+ let source = pattern;
198
+ try {
199
+ source = new RegExp(pattern, flags).source;
200
+ } catch {
201
+ }
202
+ return `/${source}/${flags || ""}`;
203
+ }
204
+ function toDoubleString(value) {
205
+ const normalizedValue = Number(value).toLocaleString("en-US", {
206
+ useGrouping: false,
207
+ // Intl.NumberFormat permits 1..21; use the maximum to avoid exponent output.
208
+ maximumSignificantDigits: 21
209
+ });
210
+ if (!normalizedValue.includes(".")) {
211
+ return `${normalizedValue}.0`;
212
+ }
213
+ return normalizedValue;
214
+ }
215
+ function propertyFromMetaModel(prop) {
216
+ let result = "";
217
+ if (prop.decorators) {
218
+ result += decoratorsFromMetaModel(prop.decorators, " ");
219
+ }
220
+ if (prop.$class === `${import_concerto_metamodel.MetaModelNamespace}.RelationshipProperty`) {
221
+ result += "-->";
222
+ } else {
223
+ result += "o";
224
+ }
225
+ result += typeFromMetaModel(prop);
226
+ if (prop.isArray) {
227
+ result += "[]";
228
+ }
229
+ result += ` ${prop.name}`;
230
+ result += modifiersFromMetaModel(prop);
231
+ if (prop.isOptional) {
232
+ result += " optional";
233
+ }
234
+ return result;
235
+ }
236
+ function mapFromMetaModel(entry) {
237
+ let result = "";
238
+ if (entry.decorators) {
239
+ result += decoratorsFromMetaModel(entry.decorators, " ");
240
+ }
241
+ if (entry.$class === `${import_concerto_metamodel.MetaModelNamespace}.RelationshipMapValueType`) {
242
+ result += "-->";
243
+ } else {
244
+ result += "o";
245
+ }
246
+ result += typeFromMetaModel(entry);
247
+ return result;
248
+ }
249
+ function declFromMetaModel(mm) {
250
+ let result = "";
251
+ if (mm.decorators) {
252
+ result += decoratorsFromMetaModel(mm.decorators, "");
253
+ }
254
+ if (isScalar(mm)) {
255
+ result += `scalar ${mm.name} extends`;
256
+ result += typeFromMetaModel(mm);
257
+ result += modifiersFromMetaModel(mm);
258
+ } else if (isMap(mm)) {
259
+ result += `map ${mm.name} {`;
260
+ const mapDecl = mm;
261
+ result += `
262
+ ${mapFromMetaModel(mapDecl.key)}`;
263
+ result += `
264
+ ${mapFromMetaModel(mapDecl.value)}`;
265
+ result += "\n}";
266
+ } else {
267
+ const conceptDecl = mm;
268
+ if (conceptDecl.isAbstract) {
269
+ result += "abstract ";
270
+ }
271
+ switch (mm.$class) {
272
+ case `${import_concerto_metamodel.MetaModelNamespace}.AssetDeclaration`:
273
+ result += `asset ${mm.name} `;
274
+ break;
275
+ case `${import_concerto_metamodel.MetaModelNamespace}.ConceptDeclaration`:
276
+ result += `concept ${mm.name} `;
277
+ break;
278
+ case `${import_concerto_metamodel.MetaModelNamespace}.EventDeclaration`:
279
+ result += `event ${mm.name} `;
280
+ break;
281
+ case `${import_concerto_metamodel.MetaModelNamespace}.ParticipantDeclaration`:
282
+ result += `participant ${mm.name} `;
283
+ break;
284
+ case `${import_concerto_metamodel.MetaModelNamespace}.TransactionDeclaration`:
285
+ result += `transaction ${mm.name} `;
286
+ break;
287
+ case `${import_concerto_metamodel.MetaModelNamespace}.EnumDeclaration`:
288
+ result += `enum ${mm.name} `;
289
+ break;
290
+ }
291
+ if (conceptDecl.identified) {
292
+ if (conceptDecl.identified.$class === `${import_concerto_metamodel.MetaModelNamespace}.IdentifiedBy`) {
293
+ const identifiedBy = conceptDecl.identified;
294
+ result += `identified by ${identifiedBy.name} `;
295
+ } else {
296
+ result += "identified ";
297
+ }
298
+ }
299
+ if (conceptDecl.superType) {
300
+ if (conceptDecl.superType.name === mm.name) {
301
+ throw new Error(`The declaration "${mm.name}" cannot extend itself.`);
302
+ }
303
+ result += `extends ${conceptDecl.superType.name} `;
304
+ }
305
+ result += "{";
306
+ conceptDecl.properties.forEach((property) => {
307
+ result += `
308
+ ${propertyFromMetaModel(property)}`;
309
+ });
310
+ result += "\n}";
311
+ }
312
+ return result;
313
+ }
314
+ function toCTO(metaModel) {
315
+ let result = "";
316
+ if (metaModel.concertoVersion) {
317
+ result += `concerto version "${metaModel.concertoVersion}"
318
+
319
+ `;
320
+ }
321
+ if (metaModel.decorators && metaModel.decorators.length > 0) {
322
+ result += decoratorsFromMetaModel(metaModel.decorators, "");
323
+ }
324
+ result += `namespace ${metaModel.namespace}`;
325
+ if (metaModel.imports && metaModel.imports.length > 0) {
326
+ result += "\n";
327
+ metaModel.imports.forEach((imp) => {
328
+ switch (imp.$class) {
329
+ case `${import_concerto_metamodel.MetaModelNamespace}.ImportType`:
330
+ case `${import_concerto_metamodel.MetaModelNamespace}.ImportTypeFrom`: {
331
+ const typedImport = imp;
332
+ result += `
333
+ import ${imp.namespace}.${typedImport.name}`;
334
+ break;
335
+ }
336
+ case `${import_concerto_metamodel.MetaModelNamespace}.ImportAll`:
337
+ case `${import_concerto_metamodel.MetaModelNamespace}.ImportAllFrom`:
338
+ result += `
339
+ import ${imp.namespace}.*`;
340
+ break;
341
+ case `${import_concerto_metamodel.MetaModelNamespace}.ImportTypes`: {
342
+ const typesImport = imp;
343
+ if (!typesImport.types || typesImport.types.length === 0) {
344
+ break;
345
+ }
346
+ const aliasedTypes = typesImport.aliasedTypes ? new Map(
347
+ typesImport.aliasedTypes.map((aliasedType) => [
348
+ aliasedType.name,
349
+ aliasedType.aliasedName
350
+ ])
351
+ ) : /* @__PURE__ */ new Map();
352
+ const commaSeparatedTypesString = typesImport.types.map(
353
+ (type) => aliasedTypes.has(type) ? `${type} as ${aliasedTypes.get(type)}` : type
354
+ ).join(",");
355
+ result += `
356
+ import ${imp.namespace}.{${commaSeparatedTypesString}}`;
357
+ break;
358
+ }
359
+ default:
360
+ throw new Error("Unrecognized import");
361
+ }
362
+ if (imp.uri) {
363
+ result += ` from ${imp.uri}`;
364
+ }
365
+ });
366
+ }
367
+ if (metaModel.declarations && metaModel.declarations.length > 0) {
368
+ metaModel.declarations.forEach((decl) => {
369
+ result += `
370
+
371
+ ${declFromMetaModel(decl)}`;
372
+ });
373
+ }
374
+ return result;
375
+ }
376
+ var Printer = {
377
+ toCTO
378
+ };
379
+ var printer_default = Printer;
380
+
381
+ export {
382
+ toCTO,
383
+ printer_default
384
+ };
385
+ //# sourceMappingURL=chunk-W7LTTM2O.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/printer.ts"],
4
+ "sourcesContent": ["/*\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 {\n MetaModelNamespace,\n IDeclaration,\n IDecorator,\n IDecoratorLiteral,\n IDecoratorString,\n IDecoratorTypeReference,\n IMapDeclaration,\n IModel,\n IProperty,\n IImport,\n IImportTypes,\n IConceptDeclaration,\n IIdentifiedBy,\n IImportType,\n IDecoratorBoolean,\n IDecoratorNumber\n} from '@accordproject/concerto-metamodel';\n\n/**\n * Returns true if the metamodel is a MapDeclaration\n * @param {object} mm - the metamodel\n * @return {boolean} the string for that model\n */\nfunction isMap(mm: IDeclaration): boolean {\n return mm.$class === `${MetaModelNamespace}.MapDeclaration`;\n}\n\n/**\n * Returns true if the metamodel is a ScalarDeclaration\n * @param {object} mm - the metamodel\n * @return {boolean} the string for that model\n */\nfunction isScalar(mm: IDeclaration): boolean {\n return [\n `${MetaModelNamespace}.BooleanScalar`,\n `${MetaModelNamespace}.IntegerScalar`,\n `${MetaModelNamespace}.LongScalar`,\n `${MetaModelNamespace}.DoubleScalar`,\n `${MetaModelNamespace}.StringScalar`,\n `${MetaModelNamespace}.DateTimeScalar`,\n ].includes(mm.$class);\n}\n\n/**\n * Create decorator argument string from a metamodel\n * @param {object} mm - the metamodel\n * @return {string} the string for the decorator argument\n */\nfunction decoratorArgFromMetaModel(mm: IDecoratorLiteral): string {\n let result = '';\n switch (mm.$class) {\n case `${MetaModelNamespace}.DecoratorTypeReference`:\n const typeRef = mm as IDecoratorTypeReference;\n result += `${typeRef.type.name}${!!typeRef.isArray ? '[]' : ''}`;\n break;\n case `${MetaModelNamespace}.DecoratorString`:\n const strRef = mm as IDecoratorString;\n result += toStringLiteral(strRef.value);\n break;\n default:\n result += `${(mm as (IDecoratorNumber | IDecoratorBoolean)).value}`;\n break;\n }\n return result;\n}\n\n/**\n * Create decorator string from a metamodel\n * @param {object} mm - the metamodel\n * @return {string} the string for the decorator\n */\nfunction decoratorFromMetaModel(mm: IDecorator): string {\n let result = '';\n result += `@${mm.name}`;\n if (mm.arguments) {\n result += '(';\n result += mm.arguments.map(decoratorArgFromMetaModel).join(',');\n result += ')';\n }\n return result;\n}\n\n/**\n * Create decorators string from a metamodel\n * @param {object} mm - the metamodel\n * @param {string} prefix - indentation\n * @return {string} the string for the decorators\n */\nfunction decoratorsFromMetaModel(mm: IDecorator[], prefix: string): string {\n let result = '';\n result += mm.map(decoratorFromMetaModel).join(`\\n${prefix}`);\n result += `\\n${prefix}`;\n return result;\n}\n\n/**\n * Create type string from a metamodel\n *\n * @param {object} mm - the metamodel\n * @return {string} the string for the type\n */\nfunction typeFromMetaModel(mm: any): string {\n let result = '';\n switch (mm.$class) {\n case `${MetaModelNamespace}.EnumProperty`:\n break;\n case `${MetaModelNamespace}.BooleanScalar`:\n case `${MetaModelNamespace}.BooleanProperty`:\n case `${MetaModelNamespace}.BooleanMapValueType`:\n result += ' Boolean';\n break;\n case `${MetaModelNamespace}.DateTimeProperty`:\n case `${MetaModelNamespace}.DateTimeScalar`:\n case `${MetaModelNamespace}.DateTimeMapKeyType`:\n case `${MetaModelNamespace}.DateTimeMapValueType`:\n result += ' DateTime';\n break;\n case `${MetaModelNamespace}.DoubleProperty`:\n case `${MetaModelNamespace}.DoubleScalar`:\n case `${MetaModelNamespace}.DoubleMapValueType`:\n result += ' Double';\n break;\n case `${MetaModelNamespace}.IntegerProperty`:\n case `${MetaModelNamespace}.IntegerScalar`:\n case `${MetaModelNamespace}.IntegerMapValueType`:\n result += ' Integer';\n break;\n case `${MetaModelNamespace}.LongProperty`:\n case `${MetaModelNamespace}.LongScalar`:\n case `${MetaModelNamespace}.LongMapValueType`:\n result += ' Long';\n break;\n case `${MetaModelNamespace}.StringProperty`:\n case `${MetaModelNamespace}.StringScalar`:\n case `${MetaModelNamespace}.StringMapKeyType`:\n case `${MetaModelNamespace}.StringMapValueType`:\n result += ' String';\n break;\n case `${MetaModelNamespace}.ObjectProperty`:\n case `${MetaModelNamespace}.ObjectMapKeyType`:\n case `${MetaModelNamespace}.ObjectMapValueType`:\n result += ` ${mm.type.name}`;\n break;\n case `${MetaModelNamespace}.RelationshipProperty`:\n case `${MetaModelNamespace}.RelationshipMapValueType`:\n result += ` ${mm.type.name}`;\n break;\n }\n return result;\n}\n\n/**\n * Create modifiers string from a metamodel\n *\n * @param {object} mm - the metamodel\n * @return {string} the string for the modifiers\n */\nfunction modifiersFromMetaModel(mm: any): string {\n let result = '';\n let defaultString = '';\n let validatorString = '';\n\n switch (mm.$class) {\n case `${MetaModelNamespace}.EnumProperty`:\n break;\n case `${MetaModelNamespace}.BooleanProperty`:\n case `${MetaModelNamespace}.BooleanScalar`:\n if (mm.defaultValue === true || mm.defaultValue === false) {\n if (mm.defaultValue) {\n defaultString += ' default=true';\n } else {\n defaultString += ' default=false';\n }\n }\n break;\n case `${MetaModelNamespace}.DateTimeProperty`:\n case `${MetaModelNamespace}.DateTimeScalar`:\n if (mm.defaultValue !== undefined) {\n defaultString += ` default=${toStringLiteral(mm.defaultValue)}`;\n }\n break;\n case `${MetaModelNamespace}.DoubleProperty`:\n case `${MetaModelNamespace}.DoubleScalar`:\n if (mm.defaultValue !== undefined) {\n const doubleString = toDoubleString(mm.defaultValue);\n defaultString += ` default=${doubleString}`;\n }\n if (mm.validator) {\n const lowerString = mm.validator.lower !== undefined ? toDoubleString(mm.validator.lower) : '';\n const upperString = mm.validator.upper !== undefined ? toDoubleString(mm.validator.upper) : '';\n validatorString += ` range=[${lowerString},${upperString}]`;\n }\n break;\n case `${MetaModelNamespace}.IntegerProperty`:\n case `${MetaModelNamespace}.IntegerScalar`:\n if (mm.defaultValue !== undefined) {\n defaultString += ` default=${mm.defaultValue.toString()}`;\n }\n if (mm.validator) {\n const lowerString = mm.validator.lower !== undefined ? mm.validator.lower : '';\n const upperString = mm.validator.upper !== undefined ? mm.validator.upper : '';\n validatorString += ` range=[${lowerString},${upperString}]`;\n }\n break;\n case `${MetaModelNamespace}.LongProperty`:\n case `${MetaModelNamespace}.LongScalar`:\n if (mm.defaultValue !== undefined) {\n defaultString += ` default=${mm.defaultValue.toString()}`;\n }\n if (mm.validator) {\n const lowerString = mm.validator.lower !== undefined ? mm.validator.lower : '';\n const upperString = mm.validator.upper !== undefined ? mm.validator.upper : '';\n validatorString += ` range=[${lowerString},${upperString}]`;\n }\n break;\n case `${MetaModelNamespace}.StringProperty`:\n case `${MetaModelNamespace}.StringScalar`:\n if (mm.defaultValue !== undefined) {\n defaultString += ` default=${toStringLiteral(mm.defaultValue)}`;\n }\n if (mm.validator) {\n validatorString += ` regex=${toRegexLiteral(mm.validator.pattern, mm.validator.flags)}`;\n }\n if (mm.lengthValidator) {\n const minLength = mm.lengthValidator.minLength !== undefined ? mm.lengthValidator.minLength : '';\n const maxLength = mm.lengthValidator.maxLength !== undefined ? mm.lengthValidator.maxLength : '';\n validatorString += ` length=[${minLength},${maxLength}]`;\n }\n break;\n case `${MetaModelNamespace}.ObjectProperty`:\n if (mm.defaultValue !== undefined) {\n defaultString += ` default=\"${mm.defaultValue}\"`;\n }\n break;\n }\n\n if (mm.sizeValidator) {\n const minSize = mm.sizeValidator.minSize !== undefined ? mm.sizeValidator.minSize : '';\n const maxSize = mm.sizeValidator.maxSize !== undefined ? mm.sizeValidator.maxSize : '';\n validatorString += ` size=[${minSize},${maxSize}]`;\n }\n\n return result + defaultString + validatorString;\n}\n\n/**\n * Format a string as a quoted CTO string literal, escaping any characters that\n * would otherwise terminate the literal or break parsing.\n * @param {string} value - string value to quote\n * @returns {string} CTO-compatible quoted string literal\n */\nfunction toStringLiteral(value: string): string {\n return JSON.stringify(String(value));\n}\n\n/**\n * Format a regular expression validator as a CTO regex literal. Unescaped\n * forward slashes and line terminators in the pattern would terminate the\n * literal early, so the pattern is normalized the same way JavaScript\n * normalizes RegExp.prototype.source. Patterns that are not valid regular\n * expressions are emitted unchanged.\n * @param {string} pattern - the regular expression pattern\n * @param {string} [flags] - the regular expression flags\n * @returns {string} CTO-compatible regex literal\n */\nfunction toRegexLiteral(pattern: string, flags?: string): string {\n let source = pattern;\n try {\n source = new RegExp(pattern, flags).source;\n } catch {\n // Leave invalid patterns untouched rather than throwing while printing\n }\n return `/${source}/${flags || ''}`;\n}\n\n/**\n * Format a numeric literal as a Double token for CTO output.\n * @param {number} value - numeric value to format\n * @returns {string} CTO-compatible Double literal\n */\nfunction toDoubleString(value: number): string {\n const normalizedValue = Number(value).toLocaleString('en-US', {\n useGrouping: false,\n // Intl.NumberFormat permits 1..21; use the maximum to avoid exponent output.\n maximumSignificantDigits: 21,\n });\n\n if (!normalizedValue.includes('.')) {\n return `${normalizedValue}.0`;\n }\n\n return normalizedValue;\n}\n\n/**\n * Create property string from a metamodel\n *\n * @param {object} prop - the property metamodel object\n * @return {string} the string for the property\n */\nfunction propertyFromMetaModel(prop: IProperty): string {\n let result = '';\n\n if (prop.decorators) {\n result += decoratorsFromMetaModel(prop.decorators, ' ');\n }\n\n if (prop.$class === `${MetaModelNamespace}.RelationshipProperty`) {\n result += '-->';\n } else {\n result += 'o';\n }\n result += typeFromMetaModel(prop);\n if (prop.isArray) {\n result += '[]';\n }\n result += ` ${prop.name}`;\n result += modifiersFromMetaModel(prop);\n if (prop.isOptional) {\n result += ' optional';\n }\n return result;\n}\n\n/**\n * Create map type string from a metamodel map\n *\n * @param {object} entry - the map metamodel object\n * @return {string} the string for the map\n */\nfunction mapFromMetaModel(entry: any): string {\n let result = '';\n if (entry.decorators) {\n result += decoratorsFromMetaModel(entry.decorators, ' ');\n }\n if (entry.$class === `${MetaModelNamespace}.RelationshipMapValueType`) {\n result += '-->';\n } else {\n result += 'o';\n }\n result += typeFromMetaModel(entry);\n return result;\n}\n\n/**\n * Create declaration string from a metamodel\n *\n * @param {object} mm - the declaration metamodel object\n * @return {string} the string for the declaration\n */\nfunction declFromMetaModel(mm: IDeclaration): string {\n let result = '';\n\n if (mm.decorators) {\n result += decoratorsFromMetaModel(mm.decorators, '');\n }\n\n if (isScalar(mm)) {\n result += `scalar ${mm.name} extends`;\n result += typeFromMetaModel(mm);\n result += modifiersFromMetaModel(mm);\n } else if (isMap(mm)) {\n result += `map ${mm.name} {`;\n const mapDecl = mm as IMapDeclaration;\n result += `\\n ${mapFromMetaModel(mapDecl.key)}`;\n result += `\\n ${mapFromMetaModel(mapDecl.value)}`;\n result += '\\n}';\n } else {\n const conceptDecl = mm as IConceptDeclaration;\n if (conceptDecl.isAbstract) {\n result += 'abstract ';\n }\n switch (mm.$class) {\n case `${MetaModelNamespace}.AssetDeclaration`:\n result += `asset ${mm.name} `;\n break;\n case `${MetaModelNamespace}.ConceptDeclaration`:\n result += `concept ${mm.name} `;\n break;\n case `${MetaModelNamespace}.EventDeclaration`:\n result += `event ${mm.name} `;\n break;\n case `${MetaModelNamespace}.ParticipantDeclaration`:\n result += `participant ${mm.name} `;\n break;\n case `${MetaModelNamespace}.TransactionDeclaration`:\n result += `transaction ${mm.name} `;\n break;\n case `${MetaModelNamespace}.EnumDeclaration`:\n result += `enum ${mm.name} `;\n break;\n }\n\n // Handle identified\n if (conceptDecl.identified) {\n if (conceptDecl.identified.$class === `${MetaModelNamespace}.IdentifiedBy`) {\n const identifiedBy = conceptDecl.identified as IIdentifiedBy;\n result += `identified by ${identifiedBy.name} `;\n } else {\n result += 'identified ';\n }\n }\n\n // Handle supertype\n if (conceptDecl.superType) {\n if (conceptDecl.superType.name === mm.name) {\n throw new Error(`The declaration \"${mm.name}\" cannot extend itself.`);\n }\n result += `extends ${conceptDecl.superType.name} `;\n }\n\n result += '{';\n\n // Handle properties\n conceptDecl.properties.forEach((property: IProperty) => {\n result += `\\n ${propertyFromMetaModel(property)}`;\n });\n result += '\\n}';\n }\n\n return result;\n}\n\n/**\n * Converts a metamodel instance to a CTO string\n *\n * @param {*} metaModel - the metamodel instance\n * @return {string} the CTO model as a string\n */\nexport function toCTO(metaModel: IModel): string {\n let result = '';\n\n // version\n if (metaModel.concertoVersion) {\n result += `concerto version \"${metaModel.concertoVersion}\"\\n\\n`;\n }\n\n // decorators\n if (metaModel.decorators && metaModel.decorators.length > 0) {\n result += decoratorsFromMetaModel(metaModel.decorators, '');\n }\n\n // namespace\n result += `namespace ${metaModel.namespace}`;\n\n // imports\n if (metaModel.imports && metaModel.imports.length > 0) {\n result += '\\n';\n metaModel.imports.forEach((imp: IImport) => {\n switch (imp.$class) {\n case `${MetaModelNamespace}.ImportType`:\n case `${MetaModelNamespace}.ImportTypeFrom`: {\n const typedImport = imp as IImportType;\n result += `\\nimport ${imp.namespace}.${typedImport.name}`;\n break;\n }\n case `${MetaModelNamespace}.ImportAll`:\n case `${MetaModelNamespace}.ImportAllFrom`:\n result += `\\nimport ${imp.namespace}.*`;\n break;\n case `${MetaModelNamespace}.ImportTypes`: {\n const typesImport = imp as IImportTypes;\n if (!typesImport.types || typesImport.types.length === 0) {\n break;\n }\n const aliasedTypes = typesImport.aliasedTypes\n ? new Map(\n typesImport.aliasedTypes.map((aliasedType: any) => [\n aliasedType.name,\n aliasedType.aliasedName,\n ])\n )\n : new Map();\n const commaSeparatedTypesString = typesImport.types\n .map((type: string) =>\n aliasedTypes.has(type)\n ? `${type} as ${aliasedTypes.get(type)}`\n : type\n )\n .join(',');\n result += `\\nimport ${imp.namespace}.{${commaSeparatedTypesString}}`;\n break;\n }\n default:\n throw new Error('Unrecognized import');\n }\n if (imp.uri) {\n result += ` from ${imp.uri}`;\n }\n });\n }\n\n // declarations\n if (metaModel.declarations && metaModel.declarations.length > 0) {\n metaModel.declarations.forEach((decl: IDeclaration) => {\n result += `\\n\\n${declFromMetaModel(decl)}`;\n });\n }\n\n return result;\n}\n\nconst Printer = {\n toCTO,\n};\nexport default Printer;\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -0,0 +1,14 @@
1
+ import {
2
+ createDefaultFileDownloader,
3
+ external_default,
4
+ resolveExternal
5
+ } from "./chunk-5Z2F6LHO.mjs";
6
+ import "./chunk-TQPDAJQB.mjs";
7
+ import "./chunk-E5UYTZNO.mjs";
8
+ import "./chunk-MSZDQHW6.mjs";
9
+ export {
10
+ createDefaultFileDownloader,
11
+ external_default as default,
12
+ resolveExternal
13
+ };
14
+ //# sourceMappingURL=external.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,27 @@
1
+ import {
2
+ external_default
3
+ } from "./chunk-5Z2F6LHO.mjs";
4
+ import {
5
+ parserMain_default
6
+ } from "./chunk-HZQXVGUH.mjs";
7
+ import "./chunk-TQPDAJQB.mjs";
8
+ import {
9
+ parseexception_default
10
+ } from "./chunk-OMK4IF4X.mjs";
11
+ import {
12
+ printer_default
13
+ } from "./chunk-W7LTTM2O.mjs";
14
+ import "./chunk-E5UYTZNO.mjs";
15
+ import {
16
+ init_browser_process_shim
17
+ } from "./chunk-MSZDQHW6.mjs";
18
+
19
+ // src/index.ts
20
+ init_browser_process_shim();
21
+ export {
22
+ external_default as External,
23
+ parseexception_default as ParseException,
24
+ parserMain_default as Parser,
25
+ printer_default as Printer
26
+ };
27
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/index.ts"],
4
+ "sourcesContent": ["/*\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\n/**\n * Concerto CTO concrete syntax module. Concerto is a framework for defining domain\n * specific models.\n *\n * @module concerto-cto\n */\n\n// Exceptions\nimport ParseException from './parseexception';\n\n// Parser\nimport Parser from './parserMain';\n\n// Printer\nimport Printer from './printer';\n\n// External models resolution\nimport External from './external';\n\nexport {\n ParseException,\n Parser,\n Printer,\n External\n};"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;",
6
+ "names": []
7
+ }
@@ -0,0 +1,10 @@
1
+ import {
2
+ ParseException,
3
+ parseexception_default
4
+ } from "./chunk-OMK4IF4X.mjs";
5
+ import "./chunk-MSZDQHW6.mjs";
6
+ export {
7
+ ParseException,
8
+ parseexception_default as default
9
+ };
10
+ //# sourceMappingURL=parseexception.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,15 @@
1
+ import {
2
+ parse,
3
+ parseModels,
4
+ parserMain_default
5
+ } from "./chunk-HZQXVGUH.mjs";
6
+ import "./chunk-TQPDAJQB.mjs";
7
+ import "./chunk-OMK4IF4X.mjs";
8
+ import "./chunk-E5UYTZNO.mjs";
9
+ import "./chunk-MSZDQHW6.mjs";
10
+ export {
11
+ parserMain_default as default,
12
+ parse,
13
+ parseModels
14
+ };
15
+ //# sourceMappingURL=parserMain.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
+ printer_default,
3
+ toCTO
4
+ } from "./chunk-W7LTTM2O.mjs";
5
+ import "./chunk-E5UYTZNO.mjs";
6
+ import "./chunk-MSZDQHW6.mjs";
7
+ export {
8
+ printer_default as default,
9
+ toCTO
10
+ };
11
+ //# sourceMappingURL=printer.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -1,4 +1,10 @@
1
- import { IModels } from '@accordproject/concerto-metamodel';
1
+ import { FileDownloader } from '@accordproject/concerto-util';
2
+ import { IModel, IModels } from '@accordproject/concerto-metamodel';
3
+ /**
4
+ * Options passed through to the underlying FileDownloader (and, in turn, to the
5
+ * FileLoader's `fetch` call) when resolving external model dependencies.
6
+ */
7
+ export type ResolveExternalOptions = RequestInit;
2
8
  /**
3
9
  * Downloads all ModelFiles that are external dependencies and adds or
4
10
  * updates them in this ModelManager.
@@ -8,14 +14,14 @@ import { IModels } from '@accordproject/concerto-metamodel';
8
14
  * @throws {IllegalModelException} if the models fail validation
9
15
  * @return {Promise} a promise when the download and update operation is completed.
10
16
  */
11
- declare function resolveExternal(models: IModels, options?: any, fileDownloader?: any): Promise<IModels>;
17
+ export declare function resolveExternal(models: IModels, options?: ResolveExternalOptions, fileDownloader?: FileDownloader<IModel>): Promise<IModels>;
12
18
  /**
13
19
  * Creates a default file downloader
14
20
  * @return {FileDownloader} a default file downloader instance
15
21
  */
16
- declare function createDefaultFileDownloader(): any;
17
- declare const _default: {
22
+ export declare function createDefaultFileDownloader(): FileDownloader<IModel>;
23
+ declare const External: {
18
24
  resolveExternal: typeof resolveExternal;
19
25
  createDefaultFileDownloader: typeof createDefaultFileDownloader;
20
26
  };
21
- export = _default;
27
+ export default External;
package/dist/external.js CHANGED
@@ -48,11 +48,14 @@ var __importStar = (this && this.__importStar) || (function () {
48
48
  var __importDefault = (this && this.__importDefault) || function (mod) {
49
49
  return (mod && mod.__esModule) ? mod : { "default": mod };
50
50
  };
51
+ Object.defineProperty(exports, "__esModule", { value: true });
52
+ exports.resolveExternal = resolveExternal;
53
+ exports.createDefaultFileDownloader = createDefaultFileDownloader;
51
54
  const debug_1 = __importDefault(require("debug"));
52
55
  const pathBrowserify = __importStar(require("path-browserify"));
53
56
  const concerto_util_1 = require("@accordproject/concerto-util");
54
57
  const concerto_metamodel_1 = require("@accordproject/concerto-metamodel");
55
- const Parser = require("./parser");
58
+ const Parser = __importStar(require("./parser"));
56
59
  const debugLog = (0, debug_1.default)('concerto:ModelManager');
57
60
  /**
58
61
  * Update models with a new model
@@ -119,8 +122,9 @@ function createDefaultFileDownloader() {
119
122
  };
120
123
  return new concerto_util_1.FileDownloader(new concerto_util_1.DefaultFileLoader(processFile), (file) => concerto_metamodel_1.MetaModelUtil.getExternalImports(file));
121
124
  }
122
- module.exports = {
125
+ const External = {
123
126
  resolveExternal,
124
127
  createDefaultFileDownloader,
125
128
  };
129
+ exports.default = External;
126
130
  //# sourceMappingURL=external.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"external.js","sourceRoot":"","sources":["../src/external.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;GAYG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,kDAA0B;AAC1B,gEAAkD;AAClD,gEAAiF;AACjF,0EAAwG;AAExG,mCAAoC;AAEpC,MAAM,QAAQ,GAAG,IAAA,eAAK,EAAC,uBAAuB,CAAC,CAAC;AAEhD;;;;;GAKG;AACH,SAAS,YAAY,CAAC,MAAe,EAAE,QAAgB;IACnD,MAAM,MAAM,GAAY;QACpB,MAAM,EAAE,GAAG,uCAAkB,SAAS;QACtC,MAAM,EAAE,EAAE;KACb,CAAC;IACF,MAAM,YAAY,GAAG,QAAQ,CAAC,SAAS,CAAC;IACxC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC7B,IAAI,KAAK,GAAG,KAAK,CAAC;IAClB,MAAM,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;QAC1B,IAAI,UAAU,CAAC,SAAS,KAAK,YAAY,EAAE,CAAC;YACxC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC7B,KAAK,GAAG,IAAI,CAAC;QACjB,CAAC;aAAM,CAAC;YACJ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACnC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAED;;;;;;;;GAQG;AACH,KAAK,UAAU,eAAe,CAAC,MAAe,EAAE,OAAa,EAAE,cAAoB;IAC/E,MAAM,IAAI,GAAG,sBAAsB,CAAC;IACpC,QAAQ,CAAC,IAAI,EAAE,sBAAsB,EAAE,OAAO,CAAC,CAAC;IAEhD,kDAAkD;IAClD,MAAM,UAAU,GAAG,cAAc,IAAI,2BAA2B,EAAE,CAAC;IAEnE,MAAM,kBAAkB,GAAG,MAAM,UAAU,CAAC,4BAA4B,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEjG,IAAI,MAAM,GAAG,MAAM,CAAC;IACpB,kBAAkB,CAAC,OAAO,CAAC,CAAC,EAAU,EAAE,EAAE;QACtC,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAClB,CAAC;AAED;;;GAGG;AACH,SAAS,2BAA2B;IAChC,sDAAsD;IACtD,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,IAAS,EAAO,EAAE;QACjD,sDAAsD;QACtD,oCAAoC;QACpC,IAAI,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,MAAM,EAAE,CAAC;YAC1C,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;IAC5F,CAAC,CAAC;IACF,OAAO,IAAI,8BAAc,CAAC,IAAI,iCAAiB,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,kCAAa,CAAC,kBAAkB,CAAC,IAAI,CAA2B,CAAC,CAAC;AAC9I,CAAC;AAED,iBAAS;IACL,eAAe;IACf,2BAA2B;CAC9B,CAAC"}
1
+ {"version":3,"file":"external.js","sourceRoot":"","sources":["../src/external.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;GAYG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsDH,0CAeC;AAMD,kEAWC;AApFD,kDAA0B;AAC1B,gEAAkD;AAClD,gEAAiF;AACjF,0EAAwG;AAExG,iDAAmC;AAEnC,MAAM,QAAQ,GAAG,IAAA,eAAK,EAAC,uBAAuB,CAAC,CAAC;AAEhD;;;;;GAKG;AACH,SAAS,YAAY,CAAC,MAAe,EAAE,QAAgB;IACnD,MAAM,MAAM,GAAY;QACpB,MAAM,EAAE,GAAG,uCAAkB,SAAS;QACtC,MAAM,EAAE,EAAE;KACb,CAAC;IACF,MAAM,YAAY,GAAG,QAAQ,CAAC,SAAS,CAAC;IACxC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC7B,IAAI,KAAK,GAAG,KAAK,CAAC;IAClB,MAAM,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;QAC1B,IAAI,UAAU,CAAC,SAAS,KAAK,YAAY,EAAE,CAAC;YACxC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC7B,KAAK,GAAG,IAAI,CAAC;QACjB,CAAC;aAAM,CAAC;YACJ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACnC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAQD;;;;;;;;GAQG;AACI,KAAK,UAAU,eAAe,CAAC,MAAe,EAAE,OAAgC,EAAE,cAAuC;IAC5H,MAAM,IAAI,GAAG,sBAAsB,CAAC;IACpC,QAAQ,CAAC,IAAI,EAAE,sBAAsB,EAAE,OAAO,CAAC,CAAC;IAEhD,kDAAkD;IAClD,MAAM,UAAU,GAAG,cAAc,IAAI,2BAA2B,EAAE,CAAC;IAEnE,MAAM,kBAAkB,GAAG,MAAM,UAAU,CAAC,4BAA4B,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEjG,IAAI,MAAM,GAAG,MAAM,CAAC;IACpB,kBAAkB,CAAC,OAAO,CAAC,CAAC,EAAU,EAAE,EAAE;QACtC,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAClB,CAAC;AAED;;;GAGG;AACH,SAAgB,2BAA2B;IACvC,sDAAsD;IACtD,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,IAAY,EAAU,EAAE;QACvD,sDAAsD;QACtD,oCAAoC;QACpC,IAAI,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,MAAM,EAAE,CAAC;YAC1C,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;IAC5F,CAAC,CAAC;IACF,OAAO,IAAI,8BAAc,CAAC,IAAI,iCAAiB,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,kCAAa,CAAC,kBAAkB,CAAC,IAAI,CAA2B,CAAC,CAAC;AAC9I,CAAC;AAED,MAAM,QAAQ,GAAG;IACb,eAAe;IACf,2BAA2B;CAC9B,CAAC;AACF,kBAAe,QAAQ,CAAC"}
package/dist/index.d.ts CHANGED
@@ -4,8 +4,8 @@
4
4
  *
5
5
  * @module concerto-cto
6
6
  */
7
- import ParseException = require('./parseexception');
8
- import Parser = require('./parserMain');
9
- import Printer = require('./printer');
10
- import External = require('./external');
7
+ import ParseException from './parseexception';
8
+ import Parser from './parserMain';
9
+ import Printer from './printer';
10
+ import External from './external';
11
11
  export { ParseException, Parser, Printer, External };