@struktoai/mirage-browser 0.0.5-alpha.1 → 0.0.6

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 (602) hide show
  1. package/README.md +138 -80
  2. package/dist/accessor/opfs.d.ts +10 -0
  3. package/dist/accessor/opfs.d.ts.map +1 -0
  4. package/dist/accessor/opfs.js +25 -0
  5. package/dist/accessor/opfs.js.map +1 -0
  6. package/dist/commands/builtin/opfs/index.d.ts +3 -0
  7. package/dist/commands/builtin/opfs/index.d.ts.map +1 -0
  8. package/dist/commands/builtin/opfs/index.js +20 -0
  9. package/dist/commands/builtin/opfs/index.js.map +1 -0
  10. package/dist/commands/builtin/opfs/io.d.ts +4 -0
  11. package/dist/commands/builtin/opfs/io.d.ts.map +1 -0
  12. package/dist/commands/builtin/opfs/io.js +56 -0
  13. package/dist/commands/builtin/opfs/io.js.map +1 -0
  14. package/dist/core/opfs/append.d.ts +4 -0
  15. package/dist/core/opfs/append.d.ts.map +1 -0
  16. package/dist/core/opfs/append.js +38 -0
  17. package/dist/core/opfs/append.js.map +1 -0
  18. package/dist/core/opfs/constants.d.ts +3 -0
  19. package/dist/core/opfs/constants.d.ts.map +1 -0
  20. package/dist/core/opfs/constants.js +16 -0
  21. package/dist/core/opfs/constants.js.map +1 -0
  22. package/dist/core/opfs/copy.d.ts +4 -0
  23. package/dist/core/opfs/copy.d.ts.map +1 -0
  24. package/dist/core/opfs/copy.js +40 -0
  25. package/dist/core/opfs/copy.js.map +1 -0
  26. package/dist/core/opfs/create.d.ts +4 -0
  27. package/dist/core/opfs/create.d.ts.map +1 -0
  28. package/dist/core/opfs/create.js +18 -0
  29. package/dist/core/opfs/create.js.map +1 -0
  30. package/dist/core/opfs/du/entries.d.ts +4 -0
  31. package/dist/core/opfs/du/entries.d.ts.map +1 -0
  32. package/dist/core/opfs/du/entries.js +56 -0
  33. package/dist/core/opfs/du/entries.js.map +1 -0
  34. package/dist/core/opfs/du/index.d.ts +3 -0
  35. package/dist/core/opfs/du/index.d.ts.map +1 -0
  36. package/dist/core/opfs/du/index.js +16 -0
  37. package/dist/core/opfs/du/index.js.map +1 -0
  38. package/dist/core/opfs/du/size.d.ts +4 -0
  39. package/dist/core/opfs/du/size.d.ts.map +1 -0
  40. package/dist/core/opfs/du/size.js +18 -0
  41. package/dist/core/opfs/du/size.js.map +1 -0
  42. package/dist/core/opfs/du/walk.d.ts +3 -0
  43. package/dist/core/opfs/du/walk.d.ts.map +1 -0
  44. package/dist/core/opfs/du/walk.js +98 -0
  45. package/dist/core/opfs/du/walk.js.map +1 -0
  46. package/dist/core/opfs/entry.d.ts +11 -0
  47. package/dist/core/opfs/entry.d.ts.map +1 -0
  48. package/dist/core/opfs/entry.js +42 -0
  49. package/dist/core/opfs/entry.js.map +1 -0
  50. package/dist/core/opfs/exists.d.ts +4 -0
  51. package/dist/core/opfs/exists.d.ts.map +1 -0
  52. package/dist/core/opfs/exists.js +64 -0
  53. package/dist/core/opfs/exists.js.map +1 -0
  54. package/dist/core/opfs/find.d.ts +21 -0
  55. package/dist/core/opfs/find.d.ts.map +1 -0
  56. package/dist/core/opfs/find.js +154 -0
  57. package/dist/core/opfs/find.js.map +1 -0
  58. package/dist/core/opfs/mkdir.d.ts +4 -0
  59. package/dist/core/opfs/mkdir.d.ts.map +1 -0
  60. package/dist/core/opfs/mkdir.js +64 -0
  61. package/dist/core/opfs/mkdir.js.map +1 -0
  62. package/dist/core/opfs/read.d.ts +22 -0
  63. package/dist/core/opfs/read.d.ts.map +1 -0
  64. package/dist/core/opfs/read.js +57 -0
  65. package/dist/core/opfs/read.js.map +1 -0
  66. package/dist/core/opfs/readdir.d.ts +4 -0
  67. package/dist/core/opfs/readdir.d.ts.map +1 -0
  68. package/dist/core/opfs/readdir.js +50 -0
  69. package/dist/core/opfs/readdir.js.map +1 -0
  70. package/dist/core/opfs/rename.d.ts +4 -0
  71. package/dist/core/opfs/rename.d.ts.map +1 -0
  72. package/dist/core/opfs/rename.js +97 -0
  73. package/dist/core/opfs/rename.js.map +1 -0
  74. package/dist/core/opfs/rm.d.ts +4 -0
  75. package/dist/core/opfs/rm.d.ts.map +1 -0
  76. package/dist/core/opfs/rm.js +40 -0
  77. package/dist/core/opfs/rm.js.map +1 -0
  78. package/dist/core/opfs/rmdir.d.ts +4 -0
  79. package/dist/core/opfs/rmdir.d.ts.map +1 -0
  80. package/dist/core/opfs/rmdir.js +48 -0
  81. package/dist/core/opfs/rmdir.js.map +1 -0
  82. package/dist/core/opfs/stat.d.ts +5 -0
  83. package/dist/core/opfs/stat.d.ts.map +1 -0
  84. package/dist/core/opfs/stat.js +88 -0
  85. package/dist/core/opfs/stat.js.map +1 -0
  86. package/dist/core/opfs/stream.d.ts +4 -0
  87. package/dist/core/opfs/stream.d.ts.map +1 -0
  88. package/dist/core/opfs/stream.js +44 -0
  89. package/dist/core/opfs/stream.js.map +1 -0
  90. package/dist/core/opfs/truncate.d.ts +4 -0
  91. package/dist/core/opfs/truncate.d.ts.map +1 -0
  92. package/dist/core/opfs/truncate.js +49 -0
  93. package/dist/core/opfs/truncate.js.map +1 -0
  94. package/dist/core/opfs/unlink.d.ts +4 -0
  95. package/dist/core/opfs/unlink.d.ts.map +1 -0
  96. package/dist/core/opfs/unlink.js +40 -0
  97. package/dist/core/opfs/unlink.js.map +1 -0
  98. package/dist/core/opfs/utils.d.ts +20 -0
  99. package/dist/core/opfs/utils.d.ts.map +1 -0
  100. package/dist/core/opfs/utils.js +149 -0
  101. package/dist/core/opfs/utils.js.map +1 -0
  102. package/dist/core/opfs/write.d.ts +4 -0
  103. package/dist/core/opfs/write.d.ts.map +1 -0
  104. package/dist/core/opfs/write.js +33 -0
  105. package/dist/core/opfs/write.js.map +1 -0
  106. package/dist/generated/wasm.d.ts +3 -0
  107. package/dist/generated/wasm.d.ts.map +1 -0
  108. package/dist/generated/wasm.js +4 -0
  109. package/dist/generated/wasm.js.map +1 -0
  110. package/dist/index.d.ts +118 -1246
  111. package/dist/index.d.ts.map +1 -0
  112. package/dist/index.js +130 -698
  113. package/dist/index.js.map +1 -1
  114. package/dist/ops/opfs/index.d.ts +3 -0
  115. package/dist/ops/opfs/index.d.ts.map +1 -0
  116. package/dist/ops/opfs/index.js +23 -0
  117. package/dist/ops/opfs/index.js.map +1 -0
  118. package/dist/resource/aliyun/aliyun.d.ts +8 -0
  119. package/dist/resource/aliyun/aliyun.d.ts.map +1 -0
  120. package/dist/resource/aliyun/aliyun.js +24 -0
  121. package/dist/resource/aliyun/aliyun.js.map +1 -0
  122. package/dist/resource/aliyun/config.d.ts +17 -0
  123. package/dist/resource/aliyun/config.d.ts.map +1 -0
  124. package/dist/resource/aliyun/config.js +24 -0
  125. package/dist/resource/aliyun/config.js.map +1 -0
  126. package/dist/resource/aliyun/prompt.d.ts +2 -0
  127. package/dist/resource/aliyun/prompt.d.ts.map +1 -0
  128. package/dist/resource/aliyun/prompt.js +19 -0
  129. package/dist/resource/aliyun/prompt.js.map +1 -0
  130. package/dist/resource/backblaze/backblaze.d.ts +8 -0
  131. package/dist/resource/backblaze/backblaze.d.ts.map +1 -0
  132. package/dist/resource/backblaze/backblaze.js +24 -0
  133. package/dist/resource/backblaze/backblaze.js.map +1 -0
  134. package/dist/resource/backblaze/config.d.ts +17 -0
  135. package/dist/resource/backblaze/config.d.ts.map +1 -0
  136. package/dist/resource/backblaze/config.js +24 -0
  137. package/dist/resource/backblaze/config.js.map +1 -0
  138. package/dist/resource/backblaze/prompt.d.ts +2 -0
  139. package/dist/resource/backblaze/prompt.d.ts.map +1 -0
  140. package/dist/resource/backblaze/prompt.js +19 -0
  141. package/dist/resource/backblaze/prompt.js.map +1 -0
  142. package/dist/resource/box/box.d.ts +34 -0
  143. package/dist/resource/box/box.d.ts.map +1 -0
  144. package/dist/resource/box/box.js +99 -0
  145. package/dist/resource/box/box.js.map +1 -0
  146. package/dist/resource/box/config.d.ts +41 -0
  147. package/dist/resource/box/config.d.ts.map +1 -0
  148. package/dist/resource/box/config.js +38 -0
  149. package/dist/resource/box/config.js.map +1 -0
  150. package/dist/resource/ceph/ceph.d.ts +8 -0
  151. package/dist/resource/ceph/ceph.d.ts.map +1 -0
  152. package/dist/resource/ceph/ceph.js +24 -0
  153. package/dist/resource/ceph/ceph.js.map +1 -0
  154. package/dist/resource/ceph/config.d.ts +16 -0
  155. package/dist/resource/ceph/config.d.ts.map +1 -0
  156. package/dist/resource/ceph/config.js +22 -0
  157. package/dist/resource/ceph/config.js.map +1 -0
  158. package/dist/resource/ceph/prompt.d.ts +2 -0
  159. package/dist/resource/ceph/prompt.d.ts.map +1 -0
  160. package/dist/resource/ceph/prompt.js +19 -0
  161. package/dist/resource/ceph/prompt.js.map +1 -0
  162. package/dist/resource/digitalocean/config.d.ts +17 -0
  163. package/dist/resource/digitalocean/config.d.ts.map +1 -0
  164. package/dist/resource/digitalocean/config.js +24 -0
  165. package/dist/resource/digitalocean/config.js.map +1 -0
  166. package/dist/resource/digitalocean/digitalocean.d.ts +8 -0
  167. package/dist/resource/digitalocean/digitalocean.d.ts.map +1 -0
  168. package/dist/resource/digitalocean/digitalocean.js +24 -0
  169. package/dist/resource/digitalocean/digitalocean.js.map +1 -0
  170. package/dist/resource/digitalocean/prompt.d.ts +2 -0
  171. package/dist/resource/digitalocean/prompt.d.ts.map +1 -0
  172. package/dist/resource/digitalocean/prompt.js +19 -0
  173. package/dist/resource/digitalocean/prompt.js.map +1 -0
  174. package/dist/resource/discord/config.d.ts +20 -0
  175. package/dist/resource/discord/config.d.ts.map +1 -0
  176. package/dist/resource/discord/config.js +32 -0
  177. package/dist/resource/discord/config.js.map +1 -0
  178. package/dist/resource/discord/discord.d.ts +33 -0
  179. package/dist/resource/discord/discord.d.ts.map +1 -0
  180. package/dist/resource/discord/discord.js +90 -0
  181. package/dist/resource/discord/discord.js.map +1 -0
  182. package/dist/resource/dropbox/config.d.ts +34 -0
  183. package/dist/resource/dropbox/config.d.ts.map +1 -0
  184. package/dist/resource/dropbox/config.js +31 -0
  185. package/dist/resource/dropbox/config.js.map +1 -0
  186. package/dist/resource/dropbox/dropbox.d.ts +34 -0
  187. package/dist/resource/dropbox/dropbox.d.ts.map +1 -0
  188. package/dist/resource/dropbox/dropbox.js +95 -0
  189. package/dist/resource/dropbox/dropbox.js.map +1 -0
  190. package/dist/resource/gcal/gcal.d.ts +32 -0
  191. package/dist/resource/gcal/gcal.d.ts.map +1 -0
  192. package/dist/resource/gcal/gcal.js +87 -0
  193. package/dist/resource/gcal/gcal.js.map +1 -0
  194. package/dist/resource/gcs/config.d.ts +16 -0
  195. package/dist/resource/gcs/config.d.ts.map +1 -0
  196. package/dist/resource/gcs/config.js +24 -0
  197. package/dist/resource/gcs/config.js.map +1 -0
  198. package/dist/resource/gcs/gcs.d.ts +8 -0
  199. package/dist/resource/gcs/gcs.d.ts.map +1 -0
  200. package/dist/resource/gcs/gcs.js +24 -0
  201. package/dist/resource/gcs/gcs.js.map +1 -0
  202. package/dist/resource/gcs/prompt.d.ts +2 -0
  203. package/dist/resource/gcs/prompt.d.ts.map +1 -0
  204. package/dist/resource/gcs/prompt.js +19 -0
  205. package/dist/resource/gcs/prompt.js.map +1 -0
  206. package/dist/resource/gdocs/gdocs.d.ts +32 -0
  207. package/dist/resource/gdocs/gdocs.d.ts.map +1 -0
  208. package/dist/resource/gdocs/gdocs.js +84 -0
  209. package/dist/resource/gdocs/gdocs.js.map +1 -0
  210. package/dist/resource/gdrive/gdrive.d.ts +34 -0
  211. package/dist/resource/gdrive/gdrive.d.ts.map +1 -0
  212. package/dist/resource/gdrive/gdrive.js +89 -0
  213. package/dist/resource/gdrive/gdrive.js.map +1 -0
  214. package/dist/resource/github/github.d.ts +38 -0
  215. package/dist/resource/github/github.d.ts.map +1 -0
  216. package/dist/resource/github/github.js +121 -0
  217. package/dist/resource/github/github.js.map +1 -0
  218. package/dist/resource/gmail/gmail.d.ts +33 -0
  219. package/dist/resource/gmail/gmail.d.ts.map +1 -0
  220. package/dist/resource/gmail/gmail.js +88 -0
  221. package/dist/resource/gmail/gmail.js.map +1 -0
  222. package/dist/resource/gsheets/gsheets.d.ts +32 -0
  223. package/dist/resource/gsheets/gsheets.d.ts.map +1 -0
  224. package/dist/resource/gsheets/gsheets.js +84 -0
  225. package/dist/resource/gsheets/gsheets.js.map +1 -0
  226. package/dist/resource/gslides/gslides.d.ts +32 -0
  227. package/dist/resource/gslides/gslides.d.ts.map +1 -0
  228. package/dist/resource/gslides/gslides.js +84 -0
  229. package/dist/resource/gslides/gslides.js.map +1 -0
  230. package/dist/resource/langfuse/config.d.ts +23 -0
  231. package/dist/resource/langfuse/config.d.ts.map +1 -0
  232. package/dist/resource/langfuse/config.js +36 -0
  233. package/dist/resource/langfuse/config.js.map +1 -0
  234. package/dist/resource/langfuse/langfuse.d.ts +31 -0
  235. package/dist/resource/langfuse/langfuse.d.ts.map +1 -0
  236. package/dist/resource/langfuse/langfuse.js +98 -0
  237. package/dist/resource/langfuse/langfuse.js.map +1 -0
  238. package/dist/resource/linear/linear.d.ts +33 -0
  239. package/dist/resource/linear/linear.d.ts.map +1 -0
  240. package/dist/resource/linear/linear.js +93 -0
  241. package/dist/resource/linear/linear.js.map +1 -0
  242. package/dist/resource/minio/config.d.ts +16 -0
  243. package/dist/resource/minio/config.d.ts.map +1 -0
  244. package/dist/resource/minio/config.js +22 -0
  245. package/dist/resource/minio/config.js.map +1 -0
  246. package/dist/resource/minio/minio.d.ts +8 -0
  247. package/dist/resource/minio/minio.d.ts.map +1 -0
  248. package/dist/resource/minio/minio.js +24 -0
  249. package/dist/resource/minio/minio.js.map +1 -0
  250. package/dist/resource/minio/prompt.d.ts +2 -0
  251. package/dist/resource/minio/prompt.d.ts.map +1 -0
  252. package/dist/resource/minio/prompt.js +19 -0
  253. package/dist/resource/minio/prompt.js.map +1 -0
  254. package/dist/resource/mongodb/http_driver.d.ts +27 -0
  255. package/dist/resource/mongodb/http_driver.d.ts.map +1 -0
  256. package/dist/resource/mongodb/http_driver.js +96 -0
  257. package/dist/resource/mongodb/http_driver.js.map +1 -0
  258. package/dist/resource/mongodb/mongodb.d.ts +41 -0
  259. package/dist/resource/mongodb/mongodb.d.ts.map +1 -0
  260. package/dist/resource/mongodb/mongodb.js +100 -0
  261. package/dist/resource/mongodb/mongodb.js.map +1 -0
  262. package/dist/resource/notion/config.d.ts +20 -0
  263. package/dist/resource/notion/config.d.ts.map +1 -0
  264. package/dist/resource/notion/config.js +32 -0
  265. package/dist/resource/notion/config.js.map +1 -0
  266. package/dist/resource/notion/notion.d.ts +32 -0
  267. package/dist/resource/notion/notion.d.ts.map +1 -0
  268. package/dist/resource/notion/notion.js +86 -0
  269. package/dist/resource/notion/notion.js.map +1 -0
  270. package/dist/resource/oci/config.d.ts +20 -0
  271. package/dist/resource/oci/config.d.ts.map +1 -0
  272. package/dist/resource/oci/config.js +30 -0
  273. package/dist/resource/oci/config.js.map +1 -0
  274. package/dist/resource/oci/oci.d.ts +8 -0
  275. package/dist/resource/oci/oci.d.ts.map +1 -0
  276. package/dist/resource/oci/oci.js +24 -0
  277. package/dist/resource/oci/oci.js.map +1 -0
  278. package/dist/resource/oci/prompt.d.ts +2 -0
  279. package/dist/resource/oci/prompt.d.ts.map +1 -0
  280. package/dist/resource/oci/prompt.js +19 -0
  281. package/dist/resource/oci/prompt.js.map +1 -0
  282. package/dist/resource/opfs/opfs.d.ts +57 -0
  283. package/dist/resource/opfs/opfs.d.ts.map +1 -0
  284. package/dist/resource/opfs/opfs.js +236 -0
  285. package/dist/resource/opfs/opfs.js.map +1 -0
  286. package/dist/resource/opfs/prompt.d.ts +2 -0
  287. package/dist/resource/opfs/prompt.d.ts.map +1 -0
  288. package/dist/resource/opfs/prompt.js +17 -0
  289. package/dist/resource/opfs/prompt.js.map +1 -0
  290. package/dist/resource/postgres/neon_driver.d.ts +8 -0
  291. package/dist/resource/postgres/neon_driver.d.ts.map +1 -0
  292. package/dist/resource/postgres/neon_driver.js +28 -0
  293. package/dist/resource/postgres/neon_driver.js.map +1 -0
  294. package/dist/resource/postgres/postgres.d.ts +40 -0
  295. package/dist/resource/postgres/postgres.d.ts.map +1 -0
  296. package/dist/resource/postgres/postgres.js +98 -0
  297. package/dist/resource/postgres/postgres.js.map +1 -0
  298. package/dist/resource/qingstor/config.d.ts +17 -0
  299. package/dist/resource/qingstor/config.d.ts.map +1 -0
  300. package/dist/resource/qingstor/config.js +24 -0
  301. package/dist/resource/qingstor/config.js.map +1 -0
  302. package/dist/resource/qingstor/prompt.d.ts +2 -0
  303. package/dist/resource/qingstor/prompt.d.ts.map +1 -0
  304. package/dist/resource/qingstor/prompt.js +19 -0
  305. package/dist/resource/qingstor/prompt.js.map +1 -0
  306. package/dist/resource/qingstor/qingstor.d.ts +8 -0
  307. package/dist/resource/qingstor/qingstor.d.ts.map +1 -0
  308. package/dist/resource/qingstor/qingstor.js +24 -0
  309. package/dist/resource/qingstor/qingstor.js.map +1 -0
  310. package/dist/resource/r2/config.d.ts +20 -0
  311. package/dist/resource/r2/config.d.ts.map +1 -0
  312. package/dist/resource/r2/config.js +26 -0
  313. package/dist/resource/r2/config.js.map +1 -0
  314. package/dist/resource/r2/prompt.d.ts +2 -0
  315. package/dist/resource/r2/prompt.d.ts.map +1 -0
  316. package/dist/resource/r2/prompt.js +19 -0
  317. package/dist/resource/r2/prompt.js.map +1 -0
  318. package/dist/resource/r2/r2.d.ts +8 -0
  319. package/dist/resource/r2/r2.d.ts.map +1 -0
  320. package/dist/resource/r2/r2.js +24 -0
  321. package/dist/resource/r2/r2.js.map +1 -0
  322. package/dist/resource/redis/redis.d.ts +17 -0
  323. package/dist/resource/redis/redis.d.ts.map +1 -0
  324. package/dist/resource/redis/redis.js +29 -0
  325. package/dist/resource/redis/redis.js.map +1 -0
  326. package/dist/resource/redis/store.d.ts +75 -0
  327. package/dist/resource/redis/store.d.ts.map +1 -0
  328. package/dist/resource/redis/store.js +378 -0
  329. package/dist/resource/redis/store.js.map +1 -0
  330. package/dist/resource/registry.d.ts +25 -0
  331. package/dist/resource/registry.d.ts.map +1 -0
  332. package/dist/resource/registry.js +274 -0
  333. package/dist/resource/registry.js.map +1 -0
  334. package/dist/resource/s3/config.d.ts +7 -0
  335. package/dist/resource/s3/config.d.ts.map +1 -0
  336. package/dist/resource/s3/config.js +26 -0
  337. package/dist/resource/s3/config.js.map +1 -0
  338. package/dist/resource/s3/s3.d.ts +53 -0
  339. package/dist/resource/s3/s3.d.ts.map +1 -0
  340. package/dist/resource/s3/s3.js +182 -0
  341. package/dist/resource/s3/s3.js.map +1 -0
  342. package/dist/resource/s3_alias.d.ts +113 -0
  343. package/dist/resource/s3_alias.d.ts.map +1 -0
  344. package/dist/resource/s3_alias.js +133 -0
  345. package/dist/resource/s3_alias.js.map +1 -0
  346. package/dist/resource/scaleway/config.d.ts +17 -0
  347. package/dist/resource/scaleway/config.d.ts.map +1 -0
  348. package/dist/resource/scaleway/config.js +24 -0
  349. package/dist/resource/scaleway/config.js.map +1 -0
  350. package/dist/resource/scaleway/prompt.d.ts +2 -0
  351. package/dist/resource/scaleway/prompt.d.ts.map +1 -0
  352. package/dist/resource/scaleway/prompt.js +19 -0
  353. package/dist/resource/scaleway/prompt.js.map +1 -0
  354. package/dist/resource/scaleway/scaleway.d.ts +8 -0
  355. package/dist/resource/scaleway/scaleway.d.ts.map +1 -0
  356. package/dist/resource/scaleway/scaleway.js +24 -0
  357. package/dist/resource/scaleway/scaleway.js.map +1 -0
  358. package/dist/resource/seaweedfs/config.d.ts +16 -0
  359. package/dist/resource/seaweedfs/config.d.ts.map +1 -0
  360. package/dist/resource/seaweedfs/config.js +22 -0
  361. package/dist/resource/seaweedfs/config.js.map +1 -0
  362. package/dist/resource/seaweedfs/prompt.d.ts +2 -0
  363. package/dist/resource/seaweedfs/prompt.d.ts.map +1 -0
  364. package/dist/resource/seaweedfs/prompt.js +19 -0
  365. package/dist/resource/seaweedfs/prompt.js.map +1 -0
  366. package/dist/resource/seaweedfs/seaweedfs.d.ts +8 -0
  367. package/dist/resource/seaweedfs/seaweedfs.d.ts.map +1 -0
  368. package/dist/resource/seaweedfs/seaweedfs.js +24 -0
  369. package/dist/resource/seaweedfs/seaweedfs.js.map +1 -0
  370. package/dist/resource/slack/config.d.ts +20 -0
  371. package/dist/resource/slack/config.d.ts.map +1 -0
  372. package/dist/resource/slack/config.js +32 -0
  373. package/dist/resource/slack/config.js.map +1 -0
  374. package/dist/resource/slack/slack.d.ts +33 -0
  375. package/dist/resource/slack/slack.d.ts.map +1 -0
  376. package/dist/resource/slack/slack.js +91 -0
  377. package/dist/resource/slack/slack.js.map +1 -0
  378. package/dist/resource/supabase/config.d.ts +20 -0
  379. package/dist/resource/supabase/config.d.ts.map +1 -0
  380. package/dist/resource/supabase/config.js +26 -0
  381. package/dist/resource/supabase/config.js.map +1 -0
  382. package/dist/resource/supabase/prompt.d.ts +2 -0
  383. package/dist/resource/supabase/prompt.d.ts.map +1 -0
  384. package/dist/resource/supabase/prompt.js +19 -0
  385. package/dist/resource/supabase/prompt.js.map +1 -0
  386. package/dist/resource/supabase/supabase.d.ts +8 -0
  387. package/dist/resource/supabase/supabase.d.ts.map +1 -0
  388. package/dist/resource/supabase/supabase.js +24 -0
  389. package/dist/resource/supabase/supabase.js.map +1 -0
  390. package/dist/resource/tencent/config.d.ts +17 -0
  391. package/dist/resource/tencent/config.d.ts.map +1 -0
  392. package/dist/resource/tencent/config.js +24 -0
  393. package/dist/resource/tencent/config.js.map +1 -0
  394. package/dist/resource/tencent/prompt.d.ts +2 -0
  395. package/dist/resource/tencent/prompt.d.ts.map +1 -0
  396. package/dist/resource/tencent/prompt.js +19 -0
  397. package/dist/resource/tencent/prompt.js.map +1 -0
  398. package/dist/resource/tencent/tencent.d.ts +8 -0
  399. package/dist/resource/tencent/tencent.d.ts.map +1 -0
  400. package/dist/resource/tencent/tencent.js +24 -0
  401. package/dist/resource/tencent/tencent.js.map +1 -0
  402. package/dist/resource/trello/config.d.ts +22 -0
  403. package/dist/resource/trello/config.d.ts.map +1 -0
  404. package/dist/resource/trello/config.js +35 -0
  405. package/dist/resource/trello/config.js.map +1 -0
  406. package/dist/resource/trello/trello.d.ts +32 -0
  407. package/dist/resource/trello/trello.d.ts.map +1 -0
  408. package/dist/resource/trello/trello.js +94 -0
  409. package/dist/resource/trello/trello.js.map +1 -0
  410. package/dist/resource/wasabi/config.d.ts +17 -0
  411. package/dist/resource/wasabi/config.d.ts.map +1 -0
  412. package/dist/resource/wasabi/config.js +29 -0
  413. package/dist/resource/wasabi/config.js.map +1 -0
  414. package/dist/resource/wasabi/prompt.d.ts +2 -0
  415. package/dist/resource/wasabi/prompt.d.ts.map +1 -0
  416. package/dist/resource/wasabi/prompt.js +19 -0
  417. package/dist/resource/wasabi/prompt.js.map +1 -0
  418. package/dist/resource/wasabi/wasabi.d.ts +8 -0
  419. package/dist/resource/wasabi/wasabi.d.ts.map +1 -0
  420. package/dist/resource/wasabi/wasabi.js +24 -0
  421. package/dist/resource/wasabi/wasabi.js.map +1 -0
  422. package/dist/test-utils.d.ts +37 -0
  423. package/dist/test-utils.d.ts.map +1 -0
  424. package/dist/test-utils.js +518 -0
  425. package/dist/test-utils.js.map +1 -0
  426. package/dist/workspace.d.ts +10 -0
  427. package/dist/workspace.d.ts.map +1 -0
  428. package/dist/workspace.js +62 -0
  429. package/dist/workspace.js.map +1 -0
  430. package/package.json +13 -6
  431. package/dist/aliyun-DR6KT3H6.js +0 -8
  432. package/dist/aliyun-DR6KT3H6.js.map +0 -1
  433. package/dist/backblaze-XCLZXTES.js +0 -8
  434. package/dist/backblaze-XCLZXTES.js.map +0 -1
  435. package/dist/box-XBCSU3AA.js +0 -8
  436. package/dist/box-XBCSU3AA.js.map +0 -1
  437. package/dist/ceph-F5S2NMTO.js +0 -8
  438. package/dist/ceph-F5S2NMTO.js.map +0 -1
  439. package/dist/chunk-2J35WXX5.js +0 -28
  440. package/dist/chunk-2J35WXX5.js.map +0 -1
  441. package/dist/chunk-2WNXK742.js +0 -89
  442. package/dist/chunk-2WNXK742.js.map +0 -1
  443. package/dist/chunk-2WSKXBSV.js +0 -139
  444. package/dist/chunk-2WSKXBSV.js.map +0 -1
  445. package/dist/chunk-37WKCB2E.js +0 -95
  446. package/dist/chunk-37WKCB2E.js.map +0 -1
  447. package/dist/chunk-3IYCVC7W.js +0 -96
  448. package/dist/chunk-3IYCVC7W.js.map +0 -1
  449. package/dist/chunk-46HNNKFR.js +0 -95
  450. package/dist/chunk-46HNNKFR.js.map +0 -1
  451. package/dist/chunk-4IF4TGAI.js +0 -11
  452. package/dist/chunk-4IF4TGAI.js.map +0 -1
  453. package/dist/chunk-5OZJMTYW.js +0 -113
  454. package/dist/chunk-5OZJMTYW.js.map +0 -1
  455. package/dist/chunk-5UM6EBVW.js +0 -108
  456. package/dist/chunk-5UM6EBVW.js.map +0 -1
  457. package/dist/chunk-6HRSCX2U.js +0 -98
  458. package/dist/chunk-6HRSCX2U.js.map +0 -1
  459. package/dist/chunk-7HWQAYXR.js +0 -85
  460. package/dist/chunk-7HWQAYXR.js.map +0 -1
  461. package/dist/chunk-AUZNQ7EI.js +0 -85
  462. package/dist/chunk-AUZNQ7EI.js.map +0 -1
  463. package/dist/chunk-BGA2F226.js +0 -182
  464. package/dist/chunk-BGA2F226.js.map +0 -1
  465. package/dist/chunk-BV372CUO.js +0 -90
  466. package/dist/chunk-BV372CUO.js.map +0 -1
  467. package/dist/chunk-C4THTILY.js +0 -95
  468. package/dist/chunk-C4THTILY.js.map +0 -1
  469. package/dist/chunk-D4MEOKNQ.js +0 -95
  470. package/dist/chunk-D4MEOKNQ.js.map +0 -1
  471. package/dist/chunk-D4RAMWYH.js +0 -88
  472. package/dist/chunk-D4RAMWYH.js.map +0 -1
  473. package/dist/chunk-EHIT6WCY.js +0 -95
  474. package/dist/chunk-EHIT6WCY.js.map +0 -1
  475. package/dist/chunk-EN6TZYT2.js +0 -95
  476. package/dist/chunk-EN6TZYT2.js.map +0 -1
  477. package/dist/chunk-FTDVV7EQ.js +0 -85
  478. package/dist/chunk-FTDVV7EQ.js.map +0 -1
  479. package/dist/chunk-G67Q2Z6I.js +0 -95
  480. package/dist/chunk-G67Q2Z6I.js.map +0 -1
  481. package/dist/chunk-GM2QMJAY.js +0 -85
  482. package/dist/chunk-GM2QMJAY.js.map +0 -1
  483. package/dist/chunk-HRWLHJX2.js +0 -84
  484. package/dist/chunk-HRWLHJX2.js.map +0 -1
  485. package/dist/chunk-INEXV2PN.js +0 -91
  486. package/dist/chunk-INEXV2PN.js.map +0 -1
  487. package/dist/chunk-IZMKMD3O.js +0 -11
  488. package/dist/chunk-IZMKMD3O.js.map +0 -1
  489. package/dist/chunk-JUVMJ5GI.js +0 -85
  490. package/dist/chunk-JUVMJ5GI.js.map +0 -1
  491. package/dist/chunk-KL2VFYUV.js +0 -159
  492. package/dist/chunk-KL2VFYUV.js.map +0 -1
  493. package/dist/chunk-L64GRKOD.js +0 -38
  494. package/dist/chunk-L64GRKOD.js.map +0 -1
  495. package/dist/chunk-LPDLPRPS.js +0 -11
  496. package/dist/chunk-LPDLPRPS.js.map +0 -1
  497. package/dist/chunk-M2UF2JHJ.js +0 -11
  498. package/dist/chunk-M2UF2JHJ.js.map +0 -1
  499. package/dist/chunk-NVHPJ5CV.js +0 -109
  500. package/dist/chunk-NVHPJ5CV.js.map +0 -1
  501. package/dist/chunk-OSTDTTWI.js +0 -35
  502. package/dist/chunk-OSTDTTWI.js.map +0 -1
  503. package/dist/chunk-PQCRGTSA.js +0 -85
  504. package/dist/chunk-PQCRGTSA.js.map +0 -1
  505. package/dist/chunk-QE7QNA45.js +0 -114
  506. package/dist/chunk-QE7QNA45.js.map +0 -1
  507. package/dist/chunk-QG2NUNCY.js +0 -95
  508. package/dist/chunk-QG2NUNCY.js.map +0 -1
  509. package/dist/chunk-UFHBDBZD.js +0 -1212
  510. package/dist/chunk-UFHBDBZD.js.map +0 -1
  511. package/dist/chunk-UY22T4AC.js +0 -112
  512. package/dist/chunk-UY22T4AC.js.map +0 -1
  513. package/dist/chunk-XJBC3OYX.js +0 -11
  514. package/dist/chunk-XJBC3OYX.js.map +0 -1
  515. package/dist/chunk-Y6DYUK6J.js +0 -85
  516. package/dist/chunk-Y6DYUK6J.js.map +0 -1
  517. package/dist/chunk-YOCTIHQZ.js +0 -89
  518. package/dist/chunk-YOCTIHQZ.js.map +0 -1
  519. package/dist/chunk-ZDJPUXYH.js +0 -101
  520. package/dist/chunk-ZDJPUXYH.js.map +0 -1
  521. package/dist/chunk-ZKCOSE3R.js +0 -90
  522. package/dist/chunk-ZKCOSE3R.js.map +0 -1
  523. package/dist/chunk-ZTHVEXIV.js +0 -11
  524. package/dist/chunk-ZTHVEXIV.js.map +0 -1
  525. package/dist/config-2Y6LZKLV.js +0 -9
  526. package/dist/config-2Y6LZKLV.js.map +0 -1
  527. package/dist/config-4GSOMUMF.js +0 -9
  528. package/dist/config-4GSOMUMF.js.map +0 -1
  529. package/dist/config-5YBUWFUP.js +0 -9
  530. package/dist/config-5YBUWFUP.js.map +0 -1
  531. package/dist/config-DE5OZ4I7.js +0 -9
  532. package/dist/config-DE5OZ4I7.js.map +0 -1
  533. package/dist/config-ELDOFRJW.js +0 -9
  534. package/dist/config-ELDOFRJW.js.map +0 -1
  535. package/dist/config-FPM3LAW7.js +0 -9
  536. package/dist/config-FPM3LAW7.js.map +0 -1
  537. package/dist/config-JY557MA6.js +0 -9
  538. package/dist/config-JY557MA6.js.map +0 -1
  539. package/dist/config-UU27ALAA.js +0 -9
  540. package/dist/config-UU27ALAA.js.map +0 -1
  541. package/dist/config-WRACCRPN.js +0 -9
  542. package/dist/config-WRACCRPN.js.map +0 -1
  543. package/dist/digitalocean-QDHTRS2W.js +0 -8
  544. package/dist/digitalocean-QDHTRS2W.js.map +0 -1
  545. package/dist/discord-ERUI7OAQ.js +0 -7
  546. package/dist/discord-ERUI7OAQ.js.map +0 -1
  547. package/dist/dropbox-3U6D4HLE.js +0 -8
  548. package/dist/dropbox-3U6D4HLE.js.map +0 -1
  549. package/dist/gcal-MTBSDG34.js +0 -8
  550. package/dist/gcal-MTBSDG34.js.map +0 -1
  551. package/dist/gcs-KNGRBBET.js +0 -8
  552. package/dist/gcs-KNGRBBET.js.map +0 -1
  553. package/dist/gdocs-RUIOIRKP.js +0 -8
  554. package/dist/gdocs-RUIOIRKP.js.map +0 -1
  555. package/dist/gdrive-5JB7ZKEP.js +0 -8
  556. package/dist/gdrive-5JB7ZKEP.js.map +0 -1
  557. package/dist/github-CIXBFBVO.js +0 -7
  558. package/dist/github-CIXBFBVO.js.map +0 -1
  559. package/dist/github_ci-HR6YOYAO.js +0 -8
  560. package/dist/github_ci-HR6YOYAO.js.map +0 -1
  561. package/dist/gmail-JHGWTQU5.js +0 -8
  562. package/dist/gmail-JHGWTQU5.js.map +0 -1
  563. package/dist/gsheets-N54JO2RS.js +0 -8
  564. package/dist/gsheets-N54JO2RS.js.map +0 -1
  565. package/dist/gslides-B4VMNLMB.js +0 -8
  566. package/dist/gslides-B4VMNLMB.js.map +0 -1
  567. package/dist/langfuse-HEUJGDOC.js +0 -7
  568. package/dist/langfuse-HEUJGDOC.js.map +0 -1
  569. package/dist/linear-J4QQ3CA6.js +0 -7
  570. package/dist/linear-J4QQ3CA6.js.map +0 -1
  571. package/dist/minio-BXWHJ6K5.js +0 -8
  572. package/dist/minio-BXWHJ6K5.js.map +0 -1
  573. package/dist/mongodb-YZP643ZU.js +0 -7
  574. package/dist/mongodb-YZP643ZU.js.map +0 -1
  575. package/dist/notion-I5S5SRLO.js +0 -7
  576. package/dist/notion-I5S5SRLO.js.map +0 -1
  577. package/dist/oci-XOPKH4AE.js +0 -8
  578. package/dist/oci-XOPKH4AE.js.map +0 -1
  579. package/dist/opfs-36QO72Y5.js +0 -7
  580. package/dist/opfs-36QO72Y5.js.map +0 -1
  581. package/dist/postgres-HPOMN2AR.js +0 -7
  582. package/dist/postgres-HPOMN2AR.js.map +0 -1
  583. package/dist/qingstor-JKAHLK62.js +0 -8
  584. package/dist/qingstor-JKAHLK62.js.map +0 -1
  585. package/dist/r2-L3QXQ76M.js +0 -8
  586. package/dist/r2-L3QXQ76M.js.map +0 -1
  587. package/dist/s3-LRZJPGHK.js +0 -9
  588. package/dist/s3-LRZJPGHK.js.map +0 -1
  589. package/dist/scaleway-CGNDYNKS.js +0 -8
  590. package/dist/scaleway-CGNDYNKS.js.map +0 -1
  591. package/dist/seaweedfs-BSQWCBIR.js +0 -8
  592. package/dist/seaweedfs-BSQWCBIR.js.map +0 -1
  593. package/dist/slack-62ECSENR.js +0 -7
  594. package/dist/slack-62ECSENR.js.map +0 -1
  595. package/dist/supabase-J66NXWAF.js +0 -8
  596. package/dist/supabase-J66NXWAF.js.map +0 -1
  597. package/dist/tencent-AC667LV3.js +0 -8
  598. package/dist/tencent-AC667LV3.js.map +0 -1
  599. package/dist/trello-SUPG6VDF.js +0 -7
  600. package/dist/trello-SUPG6VDF.js.map +0 -1
  601. package/dist/wasabi-5KKPW6LH.js +0 -8
  602. package/dist/wasabi-5KKPW6LH.js.map +0 -1
@@ -1,84 +0,0 @@
1
- import {
2
- redactGoogleConfig
3
- } from "./chunk-IZMKMD3O.js";
4
-
5
- // src/resource/gdrive/gdrive.ts
6
- import { mountKey, mountPrefixOf } from "@struktoai/mirage-core";
7
- import {
8
- GDRIVE_COMMANDS,
9
- GDRIVE_PROMPT,
10
- GDRIVE_OPS,
11
- GDriveAccessor,
12
- PathSpec,
13
- RAMIndexCacheStore,
14
- ResourceName,
15
- TokenManager,
16
- gdriveRead,
17
- gdriveReaddir,
18
- makeResolveGlob,
19
- gdriveStat
20
- } from "@struktoai/mirage-core";
21
- var gdriveResolveGlob = makeResolveGlob(gdriveReaddir);
22
- var GDriveResource = class {
23
- kind = ResourceName.GDRIVE;
24
- cachesReads = true;
25
- supportsSnapshot = true;
26
- indexTtl = 86400;
27
- prompt = GDRIVE_PROMPT;
28
- config;
29
- accessor;
30
- index;
31
- constructor(config) {
32
- this.config = config;
33
- const tm = new TokenManager(config);
34
- this.accessor = new GDriveAccessor({ tokenManager: tm });
35
- this.index = new RAMIndexCacheStore({ ttl: 86400 });
36
- }
37
- open() {
38
- return Promise.resolve();
39
- }
40
- close() {
41
- return Promise.resolve();
42
- }
43
- commands() {
44
- return GDRIVE_COMMANDS;
45
- }
46
- ops() {
47
- return GDRIVE_OPS;
48
- }
49
- readFile(p) {
50
- return gdriveRead(this.accessor, p, this.index);
51
- }
52
- readdir(p) {
53
- return gdriveReaddir(this.accessor, p, this.index);
54
- }
55
- stat(p) {
56
- return gdriveStat(this.accessor, p, this.index);
57
- }
58
- glob(paths, prefix = "") {
59
- const effective = prefix !== "" ? paths.map(
60
- (p) => mountPrefixOf(p.virtual, p.resourcePath) !== "" ? p : new PathSpec({
61
- virtual: p.virtual,
62
- directory: p.directory,
63
- ...p.pattern !== null ? { pattern: p.pattern } : {},
64
- resolved: p.resolved,
65
- resourcePath: mountKey(p.virtual, prefix)
66
- })
67
- ) : paths;
68
- return gdriveResolveGlob(this.accessor, effective, this.index);
69
- }
70
- getState() {
71
- return Promise.resolve({
72
- type: this.kind,
73
- config: redactGoogleConfig(this.config)
74
- });
75
- }
76
- loadState(_state) {
77
- return Promise.resolve();
78
- }
79
- };
80
-
81
- export {
82
- GDriveResource
83
- };
84
- //# sourceMappingURL=chunk-HRWLHJX2.js.map
@@ -1 +0,0 @@
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 { mountKey, mountPrefixOf } from '@struktoai/mirage-core'\nimport {\n type FileStat,\n GDRIVE_COMMANDS,\n GDRIVE_PROMPT,\n GDRIVE_OPS,\n GDriveAccessor,\n type IndexCacheStore,\n PathSpec,\n RAMIndexCacheStore,\n type RegisteredCommand,\n type RegisteredOp,\n type Resource,\n ResourceName,\n TokenManager,\n gdriveRead,\n gdriveReaddir,\n makeResolveGlob,\n gdriveStat,\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 implements Resource {\n readonly kind: string = ResourceName.GDRIVE\n readonly cachesReads: boolean = true\n readonly supportsSnapshot: boolean = true\n readonly indexTtl: number = 86_400\n readonly prompt: string = GDRIVE_PROMPT\n readonly config: GDriveConfig\n readonly accessor: GDriveAccessor\n readonly index: IndexCacheStore\n\n constructor(config: GDriveConfig) {\n this.config = config\n const tm = new TokenManager(config)\n this.accessor = new GDriveAccessor({ tokenManager: tm })\n this.index = new RAMIndexCacheStore({ ttl: 86_400 })\n }\n\n open(): Promise<void> {\n return Promise.resolve()\n }\n\n close(): Promise<void> {\n return Promise.resolve()\n }\n\n commands(): readonly RegisteredCommand[] {\n return 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,SAAS,UAAU,qBAAqB;AACxC;AAAA,EAEE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EAIA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAGP,IAAM,oBAAoB,gBAAgB,aAAa;AAOhD,IAAM,iBAAN,MAAyC;AAAA,EACrC,OAAe,aAAa;AAAA,EAC5B,cAAuB;AAAA,EACvB,mBAA4B;AAAA,EAC5B,WAAmB;AAAA,EACnB,SAAiB;AAAA,EACjB;AAAA,EACA;AAAA,EACA;AAAA,EAET,YAAY,QAAsB;AAChC,SAAK,SAAS;AACd,UAAM,KAAK,IAAI,aAAa,MAAM;AAClC,SAAK,WAAW,IAAI,eAAe,EAAE,cAAc,GAAG,CAAC;AACvD,SAAK,QAAQ,IAAI,mBAAmB,EAAE,KAAK,MAAO,CAAC;AAAA,EACrD;AAAA,EAEA,OAAsB;AACpB,WAAO,QAAQ,QAAQ;AAAA,EACzB;AAAA,EAEA,QAAuB;AACrB,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":[]}
@@ -1,91 +0,0 @@
1
- import {
2
- S3Resource
3
- } from "./chunk-BGA2F226.js";
4
-
5
- // src/resource/wasabi/wasabi.ts
6
- import {
7
- remapCommandsResource,
8
- remapOpsResource,
9
- ResourceName
10
- } from "@struktoai/mirage-core";
11
-
12
- // src/resource/wasabi/config.ts
13
- import {
14
- redactConfigWithSchema,
15
- secretSchema,
16
- z
17
- } from "@struktoai/mirage-core";
18
- var WasabiConfigSchema = z.object({
19
- bucket: z.string(),
20
- presignedUrlProvider: secretSchema(
21
- z.custom((value) => typeof value === "function")
22
- ),
23
- region: z.string().optional(),
24
- endpoint: z.string().optional(),
25
- defaultContentType: z.string().optional(),
26
- keyPrefix: z.string().optional()
27
- });
28
- function resolvedWasabiEndpoint(config) {
29
- if (config.endpoint !== void 0 && config.endpoint !== "") return config.endpoint;
30
- const region = config.region ?? "us-east-1";
31
- return region === "us-east-1" ? "https://s3.wasabisys.com" : `https://s3.${region}.wasabisys.com`;
32
- }
33
- function wasabiToS3Config(config) {
34
- return {
35
- bucket: config.bucket,
36
- presignedUrlProvider: config.presignedUrlProvider,
37
- ...config.region !== void 0 ? { region: config.region } : {},
38
- endpoint: resolvedWasabiEndpoint(config),
39
- ...config.defaultContentType !== void 0 ? { defaultContentType: config.defaultContentType } : {},
40
- ...config.keyPrefix !== void 0 ? { keyPrefix: config.keyPrefix } : {}
41
- };
42
- }
43
- function redactWasabiConfig(config) {
44
- return redactConfigWithSchema(WasabiConfigSchema, config);
45
- }
46
-
47
- // src/resource/wasabi/prompt.ts
48
- var WASABI_BROWSER_PROMPT = `{prefix}
49
- Remote Wasabi bucket (S3-compatible) accessed via presigned URLs (browser runtime).
50
- Supports the full filesystem command set: ls/tree/cat/grep/find/du/cp/mv/rm/etc.
51
- Listing operations require the presigner to sign LIST/COPY operations in
52
- addition to GET/PUT/HEAD/DELETE \u2014 see S3BrowserPresignedUrlProvider docs.`;
53
-
54
- // src/resource/wasabi/wasabi.ts
55
- var WasabiResource = class extends S3Resource {
56
- kind = ResourceName.WASABI;
57
- prompt = WASABI_BROWSER_PROMPT;
58
- wasabiConfig;
59
- wasabiOps;
60
- wasabiCommands;
61
- constructor(config) {
62
- super(wasabiToS3Config(config));
63
- this.wasabiConfig = config;
64
- this.wasabiOps = remapOpsResource(super.ops(), ResourceName.WASABI);
65
- this.wasabiCommands = remapCommandsResource(super.commands(), ResourceName.WASABI);
66
- }
67
- ops() {
68
- return this.wasabiOps;
69
- }
70
- commands() {
71
- return this.wasabiCommands;
72
- }
73
- getState() {
74
- return Promise.resolve({
75
- type: this.kind,
76
- config: redactWasabiConfig(this.wasabiConfig)
77
- });
78
- }
79
- loadState(_state) {
80
- return Promise.resolve();
81
- }
82
- };
83
-
84
- export {
85
- resolvedWasabiEndpoint,
86
- wasabiToS3Config,
87
- redactWasabiConfig,
88
- WASABI_BROWSER_PROMPT,
89
- WasabiResource
90
- };
91
- //# sourceMappingURL=chunk-INEXV2PN.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/resource/wasabi/wasabi.ts","../src/resource/wasabi/config.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_BROWSER_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_BROWSER_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\nimport {\n redactConfigWithSchema,\n type ConfigOf,\n type RedactedConfig,\n secretSchema,\n z,\n} from '@struktoai/mirage-core'\nimport type { S3BrowserPresignedUrlProvider, S3Config } from '../s3/config.ts'\n\nconst WasabiConfigSchema = z.object({\n bucket: z.string(),\n presignedUrlProvider: secretSchema(\n z.custom<S3BrowserPresignedUrlProvider>((value) => typeof value === 'function'),\n ),\n region: z.string().optional(),\n endpoint: z.string().optional(),\n defaultContentType: z.string().optional(),\n keyPrefix: z.string().optional(),\n})\n\nexport type WasabiConfig = ConfigOf<typeof WasabiConfigSchema>\n\nexport type WasabiConfigRedacted = RedactedConfig<WasabiConfig, 'presignedUrlProvider'>\n\nexport function resolvedWasabiEndpoint(config: WasabiConfig): string {\n if (config.endpoint !== undefined && config.endpoint !== '') return config.endpoint\n const region = config.region ?? 'us-east-1'\n return region === 'us-east-1' ? 'https://s3.wasabisys.com' : `https://s3.${region}.wasabisys.com`\n}\n\nexport function wasabiToS3Config(config: WasabiConfig): S3Config {\n return {\n bucket: config.bucket,\n presignedUrlProvider: config.presignedUrlProvider,\n ...(config.region !== undefined ? { region: config.region } : {}),\n endpoint: resolvedWasabiEndpoint(config),\n ...(config.defaultContentType !== undefined\n ? { defaultContentType: config.defaultContentType }\n : {}),\n ...(config.keyPrefix !== undefined ? { keyPrefix: config.keyPrefix } : {}),\n }\n}\n\nexport function redactWasabiConfig(config: WasabiConfig): WasabiConfigRedacted {\n return redactConfigWithSchema(WasabiConfigSchema, config) as unknown as WasabiConfigRedacted\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_BROWSER_PROMPT = `{prefix}\n Remote Wasabi 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 — see S3BrowserPresignedUrlProvider docs.`\n"],"mappings":";;;;;AAcA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OAGK;;;ACNP;AAAA,EACE;AAAA,EAGA;AAAA,EACA;AAAA,OACK;AAGP,IAAM,qBAAqB,EAAE,OAAO;AAAA,EAClC,QAAQ,EAAE,OAAO;AAAA,EACjB,sBAAsB;AAAA,IACpB,EAAE,OAAsC,CAAC,UAAU,OAAO,UAAU,UAAU;AAAA,EAChF;AAAA,EACA,QAAQ,EAAE,OAAO,EAAE,SAAS;AAAA,EAC5B,UAAU,EAAE,OAAO,EAAE,SAAS;AAAA,EAC9B,oBAAoB,EAAE,OAAO,EAAE,SAAS;AAAA,EACxC,WAAW,EAAE,OAAO,EAAE,SAAS;AACjC,CAAC;AAMM,SAAS,uBAAuB,QAA8B;AACnE,MAAI,OAAO,aAAa,UAAa,OAAO,aAAa,GAAI,QAAO,OAAO;AAC3E,QAAM,SAAS,OAAO,UAAU;AAChC,SAAO,WAAW,cAAc,6BAA6B,cAAc,MAAM;AACnF;AAEO,SAAS,iBAAiB,QAAgC;AAC/D,SAAO;AAAA,IACL,QAAQ,OAAO;AAAA,IACf,sBAAsB,OAAO;AAAA,IAC7B,GAAI,OAAO,WAAW,SAAY,EAAE,QAAQ,OAAO,OAAO,IAAI,CAAC;AAAA,IAC/D,UAAU,uBAAuB,MAAM;AAAA,IACvC,GAAI,OAAO,uBAAuB,SAC9B,EAAE,oBAAoB,OAAO,mBAAmB,IAChD,CAAC;AAAA,IACL,GAAI,OAAO,cAAc,SAAY,EAAE,WAAW,OAAO,UAAU,IAAI,CAAC;AAAA,EAC1E;AACF;AAEO,SAAS,mBAAmB,QAA4C;AAC7E,SAAO,uBAAuB,oBAAoB,MAAM;AAC1D;;;AC7CO,IAAM,wBAAwB;AAAA;AAAA;AAAA;AAAA;;;AFqB9B,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,11 +0,0 @@
1
- // src/resource/gdrive/config.ts
2
- import {
3
- normalizeGoogleConfig,
4
- redactGoogleConfig
5
- } from "@struktoai/mirage-core";
6
-
7
- export {
8
- normalizeGoogleConfig,
9
- redactGoogleConfig
10
- };
11
- //# sourceMappingURL=chunk-IZMKMD3O.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/resource/gdrive/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 normalizeGDriveConfig,\n redactGoogleConfig as redactGDriveConfig,\n type GoogleConfig as GDriveConfig,\n type GoogleConfigRedacted as GDriveConfigRedacted,\n} from '@struktoai/mirage-core'\n"],"mappings":";AAcA;AAAA,EAC2B;AAAA,EACH;AAAA,OAGjB;","names":[]}
@@ -1,85 +0,0 @@
1
- import {
2
- redactGoogleConfig
3
- } from "./chunk-XJBC3OYX.js";
4
-
5
- // src/resource/gdocs/gdocs.ts
6
- import { mountKey, mountPrefixOf } from "@struktoai/mirage-core";
7
- import {
8
- GDOCS_COMMANDS,
9
- GDOCS_PROMPT,
10
- GDOCS_OPS,
11
- GDOCS_WRITE_PROMPT,
12
- GDocsAccessor,
13
- PathSpec,
14
- RAMIndexCacheStore,
15
- ResourceName,
16
- TokenManager,
17
- gdocsRead,
18
- gdocsReaddir,
19
- makeResolveGlob,
20
- gdocsStat
21
- } from "@struktoai/mirage-core";
22
- var gdocsResolveGlob = makeResolveGlob(gdocsReaddir);
23
- var GDocsResource = class {
24
- kind = ResourceName.GDOCS;
25
- cachesReads = true;
26
- indexTtl = 86400;
27
- prompt = GDOCS_PROMPT;
28
- writePrompt = GDOCS_WRITE_PROMPT;
29
- config;
30
- accessor;
31
- index;
32
- constructor(config) {
33
- this.config = config;
34
- const tm = new TokenManager(config);
35
- this.accessor = new GDocsAccessor({ tokenManager: tm });
36
- this.index = new RAMIndexCacheStore({ ttl: 86400 });
37
- }
38
- open() {
39
- return Promise.resolve();
40
- }
41
- close() {
42
- return Promise.resolve();
43
- }
44
- commands() {
45
- return GDOCS_COMMANDS;
46
- }
47
- ops() {
48
- return GDOCS_OPS;
49
- }
50
- readFile(p) {
51
- return gdocsRead(this.accessor, p, this.index);
52
- }
53
- readdir(p) {
54
- return gdocsReaddir(this.accessor, p, this.index);
55
- }
56
- stat(p) {
57
- return gdocsStat(this.accessor, p, this.index);
58
- }
59
- glob(paths, prefix = "") {
60
- const effective = prefix !== "" ? paths.map(
61
- (p) => mountPrefixOf(p.virtual, p.resourcePath) !== "" ? p : new PathSpec({
62
- virtual: p.virtual,
63
- directory: p.directory,
64
- ...p.pattern !== null ? { pattern: p.pattern } : {},
65
- resolved: p.resolved,
66
- resourcePath: mountKey(p.virtual, prefix)
67
- })
68
- ) : paths;
69
- return gdocsResolveGlob(this.accessor, effective, this.index);
70
- }
71
- getState() {
72
- return Promise.resolve({
73
- type: this.kind,
74
- config: redactGoogleConfig(this.config)
75
- });
76
- }
77
- loadState(_state) {
78
- return Promise.resolve();
79
- }
80
- };
81
-
82
- export {
83
- GDocsResource
84
- };
85
- //# sourceMappingURL=chunk-JUVMJ5GI.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/resource/gdocs/gdocs.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 { mountKey, mountPrefixOf } from '@struktoai/mirage-core'\nimport {\n type FileStat,\n GDOCS_COMMANDS,\n GDOCS_PROMPT,\n GDOCS_OPS,\n GDOCS_WRITE_PROMPT,\n GDocsAccessor,\n type IndexCacheStore,\n PathSpec,\n RAMIndexCacheStore,\n type RegisteredCommand,\n type RegisteredOp,\n type Resource,\n ResourceName,\n TokenManager,\n gdocsRead,\n gdocsReaddir,\n makeResolveGlob,\n gdocsStat,\n} from '@struktoai/mirage-core'\nimport { redactGDocsConfig, type GDocsConfig, type GDocsConfigRedacted } from './config.ts'\n\nconst gdocsResolveGlob = makeResolveGlob(gdocsReaddir)\n\nexport interface GDocsResourceState {\n type: string\n config: GDocsConfigRedacted\n}\n\nexport class GDocsResource implements Resource {\n readonly kind: string = ResourceName.GDOCS\n readonly cachesReads: boolean = true\n readonly indexTtl: number = 86_400\n readonly prompt: string = GDOCS_PROMPT\n readonly writePrompt: string = GDOCS_WRITE_PROMPT\n readonly config: GDocsConfig\n readonly accessor: GDocsAccessor\n readonly index: IndexCacheStore\n\n constructor(config: GDocsConfig) {\n this.config = config\n const tm = new TokenManager(config)\n this.accessor = new GDocsAccessor({ tokenManager: tm })\n this.index = new RAMIndexCacheStore({ ttl: 86_400 })\n }\n\n open(): Promise<void> {\n return Promise.resolve()\n }\n\n close(): Promise<void> {\n return Promise.resolve()\n }\n\n commands(): readonly RegisteredCommand[] {\n return GDOCS_COMMANDS\n }\n\n ops(): readonly RegisteredOp[] {\n return GDOCS_OPS\n }\n\n readFile(p: PathSpec): Promise<Uint8Array> {\n return gdocsRead(this.accessor, p, this.index)\n }\n\n readdir(p: PathSpec): Promise<string[]> {\n return gdocsReaddir(this.accessor, p, this.index)\n }\n\n stat(p: PathSpec): Promise<FileStat> {\n return gdocsStat(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 gdocsResolveGlob(this.accessor, effective, this.index)\n }\n\n getState(): Promise<GDocsResourceState> {\n return Promise.resolve({\n type: this.kind,\n config: redactGDocsConfig(this.config),\n })\n }\n\n loadState(_state: GDocsResourceState): Promise<void> {\n return Promise.resolve()\n }\n}\n"],"mappings":";;;;;AAcA,SAAS,UAAU,qBAAqB;AACxC;AAAA,EAEE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EAIA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAGP,IAAM,mBAAmB,gBAAgB,YAAY;AAO9C,IAAM,gBAAN,MAAwC;AAAA,EACpC,OAAe,aAAa;AAAA,EAC5B,cAAuB;AAAA,EACvB,WAAmB;AAAA,EACnB,SAAiB;AAAA,EACjB,cAAsB;AAAA,EACtB;AAAA,EACA;AAAA,EACA;AAAA,EAET,YAAY,QAAqB;AAC/B,SAAK,SAAS;AACd,UAAM,KAAK,IAAI,aAAa,MAAM;AAClC,SAAK,WAAW,IAAI,cAAc,EAAE,cAAc,GAAG,CAAC;AACtD,SAAK,QAAQ,IAAI,mBAAmB,EAAE,KAAK,MAAO,CAAC;AAAA,EACrD;AAAA,EAEA,OAAsB;AACpB,WAAO,QAAQ,QAAQ;AAAA,EACzB;AAAA,EAEA,QAAuB;AACrB,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,UAAU,KAAK,UAAU,GAAG,KAAK,KAAK;AAAA,EAC/C;AAAA,EAEA,QAAQ,GAAgC;AACtC,WAAO,aAAa,KAAK,UAAU,GAAG,KAAK,KAAK;AAAA,EAClD;AAAA,EAEA,KAAK,GAAgC;AACnC,WAAO,UAAU,KAAK,UAAU,GAAG,KAAK,KAAK;AAAA,EAC/C;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,iBAAiB,KAAK,UAAU,WAAW,KAAK,KAAK;AAAA,EAC9D;AAAA,EAEA,WAAwC;AACtC,WAAO,QAAQ,QAAQ;AAAA,MACrB,MAAM,KAAK;AAAA,MACX,QAAQ,mBAAkB,KAAK,MAAM;AAAA,IACvC,CAAC;AAAA,EACH;AAAA,EAEA,UAAU,QAA2C;AACnD,WAAO,QAAQ,QAAQ;AAAA,EACzB;AACF;","names":[]}
@@ -1,159 +0,0 @@
1
- // src/resource/mongodb/mongodb.ts
2
- import { mountKey, mountPrefixOf } from "@struktoai/mirage-core";
3
- import {
4
- MONGODB_COMMANDS,
5
- MONGODB_OPS,
6
- MONGODB_PROMPT,
7
- MongoDBAccessor,
8
- mongoRead,
9
- mongoReaddir,
10
- mongoStat,
11
- PathSpec,
12
- RAMIndexCacheStore,
13
- resolveMongoDBConfig,
14
- makeResolveGlob,
15
- ResourceName
16
- } from "@struktoai/mirage-core";
17
-
18
- // src/resource/mongodb/http_driver.ts
19
- var HttpMongoDriver = class {
20
- endpoint;
21
- fetchImpl;
22
- headers;
23
- constructor(options) {
24
- this.endpoint = options.endpoint;
25
- this.fetchImpl = options.fetchImpl ?? fetch.bind(globalThis);
26
- this.headers = options.headers ?? {};
27
- }
28
- async post(req) {
29
- const r = await this.fetchImpl(this.endpoint, {
30
- method: "POST",
31
- headers: { "Content-Type": "application/json", ...this.headers },
32
- body: JSON.stringify(req)
33
- });
34
- if (!r.ok) {
35
- const body = await r.text().catch(() => "");
36
- throw new Error(`mongo proxy ${req.op} \u2192 ${String(r.status)} ${body}`);
37
- }
38
- return await r.json();
39
- }
40
- listDatabases() {
41
- return this.post({ op: "listDatabases" });
42
- }
43
- listCollections(database, kind = null) {
44
- return this.post({ op: "listCollections", database, kind });
45
- }
46
- listCollectionsDetailed(database, filter = {}) {
47
- return this.post({
48
- op: "listCollectionsDetailed",
49
- database,
50
- nameFilter: filter
51
- });
52
- }
53
- async findDocuments(database, collection, filter = {}, options = {}) {
54
- return this.post({
55
- op: "findDocuments",
56
- database,
57
- collection,
58
- filter,
59
- options
60
- });
61
- }
62
- async *iterDocuments(database, collection, options = {}) {
63
- const docs = await this.post({
64
- op: "iterDocuments",
65
- database,
66
- collection,
67
- options
68
- });
69
- for (const d of docs) yield d;
70
- }
71
- iterInserts(_database, _collection) {
72
- return {
73
- next: () => Promise.reject(new Error("iterInserts (tail -f) is not supported by HttpMongoDriver")),
74
- [Symbol.asyncIterator]() {
75
- return this;
76
- }
77
- };
78
- }
79
- countDocuments(database, collection, filter = {}) {
80
- return this.post({ op: "countDocuments", database, collection, filter });
81
- }
82
- listIndexes(database, collection) {
83
- return this.post({
84
- op: "listIndexes",
85
- database,
86
- collection
87
- });
88
- }
89
- getIndexStats(database, collection) {
90
- return this.post({
91
- op: "getIndexStats",
92
- database,
93
- collection
94
- });
95
- }
96
- close() {
97
- return Promise.resolve();
98
- }
99
- };
100
-
101
- // src/resource/mongodb/mongodb.ts
102
- var resolveMongoGlob = makeResolveGlob(mongoReaddir);
103
- var MongoDBResource = class {
104
- kind = ResourceName.MONGODB;
105
- cachesReads = false;
106
- indexTtl = 0;
107
- prompt;
108
- config;
109
- driver;
110
- accessor;
111
- index;
112
- constructor(options) {
113
- const { config, prefix, driver, endpoint } = "config" in options ? options : { config: options, prefix: void 0, driver: void 0, endpoint: void 0 };
114
- this.config = resolveMongoDBConfig(config);
115
- this.driver = driver ?? new HttpMongoDriver({ endpoint: endpoint ?? this.config.uri });
116
- this.accessor = new MongoDBAccessor(this.driver, this.config);
117
- this.index = new RAMIndexCacheStore({ ttl: this.indexTtl });
118
- this.prompt = MONGODB_PROMPT.replace("{prefix}", prefix ?? "");
119
- }
120
- open() {
121
- return Promise.resolve();
122
- }
123
- async close() {
124
- await this.driver.close();
125
- }
126
- ops() {
127
- return MONGODB_OPS;
128
- }
129
- commands() {
130
- return MONGODB_COMMANDS;
131
- }
132
- readFile(p) {
133
- return mongoRead(this.accessor, p, this.index);
134
- }
135
- readdir(p) {
136
- return mongoReaddir(this.accessor, p, this.index);
137
- }
138
- stat(p) {
139
- return mongoStat(this.accessor, p, this.index);
140
- }
141
- glob(paths, prefix = "") {
142
- const effective = prefix !== "" ? paths.map(
143
- (p) => mountPrefixOf(p.virtual, p.resourcePath) !== "" ? p : new PathSpec({
144
- virtual: p.virtual,
145
- directory: p.directory,
146
- ...p.pattern !== null ? { pattern: p.pattern } : {},
147
- resolved: p.resolved,
148
- resourcePath: mountKey(p.virtual, prefix)
149
- })
150
- ) : paths;
151
- return resolveMongoGlob(this.accessor, effective, this.index);
152
- }
153
- };
154
-
155
- export {
156
- HttpMongoDriver,
157
- MongoDBResource
158
- };
159
- //# sourceMappingURL=chunk-KL2VFYUV.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/resource/mongodb/mongodb.ts","../src/resource/mongodb/http_driver.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 { mountKey, mountPrefixOf } from '@struktoai/mirage-core'\nimport {\n type FileStat,\n type IndexCacheStore,\n MONGODB_COMMANDS,\n MONGODB_OPS,\n MONGODB_PROMPT,\n MongoDBAccessor,\n type MongoDBConfig,\n type MongoDBConfigResolved,\n type MongoDriver,\n mongoRead,\n mongoReaddir,\n mongoStat,\n PathSpec,\n RAMIndexCacheStore,\n type RegisteredCommand,\n type RegisteredOp,\n type Resource,\n resolveMongoDBConfig,\n makeResolveGlob,\n ResourceName,\n} from '@struktoai/mirage-core'\nimport { HttpMongoDriver } from './http_driver.ts'\n\nconst resolveMongoGlob = makeResolveGlob(mongoReaddir)\n\nexport interface MongoDBResourceOptions {\n config: MongoDBConfig\n prefix?: string\n driver?: MongoDriver\n endpoint?: string\n}\n\nexport class MongoDBResource implements Resource {\n readonly kind: string = ResourceName.MONGODB\n readonly cachesReads: boolean = false\n readonly indexTtl: number = 0\n readonly prompt: string\n readonly config: MongoDBConfigResolved\n readonly driver: MongoDriver\n readonly accessor: MongoDBAccessor\n readonly index: IndexCacheStore\n\n constructor(options: MongoDBResourceOptions | MongoDBConfig) {\n const { config, prefix, driver, endpoint } =\n 'config' in options\n ? options\n : { config: options, prefix: undefined, driver: undefined, endpoint: undefined }\n this.config = resolveMongoDBConfig(config)\n this.driver = driver ?? new HttpMongoDriver({ endpoint: endpoint ?? this.config.uri })\n this.accessor = new MongoDBAccessor(this.driver, this.config)\n this.index = new RAMIndexCacheStore({ ttl: this.indexTtl })\n this.prompt = MONGODB_PROMPT.replace('{prefix}', prefix ?? '')\n }\n\n open(): Promise<void> {\n return Promise.resolve()\n }\n\n async close(): Promise<void> {\n await this.driver.close()\n }\n\n ops(): readonly RegisteredOp[] {\n return MONGODB_OPS\n }\n\n commands(): readonly RegisteredCommand[] {\n return MONGODB_COMMANDS\n }\n\n readFile(p: PathSpec): Promise<Uint8Array> {\n return mongoRead(this.accessor, p, this.index)\n }\n\n readdir(p: PathSpec): Promise<string[]> {\n return mongoReaddir(this.accessor, p, this.index)\n }\n\n stat(p: PathSpec): Promise<FileStat> {\n return mongoStat(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 resolveMongoGlob(this.accessor, effective, this.index)\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\nimport type {\n EntityKind,\n MongoCollectionSpec,\n MongoDriver,\n MongoFindOptions,\n MongoIndexAccess,\n MongoIterOptions,\n} from '@struktoai/mirage-core'\n\nexport interface HttpMongoDriverOptions {\n endpoint: string\n fetchImpl?: typeof fetch\n headers?: Record<string, string>\n}\n\ninterface MongoProxyRequest {\n op:\n | 'listDatabases'\n | 'listCollections'\n | 'listCollectionsDetailed'\n | 'findDocuments'\n | 'iterDocuments'\n | 'countDocuments'\n | 'listIndexes'\n | 'getIndexStats'\n database?: string\n collection?: string\n kind?: EntityKind | null\n nameFilter?: { name?: string }\n filter?: Record<string, unknown>\n options?: MongoFindOptions | MongoIterOptions\n}\n\nexport class HttpMongoDriver implements MongoDriver {\n readonly endpoint: string\n private readonly fetchImpl: typeof fetch\n private readonly headers: Record<string, string>\n\n constructor(options: HttpMongoDriverOptions) {\n this.endpoint = options.endpoint\n this.fetchImpl = options.fetchImpl ?? fetch.bind(globalThis)\n this.headers = options.headers ?? {}\n }\n\n private async post<T>(req: MongoProxyRequest): Promise<T> {\n const r = await this.fetchImpl(this.endpoint, {\n method: 'POST',\n headers: { 'Content-Type': 'application/json', ...this.headers },\n body: JSON.stringify(req),\n })\n if (!r.ok) {\n const body = await r.text().catch(() => '')\n throw new Error(`mongo proxy ${req.op} → ${String(r.status)} ${body}`)\n }\n return (await r.json()) as T\n }\n\n listDatabases(): Promise<string[]> {\n return this.post<string[]>({ op: 'listDatabases' })\n }\n\n listCollections(database: string, kind: EntityKind | null = null): Promise<string[]> {\n return this.post<string[]>({ op: 'listCollections', database, kind })\n }\n\n listCollectionsDetailed(\n database: string,\n filter: { name?: string } = {},\n ): Promise<MongoCollectionSpec[]> {\n return this.post<MongoCollectionSpec[]>({\n op: 'listCollectionsDetailed',\n database,\n nameFilter: filter,\n })\n }\n\n async findDocuments<T = Record<string, unknown>>(\n database: string,\n collection: string,\n filter: Record<string, unknown> = {},\n options: MongoFindOptions = {},\n ): Promise<T[]> {\n return this.post<T[]>({\n op: 'findDocuments',\n database,\n collection,\n filter,\n options,\n })\n }\n\n async *iterDocuments<T = Record<string, unknown>>(\n database: string,\n collection: string,\n options: MongoIterOptions = {},\n ): AsyncIterableIterator<T> {\n const docs = await this.post<T[]>({\n op: 'iterDocuments',\n database,\n collection,\n options,\n })\n for (const d of docs) yield d\n }\n\n iterInserts<T = Record<string, unknown>>(\n _database: string,\n _collection: string,\n ): AsyncIterableIterator<T> {\n return {\n next: () =>\n Promise.reject(new Error('iterInserts (tail -f) is not supported by HttpMongoDriver')),\n [Symbol.asyncIterator]() {\n return this\n },\n }\n }\n\n countDocuments(\n database: string,\n collection: string,\n filter: Record<string, unknown> = {},\n ): Promise<number> {\n return this.post<number>({ op: 'countDocuments', database, collection, filter })\n }\n\n listIndexes(database: string, collection: string): Promise<Record<string, unknown>[]> {\n return this.post<Record<string, unknown>[]>({\n op: 'listIndexes',\n database,\n collection,\n })\n }\n\n getIndexStats(database: string, collection: string): Promise<Record<string, MongoIndexAccess>> {\n return this.post<Record<string, MongoIndexAccess>>({\n op: 'getIndexStats',\n database,\n collection,\n })\n }\n\n close(): Promise<void> {\n return Promise.resolve()\n }\n}\n"],"mappings":"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","names":[]}
@@ -1,38 +0,0 @@
1
- // src/resource/box/config.ts
2
- import {
3
- normalizeFields,
4
- redactConfigWithSchema,
5
- secretStr,
6
- z
7
- } from "@struktoai/mirage-core";
8
- var BoxConfigSchema = z.object({
9
- endpoint: z.string().optional(),
10
- rootFolderId: z.string().optional(),
11
- contentSearch: z.boolean().optional(),
12
- clientId: z.string().optional(),
13
- clientSecret: secretStr().optional(),
14
- refreshToken: secretStr().optional(),
15
- accessToken: secretStr().optional()
16
- });
17
- function redactBoxConfig(config) {
18
- return redactConfigWithSchema(BoxConfigSchema, config);
19
- }
20
- function normalizeBoxConfig(input) {
21
- return normalizeFields(input, {
22
- rename: {
23
- root_folder_id: "rootFolderId",
24
- content_search: "contentSearch",
25
- client_id: "clientId",
26
- client_secret: "clientSecret",
27
- refresh_token: "refreshToken",
28
- access_token: "accessToken",
29
- developer_token: "accessToken"
30
- }
31
- });
32
- }
33
-
34
- export {
35
- redactBoxConfig,
36
- normalizeBoxConfig
37
- };
38
- //# sourceMappingURL=chunk-L64GRKOD.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/resource/box/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'\n\nexport interface BoxConfig {\n // API origin override (e.g. an integ fake). Defaults to api.box.com.\n endpoint?: string\n // Box folder id to mount as the workspace root instead of the account\n // root (\"0\"). Folder ids are stable across renames/moves and visible in\n // the Box web URL (box.com/folder/<id>), so a subfolder mount survives\n // reorganization that a path prefix would not.\n rootFolderId?: string\n // Opt in to grep/rg content-search push-down: route recursive literal\n // scans through Box search to narrow the file set before scanning locally.\n // Off by default because Box's search index lags recent writes.\n contentSearch?: boolean\n clientId?: string\n clientSecret?: string\n refreshToken?: string\n accessToken?: string\n refreshFn?: (\n refreshToken: string,\n ) => Promise<{ accessToken: string; refreshToken: string; expiresIn: number }>\n onRefreshTokenRotated?: (newRefreshToken: string) => void | Promise<void>\n}\n\nconst BoxConfigSchema = z.object({\n endpoint: z.string().optional(),\n rootFolderId: z.string().optional(),\n contentSearch: z.boolean().optional(),\n clientId: z.string().optional(),\n clientSecret: secretStr().optional(),\n refreshToken: secretStr().optional(),\n accessToken: secretStr().optional(),\n})\n\n// Only the redacted twin derives: the schema deliberately omits the\n// callbacks, which no snapshot can carry.\nexport type BoxConfigRedacted = RedactedConfig<\n ConfigOf<typeof BoxConfigSchema>,\n 'clientSecret' | 'refreshToken' | 'accessToken'\n>\n\nexport function redactBoxConfig(config: BoxConfig): BoxConfigRedacted {\n return redactConfigWithSchema(BoxConfigSchema, config) as unknown as BoxConfigRedacted\n}\n\nexport function normalizeBoxConfig(input: Record<string, unknown>): BoxConfig {\n return normalizeFields(input, {\n rename: {\n root_folder_id: 'rootFolderId',\n content_search: 'contentSearch',\n client_id: 'clientId',\n client_secret: 'clientSecret',\n refresh_token: 'refreshToken',\n access_token: 'accessToken',\n developer_token: 'accessToken',\n },\n }) as unknown as BoxConfig\n}\n"],"mappings":";AAcA;AAAA,EACE;AAAA,EACA;AAAA,EAGA;AAAA,EACA;AAAA,OACK;AAwBP,IAAM,kBAAkB,EAAE,OAAO;AAAA,EAC/B,UAAU,EAAE,OAAO,EAAE,SAAS;AAAA,EAC9B,cAAc,EAAE,OAAO,EAAE,SAAS;AAAA,EAClC,eAAe,EAAE,QAAQ,EAAE,SAAS;AAAA,EACpC,UAAU,EAAE,OAAO,EAAE,SAAS;AAAA,EAC9B,cAAc,UAAU,EAAE,SAAS;AAAA,EACnC,cAAc,UAAU,EAAE,SAAS;AAAA,EACnC,aAAa,UAAU,EAAE,SAAS;AACpC,CAAC;AASM,SAAS,gBAAgB,QAAsC;AACpE,SAAO,uBAAuB,iBAAiB,MAAM;AACvD;AAEO,SAAS,mBAAmB,OAA2C;AAC5E,SAAO,gBAAgB,OAAO;AAAA,IAC5B,QAAQ;AAAA,MACN,gBAAgB;AAAA,MAChB,gBAAgB;AAAA,MAChB,WAAW;AAAA,MACX,eAAe;AAAA,MACf,eAAe;AAAA,MACf,cAAc;AAAA,MACd,iBAAiB;AAAA,IACnB;AAAA,EACF,CAAC;AACH;","names":[]}
@@ -1,11 +0,0 @@
1
- // src/resource/gmail/config.ts
2
- import {
3
- normalizeGoogleConfig,
4
- redactGoogleConfig
5
- } from "@struktoai/mirage-core";
6
-
7
- export {
8
- normalizeGoogleConfig,
9
- redactGoogleConfig
10
- };
11
- //# sourceMappingURL=chunk-LPDLPRPS.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/resource/gmail/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 normalizeGmailConfig,\n redactGoogleConfig as redactGmailConfig,\n type GoogleConfig as GmailConfig,\n type GoogleConfigRedacted as GmailConfigRedacted,\n} from '@struktoai/mirage-core'\n"],"mappings":";AAcA;AAAA,EAC2B;AAAA,EACH;AAAA,OAGjB;","names":[]}
@@ -1,11 +0,0 @@
1
- // src/resource/gsheets/config.ts
2
- import {
3
- normalizeGoogleConfig,
4
- redactGoogleConfig
5
- } from "@struktoai/mirage-core";
6
-
7
- export {
8
- normalizeGoogleConfig,
9
- redactGoogleConfig
10
- };
11
- //# sourceMappingURL=chunk-M2UF2JHJ.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/resource/gsheets/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 normalizeGSheetsConfig,\n redactGoogleConfig as redactGSheetsConfig,\n type GoogleConfig as GSheetsConfig,\n type GoogleConfigRedacted as GSheetsConfigRedacted,\n} from '@struktoai/mirage-core'\n"],"mappings":";AAcA;AAAA,EAC2B;AAAA,EACH;AAAA,OAGjB;","names":[]}