@struktoai/mirage-browser 0.0.7-alpha.2 → 0.0.7

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 (583) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +28 -29
  3. package/THIRD_PARTY_NOTICES +66 -0
  4. package/dist/accessor/opfs.d.ts +2 -2
  5. package/dist/accessor/opfs.d.ts.map +1 -1
  6. package/dist/accessor/opfs.js +2 -2
  7. package/dist/accessor/opfs.js.map +1 -1
  8. package/dist/core/opfs/append.d.ts +2 -0
  9. package/dist/core/opfs/append.d.ts.map +1 -1
  10. package/dist/core/opfs/append.js +40 -15
  11. package/dist/core/opfs/append.js.map +1 -1
  12. package/dist/core/opfs/constants.d.ts +0 -1
  13. package/dist/core/opfs/constants.d.ts.map +1 -1
  14. package/dist/core/opfs/constants.js +0 -1
  15. package/dist/core/opfs/constants.js.map +1 -1
  16. package/dist/core/opfs/copy.js +2 -2
  17. package/dist/core/opfs/copy.js.map +1 -1
  18. package/dist/core/opfs/create.js +2 -2
  19. package/dist/core/opfs/create.js.map +1 -1
  20. package/dist/core/opfs/exists.js +1 -1
  21. package/dist/core/opfs/exists.js.map +1 -1
  22. package/dist/core/opfs/mkdir.d.ts.map +1 -1
  23. package/dist/core/opfs/mkdir.js +2 -6
  24. package/dist/core/opfs/mkdir.js.map +1 -1
  25. package/dist/core/opfs/read.d.ts +1 -3
  26. package/dist/core/opfs/read.d.ts.map +1 -1
  27. package/dist/core/opfs/read.js +10 -14
  28. package/dist/core/opfs/read.js.map +1 -1
  29. package/dist/core/opfs/readdir.d.ts +2 -2
  30. package/dist/core/opfs/readdir.d.ts.map +1 -1
  31. package/dist/core/opfs/readdir.js +21 -9
  32. package/dist/core/opfs/readdir.js.map +1 -1
  33. package/dist/core/opfs/rename.js +2 -2
  34. package/dist/core/opfs/rename.js.map +1 -1
  35. package/dist/core/opfs/rm.js +1 -1
  36. package/dist/core/opfs/rm.js.map +1 -1
  37. package/dist/core/opfs/rmdir.js +2 -2
  38. package/dist/core/opfs/rmdir.js.map +1 -1
  39. package/dist/core/opfs/stat.js +1 -1
  40. package/dist/core/opfs/stat.js.map +1 -1
  41. package/dist/core/opfs/stream.d.ts +1 -1
  42. package/dist/core/opfs/stream.d.ts.map +1 -1
  43. package/dist/core/opfs/stream.js +10 -13
  44. package/dist/core/opfs/stream.js.map +1 -1
  45. package/dist/core/opfs/truncate.d.ts +1 -1
  46. package/dist/core/opfs/truncate.d.ts.map +1 -1
  47. package/dist/core/opfs/truncate.js +12 -10
  48. package/dist/core/opfs/truncate.js.map +1 -1
  49. package/dist/core/opfs/unlink.d.ts.map +1 -1
  50. package/dist/core/opfs/unlink.js +19 -3
  51. package/dist/core/opfs/unlink.js.map +1 -1
  52. package/dist/core/opfs/utils.d.ts +1 -0
  53. package/dist/core/opfs/utils.d.ts.map +1 -1
  54. package/dist/core/opfs/utils.js +10 -1
  55. package/dist/core/opfs/utils.js.map +1 -1
  56. package/dist/core/opfs/write.d.ts +3 -1
  57. package/dist/core/opfs/write.d.ts.map +1 -1
  58. package/dist/core/opfs/write.js +26 -10
  59. package/dist/core/opfs/write.js.map +1 -1
  60. package/dist/generated/wasm.d.ts.map +1 -1
  61. package/dist/generated/wasm.js +3 -0
  62. package/dist/generated/wasm.js.map +1 -1
  63. package/dist/index.d.ts +99 -101
  64. package/dist/index.d.ts.map +1 -1
  65. package/dist/index.js +98 -100
  66. package/dist/index.js.map +1 -1
  67. package/dist/vfs/aliyun/aliyun.d.ts +8 -0
  68. package/dist/vfs/aliyun/aliyun.d.ts.map +1 -0
  69. package/dist/{resource → vfs}/aliyun/aliyun.js +6 -6
  70. package/dist/vfs/aliyun/aliyun.js.map +1 -0
  71. package/dist/{resource → vfs}/aliyun/config.d.ts +3 -3
  72. package/dist/vfs/aliyun/config.d.ts.map +1 -0
  73. package/dist/vfs/aliyun/config.js.map +1 -0
  74. package/dist/{resource/supabase → vfs/aliyun}/prompt.d.ts +1 -1
  75. package/dist/vfs/aliyun/prompt.d.ts.map +1 -0
  76. package/dist/{resource → vfs}/aliyun/prompt.js +1 -1
  77. package/dist/vfs/aliyun/prompt.js.map +1 -0
  78. package/dist/vfs/backblaze/backblaze.d.ts +8 -0
  79. package/dist/vfs/backblaze/backblaze.d.ts.map +1 -0
  80. package/dist/{resource → vfs}/backblaze/backblaze.js +6 -6
  81. package/dist/vfs/backblaze/backblaze.js.map +1 -0
  82. package/dist/{resource → vfs}/backblaze/config.d.ts +3 -3
  83. package/dist/vfs/backblaze/config.d.ts.map +1 -0
  84. package/dist/vfs/backblaze/config.js.map +1 -0
  85. package/dist/vfs/backblaze/prompt.d.ts +2 -0
  86. package/dist/vfs/backblaze/prompt.d.ts.map +1 -0
  87. package/dist/{resource → vfs}/backblaze/prompt.js +1 -1
  88. package/dist/{resource/opfs → vfs/backblaze}/prompt.js.map +1 -1
  89. package/dist/vfs/ceph/ceph.d.ts +8 -0
  90. package/dist/vfs/ceph/ceph.d.ts.map +1 -0
  91. package/dist/{resource → vfs}/ceph/ceph.js +6 -6
  92. package/dist/vfs/ceph/ceph.js.map +1 -0
  93. package/dist/{resource → vfs}/ceph/config.d.ts +3 -3
  94. package/dist/vfs/ceph/config.d.ts.map +1 -0
  95. package/dist/vfs/ceph/config.js.map +1 -0
  96. package/dist/vfs/ceph/prompt.d.ts +2 -0
  97. package/dist/vfs/ceph/prompt.d.ts.map +1 -0
  98. package/dist/{resource → vfs}/ceph/prompt.js +1 -1
  99. package/dist/vfs/ceph/prompt.js.map +1 -0
  100. package/dist/{resource → vfs}/digitalocean/config.d.ts +3 -3
  101. package/dist/vfs/digitalocean/config.d.ts.map +1 -0
  102. package/dist/vfs/digitalocean/config.js.map +1 -0
  103. package/dist/vfs/digitalocean/digitalocean.d.ts +8 -0
  104. package/dist/vfs/digitalocean/digitalocean.d.ts.map +1 -0
  105. package/dist/{resource → vfs}/digitalocean/digitalocean.js +6 -6
  106. package/dist/vfs/digitalocean/digitalocean.js.map +1 -0
  107. package/dist/{resource/minio → vfs/digitalocean}/prompt.d.ts +1 -1
  108. package/dist/vfs/digitalocean/prompt.d.ts.map +1 -0
  109. package/dist/{resource → vfs}/digitalocean/prompt.js +1 -1
  110. package/dist/{resource/tencent → vfs/digitalocean}/prompt.js.map +1 -1
  111. package/dist/{resource → vfs}/discord/config.d.ts +4 -2
  112. package/dist/vfs/discord/config.d.ts.map +1 -0
  113. package/dist/{resource → vfs}/discord/config.js +7 -3
  114. package/dist/vfs/discord/config.js.map +1 -0
  115. package/dist/vfs/discord/discord.d.ts +19 -0
  116. package/dist/vfs/discord/discord.d.ts.map +1 -0
  117. package/dist/vfs/discord/discord.js +47 -0
  118. package/dist/vfs/discord/discord.js.map +1 -0
  119. package/dist/{resource → vfs}/gcs/config.d.ts +3 -3
  120. package/dist/vfs/gcs/config.d.ts.map +1 -0
  121. package/dist/vfs/gcs/config.js.map +1 -0
  122. package/dist/vfs/gcs/gcs.d.ts +8 -0
  123. package/dist/vfs/gcs/gcs.d.ts.map +1 -0
  124. package/dist/{resource → vfs}/gcs/gcs.js +6 -6
  125. package/dist/vfs/gcs/gcs.js.map +1 -0
  126. package/dist/vfs/gcs/prompt.d.ts +2 -0
  127. package/dist/vfs/gcs/prompt.d.ts.map +1 -0
  128. package/dist/{resource → vfs}/gcs/prompt.js +1 -1
  129. package/dist/vfs/gcs/prompt.js.map +1 -0
  130. package/dist/{resource → vfs}/minio/config.d.ts +3 -3
  131. package/dist/vfs/minio/config.d.ts.map +1 -0
  132. package/dist/vfs/minio/config.js.map +1 -0
  133. package/dist/vfs/minio/minio.d.ts +8 -0
  134. package/dist/vfs/minio/minio.d.ts.map +1 -0
  135. package/dist/{resource → vfs}/minio/minio.js +6 -6
  136. package/dist/vfs/minio/minio.js.map +1 -0
  137. package/dist/vfs/minio/prompt.d.ts +2 -0
  138. package/dist/vfs/minio/prompt.d.ts.map +1 -0
  139. package/dist/{resource → vfs}/minio/prompt.js +1 -1
  140. package/dist/vfs/minio/prompt.js.map +1 -0
  141. package/dist/{resource → vfs}/mongodb/http_driver.d.ts +4 -3
  142. package/dist/vfs/mongodb/http_driver.d.ts.map +1 -0
  143. package/dist/{resource → vfs}/mongodb/http_driver.js +5 -8
  144. package/dist/vfs/mongodb/http_driver.js.map +1 -0
  145. package/dist/vfs/mongodb/mongodb.d.ts +28 -0
  146. package/dist/vfs/mongodb/mongodb.d.ts.map +1 -0
  147. package/dist/vfs/mongodb/mongodb.js +55 -0
  148. package/dist/vfs/mongodb/mongodb.js.map +1 -0
  149. package/dist/{resource → vfs}/notion/config.d.ts +3 -3
  150. package/dist/vfs/notion/config.d.ts.map +1 -0
  151. package/dist/{resource → vfs}/notion/config.js +1 -1
  152. package/dist/vfs/notion/config.js.map +1 -0
  153. package/dist/vfs/notion/notion.d.ts +18 -0
  154. package/dist/vfs/notion/notion.d.ts.map +1 -0
  155. package/dist/vfs/notion/notion.js +42 -0
  156. package/dist/vfs/notion/notion.js.map +1 -0
  157. package/dist/{resource → vfs}/oci/config.d.ts +4 -4
  158. package/dist/vfs/oci/config.d.ts.map +1 -0
  159. package/dist/{resource → vfs}/oci/config.js +1 -1
  160. package/dist/vfs/oci/config.js.map +1 -0
  161. package/dist/vfs/oci/oci.d.ts +8 -0
  162. package/dist/vfs/oci/oci.d.ts.map +1 -0
  163. package/dist/{resource → vfs}/oci/oci.js +6 -6
  164. package/dist/vfs/oci/oci.js.map +1 -0
  165. package/dist/vfs/oci/prompt.d.ts +2 -0
  166. package/dist/vfs/oci/prompt.d.ts.map +1 -0
  167. package/dist/{resource → vfs}/oci/prompt.js +1 -1
  168. package/dist/vfs/oci/prompt.js.map +1 -0
  169. package/dist/vfs/opfs/opfs.d.ts +53 -0
  170. package/dist/vfs/opfs/opfs.d.ts.map +1 -0
  171. package/dist/{resource → vfs}/opfs/opfs.js +70 -101
  172. package/dist/vfs/opfs/opfs.js.map +1 -0
  173. package/dist/vfs/opfs/prompt.d.ts +2 -0
  174. package/dist/vfs/opfs/prompt.d.ts.map +1 -0
  175. package/dist/{resource → vfs}/opfs/prompt.js +1 -1
  176. package/dist/vfs/opfs/prompt.js.map +1 -0
  177. package/dist/vfs/postgres/neon_driver.d.ts.map +1 -0
  178. package/dist/{resource → vfs}/postgres/neon_driver.js +3 -2
  179. package/dist/vfs/postgres/neon_driver.js.map +1 -0
  180. package/dist/vfs/postgres/postgres.d.ts +27 -0
  181. package/dist/vfs/postgres/postgres.d.ts.map +1 -0
  182. package/dist/vfs/postgres/postgres.js +53 -0
  183. package/dist/vfs/postgres/postgres.js.map +1 -0
  184. package/dist/{resource → vfs}/qingstor/config.d.ts +3 -3
  185. package/dist/vfs/qingstor/config.d.ts.map +1 -0
  186. package/dist/vfs/qingstor/config.js.map +1 -0
  187. package/dist/{resource/r2 → vfs/qingstor}/prompt.d.ts +1 -1
  188. package/dist/vfs/qingstor/prompt.d.ts.map +1 -0
  189. package/dist/{resource → vfs}/qingstor/prompt.js +1 -1
  190. package/dist/{resource/oci → vfs/qingstor}/prompt.js.map +1 -1
  191. package/dist/vfs/qingstor/qingstor.d.ts +8 -0
  192. package/dist/vfs/qingstor/qingstor.d.ts.map +1 -0
  193. package/dist/{resource → vfs}/qingstor/qingstor.js +6 -6
  194. package/dist/vfs/qingstor/qingstor.js.map +1 -0
  195. package/dist/{resource → vfs}/r2/config.d.ts +4 -4
  196. package/dist/vfs/r2/config.d.ts.map +1 -0
  197. package/dist/{resource → vfs}/r2/config.js +1 -1
  198. package/dist/vfs/r2/config.js.map +1 -0
  199. package/dist/vfs/r2/prompt.d.ts +2 -0
  200. package/dist/vfs/r2/prompt.d.ts.map +1 -0
  201. package/dist/{resource → vfs}/r2/prompt.js +1 -1
  202. package/dist/vfs/r2/prompt.js.map +1 -0
  203. package/dist/vfs/r2/r2.d.ts +8 -0
  204. package/dist/vfs/r2/r2.d.ts.map +1 -0
  205. package/dist/{resource → vfs}/r2/r2.js +6 -6
  206. package/dist/vfs/r2/r2.js.map +1 -0
  207. package/dist/vfs/redis/redis.d.ts +17 -0
  208. package/dist/vfs/redis/redis.d.ts.map +1 -0
  209. package/dist/{resource → vfs}/redis/redis.js +3 -3
  210. package/dist/vfs/redis/redis.js.map +1 -0
  211. package/dist/{resource → vfs}/redis/store.d.ts +7 -2
  212. package/dist/vfs/redis/store.d.ts.map +1 -0
  213. package/dist/{resource → vfs}/redis/store.js +54 -4
  214. package/dist/vfs/redis/store.js.map +1 -0
  215. package/dist/vfs/registry.d.ts +25 -0
  216. package/dist/vfs/registry.d.ts.map +1 -0
  217. package/dist/vfs/registry.js +297 -0
  218. package/dist/vfs/registry.js.map +1 -0
  219. package/dist/{resource → vfs}/s3/config.d.ts +3 -3
  220. package/dist/vfs/s3/config.d.ts.map +1 -0
  221. package/dist/{resource → vfs}/s3/config.js +3 -3
  222. package/dist/vfs/s3/config.js.map +1 -0
  223. package/dist/vfs/s3/prompt.d.ts +2 -0
  224. package/dist/vfs/s3/prompt.d.ts.map +1 -0
  225. package/dist/vfs/s3/prompt.js +19 -0
  226. package/dist/vfs/s3/prompt.js.map +1 -0
  227. package/dist/vfs/s3/s3.d.ts +21 -0
  228. package/dist/vfs/s3/s3.d.ts.map +1 -0
  229. package/dist/vfs/s3/s3.js +64 -0
  230. package/dist/vfs/s3/s3.js.map +1 -0
  231. package/dist/{resource → vfs}/s3_alias.d.ts +17 -24
  232. package/dist/vfs/s3_alias.d.ts.map +1 -0
  233. package/dist/{resource → vfs}/s3_alias.js +14 -28
  234. package/dist/vfs/s3_alias.js.map +1 -0
  235. package/dist/{resource → vfs}/scaleway/config.d.ts +3 -3
  236. package/dist/vfs/scaleway/config.d.ts.map +1 -0
  237. package/dist/vfs/scaleway/config.js.map +1 -0
  238. package/dist/vfs/scaleway/prompt.d.ts +2 -0
  239. package/dist/vfs/scaleway/prompt.d.ts.map +1 -0
  240. package/dist/{resource → vfs}/scaleway/prompt.js +1 -1
  241. package/dist/{resource/gcs → vfs/scaleway}/prompt.js.map +1 -1
  242. package/dist/vfs/scaleway/scaleway.d.ts +8 -0
  243. package/dist/vfs/scaleway/scaleway.d.ts.map +1 -0
  244. package/dist/{resource → vfs}/scaleway/scaleway.js +6 -6
  245. package/dist/vfs/scaleway/scaleway.js.map +1 -0
  246. package/dist/{resource → vfs}/seaweedfs/config.d.ts +3 -3
  247. package/dist/vfs/seaweedfs/config.d.ts.map +1 -0
  248. package/dist/vfs/seaweedfs/config.js.map +1 -0
  249. package/dist/vfs/seaweedfs/prompt.d.ts +2 -0
  250. package/dist/vfs/seaweedfs/prompt.d.ts.map +1 -0
  251. package/dist/{resource → vfs}/seaweedfs/prompt.js +1 -1
  252. package/dist/{resource/ceph → vfs/seaweedfs}/prompt.js.map +1 -1
  253. package/dist/vfs/seaweedfs/seaweedfs.d.ts +8 -0
  254. package/dist/vfs/seaweedfs/seaweedfs.d.ts.map +1 -0
  255. package/dist/{resource → vfs}/seaweedfs/seaweedfs.js +6 -6
  256. package/dist/vfs/seaweedfs/seaweedfs.js.map +1 -0
  257. package/dist/{resource → vfs}/slack/config.d.ts +5 -2
  258. package/dist/vfs/slack/config.d.ts.map +1 -0
  259. package/dist/{resource → vfs}/slack/config.js +10 -3
  260. package/dist/vfs/slack/config.js.map +1 -0
  261. package/dist/vfs/slack/slack.d.ts +19 -0
  262. package/dist/vfs/slack/slack.d.ts.map +1 -0
  263. package/dist/vfs/slack/slack.js +48 -0
  264. package/dist/vfs/slack/slack.js.map +1 -0
  265. package/dist/{resource → vfs}/supabase/config.d.ts +4 -4
  266. package/dist/vfs/supabase/config.d.ts.map +1 -0
  267. package/dist/{resource → vfs}/supabase/config.js +1 -1
  268. package/dist/vfs/supabase/config.js.map +1 -0
  269. package/dist/vfs/supabase/prompt.d.ts +2 -0
  270. package/dist/vfs/supabase/prompt.d.ts.map +1 -0
  271. package/dist/{resource → vfs}/supabase/prompt.js +1 -1
  272. package/dist/vfs/supabase/prompt.js.map +1 -0
  273. package/dist/vfs/supabase/supabase.d.ts +8 -0
  274. package/dist/vfs/supabase/supabase.d.ts.map +1 -0
  275. package/dist/{resource → vfs}/supabase/supabase.js +6 -6
  276. package/dist/vfs/supabase/supabase.js.map +1 -0
  277. package/dist/{resource → vfs}/tencent/config.d.ts +3 -3
  278. package/dist/vfs/tencent/config.d.ts.map +1 -0
  279. package/dist/vfs/tencent/config.js.map +1 -0
  280. package/dist/vfs/tencent/prompt.d.ts +2 -0
  281. package/dist/vfs/tencent/prompt.d.ts.map +1 -0
  282. package/dist/{resource → vfs}/tencent/prompt.js +1 -1
  283. package/dist/{resource/r2 → vfs/tencent}/prompt.js.map +1 -1
  284. package/dist/vfs/tencent/tencent.d.ts +8 -0
  285. package/dist/vfs/tencent/tencent.d.ts.map +1 -0
  286. package/dist/{resource → vfs}/tencent/tencent.js +6 -6
  287. package/dist/vfs/tencent/tencent.js.map +1 -0
  288. package/dist/{resource → vfs}/wasabi/config.d.ts +3 -3
  289. package/dist/vfs/wasabi/config.d.ts.map +1 -0
  290. package/dist/vfs/wasabi/config.js.map +1 -0
  291. package/dist/vfs/wasabi/prompt.d.ts +2 -0
  292. package/dist/vfs/wasabi/prompt.d.ts.map +1 -0
  293. package/dist/{resource → vfs}/wasabi/prompt.js +1 -1
  294. package/dist/vfs/wasabi/prompt.js.map +1 -0
  295. package/dist/vfs/wasabi/wasabi.d.ts +8 -0
  296. package/dist/vfs/wasabi/wasabi.d.ts.map +1 -0
  297. package/dist/{resource → vfs}/wasabi/wasabi.js +6 -6
  298. package/dist/vfs/wasabi/wasabi.js.map +1 -0
  299. package/dist/workspace.d.ts +5 -4
  300. package/dist/workspace.d.ts.map +1 -1
  301. package/dist/workspace.js +11 -30
  302. package/dist/workspace.js.map +1 -1
  303. package/package.json +8 -6
  304. package/dist/commands/builtin/opfs/index.d.ts +0 -3
  305. package/dist/commands/builtin/opfs/index.d.ts.map +0 -1
  306. package/dist/commands/builtin/opfs/index.js +0 -20
  307. package/dist/commands/builtin/opfs/index.js.map +0 -1
  308. package/dist/commands/builtin/opfs/io.d.ts +0 -4
  309. package/dist/commands/builtin/opfs/io.d.ts.map +0 -1
  310. package/dist/commands/builtin/opfs/io.js +0 -56
  311. package/dist/commands/builtin/opfs/io.js.map +0 -1
  312. package/dist/core/opfs/du/entries.d.ts +0 -4
  313. package/dist/core/opfs/du/entries.d.ts.map +0 -1
  314. package/dist/core/opfs/du/entries.js +0 -56
  315. package/dist/core/opfs/du/entries.js.map +0 -1
  316. package/dist/core/opfs/du/index.d.ts +0 -3
  317. package/dist/core/opfs/du/index.d.ts.map +0 -1
  318. package/dist/core/opfs/du/index.js +0 -16
  319. package/dist/core/opfs/du/index.js.map +0 -1
  320. package/dist/core/opfs/du/size.d.ts +0 -4
  321. package/dist/core/opfs/du/size.d.ts.map +0 -1
  322. package/dist/core/opfs/du/size.js +0 -18
  323. package/dist/core/opfs/du/size.js.map +0 -1
  324. package/dist/core/opfs/du/walk.d.ts +0 -3
  325. package/dist/core/opfs/du/walk.d.ts.map +0 -1
  326. package/dist/core/opfs/du/walk.js +0 -98
  327. package/dist/core/opfs/du/walk.js.map +0 -1
  328. package/dist/core/opfs/entry.d.ts +0 -11
  329. package/dist/core/opfs/entry.d.ts.map +0 -1
  330. package/dist/core/opfs/entry.js +0 -42
  331. package/dist/core/opfs/entry.js.map +0 -1
  332. package/dist/core/opfs/find.d.ts +0 -21
  333. package/dist/core/opfs/find.d.ts.map +0 -1
  334. package/dist/core/opfs/find.js +0 -154
  335. package/dist/core/opfs/find.js.map +0 -1
  336. package/dist/ops/opfs/index.d.ts +0 -3
  337. package/dist/ops/opfs/index.d.ts.map +0 -1
  338. package/dist/ops/opfs/index.js +0 -23
  339. package/dist/ops/opfs/index.js.map +0 -1
  340. package/dist/resource/aliyun/aliyun.d.ts +0 -8
  341. package/dist/resource/aliyun/aliyun.d.ts.map +0 -1
  342. package/dist/resource/aliyun/aliyun.js.map +0 -1
  343. package/dist/resource/aliyun/config.d.ts.map +0 -1
  344. package/dist/resource/aliyun/config.js.map +0 -1
  345. package/dist/resource/aliyun/prompt.d.ts +0 -2
  346. package/dist/resource/aliyun/prompt.d.ts.map +0 -1
  347. package/dist/resource/aliyun/prompt.js.map +0 -1
  348. package/dist/resource/backblaze/backblaze.d.ts +0 -8
  349. package/dist/resource/backblaze/backblaze.d.ts.map +0 -1
  350. package/dist/resource/backblaze/backblaze.js.map +0 -1
  351. package/dist/resource/backblaze/config.d.ts.map +0 -1
  352. package/dist/resource/backblaze/config.js.map +0 -1
  353. package/dist/resource/backblaze/prompt.d.ts +0 -2
  354. package/dist/resource/backblaze/prompt.d.ts.map +0 -1
  355. package/dist/resource/backblaze/prompt.js.map +0 -1
  356. package/dist/resource/box/box.d.ts +0 -34
  357. package/dist/resource/box/box.d.ts.map +0 -1
  358. package/dist/resource/box/box.js +0 -99
  359. package/dist/resource/box/box.js.map +0 -1
  360. package/dist/resource/box/config.d.ts +0 -41
  361. package/dist/resource/box/config.d.ts.map +0 -1
  362. package/dist/resource/box/config.js +0 -38
  363. package/dist/resource/box/config.js.map +0 -1
  364. package/dist/resource/ceph/ceph.d.ts +0 -8
  365. package/dist/resource/ceph/ceph.d.ts.map +0 -1
  366. package/dist/resource/ceph/ceph.js.map +0 -1
  367. package/dist/resource/ceph/config.d.ts.map +0 -1
  368. package/dist/resource/ceph/config.js.map +0 -1
  369. package/dist/resource/ceph/prompt.d.ts +0 -2
  370. package/dist/resource/ceph/prompt.d.ts.map +0 -1
  371. package/dist/resource/digitalocean/config.d.ts.map +0 -1
  372. package/dist/resource/digitalocean/config.js.map +0 -1
  373. package/dist/resource/digitalocean/digitalocean.d.ts +0 -8
  374. package/dist/resource/digitalocean/digitalocean.d.ts.map +0 -1
  375. package/dist/resource/digitalocean/digitalocean.js.map +0 -1
  376. package/dist/resource/digitalocean/prompt.d.ts +0 -2
  377. package/dist/resource/digitalocean/prompt.d.ts.map +0 -1
  378. package/dist/resource/digitalocean/prompt.js.map +0 -1
  379. package/dist/resource/discord/config.d.ts.map +0 -1
  380. package/dist/resource/discord/config.js.map +0 -1
  381. package/dist/resource/discord/discord.d.ts +0 -33
  382. package/dist/resource/discord/discord.d.ts.map +0 -1
  383. package/dist/resource/discord/discord.js +0 -90
  384. package/dist/resource/discord/discord.js.map +0 -1
  385. package/dist/resource/dropbox/config.d.ts +0 -34
  386. package/dist/resource/dropbox/config.d.ts.map +0 -1
  387. package/dist/resource/dropbox/config.js +0 -31
  388. package/dist/resource/dropbox/config.js.map +0 -1
  389. package/dist/resource/dropbox/dropbox.d.ts +0 -34
  390. package/dist/resource/dropbox/dropbox.d.ts.map +0 -1
  391. package/dist/resource/dropbox/dropbox.js +0 -95
  392. package/dist/resource/dropbox/dropbox.js.map +0 -1
  393. package/dist/resource/gcal/gcal.d.ts +0 -32
  394. package/dist/resource/gcal/gcal.d.ts.map +0 -1
  395. package/dist/resource/gcal/gcal.js +0 -87
  396. package/dist/resource/gcal/gcal.js.map +0 -1
  397. package/dist/resource/gcs/config.d.ts.map +0 -1
  398. package/dist/resource/gcs/config.js.map +0 -1
  399. package/dist/resource/gcs/gcs.d.ts +0 -8
  400. package/dist/resource/gcs/gcs.d.ts.map +0 -1
  401. package/dist/resource/gcs/gcs.js.map +0 -1
  402. package/dist/resource/gcs/prompt.d.ts +0 -2
  403. package/dist/resource/gcs/prompt.d.ts.map +0 -1
  404. package/dist/resource/gdocs/gdocs.d.ts +0 -32
  405. package/dist/resource/gdocs/gdocs.d.ts.map +0 -1
  406. package/dist/resource/gdocs/gdocs.js +0 -84
  407. package/dist/resource/gdocs/gdocs.js.map +0 -1
  408. package/dist/resource/gdrive/gdrive.d.ts +0 -34
  409. package/dist/resource/gdrive/gdrive.d.ts.map +0 -1
  410. package/dist/resource/gdrive/gdrive.js +0 -89
  411. package/dist/resource/gdrive/gdrive.js.map +0 -1
  412. package/dist/resource/github/github.d.ts +0 -38
  413. package/dist/resource/github/github.d.ts.map +0 -1
  414. package/dist/resource/github/github.js +0 -121
  415. package/dist/resource/github/github.js.map +0 -1
  416. package/dist/resource/gmail/gmail.d.ts +0 -33
  417. package/dist/resource/gmail/gmail.d.ts.map +0 -1
  418. package/dist/resource/gmail/gmail.js +0 -88
  419. package/dist/resource/gmail/gmail.js.map +0 -1
  420. package/dist/resource/gsheets/gsheets.d.ts +0 -32
  421. package/dist/resource/gsheets/gsheets.d.ts.map +0 -1
  422. package/dist/resource/gsheets/gsheets.js +0 -84
  423. package/dist/resource/gsheets/gsheets.js.map +0 -1
  424. package/dist/resource/gslides/gslides.d.ts +0 -32
  425. package/dist/resource/gslides/gslides.d.ts.map +0 -1
  426. package/dist/resource/gslides/gslides.js +0 -84
  427. package/dist/resource/gslides/gslides.js.map +0 -1
  428. package/dist/resource/langfuse/config.d.ts +0 -23
  429. package/dist/resource/langfuse/config.d.ts.map +0 -1
  430. package/dist/resource/langfuse/config.js +0 -36
  431. package/dist/resource/langfuse/config.js.map +0 -1
  432. package/dist/resource/langfuse/langfuse.d.ts +0 -31
  433. package/dist/resource/langfuse/langfuse.d.ts.map +0 -1
  434. package/dist/resource/langfuse/langfuse.js +0 -98
  435. package/dist/resource/langfuse/langfuse.js.map +0 -1
  436. package/dist/resource/linear/linear.d.ts +0 -33
  437. package/dist/resource/linear/linear.d.ts.map +0 -1
  438. package/dist/resource/linear/linear.js +0 -93
  439. package/dist/resource/linear/linear.js.map +0 -1
  440. package/dist/resource/minio/config.d.ts.map +0 -1
  441. package/dist/resource/minio/config.js.map +0 -1
  442. package/dist/resource/minio/minio.d.ts +0 -8
  443. package/dist/resource/minio/minio.d.ts.map +0 -1
  444. package/dist/resource/minio/minio.js.map +0 -1
  445. package/dist/resource/minio/prompt.d.ts.map +0 -1
  446. package/dist/resource/minio/prompt.js.map +0 -1
  447. package/dist/resource/mongodb/http_driver.d.ts.map +0 -1
  448. package/dist/resource/mongodb/http_driver.js.map +0 -1
  449. package/dist/resource/mongodb/mongodb.d.ts +0 -41
  450. package/dist/resource/mongodb/mongodb.d.ts.map +0 -1
  451. package/dist/resource/mongodb/mongodb.js +0 -100
  452. package/dist/resource/mongodb/mongodb.js.map +0 -1
  453. package/dist/resource/notion/config.d.ts.map +0 -1
  454. package/dist/resource/notion/config.js.map +0 -1
  455. package/dist/resource/notion/notion.d.ts +0 -32
  456. package/dist/resource/notion/notion.d.ts.map +0 -1
  457. package/dist/resource/notion/notion.js +0 -86
  458. package/dist/resource/notion/notion.js.map +0 -1
  459. package/dist/resource/oci/config.d.ts.map +0 -1
  460. package/dist/resource/oci/config.js.map +0 -1
  461. package/dist/resource/oci/oci.d.ts +0 -8
  462. package/dist/resource/oci/oci.d.ts.map +0 -1
  463. package/dist/resource/oci/oci.js.map +0 -1
  464. package/dist/resource/oci/prompt.d.ts +0 -2
  465. package/dist/resource/oci/prompt.d.ts.map +0 -1
  466. package/dist/resource/opfs/opfs.d.ts +0 -57
  467. package/dist/resource/opfs/opfs.d.ts.map +0 -1
  468. package/dist/resource/opfs/opfs.js.map +0 -1
  469. package/dist/resource/opfs/prompt.d.ts +0 -2
  470. package/dist/resource/opfs/prompt.d.ts.map +0 -1
  471. package/dist/resource/postgres/neon_driver.d.ts.map +0 -1
  472. package/dist/resource/postgres/neon_driver.js.map +0 -1
  473. package/dist/resource/postgres/postgres.d.ts +0 -40
  474. package/dist/resource/postgres/postgres.d.ts.map +0 -1
  475. package/dist/resource/postgres/postgres.js +0 -98
  476. package/dist/resource/postgres/postgres.js.map +0 -1
  477. package/dist/resource/qingstor/config.d.ts.map +0 -1
  478. package/dist/resource/qingstor/config.js.map +0 -1
  479. package/dist/resource/qingstor/prompt.d.ts +0 -2
  480. package/dist/resource/qingstor/prompt.d.ts.map +0 -1
  481. package/dist/resource/qingstor/prompt.js.map +0 -1
  482. package/dist/resource/qingstor/qingstor.d.ts +0 -8
  483. package/dist/resource/qingstor/qingstor.d.ts.map +0 -1
  484. package/dist/resource/qingstor/qingstor.js.map +0 -1
  485. package/dist/resource/r2/config.d.ts.map +0 -1
  486. package/dist/resource/r2/config.js.map +0 -1
  487. package/dist/resource/r2/prompt.d.ts.map +0 -1
  488. package/dist/resource/r2/r2.d.ts +0 -8
  489. package/dist/resource/r2/r2.d.ts.map +0 -1
  490. package/dist/resource/r2/r2.js.map +0 -1
  491. package/dist/resource/redis/redis.d.ts +0 -17
  492. package/dist/resource/redis/redis.d.ts.map +0 -1
  493. package/dist/resource/redis/redis.js.map +0 -1
  494. package/dist/resource/redis/store.d.ts.map +0 -1
  495. package/dist/resource/redis/store.js.map +0 -1
  496. package/dist/resource/registry.d.ts +0 -25
  497. package/dist/resource/registry.d.ts.map +0 -1
  498. package/dist/resource/registry.js +0 -279
  499. package/dist/resource/registry.js.map +0 -1
  500. package/dist/resource/s3/config.d.ts.map +0 -1
  501. package/dist/resource/s3/config.js.map +0 -1
  502. package/dist/resource/s3/s3.d.ts +0 -53
  503. package/dist/resource/s3/s3.d.ts.map +0 -1
  504. package/dist/resource/s3/s3.js +0 -182
  505. package/dist/resource/s3/s3.js.map +0 -1
  506. package/dist/resource/s3_alias.d.ts.map +0 -1
  507. package/dist/resource/s3_alias.js.map +0 -1
  508. package/dist/resource/scaleway/config.d.ts.map +0 -1
  509. package/dist/resource/scaleway/config.js.map +0 -1
  510. package/dist/resource/scaleway/prompt.d.ts +0 -2
  511. package/dist/resource/scaleway/prompt.d.ts.map +0 -1
  512. package/dist/resource/scaleway/prompt.js.map +0 -1
  513. package/dist/resource/scaleway/scaleway.d.ts +0 -8
  514. package/dist/resource/scaleway/scaleway.d.ts.map +0 -1
  515. package/dist/resource/scaleway/scaleway.js.map +0 -1
  516. package/dist/resource/seaweedfs/config.d.ts.map +0 -1
  517. package/dist/resource/seaweedfs/config.js.map +0 -1
  518. package/dist/resource/seaweedfs/prompt.d.ts +0 -2
  519. package/dist/resource/seaweedfs/prompt.d.ts.map +0 -1
  520. package/dist/resource/seaweedfs/prompt.js.map +0 -1
  521. package/dist/resource/seaweedfs/seaweedfs.d.ts +0 -8
  522. package/dist/resource/seaweedfs/seaweedfs.d.ts.map +0 -1
  523. package/dist/resource/seaweedfs/seaweedfs.js.map +0 -1
  524. package/dist/resource/slack/config.d.ts.map +0 -1
  525. package/dist/resource/slack/config.js.map +0 -1
  526. package/dist/resource/slack/slack.d.ts +0 -33
  527. package/dist/resource/slack/slack.d.ts.map +0 -1
  528. package/dist/resource/slack/slack.js +0 -91
  529. package/dist/resource/slack/slack.js.map +0 -1
  530. package/dist/resource/supabase/config.d.ts.map +0 -1
  531. package/dist/resource/supabase/config.js.map +0 -1
  532. package/dist/resource/supabase/prompt.d.ts.map +0 -1
  533. package/dist/resource/supabase/prompt.js.map +0 -1
  534. package/dist/resource/supabase/supabase.d.ts +0 -8
  535. package/dist/resource/supabase/supabase.d.ts.map +0 -1
  536. package/dist/resource/supabase/supabase.js.map +0 -1
  537. package/dist/resource/tencent/config.d.ts.map +0 -1
  538. package/dist/resource/tencent/config.js.map +0 -1
  539. package/dist/resource/tencent/prompt.d.ts +0 -2
  540. package/dist/resource/tencent/prompt.d.ts.map +0 -1
  541. package/dist/resource/tencent/tencent.d.ts +0 -8
  542. package/dist/resource/tencent/tencent.d.ts.map +0 -1
  543. package/dist/resource/tencent/tencent.js.map +0 -1
  544. package/dist/resource/trello/config.d.ts +0 -22
  545. package/dist/resource/trello/config.d.ts.map +0 -1
  546. package/dist/resource/trello/config.js +0 -35
  547. package/dist/resource/trello/config.js.map +0 -1
  548. package/dist/resource/trello/trello.d.ts +0 -32
  549. package/dist/resource/trello/trello.d.ts.map +0 -1
  550. package/dist/resource/trello/trello.js +0 -94
  551. package/dist/resource/trello/trello.js.map +0 -1
  552. package/dist/resource/wasabi/config.d.ts.map +0 -1
  553. package/dist/resource/wasabi/config.js.map +0 -1
  554. package/dist/resource/wasabi/prompt.d.ts +0 -2
  555. package/dist/resource/wasabi/prompt.d.ts.map +0 -1
  556. package/dist/resource/wasabi/prompt.js.map +0 -1
  557. package/dist/resource/wasabi/wasabi.d.ts +0 -8
  558. package/dist/resource/wasabi/wasabi.d.ts.map +0 -1
  559. package/dist/resource/wasabi/wasabi.js.map +0 -1
  560. package/dist/runtime/sandbox/e2b/config.d.ts +0 -2
  561. package/dist/runtime/sandbox/e2b/config.d.ts.map +0 -1
  562. package/dist/runtime/sandbox/e2b/config.js +0 -15
  563. package/dist/runtime/sandbox/e2b/config.js.map +0 -1
  564. package/dist/runtime/sandbox/e2b/runtime.d.ts +0 -2
  565. package/dist/runtime/sandbox/e2b/runtime.d.ts.map +0 -1
  566. package/dist/runtime/sandbox/e2b/runtime.js +0 -15
  567. package/dist/runtime/sandbox/e2b/runtime.js.map +0 -1
  568. package/dist/test-utils.d.ts +0 -37
  569. package/dist/test-utils.d.ts.map +0 -1
  570. package/dist/test-utils.js +0 -518
  571. package/dist/test-utils.js.map +0 -1
  572. /package/dist/{resource → vfs}/aliyun/config.js +0 -0
  573. /package/dist/{resource → vfs}/backblaze/config.js +0 -0
  574. /package/dist/{resource → vfs}/ceph/config.js +0 -0
  575. /package/dist/{resource → vfs}/digitalocean/config.js +0 -0
  576. /package/dist/{resource → vfs}/gcs/config.js +0 -0
  577. /package/dist/{resource → vfs}/minio/config.js +0 -0
  578. /package/dist/{resource → vfs}/postgres/neon_driver.d.ts +0 -0
  579. /package/dist/{resource → vfs}/qingstor/config.js +0 -0
  580. /package/dist/{resource → vfs}/scaleway/config.js +0 -0
  581. /package/dist/{resource → vfs}/seaweedfs/config.js +0 -0
  582. /package/dist/{resource → vfs}/tencent/config.js +0 -0
  583. /package/dist/{resource → vfs}/wasabi/config.js +0 -0
@@ -0,0 +1,2 @@
1
+ export declare const PROMPT = "{prefix}\n Remote S3 bucket accessed via presigned URLs (browser runtime).\n Supports the full filesystem command set: ls/tree/cat/grep/find/du/cp/mv/rm/etc.\n Listing operations require the presigner to sign LIST/COPY operations in\n addition to GET/PUT/HEAD/DELETE \u2014 see S3BrowserPresignedUrlProvider docs.";
2
+ //# sourceMappingURL=prompt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../../src/vfs/s3/prompt.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,MAAM,kUAIyD,CAAA"}
@@ -0,0 +1,19 @@
1
+ // ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========
2
+ // Licensed under the Apache License, Version 2.0 (the "License");
3
+ // you may not use this file except in compliance with the License.
4
+ // You may obtain a copy of the License at
5
+ //
6
+ // http://www.apache.org/licenses/LICENSE-2.0
7
+ //
8
+ // Unless required by applicable law or agreed to in writing, software
9
+ // distributed under the License is distributed on an "AS IS" BASIS,
10
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ // See the License for the specific language governing permissions and
12
+ // limitations under the License.
13
+ // ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========
14
+ export const PROMPT = `{prefix}
15
+ Remote S3 bucket accessed via presigned URLs (browser runtime).
16
+ Supports the full filesystem command set: ls/tree/cat/grep/find/du/cp/mv/rm/etc.
17
+ Listing operations require the presigner to sign LIST/COPY operations in
18
+ addition to GET/PUT/HEAD/DELETE — see S3BrowserPresignedUrlProvider docs.`;
19
+ //# sourceMappingURL=prompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../../src/vfs/s3/prompt.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,uEAAuE;AAEvE,MAAM,CAAC,MAAM,MAAM,GAAG;;;;4EAIsD,CAAA"}
@@ -0,0 +1,21 @@
1
+ import { S3VFSBase } from '@struktoai/mirage-core/vfs/s3/s3';
2
+ import { S3Accessor } from '@struktoai/mirage-core/accessor/s3';
3
+ import { type S3Config, type S3ConfigRedacted } from './config.ts';
4
+ export interface S3VFSState {
5
+ type: string;
6
+ config: S3ConfigRedacted;
7
+ }
8
+ export declare class S3VFS extends S3VFSBase {
9
+ readonly supportsSnapshot: boolean;
10
+ readonly name: string;
11
+ readonly cachesReads: boolean;
12
+ readonly sizesAlwaysKnown: boolean;
13
+ readonly readRevalidatable: boolean;
14
+ readonly prompt: string;
15
+ readonly config: S3Config;
16
+ readonly accessor: S3Accessor;
17
+ constructor(config: S3Config);
18
+ storageLocation(): string;
19
+ getState(): Promise<S3VFSState>;
20
+ }
21
+ //# sourceMappingURL=s3.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"s3.d.ts","sourceRoot":"","sources":["../../../src/vfs/s3/s3.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAA;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAA;AAM/D,OAAO,EAAgB,KAAK,QAAQ,EAAE,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAGhF,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,gBAAgB,CAAA;CACzB;AAED,qBAAa,KAAM,SAAQ,SAAS;IAClC,SAAkB,gBAAgB,EAAE,OAAO,CAAO;IAClD,SAAkB,IAAI,EAAE,MAAM,CAAa;IAC3C,SAAkB,WAAW,EAAE,OAAO,CAAO;IAI7C,SAAkB,gBAAgB,EAAE,OAAO,CAAO;IAGlD,SAAkB,iBAAiB,EAAE,OAAO,CAAO;IACnD,SAAkB,MAAM,EAAE,MAAM,CAAS;IACzC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAA;IACzB,SAAkB,QAAQ,EAAE,UAAU,CAAA;gBAE1B,MAAM,EAAE,QAAQ;IAmBnB,eAAe,IAAI,MAAM;IAIzB,QAAQ,IAAI,OAAO,CAAC,UAAU,CAAC;CAMzC"}
@@ -0,0 +1,64 @@
1
+ // ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========
2
+ // Licensed under the Apache License, Version 2.0 (the "License");
3
+ // you may not use this file except in compliance with the License.
4
+ // You may obtain a copy of the License at
5
+ //
6
+ // http://www.apache.org/licenses/LICENSE-2.0
7
+ //
8
+ // Unless required by applicable law or agreed to in writing, software
9
+ // distributed under the License is distributed on an "AS IS" BASIS,
10
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ // See the License for the specific language governing permissions and
12
+ // limitations under the License.
13
+ // ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========
14
+ import { S3VFSBase } from '@struktoai/mirage-core/vfs/s3/s3';
15
+ import { S3Accessor } from '@struktoai/mirage-core/accessor/s3';
16
+ import { normalizeKeyPrefix } from '@struktoai/mirage-core/vfs/s3/config';
17
+ import { s3StorageLocation } from '@struktoai/mirage-core/vfs/s3/storage_id';
18
+ import { VFSName } from '@struktoai/mirage-core/types';
19
+ import { redactConfig } from "./config.js";
20
+ import { PROMPT } from "./prompt.js";
21
+ export class S3VFS extends S3VFSBase {
22
+ supportsSnapshot = true;
23
+ name = VFSName.S3;
24
+ cachesReads = true;
25
+ // A HEAD carries ContentLength, so a size is always knowable without
26
+ // fetching. Every sibling browser VFS says so; s3 was the one that
27
+ // did not, and its node twin has always declared it.
28
+ sizesAlwaysKnown = true;
29
+ // stat and read both stamp the ETag, so the gate compares like with
30
+ // like. Inherited by every S3AliasVFS provider.
31
+ readRevalidatable = true;
32
+ prompt = PROMPT;
33
+ config;
34
+ accessor;
35
+ constructor(config) {
36
+ super();
37
+ // Normalized as node's S3VFS does: the keys are `prefix + path`, so a
38
+ // raw `team/x` keyed `team/xa.txt` and a raw `/team/x/` a leading slash.
39
+ const normalized = normalizeKeyPrefix(config.keyPrefix);
40
+ const cfg = { ...config };
41
+ if (normalized !== undefined) {
42
+ cfg.keyPrefix = normalized;
43
+ }
44
+ else {
45
+ delete cfg.keyPrefix;
46
+ }
47
+ this.config = cfg;
48
+ this.accessor = new S3Accessor(this.config);
49
+ }
50
+ // Without this, two mounts of one bucket at different prefixes are two
51
+ // storages, so `mv` between them copies an object over itself and then
52
+ // unlinks the source. Node has always declared it; the shared helper keeps
53
+ // the two runtimes from computing different identities for one bucket.
54
+ storageLocation() {
55
+ return s3StorageLocation(this.config);
56
+ }
57
+ getState() {
58
+ return Promise.resolve({
59
+ type: this.name,
60
+ config: redactConfig(this.config),
61
+ });
62
+ }
63
+ }
64
+ //# sourceMappingURL=s3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"s3.js","sourceRoot":"","sources":["../../../src/vfs/s3/s3.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,uEAAuE;AAEvE,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAA;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAA;AAE/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAA;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAA;AAC5E,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAEtD,OAAO,EAAE,YAAY,EAAwC,MAAM,aAAa,CAAA;AAChF,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAOpC,MAAM,OAAO,KAAM,SAAQ,SAAS;IAChB,gBAAgB,GAAY,IAAI,CAAA;IAChC,IAAI,GAAW,OAAO,CAAC,EAAE,CAAA;IACzB,WAAW,GAAY,IAAI,CAAA;IAC7C,qEAAqE;IACrE,mEAAmE;IACnE,qDAAqD;IACnC,gBAAgB,GAAY,IAAI,CAAA;IAClD,oEAAoE;IACpE,gDAAgD;IAC9B,iBAAiB,GAAY,IAAI,CAAA;IACjC,MAAM,GAAW,MAAM,CAAA;IAChC,MAAM,CAAU;IACP,QAAQ,CAAY;IAEtC,YAAY,MAAgB;QAC1B,KAAK,EAAE,CAAA;QACP,sEAAsE;QACtE,yEAAyE;QACzE,MAAM,UAAU,GAAG,kBAAkB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QACvD,MAAM,GAAG,GAAa,EAAE,GAAG,MAAM,EAAE,CAAA;QACnC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,GAAG,CAAC,SAAS,GAAG,UAAU,CAAA;QAC5B,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,CAAC,SAAS,CAAA;QACtB,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,GAAG,CAAA;QACjB,IAAI,CAAC,QAAQ,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC7C,CAAC;IAED,uEAAuE;IACvE,uEAAuE;IACvE,2EAA2E;IAC3E,uEAAuE;IAC9D,eAAe;QACtB,OAAO,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACvC,CAAC;IAEQ,QAAQ;QACf,OAAO,OAAO,CAAC,OAAO,CAAC;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC;SAClC,CAAC,CAAA;IACJ,CAAC;CACF"}
@@ -1,7 +1,5 @@
1
- import { S3Resource } from './s3/s3.ts';
2
- import type { RegisteredCommand } from '@struktoai/mirage-core/commands/config';
3
- import type { RegisteredOp } from '@struktoai/mirage-core/ops/registry';
4
- import { z } from '@struktoai/mirage-core/resource/secrets';
1
+ import { S3VFS } from './s3/s3.ts';
2
+ import { z } from '@struktoai/mirage-core/vfs/secrets';
5
3
  import type { S3BrowserPresignedUrlProvider, S3Config, S3ConfigRedacted } from './s3/config.ts';
6
4
  /**
7
5
  * Shared shape for the browser's S3-compatible providers.
@@ -10,7 +8,7 @@ import type { S3BrowserPresignedUrlProvider, S3Config, S3ConfigRedacted } from '
10
8
  * so the fields, the zod schema that drives redaction, and the conversion
11
9
  * to S3Config live here once. A provider declares only its endpoint rule
12
10
  * and whatever it genuinely adds. The node twin is
13
- * `packages/node/src/resource/s3_alias.ts`; it carries credentials and a
11
+ * `packages/node/src/vfs/s3_alias.ts`; it carries credentials and a
14
12
  * snake_case `normalize` where this one carries a
15
13
  * `presignedUrlProvider`, which is one field's difference and not a
16
14
  * reason to fork the family.
@@ -77,37 +75,32 @@ export declare function makeBrowserS3Alias<C extends S3BrowserAliasConfig, R, E
77
75
  forcePathStyle?: boolean;
78
76
  }): BrowserAlias<C, R, E>;
79
77
  /**
80
- * The snapshot state of an S3-compatible alias: its own kind and its own
81
- * redacted config, not the `s3` kind and S3 config it delegates to.
78
+ * The snapshot state of an S3-compatible alias: its own name and its own
79
+ * redacted config, not the `s3` name and S3 config it delegates to.
82
80
  */
83
- export interface S3AliasResourceState<TRedacted> {
81
+ export interface S3AliasVFSState<TRedacted> {
84
82
  type: string;
85
83
  config: TRedacted;
86
84
  }
87
85
  /**
88
- * The shared body of every S3-compatible provider resource (MinIO, Ceph,
89
- * R2, Wasabi, ...). Each is an {@link S3Resource} reached through a
90
- * provider-shaped config, so all it owns is its `kind`, that config, and
91
- * ops/commands retagged from `s3` onto the kind. A subclass supplies its
86
+ * The shared body of every S3-compatible provider VFS (MinIO, Ceph,
87
+ * R2, Wasabi, ...). Each is an {@link S3VFS} reached through a
88
+ * provider-shaped config, so all it owns is its `name` and that config;
89
+ * the mount serves S3's commands under the name. A subclass supplies its
92
90
  * prompt as a plain field and hands the varying pieces to `super`.
93
91
  *
94
92
  * `toS3Config` and `redact` arrive as functions rather than as an
95
93
  * {@link Alias}: the four providers whose region or endpoint rule fits
96
94
  * neither {@link makeRegionAlias} nor {@link makeFixedAlias} write their
97
- * own pair, so the resource layer takes the two functions every provider
98
- * has either way. Mirrors python `S3AliasResource` in
99
- * `mirage/resource/s3_alias.py`.
95
+ * own pair, so the VFS layer takes the two functions every provider
96
+ * has either way. Mirrors python `S3AliasVFS` in
97
+ * `mirage/vfs/s3_alias.py`.
100
98
  */
101
- export declare abstract class S3AliasResource<TConfig, TRedacted extends S3ConfigRedacted> extends S3Resource {
102
- readonly kind: string;
99
+ export declare abstract class S3AliasVFS<TConfig, TRedacted extends S3ConfigRedacted> extends S3VFS {
100
+ readonly name: string;
103
101
  readonly aliasConfig: TConfig;
104
- private readonly aliasOps;
105
- private readonly aliasCommands;
106
102
  private readonly redactAlias;
107
- protected constructor(kind: string, config: TConfig, s3Config: S3Config, redact: (config: TConfig) => TRedacted);
108
- ops(): readonly RegisteredOp[];
109
- commands(): readonly RegisteredCommand[];
110
- getState(): Promise<S3AliasResourceState<TRedacted>>;
111
- loadState(_state: S3AliasResourceState<TRedacted>): Promise<void>;
103
+ protected constructor(name: string, config: TConfig, s3Config: S3Config, redact: (config: TConfig) => TRedacted);
104
+ getState(): Promise<S3AliasVFSState<TRedacted>>;
112
105
  }
113
106
  //# sourceMappingURL=s3_alias.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"s3_alias.d.ts","sourceRoot":"","sources":["../../src/vfs/s3_alias.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAIL,CAAC,EACF,MAAM,oCAAoC,CAAA;AAE3C,OAAO,KAAK,EAAE,6BAA6B,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAE/F;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAA;IACd,oBAAoB,EAAE,6BAA6B,CAAA;IACnD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,eAAO,MAAM,oBAAoB;;;;;;;CAShC,CAAA;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,CAAC,CAAC,WAAW,EACxD,KAAK,EAAE,CAAC,GACP,CAAC,CAAC,SAAS,CAAC,OAAO,oBAAoB,GAAG,CAAC,CAAC,CAE9C;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,oBAAoB,EAC5D,GAAG,EAAE,MAAM,CAAC,GAAG,MAAM,EACrB,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAClC,CAAC,MAAM,EAAE,CAAC,KAAK,MAAM,GAAG,SAAS,CAKnC;AAED,MAAM,WAAW,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,MAAM,GAAG,SAAS;IAC9D,gBAAgB,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,MAAM,GAAG,CAAC,CAAA;IAC3C,UAAU,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,QAAQ,CAAA;IACnC,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,CAAA;IACxB,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAAA;CACjD;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,CAAC,SAAS,oBAAoB,EAC9B,CAAC,EACD,CAAC,SAAS,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,EACjD,OAAO,EAAE;IACT,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAA;IAClC,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,CAAA;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB,GAAG,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CA2BxB;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe,CAAC,SAAS;IACxC,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,SAAS,CAAA;CAClB;AAED;;;;;;;;;;;;;GAaG;AACH,8BAAsB,UAAU,CAAC,OAAO,EAAE,SAAS,SAAS,gBAAgB,CAAE,SAAQ,KAAK;IACzF,SAAkB,IAAI,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAA;IAC7B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAgC;IAE5D,SAAS,aACP,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,OAAO,EACf,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,SAAS;IAQ/B,QAAQ,IAAI,OAAO,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;CAMzD"}
@@ -11,9 +11,8 @@
11
11
  // See the License for the specific language governing permissions and
12
12
  // limitations under the License.
13
13
  // ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========
14
- import { S3Resource } from "./s3/s3.js";
15
- import { remapCommandsResource, remapOpsResource } from '@struktoai/mirage-core/resource/s3/remap';
16
- import { parseConfigWithSchema, redactConfigWithSchema, secretSchema, z, } from '@struktoai/mirage-core/resource/secrets';
14
+ import { S3VFS } from "./s3/s3.js";
15
+ import { parseConfigWithSchema, redactConfigWithSchema, secretSchema, z, } from '@struktoai/mirage-core/vfs/secrets';
17
16
  import { S3_BROWSER_RENAME } from "./s3/config.js";
18
17
  export const BROWSER_ALIAS_FIELDS = {
19
18
  bucket: z.string(),
@@ -87,47 +86,34 @@ export function makeBrowserS3Alias(options) {
87
86
  };
88
87
  }
89
88
  /**
90
- * The shared body of every S3-compatible provider resource (MinIO, Ceph,
91
- * R2, Wasabi, ...). Each is an {@link S3Resource} reached through a
92
- * provider-shaped config, so all it owns is its `kind`, that config, and
93
- * ops/commands retagged from `s3` onto the kind. A subclass supplies its
89
+ * The shared body of every S3-compatible provider VFS (MinIO, Ceph,
90
+ * R2, Wasabi, ...). Each is an {@link S3VFS} reached through a
91
+ * provider-shaped config, so all it owns is its `name` and that config;
92
+ * the mount serves S3's commands under the name. A subclass supplies its
94
93
  * prompt as a plain field and hands the varying pieces to `super`.
95
94
  *
96
95
  * `toS3Config` and `redact` arrive as functions rather than as an
97
96
  * {@link Alias}: the four providers whose region or endpoint rule fits
98
97
  * neither {@link makeRegionAlias} nor {@link makeFixedAlias} write their
99
- * own pair, so the resource layer takes the two functions every provider
100
- * has either way. Mirrors python `S3AliasResource` in
101
- * `mirage/resource/s3_alias.py`.
98
+ * own pair, so the VFS layer takes the two functions every provider
99
+ * has either way. Mirrors python `S3AliasVFS` in
100
+ * `mirage/vfs/s3_alias.py`.
102
101
  */
103
- export class S3AliasResource extends S3Resource {
104
- kind;
102
+ export class S3AliasVFS extends S3VFS {
103
+ name;
105
104
  aliasConfig;
106
- aliasOps;
107
- aliasCommands;
108
105
  redactAlias;
109
- constructor(kind, config, s3Config, redact) {
106
+ constructor(name, config, s3Config, redact) {
110
107
  super(s3Config);
111
- this.kind = kind;
108
+ this.name = name;
112
109
  this.aliasConfig = config;
113
110
  this.redactAlias = redact;
114
- this.aliasOps = remapOpsResource(super.ops(), kind);
115
- this.aliasCommands = remapCommandsResource(super.commands(), kind);
116
- }
117
- ops() {
118
- return this.aliasOps;
119
- }
120
- commands() {
121
- return this.aliasCommands;
122
111
  }
123
112
  getState() {
124
113
  return Promise.resolve({
125
- type: this.kind,
114
+ type: this.name,
126
115
  config: this.redactAlias(this.aliasConfig),
127
116
  });
128
117
  }
129
- loadState(_state) {
130
- return Promise.resolve();
131
- }
132
118
  }
133
119
  //# sourceMappingURL=s3_alias.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"s3_alias.js","sourceRoot":"","sources":["../../src/vfs/s3_alias.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,uEAAuE;AAEvE,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,YAAY,EACZ,CAAC,GACF,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AA6BlD,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,oBAAoB,EAAE,YAAY,CAChC,CAAC,CAAC,MAAM,CAAgC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,UAAU,CAAC,CAChF;IACD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACjC,CAAA;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAChC,KAAQ;IAER,OAAO,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,oBAAoB,EAAE,GAAG,KAAK,EAAE,CAAC,CAAA;AACxD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAC7B,GAAqB,EACrB,QAAmC;IAEnC,OAAO,CAAC,MAAM,EAAE,EAAE;QAChB,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;QACzB,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAChF,CAAC,CAAA;AACH,CAAC;AASD;;;;;;;;;GASG;AACH,MAAM,UAAU,kBAAkB,CAIhC,OAKD;IACC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,OAAO,CAAA;IACtE,MAAM,gBAAgB,GAAG,CAAC,MAAS,EAAc,EAAE;QACjD,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,IAAI,MAAM,CAAC,QAAQ,KAAK,EAAE;YAAE,OAAO,MAAM,CAAC,QAAQ,CAAA;QACnF,OAAO,WAAW,KAAK,SAAS,CAAC,CAAC,CAAE,SAAe,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;IAC3E,CAAC,CAAA;IACD,OAAO;QACL,gBAAgB;QAChB,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE;YACrB,MAAM,QAAQ,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAA;YACzC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,aAAa,CAAA;YAC7C,OAAO;gBACL,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,oBAAoB,EAAE,MAAM,CAAC,oBAAoB;gBACjD,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3C,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/C,GAAG,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3D,GAAG,CAAC,MAAM,CAAC,kBAAkB,KAAK,SAAS;oBACzC,CAAC,CAAC,EAAE,kBAAkB,EAAE,MAAM,CAAC,kBAAkB,EAAE;oBACnD,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,MAAM,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC3E,CAAA;QACH,CAAC;QACD,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,sBAAsB,CAAC,MAAM,EAAE,MAAM,CAAiB;QAC1E,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CACnB,qBAAqB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAiB;KACtF,CAAA;AACH,CAAC;AAWD;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAgB,UAAwD,SAAQ,KAAK;IACvE,IAAI,CAAQ;IACrB,WAAW,CAAS;IACZ,WAAW,CAAgC;IAE5D,YACE,IAAY,EACZ,MAAe,EACf,QAAkB,EAClB,MAAsC;QAEtC,KAAK,CAAC,QAAQ,CAAC,CAAA;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAA;QACzB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAA;IAC3B,CAAC;IAEQ,QAAQ;QACf,OAAO,OAAO,CAAC,OAAO,CAAC;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC;SAC3C,CAAC,CAAA;IACJ,CAAC;CACF"}
@@ -1,7 +1,7 @@
1
- import type { ConfigOf, RedactedConfig } from '@struktoai/mirage-core/resource/secrets';
1
+ import type { ConfigOf, RedactedConfig } from '@struktoai/mirage-core/vfs/secrets';
2
2
  declare const ScalewayConfigSchema: import("zod").ZodObject<{
3
3
  bucket: import("zod").ZodString;
4
- presignedUrlProvider: import("zod").ZodCustom<import("@struktoai/mirage-core/resource/s3/config").S3BrowserPresignedUrlProvider, import("@struktoai/mirage-core/resource/s3/config").S3BrowserPresignedUrlProvider>;
4
+ presignedUrlProvider: import("zod").ZodCustom<import("@struktoai/mirage-core/vfs/s3/config").S3BrowserPresignedUrlProvider, import("@struktoai/mirage-core/vfs/s3/config").S3BrowserPresignedUrlProvider>;
5
5
  region: import("zod").ZodOptional<import("zod").ZodString>;
6
6
  endpoint: import("zod").ZodOptional<import("zod").ZodString>;
7
7
  defaultContentType: import("zod").ZodOptional<import("zod").ZodString>;
@@ -10,7 +10,7 @@ declare const ScalewayConfigSchema: import("zod").ZodObject<{
10
10
  export type ScalewayConfig = ConfigOf<typeof ScalewayConfigSchema>;
11
11
  export type ScalewayConfigRedacted = RedactedConfig<ScalewayConfig, 'presignedUrlProvider'>;
12
12
  export declare const resolvedScalewayEndpoint: (config: ScalewayConfig) => string | undefined;
13
- export declare const scalewayToS3Config: (config: ScalewayConfig) => import("@struktoai/mirage-core/resource/s3/config").S3Config;
13
+ export declare const scalewayToS3Config: (config: ScalewayConfig) => import("@struktoai/mirage-core/vfs/s3/config").S3Config;
14
14
  export declare const redactScalewayConfig: (config: ScalewayConfig) => ScalewayConfigRedacted;
15
15
  export declare const normalizeScalewayConfig: (input: Record<string, unknown>) => ScalewayConfig;
16
16
  export {};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/vfs/scaleway/config.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAA;AAGlF,QAAA,MAAM,oBAAoB;;;;;;;gCAAyB,CAAA;AAEnD,MAAM,MAAM,cAAc,GAAG,QAAQ,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAElE,MAAM,MAAM,sBAAsB,GAAG,cAAc,CAAC,cAAc,EAAE,sBAAsB,CAAC,CAAA;AAO3F,eAAO,MAAM,wBAAwB,gDAAyB,CAAA;AAC9D,eAAO,MAAM,kBAAkB,qFAAmB,CAAA;AAClD,eAAO,MAAM,oBAAoB,oDAAe,CAAA;AAChD,eAAO,MAAM,uBAAuB,oDAAkB,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/vfs/scaleway/config.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,uEAAuE;AAGvE,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAExF,MAAM,oBAAoB,GAAG,kBAAkB,CAAC,EAAE,CAAC,CAAA;AAMnD,MAAM,KAAK,GAAG,kBAAkB,CAAyC;IACvE,MAAM,EAAE,oBAAoB;IAC5B,WAAW,EAAE,eAAe,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,cAAc,MAAM,YAAY,CAAC;CACrF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,CAAC,gBAAgB,CAAA;AAC9D,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,CAAC,UAAU,CAAA;AAClD,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,CAAC,MAAM,CAAA;AAChD,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,CAAC,SAAS,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const PROMPT = "{prefix}\n Remote Scaleway Object Storage bucket (S3-compatible) accessed via presigned URLs (browser runtime).\n Supports the full filesystem command set: ls/tree/cat/grep/find/du/cp/mv/rm/etc.\n Listing operations require the presigner to sign LIST/COPY operations in\n addition to GET/PUT/HEAD/DELETE \u2014 see S3BrowserPresignedUrlProvider docs.";
2
+ //# sourceMappingURL=prompt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../../src/vfs/scaleway/prompt.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,MAAM,uWAIyD,CAAA"}
@@ -11,7 +11,7 @@
11
11
  // See the License for the specific language governing permissions and
12
12
  // limitations under the License.
13
13
  // ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========
14
- export const SCALEWAY_BROWSER_PROMPT = `{prefix}
14
+ export const PROMPT = `{prefix}
15
15
  Remote Scaleway Object Storage bucket (S3-compatible) accessed via presigned URLs (browser runtime).
16
16
  Supports the full filesystem command set: ls/tree/cat/grep/find/du/cp/mv/rm/etc.
17
17
  Listing operations require the presigner to sign LIST/COPY operations in
@@ -1 +1 @@
1
- {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../../src/resource/gcs/prompt.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,uEAAuE;AAEvE,MAAM,CAAC,MAAM,kBAAkB,GAAG;;;;4EAI0C,CAAA"}
1
+ {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../../src/vfs/scaleway/prompt.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,uEAAuE;AAEvE,MAAM,CAAC,MAAM,MAAM,GAAG;;;;4EAIsD,CAAA"}
@@ -0,0 +1,8 @@
1
+ import { S3AliasVFS, type S3AliasVFSState } from '../s3_alias.ts';
2
+ import { type ScalewayConfig, type ScalewayConfigRedacted } from './config.ts';
3
+ export type ScalewayVFSState = S3AliasVFSState<ScalewayConfigRedacted>;
4
+ export declare class ScalewayVFS extends S3AliasVFS<ScalewayConfig, ScalewayConfigRedacted> {
5
+ readonly prompt: string;
6
+ constructor(config: ScalewayConfig);
7
+ }
8
+ //# sourceMappingURL=scaleway.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scaleway.d.ts","sourceRoot":"","sources":["../../../src/vfs/scaleway/scaleway.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACjE,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,sBAAsB,EAC5B,MAAM,aAAa,CAAA;AAGpB,MAAM,MAAM,gBAAgB,GAAG,eAAe,CAAC,sBAAsB,CAAC,CAAA;AAEtE,qBAAa,WAAY,SAAQ,UAAU,CAAC,cAAc,EAAE,sBAAsB,CAAC;IACjF,SAAkB,MAAM,EAAE,MAAM,CAAS;gBAE7B,MAAM,EAAE,cAAc;CAGnC"}
@@ -11,14 +11,14 @@
11
11
  // See the License for the specific language governing permissions and
12
12
  // limitations under the License.
13
13
  // ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========
14
- import { ResourceName } from '@struktoai/mirage-core/types';
15
- import { S3AliasResource } from "../s3_alias.js";
14
+ import { VFSName } from '@struktoai/mirage-core/types';
15
+ import { S3AliasVFS } from "../s3_alias.js";
16
16
  import { redactScalewayConfig, scalewayToS3Config, } from "./config.js";
17
- import { SCALEWAY_BROWSER_PROMPT } from "./prompt.js";
18
- export class ScalewayResource extends S3AliasResource {
19
- prompt = SCALEWAY_BROWSER_PROMPT;
17
+ import { PROMPT } from "./prompt.js";
18
+ export class ScalewayVFS extends S3AliasVFS {
19
+ prompt = PROMPT;
20
20
  constructor(config) {
21
- super(ResourceName.SCALEWAY, config, scalewayToS3Config(config), redactScalewayConfig);
21
+ super(VFSName.SCALEWAY, config, scalewayToS3Config(config), redactScalewayConfig);
22
22
  }
23
23
  }
24
24
  //# sourceMappingURL=scaleway.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scaleway.js","sourceRoot":"","sources":["../../../src/vfs/scaleway/scaleway.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,uEAAuE;AAEvE,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AACtD,OAAO,EAAE,UAAU,EAAwB,MAAM,gBAAgB,CAAA;AACjE,OAAO,EACL,oBAAoB,EACpB,kBAAkB,GAGnB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAIpC,MAAM,OAAO,WAAY,SAAQ,UAAkD;IAC/D,MAAM,GAAW,MAAM,CAAA;IAEzC,YAAY,MAAsB;QAChC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,kBAAkB,CAAC,MAAM,CAAC,EAAE,oBAAoB,CAAC,CAAA;IACnF,CAAC;CACF"}
@@ -1,7 +1,7 @@
1
- import type { ConfigOf, RedactedConfig } from '@struktoai/mirage-core/resource/secrets';
1
+ import type { ConfigOf, RedactedConfig } from '@struktoai/mirage-core/vfs/secrets';
2
2
  declare const SeaweedFSConfigSchema: import("zod").ZodObject<{
3
3
  bucket: import("zod").ZodString;
4
- presignedUrlProvider: import("zod").ZodCustom<import("@struktoai/mirage-core/resource/s3/config").S3BrowserPresignedUrlProvider, import("@struktoai/mirage-core/resource/s3/config").S3BrowserPresignedUrlProvider>;
4
+ presignedUrlProvider: import("zod").ZodCustom<import("@struktoai/mirage-core/vfs/s3/config").S3BrowserPresignedUrlProvider, import("@struktoai/mirage-core/vfs/s3/config").S3BrowserPresignedUrlProvider>;
5
5
  region: import("zod").ZodOptional<import("zod").ZodString>;
6
6
  endpoint: import("zod").ZodOptional<import("zod").ZodString>;
7
7
  defaultContentType: import("zod").ZodOptional<import("zod").ZodString>;
@@ -9,7 +9,7 @@ declare const SeaweedFSConfigSchema: import("zod").ZodObject<{
9
9
  }, import("zod/v4/core").$strip>;
10
10
  export type SeaweedFSConfig = ConfigOf<typeof SeaweedFSConfigSchema>;
11
11
  export type SeaweedFSConfigRedacted = RedactedConfig<SeaweedFSConfig, 'presignedUrlProvider'>;
12
- export declare const seaweedfsToS3Config: (config: SeaweedFSConfig) => import("@struktoai/mirage-core/resource/s3/config").S3Config;
12
+ export declare const seaweedfsToS3Config: (config: SeaweedFSConfig) => import("@struktoai/mirage-core/vfs/s3/config").S3Config;
13
13
  export declare const redactSeaweedFSConfig: (config: SeaweedFSConfig) => SeaweedFSConfigRedacted;
14
14
  export declare const normalizeSeaweedFSConfig: (input: Record<string, unknown>) => SeaweedFSConfig;
15
15
  export {};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/vfs/seaweedfs/config.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAA;AAGlF,QAAA,MAAM,qBAAqB;;;;;;;gCAAyB,CAAA;AAEpD,MAAM,MAAM,eAAe,GAAG,QAAQ,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEpE,MAAM,MAAM,uBAAuB,GAAG,cAAc,CAAC,eAAe,EAAE,sBAAsB,CAAC,CAAA;AAM7F,eAAO,MAAM,mBAAmB,sFAAmB,CAAA;AACnD,eAAO,MAAM,qBAAqB,sDAAe,CAAA;AACjD,eAAO,MAAM,wBAAwB,qDAAkB,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/vfs/seaweedfs/config.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,uEAAuE;AAGvE,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAEvE,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,EAAE,CAAC,CAAA;AAMpD,MAAM,KAAK,GAAG,kBAAkB,CAA2C;IACzE,MAAM,EAAE,qBAAqB;CAC9B,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,CAAC,UAAU,CAAA;AACnD,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,CAAC,MAAM,CAAA;AACjD,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,CAAC,SAAS,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const PROMPT = "{prefix}\n Remote SeaweedFS bucket (S3-compatible gateway) accessed via presigned URLs (browser runtime).\n Supports the full filesystem command set: ls/tree/cat/grep/find/du/cp/mv/rm/etc.\n Listing operations require the presigner to sign LIST/COPY operations in\n addition to GET/PUT/HEAD/DELETE \u2014 see S3BrowserPresignedUrlProvider docs.";
2
+ //# sourceMappingURL=prompt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../../src/vfs/seaweedfs/prompt.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,MAAM,iWAIyD,CAAA"}
@@ -11,7 +11,7 @@
11
11
  // See the License for the specific language governing permissions and
12
12
  // limitations under the License.
13
13
  // ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========
14
- export const SEAWEEDFS_BROWSER_PROMPT = `{prefix}
14
+ export const PROMPT = `{prefix}
15
15
  Remote SeaweedFS bucket (S3-compatible gateway) accessed via presigned URLs (browser runtime).
16
16
  Supports the full filesystem command set: ls/tree/cat/grep/find/du/cp/mv/rm/etc.
17
17
  Listing operations require the presigner to sign LIST/COPY operations in
@@ -1 +1 @@
1
- {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../../src/resource/ceph/prompt.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,uEAAuE;AAEvE,MAAM,CAAC,MAAM,mBAAmB,GAAG;;;;4EAIyC,CAAA"}
1
+ {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../../src/vfs/seaweedfs/prompt.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,uEAAuE;AAEvE,MAAM,CAAC,MAAM,MAAM,GAAG;;;;4EAIsD,CAAA"}
@@ -0,0 +1,8 @@
1
+ import { S3AliasVFS, type S3AliasVFSState } from '../s3_alias.ts';
2
+ import { type SeaweedFSConfig, type SeaweedFSConfigRedacted } from './config.ts';
3
+ export type SeaweedFSVFSState = S3AliasVFSState<SeaweedFSConfigRedacted>;
4
+ export declare class SeaweedFSVFS extends S3AliasVFS<SeaweedFSConfig, SeaweedFSConfigRedacted> {
5
+ readonly prompt: string;
6
+ constructor(config: SeaweedFSConfig);
7
+ }
8
+ //# sourceMappingURL=seaweedfs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seaweedfs.d.ts","sourceRoot":"","sources":["../../../src/vfs/seaweedfs/seaweedfs.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACjE,OAAO,EAGL,KAAK,eAAe,EACpB,KAAK,uBAAuB,EAC7B,MAAM,aAAa,CAAA;AAGpB,MAAM,MAAM,iBAAiB,GAAG,eAAe,CAAC,uBAAuB,CAAC,CAAA;AAExE,qBAAa,YAAa,SAAQ,UAAU,CAAC,eAAe,EAAE,uBAAuB,CAAC;IACpF,SAAkB,MAAM,EAAE,MAAM,CAAS;gBAE7B,MAAM,EAAE,eAAe;CAGpC"}
@@ -11,14 +11,14 @@
11
11
  // See the License for the specific language governing permissions and
12
12
  // limitations under the License.
13
13
  // ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========
14
- import { ResourceName } from '@struktoai/mirage-core/types';
15
- import { S3AliasResource } from "../s3_alias.js";
14
+ import { VFSName } from '@struktoai/mirage-core/types';
15
+ import { S3AliasVFS } from "../s3_alias.js";
16
16
  import { redactSeaweedFSConfig, seaweedfsToS3Config, } from "./config.js";
17
- import { SEAWEEDFS_BROWSER_PROMPT } from "./prompt.js";
18
- export class SeaweedFSResource extends S3AliasResource {
19
- prompt = SEAWEEDFS_BROWSER_PROMPT;
17
+ import { PROMPT } from "./prompt.js";
18
+ export class SeaweedFSVFS extends S3AliasVFS {
19
+ prompt = PROMPT;
20
20
  constructor(config) {
21
- super(ResourceName.SEAWEEDFS, config, seaweedfsToS3Config(config), redactSeaweedFSConfig);
21
+ super(VFSName.SEAWEEDFS, config, seaweedfsToS3Config(config), redactSeaweedFSConfig);
22
22
  }
23
23
  }
24
24
  //# sourceMappingURL=seaweedfs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seaweedfs.js","sourceRoot":"","sources":["../../../src/vfs/seaweedfs/seaweedfs.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,uEAAuE;AAEvE,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AACtD,OAAO,EAAE,UAAU,EAAwB,MAAM,gBAAgB,CAAA;AACjE,OAAO,EACL,qBAAqB,EACrB,mBAAmB,GAGpB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAIpC,MAAM,OAAO,YAAa,SAAQ,UAAoD;IAClE,MAAM,GAAW,MAAM,CAAA;IAEzC,YAAY,MAAuB;QACjC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,mBAAmB,CAAC,MAAM,CAAC,EAAE,qBAAqB,CAAC,CAAA;IACtF,CAAC;CACF"}
@@ -1,9 +1,12 @@
1
- import { z } from '@struktoai/mirage-core/resource/secrets';
2
- import type { ConfigOf, RedactedConfig } from '@struktoai/mirage-core/resource/secrets';
1
+ import { z } from '@struktoai/mirage-core/vfs/secrets';
2
+ import type { ConfigOf, RedactedConfig } from '@struktoai/mirage-core/vfs/secrets';
3
3
  type HeaderProvider = () => Promise<Record<string, string>> | Record<string, string>;
4
4
  declare const SlackConfigSchema: z.ZodObject<{
5
5
  proxyUrl: z.ZodString;
6
6
  getHeaders: z.ZodOptional<z.ZodCustom<HeaderProvider, HeaderProvider>>;
7
+ contentSearch: z.ZodOptional<z.ZodBoolean>;
8
+ startTime: z.ZodOptional<z.ZodNullable<z.ZodString>>;
9
+ endTime: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7
10
  }, z.core.$strip>;
8
11
  export type SlackConfig = ConfigOf<typeof SlackConfigSchema>;
9
12
  export type SlackConfigRedacted = RedactedConfig<SlackConfig, 'getHeaders'>;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/vfs/slack/config.ts"],"names":[],"mappings":"AAmBA,OAAO,EAIL,CAAC,EACF,MAAM,oCAAoC,CAAA;AAC3C,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAA;AAElF,KAAK,cAAc,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAEpF,QAAA,MAAM,iBAAiB;;;;;;iBAWqB,CAAA;AAE5C,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE5D,MAAM,MAAM,mBAAmB,GAAG,cAAc,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;AAE3E,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,WAAW,GAAG,mBAAmB,CAE1E;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,WAAW,CAEhF"}
@@ -11,11 +11,18 @@
11
11
  // See the License for the specific language governing permissions and
12
12
  // limitations under the License.
13
13
  // ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========
14
- import { parseConfigWithSchema, redactConfigWithSchema, secretSchema, z, } from '@struktoai/mirage-core/resource/secrets';
15
- const SlackConfigSchema = z.object({
14
+ import { timeRangeShape, orderedTimes, timeRangeOrderError, } from '@struktoai/mirage-core/core/time_config';
15
+ import { parseConfigWithSchema, redactConfigWithSchema, secretSchema, z, } from '@struktoai/mirage-core/vfs/secrets';
16
+ const SlackConfigSchema = z
17
+ .object({
18
+ ...timeRangeShape,
16
19
  proxyUrl: z.string(),
17
20
  getHeaders: secretSchema(z.custom((value) => typeof value === 'function')).optional(),
18
- });
21
+ // See node's SlackConfig: grep -w and rg -w read only the channel days
22
+ // Slack search names. Off by default.
23
+ contentSearch: z.boolean().optional(),
24
+ })
25
+ .refine(orderedTimes, timeRangeOrderError);
19
26
  export function redactSlackConfig(config) {
20
27
  return redactConfigWithSchema(SlackConfigSchema, config);
21
28
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/vfs/slack/config.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,uEAAuE;AAEvE,OAAO,EACL,cAAc,EACd,YAAY,EACZ,mBAAmB,GACpB,MAAM,yCAAyC,CAAA;AAChD,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,YAAY,EACZ,CAAC,GACF,MAAM,oCAAoC,CAAA;AAK3C,MAAM,iBAAiB,GAAG,CAAC;KACxB,MAAM,CAAC;IACN,GAAG,cAAc;IACjB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,UAAU,EAAE,YAAY,CACtB,CAAC,CAAC,MAAM,CAAiB,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,UAAU,CAAC,CACjE,CAAC,QAAQ,EAAE;IACZ,uEAAuE;IACvE,sCAAsC;IACtC,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CACtC,CAAC;KACD,MAAM,CAAC,YAAY,EAAE,mBAAmB,CAAC,CAAA;AAM5C,MAAM,UAAU,iBAAiB,CAAC,MAAmB;IACnD,OAAO,sBAAsB,CAAC,iBAAiB,EAAE,MAAM,CAAmC,CAAA;AAC5F,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAA8B;IACjE,OAAO,qBAAqB,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAA;AACxD,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { SlackVFSBase } from '@struktoai/mirage-core/vfs/slack/slack';
2
+ import { SlackAccessor } from '@struktoai/mirage-core/accessor/slack';
3
+ import { type SlackConfig, type SlackConfigRedacted } from './config.ts';
4
+ export interface SlackVFSState {
5
+ type: string;
6
+ config: SlackConfigRedacted;
7
+ }
8
+ export declare class SlackVFS extends SlackVFSBase {
9
+ readonly name: string;
10
+ readonly cachesReads: boolean;
11
+ readonly sizesAlwaysKnown: boolean;
12
+ readonly prompt: string;
13
+ readonly writePrompt: string;
14
+ readonly config: SlackConfig;
15
+ readonly accessor: SlackAccessor;
16
+ constructor(config: SlackConfig);
17
+ getState(): Promise<SlackVFSState>;
18
+ }
19
+ //# sourceMappingURL=slack.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slack.d.ts","sourceRoot":"","sources":["../../../src/vfs/slack/slack.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAA;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAA;AAOrE,OAAO,EAAqB,KAAK,WAAW,EAAE,KAAK,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAE3F,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,mBAAmB,CAAA;CAC5B;AAED,qBAAa,QAAS,SAAQ,YAAY;IACxC,SAAkB,IAAI,EAAE,MAAM,CAAgB;IAC9C,SAAkB,WAAW,EAAE,OAAO,CAAO;IAK7C,SAAkB,gBAAgB,EAAE,OAAO,CAAO;IAClD,SAAkB,MAAM,EAAE,MAAM,CAAA;IAChC,SAAkB,WAAW,EAAE,MAAM,CAAe;IACpD,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;IAC5B,SAAkB,QAAQ,EAAE,aAAa,CAAA;gBAE7B,MAAM,EAAE,WAAW;IAatB,QAAQ,IAAI,OAAO,CAAC,aAAa,CAAC;CAM5C"}
@@ -0,0 +1,48 @@
1
+ // ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========
2
+ // Licensed under the Apache License, Version 2.0 (the "License");
3
+ // you may not use this file except in compliance with the License.
4
+ // You may obtain a copy of the License at
5
+ //
6
+ // http://www.apache.org/licenses/LICENSE-2.0
7
+ //
8
+ // Unless required by applicable law or agreed to in writing, software
9
+ // distributed under the License is distributed on an "AS IS" BASIS,
10
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ // See the License for the specific language governing permissions and
12
+ // limitations under the License.
13
+ // ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========
14
+ import { SlackVFSBase } from '@struktoai/mirage-core/vfs/slack/slack';
15
+ import { SlackAccessor } from '@struktoai/mirage-core/accessor/slack';
16
+ import { BrowserSlackTransport } from '@struktoai/mirage-core/core/slack/client_browser';
17
+ import { PROMPT, WRITE_PROMPT } from '@struktoai/mirage-core/vfs/slack/prompt';
18
+ import { VFSName } from '@struktoai/mirage-core/types';
19
+ import { redactSlackConfig } from "./config.js";
20
+ export class SlackVFS extends SlackVFSBase {
21
+ name = VFSName.SLACK;
22
+ cachesReads = true;
23
+ // Every listed file carries an exact size: chat.jsonl and users/*.json
24
+ // are rendered at readdir from payloads the listing already fetched
25
+ // (users.list is payload-identical to users.info, verified live), and
26
+ // file blobs carry Slack's upload byte count.
27
+ sizesAlwaysKnown = true;
28
+ prompt;
29
+ writePrompt = WRITE_PROMPT;
30
+ config;
31
+ accessor;
32
+ constructor(config) {
33
+ super();
34
+ this.config = config;
35
+ this.accessor = new SlackAccessor(new BrowserSlackTransport({
36
+ proxyUrl: config.proxyUrl,
37
+ ...(config.getHeaders !== undefined ? { getHeaders: config.getHeaders } : {}),
38
+ }), config);
39
+ this.prompt = PROMPT + this.accessor.timeRange.prompt();
40
+ }
41
+ getState() {
42
+ return Promise.resolve({
43
+ type: this.name,
44
+ config: redactSlackConfig(this.config),
45
+ });
46
+ }
47
+ }
48
+ //# sourceMappingURL=slack.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slack.js","sourceRoot":"","sources":["../../../src/vfs/slack/slack.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,uEAAuE;AAEvE,OAAO,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAA;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAA;AAErE,OAAO,EAAE,qBAAqB,EAAE,MAAM,kDAAkD,CAAA;AAExF,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAA;AAC9E,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAEtD,OAAO,EAAE,iBAAiB,EAA8C,MAAM,aAAa,CAAA;AAO3F,MAAM,OAAO,QAAS,SAAQ,YAAY;IACtB,IAAI,GAAW,OAAO,CAAC,KAAK,CAAA;IAC5B,WAAW,GAAY,IAAI,CAAA;IAC7C,uEAAuE;IACvE,oEAAoE;IACpE,sEAAsE;IACtE,8CAA8C;IAC5B,gBAAgB,GAAY,IAAI,CAAA;IAChC,MAAM,CAAQ;IACd,WAAW,GAAW,YAAY,CAAA;IAC3C,MAAM,CAAa;IACV,QAAQ,CAAe;IAEzC,YAAY,MAAmB;QAC7B,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,QAAQ,GAAG,IAAI,aAAa,CAC/B,IAAI,qBAAqB,CAAC;YACxB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,GAAG,CAAC,MAAM,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC9E,CAAC,EACF,MAAM,CACP,CAAA;QACD,IAAI,CAAC,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,EAAE,CAAA;IACzD,CAAC;IAEQ,QAAQ;QACf,OAAO,OAAO,CAAC,OAAO,CAAC;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC;SACvC,CAAC,CAAA;IACJ,CAAC;CACF"}