@struktoai/mirage-node 0.0.3 → 0.0.4

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 (430) hide show
  1. package/dist/aliyun-PGI57A43.js +10 -0
  2. package/dist/backblaze-TSPL6Y56.js +10 -0
  3. package/dist/box-7XTZYDSO.js +8 -0
  4. package/dist/cas.lua +15 -0
  5. package/dist/ceph-C265UI5T.js +10 -0
  6. package/dist/{chunk-I5THIMPP.js → chunk-25W4XQJZ.js} +5 -5
  7. package/dist/{chunk-QGRDPSAH.js → chunk-2ERLWAGG.js} +4 -2
  8. package/dist/chunk-2ERLWAGG.js.map +1 -0
  9. package/dist/{chunk-NJMGCT63.js → chunk-2QNPKPZZ.js} +7 -2
  10. package/dist/chunk-2QNPKPZZ.js.map +1 -0
  11. package/dist/{chunk-ZNWVJ6UW.js → chunk-3ASOQTZB.js} +7 -2
  12. package/dist/chunk-3ASOQTZB.js.map +1 -0
  13. package/dist/{chunk-WAR4Q2NM.js → chunk-3JZN3GYO.js} +13 -12
  14. package/dist/chunk-3JZN3GYO.js.map +1 -0
  15. package/dist/{chunk-S5OVP467.js → chunk-4GYB7DGC.js} +294 -705
  16. package/dist/chunk-4GYB7DGC.js.map +1 -0
  17. package/dist/{chunk-HJJMP6IX.js → chunk-4M73WHIE.js} +3 -3
  18. package/dist/{chunk-7CW3BMPH.js → chunk-4X6CLF4F.js} +3 -3
  19. package/dist/{chunk-QQBJC2FQ.js → chunk-5I7Q7RHW.js} +3 -3
  20. package/dist/{chunk-LV2G7VHL.js → chunk-5YRWF5RP.js} +17 -15
  21. package/dist/chunk-5YRWF5RP.js.map +1 -0
  22. package/dist/chunk-5ZHNPNDD.js +944 -0
  23. package/dist/chunk-5ZHNPNDD.js.map +1 -0
  24. package/dist/{chunk-VGLHY6BK.js → chunk-AULFV3KY.js} +1 -2
  25. package/dist/chunk-AULFV3KY.js.map +1 -0
  26. package/dist/{chunk-VWKUT4CW.js → chunk-BWLUBJQG.js} +19 -15
  27. package/dist/chunk-BWLUBJQG.js.map +1 -0
  28. package/dist/{chunk-X5HF2OFP.js → chunk-BWWU5T2D.js} +3 -3
  29. package/dist/chunk-C7TNKIK5.js +39 -0
  30. package/dist/chunk-C7TNKIK5.js.map +1 -0
  31. package/dist/{chunk-MPCCRRE6.js → chunk-CB76WPUS.js} +12 -13
  32. package/dist/chunk-CB76WPUS.js.map +1 -0
  33. package/dist/chunk-CGGO5NKD.js +1194 -0
  34. package/dist/chunk-CGGO5NKD.js.map +1 -0
  35. package/dist/{chunk-B2ZOKNN4.js → chunk-CQCTCW4S.js} +1 -2
  36. package/dist/chunk-CQCTCW4S.js.map +1 -0
  37. package/dist/{chunk-KPULTUOK.js → chunk-CXQGMFI7.js} +3 -3
  38. package/dist/{chunk-LW25LMIH.js → chunk-D3U7VQCG.js} +1 -2
  39. package/dist/{chunk-LW25LMIH.js.map → chunk-D3U7VQCG.js.map} +1 -1
  40. package/dist/{chunk-N5FSLVKO.js → chunk-DXU7NZPH.js} +3 -3
  41. package/dist/{chunk-XGJ2QERC.js → chunk-E3KXVEYI.js} +8 -4
  42. package/dist/chunk-E3KXVEYI.js.map +1 -0
  43. package/dist/{chunk-YAHRT6MB.js → chunk-EGZNOUMH.js} +3 -3
  44. package/dist/{chunk-DNBAMB5J.js → chunk-EVK6HH6Z.js} +1 -2
  45. package/dist/{chunk-DNBAMB5J.js.map → chunk-EVK6HH6Z.js.map} +1 -1
  46. package/dist/{chunk-HGCRXJGP.js → chunk-F5NWRF32.js} +3 -3
  47. package/dist/{chunk-GCFYZSVR.js → chunk-FRGTDZQT.js} +15 -10
  48. package/dist/chunk-FRGTDZQT.js.map +1 -0
  49. package/dist/{chunk-DYXEITK3.js → chunk-GF75O2EN.js} +4 -2
  50. package/dist/chunk-GF75O2EN.js.map +1 -0
  51. package/dist/{chunk-W7FLHT65.js → chunk-GTAS3QVC.js} +1 -2
  52. package/dist/{chunk-W7FLHT65.js.map → chunk-GTAS3QVC.js.map} +1 -1
  53. package/dist/{chunk-RQK5UPMP.js → chunk-H62XQZUM.js} +4 -3
  54. package/dist/chunk-H62XQZUM.js.map +1 -0
  55. package/dist/{chunk-UT2OPSN4.js → chunk-HCU3B6FW.js} +1 -2
  56. package/dist/chunk-HCU3B6FW.js.map +1 -0
  57. package/dist/chunk-HEDE2377.js +754 -0
  58. package/dist/chunk-HEDE2377.js.map +1 -0
  59. package/dist/{chunk-RNQN2FOU.js → chunk-HGIPWY5Y.js} +21 -10
  60. package/dist/chunk-HGIPWY5Y.js.map +1 -0
  61. package/dist/{chunk-Q2IAILVC.js → chunk-HSD24IP2.js} +8 -4
  62. package/dist/chunk-HSD24IP2.js.map +1 -0
  63. package/dist/{chunk-SWCDFEUK.js → chunk-HWQPEBID.js} +18 -14
  64. package/dist/chunk-HWQPEBID.js.map +1 -0
  65. package/dist/{chunk-SFUCUARB.js → chunk-IEHPTILN.js} +4 -4
  66. package/dist/chunk-IEHPTILN.js.map +1 -0
  67. package/dist/{chunk-M5FVUIYP.js → chunk-IEVLWEBO.js} +14 -13
  68. package/dist/chunk-IEVLWEBO.js.map +1 -0
  69. package/dist/{chunk-YUK3X3B4.js → chunk-IKJQOYI4.js} +1 -2
  70. package/dist/{chunk-YUK3X3B4.js.map → chunk-IKJQOYI4.js.map} +1 -1
  71. package/dist/{chunk-TA3WMOMU.js → chunk-IUXXZHY3.js} +16 -22
  72. package/dist/chunk-IUXXZHY3.js.map +1 -0
  73. package/dist/{chunk-EZQ5HBAC.js → chunk-JBDFYIN2.js} +12 -13
  74. package/dist/chunk-JBDFYIN2.js.map +1 -0
  75. package/dist/{chunk-JCC4CU2I.js → chunk-JEBH5APX.js} +14 -14
  76. package/dist/chunk-JEBH5APX.js.map +1 -0
  77. package/dist/{chunk-H3BST2LI.js → chunk-JHI2PHHD.js} +1 -2
  78. package/dist/{chunk-H3BST2LI.js.map → chunk-JHI2PHHD.js.map} +1 -1
  79. package/dist/{chunk-EGB7V74Z.js → chunk-KAWDDS27.js} +1 -3
  80. package/dist/chunk-KAWDDS27.js.map +1 -0
  81. package/dist/{chunk-DP2PP5V2.js → chunk-KGC2OGXI.js} +5 -4
  82. package/dist/chunk-KGC2OGXI.js.map +1 -0
  83. package/dist/{chunk-3WIO7NBR.js → chunk-L4GMDSMB.js} +3 -3
  84. package/dist/{chunk-47AVIIOT.js → chunk-L7FEZ7LU.js} +3 -3
  85. package/dist/{chunk-54NTYJEO.js → chunk-LPDLPRPS.js} +1 -3
  86. package/dist/{chunk-54NTYJEO.js.map → chunk-LPDLPRPS.js.map} +1 -1
  87. package/dist/{chunk-UGK4TAVK.js → chunk-LPLZLSMK.js} +1 -2
  88. package/dist/chunk-LPLZLSMK.js.map +1 -0
  89. package/dist/{chunk-EM4J5EQS.js → chunk-M6E7VK4D.js} +13 -13
  90. package/dist/chunk-M6E7VK4D.js.map +1 -0
  91. package/dist/{chunk-2CC5VW7K.js → chunk-MIQ3ECZM.js} +4 -2
  92. package/dist/chunk-MIQ3ECZM.js.map +1 -0
  93. package/dist/chunk-MRXTUFBZ.js +30 -0
  94. package/dist/chunk-MRXTUFBZ.js.map +1 -0
  95. package/dist/{chunk-RO5IQEDQ.js → chunk-NJ42VNXG.js} +1 -2
  96. package/dist/chunk-NJ42VNXG.js.map +1 -0
  97. package/dist/{chunk-AUHSTJJ3.js → chunk-NLXJMXVE.js} +3 -3
  98. package/dist/{chunk-E2ISWXLB.js → chunk-OQKNDS66.js} +1 -1
  99. package/dist/{chunk-E2ISWXLB.js.map → chunk-OQKNDS66.js.map} +1 -1
  100. package/dist/{chunk-IDYHQQOH.js → chunk-OSVZKYXS.js} +229 -378
  101. package/dist/chunk-OSVZKYXS.js.map +1 -0
  102. package/dist/{chunk-JAGJTM3Q.js → chunk-RHUEV4I7.js} +11 -12
  103. package/dist/chunk-RHUEV4I7.js.map +1 -0
  104. package/dist/{chunk-JALIYI6M.js → chunk-S4KVLPBR.js} +7 -2
  105. package/dist/chunk-S4KVLPBR.js.map +1 -0
  106. package/dist/{chunk-ZEGAMJO2.js → chunk-SAOQW6ZJ.js} +14 -14
  107. package/dist/chunk-SAOQW6ZJ.js.map +1 -0
  108. package/dist/{chunk-NOHWIBRX.js → chunk-SI4GMRXD.js} +13 -14
  109. package/dist/chunk-SI4GMRXD.js.map +1 -0
  110. package/dist/{chunk-X3G37FXT.js → chunk-SYMNWNC3.js} +3 -3
  111. package/dist/{chunk-DM4GSE26.js → chunk-TUNR4VUM.js} +3 -3
  112. package/dist/{chunk-XHCBHYN4.js → chunk-UAJYJP5C.js} +7 -2
  113. package/dist/chunk-UAJYJP5C.js.map +1 -0
  114. package/dist/{chunk-OPYQ5KIO.js → chunk-UYA3XL3J.js} +4 -2
  115. package/dist/chunk-UYA3XL3J.js.map +1 -0
  116. package/dist/{chunk-UINQOUZR.js → chunk-V7JVMG63.js} +3 -3
  117. package/dist/{chunk-LAJJPLEV.js → chunk-VBYIDRNU.js} +7 -3
  118. package/dist/chunk-VBYIDRNU.js.map +1 -0
  119. package/dist/{chunk-GS5AUKUO.js → chunk-VHED2STW.js} +10 -7
  120. package/dist/chunk-VHED2STW.js.map +1 -0
  121. package/dist/{chunk-JZT4QGIP.js → chunk-VIICUPWQ.js} +1 -2
  122. package/dist/{chunk-JZT4QGIP.js.map → chunk-VIICUPWQ.js.map} +1 -1
  123. package/dist/{chunk-QCZ2XUKH.js → chunk-VLRSOWHP.js} +16 -14
  124. package/dist/chunk-VLRSOWHP.js.map +1 -0
  125. package/dist/{chunk-XWVDS66D.js → chunk-W5ZLIQFR.js} +182 -381
  126. package/dist/chunk-W5ZLIQFR.js.map +1 -0
  127. package/dist/{chunk-YGZMVNN5.js → chunk-WTSSEUOZ.js} +7 -2
  128. package/dist/chunk-WTSSEUOZ.js.map +1 -0
  129. package/dist/{chunk-OHROA3FQ.js → chunk-WWP2STF5.js} +7 -2
  130. package/dist/chunk-WWP2STF5.js.map +1 -0
  131. package/dist/{chunk-IK2L4EN3.js → chunk-XADEMW6B.js} +3 -3
  132. package/dist/{chunk-FQ33BYFR.js → chunk-XEMLYWHK.js} +3 -3
  133. package/dist/{chunk-OZAEWZZ3.js → chunk-XFSEADPC.js} +6 -2
  134. package/dist/chunk-XFSEADPC.js.map +1 -0
  135. package/dist/{chunk-TWGVQLG2.js → chunk-XUUSWR4U.js} +1 -2
  136. package/dist/{chunk-TWGVQLG2.js.map → chunk-XUUSWR4U.js.map} +1 -1
  137. package/dist/{chunk-XLQI4IT2.js → chunk-YBVMZ7SR.js} +7 -2
  138. package/dist/chunk-YBVMZ7SR.js.map +1 -0
  139. package/dist/{chunk-A7IVFIOP.js → chunk-YRJICL2Q.js} +14 -14
  140. package/dist/chunk-YRJICL2Q.js.map +1 -0
  141. package/dist/{chunk-ZGSER5TG.js → chunk-ZM44MGC5.js} +3 -3
  142. package/dist/{chunk-G2WCEUQL.js → chunk-ZMREYTHA.js} +15 -14
  143. package/dist/chunk-ZMREYTHA.js.map +1 -0
  144. package/dist/{chunk-H3I2KZIY.js → chunk-ZPB3SLPK.js} +1 -2
  145. package/dist/{chunk-H3I2KZIY.js.map → chunk-ZPB3SLPK.js.map} +1 -1
  146. package/dist/chunk-ZPZQXHW2.js +1230 -0
  147. package/dist/chunk-ZPZQXHW2.js.map +1 -0
  148. package/dist/{config-34LHOGLM.js → config-2LASFFRD.js} +2 -4
  149. package/dist/config-3WDIJPTG.js +9 -0
  150. package/dist/config-4QV4QYI5.js +9 -0
  151. package/dist/{config-ZFJYQZCH.js → config-54USUVSE.js} +2 -4
  152. package/dist/config-5ZXN2T2H.js +9 -0
  153. package/dist/config-A2GQYJDB.js +9 -0
  154. package/dist/config-BBOLI7VE.js +9 -0
  155. package/dist/{config-VM526IKB.js → config-BIBFLUIR.js} +2 -4
  156. package/dist/{config-EO23EY62.js → config-CPYFOUQO.js} +2 -4
  157. package/dist/{config-3IVQJBNW.js → config-DWSJL3NH.js} +2 -4
  158. package/dist/config-E22XAGYN.js +9 -0
  159. package/dist/config-EHE52ZTK.js +9 -0
  160. package/dist/{config-GE4W4ZJC.js → config-EX3ZJTZI.js} +2 -4
  161. package/dist/{config-QNMKWJ4M.js → config-FRK7ZL37.js} +2 -4
  162. package/dist/{config-LHFFXVYI.js → config-HQXNFQZS.js} +2 -4
  163. package/dist/config-HTXOOAOD.js +9 -0
  164. package/dist/{config-HKRMKD76.js → config-IPNWAJHH.js} +2 -4
  165. package/dist/config-J2C53GOT.js +9 -0
  166. package/dist/config-K63RX6EU.js +9 -0
  167. package/dist/config-L7SBSH5L.js +9 -0
  168. package/dist/config-LEALEMKA.js +9 -0
  169. package/dist/{config-IVY5EQQ2.js → config-M3Z47VYU.js} +2 -4
  170. package/dist/{config-EIHSP5DZ.js → config-MZM3IPFM.js} +2 -4
  171. package/dist/{config-GHRUKEQ6.js → config-OJ2BPESH.js} +2 -4
  172. package/dist/{config-WDAZFXYD.js → config-QO2XUME4.js} +2 -4
  173. package/dist/config-QWQGOXQ5.js +9 -0
  174. package/dist/config-RI7IEZUF.js +9 -0
  175. package/dist/{config-CVZ2AGCO.js → config-SPW6NESU.js} +2 -6
  176. package/dist/{config-QAA646XB.js → config-T2IUIU5C.js} +2 -4
  177. package/dist/{config-NV5WXP64.js → config-UU27ALAA.js} +2 -4
  178. package/dist/config-VKKZGC7V.js +9 -0
  179. package/dist/config-W7EVPJNK.js +11 -0
  180. package/dist/config-WKQ3FGTZ.js +9 -0
  181. package/dist/config-WVILHDFV.js +11 -0
  182. package/dist/{config-Q45Y46YT.js → config-XU6D5C7E.js} +2 -4
  183. package/dist/databricks_volume-ETRDJVVQ.js +7 -0
  184. package/dist/digitalocean-QP72DR4J.js +10 -0
  185. package/dist/discord-BSN5RB3E.js +8 -0
  186. package/dist/disk-24NWTN2I.js +7 -0
  187. package/dist/dropbox-OSTZXSIE.js +8 -0
  188. package/dist/email-4ZFPSWIN.js +8 -0
  189. package/dist/gcs-PFWR6MIW.js +10 -0
  190. package/dist/gdocs-GPAZRQG5.js +8 -0
  191. package/dist/gdrive-XSX6A7B3.js +8 -0
  192. package/dist/github-EQ4NXUTA.js +8 -0
  193. package/dist/github_ci-QL5B2Q2N.js +8 -0
  194. package/dist/gmail-2TBT4CVH.js +8 -0
  195. package/dist/gridfs-KZRZ6SIB.js +9 -0
  196. package/dist/gsheets-N53WEXN2.js +8 -0
  197. package/dist/gslides-TATSARTH.js +8 -0
  198. package/dist/hf_buckets-BK7NGJWS.js +10 -0
  199. package/dist/hf_datasets-UQ5QGM4L.js +10 -0
  200. package/dist/hf_models-75LFCQCS.js +10 -0
  201. package/dist/hf_spaces-6T2KB3UC.js +10 -0
  202. package/dist/index.d.ts +494 -40
  203. package/dist/index.js +1193 -388
  204. package/dist/index.js.map +1 -1
  205. package/dist/langfuse-AMQCQWNE.js +8 -0
  206. package/dist/linear-V3TXO6CV.js +8 -0
  207. package/dist/minio-IZRZY4C5.js +10 -0
  208. package/dist/mongodb-VMKPQCPX.js +7 -0
  209. package/dist/nextcloud-5RHQCGDO.js +9 -0
  210. package/dist/notion-6PPNTQFM.js +8 -0
  211. package/dist/oci-CKYBSFZJ.js +10 -0
  212. package/dist/postgres-WIQBVL5M.js +7 -0
  213. package/dist/qingstor-AP4IIPLY.js +10 -0
  214. package/dist/r2-C4XGEWQY.js +10 -0
  215. package/dist/redis-6D55Q2WB.js +8 -0
  216. package/dist/s3-XQBI2CXN.js +8 -0
  217. package/dist/scaleway-SEZJVURB.js +10 -0
  218. package/dist/seaweedfs-3XYIAFU2.js +10 -0
  219. package/dist/slack-ZHXDJQY4.js +8 -0
  220. package/dist/ssh-X2MO7JOV.js +8 -0
  221. package/dist/supabase-BBM44UTM.js +10 -0
  222. package/dist/supabase-BBM44UTM.js.map +1 -0
  223. package/dist/tencent-X72USLJ7.js +10 -0
  224. package/dist/tencent-X72USLJ7.js.map +1 -0
  225. package/dist/trello-EER5NG7L.js +8 -0
  226. package/dist/trello-EER5NG7L.js.map +1 -0
  227. package/dist/wasabi-O4MVIUFG.js +10 -0
  228. package/dist/wasabi-O4MVIUFG.js.map +1 -0
  229. package/package.json +4 -2
  230. package/dist/aliyun-JMJ3PFYY.js +0 -10
  231. package/dist/backblaze-TDFD23QO.js +0 -10
  232. package/dist/box-GQ2U2R6R.js +0 -8
  233. package/dist/ceph-S2VOYO6G.js +0 -10
  234. package/dist/chunk-2CC5VW7K.js.map +0 -1
  235. package/dist/chunk-A7IVFIOP.js.map +0 -1
  236. package/dist/chunk-B2ZOKNN4.js.map +0 -1
  237. package/dist/chunk-DP2PP5V2.js.map +0 -1
  238. package/dist/chunk-DYXEITK3.js.map +0 -1
  239. package/dist/chunk-EGB7V74Z.js.map +0 -1
  240. package/dist/chunk-EM4J5EQS.js.map +0 -1
  241. package/dist/chunk-EZQ5HBAC.js.map +0 -1
  242. package/dist/chunk-G2WCEUQL.js.map +0 -1
  243. package/dist/chunk-GCFYZSVR.js.map +0 -1
  244. package/dist/chunk-GS5AUKUO.js.map +0 -1
  245. package/dist/chunk-IDYHQQOH.js.map +0 -1
  246. package/dist/chunk-JAGJTM3Q.js.map +0 -1
  247. package/dist/chunk-JALIYI6M.js.map +0 -1
  248. package/dist/chunk-JCC4CU2I.js.map +0 -1
  249. package/dist/chunk-LAJJPLEV.js.map +0 -1
  250. package/dist/chunk-LV2G7VHL.js.map +0 -1
  251. package/dist/chunk-M5FVUIYP.js.map +0 -1
  252. package/dist/chunk-MPCCRRE6.js.map +0 -1
  253. package/dist/chunk-NJMGCT63.js.map +0 -1
  254. package/dist/chunk-NOHWIBRX.js.map +0 -1
  255. package/dist/chunk-OHROA3FQ.js.map +0 -1
  256. package/dist/chunk-OPYQ5KIO.js.map +0 -1
  257. package/dist/chunk-OZAEWZZ3.js.map +0 -1
  258. package/dist/chunk-Q2IAILVC.js.map +0 -1
  259. package/dist/chunk-QCZ2XUKH.js.map +0 -1
  260. package/dist/chunk-QGRDPSAH.js.map +0 -1
  261. package/dist/chunk-RNQN2FOU.js.map +0 -1
  262. package/dist/chunk-RO5IQEDQ.js.map +0 -1
  263. package/dist/chunk-RQK5UPMP.js.map +0 -1
  264. package/dist/chunk-S5OVP467.js.map +0 -1
  265. package/dist/chunk-SFUCUARB.js.map +0 -1
  266. package/dist/chunk-SWCDFEUK.js.map +0 -1
  267. package/dist/chunk-TA3WMOMU.js.map +0 -1
  268. package/dist/chunk-TURD42QO.js +0 -1782
  269. package/dist/chunk-TURD42QO.js.map +0 -1
  270. package/dist/chunk-U6QSXTUS.js +0 -7
  271. package/dist/chunk-U6QSXTUS.js.map +0 -1
  272. package/dist/chunk-UGK4TAVK.js.map +0 -1
  273. package/dist/chunk-UT2OPSN4.js.map +0 -1
  274. package/dist/chunk-VGLHY6BK.js.map +0 -1
  275. package/dist/chunk-VWKUT4CW.js.map +0 -1
  276. package/dist/chunk-WAR4Q2NM.js.map +0 -1
  277. package/dist/chunk-WHFUWWI6.js +0 -2097
  278. package/dist/chunk-WHFUWWI6.js.map +0 -1
  279. package/dist/chunk-XGJ2QERC.js.map +0 -1
  280. package/dist/chunk-XHCBHYN4.js.map +0 -1
  281. package/dist/chunk-XLQI4IT2.js.map +0 -1
  282. package/dist/chunk-XWVDS66D.js.map +0 -1
  283. package/dist/chunk-YGZMVNN5.js.map +0 -1
  284. package/dist/chunk-ZEGAMJO2.js.map +0 -1
  285. package/dist/chunk-ZNWVJ6UW.js.map +0 -1
  286. package/dist/config-3BBWD5AB.js +0 -11
  287. package/dist/config-4UDVSUQJ.js +0 -11
  288. package/dist/config-CMDBAPDH.js +0 -11
  289. package/dist/config-D3RLSPNF.js +0 -11
  290. package/dist/config-DG65OEG3.js +0 -11
  291. package/dist/config-GCQK6NJY.js +0 -11
  292. package/dist/config-GVH27UPE.js +0 -11
  293. package/dist/config-HXVYIXP5.js +0 -11
  294. package/dist/config-IDZMEW73.js +0 -11
  295. package/dist/config-IJJXGLBQ.js +0 -11
  296. package/dist/config-KJOLGVB2.js +0 -11
  297. package/dist/config-KMVCVBYN.js +0 -15
  298. package/dist/config-KYTRXAB2.js +0 -15
  299. package/dist/config-OT2TQQCN.js +0 -11
  300. package/dist/config-QWCY3LBQ.js +0 -11
  301. package/dist/config-ZV6G2ZEC.js +0 -11
  302. package/dist/databricks_volume-7XOUYSTY.js +0 -7
  303. package/dist/digitalocean-3CQ4CPPZ.js +0 -10
  304. package/dist/discord-BG7OSRJG.js +0 -8
  305. package/dist/disk-XVLBCVKE.js +0 -8
  306. package/dist/dropbox-74GYLV3R.js +0 -8
  307. package/dist/email-5IZ7OBQ4.js +0 -8
  308. package/dist/gcs-EMEYU2XT.js +0 -10
  309. package/dist/gdocs-R67TDPON.js +0 -8
  310. package/dist/gdrive-PRN2ALRK.js +0 -8
  311. package/dist/github-DV7E6OFV.js +0 -8
  312. package/dist/github_ci-Q554V5PA.js +0 -8
  313. package/dist/gmail-OLN2LT4O.js +0 -8
  314. package/dist/gsheets-H4RYMQJ5.js +0 -8
  315. package/dist/gslides-YLCHKJOM.js +0 -8
  316. package/dist/hf_buckets-DTKXKKFF.js +0 -10
  317. package/dist/hf_datasets-55C4APKR.js +0 -10
  318. package/dist/hf_models-RO5JR36V.js +0 -10
  319. package/dist/hf_spaces-ZVZ3EDRX.js +0 -10
  320. package/dist/langfuse-ACASJZ7O.js +0 -8
  321. package/dist/linear-IC37LZV7.js +0 -8
  322. package/dist/minio-HZ576XFQ.js +0 -10
  323. package/dist/mongodb-JVR62OIO.js +0 -7
  324. package/dist/notion-HKRPQMJS.js +0 -8
  325. package/dist/oci-ZLVECXTW.js +0 -10
  326. package/dist/postgres-P36Z2YN4.js +0 -7
  327. package/dist/qingstor-YLP6K3L4.js +0 -10
  328. package/dist/r2-RPK25ANI.js +0 -10
  329. package/dist/redis-V5ULXULL.js +0 -8
  330. package/dist/s3-4OIOCAAT.js +0 -8
  331. package/dist/scaleway-CCWCLUHB.js +0 -10
  332. package/dist/seaweedfs-QSWKF2FN.js +0 -10
  333. package/dist/slack-YPS7PII3.js +0 -8
  334. package/dist/ssh-YFP3SMTJ.js +0 -9
  335. package/dist/supabase-6CFTOKGZ.js +0 -10
  336. package/dist/tencent-IWZZOSQ4.js +0 -10
  337. package/dist/trello-XYKWZD6P.js +0 -8
  338. package/dist/wasabi-6Z4DC5S5.js +0 -10
  339. /package/dist/{aliyun-JMJ3PFYY.js.map → aliyun-PGI57A43.js.map} +0 -0
  340. /package/dist/{backblaze-TDFD23QO.js.map → backblaze-TSPL6Y56.js.map} +0 -0
  341. /package/dist/{box-GQ2U2R6R.js.map → box-7XTZYDSO.js.map} +0 -0
  342. /package/dist/{ceph-S2VOYO6G.js.map → ceph-C265UI5T.js.map} +0 -0
  343. /package/dist/{chunk-I5THIMPP.js.map → chunk-25W4XQJZ.js.map} +0 -0
  344. /package/dist/{chunk-HJJMP6IX.js.map → chunk-4M73WHIE.js.map} +0 -0
  345. /package/dist/{chunk-7CW3BMPH.js.map → chunk-4X6CLF4F.js.map} +0 -0
  346. /package/dist/{chunk-QQBJC2FQ.js.map → chunk-5I7Q7RHW.js.map} +0 -0
  347. /package/dist/{chunk-X5HF2OFP.js.map → chunk-BWWU5T2D.js.map} +0 -0
  348. /package/dist/{chunk-KPULTUOK.js.map → chunk-CXQGMFI7.js.map} +0 -0
  349. /package/dist/{chunk-N5FSLVKO.js.map → chunk-DXU7NZPH.js.map} +0 -0
  350. /package/dist/{chunk-YAHRT6MB.js.map → chunk-EGZNOUMH.js.map} +0 -0
  351. /package/dist/{chunk-HGCRXJGP.js.map → chunk-F5NWRF32.js.map} +0 -0
  352. /package/dist/{chunk-3WIO7NBR.js.map → chunk-L4GMDSMB.js.map} +0 -0
  353. /package/dist/{chunk-47AVIIOT.js.map → chunk-L7FEZ7LU.js.map} +0 -0
  354. /package/dist/{chunk-AUHSTJJ3.js.map → chunk-NLXJMXVE.js.map} +0 -0
  355. /package/dist/{chunk-X3G37FXT.js.map → chunk-SYMNWNC3.js.map} +0 -0
  356. /package/dist/{chunk-DM4GSE26.js.map → chunk-TUNR4VUM.js.map} +0 -0
  357. /package/dist/{chunk-UINQOUZR.js.map → chunk-V7JVMG63.js.map} +0 -0
  358. /package/dist/{chunk-IK2L4EN3.js.map → chunk-XADEMW6B.js.map} +0 -0
  359. /package/dist/{chunk-FQ33BYFR.js.map → chunk-XEMLYWHK.js.map} +0 -0
  360. /package/dist/{chunk-ZGSER5TG.js.map → chunk-ZM44MGC5.js.map} +0 -0
  361. /package/dist/{config-34LHOGLM.js.map → config-2LASFFRD.js.map} +0 -0
  362. /package/dist/{config-3BBWD5AB.js.map → config-3WDIJPTG.js.map} +0 -0
  363. /package/dist/{config-3IVQJBNW.js.map → config-4QV4QYI5.js.map} +0 -0
  364. /package/dist/{config-4UDVSUQJ.js.map → config-54USUVSE.js.map} +0 -0
  365. /package/dist/{config-CMDBAPDH.js.map → config-5ZXN2T2H.js.map} +0 -0
  366. /package/dist/{config-CVZ2AGCO.js.map → config-A2GQYJDB.js.map} +0 -0
  367. /package/dist/{config-D3RLSPNF.js.map → config-BBOLI7VE.js.map} +0 -0
  368. /package/dist/{config-DG65OEG3.js.map → config-BIBFLUIR.js.map} +0 -0
  369. /package/dist/{config-EIHSP5DZ.js.map → config-CPYFOUQO.js.map} +0 -0
  370. /package/dist/{config-EO23EY62.js.map → config-DWSJL3NH.js.map} +0 -0
  371. /package/dist/{config-GCQK6NJY.js.map → config-E22XAGYN.js.map} +0 -0
  372. /package/dist/{config-GE4W4ZJC.js.map → config-EHE52ZTK.js.map} +0 -0
  373. /package/dist/{config-GHRUKEQ6.js.map → config-EX3ZJTZI.js.map} +0 -0
  374. /package/dist/{config-GVH27UPE.js.map → config-FRK7ZL37.js.map} +0 -0
  375. /package/dist/{config-HKRMKD76.js.map → config-HQXNFQZS.js.map} +0 -0
  376. /package/dist/{config-HXVYIXP5.js.map → config-HTXOOAOD.js.map} +0 -0
  377. /package/dist/{config-IDZMEW73.js.map → config-IPNWAJHH.js.map} +0 -0
  378. /package/dist/{config-IJJXGLBQ.js.map → config-J2C53GOT.js.map} +0 -0
  379. /package/dist/{config-IVY5EQQ2.js.map → config-K63RX6EU.js.map} +0 -0
  380. /package/dist/{config-KJOLGVB2.js.map → config-L7SBSH5L.js.map} +0 -0
  381. /package/dist/{config-KMVCVBYN.js.map → config-LEALEMKA.js.map} +0 -0
  382. /package/dist/{config-KYTRXAB2.js.map → config-M3Z47VYU.js.map} +0 -0
  383. /package/dist/{config-LHFFXVYI.js.map → config-MZM3IPFM.js.map} +0 -0
  384. /package/dist/{config-NV5WXP64.js.map → config-OJ2BPESH.js.map} +0 -0
  385. /package/dist/{config-OT2TQQCN.js.map → config-QO2XUME4.js.map} +0 -0
  386. /package/dist/{config-Q45Y46YT.js.map → config-QWQGOXQ5.js.map} +0 -0
  387. /package/dist/{config-QAA646XB.js.map → config-RI7IEZUF.js.map} +0 -0
  388. /package/dist/{config-QNMKWJ4M.js.map → config-SPW6NESU.js.map} +0 -0
  389. /package/dist/{config-QWCY3LBQ.js.map → config-T2IUIU5C.js.map} +0 -0
  390. /package/dist/{config-VM526IKB.js.map → config-UU27ALAA.js.map} +0 -0
  391. /package/dist/{config-WDAZFXYD.js.map → config-VKKZGC7V.js.map} +0 -0
  392. /package/dist/{config-ZFJYQZCH.js.map → config-W7EVPJNK.js.map} +0 -0
  393. /package/dist/{config-ZV6G2ZEC.js.map → config-WKQ3FGTZ.js.map} +0 -0
  394. /package/dist/{databricks_volume-7XOUYSTY.js.map → config-WVILHDFV.js.map} +0 -0
  395. /package/dist/{digitalocean-3CQ4CPPZ.js.map → config-XU6D5C7E.js.map} +0 -0
  396. /package/dist/{discord-BG7OSRJG.js.map → databricks_volume-ETRDJVVQ.js.map} +0 -0
  397. /package/dist/{disk-XVLBCVKE.js.map → digitalocean-QP72DR4J.js.map} +0 -0
  398. /package/dist/{dropbox-74GYLV3R.js.map → discord-BSN5RB3E.js.map} +0 -0
  399. /package/dist/{email-5IZ7OBQ4.js.map → disk-24NWTN2I.js.map} +0 -0
  400. /package/dist/{gcs-EMEYU2XT.js.map → dropbox-OSTZXSIE.js.map} +0 -0
  401. /package/dist/{gdocs-R67TDPON.js.map → email-4ZFPSWIN.js.map} +0 -0
  402. /package/dist/{gdrive-PRN2ALRK.js.map → gcs-PFWR6MIW.js.map} +0 -0
  403. /package/dist/{github-DV7E6OFV.js.map → gdocs-GPAZRQG5.js.map} +0 -0
  404. /package/dist/{github_ci-Q554V5PA.js.map → gdrive-XSX6A7B3.js.map} +0 -0
  405. /package/dist/{gmail-OLN2LT4O.js.map → github-EQ4NXUTA.js.map} +0 -0
  406. /package/dist/{gsheets-H4RYMQJ5.js.map → github_ci-QL5B2Q2N.js.map} +0 -0
  407. /package/dist/{gslides-YLCHKJOM.js.map → gmail-2TBT4CVH.js.map} +0 -0
  408. /package/dist/{hf_buckets-DTKXKKFF.js.map → gridfs-KZRZ6SIB.js.map} +0 -0
  409. /package/dist/{hf_datasets-55C4APKR.js.map → gsheets-N53WEXN2.js.map} +0 -0
  410. /package/dist/{hf_models-RO5JR36V.js.map → gslides-TATSARTH.js.map} +0 -0
  411. /package/dist/{hf_spaces-ZVZ3EDRX.js.map → hf_buckets-BK7NGJWS.js.map} +0 -0
  412. /package/dist/{langfuse-ACASJZ7O.js.map → hf_datasets-UQ5QGM4L.js.map} +0 -0
  413. /package/dist/{linear-IC37LZV7.js.map → hf_models-75LFCQCS.js.map} +0 -0
  414. /package/dist/{minio-HZ576XFQ.js.map → hf_spaces-6T2KB3UC.js.map} +0 -0
  415. /package/dist/{mongodb-JVR62OIO.js.map → langfuse-AMQCQWNE.js.map} +0 -0
  416. /package/dist/{notion-HKRPQMJS.js.map → linear-V3TXO6CV.js.map} +0 -0
  417. /package/dist/{oci-ZLVECXTW.js.map → minio-IZRZY4C5.js.map} +0 -0
  418. /package/dist/{postgres-P36Z2YN4.js.map → mongodb-VMKPQCPX.js.map} +0 -0
  419. /package/dist/{qingstor-YLP6K3L4.js.map → nextcloud-5RHQCGDO.js.map} +0 -0
  420. /package/dist/{r2-RPK25ANI.js.map → notion-6PPNTQFM.js.map} +0 -0
  421. /package/dist/{redis-V5ULXULL.js.map → oci-CKYBSFZJ.js.map} +0 -0
  422. /package/dist/{s3-4OIOCAAT.js.map → postgres-WIQBVL5M.js.map} +0 -0
  423. /package/dist/{scaleway-CCWCLUHB.js.map → qingstor-AP4IIPLY.js.map} +0 -0
  424. /package/dist/{seaweedfs-QSWKF2FN.js.map → r2-C4XGEWQY.js.map} +0 -0
  425. /package/dist/{slack-YPS7PII3.js.map → redis-6D55Q2WB.js.map} +0 -0
  426. /package/dist/{ssh-YFP3SMTJ.js.map → s3-XQBI2CXN.js.map} +0 -0
  427. /package/dist/{supabase-6CFTOKGZ.js.map → scaleway-SEZJVURB.js.map} +0 -0
  428. /package/dist/{tencent-IWZZOSQ4.js.map → seaweedfs-3XYIAFU2.js.map} +0 -0
  429. /package/dist/{trello-XYKWZD6P.js.map → slack-ZHXDJQY4.js.map} +0 -0
  430. /package/dist/{wasabi-6Z4DC5S5.js.map → ssh-X2MO7JOV.js.map} +0 -0
@@ -0,0 +1,754 @@
1
+ import {
2
+ loadOptionalPeer
3
+ } from "./chunk-OQKNDS66.js";
4
+
5
+ // src/accessor/hf.ts
6
+ import { Accessor, ResourceName } from "@struktoai/mirage-core";
7
+ var HF_RESOURCES = [
8
+ ResourceName.HF_BUCKETS,
9
+ ResourceName.HF_DATASETS,
10
+ ResourceName.HF_MODELS,
11
+ ResourceName.HF_SPACES
12
+ ];
13
+ var HfAccessor = class extends Accessor {
14
+ constructor(config) {
15
+ super();
16
+ this.config = config;
17
+ }
18
+ config;
19
+ operatorPromise = null;
20
+ get repoId() {
21
+ const config = this.config;
22
+ return config.repoId ?? config.bucket ?? "";
23
+ }
24
+ operatorOptions() {
25
+ const options = {
26
+ repo_type: this.repoType,
27
+ repo_id: this.repoId
28
+ };
29
+ if (this.config.token !== void 0 && this.config.token !== "") {
30
+ options.token = this.config.token;
31
+ }
32
+ if (this.config.endpoint !== void 0 && this.config.endpoint !== "") {
33
+ options.endpoint = this.config.endpoint;
34
+ }
35
+ const keyPrefix = this.config.keyPrefix;
36
+ if (keyPrefix !== void 0 && keyPrefix !== "") {
37
+ options.root = `/${stripSlashes(keyPrefix)}/`;
38
+ }
39
+ const revision = this.config.revision;
40
+ if (revision !== void 0 && revision !== "") {
41
+ options.revision = revision;
42
+ }
43
+ return options;
44
+ }
45
+ operator() {
46
+ this.operatorPromise ??= this.createOperator();
47
+ return this.operatorPromise;
48
+ }
49
+ async createOperator() {
50
+ const mod = await loadOptionalPeer(
51
+ () => import("opendal"),
52
+ { feature: "HuggingFace resources", packageName: "opendal" }
53
+ );
54
+ return new mod.Operator("hf", this.operatorOptions());
55
+ }
56
+ };
57
+ function stripSlashes(value) {
58
+ let start = 0;
59
+ let end = value.length;
60
+ while (start < end && value[start] === "/") start += 1;
61
+ while (end > start && value[end - 1] === "/") end -= 1;
62
+ return value.slice(start, end);
63
+ }
64
+ var HfBucketsAccessor = class extends HfAccessor {
65
+ repoType = "bucket";
66
+ resourceName = ResourceName.HF_BUCKETS;
67
+ get bucketUri() {
68
+ return `hf://buckets/${this.repoId}`;
69
+ }
70
+ };
71
+ var HfDatasetsAccessor = class extends HfAccessor {
72
+ repoType = "dataset";
73
+ resourceName = ResourceName.HF_DATASETS;
74
+ get bucketUri() {
75
+ return `hf://datasets/${this.repoId}`;
76
+ }
77
+ };
78
+ var HfModelsAccessor = class extends HfAccessor {
79
+ repoType = "model";
80
+ resourceName = ResourceName.HF_MODELS;
81
+ get bucketUri() {
82
+ return `hf://models/${this.repoId}`;
83
+ }
84
+ };
85
+ var HfSpacesAccessor = class extends HfAccessor {
86
+ repoType = "space";
87
+ resourceName = ResourceName.HF_SPACES;
88
+ get bucketUri() {
89
+ return `hf://spaces/${this.repoId}`;
90
+ }
91
+ };
92
+
93
+ // src/commands/builtin/hf/index.ts
94
+ import {
95
+ makeFiletypeCommands,
96
+ makeGenericCommands
97
+ } from "@struktoai/mirage-core";
98
+
99
+ // src/core/hf/read.ts
100
+ import { record } from "@struktoai/mirage-core";
101
+
102
+ // src/core/hf/util.ts
103
+ import { mountPrefixOf } from "@struktoai/mirage-core";
104
+ function rawPathOf(path) {
105
+ const prefix = mountPrefixOf(path.virtual, path.resourcePath);
106
+ return prefix !== "" && path.virtual.startsWith(prefix) ? path.virtual.slice(prefix.length) || "/" : path.virtual;
107
+ }
108
+ function hfKey(rawPath) {
109
+ let start = 0;
110
+ while (start < rawPath.length && rawPath[start] === "/") start += 1;
111
+ return rawPath.slice(start);
112
+ }
113
+ function isNotFound(err) {
114
+ return err instanceof Error && err.message.startsWith("NotFound");
115
+ }
116
+
117
+ // src/core/hf/read.ts
118
+ import { enoent } from "@struktoai/mirage-core";
119
+ async function read(accessor, path, _index, options = {}) {
120
+ const virtual = path.virtual;
121
+ const rawPath = rawPathOf(path);
122
+ const key = hfKey(rawPath);
123
+ const op = await accessor.operator();
124
+ const readOptions = {};
125
+ if (options.offset !== void 0 && options.offset > 0) {
126
+ readOptions.offset = BigInt(options.offset);
127
+ }
128
+ if (options.size !== void 0) {
129
+ readOptions.offset ??= 0n;
130
+ readOptions.size = BigInt(options.size);
131
+ }
132
+ const startMs = performance.now();
133
+ let data;
134
+ try {
135
+ data = readOptions.offset !== void 0 || readOptions.size !== void 0 ? await op.read(key, readOptions) : await op.read(key);
136
+ } catch (err) {
137
+ if (isNotFound(err)) throw enoent(path);
138
+ throw err;
139
+ }
140
+ const bytes = new Uint8Array(data);
141
+ record("read", virtual, accessor.resourceName, bytes.byteLength, startMs);
142
+ return bytes;
143
+ }
144
+
145
+ // src/core/hf/stat.ts
146
+ import {
147
+ FileStat,
148
+ FileType,
149
+ guessType,
150
+ mountPrefixOf as mountPrefixOf2,
151
+ stripSlash
152
+ } from "@struktoai/mirage-core";
153
+ import { enoent as enoent2 } from "@struktoai/mirage-core";
154
+ async function stat(accessor, path, index) {
155
+ const prefix = mountPrefixOf2(path.virtual, path.resourcePath);
156
+ const rawPath = rawPathOf(path);
157
+ const stripped = stripSlash(rawPath);
158
+ if (stripped === "") {
159
+ return new FileStat({ name: "/", type: FileType.DIRECTORY });
160
+ }
161
+ if (index !== void 0) {
162
+ const virtualKey = prefix !== "" ? `${prefix}/${stripped}` : `/${stripped}`;
163
+ const lookup = await index.get(virtualKey);
164
+ if (lookup.entry !== void 0 && lookup.entry !== null) {
165
+ const entry = lookup.entry;
166
+ if (entry.resourceType === "folder") {
167
+ return new FileStat({ name: entry.name, type: FileType.DIRECTORY });
168
+ }
169
+ return new FileStat({
170
+ name: entry.name,
171
+ size: entry.size ?? null,
172
+ type: guessType(entry.name)
173
+ });
174
+ }
175
+ const parent = virtualKey.slice(0, virtualKey.lastIndexOf("/")) || "/";
176
+ const parentListing = await index.listDir(parent);
177
+ if (parentListing.entries !== void 0 && parentListing.entries !== null) {
178
+ throw enoent2(path);
179
+ }
180
+ }
181
+ const op = await accessor.operator();
182
+ let md = null;
183
+ try {
184
+ md = await op.stat(stripped);
185
+ } catch (err) {
186
+ if (!isNotFound(err)) throw err;
187
+ }
188
+ if (md !== null && !md.isDirectory()) {
189
+ const etag = md.etag;
190
+ return new FileStat({
191
+ name: stripped.split("/").pop() ?? stripped,
192
+ size: md.contentLength !== null ? Number(md.contentLength) : null,
193
+ modified: md.lastModified,
194
+ type: guessType(rawPath),
195
+ fingerprint: etag,
196
+ extra: etag !== null && etag !== "" ? { etag } : {}
197
+ });
198
+ }
199
+ try {
200
+ const children = await op.list(`${stripped}/`);
201
+ if (children.length > 0) {
202
+ return new FileStat({
203
+ name: stripped.split("/").pop() ?? "/",
204
+ type: FileType.DIRECTORY
205
+ });
206
+ }
207
+ } catch (err) {
208
+ if (!isNotFound(err)) throw err;
209
+ }
210
+ throw enoent2(path);
211
+ }
212
+
213
+ // src/commands/builtin/hf/du.ts
214
+ import {
215
+ command,
216
+ duGeneric,
217
+ resolveGlobOf,
218
+ specOf
219
+ } from "@struktoai/mirage-core";
220
+
221
+ // src/core/hf/du.ts
222
+ import { FileType as FileType2, stripSlash as stripSlash2 } from "@struktoai/mirage-core";
223
+ async function statOrNull(accessor, path) {
224
+ try {
225
+ return await stat(accessor, path);
226
+ } catch (err) {
227
+ if (err?.code === "ENOENT") return null;
228
+ throw err;
229
+ }
230
+ }
231
+ async function du(accessor, path) {
232
+ const info = await statOrNull(accessor, path);
233
+ if (info !== null && info.type !== FileType2.DIRECTORY) return info.size ?? 0;
234
+ const target = rawPathOf(path);
235
+ const pfx = stripSlash2(target);
236
+ const scanPath = pfx !== "" ? `${pfx}/` : "/";
237
+ const op = await accessor.operator();
238
+ let total = 0;
239
+ try {
240
+ for (const entry of await op.list(scanPath, { recursive: true })) {
241
+ if (entry.path().endsWith("/")) continue;
242
+ const length = entry.metadata().contentLength;
243
+ total += length !== null ? Number(length) : 0;
244
+ }
245
+ } catch (err) {
246
+ if (isNotFound(err)) return 0;
247
+ throw err;
248
+ }
249
+ return total;
250
+ }
251
+ async function duAll(accessor, path) {
252
+ const info = await statOrNull(accessor, path);
253
+ if (info !== null && info.type !== FileType2.DIRECTORY) return [[], info.size ?? 0];
254
+ const target = rawPathOf(path);
255
+ const pfx = stripSlash2(target);
256
+ const scanPath = pfx !== "" ? `${pfx}/` : "/";
257
+ const op = await accessor.operator();
258
+ const results = [];
259
+ let total = 0;
260
+ try {
261
+ for (const entry of await op.list(scanPath, { recursive: true })) {
262
+ const rel = entry.path();
263
+ if (rel === "" || rel.endsWith("/")) continue;
264
+ const length = entry.metadata().contentLength;
265
+ const size = length !== null ? Number(length) : 0;
266
+ results.push([`/${lstrip(rel)}`, size]);
267
+ total += size;
268
+ }
269
+ } catch (err) {
270
+ if (!isNotFound(err)) throw err;
271
+ }
272
+ results.sort((a, b) => a[0] < b[0] ? -1 : a[0] > b[0] ? 1 : 0);
273
+ return [results, total];
274
+ }
275
+ function lstrip(value) {
276
+ let start = 0;
277
+ while (start < value.length && value[start] === "/") start += 1;
278
+ return value.slice(start);
279
+ }
280
+
281
+ // src/core/hf/constants.ts
282
+ var SCOPE_ERROR = 1e4;
283
+ var DEFAULT_CHUNK_SIZE = 8192;
284
+
285
+ // src/core/hf/write.ts
286
+ import { invalidateAfterWrite } from "@struktoai/mirage-core";
287
+ import { invalidateAncestors } from "@struktoai/mirage-core";
288
+ import { record as record2 } from "@struktoai/mirage-core";
289
+ import { enoent as enoent3 } from "@struktoai/mirage-core";
290
+ async function write(accessor, path, data, _index) {
291
+ const rawPath = rawPathOf(path);
292
+ const key = hfKey(rawPath);
293
+ const op = await accessor.operator();
294
+ const startMs = performance.now();
295
+ try {
296
+ await op.write(key, Buffer.from(data));
297
+ } catch (err) {
298
+ if (isNotFound(err)) throw enoent3(path);
299
+ throw err;
300
+ }
301
+ record2("write", path.virtual, accessor.resourceName, data.byteLength, startMs);
302
+ await invalidateAfterWrite(path);
303
+ await invalidateAncestors(path);
304
+ }
305
+
306
+ // src/core/hf/create.ts
307
+ async function create(accessor, path, index) {
308
+ await write(accessor, path, new Uint8Array(), index);
309
+ }
310
+
311
+ // src/core/hf/mkdir.ts
312
+ async function mkdir(_accessor, _path, _index) {
313
+ }
314
+
315
+ // src/core/hf/unlink.ts
316
+ import { invalidateAfterUnlink } from "@struktoai/mirage-core";
317
+ import { FileType as FileType3, record as record3 } from "@struktoai/mirage-core";
318
+ import { invalidateAncestors as invalidateAncestors2 } from "@struktoai/mirage-core";
319
+ import { enoent as enoent4 } from "@struktoai/mirage-core";
320
+ async function unlink(accessor, path, index) {
321
+ const fileStat = await stat(accessor, path, index);
322
+ const rawPath = rawPathOf(path);
323
+ if (fileStat.type === FileType3.DIRECTORY) {
324
+ const e = new Error(`EISDIR: ${rawPath}`);
325
+ e.code = "EISDIR";
326
+ throw e;
327
+ }
328
+ const key = hfKey(rawPath);
329
+ const op = await accessor.operator();
330
+ const startMs = performance.now();
331
+ try {
332
+ await op.delete(key);
333
+ } catch (err) {
334
+ if (isNotFound(err)) throw enoent4(path);
335
+ throw err;
336
+ }
337
+ record3("unlink", path.virtual, accessor.resourceName, 0, startMs);
338
+ await invalidateAfterUnlink(path);
339
+ await invalidateAncestors2(path);
340
+ }
341
+
342
+ // src/core/hf/readdir.ts
343
+ import {
344
+ IndexEntry,
345
+ ResourceType,
346
+ mountPrefixOf as mountPrefixOf3,
347
+ rstripSlash,
348
+ stripSlash as stripSlash3
349
+ } from "@struktoai/mirage-core";
350
+ import { enoent as enoent5 } from "@struktoai/mirage-core";
351
+ async function readdir(accessor, path, index) {
352
+ const prefix = mountPrefixOf3(path.virtual, path.resourcePath);
353
+ let target = path.pattern !== null ? path.directory : path.virtual;
354
+ if (prefix !== "" && target.startsWith(prefix)) {
355
+ const rest = target.slice(prefix.length);
356
+ if (prefix.endsWith("/") || rest === "" || rest.startsWith("/")) {
357
+ target = rest || "/";
358
+ }
359
+ }
360
+ const virtualKey = rstripSlash(prefix !== "" ? `${prefix}${target}` : target) || "/";
361
+ if (index !== void 0) {
362
+ const listing = await index.listDir(virtualKey);
363
+ if (listing.entries !== void 0 && listing.entries !== null) {
364
+ return listing.entries;
365
+ }
366
+ }
367
+ const strippedTarget = stripSlash3(target);
368
+ const listPath = strippedTarget !== "" ? `${strippedTarget}/` : "/";
369
+ const op = await accessor.operator();
370
+ const names = [];
371
+ const dirKeys = /* @__PURE__ */ new Set();
372
+ const sizes = /* @__PURE__ */ new Map();
373
+ let entries;
374
+ try {
375
+ entries = await op.list(listPath);
376
+ } catch (err) {
377
+ if (isNotFound(err)) throw enoent5(path);
378
+ throw err;
379
+ }
380
+ for (const entry of entries) {
381
+ const relative = entry.path();
382
+ if (relative === "" || relative === listPath) continue;
383
+ const isDir = relative.endsWith("/");
384
+ const base = `/${rstripSlash(relative)}`;
385
+ names.push(base);
386
+ if (isDir) {
387
+ dirKeys.add(base);
388
+ } else {
389
+ const meta = entry.metadata();
390
+ const length = meta.contentLength;
391
+ sizes.set(base, length !== null ? Number(length) : null);
392
+ }
393
+ }
394
+ names.sort();
395
+ if (names.length > SCOPE_ERROR) {
396
+ console.warn(
397
+ `hf readdir: ${virtualKey} returned ${String(names.length)} entries (limit ${String(SCOPE_ERROR)})`
398
+ );
399
+ }
400
+ const virtualEntries = names.map((e) => prefix !== "" ? `${prefix}${e}` : e).sort();
401
+ if (index !== void 0) {
402
+ const indexEntries = names.map((e) => {
403
+ const name = e.split("/").pop() ?? e;
404
+ if (dirKeys.has(e)) {
405
+ return [name, new IndexEntry({ id: e, name, resourceType: ResourceType.FOLDER })];
406
+ }
407
+ return [
408
+ name,
409
+ new IndexEntry({
410
+ id: e,
411
+ name,
412
+ resourceType: ResourceType.FILE,
413
+ size: sizes.get(e) ?? null
414
+ })
415
+ ];
416
+ });
417
+ await index.setDir(virtualKey, indexEntries);
418
+ }
419
+ return virtualEntries;
420
+ }
421
+
422
+ // src/core/hf/rm.ts
423
+ import { invalidateAfterUnlink as invalidateAfterUnlink2, record as record4, stripSlash as stripSlash4 } from "@struktoai/mirage-core";
424
+ import { invalidateAncestors as invalidateAncestors3 } from "@struktoai/mirage-core";
425
+ async function rmR(accessor, path) {
426
+ const stripped = stripSlash4(rawPathOf(path));
427
+ const scanPath = stripped !== "" ? `${stripped}/` : "/";
428
+ const op = await accessor.operator();
429
+ const startMs = performance.now();
430
+ const entries = await op.list(scanPath, { recursive: true });
431
+ for (const entry of entries) {
432
+ const key = entry.path();
433
+ if (key.endsWith("/")) continue;
434
+ await op.delete(key);
435
+ }
436
+ record4("rm_r", path.virtual, accessor.resourceName, 0, startMs);
437
+ await invalidateAfterUnlink2(path);
438
+ await invalidateAncestors3(path);
439
+ }
440
+
441
+ // src/core/hf/stream.ts
442
+ import { recordStream } from "@struktoai/mirage-core";
443
+ import { enoent as enoent6 } from "@struktoai/mirage-core";
444
+ async function rangeRead(accessor, path, start, end) {
445
+ return read(accessor, path, void 0, { offset: start, size: end - start });
446
+ }
447
+ async function* stream(accessor, path, _index, chunkSize = DEFAULT_CHUNK_SIZE) {
448
+ const virtual = path.virtual;
449
+ const rawPath = rawPathOf(path);
450
+ const key = hfKey(rawPath);
451
+ const op = await accessor.operator();
452
+ const rec = recordStream("read", virtual, accessor.resourceName);
453
+ let reader;
454
+ try {
455
+ reader = await op.reader(key);
456
+ } catch (err) {
457
+ if (isNotFound(err)) throw enoent6(path);
458
+ throw err;
459
+ }
460
+ const buf = Buffer.alloc(chunkSize);
461
+ for (; ; ) {
462
+ const n = Number(await reader.read(buf));
463
+ if (n <= 0) break;
464
+ const chunk = new Uint8Array(buf.subarray(0, n));
465
+ if (rec !== null) rec.bytes += chunk.byteLength;
466
+ yield chunk;
467
+ }
468
+ }
469
+
470
+ // src/core/hf/exists.ts
471
+ async function exists(accessor, path) {
472
+ try {
473
+ await stat(accessor, path);
474
+ return true;
475
+ } catch (err) {
476
+ if (err?.code === "ENOENT") return false;
477
+ throw err;
478
+ }
479
+ }
480
+
481
+ // src/commands/builtin/hf/io.ts
482
+ var HF_IO = {
483
+ readdir,
484
+ readBytes: read,
485
+ readStream: stream,
486
+ stat,
487
+ isMounted: () => true,
488
+ local: false,
489
+ maxGlobMatches: SCOPE_ERROR,
490
+ write,
491
+ exists,
492
+ mkdir: (accessor, path) => mkdir(accessor, path),
493
+ unlink,
494
+ rmR,
495
+ create
496
+ };
497
+
498
+ // src/commands/builtin/hf/du.ts
499
+ var resolveGlob = resolveGlobOf(HF_IO);
500
+ async function duCommand(accessor, paths, _texts, opts) {
501
+ const resolved = paths.length > 0 ? await resolveGlob(accessor, paths, opts.index ?? void 0) : [];
502
+ return duGeneric(
503
+ resolved,
504
+ opts,
505
+ (p) => du(accessor, p),
506
+ (p) => duAll(accessor, p)
507
+ );
508
+ }
509
+ var HF_DU = command({
510
+ name: "du",
511
+ resource: [...HF_RESOURCES],
512
+ spec: specOf("du"),
513
+ fn: duCommand
514
+ });
515
+
516
+ // src/commands/builtin/hf/find.ts
517
+ import { command as command2, findGeneric, metadataProvision, specOf as specOf2 } from "@struktoai/mirage-core";
518
+
519
+ // src/core/hf/find.ts
520
+ import {
521
+ buildTree,
522
+ emitStartPath,
523
+ keep,
524
+ rstripSlash as rstripSlash2,
525
+ startBasename,
526
+ stripSlash as stripSlash5
527
+ } from "@struktoai/mirage-core";
528
+ function matchesFilters(entryPath, kind, size, isEmpty, baseDepth, options, tree) {
529
+ const entryName = entryPath.split("/").pop() ?? "";
530
+ const depth = (entryPath.match(/\//g) ?? []).length - baseDepth;
531
+ if (options.maxDepth !== null && options.maxDepth !== void 0 && depth > options.maxDepth) {
532
+ return false;
533
+ }
534
+ if (!keep({ key: entryPath, name: entryName, kind, depth, isEmpty }, tree, options.minDepth)) {
535
+ return false;
536
+ }
537
+ if (options.minSize != null || options.maxSize != null) {
538
+ const effective = kind === "f" ? size : 0;
539
+ if (options.minSize != null && effective < options.minSize) {
540
+ return false;
541
+ }
542
+ if (options.maxSize != null && effective > options.maxSize) {
543
+ return false;
544
+ }
545
+ }
546
+ return true;
547
+ }
548
+ async function find(accessor, path, options = {}) {
549
+ const target = rawPathOf(path);
550
+ const pfx = stripSlash5(target);
551
+ const scanPath = pfx !== "" ? `${pfx}/` : "/";
552
+ const base = pfx !== "" ? `/${pfx}` : "/";
553
+ const baseDepth = base === "/" ? 0 : (base.match(/\//g) ?? []).length;
554
+ const startName = startBasename(path.virtual);
555
+ const empty = options.empty === true;
556
+ const op = await accessor.operator();
557
+ const results = [];
558
+ const seenDirs = /* @__PURE__ */ new Set();
559
+ let sawDescendant = false;
560
+ let dirExists = false;
561
+ const tree = options.tree ?? buildTree({
562
+ name: options.name,
563
+ iname: options.iname,
564
+ pathPattern: options.pathPattern,
565
+ type: options.type,
566
+ nameExclude: options.nameExclude,
567
+ orNames: options.orNames
568
+ });
569
+ let entries;
570
+ try {
571
+ entries = await op.list(scanPath, { recursive: true });
572
+ } catch (err) {
573
+ if (isNotFound(err)) return [];
574
+ throw err;
575
+ }
576
+ for (const entry of entries) {
577
+ const rel = entry.path();
578
+ if (rel === "") continue;
579
+ const meta = entry.metadata();
580
+ const isDir = rel.endsWith("/") || meta.isDirectory();
581
+ const entryPath = `/${stripSlash5(rel)}`;
582
+ if (entryPath === base) {
583
+ dirExists = true;
584
+ continue;
585
+ }
586
+ sawDescendant = true;
587
+ const kind = isDir ? "d" : "f";
588
+ const length = meta.contentLength;
589
+ const size = length !== null ? Number(length) : 0;
590
+ const fileEntries = [[entryPath, kind]];
591
+ if (!isDir) {
592
+ let parent = rstripSlash2(entryPath.slice(0, entryPath.lastIndexOf("/"))) || "/";
593
+ while (parent !== "" && parent !== base && parent !== "/") {
594
+ if (!seenDirs.has(parent)) {
595
+ seenDirs.add(parent);
596
+ fileEntries.push([parent, "d"]);
597
+ }
598
+ parent = parent.slice(0, parent.lastIndexOf("/")) || "/";
599
+ }
600
+ }
601
+ for (const [ep, k] of fileEntries) {
602
+ const isEmpty = !empty ? null : k === "d" ? false : size === 0;
603
+ if (matchesFilters(ep, k, size, isEmpty, baseDepth, options, tree)) {
604
+ results.push(ep);
605
+ }
606
+ }
607
+ }
608
+ if (sawDescendant || dirExists) {
609
+ emitStartPath(results, base, startName, {
610
+ kind: "d",
611
+ isEmpty: !sawDescendant,
612
+ exists: true,
613
+ tree,
614
+ maxDepth: options.maxDepth,
615
+ minDepth: options.minDepth,
616
+ minSize: options.minSize,
617
+ maxSize: options.maxSize
618
+ });
619
+ }
620
+ return [...new Set(results)].sort();
621
+ }
622
+
623
+ // src/commands/builtin/hf/find.ts
624
+ var HF_FIND = command2({
625
+ name: "find",
626
+ resource: [...HF_RESOURCES],
627
+ spec: specOf2("find"),
628
+ provision: metadataProvision,
629
+ fn: (accessor, paths, texts, opts) => findGeneric(paths, texts, opts, (root, options) => find(accessor, root, options))
630
+ });
631
+
632
+ // src/commands/builtin/hf/index.ts
633
+ var HF_OVERRIDES = /* @__PURE__ */ new Set(["cp", "mv", "du", "find"]);
634
+ var HF_COMMANDS = [
635
+ ...HF_RESOURCES.flatMap(
636
+ (resource) => makeFiletypeCommands({
637
+ resource,
638
+ readBytes: read,
639
+ statEntry: stat
640
+ })
641
+ ),
642
+ ...HF_RESOURCES.flatMap(
643
+ (resource) => makeGenericCommands(resource, HF_IO, {
644
+ overrides: HF_OVERRIDES
645
+ })
646
+ ),
647
+ ...HF_DU,
648
+ ...HF_FIND
649
+ ];
650
+
651
+ // src/ops/hf/index.ts
652
+ import { makeGenericOps } from "@struktoai/mirage-core";
653
+ var HF_OPS = makeGenericOps(HF_RESOURCES, HF_IO, {
654
+ filetypeRead: [".feather", ".hdf5", ".parquet"]
655
+ });
656
+
657
+ // src/resource/hf_buckets/base.ts
658
+ import {
659
+ BaseResource,
660
+ PathSpec,
661
+ makeResolveGlob,
662
+ mountKey,
663
+ mountPrefixOf as mountPrefixOf4
664
+ } from "@struktoai/mirage-core";
665
+ var globCore = makeResolveGlob(readdir, SCOPE_ERROR);
666
+ var HfResource = class extends BaseResource {
667
+ cachesReads = true;
668
+ supportsSnapshot = true;
669
+ opsMap = {
670
+ read_bytes: read,
671
+ readdir,
672
+ stat,
673
+ read_stream: stream,
674
+ range_read: rangeRead,
675
+ du_total: du,
676
+ du_all: duAll,
677
+ exists,
678
+ find_flat: find,
679
+ write,
680
+ create,
681
+ unlink,
682
+ mkdir
683
+ };
684
+ open() {
685
+ return Promise.resolve();
686
+ }
687
+ close() {
688
+ return Promise.resolve();
689
+ }
690
+ commands() {
691
+ return HF_COMMANDS;
692
+ }
693
+ ops() {
694
+ return HF_OPS;
695
+ }
696
+ streamPath(p) {
697
+ return stream(this.accessor, p);
698
+ }
699
+ readFile(p) {
700
+ return read(this.accessor, p, this.index);
701
+ }
702
+ writeFile(p, data) {
703
+ return write(this.accessor, p, data, this.index);
704
+ }
705
+ readdir(p) {
706
+ return readdir(this.accessor, p, this.index);
707
+ }
708
+ stat(p) {
709
+ return stat(this.accessor, p, this.index);
710
+ }
711
+ exists(p) {
712
+ return exists(this.accessor, p);
713
+ }
714
+ mkdir(p) {
715
+ return mkdir(this.accessor, p);
716
+ }
717
+ unlink(p) {
718
+ return unlink(this.accessor, p, this.index);
719
+ }
720
+ du(p) {
721
+ return du(this.accessor, p);
722
+ }
723
+ find(p, options = {}) {
724
+ return find(this.accessor, p, options);
725
+ }
726
+ glob(paths, prefix = "") {
727
+ const effective = prefix ? paths.map(
728
+ (p) => mountPrefixOf4(p.virtual, p.resourcePath) ? p : new PathSpec({
729
+ virtual: p.virtual,
730
+ directory: p.directory,
731
+ ...p.pattern !== null ? { pattern: p.pattern } : {},
732
+ resolved: p.resolved,
733
+ resourcePath: mountKey(p.virtual, prefix)
734
+ })
735
+ ) : paths;
736
+ return globCore(this.accessor, effective, this.index);
737
+ }
738
+ loadState(_state) {
739
+ return Promise.resolve();
740
+ }
741
+ };
742
+
743
+ export {
744
+ HF_RESOURCES,
745
+ HfAccessor,
746
+ HfBucketsAccessor,
747
+ HfDatasetsAccessor,
748
+ HfModelsAccessor,
749
+ HfSpacesAccessor,
750
+ HF_COMMANDS,
751
+ HF_OPS,
752
+ HfResource
753
+ };
754
+ //# sourceMappingURL=chunk-HEDE2377.js.map