@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
package/README.md CHANGED
@@ -46,7 +46,8 @@ await ws.execute('cp /s3/report.csv /data/local.csv')
46
46
  await ws.execute('wc -l $(find /s3/data -name "*.jsonl")')
47
47
 
48
48
  // Commands are extensible: register new commands, or override one per
49
- // resource + filetype, e.g. `cat` on S3 Parquet renders rows as JSON.
49
+ // resource + filetype. Mirage ships no filetype renderers, so a format
50
+ // like Parquet renders however you register it.
50
51
  ws.command('summarize', ...)
51
52
  ws.command('cat', { resource: 's3', filetype: 'parquet' }, ...)
52
53
 
@@ -0,0 +1,11 @@
1
+ import {
2
+ AliyunResource
3
+ } from "./chunk-I7CPLZNW.js";
4
+ import "./chunk-U6DFQRG3.js";
5
+ import "./chunk-7ZP6TPHX.js";
6
+ import "./chunk-EJZG5VUF.js";
7
+ import "./chunk-3JZQ6VSZ.js";
8
+ export {
9
+ AliyunResource
10
+ };
11
+ //# sourceMappingURL=aliyun-S62BR3TB.js.map
@@ -0,0 +1,17 @@
1
+ local n = tonumber(redis.call('GET', KEYS[2]) or '0')
2
+ if redis.call('EXISTS', KEYS[3]) == 1 then
3
+ return n
4
+ end
5
+ n = redis.call('INCR', KEYS[2])
6
+ redis.call('XADD', KEYS[1], tostring(n) .. '-0',
7
+ 'c', ARGV[1], 'd', ARGV[2], 't', ARGV[3])
8
+ if ARGV[4] == '1' then
9
+ redis.call('SET', KEYS[3], '1')
10
+ end
11
+ local ttl = tonumber(ARGV[5])
12
+ if ttl > 0 then
13
+ redis.call('EXPIRE', KEYS[1], ttl)
14
+ redis.call('EXPIRE', KEYS[2], ttl)
15
+ redis.call('EXPIRE', KEYS[3], ttl)
16
+ end
17
+ return n
@@ -0,0 +1,11 @@
1
+ import {
2
+ BackblazeResource
3
+ } from "./chunk-QQ7FP4GD.js";
4
+ import "./chunk-EUPXAYPB.js";
5
+ import "./chunk-7ZP6TPHX.js";
6
+ import "./chunk-EJZG5VUF.js";
7
+ import "./chunk-3JZQ6VSZ.js";
8
+ export {
9
+ BackblazeResource
10
+ };
11
+ //# sourceMappingURL=backblaze-4EKSW63F.js.map
@@ -0,0 +1,8 @@
1
+ import {
2
+ BoxResource
3
+ } from "./chunk-JXOMDLFS.js";
4
+ import "./chunk-L42UTDFK.js";
5
+ export {
6
+ BoxResource
7
+ };
8
+ //# sourceMappingURL=box-ZPLZAGMK.js.map
@@ -0,0 +1,11 @@
1
+ import {
2
+ CephResource
3
+ } from "./chunk-N72RLCMU.js";
4
+ import "./chunk-PSXXEGYQ.js";
5
+ import "./chunk-7ZP6TPHX.js";
6
+ import "./chunk-EJZG5VUF.js";
7
+ import "./chunk-3JZQ6VSZ.js";
8
+ export {
9
+ CephResource
10
+ };
11
+ //# sourceMappingURL=ceph-ALKLD3MO.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
- redactGDriveConfig
3
- } from "./chunk-KGC2OGXI.js";
2
+ redactGoogleConfig
3
+ } from "./chunk-IZMKMD3O.js";
4
4
 
5
5
  // src/resource/gdrive/gdrive.ts
6
6
  import {
@@ -31,21 +31,12 @@ var GDriveResource = class extends BaseResource {
31
31
  constructor(config) {
32
32
  super();
33
33
  this.config = config;
34
- const tm = new TokenManager({
35
- clientId: config.clientId,
36
- clientSecret: config.clientSecret,
37
- refreshToken: config.refreshToken,
38
- ...config.refreshFn !== void 0 ? { refreshFn: config.refreshFn } : {},
39
- ...config.folderId !== void 0 ? { folderId: config.folderId } : {}
40
- });
34
+ const tm = new TokenManager(config);
41
35
  this.accessor = new GDriveAccessor({ tokenManager: tm });
42
36
  }
43
37
  open() {
44
38
  return Promise.resolve();
45
39
  }
46
- close() {
47
- return Promise.resolve();
48
- }
49
40
  commands() {
50
41
  return GDRIVE_COMMANDS;
51
42
  }
@@ -76,7 +67,7 @@ var GDriveResource = class extends BaseResource {
76
67
  getState() {
77
68
  return Promise.resolve({
78
69
  type: this.kind,
79
- config: redactGDriveConfig(this.config)
70
+ config: redactGoogleConfig(this.config)
80
71
  });
81
72
  }
82
73
  loadState(_state) {
@@ -87,4 +78,4 @@ var GDriveResource = class extends BaseResource {
87
78
  export {
88
79
  GDriveResource
89
80
  };
90
- //# sourceMappingURL=chunk-VLRSOWHP.js.map
81
+ //# sourceMappingURL=chunk-2A4YGVBM.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/resource/gdrive/gdrive.ts"],"sourcesContent":["// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nimport {\n BaseResource,\n GDRIVE_COMMANDS,\n GDRIVE_PROMPT,\n GDRIVE_OPS,\n GDriveAccessor,\n PathSpec,\n ResourceName,\n TokenManager,\n gdriveRead,\n gdriveReaddir,\n makeResolveGlob,\n gdriveStat,\n mountKey,\n mountPrefixOf,\n type FileStat,\n type RegisteredCommand,\n type RegisteredOp,\n type Resource,\n} from '@struktoai/mirage-core'\nimport { redactGDriveConfig, type GDriveConfig, type GDriveConfigRedacted } from './config.ts'\n\nconst gdriveResolveGlob = makeResolveGlob(gdriveReaddir)\n\nexport interface GDriveResourceState {\n type: string\n config: GDriveConfigRedacted\n}\n\nexport class GDriveResource extends BaseResource implements Resource {\n readonly kind: string = ResourceName.GDRIVE\n readonly cachesReads: boolean = true\n readonly supportsSnapshot: boolean = true\n override readonly indexTtl: number = 86_400\n readonly prompt: string = GDRIVE_PROMPT\n readonly config: GDriveConfig\n readonly accessor: GDriveAccessor\n\n constructor(config: GDriveConfig) {\n super()\n this.config = config\n const tm = new TokenManager(config)\n this.accessor = new GDriveAccessor({ tokenManager: tm })\n }\n\n open(): Promise<void> {\n return Promise.resolve()\n }\n\n commands(): readonly RegisteredCommand[] {\n return GDRIVE_COMMANDS\n }\n\n ops(): readonly RegisteredOp[] {\n return GDRIVE_OPS\n }\n\n readFile(p: PathSpec): Promise<Uint8Array> {\n return gdriveRead(this.accessor, p, this.index)\n }\n\n readdir(p: PathSpec): Promise<string[]> {\n return gdriveReaddir(this.accessor, p, this.index)\n }\n\n stat(p: PathSpec): Promise<FileStat> {\n return gdriveStat(this.accessor, p, this.index)\n }\n\n glob(paths: readonly PathSpec[], prefix = ''): Promise<PathSpec[]> {\n const effective =\n prefix !== ''\n ? paths.map((p) =>\n mountPrefixOf(p.virtual, p.resourcePath) !== ''\n ? p\n : new PathSpec({\n virtual: p.virtual,\n directory: p.directory,\n ...(p.pattern !== null ? { pattern: p.pattern } : {}),\n resolved: p.resolved,\n resourcePath: mountKey(p.virtual, prefix),\n }),\n )\n : paths\n return gdriveResolveGlob(this.accessor, effective, this.index)\n }\n\n getState(): Promise<GDriveResourceState> {\n return Promise.resolve({\n type: this.kind,\n config: redactGDriveConfig(this.config),\n })\n }\n\n loadState(_state: GDriveResourceState): Promise<void> {\n return Promise.resolve()\n }\n}\n"],"mappings":";;;;;AAcA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAKK;AAGP,IAAM,oBAAoB,gBAAgB,aAAa;AAOhD,IAAM,iBAAN,cAA6B,aAAiC;AAAA,EAC1D,OAAe,aAAa;AAAA,EAC5B,cAAuB;AAAA,EACvB,mBAA4B;AAAA,EACnB,WAAmB;AAAA,EAC5B,SAAiB;AAAA,EACjB;AAAA,EACA;AAAA,EAET,YAAY,QAAsB;AAChC,UAAM;AACN,SAAK,SAAS;AACd,UAAM,KAAK,IAAI,aAAa,MAAM;AAClC,SAAK,WAAW,IAAI,eAAe,EAAE,cAAc,GAAG,CAAC;AAAA,EACzD;AAAA,EAEA,OAAsB;AACpB,WAAO,QAAQ,QAAQ;AAAA,EACzB;AAAA,EAEA,WAAyC;AACvC,WAAO;AAAA,EACT;AAAA,EAEA,MAA+B;AAC7B,WAAO;AAAA,EACT;AAAA,EAEA,SAAS,GAAkC;AACzC,WAAO,WAAW,KAAK,UAAU,GAAG,KAAK,KAAK;AAAA,EAChD;AAAA,EAEA,QAAQ,GAAgC;AACtC,WAAO,cAAc,KAAK,UAAU,GAAG,KAAK,KAAK;AAAA,EACnD;AAAA,EAEA,KAAK,GAAgC;AACnC,WAAO,WAAW,KAAK,UAAU,GAAG,KAAK,KAAK;AAAA,EAChD;AAAA,EAEA,KAAK,OAA4B,SAAS,IAAyB;AACjE,UAAM,YACJ,WAAW,KACP,MAAM;AAAA,MAAI,CAAC,MACT,cAAc,EAAE,SAAS,EAAE,YAAY,MAAM,KACzC,IACA,IAAI,SAAS;AAAA,QACX,SAAS,EAAE;AAAA,QACX,WAAW,EAAE;AAAA,QACb,GAAI,EAAE,YAAY,OAAO,EAAE,SAAS,EAAE,QAAQ,IAAI,CAAC;AAAA,QACnD,UAAU,EAAE;AAAA,QACZ,cAAc,SAAS,EAAE,SAAS,MAAM;AAAA,MAC1C,CAAC;AAAA,IACP,IACA;AACN,WAAO,kBAAkB,KAAK,UAAU,WAAW,KAAK,KAAK;AAAA,EAC/D;AAAA,EAEA,WAAyC;AACvC,WAAO,QAAQ,QAAQ;AAAA,MACrB,MAAM,KAAK;AAAA,MACX,QAAQ,mBAAmB,KAAK,MAAM;AAAA,IACxC,CAAC;AAAA,EACH;AAAA,EAEA,UAAU,QAA4C;AACpD,WAAO,QAAQ,QAAQ;AAAA,EACzB;AACF;","names":[]}
@@ -0,0 +1,28 @@
1
+ // src/resource/jaeger/config.ts
2
+ import { normalizeFields, redactConfigWithSchema, z } from "@struktoai/mirage-core";
3
+ var JaegerConfigSchema = z.object({
4
+ host: z.string().optional(),
5
+ defaultTraceLimit: z.number().optional(),
6
+ defaultFromTimestamp: z.string().optional(),
7
+ defaultToTimestamp: z.string().optional(),
8
+ requestTimeout: z.number().optional()
9
+ });
10
+ function redactJaegerConfig(config) {
11
+ return redactConfigWithSchema(JaegerConfigSchema, config);
12
+ }
13
+ function normalizeJaegerConfig(input) {
14
+ return normalizeFields(input, {
15
+ rename: {
16
+ default_trace_limit: "defaultTraceLimit",
17
+ default_from_timestamp: "defaultFromTimestamp",
18
+ default_to_timestamp: "defaultToTimestamp",
19
+ request_timeout: "requestTimeout"
20
+ }
21
+ });
22
+ }
23
+
24
+ export {
25
+ redactJaegerConfig,
26
+ normalizeJaegerConfig
27
+ };
28
+ //# sourceMappingURL=chunk-2HCYLVGY.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/resource/jaeger/config.ts"],"sourcesContent":["// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nimport { type ConfigOf, normalizeFields, redactConfigWithSchema, z } from '@struktoai/mirage-core'\n\nconst JaegerConfigSchema = z.object({\n host: z.string().optional(),\n defaultTraceLimit: z.number().optional(),\n defaultFromTimestamp: z.string().optional(),\n defaultToTimestamp: z.string().optional(),\n requestTimeout: z.number().optional(),\n})\n\nexport type JaegerConfig = ConfigOf<typeof JaegerConfigSchema>\n\n// Nothing on a Jaeger config is a secret, so the twin is the config.\nexport type JaegerConfigRedacted = JaegerConfig\n\nexport function redactJaegerConfig(config: JaegerConfig): JaegerConfigRedacted {\n return redactConfigWithSchema(JaegerConfigSchema, config) as unknown as JaegerConfigRedacted\n}\n\nexport function normalizeJaegerConfig(input: Record<string, unknown>): JaegerConfig {\n return normalizeFields(input, {\n rename: {\n default_trace_limit: 'defaultTraceLimit',\n default_from_timestamp: 'defaultFromTimestamp',\n default_to_timestamp: 'defaultToTimestamp',\n request_timeout: 'requestTimeout',\n },\n }) as unknown as JaegerConfig\n}\n"],"mappings":";AAcA,SAAwB,iBAAiB,wBAAwB,SAAS;AAE1E,IAAM,qBAAqB,EAAE,OAAO;AAAA,EAClC,MAAM,EAAE,OAAO,EAAE,SAAS;AAAA,EAC1B,mBAAmB,EAAE,OAAO,EAAE,SAAS;AAAA,EACvC,sBAAsB,EAAE,OAAO,EAAE,SAAS;AAAA,EAC1C,oBAAoB,EAAE,OAAO,EAAE,SAAS;AAAA,EACxC,gBAAgB,EAAE,OAAO,EAAE,SAAS;AACtC,CAAC;AAOM,SAAS,mBAAmB,QAA4C;AAC7E,SAAO,uBAAuB,oBAAoB,MAAM;AAC1D;AAEO,SAAS,sBAAsB,OAA8C;AAClF,SAAO,gBAAgB,OAAO;AAAA,IAC5B,QAAQ;AAAA,MACN,qBAAqB;AAAA,MACrB,wBAAwB;AAAA,MACxB,sBAAsB;AAAA,MACtB,iBAAiB;AAAA,IACnB;AAAA,EACF,CAAC;AACH;","names":[]}
@@ -0,0 +1,20 @@
1
+ import {
2
+ makeRegionAlias
3
+ } from "./chunk-7ZP6TPHX.js";
4
+
5
+ // src/resource/tencent/config.ts
6
+ var alias = makeRegionAlias(
7
+ (config) => `https://cos.${config.region}.myqcloud.com`
8
+ );
9
+ var resolvedTencentEndpoint = alias.resolvedEndpoint;
10
+ var tencentToS3Config = alias.toS3Config;
11
+ var redactTencentConfig = alias.redact;
12
+ var normalizeTencentConfig = alias.normalize;
13
+
14
+ export {
15
+ resolvedTencentEndpoint,
16
+ tencentToS3Config,
17
+ redactTencentConfig,
18
+ normalizeTencentConfig
19
+ };
20
+ //# sourceMappingURL=chunk-2VPZAH5Q.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/resource/tencent/config.ts"],"sourcesContent":["// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nimport { makeRegionAlias, type S3AliasConfig, type S3AliasConfigRedacted } from '../s3_alias.ts'\n\nexport interface TencentConfig extends S3AliasConfig {\n region: string\n}\n\nexport type TencentConfigRedacted = S3AliasConfigRedacted\n\nconst alias = makeRegionAlias<TencentConfig, TencentConfigRedacted>(\n (config) => `https://cos.${config.region}.myqcloud.com`,\n)\n\nexport const resolvedTencentEndpoint = alias.resolvedEndpoint\nexport const tencentToS3Config = alias.toS3Config\nexport const redactTencentConfig = alias.redact\nexport const normalizeTencentConfig = alias.normalize\n"],"mappings":";;;;;AAsBA,IAAM,QAAQ;AAAA,EACZ,CAAC,WAAW,eAAe,OAAO,MAAM;AAC1C;AAEO,IAAM,0BAA0B,MAAM;AACtC,IAAM,oBAAoB,MAAM;AAChC,IAAM,sBAAsB,MAAM;AAClC,IAAM,yBAAyB,MAAM;","names":[]}
@@ -3,10 +3,12 @@ import {
3
3
  normalizeFields,
4
4
  redactConfigWithSchema,
5
5
  S3ConfigSchema as S3CoreConfigSchema,
6
+ secretStr,
6
7
  z
7
8
  } from "@struktoai/mirage-core";
8
9
  var S3ConfigSchema = S3CoreConfigSchema.extend({
9
- profile: z.string().optional()
10
+ profile: z.string().optional(),
11
+ proxy: secretStr().optional()
10
12
  });
11
13
  function redactConfig(config) {
12
14
  return redactConfigWithSchema(S3ConfigSchema, config);
@@ -25,8 +27,7 @@ function normalizeS3Config(input) {
25
27
  },
26
28
  transform: {
27
29
  timeout: (v) => typeof v === "number" ? v * 1e3 : v
28
- },
29
- drop: ["proxy"]
30
+ }
30
31
  });
31
32
  }
32
33
 
@@ -34,4 +35,4 @@ export {
34
35
  redactConfig,
35
36
  normalizeS3Config
36
37
  };
37
- //# sourceMappingURL=chunk-HCU3B6FW.js.map
38
+ //# sourceMappingURL=chunk-3JZQ6VSZ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/resource/s3/config.ts"],"sourcesContent":["// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nimport {\n type ConfigOf,\n normalizeFields,\n redactConfigWithSchema,\n S3ConfigSchema as S3CoreConfigSchema,\n type S3Config as S3CoreConfig,\n type RedactedConfig,\n secretStr,\n z,\n} from '@struktoai/mirage-core'\n\nexport interface S3Config extends S3CoreConfig {\n profile?: string\n proxy?: string\n}\n\nconst S3ConfigSchema = S3CoreConfigSchema.extend({\n profile: z.string().optional(),\n proxy: secretStr().optional(),\n})\n\nexport type S3ConfigRedacted = RedactedConfig<\n ConfigOf<typeof S3ConfigSchema>,\n | 'accessKeyId'\n | 'secretAccessKey'\n | 'sessionToken'\n | 'presignedUrlProvider'\n | 'httpAgentProvider'\n | 'proxy'\n>\n\nexport function redactConfig(config: S3Config): S3ConfigRedacted {\n return redactConfigWithSchema(S3ConfigSchema, config) as unknown as S3ConfigRedacted\n}\n\n/**\n * Translate Python-style snake_case keys (as used in YAML configs and the\n * Python `S3Config`) to the TS-idiomatic camelCase fields. Already-camelCase\n * keys pass through unchanged so user code that constructs `S3Config`\n * directly keeps working.\n *\n * Python ↔ TS mapping:\n * aws_access_key_id ↔ accessKeyId\n * aws_secret_access_key ↔ secretAccessKey\n * aws_session_token ↔ sessionToken\n * aws_profile ↔ profile\n * endpoint_url ↔ endpoint\n * path_style ↔ forcePathStyle\n * timeout (sec, int) ↔ timeoutMs (ms, number — converted ×1000)\n * proxy ↔ proxy\n */\nexport function normalizeS3Config(input: Record<string, unknown>): S3Config {\n return normalizeFields(input, {\n rename: {\n aws_access_key_id: 'accessKeyId',\n aws_secret_access_key: 'secretAccessKey',\n aws_session_token: 'sessionToken',\n aws_profile: 'profile',\n endpoint_url: 'endpoint',\n path_style: 'forcePathStyle',\n timeout: 'timeoutMs',\n key_prefix: 'keyPrefix',\n },\n transform: {\n timeout: (v: unknown) => (typeof v === 'number' ? v * 1000 : v),\n },\n }) as unknown as S3Config\n}\n"],"mappings":";AAcA;AAAA,EAEE;AAAA,EACA;AAAA,EACA,kBAAkB;AAAA,EAGlB;AAAA,EACA;AAAA,OACK;AAOP,IAAM,iBAAiB,mBAAmB,OAAO;AAAA,EAC/C,SAAS,EAAE,OAAO,EAAE,SAAS;AAAA,EAC7B,OAAO,UAAU,EAAE,SAAS;AAC9B,CAAC;AAYM,SAAS,aAAa,QAAoC;AAC/D,SAAO,uBAAuB,gBAAgB,MAAM;AACtD;AAkBO,SAAS,kBAAkB,OAA0C;AAC1E,SAAO,gBAAgB,OAAO;AAAA,IAC5B,QAAQ;AAAA,MACN,mBAAmB;AAAA,MACnB,uBAAuB;AAAA,MACvB,mBAAmB;AAAA,MACnB,aAAa;AAAA,MACb,cAAc;AAAA,MACd,YAAY;AAAA,MACZ,SAAS;AAAA,MACT,YAAY;AAAA,IACd;AAAA,IACA,WAAW;AAAA,MACT,SAAS,CAAC,MAAgB,OAAO,MAAM,WAAW,IAAI,MAAO;AAAA,IAC/D;AAAA,EACF,CAAC;AACH;","names":[]}
@@ -0,0 +1,11 @@
1
+ // src/resource/gslides/config.ts
2
+ import {
3
+ normalizeGoogleConfig,
4
+ redactGoogleConfig
5
+ } from "@struktoai/mirage-core";
6
+
7
+ export {
8
+ normalizeGoogleConfig,
9
+ redactGoogleConfig
10
+ };
11
+ //# sourceMappingURL=chunk-4IF4TGAI.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/resource/gslides/config.ts"],"sourcesContent":["// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nexport {\n normalizeGoogleConfig as normalizeGSlidesConfig,\n redactGoogleConfig as redactGSlidesConfig,\n type GoogleConfig as GSlidesConfig,\n type GoogleConfigRedacted as GSlidesConfigRedacted,\n} from '@struktoai/mirage-core'\n"],"mappings":";AAcA;AAAA,EAC2B;AAAA,EACH;AAAA,OAGjB;","names":[]}
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  redactWasabiConfig,
3
3
  wasabiToS3Config
4
- } from "./chunk-S4KVLPBR.js";
4
+ } from "./chunk-YZ4ZJNOL.js";
5
5
  import {
6
6
  S3Resource
7
- } from "./chunk-IUXXZHY3.js";
7
+ } from "./chunk-EJZG5VUF.js";
8
8
 
9
9
  // src/resource/wasabi/wasabi.ts
10
10
  import {
@@ -17,8 +17,7 @@ import {
17
17
  var WASABI_PROMPT = `{prefix}
18
18
  Remote Wasabi bucket (S3-compatible).
19
19
  IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.
20
- Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.
21
- cat on .parquet/.orc/.feather returns a formatted table.`;
20
+ Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.`;
22
21
 
23
22
  // src/resource/wasabi/wasabi.ts
24
23
  var WasabiResource = class extends S3Resource {
@@ -54,4 +53,4 @@ export {
54
53
  WASABI_PROMPT,
55
54
  WasabiResource
56
55
  };
57
- //# sourceMappingURL=chunk-L7FEZ7LU.js.map
56
+ //# sourceMappingURL=chunk-5H6KNEPP.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/resource/wasabi/wasabi.ts","../src/resource/wasabi/prompt.ts"],"sourcesContent":["// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nimport {\n remapCommandsResource,\n remapOpsResource,\n ResourceName,\n type RegisteredCommand,\n type RegisteredOp,\n} from '@struktoai/mirage-core'\nimport { S3Resource } from '../s3/s3.ts'\nimport {\n redactWasabiConfig,\n wasabiToS3Config,\n type WasabiConfig,\n type WasabiConfigRedacted,\n} from './config.ts'\nimport { WASABI_PROMPT } from './prompt.ts'\n\nexport interface WasabiResourceState {\n type: string\n config: WasabiConfigRedacted\n}\n\nexport class WasabiResource extends S3Resource {\n override readonly kind: string = ResourceName.WASABI\n override readonly prompt: string = WASABI_PROMPT\n readonly wasabiConfig: WasabiConfig\n private readonly wasabiOps: readonly RegisteredOp[]\n private readonly wasabiCommands: readonly RegisteredCommand[]\n\n constructor(config: WasabiConfig) {\n super(wasabiToS3Config(config))\n this.wasabiConfig = config\n this.wasabiOps = remapOpsResource(super.ops(), ResourceName.WASABI)\n this.wasabiCommands = remapCommandsResource(super.commands(), ResourceName.WASABI)\n }\n\n override ops(): readonly RegisteredOp[] {\n return this.wasabiOps\n }\n\n override commands(): readonly RegisteredCommand[] {\n return this.wasabiCommands\n }\n\n override getState(): Promise<WasabiResourceState> {\n return Promise.resolve({\n type: this.kind,\n config: redactWasabiConfig(this.wasabiConfig),\n })\n }\n\n override loadState(_state: WasabiResourceState): Promise<void> {\n return Promise.resolve()\n }\n}\n","// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nexport const WASABI_PROMPT = `\\\n{prefix}\n Remote Wasabi bucket (S3-compatible).\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.\n cat on .parquet/.orc/.feather returns a formatted table.`\n"],"mappings":";;;;;;;;;AAcA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OAGK;;;ACNA,IAAM,gBAAgB;AAAA;AAAA;AAAA;AAAA;;;ADqBtB,IAAM,iBAAN,cAA6B,WAAW;AAAA,EAC3B,OAAe,aAAa;AAAA,EAC5B,SAAiB;AAAA,EAC1B;AAAA,EACQ;AAAA,EACA;AAAA,EAEjB,YAAY,QAAsB;AAChC,UAAM,iBAAiB,MAAM,CAAC;AAC9B,SAAK,eAAe;AACpB,SAAK,YAAY,iBAAiB,MAAM,IAAI,GAAG,aAAa,MAAM;AAClE,SAAK,iBAAiB,sBAAsB,MAAM,SAAS,GAAG,aAAa,MAAM;AAAA,EACnF;AAAA,EAES,MAA+B;AACtC,WAAO,KAAK;AAAA,EACd;AAAA,EAES,WAAyC;AAChD,WAAO,KAAK;AAAA,EACd;AAAA,EAES,WAAyC;AAChD,WAAO,QAAQ,QAAQ;AAAA,MACrB,MAAM,KAAK;AAAA,MACX,QAAQ,mBAAmB,KAAK,YAAY;AAAA,IAC9C,CAAC;AAAA,EACH;AAAA,EAES,UAAU,QAA4C;AAC7D,WAAO,QAAQ,QAAQ;AAAA,EACzB;AACF;","names":[]}
1
+ {"version":3,"sources":["../src/resource/wasabi/wasabi.ts","../src/resource/wasabi/prompt.ts"],"sourcesContent":["// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nimport {\n remapCommandsResource,\n remapOpsResource,\n ResourceName,\n type RegisteredCommand,\n type RegisteredOp,\n} from '@struktoai/mirage-core'\nimport { S3Resource } from '../s3/s3.ts'\nimport {\n redactWasabiConfig,\n wasabiToS3Config,\n type WasabiConfig,\n type WasabiConfigRedacted,\n} from './config.ts'\nimport { WASABI_PROMPT } from './prompt.ts'\n\nexport interface WasabiResourceState {\n type: string\n config: WasabiConfigRedacted\n}\n\nexport class WasabiResource extends S3Resource {\n override readonly kind: string = ResourceName.WASABI\n override readonly prompt: string = WASABI_PROMPT\n readonly wasabiConfig: WasabiConfig\n private readonly wasabiOps: readonly RegisteredOp[]\n private readonly wasabiCommands: readonly RegisteredCommand[]\n\n constructor(config: WasabiConfig) {\n super(wasabiToS3Config(config))\n this.wasabiConfig = config\n this.wasabiOps = remapOpsResource(super.ops(), ResourceName.WASABI)\n this.wasabiCommands = remapCommandsResource(super.commands(), ResourceName.WASABI)\n }\n\n override ops(): readonly RegisteredOp[] {\n return this.wasabiOps\n }\n\n override commands(): readonly RegisteredCommand[] {\n return this.wasabiCommands\n }\n\n override getState(): Promise<WasabiResourceState> {\n return Promise.resolve({\n type: this.kind,\n config: redactWasabiConfig(this.wasabiConfig),\n })\n }\n\n override loadState(_state: WasabiResourceState): Promise<void> {\n return Promise.resolve()\n }\n}\n","// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nexport const WASABI_PROMPT = `\\\n{prefix}\n Remote Wasabi bucket (S3-compatible).\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.`\n"],"mappings":";;;;;;;;;AAcA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OAGK;;;ACNA,IAAM,gBAAgB;AAAA;AAAA;AAAA;;;ADqBtB,IAAM,iBAAN,cAA6B,WAAW;AAAA,EAC3B,OAAe,aAAa;AAAA,EAC5B,SAAiB;AAAA,EAC1B;AAAA,EACQ;AAAA,EACA;AAAA,EAEjB,YAAY,QAAsB;AAChC,UAAM,iBAAiB,MAAM,CAAC;AAC9B,SAAK,eAAe;AACpB,SAAK,YAAY,iBAAiB,MAAM,IAAI,GAAG,aAAa,MAAM;AAClE,SAAK,iBAAiB,sBAAsB,MAAM,SAAS,GAAG,aAAa,MAAM;AAAA,EACnF;AAAA,EAES,MAA+B;AACtC,WAAO,KAAK;AAAA,EACd;AAAA,EAES,WAAyC;AAChD,WAAO,KAAK;AAAA,EACd;AAAA,EAES,WAAyC;AAChD,WAAO,QAAQ,QAAQ;AAAA,MACrB,MAAM,KAAK;AAAA,MACX,QAAQ,mBAAmB,KAAK,YAAY;AAAA,IAC9C,CAAC;AAAA,EACH;AAAA,EAES,UAAU,QAA4C;AAC7D,WAAO,QAAQ,QAAQ;AAAA,EACzB;AACF;","names":[]}
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  gcsToS3Config,
3
3
  redactGcsConfig
4
- } from "./chunk-E3KXVEYI.js";
4
+ } from "./chunk-OAE57MNL.js";
5
5
  import {
6
6
  S3Resource
7
- } from "./chunk-IUXXZHY3.js";
7
+ } from "./chunk-EJZG5VUF.js";
8
8
 
9
9
  // src/resource/gcs/gcs.ts
10
10
  import {
@@ -17,8 +17,7 @@ import {
17
17
  var GCS_PROMPT = `{prefix}
18
18
  Remote Google Cloud Storage bucket.
19
19
  IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.
20
- Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.
21
- cat on .parquet/.orc/.feather returns a formatted table.`;
20
+ Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.`;
22
21
 
23
22
  // src/resource/gcs/gcs.ts
24
23
  var GCSResource = class extends S3Resource {
@@ -54,4 +53,4 @@ export {
54
53
  GCS_PROMPT,
55
54
  GCSResource
56
55
  };
57
- //# sourceMappingURL=chunk-25W4XQJZ.js.map
56
+ //# sourceMappingURL=chunk-5K2MWDCE.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/resource/gcs/gcs.ts","../src/resource/gcs/prompt.ts"],"sourcesContent":["// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nimport {\n remapCommandsResource,\n remapOpsResource,\n ResourceName,\n type RegisteredCommand,\n type RegisteredOp,\n} from '@struktoai/mirage-core'\nimport { S3Resource } from '../s3/s3.ts'\nimport { gcsToS3Config, redactGcsConfig, type GCSConfig, type GCSConfigRedacted } from './config.ts'\nimport { GCS_PROMPT } from './prompt.ts'\n\nexport interface GCSResourceState {\n type: string\n config: GCSConfigRedacted\n}\n\nexport class GCSResource extends S3Resource {\n override readonly kind: string = ResourceName.GCS\n override readonly prompt: string = GCS_PROMPT\n readonly gcsConfig: GCSConfig\n private readonly gcsOps: readonly RegisteredOp[]\n private readonly gcsCommands: readonly RegisteredCommand[]\n\n constructor(config: GCSConfig) {\n super(gcsToS3Config(config))\n this.gcsConfig = config\n this.gcsOps = remapOpsResource(super.ops(), ResourceName.GCS)\n this.gcsCommands = remapCommandsResource(super.commands(), ResourceName.GCS)\n }\n\n override ops(): readonly RegisteredOp[] {\n return this.gcsOps\n }\n\n override commands(): readonly RegisteredCommand[] {\n return this.gcsCommands\n }\n\n override getState(): Promise<GCSResourceState> {\n return Promise.resolve({\n type: this.kind,\n config: redactGcsConfig(this.gcsConfig),\n })\n }\n\n override loadState(_state: GCSResourceState): Promise<void> {\n return Promise.resolve()\n }\n}\n","// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nexport const GCS_PROMPT = `\\\n{prefix}\n Remote Google Cloud Storage bucket.\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.\n cat on .parquet/.orc/.feather returns a formatted table.`\n"],"mappings":";;;;;;;;;AAcA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OAGK;;;ACNA,IAAM,aAAa;AAAA;AAAA;AAAA;AAAA;;;ADgBnB,IAAM,cAAN,cAA0B,WAAW;AAAA,EACxB,OAAe,aAAa;AAAA,EAC5B,SAAiB;AAAA,EAC1B;AAAA,EACQ;AAAA,EACA;AAAA,EAEjB,YAAY,QAAmB;AAC7B,UAAM,cAAc,MAAM,CAAC;AAC3B,SAAK,YAAY;AACjB,SAAK,SAAS,iBAAiB,MAAM,IAAI,GAAG,aAAa,GAAG;AAC5D,SAAK,cAAc,sBAAsB,MAAM,SAAS,GAAG,aAAa,GAAG;AAAA,EAC7E;AAAA,EAES,MAA+B;AACtC,WAAO,KAAK;AAAA,EACd;AAAA,EAES,WAAyC;AAChD,WAAO,KAAK;AAAA,EACd;AAAA,EAES,WAAsC;AAC7C,WAAO,QAAQ,QAAQ;AAAA,MACrB,MAAM,KAAK;AAAA,MACX,QAAQ,gBAAgB,KAAK,SAAS;AAAA,IACxC,CAAC;AAAA,EACH;AAAA,EAES,UAAU,QAAyC;AAC1D,WAAO,QAAQ,QAAQ;AAAA,EACzB;AACF;","names":[]}
1
+ {"version":3,"sources":["../src/resource/gcs/gcs.ts","../src/resource/gcs/prompt.ts"],"sourcesContent":["// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nimport {\n remapCommandsResource,\n remapOpsResource,\n ResourceName,\n type RegisteredCommand,\n type RegisteredOp,\n} from '@struktoai/mirage-core'\nimport { S3Resource } from '../s3/s3.ts'\nimport { gcsToS3Config, redactGcsConfig, type GCSConfig, type GCSConfigRedacted } from './config.ts'\nimport { GCS_PROMPT } from './prompt.ts'\n\nexport interface GCSResourceState {\n type: string\n config: GCSConfigRedacted\n}\n\nexport class GCSResource extends S3Resource {\n override readonly kind: string = ResourceName.GCS\n override readonly prompt: string = GCS_PROMPT\n readonly gcsConfig: GCSConfig\n private readonly gcsOps: readonly RegisteredOp[]\n private readonly gcsCommands: readonly RegisteredCommand[]\n\n constructor(config: GCSConfig) {\n super(gcsToS3Config(config))\n this.gcsConfig = config\n this.gcsOps = remapOpsResource(super.ops(), ResourceName.GCS)\n this.gcsCommands = remapCommandsResource(super.commands(), ResourceName.GCS)\n }\n\n override ops(): readonly RegisteredOp[] {\n return this.gcsOps\n }\n\n override commands(): readonly RegisteredCommand[] {\n return this.gcsCommands\n }\n\n override getState(): Promise<GCSResourceState> {\n return Promise.resolve({\n type: this.kind,\n config: redactGcsConfig(this.gcsConfig),\n })\n }\n\n override loadState(_state: GCSResourceState): Promise<void> {\n return Promise.resolve()\n }\n}\n","// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nexport const GCS_PROMPT = `\\\n{prefix}\n Remote Google Cloud Storage bucket.\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.`\n"],"mappings":";;;;;;;;;AAcA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OAGK;;;ACNA,IAAM,aAAa;AAAA;AAAA;AAAA;;;ADgBnB,IAAM,cAAN,cAA0B,WAAW;AAAA,EACxB,OAAe,aAAa;AAAA,EAC5B,SAAiB;AAAA,EAC1B;AAAA,EACQ;AAAA,EACA;AAAA,EAEjB,YAAY,QAAmB;AAC7B,UAAM,cAAc,MAAM,CAAC;AAC3B,SAAK,YAAY;AACjB,SAAK,SAAS,iBAAiB,MAAM,IAAI,GAAG,aAAa,GAAG;AAC5D,SAAK,cAAc,sBAAsB,MAAM,SAAS,GAAG,aAAa,GAAG;AAAA,EAC7E;AAAA,EAES,MAA+B;AACtC,WAAO,KAAK;AAAA,EACd;AAAA,EAES,WAAyC;AAChD,WAAO,KAAK;AAAA,EACd;AAAA,EAES,WAAsC;AAC7C,WAAO,QAAQ,QAAQ;AAAA,MACrB,MAAM,KAAK;AAAA,MACX,QAAQ,gBAAgB,KAAK,SAAS;AAAA,IACxC,CAAC;AAAA,EACH;AAAA,EAES,UAAU,QAAyC;AAC1D,WAAO,QAAQ,QAAQ;AAAA,EACzB;AACF;","names":[]}
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  redactScalewayConfig,
3
3
  scalewayToS3Config
4
- } from "./chunk-YBVMZ7SR.js";
4
+ } from "./chunk-7VQQFWV6.js";
5
5
  import {
6
6
  S3Resource
7
- } from "./chunk-IUXXZHY3.js";
7
+ } from "./chunk-EJZG5VUF.js";
8
8
 
9
9
  // src/resource/scaleway/scaleway.ts
10
10
  import {
@@ -17,8 +17,7 @@ import {
17
17
  var SCALEWAY_PROMPT = `{prefix}
18
18
  Remote Scaleway Object Storage bucket (S3-compatible).
19
19
  IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.
20
- Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.
21
- cat on .parquet/.orc/.feather returns a formatted table.`;
20
+ Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.`;
22
21
 
23
22
  // src/resource/scaleway/scaleway.ts
24
23
  var ScalewayResource = class extends S3Resource {
@@ -54,4 +53,4 @@ export {
54
53
  SCALEWAY_PROMPT,
55
54
  ScalewayResource
56
55
  };
57
- //# sourceMappingURL=chunk-L4GMDSMB.js.map
56
+ //# sourceMappingURL=chunk-6SVXWRKX.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/resource/scaleway/scaleway.ts","../src/resource/scaleway/prompt.ts"],"sourcesContent":["// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nimport {\n remapCommandsResource,\n remapOpsResource,\n ResourceName,\n type RegisteredCommand,\n type RegisteredOp,\n} from '@struktoai/mirage-core'\nimport { S3Resource } from '../s3/s3.ts'\nimport {\n redactScalewayConfig,\n scalewayToS3Config,\n type ScalewayConfig,\n type ScalewayConfigRedacted,\n} from './config.ts'\nimport { SCALEWAY_PROMPT } from './prompt.ts'\n\nexport interface ScalewayResourceState {\n type: string\n config: ScalewayConfigRedacted\n}\n\nexport class ScalewayResource extends S3Resource {\n override readonly kind: string = ResourceName.SCALEWAY\n override readonly prompt: string = SCALEWAY_PROMPT\n readonly scalewayConfig: ScalewayConfig\n private readonly scalewayOps: readonly RegisteredOp[]\n private readonly scalewayCommands: readonly RegisteredCommand[]\n\n constructor(config: ScalewayConfig) {\n super(scalewayToS3Config(config))\n this.scalewayConfig = config\n this.scalewayOps = remapOpsResource(super.ops(), ResourceName.SCALEWAY)\n this.scalewayCommands = remapCommandsResource(super.commands(), ResourceName.SCALEWAY)\n }\n\n override ops(): readonly RegisteredOp[] {\n return this.scalewayOps\n }\n\n override commands(): readonly RegisteredCommand[] {\n return this.scalewayCommands\n }\n\n override getState(): Promise<ScalewayResourceState> {\n return Promise.resolve({\n type: this.kind,\n config: redactScalewayConfig(this.scalewayConfig),\n })\n }\n\n override loadState(_state: ScalewayResourceState): Promise<void> {\n return Promise.resolve()\n }\n}\n","// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nexport const SCALEWAY_PROMPT = `\\\n{prefix}\n Remote Scaleway Object Storage bucket (S3-compatible).\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.\n cat on .parquet/.orc/.feather returns a formatted table.`\n"],"mappings":";;;;;;;;;AAcA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OAGK;;;ACNA,IAAM,kBAAkB;AAAA;AAAA;AAAA;AAAA;;;ADqBxB,IAAM,mBAAN,cAA+B,WAAW;AAAA,EAC7B,OAAe,aAAa;AAAA,EAC5B,SAAiB;AAAA,EAC1B;AAAA,EACQ;AAAA,EACA;AAAA,EAEjB,YAAY,QAAwB;AAClC,UAAM,mBAAmB,MAAM,CAAC;AAChC,SAAK,iBAAiB;AACtB,SAAK,cAAc,iBAAiB,MAAM,IAAI,GAAG,aAAa,QAAQ;AACtE,SAAK,mBAAmB,sBAAsB,MAAM,SAAS,GAAG,aAAa,QAAQ;AAAA,EACvF;AAAA,EAES,MAA+B;AACtC,WAAO,KAAK;AAAA,EACd;AAAA,EAES,WAAyC;AAChD,WAAO,KAAK;AAAA,EACd;AAAA,EAES,WAA2C;AAClD,WAAO,QAAQ,QAAQ;AAAA,MACrB,MAAM,KAAK;AAAA,MACX,QAAQ,qBAAqB,KAAK,cAAc;AAAA,IAClD,CAAC;AAAA,EACH;AAAA,EAES,UAAU,QAA8C;AAC/D,WAAO,QAAQ,QAAQ;AAAA,EACzB;AACF;","names":[]}
1
+ {"version":3,"sources":["../src/resource/scaleway/scaleway.ts","../src/resource/scaleway/prompt.ts"],"sourcesContent":["// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nimport {\n remapCommandsResource,\n remapOpsResource,\n ResourceName,\n type RegisteredCommand,\n type RegisteredOp,\n} from '@struktoai/mirage-core'\nimport { S3Resource } from '../s3/s3.ts'\nimport {\n redactScalewayConfig,\n scalewayToS3Config,\n type ScalewayConfig,\n type ScalewayConfigRedacted,\n} from './config.ts'\nimport { SCALEWAY_PROMPT } from './prompt.ts'\n\nexport interface ScalewayResourceState {\n type: string\n config: ScalewayConfigRedacted\n}\n\nexport class ScalewayResource extends S3Resource {\n override readonly kind: string = ResourceName.SCALEWAY\n override readonly prompt: string = SCALEWAY_PROMPT\n readonly scalewayConfig: ScalewayConfig\n private readonly scalewayOps: readonly RegisteredOp[]\n private readonly scalewayCommands: readonly RegisteredCommand[]\n\n constructor(config: ScalewayConfig) {\n super(scalewayToS3Config(config))\n this.scalewayConfig = config\n this.scalewayOps = remapOpsResource(super.ops(), ResourceName.SCALEWAY)\n this.scalewayCommands = remapCommandsResource(super.commands(), ResourceName.SCALEWAY)\n }\n\n override ops(): readonly RegisteredOp[] {\n return this.scalewayOps\n }\n\n override commands(): readonly RegisteredCommand[] {\n return this.scalewayCommands\n }\n\n override getState(): Promise<ScalewayResourceState> {\n return Promise.resolve({\n type: this.kind,\n config: redactScalewayConfig(this.scalewayConfig),\n })\n }\n\n override loadState(_state: ScalewayResourceState): Promise<void> {\n return Promise.resolve()\n }\n}\n","// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nexport const SCALEWAY_PROMPT = `\\\n{prefix}\n Remote Scaleway Object Storage bucket (S3-compatible).\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.`\n"],"mappings":";;;;;;;;;AAcA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OAGK;;;ACNA,IAAM,kBAAkB;AAAA;AAAA;AAAA;;;ADqBxB,IAAM,mBAAN,cAA+B,WAAW;AAAA,EAC7B,OAAe,aAAa;AAAA,EAC5B,SAAiB;AAAA,EAC1B;AAAA,EACQ;AAAA,EACA;AAAA,EAEjB,YAAY,QAAwB;AAClC,UAAM,mBAAmB,MAAM,CAAC;AAChC,SAAK,iBAAiB;AACtB,SAAK,cAAc,iBAAiB,MAAM,IAAI,GAAG,aAAa,QAAQ;AACtE,SAAK,mBAAmB,sBAAsB,MAAM,SAAS,GAAG,aAAa,QAAQ;AAAA,EACvF;AAAA,EAES,MAA+B;AACtC,WAAO,KAAK;AAAA,EACd;AAAA,EAES,WAAyC;AAChD,WAAO,KAAK;AAAA,EACd;AAAA,EAES,WAA2C;AAClD,WAAO,QAAQ,QAAQ;AAAA,MACrB,MAAM,KAAK;AAAA,MACX,QAAQ,qBAAqB,KAAK,cAAc;AAAA,IAClD,CAAC;AAAA,EACH;AAAA,EAES,UAAU,QAA8C;AAC/D,WAAO,QAAQ,QAAQ;AAAA,EACzB;AACF;","names":[]}
@@ -1,14 +1,22 @@
1
1
  // src/resource/oci/config.ts
2
- import { normalizeFields, redactConfigWithSchema, secretStr, z } from "@struktoai/mirage-core";
2
+ import {
3
+ normalizeFields,
4
+ redactConfigWithSchema,
5
+ secretStr,
6
+ z
7
+ } from "@struktoai/mirage-core";
3
8
  var OCIConfigSchema = z.object({
4
9
  bucket: z.string(),
5
10
  namespace: z.string(),
6
11
  region: z.string(),
7
- accessKeyId: secretStr(),
8
- secretAccessKey: secretStr(),
12
+ accessKeyId: secretStr().optional(),
13
+ secretAccessKey: secretStr().optional(),
14
+ sessionToken: secretStr().optional(),
15
+ profile: z.string().optional(),
9
16
  endpoint: z.string(),
10
17
  keyPrefix: z.string().optional(),
11
- timeoutMs: z.number().optional()
18
+ timeoutMs: z.number().optional(),
19
+ proxy: secretStr().optional()
12
20
  });
13
21
  function resolvedOciEndpoint(config) {
14
22
  if (config.endpoint !== void 0 && config.endpoint !== "") return config.endpoint;
@@ -19,11 +27,14 @@ function ociToS3Config(config) {
19
27
  bucket: config.bucket,
20
28
  region: config.region,
21
29
  endpoint: resolvedOciEndpoint(config),
22
- accessKeyId: config.accessKeyId,
23
- secretAccessKey: config.secretAccessKey,
30
+ ...config.accessKeyId !== void 0 ? { accessKeyId: config.accessKeyId } : {},
31
+ ...config.secretAccessKey !== void 0 ? { secretAccessKey: config.secretAccessKey } : {},
32
+ ...config.sessionToken !== void 0 ? { sessionToken: config.sessionToken } : {},
33
+ ...config.profile !== void 0 ? { profile: config.profile } : {},
24
34
  forcePathStyle: true,
25
35
  ...config.keyPrefix !== void 0 ? { keyPrefix: config.keyPrefix } : {},
26
- ...config.timeoutMs !== void 0 ? { timeoutMs: config.timeoutMs } : {}
36
+ ...config.timeoutMs !== void 0 ? { timeoutMs: config.timeoutMs } : {},
37
+ ...config.proxy !== void 0 ? { proxy: config.proxy } : {}
27
38
  };
28
39
  }
29
40
  function redactOciConfig(config) {
@@ -37,14 +48,15 @@ function normalizeOciConfig(input) {
37
48
  rename: {
38
49
  access_key_id: "accessKeyId",
39
50
  secret_access_key: "secretAccessKey",
51
+ session_token: "sessionToken",
52
+ aws_profile: "profile",
40
53
  endpoint_url: "endpoint",
41
54
  key_prefix: "keyPrefix",
42
55
  timeout: "timeoutMs"
43
56
  },
44
57
  transform: {
45
58
  timeout: (v) => typeof v === "number" ? v * 1e3 : v
46
- },
47
- drop: ["proxy"]
59
+ }
48
60
  });
49
61
  }
50
62
 
@@ -53,4 +65,4 @@ export {
53
65
  redactOciConfig,
54
66
  normalizeOciConfig
55
67
  };
56
- //# sourceMappingURL=chunk-H62XQZUM.js.map
68
+ //# sourceMappingURL=chunk-6VOIUGAD.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/resource/oci/config.ts"],"sourcesContent":["// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nimport {\n normalizeFields,\n redactConfigWithSchema,\n type ConfigOf,\n type RedactedConfig,\n secretStr,\n z,\n} from '@struktoai/mirage-core'\nimport type { S3Config } from '../s3/config.ts'\n\nexport interface OCIConfig {\n bucket: string\n namespace: string\n region: string\n accessKeyId?: string\n secretAccessKey?: string\n sessionToken?: string\n profile?: string\n endpoint?: string\n keyPrefix?: string\n timeoutMs?: number\n proxy?: string\n}\n\nconst OCIConfigSchema = z.object({\n bucket: z.string(),\n namespace: z.string(),\n region: z.string(),\n accessKeyId: secretStr().optional(),\n secretAccessKey: secretStr().optional(),\n sessionToken: secretStr().optional(),\n profile: z.string().optional(),\n endpoint: z.string(),\n keyPrefix: z.string().optional(),\n timeoutMs: z.number().optional(),\n proxy: secretStr().optional(),\n})\n\n// Only the redacted twin derives: the schema is the resolved shape, with\n// the region and endpoint the redactor fills in.\nexport type OCIConfigRedacted = RedactedConfig<\n ConfigOf<typeof OCIConfigSchema>,\n 'accessKeyId' | 'secretAccessKey' | 'sessionToken' | 'proxy'\n>\n\nfunction resolvedOciEndpoint(config: OCIConfig): string {\n if (config.endpoint !== undefined && config.endpoint !== '') return config.endpoint\n return `https://${config.namespace}.compat.objectstorage.${config.region}.oci.customer-oci.com`\n}\n\nexport function ociToS3Config(config: OCIConfig): S3Config {\n return {\n bucket: config.bucket,\n region: config.region,\n endpoint: resolvedOciEndpoint(config),\n ...(config.accessKeyId !== undefined ? { accessKeyId: config.accessKeyId } : {}),\n ...(config.secretAccessKey !== undefined ? { secretAccessKey: config.secretAccessKey } : {}),\n ...(config.sessionToken !== undefined ? { sessionToken: config.sessionToken } : {}),\n ...(config.profile !== undefined ? { profile: config.profile } : {}),\n forcePathStyle: true,\n ...(config.keyPrefix !== undefined ? { keyPrefix: config.keyPrefix } : {}),\n ...(config.timeoutMs !== undefined ? { timeoutMs: config.timeoutMs } : {}),\n ...(config.proxy !== undefined ? { proxy: config.proxy } : {}),\n }\n}\n\nexport function redactOciConfig(config: OCIConfig): OCIConfigRedacted {\n return redactConfigWithSchema(OCIConfigSchema, {\n ...config,\n endpoint: resolvedOciEndpoint(config),\n }) as unknown as OCIConfigRedacted\n}\n\nexport function normalizeOciConfig(input: Record<string, unknown>): OCIConfig {\n return normalizeFields(input, {\n rename: {\n access_key_id: 'accessKeyId',\n secret_access_key: 'secretAccessKey',\n session_token: 'sessionToken',\n aws_profile: 'profile',\n endpoint_url: 'endpoint',\n key_prefix: 'keyPrefix',\n timeout: 'timeoutMs',\n },\n transform: {\n timeout: (v: unknown) => (typeof v === 'number' ? v * 1000 : v),\n },\n }) as unknown as OCIConfig\n}\n"],"mappings":";AAcA;AAAA,EACE;AAAA,EACA;AAAA,EAGA;AAAA,EACA;AAAA,OACK;AAiBP,IAAM,kBAAkB,EAAE,OAAO;AAAA,EAC/B,QAAQ,EAAE,OAAO;AAAA,EACjB,WAAW,EAAE,OAAO;AAAA,EACpB,QAAQ,EAAE,OAAO;AAAA,EACjB,aAAa,UAAU,EAAE,SAAS;AAAA,EAClC,iBAAiB,UAAU,EAAE,SAAS;AAAA,EACtC,cAAc,UAAU,EAAE,SAAS;AAAA,EACnC,SAAS,EAAE,OAAO,EAAE,SAAS;AAAA,EAC7B,UAAU,EAAE,OAAO;AAAA,EACnB,WAAW,EAAE,OAAO,EAAE,SAAS;AAAA,EAC/B,WAAW,EAAE,OAAO,EAAE,SAAS;AAAA,EAC/B,OAAO,UAAU,EAAE,SAAS;AAC9B,CAAC;AASD,SAAS,oBAAoB,QAA2B;AACtD,MAAI,OAAO,aAAa,UAAa,OAAO,aAAa,GAAI,QAAO,OAAO;AAC3E,SAAO,WAAW,OAAO,SAAS,yBAAyB,OAAO,MAAM;AAC1E;AAEO,SAAS,cAAc,QAA6B;AACzD,SAAO;AAAA,IACL,QAAQ,OAAO;AAAA,IACf,QAAQ,OAAO;AAAA,IACf,UAAU,oBAAoB,MAAM;AAAA,IACpC,GAAI,OAAO,gBAAgB,SAAY,EAAE,aAAa,OAAO,YAAY,IAAI,CAAC;AAAA,IAC9E,GAAI,OAAO,oBAAoB,SAAY,EAAE,iBAAiB,OAAO,gBAAgB,IAAI,CAAC;AAAA,IAC1F,GAAI,OAAO,iBAAiB,SAAY,EAAE,cAAc,OAAO,aAAa,IAAI,CAAC;AAAA,IACjF,GAAI,OAAO,YAAY,SAAY,EAAE,SAAS,OAAO,QAAQ,IAAI,CAAC;AAAA,IAClE,gBAAgB;AAAA,IAChB,GAAI,OAAO,cAAc,SAAY,EAAE,WAAW,OAAO,UAAU,IAAI,CAAC;AAAA,IACxE,GAAI,OAAO,cAAc,SAAY,EAAE,WAAW,OAAO,UAAU,IAAI,CAAC;AAAA,IACxE,GAAI,OAAO,UAAU,SAAY,EAAE,OAAO,OAAO,MAAM,IAAI,CAAC;AAAA,EAC9D;AACF;AAEO,SAAS,gBAAgB,QAAsC;AACpE,SAAO,uBAAuB,iBAAiB;AAAA,IAC7C,GAAG;AAAA,IACH,UAAU,oBAAoB,MAAM;AAAA,EACtC,CAAC;AACH;AAEO,SAAS,mBAAmB,OAA2C;AAC5E,SAAO,gBAAgB,OAAO;AAAA,IAC5B,QAAQ;AAAA,MACN,eAAe;AAAA,MACf,mBAAmB;AAAA,MACnB,eAAe;AAAA,MACf,aAAa;AAAA,MACb,cAAc;AAAA,MACd,YAAY;AAAA,MACZ,SAAS;AAAA,IACX;AAAA,IACA,WAAW;AAAA,MACT,SAAS,CAAC,MAAgB,OAAO,MAAM,WAAW,IAAI,MAAO;AAAA,IAC/D;AAAA,EACF,CAAC;AACH;","names":[]}
@@ -1,7 +1,3 @@
1
- import {
2
- redactNotionConfig
3
- } from "./chunk-VIICUPWQ.js";
4
-
5
1
  // src/resource/notion/notion.ts
6
2
  import {
7
3
  BaseResource,
@@ -20,6 +16,9 @@ import {
20
16
  notionStat,
21
17
  makeResolveGlob
22
18
  } from "@struktoai/mirage-core";
19
+ import {
20
+ redactNotionConfig
21
+ } from "@struktoai/mirage-core";
23
22
  var resolveNotionGlob = makeResolveGlob(notionReaddir);
24
23
  var NotionResource = class extends BaseResource {
25
24
  kind = ResourceName.NOTION;
@@ -39,9 +38,6 @@ var NotionResource = class extends BaseResource {
39
38
  open() {
40
39
  return Promise.resolve();
41
40
  }
42
- close() {
43
- return Promise.resolve();
44
- }
45
41
  commands() {
46
42
  return NOTION_COMMANDS;
47
43
  }
@@ -83,4 +79,4 @@ var NotionResource = class extends BaseResource {
83
79
  export {
84
80
  NotionResource
85
81
  };
86
- //# sourceMappingURL=chunk-SI4GMRXD.js.map
82
+ //# sourceMappingURL=chunk-7JYHFXXC.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/resource/notion/notion.ts"],"sourcesContent":["// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nimport {\n BaseResource,\n HttpNotionTransport,\n NOTION_COMMANDS,\n NOTION_PROMPT,\n NOTION_OPS,\n NOTION_WRITE_PROMPT,\n NotionAccessor,\n PathSpec,\n ResourceName,\n mountKey,\n mountPrefixOf,\n notionRead,\n notionReaddir,\n notionStat,\n makeResolveGlob,\n type FileStat,\n type RegisteredCommand,\n type RegisteredOp,\n type Resource,\n} from '@struktoai/mirage-core'\nimport {\n redactNotionConfig,\n type NotionConfig,\n type NotionConfigRedacted,\n} from '@struktoai/mirage-core'\n\nconst resolveNotionGlob = makeResolveGlob<NotionAccessor>(notionReaddir)\n\nexport interface NotionResourceState {\n type: string\n config: NotionConfigRedacted\n}\n\nexport class NotionResource extends BaseResource implements Resource {\n readonly kind: string = ResourceName.NOTION\n readonly cachesReads: boolean = true\n override readonly indexTtl: number = 600\n readonly prompt: string = NOTION_PROMPT\n readonly writePrompt: string = NOTION_WRITE_PROMPT\n readonly config: NotionConfig\n readonly accessor: NotionAccessor\n\n constructor(config: NotionConfig) {\n super()\n this.config = config\n const transportOpts: { apiKey: string; baseUrl?: string } = { apiKey: config.apiKey }\n if (config.baseUrl !== undefined) transportOpts.baseUrl = config.baseUrl\n this.accessor = new NotionAccessor(new HttpNotionTransport(transportOpts))\n }\n\n open(): Promise<void> {\n return Promise.resolve()\n }\n\n commands(): readonly RegisteredCommand[] {\n return NOTION_COMMANDS\n }\n\n ops(): readonly RegisteredOp[] {\n return NOTION_OPS\n }\n\n readFile(p: PathSpec): Promise<Uint8Array> {\n return notionRead(this.accessor, p, this.index)\n }\n\n readdir(p: PathSpec): Promise<string[]> {\n return notionReaddir(this.accessor, p, this.index)\n }\n\n stat(p: PathSpec): Promise<FileStat> {\n return notionStat(this.accessor, p, this.index)\n }\n\n glob(paths: readonly PathSpec[], prefix = ''): Promise<PathSpec[]> {\n const effective =\n prefix !== ''\n ? paths.map((p) =>\n mountPrefixOf(p.virtual, p.resourcePath) !== ''\n ? p\n : new PathSpec({\n virtual: p.virtual,\n directory: p.directory,\n ...(p.pattern !== null ? { pattern: p.pattern } : {}),\n resolved: p.resolved,\n resourcePath: mountKey(p.virtual, prefix),\n }),\n )\n : paths\n return resolveNotionGlob(this.accessor, effective, this.index)\n }\n\n getState(): Promise<NotionResourceState> {\n return Promise.resolve({\n type: this.kind,\n config: redactNotionConfig(this.config),\n })\n }\n\n loadState(_state: NotionResourceState): Promise<void> {\n return Promise.resolve()\n }\n}\n"],"mappings":";AAcA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAKK;AACP;AAAA,EACE;AAAA,OAGK;AAEP,IAAM,oBAAoB,gBAAgC,aAAa;AAOhE,IAAM,iBAAN,cAA6B,aAAiC;AAAA,EAC1D,OAAe,aAAa;AAAA,EAC5B,cAAuB;AAAA,EACd,WAAmB;AAAA,EAC5B,SAAiB;AAAA,EACjB,cAAsB;AAAA,EACtB;AAAA,EACA;AAAA,EAET,YAAY,QAAsB;AAChC,UAAM;AACN,SAAK,SAAS;AACd,UAAM,gBAAsD,EAAE,QAAQ,OAAO,OAAO;AACpF,QAAI,OAAO,YAAY,OAAW,eAAc,UAAU,OAAO;AACjE,SAAK,WAAW,IAAI,eAAe,IAAI,oBAAoB,aAAa,CAAC;AAAA,EAC3E;AAAA,EAEA,OAAsB;AACpB,WAAO,QAAQ,QAAQ;AAAA,EACzB;AAAA,EAEA,WAAyC;AACvC,WAAO;AAAA,EACT;AAAA,EAEA,MAA+B;AAC7B,WAAO;AAAA,EACT;AAAA,EAEA,SAAS,GAAkC;AACzC,WAAO,WAAW,KAAK,UAAU,GAAG,KAAK,KAAK;AAAA,EAChD;AAAA,EAEA,QAAQ,GAAgC;AACtC,WAAO,cAAc,KAAK,UAAU,GAAG,KAAK,KAAK;AAAA,EACnD;AAAA,EAEA,KAAK,GAAgC;AACnC,WAAO,WAAW,KAAK,UAAU,GAAG,KAAK,KAAK;AAAA,EAChD;AAAA,EAEA,KAAK,OAA4B,SAAS,IAAyB;AACjE,UAAM,YACJ,WAAW,KACP,MAAM;AAAA,MAAI,CAAC,MACT,cAAc,EAAE,SAAS,EAAE,YAAY,MAAM,KACzC,IACA,IAAI,SAAS;AAAA,QACX,SAAS,EAAE;AAAA,QACX,WAAW,EAAE;AAAA,QACb,GAAI,EAAE,YAAY,OAAO,EAAE,SAAS,EAAE,QAAQ,IAAI,CAAC;AAAA,QACnD,UAAU,EAAE;AAAA,QACZ,cAAc,SAAS,EAAE,SAAS,MAAM;AAAA,MAC1C,CAAC;AAAA,IACP,IACA;AACN,WAAO,kBAAkB,KAAK,UAAU,WAAW,KAAK,KAAK;AAAA,EAC/D;AAAA,EAEA,WAAyC;AACvC,WAAO,QAAQ,QAAQ;AAAA,MACrB,MAAM,KAAK;AAAA,MACX,QAAQ,mBAAmB,KAAK,MAAM;AAAA,IACxC,CAAC;AAAA,EACH;AAAA,EAEA,UAAU,QAA4C;AACpD,WAAO,QAAQ,QAAQ;AAAA,EACzB;AACF;","names":[]}
@@ -0,0 +1,20 @@
1
+ import {
2
+ makeRegionAlias
3
+ } from "./chunk-7ZP6TPHX.js";
4
+
5
+ // src/resource/scaleway/config.ts
6
+ var alias = makeRegionAlias(
7
+ (config) => `https://s3.${config.region}.scw.cloud`
8
+ );
9
+ var resolvedScalewayEndpoint = alias.resolvedEndpoint;
10
+ var scalewayToS3Config = alias.toS3Config;
11
+ var redactScalewayConfig = alias.redact;
12
+ var normalizeScalewayConfig = alias.normalize;
13
+
14
+ export {
15
+ resolvedScalewayEndpoint,
16
+ scalewayToS3Config,
17
+ redactScalewayConfig,
18
+ normalizeScalewayConfig
19
+ };
20
+ //# sourceMappingURL=chunk-7VQQFWV6.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/resource/scaleway/config.ts"],"sourcesContent":["// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nimport { makeRegionAlias, type S3AliasConfig, type S3AliasConfigRedacted } from '../s3_alias.ts'\n\nexport interface ScalewayConfig extends S3AliasConfig {\n region: string\n}\n\nexport type ScalewayConfigRedacted = S3AliasConfigRedacted\n\nconst alias = makeRegionAlias<ScalewayConfig, ScalewayConfigRedacted>(\n (config) => `https://s3.${config.region}.scw.cloud`,\n)\n\nexport const resolvedScalewayEndpoint = alias.resolvedEndpoint\nexport const scalewayToS3Config = alias.toS3Config\nexport const redactScalewayConfig = alias.redact\nexport const normalizeScalewayConfig = alias.normalize\n"],"mappings":";;;;;AAsBA,IAAM,QAAQ;AAAA,EACZ,CAAC,WAAW,cAAc,OAAO,MAAM;AACzC;AAEO,IAAM,2BAA2B,MAAM;AACvC,IAAM,qBAAqB,MAAM;AACjC,IAAM,uBAAuB,MAAM;AACnC,IAAM,0BAA0B,MAAM;","names":[]}