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