pareto-test 0.12.2 → 0.13.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 (69) hide show
  1. package/dist/globals.d.ts +26 -0
  2. package/dist/globals.js +2 -0
  3. package/dist/implementation/commands/run_tests.d.ts +11 -0
  4. package/dist/implementation/commands/run_tests.js +73 -0
  5. package/dist/implementation/generic.d.ts +13 -0
  6. package/dist/implementation/generic.js +82 -0
  7. package/dist/implementation/transformers/test_result/fountain_pen.d.ts +4 -0
  8. package/dist/implementation/transformers/test_result/fountain_pen.js +53 -0
  9. package/dist/implementation/transformers/test_result/lines.d.ts +3 -0
  10. package/dist/implementation/transformers/test_result/lines.js +35 -0
  11. package/dist/interface/generic.d.ts +27 -0
  12. package/dist/interface/generic.js +3 -0
  13. package/package.json +6 -7
  14. package/dist/bin/json_to_astn.d.ts +0 -2
  15. package/dist/bin/json_to_astn.js +0 -177
  16. package/dist/bin/temp_serialize_json_schema.d.ts +0 -2
  17. package/dist/bin/temp_serialize_json_schema.js +0 -60
  18. package/dist/generated/implementation/generic/resolve.d.ts +0 -109
  19. package/dist/generated/implementation/generic/resolve.js +0 -276
  20. package/dist/generated/implementation/generic/unmarshall.d.ts +0 -42
  21. package/dist/generated/implementation/generic/unmarshall.js +0 -238
  22. package/dist/generated/implementation/schemas/legacy_json_schema/marshall.d.ts +0 -11
  23. package/dist/generated/implementation/schemas/legacy_json_schema/marshall.js +0 -260
  24. package/dist/generated/implementation/schemas/legacy_json_schema/unmarshall.d.ts +0 -11
  25. package/dist/generated/implementation/schemas/legacy_json_schema/unmarshall.js +0 -246
  26. package/dist/generated/interface/core/astn_source.d.ts +0 -108
  27. package/dist/generated/interface/core/astn_source.js +0 -3
  28. package/dist/generated/interface/core/astn_target.d.ts +0 -186
  29. package/dist/generated/interface/core/astn_target.js +0 -3
  30. package/dist/generated/interface/core/resolve.d.ts +0 -11
  31. package/dist/generated/interface/core/resolve.js +0 -3
  32. package/dist/generated/interface/core/resolved.d.ts +0 -117
  33. package/dist/generated/interface/core/resolved.js +0 -3
  34. package/dist/generated/interface/core/unconstrained.d.ts +0 -19
  35. package/dist/generated/interface/core/unconstrained.js +0 -3
  36. package/dist/generated/interface/core/unresolved.d.ts +0 -181
  37. package/dist/generated/interface/core/unresolved.js +0 -3
  38. package/dist/generated/interface/schemas/legacy_json_schema/data_types/resolve.d.ts +0 -1
  39. package/dist/generated/interface/schemas/legacy_json_schema/data_types/resolve.js +0 -7
  40. package/dist/generated/interface/schemas/legacy_json_schema/data_types/source.d.ts +0 -574
  41. package/dist/generated/interface/schemas/legacy_json_schema/data_types/source.js +0 -3
  42. package/dist/generated/interface/schemas/legacy_json_schema/data_types/target.d.ts +0 -574
  43. package/dist/generated/interface/schemas/legacy_json_schema/data_types/target.js +0 -3
  44. package/dist/generated/interface/schemas/legacy_json_schema/marshall.d.ts +0 -303
  45. package/dist/generated/interface/schemas/legacy_json_schema/marshall.js +0 -3
  46. package/dist/generated/interface/schemas/legacy_json_schema/migrate_boilerplate.d.ts +0 -222
  47. package/dist/generated/interface/schemas/legacy_json_schema/migrate_boilerplate.js +0 -3
  48. package/dist/generated/interface/schemas/legacy_json_schema/unmarshall.d.ts +0 -303
  49. package/dist/generated/interface/schemas/legacy_json_schema/unmarshall.js +0 -3
  50. package/dist/generated/interface/schemas/legacy_json_schema/value_deserializers.d.ts +0 -44
  51. package/dist/generated/interface/schemas/legacy_json_schema/value_deserializers.js +0 -3
  52. package/dist/generated/interface/schemas/legacy_json_schema/value_serializers.d.ts +0 -44
  53. package/dist/generated/interface/schemas/legacy_json_schema/value_serializers.js +0 -3
  54. package/dist/interface/testrunner.d.ts +0 -4
  55. package/dist/interface/testrunner.js +0 -3
  56. package/dist/run_tests.d.ts +0 -4
  57. package/dist/run_tests.js +0 -232
  58. package/dist/shorthands/legacy_json_schema.d.ts +0 -32
  59. package/dist/shorthands/legacy_json_schema.js +0 -119
  60. package/dist/temp_astn_target_to_fountain_pen_block.d.ts +0 -8
  61. package/dist/temp_astn_target_to_fountain_pen_block.js +0 -131
  62. package/dist/temp_data/json_schema.astn.d.ts +0 -2
  63. package/dist/temp_data/json_schema.astn.js +0 -278
  64. package/dist/transformations/legacy_json_schema/astn_sealed_target.d.ts +0 -38
  65. package/dist/transformations/legacy_json_schema/astn_sealed_target.js +0 -252
  66. package/dist/types/json.d.ts +0 -4
  67. package/dist/types/json.js +0 -3
  68. package/dist/unmarshall_helpers.d.ts +0 -16
  69. package/dist/unmarshall_helpers.js +0 -163
@@ -1,38 +0,0 @@
1
- import * as _et from 'exupery-core-types';
2
- import * as d_out from "../../generated/interface/core/astn_target";
3
- import * as d_json from "../../types/json";
4
- import * as d_schema from "../../generated/interface/schemas/legacy_json_schema/data_types/target";
5
- export declare class Abort {
6
- path: string[];
7
- error: Error;
8
- constructor(path: string[], error: Error);
9
- }
10
- export type Error = ['type not allowed', Type_Not_Allowed] | ['missing required property', string];
11
- type Type_Not_Allowed = {
12
- 'allowed types': _et.Array<JSON_Type>;
13
- };
14
- export declare const Array_Definition: ($p: {
15
- "path": string[];
16
- "json array": _et.Array<d_json.Value>;
17
- "definition": d_schema.Array_Definition;
18
- "temp definitions": d_schema.Schema.definitions;
19
- }) => d_out.Value;
20
- export declare const Object_Definition: ($p: {
21
- "path": string[];
22
- "json object": _et.Dictionary<d_json.Value>;
23
- "definition": d_schema.Object_Definition;
24
- "temp definitions": d_schema.Schema.definitions;
25
- }) => d_out.Value;
26
- export declare const String_Definition: ($p: {
27
- "json string": string;
28
- "path": string[];
29
- "definition": d_schema.String_Definition;
30
- }) => d_out.Value;
31
- type JSON_Type = ['string', null] | ['number', null] | ['boolean', null] | ['object', null] | ['array', null] | ['null', null];
32
- export declare const Definition: ($p: {
33
- "json value": d_json.Value;
34
- "definition": d_schema.Definition;
35
- "temp definitions": d_schema.Schema.definitions;
36
- "path": string[];
37
- }) => d_out.Value;
38
- export {};
@@ -1,252 +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.Definition = exports.String_Definition = exports.Object_Definition = exports.Array_Definition = exports.Abort = void 0;
27
- const _ea = __importStar(require("exupery-core-alg"));
28
- const unmarshall_helpers_1 = require("../../unmarshall_helpers");
29
- const json_schema_astn_1 = require("../../temp_data/json_schema.astn");
30
- class Abort {
31
- path;
32
- error;
33
- constructor(path, error) {
34
- this.path = path;
35
- this.error = error;
36
- }
37
- }
38
- exports.Abort = Abort;
39
- const abort = (error, path) => {
40
- throw new Abort(path, error);
41
- };
42
- // export const Value_Type = ($: d_ast.Value): d_schema.Value_Type => _ea.cc($.type, ($) => {
43
- // switch ($[0]) {
44
- // case 'string': return ['string', null]
45
- // case 'number': return ['number', null]
46
- // case 'object': return ['object', null]
47
- // case 'array': return ['array', null]
48
- // case 'false': return ['boolean', null]
49
- // case 'null': return ['null', null]
50
- // case 'true': return ['boolean', null]
51
- // default: return _ea.au($[0])
52
- // }
53
- // })
54
- const Array_Definition = ($p) => {
55
- const $_def = $p.definition;
56
- return _ea.cc($p.definition.type, ($) => {
57
- switch ($[0]) {
58
- case 'list': return _ea.ss($, ($) => {
59
- const $_list_def = $;
60
- let counter = -1;
61
- return ['list', $p['json array'].map(($) => {
62
- counter++;
63
- return (0, exports.Definition)({
64
- 'json value': $,
65
- 'definition': $_list_def,
66
- 'temp definitions': $p['temp definitions'],
67
- 'path': [...$p.path, "" + counter],
68
- });
69
- })];
70
- });
71
- default: return _ea.au($[0]);
72
- }
73
- });
74
- };
75
- exports.Array_Definition = Array_Definition;
76
- const Object_Definition = ($p) => {
77
- const $_def = $p.definition;
78
- const $_value = json_schema_astn_1.$;
79
- const $_obj = json_schema_astn_1.$;
80
- return _ea.cc($_def.type, ($) => {
81
- switch ($[0]) {
82
- case 'dictionary': return _ea.ss($, ($) => {
83
- const $_dictionary_def = $;
84
- return ['dictionary', $p['json object'].map(($, key) => (0, exports.Definition)({
85
- 'json value': $,
86
- 'definition': $_dictionary_def,
87
- 'temp definitions': $p['temp definitions'],
88
- 'path': [...$p.path, key],
89
- }))];
90
- });
91
- case 'verbose group': return _ea.ss($, ($) => {
92
- const $_verbose_group_def = $;
93
- return _ea.cc((0, unmarshall_helpers_1.expect_verbose_type)($p['json object'], $.properties.map(($) => null)), ($) => {
94
- return ['verbose group', $_verbose_group_def.properties.map(($, key) => {
95
- const do_def = (property_value) => {
96
- return (0, exports.Definition)({
97
- 'json value': property_value,
98
- 'definition': $.definition,
99
- 'temp definitions': $p['temp definitions'],
100
- 'path': [...$p.path, key],
101
- });
102
- };
103
- return $.optional
104
- ? $p['json object'].__get_entry(key).transform(($) => ['optional', ['set', do_def($)]], () => ['optional', ['not set', null]])
105
- : do_def($p['json object'].__get_entry(key).transform(($) => $, () => abort(['missing required property', key], $p.path)));
106
- })];
107
- });
108
- });
109
- default: return _ea.au($[0]);
110
- }
111
- });
112
- };
113
- exports.Object_Definition = Object_Definition;
114
- const String_Definition = ($p) => {
115
- const $_def = $p.definition;
116
- return _ea.cc($_def, ($) => {
117
- switch ($[0]) {
118
- case 'any': return _ea.ss($, ($) => ['text', {
119
- 'delimiter': ['quote', null],
120
- 'value': $p['json string'],
121
- }]);
122
- case 'enum': return _ea.ss($, ($) => ['state', {
123
- 'state': $.__get_entry($p['json string']).transform(($) => $p['json string'], () => _ea.panic("Enum value not found: " + $p['json string'])),
124
- 'value': ['nothing', null]
125
- }]); //FIXME
126
- default: return _ea.au($[0]);
127
- }
128
- });
129
- };
130
- exports.String_Definition = String_Definition;
131
- const determine_allowed = ($) => {
132
- return {
133
- 'allowed types': _ea.array_literal([
134
- ['string', null],
135
- ['number', null],
136
- ['boolean', null],
137
- ['object', null],
138
- ['array', null],
139
- ['null', null],
140
- ])
141
- };
142
- };
143
- // const Typed_Value_to_JSON_Type = ($: d_schema.Definition.SG.any_of): JSON_Type => _ea.cc($, ($) => {
144
- // switch ($[0]) {
145
- // case 'string': return ['string', null]
146
- // case 'number': return ['number', null]
147
- // case 'boolean': return ['boolean', null]
148
- // case 'object': return ['object', null]
149
- // case 'array': return ['array', null]
150
- // case 'null': return ['null', null]
151
- // default: return _ea.au($[0])
152
- // }
153
- // })
154
- const Definition = ($p) => {
155
- return _ea.cc($p.definition, ($) => {
156
- switch ($[0]) {
157
- case 'any': return _ea.ss($, ($) => ['text', {
158
- 'delimiter': ['quote', null],
159
- 'value': "IMPLEMENT ME: any",
160
- }]);
161
- case 'any of': return _ea.ss($, ($) => {
162
- const $_any_of_def = $;
163
- const typed_value = (0, unmarshall_helpers_1.determine_type)($p['json value']);
164
- return _ea.cc(typed_value, ($) => {
165
- switch ($[0]) {
166
- case 'string': return _ea.ss($, ($) => {
167
- const $_string = $;
168
- return $_any_of_def.string.transform(($) => (0, exports.String_Definition)({
169
- 'definition': $,
170
- 'json string': $_string,
171
- 'path': $p.path,
172
- }), () => abort(['type not allowed', determine_allowed($_any_of_def)], $p.path));
173
- });
174
- case 'number': return _ea.ss($, ($) => {
175
- const $_number = $;
176
- return $_any_of_def.number.transform(($) => ['text', {
177
- 'delimiter': ['none', null],
178
- 'value': "" + $_number,
179
- }], () => abort(['type not allowed', determine_allowed($_any_of_def)], $p.path));
180
- });
181
- case 'boolean': return _ea.ss($, ($) => {
182
- const $_boolean = $;
183
- return $_any_of_def.boolean.transform(($) => ['text', {
184
- 'delimiter': ['none', null],
185
- 'value': $_boolean ? "true" : "false",
186
- }], () => abort(['type not allowed', determine_allowed($_any_of_def)], $p.path));
187
- });
188
- case 'object': return _ea.ss($, ($) => {
189
- const $_object = $;
190
- return $_any_of_def.object.transform(($) => (0, exports.Object_Definition)({
191
- 'json object': $_object,
192
- 'definition': $,
193
- 'path': $p.path,
194
- 'temp definitions': $p['temp definitions'],
195
- }), () => abort(['type not allowed', determine_allowed($_any_of_def)], $p.path));
196
- });
197
- case 'array': return _ea.ss($, ($) => {
198
- const $_array = $;
199
- return $_any_of_def.array.transform(($) => ['text', {
200
- 'delimiter': ['none', null],
201
- 'value': "FIXME ARRAY",
202
- }], () => abort(['type not allowed', determine_allowed($_any_of_def)], $p.path));
203
- });
204
- case 'null': return _ea.ss($, ($) => {
205
- const $_null = $;
206
- return $_any_of_def.null.transform(($) => ['text', {
207
- 'delimiter': ['none', null],
208
- 'value': "null",
209
- }], () => abort(['type not allowed', determine_allowed($_any_of_def)], $p.path));
210
- });
211
- default: return _ea.au($[0]);
212
- }
213
- });
214
- });
215
- case 'string': return _ea.ss($, ($) => (0, exports.String_Definition)({
216
- 'definition': $,
217
- 'json string': (0, unmarshall_helpers_1.expect_string)($p['json value']),
218
- 'path': $p.path,
219
- }));
220
- case 'number': return _ea.ss($, ($) => ['text', {
221
- 'delimiter': ['none', null],
222
- 'value': "" + (0, unmarshall_helpers_1.expect_number)($p['json value']),
223
- }]);
224
- case 'boolean': return _ea.ss($, ($) => ['text', {
225
- 'delimiter': ['none', null],
226
- 'value': (0, unmarshall_helpers_1.expect_boolean)($p['json value']) ? "true" : "false",
227
- }]);
228
- case 'object': return _ea.ss($, ($) => (0, exports.Object_Definition)({
229
- 'json object': (0, unmarshall_helpers_1.expect_dictionary)($p['json value']),
230
- 'definition': $,
231
- 'path': $p.path,
232
- 'temp definitions': $p['temp definitions'],
233
- }));
234
- case 'definition reference': return _ea.ss($, ($) => $p['temp definitions'].__get_entry($).transform(($) => (0, exports.Definition)({
235
- 'json value': $p['json value'],
236
- 'path': $p.path,
237
- 'definition': $,
238
- 'temp definitions': $p['temp definitions'],
239
- }), () => _ea.panic("missing definition reference: " + $)));
240
- case 'array': return _ea.ss($, ($) => (0, exports.Array_Definition)({
241
- 'json array': (0, unmarshall_helpers_1.expect_array)($p['json value']),
242
- 'definition': $,
243
- 'temp definitions': $p['temp definitions'],
244
- 'path': $p.path,
245
- }));
246
- case 'null': return _ea.ss($, ($) => ['nothing', (0, unmarshall_helpers_1.expect_null)($p['json value'])]);
247
- default: return _ea.au($[0]);
248
- }
249
- });
250
- };
251
- exports.Definition = Definition;
252
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN0bl9zZWFsZWRfdGFyZ2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWF0aW9ucy9sZWdhY3lfanNvbl9zY2hlbWEvYXN0bl9zZWFsZWRfdGFyZ2V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsc0RBQXVDO0FBUXZDLGlFQUF1TDtBQUN2TCx1RUFBb0Q7QUFLcEQsTUFBYSxLQUFLO0lBRUg7SUFDQTtJQUZYLFlBQ1csSUFBYyxFQUNkLEtBQVk7UUFEWixTQUFJLEdBQUosSUFBSSxDQUFVO1FBQ2QsVUFBSyxHQUFMLEtBQUssQ0FBTztJQUNuQixDQUFDO0NBQ1I7QUFMRCxzQkFLQztBQVNELE1BQU0sS0FBSyxHQUFHLENBQ1YsS0FBWSxFQUNaLElBQWMsRUFDaEIsRUFBRTtJQUNBLE1BQU0sSUFBSSxLQUFLLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFBO0FBQ2hDLENBQUMsQ0FBQTtBQUVELDZGQUE2RjtBQUM3RixzQkFBc0I7QUFDdEIsaURBQWlEO0FBQ2pELGlEQUFpRDtBQUNqRCxpREFBaUQ7QUFDakQsK0NBQStDO0FBQy9DLGlEQUFpRDtBQUNqRCw2Q0FBNkM7QUFDN0MsZ0RBQWdEO0FBQ2hELHVDQUF1QztBQUN2QyxRQUFRO0FBQ1IsS0FBSztBQUVFLE1BQU0sZ0JBQWdCLEdBQUcsQ0FDNUIsRUFLQyxFQUNVLEVBQUU7SUFDYixNQUFNLEtBQUssR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFBO0lBRTNCLE9BQU8sR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO1FBQ3BDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDWCxLQUFLLE1BQU0sQ0FBQyxDQUFDLE9BQU8sR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFD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
@@ -1,4 +0,0 @@
1
- export type Value = string | boolean | null | number | Value[] | Object;
2
- export type Object = {
3
- [key: string]: Value;
4
- };
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90eXBlcy9qc29uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
@@ -1,16 +0,0 @@
1
- import * as _et from 'exupery-core-types';
2
- import { Value } from "./types/json";
3
- export type Typed_Value = ['string', string] | ['number', number] | ['boolean', boolean] | ['null', null] | ['array', _et.Array<Value>] | ['object', _et.Dictionary<Value>];
4
- export declare const determine_type: ($: Value) => Typed_Value;
5
- export declare const expect_dictionary: ($: Value) => _et.Dictionary<Value>;
6
- export declare const expect_verbose_type: ($: _et.Dictionary<Value>, allowed_properties: _et.Dictionary<null>) => _et.Dictionary<Value>;
7
- export declare const expect_property: ($: _et.Dictionary<Value>, key: string) => Value;
8
- export declare const expect_optional_property: ($: _et.Dictionary<Value>, key: string) => _et.Optional_Value<Value>;
9
- export declare const expect_array: ($: Value) => _et.Array<Value>;
10
- export type State = [string, Value];
11
- export declare const expect_state: ($: Value) => State;
12
- export declare const expect_number: ($: Value) => number;
13
- export declare const expect_boolean: ($: Value) => boolean;
14
- export declare const expect_string: ($: Value) => string;
15
- export declare const expect_null: ($: Value) => null;
16
- export declare const expect_optional_null: ($: Value) => _et.Optional_Value<Value>;
@@ -1,163 +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.expect_optional_null = exports.expect_null = exports.expect_string = exports.expect_boolean = exports.expect_number = exports.expect_state = exports.expect_array = exports.expect_optional_property = exports.expect_property = exports.expect_verbose_type = exports.expect_dictionary = exports.determine_type = void 0;
27
- const _ei = __importStar(require("exupery-core-internals"));
28
- const determine_type = ($) => {
29
- if (typeof $ === 'string') {
30
- return ['string', $];
31
- }
32
- else if (typeof $ === 'number') {
33
- return ['number', $];
34
- }
35
- else if (typeof $ === 'boolean') {
36
- return ['boolean', $];
37
- }
38
- else if ($ === null) {
39
- return ['null', null];
40
- }
41
- else if (Array.isArray($)) {
42
- return ['array', _ei.array_literal($)];
43
- }
44
- else if (typeof $ === 'object') {
45
- return ['object', _ei.dictionary_literal($)];
46
- }
47
- else {
48
- _ei.panic(`Unknown type: ${typeof $}`);
49
- }
50
- };
51
- exports.determine_type = determine_type;
52
- const expect_dictionary = ($) => {
53
- if (typeof $ !== 'object' || $ === null || Array.isArray($)) {
54
- _ei.panic("Expected object");
55
- }
56
- const result = _ei.dictionary_literal($);
57
- return result;
58
- };
59
- exports.expect_dictionary = expect_dictionary;
60
- const expect_verbose_type = ($, allowed_properties) => {
61
- const keys = [];
62
- allowed_properties.map(($, key) => {
63
- keys.push(key);
64
- });
65
- $.map(($, key) => {
66
- if (!keys.includes(key)) {
67
- _ei.panic(`Unexpected property: '${key}'`);
68
- }
69
- });
70
- return $;
71
- };
72
- exports.expect_verbose_type = expect_verbose_type;
73
- // export const resolve_object = <T, NT>(
74
- // $: { [key: string]: T },
75
- // fn: (value: T, key: string, sibling_getter: ($: string) => NT) => NT
76
- // ): { [key: string]: NT } => {
77
- // const result: { [key: string]: NT } = {}
78
- // const inner_resolve = (key: string): NT => {
79
- // if (key in result) {
80
- // return result[key]
81
- // }
82
- // if (!(key in $)) {
83
- // _ea.panic(`no such entry: '${key}'`)
84
- // }
85
- // const value = $[key]
86
- // const resolved = fn(value, key, (sibling_key: string) => inner_resolve(sibling_key))
87
- // result[key] = resolved
88
- // return resolved
89
- // }
90
- // Object.entries($).forEach(([key, value]) => {
91
- // inner_resolve(key)
92
- // })
93
- // return result
94
- // }
95
- const expect_property = ($, key) => {
96
- return $.__get_entry(key).transform(($) => $, () => _ei.panic("no such entry"));
97
- };
98
- exports.expect_property = expect_property;
99
- const expect_optional_property = ($, key) => {
100
- return $.__get_entry(key);
101
- };
102
- exports.expect_optional_property = expect_optional_property;
103
- const expect_array = ($) => {
104
- if (!Array.isArray($)) {
105
- _ei.panic("Expected array");
106
- }
107
- return _ei.array_literal($);
108
- };
109
- exports.expect_array = expect_array;
110
- const expect_state = ($) => {
111
- if (!Array.isArray($)) {
112
- console.log(JSON.stringify($));
113
- _ei.panic(`Expected array for state, got ${typeof $}`);
114
- }
115
- if ($.length !== 2) {
116
- console.log(JSON.stringify($));
117
- _ei.panic(`Expected tuple of 2 for state, got ${$.length}`);
118
- }
119
- const widget_name = $[0];
120
- const widget_value = $[1];
121
- if (typeof widget_name !== 'string') {
122
- console.log(JSON.stringify($));
123
- _ei.panic(`Expected state name to be string, got ${JSON.stringify(widget_name)}`);
124
- }
125
- return [widget_name, widget_value];
126
- };
127
- exports.expect_state = expect_state;
128
- const expect_number = ($) => {
129
- if (typeof $ !== 'number') {
130
- _ei.panic(`Expected number, got ${JSON.stringify($)}`);
131
- }
132
- return $;
133
- };
134
- exports.expect_number = expect_number;
135
- const expect_boolean = ($) => {
136
- if (typeof $ !== 'boolean') {
137
- _ei.panic(`Expected boolean, got ${JSON.stringify($)}`);
138
- }
139
- return $;
140
- };
141
- exports.expect_boolean = expect_boolean;
142
- const expect_string = ($) => {
143
- if (typeof $ !== 'string') {
144
- _ei.panic(`Expected string, got ${JSON.stringify($)}`);
145
- }
146
- return $;
147
- };
148
- exports.expect_string = expect_string;
149
- const expect_null = ($) => {
150
- if ($ !== null) {
151
- _ei.panic(`Expected null, got ${JSON.stringify($)}`);
152
- }
153
- return null;
154
- };
155
- exports.expect_null = expect_null;
156
- const expect_optional_null = ($) => {
157
- if ($ !== null) {
158
- return _ei.set($);
159
- }
160
- return _ei.not_set();
161
- };
162
- exports.expect_optional_null = expect_optional_null;
163
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5tYXJzaGFsbF9oZWxwZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3VubWFyc2hhbGxfaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNBLDREQUE2QztBQVl0QyxNQUFNLGNBQWMsR0FBRyxDQUFDLENBQVEsRUFBZSxFQUFFO0lBQ3BELElBQUksT0FBTyxDQUFDLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDeEIsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQTtJQUN4QixDQUFDO1NBQU0sSUFBSSxPQUFPLENBQUMsS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUMvQixPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBQ3hCLENBQUM7U0FBTSxJQUFJLE9BQU8sQ0FBQyxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQ2hDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUE7SUFDekIsQ0FBQztTQUFNLElBQUksQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO1FBQ3BCLE9BQU8sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUE7SUFDekIsQ0FBQztTQUFNLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzFCLE9BQU8sQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQzFDLENBQUM7U0FBTSxJQUFJLE9BQU8sQ0FBQyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQy9CLE9BQU8sQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDaEQsQ0FBQztTQUFNLENBQUM7UUFDSixHQUFHLENBQUMsS0FBSyxDQUFDLGlCQUFpQixPQUFPLENBQUMsRUFBRSxDQUFDLENBQUE7SUFDMUMsQ0FBQztBQUNMLENB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