pareto 0.78.2 → 0.78.4

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 (159) hide show
  1. package/dist/bin/compile_temp_schemas.js +17 -14
  2. package/dist/bin/seal.js +7 -9
  3. package/dist/bin/serialize_schemas.js +7 -9
  4. package/dist/globals.d.ts +2 -0
  5. package/dist/implementation/commands/compile_temp_schemas.d.ts +19 -0
  6. package/dist/implementation/commands/compile_temp_schemas.js +131 -0
  7. package/dist/implementation/commands/seal.d.ts +8 -0
  8. package/dist/{bin/validate.js → implementation/commands/seal.js} +13 -7
  9. package/dist/implementation/commands/serialize_schemas.d.ts +8 -0
  10. package/dist/implementation/commands/serialize_schemas.js +61 -0
  11. package/dist/implementation/generated/pareto/generic/parse/ast.js +21 -21
  12. package/dist/implementation/generated/pareto/generic/parse/astn_parse_generic.d.ts +1 -1
  13. package/dist/implementation/generated/pareto/generic/parse/astn_parse_generic.js +1 -1
  14. package/dist/implementation/generated/pareto/generic/parse/parse.js +4 -3
  15. package/dist/implementation/generated/pareto/generic/parse/string_iterator.d.ts +1 -1
  16. package/dist/implementation/generated/pareto/generic/parse/string_iterator.js +4 -4
  17. package/dist/implementation/generated/pareto/generic/parse/token.js +5 -5
  18. package/dist/implementation/generated/pareto/generic/resolve.d.ts +4 -4
  19. package/dist/implementation/generated/pareto/generic/resolve.js +2 -2
  20. package/dist/implementation/generated/pareto/schemas/module/resolve.js +33 -33
  21. package/dist/implementation/generated/pareto/schemas/schema/resolve.js +2 -2
  22. package/dist/implementation/{algorithms/operations → operations}/impure/tbd/path.d.ts +1 -1
  23. package/dist/implementation/{algorithms/operations → operations}/impure/tbd/path.js +1 -1
  24. package/dist/implementation/{algorithms/queries/unguaranteed → queries}/load_pareto_document.d.ts +10 -7
  25. package/dist/implementation/queries/load_pareto_document.js +65 -0
  26. package/dist/implementation/{algorithms/queries/unguaranteed → queries}/load_pareto_file.d.ts +3 -5
  27. package/dist/implementation/queries/load_pareto_file.js +40 -0
  28. package/dist/{exceptional/deserializers → implementation/refiners}/load_schema.d.ts +1 -1
  29. package/dist/implementation/refiners/load_schema.js +83 -0
  30. package/dist/implementation/{algorithms/transformations → transformations}/module/exupery_implementation.d.ts +1 -1
  31. package/dist/implementation/{algorithms/transformations → transformations}/module/exupery_implementation.js +2 -2
  32. package/dist/implementation/{algorithms/transformations → transformations}/module/exupery_interface.d.ts +1 -1
  33. package/dist/implementation/{algorithms/transformations → transformations}/module/exupery_interface.js +1 -1
  34. package/dist/implementation/{algorithms/transformations → transformations}/module/temp_typescript_implementation.d.ts +1 -1
  35. package/dist/implementation/{algorithms/transformations → transformations}/module/temp_typescript_implementation.js +1 -1
  36. package/dist/implementation/{algorithms/transformations → transformations}/module/temp_typescript_interface.d.ts +1 -1
  37. package/dist/implementation/{algorithms/transformations → transformations}/module/temp_typescript_interface.js +1 -1
  38. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_implementation/deserialize.d.ts +2 -2
  39. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_implementation/deserialize.js +7 -7
  40. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_implementation/main.d.ts +3 -3
  41. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_implementation/main.js +1 -1
  42. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_implementation/marshall.d.ts +3 -3
  43. package/dist/implementation/transformations/schema/exupery_implementation/marshall.js +142 -0
  44. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_implementation/migrate_boilerplate.d.ts +2 -2
  45. package/dist/implementation/transformations/schema/exupery_implementation/migrate_boilerplate.js +105 -0
  46. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_implementation/resolve.d.ts +5 -5
  47. package/dist/implementation/transformations/schema/exupery_implementation/resolve.js +300 -0
  48. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_implementation/serialize.d.ts +2 -2
  49. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_implementation/serialize.js +7 -7
  50. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_implementation/unmarshall.d.ts +3 -3
  51. package/dist/implementation/transformations/schema/exupery_implementation/unmarshall.js +158 -0
  52. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/deserialize.d.ts +1 -1
  53. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/deserialize.js +1 -1
  54. package/dist/implementation/transformations/schema/exupery_interface/dummy_resolve.js +13 -0
  55. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/main.d.ts +1 -1
  56. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/main.js +1 -1
  57. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/marshall.d.ts +1 -1
  58. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/marshall.js +1 -1
  59. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/migrate_boilerplate.d.ts +1 -1
  60. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/migrate_boilerplate.js +1 -1
  61. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/resolve.d.ts +2 -2
  62. package/dist/implementation/transformations/schema/exupery_interface/resolve.js +110 -0
  63. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/serialize.d.ts +1 -1
  64. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/serialize.js +1 -1
  65. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/types.d.ts +1 -1
  66. package/dist/implementation/transformations/schema/exupery_interface/types.js +192 -0
  67. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/unmarshall.d.ts +1 -1
  68. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/unmarshall.js +1 -1
  69. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/value_deserializers.d.ts +1 -1
  70. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/value_deserializers.js +1 -1
  71. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/value_serializers.d.ts +1 -1
  72. package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/value_serializers.js +1 -1
  73. package/dist/implementation/transformations/temp/astn_schema.d.ts +10 -0
  74. package/dist/implementation/transformations/temp/astn_schema.js +140 -0
  75. package/dist/implementation/{algorithms/transformations → transformations}/temp/unmarshall_astn_ast.d.ts +2 -2
  76. package/dist/implementation/{algorithms/transformations → transformations}/temp/unmarshall_astn_ast.js +2 -2
  77. package/dist/implementation/{algorithms/transformations → transformations}/unmarshall_errors/fountain_pen.d.ts +1 -1
  78. package/dist/implementation/{algorithms/transformations → transformations}/unmarshall_errors/fountain_pen.js +1 -1
  79. package/dist/implementation/{algorithms/transformations → transformations}/unmarshall_result/astn_authoring_target.d.ts +1 -1
  80. package/dist/implementation/{algorithms/transformations → transformations}/unmarshall_result/astn_authoring_target.js +1 -1
  81. package/dist/implementation/{algorithms/transformations → transformations}/unmarshall_result/unmarshall_errors.d.ts +2 -2
  82. package/dist/implementation/transformations/unmarshall_result/unmarshall_errors.js +344 -0
  83. package/dist/interface/algorithms/procedures/{unguaranteed/compile.js → compile.js} +1 -1
  84. package/dist/interface/algorithms/procedures/{unguaranteed/seal.js → seal.js} +1 -1
  85. package/dist/interface/algorithms/procedures/{unguaranteed/serialize_schemas.js → serialize_schemas.js} +1 -1
  86. package/dist/interface/algorithms/procedures/{unguaranteed/validate.js → validate.js} +1 -1
  87. package/dist/interface/algorithms/queries/load_pareto_document.js +5 -0
  88. package/dist/interface/algorithms/queries/{unguaranteed/load_pareto_file.js → load_pareto_file.js} +2 -2
  89. package/dist/interface/generated/pareto/core/astn_source.d.ts +3 -3
  90. package/dist/interface/generated/pareto/core/astn_target.d.ts +7 -7
  91. package/dist/interface/generated/pareto/core/parse_result.d.ts +1 -1
  92. package/dist/interface/generated/pareto/core/resolve.d.ts +2 -2
  93. package/dist/interface/generated/pareto/core/resolved.d.ts +12 -12
  94. package/dist/interface/generated/pareto/core/token.d.ts +3 -3
  95. package/dist/interface/generated/pareto/core/unconstrained.d.ts +3 -3
  96. package/dist/interface/generated/pareto/core/unresolved.d.ts +10 -10
  97. package/dist/interface/generated/pareto/schemas/astn_schema/data_types/resolve.d.ts +71 -71
  98. package/dist/interface/generated/pareto/schemas/parse_tree/data_types/source.d.ts +14 -14
  99. package/dist/interface/generated/pareto/schemas/parse_tree/data_types/target.d.ts +14 -14
  100. package/dist/interface/generated/pareto/schemas/schema/data_types/resolve.d.ts +428 -428
  101. package/dist/interface/generated/pareto/schemas/schema/data_types/source.d.ts +67 -67
  102. package/dist/interface/generated/pareto/schemas/schema/data_types/target.d.ts +67 -67
  103. package/dist/modules/pareto-fountain-pen-directory/implementation/commands/console_error.d.ts +12 -0
  104. package/dist/modules/pareto-fountain-pen-directory/implementation/commands/console_error.js +36 -0
  105. package/dist/modules/pareto-fountain-pen-directory/implementation/commands/console_log.d.ts +12 -0
  106. package/dist/modules/pareto-fountain-pen-directory/implementation/commands/console_log.js +36 -0
  107. package/dist/modules/pareto-fountain-pen-directory/implementation/commands/write_to_directory.d.ts +12 -0
  108. package/dist/modules/pareto-fountain-pen-directory/implementation/commands/write_to_directory.js +56 -0
  109. package/dist/modules/pareto-fountain-pen-directory/implementation/commands/write_to_file.d.ts +10 -0
  110. package/dist/modules/pareto-fountain-pen-directory/implementation/commands/write_to_file.js +45 -0
  111. package/dist/modules/pareto-fountain-pen-directory/implementation/commands/write_to_node.d.ts +12 -0
  112. package/dist/modules/pareto-fountain-pen-directory/implementation/commands/write_to_node.js +58 -0
  113. package/dist/modules/pareto-fountain-pen-directory/interface/temp_types.d.ts +30 -0
  114. package/dist/modules/pareto-fountain-pen-directory/interface/temp_types.js +3 -0
  115. package/dist/temp/resolvers/module.js +2 -2
  116. package/dist/temp/resolvers/schema.js +2 -2
  117. package/dist/temp/temp_unmashall_result_types.d.ts +4 -4
  118. package/dist/temp/temporary_schemas/astn/schemas/authoring_parse_tree/$.types.astn.js +10 -10
  119. package/dist/temp/temporary_schemas/exupery-resources/schemas/read_directory/$.types.astn.js +5 -3
  120. package/dist/temp/temporary_schemas/pareto-boekhouding/schemas/boekhouding_oude_model/$.types.astn.js +10 -5
  121. package/dist/temp/temporary_schemas/pareto-static-html/schema_tree.astn.js +3 -3
  122. package/dist/temp/temporary_schemas/pareto-static-html/schemas/{html-print → static-html}/$.globals.astn.js +1 -1
  123. package/dist/temp/temporary_schemas/pareto-static-html/schemas/{html-print → static-html}/$.module.astn.js +1 -1
  124. package/dist/temp/temporary_schemas/pareto-static-html/schemas/static-html/$.types.astn.js +84 -0
  125. package/package.json +9 -9
  126. package/dist/bin/validate.d.ts +0 -2
  127. package/dist/exceptional/deserializers/load_schema.js +0 -83
  128. package/dist/implementation/algorithms/procedures/unguaranteed/compile_temp_schemas.d.ts +0 -19
  129. package/dist/implementation/algorithms/procedures/unguaranteed/compile_temp_schemas.js +0 -148
  130. package/dist/implementation/algorithms/procedures/unguaranteed/seal.d.ts +0 -9
  131. package/dist/implementation/algorithms/procedures/unguaranteed/seal.js +0 -41
  132. package/dist/implementation/algorithms/procedures/unguaranteed/serialize_schemas.d.ts +0 -9
  133. package/dist/implementation/algorithms/procedures/unguaranteed/serialize_schemas.js +0 -60
  134. package/dist/implementation/algorithms/procedures/unguaranteed/validate.d.ts +0 -4
  135. package/dist/implementation/algorithms/procedures/unguaranteed/validate.js +0 -45
  136. package/dist/implementation/algorithms/queries/unguaranteed/load_pareto_document.js +0 -74
  137. package/dist/implementation/algorithms/queries/unguaranteed/load_pareto_file.js +0 -17
  138. package/dist/implementation/algorithms/transformations/schema/exupery_implementation/marshall.js +0 -142
  139. package/dist/implementation/algorithms/transformations/schema/exupery_implementation/migrate_boilerplate.js +0 -105
  140. package/dist/implementation/algorithms/transformations/schema/exupery_implementation/resolve.js +0 -300
  141. package/dist/implementation/algorithms/transformations/schema/exupery_implementation/unmarshall.js +0 -158
  142. package/dist/implementation/algorithms/transformations/schema/exupery_interface/dummy_resolve.js +0 -13
  143. package/dist/implementation/algorithms/transformations/schema/exupery_interface/resolve.js +0 -110
  144. package/dist/implementation/algorithms/transformations/schema/exupery_interface/types.js +0 -192
  145. package/dist/implementation/algorithms/transformations/temp/astn_schema.d.ts +0 -10
  146. package/dist/implementation/algorithms/transformations/temp/astn_schema.js +0 -140
  147. package/dist/implementation/algorithms/transformations/unmarshall_result/unmarshall_errors.js +0 -344
  148. package/dist/interface/algorithms/queries/unguaranteed/load_pareto_document.js +0 -5
  149. package/dist/temp/temporary_schemas/pareto-static-html/schemas/html-print/$.types.astn.js +0 -81
  150. /package/dist/implementation/{algorithms/transformations → transformations}/schema/exupery_interface/dummy_resolve.d.ts +0 -0
  151. /package/dist/interface/algorithms/procedures/{unguaranteed/compile.d.ts → compile.d.ts} +0 -0
  152. /package/dist/interface/algorithms/procedures/{unguaranteed/seal.d.ts → seal.d.ts} +0 -0
  153. /package/dist/interface/algorithms/procedures/{unguaranteed/serialize_schemas.d.ts → serialize_schemas.d.ts} +0 -0
  154. /package/dist/interface/algorithms/procedures/{unguaranteed/validate.d.ts → validate.d.ts} +0 -0
  155. /package/dist/interface/algorithms/queries/{unguaranteed/load_pareto_document.d.ts → load_pareto_document.d.ts} +0 -0
  156. /package/dist/interface/algorithms/queries/{unguaranteed/load_pareto_file.d.ts → load_pareto_file.d.ts} +0 -0
  157. /package/dist/temp/temporary_schemas/pareto-static-html/schemas/{html-print → static-html}/$.globals.astn.d.ts +0 -0
  158. /package/dist/temp/temporary_schemas/pareto-static-html/schemas/{html-print → static-html}/$.module.astn.d.ts +0 -0
  159. /package/dist/temp/temporary_schemas/pareto-static-html/schemas/{html-print → static-html}/$.types.astn.d.ts +0 -0
@@ -1,105 +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_Node = exports.Types = void 0;
27
- const _ea = __importStar(require("exupery-core-alg"));
28
- const implementation_1 = require("exupery/dist/shorthands/implementation");
29
- const interface_1 = require("exupery/dist/shorthands/interface");
30
- const flatten_1 = require("pareto-standard-operations/dist/implementation/algorithms/operations/pure/dictionary/flatten");
31
- const append_element_1 = require("pareto-standard-operations/dist/implementation/algorithms/operations/pure/list/append_element");
32
- const Types = ($, $p) => {
33
- return implementation_1.m.module((0, flatten_1.$$)(_ea.dictionary_literal({
34
- "": _ea.dictionary_literal({
35
- "signatures": interface_1.import_.ancestor(5, "interface", ["generated", "pareto", "schemas", $p.key, "migration boilerplate"], {}),
36
- "out": interface_1.import_.ancestor(5, "interface", ["generated", "pareto", "schemas", $p.key, $p.constrained ? "unresolved" : "unconstrained"], $p.constrained ? { "Source": interface_1.t.null_() } : {}),
37
- }),
38
- "r ": $p.imports.map(($, key) => interface_1.import_.ancestor(1, $['schema set child'].key, ["migration boilerplate"], {}))
39
- }), {
40
- 'separator': "",
41
- }), {}, $.dictionary.map(($, key) => (0, implementation_1.variable)(interface_1.t.component_imported("signatures", key, {}, []), implementation_1.i.function_(false, (0, exports.Type_Node)($.node, {
42
- 'type': key,
43
- 'subselection': _ea.array_literal([])
44
- })))));
45
- };
46
- exports.Types = Types;
47
- const Type_Node = ($, $p) => {
48
- return _ea.cc($, ($) => {
49
- switch ($[0]) {
50
- case 'number': return _ea.ss($, ($) => implementation_1.i.select_from_context([]));
51
- case 'boolean': return _ea.ss($, ($) => implementation_1.i.select_from_context([]));
52
- case 'nothing': return _ea.ss($, ($) => implementation_1.i.null_());
53
- case 'reference': return _ea.ss($, ($) => _ea.cc($.type, ($) => {
54
- switch ($[0]) {
55
- case 'derived': return _ea.ss($, ($) => implementation_1.i.null_());
56
- case 'selected': return _ea.ss($, ($) => implementation_1.i.select_from_context(["key"]));
57
- default: return _ea.au($[0]);
58
- }
59
- }));
60
- case 'text': return _ea.ss($, ($) => implementation_1.i.select_from_context([]));
61
- case 'component': return _ea.ss($, ($) => implementation_1.i.call(_ea.cc($, ($) => {
62
- switch ($[0]) {
63
- case 'external': return _ea.ss($, ($) => implementation_1.s.from_variable_import(` i r ${$.import.key}`, $.type.key, []));
64
- case 'internal': return _ea.ss($, ($) => implementation_1.s.from_variable($.key, []));
65
- case 'internal cyclic': return _ea.ss($, ($) => implementation_1.s.from_variable($.key, []));
66
- default: return _ea.au($[0]);
67
- }
68
- }), implementation_1.i.select_from_context([]), _ea.dictionary_literal({})));
69
- case 'dictionary': return _ea.ss($, ($) => implementation_1.i.dictionary_map($.ordered ? implementation_1.s.from_context(["dictionary"]) : implementation_1.s.from_context([]), (0, exports.Type_Node)($.node, {
70
- 'type': $p.type,
71
- 'subselection': (0, append_element_1.$$)($p.subselection, {
72
- 'element': interface_1.sub.dictionary(),
73
- }),
74
- })));
75
- case 'group': return _ea.ss($, ($) => implementation_1.i.group($.dictionary.map(($, key) => implementation_1.i.change_context(implementation_1.s.from_context([key]), (0, exports.Type_Node)($.node, {
76
- 'type': $p.type,
77
- 'subselection': (0, append_element_1.$$)($p.subselection, {
78
- 'element': interface_1.sub.group(key),
79
- }),
80
- })))));
81
- case 'list': return _ea.ss($, ($) => implementation_1.i.array_map(implementation_1.s.from_context([]), (0, exports.Type_Node)($.node, {
82
- 'type': $p.type,
83
- 'subselection': (0, append_element_1.$$)($p.subselection, {
84
- 'element': interface_1.sub.list(),
85
- }),
86
- })));
87
- case 'optional': return _ea.ss($, ($) => implementation_1.i.optional_map(implementation_1.s.from_context([]), (0, exports.Type_Node)($, {
88
- 'type': $p.type,
89
- 'subselection': (0, append_element_1.$$)($p.subselection, {
90
- 'element': interface_1.sub.optional(),
91
- }),
92
- })));
93
- case 'state group': return _ea.ss($, ($) => implementation_1.i.switch_(implementation_1.s.from_context([]), $.map(($, key) => implementation_1.i.case_(key, (0, exports.Type_Node)($.node, {
94
- 'type': $p.type,
95
- 'subselection': (0, append_element_1.$$)($p.subselection, {
96
- 'element': interface_1.sub.state_group(key),
97
- }),
98
- }))), interface_1.t.component_imported("out", $p.type, {}, $p.subselection)));
99
- // case 'type parameter': return pa.ss($, ($) => _edev.implement_me())
100
- default: return _ea.au($[0]);
101
- }
102
- });
103
- };
104
- exports.Type_Node = Type_Node;
105
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlncmF0ZV9ib2lsZXJwbGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9hbGdvcml0aG1zL3RyYW5zZm9ybWF0aW9ucy9zY2hlbWEvZXh1cGVyeV9pbXBsZW1lbnRhdGlvbi9taWdyYXRlX2JvaWxlcnBsYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUEsc0RBQXVDO0FBT3ZDLDJFQUEwRTtBQUMxRSxpRUFBbUU7QUFFbkUsMEhBQTBJO0FBQzFJLGtJQUF1STtBQUtoSSxNQUFNLEtBQUssR0FBRyxDQUNqQixDQUFZLEVBQ1osRUFJQyxFQUN3QyxFQUFFO0lBQzNDLE9BQU8sa0JBQUMsQ0FBQyxNQUFNLENBQ1gsSUFBQSxZQUFxQixFQUNqQixHQUFHLENBQUMsa0JBQWtCLENBQUM7UUFDbkIsRUFBRSxFQUFFLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQztZQUN2QixZQUFZLEVBQUUsbUJBQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLFdBQVcsRUFBRSxDQUFDLFdBQVcsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEVBQUUsdUJBQXVCLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDdkgsS0FBSyxFQUFFLG1CQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQUUsQ0FBQyxXQUFXLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLEVBQUUsRUFBRSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsYUFBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztTQUN0TCxDQUFDO1FBQ0YsSUFBSSxF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
@@ -1,300 +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.Node_Resolver = exports.Option_Constraints = exports.Lookup_Selection = exports.Guaranteed_Value_Selection = exports.Optional_Value_Initialization = exports.Possible_Value_Selection = exports.Resolvers = void 0;
27
- const _ea = __importStar(require("exupery-core-alg"));
28
- const implementation_1 = require("exupery/dist/shorthands/implementation");
29
- const interface_1 = require("exupery/dist/shorthands/interface");
30
- const flatten_1 = require("pareto-standard-operations/dist/implementation/algorithms/operations/pure/list/flatten");
31
- const flatten_2 = require("pareto-standard-operations/dist/implementation/algorithms/operations/pure/dictionary/flatten");
32
- const pad_identifiers_1 = require("pareto-standard-operations/dist/implementation/algorithms/operations/pure/dictionary/pad_identifiers");
33
- const append_element_1 = require("pareto-standard-operations/dist/implementation/algorithms/operations/pure/list/append_element");
34
- const Resolvers = ($, $p) => {
35
- return implementation_1.m.module((0, flatten_2.$$)(_ea.dictionary_literal({
36
- "": _ea.dictionary_literal({
37
- "generic": interface_1.import_.ancestor(2, "generic", ["resolve"], {}),
38
- "out": interface_1.import_.ancestor(5, "interface", (0, flatten_1.$$)(_ea.array_literal([
39
- _ea.array_literal(["generated", "pareto", "schemas"]),
40
- $p.path,
41
- _ea.array_literal(["data types", "source"]),
42
- ])), {}),
43
- "signatures": interface_1.import_.ancestor(5, "interface", (0, flatten_1.$$)(_ea.array_literal([
44
- _ea.array_literal(["generated", "pareto", "schemas"]),
45
- $p.path,
46
- _ea.array_literal(["data types", "resolve"]),
47
- ])), {}),
48
- }),
49
- "r ": $p.imports.map(($, key) => interface_1.import_.ancestor(1, $['schema set child'].key, ["resolve"], {}))
50
- }), {
51
- 'separator': "",
52
- }), {}, (0, pad_identifiers_1.$$)($.dictionary.map(($, key) => (0, implementation_1.variable)(interface_1.t.component_imported("signatures", key, {
53
- // "Source": t.component_imported("generic", "Location Info", {}, []),
54
- }, []), implementation_1.i.function_(true, implementation_1.i.block([], {
55
- "l2s": (0, implementation_1.variable)(null, implementation_1.i.select_from_parameter("location 2 string", [])),
56
- "params": (0, implementation_1.variable)(null, implementation_1.i.select_from_parameter("parameters", []))
57
- }, (0, exports.Node_Resolver)($['type resolver'], {
58
- 'temp type': key,
59
- 'temp subselection': _ea.array_literal([])
60
- }))))), {
61
- 'prefix': "r ",
62
- 'suffix': "",
63
- }));
64
- };
65
- exports.Resolvers = Resolvers;
66
- const Possible_Value_Selection = ($, $p) => {
67
- return _ea.cc($, ($) => {
68
- switch ($[0]) {
69
- case 'parameter': return _ea.ss($, ($) => implementation_1.s.from_variable("params", (0, flatten_1.$$)(_ea.array_literal([
70
- _ea.array_literal(["values", $.key]),
71
- $p.tail(),
72
- ]))));
73
- case 'result': return _ea.ss($, ($) => _ea.cc($, ($) => {
74
- switch ($[0]) {
75
- case 'state group': return _ea.ss($, ($) => implementation_1.s.implement_me()); //quite some work
76
- case 'optional value': return _ea.ss($, ($) => implementation_1.s.implement_me()); //quite some work
77
- default: return _ea.au($[0]);
78
- }
79
- }));
80
- default: return _ea.au($[0]);
81
- }
82
- });
83
- };
84
- exports.Possible_Value_Selection = Possible_Value_Selection;
85
- const Optional_Value_Initialization = ($, $p) => {
86
- return _ea.cc($, ($) => {
87
- switch ($[0]) {
88
- case 'not set': return _ea.ss($, ($) => implementation_1.i.not_set());
89
- case 'selection': return _ea.ss($, ($) => implementation_1.i.select((0, exports.Possible_Value_Selection)($, { 'tail': () => _ea.array_literal([]) })));
90
- case 'set': return _ea.ss($, ($) => implementation_1.i.set(implementation_1.i.select((0, exports.Guaranteed_Value_Selection)($, { 'tail': () => _ea.array_literal([]) }))));
91
- default: return _ea.au($[0]);
92
- }
93
- });
94
- };
95
- exports.Optional_Value_Initialization = Optional_Value_Initialization;
96
- const Guaranteed_Value_Selection = ($, $p) => {
97
- const tail = () => {
98
- return (0, flatten_1.$$)(_ea.array_literal([
99
- (0, flatten_1.$$)($.tail.path.map(($) => {
100
- return _ea.cc($, ($) => {
101
- switch ($[0]) {
102
- case 'component': return _ea.ss($, ($) => _ea.array_literal([]));
103
- case 'group': return _ea.ss($, ($) => _ea.array_literal([$.key]));
104
- case 'reference': return _ea.ss($, ($) => _ea.cc($.definition.type, ($) => {
105
- switch ($[0]) {
106
- case 'derived': return _ea.ss($, ($) => _ea.array_literal([]));
107
- case 'selected': return _ea.ss($, ($) => _ea.array_literal(["entry"]));
108
- default: return _ea.au($[0]);
109
- }
110
- }));
111
- default: return _ea.au($[0]);
112
- }
113
- });
114
- })),
115
- $p.tail()
116
- ]));
117
- };
118
- return _ea.cc($.start, ($) => {
119
- switch ($[0]) {
120
- case 'constraint': return _ea.ss($, ($) => _ea.cc($, ($) => {
121
- switch ($[0]) {
122
- case 'component': return _ea.ss($, ($) => implementation_1.s.implement_me()); //simple
123
- case 'reference': return _ea.ss($, ($) => implementation_1.s.implement_me()); //simple
124
- default: return _ea.au($[0]);
125
- }
126
- }));
127
- case 'parameter': return _ea.ss($, ($) => implementation_1.s.from_variable("params", (0, flatten_1.$$)(_ea.array_literal([
128
- _ea.array_literal(["values", $.key]),
129
- tail(),
130
- ]))));
131
- case 'result': return _ea.ss($, ($) => _ea.cc($, ($) => {
132
- switch ($[0]) {
133
- case 'state group': return _ea.ss($, ($) => implementation_1.s.implement_me()); // quite some work
134
- case 'optional value': return _ea.ss($, ($) => implementation_1.s.implement_me()); // quite some work
135
- case 'list': return _ea.ss($, ($) => implementation_1.s.implement_me()); // quite some work
136
- default: return _ea.au($[0]);
137
- }
138
- }));
139
- case 'list cursor': return _ea.ss($, ($) => implementation_1.s.from_variable("list cursor", tail()));
140
- case 'linked entry': return _ea.ss($, ($) => implementation_1.s.from_variable("linked entry", tail()));
141
- case 'option constraint': return _ea.ss($, ($) => implementation_1.s.from_variable(`c ${$.key}`, //FIXME: do the upsteps
142
- tail()));
143
- case 'sibling': return _ea.ss($, ($) => implementation_1.s.from_variable(`p ${$.key}`, tail()));
144
- case 'parent sibling': return _ea.ss($, ($) => implementation_1.s.from_variable(`p ${$.key}`, //FIXME: do the upstep
145
- tail()));
146
- default: return _ea.au($[0]);
147
- }
148
- });
149
- };
150
- exports.Guaranteed_Value_Selection = Guaranteed_Value_Selection;
151
- const Lookup_Selection = ($, $p) => {
152
- return _ea.cc($.type, ($) => {
153
- switch ($[0]) {
154
- case 'dictionary': return _ea.ss($, ($) => implementation_1.s.call(implementation_1.s.from_variable_import(" i generic", "dictionary to lookup", []), (0, exports.Guaranteed_Value_Selection)($.selection, {
155
- 'tail': () => $['selected dictionary'].ordered
156
- ? _ea.array_literal(["dictionary"])
157
- : _ea.array_literal([]),
158
- }), {}, []));
159
- case 'not circular dependent siblings': return _ea.ss($, ($) => implementation_1.s.from_parameter("not circular dependent siblings", []));
160
- case 'parameter': return _ea.ss($, ($) => implementation_1.s.from_variable("params", ["lookups", $.key]));
161
- case 'possibly circular dependent siblings': return _ea.ss($, ($) => implementation_1.s.from_parameter("possibly circular dependent siblings", []));
162
- default: return _ea.au($[0]);
163
- }
164
- });
165
- };
166
- exports.Lookup_Selection = Lookup_Selection;
167
- const Option_Constraints = ($, $p) => {
168
- return implementation_1.i.block([], (0, pad_identifiers_1.$$)($, { 'prefix': "c ", 'suffix': "" }).map(($) => (0, implementation_1.variable)(null, implementation_1.i.select(_ea.cc($, ($) => {
169
- switch ($[0]) {
170
- case 'state': return _ea.ss($, ($) => implementation_1.s.implement_me()); // medium work
171
- case 'assert is set': return _ea.ss($, ($) => implementation_1.s.optional_transform((0, exports.Possible_Value_Selection)($, { 'tail': () => _ea.array_literal([]) }), implementation_1.s.from_context([]), implementation_1.s.abort(), []));
172
- default: return _ea.au($[0]);
173
- }
174
- })))), $p.sub());
175
- };
176
- exports.Option_Constraints = Option_Constraints;
177
- const Node_Resolver = ($, $p) => {
178
- return _ea.cc($, ($) => {
179
- switch ($[0]) {
180
- case 'number': return _ea.ss($, ($) => implementation_1.i.select_from_context([]));
181
- case 'boolean': return _ea.ss($, ($) => implementation_1.i.select_from_context([]));
182
- case 'nothing': return _ea.ss($, ($) => implementation_1.i.null_());
183
- case 'reference': return _ea.ss($, ($) => {
184
- return implementation_1.i.select(_ea.cc($.type, ($) => {
185
- switch ($[0]) {
186
- case 'derived': return _ea.ss($, ($) => (0, exports.Guaranteed_Value_Selection)($.value, { 'tail': () => _ea.array_literal([]) }));
187
- case 'selected': return _ea.ss($, ($) => {
188
- const context = $;
189
- return _ea.cc($.definition.dependency, ($) => {
190
- switch ($[0]) {
191
- case 'acyclic': return _ea.ss($, ($) => implementation_1.s.call(implementation_1.s.from_variable_import(" i generic", "get entry", []), (0, exports.Lookup_Selection)(context.lookup, {}), {
192
- "reference": implementation_1.i.select_from_context([]),
193
- "location 2 string": implementation_1.i.select_from_variable("l2s", []),
194
- }, []));
195
- case 'cyclic': return _ea.ss($, ($) => implementation_1.s.call(implementation_1.s.from_variable_import(" i generic", "get possibly circular dependent sibling entry", []), (0, exports.Lookup_Selection)(context.lookup, {}), {
196
- "reference": implementation_1.i.select_from_context([]),
197
- "location 2 string": implementation_1.i.select_from_variable("l2s", []),
198
- }, []));
199
- case 'stack': return _ea.ss($, ($) => implementation_1.s.call(implementation_1.s.from_variable_import(" i generic", "get entry from stack", []), (0, exports.Lookup_Selection)(context.lookup, {}), {
200
- "reference": implementation_1.i.select_from_context([]),
201
- "location 2 string": implementation_1.i.select_from_variable("l2s", []),
202
- }, []));
203
- default: return _ea.au($[0]);
204
- }
205
- });
206
- });
207
- default: return _ea.au($[0]);
208
- }
209
- }));
210
- });
211
- case 'text': return _ea.ss($, ($) => implementation_1.i.select_from_context([]));
212
- case 'component': return _ea.ss($, ($) => implementation_1.i.call(_ea.cc($.location, ($) => {
213
- switch ($[0]) {
214
- case 'external': return _ea.ss($, ($) => implementation_1.s.from_variable_import(` i r ${$.import.key}`, `r ${$.type.key}`, []));
215
- case 'internal': return _ea.ss($, ($) => implementation_1.s.from_variable(`r ${$.key}`, []));
216
- default: return _ea.au($[0]);
217
- }
218
- }), implementation_1.i.select_from_context([]), {
219
- "location 2 string": implementation_1.i.select_from_variable("l2s", []),
220
- "parameters": $.arguments.transform(($) => implementation_1.i.group({
221
- "values": $.values.transform(($) => implementation_1.i.group($.map(($) => _ea.cc($, ($) => {
222
- switch ($[0]) {
223
- case 'optional': return _ea.ss($, ($) => (0, exports.Optional_Value_Initialization)($, null));
224
- case 'parameter': return _ea.ss($, ($) => implementation_1.i.select_from_variable("params", ["values", $.key]));
225
- case 'required': return _ea.ss($, ($) => implementation_1.i.select((0, exports.Guaranteed_Value_Selection)($, { 'tail': () => _ea.array_literal([]) })));
226
- default: return _ea.au($[0]);
227
- }
228
- }))), () => implementation_1.i.select_from_variable("params", ["values"])),
229
- "lookups": $.lookups.transform(($) => implementation_1.i.group($.map(($) => _ea.cc($, ($) => {
230
- switch ($[0]) {
231
- case 'empty stack': return _ea.ss($, ($) => implementation_1.i.array_literal([]));
232
- case 'not set': return _ea.ss($, ($) => implementation_1.i.not_set());
233
- case 'selection': return _ea.ss($, ($) => implementation_1.i.select((0, exports.Lookup_Selection)($, {})));
234
- case 'stack': return _ea.ss($, ($) => implementation_1.i.implement_me()); // quite some work
235
- default: return _ea.au($[0]);
236
- }
237
- }))), () => implementation_1.i.select_from_variable("params", ["lookups"])),
238
- }), () => implementation_1.i.select_from_variable("params", []))
239
- }));
240
- case 'dictionary': return _ea.ss($, ($) => implementation_1.i.block([], $.benchmark.transform(($) => _ea.dictionary_literal({
241
- // "linked entry": e.call(
242
- // s.from_context([]), //Value_Selection($.selection, { 'tail': pa.array_literal([]) }),
243
- // e.string("FIXME", 'backtick'),
244
- // ),
245
- "benchmark": (0, implementation_1.variable)(null, implementation_1.i.select((0, exports.Guaranteed_Value_Selection)($.selection, { 'tail': () => _ea.array_literal([]) }))),
246
- }), () => _ea.dictionary_literal({})), implementation_1.i.call(implementation_1.s.from_variable_import(" i generic", $.definition.ordered ? "resolve ordered dictionary" : "resolve dictionary", []), implementation_1.i.select_from_context([]), {
247
- //"denseness benchmark": e.not_set(),
248
- "map": implementation_1.i.function_(true, implementation_1.i.block([], $.benchmark.transform(($) => _ea.dictionary_literal({
249
- // "linked entry": e.call(
250
- // s.from_context([]), //Value_Selection($.selection, { 'tail': pa.array_literal([]) }),
251
- // e.string("FIXME", 'backtick'),
252
- // ),
253
- "linked entry": (0, implementation_1.variable)(null, implementation_1.i.implement_me()), // quite some work; a call to __get_entry() from the selection (Guaranteed_Value_Selection), and then transform an optional value
254
- }), () => _ea.dictionary_literal({})), implementation_1.i.change_context(implementation_1.s.from_context(["value"]), (0, exports.Node_Resolver)($.resolver, {
255
- 'temp type': $p['temp type'],
256
- 'temp subselection': (0, append_element_1.$$)($p['temp subselection'], {
257
- 'element': interface_1.sub.dictionary(),
258
- }),
259
- })))),
260
- "location 2 string": implementation_1.i.select_from_variable("l2s", []),
261
- })));
262
- case 'group': return _ea.ss($, ($) => implementation_1.i.block($['ordered list'].map(($) => (0, implementation_1.temp_ordered_variable)(`p ${$.key}`, interface_1.t.component_imported("out", $p['temp type'], {}, (0, append_element_1.$$)($p['temp subselection'], {
263
- 'element': interface_1.sub.group($.key),
264
- })), implementation_1.i.change_context(implementation_1.s.from_context([$.key]), (0, exports.Node_Resolver)($.value.resolver, {
265
- 'temp type': $p['temp type'],
266
- 'temp subselection': (0, append_element_1.$$)($p['temp subselection'], {
267
- 'element': interface_1.sub.group($.key),
268
- }),
269
- })))), {}, implementation_1.i.group($.dictionary.map(($, key) => implementation_1.i.select_from_variable(`p ${key}`, [])))));
270
- case 'list': return _ea.ss($, ($) => {
271
- return implementation_1.i.array_map(implementation_1.s.from_context(["list"]), implementation_1.i.change_context(implementation_1.s.from_context(["element"]), (0, exports.Node_Resolver)($.resolver, {
272
- 'temp type': $p['temp type'],
273
- 'temp subselection': (0, append_element_1.$$)($p['temp subselection'], {
274
- 'element': interface_1.sub.list(),
275
- }),
276
- })));
277
- });
278
- case 'optional': return _ea.ss($, ($) => implementation_1.i.optional_map(implementation_1.s.from_context([]), (0, exports.Option_Constraints)($.constraints, {
279
- 'sub': () => (0, exports.Node_Resolver)($['resolver'], {
280
- 'temp type': $p['temp type'],
281
- 'temp subselection': (0, append_element_1.$$)($p['temp subselection'], {
282
- 'element': interface_1.sub.optional(),
283
- }),
284
- })
285
- })));
286
- case 'state group': return _ea.ss($, ($) => implementation_1.i.switch_(implementation_1.s.from_context(['state group']), $.states.map(($, key) => implementation_1.i.case_(key, (0, exports.Option_Constraints)($.constraints, {
287
- 'sub': () => (0, exports.Node_Resolver)($['resolver'], {
288
- 'temp type': $p['temp type'],
289
- 'temp subselection': (0, append_element_1.$$)($p['temp subselection'], {
290
- 'element': interface_1.sub.state_group(key),
291
- }),
292
- })
293
- }))), interface_1.t.component_imported("out", $p['temp type'], {}, $p['temp subselection'])));
294
- // case 'type parameter': return _ea.ss($, ($) => _edev.implement_me()) // a lot of work: the resolvers need to be passed to this resolve function
295
- default: return _ea.au($[0]);
296
- }
297
- });
298
- };
299
- exports.Node_Resolver = Node_Resolver;
300
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb2x2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9pbXBsZW1lbnRhdGlvbi9hbGdvcml0aG1zL3RyYW5zZm9ybWF0aW9ucy9zY2hlbWEvZXh1cGVyeV9pbXBsZW1lbnRhdGlvbi9yZXNvbHZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUEsc0RBQXVDO0FBT3ZDLDJFQUFpRztBQUNqRyxpRUFBMEU7QUFFMUUsb0hBQThIO0FBQzlILDBIQUEwSTtBQUUxSSwwSUFBMEo7QUFDMUosa0lBQXVJO0FBSWhJLE1BQU0sU0FBUyxHQUFHLENBQ3JCLENBQWdCLEVBQ2hCLEVBR0MsRUFDd0MsRUFBRTtJQUMzQyxPQUFPLGtCQUFDLENBQUMsTUFBTSxDQUNYLElBQUEsWUFBcUIsRUFDakIsR0FBRyxDQUFDLGtCQUFrQixDQUFDO1FBQ25CLEVBQUUsRUFBRSxHQUFHLENBQUMsa0JBQWtCLENBQUM7WUFDdkIsU0FBUyxFQUFFLG1CQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDMUQsS0FBSyxFQUFFLG1CQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQUUsSUFBQSxZQUFlLEVBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQztnQkFDdEUsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDLFdBQVcsRUFBRSxRQUFRLEVBQUUsU0FBUyxDQUFDLENBQUM7Z0JBQ3JELEVBQUUsQ0FBQyxJQUFJO2dCQUNQLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQyxZQUFZLEVBQUUsUUFBUSxDQUFDLENBQUM7YUFDOUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ1IsWUFBWSxFQUFFLG1CQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQUUsSUFBQSxZQUFlLEVBQUMsR0FB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