inferred-types 0.54.6 → 0.54.7
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/modules/inferred-types/dist/index.cjs +169 -54
- package/modules/inferred-types/dist/index.cjs.map +1 -1
- package/modules/inferred-types/dist/index.d.ts +21238 -20963
- package/modules/inferred-types/dist/index.js +163 -54
- package/modules/inferred-types/dist/index.js.map +1 -1
- package/modules/runtime/dist/index.cjs +187 -66
- package/modules/runtime/dist/index.cjs.map +1 -1
- package/modules/runtime/dist/index.d.ts +4968 -4799
- package/modules/runtime/dist/index.js +181 -66
- package/modules/runtime/dist/index.js.map +1 -1
- package/modules/types/dist/index.cjs.map +1 -1
- package/modules/types/dist/index.d.ts +8493 -8387
- package/modules/types/dist/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -51,12 +51,15 @@ __export(src_exports, {
|
|
|
51
51
|
createFnWithProps: () => createFnWithProps,
|
|
52
52
|
createFnWithPropsExplicit: () => createFnWithPropsExplicit,
|
|
53
53
|
createLifoQueue: () => createLifoQueue,
|
|
54
|
+
createMapper: () => createMapper,
|
|
55
|
+
createObjectMap: () => createObjectMap,
|
|
54
56
|
createTypeToken: () => createTypeToken,
|
|
55
57
|
cssColor: () => cssColor,
|
|
56
58
|
csv: () => csv,
|
|
57
59
|
defineCss: () => defineCss,
|
|
58
60
|
defineObj: () => defineObj,
|
|
59
61
|
defineObject: () => defineObject,
|
|
62
|
+
defineObjectApi: () => defineObjectApi,
|
|
60
63
|
defineTuple: () => defineTuple,
|
|
61
64
|
endsWith: () => endsWith,
|
|
62
65
|
ensureLeading: () => ensureLeading,
|
|
@@ -375,7 +378,10 @@ __export(src_exports, {
|
|
|
375
378
|
mergeTuples: () => mergeTuples,
|
|
376
379
|
nameLiteral: () => nameLiteral,
|
|
377
380
|
narrow: () => narrow,
|
|
381
|
+
narrowObjectTo: () => narrowObjectTo,
|
|
382
|
+
narrowObjectToType: () => narrowObjectToType,
|
|
378
383
|
never: () => never,
|
|
384
|
+
objectToApi: () => objectToApi,
|
|
379
385
|
omit: () => omit,
|
|
380
386
|
optional: () => optional,
|
|
381
387
|
optionalOrNull: () => optionalOrNull,
|
|
@@ -476,6 +482,115 @@ function handleDoneFn(val, call_bare_fn = false) {
|
|
|
476
482
|
return isObject(val) || isFunction(val) ? isDoneFn(val) ? val.done() : isFunction(val) ? call_bare_fn ? val() : val : val : isFunction(val) ? call_bare_fn ? val() : val : val;
|
|
477
483
|
}
|
|
478
484
|
|
|
485
|
+
// src/initializers/addFnToProps.ts
|
|
486
|
+
function addPropsToFn(fn2, clone_fn) {
|
|
487
|
+
const localFn = clone_fn ? (...args) => fn2(args) : fn2;
|
|
488
|
+
return (obj) => {
|
|
489
|
+
for (const k in obj) {
|
|
490
|
+
localFn[k] = obj[k];
|
|
491
|
+
}
|
|
492
|
+
return localFn;
|
|
493
|
+
};
|
|
494
|
+
}
|
|
495
|
+
|
|
496
|
+
// src/initializers/addPropsToFn.ts
|
|
497
|
+
function addFnToProps(props, _clone_fn) {
|
|
498
|
+
return (fn2) => {
|
|
499
|
+
const localFn = (...args) => fn2(args);
|
|
500
|
+
for (const k in props) {
|
|
501
|
+
localFn[k] = props[k];
|
|
502
|
+
}
|
|
503
|
+
return localFn;
|
|
504
|
+
};
|
|
505
|
+
}
|
|
506
|
+
|
|
507
|
+
// src/initializers/createCssSelector.ts
|
|
508
|
+
function createCssSelector(_opt) {
|
|
509
|
+
return (...selectors) => {
|
|
510
|
+
return selectors.join(" ");
|
|
511
|
+
};
|
|
512
|
+
}
|
|
513
|
+
|
|
514
|
+
// src/initializers/createFnWithProps.ts
|
|
515
|
+
function createFnWithProps(fn2, props, narrowing = false) {
|
|
516
|
+
const fnWithProps = fn2;
|
|
517
|
+
for (const prop of Object.keys(props)) {
|
|
518
|
+
fnWithProps[prop] = props[prop];
|
|
519
|
+
}
|
|
520
|
+
return isTrue(narrowing) ? fnWithProps : fnWithProps;
|
|
521
|
+
}
|
|
522
|
+
function createFnWithPropsExplicit(fn2, props) {
|
|
523
|
+
const fnWithProps = fn2;
|
|
524
|
+
for (const prop of Object.keys(props)) {
|
|
525
|
+
fnWithProps[prop] = props[prop];
|
|
526
|
+
}
|
|
527
|
+
return fnWithProps;
|
|
528
|
+
}
|
|
529
|
+
|
|
530
|
+
// src/initializers/defineObj.ts
|
|
531
|
+
function defineObj(literal2 = {}) {
|
|
532
|
+
return (wide2 = {}) => {
|
|
533
|
+
const obj = literal2 ? { ...literal2, ...wide2 } : wide2;
|
|
534
|
+
return obj;
|
|
535
|
+
};
|
|
536
|
+
}
|
|
537
|
+
|
|
538
|
+
// src/initializers/defineTuple.ts
|
|
539
|
+
function defineTuple(...values) {
|
|
540
|
+
return values.map(
|
|
541
|
+
(i) => isFunction(i) ? handleDoneFn(i(ShapeApiImplementation)) : i
|
|
542
|
+
);
|
|
543
|
+
}
|
|
544
|
+
|
|
545
|
+
// src/api/objectToApi.ts
|
|
546
|
+
function objectToApi(obj, def = null) {
|
|
547
|
+
const transformed = Object.keys(obj).reduce(
|
|
548
|
+
(acc, key) => {
|
|
549
|
+
const val = obj[key];
|
|
550
|
+
return {
|
|
551
|
+
...acc,
|
|
552
|
+
[key]: () => val
|
|
553
|
+
};
|
|
554
|
+
},
|
|
555
|
+
{}
|
|
556
|
+
);
|
|
557
|
+
const api2 = {
|
|
558
|
+
__kind: "ObjectApi",
|
|
559
|
+
done: () => def,
|
|
560
|
+
...transformed
|
|
561
|
+
};
|
|
562
|
+
return api2;
|
|
563
|
+
}
|
|
564
|
+
function mapper() {
|
|
565
|
+
return (map2) => {
|
|
566
|
+
return (input) => {
|
|
567
|
+
const api2 = objectToApi(input);
|
|
568
|
+
const rtn = map2(api2);
|
|
569
|
+
return handleDoneFn(rtn);
|
|
570
|
+
};
|
|
571
|
+
};
|
|
572
|
+
}
|
|
573
|
+
function objectApi() {
|
|
574
|
+
return {
|
|
575
|
+
mapTo: (_defn) => ({
|
|
576
|
+
mapper: mapper()
|
|
577
|
+
}),
|
|
578
|
+
mapToWithType: () => mapper()
|
|
579
|
+
};
|
|
580
|
+
}
|
|
581
|
+
function defineObjectApi__Fn(_inputDefn) {
|
|
582
|
+
return objectApi();
|
|
583
|
+
}
|
|
584
|
+
var defineObjectApi__Prop = {
|
|
585
|
+
withType: () => {
|
|
586
|
+
return objectApi();
|
|
587
|
+
}
|
|
588
|
+
};
|
|
589
|
+
var defineObjectApi = createFnWithProps(
|
|
590
|
+
defineObjectApi__Fn,
|
|
591
|
+
defineObjectApi__Prop
|
|
592
|
+
);
|
|
593
|
+
|
|
479
594
|
// src/boolean-logic/ifArray.ts
|
|
480
595
|
function ifArray(val, isAnArray, isNotAnArray) {
|
|
481
596
|
return Array.isArray(val) ? isAnArray(val) : isNotAnArray(val);
|
|
@@ -2523,6 +2638,33 @@ function keysOf(container) {
|
|
|
2523
2638
|
return keys;
|
|
2524
2639
|
}
|
|
2525
2640
|
|
|
2641
|
+
// src/dictionary/narrowObjectTo.ts
|
|
2642
|
+
function callback() {
|
|
2643
|
+
return (cb) => {
|
|
2644
|
+
return (input) => cb(input);
|
|
2645
|
+
};
|
|
2646
|
+
}
|
|
2647
|
+
function narrowFn() {
|
|
2648
|
+
const fn2 = (obj) => obj;
|
|
2649
|
+
return fn2;
|
|
2650
|
+
}
|
|
2651
|
+
function narrowObjectTo(_defn) {
|
|
2652
|
+
return createFnWithPropsExplicit(
|
|
2653
|
+
narrowFn(),
|
|
2654
|
+
{
|
|
2655
|
+
asCallback: callback()
|
|
2656
|
+
}
|
|
2657
|
+
);
|
|
2658
|
+
}
|
|
2659
|
+
function narrowObjectToType() {
|
|
2660
|
+
return createFnWithPropsExplicit(
|
|
2661
|
+
narrowFn(),
|
|
2662
|
+
{
|
|
2663
|
+
asCallback: callback()
|
|
2664
|
+
}
|
|
2665
|
+
);
|
|
2666
|
+
}
|
|
2667
|
+
|
|
2526
2668
|
// src/dictionary/omit.ts
|
|
2527
2669
|
function omit(obj, ...removeKeys) {
|
|
2528
2670
|
const keys = Object.keys(obj);
|
|
@@ -2635,90 +2777,30 @@ function fnMeta(func) {
|
|
|
2635
2777
|
// src/functions/wrapFn.ts
|
|
2636
2778
|
var wrapFn = "NOT IMPLEMENTED";
|
|
2637
2779
|
|
|
2638
|
-
// src/initializers/addFnToProps.ts
|
|
2639
|
-
function addPropsToFn(fn2, clone_fn) {
|
|
2640
|
-
const localFn = clone_fn ? (...args) => fn2(args) : fn2;
|
|
2641
|
-
return (obj) => {
|
|
2642
|
-
for (const k in obj) {
|
|
2643
|
-
localFn[k] = obj[k];
|
|
2644
|
-
}
|
|
2645
|
-
return localFn;
|
|
2646
|
-
};
|
|
2647
|
-
}
|
|
2648
|
-
|
|
2649
|
-
// src/initializers/addPropsToFn.ts
|
|
2650
|
-
function addFnToProps(props, _clone_fn) {
|
|
2651
|
-
return (fn2) => {
|
|
2652
|
-
const localFn = (...args) => fn2(args);
|
|
2653
|
-
for (const k in props) {
|
|
2654
|
-
localFn[k] = props[k];
|
|
2655
|
-
}
|
|
2656
|
-
return localFn;
|
|
2657
|
-
};
|
|
2658
|
-
}
|
|
2659
|
-
|
|
2660
|
-
// src/initializers/createCssSelector.ts
|
|
2661
|
-
function createCssSelector(_opt) {
|
|
2662
|
-
return (...selectors) => {
|
|
2663
|
-
return selectors.join(" ");
|
|
2664
|
-
};
|
|
2665
|
-
}
|
|
2666
|
-
|
|
2667
|
-
// src/initializers/createFnWithProps.ts
|
|
2668
|
-
function createFnWithProps(fn2, props, narrowing = false) {
|
|
2669
|
-
const fnWithProps = fn2;
|
|
2670
|
-
for (const prop of Object.keys(props)) {
|
|
2671
|
-
fnWithProps[prop] = props[prop];
|
|
2672
|
-
}
|
|
2673
|
-
return isTrue(narrowing) ? fnWithProps : fnWithProps;
|
|
2674
|
-
}
|
|
2675
|
-
function createFnWithPropsExplicit(fn2, props) {
|
|
2676
|
-
const fnWithProps = fn2;
|
|
2677
|
-
for (const prop of Object.keys(props)) {
|
|
2678
|
-
fnWithProps[prop] = props[prop];
|
|
2679
|
-
}
|
|
2680
|
-
return fnWithProps;
|
|
2681
|
-
}
|
|
2682
|
-
|
|
2683
|
-
// src/initializers/defineObj.ts
|
|
2684
|
-
function defineObj(literal2 = {}) {
|
|
2685
|
-
return (wide2 = {}) => {
|
|
2686
|
-
const obj = literal2 ? { ...literal2, ...wide2 } : wide2;
|
|
2687
|
-
return obj;
|
|
2688
|
-
};
|
|
2689
|
-
}
|
|
2690
|
-
|
|
2691
|
-
// src/initializers/defineTuple.ts
|
|
2692
|
-
function defineTuple(...values) {
|
|
2693
|
-
return values.map(
|
|
2694
|
-
(i) => isFunction(i) ? handleDoneFn(i(ShapeApiImplementation)) : i
|
|
2695
|
-
);
|
|
2696
|
-
}
|
|
2697
|
-
|
|
2698
2780
|
// src/lists/asArray.ts
|
|
2699
2781
|
function asArray(thing) {
|
|
2700
2782
|
return Array.isArray(thing) === true ? thing : typeof thing === "undefined" ? [] : [thing];
|
|
2701
2783
|
}
|
|
2702
2784
|
|
|
2703
2785
|
// src/lists/createConverter.ts
|
|
2704
|
-
function createConverter(
|
|
2786
|
+
function createConverter(mapper2) {
|
|
2705
2787
|
return (input) => {
|
|
2706
2788
|
let result2;
|
|
2707
2789
|
if (isNothing(input)) {
|
|
2708
|
-
result2 =
|
|
2790
|
+
result2 = mapper2.nothing ? mapper2.nothing(input) : Never;
|
|
2709
2791
|
} else if (isObject(input)) {
|
|
2710
|
-
result2 =
|
|
2792
|
+
result2 = mapper2.object ? mapper2.object(input) : Never;
|
|
2711
2793
|
} else {
|
|
2712
2794
|
switch (typeof input) {
|
|
2713
2795
|
case "string":
|
|
2714
|
-
result2 =
|
|
2796
|
+
result2 = mapper2.string ? mapper2.string(input) : Never;
|
|
2715
2797
|
break;
|
|
2716
2798
|
case "number":
|
|
2717
2799
|
case "bigint":
|
|
2718
|
-
result2 =
|
|
2800
|
+
result2 = mapper2.number ? mapper2.number(input) : Never;
|
|
2719
2801
|
break;
|
|
2720
2802
|
case "boolean":
|
|
2721
|
-
result2 =
|
|
2803
|
+
result2 = mapper2.boolean ? mapper2.boolean(input) : Never;
|
|
2722
2804
|
break;
|
|
2723
2805
|
default:
|
|
2724
2806
|
throw new Error(`Unhandled type: ${typeof input}`);
|
|
@@ -3347,6 +3429,39 @@ function lookupCountryCode(token) {
|
|
|
3347
3429
|
return isNumberLike(token) ? lookupNumericCode(token, "countryCode") : isIso3166Alpha2(uc) ? lookupAlpha2Code(uc, "countryCode") : isIso3166Alpha3(uc) ? lookupAlpha3Code(uc, "countryCode") : isIso3166CountryName(token) ? lookupName(token, "countryCode") : void 0;
|
|
3348
3430
|
}
|
|
3349
3431
|
|
|
3432
|
+
// src/type-conversion/map/createMapper.ts
|
|
3433
|
+
function asMapper(fn2) {
|
|
3434
|
+
const props = {
|
|
3435
|
+
kind: "Mapper",
|
|
3436
|
+
map: (from) => {
|
|
3437
|
+
return from.map(fn2);
|
|
3438
|
+
}
|
|
3439
|
+
};
|
|
3440
|
+
return createFnWithPropsExplicit(fn2, props);
|
|
3441
|
+
}
|
|
3442
|
+
function createObjectMap() {
|
|
3443
|
+
return (map2) => {
|
|
3444
|
+
const fn2 = (input) => {
|
|
3445
|
+
return Object.keys(map2).reduce(
|
|
3446
|
+
(acc, key) => {
|
|
3447
|
+
const val = map2[key];
|
|
3448
|
+
return {
|
|
3449
|
+
...acc,
|
|
3450
|
+
[key]: isFunction(val) ? val(input) : val
|
|
3451
|
+
};
|
|
3452
|
+
},
|
|
3453
|
+
{}
|
|
3454
|
+
);
|
|
3455
|
+
};
|
|
3456
|
+
return fn2;
|
|
3457
|
+
};
|
|
3458
|
+
}
|
|
3459
|
+
function createMapper() {
|
|
3460
|
+
return (fn2) => {
|
|
3461
|
+
return asMapper(fn2);
|
|
3462
|
+
};
|
|
3463
|
+
}
|
|
3464
|
+
|
|
3350
3465
|
// src/type-conversion/mergeObjects.ts
|
|
3351
3466
|
function mergeObjects(defVal, override) {
|
|
3352
3467
|
const intersectingKeys = sharedKeys(defVal, override);
|
|
@@ -5332,12 +5447,15 @@ function asVueRef(value) {
|
|
|
5332
5447
|
createFnWithProps,
|
|
5333
5448
|
createFnWithPropsExplicit,
|
|
5334
5449
|
createLifoQueue,
|
|
5450
|
+
createMapper,
|
|
5451
|
+
createObjectMap,
|
|
5335
5452
|
createTypeToken,
|
|
5336
5453
|
cssColor,
|
|
5337
5454
|
csv,
|
|
5338
5455
|
defineCss,
|
|
5339
5456
|
defineObj,
|
|
5340
5457
|
defineObject,
|
|
5458
|
+
defineObjectApi,
|
|
5341
5459
|
defineTuple,
|
|
5342
5460
|
endsWith,
|
|
5343
5461
|
ensureLeading,
|
|
@@ -5656,7 +5774,10 @@ function asVueRef(value) {
|
|
|
5656
5774
|
mergeTuples,
|
|
5657
5775
|
nameLiteral,
|
|
5658
5776
|
narrow,
|
|
5777
|
+
narrowObjectTo,
|
|
5778
|
+
narrowObjectToType,
|
|
5659
5779
|
never,
|
|
5780
|
+
objectToApi,
|
|
5660
5781
|
omit,
|
|
5661
5782
|
optional,
|
|
5662
5783
|
optionalOrNull,
|