@spica-devkit/storage 0.18.15 → 0.18.17

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/dist/index.mjs CHANGED
@@ -6,6 +6,7 @@ import require$$3 from 'http';
6
6
  import require$$4 from 'https';
7
7
  import require$$5 from 'url';
8
8
  import require$$6 from 'fs';
9
+ import require$$8 from 'crypto';
9
10
 
10
11
  function logWarning(response) {
11
12
  const warning = response.headers["warning"];
@@ -610,9 +611,20 @@ var require$$0 = {
610
611
  "application/3gpp-ims+xml": {
611
612
  source: "iana",
612
613
  compressible: true
614
+ },
615
+ "application/3gpphal+json": {
616
+ source: "iana",
617
+ compressible: true
618
+ },
619
+ "application/3gpphalforms+json": {
620
+ source: "iana",
621
+ compressible: true
613
622
  },
614
623
  "application/a2l": {
615
624
  source: "iana"
625
+ },
626
+ "application/ace+cbor": {
627
+ source: "iana"
616
628
  },
617
629
  "application/activemessage": {
618
630
  source: "iana"
@@ -686,6 +698,9 @@ var require$$0 = {
686
698
  extensions: [
687
699
  "aw"
688
700
  ]
701
+ },
702
+ "application/at+jwt": {
703
+ source: "iana"
689
704
  },
690
705
  "application/atf": {
691
706
  source: "iana"
@@ -794,9 +809,8 @@ var require$$0 = {
794
809
  "application/cals-1840": {
795
810
  source: "iana"
796
811
  },
797
- "application/cap+xml": {
812
+ "application/captive+json": {
798
813
  source: "iana",
799
- charset: "UTF-8",
800
814
  compressible: true
801
815
  },
802
816
  "application/cbor": {
@@ -872,6 +886,13 @@ var require$$0 = {
872
886
  },
873
887
  "application/cfw": {
874
888
  source: "iana"
889
+ },
890
+ "application/city+json": {
891
+ source: "iana",
892
+ compressible: true
893
+ },
894
+ "application/clr": {
895
+ source: "iana"
875
896
  },
876
897
  "application/clue+xml": {
877
898
  source: "iana",
@@ -913,7 +934,10 @@ var require$$0 = {
913
934
  },
914
935
  "application/cpl+xml": {
915
936
  source: "iana",
916
- compressible: true
937
+ compressible: true,
938
+ extensions: [
939
+ "cpl"
940
+ ]
917
941
  },
918
942
  "application/csrattrs": {
919
943
  source: "iana"
@@ -951,6 +975,13 @@ var require$$0 = {
951
975
  extensions: [
952
976
  "mpd"
953
977
  ]
978
+ },
979
+ "application/dash-patch+xml": {
980
+ source: "iana",
981
+ compressible: true,
982
+ extensions: [
983
+ "mpp"
984
+ ]
954
985
  },
955
986
  "application/dashdelta": {
956
987
  source: "iana"
@@ -1036,8 +1067,8 @@ var require$$0 = {
1036
1067
  source: "iana",
1037
1068
  compressible: true,
1038
1069
  extensions: [
1039
- "ecma",
1040
- "es"
1070
+ "es",
1071
+ "ecma"
1041
1072
  ]
1042
1073
  },
1043
1074
  "application/edi-consent": {
@@ -1053,6 +1084,20 @@ var require$$0 = {
1053
1084
  },
1054
1085
  "application/efi": {
1055
1086
  source: "iana"
1087
+ },
1088
+ "application/elm+json": {
1089
+ source: "iana",
1090
+ charset: "UTF-8",
1091
+ compressible: true
1092
+ },
1093
+ "application/elm+xml": {
1094
+ source: "iana",
1095
+ compressible: true
1096
+ },
1097
+ "application/emergencycalldata.cap+xml": {
1098
+ source: "iana",
1099
+ charset: "UTF-8",
1100
+ compressible: true
1056
1101
  },
1057
1102
  "application/emergencycalldata.comment+xml": {
1058
1103
  source: "iana",
@@ -1125,6 +1170,12 @@ var require$$0 = {
1125
1170
  "application/expect-ct-report+json": {
1126
1171
  source: "iana",
1127
1172
  compressible: true
1173
+ },
1174
+ "application/express": {
1175
+ source: "iana",
1176
+ extensions: [
1177
+ "exp"
1178
+ ]
1128
1179
  },
1129
1180
  "application/fastinfoset": {
1130
1181
  source: "iana"
@@ -1353,6 +1404,10 @@ var require$$0 = {
1353
1404
  "application/jrd+json": {
1354
1405
  source: "iana",
1355
1406
  compressible: true
1407
+ },
1408
+ "application/jscalendar+json": {
1409
+ source: "iana",
1410
+ compressible: true
1356
1411
  },
1357
1412
  "application/json": {
1358
1413
  source: "iana",
@@ -1463,6 +1518,7 @@ var require$$0 = {
1463
1518
  ]
1464
1519
  },
1465
1520
  "application/manifest+json": {
1521
+ source: "iana",
1466
1522
  charset: "UTF-8",
1467
1523
  compressible: true,
1468
1524
  extensions: [
@@ -1557,7 +1613,10 @@ var require$$0 = {
1557
1613
  },
1558
1614
  "application/media-policy-dataset+xml": {
1559
1615
  source: "iana",
1560
- compressible: true
1616
+ compressible: true,
1617
+ extensions: [
1618
+ "mpf"
1619
+ ]
1561
1620
  },
1562
1621
  "application/media_control+xml": {
1563
1622
  source: "iana",
@@ -1603,6 +1662,9 @@ var require$$0 = {
1603
1662
  },
1604
1663
  "application/mipc": {
1605
1664
  source: "iana"
1665
+ },
1666
+ "application/missing-blocks+cbor-seq": {
1667
+ source: "iana"
1606
1668
  },
1607
1669
  "application/mmt-aei+xml": {
1608
1670
  source: "iana",
@@ -1662,17 +1724,11 @@ var require$$0 = {
1662
1724
  },
1663
1725
  "application/mrb-consumer+xml": {
1664
1726
  source: "iana",
1665
- compressible: true,
1666
- extensions: [
1667
- "xdf"
1668
- ]
1727
+ compressible: true
1669
1728
  },
1670
1729
  "application/mrb-publish+xml": {
1671
1730
  source: "iana",
1672
- compressible: true,
1673
- extensions: [
1674
- "xdf"
1675
- ]
1731
+ compressible: true
1676
1732
  },
1677
1733
  "application/msc-ivr+xml": {
1678
1734
  source: "iana",
@@ -1743,6 +1799,12 @@ var require$$0 = {
1743
1799
  },
1744
1800
  "application/nss": {
1745
1801
  source: "iana"
1802
+ },
1803
+ "application/oauth-authz-req+jwt": {
1804
+ source: "iana"
1805
+ },
1806
+ "application/oblivious-dns-message": {
1807
+ source: "iana"
1746
1808
  },
1747
1809
  "application/ocsp-request": {
1748
1810
  source: "iana"
@@ -1820,6 +1882,10 @@ var require$$0 = {
1820
1882
  "onetmp",
1821
1883
  "onepkg"
1822
1884
  ]
1885
+ },
1886
+ "application/opc-nodeset+xml": {
1887
+ source: "iana",
1888
+ compressible: true
1823
1889
  },
1824
1890
  "application/oscore": {
1825
1891
  source: "iana"
@@ -1829,6 +1895,13 @@ var require$$0 = {
1829
1895
  extensions: [
1830
1896
  "oxps"
1831
1897
  ]
1898
+ },
1899
+ "application/p21": {
1900
+ source: "iana"
1901
+ },
1902
+ "application/p21+zip": {
1903
+ source: "iana",
1904
+ compressible: false
1832
1905
  },
1833
1906
  "application/p2p-overlay+xml": {
1834
1907
  source: "iana",
@@ -1871,7 +1944,10 @@ var require$$0 = {
1871
1944
  ]
1872
1945
  },
1873
1946
  "application/pgp-keys": {
1874
- source: "iana"
1947
+ source: "iana",
1948
+ extensions: [
1949
+ "asc"
1950
+ ]
1875
1951
  },
1876
1952
  "application/pgp-signature": {
1877
1953
  source: "iana",
@@ -2005,6 +2081,10 @@ var require$$0 = {
2005
2081
  extensions: [
2006
2082
  "cww"
2007
2083
  ]
2084
+ },
2085
+ "application/prs.cyn": {
2086
+ source: "iana",
2087
+ charset: "7-BIT"
2008
2088
  },
2009
2089
  "application/prs.hpub+zip": {
2010
2090
  source: "iana",
@@ -2189,6 +2269,14 @@ var require$$0 = {
2189
2269
  "application/samlmetadata+xml": {
2190
2270
  source: "iana",
2191
2271
  compressible: true
2272
+ },
2273
+ "application/sarif+json": {
2274
+ source: "iana",
2275
+ compressible: true
2276
+ },
2277
+ "application/sarif-external-properties+json": {
2278
+ source: "iana",
2279
+ compressible: true
2192
2280
  },
2193
2281
  "application/sbe": {
2194
2282
  source: "iana"
@@ -2379,6 +2467,10 @@ var require$$0 = {
2379
2467
  extensions: [
2380
2468
  "srx"
2381
2469
  ]
2470
+ },
2471
+ "application/spdx+json": {
2472
+ source: "iana",
2473
+ compressible: true
2382
2474
  },
2383
2475
  "application/spirits-event+xml": {
2384
2476
  source: "iana",
@@ -2515,6 +2607,9 @@ var require$$0 = {
2515
2607
  },
2516
2608
  "application/tnauthlist": {
2517
2609
  source: "iana"
2610
+ },
2611
+ "application/token-introspection+jwt": {
2612
+ source: "iana"
2518
2613
  },
2519
2614
  "application/toml": {
2520
2615
  compressible: true,
@@ -2526,7 +2621,10 @@ var require$$0 = {
2526
2621
  source: "iana"
2527
2622
  },
2528
2623
  "application/trig": {
2529
- source: "iana"
2624
+ source: "iana",
2625
+ extensions: [
2626
+ "trig"
2627
+ ]
2530
2628
  },
2531
2629
  "application/ttml+xml": {
2532
2630
  source: "iana",
@@ -2543,6 +2641,12 @@ var require$$0 = {
2543
2641
  },
2544
2642
  "application/tzif-leap": {
2545
2643
  source: "iana"
2644
+ },
2645
+ "application/ubjson": {
2646
+ compressible: false,
2647
+ extensions: [
2648
+ "ubj"
2649
+ ]
2546
2650
  },
2547
2651
  "application/ulpfec": {
2548
2652
  source: "iana"
@@ -2560,7 +2664,10 @@ var require$$0 = {
2560
2664
  },
2561
2665
  "application/urc-targetdesc+xml": {
2562
2666
  source: "iana",
2563
- compressible: true
2667
+ compressible: true,
2668
+ extensions: [
2669
+ "td"
2670
+ ]
2564
2671
  },
2565
2672
  "application/urc-uisocketdesc+xml": {
2566
2673
  source: "iana",
@@ -2597,6 +2704,9 @@ var require$$0 = {
2597
2704
  },
2598
2705
  "application/vnd.3gpp-v2x-local-service-information": {
2599
2706
  source: "iana"
2707
+ },
2708
+ "application/vnd.3gpp.5gnas": {
2709
+ source: "iana"
2600
2710
  },
2601
2711
  "application/vnd.3gpp.access-transfer-events+xml": {
2602
2712
  source: "iana",
@@ -2609,6 +2719,15 @@ var require$$0 = {
2609
2719
  "application/vnd.3gpp.gmop+xml": {
2610
2720
  source: "iana",
2611
2721
  compressible: true
2722
+ },
2723
+ "application/vnd.3gpp.gtpc": {
2724
+ source: "iana"
2725
+ },
2726
+ "application/vnd.3gpp.interworking-data": {
2727
+ source: "iana"
2728
+ },
2729
+ "application/vnd.3gpp.lpp": {
2730
+ source: "iana"
2612
2731
  },
2613
2732
  "application/vnd.3gpp.mc-signalling-ear": {
2614
2733
  source: "iana"
@@ -2718,6 +2837,12 @@ var require$$0 = {
2718
2837
  "application/vnd.3gpp.mid-call+xml": {
2719
2838
  source: "iana",
2720
2839
  compressible: true
2840
+ },
2841
+ "application/vnd.3gpp.ngap": {
2842
+ source: "iana"
2843
+ },
2844
+ "application/vnd.3gpp.pfcp": {
2845
+ source: "iana"
2721
2846
  },
2722
2847
  "application/vnd.3gpp.pic-bw-large": {
2723
2848
  source: "iana",
@@ -2736,6 +2861,9 @@ var require$$0 = {
2736
2861
  extensions: [
2737
2862
  "pvb"
2738
2863
  ]
2864
+ },
2865
+ "application/vnd.3gpp.s1ap": {
2866
+ source: "iana"
2739
2867
  },
2740
2868
  "application/vnd.3gpp.sms": {
2741
2869
  source: "iana"
@@ -2854,6 +2982,9 @@ var require$$0 = {
2854
2982
  },
2855
2983
  "application/vnd.afpc.afplinedata-pagedef": {
2856
2984
  source: "iana"
2985
+ },
2986
+ "application/vnd.afpc.cmoca-cmresource": {
2987
+ source: "iana"
2857
2988
  },
2858
2989
  "application/vnd.afpc.foca-charset": {
2859
2990
  source: "iana"
@@ -2866,6 +2997,9 @@ var require$$0 = {
2866
2997
  },
2867
2998
  "application/vnd.afpc.modca": {
2868
2999
  source: "iana"
3000
+ },
3001
+ "application/vnd.afpc.modca-cmtable": {
3002
+ source: "iana"
2869
3003
  },
2870
3004
  "application/vnd.afpc.modca-formdef": {
2871
3005
  source: "iana"
@@ -2881,6 +3015,12 @@ var require$$0 = {
2881
3015
  },
2882
3016
  "application/vnd.afpc.modca-pagesegment": {
2883
3017
  source: "iana"
3018
+ },
3019
+ "application/vnd.age": {
3020
+ source: "iana",
3021
+ extensions: [
3022
+ "age"
3023
+ ]
2884
3024
  },
2885
3025
  "application/vnd.ah-barcode": {
2886
3026
  source: "iana"
@@ -2962,6 +3102,12 @@ var require$$0 = {
2962
3102
  extensions: [
2963
3103
  "atx"
2964
3104
  ]
3105
+ },
3106
+ "application/vnd.apache.arrow.file": {
3107
+ source: "iana"
3108
+ },
3109
+ "application/vnd.apache.arrow.stream": {
3110
+ source: "iana"
2965
3111
  },
2966
3112
  "application/vnd.apache.thrift.binary": {
2967
3113
  source: "iana"
@@ -2994,7 +3140,7 @@ var require$$0 = {
2994
3140
  "application/vnd.apple.keynote": {
2995
3141
  source: "iana",
2996
3142
  extensions: [
2997
- "keynote"
3143
+ "key"
2998
3144
  ]
2999
3145
  },
3000
3146
  "application/vnd.apple.mpegurl": {
@@ -3327,6 +3473,12 @@ var require$$0 = {
3327
3473
  },
3328
3474
  "application/vnd.crypto-shade-file": {
3329
3475
  source: "iana"
3476
+ },
3477
+ "application/vnd.cryptomator.encrypted": {
3478
+ source: "iana"
3479
+ },
3480
+ "application/vnd.cryptomator.vault": {
3481
+ source: "iana"
3330
3482
  },
3331
3483
  "application/vnd.ctc-posml": {
3332
3484
  source: "iana",
@@ -3377,10 +3529,24 @@ var require$$0 = {
3377
3529
  },
3378
3530
  "application/vnd.cybank": {
3379
3531
  source: "iana"
3532
+ },
3533
+ "application/vnd.cyclonedx+json": {
3534
+ source: "iana",
3535
+ compressible: true
3536
+ },
3537
+ "application/vnd.cyclonedx+xml": {
3538
+ source: "iana",
3539
+ compressible: true
3380
3540
  },
3381
3541
  "application/vnd.d2l.coursepackage1p0+zip": {
3382
3542
  source: "iana",
3383
3543
  compressible: false
3544
+ },
3545
+ "application/vnd.d3m-dataset": {
3546
+ source: "iana"
3547
+ },
3548
+ "application/vnd.d3m-problem": {
3549
+ source: "iana"
3384
3550
  },
3385
3551
  "application/vnd.dart": {
3386
3552
  source: "iana",
@@ -3404,7 +3570,10 @@ var require$$0 = {
3404
3570
  compressible: true
3405
3571
  },
3406
3572
  "application/vnd.dbf": {
3407
- source: "iana"
3573
+ source: "iana",
3574
+ extensions: [
3575
+ "dbf"
3576
+ ]
3408
3577
  },
3409
3578
  "application/vnd.debian.binary-package": {
3410
3579
  source: "iana"
@@ -3606,6 +3775,10 @@ var require$$0 = {
3606
3775
  },
3607
3776
  "application/vnd.ecip.rlp": {
3608
3777
  source: "iana"
3778
+ },
3779
+ "application/vnd.eclipse.ditto+json": {
3780
+ source: "iana",
3781
+ compressible: true
3609
3782
  },
3610
3783
  "application/vnd.ecowin.chart": {
3611
3784
  source: "iana",
@@ -3780,6 +3953,10 @@ var require$$0 = {
3780
3953
  },
3781
3954
  "application/vnd.etsi.tsl.der": {
3782
3955
  source: "iana"
3956
+ },
3957
+ "application/vnd.eu.kasparian.car+json": {
3958
+ source: "iana",
3959
+ compressible: true
3783
3960
  },
3784
3961
  "application/vnd.eudora.data": {
3785
3962
  source: "iana"
@@ -3814,6 +3991,10 @@ var require$$0 = {
3814
3991
  },
3815
3992
  "application/vnd.f-secure.mobile": {
3816
3993
  source: "iana"
3994
+ },
3995
+ "application/vnd.familysearch.gedcom+zip": {
3996
+ source: "iana",
3997
+ compressible: false
3817
3998
  },
3818
3999
  "application/vnd.fastcopy-disk-image": {
3819
4000
  source: "iana"
@@ -3894,6 +4075,19 @@ var require$$0 = {
3894
4075
  extensions: [
3895
4076
  "fsc"
3896
4077
  ]
4078
+ },
4079
+ "application/vnd.fujifilm.fb.docuworks": {
4080
+ source: "iana"
4081
+ },
4082
+ "application/vnd.fujifilm.fb.docuworks.binder": {
4083
+ source: "iana"
4084
+ },
4085
+ "application/vnd.fujifilm.fb.docuworks.container": {
4086
+ source: "iana"
4087
+ },
4088
+ "application/vnd.fujifilm.fb.jfi+xml": {
4089
+ source: "iana",
4090
+ compressible: true
3897
4091
  },
3898
4092
  "application/vnd.fujitsu.oasys": {
3899
4093
  source: "iana",
@@ -3994,6 +4188,9 @@ var require$$0 = {
3994
4188
  extensions: [
3995
4189
  "ggb"
3996
4190
  ]
4191
+ },
4192
+ "application/vnd.geogebra.slides": {
4193
+ source: "iana"
3997
4194
  },
3998
4195
  "application/vnd.geogebra.tool": {
3999
4196
  source: "iana",
@@ -4180,6 +4377,16 @@ var require$$0 = {
4180
4377
  extensions: [
4181
4378
  "les"
4182
4379
  ]
4380
+ },
4381
+ "application/vnd.hl7cda+xml": {
4382
+ source: "iana",
4383
+ charset: "UTF-8",
4384
+ compressible: true
4385
+ },
4386
+ "application/vnd.hl7v2+xml": {
4387
+ source: "iana",
4388
+ charset: "UTF-8",
4389
+ compressible: true
4183
4390
  },
4184
4391
  "application/vnd.hp-hpgl": {
4185
4392
  source: "iana",
@@ -4689,7 +4896,10 @@ var require$$0 = {
4689
4896
  ]
4690
4897
  },
4691
4898
  "application/vnd.mapbox-vector-tile": {
4692
- source: "iana"
4899
+ source: "iana",
4900
+ extensions: [
4901
+ "mvt"
4902
+ ]
4693
4903
  },
4694
4904
  "application/vnd.marlin.drm.actiontoken+xml": {
4695
4905
  source: "iana",
@@ -4709,6 +4919,10 @@ var require$$0 = {
4709
4919
  "application/vnd.mason+json": {
4710
4920
  source: "iana",
4711
4921
  compressible: true
4922
+ },
4923
+ "application/vnd.maxar.archive.3tz+zip": {
4924
+ source: "iana",
4925
+ compressible: false
4712
4926
  },
4713
4927
  "application/vnd.maxmind.maxmind-db": {
4714
4928
  source: "iana"
@@ -5147,6 +5361,10 @@ var require$$0 = {
5147
5361
  extensions: [
5148
5362
  "taglet"
5149
5363
  ]
5364
+ },
5365
+ "application/vnd.nacamar.ybrid+json": {
5366
+ source: "iana",
5367
+ compressible: true
5150
5368
  },
5151
5369
  "application/vnd.ncd.control": {
5152
5370
  source: "iana"
@@ -5157,6 +5375,9 @@ var require$$0 = {
5157
5375
  "application/vnd.nearst.inv+json": {
5158
5376
  source: "iana",
5159
5377
  compressible: true
5378
+ },
5379
+ "application/vnd.nebumind.line": {
5380
+ source: "iana"
5160
5381
  },
5161
5382
  "application/vnd.nervana": {
5162
5383
  source: "iana"
@@ -5569,6 +5790,9 @@ var require$$0 = {
5569
5790
  "application/vnd.oma.group-usage-list+xml": {
5570
5791
  source: "iana",
5571
5792
  compressible: true
5793
+ },
5794
+ "application/vnd.oma.lwm2m+cbor": {
5795
+ source: "iana"
5572
5796
  },
5573
5797
  "application/vnd.oma.lwm2m+json": {
5574
5798
  source: "iana",
@@ -5673,6 +5897,9 @@ var require$$0 = {
5673
5897
  extensions: [
5674
5898
  "osm"
5675
5899
  ]
5900
+ },
5901
+ "application/vnd.opentimestamps.ots": {
5902
+ source: "iana"
5676
5903
  },
5677
5904
  "application/vnd.openxmlformats-officedocument.custom-properties+xml": {
5678
5905
  source: "iana",
@@ -6241,7 +6468,10 @@ var require$$0 = {
6241
6468
  source: "iana"
6242
6469
  },
6243
6470
  "application/vnd.rar": {
6244
- source: "iana"
6471
+ source: "iana",
6472
+ extensions: [
6473
+ "rar"
6474
+ ]
6245
6475
  },
6246
6476
  "application/vnd.realvnc.bed": {
6247
6477
  source: "iana",
@@ -6264,6 +6494,9 @@ var require$$0 = {
6264
6494
  },
6265
6495
  "application/vnd.renlearn.rlprint": {
6266
6496
  source: "iana"
6497
+ },
6498
+ "application/vnd.resilient.logic": {
6499
+ source: "iana"
6267
6500
  },
6268
6501
  "application/vnd.restful+json": {
6269
6502
  source: "iana",
@@ -6365,6 +6598,10 @@ var require$$0 = {
6365
6598
  extensions: [
6366
6599
  "see"
6367
6600
  ]
6601
+ },
6602
+ "application/vnd.seis+json": {
6603
+ source: "iana",
6604
+ compressible: true
6368
6605
  },
6369
6606
  "application/vnd.sema": {
6370
6607
  source: "iana",
@@ -6633,6 +6870,14 @@ var require$$0 = {
6633
6870
  },
6634
6871
  "application/vnd.swiftview-ics": {
6635
6872
  source: "iana"
6873
+ },
6874
+ "application/vnd.sycle+xml": {
6875
+ source: "iana",
6876
+ compressible: true
6877
+ },
6878
+ "application/vnd.syft+json": {
6879
+ source: "iana",
6880
+ compressible: true
6636
6881
  },
6637
6882
  "application/vnd.symbian.install": {
6638
6883
  source: "apache",
@@ -6846,6 +7091,10 @@ var require$$0 = {
6846
7091
  },
6847
7092
  "application/vnd.verimatrix.vcas": {
6848
7093
  source: "iana"
7094
+ },
7095
+ "application/vnd.veritone.aion+json": {
7096
+ source: "iana",
7097
+ compressible: true
6849
7098
  },
6850
7099
  "application/vnd.veryant.thin": {
6851
7100
  source: "iana"
@@ -6910,6 +7159,9 @@ var require$$0 = {
6910
7159
  extensions: [
6911
7160
  "wtb"
6912
7161
  ]
7162
+ },
7163
+ "application/vnd.wfa.dpp": {
7164
+ source: "iana"
6913
7165
  },
6914
7166
  "application/vnd.wfa.p2p": {
6915
7167
  source: "iana"
@@ -7101,6 +7353,7 @@ var require$$0 = {
7101
7353
  source: "iana"
7102
7354
  },
7103
7355
  "application/wasm": {
7356
+ source: "iana",
7104
7357
  compressible: true,
7105
7358
  extensions: [
7106
7359
  "wasm"
@@ -7108,7 +7361,10 @@ var require$$0 = {
7108
7361
  },
7109
7362
  "application/watcherinfo+xml": {
7110
7363
  source: "iana",
7111
- compressible: true
7364
+ compressible: true,
7365
+ extensions: [
7366
+ "wif"
7367
+ ]
7112
7368
  },
7113
7369
  "application/webpush-options+json": {
7114
7370
  source: "iana",
@@ -7514,6 +7770,21 @@ var require$$0 = {
7514
7770
  extensions: [
7515
7771
  "iso"
7516
7772
  ]
7773
+ },
7774
+ "application/x-iwork-keynote-sffkey": {
7775
+ extensions: [
7776
+ "key"
7777
+ ]
7778
+ },
7779
+ "application/x-iwork-numbers-sffnumbers": {
7780
+ extensions: [
7781
+ "numbers"
7782
+ ]
7783
+ },
7784
+ "application/x-iwork-pages-sffpages": {
7785
+ extensions: [
7786
+ "pages"
7787
+ ]
7517
7788
  },
7518
7789
  "application/x-java-archive-diff": {
7519
7790
  source: "nginx",
@@ -8056,10 +8327,7 @@ var require$$0 = {
8056
8327
  },
8057
8328
  "application/xcap-error+xml": {
8058
8329
  source: "iana",
8059
- compressible: true,
8060
- extensions: [
8061
- "xer"
8062
- ]
8330
+ compressible: true
8063
8331
  },
8064
8332
  "application/xcap-ns+xml": {
8065
8333
  source: "iana",
@@ -8148,6 +8416,7 @@ var require$$0 = {
8148
8416
  source: "iana",
8149
8417
  compressible: true,
8150
8418
  extensions: [
8419
+ "xsl",
8151
8420
  "xslt"
8152
8421
  ]
8153
8422
  },
@@ -8239,7 +8508,10 @@ var require$$0 = {
8239
8508
  ]
8240
8509
  },
8241
8510
  "audio/amr": {
8242
- source: "iana"
8511
+ source: "iana",
8512
+ extensions: [
8513
+ "amr"
8514
+ ]
8243
8515
  },
8244
8516
  "audio/amr-wb": {
8245
8517
  source: "iana"
@@ -8513,7 +8785,8 @@ var require$$0 = {
8513
8785
  extensions: [
8514
8786
  "oga",
8515
8787
  "ogg",
8516
- "spx"
8788
+ "spx",
8789
+ "opus"
8517
8790
  ]
8518
8791
  },
8519
8792
  "audio/opus": {
@@ -8563,6 +8836,9 @@ var require$$0 = {
8563
8836
  extensions: [
8564
8837
  "s3m"
8565
8838
  ]
8839
+ },
8840
+ "audio/scip": {
8841
+ source: "iana"
8566
8842
  },
8567
8843
  "audio/silk": {
8568
8844
  source: "apache",
@@ -8578,6 +8854,9 @@ var require$$0 = {
8578
8854
  },
8579
8855
  "audio/smv0": {
8580
8856
  source: "iana"
8857
+ },
8858
+ "audio/sofa": {
8859
+ source: "iana"
8581
8860
  },
8582
8861
  "audio/sp-midi": {
8583
8862
  source: "iana"
@@ -8602,6 +8881,9 @@ var require$$0 = {
8602
8881
  },
8603
8882
  "audio/tone": {
8604
8883
  source: "iana"
8884
+ },
8885
+ "audio/tsvcis": {
8886
+ source: "iana"
8605
8887
  },
8606
8888
  "audio/uemclip": {
8607
8889
  source: "iana"
@@ -8983,10 +9265,23 @@ var require$$0 = {
8983
9265
  ]
8984
9266
  },
8985
9267
  "image/avci": {
8986
- source: "iana"
9268
+ source: "iana",
9269
+ extensions: [
9270
+ "avci"
9271
+ ]
8987
9272
  },
8988
9273
  "image/avcs": {
8989
- source: "iana"
9274
+ source: "iana",
9275
+ extensions: [
9276
+ "avcs"
9277
+ ]
9278
+ },
9279
+ "image/avif": {
9280
+ source: "iana",
9281
+ compressible: false,
9282
+ extensions: [
9283
+ "avif"
9284
+ ]
8990
9285
  },
8991
9286
  "image/bmp": {
8992
9287
  source: "iana",
@@ -9172,7 +9467,13 @@ var require$$0 = {
9172
9467
  "ktx"
9173
9468
  ]
9174
9469
  },
9175
- "image/naplps": {
9470
+ "image/ktx2": {
9471
+ source: "iana",
9472
+ extensions: [
9473
+ "ktx2"
9474
+ ]
9475
+ },
9476
+ "image/naplps": {
9176
9477
  source: "iana"
9177
9478
  },
9178
9479
  "image/pjpeg": {
@@ -9319,6 +9620,7 @@ var require$$0 = {
9319
9620
  },
9320
9621
  "image/vnd.microsoft.icon": {
9321
9622
  source: "iana",
9623
+ compressible: true,
9322
9624
  extensions: [
9323
9625
  "ico"
9324
9626
  ]
@@ -9330,6 +9632,7 @@ var require$$0 = {
9330
9632
  source: "iana"
9331
9633
  },
9332
9634
  "image/vnd.ms-dds": {
9635
+ compressible: true,
9333
9636
  extensions: [
9334
9637
  "dds"
9335
9638
  ]
@@ -9351,6 +9654,12 @@ var require$$0 = {
9351
9654
  extensions: [
9352
9655
  "npx"
9353
9656
  ]
9657
+ },
9658
+ "image/vnd.pco.b16": {
9659
+ source: "iana",
9660
+ extensions: [
9661
+ "b16"
9662
+ ]
9354
9663
  },
9355
9664
  "image/vnd.radiance": {
9356
9665
  source: "iana"
@@ -9624,6 +9933,9 @@ var require$$0 = {
9624
9933
  extensions: [
9625
9934
  "3mf"
9626
9935
  ]
9936
+ },
9937
+ "model/e57": {
9938
+ source: "iana"
9627
9939
  },
9628
9940
  "model/gltf+json": {
9629
9941
  source: "iana",
@@ -9667,6 +9979,30 @@ var require$$0 = {
9667
9979
  extensions: [
9668
9980
  "obj"
9669
9981
  ]
9982
+ },
9983
+ "model/step": {
9984
+ source: "iana"
9985
+ },
9986
+ "model/step+xml": {
9987
+ source: "iana",
9988
+ compressible: true,
9989
+ extensions: [
9990
+ "stpx"
9991
+ ]
9992
+ },
9993
+ "model/step+zip": {
9994
+ source: "iana",
9995
+ compressible: false,
9996
+ extensions: [
9997
+ "stpz"
9998
+ ]
9999
+ },
10000
+ "model/step-xml+zip": {
10001
+ source: "iana",
10002
+ compressible: false,
10003
+ extensions: [
10004
+ "stpxz"
10005
+ ]
9670
10006
  },
9671
10007
  "model/stl": {
9672
10008
  source: "iana",
@@ -9735,9 +10071,18 @@ var require$$0 = {
9735
10071
  extensions: [
9736
10072
  "x_t"
9737
10073
  ]
10074
+ },
10075
+ "model/vnd.pytha.pyox": {
10076
+ source: "iana"
9738
10077
  },
9739
10078
  "model/vnd.rosette.annotated-data-model": {
9740
10079
  source: "iana"
10080
+ },
10081
+ "model/vnd.sap.vds": {
10082
+ source: "iana",
10083
+ extensions: [
10084
+ "vds"
10085
+ ]
9741
10086
  },
9742
10087
  "model/vnd.usdz+zip": {
9743
10088
  source: "iana",
@@ -9884,6 +10229,15 @@ var require$$0 = {
9884
10229
  "coffee",
9885
10230
  "litcoffee"
9886
10231
  ]
10232
+ },
10233
+ "text/cql": {
10234
+ source: "iana"
10235
+ },
10236
+ "text/cql-expression": {
10237
+ source: "iana"
10238
+ },
10239
+ "text/cql-identifier": {
10240
+ source: "iana"
9887
10241
  },
9888
10242
  "text/css": {
9889
10243
  source: "iana",
@@ -9917,12 +10271,18 @@ var require$$0 = {
9917
10271
  },
9918
10272
  "text/enriched": {
9919
10273
  source: "iana"
10274
+ },
10275
+ "text/fhirpath": {
10276
+ source: "iana"
9920
10277
  },
9921
10278
  "text/flexfec": {
9922
10279
  source: "iana"
9923
10280
  },
9924
10281
  "text/fwdred": {
9925
10282
  source: "iana"
10283
+ },
10284
+ "text/gff3": {
10285
+ source: "iana"
9926
10286
  },
9927
10287
  "text/grammar-ref-list": {
9928
10288
  source: "iana"
@@ -10066,8 +10426,12 @@ var require$$0 = {
10066
10426
  "sgml",
10067
10427
  "sgm"
10068
10428
  ]
10429
+ },
10430
+ "text/shaclc": {
10431
+ source: "iana"
10069
10432
  },
10070
10433
  "text/shex": {
10434
+ source: "iana",
10071
10435
  extensions: [
10072
10436
  "shex"
10073
10437
  ]
@@ -10077,6 +10441,12 @@ var require$$0 = {
10077
10441
  "slim",
10078
10442
  "slm"
10079
10443
  ]
10444
+ },
10445
+ "text/spdx": {
10446
+ source: "iana",
10447
+ extensions: [
10448
+ "spdx"
10449
+ ]
10080
10450
  },
10081
10451
  "text/strings": {
10082
10452
  source: "iana"
@@ -10183,6 +10553,12 @@ var require$$0 = {
10183
10553
  "text/vnd.esmertec.theme-descriptor": {
10184
10554
  source: "iana",
10185
10555
  charset: "UTF-8"
10556
+ },
10557
+ "text/vnd.familysearch.gedcom": {
10558
+ source: "iana",
10559
+ extensions: [
10560
+ "ged"
10561
+ ]
10186
10562
  },
10187
10563
  "text/vnd.ficlab.flt": {
10188
10564
  source: "iana"
@@ -10207,6 +10583,9 @@ var require$$0 = {
10207
10583
  extensions: [
10208
10584
  "gv"
10209
10585
  ]
10586
+ },
10587
+ "text/vnd.hans": {
10588
+ source: "iana"
10210
10589
  },
10211
10590
  "text/vnd.hgl": {
10212
10591
  source: "iana"
@@ -10440,6 +10819,7 @@ var require$$0 = {
10440
10819
  source: "iana"
10441
10820
  },
10442
10821
  "text/yaml": {
10822
+ compressible: true,
10443
10823
  extensions: [
10444
10824
  "yaml",
10445
10825
  "yml"
@@ -10463,6 +10843,9 @@ var require$$0 = {
10463
10843
  extensions: [
10464
10844
  "3g2"
10465
10845
  ]
10846
+ },
10847
+ "video/av1": {
10848
+ source: "iana"
10466
10849
  },
10467
10850
  "video/bmpeg": {
10468
10851
  source: "iana"
@@ -10478,6 +10861,9 @@ var require$$0 = {
10478
10861
  },
10479
10862
  "video/encaprtp": {
10480
10863
  source: "iana"
10864
+ },
10865
+ "video/ffv1": {
10866
+ source: "iana"
10481
10867
  },
10482
10868
  "video/flexfec": {
10483
10869
  source: "iana"
@@ -10516,7 +10902,10 @@ var require$$0 = {
10516
10902
  source: "iana"
10517
10903
  },
10518
10904
  "video/iso.segment": {
10519
- source: "iana"
10905
+ source: "iana",
10906
+ extensions: [
10907
+ "m4s"
10908
+ ]
10520
10909
  },
10521
10910
  "video/jpeg": {
10522
10911
  source: "iana",
@@ -10533,6 +10922,9 @@ var require$$0 = {
10533
10922
  "jpm",
10534
10923
  "jpgm"
10535
10924
  ]
10925
+ },
10926
+ "video/jxsv": {
10927
+ source: "iana"
10536
10928
  },
10537
10929
  "video/mj2": {
10538
10930
  source: "iana",
@@ -10620,6 +11012,9 @@ var require$$0 = {
10620
11012
  },
10621
11013
  "video/rtx": {
10622
11014
  source: "iana"
11015
+ },
11016
+ "video/scip": {
11017
+ source: "iana"
10623
11018
  },
10624
11019
  "video/smpte291": {
10625
11020
  source: "iana"
@@ -10786,6 +11181,9 @@ var require$$0 = {
10786
11181
  },
10787
11182
  "video/vp8": {
10788
11183
  source: "iana"
11184
+ },
11185
+ "video/vp9": {
11186
+ source: "iana"
10789
11187
  },
10790
11188
  "video/webm": {
10791
11189
  source: "apache",
@@ -10907,6 +11305,7 @@ var require$$0 = {
10907
11305
  /*!
10908
11306
  * mime-db
10909
11307
  * Copyright(c) 2014 Jonathan Ong
11308
+ * Copyright(c) 2015-2022 Douglas Christopher Wilson
10910
11309
  * MIT Licensed
10911
11310
  */
10912
11311
 
@@ -10936,7 +11335,7 @@ var hasRequiredMimeTypes;
10936
11335
  function requireMimeTypes () {
10937
11336
  if (hasRequiredMimeTypes) return mimeTypes;
10938
11337
  hasRequiredMimeTypes = 1;
10939
- (function (exports) {
11338
+ (function (exports$1) {
10940
11339
 
10941
11340
  /**
10942
11341
  * Module dependencies.
@@ -10959,16 +11358,16 @@ function requireMimeTypes () {
10959
11358
  * @public
10960
11359
  */
10961
11360
 
10962
- exports.charset = charset;
10963
- exports.charsets = { lookup: charset };
10964
- exports.contentType = contentType;
10965
- exports.extension = extension;
10966
- exports.extensions = Object.create(null);
10967
- exports.lookup = lookup;
10968
- exports.types = Object.create(null);
11361
+ exports$1.charset = charset;
11362
+ exports$1.charsets = { lookup: charset };
11363
+ exports$1.contentType = contentType;
11364
+ exports$1.extension = extension;
11365
+ exports$1.extensions = Object.create(null);
11366
+ exports$1.lookup = lookup;
11367
+ exports$1.types = Object.create(null);
10969
11368
 
10970
11369
  // Populate the extensions/types maps
10971
- populateMaps(exports.extensions, exports.types);
11370
+ populateMaps(exports$1.extensions, exports$1.types);
10972
11371
 
10973
11372
  /**
10974
11373
  * Get the default charset for a MIME type.
@@ -11012,7 +11411,7 @@ function requireMimeTypes () {
11012
11411
  }
11013
11412
 
11014
11413
  var mime = str.indexOf('/') === -1
11015
- ? exports.lookup(str)
11414
+ ? exports$1.lookup(str)
11016
11415
  : str;
11017
11416
 
11018
11417
  if (!mime) {
@@ -11021,7 +11420,7 @@ function requireMimeTypes () {
11021
11420
 
11022
11421
  // TODO: use content-type or other module
11023
11422
  if (mime.indexOf('charset') === -1) {
11024
- var charset = exports.charset(mime);
11423
+ var charset = exports$1.charset(mime);
11025
11424
  if (charset) mime += '; charset=' + charset.toLowerCase();
11026
11425
  }
11027
11426
 
@@ -11044,7 +11443,7 @@ function requireMimeTypes () {
11044
11443
  var match = EXTRACT_TYPE_REGEXP.exec(type);
11045
11444
 
11046
11445
  // get extensions
11047
- var exts = match && exports.extensions[match[1].toLowerCase()];
11446
+ var exts = match && exports$1.extensions[match[1].toLowerCase()];
11048
11447
 
11049
11448
  if (!exts || !exts.length) {
11050
11449
  return false
@@ -11074,7 +11473,7 @@ function requireMimeTypes () {
11074
11473
  return false
11075
11474
  }
11076
11475
 
11077
- return exports.types[extension] || false
11476
+ return exports$1.types[extension] || false
11078
11477
  }
11079
11478
 
11080
11479
  /**
@@ -11583,18 +11982,1092 @@ function requireAsynckit () {
11583
11982
  return asynckit;
11584
11983
  }
11585
11984
 
11985
+ var esObjectAtoms;
11986
+ var hasRequiredEsObjectAtoms;
11987
+
11988
+ function requireEsObjectAtoms () {
11989
+ if (hasRequiredEsObjectAtoms) return esObjectAtoms;
11990
+ hasRequiredEsObjectAtoms = 1;
11991
+
11992
+ /** @type {import('.')} */
11993
+ esObjectAtoms = Object;
11994
+ return esObjectAtoms;
11995
+ }
11996
+
11997
+ var esErrors;
11998
+ var hasRequiredEsErrors;
11999
+
12000
+ function requireEsErrors () {
12001
+ if (hasRequiredEsErrors) return esErrors;
12002
+ hasRequiredEsErrors = 1;
12003
+
12004
+ /** @type {import('.')} */
12005
+ esErrors = Error;
12006
+ return esErrors;
12007
+ }
12008
+
12009
+ var _eval;
12010
+ var hasRequired_eval;
12011
+
12012
+ function require_eval () {
12013
+ if (hasRequired_eval) return _eval;
12014
+ hasRequired_eval = 1;
12015
+
12016
+ /** @type {import('./eval')} */
12017
+ _eval = EvalError;
12018
+ return _eval;
12019
+ }
12020
+
12021
+ var range;
12022
+ var hasRequiredRange;
12023
+
12024
+ function requireRange () {
12025
+ if (hasRequiredRange) return range;
12026
+ hasRequiredRange = 1;
12027
+
12028
+ /** @type {import('./range')} */
12029
+ range = RangeError;
12030
+ return range;
12031
+ }
12032
+
12033
+ var ref;
12034
+ var hasRequiredRef;
12035
+
12036
+ function requireRef () {
12037
+ if (hasRequiredRef) return ref;
12038
+ hasRequiredRef = 1;
12039
+
12040
+ /** @type {import('./ref')} */
12041
+ ref = ReferenceError;
12042
+ return ref;
12043
+ }
12044
+
12045
+ var syntax;
12046
+ var hasRequiredSyntax;
12047
+
12048
+ function requireSyntax () {
12049
+ if (hasRequiredSyntax) return syntax;
12050
+ hasRequiredSyntax = 1;
12051
+
12052
+ /** @type {import('./syntax')} */
12053
+ syntax = SyntaxError;
12054
+ return syntax;
12055
+ }
12056
+
12057
+ var type;
12058
+ var hasRequiredType;
12059
+
12060
+ function requireType () {
12061
+ if (hasRequiredType) return type;
12062
+ hasRequiredType = 1;
12063
+
12064
+ /** @type {import('./type')} */
12065
+ type = TypeError;
12066
+ return type;
12067
+ }
12068
+
12069
+ var uri;
12070
+ var hasRequiredUri;
12071
+
12072
+ function requireUri () {
12073
+ if (hasRequiredUri) return uri;
12074
+ hasRequiredUri = 1;
12075
+
12076
+ /** @type {import('./uri')} */
12077
+ uri = URIError;
12078
+ return uri;
12079
+ }
12080
+
12081
+ var abs;
12082
+ var hasRequiredAbs;
12083
+
12084
+ function requireAbs () {
12085
+ if (hasRequiredAbs) return abs;
12086
+ hasRequiredAbs = 1;
12087
+
12088
+ /** @type {import('./abs')} */
12089
+ abs = Math.abs;
12090
+ return abs;
12091
+ }
12092
+
12093
+ var floor;
12094
+ var hasRequiredFloor;
12095
+
12096
+ function requireFloor () {
12097
+ if (hasRequiredFloor) return floor;
12098
+ hasRequiredFloor = 1;
12099
+
12100
+ /** @type {import('./floor')} */
12101
+ floor = Math.floor;
12102
+ return floor;
12103
+ }
12104
+
12105
+ var max;
12106
+ var hasRequiredMax;
12107
+
12108
+ function requireMax () {
12109
+ if (hasRequiredMax) return max;
12110
+ hasRequiredMax = 1;
12111
+
12112
+ /** @type {import('./max')} */
12113
+ max = Math.max;
12114
+ return max;
12115
+ }
12116
+
12117
+ var min;
12118
+ var hasRequiredMin;
12119
+
12120
+ function requireMin () {
12121
+ if (hasRequiredMin) return min;
12122
+ hasRequiredMin = 1;
12123
+
12124
+ /** @type {import('./min')} */
12125
+ min = Math.min;
12126
+ return min;
12127
+ }
12128
+
12129
+ var pow;
12130
+ var hasRequiredPow;
12131
+
12132
+ function requirePow () {
12133
+ if (hasRequiredPow) return pow;
12134
+ hasRequiredPow = 1;
12135
+
12136
+ /** @type {import('./pow')} */
12137
+ pow = Math.pow;
12138
+ return pow;
12139
+ }
12140
+
12141
+ var round;
12142
+ var hasRequiredRound;
12143
+
12144
+ function requireRound () {
12145
+ if (hasRequiredRound) return round;
12146
+ hasRequiredRound = 1;
12147
+
12148
+ /** @type {import('./round')} */
12149
+ round = Math.round;
12150
+ return round;
12151
+ }
12152
+
12153
+ var _isNaN;
12154
+ var hasRequired_isNaN;
12155
+
12156
+ function require_isNaN () {
12157
+ if (hasRequired_isNaN) return _isNaN;
12158
+ hasRequired_isNaN = 1;
12159
+
12160
+ /** @type {import('./isNaN')} */
12161
+ _isNaN = Number.isNaN || function isNaN(a) {
12162
+ return a !== a;
12163
+ };
12164
+ return _isNaN;
12165
+ }
12166
+
12167
+ var sign;
12168
+ var hasRequiredSign;
12169
+
12170
+ function requireSign () {
12171
+ if (hasRequiredSign) return sign;
12172
+ hasRequiredSign = 1;
12173
+
12174
+ var $isNaN = /*@__PURE__*/ require_isNaN();
12175
+
12176
+ /** @type {import('./sign')} */
12177
+ sign = function sign(number) {
12178
+ if ($isNaN(number) || number === 0) {
12179
+ return number;
12180
+ }
12181
+ return number < 0 ? -1 : 1;
12182
+ };
12183
+ return sign;
12184
+ }
12185
+
12186
+ var gOPD;
12187
+ var hasRequiredGOPD;
12188
+
12189
+ function requireGOPD () {
12190
+ if (hasRequiredGOPD) return gOPD;
12191
+ hasRequiredGOPD = 1;
12192
+
12193
+ /** @type {import('./gOPD')} */
12194
+ gOPD = Object.getOwnPropertyDescriptor;
12195
+ return gOPD;
12196
+ }
12197
+
12198
+ var gopd;
12199
+ var hasRequiredGopd;
12200
+
12201
+ function requireGopd () {
12202
+ if (hasRequiredGopd) return gopd;
12203
+ hasRequiredGopd = 1;
12204
+
12205
+ /** @type {import('.')} */
12206
+ var $gOPD = /*@__PURE__*/ requireGOPD();
12207
+
12208
+ if ($gOPD) {
12209
+ try {
12210
+ $gOPD([], 'length');
12211
+ } catch (e) {
12212
+ // IE 8 has a broken gOPD
12213
+ $gOPD = null;
12214
+ }
12215
+ }
12216
+
12217
+ gopd = $gOPD;
12218
+ return gopd;
12219
+ }
12220
+
12221
+ var esDefineProperty;
12222
+ var hasRequiredEsDefineProperty;
12223
+
12224
+ function requireEsDefineProperty () {
12225
+ if (hasRequiredEsDefineProperty) return esDefineProperty;
12226
+ hasRequiredEsDefineProperty = 1;
12227
+
12228
+ /** @type {import('.')} */
12229
+ var $defineProperty = Object.defineProperty || false;
12230
+ if ($defineProperty) {
12231
+ try {
12232
+ $defineProperty({}, 'a', { value: 1 });
12233
+ } catch (e) {
12234
+ // IE 8 has a broken defineProperty
12235
+ $defineProperty = false;
12236
+ }
12237
+ }
12238
+
12239
+ esDefineProperty = $defineProperty;
12240
+ return esDefineProperty;
12241
+ }
12242
+
12243
+ var shams$1;
12244
+ var hasRequiredShams$1;
12245
+
12246
+ function requireShams$1 () {
12247
+ if (hasRequiredShams$1) return shams$1;
12248
+ hasRequiredShams$1 = 1;
12249
+
12250
+ /** @type {import('./shams')} */
12251
+ /* eslint complexity: [2, 18], max-statements: [2, 33] */
12252
+ shams$1 = function hasSymbols() {
12253
+ if (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; }
12254
+ if (typeof Symbol.iterator === 'symbol') { return true; }
12255
+
12256
+ /** @type {{ [k in symbol]?: unknown }} */
12257
+ var obj = {};
12258
+ var sym = Symbol('test');
12259
+ var symObj = Object(sym);
12260
+ if (typeof sym === 'string') { return false; }
12261
+
12262
+ if (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; }
12263
+ if (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; }
12264
+
12265
+ // temp disabled per https://github.com/ljharb/object.assign/issues/17
12266
+ // if (sym instanceof Symbol) { return false; }
12267
+ // temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4
12268
+ // if (!(symObj instanceof Symbol)) { return false; }
12269
+
12270
+ // if (typeof Symbol.prototype.toString !== 'function') { return false; }
12271
+ // if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; }
12272
+
12273
+ var symVal = 42;
12274
+ obj[sym] = symVal;
12275
+ for (var _ in obj) { return false; } // eslint-disable-line no-restricted-syntax, no-unreachable-loop
12276
+ if (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; }
12277
+
12278
+ if (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; }
12279
+
12280
+ var syms = Object.getOwnPropertySymbols(obj);
12281
+ if (syms.length !== 1 || syms[0] !== sym) { return false; }
12282
+
12283
+ if (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; }
12284
+
12285
+ if (typeof Object.getOwnPropertyDescriptor === 'function') {
12286
+ // eslint-disable-next-line no-extra-parens
12287
+ var descriptor = /** @type {PropertyDescriptor} */ (Object.getOwnPropertyDescriptor(obj, sym));
12288
+ if (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; }
12289
+ }
12290
+
12291
+ return true;
12292
+ };
12293
+ return shams$1;
12294
+ }
12295
+
12296
+ var hasSymbols;
12297
+ var hasRequiredHasSymbols;
12298
+
12299
+ function requireHasSymbols () {
12300
+ if (hasRequiredHasSymbols) return hasSymbols;
12301
+ hasRequiredHasSymbols = 1;
12302
+
12303
+ var origSymbol = typeof Symbol !== 'undefined' && Symbol;
12304
+ var hasSymbolSham = requireShams$1();
12305
+
12306
+ /** @type {import('.')} */
12307
+ hasSymbols = function hasNativeSymbols() {
12308
+ if (typeof origSymbol !== 'function') { return false; }
12309
+ if (typeof Symbol !== 'function') { return false; }
12310
+ if (typeof origSymbol('foo') !== 'symbol') { return false; }
12311
+ if (typeof Symbol('bar') !== 'symbol') { return false; }
12312
+
12313
+ return hasSymbolSham();
12314
+ };
12315
+ return hasSymbols;
12316
+ }
12317
+
12318
+ var Reflect_getPrototypeOf;
12319
+ var hasRequiredReflect_getPrototypeOf;
12320
+
12321
+ function requireReflect_getPrototypeOf () {
12322
+ if (hasRequiredReflect_getPrototypeOf) return Reflect_getPrototypeOf;
12323
+ hasRequiredReflect_getPrototypeOf = 1;
12324
+
12325
+ /** @type {import('./Reflect.getPrototypeOf')} */
12326
+ Reflect_getPrototypeOf = (typeof Reflect !== 'undefined' && Reflect.getPrototypeOf) || null;
12327
+ return Reflect_getPrototypeOf;
12328
+ }
12329
+
12330
+ var Object_getPrototypeOf;
12331
+ var hasRequiredObject_getPrototypeOf;
12332
+
12333
+ function requireObject_getPrototypeOf () {
12334
+ if (hasRequiredObject_getPrototypeOf) return Object_getPrototypeOf;
12335
+ hasRequiredObject_getPrototypeOf = 1;
12336
+
12337
+ var $Object = /*@__PURE__*/ requireEsObjectAtoms();
12338
+
12339
+ /** @type {import('./Object.getPrototypeOf')} */
12340
+ Object_getPrototypeOf = $Object.getPrototypeOf || null;
12341
+ return Object_getPrototypeOf;
12342
+ }
12343
+
12344
+ var implementation;
12345
+ var hasRequiredImplementation;
12346
+
12347
+ function requireImplementation () {
12348
+ if (hasRequiredImplementation) return implementation;
12349
+ hasRequiredImplementation = 1;
12350
+
12351
+ /* eslint no-invalid-this: 1 */
12352
+
12353
+ var ERROR_MESSAGE = 'Function.prototype.bind called on incompatible ';
12354
+ var toStr = Object.prototype.toString;
12355
+ var max = Math.max;
12356
+ var funcType = '[object Function]';
12357
+
12358
+ var concatty = function concatty(a, b) {
12359
+ var arr = [];
12360
+
12361
+ for (var i = 0; i < a.length; i += 1) {
12362
+ arr[i] = a[i];
12363
+ }
12364
+ for (var j = 0; j < b.length; j += 1) {
12365
+ arr[j + a.length] = b[j];
12366
+ }
12367
+
12368
+ return arr;
12369
+ };
12370
+
12371
+ var slicy = function slicy(arrLike, offset) {
12372
+ var arr = [];
12373
+ for (var i = offset, j = 0; i < arrLike.length; i += 1, j += 1) {
12374
+ arr[j] = arrLike[i];
12375
+ }
12376
+ return arr;
12377
+ };
12378
+
12379
+ var joiny = function (arr, joiner) {
12380
+ var str = '';
12381
+ for (var i = 0; i < arr.length; i += 1) {
12382
+ str += arr[i];
12383
+ if (i + 1 < arr.length) {
12384
+ str += joiner;
12385
+ }
12386
+ }
12387
+ return str;
12388
+ };
12389
+
12390
+ implementation = function bind(that) {
12391
+ var target = this;
12392
+ if (typeof target !== 'function' || toStr.apply(target) !== funcType) {
12393
+ throw new TypeError(ERROR_MESSAGE + target);
12394
+ }
12395
+ var args = slicy(arguments, 1);
12396
+
12397
+ var bound;
12398
+ var binder = function () {
12399
+ if (this instanceof bound) {
12400
+ var result = target.apply(
12401
+ this,
12402
+ concatty(args, arguments)
12403
+ );
12404
+ if (Object(result) === result) {
12405
+ return result;
12406
+ }
12407
+ return this;
12408
+ }
12409
+ return target.apply(
12410
+ that,
12411
+ concatty(args, arguments)
12412
+ );
12413
+
12414
+ };
12415
+
12416
+ var boundLength = max(0, target.length - args.length);
12417
+ var boundArgs = [];
12418
+ for (var i = 0; i < boundLength; i++) {
12419
+ boundArgs[i] = '$' + i;
12420
+ }
12421
+
12422
+ bound = Function('binder', 'return function (' + joiny(boundArgs, ',') + '){ return binder.apply(this,arguments); }')(binder);
12423
+
12424
+ if (target.prototype) {
12425
+ var Empty = function Empty() {};
12426
+ Empty.prototype = target.prototype;
12427
+ bound.prototype = new Empty();
12428
+ Empty.prototype = null;
12429
+ }
12430
+
12431
+ return bound;
12432
+ };
12433
+ return implementation;
12434
+ }
12435
+
12436
+ var functionBind;
12437
+ var hasRequiredFunctionBind;
12438
+
12439
+ function requireFunctionBind () {
12440
+ if (hasRequiredFunctionBind) return functionBind;
12441
+ hasRequiredFunctionBind = 1;
12442
+
12443
+ var implementation = requireImplementation();
12444
+
12445
+ functionBind = Function.prototype.bind || implementation;
12446
+ return functionBind;
12447
+ }
12448
+
12449
+ var functionCall;
12450
+ var hasRequiredFunctionCall;
12451
+
12452
+ function requireFunctionCall () {
12453
+ if (hasRequiredFunctionCall) return functionCall;
12454
+ hasRequiredFunctionCall = 1;
12455
+
12456
+ /** @type {import('./functionCall')} */
12457
+ functionCall = Function.prototype.call;
12458
+ return functionCall;
12459
+ }
12460
+
12461
+ var functionApply;
12462
+ var hasRequiredFunctionApply;
12463
+
12464
+ function requireFunctionApply () {
12465
+ if (hasRequiredFunctionApply) return functionApply;
12466
+ hasRequiredFunctionApply = 1;
12467
+
12468
+ /** @type {import('./functionApply')} */
12469
+ functionApply = Function.prototype.apply;
12470
+ return functionApply;
12471
+ }
12472
+
12473
+ var reflectApply;
12474
+ var hasRequiredReflectApply;
12475
+
12476
+ function requireReflectApply () {
12477
+ if (hasRequiredReflectApply) return reflectApply;
12478
+ hasRequiredReflectApply = 1;
12479
+
12480
+ /** @type {import('./reflectApply')} */
12481
+ reflectApply = typeof Reflect !== 'undefined' && Reflect && Reflect.apply;
12482
+ return reflectApply;
12483
+ }
12484
+
12485
+ var actualApply;
12486
+ var hasRequiredActualApply;
12487
+
12488
+ function requireActualApply () {
12489
+ if (hasRequiredActualApply) return actualApply;
12490
+ hasRequiredActualApply = 1;
12491
+
12492
+ var bind = requireFunctionBind();
12493
+
12494
+ var $apply = requireFunctionApply();
12495
+ var $call = requireFunctionCall();
12496
+ var $reflectApply = requireReflectApply();
12497
+
12498
+ /** @type {import('./actualApply')} */
12499
+ actualApply = $reflectApply || bind.call($call, $apply);
12500
+ return actualApply;
12501
+ }
12502
+
12503
+ var callBindApplyHelpers;
12504
+ var hasRequiredCallBindApplyHelpers;
12505
+
12506
+ function requireCallBindApplyHelpers () {
12507
+ if (hasRequiredCallBindApplyHelpers) return callBindApplyHelpers;
12508
+ hasRequiredCallBindApplyHelpers = 1;
12509
+
12510
+ var bind = requireFunctionBind();
12511
+ var $TypeError = /*@__PURE__*/ requireType();
12512
+
12513
+ var $call = requireFunctionCall();
12514
+ var $actualApply = requireActualApply();
12515
+
12516
+ /** @type {(args: [Function, thisArg?: unknown, ...args: unknown[]]) => Function} TODO FIXME, find a way to use import('.') */
12517
+ callBindApplyHelpers = function callBindBasic(args) {
12518
+ if (args.length < 1 || typeof args[0] !== 'function') {
12519
+ throw new $TypeError('a function is required');
12520
+ }
12521
+ return $actualApply(bind, $call, args);
12522
+ };
12523
+ return callBindApplyHelpers;
12524
+ }
12525
+
12526
+ var get$1;
12527
+ var hasRequiredGet;
12528
+
12529
+ function requireGet () {
12530
+ if (hasRequiredGet) return get$1;
12531
+ hasRequiredGet = 1;
12532
+
12533
+ var callBind = requireCallBindApplyHelpers();
12534
+ var gOPD = /*@__PURE__*/ requireGopd();
12535
+
12536
+ var hasProtoAccessor;
12537
+ try {
12538
+ // eslint-disable-next-line no-extra-parens, no-proto
12539
+ hasProtoAccessor = /** @type {{ __proto__?: typeof Array.prototype }} */ ([]).__proto__ === Array.prototype;
12540
+ } catch (e) {
12541
+ if (!e || typeof e !== 'object' || !('code' in e) || e.code !== 'ERR_PROTO_ACCESS') {
12542
+ throw e;
12543
+ }
12544
+ }
12545
+
12546
+ // eslint-disable-next-line no-extra-parens
12547
+ var desc = !!hasProtoAccessor && gOPD && gOPD(Object.prototype, /** @type {keyof typeof Object.prototype} */ ('__proto__'));
12548
+
12549
+ var $Object = Object;
12550
+ var $getPrototypeOf = $Object.getPrototypeOf;
12551
+
12552
+ /** @type {import('./get')} */
12553
+ get$1 = desc && typeof desc.get === 'function'
12554
+ ? callBind([desc.get])
12555
+ : typeof $getPrototypeOf === 'function'
12556
+ ? /** @type {import('./get')} */ function getDunder(value) {
12557
+ // eslint-disable-next-line eqeqeq
12558
+ return $getPrototypeOf(value == null ? value : $Object(value));
12559
+ }
12560
+ : false;
12561
+ return get$1;
12562
+ }
12563
+
12564
+ var getProto;
12565
+ var hasRequiredGetProto;
12566
+
12567
+ function requireGetProto () {
12568
+ if (hasRequiredGetProto) return getProto;
12569
+ hasRequiredGetProto = 1;
12570
+
12571
+ var reflectGetProto = requireReflect_getPrototypeOf();
12572
+ var originalGetProto = requireObject_getPrototypeOf();
12573
+
12574
+ var getDunderProto = /*@__PURE__*/ requireGet();
12575
+
12576
+ /** @type {import('.')} */
12577
+ getProto = reflectGetProto
12578
+ ? function getProto(O) {
12579
+ // @ts-expect-error TS can't narrow inside a closure, for some reason
12580
+ return reflectGetProto(O);
12581
+ }
12582
+ : originalGetProto
12583
+ ? function getProto(O) {
12584
+ if (!O || (typeof O !== 'object' && typeof O !== 'function')) {
12585
+ throw new TypeError('getProto: not an object');
12586
+ }
12587
+ // @ts-expect-error TS can't narrow inside a closure, for some reason
12588
+ return originalGetProto(O);
12589
+ }
12590
+ : getDunderProto
12591
+ ? function getProto(O) {
12592
+ // @ts-expect-error TS can't narrow inside a closure, for some reason
12593
+ return getDunderProto(O);
12594
+ }
12595
+ : null;
12596
+ return getProto;
12597
+ }
12598
+
12599
+ var hasown;
12600
+ var hasRequiredHasown;
12601
+
12602
+ function requireHasown () {
12603
+ if (hasRequiredHasown) return hasown;
12604
+ hasRequiredHasown = 1;
12605
+
12606
+ var call = Function.prototype.call;
12607
+ var $hasOwn = Object.prototype.hasOwnProperty;
12608
+ var bind = requireFunctionBind();
12609
+
12610
+ /** @type {import('.')} */
12611
+ hasown = bind.call(call, $hasOwn);
12612
+ return hasown;
12613
+ }
12614
+
12615
+ var getIntrinsic;
12616
+ var hasRequiredGetIntrinsic;
12617
+
12618
+ function requireGetIntrinsic () {
12619
+ if (hasRequiredGetIntrinsic) return getIntrinsic;
12620
+ hasRequiredGetIntrinsic = 1;
12621
+
12622
+ var undefined$1;
12623
+
12624
+ var $Object = /*@__PURE__*/ requireEsObjectAtoms();
12625
+
12626
+ var $Error = /*@__PURE__*/ requireEsErrors();
12627
+ var $EvalError = /*@__PURE__*/ require_eval();
12628
+ var $RangeError = /*@__PURE__*/ requireRange();
12629
+ var $ReferenceError = /*@__PURE__*/ requireRef();
12630
+ var $SyntaxError = /*@__PURE__*/ requireSyntax();
12631
+ var $TypeError = /*@__PURE__*/ requireType();
12632
+ var $URIError = /*@__PURE__*/ requireUri();
12633
+
12634
+ var abs = /*@__PURE__*/ requireAbs();
12635
+ var floor = /*@__PURE__*/ requireFloor();
12636
+ var max = /*@__PURE__*/ requireMax();
12637
+ var min = /*@__PURE__*/ requireMin();
12638
+ var pow = /*@__PURE__*/ requirePow();
12639
+ var round = /*@__PURE__*/ requireRound();
12640
+ var sign = /*@__PURE__*/ requireSign();
12641
+
12642
+ var $Function = Function;
12643
+
12644
+ // eslint-disable-next-line consistent-return
12645
+ var getEvalledConstructor = function (expressionSyntax) {
12646
+ try {
12647
+ return $Function('"use strict"; return (' + expressionSyntax + ').constructor;')();
12648
+ } catch (e) {}
12649
+ };
12650
+
12651
+ var $gOPD = /*@__PURE__*/ requireGopd();
12652
+ var $defineProperty = /*@__PURE__*/ requireEsDefineProperty();
12653
+
12654
+ var throwTypeError = function () {
12655
+ throw new $TypeError();
12656
+ };
12657
+ var ThrowTypeError = $gOPD
12658
+ ? (function () {
12659
+ try {
12660
+ // eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties
12661
+ arguments.callee; // IE 8 does not throw here
12662
+ return throwTypeError;
12663
+ } catch (calleeThrows) {
12664
+ try {
12665
+ // IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '')
12666
+ return $gOPD(arguments, 'callee').get;
12667
+ } catch (gOPDthrows) {
12668
+ return throwTypeError;
12669
+ }
12670
+ }
12671
+ }())
12672
+ : throwTypeError;
12673
+
12674
+ var hasSymbols = requireHasSymbols()();
12675
+
12676
+ var getProto = requireGetProto();
12677
+ var $ObjectGPO = requireObject_getPrototypeOf();
12678
+ var $ReflectGPO = requireReflect_getPrototypeOf();
12679
+
12680
+ var $apply = requireFunctionApply();
12681
+ var $call = requireFunctionCall();
12682
+
12683
+ var needsEval = {};
12684
+
12685
+ var TypedArray = typeof Uint8Array === 'undefined' || !getProto ? undefined$1 : getProto(Uint8Array);
12686
+
12687
+ var INTRINSICS = {
12688
+ __proto__: null,
12689
+ '%AggregateError%': typeof AggregateError === 'undefined' ? undefined$1 : AggregateError,
12690
+ '%Array%': Array,
12691
+ '%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined$1 : ArrayBuffer,
12692
+ '%ArrayIteratorPrototype%': hasSymbols && getProto ? getProto([][Symbol.iterator]()) : undefined$1,
12693
+ '%AsyncFromSyncIteratorPrototype%': undefined$1,
12694
+ '%AsyncFunction%': needsEval,
12695
+ '%AsyncGenerator%': needsEval,
12696
+ '%AsyncGeneratorFunction%': needsEval,
12697
+ '%AsyncIteratorPrototype%': needsEval,
12698
+ '%Atomics%': typeof Atomics === 'undefined' ? undefined$1 : Atomics,
12699
+ '%BigInt%': typeof BigInt === 'undefined' ? undefined$1 : BigInt,
12700
+ '%BigInt64Array%': typeof BigInt64Array === 'undefined' ? undefined$1 : BigInt64Array,
12701
+ '%BigUint64Array%': typeof BigUint64Array === 'undefined' ? undefined$1 : BigUint64Array,
12702
+ '%Boolean%': Boolean,
12703
+ '%DataView%': typeof DataView === 'undefined' ? undefined$1 : DataView,
12704
+ '%Date%': Date,
12705
+ '%decodeURI%': decodeURI,
12706
+ '%decodeURIComponent%': decodeURIComponent,
12707
+ '%encodeURI%': encodeURI,
12708
+ '%encodeURIComponent%': encodeURIComponent,
12709
+ '%Error%': $Error,
12710
+ '%eval%': eval, // eslint-disable-line no-eval
12711
+ '%EvalError%': $EvalError,
12712
+ '%Float16Array%': typeof Float16Array === 'undefined' ? undefined$1 : Float16Array,
12713
+ '%Float32Array%': typeof Float32Array === 'undefined' ? undefined$1 : Float32Array,
12714
+ '%Float64Array%': typeof Float64Array === 'undefined' ? undefined$1 : Float64Array,
12715
+ '%FinalizationRegistry%': typeof FinalizationRegistry === 'undefined' ? undefined$1 : FinalizationRegistry,
12716
+ '%Function%': $Function,
12717
+ '%GeneratorFunction%': needsEval,
12718
+ '%Int8Array%': typeof Int8Array === 'undefined' ? undefined$1 : Int8Array,
12719
+ '%Int16Array%': typeof Int16Array === 'undefined' ? undefined$1 : Int16Array,
12720
+ '%Int32Array%': typeof Int32Array === 'undefined' ? undefined$1 : Int32Array,
12721
+ '%isFinite%': isFinite,
12722
+ '%isNaN%': isNaN,
12723
+ '%IteratorPrototype%': hasSymbols && getProto ? getProto(getProto([][Symbol.iterator]())) : undefined$1,
12724
+ '%JSON%': typeof JSON === 'object' ? JSON : undefined$1,
12725
+ '%Map%': typeof Map === 'undefined' ? undefined$1 : Map,
12726
+ '%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols || !getProto ? undefined$1 : getProto(new Map()[Symbol.iterator]()),
12727
+ '%Math%': Math,
12728
+ '%Number%': Number,
12729
+ '%Object%': $Object,
12730
+ '%Object.getOwnPropertyDescriptor%': $gOPD,
12731
+ '%parseFloat%': parseFloat,
12732
+ '%parseInt%': parseInt,
12733
+ '%Promise%': typeof Promise === 'undefined' ? undefined$1 : Promise,
12734
+ '%Proxy%': typeof Proxy === 'undefined' ? undefined$1 : Proxy,
12735
+ '%RangeError%': $RangeError,
12736
+ '%ReferenceError%': $ReferenceError,
12737
+ '%Reflect%': typeof Reflect === 'undefined' ? undefined$1 : Reflect,
12738
+ '%RegExp%': RegExp,
12739
+ '%Set%': typeof Set === 'undefined' ? undefined$1 : Set,
12740
+ '%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols || !getProto ? undefined$1 : getProto(new Set()[Symbol.iterator]()),
12741
+ '%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined$1 : SharedArrayBuffer,
12742
+ '%String%': String,
12743
+ '%StringIteratorPrototype%': hasSymbols && getProto ? getProto(''[Symbol.iterator]()) : undefined$1,
12744
+ '%Symbol%': hasSymbols ? Symbol : undefined$1,
12745
+ '%SyntaxError%': $SyntaxError,
12746
+ '%ThrowTypeError%': ThrowTypeError,
12747
+ '%TypedArray%': TypedArray,
12748
+ '%TypeError%': $TypeError,
12749
+ '%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined$1 : Uint8Array,
12750
+ '%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined$1 : Uint8ClampedArray,
12751
+ '%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined$1 : Uint16Array,
12752
+ '%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined$1 : Uint32Array,
12753
+ '%URIError%': $URIError,
12754
+ '%WeakMap%': typeof WeakMap === 'undefined' ? undefined$1 : WeakMap,
12755
+ '%WeakRef%': typeof WeakRef === 'undefined' ? undefined$1 : WeakRef,
12756
+ '%WeakSet%': typeof WeakSet === 'undefined' ? undefined$1 : WeakSet,
12757
+
12758
+ '%Function.prototype.call%': $call,
12759
+ '%Function.prototype.apply%': $apply,
12760
+ '%Object.defineProperty%': $defineProperty,
12761
+ '%Object.getPrototypeOf%': $ObjectGPO,
12762
+ '%Math.abs%': abs,
12763
+ '%Math.floor%': floor,
12764
+ '%Math.max%': max,
12765
+ '%Math.min%': min,
12766
+ '%Math.pow%': pow,
12767
+ '%Math.round%': round,
12768
+ '%Math.sign%': sign,
12769
+ '%Reflect.getPrototypeOf%': $ReflectGPO
12770
+ };
12771
+
12772
+ if (getProto) {
12773
+ try {
12774
+ null.error; // eslint-disable-line no-unused-expressions
12775
+ } catch (e) {
12776
+ // https://github.com/tc39/proposal-shadowrealm/pull/384#issuecomment-1364264229
12777
+ var errorProto = getProto(getProto(e));
12778
+ INTRINSICS['%Error.prototype%'] = errorProto;
12779
+ }
12780
+ }
12781
+
12782
+ var doEval = function doEval(name) {
12783
+ var value;
12784
+ if (name === '%AsyncFunction%') {
12785
+ value = getEvalledConstructor('async function () {}');
12786
+ } else if (name === '%GeneratorFunction%') {
12787
+ value = getEvalledConstructor('function* () {}');
12788
+ } else if (name === '%AsyncGeneratorFunction%') {
12789
+ value = getEvalledConstructor('async function* () {}');
12790
+ } else if (name === '%AsyncGenerator%') {
12791
+ var fn = doEval('%AsyncGeneratorFunction%');
12792
+ if (fn) {
12793
+ value = fn.prototype;
12794
+ }
12795
+ } else if (name === '%AsyncIteratorPrototype%') {
12796
+ var gen = doEval('%AsyncGenerator%');
12797
+ if (gen && getProto) {
12798
+ value = getProto(gen.prototype);
12799
+ }
12800
+ }
12801
+
12802
+ INTRINSICS[name] = value;
12803
+
12804
+ return value;
12805
+ };
12806
+
12807
+ var LEGACY_ALIASES = {
12808
+ __proto__: null,
12809
+ '%ArrayBufferPrototype%': ['ArrayBuffer', 'prototype'],
12810
+ '%ArrayPrototype%': ['Array', 'prototype'],
12811
+ '%ArrayProto_entries%': ['Array', 'prototype', 'entries'],
12812
+ '%ArrayProto_forEach%': ['Array', 'prototype', 'forEach'],
12813
+ '%ArrayProto_keys%': ['Array', 'prototype', 'keys'],
12814
+ '%ArrayProto_values%': ['Array', 'prototype', 'values'],
12815
+ '%AsyncFunctionPrototype%': ['AsyncFunction', 'prototype'],
12816
+ '%AsyncGenerator%': ['AsyncGeneratorFunction', 'prototype'],
12817
+ '%AsyncGeneratorPrototype%': ['AsyncGeneratorFunction', 'prototype', 'prototype'],
12818
+ '%BooleanPrototype%': ['Boolean', 'prototype'],
12819
+ '%DataViewPrototype%': ['DataView', 'prototype'],
12820
+ '%DatePrototype%': ['Date', 'prototype'],
12821
+ '%ErrorPrototype%': ['Error', 'prototype'],
12822
+ '%EvalErrorPrototype%': ['EvalError', 'prototype'],
12823
+ '%Float32ArrayPrototype%': ['Float32Array', 'prototype'],
12824
+ '%Float64ArrayPrototype%': ['Float64Array', 'prototype'],
12825
+ '%FunctionPrototype%': ['Function', 'prototype'],
12826
+ '%Generator%': ['GeneratorFunction', 'prototype'],
12827
+ '%GeneratorPrototype%': ['GeneratorFunction', 'prototype', 'prototype'],
12828
+ '%Int8ArrayPrototype%': ['Int8Array', 'prototype'],
12829
+ '%Int16ArrayPrototype%': ['Int16Array', 'prototype'],
12830
+ '%Int32ArrayPrototype%': ['Int32Array', 'prototype'],
12831
+ '%JSONParse%': ['JSON', 'parse'],
12832
+ '%JSONStringify%': ['JSON', 'stringify'],
12833
+ '%MapPrototype%': ['Map', 'prototype'],
12834
+ '%NumberPrototype%': ['Number', 'prototype'],
12835
+ '%ObjectPrototype%': ['Object', 'prototype'],
12836
+ '%ObjProto_toString%': ['Object', 'prototype', 'toString'],
12837
+ '%ObjProto_valueOf%': ['Object', 'prototype', 'valueOf'],
12838
+ '%PromisePrototype%': ['Promise', 'prototype'],
12839
+ '%PromiseProto_then%': ['Promise', 'prototype', 'then'],
12840
+ '%Promise_all%': ['Promise', 'all'],
12841
+ '%Promise_reject%': ['Promise', 'reject'],
12842
+ '%Promise_resolve%': ['Promise', 'resolve'],
12843
+ '%RangeErrorPrototype%': ['RangeError', 'prototype'],
12844
+ '%ReferenceErrorPrototype%': ['ReferenceError', 'prototype'],
12845
+ '%RegExpPrototype%': ['RegExp', 'prototype'],
12846
+ '%SetPrototype%': ['Set', 'prototype'],
12847
+ '%SharedArrayBufferPrototype%': ['SharedArrayBuffer', 'prototype'],
12848
+ '%StringPrototype%': ['String', 'prototype'],
12849
+ '%SymbolPrototype%': ['Symbol', 'prototype'],
12850
+ '%SyntaxErrorPrototype%': ['SyntaxError', 'prototype'],
12851
+ '%TypedArrayPrototype%': ['TypedArray', 'prototype'],
12852
+ '%TypeErrorPrototype%': ['TypeError', 'prototype'],
12853
+ '%Uint8ArrayPrototype%': ['Uint8Array', 'prototype'],
12854
+ '%Uint8ClampedArrayPrototype%': ['Uint8ClampedArray', 'prototype'],
12855
+ '%Uint16ArrayPrototype%': ['Uint16Array', 'prototype'],
12856
+ '%Uint32ArrayPrototype%': ['Uint32Array', 'prototype'],
12857
+ '%URIErrorPrototype%': ['URIError', 'prototype'],
12858
+ '%WeakMapPrototype%': ['WeakMap', 'prototype'],
12859
+ '%WeakSetPrototype%': ['WeakSet', 'prototype']
12860
+ };
12861
+
12862
+ var bind = requireFunctionBind();
12863
+ var hasOwn = /*@__PURE__*/ requireHasown();
12864
+ var $concat = bind.call($call, Array.prototype.concat);
12865
+ var $spliceApply = bind.call($apply, Array.prototype.splice);
12866
+ var $replace = bind.call($call, String.prototype.replace);
12867
+ var $strSlice = bind.call($call, String.prototype.slice);
12868
+ var $exec = bind.call($call, RegExp.prototype.exec);
12869
+
12870
+ /* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */
12871
+ var rePropName = /[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g;
12872
+ var reEscapeChar = /\\(\\)?/g; /** Used to match backslashes in property paths. */
12873
+ var stringToPath = function stringToPath(string) {
12874
+ var first = $strSlice(string, 0, 1);
12875
+ var last = $strSlice(string, -1);
12876
+ if (first === '%' && last !== '%') {
12877
+ throw new $SyntaxError('invalid intrinsic syntax, expected closing `%`');
12878
+ } else if (last === '%' && first !== '%') {
12879
+ throw new $SyntaxError('invalid intrinsic syntax, expected opening `%`');
12880
+ }
12881
+ var result = [];
12882
+ $replace(string, rePropName, function (match, number, quote, subString) {
12883
+ result[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : number || match;
12884
+ });
12885
+ return result;
12886
+ };
12887
+ /* end adaptation */
12888
+
12889
+ var getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {
12890
+ var intrinsicName = name;
12891
+ var alias;
12892
+ if (hasOwn(LEGACY_ALIASES, intrinsicName)) {
12893
+ alias = LEGACY_ALIASES[intrinsicName];
12894
+ intrinsicName = '%' + alias[0] + '%';
12895
+ }
12896
+
12897
+ if (hasOwn(INTRINSICS, intrinsicName)) {
12898
+ var value = INTRINSICS[intrinsicName];
12899
+ if (value === needsEval) {
12900
+ value = doEval(intrinsicName);
12901
+ }
12902
+ if (typeof value === 'undefined' && !allowMissing) {
12903
+ throw new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!');
12904
+ }
12905
+
12906
+ return {
12907
+ alias: alias,
12908
+ name: intrinsicName,
12909
+ value: value
12910
+ };
12911
+ }
12912
+
12913
+ throw new $SyntaxError('intrinsic ' + name + ' does not exist!');
12914
+ };
12915
+
12916
+ getIntrinsic = function GetIntrinsic(name, allowMissing) {
12917
+ if (typeof name !== 'string' || name.length === 0) {
12918
+ throw new $TypeError('intrinsic name must be a non-empty string');
12919
+ }
12920
+ if (arguments.length > 1 && typeof allowMissing !== 'boolean') {
12921
+ throw new $TypeError('"allowMissing" argument must be a boolean');
12922
+ }
12923
+
12924
+ if ($exec(/^%?[^%]*%?$/, name) === null) {
12925
+ throw new $SyntaxError('`%` may not be present anywhere but at the beginning and end of the intrinsic name');
12926
+ }
12927
+ var parts = stringToPath(name);
12928
+ var intrinsicBaseName = parts.length > 0 ? parts[0] : '';
12929
+
12930
+ var intrinsic = getBaseIntrinsic('%' + intrinsicBaseName + '%', allowMissing);
12931
+ var intrinsicRealName = intrinsic.name;
12932
+ var value = intrinsic.value;
12933
+ var skipFurtherCaching = false;
12934
+
12935
+ var alias = intrinsic.alias;
12936
+ if (alias) {
12937
+ intrinsicBaseName = alias[0];
12938
+ $spliceApply(parts, $concat([0, 1], alias));
12939
+ }
12940
+
12941
+ for (var i = 1, isOwn = true; i < parts.length; i += 1) {
12942
+ var part = parts[i];
12943
+ var first = $strSlice(part, 0, 1);
12944
+ var last = $strSlice(part, -1);
12945
+ if (
12946
+ (
12947
+ (first === '"' || first === "'" || first === '`')
12948
+ || (last === '"' || last === "'" || last === '`')
12949
+ )
12950
+ && first !== last
12951
+ ) {
12952
+ throw new $SyntaxError('property names with quotes must have matching quotes');
12953
+ }
12954
+ if (part === 'constructor' || !isOwn) {
12955
+ skipFurtherCaching = true;
12956
+ }
12957
+
12958
+ intrinsicBaseName += '.' + part;
12959
+ intrinsicRealName = '%' + intrinsicBaseName + '%';
12960
+
12961
+ if (hasOwn(INTRINSICS, intrinsicRealName)) {
12962
+ value = INTRINSICS[intrinsicRealName];
12963
+ } else if (value != null) {
12964
+ if (!(part in value)) {
12965
+ if (!allowMissing) {
12966
+ throw new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.');
12967
+ }
12968
+ return void undefined$1;
12969
+ }
12970
+ if ($gOPD && (i + 1) >= parts.length) {
12971
+ var desc = $gOPD(value, part);
12972
+ isOwn = !!desc;
12973
+
12974
+ // By convention, when a data property is converted to an accessor
12975
+ // property to emulate a data property that does not suffer from
12976
+ // the override mistake, that accessor's getter is marked with
12977
+ // an `originalValue` property. Here, when we detect this, we
12978
+ // uphold the illusion by pretending to see that original data
12979
+ // property, i.e., returning the value rather than the getter
12980
+ // itself.
12981
+ if (isOwn && 'get' in desc && !('originalValue' in desc.get)) {
12982
+ value = desc.get;
12983
+ } else {
12984
+ value = value[part];
12985
+ }
12986
+ } else {
12987
+ isOwn = hasOwn(value, part);
12988
+ value = value[part];
12989
+ }
12990
+
12991
+ if (isOwn && !skipFurtherCaching) {
12992
+ INTRINSICS[intrinsicRealName] = value;
12993
+ }
12994
+ }
12995
+ }
12996
+ return value;
12997
+ };
12998
+ return getIntrinsic;
12999
+ }
13000
+
13001
+ var shams;
13002
+ var hasRequiredShams;
13003
+
13004
+ function requireShams () {
13005
+ if (hasRequiredShams) return shams;
13006
+ hasRequiredShams = 1;
13007
+
13008
+ var hasSymbols = requireShams$1();
13009
+
13010
+ /** @type {import('.')} */
13011
+ shams = function hasToStringTagShams() {
13012
+ return hasSymbols() && !!Symbol.toStringTag;
13013
+ };
13014
+ return shams;
13015
+ }
13016
+
13017
+ var esSetTostringtag;
13018
+ var hasRequiredEsSetTostringtag;
13019
+
13020
+ function requireEsSetTostringtag () {
13021
+ if (hasRequiredEsSetTostringtag) return esSetTostringtag;
13022
+ hasRequiredEsSetTostringtag = 1;
13023
+
13024
+ var GetIntrinsic = /*@__PURE__*/ requireGetIntrinsic();
13025
+
13026
+ var $defineProperty = GetIntrinsic('%Object.defineProperty%', true);
13027
+
13028
+ var hasToStringTag = requireShams()();
13029
+ var hasOwn = /*@__PURE__*/ requireHasown();
13030
+ var $TypeError = /*@__PURE__*/ requireType();
13031
+
13032
+ var toStringTag = hasToStringTag ? Symbol.toStringTag : null;
13033
+
13034
+ /** @type {import('.')} */
13035
+ esSetTostringtag = function setToStringTag(object, value) {
13036
+ var overrideIfSet = arguments.length > 2 && !!arguments[2] && arguments[2].force;
13037
+ var nonConfigurable = arguments.length > 2 && !!arguments[2] && arguments[2].nonConfigurable;
13038
+ if (
13039
+ (typeof overrideIfSet !== 'undefined' && typeof overrideIfSet !== 'boolean')
13040
+ || (typeof nonConfigurable !== 'undefined' && typeof nonConfigurable !== 'boolean')
13041
+ ) {
13042
+ throw new $TypeError('if provided, the `overrideIfSet` and `nonConfigurable` options must be booleans');
13043
+ }
13044
+ if (toStringTag && (overrideIfSet || !hasOwn(object, toStringTag))) {
13045
+ if ($defineProperty) {
13046
+ $defineProperty(object, toStringTag, {
13047
+ configurable: !nonConfigurable,
13048
+ enumerable: false,
13049
+ value: value,
13050
+ writable: false
13051
+ });
13052
+ } else {
13053
+ object[toStringTag] = value; // eslint-disable-line no-param-reassign
13054
+ }
13055
+ }
13056
+ };
13057
+ return esSetTostringtag;
13058
+ }
13059
+
11586
13060
  var populate;
11587
13061
  var hasRequiredPopulate;
11588
13062
 
11589
13063
  function requirePopulate () {
11590
13064
  if (hasRequiredPopulate) return populate;
11591
13065
  hasRequiredPopulate = 1;
11592
- // populates missing values
11593
- populate = function(dst, src) {
11594
13066
 
11595
- Object.keys(src).forEach(function(prop)
11596
- {
11597
- dst[prop] = dst[prop] || src[prop];
13067
+ // populates missing values
13068
+ populate = function (dst, src) {
13069
+ Object.keys(src).forEach(function (prop) {
13070
+ dst[prop] = dst[prop] || src[prop]; // eslint-disable-line no-param-reassign
11598
13071
  });
11599
13072
 
11600
13073
  return dst;
@@ -11608,6 +13081,7 @@ var hasRequiredForm_data;
11608
13081
  function requireForm_data () {
11609
13082
  if (hasRequiredForm_data) return form_data;
11610
13083
  hasRequiredForm_data = 1;
13084
+
11611
13085
  var CombinedStream = requireCombined_stream();
11612
13086
  var util = require$$1;
11613
13087
  var path = require$$1$1;
@@ -11616,23 +13090,20 @@ function requireForm_data () {
11616
13090
  var parseUrl = require$$5.parse;
11617
13091
  var fs = require$$6;
11618
13092
  var Stream = require$$0$1.Stream;
13093
+ var crypto = require$$8;
11619
13094
  var mime = requireMimeTypes();
11620
13095
  var asynckit = requireAsynckit();
13096
+ var setToStringTag = /*@__PURE__*/ requireEsSetTostringtag();
13097
+ var hasOwn = /*@__PURE__*/ requireHasown();
11621
13098
  var populate = requirePopulate();
11622
13099
 
11623
- // Public API
11624
- form_data = FormData;
11625
-
11626
- // make it a Stream
11627
- util.inherits(FormData, CombinedStream);
11628
-
11629
13100
  /**
11630
13101
  * Create readable "multipart/form-data" streams.
11631
13102
  * Can be used to submit forms
11632
13103
  * and file uploads to other web applications.
11633
13104
  *
11634
13105
  * @constructor
11635
- * @param {Object} options - Properties to be added/overriden for FormData and CombinedStream
13106
+ * @param {object} options - Properties to be added/overriden for FormData and CombinedStream
11636
13107
  */
11637
13108
  function FormData(options) {
11638
13109
  if (!(this instanceof FormData)) {
@@ -11645,35 +13116,39 @@ function requireForm_data () {
11645
13116
 
11646
13117
  CombinedStream.call(this);
11647
13118
 
11648
- options = options || {};
11649
- for (var option in options) {
13119
+ options = options || {}; // eslint-disable-line no-param-reassign
13120
+ for (var option in options) { // eslint-disable-line no-restricted-syntax
11650
13121
  this[option] = options[option];
11651
13122
  }
11652
13123
  }
11653
13124
 
13125
+ // make it a Stream
13126
+ util.inherits(FormData, CombinedStream);
13127
+
11654
13128
  FormData.LINE_BREAK = '\r\n';
11655
13129
  FormData.DEFAULT_CONTENT_TYPE = 'application/octet-stream';
11656
13130
 
11657
- FormData.prototype.append = function(field, value, options) {
11658
-
11659
- options = options || {};
13131
+ FormData.prototype.append = function (field, value, options) {
13132
+ options = options || {}; // eslint-disable-line no-param-reassign
11660
13133
 
11661
13134
  // allow filename as single option
11662
- if (typeof options == 'string') {
11663
- options = {filename: options};
13135
+ if (typeof options === 'string') {
13136
+ options = { filename: options }; // eslint-disable-line no-param-reassign
11664
13137
  }
11665
13138
 
11666
13139
  var append = CombinedStream.prototype.append.bind(this);
11667
13140
 
11668
13141
  // all that streamy business can't handle numbers
11669
- if (typeof value == 'number') {
11670
- value = '' + value;
13142
+ if (typeof value === 'number' || value == null) {
13143
+ value = String(value); // eslint-disable-line no-param-reassign
11671
13144
  }
11672
13145
 
11673
13146
  // https://github.com/felixge/node-form-data/issues/38
11674
13147
  if (Array.isArray(value)) {
11675
- // Please convert your array into string
11676
- // the way web server expects it
13148
+ /*
13149
+ * Please convert your array into string
13150
+ * the way web server expects it
13151
+ */
11677
13152
  this._error(new Error('Arrays are not supported.'));
11678
13153
  return;
11679
13154
  }
@@ -11689,15 +13164,17 @@ function requireForm_data () {
11689
13164
  this._trackLength(header, value, options);
11690
13165
  };
11691
13166
 
11692
- FormData.prototype._trackLength = function(header, value, options) {
13167
+ FormData.prototype._trackLength = function (header, value, options) {
11693
13168
  var valueLength = 0;
11694
13169
 
11695
- // used w/ getLengthSync(), when length is known.
11696
- // e.g. for streaming directly from a remote server,
11697
- // w/ a known file a size, and not wanting to wait for
11698
- // incoming file to finish to get its size.
13170
+ /*
13171
+ * used w/ getLengthSync(), when length is known.
13172
+ * e.g. for streaming directly from a remote server,
13173
+ * w/ a known file a size, and not wanting to wait for
13174
+ * incoming file to finish to get its size.
13175
+ */
11699
13176
  if (options.knownLength != null) {
11700
- valueLength += +options.knownLength;
13177
+ valueLength += Number(options.knownLength);
11701
13178
  } else if (Buffer.isBuffer(value)) {
11702
13179
  valueLength = value.length;
11703
13180
  } else if (typeof value === 'string') {
@@ -11707,12 +13184,10 @@ function requireForm_data () {
11707
13184
  this._valueLength += valueLength;
11708
13185
 
11709
13186
  // @check why add CRLF? does this account for custom/multiple CRLFs?
11710
- this._overheadLength +=
11711
- Buffer.byteLength(header) +
11712
- FormData.LINE_BREAK.length;
13187
+ this._overheadLength += Buffer.byteLength(header) + FormData.LINE_BREAK.length;
11713
13188
 
11714
13189
  // empty or either doesn't have path or not an http response or not a stream
11715
- if (!value || ( !value.path && !(value.readable && value.hasOwnProperty('httpVersion')) && !(value instanceof Stream))) {
13190
+ if (!value || (!value.path && !(value.readable && hasOwn(value, 'httpVersion')) && !(value instanceof Stream))) {
11716
13191
  return;
11717
13192
  }
11718
13193
 
@@ -11722,10 +13197,8 @@ function requireForm_data () {
11722
13197
  }
11723
13198
  };
11724
13199
 
11725
- FormData.prototype._lengthRetriever = function(value, callback) {
11726
-
11727
- if (value.hasOwnProperty('fd')) {
11728
-
13200
+ FormData.prototype._lengthRetriever = function (value, callback) {
13201
+ if (hasOwn(value, 'fd')) {
11729
13202
  // take read range into a account
11730
13203
  // `end` = Infinity –> read file till the end
11731
13204
  //
@@ -11734,54 +13207,52 @@ function requireForm_data () {
11734
13207
  // Fix it when node fixes it.
11735
13208
  // https://github.com/joyent/node/issues/7819
11736
13209
  if (value.end != undefined && value.end != Infinity && value.start != undefined) {
11737
-
11738
13210
  // when end specified
11739
13211
  // no need to calculate range
11740
13212
  // inclusive, starts with 0
11741
- callback(null, value.end + 1 - (value.start ? value.start : 0));
13213
+ callback(null, value.end + 1 - (value.start ? value.start : 0)); // eslint-disable-line callback-return
11742
13214
 
11743
- // not that fast snoopy
13215
+ // not that fast snoopy
11744
13216
  } else {
11745
13217
  // still need to fetch file size from fs
11746
- fs.stat(value.path, function(err, stat) {
11747
-
11748
- var fileSize;
11749
-
13218
+ fs.stat(value.path, function (err, stat) {
11750
13219
  if (err) {
11751
13220
  callback(err);
11752
13221
  return;
11753
13222
  }
11754
13223
 
11755
13224
  // update final size based on the range options
11756
- fileSize = stat.size - (value.start ? value.start : 0);
13225
+ var fileSize = stat.size - (value.start ? value.start : 0);
11757
13226
  callback(null, fileSize);
11758
13227
  });
11759
13228
  }
11760
13229
 
11761
- // or http response
11762
- } else if (value.hasOwnProperty('httpVersion')) {
11763
- callback(null, +value.headers['content-length']);
13230
+ // or http response
13231
+ } else if (hasOwn(value, 'httpVersion')) {
13232
+ callback(null, Number(value.headers['content-length'])); // eslint-disable-line callback-return
11764
13233
 
11765
- // or request stream http://github.com/mikeal/request
11766
- } else if (value.hasOwnProperty('httpModule')) {
13234
+ // or request stream http://github.com/mikeal/request
13235
+ } else if (hasOwn(value, 'httpModule')) {
11767
13236
  // wait till response come back
11768
- value.on('response', function(response) {
13237
+ value.on('response', function (response) {
11769
13238
  value.pause();
11770
- callback(null, +response.headers['content-length']);
13239
+ callback(null, Number(response.headers['content-length']));
11771
13240
  });
11772
13241
  value.resume();
11773
13242
 
11774
- // something else
13243
+ // something else
11775
13244
  } else {
11776
- callback('Unknown stream');
13245
+ callback('Unknown stream'); // eslint-disable-line callback-return
11777
13246
  }
11778
13247
  };
11779
13248
 
11780
- FormData.prototype._multiPartHeader = function(field, value, options) {
11781
- // custom header specified (as string)?
11782
- // it becomes responsible for boundary
11783
- // (e.g. to handle extra CRLFs on .NET servers)
11784
- if (typeof options.header == 'string') {
13249
+ FormData.prototype._multiPartHeader = function (field, value, options) {
13250
+ /*
13251
+ * custom header specified (as string)?
13252
+ * it becomes responsible for boundary
13253
+ * (e.g. to handle extra CRLFs on .NET servers)
13254
+ */
13255
+ if (typeof options.header === 'string') {
11785
13256
  return options.header;
11786
13257
  }
11787
13258
 
@@ -11789,7 +13260,7 @@ function requireForm_data () {
11789
13260
  var contentType = this._getContentType(value, options);
11790
13261
 
11791
13262
  var contents = '';
11792
- var headers = {
13263
+ var headers = {
11793
13264
  // add custom disposition as third element or keep it two elements if not
11794
13265
  'Content-Disposition': ['form-data', 'name="' + field + '"'].concat(contentDisposition || []),
11795
13266
  // if no content type. allow it to be empty array
@@ -11797,77 +13268,74 @@ function requireForm_data () {
11797
13268
  };
11798
13269
 
11799
13270
  // allow custom headers.
11800
- if (typeof options.header == 'object') {
13271
+ if (typeof options.header === 'object') {
11801
13272
  populate(headers, options.header);
11802
13273
  }
11803
13274
 
11804
13275
  var header;
11805
- for (var prop in headers) {
11806
- if (!headers.hasOwnProperty(prop)) continue;
11807
- header = headers[prop];
13276
+ for (var prop in headers) { // eslint-disable-line no-restricted-syntax
13277
+ if (hasOwn(headers, prop)) {
13278
+ header = headers[prop];
11808
13279
 
11809
- // skip nullish headers.
11810
- if (header == null) {
11811
- continue;
11812
- }
13280
+ // skip nullish headers.
13281
+ if (header == null) {
13282
+ continue; // eslint-disable-line no-restricted-syntax, no-continue
13283
+ }
11813
13284
 
11814
- // convert all headers to arrays.
11815
- if (!Array.isArray(header)) {
11816
- header = [header];
11817
- }
13285
+ // convert all headers to arrays.
13286
+ if (!Array.isArray(header)) {
13287
+ header = [header];
13288
+ }
11818
13289
 
11819
- // add non-empty headers.
11820
- if (header.length) {
11821
- contents += prop + ': ' + header.join('; ') + FormData.LINE_BREAK;
13290
+ // add non-empty headers.
13291
+ if (header.length) {
13292
+ contents += prop + ': ' + header.join('; ') + FormData.LINE_BREAK;
13293
+ }
11822
13294
  }
11823
13295
  }
11824
13296
 
11825
13297
  return '--' + this.getBoundary() + FormData.LINE_BREAK + contents + FormData.LINE_BREAK;
11826
13298
  };
11827
13299
 
11828
- FormData.prototype._getContentDisposition = function(value, options) {
11829
-
11830
- var filename
11831
- , contentDisposition
11832
- ;
13300
+ FormData.prototype._getContentDisposition = function (value, options) { // eslint-disable-line consistent-return
13301
+ var filename;
11833
13302
 
11834
13303
  if (typeof options.filepath === 'string') {
11835
13304
  // custom filepath for relative paths
11836
13305
  filename = path.normalize(options.filepath).replace(/\\/g, '/');
11837
- } else if (options.filename || value.name || value.path) {
11838
- // custom filename take precedence
11839
- // formidable and the browser add a name property
11840
- // fs- and request- streams have path property
11841
- filename = path.basename(options.filename || value.name || value.path);
11842
- } else if (value.readable && value.hasOwnProperty('httpVersion')) {
13306
+ } else if (options.filename || (value && (value.name || value.path))) {
13307
+ /*
13308
+ * custom filename take precedence
13309
+ * formidable and the browser add a name property
13310
+ * fs- and request- streams have path property
13311
+ */
13312
+ filename = path.basename(options.filename || (value && (value.name || value.path)));
13313
+ } else if (value && value.readable && hasOwn(value, 'httpVersion')) {
11843
13314
  // or try http response
11844
13315
  filename = path.basename(value.client._httpMessage.path || '');
11845
13316
  }
11846
13317
 
11847
13318
  if (filename) {
11848
- contentDisposition = 'filename="' + filename + '"';
13319
+ return 'filename="' + filename + '"';
11849
13320
  }
11850
-
11851
- return contentDisposition;
11852
13321
  };
11853
13322
 
11854
- FormData.prototype._getContentType = function(value, options) {
11855
-
13323
+ FormData.prototype._getContentType = function (value, options) {
11856
13324
  // use custom content-type above all
11857
13325
  var contentType = options.contentType;
11858
13326
 
11859
13327
  // or try `name` from formidable, browser
11860
- if (!contentType && value.name) {
13328
+ if (!contentType && value && value.name) {
11861
13329
  contentType = mime.lookup(value.name);
11862
13330
  }
11863
13331
 
11864
13332
  // or try `path` from fs-, request- streams
11865
- if (!contentType && value.path) {
13333
+ if (!contentType && value && value.path) {
11866
13334
  contentType = mime.lookup(value.path);
11867
13335
  }
11868
13336
 
11869
13337
  // or if it's http-reponse
11870
- if (!contentType && value.readable && value.hasOwnProperty('httpVersion')) {
13338
+ if (!contentType && value && value.readable && hasOwn(value, 'httpVersion')) {
11871
13339
  contentType = value.headers['content-type'];
11872
13340
  }
11873
13341
 
@@ -11877,18 +13345,18 @@ function requireForm_data () {
11877
13345
  }
11878
13346
 
11879
13347
  // fallback to the default content type if `value` is not simple value
11880
- if (!contentType && typeof value == 'object') {
13348
+ if (!contentType && value && typeof value === 'object') {
11881
13349
  contentType = FormData.DEFAULT_CONTENT_TYPE;
11882
13350
  }
11883
13351
 
11884
13352
  return contentType;
11885
13353
  };
11886
13354
 
11887
- FormData.prototype._multiPartFooter = function() {
11888
- return function(next) {
13355
+ FormData.prototype._multiPartFooter = function () {
13356
+ return function (next) {
11889
13357
  var footer = FormData.LINE_BREAK;
11890
13358
 
11891
- var lastPart = (this._streams.length === 0);
13359
+ var lastPart = this._streams.length === 0;
11892
13360
  if (lastPart) {
11893
13361
  footer += this._lastBoundary();
11894
13362
  }
@@ -11897,18 +13365,18 @@ function requireForm_data () {
11897
13365
  }.bind(this);
11898
13366
  };
11899
13367
 
11900
- FormData.prototype._lastBoundary = function() {
13368
+ FormData.prototype._lastBoundary = function () {
11901
13369
  return '--' + this.getBoundary() + '--' + FormData.LINE_BREAK;
11902
13370
  };
11903
13371
 
11904
- FormData.prototype.getHeaders = function(userHeaders) {
13372
+ FormData.prototype.getHeaders = function (userHeaders) {
11905
13373
  var header;
11906
13374
  var formHeaders = {
11907
13375
  'content-type': 'multipart/form-data; boundary=' + this.getBoundary()
11908
13376
  };
11909
13377
 
11910
- for (header in userHeaders) {
11911
- if (userHeaders.hasOwnProperty(header)) {
13378
+ for (header in userHeaders) { // eslint-disable-line no-restricted-syntax
13379
+ if (hasOwn(userHeaders, header)) {
11912
13380
  formHeaders[header.toLowerCase()] = userHeaders[header];
11913
13381
  }
11914
13382
  }
@@ -11916,11 +13384,14 @@ function requireForm_data () {
11916
13384
  return formHeaders;
11917
13385
  };
11918
13386
 
11919
- FormData.prototype.setBoundary = function(boundary) {
13387
+ FormData.prototype.setBoundary = function (boundary) {
13388
+ if (typeof boundary !== 'string') {
13389
+ throw new TypeError('FormData boundary must be a string');
13390
+ }
11920
13391
  this._boundary = boundary;
11921
13392
  };
11922
13393
 
11923
- FormData.prototype.getBoundary = function() {
13394
+ FormData.prototype.getBoundary = function () {
11924
13395
  if (!this._boundary) {
11925
13396
  this._generateBoundary();
11926
13397
  }
@@ -11928,60 +13399,55 @@ function requireForm_data () {
11928
13399
  return this._boundary;
11929
13400
  };
11930
13401
 
11931
- FormData.prototype.getBuffer = function() {
11932
- var dataBuffer = new Buffer.alloc( 0 );
13402
+ FormData.prototype.getBuffer = function () {
13403
+ var dataBuffer = new Buffer.alloc(0); // eslint-disable-line new-cap
11933
13404
  var boundary = this.getBoundary();
11934
13405
 
11935
13406
  // Create the form content. Add Line breaks to the end of data.
11936
13407
  for (var i = 0, len = this._streams.length; i < len; i++) {
11937
13408
  if (typeof this._streams[i] !== 'function') {
11938
-
11939
13409
  // Add content to the buffer.
11940
- if(Buffer.isBuffer(this._streams[i])) {
11941
- dataBuffer = Buffer.concat( [dataBuffer, this._streams[i]]);
11942
- }else {
11943
- dataBuffer = Buffer.concat( [dataBuffer, Buffer.from(this._streams[i])]);
13410
+ if (Buffer.isBuffer(this._streams[i])) {
13411
+ dataBuffer = Buffer.concat([dataBuffer, this._streams[i]]);
13412
+ } else {
13413
+ dataBuffer = Buffer.concat([dataBuffer, Buffer.from(this._streams[i])]);
11944
13414
  }
11945
13415
 
11946
13416
  // Add break after content.
11947
- if (typeof this._streams[i] !== 'string' || this._streams[i].substring( 2, boundary.length + 2 ) !== boundary) {
11948
- dataBuffer = Buffer.concat( [dataBuffer, Buffer.from(FormData.LINE_BREAK)] );
13417
+ if (typeof this._streams[i] !== 'string' || this._streams[i].substring(2, boundary.length + 2) !== boundary) {
13418
+ dataBuffer = Buffer.concat([dataBuffer, Buffer.from(FormData.LINE_BREAK)]);
11949
13419
  }
11950
13420
  }
11951
13421
  }
11952
13422
 
11953
13423
  // Add the footer and return the Buffer object.
11954
- return Buffer.concat( [dataBuffer, Buffer.from(this._lastBoundary())] );
13424
+ return Buffer.concat([dataBuffer, Buffer.from(this._lastBoundary())]);
11955
13425
  };
11956
13426
 
11957
- FormData.prototype._generateBoundary = function() {
13427
+ FormData.prototype._generateBoundary = function () {
11958
13428
  // This generates a 50 character boundary similar to those used by Firefox.
11959
- // They are optimized for boyer-moore parsing.
11960
- var boundary = '--------------------------';
11961
- for (var i = 0; i < 24; i++) {
11962
- boundary += Math.floor(Math.random() * 10).toString(16);
11963
- }
11964
13429
 
11965
- this._boundary = boundary;
13430
+ // They are optimized for boyer-moore parsing.
13431
+ this._boundary = '--------------------------' + crypto.randomBytes(12).toString('hex');
11966
13432
  };
11967
13433
 
11968
13434
  // Note: getLengthSync DOESN'T calculate streams length
11969
- // As workaround one can calculate file size manually
11970
- // and add it as knownLength option
11971
- FormData.prototype.getLengthSync = function() {
13435
+ // As workaround one can calculate file size manually and add it as knownLength option
13436
+ FormData.prototype.getLengthSync = function () {
11972
13437
  var knownLength = this._overheadLength + this._valueLength;
11973
13438
 
11974
- // Don't get confused, there are 3 "internal" streams for each keyval pair
11975
- // so it basically checks if there is any value added to the form
13439
+ // Don't get confused, there are 3 "internal" streams for each keyval pair so it basically checks if there is any value added to the form
11976
13440
  if (this._streams.length) {
11977
13441
  knownLength += this._lastBoundary().length;
11978
13442
  }
11979
13443
 
11980
13444
  // https://github.com/form-data/form-data/issues/40
11981
13445
  if (!this.hasKnownLength()) {
11982
- // Some async length retrievers are present
11983
- // therefore synchronous length calculation is false.
11984
- // Please use getLength(callback) to get proper length
13446
+ /*
13447
+ * Some async length retrievers are present
13448
+ * therefore synchronous length calculation is false.
13449
+ * Please use getLength(callback) to get proper length
13450
+ */
11985
13451
  this._error(new Error('Cannot calculate proper length in synchronous way.'));
11986
13452
  }
11987
13453
 
@@ -11991,7 +13457,7 @@ function requireForm_data () {
11991
13457
  // Public API to check if length of added values is known
11992
13458
  // https://github.com/form-data/form-data/issues/196
11993
13459
  // https://github.com/form-data/form-data/issues/262
11994
- FormData.prototype.hasKnownLength = function() {
13460
+ FormData.prototype.hasKnownLength = function () {
11995
13461
  var hasKnownLength = true;
11996
13462
 
11997
13463
  if (this._valuesToMeasure.length) {
@@ -12001,7 +13467,7 @@ function requireForm_data () {
12001
13467
  return hasKnownLength;
12002
13468
  };
12003
13469
 
12004
- FormData.prototype.getLength = function(cb) {
13470
+ FormData.prototype.getLength = function (cb) {
12005
13471
  var knownLength = this._overheadLength + this._valueLength;
12006
13472
 
12007
13473
  if (this._streams.length) {
@@ -12013,13 +13479,13 @@ function requireForm_data () {
12013
13479
  return;
12014
13480
  }
12015
13481
 
12016
- asynckit.parallel(this._valuesToMeasure, this._lengthRetriever, function(err, values) {
13482
+ asynckit.parallel(this._valuesToMeasure, this._lengthRetriever, function (err, values) {
12017
13483
  if (err) {
12018
13484
  cb(err);
12019
13485
  return;
12020
13486
  }
12021
13487
 
12022
- values.forEach(function(length) {
13488
+ values.forEach(function (length) {
12023
13489
  knownLength += length;
12024
13490
  });
12025
13491
 
@@ -12027,31 +13493,26 @@ function requireForm_data () {
12027
13493
  });
12028
13494
  };
12029
13495
 
12030
- FormData.prototype.submit = function(params, cb) {
12031
- var request
12032
- , options
12033
- , defaults = {method: 'post'}
12034
- ;
12035
-
12036
- // parse provided url if it's string
12037
- // or treat it as options object
12038
- if (typeof params == 'string') {
13496
+ FormData.prototype.submit = function (params, cb) {
13497
+ var request;
13498
+ var options;
13499
+ var defaults = { method: 'post' };
12039
13500
 
12040
- params = parseUrl(params);
13501
+ // parse provided url if it's string or treat it as options object
13502
+ if (typeof params === 'string') {
13503
+ params = parseUrl(params); // eslint-disable-line no-param-reassign
13504
+ /* eslint sort-keys: 0 */
12041
13505
  options = populate({
12042
13506
  port: params.port,
12043
13507
  path: params.pathname,
12044
13508
  host: params.hostname,
12045
13509
  protocol: params.protocol
12046
13510
  }, defaults);
12047
-
12048
- // use custom params
12049
- } else {
12050
-
13511
+ } else { // use custom params
12051
13512
  options = populate(params, defaults);
12052
13513
  // if no port provided use default one
12053
13514
  if (!options.port) {
12054
- options.port = options.protocol == 'https:' ? 443 : 80;
13515
+ options.port = options.protocol === 'https:' ? 443 : 80;
12055
13516
  }
12056
13517
  }
12057
13518
 
@@ -12059,14 +13520,14 @@ function requireForm_data () {
12059
13520
  options.headers = this.getHeaders(params.headers);
12060
13521
 
12061
13522
  // https if specified, fallback to http in any other case
12062
- if (options.protocol == 'https:') {
13523
+ if (options.protocol === 'https:') {
12063
13524
  request = https.request(options);
12064
13525
  } else {
12065
13526
  request = http.request(options);
12066
13527
  }
12067
13528
 
12068
13529
  // get content length and fire away
12069
- this.getLength(function(err, length) {
13530
+ this.getLength(function (err, length) {
12070
13531
  if (err && err !== 'Unknown stream') {
12071
13532
  this._error(err);
12072
13533
  return;
@@ -12098,7 +13559,7 @@ function requireForm_data () {
12098
13559
  return request;
12099
13560
  };
12100
13561
 
12101
- FormData.prototype._error = function(err) {
13562
+ FormData.prototype._error = function (err) {
12102
13563
  if (!this.error) {
12103
13564
  this.error = err;
12104
13565
  this.pause();
@@ -12109,6 +13570,10 @@ function requireForm_data () {
12109
13570
  FormData.prototype.toString = function () {
12110
13571
  return '[object FormData]';
12111
13572
  };
13573
+ setToStringTag(FormData.prototype, 'FormData');
13574
+
13575
+ // Public API
13576
+ form_data = FormData;
12112
13577
  return form_data;
12113
13578
  }
12114
13579