smoothly 0.3.46 → 0.3.48

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/cjs/{Listenable-f6012fc2.js → Listenable-0b92b362.js} +33 -1
  2. package/dist/cjs/{getLanguage-430ecf04.js → getLanguage-7e53766b.js} +1013 -915
  3. package/dist/cjs/{index-879bbabb.js → index-45c42c7c.js} +2 -2
  4. package/dist/cjs/index.cjs.js +2 -2
  5. package/dist/cjs/smoothly-accordion_53.cjs.entry.js +4 -4
  6. package/dist/cjs/smoothly-country.cjs.entry.js +1 -1
  7. package/dist/cjs/smoothly-trigger-sink.cjs.entry.js +1 -1
  8. package/dist/cjs/smoothly-trigger-source.cjs.entry.js +1 -1
  9. package/dist/collection/components/App.js +2 -2
  10. package/dist/collection/components/app/index.js +1 -1
  11. package/dist/collection/components/country/index.js +1 -1
  12. package/dist/collection/components/display/index.js +2 -2
  13. package/dist/collection/components/display-amount/index.js +1 -1
  14. package/dist/collection/components/input/index.js +1 -1
  15. package/dist/custom-elements/index.js +1037 -907
  16. package/dist/esm/{Listenable-34b047d8.js → Listenable-79ce5567.js} +33 -1
  17. package/dist/esm/{getLanguage-cccb8418.js → getLanguage-9c833eef.js} +1013 -915
  18. package/dist/esm/{index-d7a4e405.js → index-9594f9bc.js} +2 -2
  19. package/dist/esm/index.js +3 -3
  20. package/dist/esm/smoothly-accordion_53.entry.js +4 -4
  21. package/dist/esm/smoothly-country.entry.js +1 -1
  22. package/dist/esm/smoothly-trigger-sink.entry.js +1 -1
  23. package/dist/esm/smoothly-trigger-source.entry.js +1 -1
  24. package/dist/smoothly/index.esm.js +1 -1
  25. package/dist/smoothly/p-03c10101.js +1 -0
  26. package/dist/smoothly/p-1b714a63.js +1 -0
  27. package/dist/smoothly/{p-41bd21da.entry.js → p-68919b0f.entry.js} +1 -1
  28. package/dist/smoothly/p-8f1d86ff.js +1 -0
  29. package/dist/smoothly/{p-6630d923.entry.js → p-bb508923.entry.js} +1 -1
  30. package/dist/smoothly/p-e39602bd.entry.js +1 -0
  31. package/dist/smoothly/{p-e7b088e6.entry.js → p-f446ca1a.entry.js} +1 -1
  32. package/dist/smoothly/smoothly.esm.js +1 -1
  33. package/package.json +4 -4
  34. package/dist/smoothly/p-5b6351f6.js +0 -1
  35. package/dist/smoothly/p-94e08cee.js +0 -1
  36. package/dist/smoothly/p-9bf79e04.entry.js +0 -1
  37. package/dist/smoothly/p-e6cb38de.js +0 -1
@@ -348,7 +348,7 @@ const App = (attributes, nodes, utils) => {
348
348
  }
349
349
  const children = nodes.map(node => (Object.assign(Object.assign({}, nodeToChild(node)), { node })));
350
350
  return (h("smoothly-app", null,
351
- h("header", null,
351
+ h("header", { slot: "header" },
352
352
  h("h1", null,
353
353
  h("a", Object.assign({}, href((_a = resolve("")) !== null && _a !== void 0 ? _a : "/")), attributes.label)),
354
354
  h("nav", null,
@@ -385,7 +385,7 @@ const App = (attributes, nodes, utils) => {
385
385
  })
386
386
  .map(child => (h("li", null, child))))),
387
387
  children.filter(child => { var _a; return ((_a = child.vattrs) === null || _a === void 0 ? void 0 : _a.slot) == "header"; }).map(child => child.node)),
388
- h("main", null,
388
+ h("main", { slot: "main" },
389
389
  h(Router.Switch, null, children
390
390
  .filter(child => { var _a; return ((_a = child.vattrs) === null || _a === void 0 ? void 0 : _a.path) != undefined; })
391
391
  .map(child => {
@@ -450,6 +450,15 @@ function decode(value, standard = "standard") {
450
450
  }
451
451
  return result;
452
452
  }
453
+ function next(value, increment = 1, standard = "standard") {
454
+ const table = tables[standard];
455
+ const rest = value.length > 1 ? value.substring(0, value.length - 1) : increment > 0 ? "" : table[63];
456
+ const number = (value.length == 0 ? 0 : table.indexOf(value[value.length - 1])) + increment;
457
+ return ((number > 63 || number < 0 ? next(rest, Math.floor(number / 63), standard) : rest) + table[remainder(number, 64)]);
458
+ }
459
+ function remainder(left, right) {
460
+ return left >= 0 ? left % right : remainder(left + right, right);
461
+ }
453
462
 
454
463
  const crypto = typeof window != "undefined"
455
464
  ? window.crypto || window.msCrypto
@@ -556,6 +565,23 @@ var Identifier;
556
565
  return result.join("");
557
566
  }
558
567
  Identifier.toHexadecimal = toHexadecimal;
568
+ function min(length) {
569
+ return "".padStart(length, "A");
570
+ }
571
+ Identifier.min = min;
572
+ function max(length) {
573
+ return "".padStart(length, "_");
574
+ }
575
+ Identifier.max = max;
576
+ function next$1(identifier, increment = 1) {
577
+ const result = next(identifier, increment, "url");
578
+ return result.length == identifier.length ? result : result.substring(result.length - identifier.length);
579
+ }
580
+ Identifier.next = next$1;
581
+ function previous(identifier, decrement = 1) {
582
+ return next$1(identifier, -decrement);
583
+ }
584
+ Identifier.previous = previous;
559
585
  Identifier.length = [
560
586
  4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52, 56, 60, 64, 68, 72, 76, 80, 84, 88, 92, 96, 100, 104, 108, 112,
561
587
  116, 120, 124, 128,
@@ -841,7 +867,13 @@ if (!Uint8Array.__proto__.from) {
841
867
  var Converter;
842
868
  (function (Converter) {
843
869
  function is(value) {
844
- return typeof value == "object" && Object.entries(value).every(v => typeof v == "function");
870
+ return (typeof value == "object" &&
871
+ Object.values(value).every(v => v &&
872
+ typeof v == "object" &&
873
+ "forward" in v &&
874
+ typeof v.forward == "function" &&
875
+ "backward" in v &&
876
+ typeof v.backward == "function"));
845
877
  }
846
878
  Converter.is = is;
847
879
  })(Converter || (Converter = {}));
@@ -1781,7 +1813,7 @@ const SmoothlyApp$1 = class extends HTMLElement {
1781
1813
  this.color = undefined;
1782
1814
  }
1783
1815
  render() {
1784
- return (h("smoothly-notifier", null, h("slot", null)));
1816
+ return (h("smoothly-notifier", null, h("slot", { name: "header" }), h("slot", { name: "main" }), h("slot", null)));
1785
1817
  }
1786
1818
  static get style() { return styleCss$L; }
1787
1819
  };
@@ -2627,253 +2659,254 @@ const alpha2toCallingCode$1 = {
2627
2659
  var Alpha2$1;
2628
2660
  (function (Alpha2) {
2629
2661
  Alpha2.types = [
2662
+ "AD",
2663
+ "AE",
2630
2664
  "AF",
2631
- "AX",
2665
+ "AG",
2666
+ "AI",
2632
2667
  "AL",
2633
- "DZ",
2634
- "AS",
2635
- "AD",
2668
+ "AM",
2636
2669
  "AO",
2637
- "AI",
2638
2670
  "AQ",
2639
- "AG",
2640
2671
  "AR",
2641
- "AM",
2642
- "AW",
2643
- "AU",
2672
+ "AS",
2644
2673
  "AT",
2674
+ "AU",
2675
+ "AW",
2676
+ "AX",
2645
2677
  "AZ",
2646
- "BS",
2647
- "BH",
2648
- "BD",
2678
+ "BA",
2649
2679
  "BB",
2650
- "BY",
2680
+ "BD",
2651
2681
  "BE",
2652
- "BZ",
2682
+ "BF",
2683
+ "BG",
2684
+ "BH",
2685
+ "BI",
2653
2686
  "BJ",
2687
+ "BL",
2654
2688
  "BM",
2655
- "BT",
2689
+ "BN",
2656
2690
  "BO",
2657
2691
  "BQ",
2658
- "BA",
2659
- "BW",
2660
- "BV",
2661
2692
  "BR",
2662
- "IO",
2663
- "BN",
2664
- "BG",
2665
- "BF",
2666
- "BI",
2667
- "CV",
2668
- "KH",
2669
- "CM",
2693
+ "BS",
2694
+ "BT",
2695
+ "BV",
2696
+ "BW",
2697
+ "BY",
2698
+ "BZ",
2670
2699
  "CA",
2671
- "KY",
2700
+ "CC",
2701
+ "CD",
2672
2702
  "CF",
2673
- "TD",
2703
+ "CG",
2704
+ "CH",
2705
+ "CI",
2706
+ "CK",
2674
2707
  "CL",
2708
+ "CM",
2675
2709
  "CN",
2676
- "CX",
2677
- "CC",
2678
2710
  "CO",
2679
- "KM",
2680
- "CG",
2681
- "CD",
2682
- "CK",
2683
2711
  "CR",
2684
- "CI",
2685
- "HR",
2686
2712
  "CU",
2713
+ "CV",
2687
2714
  "CW",
2715
+ "CX",
2688
2716
  "CY",
2689
2717
  "CZ",
2690
- "DK",
2718
+ "DE",
2691
2719
  "DJ",
2720
+ "DK",
2692
2721
  "DM",
2693
2722
  "DO",
2723
+ "DZ",
2694
2724
  "EC",
2725
+ "EE",
2695
2726
  "EG",
2696
- "SV",
2697
- "GQ",
2727
+ "EH",
2698
2728
  "ER",
2699
- "EE",
2700
- "SZ",
2729
+ "ES",
2701
2730
  "ET",
2731
+ "FI",
2732
+ "FJ",
2702
2733
  "FK",
2734
+ "FM",
2703
2735
  "FO",
2704
- "FJ",
2705
- "FI",
2706
2736
  "FR",
2707
- "GF",
2708
- "PF",
2709
- "TF",
2710
2737
  "GA",
2711
- "GM",
2738
+ "GB",
2739
+ "GD",
2712
2740
  "GE",
2713
- "DE",
2741
+ "GF",
2742
+ "GG",
2714
2743
  "GH",
2715
2744
  "GI",
2716
- "GR",
2717
2745
  "GL",
2718
- "GD",
2746
+ "GM",
2747
+ "GN",
2719
2748
  "GP",
2720
- "GU",
2749
+ "GQ",
2750
+ "GR",
2751
+ "GS",
2721
2752
  "GT",
2722
- "GG",
2723
- "GN",
2753
+ "GU",
2724
2754
  "GW",
2725
2755
  "GY",
2726
- "HT",
2756
+ "HK",
2727
2757
  "HM",
2728
- "VA",
2729
2758
  "HN",
2730
- "HK",
2759
+ "HR",
2760
+ "HT",
2731
2761
  "HU",
2732
- "IS",
2733
- "IN",
2734
2762
  "ID",
2735
- "IR",
2736
- "IQ",
2737
2763
  "IE",
2738
- "IM",
2739
2764
  "IL",
2765
+ "IM",
2766
+ "IN",
2767
+ "IO",
2768
+ "IQ",
2769
+ "IR",
2770
+ "IS",
2740
2771
  "IT",
2741
- "JM",
2742
- "JP",
2743
2772
  "JE",
2773
+ "JM",
2744
2774
  "JO",
2745
- "KZ",
2775
+ "JP",
2746
2776
  "KE",
2777
+ "KG",
2778
+ "KH",
2747
2779
  "KI",
2780
+ "KM",
2781
+ "KN",
2748
2782
  "KP",
2749
2783
  "KR",
2750
2784
  "KW",
2751
- "KG",
2785
+ "KY",
2786
+ "KZ",
2752
2787
  "LA",
2753
- "LV",
2754
2788
  "LB",
2755
- "LS",
2756
- "LR",
2757
- "LY",
2789
+ "LC",
2758
2790
  "LI",
2791
+ "LK",
2792
+ "LR",
2793
+ "LS",
2759
2794
  "LT",
2760
2795
  "LU",
2761
- "MO",
2796
+ "LV",
2797
+ "LY",
2798
+ "MA",
2799
+ "MC",
2800
+ "MD",
2801
+ "ME",
2802
+ "MF",
2762
2803
  "MG",
2763
- "MW",
2764
- "MY",
2765
- "MV",
2766
- "ML",
2767
- "MT",
2768
2804
  "MH",
2805
+ "MK",
2806
+ "ML",
2807
+ "MM",
2808
+ "MN",
2809
+ "MO",
2810
+ "MP",
2769
2811
  "MQ",
2770
2812
  "MR",
2813
+ "MS",
2814
+ "MT",
2771
2815
  "MU",
2772
- "YT",
2816
+ "MV",
2817
+ "MW",
2773
2818
  "MX",
2774
- "FM",
2775
- "MD",
2776
- "MC",
2777
- "MN",
2778
- "ME",
2779
- "MS",
2780
- "MA",
2819
+ "MY",
2781
2820
  "MZ",
2782
- "MM",
2783
2821
  "NA",
2784
- "NR",
2785
- "NP",
2786
- "NL",
2787
2822
  "NC",
2788
- "NZ",
2789
- "NI",
2790
2823
  "NE",
2791
- "NG",
2792
- "NU",
2793
2824
  "NF",
2794
- "MK",
2795
- "MP",
2825
+ "NG",
2826
+ "NI",
2827
+ "NL",
2796
2828
  "NO",
2829
+ "NP",
2830
+ "NR",
2831
+ "NU",
2832
+ "NZ",
2797
2833
  "OM",
2798
- "PK",
2799
- "PW",
2800
- "PS",
2801
2834
  "PA",
2802
- "PG",
2803
- "PY",
2804
2835
  "PE",
2836
+ "PF",
2837
+ "PG",
2805
2838
  "PH",
2806
- "PN",
2839
+ "PK",
2807
2840
  "PL",
2808
- "PT",
2841
+ "PM",
2842
+ "PN",
2809
2843
  "PR",
2844
+ "PS",
2845
+ "PT",
2846
+ "PW",
2847
+ "PY",
2810
2848
  "QA",
2811
2849
  "RE",
2812
2850
  "RO",
2851
+ "RS",
2813
2852
  "RU",
2814
2853
  "RW",
2815
- "BL",
2816
- "SH",
2817
- "KN",
2818
- "LC",
2819
- "MF",
2820
- "PM",
2821
- "VC",
2822
- "WS",
2823
- "SM",
2824
- "ST",
2825
2854
  "SA",
2826
- "SN",
2827
- "RS",
2855
+ "SB",
2828
2856
  "SC",
2829
- "SL",
2857
+ "SD",
2858
+ "SE",
2830
2859
  "SG",
2831
- "SX",
2832
- "SK",
2860
+ "SH",
2833
2861
  "SI",
2834
- "SB",
2862
+ "SJ",
2863
+ "SK",
2864
+ "SL",
2865
+ "SM",
2866
+ "SN",
2835
2867
  "SO",
2836
- "ZA",
2837
- "GS",
2838
- "SS",
2839
- "ES",
2840
- "LK",
2841
- "SD",
2842
2868
  "SR",
2843
- "SJ",
2844
- "SE",
2845
- "CH",
2869
+ "SS",
2870
+ "ST",
2871
+ "SV",
2872
+ "SX",
2846
2873
  "SY",
2847
- "TW",
2848
- "TJ",
2849
- "TZ",
2850
- "TH",
2851
- "TL",
2874
+ "SZ",
2875
+ "TC",
2876
+ "TD",
2877
+ "TF",
2852
2878
  "TG",
2879
+ "TH",
2880
+ "TJ",
2853
2881
  "TK",
2854
- "TO",
2855
- "TT",
2882
+ "TL",
2883
+ "TM",
2856
2884
  "TN",
2885
+ "TO",
2857
2886
  "TR",
2858
- "TM",
2859
- "TC",
2887
+ "TT",
2860
2888
  "TV",
2861
- "UG",
2889
+ "TW",
2890
+ "TZ",
2862
2891
  "UA",
2863
- "AE",
2864
- "GB",
2865
- "US",
2892
+ "UG",
2866
2893
  "UM",
2894
+ "US",
2867
2895
  "UY",
2868
2896
  "UZ",
2869
- "VU",
2897
+ "VA",
2898
+ "VC",
2870
2899
  "VE",
2871
- "VN",
2872
2900
  "VG",
2873
2901
  "VI",
2902
+ "VN",
2903
+ "VU",
2874
2904
  "WF",
2875
- "EH",
2905
+ "WS",
2906
+ "XK",
2876
2907
  "YE",
2908
+ "YT",
2909
+ "ZA",
2877
2910
  "ZM",
2878
2911
  "ZW",
2879
2912
  ];
@@ -2882,11 +2915,11 @@ var Alpha2$1;
2882
2915
  }
2883
2916
  Alpha2.is = is;
2884
2917
  function from(country) {
2885
- return typeof country == "number" ? numericToAlpha2$1[country.toString()] : alpha3ToAlpha2$1[country];
2918
+ return typeof country == "number" ? numericToAlpha2$1[country] : alpha3ToAlpha2$1[country];
2886
2919
  }
2887
2920
  Alpha2.from = from;
2888
2921
  function isEEA(country) {
2889
- return [
2922
+ const eea = [
2890
2923
  "AT",
2891
2924
  "BE",
2892
2925
  "BG",
@@ -2917,7 +2950,8 @@ var Alpha2$1;
2917
2950
  "LU",
2918
2951
  "SK",
2919
2952
  "CZ",
2920
- ].includes(country);
2953
+ ];
2954
+ return eea.includes(country);
2921
2955
  }
2922
2956
  Alpha2.isEEA = isEEA;
2923
2957
  })(Alpha2$1 || (Alpha2$1 = {}));
@@ -3172,6 +3206,7 @@ const numericToAlpha2$1 = {
3172
3206
  "887": "YE",
3173
3207
  "894": "ZM",
3174
3208
  "716": "ZW",
3209
+ "926": "XK",
3175
3210
  };
3176
3211
  const alpha3ToAlpha2$1 = {
3177
3212
  AFG: "AF",
@@ -3423,262 +3458,265 @@ const alpha3ToAlpha2$1 = {
3423
3458
  YEM: "YE",
3424
3459
  ZMB: "ZM",
3425
3460
  ZWE: "ZW",
3461
+ XKX: "XK",
3426
3462
  };
3427
3463
 
3428
3464
  var Alpha3$1;
3429
3465
  (function (Alpha3) {
3466
+ Alpha3.types = [
3467
+ "ABW",
3468
+ "AFG",
3469
+ "AGO",
3470
+ "AIA",
3471
+ "ALA",
3472
+ "ALB",
3473
+ "AND",
3474
+ "ARE",
3475
+ "ARG",
3476
+ "ARM",
3477
+ "ASM",
3478
+ "ATA",
3479
+ "ATF",
3480
+ "ATG",
3481
+ "AUS",
3482
+ "AUT",
3483
+ "AZE",
3484
+ "BDI",
3485
+ "BEL",
3486
+ "BEN",
3487
+ "BES",
3488
+ "BFA",
3489
+ "BGD",
3490
+ "BGR",
3491
+ "BHR",
3492
+ "BHS",
3493
+ "BIH",
3494
+ "BLM",
3495
+ "BLR",
3496
+ "BLZ",
3497
+ "BMU",
3498
+ "BOL",
3499
+ "BRA",
3500
+ "BRB",
3501
+ "BRN",
3502
+ "BTN",
3503
+ "BVT",
3504
+ "BWA",
3505
+ "CAF",
3506
+ "CAN",
3507
+ "CCK",
3508
+ "CHE",
3509
+ "CHL",
3510
+ "CHN",
3511
+ "CIV",
3512
+ "CMR",
3513
+ "COD",
3514
+ "COG",
3515
+ "COK",
3516
+ "COL",
3517
+ "COM",
3518
+ "CPV",
3519
+ "CRI",
3520
+ "CUB",
3521
+ "CUW",
3522
+ "CXR",
3523
+ "CYM",
3524
+ "CYP",
3525
+ "CZE",
3526
+ "DEU",
3527
+ "DJI",
3528
+ "DMA",
3529
+ "DNK",
3530
+ "DOM",
3531
+ "DZA",
3532
+ "ECU",
3533
+ "EGY",
3534
+ "ERI",
3535
+ "ESH",
3536
+ "ESP",
3537
+ "EST",
3538
+ "ETH",
3539
+ "FIN",
3540
+ "FJI",
3541
+ "FLK",
3542
+ "FRA",
3543
+ "FRO",
3544
+ "FSM",
3545
+ "GAB",
3546
+ "GBR",
3547
+ "GEO",
3548
+ "GGY",
3549
+ "GHA",
3550
+ "GIB",
3551
+ "GIN",
3552
+ "GLP",
3553
+ "GMB",
3554
+ "GNB",
3555
+ "GNQ",
3556
+ "GRC",
3557
+ "GRD",
3558
+ "GRL",
3559
+ "GTM",
3560
+ "GUF",
3561
+ "GUM",
3562
+ "GUY",
3563
+ "HKG",
3564
+ "HMD",
3565
+ "HND",
3566
+ "HRV",
3567
+ "HTI",
3568
+ "HUN",
3569
+ "IDN",
3570
+ "IMN",
3571
+ "IND",
3572
+ "IOT",
3573
+ "IRL",
3574
+ "IRN",
3575
+ "IRQ",
3576
+ "ISL",
3577
+ "ISR",
3578
+ "ITA",
3579
+ "JAM",
3580
+ "JEY",
3581
+ "JOR",
3582
+ "JPN",
3583
+ "KAZ",
3584
+ "KEN",
3585
+ "KGZ",
3586
+ "KHM",
3587
+ "KIR",
3588
+ "KNA",
3589
+ "KOR",
3590
+ "KWT",
3591
+ "LAO",
3592
+ "LBN",
3593
+ "LBR",
3594
+ "LBY",
3595
+ "LCA",
3596
+ "LIE",
3597
+ "LKA",
3598
+ "LSO",
3599
+ "LTU",
3600
+ "LUX",
3601
+ "LVA",
3602
+ "MAC",
3603
+ "MAF",
3604
+ "MAR",
3605
+ "MCO",
3606
+ "MDA",
3607
+ "MDG",
3608
+ "MDV",
3609
+ "MEX",
3610
+ "MHL",
3611
+ "MKD",
3612
+ "MLI",
3613
+ "MLT",
3614
+ "MMR",
3615
+ "MNE",
3616
+ "MNG",
3617
+ "MNP",
3618
+ "MOZ",
3619
+ "MRT",
3620
+ "MSR",
3621
+ "MTQ",
3622
+ "MUS",
3623
+ "MWI",
3624
+ "MYS",
3625
+ "MYT",
3626
+ "NAM",
3627
+ "NCL",
3628
+ "NER",
3629
+ "NFK",
3630
+ "NGA",
3631
+ "NIC",
3632
+ "NIU",
3633
+ "NLD",
3634
+ "NOR",
3635
+ "NPL",
3636
+ "NRU",
3637
+ "NZL",
3638
+ "OMN",
3639
+ "PAK",
3640
+ "PAN",
3641
+ "PCN",
3642
+ "PER",
3643
+ "PHL",
3644
+ "PLW",
3645
+ "PNG",
3646
+ "POL",
3647
+ "PRI",
3648
+ "PRK",
3649
+ "PRT",
3650
+ "PRY",
3651
+ "PSE",
3652
+ "PYF",
3653
+ "QAT",
3654
+ "REU",
3655
+ "ROU",
3656
+ "RUS",
3657
+ "RWA",
3658
+ "SAU",
3659
+ "SDN",
3660
+ "SEN",
3661
+ "SGP",
3662
+ "SGS",
3663
+ "SHN",
3664
+ "SJM",
3665
+ "SLB",
3666
+ "SLE",
3667
+ "SLV",
3668
+ "SMR",
3669
+ "SOM",
3670
+ "SPM",
3671
+ "SRB",
3672
+ "SSD",
3673
+ "STP",
3674
+ "SUR",
3675
+ "SVK",
3676
+ "SVN",
3677
+ "SWE",
3678
+ "SWZ",
3679
+ "SXM",
3680
+ "SYC",
3681
+ "SYR",
3682
+ "TCA",
3683
+ "TCD",
3684
+ "TGO",
3685
+ "THA",
3686
+ "TJK",
3687
+ "TKL",
3688
+ "TKM",
3689
+ "TLS",
3690
+ "TON",
3691
+ "TTO",
3692
+ "TUN",
3693
+ "TUR",
3694
+ "TUV",
3695
+ "TWN",
3696
+ "TZA",
3697
+ "UGA",
3698
+ "UKR",
3699
+ "UMI",
3700
+ "URY",
3701
+ "USA",
3702
+ "UZB",
3703
+ "VAT",
3704
+ "VCT",
3705
+ "VEN",
3706
+ "VGB",
3707
+ "VIR",
3708
+ "VNM",
3709
+ "VUT",
3710
+ "WLF",
3711
+ "WSM",
3712
+ "XKX",
3713
+ "YEM",
3714
+ "ZAF",
3715
+ "ZMB",
3716
+ "ZWE",
3717
+ ];
3430
3718
  function is(value) {
3431
- return (typeof value == "string" &&
3432
- value.length == 3 &&
3433
- (value == "AFG" ||
3434
- value == "ALA" ||
3435
- value == "ALB" ||
3436
- value == "DZA" ||
3437
- value == "ASM" ||
3438
- value == "AND" ||
3439
- value == "AGO" ||
3440
- value == "AIA" ||
3441
- value == "ATA" ||
3442
- value == "ATG" ||
3443
- value == "ARG" ||
3444
- value == "ARM" ||
3445
- value == "ABW" ||
3446
- value == "AUS" ||
3447
- value == "AUT" ||
3448
- value == "AZE" ||
3449
- value == "BHS" ||
3450
- value == "BHR" ||
3451
- value == "BGD" ||
3452
- value == "BRB" ||
3453
- value == "BLR" ||
3454
- value == "BEL" ||
3455
- value == "BLZ" ||
3456
- value == "BEN" ||
3457
- value == "BMU" ||
3458
- value == "BTN" ||
3459
- value == "BOL" ||
3460
- value == "BES" ||
3461
- value == "BIH" ||
3462
- value == "BWA" ||
3463
- value == "BVT" ||
3464
- value == "BRA" ||
3465
- value == "IOT" ||
3466
- value == "BRN" ||
3467
- value == "BGR" ||
3468
- value == "BFA" ||
3469
- value == "BDI" ||
3470
- value == "CPV" ||
3471
- value == "KHM" ||
3472
- value == "CMR" ||
3473
- value == "CAN" ||
3474
- value == "CYM" ||
3475
- value == "CAF" ||
3476
- value == "TCD" ||
3477
- value == "CHL" ||
3478
- value == "CHN" ||
3479
- value == "CXR" ||
3480
- value == "CCK" ||
3481
- value == "COL" ||
3482
- value == "COM" ||
3483
- value == "COG" ||
3484
- value == "COD" ||
3485
- value == "COK" ||
3486
- value == "CRI" ||
3487
- value == "CIV" ||
3488
- value == "HRV" ||
3489
- value == "CUB" ||
3490
- value == "CUW" ||
3491
- value == "CYP" ||
3492
- value == "CZE" ||
3493
- value == "DNK" ||
3494
- value == "DJI" ||
3495
- value == "DMA" ||
3496
- value == "DOM" ||
3497
- value == "ECU" ||
3498
- value == "EGY" ||
3499
- value == "SLV" ||
3500
- value == "GNQ" ||
3501
- value == "ERI" ||
3502
- value == "EST" ||
3503
- value == "SWZ" ||
3504
- value == "ETH" ||
3505
- value == "FLK" ||
3506
- value == "FRO" ||
3507
- value == "FJI" ||
3508
- value == "FIN" ||
3509
- value == "FRA" ||
3510
- value == "GUF" ||
3511
- value == "PYF" ||
3512
- value == "ATF" ||
3513
- value == "GAB" ||
3514
- value == "GMB" ||
3515
- value == "GEO" ||
3516
- value == "DEU" ||
3517
- value == "GHA" ||
3518
- value == "GIB" ||
3519
- value == "GRC" ||
3520
- value == "GRL" ||
3521
- value == "GRD" ||
3522
- value == "GLP" ||
3523
- value == "GUM" ||
3524
- value == "GTM" ||
3525
- value == "GGY" ||
3526
- value == "GIN" ||
3527
- value == "GNB" ||
3528
- value == "GUY" ||
3529
- value == "HTI" ||
3530
- value == "HMD" ||
3531
- value == "VAT" ||
3532
- value == "HND" ||
3533
- value == "HKG" ||
3534
- value == "HUN" ||
3535
- value == "ISL" ||
3536
- value == "IND" ||
3537
- value == "IDN" ||
3538
- value == "IRN" ||
3539
- value == "IRQ" ||
3540
- value == "IRL" ||
3541
- value == "IMN" ||
3542
- value == "ISR" ||
3543
- value == "ITA" ||
3544
- value == "JAM" ||
3545
- value == "JPN" ||
3546
- value == "JEY" ||
3547
- value == "JOR" ||
3548
- value == "KAZ" ||
3549
- value == "KEN" ||
3550
- value == "KIR" ||
3551
- value == "PRK" ||
3552
- value == "KOR" ||
3553
- value == "KWT" ||
3554
- value == "KGZ" ||
3555
- value == "LAO" ||
3556
- value == "LVA" ||
3557
- value == "LBN" ||
3558
- value == "LSO" ||
3559
- value == "LBR" ||
3560
- value == "LBY" ||
3561
- value == "LIE" ||
3562
- value == "LTU" ||
3563
- value == "LUX" ||
3564
- value == "MAC" ||
3565
- value == "MDG" ||
3566
- value == "MWI" ||
3567
- value == "MYS" ||
3568
- value == "MDV" ||
3569
- value == "MLI" ||
3570
- value == "MLT" ||
3571
- value == "MHL" ||
3572
- value == "MTQ" ||
3573
- value == "MRT" ||
3574
- value == "MUS" ||
3575
- value == "MYT" ||
3576
- value == "MEX" ||
3577
- value == "FSM" ||
3578
- value == "MDA" ||
3579
- value == "MCO" ||
3580
- value == "MNG" ||
3581
- value == "MNE" ||
3582
- value == "MSR" ||
3583
- value == "MAR" ||
3584
- value == "MOZ" ||
3585
- value == "MMR" ||
3586
- value == "NAM" ||
3587
- value == "NRU" ||
3588
- value == "NPL" ||
3589
- value == "NLD" ||
3590
- value == "NCL" ||
3591
- value == "NZL" ||
3592
- value == "NIC" ||
3593
- value == "NER" ||
3594
- value == "NGA" ||
3595
- value == "NIU" ||
3596
- value == "NFK" ||
3597
- value == "MKD" ||
3598
- value == "MNP" ||
3599
- value == "NOR" ||
3600
- value == "OMN" ||
3601
- value == "PAK" ||
3602
- value == "PLW" ||
3603
- value == "PSE" ||
3604
- value == "PAN" ||
3605
- value == "PNG" ||
3606
- value == "PRY" ||
3607
- value == "PER" ||
3608
- value == "PHL" ||
3609
- value == "PCN" ||
3610
- value == "POL" ||
3611
- value == "PRT" ||
3612
- value == "PRI" ||
3613
- value == "QAT" ||
3614
- value == "REU" ||
3615
- value == "ROU" ||
3616
- value == "RUS" ||
3617
- value == "RWA" ||
3618
- value == "BLM" ||
3619
- value == "SHN" ||
3620
- value == "KNA" ||
3621
- value == "LCA" ||
3622
- value == "MAF" ||
3623
- value == "SPM" ||
3624
- value == "VCT" ||
3625
- value == "WSM" ||
3626
- value == "SMR" ||
3627
- value == "STP" ||
3628
- value == "SAU" ||
3629
- value == "SEN" ||
3630
- value == "SRB" ||
3631
- value == "SYC" ||
3632
- value == "SLE" ||
3633
- value == "SGP" ||
3634
- value == "SXM" ||
3635
- value == "SVK" ||
3636
- value == "SVN" ||
3637
- value == "SLB" ||
3638
- value == "SOM" ||
3639
- value == "ZAF" ||
3640
- value == "SGS" ||
3641
- value == "SSD" ||
3642
- value == "ESP" ||
3643
- value == "LKA" ||
3644
- value == "SDN" ||
3645
- value == "SUR" ||
3646
- value == "SJM" ||
3647
- value == "SWE" ||
3648
- value == "CHE" ||
3649
- value == "SYR" ||
3650
- value == "TWN" ||
3651
- value == "TJK" ||
3652
- value == "TZA" ||
3653
- value == "THA" ||
3654
- value == "TLS" ||
3655
- value == "TGO" ||
3656
- value == "TKL" ||
3657
- value == "TON" ||
3658
- value == "TTO" ||
3659
- value == "TUN" ||
3660
- value == "TUR" ||
3661
- value == "TKM" ||
3662
- value == "TCA" ||
3663
- value == "TUV" ||
3664
- value == "UGA" ||
3665
- value == "UKR" ||
3666
- value == "ARE" ||
3667
- value == "GBR" ||
3668
- value == "USA" ||
3669
- value == "UMI" ||
3670
- value == "URY" ||
3671
- value == "UZB" ||
3672
- value == "VUT" ||
3673
- value == "VEN" ||
3674
- value == "VNM" ||
3675
- value == "VGB" ||
3676
- value == "VIR" ||
3677
- value == "WLF" ||
3678
- value == "ESH" ||
3679
- value == "YEM" ||
3680
- value == "ZMB" ||
3681
- value == "ZWE"));
3719
+ return typeof value == "string" && value.length == 3 && Alpha3.types.includes(value);
3682
3720
  }
3683
3721
  Alpha3.is = is;
3684
3722
  function from(country) {
@@ -3936,6 +3974,7 @@ const alpha2ToAlpha3$1 = {
3936
3974
  YE: "YEM",
3937
3975
  ZM: "ZMB",
3938
3976
  ZW: "ZWE",
3977
+ XK: "XKX",
3939
3978
  };
3940
3979
 
3941
3980
  function from$K(country) {
@@ -15700,427 +15739,191 @@ const names = {
15700
15739
  VA: "梵蒂冈",
15701
15740
  VC: "圣文森及格瑞那丁",
15702
15741
  VE: "委内瑞拉",
15703
- VG: "英属维尔京群岛",
15704
- VI: "美属维尔京群岛",
15705
- VN: "越南",
15706
- VU: "瓦努阿图",
15707
- WF: "瓦利斯和富图纳",
15708
- WS: "萨摩亚",
15709
- YE: "叶门",
15710
- YT: "马约特",
15711
- ZA: "南非",
15712
- ZM: "尚比亚",
15713
- ZW: "辛巴威",
15714
- XK: "科索",
15715
- };
15716
-
15717
- function from(language, country) {
15718
- let result;
15719
- switch (language) {
15720
- case "ar":
15721
- result = from$K(country);
15722
- break;
15723
- case "az":
15724
- result = from$J(country);
15725
- break;
15726
- case "be":
15727
- result = from$I(country);
15728
- break;
15729
- case "bg":
15730
- result = from$H(country);
15731
- break;
15732
- case "bs":
15733
- result = from$G(country);
15734
- break;
15735
- case "ca":
15736
- result = from$F(country);
15737
- break;
15738
- case "cs":
15739
- result = from$E(country);
15740
- break;
15741
- case "da":
15742
- result = from$D(country);
15743
- break;
15744
- case "de":
15745
- result = from$C(country);
15746
- break;
15747
- case "el":
15748
- result = from$B(country);
15749
- break;
15750
- default:
15751
- case "en":
15752
- result = from$A(country);
15753
- break;
15754
- case "es":
15755
- result = from$z(country);
15756
- break;
15757
- case "et":
15758
- result = from$y(country);
15759
- break;
15760
- case "fa":
15761
- result = from$x(country);
15762
- break;
15763
- case "fi":
15764
- result = from$w(country);
15765
- break;
15766
- case "fr":
15767
- result = from$v(country);
15768
- break;
15769
- case "he":
15770
- result = from$u(country);
15771
- break;
15772
- case "hr":
15773
- result = from$t(country);
15774
- break;
15775
- case "hu":
15776
- result = from$s(country);
15777
- break;
15778
- case "hy":
15779
- result = from$r(country);
15780
- break;
15781
- case "id":
15782
- result = from$q(country);
15783
- break;
15784
- case "it":
15785
- result = from$p(country);
15786
- break;
15787
- case "ja":
15788
- result = from$o(country);
15789
- break;
15790
- case "ka":
15791
- result = from$n(country);
15792
- break;
15793
- case "kk":
15794
- result = from$m(country);
15795
- break;
15796
- case "ko":
15797
- result = from$l(country);
15798
- break;
15799
- case "ky":
15800
- result = from$k(country);
15801
- break;
15802
- case "lt":
15803
- result = from$j(country);
15804
- break;
15805
- case "lv":
15806
- result = from$i(country);
15807
- break;
15808
- case "mk":
15809
- result = from$h(country);
15810
- break;
15811
- case "mn":
15812
- result = from$g(country);
15813
- break;
15814
- case "nb":
15815
- result = from$f(country);
15816
- break;
15817
- case "nl":
15818
- result = from$e(country);
15819
- break;
15820
- case "nn":
15821
- result = from$d(country);
15822
- break;
15823
- case "pl":
15824
- result = from$c(country);
15825
- break;
15826
- case "pt":
15827
- result = from$b(country);
15828
- break;
15829
- case "ro":
15830
- result = from$a(country);
15831
- break;
15832
- case "ru":
15833
- result = from$9(country);
15834
- break;
15835
- case "sk":
15836
- result = from$8(country);
15837
- break;
15838
- case "sl":
15839
- result = from$7(country);
15840
- break;
15841
- case "sr":
15842
- result = from$6(country);
15843
- break;
15844
- case "sv":
15845
- result = from$5(country);
15846
- break;
15847
- case "tr":
15848
- result = from$4(country);
15849
- break;
15850
- case "uk":
15851
- result = from$3(country);
15852
- break;
15853
- case "uz":
15854
- result = from$2(country);
15855
- break;
15856
- case "zh":
15857
- result = from$1(country);
15858
- break;
15859
- }
15860
- return result;
15861
- }
15862
-
15863
- var Numeric$1;
15864
- (function (Numeric) {
15865
- function is(value) {
15866
- return (typeof value == "number" &&
15867
- value >= 0 &&
15868
- value <= 999 &&
15869
- Number.isInteger(value) &&
15870
- (value == 4 ||
15871
- value == 248 ||
15872
- value == 8 ||
15873
- value == 12 ||
15874
- value == 16 ||
15875
- value == 20 ||
15876
- value == 24 ||
15877
- value == 660 ||
15878
- value == 10 ||
15879
- value == 28 ||
15880
- value == 32 ||
15881
- value == 51 ||
15882
- value == 533 ||
15883
- value == 36 ||
15884
- value == 40 ||
15885
- value == 31 ||
15886
- value == 44 ||
15887
- value == 48 ||
15888
- value == 50 ||
15889
- value == 52 ||
15890
- value == 112 ||
15891
- value == 56 ||
15892
- value == 84 ||
15893
- value == 204 ||
15894
- value == 60 ||
15895
- value == 64 ||
15896
- value == 68 ||
15897
- value == 535 ||
15898
- value == 70 ||
15899
- value == 72 ||
15900
- value == 74 ||
15901
- value == 76 ||
15902
- value == 86 ||
15903
- value == 96 ||
15904
- value == 100 ||
15905
- value == 854 ||
15906
- value == 108 ||
15907
- value == 132 ||
15908
- value == 116 ||
15909
- value == 120 ||
15910
- value == 124 ||
15911
- value == 136 ||
15912
- value == 140 ||
15913
- value == 148 ||
15914
- value == 152 ||
15915
- value == 156 ||
15916
- value == 162 ||
15917
- value == 166 ||
15918
- value == 170 ||
15919
- value == 174 ||
15920
- value == 178 ||
15921
- value == 180 ||
15922
- value == 184 ||
15923
- value == 188 ||
15924
- value == 384 ||
15925
- value == 191 ||
15926
- value == 192 ||
15927
- value == 531 ||
15928
- value == 196 ||
15929
- value == 203 ||
15930
- value == 208 ||
15931
- value == 262 ||
15932
- value == 212 ||
15933
- value == 214 ||
15934
- value == 218 ||
15935
- value == 818 ||
15936
- value == 222 ||
15937
- value == 226 ||
15938
- value == 232 ||
15939
- value == 233 ||
15940
- value == 748 ||
15941
- value == 231 ||
15942
- value == 238 ||
15943
- value == 234 ||
15944
- value == 242 ||
15945
- value == 246 ||
15946
- value == 250 ||
15947
- value == 254 ||
15948
- value == 258 ||
15949
- value == 260 ||
15950
- value == 266 ||
15951
- value == 270 ||
15952
- value == 268 ||
15953
- value == 276 ||
15954
- value == 288 ||
15955
- value == 292 ||
15956
- value == 300 ||
15957
- value == 304 ||
15958
- value == 308 ||
15959
- value == 312 ||
15960
- value == 316 ||
15961
- value == 320 ||
15962
- value == 831 ||
15963
- value == 324 ||
15964
- value == 624 ||
15965
- value == 328 ||
15966
- value == 332 ||
15967
- value == 334 ||
15968
- value == 336 ||
15969
- value == 340 ||
15970
- value == 344 ||
15971
- value == 348 ||
15972
- value == 352 ||
15973
- value == 356 ||
15974
- value == 360 ||
15975
- value == 364 ||
15976
- value == 368 ||
15977
- value == 372 ||
15978
- value == 833 ||
15979
- value == 376 ||
15980
- value == 380 ||
15981
- value == 388 ||
15982
- value == 392 ||
15983
- value == 832 ||
15984
- value == 400 ||
15985
- value == 398 ||
15986
- value == 404 ||
15987
- value == 296 ||
15988
- value == 408 ||
15989
- value == 410 ||
15990
- value == 414 ||
15991
- value == 417 ||
15992
- value == 418 ||
15993
- value == 428 ||
15994
- value == 422 ||
15995
- value == 426 ||
15996
- value == 430 ||
15997
- value == 434 ||
15998
- value == 438 ||
15999
- value == 440 ||
16000
- value == 442 ||
16001
- value == 446 ||
16002
- value == 450 ||
16003
- value == 454 ||
16004
- value == 458 ||
16005
- value == 462 ||
16006
- value == 466 ||
16007
- value == 470 ||
16008
- value == 584 ||
16009
- value == 474 ||
16010
- value == 478 ||
16011
- value == 480 ||
16012
- value == 175 ||
16013
- value == 484 ||
16014
- value == 583 ||
16015
- value == 498 ||
16016
- value == 492 ||
16017
- value == 496 ||
16018
- value == 499 ||
16019
- value == 500 ||
16020
- value == 504 ||
16021
- value == 508 ||
16022
- value == 104 ||
16023
- value == 516 ||
16024
- value == 520 ||
16025
- value == 524 ||
16026
- value == 528 ||
16027
- value == 540 ||
16028
- value == 554 ||
16029
- value == 558 ||
16030
- value == 562 ||
16031
- value == 566 ||
16032
- value == 570 ||
16033
- value == 574 ||
16034
- value == 807 ||
16035
- value == 580 ||
16036
- value == 578 ||
16037
- value == 512 ||
16038
- value == 586 ||
16039
- value == 585 ||
16040
- value == 275 ||
16041
- value == 591 ||
16042
- value == 598 ||
16043
- value == 600 ||
16044
- value == 604 ||
16045
- value == 608 ||
16046
- value == 612 ||
16047
- value == 616 ||
16048
- value == 620 ||
16049
- value == 630 ||
16050
- value == 634 ||
16051
- value == 638 ||
16052
- value == 642 ||
16053
- value == 643 ||
16054
- value == 646 ||
16055
- value == 652 ||
16056
- value == 654 ||
16057
- value == 659 ||
16058
- value == 662 ||
16059
- value == 663 ||
16060
- value == 666 ||
16061
- value == 670 ||
16062
- value == 882 ||
16063
- value == 674 ||
16064
- value == 678 ||
16065
- value == 682 ||
16066
- value == 686 ||
16067
- value == 688 ||
16068
- value == 690 ||
16069
- value == 694 ||
16070
- value == 702 ||
16071
- value == 534 ||
16072
- value == 703 ||
16073
- value == 705 ||
16074
- value == 90 ||
16075
- value == 706 ||
16076
- value == 710 ||
16077
- value == 239 ||
16078
- value == 728 ||
16079
- value == 724 ||
16080
- value == 144 ||
16081
- value == 729 ||
16082
- value == 740 ||
16083
- value == 744 ||
16084
- value == 752 ||
16085
- value == 756 ||
16086
- value == 760 ||
16087
- value == 158 ||
16088
- value == 762 ||
16089
- value == 834 ||
16090
- value == 764 ||
16091
- value == 626 ||
16092
- value == 768 ||
16093
- value == 772 ||
16094
- value == 776 ||
16095
- value == 780 ||
16096
- value == 788 ||
16097
- value == 792 ||
16098
- value == 795 ||
16099
- value == 796 ||
16100
- value == 798 ||
16101
- value == 800 ||
16102
- value == 804 ||
16103
- value == 784 ||
16104
- value == 826 ||
16105
- value == 840 ||
16106
- value == 581 ||
16107
- value == 858 ||
16108
- value == 860 ||
16109
- value == 548 ||
16110
- value == 862 ||
16111
- value == 704 ||
16112
- value == 92 ||
16113
- value == 850 ||
16114
- value == 876 ||
16115
- value == 732 ||
16116
- value == 887 ||
16117
- value == 894 ||
16118
- value == 716 ||
16119
- value == 280));
15742
+ VG: "英属维尔京群岛",
15743
+ VI: "美属维尔京群岛",
15744
+ VN: "越南",
15745
+ VU: "瓦努阿图",
15746
+ WF: "瓦利斯和富图纳",
15747
+ WS: "萨摩亚",
15748
+ YE: "叶门",
15749
+ YT: "马约特",
15750
+ ZA: "南非",
15751
+ ZM: "尚比亚",
15752
+ ZW: "辛巴威",
15753
+ XK: "科索",
15754
+ };
15755
+
15756
+ function from(language, country) {
15757
+ let result;
15758
+ switch (language) {
15759
+ case "ar":
15760
+ result = from$K(country);
15761
+ break;
15762
+ case "az":
15763
+ result = from$J(country);
15764
+ break;
15765
+ case "be":
15766
+ result = from$I(country);
15767
+ break;
15768
+ case "bg":
15769
+ result = from$H(country);
15770
+ break;
15771
+ case "bs":
15772
+ result = from$G(country);
15773
+ break;
15774
+ case "ca":
15775
+ result = from$F(country);
15776
+ break;
15777
+ case "cs":
15778
+ result = from$E(country);
15779
+ break;
15780
+ case "da":
15781
+ result = from$D(country);
15782
+ break;
15783
+ case "de":
15784
+ result = from$C(country);
15785
+ break;
15786
+ case "el":
15787
+ result = from$B(country);
15788
+ break;
15789
+ default:
15790
+ case "en":
15791
+ result = from$A(country);
15792
+ break;
15793
+ case "es":
15794
+ result = from$z(country);
15795
+ break;
15796
+ case "et":
15797
+ result = from$y(country);
15798
+ break;
15799
+ case "fa":
15800
+ result = from$x(country);
15801
+ break;
15802
+ case "fi":
15803
+ result = from$w(country);
15804
+ break;
15805
+ case "fr":
15806
+ result = from$v(country);
15807
+ break;
15808
+ case "he":
15809
+ result = from$u(country);
15810
+ break;
15811
+ case "hr":
15812
+ result = from$t(country);
15813
+ break;
15814
+ case "hu":
15815
+ result = from$s(country);
15816
+ break;
15817
+ case "hy":
15818
+ result = from$r(country);
15819
+ break;
15820
+ case "id":
15821
+ result = from$q(country);
15822
+ break;
15823
+ case "it":
15824
+ result = from$p(country);
15825
+ break;
15826
+ case "ja":
15827
+ result = from$o(country);
15828
+ break;
15829
+ case "ka":
15830
+ result = from$n(country);
15831
+ break;
15832
+ case "kk":
15833
+ result = from$m(country);
15834
+ break;
15835
+ case "ko":
15836
+ result = from$l(country);
15837
+ break;
15838
+ case "ky":
15839
+ result = from$k(country);
15840
+ break;
15841
+ case "lt":
15842
+ result = from$j(country);
15843
+ break;
15844
+ case "lv":
15845
+ result = from$i(country);
15846
+ break;
15847
+ case "mk":
15848
+ result = from$h(country);
15849
+ break;
15850
+ case "mn":
15851
+ result = from$g(country);
15852
+ break;
15853
+ case "nb":
15854
+ result = from$f(country);
15855
+ break;
15856
+ case "nl":
15857
+ result = from$e(country);
15858
+ break;
15859
+ case "nn":
15860
+ result = from$d(country);
15861
+ break;
15862
+ case "pl":
15863
+ result = from$c(country);
15864
+ break;
15865
+ case "pt":
15866
+ result = from$b(country);
15867
+ break;
15868
+ case "ro":
15869
+ result = from$a(country);
15870
+ break;
15871
+ case "ru":
15872
+ result = from$9(country);
15873
+ break;
15874
+ case "sk":
15875
+ result = from$8(country);
15876
+ break;
15877
+ case "sl":
15878
+ result = from$7(country);
15879
+ break;
15880
+ case "sr":
15881
+ result = from$6(country);
15882
+ break;
15883
+ case "sv":
15884
+ result = from$5(country);
15885
+ break;
15886
+ case "tr":
15887
+ result = from$4(country);
15888
+ break;
15889
+ case "uk":
15890
+ result = from$3(country);
15891
+ break;
15892
+ case "uz":
15893
+ result = from$2(country);
15894
+ break;
15895
+ case "zh":
15896
+ result = from$1(country);
15897
+ break;
15898
+ }
15899
+ return result;
15900
+ }
15901
+
15902
+ var Numeric$1;
15903
+ (function (Numeric) {
15904
+ Numeric.types = [
15905
+ 4, 8, 10, 12, 16, 20, 24, 28, 31, 32, 36, 40, 44, 48, 50, 51, 52, 56, 60, 64, 68, 70, 72, 74, 76, 84, 86, 90, 92,
15906
+ 96, 100, 104, 108, 112, 116, 120, 124, 132, 136, 140, 144, 148, 152, 156, 158, 162, 166, 170, 174, 175, 178, 180,
15907
+ 184, 188, 191, 192, 196, 203, 204, 208, 212, 214, 218, 222, 226, 231, 232, 233, 234, 238, 239, 242, 246, 248, 250,
15908
+ 254, 258, 260, 262, 266, 268, 270, 275, 276, 280, 288, 292, 296, 300, 304, 308, 312, 316, 320, 324, 328, 332, 334,
15909
+ 336, 340, 344, 348, 352, 356, 360, 364, 368, 372, 376, 380, 384, 388, 392, 398, 400, 404, 408, 410, 414, 417, 418,
15910
+ 422, 426, 428, 430, 434, 438, 440, 442, 446, 450, 454, 458, 462, 466, 470, 474, 478, 480, 484, 492, 496, 498, 499,
15911
+ 500, 504, 508, 512, 516, 520, 524, 528, 531, 533, 534, 535, 540, 548, 554, 558, 562, 566, 570, 574, 578, 580, 581,
15912
+ 583, 584, 585, 586, 591, 598, 600, 604, 608, 612, 616, 620, 624, 626, 630, 634, 638, 642, 643, 646, 652, 654, 659,
15913
+ 660, 662, 663, 666, 670, 674, 678, 682, 686, 688, 690, 694, 702, 703, 704, 705, 706, 710, 716, 724, 728, 729, 732,
15914
+ 740, 744, 748, 752, 756, 760, 762, 764, 768, 772, 776, 780, 784, 788, 792, 795, 796, 798, 800, 804, 807, 818, 826,
15915
+ 831, 832, 833, 834, 840, 850, 854, 858, 860, 862, 876, 882, 887, 894, 926,
15916
+ ];
15917
+ function is(value) {
15918
+ return (typeof value == "number" &&
15919
+ value >= 0 &&
15920
+ value <= 999 &&
15921
+ Number.isInteger(value) &&
15922
+ Numeric.types.includes(value));
16120
15923
  }
16121
15924
  Numeric.is = is;
16122
15925
  function from(country) {
16123
- return country.length == 3 ? from(Alpha2$1.from(country)) : alpha2ToNumeric$1[country];
15926
+ return country.length == 2 ? alpha2ToNumeric$1[country] : from(Alpha2$1.from(country));
16124
15927
  }
16125
15928
  Numeric.from = from;
16126
15929
  })(Numeric$1 || (Numeric$1 = {}));
@@ -16374,6 +16177,7 @@ const alpha2ToNumeric$1 = {
16374
16177
  YE: 887,
16375
16178
  ZM: 894,
16376
16179
  ZW: 716,
16180
+ XK: 926,
16377
16181
  };
16378
16182
 
16379
16183
  const currencies$1 = [
@@ -17546,14 +17350,16 @@ var Date$2;
17546
17350
  }
17547
17351
  Date.now = now;
17548
17352
  function localize(value, locale, timezone) {
17549
- return (is(value) ? parse(value) : value)
17353
+ return ((is(value) ? parse(value) : value)
17550
17354
  .toLocaleString(locale ? locale : Intl.DateTimeFormat().resolvedOptions().locale, {
17551
17355
  year: "numeric",
17552
17356
  month: "2-digit",
17553
17357
  day: "2-digit",
17554
17358
  timeZone: timezone ?? Intl.DateTimeFormat().resolvedOptions().timeZone,
17555
17359
  })
17556
- .substring(0, 10);
17360
+ .substring(0, 10)
17361
+ // See DateTime:localize for note.
17362
+ .replaceAll(" ", " "));
17557
17363
  }
17558
17364
  Date.localize = localize;
17559
17365
  function next(date, days = 1) {
@@ -17728,9 +17534,9 @@ var DateSpan$1;
17728
17534
  DateSpan.is = is;
17729
17535
  })(DateSpan$1 || (DateSpan$1 = {}));
17730
17536
 
17731
- var TimeZone;
17732
- (function (TimeZone) {
17733
- TimeZone.values = [
17537
+ var TimeZoneOffset;
17538
+ (function (TimeZoneOffset) {
17539
+ TimeZoneOffset.values = [
17734
17540
  "-12:00",
17735
17541
  "-11:00",
17736
17542
  "-10:00",
@@ -17745,7 +17551,9 @@ var TimeZone;
17745
17551
  "-03:00",
17746
17552
  "-02:00",
17747
17553
  "-01:00",
17554
+ "-00:00",
17748
17555
  "Z",
17556
+ "+00:00",
17749
17557
  "+01:00",
17750
17558
  "+02:00",
17751
17559
  "+03:00",
@@ -17771,10 +17579,10 @@ var TimeZone;
17771
17579
  "+14:00",
17772
17580
  ];
17773
17581
  function is(value) {
17774
- return typeof value == "string" && TimeZone.values.includes(value);
17582
+ return typeof value == "string" && TimeZoneOffset.values.includes(value);
17775
17583
  }
17776
- TimeZone.is = is;
17777
- })(TimeZone || (TimeZone = {}));
17584
+ TimeZoneOffset.is = is;
17585
+ })(TimeZoneOffset || (TimeZoneOffset = {}));
17778
17586
 
17779
17587
  var DateTime$1;
17780
17588
  (function (DateTime) {
@@ -17788,6 +17596,20 @@ var DateTime$1;
17788
17596
  return (v[0] >= "0" && v[0] <= "5" && v[1] >= "0" && v[1] <= "9") || v == "60" || v == "61";
17789
17597
  }
17790
17598
  function is(value) {
17599
+ // 2019-04-01T01
17600
+ // 2019-04-01T01Z
17601
+ // 2019-04-01T01+01:00
17602
+ // 2019-04-01T01:11
17603
+ // 2019-04-01T01:11Z
17604
+ // 2019-04-01T01:11+01:00
17605
+ // 2019-04-01T01:11:29
17606
+ // 2019-04-01T01:11:29Z
17607
+ // 2019-04-01T01:11:29+01:00
17608
+ // 2019-04-01T01:11:29.000
17609
+ // 2019-04-01T01:11:29.000Z
17610
+ // 2019-04-01T01:11:29.000+01:00
17611
+ // 01234567890123456789012345678
17612
+ // 0 1 2
17791
17613
  return (typeof value == "string" &&
17792
17614
  value.length >= 13 &&
17793
17615
  value.length <= 29 &&
@@ -17795,21 +17617,21 @@ var DateTime$1;
17795
17617
  value[10] == "T" &&
17796
17618
  isHours(value.substring(11, 13)) &&
17797
17619
  (value.length == 13 ||
17798
- TimeZone.is(value.substring(13)) ||
17620
+ TimeZoneOffset.is(value.substring(13)) ||
17799
17621
  (value[13] == ":" &&
17800
17622
  value.length >= 16 &&
17801
17623
  isMinutes(value.substring(14, 16)) &&
17802
17624
  (value.length == 16 ||
17803
- TimeZone.is(value.substring(16)) ||
17625
+ TimeZoneOffset.is(value.substring(16)) ||
17804
17626
  (value[16] == ":" &&
17805
17627
  value.length >= 19 &&
17806
17628
  isSeconds(value.substring(17, 19)) &&
17807
17629
  (value.length == 19 ||
17808
- TimeZone.is(value.substring(19)) ||
17630
+ TimeZoneOffset.is(value.substring(19)) ||
17809
17631
  (value[19] == "." &&
17810
17632
  value.length >= 23 &&
17811
17633
  [...value.substring(20, 23)].every(c => c >= "0" && c <= "9") &&
17812
- (value.length == 23 || TimeZone.is(value.substring(23))))))))));
17634
+ (value.length == 23 || TimeZoneOffset.is(value.substring(23))))))))));
17813
17635
  }
17814
17636
  DateTime.is = is;
17815
17637
  function parse(value) {
@@ -17821,10 +17643,13 @@ var DateTime$1;
17821
17643
  switch (resolution) {
17822
17644
  case "days":
17823
17645
  value = value * 24;
17646
+ // fallthrough...
17824
17647
  case "hours":
17825
17648
  value = value * 60;
17649
+ // fallthrough...
17826
17650
  case "minutes":
17827
17651
  value = value * 60;
17652
+ // fallthrough...
17828
17653
  case "seconds":
17829
17654
  value = value * 1000;
17830
17655
  }
@@ -17833,17 +17658,52 @@ var DateTime$1;
17833
17658
  return value.toISOString();
17834
17659
  }
17835
17660
  DateTime.create = create;
17661
+ /**
17662
+ * Return local time with offset.
17663
+ * Note: During DST-change, this might be wrong.
17664
+ */
17665
+ function fromLocalDateTime(localDateTime, timeZone) {
17666
+ // Cut off any time-zone-information:
17667
+ // TODO: Use the information, and just change offset.
17668
+ localDateTime = localDateTime.replace(/(Z|([+-].{5}))?$/, "");
17669
+ // Create a Date object with the specified time as UTC
17670
+ const utcDateTime = new globalThis.Date(`${localDateTime}Z`);
17671
+ const localDate = new globalThis.Date(utcDateTime.toLocaleString("sv-SE", { timeZone: timeZone }).replace(" ", "T") + "Z");
17672
+ // Calculate the time difference in minutes
17673
+ const diffInMinutes = (localDate.getTime() - utcDateTime.getTime()) / 60000;
17674
+ // Calculate the timezone's offset in hours and minutes
17675
+ const offsetHours = Math.floor(Math.abs(diffInMinutes) / 60)
17676
+ .toString()
17677
+ .padStart(2, "0");
17678
+ const offsetMinutes = (Math.abs(diffInMinutes) % 60).toString().padStart(2, "0");
17679
+ // Create the timezone string
17680
+ const timeZoneString = `${diffInMinutes >= 0 ? "+" : "-"}${offsetHours}:${offsetMinutes}`;
17681
+ // Return the formatted date string with timezone information
17682
+ return `${localDateTime}${timeZoneString}`;
17683
+ }
17684
+ DateTime.fromLocalDateTime = fromLocalDateTime;
17836
17685
  function now() {
17837
17686
  return create(new globalThis.Date());
17838
17687
  }
17839
17688
  DateTime.now = now;
17840
- function localize(value, locale, timeZone) {
17689
+ function localize(value, formatOrLocale, localeOrTimeZone) {
17841
17690
  let result;
17842
- if (typeof locale == "object") {
17843
- const localeString = timeZone ? timeZone : Intl.DateTimeFormat().resolvedOptions().locale;
17844
- result = (is(value) ? parse(value) : value).toLocaleString(localeString, locale);
17691
+ if (typeof formatOrLocale == "object") {
17692
+ // formatOrLocale is Format
17693
+ // localeOrTimeZone is Locale | undefined
17694
+ const localeString = localeOrTimeZone ? localeOrTimeZone : Intl.DateTimeFormat().resolvedOptions().locale;
17695
+ result = (is(value) ? parse(value) : value)
17696
+ .toLocaleString(localeString, formatOrLocale)
17697
+ // For consistency, replace NNBSP with space:
17698
+ // Unicode has decided to use `Narrow No-Break Space (NNBSP)` (U+202F) instead of space in some cases.
17699
+ // It breaks tests, when running in different environments.
17700
+ // https://icu.unicode.org/download/72#:~:text=In%20many%20formatting%20patterns%2C%20ASCII%20spaces%20are%20replaced%20with%20Unicode%20spaces%20(e.g.%2C%20a%20%22thin%20space%22)
17701
+ // This can be removed, with a breaking change and updated tests, when all systems use updated versions of ICU.
17702
+ .replaceAll(" ", " ");
17845
17703
  }
17846
17704
  else {
17705
+ // formatOrLocale is Locale | undefined
17706
+ // localeOrTimeZone is timeZone | undefined
17847
17707
  const precision = is(value) ? DateTime.precision(value) : "milliseconds";
17848
17708
  result = localize(value, {
17849
17709
  year: "numeric",
@@ -17852,23 +17712,28 @@ var DateTime$1;
17852
17712
  hour: "2-digit",
17853
17713
  minute: precision == "minutes" || precision == "seconds" || precision == "milliseconds" ? "2-digit" : undefined,
17854
17714
  second: precision == "seconds" || precision == "milliseconds" ? "2-digit" : undefined,
17855
- timeZone: timeZone,
17856
- }, locale);
17715
+ timeZone: localeOrTimeZone,
17716
+ }, formatOrLocale);
17857
17717
  }
17858
17718
  return result;
17859
17719
  }
17860
17720
  DateTime.localize = localize;
17721
+ /** @deprecated Use timeZoneOffset() */
17861
17722
  function timeZone(value) {
17862
- const result = value[value.length - 1] == "Z" ? "Z" : value.substring(value.length - 6);
17863
- return TimeZone.is(result) ? result : "";
17723
+ return timeZoneOffset(value);
17864
17724
  }
17865
17725
  DateTime.timeZone = timeZone;
17726
+ function timeZoneOffset(value) {
17727
+ const result = value[value.length - 1] == "Z" ? "Z" : value.substring(value.length - 6);
17728
+ return TimeZoneOffset.is(result) ? result : "";
17729
+ }
17730
+ DateTime.timeZoneOffset = timeZoneOffset;
17866
17731
  function timeZoneShort(value) {
17867
17732
  return parse(value).getTimezoneOffset();
17868
17733
  }
17869
17734
  DateTime.timeZoneShort = timeZoneShort;
17870
17735
  function precision(value) {
17871
- const zone = timeZone(value);
17736
+ const zone = timeZoneOffset(value);
17872
17737
  const time = value.substring(0, value.length - zone.length).split("T", 2)[1];
17873
17738
  let result;
17874
17739
  switch (time.length) {
@@ -17890,7 +17755,8 @@ var DateTime$1;
17890
17755
  }
17891
17756
  DateTime.precision = precision;
17892
17757
  function truncate(value, precision) {
17893
- const zone = timeZone(value);
17758
+ const zone = timeZoneOffset(value);
17759
+ // eslint-disable-next-line prefer-const
17894
17760
  let [date, time] = value.split("T", 2);
17895
17761
  time = time.substring(0, time.length - zone.length);
17896
17762
  switch (time.length) {
@@ -17927,10 +17793,13 @@ var DateTime$1;
17927
17793
  switch (resolution) {
17928
17794
  case "days":
17929
17795
  result = Math.round(result / 24);
17796
+ // fallthrough...
17930
17797
  case "hours":
17931
17798
  result = Math.round(result / 60);
17799
+ // fallthrough...
17932
17800
  case "minutes":
17933
17801
  result = Math.round(result / 60);
17802
+ // fallthrough...
17934
17803
  case "seconds":
17935
17804
  result = Math.round(result / 1000);
17936
17805
  }
@@ -18029,7 +17898,7 @@ var DateTime$1;
18029
17898
  const result = parse(time);
18030
17899
  const offset = result.getTimezoneOffset();
18031
17900
  result.setDate(result.getDate() + days);
18032
- result.setMinutes(result.getMinutes() + offset - result.getTimezoneOffset());
17901
+ result.setMinutes(result.getMinutes() + offset - result.getTimezoneOffset()); // handle changing potential daylight saving time
18033
17902
  return DateTime.create(result);
18034
17903
  }
18035
17904
  DateTime.nextDay = nextDay;
@@ -18041,7 +17910,7 @@ var DateTime$1;
18041
17910
  const result = parse(time);
18042
17911
  const offset = result.getTimezoneOffset();
18043
17912
  result.setMonth(result.getMonth() + months);
18044
- result.setMinutes(result.getMinutes() + offset - result.getTimezoneOffset());
17913
+ result.setMinutes(result.getMinutes() + offset - result.getTimezoneOffset()); // handle changing potential daylight saving time
18045
17914
  return DateTime.create(result);
18046
17915
  }
18047
17916
  DateTime.nextMonth = nextMonth;
@@ -18095,14 +17964,40 @@ var DateTime$1;
18095
17964
  return Number.parseInt(time.substring(20, 23));
18096
17965
  }
18097
17966
  DateTime.getMillisecond = getMillisecond;
18098
- function span(time, relative) {
18099
- return {
18100
- ...Date$2.span(time, relative),
18101
- hours: getHour(time) - getHour(relative),
18102
- minutes: getMinute(time) - getMinute(relative),
18103
- seconds: getSecond(time) - getSecond(relative),
18104
- milliseconds: getMillisecond(time) - getMillisecond(relative),
18105
- };
17967
+ function span(time, relative, greatestUnit = "years") {
17968
+ let result;
17969
+ if (greatestUnit == "years") {
17970
+ result = {
17971
+ ...Date$2.span(time, relative),
17972
+ hours: getHour(time) - getHour(relative),
17973
+ minutes: getMinute(time) - getMinute(relative),
17974
+ seconds: getSecond(time) - getSecond(relative),
17975
+ milliseconds: getMillisecond(time) - getMillisecond(relative),
17976
+ };
17977
+ }
17978
+ else {
17979
+ let milliseconds = epoch(time, "milliseconds") - epoch(relative, "milliseconds");
17980
+ const sign = Math.sign(milliseconds);
17981
+ milliseconds = Math.abs(milliseconds);
17982
+ result = {};
17983
+ switch (greatestUnit) {
17984
+ case "hours":
17985
+ result.hours = sign * Math.floor(milliseconds / (3600 * 1000));
17986
+ milliseconds -= sign * result.hours * 3600 * 1000;
17987
+ // Fallthrough...
17988
+ case "minutes":
17989
+ result.minutes = sign * Math.floor(milliseconds / (60 * 1000));
17990
+ milliseconds -= sign * result.minutes * 60 * 1000;
17991
+ // Fallthrough...
17992
+ case "seconds":
17993
+ result.seconds = sign * Math.floor(milliseconds / 1000);
17994
+ milliseconds -= sign * result.seconds * 1000;
17995
+ // Fallthrough...
17996
+ case "milliseconds":
17997
+ result.milliseconds = sign * milliseconds;
17998
+ }
17999
+ }
18000
+ return result;
18106
18001
  }
18107
18002
  DateTime.span = span;
18108
18003
  DateTime.epochStart = "0000-01-01T00:00:00.000Z";
@@ -18116,6 +18011,11 @@ var DateTime$1;
18116
18011
  }
18117
18012
  DateTime.invert = invert;
18118
18013
  })(DateTime$1 || (DateTime$1 = {}));
18014
+ /*
18015
+ 2021-01-10T13:37:42.000Z
18016
+ 012345678901234567890123
18017
+ 0 1 2
18018
+ */
18119
18019
 
18120
18020
  class Transcoder$1 {
18121
18021
  }
@@ -18776,51 +18676,51 @@ var Encoding$1;
18776
18676
  case "CCSID 819":
18777
18677
  case "WE8ISO8859P1":
18778
18678
  case "ISO 8859-1":
18779
- case "ISO-8859-1":
18679
+ case "ISO-8859-1": // Western Europe
18780
18680
  result = "ISO-8859-1";
18781
18681
  break;
18782
18682
  case "ISO-8859-2":
18783
18683
  result = "ISO-8859-2";
18784
- break;
18684
+ break; // Western and Central Europe
18785
18685
  case "ISO-8859-3":
18786
18686
  result = "ISO-8859-3";
18787
- break;
18687
+ break; // Western Europe and South European (Turkish, Maltese plus Esperanto)
18788
18688
  case "ISO-8859-4":
18789
18689
  result = "ISO-8859-4";
18790
- break;
18690
+ break; // Western Europe and Baltic countries (Lithuania, Estonia, Latvia and Lapp)
18791
18691
  case "ISO-8859-5":
18792
18692
  result = "ISO-8859-5";
18793
- break;
18693
+ break; // Cyrillic alphabet
18794
18694
  case "ISO-8859-6":
18795
18695
  result = "ISO-8859-6";
18796
- break;
18696
+ break; // Arabic
18797
18697
  case "ISO-8859-7":
18798
18698
  result = "ISO-8859-7";
18799
- break;
18699
+ break; // Greek
18800
18700
  case "ISO-8859-8":
18801
18701
  result = "ISO-8859-8";
18802
- break;
18702
+ break; // Hebrew
18803
18703
  case "ISO-8859-9":
18804
18704
  result = "ISO-8859-9";
18805
- break;
18705
+ break; // Western Europe with amended Turkish character set
18806
18706
  case "ISO-8859-10":
18807
18707
  result = "ISO-8859-10";
18808
- break;
18708
+ break; // Western Europe with rationalised character set for Nordic languages, including complete Icelandic set
18809
18709
  case "ISO-8859-11":
18810
18710
  result = "ISO-8859-11";
18811
- break;
18711
+ break; // Thai
18812
18712
  case "ISO-8859-13":
18813
18713
  result = "ISO-8859-13";
18814
- break;
18714
+ break; // Baltic languages plus Polish
18815
18715
  case "ISO-8859-14":
18816
18716
  result = "ISO-8859-14";
18817
- break;
18717
+ break; // Celtic languages (Irish Gaelic, Scottish, Welsh)
18818
18718
  case "ISO-8859-15":
18819
18719
  result = "ISO-8859-15";
18820
- break;
18720
+ break; // Added the Euro sign and other rationalisations to ISO 8859-1
18821
18721
  case "ISO-8859-16":
18822
18722
  result = "ISO-8859-16";
18823
- break;
18723
+ break; // Central, Eastern and Southern European languages (Albanian, Bosnian, Croatian, Hungarian, Polish, Romanian, Serbian and Slovenian, but also French, German, Italian and Irish Gaelic)
18824
18724
  case "CP437":
18825
18725
  result = "CP437";
18826
18726
  break;
@@ -18871,31 +18771,31 @@ var Encoding$1;
18871
18771
  break;
18872
18772
  case "WINDOWS-1250":
18873
18773
  result = "Windows-1250";
18874
- break;
18774
+ break; // Central European languages that use Latin script, (Polish, Czech, Slovak, Hungarian, Slovene, Serbian, Croatian, Bosnian, Romanian and Albanian)
18875
18775
  case "WINDOWS-1251":
18876
18776
  result = "Windows-1251";
18877
- break;
18777
+ break; // Cyrillic alphabets
18878
18778
  case "WINDOWS-1252":
18879
18779
  result = "Windows-1252";
18880
- break;
18780
+ break; // Western languages
18881
18781
  case "WINDOWS-1253":
18882
18782
  result = "Windows-1253";
18883
- break;
18783
+ break; // Greek
18884
18784
  case "WINDOWS-1254":
18885
18785
  result = "Windows-1254";
18886
- break;
18786
+ break; // Turkish
18887
18787
  case "WINDOWS-1255":
18888
18788
  result = "Windows-1255";
18889
- break;
18789
+ break; // Hebrew
18890
18790
  case "WINDOWS-1256":
18891
18791
  result = "Windows-1256";
18892
- break;
18792
+ break; // Arabic
18893
18793
  case "WINDOWS-1257":
18894
18794
  result = "Windows-1257";
18895
- break;
18795
+ break; // Baltic languages
18896
18796
  case "WINDOWS-1258":
18897
18797
  result = "Windows-1258";
18898
- break;
18798
+ break; // Vietnamese
18899
18799
  case "MAC OS ROMAN":
18900
18800
  result = "Mac OS Roman";
18901
18801
  break;
@@ -19858,7 +19758,7 @@ var TimeSpan$1;
19858
19758
  }
19859
19759
  TimeSpan.is = is;
19860
19760
  function toHours(value, round) {
19861
- const result = (dateToMilliseconds(value) + (value.milliseconds ?? 0)) / (60 * 60 * 1000) +
19761
+ const result = (dateToMilliseconds$1(value) + (value.milliseconds ?? 0)) / (60 * 60 * 1000) +
19862
19762
  (value.seconds ?? 0) / (60 * 60) +
19863
19763
  (value.minutes ?? 0) / 60 +
19864
19764
  (value.hours ?? 0);
@@ -19866,7 +19766,7 @@ var TimeSpan$1;
19866
19766
  }
19867
19767
  TimeSpan.toHours = toHours;
19868
19768
  function toMinutes(value, round) {
19869
- const result = (dateToMilliseconds(value) + (value.milliseconds ?? 0)) / (60 * 1000) +
19769
+ const result = (dateToMilliseconds$1(value) + (value.milliseconds ?? 0)) / (60 * 1000) +
19870
19770
  (value.seconds ?? 0) / 60 +
19871
19771
  (value.minutes ?? 0) +
19872
19772
  (value.hours ?? 0) * 60;
@@ -19874,7 +19774,7 @@ var TimeSpan$1;
19874
19774
  }
19875
19775
  TimeSpan.toMinutes = toMinutes;
19876
19776
  function toSeconds(value, round) {
19877
- const result = (dateToMilliseconds(value) + (value.milliseconds ?? 0)) / 1000 +
19777
+ const result = (dateToMilliseconds$1(value) + (value.milliseconds ?? 0)) / 1000 +
19878
19778
  (value.seconds ?? 0) +
19879
19779
  (value.minutes ?? 0) * 60 +
19880
19780
  (value.hours ?? 0) * 60 * 60;
@@ -19882,7 +19782,7 @@ var TimeSpan$1;
19882
19782
  }
19883
19783
  TimeSpan.toSeconds = toSeconds;
19884
19784
  function toMilliseconds(value, round) {
19885
- const result = dateToMilliseconds(value) +
19785
+ const result = dateToMilliseconds$1(value) +
19886
19786
  (value.milliseconds ?? 0) +
19887
19787
  (value.seconds ?? 0) * 1000 +
19888
19788
  (value.minutes ?? 0) * 60 * 1000 +
@@ -19891,7 +19791,7 @@ var TimeSpan$1;
19891
19791
  }
19892
19792
  TimeSpan.toMilliseconds = toMilliseconds;
19893
19793
  })(TimeSpan$1 || (TimeSpan$1 = {}));
19894
- function dateToMilliseconds(span) {
19794
+ function dateToMilliseconds$1(span) {
19895
19795
  const now = Date.UTC(0, 0);
19896
19796
  const date = new Date(now);
19897
19797
  const future = Date.UTC(date.getUTCFullYear() + (span.years ?? 0), date.getUTCMonth() + (span.months ?? 0), date.getUTCDate() + (span.days ?? 0), date.getUTCHours(), date.getUTCMinutes(), date.getUTCSeconds(), date.getUTCMilliseconds());
@@ -19907,6 +19807,21 @@ function performRound$1(value, round) {
19907
19807
  : Math.round(value);
19908
19808
  }
19909
19809
 
19810
+ var TimeZone$1;
19811
+ (function (TimeZone) {
19812
+ function is(value) {
19813
+ let result;
19814
+ try {
19815
+ result = typeof value == "string" && !!new Intl.DateTimeFormat("en-GB", { timeZone: value });
19816
+ }
19817
+ catch (error) {
19818
+ result = false;
19819
+ }
19820
+ return result;
19821
+ }
19822
+ TimeZone.is = is;
19823
+ })(TimeZone$1 || (TimeZone$1 = {}));
19824
+
19910
19825
  function month(date) {
19911
19826
  const d = new Date(date);
19912
19827
  d.setDate(1);
@@ -23789,7 +23704,8 @@ var Date$1;
23789
23704
  function is(value) {
23790
23705
  return (typeof value == "string" &&
23791
23706
  value.length == 10 &&
23792
- /^(\d{4}-[01]\d-[0-3]\d)|(\d{4}-[01]\d-[0-3]\d)|(\d{4}-[01]\d-[0-3]\d)$/.test(value));
23707
+ new globalThis.Date(value).toString() != "Invalid Date" &&
23708
+ create(new globalThis.Date(value)) == value);
23793
23709
  }
23794
23710
  Date.is = is;
23795
23711
  function parse(value, time) {
@@ -23900,22 +23816,49 @@ var Date$1;
23900
23816
  return Date.create(result);
23901
23817
  }
23902
23818
  Date.lastOfWeek = lastOfWeek;
23903
- function getYear(time) {
23904
- return Number.parseInt(time.substring(0, 4));
23819
+ function getYear(date) {
23820
+ return Number.parseInt(date.substring(0, 4));
23905
23821
  }
23906
23822
  Date.getYear = getYear;
23907
- function getMonth(time) {
23908
- return Number.parseInt(time.substring(5, 7));
23823
+ function getMonth(date) {
23824
+ return Number.parseInt(date.substring(5, 7));
23909
23825
  }
23910
23826
  Date.getMonth = getMonth;
23911
- function getDay(time) {
23912
- return Number.parseInt(time.substring(8, 10));
23827
+ function getDay(date) {
23828
+ return Number.parseInt(date.substring(8, 10));
23913
23829
  }
23914
23830
  Date.getDay = getDay;
23915
- function getWeekDay(time) {
23916
- return new globalThis.Date(time).getDay();
23831
+ function getWeekDay(date) {
23832
+ return new globalThis.Date(date).getDay();
23917
23833
  }
23918
23834
  Date.getWeekDay = getWeekDay;
23835
+ function nextWeekday(date, days = 1, holidays = []) {
23836
+ const holidaySet = new Set(holidays);
23837
+ let result = next(date, days);
23838
+ let weekday = getWeekDay(result);
23839
+ while (weekday == 6 || weekday == 0 || holidaySet.has(result)) {
23840
+ result = next(result, weekday == 6 ? 2 : 1);
23841
+ weekday = getWeekDay(result);
23842
+ }
23843
+ return result;
23844
+ }
23845
+ Date.nextWeekday = nextWeekday;
23846
+ function span(date, relative) {
23847
+ return {
23848
+ years: getYear(date) - getYear(relative),
23849
+ months: getMonth(date) - getMonth(relative),
23850
+ days: getDay(date) - getDay(relative),
23851
+ };
23852
+ }
23853
+ Date.span = span;
23854
+ Date.epochStart = "0000-01-01";
23855
+ Date.epochEnd = "9999-12-31";
23856
+ function invert(date) {
23857
+ return `${(9999 - getYear(date)).toFixed(0).padStart(4, "0")}-${(13 - getMonth(date))
23858
+ .toFixed(0)
23859
+ .padStart(2, "0")}-${(32 - getDay(date)).toFixed(0).padStart(2, "0")}`;
23860
+ }
23861
+ Date.invert = invert;
23919
23862
  })(Date$1 || (Date$1 = {}));
23920
23863
 
23921
23864
  var DateRange;
@@ -23953,15 +23896,92 @@ var DateSpan;
23953
23896
  DateSpan.is = is;
23954
23897
  })(DateSpan || (DateSpan = {}));
23955
23898
 
23899
+ var TimeZone;
23900
+ (function (TimeZone) {
23901
+ TimeZone.values = [
23902
+ "-12:00",
23903
+ "-11:00",
23904
+ "-10:00",
23905
+ "-09:30",
23906
+ "-09:00",
23907
+ "-08:00",
23908
+ "-07:00",
23909
+ "-06:00",
23910
+ "-05:00",
23911
+ "-04:00",
23912
+ "-03:30",
23913
+ "-03:00",
23914
+ "-02:00",
23915
+ "-01:00",
23916
+ "Z",
23917
+ "+01:00",
23918
+ "+02:00",
23919
+ "+03:00",
23920
+ "+03:30",
23921
+ "+04:00",
23922
+ "+04:30",
23923
+ "+05:00",
23924
+ "+05:30",
23925
+ "+05:45",
23926
+ "+06:00",
23927
+ "+06:30",
23928
+ "+07:00",
23929
+ "+08:00",
23930
+ "+08:45",
23931
+ "+09:00",
23932
+ "+09:30",
23933
+ "+10:00",
23934
+ "+10:30",
23935
+ "+11:00",
23936
+ "+12:00",
23937
+ "+12:45",
23938
+ "+13:00",
23939
+ "+14:00",
23940
+ ];
23941
+ function is(value) {
23942
+ return typeof value == "string" && TimeZone.values.includes(value);
23943
+ }
23944
+ TimeZone.is = is;
23945
+ })(TimeZone || (TimeZone = {}));
23946
+
23956
23947
  var DateTime;
23957
23948
  (function (DateTime) {
23949
+ function isHours(v) {
23950
+ return (v[0] >= "0" && v[0] <= "1" && v[1] >= "0" && v[1] <= "9") || (v[0] == "2" && v[1] >= "0" && v[1] <= "3");
23951
+ }
23952
+ function isMinutes(v) {
23953
+ return v[0] >= "0" && v[0] <= "5" && v[1] >= "0" && v[1] <= "9";
23954
+ }
23955
+ function isSeconds(v) {
23956
+ return (v[0] >= "0" && v[0] <= "5" && v[1] >= "0" && v[1] <= "9") || v == "60" || v == "61";
23957
+ }
23958
23958
  function is(value) {
23959
23959
  return (typeof value == "string" &&
23960
- /^(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+)|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d)|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d)$/.test(value));
23960
+ value.length >= 13 &&
23961
+ value.length <= 29 &&
23962
+ Date$1.is(value.substring(0, 10)) &&
23963
+ value[10] == "T" &&
23964
+ isHours(value.substring(11, 13)) &&
23965
+ (value.length == 13 ||
23966
+ TimeZone.is(value.substring(13)) ||
23967
+ (value[13] == ":" &&
23968
+ value.length >= 16 &&
23969
+ isMinutes(value.substring(14, 16)) &&
23970
+ (value.length == 16 ||
23971
+ TimeZone.is(value.substring(16)) ||
23972
+ (value[16] == ":" &&
23973
+ value.length >= 19 &&
23974
+ isSeconds(value.substring(17, 19)) &&
23975
+ (value.length == 19 ||
23976
+ TimeZone.is(value.substring(19)) ||
23977
+ (value[19] == "." &&
23978
+ value.length >= 23 &&
23979
+ [...value.substring(20, 23)].every(c => c >= "0" && c <= "9") &&
23980
+ (value.length == 23 || TimeZone.is(value.substring(23))))))))));
23961
23981
  }
23962
23982
  DateTime.is = is;
23963
23983
  function parse(value) {
23964
- return new globalThis.Date(value);
23984
+ return new globalThis.Date(DateTime.truncate(value, "milliseconds"));
23965
23985
  }
23966
23986
  DateTime.parse = parse;
23967
23987
  function create(value, resolution = "seconds") {
@@ -23985,19 +24005,91 @@ var DateTime;
23985
24005
  return create(new globalThis.Date());
23986
24006
  }
23987
24007
  DateTime.now = now;
23988
- function localize(value, locale, timezone) {
23989
- const localeString = locale ? locale : Intl.DateTimeFormat().resolvedOptions().locale;
23990
- return (is(value) ? parse(value) : value).toLocaleString(localeString, {
23991
- year: "numeric",
23992
- month: "2-digit",
23993
- day: "2-digit",
23994
- hour: "2-digit",
23995
- minute: "2-digit",
23996
- second: "2-digit",
23997
- timeZone: timezone ?? Intl.DateTimeFormat().resolvedOptions().timeZone,
23998
- });
24008
+ function localize(value, locale, timeZone) {
24009
+ let result;
24010
+ if (typeof locale == "object") {
24011
+ const localeString = timeZone ? timeZone : Intl.DateTimeFormat().resolvedOptions().locale;
24012
+ result = (is(value) ? parse(value) : value).toLocaleString(localeString, locale);
24013
+ }
24014
+ else {
24015
+ const precision = is(value) ? DateTime.precision(value) : "milliseconds";
24016
+ result = localize(value, {
24017
+ year: "numeric",
24018
+ month: "2-digit",
24019
+ day: "2-digit",
24020
+ hour: "2-digit",
24021
+ minute: precision == "minutes" || precision == "seconds" || precision == "milliseconds" ? "2-digit" : undefined,
24022
+ second: precision == "seconds" || precision == "milliseconds" ? "2-digit" : undefined,
24023
+ timeZone: timeZone,
24024
+ }, locale);
24025
+ }
24026
+ return result;
23999
24027
  }
24000
24028
  DateTime.localize = localize;
24029
+ function timeZone(value) {
24030
+ const result = value[value.length - 1] == "Z" ? "Z" : value.substring(value.length - 6);
24031
+ return TimeZone.is(result) ? result : "";
24032
+ }
24033
+ DateTime.timeZone = timeZone;
24034
+ function timeZoneShort(value) {
24035
+ return parse(value).getTimezoneOffset();
24036
+ }
24037
+ DateTime.timeZoneShort = timeZoneShort;
24038
+ function precision(value) {
24039
+ const zone = timeZone(value);
24040
+ const time = value.substring(0, value.length - zone.length).split("T", 2)[1];
24041
+ let result;
24042
+ switch (time.length) {
24043
+ case 2:
24044
+ result = "hours";
24045
+ break;
24046
+ case 5:
24047
+ result = "minutes";
24048
+ break;
24049
+ case 8:
24050
+ result = "seconds";
24051
+ break;
24052
+ default:
24053
+ case 12:
24054
+ result = "milliseconds";
24055
+ break;
24056
+ }
24057
+ return result;
24058
+ }
24059
+ DateTime.precision = precision;
24060
+ function truncate(value, precision) {
24061
+ const zone = timeZone(value);
24062
+ let [date, time] = value.split("T", 2);
24063
+ time = time.substring(0, time.length - zone.length);
24064
+ switch (time.length) {
24065
+ case 2:
24066
+ time += ":00:00.000";
24067
+ break;
24068
+ case 5:
24069
+ time += ":00.000";
24070
+ break;
24071
+ case 8:
24072
+ time += ".000";
24073
+ break;
24074
+ }
24075
+ let result;
24076
+ switch (precision) {
24077
+ case "hours":
24078
+ result = time.substring(0, 2);
24079
+ break;
24080
+ case "minutes":
24081
+ result = time.substring(0, 5);
24082
+ break;
24083
+ case "seconds":
24084
+ result = time.substring(0, 8);
24085
+ break;
24086
+ case "milliseconds":
24087
+ result = time.substring(0, 12);
24088
+ break;
24089
+ }
24090
+ return date + "T" + result + zone;
24091
+ }
24092
+ DateTime.truncate = truncate;
24001
24093
  function epoch(value, resolution = "seconds") {
24002
24094
  let result = (typeof value == "string" ? parse(value) : value).getTime();
24003
24095
  switch (resolution) {
@@ -24067,8 +24159,8 @@ var DateTime;
24067
24159
  return DateTime.create(result);
24068
24160
  }
24069
24161
  DateTime.nextMillisecond = nextMillisecond;
24070
- function previousMillisecond(time, seconds = 1) {
24071
- return nextMillisecond(time, -seconds);
24162
+ function previousMillisecond(time, milliseconds = 1) {
24163
+ return nextMillisecond(time, -milliseconds);
24072
24164
  }
24073
24165
  DateTime.previousMillisecond = previousMillisecond;
24074
24166
  function nextSecond(time, seconds = 1) {
@@ -24103,7 +24195,9 @@ var DateTime;
24103
24195
  DateTime.previousHour = previousHour;
24104
24196
  function nextDay(time, days = 1) {
24105
24197
  const result = parse(time);
24198
+ const offset = result.getTimezoneOffset();
24106
24199
  result.setDate(result.getDate() + days);
24200
+ result.setMinutes(result.getMinutes() + offset - result.getTimezoneOffset());
24107
24201
  return DateTime.create(result);
24108
24202
  }
24109
24203
  DateTime.nextDay = nextDay;
@@ -24113,7 +24207,9 @@ var DateTime;
24113
24207
  DateTime.previousDay = previousDay;
24114
24208
  function nextMonth(time, months = 1) {
24115
24209
  const result = parse(time);
24210
+ const offset = result.getTimezoneOffset();
24116
24211
  result.setMonth(result.getMonth() + months);
24212
+ result.setMinutes(result.getMinutes() + offset - result.getTimezoneOffset());
24117
24213
  return DateTime.create(result);
24118
24214
  }
24119
24215
  DateTime.nextMonth = nextMonth;
@@ -24163,6 +24259,30 @@ var DateTime;
24163
24259
  return Number.parseInt(time.substring(17, 19));
24164
24260
  }
24165
24261
  DateTime.getSecond = getSecond;
24262
+ function getMillisecond(time) {
24263
+ return Number.parseInt(time.substring(20, 23));
24264
+ }
24265
+ DateTime.getMillisecond = getMillisecond;
24266
+ function span(time, relative) {
24267
+ return {
24268
+ ...Date$1.span(time, relative),
24269
+ hours: getHour(time) - getHour(relative),
24270
+ minutes: getMinute(time) - getMinute(relative),
24271
+ seconds: getSecond(time) - getSecond(relative),
24272
+ milliseconds: getMillisecond(time) - getMillisecond(relative),
24273
+ };
24274
+ }
24275
+ DateTime.span = span;
24276
+ DateTime.epochStart = "0000-01-01T00:00:00.000Z";
24277
+ DateTime.epochEnd = "9999-12-31T23:59:59.999Z";
24278
+ function invert(time) {
24279
+ return `${Date$1.invert(getDate(time))}T${(24 - getHour(time)).toFixed(0).padStart(2, "0")}:${(60 - getMinute(time))
24280
+ .toFixed(0)
24281
+ .padStart(2, "0")}:${(60 - getSecond(time)).toFixed(0).padStart(2, "0")}.${(999 - getMillisecond(time))
24282
+ .toFixed(0)
24283
+ .padStart(3, "0")}Z`;
24284
+ }
24285
+ DateTime.invert = invert;
24166
24286
  })(DateTime || (DateTime = {}));
24167
24287
 
24168
24288
  class Transcoder {
@@ -25906,7 +26026,7 @@ var TimeSpan;
25906
26026
  }
25907
26027
  TimeSpan.is = is;
25908
26028
  function toHours(value, round) {
25909
- const result = (value.milliseconds ?? 0) / (60 * 60 * 1000) +
26029
+ const result = (dateToMilliseconds(value) + (value.milliseconds ?? 0)) / (60 * 60 * 1000) +
25910
26030
  (value.seconds ?? 0) / (60 * 60) +
25911
26031
  (value.minutes ?? 0) / 60 +
25912
26032
  (value.hours ?? 0);
@@ -25914,7 +26034,7 @@ var TimeSpan;
25914
26034
  }
25915
26035
  TimeSpan.toHours = toHours;
25916
26036
  function toMinutes(value, round) {
25917
- const result = (value.milliseconds ?? 0) / (60 * 1000) +
26037
+ const result = (dateToMilliseconds(value) + (value.milliseconds ?? 0)) / (60 * 1000) +
25918
26038
  (value.seconds ?? 0) / 60 +
25919
26039
  (value.minutes ?? 0) +
25920
26040
  (value.hours ?? 0) * 60;
@@ -25922,12 +26042,16 @@ var TimeSpan;
25922
26042
  }
25923
26043
  TimeSpan.toMinutes = toMinutes;
25924
26044
  function toSeconds(value, round) {
25925
- const result = (value.milliseconds ?? 0) / 1000 + (value.seconds ?? 0) + (value.minutes ?? 0) * 60 + (value.hours ?? 0) * 60 * 60;
26045
+ const result = (dateToMilliseconds(value) + (value.milliseconds ?? 0)) / 1000 +
26046
+ (value.seconds ?? 0) +
26047
+ (value.minutes ?? 0) * 60 +
26048
+ (value.hours ?? 0) * 60 * 60;
25926
26049
  return performRound(result, round);
25927
26050
  }
25928
26051
  TimeSpan.toSeconds = toSeconds;
25929
26052
  function toMilliseconds(value, round) {
25930
- const result = (value.milliseconds ?? 0) +
26053
+ const result = dateToMilliseconds(value) +
26054
+ (value.milliseconds ?? 0) +
25931
26055
  (value.seconds ?? 0) * 1000 +
25932
26056
  (value.minutes ?? 0) * 60 * 1000 +
25933
26057
  (value.hours ?? 0) * 60 * 60 * 1000;
@@ -25935,6 +26059,12 @@ var TimeSpan;
25935
26059
  }
25936
26060
  TimeSpan.toMilliseconds = toMilliseconds;
25937
26061
  })(TimeSpan || (TimeSpan = {}));
26062
+ function dateToMilliseconds(span) {
26063
+ const now = Date.UTC(0, 0);
26064
+ const date = new Date(now);
26065
+ const future = Date.UTC(date.getUTCFullYear() + (span.years ?? 0), date.getUTCMonth() + (span.months ?? 0), date.getUTCDate() + (span.days ?? 0), date.getUTCHours(), date.getUTCMinutes(), date.getUTCSeconds(), date.getUTCMilliseconds());
26066
+ return future.valueOf() - date.valueOf();
26067
+ }
25938
26068
  function performRound(value, round) {
25939
26069
  return !round
25940
26070
  ? value
@@ -25952,7 +26082,7 @@ function getLanguage(element) {
25952
26082
  }
25953
26083
  function convert(language) {
25954
26084
  if (language && language != "unknown" && language.length >= 2)
25955
- language = language.substr(0, 2);
26085
+ language = language.substring(0, 2);
25956
26086
  return Language.is(language) ? language : undefined;
25957
26087
  }
25958
26088