mol_data_all 1.1.209 → 1.1.210
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.
- package/node.d.ts +0 -226
- package/node.deps.json +1 -1
- package/node.esm.js +70 -70
- package/node.esm.js.map +1 -1
- package/node.js +70 -70
- package/node.js.map +1 -1
- package/node.test.js +452 -446
- package/node.test.js.map +1 -1
- package/package.json +1 -1
- package/test.html +2 -2
- package/web.d.ts +0 -226
- package/web.deps.json +1 -1
- package/web.esm.js +70 -70
- package/web.esm.js.map +1 -1
- package/web.js +70 -70
- package/web.js.map +1 -1
- package/web.test.js +306 -300
- package/web.test.js.map +1 -1
package/node.js
CHANGED
|
@@ -24,13 +24,13 @@ var $;
|
|
|
24
24
|
(function ($) {
|
|
25
25
|
})($ || ($ = {}));
|
|
26
26
|
module.exports = $;
|
|
27
|
-
//mam.
|
|
27
|
+
//mam.ts
|
|
28
28
|
;
|
|
29
29
|
|
|
30
|
-
$node[ "../mam" ] = $node[ "../mam.
|
|
30
|
+
$node[ "../mam.ts" ] = $node[ "../mam.ts" ] = module.exports }.call( {} , {} )
|
|
31
31
|
;
|
|
32
32
|
"use strict";
|
|
33
|
-
//value.
|
|
33
|
+
//mol/data/value/value.ts
|
|
34
34
|
;
|
|
35
35
|
"use strict";
|
|
36
36
|
var $;
|
|
@@ -43,7 +43,7 @@ var $;
|
|
|
43
43
|
}
|
|
44
44
|
$.$mol_data_setup = $mol_data_setup;
|
|
45
45
|
})($ || ($ = {}));
|
|
46
|
-
//setup.
|
|
46
|
+
//mol/data/setup/setup.ts
|
|
47
47
|
;
|
|
48
48
|
"use strict";
|
|
49
49
|
var $;
|
|
@@ -53,7 +53,7 @@ var $;
|
|
|
53
53
|
}
|
|
54
54
|
$.$mol_fail = $mol_fail;
|
|
55
55
|
})($ || ($ = {}));
|
|
56
|
-
//fail.
|
|
56
|
+
//mol/fail/fail.ts
|
|
57
57
|
;
|
|
58
58
|
"use strict";
|
|
59
59
|
var $;
|
|
@@ -74,7 +74,7 @@ var $;
|
|
|
74
74
|
}
|
|
75
75
|
$.$mol_diff_path = $mol_diff_path;
|
|
76
76
|
})($ || ($ = {}));
|
|
77
|
-
//path.
|
|
77
|
+
//mol/diff/path/path.ts
|
|
78
78
|
;
|
|
79
79
|
"use strict";
|
|
80
80
|
var $;
|
|
@@ -86,7 +86,7 @@ var $;
|
|
|
86
86
|
this.errors = errors;
|
|
87
87
|
if (errors.length) {
|
|
88
88
|
const stacks = [...errors.map(error => error.stack), this.stack];
|
|
89
|
-
const diff =
|
|
89
|
+
const diff = $mol_diff_path(...stacks.map(stack => {
|
|
90
90
|
if (!stack)
|
|
91
91
|
return [];
|
|
92
92
|
return stack.split('\n').reverse();
|
|
@@ -103,16 +103,16 @@ var $;
|
|
|
103
103
|
}
|
|
104
104
|
$.$mol_error_mix = $mol_error_mix;
|
|
105
105
|
})($ || ($ = {}));
|
|
106
|
-
//mix.
|
|
106
|
+
//mol/error/mix/mix.ts
|
|
107
107
|
;
|
|
108
108
|
"use strict";
|
|
109
109
|
var $;
|
|
110
110
|
(function ($) {
|
|
111
|
-
class $mol_data_error extends
|
|
111
|
+
class $mol_data_error extends $mol_error_mix {
|
|
112
112
|
}
|
|
113
113
|
$.$mol_data_error = $mol_data_error;
|
|
114
114
|
})($ || ($ = {}));
|
|
115
|
-
//error.
|
|
115
|
+
//mol/data/error/error.ts
|
|
116
116
|
;
|
|
117
117
|
"use strict";
|
|
118
118
|
var $;
|
|
@@ -122,31 +122,31 @@ var $;
|
|
|
122
122
|
}
|
|
123
123
|
$.$mol_fail_hidden = $mol_fail_hidden;
|
|
124
124
|
})($ || ($ = {}));
|
|
125
|
-
//hidden.
|
|
125
|
+
//mol/fail/hidden/hidden.ts
|
|
126
126
|
;
|
|
127
127
|
"use strict";
|
|
128
128
|
var $;
|
|
129
129
|
(function ($) {
|
|
130
130
|
function $mol_data_array(sub) {
|
|
131
|
-
return
|
|
131
|
+
return $mol_data_setup((val) => {
|
|
132
132
|
if (!Array.isArray(val))
|
|
133
|
-
return
|
|
133
|
+
return $mol_fail(new $mol_data_error(`${val} is not an array`));
|
|
134
134
|
return val.map((item, index) => {
|
|
135
135
|
try {
|
|
136
136
|
return sub(item);
|
|
137
137
|
}
|
|
138
138
|
catch (error) {
|
|
139
|
-
if (
|
|
140
|
-
return
|
|
139
|
+
if (error instanceof Promise)
|
|
140
|
+
return $mol_fail_hidden(error);
|
|
141
141
|
error.message = `[${index}] ${error.message}`;
|
|
142
|
-
return
|
|
142
|
+
return $mol_fail(error);
|
|
143
143
|
}
|
|
144
144
|
});
|
|
145
145
|
}, sub);
|
|
146
146
|
}
|
|
147
147
|
$.$mol_data_array = $mol_data_array;
|
|
148
148
|
})($ || ($ = {}));
|
|
149
|
-
//array.
|
|
149
|
+
//mol/data/array/array.ts
|
|
150
150
|
;
|
|
151
151
|
"use strict";
|
|
152
152
|
var $;
|
|
@@ -154,24 +154,24 @@ var $;
|
|
|
154
154
|
$.$mol_data_boolean = (val) => {
|
|
155
155
|
if (typeof val === 'boolean')
|
|
156
156
|
return val;
|
|
157
|
-
return
|
|
157
|
+
return $mol_fail(new $mol_data_error(`${val} is not a boolean`));
|
|
158
158
|
};
|
|
159
159
|
})($ || ($ = {}));
|
|
160
|
-
//boolean.
|
|
160
|
+
//mol/data/boolean/boolean.ts
|
|
161
161
|
;
|
|
162
162
|
"use strict";
|
|
163
163
|
var $;
|
|
164
164
|
(function ($) {
|
|
165
165
|
function $mol_data_const(ref) {
|
|
166
|
-
return
|
|
166
|
+
return $mol_data_setup((val) => {
|
|
167
167
|
if (Object.is(val, ref))
|
|
168
168
|
return ref;
|
|
169
|
-
return
|
|
169
|
+
return $mol_fail(new $mol_data_error(`${val} is not ${ref}`));
|
|
170
170
|
}, ref);
|
|
171
171
|
}
|
|
172
172
|
$.$mol_data_const = $mol_data_const;
|
|
173
173
|
})($ || ($ = {}));
|
|
174
|
-
//const.
|
|
174
|
+
//mol/data/const/const.ts
|
|
175
175
|
;
|
|
176
176
|
"use strict";
|
|
177
177
|
var $;
|
|
@@ -179,32 +179,32 @@ var $;
|
|
|
179
179
|
$.$mol_data_string = (val) => {
|
|
180
180
|
if (typeof val === 'string')
|
|
181
181
|
return val;
|
|
182
|
-
return
|
|
182
|
+
return $mol_fail(new $mol_data_error(`${val} is not a string`));
|
|
183
183
|
};
|
|
184
184
|
})($ || ($ = {}));
|
|
185
|
-
//string.
|
|
185
|
+
//mol/data/string/string.ts
|
|
186
186
|
;
|
|
187
187
|
"use strict";
|
|
188
188
|
var $;
|
|
189
189
|
(function ($) {
|
|
190
190
|
function $mol_data_pattern(pattern) {
|
|
191
|
-
return
|
|
192
|
-
const val2 =
|
|
191
|
+
return $mol_data_setup((val) => {
|
|
192
|
+
const val2 = $mol_data_string(val);
|
|
193
193
|
if (pattern.test(val2))
|
|
194
194
|
return val2;
|
|
195
|
-
return
|
|
195
|
+
return $mol_fail(new $mol_data_error(`${val} is not a ${pattern}`));
|
|
196
196
|
}, pattern);
|
|
197
197
|
}
|
|
198
198
|
$.$mol_data_pattern = $mol_data_pattern;
|
|
199
199
|
})($ || ($ = {}));
|
|
200
|
-
//pattern.
|
|
200
|
+
//mol/data/pattern/pattern.ts
|
|
201
201
|
;
|
|
202
202
|
"use strict";
|
|
203
203
|
var $;
|
|
204
204
|
(function ($) {
|
|
205
|
-
$.$mol_data_email =
|
|
205
|
+
$.$mol_data_email = $mol_data_pattern(/.+@.+/);
|
|
206
206
|
})($ || ($ = {}));
|
|
207
|
-
//email.
|
|
207
|
+
//mol/data/email/email.ts
|
|
208
208
|
;
|
|
209
209
|
"use strict";
|
|
210
210
|
var $;
|
|
@@ -216,30 +216,30 @@ var $;
|
|
|
216
216
|
index[dict[key]] = key;
|
|
217
217
|
}
|
|
218
218
|
}
|
|
219
|
-
return
|
|
219
|
+
return $mol_data_setup((value) => {
|
|
220
220
|
if (typeof index[value] !== 'string') {
|
|
221
|
-
return
|
|
221
|
+
return $mol_fail(new $mol_data_error(`${value} is not value of ${name} enum`));
|
|
222
222
|
}
|
|
223
223
|
return value;
|
|
224
224
|
}, { name, dict });
|
|
225
225
|
}
|
|
226
226
|
$.$mol_data_enum = $mol_data_enum;
|
|
227
227
|
})($ || ($ = {}));
|
|
228
|
-
//enum.
|
|
228
|
+
//mol/data/enum/enum.ts
|
|
229
229
|
;
|
|
230
230
|
"use strict";
|
|
231
231
|
var $;
|
|
232
232
|
(function ($) {
|
|
233
233
|
function $mol_data_instance(Instance) {
|
|
234
|
-
return
|
|
234
|
+
return $mol_data_setup((val) => {
|
|
235
235
|
if (val instanceof Instance)
|
|
236
236
|
return val;
|
|
237
|
-
return
|
|
237
|
+
return $mol_fail(new $mol_data_error(`${val} is not a ${Instance.name}`));
|
|
238
238
|
}, Instance);
|
|
239
239
|
}
|
|
240
240
|
$.$mol_data_instance = $mol_data_instance;
|
|
241
241
|
})($ || ($ = {}));
|
|
242
|
-
//instance.
|
|
242
|
+
//mol/data/instance/instance.ts
|
|
243
243
|
;
|
|
244
244
|
"use strict";
|
|
245
245
|
var $;
|
|
@@ -247,23 +247,23 @@ var $;
|
|
|
247
247
|
$.$mol_data_number = (val) => {
|
|
248
248
|
if (typeof val === 'number')
|
|
249
249
|
return val;
|
|
250
|
-
return
|
|
250
|
+
return $mol_fail(new $mol_data_error(`${val} is not a number`));
|
|
251
251
|
};
|
|
252
252
|
})($ || ($ = {}));
|
|
253
|
-
//number.
|
|
253
|
+
//mol/data/number/number.ts
|
|
254
254
|
;
|
|
255
255
|
"use strict";
|
|
256
256
|
var $;
|
|
257
257
|
(function ($) {
|
|
258
258
|
function $mol_data_integer(val) {
|
|
259
|
-
const val2 =
|
|
259
|
+
const val2 = $mol_data_number(val);
|
|
260
260
|
if (Math.floor(val2) === val2)
|
|
261
261
|
return val2;
|
|
262
|
-
return
|
|
262
|
+
return $mol_fail(new $mol_data_error(`${val} is not an integer`));
|
|
263
263
|
}
|
|
264
264
|
$.$mol_data_integer = $mol_data_integer;
|
|
265
265
|
})($ || ($ = {}));
|
|
266
|
-
//integer.
|
|
266
|
+
//mol/data/integer/integer.ts
|
|
267
267
|
;
|
|
268
268
|
"use strict";
|
|
269
269
|
var $;
|
|
@@ -274,13 +274,13 @@ var $;
|
|
|
274
274
|
}
|
|
275
275
|
$.$mol_data_nominal = $mol_data_nominal;
|
|
276
276
|
})($ || ($ = {}));
|
|
277
|
-
//nominal.
|
|
277
|
+
//mol/data/nominal/nominal.ts
|
|
278
278
|
;
|
|
279
279
|
"use strict";
|
|
280
280
|
var $;
|
|
281
281
|
(function ($) {
|
|
282
282
|
function $mol_data_nullable(sub) {
|
|
283
|
-
return
|
|
283
|
+
return $mol_data_setup((val) => {
|
|
284
284
|
if (val === null)
|
|
285
285
|
return null;
|
|
286
286
|
return sub(val);
|
|
@@ -288,13 +288,13 @@ var $;
|
|
|
288
288
|
}
|
|
289
289
|
$.$mol_data_nullable = $mol_data_nullable;
|
|
290
290
|
})($ || ($ = {}));
|
|
291
|
-
//nullable.
|
|
291
|
+
//mol/data/nullable/nullable.ts
|
|
292
292
|
;
|
|
293
293
|
"use strict";
|
|
294
294
|
var $;
|
|
295
295
|
(function ($) {
|
|
296
296
|
function $mol_data_optional(sub, fallback) {
|
|
297
|
-
return
|
|
297
|
+
return $mol_data_setup((val) => {
|
|
298
298
|
if (val === undefined) {
|
|
299
299
|
return fallback?.();
|
|
300
300
|
}
|
|
@@ -303,32 +303,32 @@ var $;
|
|
|
303
303
|
}
|
|
304
304
|
$.$mol_data_optional = $mol_data_optional;
|
|
305
305
|
})($ || ($ = {}));
|
|
306
|
-
//optional.
|
|
306
|
+
//mol/data/optional/optional.ts
|
|
307
307
|
;
|
|
308
308
|
"use strict";
|
|
309
|
-
//equals.
|
|
309
|
+
//mol/type/equals/equals.ts
|
|
310
310
|
;
|
|
311
311
|
"use strict";
|
|
312
|
-
//merge.
|
|
312
|
+
//mol/type/merge/merge.ts
|
|
313
313
|
;
|
|
314
314
|
"use strict";
|
|
315
|
-
//undefined.
|
|
315
|
+
//mol/type/partial/undefined/undefined.ts
|
|
316
316
|
;
|
|
317
317
|
"use strict";
|
|
318
318
|
var $;
|
|
319
319
|
(function ($) {
|
|
320
320
|
function $mol_data_record(sub) {
|
|
321
|
-
return
|
|
321
|
+
return $mol_data_setup((val) => {
|
|
322
322
|
let res = {};
|
|
323
323
|
for (const field in sub) {
|
|
324
324
|
try {
|
|
325
325
|
res[field] = sub[field](val[field]);
|
|
326
326
|
}
|
|
327
327
|
catch (error) {
|
|
328
|
-
if (
|
|
329
|
-
return
|
|
328
|
+
if (error instanceof Promise)
|
|
329
|
+
return $mol_fail_hidden(error);
|
|
330
330
|
error.message = `[${JSON.stringify(field)}] ${error.message}`;
|
|
331
|
-
return
|
|
331
|
+
return $mol_fail(error);
|
|
332
332
|
}
|
|
333
333
|
}
|
|
334
334
|
return res;
|
|
@@ -336,13 +336,13 @@ var $;
|
|
|
336
336
|
}
|
|
337
337
|
$.$mol_data_record = $mol_data_record;
|
|
338
338
|
})($ || ($ = {}));
|
|
339
|
-
//record.
|
|
339
|
+
//mol/data/record/record.ts
|
|
340
340
|
;
|
|
341
341
|
"use strict";
|
|
342
342
|
var $;
|
|
343
343
|
(function ($) {
|
|
344
344
|
function $mol_data_variant(...sub) {
|
|
345
|
-
return
|
|
345
|
+
return $mol_data_setup((val) => {
|
|
346
346
|
const errors = [];
|
|
347
347
|
for (const type of sub) {
|
|
348
348
|
let hidden = $.$mol_fail_hidden;
|
|
@@ -352,29 +352,29 @@ var $;
|
|
|
352
352
|
}
|
|
353
353
|
catch (error) {
|
|
354
354
|
$.$mol_fail = hidden;
|
|
355
|
-
if (error instanceof
|
|
355
|
+
if (error instanceof $mol_data_error) {
|
|
356
356
|
errors.push(error);
|
|
357
357
|
}
|
|
358
358
|
else {
|
|
359
|
-
return
|
|
359
|
+
return $mol_fail_hidden(error);
|
|
360
360
|
}
|
|
361
361
|
}
|
|
362
362
|
}
|
|
363
|
-
return
|
|
363
|
+
return $mol_fail(new $mol_data_error(`${val} is not any of variants`, ...errors));
|
|
364
364
|
}, sub);
|
|
365
365
|
}
|
|
366
366
|
$.$mol_data_variant = $mol_data_variant;
|
|
367
367
|
})($ || ($ = {}));
|
|
368
|
-
//variant.
|
|
368
|
+
//mol/data/variant/variant.ts
|
|
369
369
|
;
|
|
370
370
|
"use strict";
|
|
371
|
-
//unary.
|
|
371
|
+
//mol/type/unary/unary.ts
|
|
372
372
|
;
|
|
373
373
|
"use strict";
|
|
374
|
-
//param.
|
|
374
|
+
//mol/type/param/param.ts
|
|
375
375
|
;
|
|
376
376
|
"use strict";
|
|
377
|
-
//tail.
|
|
377
|
+
//mol/type/tail/tail.ts
|
|
378
378
|
;
|
|
379
379
|
"use strict";
|
|
380
380
|
var $;
|
|
@@ -384,38 +384,38 @@ var $;
|
|
|
384
384
|
}
|
|
385
385
|
$.$mol_func_is_class = $mol_func_is_class;
|
|
386
386
|
})($ || ($ = {}));
|
|
387
|
-
//class.
|
|
387
|
+
//mol/func/is/class/class.ts
|
|
388
388
|
;
|
|
389
389
|
"use strict";
|
|
390
|
-
//result.
|
|
390
|
+
//mol/type/result/result.ts
|
|
391
391
|
;
|
|
392
392
|
"use strict";
|
|
393
|
-
//foot.
|
|
393
|
+
//mol/type/foot/foot.ts
|
|
394
394
|
;
|
|
395
395
|
"use strict";
|
|
396
396
|
var $;
|
|
397
397
|
(function ($) {
|
|
398
398
|
function $mol_data_pipe(...funcs) {
|
|
399
|
-
return
|
|
399
|
+
return $mol_data_setup(function (input) {
|
|
400
400
|
let value = input;
|
|
401
401
|
for (const func of funcs)
|
|
402
|
-
value =
|
|
402
|
+
value = $mol_func_is_class(func) ? new func(value) : func.call(this, value);
|
|
403
403
|
return value;
|
|
404
404
|
}, { funcs });
|
|
405
405
|
}
|
|
406
406
|
$.$mol_data_pipe = $mol_data_pipe;
|
|
407
407
|
})($ || ($ = {}));
|
|
408
|
-
//pipe.
|
|
408
|
+
//mol/data/pipe/pipe.ts
|
|
409
409
|
;
|
|
410
410
|
"use strict";
|
|
411
411
|
var $;
|
|
412
412
|
(function ($) {
|
|
413
413
|
function $mol_data_wrapper(pre, Obj) {
|
|
414
414
|
console.warn('$mol_data_wrapper is deparecated. Use $mol_data_pipe instead.');
|
|
415
|
-
return
|
|
415
|
+
return $mol_data_setup((val) => new Obj(pre(val)), { pre, Obj });
|
|
416
416
|
}
|
|
417
417
|
$.$mol_data_wrapper = $mol_data_wrapper;
|
|
418
418
|
})($ || ($ = {}));
|
|
419
|
-
//wrapper.
|
|
419
|
+
//mol/data/wrapper/wrapper.ts
|
|
420
420
|
|
|
421
421
|
//# sourceMappingURL=node.js.map
|
package/node.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../mam.jam.js","-","../../../../mam.ts","../../value/value.js","../../setup/setup.ts","../../../fail/fail.ts","../../../diff/path/path.ts","../../../error/mix/mix.ts","../../error/error.ts","../../../fail/hidden/hidden.ts","../../array/array.ts","../../boolean/boolean.ts","../../const/const.ts","../../string/string.ts","../../pattern/pattern.ts","../../email/email.ts","../../enum/enum.ts","../../instance/instance.ts","../../number/number.ts","../../integer/integer.ts","../../nominal/nominal.ts","../../nullable/nullable.ts","../../optional/optional.ts","../../../type/equals/equals.js","../../../type/merge/merge.js","../../../type/partial/undefined/undefined.js","../../record/record.ts","../../variant/variant.ts","../../../type/unary/unary.js","../../../type/param/param.js","../../../type/tail/tail.js","../../../func/is/class/class.ts","../../../type/result/result.js","../../../type/foot/foot.js","../../pipe/pipe.ts","../../wrapper/wrapper.ts"],"names":[],"mappings":"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","file":"node.js","sourcesContent":[null,null,"Error.stackTraceLimit = 50;\n\ndeclare let _$_: { new(): {} } & typeof globalThis\ndeclare class $ extends _$_ {}\n\nnamespace $ {\n\texport type $ = typeof $$\n\texport declare class $$ extends $ {}\n\tnamespace $$ {\n\t\texport type $$ = $\n\t}\n}\n\nmodule.exports = $\n",null,"namespace $ {\n\n\texport function $mol_data_setup<\n\t\tValue extends $mol_data_value ,\n\t\tConfig = never\n\t>(\n\t\tvalue : Value ,\n\t\tconfig : Config ,\n\t) {\n\t\t\n\t\treturn Object.assign( value , {\n\t\t\tconfig ,\n\t\t\tValue : null as any as ReturnType< Value >\n\t\t} )\n\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_fail( error : any ) : never {\n\t\tthrow error\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_diff_path< Item >( ... paths : Item[][] ) {\n\n\t\tconst limit = Math.min( ... paths.map( path => path.length ) )\n\n\t\tlookup: for( var i = 0 ; i < limit ; ++i ) {\n\n\t\t\tconst first = paths[0][i]\n\n\t\t\tfor( let j = 1 ; j < paths.length ; ++j ) {\n\t\t\t\tif( paths[j][i] !== first ) break lookup\n\t\t\t}\n\n\t\t}\n\n\t\treturn {\n\t\t\tprefix : paths[0].slice( 0 , i ) ,\n\t\t\tsuffix : paths.map( path => path.slice( i ) ) ,\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\n\texport class $mol_error_mix extends Error {\n\n\t\terrors : Error[]\n\n\t\tconstructor( message : string , ... errors : Error[] ) {\n\n\t\t\tsuper( message )\n\t\t\t\n\t\t\tthis.errors = errors\n\n\t\t\tif( errors.length ) {\n\n\t\t\t\tconst stacks = [ ... errors.map( error => error.stack ) , this.stack ]\n\t\t\t\t\n\t\t\t\tconst diff = $mol_diff_path( ... stacks.map( stack => {\n\t\t\t\t\tif( !stack ) return []\n\t\t\t\t\treturn stack.split( '\\n' ).reverse()\n\t\t\t\t} ) )\n\t\t\t\t\n\t\t\t\tconst head = diff.prefix.reverse().join( '\\n' )\n\t\t\t\tconst tails = diff.suffix.map( path => path.reverse().map( line => line.replace( /^(?!\\s+at)/ , '\\tat (.) ' ) ).join( '\\n' ) ).join( '\\n\\tat (.) -----\\n' )\n\n\t\t\t\tthis.stack = `Error: ${ this.constructor.name }\\n\\tat (.) /\"\"\"\\\\\\n${ tails }\\n\\tat (.) \\\\___/\\n${ head }`\n\t\t\t\tthis.message += errors.map( error => '\\n' + error.message ).join( '' )\n\n\t\t\t}\n\n\t\t}\n\n\t\ttoJSON() {\n\t\t\treturn this.message\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\n\texport class $mol_data_error extends $mol_error_mix {}\n\n}\n","namespace $ {\n\n\texport function $mol_fail_hidden( error : any ) : never {\n\t\tthrow error /// Use 'Never Pause Here' breakpoint in DevTools or simply blackbox this script\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_data_array< Sub extends $mol_data_value >( sub : Sub ) {\n\n\t\treturn $mol_data_setup( ( val : readonly Parameters< Sub >[0][] | unknown ) => {\n\t\t\t\n\t\t\tif( !Array.isArray( val ) ) return $mol_fail( new $mol_data_error( `${ val } is not an array` ) )\n\t\t\t\n\t\t\treturn val.map( ( item , index )=> {\n\n\t\t\t\ttry {\n\t\t\t\t\treturn sub( item )\n\t\t\t\t} catch( error: any ) {\n\n\t\t\t\t\tif( 'then' in error ) return $mol_fail_hidden( error )\n\t\t\t\t\t\n\t\t\t\t\terror.message = `[${ index }] ${ error.message }`\n\t\t\t\t\treturn $mol_fail( error )\n\n\t\t\t\t}\n\n\t\t\t} ) as readonly ReturnType< Sub >[]\n\t\t\t\n\t\t} , sub )\n\n\t}\n\t\t\t\n}\n","namespace $ {\n\n\texport let $mol_data_boolean = ( val : boolean )=> {\n\t\t\n\t\tif( typeof val === 'boolean' ) return val\n\t\t\n\t\treturn $mol_fail( new $mol_data_error( `${ val } is not a boolean` ) )\n\t}\n\t\n}\n","namespace $ {\n\n\texport function $mol_data_const< Val extends {} | string | number >( ref : Val ) {\n\n\t\treturn $mol_data_setup( ( val : Val ) => {\n\t\t\t\n\t\t\tif( Object.is( val , ref ) ) return ref\n\t\t\t\n\t\t\treturn $mol_fail( new $mol_data_error( `${ val } is not ${ ref }` ) )\n\n\t\t} , ref )\n\n\t}\n\t\n}\n","namespace $ {\n\n\texport let $mol_data_string = ( val : string )=> {\n\t\t\n\t\tif( typeof val === 'string' ) return val\n\t\t\n\t\treturn $mol_fail( new $mol_data_error( `${ val } is not a string` ) )\n\t}\n\t\n}\n","namespace $ {\n\n\texport function $mol_data_pattern( pattern : RegExp ) {\n\n\t\treturn $mol_data_setup( ( val : string ) => {\n\n\t\t\tconst val2 = $mol_data_string( val )\n\t\t\tif( pattern.test( val2 ) ) return val2\n\t\t\t\n\t\t\treturn $mol_fail( new $mol_data_error( `${ val } is not a ${ pattern }` ) )\n\n\t\t} , pattern )\n\n\t}\n\t\t\t\t\t\n}\n","namespace $ {\n\n\texport let $mol_data_email = $mol_data_pattern( /.+@.+/ )\n\t\n}\n","namespace $ {\n\n\texport function $mol_data_enum<\n\t\tDict extends Record< number | string , number | string >\n\t>( name : string , dict : Dict ) {\n\n\t\ttype Value = Dict[ keyof Dict ]\n\n\t\tconst index = {} as Record< Value , keyof Dict >\n\n\t\tfor( let key in dict ) {\n\t\t\tif( Number.isNaN( Number( key ) ) ) {\n\t\t\t\tindex[ dict[ key ] ] = key\n\t\t\t}\n\t\t}\n\n\t\treturn $mol_data_setup( ( value : Value ) => {\n\n\t\t\tif ( typeof index[ value ] !== 'string' ) {\n\t\t\t\treturn $mol_fail( new $mol_data_error( `${value} is not value of ${name} enum` ) )\n\t\t\t}\n\n\t\t\treturn value\n\n\t\t} , { name , dict } )\n\n\t}\n\t\n}\n","namespace $ {\n\n\texport function $mol_data_instance< Instance extends new ( ... args : any[] )=> any >( Instance : Instance ) {\n\n\t\treturn $mol_data_setup( ( val : InstanceType< Instance > ) => {\n\n\t\t\tif( val as object instanceof Instance ) return val\n\t\t\t\n\t\t\treturn $mol_fail( new $mol_data_error( `${ val } is not a ${ Instance.name }` ) )\n\t\t\t\n\t\t} , Instance )\n\n\t}\n\t\t\t\t\t\n}\n","namespace $ {\n\n\texport let $mol_data_number = ( val : number )=> {\n\t\t\n\t\tif( typeof val === 'number' ) return val\n\t\t\n\t\treturn $mol_fail( new $mol_data_error( `${ val } is not a number` ) )\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\texport function $mol_data_integer( val : number ) {\n\n\t\tconst val2 = $mol_data_number( val )\n\t\tif( Math.floor( val2 ) === val2 ) return val2\n\t\t\n\t\treturn $mol_fail( new $mol_data_error( `${ val } is not an integer` ) )\n\t}\n\t\n}\n","namespace $ {\n\n\texport function $mol_data_nominal<\n\t\tNominal extends string ,\n\t\tSub extends $mol_data_value ,\n\t\tValue = ReturnType< Sub > & { $mol_data_nominal : Nominal } ,\n\t>(\n\t\tconfig : { [ key in Nominal ] : Sub }\n\t) : {\n\t\tValue : Value\n\t} & (\n\t\t( ... val : Parameters<Sub> )=> Value\n\t) {\n\n\t\tconst nominal = Object.keys( config )[0] as Nominal\n\t\treturn config[ nominal ] as any\n\t\t\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_data_nullable< Sub extends $mol_data_value >( sub : Sub ) {\n\n\t\treturn $mol_data_setup( ( val : Parameters<Sub>[0] | null ) => {\n\t\t\t\n\t\t\tif( val === null ) return null\n\t\t\t\n\t\t\treturn sub( val ) as ReturnType<Sub>\n\t\t\t\n\t\t} , sub )\n\n\t}\n\t\n}\n","namespace $ {\n\n\texport function $mol_data_optional<\n\t\tSub extends $mol_data_value,\n\t\tFallback extends undefined | ( ()=> ReturnType< Sub > )\n\t>( \n\t\tsub: Sub,\n\t\tfallback?: Fallback\n\t) {\n\n\t\treturn $mol_data_setup( ( val : Parameters<Sub>[0] | undefined ) => {\n\t\t\t\n\t\t\tif( val === undefined ) {\n\t\t\t\ttype Res = Fallback extends undefined ? undefined : ReturnType< Extract< Fallback, ()=> any > >\n\t\t\t\treturn fallback?.() as Res\n\t\t\t}\n\t\t\t\n\t\t\treturn sub( val ) as ReturnType<Sub>\n\t\t\t\n\t\t} , { sub, fallback } )\n\n\t}\n\t\n}\n",null,null,null,"namespace $ {\n\n\texport function $mol_data_record<\n\t\tSub extends Record< string , $mol_data_value< any > >\n\t>( sub : Sub ) {\n\n\t\ttype Input = $mol_type_partial_undefined<{\n\t\t\t[ key in keyof Sub ] : Parameters< Sub[key] >[0]\n\t\t}>\n\n\t\ttype Output = $mol_type_partial_undefined<{\n\t\t\t[ key in keyof Sub ] : ReturnType< Sub[key] >\n\t\t}>\n\n\t\treturn $mol_data_setup( ( val : Input | unknown ) => {\n\n\t\t\tlet res = {} as Output\n\t\t\t\n\t\t\tfor( const field in sub ) {\n\n\t\t\t\ttry {\n\t\t\t\t\tres[field] = sub[field]( ( val as Input )[ field ] )\n\t\t\t\t} catch( error: any ) {\n\n\t\t\t\t\tif( 'then' in error ) return $mol_fail_hidden( error )\n\t\t\t\t\t\n\t\t\t\t\terror.message = `[${ JSON.stringify( field ) }] ${ error.message }`\n\t\t\t\t\treturn $mol_fail( error )\n\n\t\t\t\t}\n\n\t\t\t}\n\t\t\t\n\t\t\treturn res as Readonly< Output >\n\t\t\t\n\t\t} , sub )\n\n\t}\n\t\n}\n","namespace $ {\n\n\texport function $mol_data_variant< Sub extends $mol_data_value[] >( ... sub : Sub ) {\n\n\t\treturn $mol_data_setup( ( val : Parameters< Sub[ number ] >[0] ) => {\n\t\t\t\n\t\t\tconst errors = [] as Error[]\n\t\t\t\n\t\t\tfor( const type of sub ) {\n\n\t\t\t\tlet hidden = $.$mol_fail_hidden\n\n\t\t\t\ttry {\n\n\t\t\t\t\t$.$mol_fail = $.$mol_fail_hidden\n\n\t\t\t\t\treturn type( val ) as ReturnType< Sub[ number ] >\n\n\t\t\t\t} catch ( error ) {\n\n\t\t\t\t\t$.$mol_fail = hidden\n\n\t\t\t\t\tif( error instanceof $mol_data_error ) {\n\t\t\t\t\t\terrors.push( error )\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn $mol_fail_hidden( error )\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t}\n\t\t\t\n\t\t\treturn $mol_fail( new $mol_data_error( `${val} is not any of variants` , ... errors ) )\n\n\t\t} , sub )\n\n\t}\n\t\n}\n",null,null,null,"namespace $ {\n\n\texport function $mol_func_is_class( func: Function ) {\n\t\treturn Object.getOwnPropertyDescriptor( func, 'prototype' )?.writable === false\n\t}\n\n}\n",null,null,"namespace $ {\n\n\ttype Guard_value<\n\t\tFuncs extends $mol_type_unary[] ,\n\t\tIndex extends keyof Funcs\n\t> = $mol_type_param<\n\t\tIndex extends keyof $mol_type_tail< Funcs >\n\t\t\t? $mol_type_tail< Funcs >[ Index ]\n\t\t\t: any ,\n\t\t0\n\t>\n\n\ttype Guard<\n\t\tFuncs extends $mol_type_unary[]\n\t> = {\n\t\t[ Index in keyof Funcs ] : (\n\t\t\tFuncs[Index] extends $mol_type_unary_func\n\t\t\t\t? (\n\t\t\t\t\tinput : $mol_type_param< Funcs[Index] , 0 >\n\t\t\t\t) => Guard_value< Funcs , Index >\n\t\t\t\t: new(\n\t\t\t\t\tinput : $mol_type_param< Funcs[Index] , 0 >\n\t\t\t\t) => Guard_value< Funcs , Index >\n\t\t)\n\t}\n\n\t/**\n\t * Combines list of unary functions/classes to one function.\n\t * \n\t * \tconst reparse = $mol_data_pipe( JSON.stringify , JSON.parse )\n\t **/\n\texport function $mol_data_pipe<\n\t\tFuncs extends $mol_type_unary[]\n\t>(\n\t\t... funcs : Funcs & Guard< Funcs >\n\t) {\n\n\t\treturn $mol_data_setup(\n\t\t\tfunction( this: any, input : $mol_type_param< Funcs[0] , 0 > ) {\n\t\t\t\tlet value : any = input\n\t\t\t\tfor( const func of funcs as any ) value = $mol_func_is_class( func ) ? new func( value ) : func.call( this, value )\n\t\t\t\treturn value as $mol_type_result<\n\t\t\t\t\t$mol_type_foot< Funcs >\n\t\t\t\t>\n\t\t\t},\n\t\t\t{ funcs }\n\t\t)\n\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_data_wrapper<\n\t\tPre extends $mol_data_value ,\n\t\tObj extends { new( val : ReturnType< Pre > ) : any } ,\n\t>( pre : Pre , Obj : Obj ) {\n\n\t\tconsole.warn( '$mol_data_wrapper is deparecated. Use $mol_data_pipe instead.' )\n\t\t\n\t\treturn $mol_data_setup(\n\t\t\t( val : Parameters< Pre >[0] ) => new Obj( pre( val ) ) as InstanceType< Obj > ,\n\t\t\t{ pre , Obj } ,\n\t\t)\n\n\t}\n\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../../mam.jam.js","-","../../../../mam.ts","../../value/value.ts","../../setup/mol/data/setup/setup.ts","../../../fail/mol/fail/fail.ts","../../../diff/path/mol/diff/path/path.ts","../../../error/mix/mol/error/mix/mix.ts","../../error/mol/data/error/error.ts","../../../fail/hidden/mol/fail/hidden/hidden.ts","../../array/mol/data/array/array.ts","../../boolean/mol/data/boolean/boolean.ts","../../const/mol/data/const/const.ts","../../string/mol/data/string/string.ts","../../pattern/mol/data/pattern/pattern.ts","../../email/mol/data/email/email.ts","../../enum/mol/data/enum/enum.ts","../../instance/mol/data/instance/instance.ts","../../number/mol/data/number/number.ts","../../integer/mol/data/integer/integer.ts","../../nominal/mol/data/nominal/nominal.ts","../../nullable/mol/data/nullable/nullable.ts","../../optional/mol/data/optional/optional.ts","../../../type/equals/equals.ts","../../../type/merge/merge.ts","../../../type/partial/undefined/undefined.ts","../../record/mol/data/record/record.ts","../../variant/mol/data/variant/variant.ts","../../../type/unary/unary.ts","../../../type/param/param.ts","../../../type/tail/tail.ts","../../../func/is/class/mol/func/is/class/class.ts","../../../type/result/result.ts","../../../type/foot/foot.ts","../../pipe/mol/data/pipe/pipe.ts","../../wrapper/mol/data/wrapper/wrapper.ts"],"names":[],"mappings":"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","file":"node.js","sourcesContent":[null,null,"Error.stackTraceLimit = 50;\n\ndeclare let _$_: { new(): {} } & typeof globalThis\ndeclare class $ extends _$_ {}\n\nnamespace $ {\n\texport type $ = typeof $$\n\texport declare class $$ extends $ {}\n\tnamespace $$ {\n\t\texport type $$ = $\n\t}\n}\n\nmodule.exports = $\n",null,"namespace $ {\n\n\texport function $mol_data_setup<\n\t\tValue extends $mol_data_value ,\n\t\tConfig = never\n\t>(\n\t\tvalue : Value ,\n\t\tconfig : Config ,\n\t) {\n\t\t\n\t\treturn Object.assign( value , {\n\t\t\tconfig ,\n\t\t\tValue : null as any as ReturnType< Value >\n\t\t} )\n\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_fail( error : any ) : never {\n\t\tthrow error\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_diff_path< Item >( ... paths : Item[][] ) {\n\n\t\tconst limit = Math.min( ... paths.map( path => path.length ) )\n\n\t\tlookup: for( var i = 0 ; i < limit ; ++i ) {\n\n\t\t\tconst first = paths[0][i]\n\n\t\t\tfor( let j = 1 ; j < paths.length ; ++j ) {\n\t\t\t\tif( paths[j][i] !== first ) break lookup\n\t\t\t}\n\n\t\t}\n\n\t\treturn {\n\t\t\tprefix : paths[0].slice( 0 , i ) ,\n\t\t\tsuffix : paths.map( path => path.slice( i ) ) ,\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\n\texport class $mol_error_mix extends Error {\n\n\t\terrors : Error[]\n\n\t\tconstructor( message : string , ... errors : Error[] ) {\n\n\t\t\tsuper( message )\n\t\t\t\n\t\t\tthis.errors = errors\n\n\t\t\tif( errors.length ) {\n\n\t\t\t\tconst stacks = [ ... errors.map( error => error.stack ) , this.stack ]\n\t\t\t\t\n\t\t\t\tconst diff = $mol_diff_path( ... stacks.map( stack => {\n\t\t\t\t\tif( !stack ) return []\n\t\t\t\t\treturn stack.split( '\\n' ).reverse()\n\t\t\t\t} ) )\n\t\t\t\t\n\t\t\t\tconst head = diff.prefix.reverse().join( '\\n' )\n\t\t\t\tconst tails = diff.suffix.map( path => path.reverse().map( line => line.replace( /^(?!\\s+at)/ , '\\tat (.) ' ) ).join( '\\n' ) ).join( '\\n\\tat (.) -----\\n' )\n\n\t\t\t\tthis.stack = `Error: ${ this.constructor.name }\\n\\tat (.) /\"\"\"\\\\\\n${ tails }\\n\\tat (.) \\\\___/\\n${ head }`\n\t\t\t\tthis.message += errors.map( error => '\\n' + error.message ).join( '' )\n\n\t\t\t}\n\n\t\t}\n\n\t\ttoJSON() {\n\t\t\treturn this.message\n\t\t}\n\n\t}\n\n}\n","namespace $ {\n\n\texport class $mol_data_error extends $mol_error_mix {}\n\n}\n","namespace $ {\n\n\texport function $mol_fail_hidden( error : any ) : never {\n\t\tthrow error /// Use 'Never Pause Here' breakpoint in DevTools or simply blackbox this script\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_data_array< Sub extends $mol_data_value >( sub : Sub ) {\n\n\t\treturn $mol_data_setup( ( val : readonly Parameters< Sub >[0][] | unknown ) => {\n\t\t\t\n\t\t\tif( !Array.isArray( val ) ) return $mol_fail( new $mol_data_error( `${ val } is not an array` ) )\n\t\t\t\n\t\t\treturn val.map( ( item , index )=> {\n\n\t\t\t\ttry {\n\t\t\t\t\treturn sub( item )\n\t\t\t\t} catch( error: any ) {\n\n\t\t\t\t\tif( error instanceof Promise ) return $mol_fail_hidden( error )\n\t\t\t\t\t\n\t\t\t\t\terror.message = `[${ index }] ${ error.message }`\n\t\t\t\t\treturn $mol_fail( error )\n\n\t\t\t\t}\n\n\t\t\t} ) as readonly ReturnType< Sub >[]\n\t\t\t\n\t\t} , sub )\n\n\t}\n\t\t\t\n}\n","namespace $ {\n\n\texport let $mol_data_boolean = ( val : boolean )=> {\n\t\t\n\t\tif( typeof val === 'boolean' ) return val\n\t\t\n\t\treturn $mol_fail( new $mol_data_error( `${ val } is not a boolean` ) )\n\t}\n\t\n}\n","namespace $ {\n\n\texport function $mol_data_const< Val extends {} | string | number >( ref : Val ) {\n\n\t\treturn $mol_data_setup( ( val : Val ) => {\n\t\t\t\n\t\t\tif( Object.is( val , ref ) ) return ref\n\t\t\t\n\t\t\treturn $mol_fail( new $mol_data_error( `${ val } is not ${ ref }` ) )\n\n\t\t} , ref )\n\n\t}\n\t\n}\n","namespace $ {\n\n\texport let $mol_data_string = ( val : string )=> {\n\t\t\n\t\tif( typeof val === 'string' ) return val\n\t\t\n\t\treturn $mol_fail( new $mol_data_error( `${ val } is not a string` ) )\n\t}\n\t\n}\n","namespace $ {\n\n\texport function $mol_data_pattern( pattern : RegExp ) {\n\n\t\treturn $mol_data_setup( ( val : string ) => {\n\n\t\t\tconst val2 = $mol_data_string( val )\n\t\t\tif( pattern.test( val2 ) ) return val2\n\t\t\t\n\t\t\treturn $mol_fail( new $mol_data_error( `${ val } is not a ${ pattern }` ) )\n\n\t\t} , pattern )\n\n\t}\n\t\t\t\t\t\n}\n","namespace $ {\n\n\texport let $mol_data_email = $mol_data_pattern( /.+@.+/ )\n\t\n}\n","namespace $ {\n\n\texport function $mol_data_enum<\n\t\tDict extends Record< number | string , number | string >\n\t>( name : string , dict : Dict ) {\n\n\t\ttype Value = Dict[ keyof Dict ]\n\n\t\tconst index = {} as Record< Value , keyof Dict >\n\n\t\tfor( let key in dict ) {\n\t\t\tif( Number.isNaN( Number( key ) ) ) {\n\t\t\t\tindex[ dict[ key ] ] = key\n\t\t\t}\n\t\t}\n\n\t\treturn $mol_data_setup( ( value : Value ) => {\n\n\t\t\tif ( typeof index[ value ] !== 'string' ) {\n\t\t\t\treturn $mol_fail( new $mol_data_error( `${value} is not value of ${name} enum` ) )\n\t\t\t}\n\n\t\t\treturn value\n\n\t\t} , { name , dict } )\n\n\t}\n\t\n}\n","namespace $ {\n\n\texport function $mol_data_instance< Instance extends new ( ... args : any[] )=> any >( Instance : Instance ) {\n\n\t\treturn $mol_data_setup( ( val : InstanceType< Instance > ) => {\n\n\t\t\tif( val as object instanceof Instance ) return val\n\t\t\t\n\t\t\treturn $mol_fail( new $mol_data_error( `${ val } is not a ${ Instance.name }` ) )\n\t\t\t\n\t\t} , Instance )\n\n\t}\n\t\t\t\t\t\n}\n","namespace $ {\n\n\texport let $mol_data_number = ( val : number )=> {\n\t\t\n\t\tif( typeof val === 'number' ) return val\n\t\t\n\t\treturn $mol_fail( new $mol_data_error( `${ val } is not a number` ) )\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\texport function $mol_data_integer( val : number ) {\n\n\t\tconst val2 = $mol_data_number( val )\n\t\tif( Math.floor( val2 ) === val2 ) return val2\n\t\t\n\t\treturn $mol_fail( new $mol_data_error( `${ val } is not an integer` ) )\n\t}\n\t\n}\n","namespace $ {\n\n\texport function $mol_data_nominal<\n\t\tNominal extends string ,\n\t\tSub extends $mol_data_value ,\n\t\tValue = ReturnType< Sub > & { $mol_data_nominal : Nominal } ,\n\t>(\n\t\tconfig : { [ key in Nominal ] : Sub }\n\t) : {\n\t\tValue : Value\n\t} & (\n\t\t( ... val : Parameters<Sub> )=> Value\n\t) {\n\n\t\tconst nominal = Object.keys( config )[0] as Nominal\n\t\treturn config[ nominal ] as any\n\t\t\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_data_nullable< Sub extends $mol_data_value >( sub : Sub ) {\n\n\t\treturn $mol_data_setup( ( val : Parameters<Sub>[0] | null ) => {\n\t\t\t\n\t\t\tif( val === null ) return null\n\t\t\t\n\t\t\treturn sub( val ) as ReturnType<Sub>\n\t\t\t\n\t\t} , sub )\n\n\t}\n\t\n}\n","namespace $ {\n\n\texport function $mol_data_optional<\n\t\tSub extends $mol_data_value,\n\t\tFallback extends undefined | ( ()=> ReturnType< Sub > )\n\t>( \n\t\tsub: Sub,\n\t\tfallback?: Fallback\n\t) {\n\n\t\treturn $mol_data_setup( ( val : Parameters<Sub>[0] | undefined ) => {\n\t\t\t\n\t\t\tif( val === undefined ) {\n\t\t\t\ttype Res = Fallback extends undefined ? undefined : ReturnType< Extract< Fallback, ()=> any > >\n\t\t\t\treturn fallback?.() as Res\n\t\t\t}\n\t\t\t\n\t\t\treturn sub( val ) as ReturnType<Sub>\n\t\t\t\n\t\t} , { sub, fallback } )\n\n\t}\n\t\n}\n",null,null,null,"namespace $ {\n\n\texport function $mol_data_record<\n\t\tSub extends Record< string , $mol_data_value< any > >\n\t>( sub : Sub ) {\n\n\t\ttype Input = $mol_type_partial_undefined<{\n\t\t\t[ key in keyof Sub ] : Parameters< Sub[key] >[0]\n\t\t}>\n\n\t\ttype Output = $mol_type_partial_undefined<{\n\t\t\t[ key in keyof Sub ] : ReturnType< Sub[key] >\n\t\t}>\n\n\t\treturn $mol_data_setup( ( val : Input | unknown ) => {\n\n\t\t\tlet res = {} as Output\n\t\t\t\n\t\t\tfor( const field in sub ) {\n\n\t\t\t\ttry {\n\t\t\t\t\tres[field] = sub[field]( ( val as Input )[ field ] )\n\t\t\t\t} catch( error: any ) {\n\n\t\t\t\t\tif( error instanceof Promise ) return $mol_fail_hidden( error )\n\t\t\t\t\t\n\t\t\t\t\terror.message = `[${ JSON.stringify( field ) }] ${ error.message }`\n\t\t\t\t\treturn $mol_fail( error )\n\n\t\t\t\t}\n\n\t\t\t}\n\t\t\t\n\t\t\treturn res as Readonly< Output >\n\t\t\t\n\t\t} , sub )\n\n\t}\n\t\n}\n","namespace $ {\n\n\texport function $mol_data_variant< Sub extends $mol_data_value[] >( ... sub : Sub ) {\n\n\t\treturn $mol_data_setup( ( val : Parameters< Sub[ number ] >[0] ) => {\n\t\t\t\n\t\t\tconst errors = [] as Error[]\n\t\t\t\n\t\t\tfor( const type of sub ) {\n\n\t\t\t\tlet hidden = $.$mol_fail_hidden\n\n\t\t\t\ttry {\n\n\t\t\t\t\t$.$mol_fail = $.$mol_fail_hidden\n\n\t\t\t\t\treturn type( val ) as ReturnType< Sub[ number ] >\n\n\t\t\t\t} catch ( error ) {\n\n\t\t\t\t\t$.$mol_fail = hidden\n\n\t\t\t\t\tif( error instanceof $mol_data_error ) {\n\t\t\t\t\t\terrors.push( error )\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn $mol_fail_hidden( error )\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t}\n\t\t\t\n\t\t\treturn $mol_fail( new $mol_data_error( `${val} is not any of variants` , ... errors ) )\n\n\t\t} , sub )\n\n\t}\n\t\n}\n",null,null,null,"namespace $ {\n\n\texport function $mol_func_is_class( func: Function ) {\n\t\treturn Object.getOwnPropertyDescriptor( func, 'prototype' )?.writable === false\n\t}\n\n}\n",null,null,"namespace $ {\n\n\ttype Guard_value<\n\t\tFuncs extends $mol_type_unary[] ,\n\t\tIndex extends keyof Funcs\n\t> = $mol_type_param<\n\t\tIndex extends keyof $mol_type_tail< Funcs >\n\t\t\t? $mol_type_tail< Funcs >[ Index ]\n\t\t\t: any ,\n\t\t0\n\t>\n\n\ttype Guard<\n\t\tFuncs extends $mol_type_unary[]\n\t> = {\n\t\t[ Index in keyof Funcs ] : (\n\t\t\tFuncs[Index] extends $mol_type_unary_func\n\t\t\t\t? (\n\t\t\t\t\tinput : $mol_type_param< Funcs[Index] , 0 >\n\t\t\t\t) => Guard_value< Funcs , Index >\n\t\t\t\t: new(\n\t\t\t\t\tinput : $mol_type_param< Funcs[Index] , 0 >\n\t\t\t\t) => Guard_value< Funcs , Index >\n\t\t)\n\t}\n\n\t/**\n\t * Combines list of unary functions/classes to one function.\n\t * \n\t * \tconst reparse = $mol_data_pipe( JSON.stringify , JSON.parse )\n\t **/\n\texport function $mol_data_pipe<\n\t\tFuncs extends $mol_type_unary[]\n\t>(\n\t\t... funcs : Funcs & Guard< Funcs >\n\t) {\n\n\t\treturn $mol_data_setup(\n\t\t\tfunction( this: any, input : $mol_type_param< Funcs[0] , 0 > ) {\n\t\t\t\tlet value : any = input\n\t\t\t\tfor( const func of funcs as any ) value = $mol_func_is_class( func ) ? new func( value ) : func.call( this, value )\n\t\t\t\treturn value as $mol_type_result<\n\t\t\t\t\t$mol_type_foot< Funcs >\n\t\t\t\t>\n\t\t\t},\n\t\t\t{ funcs }\n\t\t)\n\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_data_wrapper<\n\t\tPre extends $mol_data_value ,\n\t\tObj extends { new( val : ReturnType< Pre > ) : any } ,\n\t>( pre : Pre , Obj : Obj ) {\n\n\t\tconsole.warn( '$mol_data_wrapper is deparecated. Use $mol_data_pipe instead.' )\n\t\t\n\t\treturn $mol_data_setup(\n\t\t\t( val : Parameters< Pre >[0] ) => new Obj( pre( val ) ) as InstanceType< Obj > ,\n\t\t\t{ pre , Obj } ,\n\t\t)\n\n\t}\n\n}\n"]}
|