@struktoai/mirage-node 0.0.4 → 0.0.5-alpha.1

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 (447) hide show
  1. package/README.md +2 -1
  2. package/dist/aliyun-S62BR3TB.js +11 -0
  3. package/dist/append.lua +17 -0
  4. package/dist/backblaze-4EKSW63F.js +11 -0
  5. package/dist/box-ZPLZAGMK.js +8 -0
  6. package/dist/ceph-ALKLD3MO.js +11 -0
  7. package/dist/{chunk-VLRSOWHP.js → chunk-2A4YGVBM.js} +5 -14
  8. package/dist/chunk-2A4YGVBM.js.map +1 -0
  9. package/dist/chunk-2HCYLVGY.js +28 -0
  10. package/dist/chunk-2HCYLVGY.js.map +1 -0
  11. package/dist/chunk-2VPZAH5Q.js +20 -0
  12. package/dist/chunk-2VPZAH5Q.js.map +1 -0
  13. package/dist/{chunk-HCU3B6FW.js → chunk-3JZQ6VSZ.js} +5 -4
  14. package/dist/chunk-3JZQ6VSZ.js.map +1 -0
  15. package/dist/chunk-4IF4TGAI.js +11 -0
  16. package/dist/chunk-4IF4TGAI.js.map +1 -0
  17. package/dist/{chunk-L7FEZ7LU.js → chunk-5H6KNEPP.js} +4 -5
  18. package/dist/{chunk-L7FEZ7LU.js.map → chunk-5H6KNEPP.js.map} +1 -1
  19. package/dist/{chunk-25W4XQJZ.js → chunk-5K2MWDCE.js} +4 -5
  20. package/dist/{chunk-25W4XQJZ.js.map → chunk-5K2MWDCE.js.map} +1 -1
  21. package/dist/{chunk-L4GMDSMB.js → chunk-6SVXWRKX.js} +4 -5
  22. package/dist/{chunk-L4GMDSMB.js.map → chunk-6SVXWRKX.js.map} +1 -1
  23. package/dist/{chunk-H62XQZUM.js → chunk-6VOIUGAD.js} +22 -10
  24. package/dist/chunk-6VOIUGAD.js.map +1 -0
  25. package/dist/{chunk-SI4GMRXD.js → chunk-7JYHFXXC.js} +4 -8
  26. package/dist/chunk-7JYHFXXC.js.map +1 -0
  27. package/dist/chunk-7VQQFWV6.js +20 -0
  28. package/dist/chunk-7VQQFWV6.js.map +1 -0
  29. package/dist/chunk-7ZP6TPHX.js +87 -0
  30. package/dist/chunk-7ZP6TPHX.js.map +1 -0
  31. package/dist/{chunk-HWQPEBID.js → chunk-ADEXNSYU.js} +6 -12
  32. package/dist/chunk-ADEXNSYU.js.map +1 -0
  33. package/dist/chunk-AQSYAXL4.js +16 -0
  34. package/dist/chunk-AQSYAXL4.js.map +1 -0
  35. package/dist/{chunk-NJ42VNXG.js → chunk-ATLXMNKD.js} +8 -3
  36. package/dist/chunk-ATLXMNKD.js.map +1 -0
  37. package/dist/{chunk-CB76WPUS.js → chunk-BYCUGFRF.js} +5 -4
  38. package/dist/chunk-BYCUGFRF.js.map +1 -0
  39. package/dist/{chunk-4M73WHIE.js → chunk-BZTVYOES.js} +3 -3
  40. package/dist/{chunk-CQCTCW4S.js → chunk-CRC4YWXB.js} +28 -9
  41. package/dist/chunk-CRC4YWXB.js.map +1 -0
  42. package/dist/{chunk-C7TNKIK5.js → chunk-CTGXJHO5.js} +1 -1
  43. package/dist/chunk-CTGXJHO5.js.map +1 -0
  44. package/dist/{chunk-HSD24IP2.js → chunk-DCDBIXVZ.js} +7 -2
  45. package/dist/chunk-DCDBIXVZ.js.map +1 -0
  46. package/dist/{chunk-HEDE2377.js → chunk-DDAFNROK.js} +318 -322
  47. package/dist/chunk-DDAFNROK.js.map +1 -0
  48. package/dist/chunk-DQIEWEAW.js +85 -0
  49. package/dist/chunk-DQIEWEAW.js.map +1 -0
  50. package/dist/{chunk-2ERLWAGG.js → chunk-EBI4IHDC.js} +20 -11
  51. package/dist/chunk-EBI4IHDC.js.map +1 -0
  52. package/dist/{chunk-RHUEV4I7.js → chunk-EIUTZ6N7.js} +10 -24
  53. package/dist/chunk-EIUTZ6N7.js.map +1 -0
  54. package/dist/{chunk-IUXXZHY3.js → chunk-EJZG5VUF.js} +24 -12
  55. package/dist/chunk-EJZG5VUF.js.map +1 -0
  56. package/dist/{chunk-BWWU5T2D.js → chunk-ENW5BVYN.js} +3 -3
  57. package/dist/{chunk-F5NWRF32.js → chunk-ETIAW4YD.js} +3 -3
  58. package/dist/chunk-EUPXAYPB.js +20 -0
  59. package/dist/chunk-EUPXAYPB.js.map +1 -0
  60. package/dist/{chunk-EGZNOUMH.js → chunk-FA6YNU75.js} +4 -5
  61. package/dist/{chunk-EGZNOUMH.js.map → chunk-FA6YNU75.js.map} +1 -1
  62. package/dist/{chunk-XUUSWR4U.js → chunk-FFH6R5VQ.js} +7 -2
  63. package/dist/{chunk-XUUSWR4U.js.map → chunk-FFH6R5VQ.js.map} +1 -1
  64. package/dist/{chunk-JEBH5APX.js → chunk-GE6H2COM.js} +5 -13
  65. package/dist/chunk-GE6H2COM.js.map +1 -0
  66. package/dist/{chunk-TUNR4VUM.js → chunk-GMMQ3ZK4.js} +3 -3
  67. package/dist/{chunk-SAOQW6ZJ.js → chunk-GSGE3M5P.js} +5 -13
  68. package/dist/chunk-GSGE3M5P.js.map +1 -0
  69. package/dist/{chunk-FRGTDZQT.js → chunk-H64SB6VO.js} +19 -5
  70. package/dist/chunk-H64SB6VO.js.map +1 -0
  71. package/dist/{chunk-DXU7NZPH.js → chunk-HCRYAFBI.js} +3 -3
  72. package/dist/{chunk-OSVZKYXS.js → chunk-HOPUP6LA.js} +192 -156
  73. package/dist/chunk-HOPUP6LA.js.map +1 -0
  74. package/dist/chunk-HS24BL6W.js +160 -0
  75. package/dist/chunk-HS24BL6W.js.map +1 -0
  76. package/dist/chunk-HVYVG5KQ.js +16 -0
  77. package/dist/chunk-HVYVG5KQ.js.map +1 -0
  78. package/dist/{chunk-XEMLYWHK.js → chunk-I7CPLZNW.js} +4 -5
  79. package/dist/{chunk-XEMLYWHK.js.map → chunk-I7CPLZNW.js.map} +1 -1
  80. package/dist/{chunk-AULFV3KY.js → chunk-IFUCGI4I.js} +7 -2
  81. package/dist/chunk-IFUCGI4I.js.map +1 -0
  82. package/dist/{chunk-HGIPWY5Y.js → chunk-IFYXSSKR.js} +6 -6
  83. package/dist/chunk-IFYXSSKR.js.map +1 -0
  84. package/dist/chunk-IXA4DQE4.js +20 -0
  85. package/dist/chunk-IXA4DQE4.js.map +1 -0
  86. package/dist/chunk-IZMKMD3O.js +11 -0
  87. package/dist/chunk-IZMKMD3O.js.map +1 -0
  88. package/dist/{chunk-4X6CLF4F.js → chunk-JJERW2BI.js} +4 -5
  89. package/dist/{chunk-4X6CLF4F.js.map → chunk-JJERW2BI.js.map} +1 -1
  90. package/dist/{chunk-M6E7VK4D.js → chunk-JQR4HVUX.js} +2 -5
  91. package/dist/chunk-JQR4HVUX.js.map +1 -0
  92. package/dist/{chunk-BWLUBJQG.js → chunk-JXOMDLFS.js} +6 -15
  93. package/dist/chunk-JXOMDLFS.js.map +1 -0
  94. package/dist/{chunk-5ZHNPNDD.js → chunk-KIX6N7NT.js} +198 -141
  95. package/dist/chunk-KIX6N7NT.js.map +1 -0
  96. package/dist/{chunk-XFSEADPC.js → chunk-L42UTDFK.js} +7 -2
  97. package/dist/chunk-L42UTDFK.js.map +1 -0
  98. package/dist/chunk-M2UF2JHJ.js +11 -0
  99. package/dist/chunk-M2UF2JHJ.js.map +1 -0
  100. package/dist/{chunk-LPLZLSMK.js → chunk-MONC734W.js} +7 -2
  101. package/dist/chunk-MONC734W.js.map +1 -0
  102. package/dist/{chunk-XADEMW6B.js → chunk-N72RLCMU.js} +4 -5
  103. package/dist/{chunk-XADEMW6B.js.map → chunk-N72RLCMU.js.map} +1 -1
  104. package/dist/{chunk-ZPB3SLPK.js → chunk-ND4IWJ4V.js} +7 -2
  105. package/dist/chunk-ND4IWJ4V.js.map +1 -0
  106. package/dist/{chunk-ZPZQXHW2.js → chunk-NZ3EKGW4.js} +260 -178
  107. package/dist/chunk-NZ3EKGW4.js.map +1 -0
  108. package/dist/{chunk-E3KXVEYI.js → chunk-OAE57MNL.js} +22 -10
  109. package/dist/chunk-OAE57MNL.js.map +1 -0
  110. package/dist/{chunk-JBDFYIN2.js → chunk-OHKGIQB4.js} +2 -5
  111. package/dist/chunk-OHKGIQB4.js.map +1 -0
  112. package/dist/{chunk-V7JVMG63.js → chunk-OXEQSPND.js} +3 -3
  113. package/dist/{chunk-YRJICL2Q.js → chunk-PKNE5J2B.js} +5 -13
  114. package/dist/chunk-PKNE5J2B.js.map +1 -0
  115. package/dist/chunk-PSXXEGYQ.js +16 -0
  116. package/dist/chunk-PSXXEGYQ.js.map +1 -0
  117. package/dist/{chunk-KAWDDS27.js → chunk-QAOVABCR.js} +7 -2
  118. package/dist/chunk-QAOVABCR.js.map +1 -0
  119. package/dist/{chunk-SYMNWNC3.js → chunk-QQ7FP4GD.js} +4 -5
  120. package/dist/{chunk-SYMNWNC3.js.map → chunk-QQ7FP4GD.js.map} +1 -1
  121. package/dist/{chunk-3JZN3GYO.js → chunk-QYLVMC6B.js} +2 -5
  122. package/dist/chunk-QYLVMC6B.js.map +1 -0
  123. package/dist/{chunk-CXQGMFI7.js → chunk-RX3XR65X.js} +4 -5
  124. package/dist/{chunk-CXQGMFI7.js.map → chunk-RX3XR65X.js.map} +1 -1
  125. package/dist/{chunk-MRXTUFBZ.js → chunk-RYQJJB4C.js} +1 -1
  126. package/dist/chunk-RYQJJB4C.js.map +1 -0
  127. package/dist/{chunk-5I7Q7RHW.js → chunk-TUF7TCN7.js} +4 -5
  128. package/dist/{chunk-5I7Q7RHW.js.map → chunk-TUF7TCN7.js.map} +1 -1
  129. package/dist/{chunk-NLXJMXVE.js → chunk-TUX36JY5.js} +4 -5
  130. package/dist/{chunk-NLXJMXVE.js.map → chunk-TUX36JY5.js.map} +1 -1
  131. package/dist/{chunk-4GYB7DGC.js → chunk-TWRQCQWU.js} +327 -558
  132. package/dist/chunk-TWRQCQWU.js.map +1 -0
  133. package/dist/chunk-U6DFQRG3.js +20 -0
  134. package/dist/chunk-U6DFQRG3.js.map +1 -0
  135. package/dist/chunk-VI5YTKNY.js +20 -0
  136. package/dist/chunk-VI5YTKNY.js.map +1 -0
  137. package/dist/{chunk-W5ZLIQFR.js → chunk-WG5YS6TC.js} +308 -200
  138. package/dist/chunk-WG5YS6TC.js.map +1 -0
  139. package/dist/{chunk-ZM44MGC5.js → chunk-WMJJ4WGF.js} +4 -5
  140. package/dist/{chunk-ZM44MGC5.js.map → chunk-WMJJ4WGF.js.map} +1 -1
  141. package/dist/{chunk-5YRWF5RP.js → chunk-WY4FNH42.js} +6 -5
  142. package/dist/chunk-WY4FNH42.js.map +1 -0
  143. package/dist/{chunk-VBYIDRNU.js → chunk-XIG5BWWH.js} +19 -10
  144. package/dist/chunk-XIG5BWWH.js.map +1 -0
  145. package/dist/chunk-XJBC3OYX.js +11 -0
  146. package/dist/chunk-XJBC3OYX.js.map +1 -0
  147. package/dist/{chunk-ZMREYTHA.js → chunk-XPRDXWK7.js} +8 -8
  148. package/dist/chunk-XPRDXWK7.js.map +1 -0
  149. package/dist/chunk-YKRQSZS7.js +96 -0
  150. package/dist/chunk-YKRQSZS7.js.map +1 -0
  151. package/dist/{chunk-IEVLWEBO.js → chunk-YMBL3VJB.js} +9 -8
  152. package/dist/chunk-YMBL3VJB.js.map +1 -0
  153. package/dist/{chunk-CGGO5NKD.js → chunk-YUJBXFYK.js} +357 -346
  154. package/dist/chunk-YUJBXFYK.js.map +1 -0
  155. package/dist/{chunk-S4KVLPBR.js → chunk-YZ4ZJNOL.js} +22 -10
  156. package/dist/chunk-YZ4ZJNOL.js.map +1 -0
  157. package/dist/chunk-ZTHVEXIV.js +11 -0
  158. package/dist/chunk-ZTHVEXIV.js.map +1 -0
  159. package/dist/{chunk-VHED2STW.js → chunk-ZVSYUCYS.js} +2 -1
  160. package/dist/chunk-ZVSYUCYS.js.map +1 -0
  161. package/dist/{config-T2IUIU5C.js → config-2YBCHU2W.js} +2 -2
  162. package/dist/{config-M3Z47VYU.js → config-3YRGRW72.js} +3 -2
  163. package/dist/config-4GSOMUMF.js +9 -0
  164. package/dist/config-5YBUWFUP.js +9 -0
  165. package/dist/{config-2LASFFRD.js → config-5ZRKJTKG.js} +3 -2
  166. package/dist/{config-W7EVPJNK.js → config-A25LTL5W.js} +2 -2
  167. package/dist/{config-WKQ3FGTZ.js → config-CLU7JABG.js} +2 -2
  168. package/dist/{config-E22XAGYN.js → config-D2RF7L3N.js} +2 -2
  169. package/dist/{config-HQXNFQZS.js → config-E55TKM6K.js} +2 -2
  170. package/dist/config-ELDOFRJW.js +9 -0
  171. package/dist/{config-EX3ZJTZI.js → config-FPC3RBFD.js} +2 -2
  172. package/dist/config-FPM3LAW7.js +9 -0
  173. package/dist/{config-IPNWAJHH.js → config-G3F54CS4.js} +3 -2
  174. package/dist/{config-BBOLI7VE.js → config-G43HRUI3.js} +2 -2
  175. package/dist/{config-QO2XUME4.js → config-GG3WO5PB.js} +3 -2
  176. package/dist/{config-QWQGOXQ5.js → config-JUYBWAZE.js} +2 -2
  177. package/dist/{config-SPW6NESU.js → config-LJ5T6TVA.js} +2 -2
  178. package/dist/{config-WVILHDFV.js → config-MDSAE4O3.js} +2 -2
  179. package/dist/{config-MZM3IPFM.js → config-NRIOKK5T.js} +2 -2
  180. package/dist/{config-L7SBSH5L.js → config-OYK2BSJK.js} +2 -2
  181. package/dist/config-PB3KA2CE.js +9 -0
  182. package/dist/{config-54USUVSE.js → config-QY4IL3PH.js} +3 -2
  183. package/dist/{config-VKKZGC7V.js → config-R4LAOEDS.js} +2 -2
  184. package/dist/{config-FRK7ZL37.js → config-RIAAD6RW.js} +3 -2
  185. package/dist/{config-J2C53GOT.js → config-SYNEQAUB.js} +2 -2
  186. package/dist/{config-XU6D5C7E.js → config-TJKGYA2B.js} +3 -2
  187. package/dist/{config-DWSJL3NH.js → config-UURRGA7U.js} +4 -2
  188. package/dist/{config-BIBFLUIR.js → config-VPLHQXVE.js} +2 -2
  189. package/dist/config-WRACCRPN.js +9 -0
  190. package/dist/{config-OJ2BPESH.js → config-WVHKXEVE.js} +3 -2
  191. package/dist/{config-CPYFOUQO.js → config-XU7R36IE.js} +3 -2
  192. package/dist/{config-A2GQYJDB.js → config-Y2KOUYSS.js} +2 -2
  193. package/dist/databricks_volume-CNCPTZHS.js +7 -0
  194. package/dist/digitalocean-DJZOUB6Q.js +11 -0
  195. package/dist/discord-ETB2CADR.js +7 -0
  196. package/dist/disk-WEHSTK3F.js +7 -0
  197. package/dist/dropbox-XN6PGLNE.js +8 -0
  198. package/dist/email-OV7XCP3T.js +8 -0
  199. package/dist/gcal-P56MRCGU.js +8 -0
  200. package/dist/gcs-HFBIAE2C.js +10 -0
  201. package/dist/gdocs-LQ3UXP3J.js +8 -0
  202. package/dist/gdrive-N6UBYLON.js +8 -0
  203. package/dist/github-BPZREGPI.js +8 -0
  204. package/dist/github_ci-7A4LUIZ7.js +8 -0
  205. package/dist/{gmail-2TBT4CVH.js → gmail-YED2MF6H.js} +2 -2
  206. package/dist/gridfs-CPLQ4G62.js +9 -0
  207. package/dist/gsheets-4BNIJPQ6.js +8 -0
  208. package/dist/gslides-GDBYLO5A.js +8 -0
  209. package/dist/hf_buckets-FTJITQ3P.js +10 -0
  210. package/dist/hf_datasets-6GXVKQD7.js +10 -0
  211. package/dist/hf_models-PJPGZAC5.js +10 -0
  212. package/dist/hf_spaces-LFNFOLBF.js +10 -0
  213. package/dist/index.d.ts +897 -609
  214. package/dist/index.js +2371 -781
  215. package/dist/index.js.map +1 -1
  216. package/dist/jaeger-GCA6MJ6E.js +8 -0
  217. package/dist/lancedb-TJ5YSJY5.js +7 -0
  218. package/dist/langfuse-RUMTUMXS.js +8 -0
  219. package/dist/linear-BCE4KEAC.js +7 -0
  220. package/dist/minio-5SO6KBTK.js +11 -0
  221. package/dist/mongodb-L5CMN2EE.js +7 -0
  222. package/dist/nextcloud-4O2LZVW2.js +9 -0
  223. package/dist/notion-RVKEAQ2M.js +7 -0
  224. package/dist/oci-OQXOIC62.js +10 -0
  225. package/dist/postgres-AV45GNRS.js +7 -0
  226. package/dist/qingstor-W277YA4K.js +11 -0
  227. package/dist/r2-FUA4IORE.js +10 -0
  228. package/dist/{redis-6D55Q2WB.js → redis-LPS357NF.js} +2 -2
  229. package/dist/s3-FPNWWIVM.js +8 -0
  230. package/dist/scaleway-BP3732U7.js +11 -0
  231. package/dist/seaweedfs-MC6HIEP4.js +11 -0
  232. package/dist/slack-JFGW7VLN.js +7 -0
  233. package/dist/ssh-UYPG42LM.js +8 -0
  234. package/dist/supabase-A3KUFMDC.js +10 -0
  235. package/dist/tencent-5464UQ2X.js +11 -0
  236. package/dist/trello-O2KB3FUO.js +8 -0
  237. package/dist/wasabi-2IKBIWNO.js +10 -0
  238. package/dist/wasabi-2IKBIWNO.js.map +1 -0
  239. package/package.json +15 -3
  240. package/dist/aliyun-PGI57A43.js +0 -10
  241. package/dist/backblaze-TSPL6Y56.js +0 -10
  242. package/dist/box-7XTZYDSO.js +0 -8
  243. package/dist/ceph-C265UI5T.js +0 -10
  244. package/dist/chunk-2ERLWAGG.js.map +0 -1
  245. package/dist/chunk-2QNPKPZZ.js +0 -59
  246. package/dist/chunk-2QNPKPZZ.js.map +0 -1
  247. package/dist/chunk-3ASOQTZB.js +0 -59
  248. package/dist/chunk-3ASOQTZB.js.map +0 -1
  249. package/dist/chunk-3JZN3GYO.js.map +0 -1
  250. package/dist/chunk-4GYB7DGC.js.map +0 -1
  251. package/dist/chunk-5YRWF5RP.js.map +0 -1
  252. package/dist/chunk-5ZHNPNDD.js.map +0 -1
  253. package/dist/chunk-AULFV3KY.js.map +0 -1
  254. package/dist/chunk-BWLUBJQG.js.map +0 -1
  255. package/dist/chunk-C7TNKIK5.js.map +0 -1
  256. package/dist/chunk-CB76WPUS.js.map +0 -1
  257. package/dist/chunk-CGGO5NKD.js.map +0 -1
  258. package/dist/chunk-CQCTCW4S.js.map +0 -1
  259. package/dist/chunk-D3U7VQCG.js +0 -25
  260. package/dist/chunk-D3U7VQCG.js.map +0 -1
  261. package/dist/chunk-E3KXVEYI.js.map +0 -1
  262. package/dist/chunk-EVK6HH6Z.js +0 -17
  263. package/dist/chunk-EVK6HH6Z.js.map +0 -1
  264. package/dist/chunk-FRGTDZQT.js.map +0 -1
  265. package/dist/chunk-GF75O2EN.js +0 -54
  266. package/dist/chunk-GF75O2EN.js.map +0 -1
  267. package/dist/chunk-GTAS3QVC.js +0 -25
  268. package/dist/chunk-GTAS3QVC.js.map +0 -1
  269. package/dist/chunk-H62XQZUM.js.map +0 -1
  270. package/dist/chunk-HCU3B6FW.js.map +0 -1
  271. package/dist/chunk-HEDE2377.js.map +0 -1
  272. package/dist/chunk-HGIPWY5Y.js.map +0 -1
  273. package/dist/chunk-HSD24IP2.js.map +0 -1
  274. package/dist/chunk-HWQPEBID.js.map +0 -1
  275. package/dist/chunk-IEHPTILN.js +0 -21
  276. package/dist/chunk-IEHPTILN.js.map +0 -1
  277. package/dist/chunk-IEVLWEBO.js.map +0 -1
  278. package/dist/chunk-IKJQOYI4.js +0 -26
  279. package/dist/chunk-IKJQOYI4.js.map +0 -1
  280. package/dist/chunk-IUXXZHY3.js.map +0 -1
  281. package/dist/chunk-JBDFYIN2.js.map +0 -1
  282. package/dist/chunk-JEBH5APX.js.map +0 -1
  283. package/dist/chunk-JHI2PHHD.js +0 -25
  284. package/dist/chunk-JHI2PHHD.js.map +0 -1
  285. package/dist/chunk-KAWDDS27.js.map +0 -1
  286. package/dist/chunk-KGC2OGXI.js +0 -27
  287. package/dist/chunk-KGC2OGXI.js.map +0 -1
  288. package/dist/chunk-LPLZLSMK.js.map +0 -1
  289. package/dist/chunk-M6E7VK4D.js.map +0 -1
  290. package/dist/chunk-MIQ3ECZM.js +0 -54
  291. package/dist/chunk-MIQ3ECZM.js.map +0 -1
  292. package/dist/chunk-MRXTUFBZ.js.map +0 -1
  293. package/dist/chunk-NJ42VNXG.js.map +0 -1
  294. package/dist/chunk-OSVZKYXS.js.map +0 -1
  295. package/dist/chunk-RHUEV4I7.js.map +0 -1
  296. package/dist/chunk-S4KVLPBR.js.map +0 -1
  297. package/dist/chunk-SAOQW6ZJ.js.map +0 -1
  298. package/dist/chunk-SI4GMRXD.js.map +0 -1
  299. package/dist/chunk-UAJYJP5C.js +0 -59
  300. package/dist/chunk-UAJYJP5C.js.map +0 -1
  301. package/dist/chunk-UYA3XL3J.js +0 -54
  302. package/dist/chunk-UYA3XL3J.js.map +0 -1
  303. package/dist/chunk-VBYIDRNU.js.map +0 -1
  304. package/dist/chunk-VHED2STW.js.map +0 -1
  305. package/dist/chunk-VIICUPWQ.js +0 -23
  306. package/dist/chunk-VIICUPWQ.js.map +0 -1
  307. package/dist/chunk-VLRSOWHP.js.map +0 -1
  308. package/dist/chunk-W5ZLIQFR.js.map +0 -1
  309. package/dist/chunk-WTSSEUOZ.js +0 -59
  310. package/dist/chunk-WTSSEUOZ.js.map +0 -1
  311. package/dist/chunk-WWP2STF5.js +0 -59
  312. package/dist/chunk-WWP2STF5.js.map +0 -1
  313. package/dist/chunk-XFSEADPC.js.map +0 -1
  314. package/dist/chunk-YBVMZ7SR.js +0 -59
  315. package/dist/chunk-YBVMZ7SR.js.map +0 -1
  316. package/dist/chunk-YRJICL2Q.js.map +0 -1
  317. package/dist/chunk-ZMREYTHA.js.map +0 -1
  318. package/dist/chunk-ZPB3SLPK.js.map +0 -1
  319. package/dist/chunk-ZPZQXHW2.js.map +0 -1
  320. package/dist/config-3WDIJPTG.js +0 -9
  321. package/dist/config-4QV4QYI5.js +0 -9
  322. package/dist/config-5ZXN2T2H.js +0 -9
  323. package/dist/config-EHE52ZTK.js +0 -9
  324. package/dist/config-HTXOOAOD.js +0 -9
  325. package/dist/config-K63RX6EU.js +0 -9
  326. package/dist/config-LEALEMKA.js +0 -9
  327. package/dist/config-RI7IEZUF.js +0 -9
  328. package/dist/databricks_volume-ETRDJVVQ.js +0 -7
  329. package/dist/digitalocean-QP72DR4J.js +0 -10
  330. package/dist/discord-BSN5RB3E.js +0 -8
  331. package/dist/disk-24NWTN2I.js +0 -7
  332. package/dist/dropbox-OSTZXSIE.js +0 -8
  333. package/dist/email-4ZFPSWIN.js +0 -8
  334. package/dist/gcs-PFWR6MIW.js +0 -10
  335. package/dist/gdocs-GPAZRQG5.js +0 -8
  336. package/dist/gdrive-XSX6A7B3.js +0 -8
  337. package/dist/github-EQ4NXUTA.js +0 -8
  338. package/dist/github_ci-QL5B2Q2N.js +0 -8
  339. package/dist/gridfs-KZRZ6SIB.js +0 -9
  340. package/dist/gsheets-N53WEXN2.js +0 -8
  341. package/dist/gslides-TATSARTH.js +0 -8
  342. package/dist/hf_buckets-BK7NGJWS.js +0 -10
  343. package/dist/hf_datasets-UQ5QGM4L.js +0 -10
  344. package/dist/hf_models-75LFCQCS.js +0 -10
  345. package/dist/hf_spaces-6T2KB3UC.js +0 -10
  346. package/dist/langfuse-AMQCQWNE.js +0 -8
  347. package/dist/linear-V3TXO6CV.js +0 -8
  348. package/dist/minio-IZRZY4C5.js +0 -10
  349. package/dist/mongodb-VMKPQCPX.js +0 -7
  350. package/dist/nextcloud-5RHQCGDO.js +0 -9
  351. package/dist/notion-6PPNTQFM.js +0 -8
  352. package/dist/oci-CKYBSFZJ.js +0 -10
  353. package/dist/postgres-WIQBVL5M.js +0 -7
  354. package/dist/qingstor-AP4IIPLY.js +0 -10
  355. package/dist/r2-C4XGEWQY.js +0 -10
  356. package/dist/s3-XQBI2CXN.js +0 -8
  357. package/dist/scaleway-SEZJVURB.js +0 -10
  358. package/dist/seaweedfs-3XYIAFU2.js +0 -10
  359. package/dist/slack-ZHXDJQY4.js +0 -8
  360. package/dist/ssh-X2MO7JOV.js +0 -8
  361. package/dist/supabase-BBM44UTM.js +0 -10
  362. package/dist/tencent-X72USLJ7.js +0 -10
  363. package/dist/trello-EER5NG7L.js +0 -8
  364. package/dist/wasabi-O4MVIUFG.js +0 -10
  365. /package/dist/{aliyun-PGI57A43.js.map → aliyun-S62BR3TB.js.map} +0 -0
  366. /package/dist/{backblaze-TSPL6Y56.js.map → backblaze-4EKSW63F.js.map} +0 -0
  367. /package/dist/{box-7XTZYDSO.js.map → box-ZPLZAGMK.js.map} +0 -0
  368. /package/dist/{ceph-C265UI5T.js.map → ceph-ALKLD3MO.js.map} +0 -0
  369. /package/dist/{chunk-4M73WHIE.js.map → chunk-BZTVYOES.js.map} +0 -0
  370. /package/dist/{chunk-BWWU5T2D.js.map → chunk-ENW5BVYN.js.map} +0 -0
  371. /package/dist/{chunk-F5NWRF32.js.map → chunk-ETIAW4YD.js.map} +0 -0
  372. /package/dist/{chunk-TUNR4VUM.js.map → chunk-GMMQ3ZK4.js.map} +0 -0
  373. /package/dist/{chunk-DXU7NZPH.js.map → chunk-HCRYAFBI.js.map} +0 -0
  374. /package/dist/{chunk-V7JVMG63.js.map → chunk-OXEQSPND.js.map} +0 -0
  375. /package/dist/{config-2LASFFRD.js.map → config-2YBCHU2W.js.map} +0 -0
  376. /package/dist/{config-3WDIJPTG.js.map → config-3YRGRW72.js.map} +0 -0
  377. /package/dist/{config-4QV4QYI5.js.map → config-4GSOMUMF.js.map} +0 -0
  378. /package/dist/{config-54USUVSE.js.map → config-5YBUWFUP.js.map} +0 -0
  379. /package/dist/{config-5ZXN2T2H.js.map → config-5ZRKJTKG.js.map} +0 -0
  380. /package/dist/{config-A2GQYJDB.js.map → config-A25LTL5W.js.map} +0 -0
  381. /package/dist/{config-BBOLI7VE.js.map → config-CLU7JABG.js.map} +0 -0
  382. /package/dist/{config-BIBFLUIR.js.map → config-D2RF7L3N.js.map} +0 -0
  383. /package/dist/{config-CPYFOUQO.js.map → config-E55TKM6K.js.map} +0 -0
  384. /package/dist/{config-DWSJL3NH.js.map → config-ELDOFRJW.js.map} +0 -0
  385. /package/dist/{config-E22XAGYN.js.map → config-FPC3RBFD.js.map} +0 -0
  386. /package/dist/{config-EHE52ZTK.js.map → config-FPM3LAW7.js.map} +0 -0
  387. /package/dist/{config-EX3ZJTZI.js.map → config-G3F54CS4.js.map} +0 -0
  388. /package/dist/{config-FRK7ZL37.js.map → config-G43HRUI3.js.map} +0 -0
  389. /package/dist/{config-HQXNFQZS.js.map → config-GG3WO5PB.js.map} +0 -0
  390. /package/dist/{config-HTXOOAOD.js.map → config-JUYBWAZE.js.map} +0 -0
  391. /package/dist/{config-IPNWAJHH.js.map → config-LJ5T6TVA.js.map} +0 -0
  392. /package/dist/{config-J2C53GOT.js.map → config-MDSAE4O3.js.map} +0 -0
  393. /package/dist/{config-K63RX6EU.js.map → config-NRIOKK5T.js.map} +0 -0
  394. /package/dist/{config-L7SBSH5L.js.map → config-OYK2BSJK.js.map} +0 -0
  395. /package/dist/{config-LEALEMKA.js.map → config-PB3KA2CE.js.map} +0 -0
  396. /package/dist/{config-M3Z47VYU.js.map → config-QY4IL3PH.js.map} +0 -0
  397. /package/dist/{config-MZM3IPFM.js.map → config-R4LAOEDS.js.map} +0 -0
  398. /package/dist/{config-OJ2BPESH.js.map → config-RIAAD6RW.js.map} +0 -0
  399. /package/dist/{config-QO2XUME4.js.map → config-SYNEQAUB.js.map} +0 -0
  400. /package/dist/{config-QWQGOXQ5.js.map → config-TJKGYA2B.js.map} +0 -0
  401. /package/dist/{config-RI7IEZUF.js.map → config-UURRGA7U.js.map} +0 -0
  402. /package/dist/{config-SPW6NESU.js.map → config-VPLHQXVE.js.map} +0 -0
  403. /package/dist/{config-T2IUIU5C.js.map → config-WRACCRPN.js.map} +0 -0
  404. /package/dist/{config-VKKZGC7V.js.map → config-WVHKXEVE.js.map} +0 -0
  405. /package/dist/{config-W7EVPJNK.js.map → config-XU7R36IE.js.map} +0 -0
  406. /package/dist/{config-WKQ3FGTZ.js.map → config-Y2KOUYSS.js.map} +0 -0
  407. /package/dist/{config-WVILHDFV.js.map → databricks_volume-CNCPTZHS.js.map} +0 -0
  408. /package/dist/{config-XU6D5C7E.js.map → digitalocean-DJZOUB6Q.js.map} +0 -0
  409. /package/dist/{databricks_volume-ETRDJVVQ.js.map → discord-ETB2CADR.js.map} +0 -0
  410. /package/dist/{digitalocean-QP72DR4J.js.map → disk-WEHSTK3F.js.map} +0 -0
  411. /package/dist/{discord-BSN5RB3E.js.map → dropbox-XN6PGLNE.js.map} +0 -0
  412. /package/dist/{disk-24NWTN2I.js.map → email-OV7XCP3T.js.map} +0 -0
  413. /package/dist/{dropbox-OSTZXSIE.js.map → gcal-P56MRCGU.js.map} +0 -0
  414. /package/dist/{email-4ZFPSWIN.js.map → gcs-HFBIAE2C.js.map} +0 -0
  415. /package/dist/{gcs-PFWR6MIW.js.map → gdocs-LQ3UXP3J.js.map} +0 -0
  416. /package/dist/{gdocs-GPAZRQG5.js.map → gdrive-N6UBYLON.js.map} +0 -0
  417. /package/dist/{gdrive-XSX6A7B3.js.map → github-BPZREGPI.js.map} +0 -0
  418. /package/dist/{github-EQ4NXUTA.js.map → github_ci-7A4LUIZ7.js.map} +0 -0
  419. /package/dist/{github_ci-QL5B2Q2N.js.map → gmail-YED2MF6H.js.map} +0 -0
  420. /package/dist/{gmail-2TBT4CVH.js.map → gridfs-CPLQ4G62.js.map} +0 -0
  421. /package/dist/{gridfs-KZRZ6SIB.js.map → gsheets-4BNIJPQ6.js.map} +0 -0
  422. /package/dist/{gsheets-N53WEXN2.js.map → gslides-GDBYLO5A.js.map} +0 -0
  423. /package/dist/{gslides-TATSARTH.js.map → hf_buckets-FTJITQ3P.js.map} +0 -0
  424. /package/dist/{hf_buckets-BK7NGJWS.js.map → hf_datasets-6GXVKQD7.js.map} +0 -0
  425. /package/dist/{hf_datasets-UQ5QGM4L.js.map → hf_models-PJPGZAC5.js.map} +0 -0
  426. /package/dist/{hf_models-75LFCQCS.js.map → hf_spaces-LFNFOLBF.js.map} +0 -0
  427. /package/dist/{hf_spaces-6T2KB3UC.js.map → jaeger-GCA6MJ6E.js.map} +0 -0
  428. /package/dist/{langfuse-AMQCQWNE.js.map → lancedb-TJ5YSJY5.js.map} +0 -0
  429. /package/dist/{linear-V3TXO6CV.js.map → langfuse-RUMTUMXS.js.map} +0 -0
  430. /package/dist/{minio-IZRZY4C5.js.map → linear-BCE4KEAC.js.map} +0 -0
  431. /package/dist/{mongodb-VMKPQCPX.js.map → minio-5SO6KBTK.js.map} +0 -0
  432. /package/dist/{nextcloud-5RHQCGDO.js.map → mongodb-L5CMN2EE.js.map} +0 -0
  433. /package/dist/{notion-6PPNTQFM.js.map → nextcloud-4O2LZVW2.js.map} +0 -0
  434. /package/dist/{oci-CKYBSFZJ.js.map → notion-RVKEAQ2M.js.map} +0 -0
  435. /package/dist/{postgres-WIQBVL5M.js.map → oci-OQXOIC62.js.map} +0 -0
  436. /package/dist/{qingstor-AP4IIPLY.js.map → postgres-AV45GNRS.js.map} +0 -0
  437. /package/dist/{r2-C4XGEWQY.js.map → qingstor-W277YA4K.js.map} +0 -0
  438. /package/dist/{redis-6D55Q2WB.js.map → r2-FUA4IORE.js.map} +0 -0
  439. /package/dist/{s3-XQBI2CXN.js.map → redis-LPS357NF.js.map} +0 -0
  440. /package/dist/{scaleway-SEZJVURB.js.map → s3-FPNWWIVM.js.map} +0 -0
  441. /package/dist/{seaweedfs-3XYIAFU2.js.map → scaleway-BP3732U7.js.map} +0 -0
  442. /package/dist/{slack-ZHXDJQY4.js.map → seaweedfs-MC6HIEP4.js.map} +0 -0
  443. /package/dist/{ssh-X2MO7JOV.js.map → slack-JFGW7VLN.js.map} +0 -0
  444. /package/dist/{supabase-BBM44UTM.js.map → ssh-UYPG42LM.js.map} +0 -0
  445. /package/dist/{tencent-X72USLJ7.js.map → supabase-A3KUFMDC.js.map} +0 -0
  446. /package/dist/{trello-EER5NG7L.js.map → tencent-5464UQ2X.js.map} +0 -0
  447. /package/dist/{wasabi-O4MVIUFG.js.map → trello-O2KB3FUO.js.map} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/resource/nextcloud/nextcloud.ts","../src/accessor/nextcloud.ts","../src/commands/builtin/nextcloud/index.ts","../src/core/nextcloud/read.ts","../src/core/nextcloud/util.ts","../src/core/nextcloud/stat.ts","../src/core/nextcloud/constants.ts","../src/core/nextcloud/copy.ts","../src/core/nextcloud/write.ts","../src/core/nextcloud/create.ts","../src/core/nextcloud/du.ts","../src/core/nextcloud/exists.ts","../src/core/nextcloud/find.ts","../src/core/nextcloud/search/types.ts","../src/core/nextcloud/search/constants.ts","../src/core/nextcloud/search/target.ts","../src/core/nextcloud/search/query.ts","../src/core/nextcloud/search/response.ts","../src/core/nextcloud/search/client.ts","../src/core/nextcloud/mkdir.ts","../src/core/nextcloud/readdir.ts","../src/core/nextcloud/rename.ts","../src/core/nextcloud/rm.ts","../src/core/nextcloud/rmdir.ts","../src/core/nextcloud/stream.ts","../src/core/nextcloud/truncate.ts","../src/core/nextcloud/unlink.ts","../src/commands/builtin/nextcloud/io.ts","../src/ops/nextcloud/index.ts","../src/resource/nextcloud/prompt.ts"],"sourcesContent":["import {\n BaseResource,\n makeResolveGlob,\n mountKey,\n mountPrefixOf,\n PathSpec,\n ResourceName,\n type FileStat,\n type FindOptions,\n type RegisteredCommand,\n type RegisteredOp,\n type Resource,\n} from '@struktoai/mirage-core'\nimport { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { NEXTCLOUD_COMMANDS } from '../../commands/builtin/nextcloud/index.ts'\nimport { SCOPE_ERROR } from '../../core/nextcloud/constants.ts'\nimport { copy as copyCore } from '../../core/nextcloud/copy.ts'\nimport { create as createCore } from '../../core/nextcloud/create.ts'\nimport { du as duCore, duAll as duAllCore } from '../../core/nextcloud/du.ts'\nimport { exists as existsCore } from '../../core/nextcloud/exists.ts'\nimport { find as findCore } from '../../core/nextcloud/find.ts'\nimport { mkdir as mkdirCore } from '../../core/nextcloud/mkdir.ts'\nimport { read as readCore } from '../../core/nextcloud/read.ts'\nimport { readdir as readdirCore } from '../../core/nextcloud/readdir.ts'\nimport { rename as renameCore } from '../../core/nextcloud/rename.ts'\nimport { rmR as rmRCore } from '../../core/nextcloud/rm.ts'\nimport { rmdir as rmdirCore } from '../../core/nextcloud/rmdir.ts'\nimport { stat as statCore } from '../../core/nextcloud/stat.ts'\nimport { rangeRead as rangeReadCore, stream as streamCore } from '../../core/nextcloud/stream.ts'\nimport { truncate as truncateCore } from '../../core/nextcloud/truncate.ts'\nimport { unlink as unlinkCore } from '../../core/nextcloud/unlink.ts'\nimport { write as writeCore } from '../../core/nextcloud/write.ts'\nimport { NEXTCLOUD_OPS } from '../../ops/nextcloud/index.ts'\nimport {\n redactNextcloudConfig,\n type NextcloudConfig,\n type NextcloudConfigRedacted,\n} from './config.ts'\nimport { NEXTCLOUD_PROMPT } from './prompt.ts'\n\nconst resolveGlobCore = makeResolveGlob(readdirCore, SCOPE_ERROR)\n\nexport interface NextcloudResourceState {\n type: string\n config: NextcloudConfigRedacted\n}\n\nexport class NextcloudResource extends BaseResource implements Resource {\n readonly kind = ResourceName.NEXTCLOUD\n readonly cachesReads = true\n readonly supportsSnapshot = true\n readonly prompt = NEXTCLOUD_PROMPT\n readonly accessor: NextcloudAccessor\n readonly opsMap: Record<string, unknown> = {\n read_bytes: readCore,\n write: writeCore,\n readdir: readdirCore,\n stat: statCore,\n unlink: unlinkCore,\n rmdir: rmdirCore,\n copy: copyCore,\n rename: renameCore,\n mkdir: mkdirCore,\n read_stream: streamCore,\n range_read: rangeReadCore,\n rm_recursive: rmRCore,\n du_total: duCore,\n du_all: duAllCore,\n create: createCore,\n truncate: truncateCore,\n exists: existsCore,\n find_flat: findCore,\n }\n\n constructor(readonly config: NextcloudConfig) {\n super()\n this.accessor = new NextcloudAccessor(config)\n }\n\n open(): Promise<void> {\n return Promise.resolve()\n }\n\n close(): Promise<void> {\n return Promise.resolve()\n }\n\n commands(): readonly RegisteredCommand[] {\n return NEXTCLOUD_COMMANDS\n }\n\n ops(): readonly RegisteredOp[] {\n return NEXTCLOUD_OPS\n }\n\n streamPath(path: PathSpec): AsyncIterable<Uint8Array> {\n return streamCore(this.accessor, path, this.index)\n }\n\n readFile(path: PathSpec): Promise<Uint8Array> {\n return readCore(this.accessor, path, this.index)\n }\n\n writeFile(path: PathSpec, data: Uint8Array): Promise<void> {\n return writeCore(this.accessor, path, data, this.index)\n }\n\n async appendFile(path: PathSpec, data: Uint8Array): Promise<void> {\n let existing: Uint8Array\n try {\n existing = await readCore(this.accessor, path, this.index)\n } catch (error) {\n if ((error as { code?: string } | null)?.code !== 'ENOENT') throw error\n existing = new Uint8Array()\n }\n const merged = new Uint8Array(existing.byteLength + data.byteLength)\n merged.set(existing)\n merged.set(data, existing.byteLength)\n await writeCore(this.accessor, path, merged, this.index)\n }\n\n readdir(path: PathSpec): Promise<string[]> {\n return readdirCore(this.accessor, path, this.index)\n }\n\n stat(path: PathSpec): Promise<FileStat> {\n return statCore(this.accessor, path, this.index)\n }\n\n exists(path: PathSpec): Promise<boolean> {\n return existsCore(this.accessor, path)\n }\n\n mkdir(path: PathSpec): Promise<void> {\n return mkdirCore(this.accessor, path)\n }\n\n rmdir(path: PathSpec): Promise<void> {\n return rmdirCore(this.accessor, path)\n }\n\n unlink(path: PathSpec): Promise<void> {\n return unlinkCore(this.accessor, path)\n }\n\n rename(source: PathSpec, destination: PathSpec): Promise<void> {\n return renameCore(this.accessor, source, destination)\n }\n\n truncate(path: PathSpec, length: number): Promise<void> {\n return truncateCore(this.accessor, path, length)\n }\n\n copy(source: PathSpec, destination: PathSpec): Promise<void> {\n return copyCore(this.accessor, source, destination)\n }\n\n rmR(path: PathSpec): Promise<void> {\n return rmRCore(this.accessor, path)\n }\n\n du(path: PathSpec): Promise<number> {\n return duCore(this.accessor, path)\n }\n\n find(path: PathSpec, options: FindOptions = {}): Promise<string[]> {\n return findCore(this.accessor, path, options)\n }\n\n glob(paths: readonly PathSpec[], prefix = ''): Promise<PathSpec[]> {\n const effective = prefix\n ? paths.map((path) =>\n mountPrefixOf(path.virtual, path.resourcePath)\n ? path\n : new PathSpec({\n virtual: path.virtual,\n directory: path.directory,\n ...(path.pattern !== null ? { pattern: path.pattern } : {}),\n resolved: path.resolved,\n resourcePath: mountKey(path.virtual, prefix),\n }),\n )\n : paths\n return resolveGlobCore(this.accessor, effective, this.index)\n }\n\n getState(): Promise<NextcloudResourceState> {\n return Promise.resolve({ type: this.kind, config: redactNextcloudConfig(this.config) })\n }\n\n loadState(_state: NextcloudResourceState): Promise<void> {\n return Promise.resolve()\n }\n}\n","import type { Operator } from 'opendal'\nimport { Accessor, ResourceName } from '@struktoai/mirage-core'\nimport { loadOptionalPeer } from '../optional_peer.ts'\nimport type { NextcloudConfig } from '../resource/nextcloud/config.ts'\n\nexport class NextcloudAccessor extends Accessor {\n readonly resourceName = ResourceName.NEXTCLOUD\n private operatorPromise: Promise<Operator> | null = null\n\n constructor(readonly config: NextcloudConfig) {\n super()\n }\n\n operator(): Promise<Operator> {\n this.operatorPromise ??= this.createOperator()\n return this.operatorPromise\n }\n\n private async createOperator(): Promise<Operator> {\n const mod = await loadOptionalPeer(\n () => import('opendal') as Promise<{ Operator: typeof Operator }>,\n { feature: 'Nextcloud resources', packageName: 'opendal' },\n )\n const options: Record<string, string> = { endpoint: this.config.url }\n if (this.config.username !== undefined) options.username = this.config.username\n if (this.config.password !== undefined) options.password = this.config.password\n return new mod.Operator('webdav', options)\n }\n}\n","import {\n makeFiletypeCommands,\n makeGenericCommands,\n ResourceName,\n type RegisteredCommand,\n} from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../../accessor/nextcloud.ts'\nimport { read } from '../../../core/nextcloud/read.ts'\nimport { stat } from '../../../core/nextcloud/stat.ts'\nimport { NEXTCLOUD_IO } from './io.ts'\n\nexport const NEXTCLOUD_COMMANDS: readonly RegisteredCommand[] = [\n ...makeFiletypeCommands<NextcloudAccessor>({\n resource: ResourceName.NEXTCLOUD,\n readBytes: read,\n statEntry: stat,\n }),\n ...makeGenericCommands<NextcloudAccessor>(ResourceName.NEXTCLOUD, NEXTCLOUD_IO),\n]\n","import {\n enoent,\n record,\n ResourceName,\n type IndexCacheStore,\n type PathSpec,\n} from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { isNotFound, nextcloudKey } from './util.ts'\n\nexport interface NextcloudReadOptions {\n offset?: number\n size?: number\n}\n\nexport async function read(\n accessor: NextcloudAccessor,\n path: PathSpec,\n _index?: IndexCacheStore,\n options: NextcloudReadOptions = {},\n): Promise<Uint8Array> {\n const op = await accessor.operator()\n const readOptions: { offset?: bigint; size?: bigint } = {}\n if (options.offset !== undefined && options.offset > 0) {\n readOptions.offset = BigInt(options.offset)\n }\n if (options.size !== undefined) {\n readOptions.offset ??= 0n\n readOptions.size = BigInt(options.size)\n }\n const startMs = performance.now()\n try {\n const data =\n readOptions.offset !== undefined || readOptions.size !== undefined\n ? await op.read(nextcloudKey(path), readOptions)\n : await op.read(nextcloudKey(path))\n const bytes = new Uint8Array(data)\n record('read', path.virtual, ResourceName.NEXTCLOUD, bytes.byteLength, startMs)\n return bytes\n } catch (error) {\n if (isNotFound(error)) throw enoent(path)\n throw error\n }\n}\n","import { lstripSlash, mountPrefixOf, type PathSpec } from '@struktoai/mirage-core'\n\nexport function rawPathOf(path: PathSpec): string {\n const prefix = mountPrefixOf(path.virtual, path.resourcePath)\n return prefix !== '' && path.virtual.startsWith(prefix)\n ? path.virtual.slice(prefix.length) || '/'\n : path.virtual\n}\n\nexport function nextcloudKey(path: PathSpec): string {\n return lstripSlash(rawPathOf(path))\n}\n\nexport function isNotFound(error: unknown): boolean {\n return error instanceof Error && error.message.startsWith('NotFound')\n}\n","import type { Metadata } from 'opendal'\nimport {\n enoent,\n FileStat,\n FileType,\n guessType,\n mountPrefixOf,\n ResourceType,\n stripSlash,\n type IndexCacheStore,\n type PathSpec,\n} from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { isNotFound, rawPathOf } from './util.ts'\n\nexport async function stat(\n accessor: NextcloudAccessor,\n path: PathSpec,\n index?: IndexCacheStore,\n): Promise<FileStat> {\n const prefix = mountPrefixOf(path.virtual, path.resourcePath)\n const raw = rawPathOf(path)\n const key = stripSlash(raw)\n if (key === '') return new FileStat({ name: '/', type: FileType.DIRECTORY })\n const virtualKey = prefix !== '' ? `${prefix}/${key}` : `/${key}`\n if (index !== undefined) {\n const lookup = await index.get(virtualKey)\n if (lookup.entry !== undefined && lookup.entry !== null) {\n const entry = lookup.entry\n if (entry.resourceType === ResourceType.FOLDER) {\n return new FileStat({\n name: entry.name,\n type: FileType.DIRECTORY,\n modified: entry.remoteTime || null,\n })\n }\n return new FileStat({\n name: entry.name,\n size: entry.size ?? null,\n modified: entry.remoteTime || null,\n type: guessType(entry.name),\n })\n }\n const parent = virtualKey.slice(0, virtualKey.lastIndexOf('/')) || '/'\n const listing = await index.listDir(parent)\n if (listing.entries !== undefined && listing.entries !== null) throw enoent(path)\n }\n const op = await accessor.operator()\n let metadata: Metadata | null = null\n try {\n metadata = await op.stat(key)\n } catch (error) {\n if (!isNotFound(error)) throw error\n }\n if (metadata !== null && !metadata.isDirectory()) return fileStat(key, raw, metadata)\n try {\n const directory = await op.stat(`${key}/`)\n if (directory.isDirectory()) {\n return new FileStat({\n name: key.split('/').pop() ?? '/',\n type: FileType.DIRECTORY,\n modified: directory.lastModified,\n })\n }\n } catch (error) {\n if (!isNotFound(error)) throw error\n }\n throw enoent(path)\n}\n\nfunction fileStat(key: string, raw: string, metadata: Metadata): FileStat {\n const etag = metadata.etag\n return new FileStat({\n name: key.split('/').pop() ?? key,\n size: metadata.contentLength !== null ? Number(metadata.contentLength) : null,\n modified: metadata.lastModified,\n type: guessType(raw),\n fingerprint: etag,\n extra: etag !== null && etag !== '' ? { etag } : {},\n })\n}\n","export const SCOPE_ERROR = 5000\nexport const DEFAULT_CHUNK_SIZE = 8192\n","import { enoent, invalidateAfterWrite, type PathSpec } from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { isNotFound, nextcloudKey } from './util.ts'\n\nexport async function copy(\n accessor: NextcloudAccessor,\n source: PathSpec,\n destination: PathSpec,\n): Promise<void> {\n const op = await accessor.operator()\n try {\n await op.copy(nextcloudKey(source), nextcloudKey(destination))\n } catch (error) {\n if (isNotFound(error)) throw enoent(source)\n throw error\n }\n await invalidateAfterWrite(destination)\n}\n","import {\n enoent,\n invalidateAfterWrite,\n record,\n ResourceName,\n type IndexCacheStore,\n type PathSpec,\n} from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { isNotFound, nextcloudKey } from './util.ts'\n\nexport async function write(\n accessor: NextcloudAccessor,\n path: PathSpec,\n data: Uint8Array,\n _index?: IndexCacheStore,\n): Promise<void> {\n const startMs = performance.now()\n try {\n const op = await accessor.operator()\n await op.write(nextcloudKey(path), Buffer.from(data))\n } catch (error) {\n if (isNotFound(error)) throw enoent(path)\n throw error\n }\n record('write', path.virtual, ResourceName.NEXTCLOUD, data.byteLength, startMs)\n await invalidateAfterWrite(path)\n}\n","import type { IndexCacheStore, PathSpec } from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { write } from './write.ts'\n\nexport function create(\n accessor: NextcloudAccessor,\n path: PathSpec,\n index?: IndexCacheStore,\n): Promise<void> {\n return write(accessor, path, new Uint8Array(), index)\n}\n","import {\n FileType,\n lstripSlash,\n stripSlash,\n type FileStat,\n type PathSpec,\n} from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { stat } from './stat.ts'\nimport { isNotFound, rawPathOf } from './util.ts'\n\nasync function statOrNull(accessor: NextcloudAccessor, path: PathSpec): Promise<FileStat | null> {\n try {\n return await stat(accessor, path)\n } catch (error) {\n if ((error as { code?: string } | null)?.code === 'ENOENT') return null\n throw error\n }\n}\n\nexport async function du(accessor: NextcloudAccessor, path: PathSpec): Promise<number> {\n const info = await statOrNull(accessor, path)\n if (info !== null && info.type !== FileType.DIRECTORY) return info.size ?? 0\n const prefix = stripSlash(rawPathOf(path))\n const scanPath = prefix !== '' ? `${prefix}/` : '/'\n const op = await accessor.operator()\n let total = 0\n try {\n for (const entry of await op.list(scanPath, { recursive: true })) {\n const metadata = entry.metadata()\n if (entry.path().endsWith('/') || metadata.isDirectory()) continue\n total += metadata.contentLength !== null ? Number(metadata.contentLength) : 0\n }\n } catch (error) {\n if (isNotFound(error)) return 0\n throw error\n }\n return total\n}\n\nexport async function duAll(\n accessor: NextcloudAccessor,\n path: PathSpec,\n): Promise<[[string, number][], number]> {\n const info = await statOrNull(accessor, path)\n if (info !== null && info.type !== FileType.DIRECTORY) return [[], info.size ?? 0]\n const raw = rawPathOf(path)\n const prefix = stripSlash(raw)\n const scanPath = prefix !== '' ? `${prefix}/` : '/'\n const op = await accessor.operator()\n const entries: [string, number][] = []\n let total = 0\n try {\n for (const entry of await op.list(scanPath, { recursive: true })) {\n const key = entry.path()\n const metadata = entry.metadata()\n if (key === '' || key.endsWith('/') || metadata.isDirectory()) continue\n const size = metadata.contentLength !== null ? Number(metadata.contentLength) : 0\n entries.push([`/${lstripSlash(key)}`, size])\n total += size\n }\n } catch (error) {\n if (!isNotFound(error)) throw error\n }\n entries.sort(([left], [right]) => left.localeCompare(right))\n return [entries, total]\n}\n","import type { PathSpec } from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { stat } from './stat.ts'\n\nexport async function exists(accessor: NextcloudAccessor, path: PathSpec): Promise<boolean> {\n try {\n await stat(accessor, path)\n return true\n } catch (error) {\n if ((error as { code?: string } | null)?.code === 'ENOENT') return false\n throw error\n }\n}\n","import type { Metadata } from 'opendal'\nimport {\n keep,\n optionsTree,\n rstripSlash,\n startBasename,\n stripSlash,\n treeHasEmpty,\n type FindEntry,\n type FindOptions,\n type PathSpec,\n type PredNode,\n} from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport {\n searchFiles,\n supportsQuery,\n type Bounds,\n type FilesSearchQuery,\n type SearchEntry,\n} from './search/index.ts'\nimport { isNotFound, rawPathOf } from './util.ts'\n\ninterface FindScope {\n baseKey: string\n scanKey: string\n startName: string\n}\n\ninterface Candidate {\n key: string\n name: string\n kind: 'f' | 'd'\n size: number | null\n modified: number | null\n isEmpty: boolean | null\n}\n\ninterface FindCriteria {\n predicate: PredNode\n size: Bounds\n modified: Bounds\n minDepth: number | null\n maxDepth: number | null\n}\n\nfunction findScope(path: PathSpec): FindScope {\n const relative = stripSlash(rawPathOf(path))\n return {\n baseKey: relative !== '' ? `/${relative}` : '/',\n scanKey: relative !== '' ? `${relative}/` : '/',\n startName: startBasename(path.virtual),\n }\n}\n\nfunction constrained(bounds: Bounds): boolean {\n return bounds.lower !== null || bounds.upper !== null\n}\n\nfunction contains(bounds: Bounds, value: number): boolean {\n if (bounds.lower !== null && value < bounds.lower) return false\n if (bounds.upper !== null && value > bounds.upper) return false\n return true\n}\n\nfunction scopeContains(scope: FindScope, key: string): boolean {\n if (scope.baseKey === '/') return key.startsWith('/')\n return key === scope.baseKey || key.startsWith(`${scope.baseKey}/`)\n}\n\nfunction depth(scope: FindScope, key: string): number {\n if (key === scope.baseKey) return 0\n const baseDepth = scope.baseKey === '/' ? 0 : (scope.baseKey.match(/\\//g) ?? []).length\n return (key.match(/\\//g) ?? []).length - baseDepth\n}\n\nfunction parentKeys(scope: FindScope, key: string): string[] {\n const keys: string[] = []\n let parent = key.slice(0, key.lastIndexOf('/')) || '/'\n while (scopeContains(scope, parent)) {\n keys.push(parent)\n if (parent === scope.baseKey) break\n parent = parent.slice(0, parent.lastIndexOf('/')) || '/'\n }\n return keys\n}\n\nfunction basename(key: string): string {\n return rstripSlash(key).split('/').pop() ?? ''\n}\n\nfunction modifiedTimestamp(metadata: Metadata): number | null {\n if (metadata.lastModified === null) return null\n const milliseconds = Date.parse(metadata.lastModified)\n return Number.isNaN(milliseconds) ? null : milliseconds / 1000\n}\n\nfunction candidateFromMetadata(key: string, name: string, metadata: Metadata): Candidate {\n const isDirectory = metadata.isDirectory()\n return {\n key,\n name,\n kind: isDirectory ? 'd' : 'f',\n size: isDirectory ? 0 : metadata.contentLength !== null ? Number(metadata.contentLength) : null,\n modified: modifiedTimestamp(metadata),\n isEmpty: null,\n }\n}\n\nfunction candidateFromSearch(entry: SearchEntry): Candidate {\n return { ...entry, isEmpty: null }\n}\n\nasync function statCandidate(\n accessor: NextcloudAccessor,\n key: string,\n name: string,\n): Promise<Candidate | null> {\n if (key === '/') {\n return { key, name, kind: 'd', size: 0, modified: null, isEmpty: null }\n }\n const op = await accessor.operator()\n const relative = stripSlash(key)\n let metadata: Metadata\n try {\n metadata = await op.stat(relative)\n } catch (error) {\n if (!isNotFound(error)) throw error\n try {\n metadata = await op.stat(`${relative}/`)\n } catch (directoryError) {\n if (isNotFound(directoryError)) return null\n throw directoryError\n }\n }\n return candidateFromMetadata(key, name, metadata)\n}\n\nfunction matches(candidate: Candidate, scope: FindScope, criteria: FindCriteria): boolean {\n if (!scopeContains(scope, candidate.key)) {\n throw new Error(`Nextcloud Files Search returned an out-of-scope path: ${candidate.key}`)\n }\n const candidateDepth = depth(scope, candidate.key)\n if (criteria.maxDepth !== null && candidateDepth > criteria.maxDepth) return false\n const entry: FindEntry = {\n key: candidate.key,\n name: candidate.name,\n kind: candidate.kind,\n depth: candidateDepth,\n isEmpty: candidate.isEmpty,\n }\n if (!keep(entry, criteria.predicate, criteria.minDepth)) return false\n if (constrained(criteria.size)) {\n const size = candidate.kind === 'd' ? 0 : (candidate.size ?? 0)\n if (!contains(criteria.size, size)) return false\n }\n if (constrained(criteria.modified)) {\n if (candidate.modified === null || !contains(criteria.modified, candidate.modified))\n return false\n }\n return true\n}\n\nfunction matchingKeys(\n candidates: Map<string, Candidate>,\n scope: FindScope,\n criteria: FindCriteria,\n): string[] {\n return [...candidates.values()]\n .filter((candidate) => matches(candidate, scope, criteria))\n .map((candidate) => candidate.key)\n .sort()\n}\n\nfunction searchQuery(criteria: FindCriteria): FilesSearchQuery {\n return {\n tree: criteria.predicate,\n size: criteria.size,\n modified: criteria.modified,\n }\n}\n\nasync function findWithSearch(\n accessor: NextcloudAccessor,\n path: PathSpec,\n scope: FindScope,\n criteria: FindCriteria,\n): Promise<string[] | null> {\n if (criteria.maxDepth === 0 && !treeHasEmpty(criteria.predicate)) {\n const start = await statCandidate(accessor, scope.baseKey, scope.startName)\n if (start === null) return []\n return matchingKeys(new Map([[scope.baseKey, start]]), scope, criteria)\n }\n const query = searchQuery(criteria)\n if (!supportsQuery(query)) return null\n const start = await statCandidate(accessor, scope.baseKey, scope.startName)\n if (start === null) return []\n if (start.kind !== 'd') return null\n const candidates = new Map<string, Candidate>([[scope.baseKey, start]])\n if (criteria.maxDepth !== 0) {\n const found = await searchFiles(accessor, path, query)\n if (found === null) return null\n for (const entry of found) {\n if (!candidates.has(entry.key)) candidates.set(entry.key, candidateFromSearch(entry))\n }\n }\n return matchingKeys(candidates, scope, criteria)\n}\n\nfunction scanKey(rawKey: string): string {\n return `/${stripSlash(rawKey)}`\n}\n\nfunction directoryCandidate(key: string): Candidate {\n return { key, name: basename(key), kind: 'd', size: 0, modified: null, isEmpty: null }\n}\n\nasync function collectScanCandidates(\n accessor: NextcloudAccessor,\n scope: FindScope,\n): Promise<{ candidates: Map<string, Candidate>; nonemptyDirectories: Set<string> }> {\n const candidates = new Map<string, Candidate>()\n const nonemptyDirectories = new Set<string>()\n const op = await accessor.operator()\n let entries\n try {\n entries = await op.list(scope.scanKey, { recursive: true })\n } catch (error) {\n if (isNotFound(error)) return { candidates, nonemptyDirectories }\n throw error\n }\n for (const entry of entries) {\n const rawKey = entry.path()\n if (rawKey === '') continue\n const key = scanKey(rawKey)\n candidates.set(key, candidateFromMetadata(key, basename(key), entry.metadata()))\n for (const parent of parentKeys(scope, key)) {\n nonemptyDirectories.add(parent)\n if (!candidates.has(parent)) candidates.set(parent, directoryCandidate(parent))\n }\n }\n return { candidates, nonemptyDirectories }\n}\n\nfunction emptyState(candidate: Candidate, nonemptyDirectories: Set<string>): boolean {\n return candidate.kind === 'd'\n ? !nonemptyDirectories.has(candidate.key)\n : (candidate.size ?? 0) === 0\n}\n\nasync function hydrateScanCandidate(\n accessor: NextcloudAccessor,\n candidate: Candidate,\n nonemptyDirectories: Set<string>,\n criteria: FindCriteria,\n): Promise<Candidate> {\n let hydrated = candidate\n if (constrained(criteria.modified) && candidate.kind === 'd' && candidate.modified === null) {\n hydrated = (await statCandidate(accessor, candidate.key, candidate.name)) ?? candidate\n }\n return { ...hydrated, isEmpty: emptyState(hydrated, nonemptyDirectories) }\n}\n\nasync function findWithScan(\n accessor: NextcloudAccessor,\n scope: FindScope,\n criteria: FindCriteria,\n): Promise<string[]> {\n const { candidates, nonemptyDirectories } = await collectScanCandidates(accessor, scope)\n const start = await statCandidate(accessor, scope.baseKey, scope.startName)\n if (start === null) return []\n candidates.set(scope.baseKey, start)\n const hydrated = new Map<string, Candidate>()\n for (const candidate of candidates.values()) {\n const entry = await hydrateScanCandidate(accessor, candidate, nonemptyDirectories, criteria)\n hydrated.set(entry.key, entry)\n }\n return matchingKeys(hydrated, scope, criteria)\n}\n\nexport async function find(\n accessor: NextcloudAccessor,\n path: PathSpec,\n options: FindOptions = {},\n): Promise<string[]> {\n const scope = findScope(path)\n const criteria: FindCriteria = {\n predicate: optionsTree(options),\n size: { lower: options.minSize ?? null, upper: options.maxSize ?? null },\n modified: { lower: options.mtimeMin ?? null, upper: options.mtimeMax ?? null },\n minDepth: options.minDepth ?? null,\n maxDepth: options.maxDepth ?? null,\n }\n const searchResults = await findWithSearch(accessor, path, scope, criteria)\n return searchResults ?? findWithScan(accessor, scope, criteria)\n}\n","import type { PredNode } from '@struktoai/mirage-core'\n\nexport const Namespace = {\n DAV: 'DAV:',\n OWNCLOUD: 'http://owncloud.org/ns',\n SEARCHDAV: 'https://github.com/icewind1991/SearchDAV/ns',\n} as const\n\nexport const Comparison = {\n EQUAL: 'eq',\n GREATER_THAN_OR_EQUAL: 'gte',\n LESS_THAN_OR_EQUAL: 'lte',\n LIKE: 'like',\n} as const\n\nexport const BooleanOperation = {\n AND: 'and',\n OR: 'or',\n} as const\n\nexport interface Property {\n namespace: (typeof Namespace)[keyof typeof Namespace]\n prefix: 'd' | 'oc'\n name: string\n}\n\nexport interface Bounds {\n lower: number | null\n upper: number | null\n}\n\nexport interface FilesSearchQuery {\n tree: PredNode\n size?: Bounds\n modified?: Bounds\n}\n\nexport interface SearchEntry {\n key: string\n name: string\n kind: 'f' | 'd'\n size: number | null\n modified: number | null\n}\n\nexport interface SearchTarget {\n endpoint: string\n resourceScope: string\n}\n\nexport interface CompiledPredicate {\n condition: string | null\n}\n\nexport type ComparisonOperator = (typeof Comparison)[keyof typeof Comparison]\nexport type BooleanOperator = (typeof BooleanOperation)[keyof typeof BooleanOperation]\nexport type XmlRecord = Record<string, unknown>\n","import { Namespace, type Property } from './types.ts'\n\nexport const DISPLAY_NAME: Property = {\n namespace: Namespace.DAV,\n prefix: 'd',\n name: 'displayname',\n}\nexport const RESOURCE_TYPE: Property = {\n namespace: Namespace.DAV,\n prefix: 'd',\n name: 'resourcetype',\n}\nexport const CONTENT_LENGTH: Property = {\n namespace: Namespace.DAV,\n prefix: 'd',\n name: 'getcontentlength',\n}\nexport const LAST_MODIFIED: Property = {\n namespace: Namespace.DAV,\n prefix: 'd',\n name: 'getlastmodified',\n}\nexport const SIZE: Property = {\n namespace: Namespace.OWNCLOUD,\n prefix: 'oc',\n name: 'size',\n}\nexport const SELECT_PROPERTIES = [DISPLAY_NAME, RESOURCE_TYPE, CONTENT_LENGTH, LAST_MODIFIED, SIZE]\nexport const ORDER_PROPERTIES = [DISPLAY_NAME, LAST_MODIFIED, SIZE]\nexport const SEARCH_METHOD = 'SEARCH'\nexport const SEARCH_ENDPOINT_PATH = '/remote.php/dav/'\nexport const SEARCH_DEPTH = 'infinity'\nexport const SEARCH_PAGE_SIZE = 100\nexport const SEARCH_HEADERS = {\n Accept: 'application/xml',\n 'Content-Type': 'text/xml; charset=utf-8',\n}\nexport const UNAVAILABLE_STATUS_CODES = new Set([404, 405, 501])\n","import { rstripSlash, stripSlash, type PathSpec } from '@struktoai/mirage-core'\nimport { rawPathOf } from '../util.ts'\nimport { SEARCH_ENDPOINT_PATH } from './constants.ts'\nimport type { SearchTarget } from './types.ts'\n\nfunction decodePath(path: string): string {\n try {\n return decodeURIComponent(path)\n } catch (error) {\n throw new Error(`invalid percent-encoding in Nextcloud path: ${path}`, { cause: error })\n }\n}\n\nexport function searchTarget(url: string): SearchTarget | null {\n const parsed = new URL(url)\n const marker = parsed.pathname.indexOf(SEARCH_ENDPOINT_PATH)\n if (marker < 0) return null\n const davEnd = marker + SEARCH_ENDPOINT_PATH.length\n const relative = stripSlash(parsed.pathname.slice(davEnd))\n const parts = relative === '' ? [] : relative.split('/')\n if (parts.length < 2 || parts[0] !== 'files') return null\n const endpoint = new URL(parsed.toString())\n endpoint.pathname = parsed.pathname.slice(0, davEnd)\n endpoint.search = ''\n endpoint.hash = ''\n return {\n endpoint: endpoint.toString(),\n resourceScope: decodePath(`/${parts.join('/')}`),\n }\n}\n\nexport function scopePath(target: SearchTarget, path: PathSpec): string {\n const relative = stripSlash(rawPathOf(path))\n return relative === '' ? target.resourceScope : `${rstripSlash(target.resourceScope)}/${relative}`\n}\n\nfunction stripScope(path: string, scope: string): string | null {\n if (path === scope) return ''\n const prefix = `${rstripSlash(scope)}/`\n return path.startsWith(prefix) ? path.slice(prefix.length) : null\n}\n\nexport function relativePath(href: string, target: SearchTarget): string {\n const hrefPath = rstripSlash(decodePath(new URL(href, target.endpoint).pathname))\n const resourceScope = rstripSlash(target.resourceScope)\n let relative = stripScope(hrefPath, resourceScope)\n if (relative === null) {\n const davRoot = rstripSlash(decodePath(new URL(target.endpoint).pathname))\n relative = stripScope(hrefPath, `${davRoot}${resourceScope}`)\n }\n if (relative === null) {\n throw new Error(`Nextcloud Files Search returned an out-of-scope href: ${href}`)\n }\n return relative !== '' ? `/${relative}` : '/'\n}\n","import type { PathSpec, PredNode } from '@struktoai/mirage-core'\nimport {\n DISPLAY_NAME,\n LAST_MODIFIED,\n ORDER_PROPERTIES,\n SEARCH_DEPTH,\n SEARCH_PAGE_SIZE,\n SELECT_PROPERTIES,\n SIZE,\n} from './constants.ts'\nimport { scopePath } from './target.ts'\nimport {\n BooleanOperation,\n Comparison,\n Namespace,\n type BooleanOperator,\n type ComparisonOperator,\n type CompiledPredicate,\n type FilesSearchQuery,\n type Property,\n type SearchTarget,\n} from './types.ts'\n\nfunction escapeXml(value: string | number): string {\n return String(value)\n .replaceAll('&', '&amp;')\n .replaceAll('<', '&lt;')\n .replaceAll('>', '&gt;')\n .replaceAll('\"', '&quot;')\n .replaceAll(\"'\", '&apos;')\n}\n\nfunction propertyTag(field: Property): string {\n return `<${field.prefix}:${field.name}/>`\n}\n\nfunction property(field: Property): string {\n return `<d:prop>${propertyTag(field)}</d:prop>`\n}\n\nfunction comparison(\n operation: ComparisonOperator,\n field: Property,\n value: string | number,\n): string {\n return `<d:${operation}>${property(field)}<d:literal>${escapeXml(value)}</d:literal></d:${operation}>`\n}\n\nfunction isCollection(): string {\n return '<d:is-collection/>'\n}\n\nfunction negate(condition: string): string {\n return `<d:not>${condition}</d:not>`\n}\n\nfunction combine(operation: BooleanOperator, conditions: string[]): string {\n const [only] = conditions\n if (only !== undefined && conditions.length === 1) return only\n return `<d:${operation}>${conditions.join('')}</d:${operation}>`\n}\n\nexport function globToLike(pattern: string): string {\n let translated = ''\n for (const character of pattern) {\n if (character === '*') translated += '%'\n else if (character === '?') translated += '_'\n else if (character === '\\\\') translated += '%'\n else translated += character\n }\n return translated\n}\n\nfunction nameCondition(node: Extract<PredNode, { op: 'name' }>): string {\n const wildcard = node.pattern.includes('*') || node.pattern.includes('?')\n const operation = wildcard || node.icase ? Comparison.LIKE : Comparison.EQUAL\n const value = operation === Comparison.LIKE ? globToLike(node.pattern) : node.pattern\n return comparison(operation, DISPLAY_NAME, value)\n}\n\nfunction compilePredicate(node: PredNode): CompiledPredicate | null {\n switch (node.op) {\n case 'true':\n return { condition: null }\n case 'name':\n return node.pattern.includes('[') ? null : { condition: nameCondition(node) }\n case 'type':\n if (node.kind === 'd') return { condition: isCollection() }\n if (node.kind === 'f') return { condition: negate(isCollection()) }\n return null\n case 'not': {\n const compiled = compilePredicate(node.kid)\n return compiled?.condition != null ? { condition: negate(compiled.condition) } : null\n }\n case 'and':\n case 'or': {\n const conditions: string[] = []\n for (const kid of node.kids) {\n const compiled = compilePredicate(kid)\n if (compiled === null) return null\n if (compiled.condition === null) {\n if (node.op === 'or') return null\n continue\n }\n conditions.push(compiled.condition)\n }\n if (conditions.length === 0) return node.op === 'and' ? { condition: null } : null\n const operation = node.op === 'and' ? BooleanOperation.AND : BooleanOperation.OR\n return { condition: combine(operation, conditions) }\n }\n case 'path':\n case 'empty':\n return null\n }\n}\n\nfunction sizeCondition(query: FilesSearchQuery): string | null {\n const size = query.size\n if (size === undefined) return null\n const conditions: string[] = []\n if (size.lower !== null && size.lower === size.upper) {\n conditions.push(comparison(Comparison.EQUAL, SIZE, size.lower))\n } else {\n if (size.lower !== null) {\n conditions.push(comparison(Comparison.GREATER_THAN_OR_EQUAL, SIZE, size.lower))\n }\n if (size.upper !== null) {\n conditions.push(comparison(Comparison.LESS_THAN_OR_EQUAL, SIZE, size.upper))\n }\n }\n if (conditions.length === 0) return null\n const fileBounds = combine(BooleanOperation.AND, [negate(isCollection()), ...conditions])\n const includesZero =\n (size.lower === null || size.lower <= 0) && (size.upper === null || size.upper >= 0)\n return includesZero ? combine(BooleanOperation.OR, [isCollection(), fileBounds]) : fileBounds\n}\n\nfunction whereCondition(query: FilesSearchQuery): string | null {\n const compiled = compilePredicate(query.tree)\n if (compiled === null) return null\n const conditions: string[] = []\n if (compiled.condition !== null) conditions.push(compiled.condition)\n const size = sizeCondition(query)\n if (size !== null) conditions.push(size)\n if (query.modified?.lower != null) {\n conditions.push(\n comparison(Comparison.GREATER_THAN_OR_EQUAL, LAST_MODIFIED, Math.floor(query.modified.lower)),\n )\n }\n if (query.modified?.upper != null) {\n conditions.push(\n comparison(Comparison.LESS_THAN_OR_EQUAL, LAST_MODIFIED, Math.ceil(query.modified.upper)),\n )\n }\n return conditions.length > 0 ? combine(BooleanOperation.AND, conditions) : null\n}\n\nexport function supportsQuery(query: FilesSearchQuery): boolean {\n return whereCondition(query) !== null\n}\n\nfunction order(field: Property): string {\n return `<d:order>${property(field)}<d:ascending/></d:order>`\n}\n\nexport function requestBody(\n target: SearchTarget,\n path: PathSpec,\n query: FilesSearchQuery,\n offset: number,\n): string {\n const condition = whereCondition(query)\n if (condition === null) throw new Error('Nextcloud Files Search requires a supported query')\n const selected = SELECT_PROPERTIES.map(propertyTag).join('')\n const ordered = ORDER_PROPERTIES.map(order).join('')\n return `<?xml version=\"1.0\" encoding=\"UTF-8\"?><d:searchrequest xmlns:d=\"${Namespace.DAV}\" xmlns:oc=\"${Namespace.OWNCLOUD}\" xmlns:sd=\"${Namespace.SEARCHDAV}\"><d:basicsearch><d:select><d:prop>${selected}</d:prop></d:select><d:from><d:scope><d:href>${escapeXml(scopePath(target, path))}</d:href><d:depth>${SEARCH_DEPTH}</d:depth></d:scope></d:from><d:where>${condition}</d:where><d:orderby>${ordered}</d:orderby><d:limit><d:nresults>${String(SEARCH_PAGE_SIZE)}</d:nresults><sd:firstresult>${String(offset)}</sd:firstresult></d:limit></d:basicsearch></d:searchrequest>`\n}\n","import { XMLParser } from 'fast-xml-parser'\nimport { SyntaxValidator } from 'fast-xml-validator'\nimport { rstripSlash } from '@struktoai/mirage-core'\nimport { CONTENT_LENGTH, DISPLAY_NAME, LAST_MODIFIED, RESOURCE_TYPE, SIZE } from './constants.ts'\nimport { relativePath } from './target.ts'\nimport type { Property, SearchEntry, SearchTarget, XmlRecord } from './types.ts'\n\nconst parser = new XMLParser({\n ignoreAttributes: false,\n removeNSPrefix: true,\n parseTagValue: false,\n trimValues: false,\n})\n\nfunction isRecord(value: unknown): value is XmlRecord {\n return value !== null && typeof value === 'object' && !Array.isArray(value)\n}\n\nfunction records(value: unknown): XmlRecord[] {\n if (Array.isArray(value)) return value.filter(isRecord)\n return isRecord(value) ? [value] : []\n}\n\nfunction stringValue(value: unknown): string | null {\n if (typeof value === 'string' || typeof value === 'number') return String(value)\n return null\n}\n\nfunction successfulProperties(response: XmlRecord): XmlRecord[] {\n const properties: XmlRecord[] = []\n for (const propstat of records(response.propstat)) {\n const status = stringValue(propstat.status) ?? ''\n const fields = status.split(/\\s+/)\n if (fields[1] === '200' && isRecord(propstat.prop)) properties.push(propstat.prop)\n }\n if (properties.length === 0) {\n throw new Error('Nextcloud Files Search result has no successful properties')\n }\n return properties\n}\n\nfunction findText(properties: XmlRecord[], field: Property): string | null {\n for (const propertySet of properties) {\n const value = stringValue(propertySet[field.name])\n if (value !== null) return value\n }\n return null\n}\n\nfunction hasCollection(properties: XmlRecord[]): boolean {\n return properties.some((propertySet) => {\n const resourceType = propertySet[RESOURCE_TYPE.name]\n return isRecord(resourceType) && 'collection' in resourceType\n })\n}\n\nfunction modifiedTimestamp(value: string | null): number | null {\n if (value === null) return null\n const milliseconds = Date.parse(value)\n if (Number.isNaN(milliseconds)) {\n throw new Error(`invalid Nextcloud Files Search timestamp: ${value}`)\n }\n return milliseconds / 1000\n}\n\nfunction entrySize(properties: XmlRecord[]): number | null {\n const value = findText(properties, SIZE) ?? findText(properties, CONTENT_LENGTH)\n if (value === null) return null\n const size = Number(value)\n if (!Number.isInteger(size)) throw new Error(`invalid Nextcloud Files Search size: ${value}`)\n return size\n}\n\nfunction parseResponse(response: XmlRecord, target: SearchTarget): SearchEntry {\n const href = stringValue(response.href)\n if (href === null) throw new Error('Nextcloud Files Search result is missing href')\n const properties = successfulProperties(response)\n const key = relativePath(href, target)\n return {\n key,\n name: findText(properties, DISPLAY_NAME) ?? rstripSlash(key).split('/').pop() ?? '',\n kind: hasCollection(properties) ? 'd' : 'f',\n size: entrySize(properties),\n modified: modifiedTimestamp(findText(properties, LAST_MODIFIED)),\n }\n}\n\nfunction validateXml(content: string): void {\n try {\n const validation = SyntaxValidator.validate(content)\n if (validation !== true) throw new Error(validation.err.msg)\n } catch (error) {\n const message = error instanceof Error ? error.message : String(error)\n throw new Error(`invalid Nextcloud Files Search XML: ${message}`, { cause: error })\n }\n}\n\nexport function parsePage(content: string, target: SearchTarget): SearchEntry[] {\n validateXml(content)\n const parsed = parser.parse(content) as unknown\n if (!isRecord(parsed) || !('multistatus' in parsed)) {\n throw new Error('invalid Nextcloud Files Search response')\n }\n const multistatus = parsed.multistatus\n if (multistatus === '') return []\n if (!isRecord(multistatus)) throw new Error('invalid Nextcloud Files Search response')\n return records(multistatus.response).map((response) => parseResponse(response, target))\n}\n","import type { PathSpec } from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../../accessor/nextcloud.ts'\nimport {\n SEARCH_HEADERS,\n SEARCH_METHOD,\n SEARCH_PAGE_SIZE,\n UNAVAILABLE_STATUS_CODES,\n} from './constants.ts'\nimport { requestBody, supportsQuery } from './query.ts'\nimport { parsePage } from './response.ts'\nimport { searchTarget } from './target.ts'\nimport type { FilesSearchQuery, SearchEntry } from './types.ts'\n\nfunction authorization(accessor: NextcloudAccessor): string | null {\n const username = accessor.config.username\n if (username === undefined || username === '') return null\n return `Basic ${Buffer.from(`${username}:${accessor.config.password ?? ''}`).toString('base64')}`\n}\n\nexport async function searchFiles(\n accessor: NextcloudAccessor,\n path: PathSpec,\n query: FilesSearchQuery,\n): Promise<SearchEntry[] | null> {\n if (!supportsQuery(query)) return null\n const target = searchTarget(accessor.config.url)\n if (target === null) return null\n const headers: Record<string, string> = { ...SEARCH_HEADERS }\n const auth = authorization(accessor)\n if (auth !== null) headers.Authorization = auth\n const entries = new Map<string, SearchEntry>()\n let offset = 0\n for (;;) {\n const response = await fetch(target.endpoint, {\n method: SEARCH_METHOD,\n headers,\n body: requestBody(target, path, query, offset),\n signal: AbortSignal.timeout((accessor.config.timeout ?? 30) * 1000),\n })\n if (UNAVAILABLE_STATUS_CODES.has(response.status)) return null\n if (!response.ok) {\n throw new Error(`Nextcloud Files Search returned HTTP ${String(response.status)}`)\n }\n if (response.status !== 207) {\n throw new Error(\n `Nextcloud Files Search returned HTTP ${String(response.status)}, expected 207`,\n )\n }\n const page = parsePage(await response.text(), target)\n const previousSize = entries.size\n for (const entry of page) if (!entries.has(entry.key)) entries.set(entry.key, entry)\n if (page.length > 0 && entries.size === previousSize) return null\n if (page.length < SEARCH_PAGE_SIZE) break\n offset += page.length\n }\n return [...entries.values()]\n}\n","import {\n invalidateAfterWrite,\n invalidateAncestors,\n rstripSlash,\n type PathSpec,\n} from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { nextcloudKey } from './util.ts'\n\nexport async function mkdir(\n accessor: NextcloudAccessor,\n path: PathSpec,\n parents = false,\n): Promise<void> {\n const key = `${rstripSlash(nextcloudKey(path))}/`\n const op = await accessor.operator()\n await op.createDir(key)\n await invalidateAfterWrite(path)\n if (parents) await invalidateAncestors(path)\n}\n","import {\n enotdir,\n enoent,\n IndexEntry,\n mountPrefixOf,\n ResourceType,\n rstripSlash,\n stripSlash,\n type IndexCacheStore,\n type PathSpec,\n} from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { SCOPE_ERROR } from './constants.ts'\nimport { isNotFound } from './util.ts'\n\nexport async function readdir(\n accessor: NextcloudAccessor,\n path: PathSpec,\n index?: IndexCacheStore,\n): Promise<string[]> {\n const prefix = mountPrefixOf(path.virtual, path.resourcePath)\n let target = path.pattern !== null ? path.directory : path.virtual\n if (prefix !== '' && target.startsWith(prefix)) {\n const rest = target.slice(prefix.length)\n if (prefix.endsWith('/') || rest === '' || rest.startsWith('/')) target = rest || '/'\n }\n const virtualKey = rstripSlash(prefix !== '' ? `${prefix}${target}` : target) || '/'\n if (index !== undefined) {\n const listing = await index.listDir(virtualKey)\n if (listing.entries !== undefined && listing.entries !== null) return listing.entries\n }\n const stripped = stripSlash(target)\n const listPath = stripped !== '' ? `${stripped}/` : '/'\n const op = await accessor.operator()\n let entries\n try {\n entries = await op.list(listPath)\n } catch (error) {\n if (isNotFound(error)) throw enoent(path)\n throw error\n }\n const names: string[] = []\n const directories = new Set<string>()\n const metadata = new Map<string, { size: number | null; modified: string }>()\n for (const entry of entries) {\n const relative = entry.path()\n if (relative === '' || relative === listPath) continue\n const info = entry.metadata()\n const isDirectory = relative.endsWith('/') || info.isDirectory()\n const key = `/${rstripSlash(relative)}`\n names.push(key)\n if (isDirectory) directories.add(key)\n metadata.set(key, {\n size: info.contentLength !== null ? Number(info.contentLength) : null,\n modified: info.lastModified ?? '',\n })\n }\n const targetKey = `/${stripSlash(target)}`\n if (names.length === 1 && names[0] === targetKey && !directories.has(targetKey)) {\n throw enotdir(path)\n }\n names.sort()\n if (names.length > SCOPE_ERROR) {\n console.warn(\n `nextcloud readdir: ${virtualKey} returned ${String(names.length)} entries (limit ${String(SCOPE_ERROR)})`,\n )\n }\n if (index !== undefined) {\n await index.setDir(\n virtualKey,\n names.map((key) => {\n const name = key.split('/').pop() ?? key\n const info = metadata.get(key)\n return [\n name,\n new IndexEntry({\n id: key,\n name,\n resourceType: directories.has(key) ? ResourceType.FOLDER : ResourceType.FILE,\n size: directories.has(key) ? null : (info?.size ?? null),\n remoteTime: info?.modified ?? '',\n }),\n ]\n }),\n )\n }\n return names.map((key) => (prefix !== '' ? `${prefix}${key}` : key)).sort()\n}\n","import {\n enoent,\n invalidateAfterUnlink,\n invalidateAfterWrite,\n type PathSpec,\n} from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { isNotFound, nextcloudKey } from './util.ts'\n\nexport async function rename(\n accessor: NextcloudAccessor,\n source: PathSpec,\n destination: PathSpec,\n): Promise<void> {\n const op = await accessor.operator()\n try {\n await op.rename(nextcloudKey(source), nextcloudKey(destination))\n } catch (error) {\n if (isNotFound(error)) throw enoent(source)\n throw error\n }\n await invalidateAfterWrite(destination)\n await invalidateAfterUnlink(source)\n}\n","import { enoent, invalidateAfterUnlink, rstripSlash, type PathSpec } from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { isNotFound, nextcloudKey } from './util.ts'\n\nexport async function rmR(accessor: NextcloudAccessor, path: PathSpec): Promise<void> {\n const key = `${rstripSlash(nextcloudKey(path))}/`\n const op = await accessor.operator()\n try {\n await op.removeAll(key)\n } catch (error) {\n if (isNotFound(error)) throw enoent(path)\n throw error\n }\n await invalidateAfterUnlink(path)\n}\n","import { enoent, invalidateAfterUnlink, rstripSlash, type PathSpec } from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { isNotFound, nextcloudKey } from './util.ts'\n\nexport async function rmdir(accessor: NextcloudAccessor, path: PathSpec): Promise<void> {\n const key = `${rstripSlash(nextcloudKey(path))}/`\n const op = await accessor.operator()\n try {\n await op.delete(key)\n } catch (error) {\n if (isNotFound(error)) throw enoent(path)\n throw error\n }\n await invalidateAfterUnlink(path)\n}\n","import { enoent, recordStream, type IndexCacheStore, type PathSpec } from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { DEFAULT_CHUNK_SIZE } from './constants.ts'\nimport { read } from './read.ts'\nimport { isNotFound, nextcloudKey } from './util.ts'\n\nexport function rangeRead(\n accessor: NextcloudAccessor,\n path: PathSpec,\n start: number,\n end: number,\n): Promise<Uint8Array> {\n return read(accessor, path, undefined, { offset: start, size: end - start })\n}\n\nexport async function* stream(\n accessor: NextcloudAccessor,\n path: PathSpec,\n _index?: IndexCacheStore,\n chunkSize = DEFAULT_CHUNK_SIZE,\n): AsyncIterable<Uint8Array> {\n const op = await accessor.operator()\n const rec = recordStream('read', path.virtual, accessor.resourceName)\n let reader\n try {\n reader = await op.reader(nextcloudKey(path))\n } catch (error) {\n if (isNotFound(error)) throw enoent(path)\n throw error\n }\n const buffer = Buffer.alloc(chunkSize)\n for (;;) {\n const size = Number(await reader.read(buffer))\n if (size <= 0) break\n const chunk = new Uint8Array(buffer.subarray(0, size))\n if (rec !== null) rec.bytes += chunk.byteLength\n yield chunk\n }\n}\n","import { invalidateAfterWrite, type PathSpec } from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { isNotFound, nextcloudKey } from './util.ts'\n\nexport async function truncate(\n accessor: NextcloudAccessor,\n path: PathSpec,\n length: number,\n): Promise<void> {\n const op = await accessor.operator()\n const key = nextcloudKey(path)\n let current: Buffer\n try {\n current = await op.read(key)\n } catch (error) {\n if (!isNotFound(error)) throw error\n current = Buffer.alloc(0)\n }\n const next = Buffer.alloc(length)\n current.copy(next, 0, 0, Math.min(current.byteLength, length))\n await op.write(key, next)\n await invalidateAfterWrite(path)\n}\n","import {\n enoent,\n invalidateAfterUnlink,\n record,\n ResourceName,\n type PathSpec,\n} from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { isNotFound, nextcloudKey } from './util.ts'\n\nexport async function unlink(accessor: NextcloudAccessor, path: PathSpec): Promise<void> {\n const op = await accessor.operator()\n const startMs = performance.now()\n try {\n await op.delete(nextcloudKey(path))\n } catch (error) {\n if (isNotFound(error)) throw enoent(path)\n throw error\n }\n record('unlink', path.virtual, ResourceName.NEXTCLOUD, 0, startMs)\n await invalidateAfterUnlink(path)\n}\n","import type { CommandIO } from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../../accessor/nextcloud.ts'\nimport { SCOPE_ERROR } from '../../../core/nextcloud/constants.ts'\nimport { copy } from '../../../core/nextcloud/copy.ts'\nimport { create } from '../../../core/nextcloud/create.ts'\nimport { du, duAll } from '../../../core/nextcloud/du.ts'\nimport { exists } from '../../../core/nextcloud/exists.ts'\nimport { find } from '../../../core/nextcloud/find.ts'\nimport { mkdir } from '../../../core/nextcloud/mkdir.ts'\nimport { read } from '../../../core/nextcloud/read.ts'\nimport { readdir } from '../../../core/nextcloud/readdir.ts'\nimport { rename } from '../../../core/nextcloud/rename.ts'\nimport { rmR } from '../../../core/nextcloud/rm.ts'\nimport { rmdir } from '../../../core/nextcloud/rmdir.ts'\nimport { stat } from '../../../core/nextcloud/stat.ts'\nimport { stream } from '../../../core/nextcloud/stream.ts'\nimport { truncate } from '../../../core/nextcloud/truncate.ts'\nimport { unlink } from '../../../core/nextcloud/unlink.ts'\nimport { write } from '../../../core/nextcloud/write.ts'\n\nexport const NEXTCLOUD_IO: CommandIO<NextcloudAccessor> = {\n maxGlobMatches: SCOPE_ERROR,\n readdir,\n readBytes: read,\n readStream: stream,\n stat,\n isMounted: () => true,\n local: false,\n write,\n exists,\n mkdir,\n unlink,\n rmdir,\n rmR,\n rename,\n copy,\n create,\n truncate,\n find,\n duTotal: du,\n duAll,\n}\n","import { makeGenericOps, ResourceName, type RegisteredOp } from '@struktoai/mirage-core'\nimport { NEXTCLOUD_IO } from '../../commands/builtin/nextcloud/io.ts'\n\nexport const NEXTCLOUD_OPS: readonly RegisteredOp[] = makeGenericOps(\n ResourceName.NEXTCLOUD,\n NEXTCLOUD_IO,\n { filetypeRead: ['.feather', '.hdf5', '.parquet'] },\n)\n","export const NEXTCLOUD_PROMPT = 'You have access to files stored in Nextcloud.'\n"],"mappings":"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","names":["mountPrefixOf","ResourceName","ResourceName","ResourceName","ResourceName","enoent","mountPrefixOf","mountPrefixOf","enoent","enoent","enoent","enoent","invalidateAfterWrite","record","ResourceName","enoent","record","ResourceName","invalidateAfterWrite","FileType","lstripSlash","stripSlash","FileType","stripSlash","lstripSlash","rstripSlash","stripSlash","stripSlash","stripSlash","rstripSlash","rstripSlash","stripSlash","rstripSlash","modifiedTimestamp","start","invalidateAfterWrite","rstripSlash","rstripSlash","invalidateAfterWrite","enoent","mountPrefixOf","ResourceType","rstripSlash","stripSlash","mountPrefixOf","rstripSlash","stripSlash","enoent","ResourceType","enoent","invalidateAfterWrite","enoent","invalidateAfterWrite","enoent","invalidateAfterUnlink","rstripSlash","rstripSlash","enoent","invalidateAfterUnlink","enoent","invalidateAfterUnlink","rstripSlash","rstripSlash","enoent","invalidateAfterUnlink","enoent","enoent","invalidateAfterWrite","invalidateAfterWrite","enoent","invalidateAfterUnlink","record","ResourceName","enoent","record","ResourceName","invalidateAfterUnlink","ResourceName","ResourceName","ResourceName","ResourceName","mountPrefixOf"]}
@@ -1,9 +0,0 @@
1
- import {
2
- normalizeGDocsConfig,
3
- redactGDocsConfig
4
- } from "./chunk-JHI2PHHD.js";
5
- export {
6
- normalizeGDocsConfig,
7
- redactGDocsConfig
8
- };
9
- //# sourceMappingURL=config-3WDIJPTG.js.map
@@ -1,9 +0,0 @@
1
- import {
2
- normalizeSlackConfig,
3
- redactSlackConfig
4
- } from "./chunk-IEHPTILN.js";
5
- export {
6
- normalizeSlackConfig,
7
- redactSlackConfig
8
- };
9
- //# sourceMappingURL=config-4QV4QYI5.js.map
@@ -1,9 +0,0 @@
1
- import {
2
- normalizeGSheetsConfig,
3
- redactGSheetsConfig
4
- } from "./chunk-D3U7VQCG.js";
5
- export {
6
- normalizeGSheetsConfig,
7
- redactGSheetsConfig
8
- };
9
- //# sourceMappingURL=config-5ZXN2T2H.js.map
@@ -1,9 +0,0 @@
1
- import {
2
- normalizeDiscordConfig,
3
- redactDiscordConfig
4
- } from "./chunk-EVK6HH6Z.js";
5
- export {
6
- normalizeDiscordConfig,
7
- redactDiscordConfig
8
- };
9
- //# sourceMappingURL=config-EHE52ZTK.js.map
@@ -1,9 +0,0 @@
1
- import {
2
- normalizeNotionConfig,
3
- redactNotionConfig
4
- } from "./chunk-VIICUPWQ.js";
5
- export {
6
- normalizeNotionConfig,
7
- redactNotionConfig
8
- };
9
- //# sourceMappingURL=config-HTXOOAOD.js.map
@@ -1,9 +0,0 @@
1
- import {
2
- normalizeGDriveConfig,
3
- redactGDriveConfig
4
- } from "./chunk-KGC2OGXI.js";
5
- export {
6
- normalizeGDriveConfig,
7
- redactGDriveConfig
8
- };
9
- //# sourceMappingURL=config-K63RX6EU.js.map
@@ -1,9 +0,0 @@
1
- import {
2
- normalizeLinearConfig,
3
- redactLinearConfig
4
- } from "./chunk-IKJQOYI4.js";
5
- export {
6
- normalizeLinearConfig,
7
- redactLinearConfig
8
- };
9
- //# sourceMappingURL=config-LEALEMKA.js.map
@@ -1,9 +0,0 @@
1
- import {
2
- normalizeGSlidesConfig,
3
- redactGSlidesConfig
4
- } from "./chunk-GTAS3QVC.js";
5
- export {
6
- normalizeGSlidesConfig,
7
- redactGSlidesConfig
8
- };
9
- //# sourceMappingURL=config-RI7IEZUF.js.map
@@ -1,7 +0,0 @@
1
- import {
2
- DatabricksVolumeResource
3
- } from "./chunk-HGIPWY5Y.js";
4
- export {
5
- DatabricksVolumeResource
6
- };
7
- //# sourceMappingURL=databricks_volume-ETRDJVVQ.js.map
@@ -1,10 +0,0 @@
1
- import {
2
- DigitalOceanResource
3
- } from "./chunk-CXQGMFI7.js";
4
- import "./chunk-3ASOQTZB.js";
5
- import "./chunk-IUXXZHY3.js";
6
- import "./chunk-HCU3B6FW.js";
7
- export {
8
- DigitalOceanResource
9
- };
10
- //# sourceMappingURL=digitalocean-QP72DR4J.js.map
@@ -1,8 +0,0 @@
1
- import {
2
- DiscordResource
3
- } from "./chunk-RHUEV4I7.js";
4
- import "./chunk-EVK6HH6Z.js";
5
- export {
6
- DiscordResource
7
- };
8
- //# sourceMappingURL=discord-BSN5RB3E.js.map
@@ -1,7 +0,0 @@
1
- import {
2
- DiskResource
3
- } from "./chunk-W5ZLIQFR.js";
4
- export {
5
- DiskResource
6
- };
7
- //# sourceMappingURL=disk-24NWTN2I.js.map
@@ -1,8 +0,0 @@
1
- import {
2
- DropboxResource
3
- } from "./chunk-HWQPEBID.js";
4
- import "./chunk-HSD24IP2.js";
5
- export {
6
- DropboxResource
7
- };
8
- //# sourceMappingURL=dropbox-OSTZXSIE.js.map
@@ -1,8 +0,0 @@
1
- import {
2
- EmailResource
3
- } from "./chunk-4GYB7DGC.js";
4
- import "./chunk-CQCTCW4S.js";
5
- export {
6
- EmailResource
7
- };
8
- //# sourceMappingURL=email-4ZFPSWIN.js.map
@@ -1,10 +0,0 @@
1
- import {
2
- GCSResource
3
- } from "./chunk-25W4XQJZ.js";
4
- import "./chunk-E3KXVEYI.js";
5
- import "./chunk-IUXXZHY3.js";
6
- import "./chunk-HCU3B6FW.js";
7
- export {
8
- GCSResource
9
- };
10
- //# sourceMappingURL=gcs-PFWR6MIW.js.map
@@ -1,8 +0,0 @@
1
- import {
2
- GDocsResource
3
- } from "./chunk-JEBH5APX.js";
4
- import "./chunk-JHI2PHHD.js";
5
- export {
6
- GDocsResource
7
- };
8
- //# sourceMappingURL=gdocs-GPAZRQG5.js.map
@@ -1,8 +0,0 @@
1
- import {
2
- GDriveResource
3
- } from "./chunk-VLRSOWHP.js";
4
- import "./chunk-KGC2OGXI.js";
5
- export {
6
- GDriveResource
7
- };
8
- //# sourceMappingURL=gdrive-XSX6A7B3.js.map
@@ -1,8 +0,0 @@
1
- import {
2
- GitHubResource
3
- } from "./chunk-5YRWF5RP.js";
4
- import "./chunk-XUUSWR4U.js";
5
- export {
6
- GitHubResource
7
- };
8
- //# sourceMappingURL=github-EQ4NXUTA.js.map
@@ -1,8 +0,0 @@
1
- import {
2
- GitHubCIResource
3
- } from "./chunk-JBDFYIN2.js";
4
- import "./chunk-ZPB3SLPK.js";
5
- export {
6
- GitHubCIResource
7
- };
8
- //# sourceMappingURL=github_ci-QL5B2Q2N.js.map
@@ -1,9 +0,0 @@
1
- import {
2
- GridFSResource
3
- } from "./chunk-CGGO5NKD.js";
4
- import "./chunk-OQKNDS66.js";
5
- import "./chunk-C7TNKIK5.js";
6
- export {
7
- GridFSResource
8
- };
9
- //# sourceMappingURL=gridfs-KZRZ6SIB.js.map
@@ -1,8 +0,0 @@
1
- import {
2
- GSheetsResource
3
- } from "./chunk-SAOQW6ZJ.js";
4
- import "./chunk-D3U7VQCG.js";
5
- export {
6
- GSheetsResource
7
- };
8
- //# sourceMappingURL=gsheets-N53WEXN2.js.map
@@ -1,8 +0,0 @@
1
- import {
2
- GSlidesResource
3
- } from "./chunk-YRJICL2Q.js";
4
- import "./chunk-GTAS3QVC.js";
5
- export {
6
- GSlidesResource
7
- };
8
- //# sourceMappingURL=gslides-TATSARTH.js.map
@@ -1,10 +0,0 @@
1
- import {
2
- HfBucketsResource
3
- } from "./chunk-4M73WHIE.js";
4
- import "./chunk-HEDE2377.js";
5
- import "./chunk-KAWDDS27.js";
6
- import "./chunk-OQKNDS66.js";
7
- export {
8
- HfBucketsResource
9
- };
10
- //# sourceMappingURL=hf_buckets-BK7NGJWS.js.map
@@ -1,10 +0,0 @@
1
- import {
2
- HfDatasetsResource
3
- } from "./chunk-DXU7NZPH.js";
4
- import "./chunk-HEDE2377.js";
5
- import "./chunk-KAWDDS27.js";
6
- import "./chunk-OQKNDS66.js";
7
- export {
8
- HfDatasetsResource
9
- };
10
- //# sourceMappingURL=hf_datasets-UQ5QGM4L.js.map
@@ -1,10 +0,0 @@
1
- import {
2
- HfModelsResource
3
- } from "./chunk-V7JVMG63.js";
4
- import "./chunk-HEDE2377.js";
5
- import "./chunk-KAWDDS27.js";
6
- import "./chunk-OQKNDS66.js";
7
- export {
8
- HfModelsResource
9
- };
10
- //# sourceMappingURL=hf_models-75LFCQCS.js.map
@@ -1,10 +0,0 @@
1
- import {
2
- HfSpacesResource
3
- } from "./chunk-BWWU5T2D.js";
4
- import "./chunk-HEDE2377.js";
5
- import "./chunk-KAWDDS27.js";
6
- import "./chunk-OQKNDS66.js";
7
- export {
8
- HfSpacesResource
9
- };
10
- //# sourceMappingURL=hf_spaces-6T2KB3UC.js.map
@@ -1,8 +0,0 @@
1
- import {
2
- LangfuseResource
3
- } from "./chunk-M6E7VK4D.js";
4
- import "./chunk-AULFV3KY.js";
5
- export {
6
- LangfuseResource
7
- };
8
- //# sourceMappingURL=langfuse-AMQCQWNE.js.map
@@ -1,8 +0,0 @@
1
- import {
2
- LinearResource
3
- } from "./chunk-ZMREYTHA.js";
4
- import "./chunk-IKJQOYI4.js";
5
- export {
6
- LinearResource
7
- };
8
- //# sourceMappingURL=linear-V3TXO6CV.js.map
@@ -1,10 +0,0 @@
1
- import {
2
- MinIOResource
3
- } from "./chunk-4X6CLF4F.js";
4
- import "./chunk-GF75O2EN.js";
5
- import "./chunk-IUXXZHY3.js";
6
- import "./chunk-HCU3B6FW.js";
7
- export {
8
- MinIOResource
9
- };
10
- //# sourceMappingURL=minio-IZRZY4C5.js.map
@@ -1,7 +0,0 @@
1
- import {
2
- MongoDBResource
3
- } from "./chunk-FRGTDZQT.js";
4
- export {
5
- MongoDBResource
6
- };
7
- //# sourceMappingURL=mongodb-VMKPQCPX.js.map
@@ -1,9 +0,0 @@
1
- import {
2
- NextcloudResource
3
- } from "./chunk-ZPZQXHW2.js";
4
- import "./chunk-MRXTUFBZ.js";
5
- import "./chunk-OQKNDS66.js";
6
- export {
7
- NextcloudResource
8
- };
9
- //# sourceMappingURL=nextcloud-5RHQCGDO.js.map
@@ -1,8 +0,0 @@
1
- import {
2
- NotionResource
3
- } from "./chunk-SI4GMRXD.js";
4
- import "./chunk-VIICUPWQ.js";
5
- export {
6
- NotionResource
7
- };
8
- //# sourceMappingURL=notion-6PPNTQFM.js.map
@@ -1,10 +0,0 @@
1
- import {
2
- OCIResource
3
- } from "./chunk-TUNR4VUM.js";
4
- import "./chunk-H62XQZUM.js";
5
- import "./chunk-IUXXZHY3.js";
6
- import "./chunk-HCU3B6FW.js";
7
- export {
8
- OCIResource
9
- };
10
- //# sourceMappingURL=oci-CKYBSFZJ.js.map
@@ -1,7 +0,0 @@
1
- import {
2
- PostgresResource
3
- } from "./chunk-VHED2STW.js";
4
- export {
5
- PostgresResource
6
- };
7
- //# sourceMappingURL=postgres-WIQBVL5M.js.map
@@ -1,10 +0,0 @@
1
- import {
2
- QingStorResource
3
- } from "./chunk-5I7Q7RHW.js";
4
- import "./chunk-WWP2STF5.js";
5
- import "./chunk-IUXXZHY3.js";
6
- import "./chunk-HCU3B6FW.js";
7
- export {
8
- QingStorResource
9
- };
10
- //# sourceMappingURL=qingstor-AP4IIPLY.js.map
@@ -1,10 +0,0 @@
1
- import {
2
- R2Resource
3
- } from "./chunk-ZM44MGC5.js";
4
- import "./chunk-VBYIDRNU.js";
5
- import "./chunk-IUXXZHY3.js";
6
- import "./chunk-HCU3B6FW.js";
7
- export {
8
- R2Resource
9
- };
10
- //# sourceMappingURL=r2-C4XGEWQY.js.map
@@ -1,8 +0,0 @@
1
- import {
2
- S3Resource
3
- } from "./chunk-IUXXZHY3.js";
4
- import "./chunk-HCU3B6FW.js";
5
- export {
6
- S3Resource
7
- };
8
- //# sourceMappingURL=s3-XQBI2CXN.js.map
@@ -1,10 +0,0 @@
1
- import {
2
- ScalewayResource
3
- } from "./chunk-L4GMDSMB.js";
4
- import "./chunk-YBVMZ7SR.js";
5
- import "./chunk-IUXXZHY3.js";
6
- import "./chunk-HCU3B6FW.js";
7
- export {
8
- ScalewayResource
9
- };
10
- //# sourceMappingURL=scaleway-SEZJVURB.js.map
@@ -1,10 +0,0 @@
1
- import {
2
- SeaweedFSResource
3
- } from "./chunk-NLXJMXVE.js";
4
- import "./chunk-MIQ3ECZM.js";
5
- import "./chunk-IUXXZHY3.js";
6
- import "./chunk-HCU3B6FW.js";
7
- export {
8
- SeaweedFSResource
9
- };
10
- //# sourceMappingURL=seaweedfs-3XYIAFU2.js.map