mol_data_all 1.1.208 → 1.1.212

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.esm.js CHANGED
@@ -24,13 +24,13 @@ var $;
24
24
  (function ($) {
25
25
  })($ || ($ = {}));
26
26
  module.exports = $;
27
- //mam.js.map
27
+ //mam.ts
28
28
  ;
29
29
 
30
- $node[ "../mam" ] = $node[ "../mam.js" ] = module.exports }.call( {} , {} )
30
+ $node[ "../mam.ts" ] = $node[ "../mam.ts" ] = module.exports }.call( {} , {} )
31
31
  ;
32
32
  "use strict";
33
- //value.js.map
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.js.map
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.js.map
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.js.map
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 = $.$mol_diff_path(...stacks.map(stack => {
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.js.map
106
+ //mol/error/mix/mix.ts
107
107
  ;
108
108
  "use strict";
109
109
  var $;
110
110
  (function ($) {
111
- class $mol_data_error extends $.$mol_error_mix {
111
+ class $mol_data_error extends $mol_error_mix {
112
112
  }
113
113
  $.$mol_data_error = $mol_data_error;
114
114
  })($ || ($ = {}));
115
- //error.js.map
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.js.map
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 $.$mol_data_setup((val) => {
131
+ return $mol_data_setup((val) => {
132
132
  if (!Array.isArray(val))
133
- return $.$mol_fail(new $.$mol_data_error(`${val} is not an array`));
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 ('then' in error)
140
- return $.$mol_fail_hidden(error);
139
+ if (error instanceof Promise)
140
+ return $mol_fail_hidden(error);
141
141
  error.message = `[${index}] ${error.message}`;
142
- return $.$mol_fail(error);
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.js.map
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 $.$mol_fail(new $.$mol_data_error(`${val} is not a boolean`));
157
+ return $mol_fail(new $mol_data_error(`${val} is not a boolean`));
158
158
  };
159
159
  })($ || ($ = {}));
160
- //boolean.js.map
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 $.$mol_data_setup((val) => {
166
+ return $mol_data_setup((val) => {
167
167
  if (Object.is(val, ref))
168
168
  return ref;
169
- return $.$mol_fail(new $.$mol_data_error(`${val} is not ${ref}`));
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.js.map
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 $.$mol_fail(new $.$mol_data_error(`${val} is not a string`));
182
+ return $mol_fail(new $mol_data_error(`${val} is not a string`));
183
183
  };
184
184
  })($ || ($ = {}));
185
- //string.js.map
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 $.$mol_data_setup((val) => {
192
- const val2 = $.$mol_data_string(val);
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 $.$mol_fail(new $.$mol_data_error(`${val} is not a ${pattern}`));
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.js.map
200
+ //mol/data/pattern/pattern.ts
201
201
  ;
202
202
  "use strict";
203
203
  var $;
204
204
  (function ($) {
205
- $.$mol_data_email = $.$mol_data_pattern(/.+@.+/);
205
+ $.$mol_data_email = $mol_data_pattern(/.+@.+/);
206
206
  })($ || ($ = {}));
207
- //email.js.map
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 $.$mol_data_setup((value) => {
219
+ return $mol_data_setup((value) => {
220
220
  if (typeof index[value] !== 'string') {
221
- return $.$mol_fail(new $.$mol_data_error(`${value} is not value of ${name} enum`));
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.js.map
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 $.$mol_data_setup((val) => {
234
+ return $mol_data_setup((val) => {
235
235
  if (val instanceof Instance)
236
236
  return val;
237
- return $.$mol_fail(new $.$mol_data_error(`${val} is not a ${Instance.name}`));
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.js.map
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 $.$mol_fail(new $.$mol_data_error(`${val} is not a number`));
250
+ return $mol_fail(new $mol_data_error(`${val} is not a number`));
251
251
  };
252
252
  })($ || ($ = {}));
253
- //number.js.map
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 = $.$mol_data_number(val);
259
+ const val2 = $mol_data_number(val);
260
260
  if (Math.floor(val2) === val2)
261
261
  return val2;
262
- return $.$mol_fail(new $.$mol_data_error(`${val} is not an integer`));
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.js.map
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.js.map
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 $.$mol_data_setup((val) => {
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.js.map
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 $.$mol_data_setup((val) => {
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.js.map
306
+ //mol/data/optional/optional.ts
307
307
  ;
308
308
  "use strict";
309
- //equals.js.map
309
+ //mol/type/equals/equals.ts
310
310
  ;
311
311
  "use strict";
312
- //merge.js.map
312
+ //mol/type/merge/merge.ts
313
313
  ;
314
314
  "use strict";
315
- //undefined.js.map
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 $.$mol_data_setup((val) => {
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 ('then' in error)
329
- return $.$mol_fail_hidden(error);
328
+ if (error instanceof Promise)
329
+ return $mol_fail_hidden(error);
330
330
  error.message = `[${JSON.stringify(field)}] ${error.message}`;
331
- return $.$mol_fail(error);
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.js.map
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 $.$mol_data_setup((val) => {
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 $.$mol_data_error) {
355
+ if (error instanceof $mol_data_error) {
356
356
  errors.push(error);
357
357
  }
358
358
  else {
359
- return $.$mol_fail_hidden(error);
359
+ return $mol_fail_hidden(error);
360
360
  }
361
361
  }
362
362
  }
363
- return $.$mol_fail(new $.$mol_data_error(`${val} is not any of variants`, ...errors));
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.js.map
368
+ //mol/data/variant/variant.ts
369
369
  ;
370
370
  "use strict";
371
- //unary.js.map
371
+ //mol/type/unary/unary.ts
372
372
  ;
373
373
  "use strict";
374
- //param.js.map
374
+ //mol/type/param/param.ts
375
375
  ;
376
376
  "use strict";
377
- //tail.js.map
377
+ //mol/type/tail/tail.ts
378
378
  ;
379
379
  "use strict";
380
380
  var $;
@@ -384,39 +384,39 @@ var $;
384
384
  }
385
385
  $.$mol_func_is_class = $mol_func_is_class;
386
386
  })($ || ($ = {}));
387
- //class.js.map
387
+ //mol/func/is/class/class.ts
388
388
  ;
389
389
  "use strict";
390
- //result.js.map
390
+ //mol/type/result/result.ts
391
391
  ;
392
392
  "use strict";
393
- //foot.js.map
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 $.$mol_data_setup(function (input) {
399
+ return $mol_data_setup(function (input) {
400
400
  let value = input;
401
401
  for (const func of funcs)
402
- value = $.$mol_func_is_class(func) ? new func(value) : func.call(this, 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.js.map
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 $.$mol_data_setup((val) => new Obj(pre(val)), { pre, Obj });
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.js.map
419
+ //mol/data/wrapper/wrapper.ts
420
420
  ;
421
421
  export default $
422
422
  //# sourceMappingURL=node.esm.js.map
package/node.esm.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":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACbA;AACA;AACA;AACA;;ACHA,KAAK,CAAC,eAAe,GAAG,EAAE,CAAC;AAK3B,IAAU,CAAC,CAMV;AAND,WAAU,CAAC;AAMX,CAAC,EANS,CAAC,KAAD,CAAC,QAMV;AAED,MAAM,CAAC,OAAO,GAAG,CAAC,CAAA;;;ADblB;AACA;AACA;AEFA;AACA;AACA;;ACFA,IAAU,CAAC,CAiBV;AAjBD,WAAU,CAAC;IAEV,SAAgB,eAAe,CAI9B,KAAa,EACb,MAAe;QAGf,OAAO,MAAM,CAAC,MAAM,CAAE,KAAK,EAAG;YAC7B,MAAM;YACN,KAAK,EAAG,IAAkC;SAC1C,CAAE,CAAA;IAEJ,CAAC;IAbe,iBAAe,kBAa9B,CAAA;AAEF,CAAC,EAjBS,CAAC,KAAD,CAAC,QAiBV;;;;ACjBD,IAAU,CAAC,CAMV;AAND,WAAU,CAAC;IAEV,SAAgB,SAAS,CAAE,KAAW;QACrC,MAAM,KAAK,CAAA;IACZ,CAAC;IAFe,WAAS,YAExB,CAAA;AAEF,CAAC,EANS,CAAC,KAAD,CAAC,QAMV;;;;ACND,IAAU,CAAC,CAuBV;AAvBD,WAAU,CAAC;IAEV,SAAgB,cAAc,CAAU,GAAI,KAAgB;QAE3D,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAE,GAAI,KAAK,CAAC,GAAG,CAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAE,CAAE,CAAA;QAE9D,MAAM,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAG,CAAC,GAAG,KAAK,EAAG,EAAE,CAAC,EAAG;YAE1C,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAEzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAG,CAAC,GAAG,KAAK,CAAC,MAAM,EAAG,EAAE,CAAC,EAAG;gBACzC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK;oBAAG,MAAM,MAAM,CAAA;aACxC;SAED;QAED,OAAO;YACN,MAAM,EAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAE,CAAC,EAAG,CAAC,CAAE;YAChC,MAAM,EAAG,KAAK,CAAC,GAAG,CAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAE,CAAC,CAAE,CAAE;SAC7C,CAAA;IAEF,CAAC;IAnBe,gBAAc,iBAmB7B,CAAA;AAEF,CAAC,EAvBS,CAAC,KAAD,CAAC,QAuBV;;;;ACvBD,IAAU,CAAC,CAqCV;AArCD,WAAU,CAAC;IAEV,MAAa,cAAe,SAAQ,KAAK;QAExC,MAAM,CAAU;QAEhB,YAAa,OAAgB,EAAG,GAAI,MAAgB;YAEnD,KAAK,CAAE,OAAO,CAAE,CAAA;YAEhB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;YAEpB,IAAI,MAAM,CAAC,MAAM,EAAG;gBAEnB,MAAM,MAAM,GAAG,CAAE,GAAI,MAAM,CAAC,GAAG,CAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAE,EAAG,IAAI,CAAC,KAAK,CAAE,CAAA;gBAEtE,MAAM,IAAI,GAAG,EAAA,cAAc,CAAE,GAAI,MAAM,CAAC,GAAG,CAAE,KAAK,CAAC,EAAE;oBACpD,IAAI,CAAC,KAAK;wBAAG,OAAO,EAAE,CAAA;oBACtB,OAAO,KAAK,CAAC,KAAK,CAAE,IAAI,CAAE,CAAC,OAAO,EAAE,CAAA;gBACrC,CAAC,CAAE,CAAE,CAAA;gBAEL,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,CAAE,IAAI,CAAE,CAAA;gBAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,CAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAE,YAAY,EAAG,WAAW,CAAE,CAAE,CAAC,IAAI,CAAE,IAAI,CAAE,CAAE,CAAC,IAAI,CAAE,oBAAoB,CAAE,CAAA;gBAE3J,IAAI,CAAC,KAAK,GAAG,UAAW,IAAI,CAAC,WAAW,CAAC,IAAK,sBAAuB,KAAM,sBAAuB,IAAK,EAAE,CAAA;gBACzG,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,GAAG,CAAE,KAAK,CAAC,EAAE,CAAC,IAAI,GAAG,KAAK,CAAC,OAAO,CAAE,CAAC,IAAI,CAAE,EAAE,CAAE,CAAA;aAEtE;QAEF,CAAC;QAED,MAAM;YACL,OAAO,IAAI,CAAC,OAAO,CAAA;QACpB,CAAC;KAED;IAjCY,gBAAc,iBAiC1B,CAAA;AAEF,CAAC,EArCS,CAAC,KAAD,CAAC,QAqCV;;;;ACrCD,IAAU,CAAC,CAIV;AAJD,WAAU,CAAC;IAEV,MAAa,eAAgB,SAAQ,EAAA,cAAc;KAAG;IAAzC,iBAAe,kBAA0B,CAAA;AAEvD,CAAC,EAJS,CAAC,KAAD,CAAC,QAIV;;;;ACJD,IAAU,CAAC,CAMV;AAND,WAAU,CAAC;IAEV,SAAgB,gBAAgB,CAAE,KAAW;QAC5C,MAAM,KAAK,CAAA;IACZ,CAAC;IAFe,kBAAgB,mBAE/B,CAAA;AAEF,CAAC,EANS,CAAC,KAAD,CAAC,QAMV;;;;ACND,IAAU,CAAC,CA2BV;AA3BD,WAAU,CAAC;IAEV,SAAgB,eAAe,CAAiC,GAAS;QAExE,OAAO,EAAA,eAAe,CAAE,CAAE,GAA+C,EAAG,EAAE;YAE7E,IAAI,CAAC,KAAK,CAAC,OAAO,CAAE,GAAG,CAAE;gBAAG,OAAO,EAAA,SAAS,CAAE,IAAI,EAAA,eAAe,CAAE,GAAI,GAAI,kBAAkB,CAAE,CAAE,CAAA;YAEjG,OAAO,GAAG,CAAC,GAAG,CAAE,CAAE,IAAI,EAAG,KAAK,EAAE,EAAE;gBAEjC,IAAI;oBACH,OAAO,GAAG,CAAE,IAAI,CAAE,CAAA;iBAClB;gBAAC,OAAO,KAAU,EAAG;oBAErB,IAAI,MAAM,IAAI,KAAK;wBAAG,OAAO,EAAA,gBAAgB,CAAE,KAAK,CAAE,CAAA;oBAEtD,KAAK,CAAC,OAAO,GAAG,IAAK,KAAM,KAAM,KAAK,CAAC,OAAQ,EAAE,CAAA;oBACjD,OAAO,EAAA,SAAS,CAAE,KAAK,CAAE,CAAA;iBAEzB;YAEF,CAAC,CAAkC,CAAA;QAEpC,CAAC,EAAG,GAAG,CAAE,CAAA;IAEV,CAAC;IAvBe,iBAAe,kBAuB9B,CAAA;AAEF,CAAC,EA3BS,CAAC,KAAD,CAAC,QA2BV;;;;AC3BD,IAAU,CAAC,CASV;AATD,WAAU,CAAC;IAEC,mBAAiB,GAAG,CAAE,GAAa,EAAE,EAAE;QAEjD,IAAI,OAAO,GAAG,KAAK,SAAS;YAAG,OAAO,GAAG,CAAA;QAEzC,OAAO,EAAA,SAAS,CAAE,IAAI,EAAA,eAAe,CAAE,GAAI,GAAI,mBAAmB,CAAE,CAAE,CAAA;IACvE,CAAC,CAAA;AAEF,CAAC,EATS,CAAC,KAAD,CAAC,QASV;;;;ACTD,IAAU,CAAC,CAcV;AAdD,WAAU,CAAC;IAEV,SAAgB,eAAe,CAAsC,GAAS;QAE7E,OAAO,EAAA,eAAe,CAAE,CAAE,GAAS,EAAG,EAAE;YAEvC,IAAI,MAAM,CAAC,EAAE,CAAE,GAAG,EAAG,GAAG,CAAE;gBAAG,OAAO,GAAG,CAAA;YAEvC,OAAO,EAAA,SAAS,CAAE,IAAI,EAAA,eAAe,CAAE,GAAI,GAAI,WAAY,GAAI,EAAE,CAAE,CAAE,CAAA;QAEtE,CAAC,EAAG,GAAG,CAAE,CAAA;IAEV,CAAC;IAVe,iBAAe,kBAU9B,CAAA;AAEF,CAAC,EAdS,CAAC,KAAD,CAAC,QAcV;;;;ACdD,IAAU,CAAC,CASV;AATD,WAAU,CAAC;IAEC,kBAAgB,GAAG,CAAE,GAAY,EAAE,EAAE;QAE/C,IAAI,OAAO,GAAG,KAAK,QAAQ;YAAG,OAAO,GAAG,CAAA;QAExC,OAAO,EAAA,SAAS,CAAE,IAAI,EAAA,eAAe,CAAE,GAAI,GAAI,kBAAkB,CAAE,CAAE,CAAA;IACtE,CAAC,CAAA;AAEF,CAAC,EATS,CAAC,KAAD,CAAC,QASV;;;;ACTD,IAAU,CAAC,CAeV;AAfD,WAAU,CAAC;IAEV,SAAgB,iBAAiB,CAAE,OAAgB;QAElD,OAAO,EAAA,eAAe,CAAE,CAAE,GAAY,EAAG,EAAE;YAE1C,MAAM,IAAI,GAAG,EAAA,gBAAgB,CAAE,GAAG,CAAE,CAAA;YACpC,IAAI,OAAO,CAAC,IAAI,CAAE,IAAI,CAAE;gBAAG,OAAO,IAAI,CAAA;YAEtC,OAAO,EAAA,SAAS,CAAE,IAAI,EAAA,eAAe,CAAE,GAAI,GAAI,aAAc,OAAQ,EAAE,CAAE,CAAE,CAAA;QAE5E,CAAC,EAAG,OAAO,CAAE,CAAA;IAEd,CAAC;IAXe,mBAAiB,oBAWhC,CAAA;AAEF,CAAC,EAfS,CAAC,KAAD,CAAC,QAeV;;;;ACfD,IAAU,CAAC,CAIV;AAJD,WAAU,CAAC;IAEC,iBAAe,GAAG,EAAA,iBAAiB,CAAE,OAAO,CAAE,CAAA;AAE1D,CAAC,EAJS,CAAC,KAAD,CAAC,QAIV;;;;ACJD,IAAU,CAAC,CA4BV;AA5BD,WAAU,CAAC;IAEV,SAAgB,cAAc,CAE3B,IAAa,EAAG,IAAW;QAI7B,MAAM,KAAK,GAAG,EAAkC,CAAA;QAEhD,KAAK,IAAI,GAAG,IAAI,IAAI,EAAG;YACtB,IAAI,MAAM,CAAC,KAAK,CAAE,MAAM,CAAE,GAAG,CAAE,CAAE,EAAG;gBACnC,KAAK,CAAE,IAAI,CAAE,GAAG,CAAE,CAAE,GAAG,GAAG,CAAA;aAC1B;SACD;QAED,OAAO,EAAA,eAAe,CAAE,CAAE,KAAa,EAAG,EAAE;YAE3C,IAAK,OAAO,KAAK,CAAE,KAAK,CAAE,KAAK,QAAQ,EAAG;gBACzC,OAAO,EAAA,SAAS,CAAE,IAAI,EAAA,eAAe,CAAE,GAAG,KAAK,oBAAoB,IAAI,OAAO,CAAE,CAAE,CAAA;aAClF;YAED,OAAO,KAAK,CAAA;QAEb,CAAC,EAAG,EAAE,IAAI,EAAG,IAAI,EAAE,CAAE,CAAA;IAEtB,CAAC;IAxBe,gBAAc,iBAwB7B,CAAA;AAEF,CAAC,EA5BS,CAAC,KAAD,CAAC,QA4BV;;;;AC5BD,IAAU,CAAC,CAcV;AAdD,WAAU,CAAC;IAEV,SAAgB,kBAAkB,CAAqD,QAAmB;QAEzG,OAAO,EAAA,eAAe,CAAE,CAAE,GAA8B,EAAG,EAAE;YAE5D,IAAI,GAAa,YAAY,QAAQ;gBAAG,OAAO,GAAG,CAAA;YAElD,OAAO,EAAA,SAAS,CAAE,IAAI,EAAA,eAAe,CAAE,GAAI,GAAI,aAAc,QAAQ,CAAC,IAAK,EAAE,CAAE,CAAE,CAAA;QAElF,CAAC,EAAG,QAAQ,CAAE,CAAA;IAEf,CAAC;IAVe,oBAAkB,qBAUjC,CAAA;AAEF,CAAC,EAdS,CAAC,KAAD,CAAC,QAcV;;;;ACdD,IAAU,CAAC,CAUV;AAVD,WAAU,CAAC;IAEC,kBAAgB,GAAG,CAAE,GAAY,EAAE,EAAE;QAE/C,IAAI,OAAO,GAAG,KAAK,QAAQ;YAAG,OAAO,GAAG,CAAA;QAExC,OAAO,EAAA,SAAS,CAAE,IAAI,EAAA,eAAe,CAAE,GAAI,GAAI,kBAAkB,CAAE,CAAE,CAAA;IAEtE,CAAC,CAAA;AAEF,CAAC,EAVS,CAAC,KAAD,CAAC,QAUV;;;;ACVD,IAAU,CAAC,CAUV;AAVD,WAAU,CAAC;IAEV,SAAgB,iBAAiB,CAAE,GAAY;QAE9C,MAAM,IAAI,GAAG,EAAA,gBAAgB,CAAE,GAAG,CAAE,CAAA;QACpC,IAAI,IAAI,CAAC,KAAK,CAAE,IAAI,CAAE,KAAK,IAAI;YAAG,OAAO,IAAI,CAAA;QAE7C,OAAO,EAAA,SAAS,CAAE,IAAI,EAAA,eAAe,CAAE,GAAI,GAAI,oBAAoB,CAAE,CAAE,CAAA;IACxE,CAAC;IANe,mBAAiB,oBAMhC,CAAA;AAEF,CAAC,EAVS,CAAC,KAAD,CAAC,QAUV;;;;ACVD,IAAU,CAAC,CAmBV;AAnBD,WAAU,CAAC;IAEV,SAAgB,iBAAiB,CAKhC,MAAqC;QAOrC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAE,MAAM,CAAE,CAAC,CAAC,CAAY,CAAA;QACnD,OAAO,MAAM,CAAE,OAAO,CAAS,CAAA;IAEhC,CAAC;IAfe,mBAAiB,oBAehC,CAAA;AAEF,CAAC,EAnBS,CAAC,KAAD,CAAC,QAmBV;;;;ACnBD,IAAU,CAAC,CAcV;AAdD,WAAU,CAAC;IAEV,SAAgB,kBAAkB,CAAiC,GAAS;QAE3E,OAAO,EAAA,eAAe,CAAE,CAAE,GAA+B,EAAG,EAAE;YAE7D,IAAI,GAAG,KAAK,IAAI;gBAAG,OAAO,IAAI,CAAA;YAE9B,OAAO,GAAG,CAAE,GAAG,CAAqB,CAAA;QAErC,CAAC,EAAG,GAAG,CAAE,CAAA;IAEV,CAAC;IAVe,oBAAkB,qBAUjC,CAAA;AAEF,CAAC,EAdS,CAAC,KAAD,CAAC,QAcV;;;;ACdD,IAAU,CAAC,CAuBV;AAvBD,WAAU,CAAC;IAEV,SAAgB,kBAAkB,CAIjC,GAAQ,EACR,QAAmB;QAGnB,OAAO,EAAA,eAAe,CAAE,CAAE,GAAoC,EAAG,EAAE;YAElE,IAAI,GAAG,KAAK,SAAS,EAAG;gBAEvB,OAAO,QAAQ,EAAE,EAAS,CAAA;aAC1B;YAED,OAAO,GAAG,CAAE,GAAG,CAAqB,CAAA;QAErC,CAAC,EAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAE,CAAA;IAExB,CAAC;IAnBe,oBAAkB,qBAmBjC,CAAA;AAEF,CAAC,EAvBS,CAAC,KAAD,CAAC,QAuBV;;;ACvBD;AACA;AACA;ACFA;AACA;AACA;ACFA;AACA;AACA;;ACFA,IAAU,CAAC,CAuCV;AAvCD,WAAU,CAAC;IAEV,SAAgB,gBAAgB,CAE7B,GAAS;QAUX,OAAO,EAAA,eAAe,CAAE,CAAE,GAAqB,EAAG,EAAE;YAEnD,IAAI,GAAG,GAAG,EAAY,CAAA;YAEtB,KAAK,MAAM,KAAK,IAAI,GAAG,EAAG;gBAEzB,IAAI;oBACH,GAAG,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAI,GAAc,CAAE,KAAK,CAAE,CAAE,CAAA;iBACpD;gBAAC,OAAO,KAAU,EAAG;oBAErB,IAAI,MAAM,IAAI,KAAK;wBAAG,OAAO,EAAA,gBAAgB,CAAE,KAAK,CAAE,CAAA;oBAEtD,KAAK,CAAC,OAAO,GAAG,IAAK,IAAI,CAAC,SAAS,CAAE,KAAK,CAAG,KAAM,KAAK,CAAC,OAAQ,EAAE,CAAA;oBACnE,OAAO,EAAA,SAAS,CAAE,KAAK,CAAE,CAAA;iBAEzB;aAED;YAED,OAAO,GAAyB,CAAA;QAEjC,CAAC,EAAG,GAAG,CAAE,CAAA;IAEV,CAAC;IAnCe,kBAAgB,mBAmC/B,CAAA;AAEF,CAAC,EAvCS,CAAC,KAAD,CAAC,QAuCV;;;;ACvCD,IAAU,CAAC,CAsCV;AAtCD,WAAU,CAAC;IAEV,SAAgB,iBAAiB,CAAmC,GAAI,GAAS;QAEhF,OAAO,EAAA,eAAe,CAAE,CAAE,GAAoC,EAAG,EAAE;YAElE,MAAM,MAAM,GAAG,EAAa,CAAA;YAE5B,KAAK,MAAM,IAAI,IAAI,GAAG,EAAG;gBAExB,IAAI,MAAM,GAAG,CAAC,CAAC,gBAAgB,CAAA;gBAE/B,IAAI;oBAEH,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,gBAAgB,CAAA;oBAEhC,OAAO,IAAI,CAAE,GAAG,CAAiC,CAAA;iBAEjD;gBAAC,OAAQ,KAAK,EAAG;oBAEjB,CAAC,CAAC,SAAS,GAAG,MAAM,CAAA;oBAEpB,IAAI,KAAK,YAAY,EAAA,eAAe,EAAG;wBACtC,MAAM,CAAC,IAAI,CAAE,KAAK,CAAE,CAAA;qBACpB;yBAAM;wBACN,OAAO,EAAA,gBAAgB,CAAE,KAAK,CAAE,CAAA;qBAChC;iBAED;aAED;YAED,OAAO,EAAA,SAAS,CAAE,IAAI,EAAA,eAAe,CAAE,GAAG,GAAG,yBAAyB,EAAG,GAAI,MAAM,CAAE,CAAE,CAAA;QAExF,CAAC,EAAG,GAAG,CAAE,CAAA;IAEV,CAAC;IAlCe,mBAAiB,oBAkChC,CAAA;AAEF,CAAC,EAtCS,CAAC,KAAD,CAAC,QAsCV;;;ACtCD;AACA;AACA;ACFA;AACA;AACA;ACFA;AACA;AACA;;ACFA,IAAU,CAAC,CAMV;AAND,WAAU,CAAC;IAEV,SAAgB,kBAAkB,CAAE,IAAc;QACjD,OAAO,MAAM,CAAC,wBAAwB,CAAE,IAAI,EAAE,WAAW,CAAE,EAAE,QAAQ,KAAK,KAAK,CAAA;IAChF,CAAC;IAFe,oBAAkB,qBAEjC,CAAA;AAEF,CAAC,EANS,CAAC,KAAD,CAAC,QAMV;;;ACND;AACA;AACA;ACFA;AACA;AACA;;ACFA,IAAU,CAAC,CAkDV;AAlDD,WAAU,CAAC;IA+BV,SAAgB,cAAc,CAG7B,GAAI,KAA8B;QAGlC,OAAO,EAAA,eAAe,CACrB,UAAqB,KAAwC;YAC5D,IAAI,KAAK,GAAS,KAAK,CAAA;YACvB,KAAK,MAAM,IAAI,IAAI,KAAY;gBAAG,KAAK,GAAG,EAAA,kBAAkB,CAAE,IAAI,CAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAE,KAAK,CAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAE,IAAI,EAAE,KAAK,CAAE,CAAA;YACnH,OAAO,KAEN,CAAA;QACF,CAAC,EACD,EAAE,KAAK,EAAE,CACT,CAAA;IAEF,CAAC;IAjBe,gBAAc,iBAiB7B,CAAA;AAEF,CAAC,EAlDS,CAAC,KAAD,CAAC,QAkDV;;;;AClDD,IAAU,CAAC,CAgBV;AAhBD,WAAU,CAAC;IAEV,SAAgB,iBAAiB,CAG9B,GAAS,EAAG,GAAS;QAEvB,OAAO,CAAC,IAAI,CAAE,+DAA+D,CAAE,CAAA;QAE/E,OAAO,EAAA,eAAe,CACrB,CAAE,GAA0B,EAAG,EAAE,CAAC,IAAI,GAAG,CAAE,GAAG,CAAE,GAAG,CAAE,CAAyB,EAC9E,EAAE,GAAG,EAAG,GAAG,EAAE,CACb,CAAA;IAEF,CAAC;IAZe,mBAAiB,oBAYhC,CAAA;AAEF,CAAC,EAhBS,CAAC,KAAD,CAAC,QAgBV;;;AlChBD","file":"node.esm.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.esm.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"]}