@costrict/csc 4.0.4 → 4.0.5-2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (425) hide show
  1. package/README.md +398 -398
  2. package/dist/{chunk-kpdp2gz2.js → chunk-017h2t5s.js} +13 -13
  3. package/dist/{chunk-tg41r14s.js → chunk-01s11pzc.js} +5 -5
  4. package/dist/{chunk-yhjccrrs.js → chunk-03fgtmxr.js} +97 -97
  5. package/dist/{chunk-pn0k5wak.js → chunk-03qpgz7e.js} +749 -23
  6. package/dist/{chunk-zwna33ms.js → chunk-04gervaa.js} +36 -36
  7. package/dist/{chunk-xq3k2392.js → chunk-06vftkzj.js} +57 -57
  8. package/dist/{chunk-b4ftppkp.js → chunk-07qe00pw.js} +22 -22
  9. package/dist/{chunk-zwv3h48p.js → chunk-0bnr3avz.js} +3 -3
  10. package/dist/{chunk-gaz7te9m.js → chunk-0f0x7wey.js} +6 -6
  11. package/dist/{chunk-tw4tjc73.js → chunk-0jd3p53p.js} +1 -1
  12. package/dist/{chunk-waar1mpa.js → chunk-0mf8c3kx.js} +2 -3
  13. package/dist/{chunk-31959kp1.js → chunk-0t96xx6m.js} +5 -5
  14. package/dist/chunk-0vrstrej.js +40 -0
  15. package/dist/{chunk-epat31ss.js → chunk-0vwyh27q.js} +1 -1
  16. package/dist/{chunk-v4zejp1f.js → chunk-0wcjaby5.js} +57 -57
  17. package/dist/{chunk-bg86k3wz.js → chunk-0x2d0pvq.js} +83 -339
  18. package/dist/{chunk-smzahkka.js → chunk-0xfdnpd3.js} +4 -4
  19. package/dist/{chunk-bgptt4dd.js → chunk-0xkrxtvs.js} +56 -56
  20. package/dist/{chunk-w8ttjf01.js → chunk-0yncnctp.js} +183 -179
  21. package/dist/{chunk-m0yqzzgm.js → chunk-11hsxgtv.js} +2 -2
  22. package/dist/{chunk-6rrp0t66.js → chunk-1gj2ern2.js} +530 -1321
  23. package/dist/{chunk-zatd0y92.js → chunk-1nmcmem8.js} +5 -5
  24. package/dist/{chunk-3q10e1r5.js → chunk-22rbrd4c.js} +64 -64
  25. package/dist/{chunk-ds6b4567.js → chunk-25d4tsxt.js} +67 -67
  26. package/dist/{chunk-p6359g16.js → chunk-2625r3vm.js} +26 -26
  27. package/dist/{chunk-sqb7kkqx.js → chunk-262zh26y.js} +6 -6
  28. package/dist/{chunk-m5chmh67.js → chunk-2c0sn45e.js} +2 -2
  29. package/dist/{chunk-cb0cjgk3.js → chunk-2d3mes58.js} +56 -56
  30. package/dist/{chunk-4qcmn89e.js → chunk-2dhbfegz.js} +14 -17
  31. package/dist/{chunk-whs655k7.js → chunk-2dwsdnd5.js} +57 -57
  32. package/dist/{chunk-j1psatq5.js → chunk-2j59ksap.js} +3 -3
  33. package/dist/{chunk-pv6amr31.js → chunk-2kmmz00g.js} +1 -1
  34. package/dist/{chunk-nt36mbmr.js → chunk-2mtjmgq4.js} +14 -14
  35. package/dist/{chunk-j2ba3wye.js → chunk-2ne8qzyp.js} +22 -22
  36. package/dist/chunk-2xpkjfdd.js +94 -0
  37. package/dist/{chunk-eenv3551.js → chunk-30934n2w.js} +56 -56
  38. package/dist/{chunk-125xg82c.js → chunk-3a8yw7zy.js} +22 -22
  39. package/dist/{chunk-hhc28ga0.js → chunk-3aj8x8wh.js} +26 -26
  40. package/dist/{chunk-j5bved6z.js → chunk-3hk1e3s8.js} +61 -61
  41. package/dist/{chunk-b43rsa2d.js → chunk-3nys7146.js} +2 -2
  42. package/dist/{chunk-pbn6n0kg.js → chunk-3px6h32z.js} +56 -56
  43. package/dist/{chunk-bnznxckg.js → chunk-3rrf7vb7.js} +56 -56
  44. package/dist/{chunk-j2bv645h.js → chunk-3s96vaet.js} +9 -11
  45. package/dist/{chunk-8ew7s39b.js → chunk-3wdbgpa5.js} +1 -1
  46. package/dist/{chunk-a7bs51hq.js → chunk-423tyk90.js} +28 -28
  47. package/dist/{chunk-6zf34pgy.js → chunk-47sy4t29.js} +1 -1
  48. package/dist/{chunk-p2xfr5am.js → chunk-48qkvr25.js} +57 -57
  49. package/dist/{chunk-q4tkspkp.js → chunk-4bfe005x.js} +4 -4
  50. package/dist/{chunk-qdfzdcz3.js → chunk-4dn253dg.js} +60 -60
  51. package/dist/{chunk-r089a4na.js → chunk-4gv5n07n.js} +22 -22
  52. package/dist/{chunk-npvte75f.js → chunk-4jy4qv07.js} +5 -5
  53. package/dist/{chunk-n00sjrne.js → chunk-4m7gyesz.js} +6 -6
  54. package/dist/{chunk-90tgpdv5.js → chunk-4q954a7f.js} +3 -3
  55. package/dist/{chunk-7sgatxct.js → chunk-4qqswajh.js} +5 -5
  56. package/dist/{chunk-zwwgfs0j.js → chunk-4rwe8abn.js} +3 -3
  57. package/dist/{chunk-122wp3n9.js → chunk-4sfd9m3h.js} +2 -2
  58. package/dist/{chunk-q72weaf5.js → chunk-4tn9qqws.js} +829 -2177
  59. package/dist/{chunk-3d953efq.js → chunk-4wr994cr.js} +5 -5
  60. package/dist/{chunk-kaqp12mx.js → chunk-4xptxbxj.js} +56 -56
  61. package/dist/{chunk-9pp9xrw2.js → chunk-50fv6d8k.js} +14 -17
  62. package/dist/{chunk-fmq83t7h.js → chunk-50x6aec4.js} +3 -3
  63. package/dist/{chunk-9k7n4z3r.js → chunk-54nmt278.js} +5 -5
  64. package/dist/{chunk-kn9hzg11.js → chunk-5798ckxm.js} +3 -3
  65. package/dist/{chunk-m3szhhvz.js → chunk-5bb2bqwr.js} +58 -58
  66. package/dist/{chunk-63v197w4.js → chunk-5c6821w5.js} +56 -56
  67. package/dist/{chunk-vh70jg33.js → chunk-5kzpey2d.js} +4 -4
  68. package/dist/{chunk-4w4wdgeb.js → chunk-5nbjxyeb.js} +23 -23
  69. package/dist/{chunk-1sg2k4mx.js → chunk-5vdpbk46.js} +515 -515
  70. package/dist/{chunk-yhc1fee8.js → chunk-5vt3zdmw.js} +23 -23
  71. package/dist/{chunk-0gqymhpf.js → chunk-61ts87kf.js} +4 -4
  72. package/dist/{chunk-tjaexdr7.js → chunk-63cw4ef2.js} +56 -56
  73. package/dist/{chunk-9rtywfhp.js → chunk-64nsm3qd.js} +2 -2
  74. package/dist/{chunk-7mpdfrdm.js → chunk-656z4m7c.js} +5 -5
  75. package/dist/{chunk-h9ef6kkf.js → chunk-67xwtjkv.js} +5 -5
  76. package/dist/{chunk-8jpxzesa.js → chunk-67zpbdn4.js} +1 -1
  77. package/dist/{chunk-8vawdfrp.js → chunk-6c5zyga7.js} +3 -5
  78. package/dist/{chunk-mz0qfs55.js → chunk-6dj7qxgs.js} +63 -63
  79. package/dist/{chunk-jxyh3xyq.js → chunk-6e7m4qwa.js} +23 -23
  80. package/dist/{chunk-f6qh3vrn.js → chunk-6kw1svfr.js} +4 -4
  81. package/dist/{chunk-t1mtqz1e.js → chunk-6r247w4d.js} +1 -1
  82. package/dist/{chunk-4mygvv18.js → chunk-6rjtp4nk.js} +57 -57
  83. package/dist/{chunk-dct4myst.js → chunk-6yax8ef2.js} +57 -57
  84. package/dist/{chunk-ntwe4mq2.js → chunk-6zfse75g.js} +11 -11
  85. package/dist/{chunk-tz2rkx2s.js → chunk-71xc05s3.js} +3 -3
  86. package/dist/{chunk-2mmx9qqz.js → chunk-769r5are.js} +27 -27
  87. package/dist/{chunk-zf5wkcyy.js → chunk-7bme7hfa.js} +127 -1099
  88. package/dist/{chunk-ppa284pd.js → chunk-7h8yq9tw.js} +56 -56
  89. package/dist/{chunk-sx291v4f.js → chunk-7mkddxxm.js} +63 -63
  90. package/dist/{chunk-9m27g5s1.js → chunk-7njxy9q8.js} +18 -3
  91. package/dist/{chunk-vdh36rw7.js → chunk-7pdhxye3.js} +3 -3
  92. package/dist/{chunk-zpm1rpmw.js → chunk-7q2pgeny.js} +16 -16
  93. package/dist/{chunk-f16qs2ag.js → chunk-7r37a4t0.js} +56 -56
  94. package/dist/{chunk-skxa5fes.js → chunk-7sk1sscc.js} +14 -16
  95. package/dist/{chunk-b3behs0y.js → chunk-7wqgtnxf.js} +3 -3
  96. package/dist/{chunk-3gaxrmqq.js → chunk-7xsa2mcd.js} +15 -15
  97. package/dist/{chunk-t1whcbtd.js → chunk-7zzbce1y.js} +73 -73
  98. package/dist/{chunk-371mcwkv.js → chunk-861s8jy8.js} +7 -7
  99. package/dist/{chunk-kh9fj2xh.js → chunk-86415apq.js} +60 -60
  100. package/dist/{chunk-7vzj8rfd.js → chunk-86b8rhe0.js} +4 -4
  101. package/dist/{chunk-tp3mqwh3.js → chunk-87gjcnga.js} +7 -7
  102. package/dist/{chunk-vxnvzfnv.js → chunk-8avfrdpz.js} +2 -3
  103. package/dist/{chunk-6dhen79h.js → chunk-8b3p55rz.js} +8 -8
  104. package/dist/{chunk-h13g15kb.js → chunk-8bcxzxe5.js} +1 -1
  105. package/dist/{chunk-pb2x8g1w.js → chunk-8g14cs7t.js} +67 -67
  106. package/dist/{chunk-s6a338bt.js → chunk-8g3sbhtv.js} +3 -3
  107. package/dist/{chunk-2f3vsxna.js → chunk-8hmfghmy.js} +5 -5
  108. package/dist/{chunk-j64ga6ta.js → chunk-8jyp5q4y.js} +304 -272
  109. package/dist/{chunk-zwkqabbj.js → chunk-8wxvkw8d.js} +11 -11
  110. package/dist/{chunk-3b5a4wa6.js → chunk-8zfg78yq.js} +22 -22
  111. package/dist/{chunk-02n5zpyc.js → chunk-95gj5fgc.js} +4 -4
  112. package/dist/{chunk-rzj6hzme.js → chunk-965vae8e.js} +8 -8
  113. package/dist/{chunk-rar7nmve.js → chunk-9b7s3jwq.js} +57 -57
  114. package/dist/{chunk-ga3m4ews.js → chunk-9bt80zz1.js} +56 -56
  115. package/dist/{chunk-ng8q29em.js → chunk-9f1128wv.js} +2 -2
  116. package/dist/chunk-9fnz1421.js +180 -0
  117. package/dist/{chunk-kh9hfyzf.js → chunk-9qjtmqvh.js} +56 -56
  118. package/dist/{chunk-eserktyd.js → chunk-9szwp11z.js} +4 -4
  119. package/dist/{chunk-vmfckw4g.js → chunk-9v2wtvk2.js} +56 -56
  120. package/dist/{chunk-ftwqpbvy.js → chunk-9xz0knh8.js} +56 -56
  121. package/dist/{chunk-b82adekm.js → chunk-absyky51.js} +57 -57
  122. package/dist/{chunk-bneqxcmf.js → chunk-acv242nr.js} +1 -1
  123. package/dist/{chunk-4h43b7ww.js → chunk-ak67x6gk.js} +69 -69
  124. package/dist/{chunk-w12f58yz.js → chunk-amp2gnxw.js} +14 -17
  125. package/dist/{chunk-mnrswcqf.js → chunk-anm6tjv1.js} +56 -56
  126. package/dist/{chunk-b909mp8w.js → chunk-aqf46h5w.js} +1 -1
  127. package/dist/{chunk-td6j7fcr.js → chunk-avc2286c.js} +56 -56
  128. package/dist/{chunk-y64tceyw.js → chunk-b08zpkbe.js} +3 -3
  129. package/dist/{chunk-rn68wk3p.js → chunk-b91fnap2.js} +22 -22
  130. package/dist/{chunk-2ab59kwj.js → chunk-bdr1btg9.js} +3 -3
  131. package/dist/{chunk-03mgn26m.js → chunk-bqhegf30.js} +65 -65
  132. package/dist/{chunk-j04z48rw.js → chunk-bt64sq5y.js} +3 -3
  133. package/dist/{chunk-5qxgyby3.js → chunk-btma241g.js} +612 -2
  134. package/dist/{chunk-yztxtgd8.js → chunk-bvrsyxek.js} +66 -66
  135. package/dist/{chunk-xs12ggs7.js → chunk-c22zscvr.js} +60 -60
  136. package/dist/{chunk-ex2q76wx.js → chunk-c5yryhhe.js} +1 -1
  137. package/dist/{chunk-2kxk7ftp.js → chunk-ccecm4xc.js} +59 -59
  138. package/dist/{chunk-b2pxvgwp.js → chunk-ccpczrgp.js} +10 -10
  139. package/dist/{chunk-swq8qack.js → chunk-chm6hn2w.js} +24 -24
  140. package/dist/{chunk-6ge6zddg.js → chunk-chv0ybb2.js} +3 -3
  141. package/dist/{chunk-bbxfenf0.js → chunk-ckhc04my.js} +57 -57
  142. package/dist/{chunk-2dtmmwxh.js → chunk-cqvjzkby.js} +4 -4
  143. package/dist/{chunk-9b2ts7my.js → chunk-d1gqavnx.js} +1 -1
  144. package/dist/{chunk-5zpstd3m.js → chunk-dd2axg8f.js} +7 -7
  145. package/dist/{chunk-9b48fxkx.js → chunk-dde29xbq.js} +56 -56
  146. package/dist/{chunk-0wp0zaz8.js → chunk-ddqc9xg3.js} +57 -57
  147. package/dist/{chunk-ngrj6x74.js → chunk-df52t7ys.js} +168 -161
  148. package/dist/{chunk-sw51thrz.js → chunk-dmmgx418.js} +59 -59
  149. package/dist/{chunk-pp347e16.js → chunk-dt9jxccj.js} +56 -56
  150. package/dist/{chunk-tq82bwaf.js → chunk-dvd65zc6.js} +2 -2
  151. package/dist/{chunk-cx8c18e3.js → chunk-dxrv7e4f.js} +62 -62
  152. package/dist/{chunk-rgm0v4he.js → chunk-e321pz6p.js} +24 -24
  153. package/dist/{chunk-vmf74a91.js → chunk-e4r3ytgn.js} +57 -57
  154. package/dist/{chunk-sjmx1scx.js → chunk-e6y51dry.js} +23 -23
  155. package/dist/{chunk-sd3jwppm.js → chunk-ebbxn1k1.js} +8 -8
  156. package/dist/{chunk-m1qqm2nc.js → chunk-ec8te99g.js} +3 -3
  157. package/dist/{chunk-wkh76b1p.js → chunk-enxnnzk5.js} +7 -7
  158. package/dist/{chunk-zwa133ny.js → chunk-es1hw74y.js} +2 -2
  159. package/dist/{chunk-ezwhbfk8.js → chunk-evddwqmn.js} +5 -5
  160. package/dist/{chunk-1j8anrn2.js → chunk-ezn0kc6e.js} +56 -56
  161. package/dist/{chunk-dc83q1dm.js → chunk-f4kbe948.js} +2 -2
  162. package/dist/{chunk-w2x18mrn.js → chunk-f5tw1fzg.js} +23 -23
  163. package/dist/{chunk-5a6vqs49.js → chunk-f7d1nm78.js} +67 -67
  164. package/dist/{chunk-p6ejgd85.js → chunk-f9r0qhn5.js} +60 -60
  165. package/dist/{chunk-7rk9ppx4.js → chunk-fbz7854m.js} +1 -1
  166. package/dist/{chunk-w8krbzb0.js → chunk-fc1dg6fw.js} +4 -4
  167. package/dist/chunk-ff3ahqvh.js +85 -0
  168. package/dist/{chunk-yb6x70md.js → chunk-fg5ke2mj.js} +1786 -141
  169. package/dist/{chunk-dge3af7q.js → chunk-fgccqgaa.js} +8 -8
  170. package/dist/{chunk-rwzb4fmk.js → chunk-fh13xqb9.js} +59 -59
  171. package/dist/{chunk-neh0bkkf.js → chunk-fh1s6406.js} +56 -56
  172. package/dist/{chunk-nzqmmqwj.js → chunk-fh4n4a9x.js} +23 -23
  173. package/dist/{chunk-kxptk43f.js → chunk-fjawf9k6.js} +57 -57
  174. package/dist/{chunk-m7r4wqc3.js → chunk-fp4n49gs.js} +1 -1
  175. package/dist/{chunk-jvgc4q2b.js → chunk-fqrvsdfn.js} +59 -59
  176. package/dist/{chunk-svw35ajj.js → chunk-fshcxsrd.js} +57 -57
  177. package/dist/{chunk-h5qx4apy.js → chunk-fswvn2rk.js} +1 -1
  178. package/dist/{chunk-bwqvhzrw.js → chunk-fthbxpt7.js} +76 -69
  179. package/dist/{chunk-send164b.js → chunk-ftm33kfs.js} +23 -23
  180. package/dist/{chunk-1nz1mgm6.js → chunk-fw8e2t6e.js} +39 -268
  181. package/dist/{chunk-fw64v27c.js → chunk-fz0ch109.js} +3 -3
  182. package/dist/{chunk-vxs1rvy8.js → chunk-g27zzhxy.js} +6 -6
  183. package/dist/{chunk-z8zf2bjp.js → chunk-g4qkf769.js} +4 -4
  184. package/dist/{chunk-j2cbcyf7.js → chunk-g649rtg8.js} +4 -6
  185. package/dist/{chunk-5p8k3wyp.js → chunk-g80p271x.js} +59 -59
  186. package/dist/{chunk-ekkewv4y.js → chunk-g8bjvhzs.js} +1 -1
  187. package/dist/{chunk-js21kfpq.js → chunk-garqv1np.js} +1 -1
  188. package/dist/{chunk-2c8aqb33.js → chunk-gemm3j13.js} +56 -56
  189. package/dist/{chunk-t4z17xt4.js → chunk-geytfqmn.js} +10 -10
  190. package/dist/{chunk-tsdqd747.js → chunk-gfex5hb6.js} +10 -4
  191. package/dist/{chunk-kk42fg5v.js → chunk-gffypgc8.js} +23 -23
  192. package/dist/{chunk-4nvhfqsy.js → chunk-gh5t5hks.js} +58 -58
  193. package/dist/{chunk-h0n9zhgw.js → chunk-gjsh5d1m.js} +56 -56
  194. package/dist/{chunk-xeehxb1q.js → chunk-gntxvc8d.js} +3 -3
  195. package/dist/{chunk-yw0st51b.js → chunk-gp0e8n1j.js} +57 -57
  196. package/dist/{chunk-7t38tp7c.js → chunk-gvw8sq1x.js} +24 -24
  197. package/dist/{chunk-5dn1m1r7.js → chunk-gwyn2qmg.js} +2 -2
  198. package/dist/{chunk-h28xqfk8.js → chunk-gybg10fj.js} +62 -62
  199. package/dist/{chunk-7srwepm7.js → chunk-h0634caf.js} +1 -1
  200. package/dist/{chunk-zw543g0m.js → chunk-h50avem9.js} +57 -57
  201. package/dist/{chunk-34vn56ag.js → chunk-h7c9t4eg.js} +8 -8
  202. package/dist/{chunk-zbrk28bp.js → chunk-h9vwd6jb.js} +56 -56
  203. package/dist/{chunk-nn8nkawn.js → chunk-hece55mn.js} +7 -7
  204. package/dist/{chunk-skrja2sz.js → chunk-hj1zymy7.js} +2 -2
  205. package/dist/{chunk-7sgn6fv0.js → chunk-hnydgd6d.js} +6 -6
  206. package/dist/{chunk-9azyfe65.js → chunk-hrj5pszj.js} +61 -61
  207. package/dist/{chunk-vhjhyt2r.js → chunk-j2dwrqy6.js} +26 -26
  208. package/dist/{chunk-ebx4j5r5.js → chunk-j6k3zjb5.js} +5 -7
  209. package/dist/{chunk-3nmhzccb.js → chunk-j6v1eh21.js} +2 -2
  210. package/dist/{chunk-2xezy8pc.js → chunk-jfr51c5y.js} +7 -7
  211. package/dist/{chunk-khdftpea.js → chunk-jgxk5p8d.js} +9 -9
  212. package/dist/{chunk-cs9xxrmx.js → chunk-jh5g3xkz.js} +56 -56
  213. package/dist/{chunk-zvxjnak3.js → chunk-jpawr85p.js} +56 -56
  214. package/dist/{chunk-rvp6qq44.js → chunk-jqv2patg.js} +5 -5
  215. package/dist/{chunk-9kqtdah4.js → chunk-jr21cjeg.js} +1 -1
  216. package/dist/{chunk-znehavdm.js → chunk-jvnb1zrw.js} +1 -1
  217. package/dist/{chunk-34b0y9w3.js → chunk-k4xqffsa.js} +57 -57
  218. package/dist/{chunk-92skmpg9.js → chunk-k53j516k.js} +56 -56
  219. package/dist/{chunk-jd2ams26.js → chunk-k6h9p8gg.js} +6 -6
  220. package/dist/{chunk-3c1ddhnk.js → chunk-kgbtjbmd.js} +19 -207
  221. package/dist/{chunk-ztqfa7pd.js → chunk-khz74t05.js} +56 -56
  222. package/dist/{chunk-xt4v95je.js → chunk-kjkb2g5m.js} +3 -3
  223. package/dist/{chunk-tyxhcbsd.js → chunk-kpmqm0t6.js} +1 -1
  224. package/dist/{chunk-d09j71dr.js → chunk-kqdp5wzc.js} +6 -6
  225. package/dist/{chunk-8y3eszv7.js → chunk-krbnqs28.js} +2 -2
  226. package/dist/{chunk-wj8gbr2g.js → chunk-kt3be60k.js} +58 -58
  227. package/dist/{chunk-vgdtw10n.js → chunk-ktzxeprc.js} +2 -2
  228. package/dist/{chunk-65gzht6d.js → chunk-m38tg84x.js} +56 -56
  229. package/dist/{chunk-b3t64cwd.js → chunk-m3x5s3db.js} +59 -59
  230. package/dist/{chunk-z5w7a1cv.js → chunk-m7p0qsyd.js} +26 -26
  231. package/dist/{chunk-njdz3yry.js → chunk-mb56b98v.js} +4 -4
  232. package/dist/{chunk-jp8tnjzr.js → chunk-mc0ehz52.js} +59 -59
  233. package/dist/{chunk-vf3etxnx.js → chunk-mcs219z2.js} +1 -1
  234. package/dist/{chunk-ffy37ks3.js → chunk-mdcz65hq.js} +23 -23
  235. package/dist/{chunk-61edjmf6.js → chunk-mg1w5bk3.js} +2 -2
  236. package/dist/{chunk-metmg93w.js → chunk-mgjpqqqv.js} +2 -2
  237. package/dist/{chunk-1k0wbt0f.js → chunk-mn4ve34r.js} +87 -87
  238. package/dist/{chunk-4vqz7w3v.js → chunk-mratscx5.js} +4 -4
  239. package/dist/{chunk-n5pe3jtt.js → chunk-n1bh6pgv.js} +2 -2
  240. package/dist/{chunk-t0twk3e5.js → chunk-n217n8sr.js} +1 -1
  241. package/dist/chunk-n35vwqby.js +777 -0
  242. package/dist/{chunk-4tre5ddg.js → chunk-neak2qc4.js} +1 -1
  243. package/dist/{chunk-w8yhf638.js → chunk-nfnvct96.js} +1 -1
  244. package/dist/{chunk-e5ewhhx6.js → chunk-nm4p4t82.js} +56 -56
  245. package/dist/{chunk-9pkh2w7v.js → chunk-nm5gk39k.js} +8 -8
  246. package/dist/{chunk-wyz7j9j0.js → chunk-nr4y1jqa.js} +23 -23
  247. package/dist/{chunk-1d0d18qj.js → chunk-nsnkzerj.js} +22 -22
  248. package/dist/{chunk-j5keq4ye.js → chunk-nt65jyx9.js} +60 -60
  249. package/dist/{chunk-0pkrwxrg.js → chunk-nz4mxnb9.js} +3 -3
  250. package/dist/{chunk-74v2mh4t.js → chunk-p1adg740.js} +1 -1
  251. package/dist/{chunk-d8ztpy7x.js → chunk-p45yh5qt.js} +7 -7
  252. package/dist/{chunk-jvf4wvhn.js → chunk-p4nbt9zw.js} +57 -57
  253. package/dist/{chunk-0xfz1hj1.js → chunk-pbrwgq4d.js} +6 -6
  254. package/dist/{chunk-6hk5a6ky.js → chunk-pc5qdkr6.js} +56 -56
  255. package/dist/{chunk-67jg7cfy.js → chunk-phce1mav.js} +2 -2
  256. package/dist/{chunk-vjv7wvnc.js → chunk-phqrbrn0.js} +4 -4
  257. package/dist/{chunk-3xhmzvxm.js → chunk-pjkaqt23.js} +5 -5
  258. package/dist/{chunk-jq9vjfbd.js → chunk-pjqxn9ac.js} +57 -57
  259. package/dist/{chunk-npywdb7q.js → chunk-pn1wg9d1.js} +3 -3
  260. package/dist/{chunk-f62xm8dh.js → chunk-pn8s6m5g.js} +3 -3
  261. package/dist/{chunk-9snpw77c.js → chunk-pnarhx6j.js} +67 -67
  262. package/dist/{chunk-6eq35v86.js → chunk-pnv69npn.js} +1 -1
  263. package/dist/{chunk-1395xfcq.js → chunk-pyzhdqts.js} +58 -58
  264. package/dist/{chunk-j95j6wz8.js → chunk-q27bsq0y.js} +1 -1
  265. package/dist/chunk-q697t7v5.js +500 -0
  266. package/dist/{chunk-wdwa58v1.js → chunk-qc0qywhh.js} +59 -59
  267. package/dist/{chunk-3jjc204v.js → chunk-qcgd8bgd.js} +18 -18
  268. package/dist/{chunk-d9bvzfkg.js → chunk-qd5ch7gy.js} +62 -62
  269. package/dist/{chunk-vj8q7shk.js → chunk-qe7arwgg.js} +2 -2
  270. package/dist/{chunk-r41sjxcn.js → chunk-qegzj6nm.js} +1 -1
  271. package/dist/{chunk-9jt1c7t9.js → chunk-qenkaqer.js} +58 -58
  272. package/dist/{chunk-hyc3kbfq.js → chunk-qevpw4g9.js} +4 -4
  273. package/dist/{chunk-kerkk89t.js → chunk-qfdzqed0.js} +4 -4
  274. package/dist/{chunk-99p0sa4h.js → chunk-qhw6wg0y.js} +2 -2
  275. package/dist/{chunk-6jdrt36m.js → chunk-qk4akts4.js} +2 -2
  276. package/dist/{chunk-knc5za98.js → chunk-qkjkr973.js} +57 -57
  277. package/dist/{chunk-5ycqyqbj.js → chunk-qnbe7d8a.js} +1 -1
  278. package/dist/{chunk-e4jqbn4d.js → chunk-qqfbkaad.js} +3 -4
  279. package/dist/{chunk-zqhxr0h7.js → chunk-qs2xnhte.js} +5 -7
  280. package/dist/{chunk-hfy21maq.js → chunk-qszxzska.js} +6 -6
  281. package/dist/{chunk-nbvc8bh6.js → chunk-qvf5w48h.js} +24 -24
  282. package/dist/{chunk-tbce47cr.js → chunk-qxsrtfzn.js} +4 -4
  283. package/dist/{chunk-2cpxc5we.js → chunk-r1931n7y.js} +56 -56
  284. package/dist/{chunk-13g6d7wt.js → chunk-r3rck4qa.js} +10 -10
  285. package/dist/{chunk-pb2nc7r0.js → chunk-r5c38r2r.js} +149 -61
  286. package/dist/{chunk-k6tzzr9c.js → chunk-r65v6fg2.js} +7 -7
  287. package/dist/{chunk-me2986xy.js → chunk-r6v7yh3c.js} +57 -57
  288. package/dist/{chunk-ns3babbs.js → chunk-r7mjzgyn.js} +2 -4
  289. package/dist/{chunk-jxe1a8kz.js → chunk-rbkzzw66.js} +6 -6
  290. package/dist/chunk-red9b98p.js +378 -0
  291. package/dist/{chunk-drnxbc1w.js → chunk-rfp8ja4z.js} +2 -2
  292. package/dist/{chunk-g8w2205d.js → chunk-rhcejk4j.js} +6 -6
  293. package/dist/{chunk-r6ewgv12.js → chunk-rjpkjatc.js} +1 -1
  294. package/dist/{chunk-rw44vqpq.js → chunk-rqzrj3gm.js} +56 -56
  295. package/dist/{chunk-g0jmqbp4.js → chunk-rr9tqgxc.js} +6 -6
  296. package/dist/{chunk-s38qgqfs.js → chunk-rrtkz2js.js} +4 -4
  297. package/dist/{chunk-k95meznc.js → chunk-rsf6y5zm.js} +7 -7
  298. package/dist/{chunk-7jm7pa1e.js → chunk-ryd3pd8a.js} +14 -17
  299. package/dist/{chunk-wn8nakrh.js → chunk-s748h9my.js} +56 -56
  300. package/dist/{chunk-32fv3vze.js → chunk-s8a5ta09.js} +25 -25
  301. package/dist/{chunk-5wxavbb8.js → chunk-sa4athwh.js} +23 -23
  302. package/dist/{chunk-ew68a4sy.js → chunk-sec4gngn.js} +57 -57
  303. package/dist/{chunk-wxe04dx4.js → chunk-sf8fnzc3.js} +3 -3
  304. package/dist/{chunk-k591s450.js → chunk-sfh6dmxz.js} +56 -56
  305. package/dist/chunk-shj5md9j.js +1486 -0
  306. package/dist/{chunk-n0pkzaaw.js → chunk-smcj5g84.js} +6 -6
  307. package/dist/{chunk-0ejzh5by.js → chunk-spw5dfzh.js} +58 -58
  308. package/dist/{chunk-1ymedh1v.js → chunk-stwnpgkm.js} +23 -23
  309. package/dist/{chunk-0kh2f6kh.js → chunk-sz53f4b4.js} +3 -3
  310. package/dist/{chunk-ndcrbqq2.js → chunk-t24yf1vt.js} +57 -57
  311. package/dist/{chunk-z93cpz34.js → chunk-t7b3r8v9.js} +3 -3
  312. package/dist/{chunk-00m08jnq.js → chunk-ta5dpd9k.js} +56 -56
  313. package/dist/{chunk-mj9rbmy1.js → chunk-tdcaa5xt.js} +5 -5
  314. package/dist/{chunk-zr78q4qg.js → chunk-tephtjvc.js} +56 -56
  315. package/dist/{chunk-7f0atzzf.js → chunk-tgwvgrb8.js} +57 -57
  316. package/dist/{chunk-95dy6w67.js → chunk-tq7vtsx4.js} +2 -2
  317. package/dist/{chunk-vhk0hgnv.js → chunk-tvw4vmrq.js} +56 -56
  318. package/dist/{chunk-7vzwyazf.js → chunk-v1rvqs6p.js} +4 -4
  319. package/dist/{chunk-tzpxsjm3.js → chunk-v3rtftz9.js} +29 -29
  320. package/dist/{chunk-sm24ay0y.js → chunk-v3yayvzt.js} +117 -117
  321. package/dist/{chunk-z6wpnk5y.js → chunk-vn9vww4b.js} +1 -1
  322. package/dist/{chunk-84cjtasj.js → chunk-vnc0m7be.js} +58 -58
  323. package/dist/{chunk-0wrzeej6.js → chunk-vqnb1we6.js} +1 -1
  324. package/dist/{chunk-fq1j9zm0.js → chunk-vsa6z84y.js} +3 -3
  325. package/dist/{chunk-atpyr1kg.js → chunk-vvf0dstd.js} +57 -57
  326. package/dist/{chunk-6v1p41rg.js → chunk-vy5q8hrp.js} +7 -7
  327. package/dist/{chunk-mbv3f2vm.js → chunk-vywhk0sd.js} +4 -4
  328. package/dist/{chunk-t2ex5gsn.js → chunk-w02wh43r.js} +3 -3
  329. package/dist/{chunk-e08marnp.js → chunk-w058sn3x.js} +4 -4
  330. package/dist/{chunk-mq7m54qk.js → chunk-w5nbvkxb.js} +69 -69
  331. package/dist/{chunk-8ympg941.js → chunk-w6eqjaa7.js} +1 -1
  332. package/dist/{chunk-rexrttsb.js → chunk-wcz7qa33.js} +33 -33
  333. package/dist/{chunk-jh0d0pbd.js → chunk-wg0d4shw.js} +4 -4
  334. package/dist/{chunk-7kbezevv.js → chunk-wk9wdgv6.js} +5 -5
  335. package/dist/{chunk-edt6c4pc.js → chunk-wkjptwgy.js} +73 -73
  336. package/dist/{chunk-ekqvx6ek.js → chunk-wn36chwc.js} +56 -56
  337. package/dist/{chunk-sdzpdzj3.js → chunk-wnncbex7.js} +58 -58
  338. package/dist/{chunk-s8zha7q1.js → chunk-ws1046mv.js} +9 -11
  339. package/dist/{chunk-bhwnjx3e.js → chunk-wtymvrh9.js} +8 -8
  340. package/dist/{chunk-drnr3z7x.js → chunk-wz2qyvhx.js} +144 -144
  341. package/dist/{chunk-sf4rsw52.js → chunk-x463hr55.js} +8 -8
  342. package/dist/{chunk-xafy9ccy.js → chunk-x6gjy97a.js} +57 -57
  343. package/dist/{chunk-1zrpqh8h.js → chunk-x7aa6ah7.js} +1 -1
  344. package/dist/{chunk-79ztw13h.js → chunk-x89jeqbz.js} +2 -2
  345. package/dist/{chunk-2katyzq9.js → chunk-x8zp00qp.js} +3 -3
  346. package/dist/{chunk-g24e2jr3.js → chunk-xgxyhgy9.js} +56 -56
  347. package/dist/{chunk-8w2a9md8.js → chunk-xmmg3e9j.js} +3 -3
  348. package/dist/{chunk-7e78w86v.js → chunk-xn1wfxt2.js} +3 -3
  349. package/dist/{chunk-sjraxh5y.js → chunk-xr186qye.js} +57 -57
  350. package/dist/{chunk-fp2z22f1.js → chunk-xrrbcvj4.js} +59 -59
  351. package/dist/{chunk-g1jfytsa.js → chunk-xt17cf7n.js} +5 -5
  352. package/dist/{chunk-tzaj5mwz.js → chunk-xt71y0fa.js} +31 -31
  353. package/dist/{chunk-rvn77re6.js → chunk-xws9mdet.js} +23 -23
  354. package/dist/{chunk-vny8tpke.js → chunk-xza7dswj.js} +24 -24
  355. package/dist/{chunk-d6713rzt.js → chunk-y2zdt5wf.js} +30 -10
  356. package/dist/{chunk-z5tmqz5e.js → chunk-y4kd1f5p.js} +56 -56
  357. package/dist/{chunk-t31xvfy2.js → chunk-y5rq3t59.js} +60 -60
  358. package/dist/{chunk-avtcf910.js → chunk-y5x8wqe5.js} +1 -1
  359. package/dist/{chunk-wsm0s0c3.js → chunk-yd1xffwg.js} +3 -3
  360. package/dist/{chunk-vntvaf0c.js → chunk-ydepjfqs.js} +63 -63
  361. package/dist/{chunk-x6ceqp7t.js → chunk-ydwdbxgd.js} +23 -23
  362. package/dist/{chunk-hk24qq7n.js → chunk-yh27vvgm.js} +9 -9
  363. package/dist/{chunk-y8ab9dyv.js → chunk-yn6phqhx.js} +1 -1
  364. package/dist/{chunk-dc4krjj4.js → chunk-yr4qqfcj.js} +22 -22
  365. package/dist/{chunk-z43cvm9f.js → chunk-yrzxjvas.js} +75 -75
  366. package/dist/{chunk-7d3ba1n4.js → chunk-yvzh49tc.js} +1 -1
  367. package/dist/chunk-z51d7scc.js +244 -0
  368. package/dist/chunk-zdf30s24.js +334 -0
  369. package/dist/{chunk-dxcr07z5.js → chunk-ze6zvkg6.js} +4 -4
  370. package/dist/{chunk-nbath9yz.js → chunk-zhd2dv7y.js} +7 -7
  371. package/dist/{chunk-nvrje5t4.js → chunk-zm18kc5q.js} +70 -70
  372. package/dist/{chunk-3px6f9s5.js → chunk-zshqb2h1.js} +2 -2
  373. package/dist/{chunk-d6vexw90.js → chunk-zyy7th0a.js} +1 -1
  374. package/dist/cli-bun.js +0 -0
  375. package/dist/cli-node.js +418 -10
  376. package/dist/cli.js +11 -11
  377. package/dist/download-ripgrep.js +1 -1
  378. package/package.json +200 -195
  379. package/scripts/postinstall.cjs +339 -339
  380. package/scripts/setup-chrome-mcp.mjs +39 -39
  381. package/dist/chunk-05rcynmf.js +0 -81
  382. package/dist/chunk-27xc1csx.js +0 -104
  383. package/dist/chunk-30rst83v.js +0 -168
  384. package/dist/chunk-33tdaxv0.js +0 -16
  385. package/dist/chunk-3enkzjbw.js +0 -3966
  386. package/dist/chunk-3h8a89gy.js +0 -46
  387. package/dist/chunk-3qm927vk.js +0 -542
  388. package/dist/chunk-3z7wsvpa.js +0 -24
  389. package/dist/chunk-44ct1wzm.js +0 -17
  390. package/dist/chunk-4s0bw3mn.js +0 -208
  391. package/dist/chunk-7m3ja921.js +0 -27
  392. package/dist/chunk-7vs34s16.js +0 -173
  393. package/dist/chunk-80h2am3g.js +0 -5241
  394. package/dist/chunk-8f6raa6q.js +0 -615
  395. package/dist/chunk-a9vdeb6y.js +0 -258
  396. package/dist/chunk-ahc4y7pa.js +0 -782
  397. package/dist/chunk-b0bk6bxs.js +0 -742
  398. package/dist/chunk-b4wg70y1.js +0 -54
  399. package/dist/chunk-btnvjcc5.js +0 -15
  400. package/dist/chunk-cs6c9gbk.js +0 -1172
  401. package/dist/chunk-enhtm7h3.js +0 -1731
  402. package/dist/chunk-fckn68n0.js +0 -180
  403. package/dist/chunk-h0qngp9w.js +0 -157
  404. package/dist/chunk-hasadm64.js +0 -412
  405. package/dist/chunk-hk9xz7gk.js +0 -118
  406. package/dist/chunk-j2k4p94p.js +0 -55
  407. package/dist/chunk-jgcsawpq.js +0 -659
  408. package/dist/chunk-jzmz18nn.js +0 -65
  409. package/dist/chunk-kg4qmgbk.js +0 -1095
  410. package/dist/chunk-n0qaeaa5.js +0 -256
  411. package/dist/chunk-nbxr4cfd.js +0 -880
  412. package/dist/chunk-q25bjaev.js +0 -15
  413. package/dist/chunk-qpydzzk0.js +0 -182
  414. package/dist/chunk-qqy9drhh.js +0 -864
  415. package/dist/chunk-qtddenhw.js +0 -607
  416. package/dist/chunk-r6h4zwjj.js +0 -36
  417. package/dist/chunk-th1cykx3.js +0 -494
  418. package/dist/chunk-ttk5dzz8.js +0 -25
  419. package/dist/chunk-v9yc4wjc.js +0 -220
  420. package/dist/chunk-vsemkegd.js +0 -718
  421. package/dist/chunk-wadkbt36.js +0 -40
  422. package/dist/chunk-xsq9ae7x.js +0 -90
  423. package/dist/chunk-ze6h1ch1.js +0 -21
  424. package/dist/chunk-ztpbxsq6.js +0 -910
  425. package/dist/{chunk-2j1t3hcw.js → chunk-a07s68gh.js} +3 -3
@@ -1,1172 +0,0 @@
1
- // @bun
2
- import {
3
- require_dist_cjs1 as require_dist_cjs8,
4
- require_protocols
5
- } from "./chunk-3enkzjbw.js";
6
- import {
7
- require_dist_cjs as require_dist_cjs6
8
- } from "./chunk-30rst83v.js";
9
- import {
10
- require_dist_cjs as require_dist_cjs5
11
- } from "./chunk-xsq9ae7x.js";
12
- import {
13
- require_client
14
- } from "./chunk-b4wg70y1.js";
15
- import {
16
- require_dist_cjs as require_dist_cjs7
17
- } from "./chunk-hk9xz7gk.js";
18
- import {
19
- require_dist_cjs2 as require_dist_cjs4
20
- } from "./chunk-b0bk6bxs.js";
21
- import {
22
- require_dist_cjs
23
- } from "./chunk-btnvjcc5.js";
24
- import {
25
- require_dist_cjs as require_dist_cjs2,
26
- require_dist_cjs2 as require_dist_cjs3
27
- } from "./chunk-2nayx6q1.js";
28
- import {
29
- __commonJS
30
- } from "./chunk-qp2qdcda.js";
31
-
32
- // node_modules/.bun/@smithy+core@3.23.13/node_modules/@smithy/core/dist-cjs/index.js
33
- var require_dist_cjs9 = __commonJS((exports) => {
34
- var types = require_dist_cjs5();
35
- var utilMiddleware = require_dist_cjs8();
36
- var protocolHttp = require_dist_cjs6();
37
- var protocols = require_protocols();
38
- var getSmithyContext = (context) => context[types.SMITHY_CONTEXT_KEY] || (context[types.SMITHY_CONTEXT_KEY] = {});
39
- var resolveAuthOptions = (candidateAuthOptions, authSchemePreference) => {
40
- if (!authSchemePreference || authSchemePreference.length === 0) {
41
- return candidateAuthOptions;
42
- }
43
- const preferredAuthOptions = [];
44
- for (const preferredSchemeName of authSchemePreference) {
45
- for (const candidateAuthOption of candidateAuthOptions) {
46
- const candidateAuthSchemeName = candidateAuthOption.schemeId.split("#")[1];
47
- if (candidateAuthSchemeName === preferredSchemeName) {
48
- preferredAuthOptions.push(candidateAuthOption);
49
- }
50
- }
51
- }
52
- for (const candidateAuthOption of candidateAuthOptions) {
53
- if (!preferredAuthOptions.find(({ schemeId }) => schemeId === candidateAuthOption.schemeId)) {
54
- preferredAuthOptions.push(candidateAuthOption);
55
- }
56
- }
57
- return preferredAuthOptions;
58
- };
59
- function convertHttpAuthSchemesToMap(httpAuthSchemes) {
60
- const map = new Map;
61
- for (const scheme of httpAuthSchemes) {
62
- map.set(scheme.schemeId, scheme);
63
- }
64
- return map;
65
- }
66
- var httpAuthSchemeMiddleware = (config, mwOptions) => (next, context) => async (args) => {
67
- const options = config.httpAuthSchemeProvider(await mwOptions.httpAuthSchemeParametersProvider(config, context, args.input));
68
- const authSchemePreference = config.authSchemePreference ? await config.authSchemePreference() : [];
69
- const resolvedOptions = resolveAuthOptions(options, authSchemePreference);
70
- const authSchemes = convertHttpAuthSchemesToMap(config.httpAuthSchemes);
71
- const smithyContext = utilMiddleware.getSmithyContext(context);
72
- const failureReasons = [];
73
- for (const option of resolvedOptions) {
74
- const scheme = authSchemes.get(option.schemeId);
75
- if (!scheme) {
76
- failureReasons.push(`HttpAuthScheme \`${option.schemeId}\` was not enabled for this service.`);
77
- continue;
78
- }
79
- const identityProvider = scheme.identityProvider(await mwOptions.identityProviderConfigProvider(config));
80
- if (!identityProvider) {
81
- failureReasons.push(`HttpAuthScheme \`${option.schemeId}\` did not have an IdentityProvider configured.`);
82
- continue;
83
- }
84
- const { identityProperties = {}, signingProperties = {} } = option.propertiesExtractor?.(config, context) || {};
85
- option.identityProperties = Object.assign(option.identityProperties || {}, identityProperties);
86
- option.signingProperties = Object.assign(option.signingProperties || {}, signingProperties);
87
- smithyContext.selectedHttpAuthScheme = {
88
- httpAuthOption: option,
89
- identity: await identityProvider(option.identityProperties),
90
- signer: scheme.signer
91
- };
92
- break;
93
- }
94
- if (!smithyContext.selectedHttpAuthScheme) {
95
- throw new Error(failureReasons.join(`
96
- `));
97
- }
98
- return next(args);
99
- };
100
- var httpAuthSchemeEndpointRuleSetMiddlewareOptions = {
101
- step: "serialize",
102
- tags: ["HTTP_AUTH_SCHEME"],
103
- name: "httpAuthSchemeMiddleware",
104
- override: true,
105
- relation: "before",
106
- toMiddleware: "endpointV2Middleware"
107
- };
108
- var getHttpAuthSchemeEndpointRuleSetPlugin = (config, { httpAuthSchemeParametersProvider, identityProviderConfigProvider }) => ({
109
- applyToStack: (clientStack) => {
110
- clientStack.addRelativeTo(httpAuthSchemeMiddleware(config, {
111
- httpAuthSchemeParametersProvider,
112
- identityProviderConfigProvider
113
- }), httpAuthSchemeEndpointRuleSetMiddlewareOptions);
114
- }
115
- });
116
- var httpAuthSchemeMiddlewareOptions = {
117
- step: "serialize",
118
- tags: ["HTTP_AUTH_SCHEME"],
119
- name: "httpAuthSchemeMiddleware",
120
- override: true,
121
- relation: "before",
122
- toMiddleware: "serializerMiddleware"
123
- };
124
- var getHttpAuthSchemePlugin = (config, { httpAuthSchemeParametersProvider, identityProviderConfigProvider }) => ({
125
- applyToStack: (clientStack) => {
126
- clientStack.addRelativeTo(httpAuthSchemeMiddleware(config, {
127
- httpAuthSchemeParametersProvider,
128
- identityProviderConfigProvider
129
- }), httpAuthSchemeMiddlewareOptions);
130
- }
131
- });
132
- var defaultErrorHandler = (signingProperties) => (error) => {
133
- throw error;
134
- };
135
- var defaultSuccessHandler = (httpResponse, signingProperties) => {};
136
- var httpSigningMiddleware = (config) => (next, context) => async (args) => {
137
- if (!protocolHttp.HttpRequest.isInstance(args.request)) {
138
- return next(args);
139
- }
140
- const smithyContext = utilMiddleware.getSmithyContext(context);
141
- const scheme = smithyContext.selectedHttpAuthScheme;
142
- if (!scheme) {
143
- throw new Error(`No HttpAuthScheme was selected: unable to sign request`);
144
- }
145
- const { httpAuthOption: { signingProperties = {} }, identity, signer } = scheme;
146
- const output = await next({
147
- ...args,
148
- request: await signer.sign(args.request, identity, signingProperties)
149
- }).catch((signer.errorHandler || defaultErrorHandler)(signingProperties));
150
- (signer.successHandler || defaultSuccessHandler)(output.response, signingProperties);
151
- return output;
152
- };
153
- var httpSigningMiddlewareOptions = {
154
- step: "finalizeRequest",
155
- tags: ["HTTP_SIGNING"],
156
- name: "httpSigningMiddleware",
157
- aliases: ["apiKeyMiddleware", "tokenMiddleware", "awsAuthMiddleware"],
158
- override: true,
159
- relation: "after",
160
- toMiddleware: "retryMiddleware"
161
- };
162
- var getHttpSigningPlugin = (config) => ({
163
- applyToStack: (clientStack) => {
164
- clientStack.addRelativeTo(httpSigningMiddleware(), httpSigningMiddlewareOptions);
165
- }
166
- });
167
- var normalizeProvider = (input) => {
168
- if (typeof input === "function")
169
- return input;
170
- const promisified = Promise.resolve(input);
171
- return () => promisified;
172
- };
173
- var makePagedClientRequest = async (CommandCtor, client, input, withCommand = (_) => _, ...args) => {
174
- let command = new CommandCtor(input);
175
- command = withCommand(command) ?? command;
176
- return await client.send(command, ...args);
177
- };
178
- function createPaginator(ClientCtor, CommandCtor, inputTokenName, outputTokenName, pageSizeTokenName) {
179
- return async function* paginateOperation(config, input, ...additionalArguments) {
180
- const _input = input;
181
- let token = config.startingToken ?? _input[inputTokenName];
182
- let hasNext = true;
183
- let page;
184
- while (hasNext) {
185
- _input[inputTokenName] = token;
186
- if (pageSizeTokenName) {
187
- _input[pageSizeTokenName] = _input[pageSizeTokenName] ?? config.pageSize;
188
- }
189
- if (config.client instanceof ClientCtor) {
190
- page = await makePagedClientRequest(CommandCtor, config.client, input, config.withCommand, ...additionalArguments);
191
- } else {
192
- throw new Error(`Invalid client, expected instance of ${ClientCtor.name}`);
193
- }
194
- yield page;
195
- const prevToken = token;
196
- token = get(page, outputTokenName);
197
- hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken));
198
- }
199
- return;
200
- };
201
- }
202
- var get = (fromObject, path) => {
203
- let cursor = fromObject;
204
- const pathComponents = path.split(".");
205
- for (const step of pathComponents) {
206
- if (!cursor || typeof cursor !== "object") {
207
- return;
208
- }
209
- cursor = cursor[step];
210
- }
211
- return cursor;
212
- };
213
- function setFeature(context, feature, value) {
214
- if (!context.__smithy_context) {
215
- context.__smithy_context = {
216
- features: {}
217
- };
218
- } else if (!context.__smithy_context.features) {
219
- context.__smithy_context.features = {};
220
- }
221
- context.__smithy_context.features[feature] = value;
222
- }
223
-
224
- class DefaultIdentityProviderConfig {
225
- authSchemes = new Map;
226
- constructor(config) {
227
- for (const [key, value] of Object.entries(config)) {
228
- if (value !== undefined) {
229
- this.authSchemes.set(key, value);
230
- }
231
- }
232
- }
233
- getIdentityProvider(schemeId) {
234
- return this.authSchemes.get(schemeId);
235
- }
236
- }
237
-
238
- class HttpApiKeyAuthSigner {
239
- async sign(httpRequest, identity, signingProperties) {
240
- if (!signingProperties) {
241
- throw new Error("request could not be signed with `apiKey` since the `name` and `in` signer properties are missing");
242
- }
243
- if (!signingProperties.name) {
244
- throw new Error("request could not be signed with `apiKey` since the `name` signer property is missing");
245
- }
246
- if (!signingProperties.in) {
247
- throw new Error("request could not be signed with `apiKey` since the `in` signer property is missing");
248
- }
249
- if (!identity.apiKey) {
250
- throw new Error("request could not be signed with `apiKey` since the `apiKey` is not defined");
251
- }
252
- const clonedRequest = protocolHttp.HttpRequest.clone(httpRequest);
253
- if (signingProperties.in === types.HttpApiKeyAuthLocation.QUERY) {
254
- clonedRequest.query[signingProperties.name] = identity.apiKey;
255
- } else if (signingProperties.in === types.HttpApiKeyAuthLocation.HEADER) {
256
- clonedRequest.headers[signingProperties.name] = signingProperties.scheme ? `${signingProperties.scheme} ${identity.apiKey}` : identity.apiKey;
257
- } else {
258
- throw new Error("request can only be signed with `apiKey` locations `query` or `header`, " + "but found: `" + signingProperties.in + "`");
259
- }
260
- return clonedRequest;
261
- }
262
- }
263
-
264
- class HttpBearerAuthSigner {
265
- async sign(httpRequest, identity, signingProperties) {
266
- const clonedRequest = protocolHttp.HttpRequest.clone(httpRequest);
267
- if (!identity.token) {
268
- throw new Error("request could not be signed with `token` since the `token` is not defined");
269
- }
270
- clonedRequest.headers["Authorization"] = `Bearer ${identity.token}`;
271
- return clonedRequest;
272
- }
273
- }
274
-
275
- class NoAuthSigner {
276
- async sign(httpRequest, identity, signingProperties) {
277
- return httpRequest;
278
- }
279
- }
280
- var createIsIdentityExpiredFunction = (expirationMs) => function isIdentityExpired2(identity) {
281
- return doesIdentityRequireRefresh(identity) && identity.expiration.getTime() - Date.now() < expirationMs;
282
- };
283
- var EXPIRATION_MS = 300000;
284
- var isIdentityExpired = createIsIdentityExpiredFunction(EXPIRATION_MS);
285
- var doesIdentityRequireRefresh = (identity) => identity.expiration !== undefined;
286
- var memoizeIdentityProvider = (provider, isExpired, requiresRefresh) => {
287
- if (provider === undefined) {
288
- return;
289
- }
290
- const normalizedProvider = typeof provider !== "function" ? async () => Promise.resolve(provider) : provider;
291
- let resolved;
292
- let pending;
293
- let hasResult;
294
- let isConstant = false;
295
- const coalesceProvider = async (options) => {
296
- if (!pending) {
297
- pending = normalizedProvider(options);
298
- }
299
- try {
300
- resolved = await pending;
301
- hasResult = true;
302
- isConstant = false;
303
- } finally {
304
- pending = undefined;
305
- }
306
- return resolved;
307
- };
308
- if (isExpired === undefined) {
309
- return async (options) => {
310
- if (!hasResult || options?.forceRefresh) {
311
- resolved = await coalesceProvider(options);
312
- }
313
- return resolved;
314
- };
315
- }
316
- return async (options) => {
317
- if (!hasResult || options?.forceRefresh) {
318
- resolved = await coalesceProvider(options);
319
- }
320
- if (isConstant) {
321
- return resolved;
322
- }
323
- if (!requiresRefresh(resolved)) {
324
- isConstant = true;
325
- return resolved;
326
- }
327
- if (isExpired(resolved)) {
328
- await coalesceProvider(options);
329
- return resolved;
330
- }
331
- return resolved;
332
- };
333
- };
334
- exports.requestBuilder = protocols.requestBuilder;
335
- exports.DefaultIdentityProviderConfig = DefaultIdentityProviderConfig;
336
- exports.EXPIRATION_MS = EXPIRATION_MS;
337
- exports.HttpApiKeyAuthSigner = HttpApiKeyAuthSigner;
338
- exports.HttpBearerAuthSigner = HttpBearerAuthSigner;
339
- exports.NoAuthSigner = NoAuthSigner;
340
- exports.createIsIdentityExpiredFunction = createIsIdentityExpiredFunction;
341
- exports.createPaginator = createPaginator;
342
- exports.doesIdentityRequireRefresh = doesIdentityRequireRefresh;
343
- exports.getHttpAuthSchemeEndpointRuleSetPlugin = getHttpAuthSchemeEndpointRuleSetPlugin;
344
- exports.getHttpAuthSchemePlugin = getHttpAuthSchemePlugin;
345
- exports.getHttpSigningPlugin = getHttpSigningPlugin;
346
- exports.getSmithyContext = getSmithyContext;
347
- exports.httpAuthSchemeEndpointRuleSetMiddlewareOptions = httpAuthSchemeEndpointRuleSetMiddlewareOptions;
348
- exports.httpAuthSchemeMiddleware = httpAuthSchemeMiddleware;
349
- exports.httpAuthSchemeMiddlewareOptions = httpAuthSchemeMiddlewareOptions;
350
- exports.httpSigningMiddleware = httpSigningMiddleware;
351
- exports.httpSigningMiddlewareOptions = httpSigningMiddlewareOptions;
352
- exports.isIdentityExpired = isIdentityExpired;
353
- exports.memoizeIdentityProvider = memoizeIdentityProvider;
354
- exports.normalizeProvider = normalizeProvider;
355
- exports.setFeature = setFeature;
356
- });
357
-
358
- // node_modules/.bun/@smithy+signature-v4@5.3.12/node_modules/@smithy/signature-v4/dist-cjs/index.js
359
- var require_dist_cjs10 = __commonJS((exports) => {
360
- var utilHexEncoding = require_dist_cjs4();
361
- var utilUtf8 = require_dist_cjs3();
362
- var isArrayBuffer = require_dist_cjs2();
363
- var protocolHttp = require_dist_cjs6();
364
- var utilMiddleware = require_dist_cjs8();
365
- var utilUriEscape = require_dist_cjs();
366
- var ALGORITHM_QUERY_PARAM = "X-Amz-Algorithm";
367
- var CREDENTIAL_QUERY_PARAM = "X-Amz-Credential";
368
- var AMZ_DATE_QUERY_PARAM = "X-Amz-Date";
369
- var SIGNED_HEADERS_QUERY_PARAM = "X-Amz-SignedHeaders";
370
- var EXPIRES_QUERY_PARAM = "X-Amz-Expires";
371
- var SIGNATURE_QUERY_PARAM = "X-Amz-Signature";
372
- var TOKEN_QUERY_PARAM = "X-Amz-Security-Token";
373
- var REGION_SET_PARAM = "X-Amz-Region-Set";
374
- var AUTH_HEADER = "authorization";
375
- var AMZ_DATE_HEADER = AMZ_DATE_QUERY_PARAM.toLowerCase();
376
- var DATE_HEADER = "date";
377
- var GENERATED_HEADERS = [AUTH_HEADER, AMZ_DATE_HEADER, DATE_HEADER];
378
- var SIGNATURE_HEADER = SIGNATURE_QUERY_PARAM.toLowerCase();
379
- var SHA256_HEADER = "x-amz-content-sha256";
380
- var TOKEN_HEADER = TOKEN_QUERY_PARAM.toLowerCase();
381
- var HOST_HEADER = "host";
382
- var ALWAYS_UNSIGNABLE_HEADERS = {
383
- authorization: true,
384
- "cache-control": true,
385
- connection: true,
386
- expect: true,
387
- from: true,
388
- "keep-alive": true,
389
- "max-forwards": true,
390
- pragma: true,
391
- referer: true,
392
- te: true,
393
- trailer: true,
394
- "transfer-encoding": true,
395
- upgrade: true,
396
- "user-agent": true,
397
- "x-amzn-trace-id": true
398
- };
399
- var PROXY_HEADER_PATTERN = /^proxy-/;
400
- var SEC_HEADER_PATTERN = /^sec-/;
401
- var UNSIGNABLE_PATTERNS = [/^proxy-/i, /^sec-/i];
402
- var ALGORITHM_IDENTIFIER = "AWS4-HMAC-SHA256";
403
- var ALGORITHM_IDENTIFIER_V4A = "AWS4-ECDSA-P256-SHA256";
404
- var EVENT_ALGORITHM_IDENTIFIER = "AWS4-HMAC-SHA256-PAYLOAD";
405
- var UNSIGNED_PAYLOAD = "UNSIGNED-PAYLOAD";
406
- var MAX_CACHE_SIZE = 50;
407
- var KEY_TYPE_IDENTIFIER = "aws4_request";
408
- var MAX_PRESIGNED_TTL = 60 * 60 * 24 * 7;
409
- var signingKeyCache = {};
410
- var cacheQueue = [];
411
- var createScope = (shortDate, region, service) => `${shortDate}/${region}/${service}/${KEY_TYPE_IDENTIFIER}`;
412
- var getSigningKey = async (sha256Constructor, credentials, shortDate, region, service) => {
413
- const credsHash = await hmac(sha256Constructor, credentials.secretAccessKey, credentials.accessKeyId);
414
- const cacheKey = `${shortDate}:${region}:${service}:${utilHexEncoding.toHex(credsHash)}:${credentials.sessionToken}`;
415
- if (cacheKey in signingKeyCache) {
416
- return signingKeyCache[cacheKey];
417
- }
418
- cacheQueue.push(cacheKey);
419
- while (cacheQueue.length > MAX_CACHE_SIZE) {
420
- delete signingKeyCache[cacheQueue.shift()];
421
- }
422
- let key = `AWS4${credentials.secretAccessKey}`;
423
- for (const signable of [shortDate, region, service, KEY_TYPE_IDENTIFIER]) {
424
- key = await hmac(sha256Constructor, key, signable);
425
- }
426
- return signingKeyCache[cacheKey] = key;
427
- };
428
- var clearCredentialCache = () => {
429
- cacheQueue.length = 0;
430
- Object.keys(signingKeyCache).forEach((cacheKey) => {
431
- delete signingKeyCache[cacheKey];
432
- });
433
- };
434
- var hmac = (ctor, secret, data) => {
435
- const hash = new ctor(secret);
436
- hash.update(utilUtf8.toUint8Array(data));
437
- return hash.digest();
438
- };
439
- var getCanonicalHeaders = ({ headers }, unsignableHeaders, signableHeaders) => {
440
- const canonical = {};
441
- for (const headerName of Object.keys(headers).sort()) {
442
- if (headers[headerName] == undefined) {
443
- continue;
444
- }
445
- const canonicalHeaderName = headerName.toLowerCase();
446
- if (canonicalHeaderName in ALWAYS_UNSIGNABLE_HEADERS || unsignableHeaders?.has(canonicalHeaderName) || PROXY_HEADER_PATTERN.test(canonicalHeaderName) || SEC_HEADER_PATTERN.test(canonicalHeaderName)) {
447
- if (!signableHeaders || signableHeaders && !signableHeaders.has(canonicalHeaderName)) {
448
- continue;
449
- }
450
- }
451
- canonical[canonicalHeaderName] = headers[headerName].trim().replace(/\s+/g, " ");
452
- }
453
- return canonical;
454
- };
455
- var getPayloadHash = async ({ headers, body }, hashConstructor) => {
456
- for (const headerName of Object.keys(headers)) {
457
- if (headerName.toLowerCase() === SHA256_HEADER) {
458
- return headers[headerName];
459
- }
460
- }
461
- if (body == undefined) {
462
- return "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
463
- } else if (typeof body === "string" || ArrayBuffer.isView(body) || isArrayBuffer.isArrayBuffer(body)) {
464
- const hashCtor = new hashConstructor;
465
- hashCtor.update(utilUtf8.toUint8Array(body));
466
- return utilHexEncoding.toHex(await hashCtor.digest());
467
- }
468
- return UNSIGNED_PAYLOAD;
469
- };
470
-
471
- class HeaderFormatter {
472
- format(headers) {
473
- const chunks = [];
474
- for (const headerName of Object.keys(headers)) {
475
- const bytes = utilUtf8.fromUtf8(headerName);
476
- chunks.push(Uint8Array.from([bytes.byteLength]), bytes, this.formatHeaderValue(headers[headerName]));
477
- }
478
- const out = new Uint8Array(chunks.reduce((carry, bytes) => carry + bytes.byteLength, 0));
479
- let position = 0;
480
- for (const chunk of chunks) {
481
- out.set(chunk, position);
482
- position += chunk.byteLength;
483
- }
484
- return out;
485
- }
486
- formatHeaderValue(header) {
487
- switch (header.type) {
488
- case "boolean":
489
- return Uint8Array.from([header.value ? 0 : 1]);
490
- case "byte":
491
- return Uint8Array.from([2, header.value]);
492
- case "short":
493
- const shortView = new DataView(new ArrayBuffer(3));
494
- shortView.setUint8(0, 3);
495
- shortView.setInt16(1, header.value, false);
496
- return new Uint8Array(shortView.buffer);
497
- case "integer":
498
- const intView = new DataView(new ArrayBuffer(5));
499
- intView.setUint8(0, 4);
500
- intView.setInt32(1, header.value, false);
501
- return new Uint8Array(intView.buffer);
502
- case "long":
503
- const longBytes = new Uint8Array(9);
504
- longBytes[0] = 5;
505
- longBytes.set(header.value.bytes, 1);
506
- return longBytes;
507
- case "binary":
508
- const binView = new DataView(new ArrayBuffer(3 + header.value.byteLength));
509
- binView.setUint8(0, 6);
510
- binView.setUint16(1, header.value.byteLength, false);
511
- const binBytes = new Uint8Array(binView.buffer);
512
- binBytes.set(header.value, 3);
513
- return binBytes;
514
- case "string":
515
- const utf8Bytes = utilUtf8.fromUtf8(header.value);
516
- const strView = new DataView(new ArrayBuffer(3 + utf8Bytes.byteLength));
517
- strView.setUint8(0, 7);
518
- strView.setUint16(1, utf8Bytes.byteLength, false);
519
- const strBytes = new Uint8Array(strView.buffer);
520
- strBytes.set(utf8Bytes, 3);
521
- return strBytes;
522
- case "timestamp":
523
- const tsBytes = new Uint8Array(9);
524
- tsBytes[0] = 8;
525
- tsBytes.set(Int64.fromNumber(header.value.valueOf()).bytes, 1);
526
- return tsBytes;
527
- case "uuid":
528
- if (!UUID_PATTERN.test(header.value)) {
529
- throw new Error(`Invalid UUID received: ${header.value}`);
530
- }
531
- const uuidBytes = new Uint8Array(17);
532
- uuidBytes[0] = 9;
533
- uuidBytes.set(utilHexEncoding.fromHex(header.value.replace(/\-/g, "")), 1);
534
- return uuidBytes;
535
- }
536
- }
537
- }
538
- var UUID_PATTERN = /^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/;
539
-
540
- class Int64 {
541
- bytes;
542
- constructor(bytes) {
543
- this.bytes = bytes;
544
- if (bytes.byteLength !== 8) {
545
- throw new Error("Int64 buffers must be exactly 8 bytes");
546
- }
547
- }
548
- static fromNumber(number) {
549
- if (number > 9223372036854776000 || number < -9223372036854776000) {
550
- throw new Error(`${number} is too large (or, if negative, too small) to represent as an Int64`);
551
- }
552
- const bytes = new Uint8Array(8);
553
- for (let i = 7, remaining = Math.abs(Math.round(number));i > -1 && remaining > 0; i--, remaining /= 256) {
554
- bytes[i] = remaining;
555
- }
556
- if (number < 0) {
557
- negate(bytes);
558
- }
559
- return new Int64(bytes);
560
- }
561
- valueOf() {
562
- const bytes = this.bytes.slice(0);
563
- const negative = bytes[0] & 128;
564
- if (negative) {
565
- negate(bytes);
566
- }
567
- return parseInt(utilHexEncoding.toHex(bytes), 16) * (negative ? -1 : 1);
568
- }
569
- toString() {
570
- return String(this.valueOf());
571
- }
572
- }
573
- function negate(bytes) {
574
- for (let i = 0;i < 8; i++) {
575
- bytes[i] ^= 255;
576
- }
577
- for (let i = 7;i > -1; i--) {
578
- bytes[i]++;
579
- if (bytes[i] !== 0)
580
- break;
581
- }
582
- }
583
- var hasHeader = (soughtHeader, headers) => {
584
- soughtHeader = soughtHeader.toLowerCase();
585
- for (const headerName of Object.keys(headers)) {
586
- if (soughtHeader === headerName.toLowerCase()) {
587
- return true;
588
- }
589
- }
590
- return false;
591
- };
592
- var moveHeadersToQuery = (request, options = {}) => {
593
- const { headers, query = {} } = protocolHttp.HttpRequest.clone(request);
594
- for (const name of Object.keys(headers)) {
595
- const lname = name.toLowerCase();
596
- if (lname.slice(0, 6) === "x-amz-" && !options.unhoistableHeaders?.has(lname) || options.hoistableHeaders?.has(lname)) {
597
- query[name] = headers[name];
598
- delete headers[name];
599
- }
600
- }
601
- return {
602
- ...request,
603
- headers,
604
- query
605
- };
606
- };
607
- var prepareRequest = (request) => {
608
- request = protocolHttp.HttpRequest.clone(request);
609
- for (const headerName of Object.keys(request.headers)) {
610
- if (GENERATED_HEADERS.indexOf(headerName.toLowerCase()) > -1) {
611
- delete request.headers[headerName];
612
- }
613
- }
614
- return request;
615
- };
616
- var getCanonicalQuery = ({ query = {} }) => {
617
- const keys = [];
618
- const serialized = {};
619
- for (const key of Object.keys(query)) {
620
- if (key.toLowerCase() === SIGNATURE_HEADER) {
621
- continue;
622
- }
623
- const encodedKey = utilUriEscape.escapeUri(key);
624
- keys.push(encodedKey);
625
- const value = query[key];
626
- if (typeof value === "string") {
627
- serialized[encodedKey] = `${encodedKey}=${utilUriEscape.escapeUri(value)}`;
628
- } else if (Array.isArray(value)) {
629
- serialized[encodedKey] = value.slice(0).reduce((encoded, value2) => encoded.concat([`${encodedKey}=${utilUriEscape.escapeUri(value2)}`]), []).sort().join("&");
630
- }
631
- }
632
- return keys.sort().map((key) => serialized[key]).filter((serialized2) => serialized2).join("&");
633
- };
634
- var iso8601 = (time) => toDate(time).toISOString().replace(/\.\d{3}Z$/, "Z");
635
- var toDate = (time) => {
636
- if (typeof time === "number") {
637
- return new Date(time * 1000);
638
- }
639
- if (typeof time === "string") {
640
- if (Number(time)) {
641
- return new Date(Number(time) * 1000);
642
- }
643
- return new Date(time);
644
- }
645
- return time;
646
- };
647
-
648
- class SignatureV4Base {
649
- service;
650
- regionProvider;
651
- credentialProvider;
652
- sha256;
653
- uriEscapePath;
654
- applyChecksum;
655
- constructor({ applyChecksum, credentials, region, service, sha256, uriEscapePath = true }) {
656
- this.service = service;
657
- this.sha256 = sha256;
658
- this.uriEscapePath = uriEscapePath;
659
- this.applyChecksum = typeof applyChecksum === "boolean" ? applyChecksum : true;
660
- this.regionProvider = utilMiddleware.normalizeProvider(region);
661
- this.credentialProvider = utilMiddleware.normalizeProvider(credentials);
662
- }
663
- createCanonicalRequest(request, canonicalHeaders, payloadHash) {
664
- const sortedHeaders = Object.keys(canonicalHeaders).sort();
665
- return `${request.method}
666
- ${this.getCanonicalPath(request)}
667
- ${getCanonicalQuery(request)}
668
- ${sortedHeaders.map((name) => `${name}:${canonicalHeaders[name]}`).join(`
669
- `)}
670
-
671
- ${sortedHeaders.join(";")}
672
- ${payloadHash}`;
673
- }
674
- async createStringToSign(longDate, credentialScope, canonicalRequest, algorithmIdentifier) {
675
- const hash = new this.sha256;
676
- hash.update(utilUtf8.toUint8Array(canonicalRequest));
677
- const hashedRequest = await hash.digest();
678
- return `${algorithmIdentifier}
679
- ${longDate}
680
- ${credentialScope}
681
- ${utilHexEncoding.toHex(hashedRequest)}`;
682
- }
683
- getCanonicalPath({ path }) {
684
- if (this.uriEscapePath) {
685
- const normalizedPathSegments = [];
686
- for (const pathSegment of path.split("/")) {
687
- if (pathSegment?.length === 0)
688
- continue;
689
- if (pathSegment === ".")
690
- continue;
691
- if (pathSegment === "..") {
692
- normalizedPathSegments.pop();
693
- } else {
694
- normalizedPathSegments.push(pathSegment);
695
- }
696
- }
697
- const normalizedPath = `${path?.startsWith("/") ? "/" : ""}${normalizedPathSegments.join("/")}${normalizedPathSegments.length > 0 && path?.endsWith("/") ? "/" : ""}`;
698
- const doubleEncoded = utilUriEscape.escapeUri(normalizedPath);
699
- return doubleEncoded.replace(/%2F/g, "/");
700
- }
701
- return path;
702
- }
703
- validateResolvedCredentials(credentials) {
704
- if (typeof credentials !== "object" || typeof credentials.accessKeyId !== "string" || typeof credentials.secretAccessKey !== "string") {
705
- throw new Error("Resolved credential object is not valid");
706
- }
707
- }
708
- formatDate(now) {
709
- const longDate = iso8601(now).replace(/[\-:]/g, "");
710
- return {
711
- longDate,
712
- shortDate: longDate.slice(0, 8)
713
- };
714
- }
715
- getCanonicalHeaderList(headers) {
716
- return Object.keys(headers).sort().join(";");
717
- }
718
- }
719
-
720
- class SignatureV4 extends SignatureV4Base {
721
- headerFormatter = new HeaderFormatter;
722
- constructor({ applyChecksum, credentials, region, service, sha256, uriEscapePath = true }) {
723
- super({
724
- applyChecksum,
725
- credentials,
726
- region,
727
- service,
728
- sha256,
729
- uriEscapePath
730
- });
731
- }
732
- async presign(originalRequest, options = {}) {
733
- const { signingDate = new Date, expiresIn = 3600, unsignableHeaders, unhoistableHeaders, signableHeaders, hoistableHeaders, signingRegion, signingService } = options;
734
- const credentials = await this.credentialProvider();
735
- this.validateResolvedCredentials(credentials);
736
- const region = signingRegion ?? await this.regionProvider();
737
- const { longDate, shortDate } = this.formatDate(signingDate);
738
- if (expiresIn > MAX_PRESIGNED_TTL) {
739
- return Promise.reject("Signature version 4 presigned URLs" + " must have an expiration date less than one week in" + " the future");
740
- }
741
- const scope = createScope(shortDate, region, signingService ?? this.service);
742
- const request = moveHeadersToQuery(prepareRequest(originalRequest), { unhoistableHeaders, hoistableHeaders });
743
- if (credentials.sessionToken) {
744
- request.query[TOKEN_QUERY_PARAM] = credentials.sessionToken;
745
- }
746
- request.query[ALGORITHM_QUERY_PARAM] = ALGORITHM_IDENTIFIER;
747
- request.query[CREDENTIAL_QUERY_PARAM] = `${credentials.accessKeyId}/${scope}`;
748
- request.query[AMZ_DATE_QUERY_PARAM] = longDate;
749
- request.query[EXPIRES_QUERY_PARAM] = expiresIn.toString(10);
750
- const canonicalHeaders = getCanonicalHeaders(request, unsignableHeaders, signableHeaders);
751
- request.query[SIGNED_HEADERS_QUERY_PARAM] = this.getCanonicalHeaderList(canonicalHeaders);
752
- request.query[SIGNATURE_QUERY_PARAM] = await this.getSignature(longDate, scope, this.getSigningKey(credentials, region, shortDate, signingService), this.createCanonicalRequest(request, canonicalHeaders, await getPayloadHash(originalRequest, this.sha256)));
753
- return request;
754
- }
755
- async sign(toSign, options) {
756
- if (typeof toSign === "string") {
757
- return this.signString(toSign, options);
758
- } else if (toSign.headers && toSign.payload) {
759
- return this.signEvent(toSign, options);
760
- } else if (toSign.message) {
761
- return this.signMessage(toSign, options);
762
- } else {
763
- return this.signRequest(toSign, options);
764
- }
765
- }
766
- async signEvent({ headers, payload }, { signingDate = new Date, priorSignature, signingRegion, signingService }) {
767
- const region = signingRegion ?? await this.regionProvider();
768
- const { shortDate, longDate } = this.formatDate(signingDate);
769
- const scope = createScope(shortDate, region, signingService ?? this.service);
770
- const hashedPayload = await getPayloadHash({ headers: {}, body: payload }, this.sha256);
771
- const hash = new this.sha256;
772
- hash.update(headers);
773
- const hashedHeaders = utilHexEncoding.toHex(await hash.digest());
774
- const stringToSign = [
775
- EVENT_ALGORITHM_IDENTIFIER,
776
- longDate,
777
- scope,
778
- priorSignature,
779
- hashedHeaders,
780
- hashedPayload
781
- ].join(`
782
- `);
783
- return this.signString(stringToSign, { signingDate, signingRegion: region, signingService });
784
- }
785
- async signMessage(signableMessage, { signingDate = new Date, signingRegion, signingService }) {
786
- const promise = this.signEvent({
787
- headers: this.headerFormatter.format(signableMessage.message.headers),
788
- payload: signableMessage.message.body
789
- }, {
790
- signingDate,
791
- signingRegion,
792
- signingService,
793
- priorSignature: signableMessage.priorSignature
794
- });
795
- return promise.then((signature) => {
796
- return { message: signableMessage.message, signature };
797
- });
798
- }
799
- async signString(stringToSign, { signingDate = new Date, signingRegion, signingService } = {}) {
800
- const credentials = await this.credentialProvider();
801
- this.validateResolvedCredentials(credentials);
802
- const region = signingRegion ?? await this.regionProvider();
803
- const { shortDate } = this.formatDate(signingDate);
804
- const hash = new this.sha256(await this.getSigningKey(credentials, region, shortDate, signingService));
805
- hash.update(utilUtf8.toUint8Array(stringToSign));
806
- return utilHexEncoding.toHex(await hash.digest());
807
- }
808
- async signRequest(requestToSign, { signingDate = new Date, signableHeaders, unsignableHeaders, signingRegion, signingService } = {}) {
809
- const credentials = await this.credentialProvider();
810
- this.validateResolvedCredentials(credentials);
811
- const region = signingRegion ?? await this.regionProvider();
812
- const request = prepareRequest(requestToSign);
813
- const { longDate, shortDate } = this.formatDate(signingDate);
814
- const scope = createScope(shortDate, region, signingService ?? this.service);
815
- request.headers[AMZ_DATE_HEADER] = longDate;
816
- if (credentials.sessionToken) {
817
- request.headers[TOKEN_HEADER] = credentials.sessionToken;
818
- }
819
- const payloadHash = await getPayloadHash(request, this.sha256);
820
- if (!hasHeader(SHA256_HEADER, request.headers) && this.applyChecksum) {
821
- request.headers[SHA256_HEADER] = payloadHash;
822
- }
823
- const canonicalHeaders = getCanonicalHeaders(request, unsignableHeaders, signableHeaders);
824
- const signature = await this.getSignature(longDate, scope, this.getSigningKey(credentials, region, shortDate, signingService), this.createCanonicalRequest(request, canonicalHeaders, payloadHash));
825
- request.headers[AUTH_HEADER] = `${ALGORITHM_IDENTIFIER} ` + `Credential=${credentials.accessKeyId}/${scope}, ` + `SignedHeaders=${this.getCanonicalHeaderList(canonicalHeaders)}, ` + `Signature=${signature}`;
826
- return request;
827
- }
828
- async getSignature(longDate, credentialScope, keyPromise, canonicalRequest) {
829
- const stringToSign = await this.createStringToSign(longDate, credentialScope, canonicalRequest, ALGORITHM_IDENTIFIER);
830
- const hash = new this.sha256(await keyPromise);
831
- hash.update(utilUtf8.toUint8Array(stringToSign));
832
- return utilHexEncoding.toHex(await hash.digest());
833
- }
834
- getSigningKey(credentials, region, shortDate, service) {
835
- return getSigningKey(this.sha256, credentials, shortDate, region, service || this.service);
836
- }
837
- }
838
- var signatureV4aContainer = {
839
- SignatureV4a: null
840
- };
841
- exports.ALGORITHM_IDENTIFIER = ALGORITHM_IDENTIFIER;
842
- exports.ALGORITHM_IDENTIFIER_V4A = ALGORITHM_IDENTIFIER_V4A;
843
- exports.ALGORITHM_QUERY_PARAM = ALGORITHM_QUERY_PARAM;
844
- exports.ALWAYS_UNSIGNABLE_HEADERS = ALWAYS_UNSIGNABLE_HEADERS;
845
- exports.AMZ_DATE_HEADER = AMZ_DATE_HEADER;
846
- exports.AMZ_DATE_QUERY_PARAM = AMZ_DATE_QUERY_PARAM;
847
- exports.AUTH_HEADER = AUTH_HEADER;
848
- exports.CREDENTIAL_QUERY_PARAM = CREDENTIAL_QUERY_PARAM;
849
- exports.DATE_HEADER = DATE_HEADER;
850
- exports.EVENT_ALGORITHM_IDENTIFIER = EVENT_ALGORITHM_IDENTIFIER;
851
- exports.EXPIRES_QUERY_PARAM = EXPIRES_QUERY_PARAM;
852
- exports.GENERATED_HEADERS = GENERATED_HEADERS;
853
- exports.HOST_HEADER = HOST_HEADER;
854
- exports.KEY_TYPE_IDENTIFIER = KEY_TYPE_IDENTIFIER;
855
- exports.MAX_CACHE_SIZE = MAX_CACHE_SIZE;
856
- exports.MAX_PRESIGNED_TTL = MAX_PRESIGNED_TTL;
857
- exports.PROXY_HEADER_PATTERN = PROXY_HEADER_PATTERN;
858
- exports.REGION_SET_PARAM = REGION_SET_PARAM;
859
- exports.SEC_HEADER_PATTERN = SEC_HEADER_PATTERN;
860
- exports.SHA256_HEADER = SHA256_HEADER;
861
- exports.SIGNATURE_HEADER = SIGNATURE_HEADER;
862
- exports.SIGNATURE_QUERY_PARAM = SIGNATURE_QUERY_PARAM;
863
- exports.SIGNED_HEADERS_QUERY_PARAM = SIGNED_HEADERS_QUERY_PARAM;
864
- exports.SignatureV4 = SignatureV4;
865
- exports.SignatureV4Base = SignatureV4Base;
866
- exports.TOKEN_HEADER = TOKEN_HEADER;
867
- exports.TOKEN_QUERY_PARAM = TOKEN_QUERY_PARAM;
868
- exports.UNSIGNABLE_PATTERNS = UNSIGNABLE_PATTERNS;
869
- exports.UNSIGNED_PAYLOAD = UNSIGNED_PAYLOAD;
870
- exports.clearCredentialCache = clearCredentialCache;
871
- exports.createScope = createScope;
872
- exports.getCanonicalHeaders = getCanonicalHeaders;
873
- exports.getCanonicalQuery = getCanonicalQuery;
874
- exports.getPayloadHash = getPayloadHash;
875
- exports.getSigningKey = getSigningKey;
876
- exports.hasHeader = hasHeader;
877
- exports.moveHeadersToQuery = moveHeadersToQuery;
878
- exports.prepareRequest = prepareRequest;
879
- exports.signatureV4aContainer = signatureV4aContainer;
880
- });
881
-
882
- // node_modules/.bun/@aws-sdk+core@3.973.26/node_modules/@aws-sdk/core/dist-cjs/submodules/httpAuthSchemes/index.js
883
- var require_httpAuthSchemes = __commonJS((exports) => {
884
- var protocolHttp = require_dist_cjs6();
885
- var core = require_dist_cjs9();
886
- var propertyProvider = require_dist_cjs7();
887
- var client = require_client();
888
- var signatureV4 = require_dist_cjs10();
889
- var getDateHeader = (response) => protocolHttp.HttpResponse.isInstance(response) ? response.headers?.date ?? response.headers?.Date : undefined;
890
- var getSkewCorrectedDate = (systemClockOffset) => new Date(Date.now() + systemClockOffset);
891
- var isClockSkewed = (clockTime, systemClockOffset) => Math.abs(getSkewCorrectedDate(systemClockOffset).getTime() - clockTime) >= 300000;
892
- var getUpdatedSystemClockOffset = (clockTime, currentSystemClockOffset) => {
893
- const clockTimeInMs = Date.parse(clockTime);
894
- if (isClockSkewed(clockTimeInMs, currentSystemClockOffset)) {
895
- return clockTimeInMs - Date.now();
896
- }
897
- return currentSystemClockOffset;
898
- };
899
- var throwSigningPropertyError = (name, property) => {
900
- if (!property) {
901
- throw new Error(`Property \`${name}\` is not resolved for AWS SDK SigV4Auth`);
902
- }
903
- return property;
904
- };
905
- var validateSigningProperties = async (signingProperties) => {
906
- const context = throwSigningPropertyError("context", signingProperties.context);
907
- const config = throwSigningPropertyError("config", signingProperties.config);
908
- const authScheme = context.endpointV2?.properties?.authSchemes?.[0];
909
- const signerFunction = throwSigningPropertyError("signer", config.signer);
910
- const signer = await signerFunction(authScheme);
911
- const signingRegion = signingProperties?.signingRegion;
912
- const signingRegionSet = signingProperties?.signingRegionSet;
913
- const signingName = signingProperties?.signingName;
914
- return {
915
- config,
916
- signer,
917
- signingRegion,
918
- signingRegionSet,
919
- signingName
920
- };
921
- };
922
-
923
- class AwsSdkSigV4Signer {
924
- async sign(httpRequest, identity, signingProperties) {
925
- if (!protocolHttp.HttpRequest.isInstance(httpRequest)) {
926
- throw new Error("The request is not an instance of `HttpRequest` and cannot be signed");
927
- }
928
- const validatedProps = await validateSigningProperties(signingProperties);
929
- const { config, signer } = validatedProps;
930
- let { signingRegion, signingName } = validatedProps;
931
- const handlerExecutionContext = signingProperties.context;
932
- if (handlerExecutionContext?.authSchemes?.length ?? 0 > 1) {
933
- const [first, second] = handlerExecutionContext.authSchemes;
934
- if (first?.name === "sigv4a" && second?.name === "sigv4") {
935
- signingRegion = second?.signingRegion ?? signingRegion;
936
- signingName = second?.signingName ?? signingName;
937
- }
938
- }
939
- const signedRequest = await signer.sign(httpRequest, {
940
- signingDate: getSkewCorrectedDate(config.systemClockOffset),
941
- signingRegion,
942
- signingService: signingName
943
- });
944
- return signedRequest;
945
- }
946
- errorHandler(signingProperties) {
947
- return (error) => {
948
- const serverTime = error.ServerTime ?? getDateHeader(error.$response);
949
- if (serverTime) {
950
- const config = throwSigningPropertyError("config", signingProperties.config);
951
- const initialSystemClockOffset = config.systemClockOffset;
952
- config.systemClockOffset = getUpdatedSystemClockOffset(serverTime, config.systemClockOffset);
953
- const clockSkewCorrected = config.systemClockOffset !== initialSystemClockOffset;
954
- if (clockSkewCorrected && error.$metadata) {
955
- error.$metadata.clockSkewCorrected = true;
956
- }
957
- }
958
- throw error;
959
- };
960
- }
961
- successHandler(httpResponse, signingProperties) {
962
- const dateHeader = getDateHeader(httpResponse);
963
- if (dateHeader) {
964
- const config = throwSigningPropertyError("config", signingProperties.config);
965
- config.systemClockOffset = getUpdatedSystemClockOffset(dateHeader, config.systemClockOffset);
966
- }
967
- }
968
- }
969
- var AWSSDKSigV4Signer = AwsSdkSigV4Signer;
970
-
971
- class AwsSdkSigV4ASigner extends AwsSdkSigV4Signer {
972
- async sign(httpRequest, identity, signingProperties) {
973
- if (!protocolHttp.HttpRequest.isInstance(httpRequest)) {
974
- throw new Error("The request is not an instance of `HttpRequest` and cannot be signed");
975
- }
976
- const { config, signer, signingRegion, signingRegionSet, signingName } = await validateSigningProperties(signingProperties);
977
- const configResolvedSigningRegionSet = await config.sigv4aSigningRegionSet?.();
978
- const multiRegionOverride = (configResolvedSigningRegionSet ?? signingRegionSet ?? [signingRegion]).join(",");
979
- const signedRequest = await signer.sign(httpRequest, {
980
- signingDate: getSkewCorrectedDate(config.systemClockOffset),
981
- signingRegion: multiRegionOverride,
982
- signingService: signingName
983
- });
984
- return signedRequest;
985
- }
986
- }
987
- var getArrayForCommaSeparatedString = (str) => typeof str === "string" && str.length > 0 ? str.split(",").map((item) => item.trim()) : [];
988
- var getBearerTokenEnvKey = (signingName) => `AWS_BEARER_TOKEN_${signingName.replace(/[\s-]/g, "_").toUpperCase()}`;
989
- var NODE_AUTH_SCHEME_PREFERENCE_ENV_KEY = "AWS_AUTH_SCHEME_PREFERENCE";
990
- var NODE_AUTH_SCHEME_PREFERENCE_CONFIG_KEY = "auth_scheme_preference";
991
- var NODE_AUTH_SCHEME_PREFERENCE_OPTIONS = {
992
- environmentVariableSelector: (env, options) => {
993
- if (options?.signingName) {
994
- const bearerTokenKey = getBearerTokenEnvKey(options.signingName);
995
- if (bearerTokenKey in env)
996
- return ["httpBearerAuth"];
997
- }
998
- if (!(NODE_AUTH_SCHEME_PREFERENCE_ENV_KEY in env))
999
- return;
1000
- return getArrayForCommaSeparatedString(env[NODE_AUTH_SCHEME_PREFERENCE_ENV_KEY]);
1001
- },
1002
- configFileSelector: (profile) => {
1003
- if (!(NODE_AUTH_SCHEME_PREFERENCE_CONFIG_KEY in profile))
1004
- return;
1005
- return getArrayForCommaSeparatedString(profile[NODE_AUTH_SCHEME_PREFERENCE_CONFIG_KEY]);
1006
- },
1007
- default: []
1008
- };
1009
- var resolveAwsSdkSigV4AConfig = (config) => {
1010
- config.sigv4aSigningRegionSet = core.normalizeProvider(config.sigv4aSigningRegionSet);
1011
- return config;
1012
- };
1013
- var NODE_SIGV4A_CONFIG_OPTIONS = {
1014
- environmentVariableSelector(env) {
1015
- if (env.AWS_SIGV4A_SIGNING_REGION_SET) {
1016
- return env.AWS_SIGV4A_SIGNING_REGION_SET.split(",").map((_) => _.trim());
1017
- }
1018
- throw new propertyProvider.ProviderError("AWS_SIGV4A_SIGNING_REGION_SET not set in env.", {
1019
- tryNextLink: true
1020
- });
1021
- },
1022
- configFileSelector(profile) {
1023
- if (profile.sigv4a_signing_region_set) {
1024
- return (profile.sigv4a_signing_region_set ?? "").split(",").map((_) => _.trim());
1025
- }
1026
- throw new propertyProvider.ProviderError("sigv4a_signing_region_set not set in profile.", {
1027
- tryNextLink: true
1028
- });
1029
- },
1030
- default: undefined
1031
- };
1032
- var resolveAwsSdkSigV4Config = (config) => {
1033
- let inputCredentials = config.credentials;
1034
- let isUserSupplied = !!config.credentials;
1035
- let resolvedCredentials = undefined;
1036
- Object.defineProperty(config, "credentials", {
1037
- set(credentials) {
1038
- if (credentials && credentials !== inputCredentials && credentials !== resolvedCredentials) {
1039
- isUserSupplied = true;
1040
- }
1041
- inputCredentials = credentials;
1042
- const memoizedProvider = normalizeCredentialProvider(config, {
1043
- credentials: inputCredentials,
1044
- credentialDefaultProvider: config.credentialDefaultProvider
1045
- });
1046
- const boundProvider = bindCallerConfig(config, memoizedProvider);
1047
- if (isUserSupplied && !boundProvider.attributed) {
1048
- const isCredentialObject = typeof inputCredentials === "object" && inputCredentials !== null;
1049
- resolvedCredentials = async (options) => {
1050
- const creds = await boundProvider(options);
1051
- const attributedCreds = creds;
1052
- if (isCredentialObject && (!attributedCreds.$source || Object.keys(attributedCreds.$source).length === 0)) {
1053
- return client.setCredentialFeature(attributedCreds, "CREDENTIALS_CODE", "e");
1054
- }
1055
- return attributedCreds;
1056
- };
1057
- resolvedCredentials.memoized = boundProvider.memoized;
1058
- resolvedCredentials.configBound = boundProvider.configBound;
1059
- resolvedCredentials.attributed = true;
1060
- } else {
1061
- resolvedCredentials = boundProvider;
1062
- }
1063
- },
1064
- get() {
1065
- return resolvedCredentials;
1066
- },
1067
- enumerable: true,
1068
- configurable: true
1069
- });
1070
- config.credentials = inputCredentials;
1071
- const { signingEscapePath = true, systemClockOffset = config.systemClockOffset || 0, sha256 } = config;
1072
- let signer;
1073
- if (config.signer) {
1074
- signer = core.normalizeProvider(config.signer);
1075
- } else if (config.regionInfoProvider) {
1076
- signer = () => core.normalizeProvider(config.region)().then(async (region) => [
1077
- await config.regionInfoProvider(region, {
1078
- useFipsEndpoint: await config.useFipsEndpoint(),
1079
- useDualstackEndpoint: await config.useDualstackEndpoint()
1080
- }) || {},
1081
- region
1082
- ]).then(([regionInfo, region]) => {
1083
- const { signingRegion, signingService } = regionInfo;
1084
- config.signingRegion = config.signingRegion || signingRegion || region;
1085
- config.signingName = config.signingName || signingService || config.serviceId;
1086
- const params = {
1087
- ...config,
1088
- credentials: config.credentials,
1089
- region: config.signingRegion,
1090
- service: config.signingName,
1091
- sha256,
1092
- uriEscapePath: signingEscapePath
1093
- };
1094
- const SignerCtor = config.signerConstructor || signatureV4.SignatureV4;
1095
- return new SignerCtor(params);
1096
- });
1097
- } else {
1098
- signer = async (authScheme) => {
1099
- authScheme = Object.assign({}, {
1100
- name: "sigv4",
1101
- signingName: config.signingName || config.defaultSigningName,
1102
- signingRegion: await core.normalizeProvider(config.region)(),
1103
- properties: {}
1104
- }, authScheme);
1105
- const signingRegion = authScheme.signingRegion;
1106
- const signingService = authScheme.signingName;
1107
- config.signingRegion = config.signingRegion || signingRegion;
1108
- config.signingName = config.signingName || signingService || config.serviceId;
1109
- const params = {
1110
- ...config,
1111
- credentials: config.credentials,
1112
- region: config.signingRegion,
1113
- service: config.signingName,
1114
- sha256,
1115
- uriEscapePath: signingEscapePath
1116
- };
1117
- const SignerCtor = config.signerConstructor || signatureV4.SignatureV4;
1118
- return new SignerCtor(params);
1119
- };
1120
- }
1121
- const resolvedConfig = Object.assign(config, {
1122
- systemClockOffset,
1123
- signingEscapePath,
1124
- signer
1125
- });
1126
- return resolvedConfig;
1127
- };
1128
- var resolveAWSSDKSigV4Config = resolveAwsSdkSigV4Config;
1129
- function normalizeCredentialProvider(config, { credentials, credentialDefaultProvider }) {
1130
- let credentialsProvider;
1131
- if (credentials) {
1132
- if (!credentials?.memoized) {
1133
- credentialsProvider = core.memoizeIdentityProvider(credentials, core.isIdentityExpired, core.doesIdentityRequireRefresh);
1134
- } else {
1135
- credentialsProvider = credentials;
1136
- }
1137
- } else {
1138
- if (credentialDefaultProvider) {
1139
- credentialsProvider = core.normalizeProvider(credentialDefaultProvider(Object.assign({}, config, {
1140
- parentClientConfig: config
1141
- })));
1142
- } else {
1143
- credentialsProvider = async () => {
1144
- throw new Error("@aws-sdk/core::resolveAwsSdkSigV4Config - `credentials` not provided and no credentialDefaultProvider was configured.");
1145
- };
1146
- }
1147
- }
1148
- credentialsProvider.memoized = true;
1149
- return credentialsProvider;
1150
- }
1151
- function bindCallerConfig(config, credentialsProvider) {
1152
- if (credentialsProvider.configBound) {
1153
- return credentialsProvider;
1154
- }
1155
- const fn = async (options) => credentialsProvider({ ...options, callerClientConfig: config });
1156
- fn.memoized = credentialsProvider.memoized;
1157
- fn.configBound = true;
1158
- return fn;
1159
- }
1160
- exports.AWSSDKSigV4Signer = AWSSDKSigV4Signer;
1161
- exports.AwsSdkSigV4ASigner = AwsSdkSigV4ASigner;
1162
- exports.AwsSdkSigV4Signer = AwsSdkSigV4Signer;
1163
- exports.NODE_AUTH_SCHEME_PREFERENCE_OPTIONS = NODE_AUTH_SCHEME_PREFERENCE_OPTIONS;
1164
- exports.NODE_SIGV4A_CONFIG_OPTIONS = NODE_SIGV4A_CONFIG_OPTIONS;
1165
- exports.getBearerTokenEnvKey = getBearerTokenEnvKey;
1166
- exports.resolveAWSSDKSigV4Config = resolveAWSSDKSigV4Config;
1167
- exports.resolveAwsSdkSigV4AConfig = resolveAwsSdkSigV4AConfig;
1168
- exports.resolveAwsSdkSigV4Config = resolveAwsSdkSigV4Config;
1169
- exports.validateSigningProperties = validateSigningProperties;
1170
- });
1171
-
1172
- export { require_dist_cjs9 as require_dist_cjs, require_httpAuthSchemes };