exupery 0.1.30 → 0.2.0

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 (44) hide show
  1. package/dist/implementation/{operations → algorithms/operations}/impure/text/create_identifier.js +5 -5
  2. package/dist/implementation/algorithms/operations/impure/text/serialize_apostrophed_string.js +12 -0
  3. package/dist/implementation/algorithms/operations/impure/text/serialize_backticked_string.js +12 -0
  4. package/dist/implementation/algorithms/operations/impure/text/serialize_quoted_string.js +12 -0
  5. package/dist/implementation/{transformations → algorithms/transformations}/implementation/typescript_light.d.ts +4 -4
  6. package/dist/implementation/algorithms/transformations/implementation/typescript_light.js +572 -0
  7. package/dist/implementation/algorithms/transformations/interface/typescript_light.d.ts +25 -0
  8. package/dist/implementation/algorithms/transformations/interface/typescript_light.js +525 -0
  9. package/dist/implementation/algorithms/transformations/library/typescript_light.d.ts +10 -0
  10. package/dist/implementation/{transformations → algorithms/transformations}/library/typescript_light.js +1 -1
  11. package/dist/implementation/{transformations → algorithms/transformations}/typescript_light/fountain_pen_block.d.ts +1 -1
  12. package/dist/implementation/algorithms/transformations/typescript_light/fountain_pen_block.js +312 -0
  13. package/dist/implementation/generated/pareto/generic/resolve.js +5 -5
  14. package/dist/implementation/generated/pareto/generic/unmarshall.js +20 -20
  15. package/dist/interface/algorithms/operations/impure/text/create_identifier.d.ts +1 -0
  16. package/dist/interface/algorithms/operations/impure/text/create_identifier.js +5 -0
  17. package/dist/interface/algorithms/operations/impure/text/serialize_apostrophed_string.d.ts +1 -0
  18. package/dist/interface/algorithms/operations/impure/text/serialize_apostrophed_string.js +5 -0
  19. package/dist/interface/algorithms/operations/impure/text/serialize_backticked_string.d.ts +1 -0
  20. package/dist/interface/algorithms/operations/impure/text/serialize_backticked_string.js +5 -0
  21. package/dist/interface/algorithms/operations/impure/text/serialize_quoted_string.d.ts +1 -0
  22. package/dist/interface/algorithms/operations/impure/text/serialize_quoted_string.js +5 -0
  23. package/dist/interface/algorithms/transformations/implementation/typescript_light.d.ts +1 -0
  24. package/dist/interface/algorithms/transformations/implementation/typescript_light.js +5 -0
  25. package/dist/interface/algorithms/transformations/interface/typescript_light.d.ts +1 -0
  26. package/dist/interface/algorithms/transformations/interface/typescript_light.js +5 -0
  27. package/dist/interface/algorithms/transformations/library/typescript_light.d.ts +1 -0
  28. package/dist/interface/algorithms/transformations/library/typescript_light.js +5 -0
  29. package/dist/interface/algorithms/transformations/typescript_light/fountain_pen_block.d.ts +1 -0
  30. package/dist/interface/algorithms/transformations/typescript_light/fountain_pen_block.js +5 -0
  31. package/dist/shorthands/typescript_light.d.ts +2 -2
  32. package/package.json +7 -7
  33. package/dist/implementation/operations/impure/text/serialize_apostrophed_string.js +0 -12
  34. package/dist/implementation/operations/impure/text/serialize_backticked_string.js +0 -12
  35. package/dist/implementation/operations/impure/text/serialize_quoted_string.js +0 -12
  36. package/dist/implementation/transformations/implementation/typescript_light.js +0 -572
  37. package/dist/implementation/transformations/interface/typescript_light.d.ts +0 -25
  38. package/dist/implementation/transformations/interface/typescript_light.js +0 -525
  39. package/dist/implementation/transformations/library/typescript_light.d.ts +0 -10
  40. package/dist/implementation/transformations/typescript_light/fountain_pen_block.js +0 -312
  41. /package/dist/implementation/{operations → algorithms/operations}/impure/text/create_identifier.d.ts +0 -0
  42. /package/dist/implementation/{operations → algorithms/operations}/impure/text/serialize_apostrophed_string.d.ts +0 -0
  43. /package/dist/implementation/{operations → algorithms/operations}/impure/text/serialize_backticked_string.d.ts +0 -0
  44. /package/dist/implementation/{operations → algorithms/operations}/impure/text/serialize_quoted_string.d.ts +0 -0
@@ -1,25 +0,0 @@
1
- import * as pt from 'exupery-core-types';
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
- export declare function line_dictionary($: pt.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
- export declare const Module_Set: ($: d_in.Module_Set) => d_out.Directory;
7
- export declare const Type_to_Aliases: ($: d_in.Type, $p: {
8
- "key": string;
9
- "type parameters": d_in.Type_Parameters;
10
- "function type parameters": pt.Optional_Value<d_in.Type_Parameters>;
11
- "module parameters": d_in.Type_Parameters;
12
- "temp imports": d_in.Module["imports"];
13
- }) => d_out.Group_Part;
14
- export declare const Identifier: ($: pt.Array<string>) => string;
15
- export declare const Type_to_Type: ($: d_in.Type, $p: {
16
- "module parameters": pt.Optional_Value<pt.Dictionary<null>>;
17
- "temp imports": pt.Optional_Value<d_in.Module["imports"]>;
18
- }) => s_out_ts.Type;
19
- export declare const Type_Declaration: ($: null, $p: {
20
- "name": string;
21
- "type parameters": d_in.Type_Parameters;
22
- "module parameters": d_in.Type_Parameters;
23
- "function type parameters": pt.Optional_Value<d_in.Type_Parameters>;
24
- "callback": () => d_out.Block_Part;
25
- }) => d_out.Group_Part;
@@ -1,525 +0,0 @@
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 = void 0;
27
- exports.line_dictionary = line_dictionary;
28
- const pa = __importStar(require("exupery-core-alg"));
29
- const sh2 = __importStar(require("../../../shorthands/typescript_light"));
30
- const fountain_pen_block_1 = require("../typescript_light/fountain_pen_block");
31
- const sh = __importStar(require("../../../shorthands/typescript_light"));
32
- const create_identifier_1 = require("../../../implementation/operations/impure/text/create_identifier");
33
- const to_list_sorted_by_code_point_1 = require("pareto-standard-operations/dist/implementation/operations/impure/dictionary/to_list_sorted_by_code_point");
34
- const flatten_1 = require("pareto-standard-operations/dist/implementation/operations/pure/list/flatten");
35
- const flatten_2 = require("pareto-standard-operations/dist/implementation/operations/pure/dictionary/flatten");
36
- const repeat_1 = require("pareto-standard-operations/dist/implementation/operations/impure/text/repeat");
37
- const join_list_of_texts_1 = require("pareto-standard-operations/dist/implementation/operations/pure/text/join_list_of_texts");
38
- const create_valid_file_name_1 = require("pareto-standard-operations/dist/implementation/operations/impure/text/create_valid_file_name");
39
- function line_dictionary($, if_empty, prefix, suffix, add_commas) {
40
- let is_empty = true;
41
- $.map(($) => {
42
- is_empty = false;
43
- });
44
- if (is_empty) {
45
- return if_empty;
46
- }
47
- else {
48
- let is_first = true;
49
- return sh.b.sub([
50
- prefix,
51
- sh.b.sub((0, to_list_sorted_by_code_point_1.$$)($).map(($) => {
52
- const out = sh.b.sub([
53
- is_first ?
54
- sh.b.nothing()
55
- : add_commas
56
- ? sh.b.snippet(", ")
57
- : sh.b.nothing(),
58
- $.value,
59
- ]);
60
- is_first = false;
61
- return out;
62
- })),
63
- suffix,
64
- ]);
65
- }
66
- }
67
- const Module_Set = ($) => {
68
- return $.map(($, key) => pa.cc($, ($) => {
69
- switch ($[0]) {
70
- case 'module': return pa.ss($, ($) => {
71
- const x_imports = $.imports;
72
- const x_module_parameters = $['type parameters'];
73
- const valid_file_name = ($) => {
74
- return (0, create_valid_file_name_1.$$)($, { 'replace spaces with underscores': true });
75
- };
76
- return ['file', sh.group([
77
- sh.g.simple_line("import * as _pt from 'exupery-core-types'"),
78
- sh.g.simple_line(""),
79
- sh.g.sub((0, to_list_sorted_by_code_point_1.$$)($.imports).map(($) => sh.g.sub([
80
- sh.g.nested_block([
81
- sh.b.snippet("import * as "),
82
- sh.b.snippet((0, create_identifier_1.$$)([" i ", $.key])),
83
- sh.b.snippet(" from "),
84
- (0, fountain_pen_block_1.String_Literal)(pa.cc($.value.type, ($) => {
85
- switch ($[0]) {
86
- case 'external': return pa.ss($, ($) => valid_file_name($));
87
- case 'ancestor': return pa.ss($, ($) => `${(0, repeat_1.$$)("../", { 'count': $['number of steps'] })}${valid_file_name($.dependency)}`);
88
- case 'sibling': return pa.ss($, ($) => `./${valid_file_name($)}`);
89
- default: return pa.au($[0]);
90
- }
91
- })
92
- + (0, join_list_of_texts_1.$$)($.value.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((0, to_list_sorted_by_code_point_1.$$)($.types).map(($) => sh.g.sub([
111
- sh.g.simple_line(""),
112
- (0, exports.Type_Declaration)(null, {
113
- 'name': (0, exports.Identifier)(pa.array_literal([" T ", $.key])),
114
- 'type parameters': $.value.parameters,
115
- 'module parameters': x_module_parameters,
116
- 'function type parameters': pa.not_set(),
117
- 'callback': () => {
118
- return (0, fountain_pen_block_1.Type)((0, exports.Type_to_Type)($.value.type, {
119
- 'module parameters': pa.set(x_module_parameters),
120
- 'temp imports': pa.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((0, to_list_sorted_by_code_point_1.$$)($.types).map(($) => sh.g.sub([
130
- sh.g.simple_line(""),
131
- (0, exports.Type_Declaration)(null, {
132
- 'name': $.key,
133
- 'type parameters': $.value.parameters,
134
- 'module parameters': x_module_parameters,
135
- 'function type parameters': pa.not_set(),
136
- 'callback': () => {
137
- return sh.b.sub([
138
- sh.b.snippet((0, create_identifier_1.$$)([" T ", $.key])),
139
- line_dictionary((0, flatten_2.$$)(pa.dictionary_literal({
140
- "M": x_module_parameters.map(($, key) => sh.b.snippet((0, create_identifier_1.$$)(["M ", key]))),
141
- "T": $.value.parameters.map(($, key) => sh.b.snippet((0, create_identifier_1.$$)(["T ", key]))),
142
- }), {
143
- 'separator': " "
144
- }), 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((0, to_list_sorted_by_code_point_1.$$)($.types).map(($) => sh.g.sub([
152
- (0, exports.Type_to_Aliases)($.value.type, {
153
- 'key': ` T ${$.key}`,
154
- 'type parameters': $.value.parameters,
155
- 'module parameters': x_module_parameters,
156
- 'function type parameters': pa.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((0, to_list_sorted_by_code_point_1.$$)($.types).map(($) => sh.g.sub([
163
- (0, exports.Type_to_Aliases)($.value.type, {
164
- 'key': $.key,
165
- 'type parameters': $.value.parameters,
166
- 'module parameters': x_module_parameters,
167
- 'function type parameters': pa.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(($): pt.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 pa.ss($, ($) => ['directory', (0, exports.Module_Set)($)]);
201
- default: return pa.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, create_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 (0, fountain_pen_block_1.Type)((0, exports.Type_to_Type)($, {
237
- 'module parameters': pa.set($p['module parameters']),
238
- 'temp imports': pa.set($p['temp imports']),
239
- }), {
240
- 'replace empty type literals by null': true
241
- });
242
- }
243
- })
244
- ]);
245
- };
246
- return pa.cc($, ($) => {
247
- switch ($[0]) {
248
- case 'boolean': return pa.ss($, ($) => sh.g.nothing());
249
- case 'component': return pa.ss($, ($) => Namespace($p.key, {
250
- 'callback': () => sh.g.sub([
251
- sh.g.sub((0, to_list_sorted_by_code_point_1.$$)($['type arguments']).map(($) => {
252
- return Type_to_Aliases_2($.value, {
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 pa.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 pa.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 pa.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': pa.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((0, to_list_sorted_by_code_point_1.$$)($.parameters).map(($) => {
293
- return Type_to_Aliases_2($.value, {
294
- 'module parameters': $p['module parameters'],
295
- 'type parameters': $p['type parameters'],
296
- 'function type parameters': pa.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': pa.set($['type parameters']),
307
- 'key': "RESULT",
308
- 'temp imports': $p['temp imports'],
309
- }),
310
- ])
311
- }));
312
- case 'group': return pa.ss($, ($) => Namespace($p.key, {
313
- 'callback': () => sh.g.sub([
314
- sh.g.sub((0, to_list_sorted_by_code_point_1.$$)($).map(($) => {
315
- return Type_to_Aliases_2($.value, {
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 pa.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 pa.ss($, ($) => sh.g.nothing());
335
- case 'number': return pa.ss($, ($) => sh.g.nothing());
336
- case 'optional': return pa.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 pa.ss($, ($) => sh.g.nothing());
346
- case 'tagged union': return pa.ss($, ($) => Namespace($p.key, {
347
- 'callback': () => sh.g.sub([
348
- sh.g.sub((0, to_list_sorted_by_code_point_1.$$)($).map(($) => {
349
- return Type_to_Aliases_2($.value, {
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 pa.ss($, ($) => sh.g.nothing());
360
- default: return pa.au($[0]);
361
- }
362
- });
363
- };
364
- exports.Type_to_Aliases = Type_to_Aliases;
365
- const Identifier = ($) => {
366
- return (0, join_list_of_texts_1.$$)($);
367
- };
368
- exports.Identifier = Identifier;
369
- const Type_to_Type = ($, $p) => {
370
- return pa.cc($, ($) => {
371
- switch ($[0]) {
372
- case 'boolean': return pa.ss($, ($) => sh2.t.boolean());
373
- case 'component': return pa.ss($, ($) => sh2.t.type_reference(
374
- //start
375
- pa.cc($.location, ($) => {
376
- switch ($[0]) {
377
- case 'import': return pa.ss($, ($) => (0, exports.Identifier)(pa.array_literal([" i ", $.import])));
378
- case 'sibling': return pa.ss($, ($) => (0, exports.Identifier)(pa.array_literal([" T ", $])));
379
- default: return pa.au($[0]);
380
- }
381
- }),
382
- //tail
383
- (0, flatten_1.$$)(pa.array_literal([
384
- pa.cc($.location, ($) => {
385
- switch ($[0]) {
386
- case 'import': return pa.ss($, ($) => pa.array_literal([
387
- (0, exports.Identifier)(pa.array_literal([" T ", $.type]))
388
- ]));
389
- case 'sibling': return pa.ss($, ($) => pa.array_literal([]));
390
- default: return pa.au($[0]);
391
- }
392
- }),
393
- (0, flatten_1.$$)($['sub selection'].map(($) => pa.cc($, ($) => {
394
- switch ($[0]) {
395
- case 'dictionary': return pa.ss($, ($) => pa.array_literal(["D"]));
396
- case 'group': return pa.ss($, ($) => pa.array_literal([$]));
397
- case 'list': return pa.ss($, ($) => pa.array_literal(["L"]));
398
- case 'optional': return pa.ss($, ($) => pa.array_literal(["O"]));
399
- case 'state group': return pa.ss($, ($) => pa.array_literal([
400
- "SG",
401
- $,
402
- ]));
403
- default: return pa.au($[0]);
404
- }
405
- })))
406
- ])),
407
- //type arguments
408
- (0, to_list_sorted_by_code_point_1.$$)((0, flatten_2.$$)(pa.dictionary_literal({
409
- "M": pa.cc($.location, ($) => {
410
- switch ($[0]) {
411
- case 'import': return pa.ss($, ($) => $p['temp imports'].transform(($) => $, () => pa.panic("DSFSDFSD")).__get_entry($.import).transform(($) => $, () => {
412
- let keys = "";
413
- $p['temp imports'].map(($) => {
414
- $.map(($, key) => {
415
- keys += `, '${key}'`;
416
- });
417
- });
418
- return pa.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 pa.ss($, ($) => $p['module parameters'].transform(($) => $, () => pa.panic("DSFSDFSD")).map(($, key) => sh2.t.type_reference(`M ${key}`, [], [])));
424
- default: return pa.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
- })).map(($) => $.value)));
434
- case 'computed': return pa.ss($, ($) => sh2.t.type_reference(" pt", ["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 pa.ss($, ($) => sh2.t.type_reference(" pt", ["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 pa.ss($, ($) => sh2.t.function_((0, to_list_sorted_by_code_point_1.$$)($['type parameters']).map(($) => `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 pa.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 pa.ss($, ($) => sh2.t.type_reference(" pt", ["Array"], [
470
- (0, exports.Type_to_Type)($, {
471
- 'module parameters': $p['module parameters'],
472
- 'temp imports': $p['temp imports'],
473
- })
474
- ]));
475
- case 'null': return pa.ss($, ($) => sh2.t.null_());
476
- case 'number': return pa.ss($, ($) => sh2.t.number());
477
- case 'optional': return pa.ss($, ($) => sh2.t.type_reference(" pt", ["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 pa.ss($, ($) => sh2.t.type_reference(pa.cc($.location, ($) => {
484
- switch ($[0]) {
485
- case 'module': return pa.ss($, ($) => "M");
486
- case 'type': return pa.ss($, ($) => "T");
487
- case 'function': return pa.ss($, ($) => "F");
488
- default: return pa.au($[0]);
489
- }
490
- })
491
- + " "
492
- + $.parameter, [], []));
493
- case 'tagged union': return pa.ss($, ($) => sh2.t.union((0, to_list_sorted_by_code_point_1.$$)($).map(($) => sh2.t.tuple('readonly', [
494
- sh2.t.literal_type($.key, 'apostrophe'),
495
- (0, exports.Type_to_Type)($.value, {
496
- 'module parameters': $p['module parameters'],
497
- 'temp imports': $p['temp imports'],
498
- })
499
- ]))));
500
- case 'string': return pa.ss($, ($) => sh2.t.string());
501
- default: return pa.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, create_identifier_1.$$)([$p.name])),
511
- line_dictionary((0, flatten_2.$$)(pa.dictionary_literal({
512
- "M": $p['module parameters'],
513
- "T": $p['type parameters'],
514
- "F": $p['function type parameters'].transform(($) => $, () => pa.dictionary_literal({})),
515
- }), {
516
- //'escape': "$",
517
- 'separator': " "
518
- }).map(($, key) => sh.b.snippet((0, create_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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXNjcmlwdF9saWdodC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi90cmFuc2Zvcm1hdGlvbnMvaW50ZXJmYWNlL3R5cGVzY3JpcHRfbGlnaHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFzQkEsMENBa0NDO0FBeERELHFEQUFzQztBQVF0QywwRUFBMkQ7QUFFM0QsK0VBQTZFO0FBRTdFLHlFQUEwRDtBQUUxRCx3R0FBNkc7QUFDN0csMkpBQXNKO0FBQ3RKLHlHQUFtSDtBQUNuSCwrR0FBK0g7QUFDL0gseUdBQThHO0FBQzlHLCtIQUFvSTtBQUNwSSx5SUFBOEk7QUFFOUksU0FBZ0IsZUFBZSxDQUMzQixDQUFrQyxFQUNsQyxRQUEwQixFQUMxQixNQUF3QixFQUN4QixNQUF3QixFQUN4QixVQUFtQjtJQUVuQixJQUFJLFFBQVEsR0FBRyxJQUFJLENBQUE7SUFDbkIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1FBQ1IsUUFBUSxHQUFHLEtBQUssQ0FBQTtJQUNwQixDQUFDLENBQUMsQ0FBQTtJQUNGLElBQUksUUFBUSxFQUFFLENBQUM7UUFDWCxPQUFPLFFBQVEsQ0FBQTtJQUNuQixDQUFDO1NBQU0sQ0FBQztRQUNKLElBQUksUUFBUSxHQUFHLElBQUksQ0FBQTtRQUNuQixPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDO1lBQ1osTUFBTTtZQUNOLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUEsaUNBQXFCLEVBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFvQixFQUFFO2dCQUMxRCxNQUFNLEdBQUcsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztvQkFDakIsUUFBUSxDQUFDLENBQUM7d0JBQ04sRUFBRSxDQUFDLENBQUMsQ0FBQyxP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
@@ -1,10 +0,0 @@
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;