exupery 0.3.13 → 0.3.14

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 (29) hide show
  1. package/dist/implementation/generated/pareto/generic/parse/token.js +2 -2
  2. package/dist/implementation/generated/pareto/generic/resolve.js +1 -1
  3. package/dist/implementation/manual/primitives/text/serializers/apostrophed_string.js +12 -0
  4. package/dist/implementation/manual/primitives/text/serializers/backticked_string.js +12 -0
  5. package/dist/implementation/{serializers/primitives/text → manual/primitives/text/serializers}/filename.js +1 -1
  6. package/dist/implementation/{serializers/primitives/text → manual/primitives/text/serializers}/identifier.js +3 -3
  7. package/dist/implementation/{serializers/primitives/text/apostrophed_string.js → manual/primitives/text/serializers/quoted_string.js} +5 -5
  8. package/dist/implementation/{transformers/schemas/implementation → manual/schemas/implementation/transformers}/typescript_light.d.ts +2 -2
  9. package/dist/implementation/manual/schemas/implementation/transformers/typescript_light.js +570 -0
  10. package/dist/implementation/{transformers/schemas/interface → manual/schemas/interface/transformers}/typescript_light.d.ts +3 -3
  11. package/dist/implementation/manual/schemas/interface/transformers/typescript_light.js +525 -0
  12. package/dist/implementation/manual/schemas/library/transformers/typescript_light.d.ts +10 -0
  13. package/dist/implementation/{transformers/schemas/library → manual/schemas/library/transformers}/typescript_light.js +3 -3
  14. package/dist/implementation/{transformers/schemas/typescript_light → manual/schemas/typescript_light/transformers}/fountain_pen_block.d.ts +1 -1
  15. package/dist/implementation/manual/schemas/typescript_light/transformers/fountain_pen_block.js +309 -0
  16. package/dist/shorthands/interface.d.ts +29 -29
  17. package/dist/shorthands/interface.js +1 -1
  18. package/package.json +2 -2
  19. package/dist/implementation/serializers/primitives/text/backticked_string.js +0 -12
  20. package/dist/implementation/serializers/primitives/text/quoted_string.js +0 -12
  21. package/dist/implementation/transformers/schemas/implementation/typescript_light.js +0 -570
  22. package/dist/implementation/transformers/schemas/interface/typescript_light.js +0 -524
  23. package/dist/implementation/transformers/schemas/library/typescript_light.d.ts +0 -10
  24. package/dist/implementation/transformers/schemas/typescript_light/fountain_pen_block.js +0 -309
  25. /package/dist/implementation/{serializers/primitives/text → manual/primitives/text/serializers}/apostrophed_string.d.ts +0 -0
  26. /package/dist/implementation/{serializers/primitives/text → manual/primitives/text/serializers}/backticked_string.d.ts +0 -0
  27. /package/dist/implementation/{serializers/primitives/text → manual/primitives/text/serializers}/filename.d.ts +0 -0
  28. /package/dist/implementation/{serializers/primitives/text → manual/primitives/text/serializers}/identifier.d.ts +0 -0
  29. /package/dist/implementation/{serializers/primitives/text → manual/primitives/text/serializers}/quoted_string.d.ts +0 -0
@@ -1,7 +1,7 @@
1
1
  import * as _pi from 'pareto-core-interface';
2
- import * as d_in from "../../../../interface/generated/pareto/schemas/interface/data_types/source";
3
- import * as d_out from "../../../../interface/generated/pareto/schemas/typescript_light/data_types/target";
4
- import * as s_out_ts from "../../../../interface/generated/pareto/schemas/typescript_light/data_types/target";
2
+ import * as d_in from "../../../../../interface/generated/pareto/schemas/interface/data_types/source";
3
+ import * as d_out from "../../../../../interface/generated/pareto/schemas/typescript_light/data_types/target";
4
+ import * as s_out_ts from "../../../../../interface/generated/pareto/schemas/typescript_light/data_types/target";
5
5
  export declare const line_dictionary: ($: _pi.Dictionary<d_out.Block_Part>, if_empty: d_out.Block_Part, prefix: d_out.Block_Part, suffix: d_out.Block_Part, add_commas: boolean) => d_out.Block_Part;
6
6
  export declare const Module_Set: ($: d_in.Module_Set) => d_out.Directory;
7
7
  export declare const Type_to_Aliases: ($: d_in.Type, $p: {
@@ -0,0 +1,525 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.Type_Declaration = exports.Type_to_Type = exports.Identifier = exports.Type_to_Aliases = exports.Module_Set = exports.line_dictionary = void 0;
27
+ const _pt = __importStar(require("pareto-core-transformer"));
28
+ const _pinternals = __importStar(require("pareto-core-internals"));
29
+ const t_tl_2_fp = __importStar(require("../../typescript_light/transformers/fountain_pen_block"));
30
+ const identifier_1 = require("../../../primitives/text/serializers/identifier");
31
+ const flatten_1 = require("pareto-standard-operations/dist/implementation/operations/pure/dictionary/flatten");
32
+ const repeated_1 = require("pareto-standard-operations/dist/implementation/manual/primitives/text/serializers/repeated");
33
+ const list_of_texts_1 = require("pareto-standard-operations/dist/implementation/temp_serializers/schemas/list_of_texts");
34
+ const filename_1 = require("../../../primitives/text/serializers/filename");
35
+ //shorthands
36
+ const sh = __importStar(require("../../../../../shorthands/typescript_light"));
37
+ const sh2 = __importStar(require("../../../../../shorthands/typescript_light"));
38
+ const line_dictionary = ($, if_empty, prefix, suffix, add_commas) => {
39
+ let is_empty = true;
40
+ $.map(($) => {
41
+ is_empty = false;
42
+ });
43
+ if (is_empty) {
44
+ return if_empty;
45
+ }
46
+ else {
47
+ let is_first = true;
48
+ return sh.b.sub([
49
+ prefix,
50
+ sh.b.sub($.to_list(($) => {
51
+ const out = sh.b.sub([
52
+ is_first ?
53
+ sh.b.nothing()
54
+ : add_commas
55
+ ? sh.b.snippet(", ")
56
+ : sh.b.nothing(),
57
+ $,
58
+ ]);
59
+ is_first = false;
60
+ return out;
61
+ })),
62
+ suffix,
63
+ ]);
64
+ }
65
+ };
66
+ exports.line_dictionary = line_dictionary;
67
+ const Module_Set = ($) => {
68
+ return $.map(($, key) => _pt.cc($, ($) => {
69
+ switch ($[0]) {
70
+ case 'module': return _pt.ss($, ($) => {
71
+ const x_imports = $.imports;
72
+ const x_module_parameters = $['type parameters'];
73
+ const valid_file_name = ($) => {
74
+ return (0, filename_1.$$)($);
75
+ };
76
+ return ['file', sh.group([
77
+ sh.g.simple_line("import * as _pi from 'pareto-core-interface'"),
78
+ sh.g.simple_line(""),
79
+ sh.g.sub($.imports.to_list(($, key) => sh.g.sub([
80
+ sh.g.nested_block([
81
+ sh.b.snippet("import * as "),
82
+ sh.b.snippet((0, identifier_1.$$)([" i ", key])),
83
+ sh.b.snippet(" from "),
84
+ t_tl_2_fp.String_Literal(_pt.cc($.type, ($) => {
85
+ switch ($[0]) {
86
+ case 'external': return _pt.ss($, ($) => valid_file_name($));
87
+ case 'ancestor': return _pt.ss($, ($) => `${(0, repeated_1.$$)("../", { 'count': $['number of steps'] })}${valid_file_name($.dependency)}`);
88
+ case 'sibling': return _pt.ss($, ($) => `./${valid_file_name($)}`);
89
+ default: return _pt.au($[0]);
90
+ }
91
+ })
92
+ + (0, list_of_texts_1.$$)($.tail.map(($) => `/${valid_file_name($)}`)), {
93
+ 'delimiter': "quote"
94
+ }),
95
+ ])
96
+ ]))),
97
+ /**
98
+ * I need to make sure that the global types are not shadowed by local types.
99
+ * I can do 3 things:
100
+ * 1. Prefix all global types identifiers and escape all local types identifiers that collide with that prefix
101
+ * 2. Prefix all local type identifiers
102
+ * 3. Place all types in a global namespace
103
+ *
104
+ * The problem with 2. is that it mangles all the identifiers, not just the global ones
105
+ * The problem with 3. is that TypeScript is not able to resolve the recursive types correctly in that case.
106
+ * So, I'm going with 1.
107
+ */
108
+ sh.g.simple_line(""),
109
+ sh.g.simple_line("// **** TYPES"),
110
+ sh.g.sub($.types.to_list(($, key) => sh.g.sub([
111
+ sh.g.simple_line(""),
112
+ (0, exports.Type_Declaration)(null, {
113
+ 'name': (0, exports.Identifier)(_pt.list_literal([" T ", key])),
114
+ 'type parameters': $.parameters,
115
+ 'module parameters': x_module_parameters,
116
+ 'function type parameters': _pt.not_set(),
117
+ 'callback': () => {
118
+ return t_tl_2_fp.Type((0, exports.Type_to_Type)($.type, {
119
+ 'module parameters': _pt.set(x_module_parameters),
120
+ 'temp imports': _pt.set(x_imports),
121
+ }), {
122
+ 'replace empty type literals by null': true
123
+ });
124
+ }
125
+ }),
126
+ ]))),
127
+ sh.g.simple_line(""),
128
+ sh.g.simple_line("// **** FRIENDLY NAMES FOR THE GLOBAL TYPES"),
129
+ sh.g.sub($.types.to_list(($, key) => sh.g.sub([
130
+ sh.g.simple_line(""),
131
+ (0, exports.Type_Declaration)(null, {
132
+ 'name': key,
133
+ 'type parameters': $.parameters,
134
+ 'module parameters': x_module_parameters,
135
+ 'function type parameters': _pt.not_set(),
136
+ 'callback': () => {
137
+ return sh.b.sub([
138
+ sh.b.snippet((0, identifier_1.$$)([" T ", key])),
139
+ (0, exports.line_dictionary)((0, flatten_1.$$)(_pt.dictionary_literal({
140
+ "M": x_module_parameters.map(($, key) => sh.b.snippet((0, identifier_1.$$)(["M ", key]))),
141
+ "T": $.parameters.map(($, key) => sh.b.snippet((0, identifier_1.$$)(["T ", key]))),
142
+ }), {
143
+ 'separator': " "
144
+ }, () => _pt.unreachable_code_path()), sh.b.nothing(), sh.b.snippet("<"), sh.b.snippet(">"), true),
145
+ ]);
146
+ }
147
+ }),
148
+ ]))),
149
+ sh.g.simple_line(""),
150
+ sh.g.simple_line("// **** ALIASES FOR NESTED TYPE WITH PREFIXED ROOT NAMES"),
151
+ sh.g.sub($.types.to_list(($, key) => sh.g.sub([
152
+ (0, exports.Type_to_Aliases)($.type, {
153
+ 'key': ` T ${key}`,
154
+ 'type parameters': $.parameters,
155
+ 'module parameters': x_module_parameters,
156
+ 'function type parameters': _pt.not_set(),
157
+ 'temp imports': x_imports,
158
+ }),
159
+ ]))),
160
+ sh.g.simple_line(""),
161
+ sh.g.simple_line("// *** ALIASES FOR NESTED TYPES"),
162
+ sh.g.sub($.types.to_list(($, key) => sh.g.sub([
163
+ (0, exports.Type_to_Aliases)($.type, {
164
+ 'key': ` T ${key}`,
165
+ 'type parameters': $.parameters,
166
+ 'module parameters': x_module_parameters,
167
+ 'function type parameters': _pt.not_set(),
168
+ 'temp imports': x_imports,
169
+ }),
170
+ ]))),
171
+ // b.array(op['to list, sorted by code point'](
172
+ // op.filter(
173
+ // $.types.map(($): _pi.Optional_Value<null> => pa.cc($.type, ($) => {
174
+ // switch ($[0]) {
175
+ // case 'number': return pa.ss($, ($) => pa.not_set())
176
+ // case 'boolean': return pa.ss($, ($) => pa.not_set())
177
+ // case 'function': return pa.ss($, ($) => pa.set(null))
178
+ // case 'component': return pa.ss($, ($) => pa.not_set())
179
+ // case 'group': return pa.ss($, ($) => pa.set(null))
180
+ // case 'nothing': return pa.ss($, ($) => pa.not_set())
181
+ // case 'state group': return pa.ss($, ($) => pa.set(null))
182
+ // case 'text': return pa.ss($, ($) => pa.not_set())
183
+ // case 'dictionary': return pa.ss($, ($) => pa.set(null))
184
+ // case 'list': return pa.ss($, ($) => pa.set(null))
185
+ // case 'computed': return pa.ss($, ($) => pa.set(null))
186
+ // case 'optional': return pa.ss($, ($) => pa.set(null))
187
+ // case 'parameter': return pa.ss($, ($) => pa.not_set())
188
+ // default: return pa.au($[0])
189
+ // }
190
+ // }))
191
+ // )
192
+ // ).map(($) => sh.g.nested_block([
193
+ // sh.b.snippet("export import "),
194
+ // sh.b.snippet(op['create identifier']($.key),
195
+ // sh.b.snippet(" = "),
196
+ // sh.b.snippet(op['create identifier'](` T ${$.key}`),
197
+ // ]))),
198
+ ])];
199
+ });
200
+ case 'set': return _pt.ss($, ($) => ['directory', (0, exports.Module_Set)($)]);
201
+ default: return _pt.au($[0]);
202
+ }
203
+ }));
204
+ };
205
+ exports.Module_Set = Module_Set;
206
+ const Type_to_Aliases = ($, $p) => {
207
+ const Namespace = (key, $p) => {
208
+ return sh.g.sub([
209
+ sh.g.simple_line(""),
210
+ sh.g.nested_block([
211
+ sh.b.snippet("export namespace "),
212
+ sh.b.snippet((0, identifier_1.$$)([key])),
213
+ sh.b.snippet(" {"),
214
+ sh.b.indent([
215
+ $p.callback()
216
+ ]),
217
+ sh.b.snippet("}")
218
+ ])
219
+ ]);
220
+ };
221
+ const Type_to_Aliases_2 = ($, $p) => {
222
+ return sh.g.sub([
223
+ (0, exports.Type_to_Aliases)($, {
224
+ 'key': $p.key,
225
+ 'type parameters': $p['type parameters'],
226
+ 'module parameters': $p['module parameters'],
227
+ 'function type parameters': $p['function type parameters'],
228
+ 'temp imports': $p['temp imports'],
229
+ }),
230
+ (0, exports.Type_Declaration)(null, {
231
+ 'name': $p.key,
232
+ 'type parameters': $p['type parameters'],
233
+ 'module parameters': $p['module parameters'],
234
+ 'function type parameters': $p['function type parameters'],
235
+ 'callback': () => {
236
+ return t_tl_2_fp.Type((0, exports.Type_to_Type)($, {
237
+ 'module parameters': _pt.set($p['module parameters']),
238
+ 'temp imports': _pt.set($p['temp imports']),
239
+ }), {
240
+ 'replace empty type literals by null': true
241
+ });
242
+ }
243
+ })
244
+ ]);
245
+ };
246
+ return _pt.cc($, ($) => {
247
+ switch ($[0]) {
248
+ case 'boolean': return _pt.ss($, ($) => sh.g.nothing());
249
+ case 'component': return _pt.ss($, ($) => Namespace($p.key, {
250
+ 'callback': () => sh.g.sub([
251
+ sh.g.sub($['type arguments'].to_list(($, key) => {
252
+ return Type_to_Aliases_2($, {
253
+ 'module parameters': $p['module parameters'],
254
+ 'type parameters': $p['type parameters'],
255
+ 'function type parameters': $p['function type parameters'],
256
+ 'key': key,
257
+ 'temp imports': $p['temp imports'],
258
+ });
259
+ })),
260
+ ])
261
+ }));
262
+ case 'computed': return _pt.ss($, ($) => Namespace($p.key, {
263
+ 'callback': () => Type_to_Aliases_2($, {
264
+ 'module parameters': $p['module parameters'],
265
+ 'type parameters': $p['type parameters'],
266
+ 'function type parameters': $p['function type parameters'],
267
+ 'key': "C",
268
+ 'temp imports': $p['temp imports'],
269
+ })
270
+ }));
271
+ case 'dictionary': return _pt.ss($, ($) => Namespace($p.key, {
272
+ 'callback': () => Type_to_Aliases_2($, {
273
+ 'module parameters': $p['module parameters'],
274
+ 'type parameters': $p['type parameters'],
275
+ 'function type parameters': $p['function type parameters'],
276
+ 'key': "D",
277
+ 'temp imports': $p['temp imports'],
278
+ })
279
+ }));
280
+ case 'function': return _pt.ss($, ($) => Namespace($p.key, {
281
+ 'callback': () => sh.g.sub([
282
+ Type_to_Aliases_2($.context, {
283
+ 'module parameters': $p['module parameters'],
284
+ 'type parameters': $p['type parameters'],
285
+ 'function type parameters': _pt.set($['type parameters']),
286
+ 'key': "CONTEXT",
287
+ 'temp imports': $p['temp imports'],
288
+ }),
289
+ Namespace("PARAMS", {
290
+ "callback": () => {
291
+ const ftp = $['type parameters'];
292
+ return sh.g.sub($.parameters.to_list(($, key) => {
293
+ return Type_to_Aliases_2($, {
294
+ 'module parameters': $p['module parameters'],
295
+ 'type parameters': $p['type parameters'],
296
+ 'function type parameters': _pt.set(ftp),
297
+ 'key': key,
298
+ 'temp imports': $p['temp imports'],
299
+ });
300
+ }));
301
+ },
302
+ }),
303
+ Type_to_Aliases_2($.return, {
304
+ 'module parameters': $p['module parameters'],
305
+ 'type parameters': $p['type parameters'],
306
+ 'function type parameters': _pt.set($['type parameters']),
307
+ 'key': "RESULT",
308
+ 'temp imports': $p['temp imports'],
309
+ }),
310
+ ])
311
+ }));
312
+ case 'group': return _pt.ss($, ($) => Namespace($p.key, {
313
+ 'callback': () => sh.g.sub([
314
+ sh.g.sub($.to_list(($, key) => {
315
+ return Type_to_Aliases_2($, {
316
+ 'module parameters': $p['module parameters'],
317
+ 'type parameters': $p['type parameters'],
318
+ 'function type parameters': $p['function type parameters'],
319
+ 'key': key,
320
+ 'temp imports': $p['temp imports'],
321
+ });
322
+ })),
323
+ ])
324
+ }));
325
+ case 'array': return _pt.ss($, ($) => Namespace($p.key, {
326
+ 'callback': () => Type_to_Aliases_2($, {
327
+ 'module parameters': $p['module parameters'],
328
+ 'type parameters': $p['type parameters'],
329
+ 'function type parameters': $p['function type parameters'],
330
+ 'key': "L",
331
+ 'temp imports': $p['temp imports'],
332
+ })
333
+ }));
334
+ case 'null': return _pt.ss($, ($) => sh.g.nothing());
335
+ case 'number': return _pt.ss($, ($) => sh.g.nothing());
336
+ case 'optional': return _pt.ss($, ($) => Namespace($p.key, {
337
+ 'callback': () => Type_to_Aliases_2($, {
338
+ 'module parameters': $p['module parameters'],
339
+ 'type parameters': $p['type parameters'],
340
+ 'function type parameters': $p['function type parameters'],
341
+ 'key': "O",
342
+ 'temp imports': $p['temp imports'],
343
+ })
344
+ }));
345
+ case 'parameter': return _pt.ss($, ($) => sh.g.nothing());
346
+ case 'tagged union': return _pt.ss($, ($) => Namespace($p.key, {
347
+ 'callback': () => sh.g.sub([
348
+ sh.g.sub($.to_list(($, key) => {
349
+ return Type_to_Aliases_2($, {
350
+ 'module parameters': $p['module parameters'],
351
+ 'type parameters': $p['type parameters'],
352
+ 'function type parameters': $p['function type parameters'],
353
+ 'key': key,
354
+ 'temp imports': $p['temp imports'],
355
+ });
356
+ })),
357
+ ])
358
+ }));
359
+ case 'string': return _pt.ss($, ($) => sh.g.nothing());
360
+ default: return _pt.au($[0]);
361
+ }
362
+ });
363
+ };
364
+ exports.Type_to_Aliases = Type_to_Aliases;
365
+ const Identifier = ($) => {
366
+ return (0, list_of_texts_1.$$)($);
367
+ };
368
+ exports.Identifier = Identifier;
369
+ const Type_to_Type = ($, $p) => {
370
+ return _pt.cc($, ($) => {
371
+ switch ($[0]) {
372
+ case 'boolean': return _pt.ss($, ($) => sh2.t.boolean());
373
+ case 'component': return _pt.ss($, ($) => sh2.t.type_reference(
374
+ //start
375
+ _pt.cc($.location, ($) => {
376
+ switch ($[0]) {
377
+ case 'import': return _pt.ss($, ($) => (0, exports.Identifier)(_pt.list_literal([" i ", $.import])));
378
+ case 'sibling': return _pt.ss($, ($) => (0, exports.Identifier)(_pt.list_literal([" T ", $])));
379
+ default: return _pt.au($[0]);
380
+ }
381
+ }),
382
+ //tail
383
+ _pt.list_literal([
384
+ _pt.cc($.location, ($) => {
385
+ switch ($[0]) {
386
+ case 'import': return _pt.ss($, ($) => _pt.list_literal([
387
+ (0, exports.Identifier)(_pt.list_literal([" T ", $.type]))
388
+ ]));
389
+ case 'sibling': return _pt.ss($, ($) => _pt.list_literal([]));
390
+ default: return _pt.au($[0]);
391
+ }
392
+ }),
393
+ $['sub selection'].map(($) => _pt.cc($, ($) => {
394
+ switch ($[0]) {
395
+ case 'dictionary': return _pt.ss($, ($) => _pt.list_literal(["D"]));
396
+ case 'group': return _pt.ss($, ($) => _pt.list_literal([$]));
397
+ case 'list': return _pt.ss($, ($) => _pt.list_literal(["L"]));
398
+ case 'optional': return _pt.ss($, ($) => _pt.list_literal(["O"]));
399
+ case 'state group': return _pt.ss($, ($) => _pt.list_literal([
400
+ "SG",
401
+ $,
402
+ ]));
403
+ default: return _pt.au($[0]);
404
+ }
405
+ })).flatten(($) => $)
406
+ ]).flatten(($) => $),
407
+ //type arguments
408
+ (0, flatten_1.$$)(_pt.dictionary_literal({
409
+ "M": _pt.cc($.location, ($) => {
410
+ switch ($[0]) {
411
+ case 'import': return _pt.ss($, ($) => $p['temp imports'].transform(($) => $, () => _pinternals.panic("DSFSDFSD")).get_entry($.import).transform(($) => $, () => {
412
+ let keys = "";
413
+ $p['temp imports'].map(($) => {
414
+ $.map(($, key) => {
415
+ keys += `, '${key}'`;
416
+ });
417
+ });
418
+ return _pinternals.panic(`no such import: ${$.import} @ ${keys}`);
419
+ })['type arguments'].map(($) => (0, exports.Type_to_Type)($, {
420
+ 'module parameters': $p['module parameters'],
421
+ 'temp imports': $p['temp imports'],
422
+ })));
423
+ case 'sibling': return _pt.ss($, ($) => $p['module parameters'].transform(($) => $, () => _pinternals.panic("DSFSDFSD")).map(($, key) => sh2.t.type_reference(`M ${key}`, [], [])));
424
+ default: return _pt.au($[0]);
425
+ }
426
+ }),
427
+ "T": $['type arguments'].map(($) => (0, exports.Type_to_Type)($, {
428
+ 'module parameters': $p['module parameters'],
429
+ 'temp imports': $p['temp imports'],
430
+ }))
431
+ }), {
432
+ 'separator': " "
433
+ }, () => _pt.unreachable_code_path()).to_list(($) => $)));
434
+ case 'computed': return _pt.ss($, ($) => sh2.t.type_reference(" et", ["Computed Value"], [
435
+ (0, exports.Type_to_Type)($, {
436
+ 'module parameters': $p['module parameters'],
437
+ 'temp imports': $p['temp imports'],
438
+ })
439
+ ]));
440
+ case 'dictionary': return _pt.ss($, ($) => sh2.t.type_reference(" et", ["Dictionary"], [
441
+ (0, exports.Type_to_Type)($, {
442
+ 'module parameters': $p['module parameters'],
443
+ 'temp imports': $p['temp imports'],
444
+ })
445
+ ]));
446
+ case 'function': return _pt.ss($, ($) => sh2.t.function_($['type parameters'].to_list(($, key) => `F ${key}`), [
447
+ sh2.parameter("$", (0, exports.Type_to_Type)($.context, {
448
+ 'module parameters': $p['module parameters'],
449
+ 'temp imports': $p['temp imports'],
450
+ })),
451
+ sh2.parameter("$p", sh2.t.type_literal($.parameters.map(($) => ({
452
+ 'readonly': true,
453
+ 'type': (0, exports.Type_to_Type)($, {
454
+ 'module parameters': $p['module parameters'],
455
+ 'temp imports': $p['temp imports'],
456
+ })
457
+ }))))
458
+ ], (0, exports.Type_to_Type)($.return, {
459
+ 'module parameters': $p['module parameters'],
460
+ 'temp imports': $p['temp imports'],
461
+ })));
462
+ case 'group': return _pt.ss($, ($) => sh2.t.type_literal($.map(($) => ({
463
+ 'readonly': true,
464
+ 'type': (0, exports.Type_to_Type)($, {
465
+ 'module parameters': $p['module parameters'],
466
+ 'temp imports': $p['temp imports'],
467
+ })
468
+ }))));
469
+ case 'array': return _pt.ss($, ($) => sh2.t.type_reference(" et", ["List"], [
470
+ (0, exports.Type_to_Type)($, {
471
+ 'module parameters': $p['module parameters'],
472
+ 'temp imports': $p['temp imports'],
473
+ })
474
+ ]));
475
+ case 'null': return _pt.ss($, ($) => sh2.t.null_());
476
+ case 'number': return _pt.ss($, ($) => sh2.t.number());
477
+ case 'optional': return _pt.ss($, ($) => sh2.t.type_reference(" et", ["Optional Value"], [
478
+ (0, exports.Type_to_Type)($, {
479
+ 'module parameters': $p['module parameters'],
480
+ 'temp imports': $p['temp imports'],
481
+ })
482
+ ]));
483
+ case 'parameter': return _pt.ss($, ($) => sh2.t.type_reference(_pt.cc($.location, ($) => {
484
+ switch ($[0]) {
485
+ case 'module': return _pt.ss($, ($) => "M");
486
+ case 'type': return _pt.ss($, ($) => "T");
487
+ case 'function': return _pt.ss($, ($) => "F");
488
+ default: return _pt.au($[0]);
489
+ }
490
+ })
491
+ + " "
492
+ + $.parameter, [], []));
493
+ case 'tagged union': return _pt.ss($, ($) => sh2.t.union($.to_list(($, key) => sh2.t.tuple('readonly', [
494
+ sh2.t.literal_type(key, 'apostrophe'),
495
+ (0, exports.Type_to_Type)($, {
496
+ 'module parameters': $p['module parameters'],
497
+ 'temp imports': $p['temp imports'],
498
+ })
499
+ ]))));
500
+ case 'string': return _pt.ss($, ($) => sh2.t.string());
501
+ default: return _pt.au($[0]);
502
+ }
503
+ });
504
+ };
505
+ exports.Type_to_Type = Type_to_Type;
506
+ const Type_Declaration = ($, $p) => {
507
+ return sh.g.nested_block([
508
+ sh.b.sub([
509
+ sh.b.snippet("export type "),
510
+ sh.b.snippet((0, identifier_1.$$)([$p.name])),
511
+ (0, exports.line_dictionary)((0, flatten_1.$$)(_pt.dictionary_literal({
512
+ "M": $p['module parameters'],
513
+ "T": $p['type parameters'],
514
+ "F": $p['function type parameters'].transform(($) => $, () => _pt.dictionary_literal({})),
515
+ }), {
516
+ //'escape': "$",
517
+ 'separator': " "
518
+ }, () => _pt.unreachable_code_path()).map(($, key) => sh.b.snippet((0, identifier_1.$$)([key]))), sh.b.nothing(), sh.b.snippet("<"), sh.b.snippet(">"), true),
519
+ sh.b.snippet(" = "),
520
+ $p.callback()
521
+ ])
522
+ ]);
523
+ };
524
+ exports.Type_Declaration = Type_Declaration;
525
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXNjcmlwdF9saWdodC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9tYW51YWwvc2NoZW1hcy9pbnRlcmZhY2UvdHJhbnNmb3JtZXJzL3R5cGVzY3JpcHRfbGlnaHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2REFBOEM7QUFFOUMsbUVBQW9EO0FBT3BELGtHQUFtRjtBQUNuRixnRkFBb0Y7QUFDcEYsK0dBQStIO0FBQy9ILHlIQUE2SDtBQUM3SCx5SEFBNkg7QUFDN0gsNEVBQWlGO0FBRWpGLFlBQVk7QUFDWiwrRUFBZ0U7QUFDaEUsZ0ZBQWlFO0FBRTFELE1BQU0sZUFBZSxHQUFHLENBQzNCLENBQW1DLEVBQ25DLFFBQTBCLEVBQzFCLE1BQXdCLEVBQ3hCLE1BQXdCLEVBQ3hCLFVBQW1CLEVBQ0gsRUFBRTtJQUNsQixJQUFJLFFBQVEsR0FBRyxJQUFJLENBQUE7SUFDbkIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1FBQ1IsUUFBUSxHQUFHLEtBQUssQ0FBQTtJQUNwQixDQUFDLENBQUMsQ0FBQTtJQUNGLElBQUksUUFBUSxFQUFFLENBQUM7UUFDWCxPQUFPLFFBQVEsQ0FBQTtJQUNuQixDQUFDO1NBQU0sQ0FBQztRQUNKLElBQUksUUFBUSxHQUFHLElBQUksQ0FBQTtRQUNuQixPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDO1lBQ1osTUFBTTtZQUNOLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQW9CLEVBQUU7Z0JBQ3ZDLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDO29CQUNqQixRQUFRLENBQUMsQ0FBQzt3QkFDTixFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFB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
@@ -0,0 +1,10 @@
1
+ import * as s_in_inf from "../../../../../interface/generated/pareto/schemas/interface/data_types/source";
2
+ import * as s_in_imp from "../../../../../interface/generated/pareto/schemas/implementation/data_types/source";
3
+ import * as d_out from "../../../../../interface/generated/pareto/schemas/typescript_light/data_types/target";
4
+ export type Temp_Library = {
5
+ 'interface': s_in_inf.Module_Set;
6
+ 'implementation': s_in_imp.Module_Set;
7
+ };
8
+ export declare const Temp_Library: ($: Temp_Library, $p: {
9
+ "phase": "development" | "production";
10
+ }) => d_out.Directory;
@@ -25,8 +25,8 @@ var __importStar = (this && this.__importStar) || function (mod) {
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
26
  exports.Temp_Library = void 0;
27
27
  const _pt = __importStar(require("pareto-core-transformer"));
28
- const t_interface_to_typescript_temp = __importStar(require("../interface/typescript_light"));
29
- const t_implementation_to_typescript_temp = __importStar(require("../implementation/typescript_light"));
28
+ const t_interface_to_typescript_temp = __importStar(require("../../interface/transformers/typescript_light"));
29
+ const t_implementation_to_typescript_temp = __importStar(require("../../implementation/transformers/typescript_light"));
30
30
  const sh = __importStar(require("pareto-fountain-pen/dist/shorthands/block"));
31
31
  const Temp_Library = ($, $p) => {
32
32
  return _pt.dictionary_literal({
@@ -38,4 +38,4 @@ const Temp_Library = ($, $p) => {
38
38
  });
39
39
  };
40
40
  exports.Temp_Library = Temp_Library;
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXNjcmlwdF9saWdodC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi90cmFuc2Zvcm1lcnMvc2NoZW1hcy9saWJyYXJ5L3R5cGVzY3JpcHRfbGlnaHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2REFBOEM7QUFROUMsOEZBQStFO0FBQy9FLHdHQUF5RjtBQUV6Riw4RUFBK0Q7QUFTeEQsTUFBTSxZQUFZLEdBQUcsQ0FDeEIsQ0FBZSxFQUNmLEVBRUMsRUFDYyxFQUFFO0lBQ2pCLE9BQU8sR0FBRyxDQUFDLGtCQUFrQixDQUFvQjtRQUM3QyxXQUFXLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsOEJBQThCLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNuRixnQkFBZ0IsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxtQ0FBbUMsQ0FBQyxVQUFVLENBQzNFLENBQUMsQ0FBQyxjQUFjLEVBQ2hCO1lBQ0ksT0FBTyxFQUFFLEVBQUUsQ0FBQyxLQUFLO1NBQ3BCLENBQ0osQ0FBQztRQUNGLGdCQUFnQjtLQUNuQixDQUFDLENBQUE7QUFDTixDQUFDLENBQUE7QUFoQlksUUFBQSxZQUFZLGdCQWdCeEIifQ==
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXNjcmlwdF9saWdodC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9tYW51YWwvc2NoZW1hcy9saWJyYXJ5L3RyYW5zZm9ybWVycy90eXBlc2NyaXB0X2xpZ2h0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkRBQThDO0FBTzlDLDhHQUErRjtBQUMvRix3SEFBeUc7QUFFekcsOEVBQStEO0FBU3hELE1BQU0sWUFBWSxHQUFHLENBQ3hCLENBQWUsRUFDZixFQUVDLEVBQ2MsRUFBRTtJQUNqQixPQUFPLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBb0I7UUFDN0MsV0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLDhCQUE4QixDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDbkYsZ0JBQWdCLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsbUNBQW1DLENBQUMsVUFBVSxDQUMzRSxDQUFDLENBQUMsY0FBYyxFQUNoQjtZQUNJLE9BQU8sRUFBRSxFQUFFLENBQUMsS0FBSztTQUNwQixDQUNKLENBQUM7UUFDRixnQkFBZ0I7S0FDbkIsQ0FBQyxDQUFBO0FBQ04sQ0FBQyxDQUFBO0FBaEJZLFFBQUEsWUFBWSxnQkFnQnhCIn0=
@@ -1,5 +1,5 @@
1
1
  import * as d_out_fp from "pareto-fountain-pen/dist/interface/generated/pareto/schemas/block/data_types/target";
2
- import * as d_in from "../../../../interface/generated/pareto/schemas/typescript_light/data_types/source";
2
+ import * as d_in from "../../../../../interface/generated/pareto/schemas/typescript_light/data_types/source";
3
3
  export declare const Group: ($: d_in.Group) => d_out_fp.Group;
4
4
  export declare const Group_Part: ($: d_in.Group_Part) => d_out_fp.Group_Part;
5
5
  export declare const Block: ($: d_in.Block) => d_out_fp.Block;