@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.
- package/README.md +138 -80
- package/dist/accessor/opfs.d.ts +10 -0
- package/dist/accessor/opfs.d.ts.map +1 -0
- package/dist/accessor/opfs.js +25 -0
- package/dist/accessor/opfs.js.map +1 -0
- package/dist/commands/builtin/opfs/index.d.ts +3 -0
- package/dist/commands/builtin/opfs/index.d.ts.map +1 -0
- package/dist/commands/builtin/opfs/index.js +20 -0
- package/dist/commands/builtin/opfs/index.js.map +1 -0
- package/dist/commands/builtin/opfs/io.d.ts +4 -0
- package/dist/commands/builtin/opfs/io.d.ts.map +1 -0
- package/dist/commands/builtin/opfs/io.js +56 -0
- package/dist/commands/builtin/opfs/io.js.map +1 -0
- package/dist/core/opfs/append.d.ts +4 -0
- package/dist/core/opfs/append.d.ts.map +1 -0
- package/dist/core/opfs/append.js +38 -0
- package/dist/core/opfs/append.js.map +1 -0
- package/dist/core/opfs/constants.d.ts +3 -0
- package/dist/core/opfs/constants.d.ts.map +1 -0
- package/dist/core/opfs/constants.js +16 -0
- package/dist/core/opfs/constants.js.map +1 -0
- package/dist/core/opfs/copy.d.ts +4 -0
- package/dist/core/opfs/copy.d.ts.map +1 -0
- package/dist/core/opfs/copy.js +40 -0
- package/dist/core/opfs/copy.js.map +1 -0
- package/dist/core/opfs/create.d.ts +4 -0
- package/dist/core/opfs/create.d.ts.map +1 -0
- package/dist/core/opfs/create.js +18 -0
- package/dist/core/opfs/create.js.map +1 -0
- package/dist/core/opfs/du/entries.d.ts +4 -0
- package/dist/core/opfs/du/entries.d.ts.map +1 -0
- package/dist/core/opfs/du/entries.js +56 -0
- package/dist/core/opfs/du/entries.js.map +1 -0
- package/dist/core/opfs/du/index.d.ts +3 -0
- package/dist/core/opfs/du/index.d.ts.map +1 -0
- package/dist/core/opfs/du/index.js +16 -0
- package/dist/core/opfs/du/index.js.map +1 -0
- package/dist/core/opfs/du/size.d.ts +4 -0
- package/dist/core/opfs/du/size.d.ts.map +1 -0
- package/dist/core/opfs/du/size.js +18 -0
- package/dist/core/opfs/du/size.js.map +1 -0
- package/dist/core/opfs/du/walk.d.ts +3 -0
- package/dist/core/opfs/du/walk.d.ts.map +1 -0
- package/dist/core/opfs/du/walk.js +98 -0
- package/dist/core/opfs/du/walk.js.map +1 -0
- package/dist/core/opfs/entry.d.ts +11 -0
- package/dist/core/opfs/entry.d.ts.map +1 -0
- package/dist/core/opfs/entry.js +42 -0
- package/dist/core/opfs/entry.js.map +1 -0
- package/dist/core/opfs/exists.d.ts +4 -0
- package/dist/core/opfs/exists.d.ts.map +1 -0
- package/dist/core/opfs/exists.js +64 -0
- package/dist/core/opfs/exists.js.map +1 -0
- package/dist/core/opfs/find.d.ts +21 -0
- package/dist/core/opfs/find.d.ts.map +1 -0
- package/dist/core/opfs/find.js +154 -0
- package/dist/core/opfs/find.js.map +1 -0
- package/dist/core/opfs/mkdir.d.ts +4 -0
- package/dist/core/opfs/mkdir.d.ts.map +1 -0
- package/dist/core/opfs/mkdir.js +64 -0
- package/dist/core/opfs/mkdir.js.map +1 -0
- package/dist/core/opfs/read.d.ts +22 -0
- package/dist/core/opfs/read.d.ts.map +1 -0
- package/dist/core/opfs/read.js +57 -0
- package/dist/core/opfs/read.js.map +1 -0
- package/dist/core/opfs/readdir.d.ts +4 -0
- package/dist/core/opfs/readdir.d.ts.map +1 -0
- package/dist/core/opfs/readdir.js +50 -0
- package/dist/core/opfs/readdir.js.map +1 -0
- package/dist/core/opfs/rename.d.ts +4 -0
- package/dist/core/opfs/rename.d.ts.map +1 -0
- package/dist/core/opfs/rename.js +97 -0
- package/dist/core/opfs/rename.js.map +1 -0
- package/dist/core/opfs/rm.d.ts +4 -0
- package/dist/core/opfs/rm.d.ts.map +1 -0
- package/dist/core/opfs/rm.js +40 -0
- package/dist/core/opfs/rm.js.map +1 -0
- package/dist/core/opfs/rmdir.d.ts +4 -0
- package/dist/core/opfs/rmdir.d.ts.map +1 -0
- package/dist/core/opfs/rmdir.js +48 -0
- package/dist/core/opfs/rmdir.js.map +1 -0
- package/dist/core/opfs/stat.d.ts +5 -0
- package/dist/core/opfs/stat.d.ts.map +1 -0
- package/dist/core/opfs/stat.js +88 -0
- package/dist/core/opfs/stat.js.map +1 -0
- package/dist/core/opfs/stream.d.ts +4 -0
- package/dist/core/opfs/stream.d.ts.map +1 -0
- package/dist/core/opfs/stream.js +44 -0
- package/dist/core/opfs/stream.js.map +1 -0
- package/dist/core/opfs/truncate.d.ts +4 -0
- package/dist/core/opfs/truncate.d.ts.map +1 -0
- package/dist/core/opfs/truncate.js +49 -0
- package/dist/core/opfs/truncate.js.map +1 -0
- package/dist/core/opfs/unlink.d.ts +4 -0
- package/dist/core/opfs/unlink.d.ts.map +1 -0
- package/dist/core/opfs/unlink.js +40 -0
- package/dist/core/opfs/unlink.js.map +1 -0
- package/dist/core/opfs/utils.d.ts +20 -0
- package/dist/core/opfs/utils.d.ts.map +1 -0
- package/dist/core/opfs/utils.js +149 -0
- package/dist/core/opfs/utils.js.map +1 -0
- package/dist/core/opfs/write.d.ts +4 -0
- package/dist/core/opfs/write.d.ts.map +1 -0
- package/dist/core/opfs/write.js +33 -0
- package/dist/core/opfs/write.js.map +1 -0
- package/dist/generated/wasm.d.ts +3 -0
- package/dist/generated/wasm.d.ts.map +1 -0
- package/dist/generated/wasm.js +4 -0
- package/dist/generated/wasm.js.map +1 -0
- package/dist/index.d.ts +118 -1246
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +130 -698
- package/dist/index.js.map +1 -1
- package/dist/ops/opfs/index.d.ts +3 -0
- package/dist/ops/opfs/index.d.ts.map +1 -0
- package/dist/ops/opfs/index.js +23 -0
- package/dist/ops/opfs/index.js.map +1 -0
- package/dist/resource/aliyun/aliyun.d.ts +8 -0
- package/dist/resource/aliyun/aliyun.d.ts.map +1 -0
- package/dist/resource/aliyun/aliyun.js +24 -0
- package/dist/resource/aliyun/aliyun.js.map +1 -0
- package/dist/resource/aliyun/config.d.ts +17 -0
- package/dist/resource/aliyun/config.d.ts.map +1 -0
- package/dist/resource/aliyun/config.js +24 -0
- package/dist/resource/aliyun/config.js.map +1 -0
- package/dist/resource/aliyun/prompt.d.ts +2 -0
- package/dist/resource/aliyun/prompt.d.ts.map +1 -0
- package/dist/resource/aliyun/prompt.js +19 -0
- package/dist/resource/aliyun/prompt.js.map +1 -0
- package/dist/resource/backblaze/backblaze.d.ts +8 -0
- package/dist/resource/backblaze/backblaze.d.ts.map +1 -0
- package/dist/resource/backblaze/backblaze.js +24 -0
- package/dist/resource/backblaze/backblaze.js.map +1 -0
- package/dist/resource/backblaze/config.d.ts +17 -0
- package/dist/resource/backblaze/config.d.ts.map +1 -0
- package/dist/resource/backblaze/config.js +24 -0
- package/dist/resource/backblaze/config.js.map +1 -0
- package/dist/resource/backblaze/prompt.d.ts +2 -0
- package/dist/resource/backblaze/prompt.d.ts.map +1 -0
- package/dist/resource/backblaze/prompt.js +19 -0
- package/dist/resource/backblaze/prompt.js.map +1 -0
- package/dist/resource/box/box.d.ts +34 -0
- package/dist/resource/box/box.d.ts.map +1 -0
- package/dist/resource/box/box.js +99 -0
- package/dist/resource/box/box.js.map +1 -0
- package/dist/resource/box/config.d.ts +41 -0
- package/dist/resource/box/config.d.ts.map +1 -0
- package/dist/resource/box/config.js +38 -0
- package/dist/resource/box/config.js.map +1 -0
- package/dist/resource/ceph/ceph.d.ts +8 -0
- package/dist/resource/ceph/ceph.d.ts.map +1 -0
- package/dist/resource/ceph/ceph.js +24 -0
- package/dist/resource/ceph/ceph.js.map +1 -0
- package/dist/resource/ceph/config.d.ts +16 -0
- package/dist/resource/ceph/config.d.ts.map +1 -0
- package/dist/resource/ceph/config.js +22 -0
- package/dist/resource/ceph/config.js.map +1 -0
- package/dist/resource/ceph/prompt.d.ts +2 -0
- package/dist/resource/ceph/prompt.d.ts.map +1 -0
- package/dist/resource/ceph/prompt.js +19 -0
- package/dist/resource/ceph/prompt.js.map +1 -0
- package/dist/resource/digitalocean/config.d.ts +17 -0
- package/dist/resource/digitalocean/config.d.ts.map +1 -0
- package/dist/resource/digitalocean/config.js +24 -0
- package/dist/resource/digitalocean/config.js.map +1 -0
- package/dist/resource/digitalocean/digitalocean.d.ts +8 -0
- package/dist/resource/digitalocean/digitalocean.d.ts.map +1 -0
- package/dist/resource/digitalocean/digitalocean.js +24 -0
- package/dist/resource/digitalocean/digitalocean.js.map +1 -0
- package/dist/resource/digitalocean/prompt.d.ts +2 -0
- package/dist/resource/digitalocean/prompt.d.ts.map +1 -0
- package/dist/resource/digitalocean/prompt.js +19 -0
- package/dist/resource/digitalocean/prompt.js.map +1 -0
- package/dist/resource/discord/config.d.ts +20 -0
- package/dist/resource/discord/config.d.ts.map +1 -0
- package/dist/resource/discord/config.js +32 -0
- package/dist/resource/discord/config.js.map +1 -0
- package/dist/resource/discord/discord.d.ts +33 -0
- package/dist/resource/discord/discord.d.ts.map +1 -0
- package/dist/resource/discord/discord.js +90 -0
- package/dist/resource/discord/discord.js.map +1 -0
- package/dist/resource/dropbox/config.d.ts +34 -0
- package/dist/resource/dropbox/config.d.ts.map +1 -0
- package/dist/resource/dropbox/config.js +31 -0
- package/dist/resource/dropbox/config.js.map +1 -0
- package/dist/resource/dropbox/dropbox.d.ts +34 -0
- package/dist/resource/dropbox/dropbox.d.ts.map +1 -0
- package/dist/resource/dropbox/dropbox.js +95 -0
- package/dist/resource/dropbox/dropbox.js.map +1 -0
- package/dist/resource/gcal/gcal.d.ts +32 -0
- package/dist/resource/gcal/gcal.d.ts.map +1 -0
- package/dist/resource/gcal/gcal.js +87 -0
- package/dist/resource/gcal/gcal.js.map +1 -0
- package/dist/resource/gcs/config.d.ts +16 -0
- package/dist/resource/gcs/config.d.ts.map +1 -0
- package/dist/resource/gcs/config.js +24 -0
- package/dist/resource/gcs/config.js.map +1 -0
- package/dist/resource/gcs/gcs.d.ts +8 -0
- package/dist/resource/gcs/gcs.d.ts.map +1 -0
- package/dist/resource/gcs/gcs.js +24 -0
- package/dist/resource/gcs/gcs.js.map +1 -0
- package/dist/resource/gcs/prompt.d.ts +2 -0
- package/dist/resource/gcs/prompt.d.ts.map +1 -0
- package/dist/resource/gcs/prompt.js +19 -0
- package/dist/resource/gcs/prompt.js.map +1 -0
- package/dist/resource/gdocs/gdocs.d.ts +32 -0
- package/dist/resource/gdocs/gdocs.d.ts.map +1 -0
- package/dist/resource/gdocs/gdocs.js +84 -0
- package/dist/resource/gdocs/gdocs.js.map +1 -0
- package/dist/resource/gdrive/gdrive.d.ts +34 -0
- package/dist/resource/gdrive/gdrive.d.ts.map +1 -0
- package/dist/resource/gdrive/gdrive.js +89 -0
- package/dist/resource/gdrive/gdrive.js.map +1 -0
- package/dist/resource/github/github.d.ts +38 -0
- package/dist/resource/github/github.d.ts.map +1 -0
- package/dist/resource/github/github.js +121 -0
- package/dist/resource/github/github.js.map +1 -0
- package/dist/resource/gmail/gmail.d.ts +33 -0
- package/dist/resource/gmail/gmail.d.ts.map +1 -0
- package/dist/resource/gmail/gmail.js +88 -0
- package/dist/resource/gmail/gmail.js.map +1 -0
- package/dist/resource/gsheets/gsheets.d.ts +32 -0
- package/dist/resource/gsheets/gsheets.d.ts.map +1 -0
- package/dist/resource/gsheets/gsheets.js +84 -0
- package/dist/resource/gsheets/gsheets.js.map +1 -0
- package/dist/resource/gslides/gslides.d.ts +32 -0
- package/dist/resource/gslides/gslides.d.ts.map +1 -0
- package/dist/resource/gslides/gslides.js +84 -0
- package/dist/resource/gslides/gslides.js.map +1 -0
- package/dist/resource/langfuse/config.d.ts +23 -0
- package/dist/resource/langfuse/config.d.ts.map +1 -0
- package/dist/resource/langfuse/config.js +36 -0
- package/dist/resource/langfuse/config.js.map +1 -0
- package/dist/resource/langfuse/langfuse.d.ts +31 -0
- package/dist/resource/langfuse/langfuse.d.ts.map +1 -0
- package/dist/resource/langfuse/langfuse.js +98 -0
- package/dist/resource/langfuse/langfuse.js.map +1 -0
- package/dist/resource/linear/linear.d.ts +33 -0
- package/dist/resource/linear/linear.d.ts.map +1 -0
- package/dist/resource/linear/linear.js +93 -0
- package/dist/resource/linear/linear.js.map +1 -0
- package/dist/resource/minio/config.d.ts +16 -0
- package/dist/resource/minio/config.d.ts.map +1 -0
- package/dist/resource/minio/config.js +22 -0
- package/dist/resource/minio/config.js.map +1 -0
- package/dist/resource/minio/minio.d.ts +8 -0
- package/dist/resource/minio/minio.d.ts.map +1 -0
- package/dist/resource/minio/minio.js +24 -0
- package/dist/resource/minio/minio.js.map +1 -0
- package/dist/resource/minio/prompt.d.ts +2 -0
- package/dist/resource/minio/prompt.d.ts.map +1 -0
- package/dist/resource/minio/prompt.js +19 -0
- package/dist/resource/minio/prompt.js.map +1 -0
- package/dist/resource/mongodb/http_driver.d.ts +27 -0
- package/dist/resource/mongodb/http_driver.d.ts.map +1 -0
- package/dist/resource/mongodb/http_driver.js +96 -0
- package/dist/resource/mongodb/http_driver.js.map +1 -0
- package/dist/resource/mongodb/mongodb.d.ts +41 -0
- package/dist/resource/mongodb/mongodb.d.ts.map +1 -0
- package/dist/resource/mongodb/mongodb.js +100 -0
- package/dist/resource/mongodb/mongodb.js.map +1 -0
- package/dist/resource/notion/config.d.ts +20 -0
- package/dist/resource/notion/config.d.ts.map +1 -0
- package/dist/resource/notion/config.js +32 -0
- package/dist/resource/notion/config.js.map +1 -0
- package/dist/resource/notion/notion.d.ts +32 -0
- package/dist/resource/notion/notion.d.ts.map +1 -0
- package/dist/resource/notion/notion.js +86 -0
- package/dist/resource/notion/notion.js.map +1 -0
- package/dist/resource/oci/config.d.ts +20 -0
- package/dist/resource/oci/config.d.ts.map +1 -0
- package/dist/resource/oci/config.js +30 -0
- package/dist/resource/oci/config.js.map +1 -0
- package/dist/resource/oci/oci.d.ts +8 -0
- package/dist/resource/oci/oci.d.ts.map +1 -0
- package/dist/resource/oci/oci.js +24 -0
- package/dist/resource/oci/oci.js.map +1 -0
- package/dist/resource/oci/prompt.d.ts +2 -0
- package/dist/resource/oci/prompt.d.ts.map +1 -0
- package/dist/resource/oci/prompt.js +19 -0
- package/dist/resource/oci/prompt.js.map +1 -0
- package/dist/resource/opfs/opfs.d.ts +57 -0
- package/dist/resource/opfs/opfs.d.ts.map +1 -0
- package/dist/resource/opfs/opfs.js +236 -0
- package/dist/resource/opfs/opfs.js.map +1 -0
- package/dist/resource/opfs/prompt.d.ts +2 -0
- package/dist/resource/opfs/prompt.d.ts.map +1 -0
- package/dist/resource/opfs/prompt.js +17 -0
- package/dist/resource/opfs/prompt.js.map +1 -0
- package/dist/resource/postgres/neon_driver.d.ts +8 -0
- package/dist/resource/postgres/neon_driver.d.ts.map +1 -0
- package/dist/resource/postgres/neon_driver.js +28 -0
- package/dist/resource/postgres/neon_driver.js.map +1 -0
- package/dist/resource/postgres/postgres.d.ts +40 -0
- package/dist/resource/postgres/postgres.d.ts.map +1 -0
- package/dist/resource/postgres/postgres.js +98 -0
- package/dist/resource/postgres/postgres.js.map +1 -0
- package/dist/resource/qingstor/config.d.ts +17 -0
- package/dist/resource/qingstor/config.d.ts.map +1 -0
- package/dist/resource/qingstor/config.js +24 -0
- package/dist/resource/qingstor/config.js.map +1 -0
- package/dist/resource/qingstor/prompt.d.ts +2 -0
- package/dist/resource/qingstor/prompt.d.ts.map +1 -0
- package/dist/resource/qingstor/prompt.js +19 -0
- package/dist/resource/qingstor/prompt.js.map +1 -0
- package/dist/resource/qingstor/qingstor.d.ts +8 -0
- package/dist/resource/qingstor/qingstor.d.ts.map +1 -0
- package/dist/resource/qingstor/qingstor.js +24 -0
- package/dist/resource/qingstor/qingstor.js.map +1 -0
- package/dist/resource/r2/config.d.ts +20 -0
- package/dist/resource/r2/config.d.ts.map +1 -0
- package/dist/resource/r2/config.js +26 -0
- package/dist/resource/r2/config.js.map +1 -0
- package/dist/resource/r2/prompt.d.ts +2 -0
- package/dist/resource/r2/prompt.d.ts.map +1 -0
- package/dist/resource/r2/prompt.js +19 -0
- package/dist/resource/r2/prompt.js.map +1 -0
- package/dist/resource/r2/r2.d.ts +8 -0
- package/dist/resource/r2/r2.d.ts.map +1 -0
- package/dist/resource/r2/r2.js +24 -0
- package/dist/resource/r2/r2.js.map +1 -0
- package/dist/resource/redis/redis.d.ts +17 -0
- package/dist/resource/redis/redis.d.ts.map +1 -0
- package/dist/resource/redis/redis.js +29 -0
- package/dist/resource/redis/redis.js.map +1 -0
- package/dist/resource/redis/store.d.ts +75 -0
- package/dist/resource/redis/store.d.ts.map +1 -0
- package/dist/resource/redis/store.js +378 -0
- package/dist/resource/redis/store.js.map +1 -0
- package/dist/resource/registry.d.ts +25 -0
- package/dist/resource/registry.d.ts.map +1 -0
- package/dist/resource/registry.js +274 -0
- package/dist/resource/registry.js.map +1 -0
- package/dist/resource/s3/config.d.ts +7 -0
- package/dist/resource/s3/config.d.ts.map +1 -0
- package/dist/resource/s3/config.js +26 -0
- package/dist/resource/s3/config.js.map +1 -0
- package/dist/resource/s3/s3.d.ts +53 -0
- package/dist/resource/s3/s3.d.ts.map +1 -0
- package/dist/resource/s3/s3.js +182 -0
- package/dist/resource/s3/s3.js.map +1 -0
- package/dist/resource/s3_alias.d.ts +113 -0
- package/dist/resource/s3_alias.d.ts.map +1 -0
- package/dist/resource/s3_alias.js +133 -0
- package/dist/resource/s3_alias.js.map +1 -0
- package/dist/resource/scaleway/config.d.ts +17 -0
- package/dist/resource/scaleway/config.d.ts.map +1 -0
- package/dist/resource/scaleway/config.js +24 -0
- package/dist/resource/scaleway/config.js.map +1 -0
- package/dist/resource/scaleway/prompt.d.ts +2 -0
- package/dist/resource/scaleway/prompt.d.ts.map +1 -0
- package/dist/resource/scaleway/prompt.js +19 -0
- package/dist/resource/scaleway/prompt.js.map +1 -0
- package/dist/resource/scaleway/scaleway.d.ts +8 -0
- package/dist/resource/scaleway/scaleway.d.ts.map +1 -0
- package/dist/resource/scaleway/scaleway.js +24 -0
- package/dist/resource/scaleway/scaleway.js.map +1 -0
- package/dist/resource/seaweedfs/config.d.ts +16 -0
- package/dist/resource/seaweedfs/config.d.ts.map +1 -0
- package/dist/resource/seaweedfs/config.js +22 -0
- package/dist/resource/seaweedfs/config.js.map +1 -0
- package/dist/resource/seaweedfs/prompt.d.ts +2 -0
- package/dist/resource/seaweedfs/prompt.d.ts.map +1 -0
- package/dist/resource/seaweedfs/prompt.js +19 -0
- package/dist/resource/seaweedfs/prompt.js.map +1 -0
- package/dist/resource/seaweedfs/seaweedfs.d.ts +8 -0
- package/dist/resource/seaweedfs/seaweedfs.d.ts.map +1 -0
- package/dist/resource/seaweedfs/seaweedfs.js +24 -0
- package/dist/resource/seaweedfs/seaweedfs.js.map +1 -0
- package/dist/resource/slack/config.d.ts +20 -0
- package/dist/resource/slack/config.d.ts.map +1 -0
- package/dist/resource/slack/config.js +32 -0
- package/dist/resource/slack/config.js.map +1 -0
- package/dist/resource/slack/slack.d.ts +33 -0
- package/dist/resource/slack/slack.d.ts.map +1 -0
- package/dist/resource/slack/slack.js +91 -0
- package/dist/resource/slack/slack.js.map +1 -0
- package/dist/resource/supabase/config.d.ts +20 -0
- package/dist/resource/supabase/config.d.ts.map +1 -0
- package/dist/resource/supabase/config.js +26 -0
- package/dist/resource/supabase/config.js.map +1 -0
- package/dist/resource/supabase/prompt.d.ts +2 -0
- package/dist/resource/supabase/prompt.d.ts.map +1 -0
- package/dist/resource/supabase/prompt.js +19 -0
- package/dist/resource/supabase/prompt.js.map +1 -0
- package/dist/resource/supabase/supabase.d.ts +8 -0
- package/dist/resource/supabase/supabase.d.ts.map +1 -0
- package/dist/resource/supabase/supabase.js +24 -0
- package/dist/resource/supabase/supabase.js.map +1 -0
- package/dist/resource/tencent/config.d.ts +17 -0
- package/dist/resource/tencent/config.d.ts.map +1 -0
- package/dist/resource/tencent/config.js +24 -0
- package/dist/resource/tencent/config.js.map +1 -0
- package/dist/resource/tencent/prompt.d.ts +2 -0
- package/dist/resource/tencent/prompt.d.ts.map +1 -0
- package/dist/resource/tencent/prompt.js +19 -0
- package/dist/resource/tencent/prompt.js.map +1 -0
- package/dist/resource/tencent/tencent.d.ts +8 -0
- package/dist/resource/tencent/tencent.d.ts.map +1 -0
- package/dist/resource/tencent/tencent.js +24 -0
- package/dist/resource/tencent/tencent.js.map +1 -0
- package/dist/resource/trello/config.d.ts +22 -0
- package/dist/resource/trello/config.d.ts.map +1 -0
- package/dist/resource/trello/config.js +35 -0
- package/dist/resource/trello/config.js.map +1 -0
- package/dist/resource/trello/trello.d.ts +32 -0
- package/dist/resource/trello/trello.d.ts.map +1 -0
- package/dist/resource/trello/trello.js +94 -0
- package/dist/resource/trello/trello.js.map +1 -0
- package/dist/resource/wasabi/config.d.ts +17 -0
- package/dist/resource/wasabi/config.d.ts.map +1 -0
- package/dist/resource/wasabi/config.js +29 -0
- package/dist/resource/wasabi/config.js.map +1 -0
- package/dist/resource/wasabi/prompt.d.ts +2 -0
- package/dist/resource/wasabi/prompt.d.ts.map +1 -0
- package/dist/resource/wasabi/prompt.js +19 -0
- package/dist/resource/wasabi/prompt.js.map +1 -0
- package/dist/resource/wasabi/wasabi.d.ts +8 -0
- package/dist/resource/wasabi/wasabi.d.ts.map +1 -0
- package/dist/resource/wasabi/wasabi.js +24 -0
- package/dist/resource/wasabi/wasabi.js.map +1 -0
- package/dist/test-utils.d.ts +37 -0
- package/dist/test-utils.d.ts.map +1 -0
- package/dist/test-utils.js +518 -0
- package/dist/test-utils.js.map +1 -0
- package/dist/workspace.d.ts +10 -0
- package/dist/workspace.d.ts.map +1 -0
- package/dist/workspace.js +62 -0
- package/dist/workspace.js.map +1 -0
- package/package.json +13 -6
- package/dist/aliyun-DR6KT3H6.js +0 -8
- package/dist/aliyun-DR6KT3H6.js.map +0 -1
- package/dist/backblaze-XCLZXTES.js +0 -8
- package/dist/backblaze-XCLZXTES.js.map +0 -1
- package/dist/box-XBCSU3AA.js +0 -8
- package/dist/box-XBCSU3AA.js.map +0 -1
- package/dist/ceph-F5S2NMTO.js +0 -8
- package/dist/ceph-F5S2NMTO.js.map +0 -1
- package/dist/chunk-2J35WXX5.js +0 -28
- package/dist/chunk-2J35WXX5.js.map +0 -1
- package/dist/chunk-2WNXK742.js +0 -89
- package/dist/chunk-2WNXK742.js.map +0 -1
- package/dist/chunk-2WSKXBSV.js +0 -139
- package/dist/chunk-2WSKXBSV.js.map +0 -1
- package/dist/chunk-37WKCB2E.js +0 -95
- package/dist/chunk-37WKCB2E.js.map +0 -1
- package/dist/chunk-3IYCVC7W.js +0 -96
- package/dist/chunk-3IYCVC7W.js.map +0 -1
- package/dist/chunk-46HNNKFR.js +0 -95
- package/dist/chunk-46HNNKFR.js.map +0 -1
- package/dist/chunk-4IF4TGAI.js +0 -11
- package/dist/chunk-4IF4TGAI.js.map +0 -1
- package/dist/chunk-5OZJMTYW.js +0 -113
- package/dist/chunk-5OZJMTYW.js.map +0 -1
- package/dist/chunk-5UM6EBVW.js +0 -108
- package/dist/chunk-5UM6EBVW.js.map +0 -1
- package/dist/chunk-6HRSCX2U.js +0 -98
- package/dist/chunk-6HRSCX2U.js.map +0 -1
- package/dist/chunk-7HWQAYXR.js +0 -85
- package/dist/chunk-7HWQAYXR.js.map +0 -1
- package/dist/chunk-AUZNQ7EI.js +0 -85
- package/dist/chunk-AUZNQ7EI.js.map +0 -1
- package/dist/chunk-BGA2F226.js +0 -182
- package/dist/chunk-BGA2F226.js.map +0 -1
- package/dist/chunk-BV372CUO.js +0 -90
- package/dist/chunk-BV372CUO.js.map +0 -1
- package/dist/chunk-C4THTILY.js +0 -95
- package/dist/chunk-C4THTILY.js.map +0 -1
- package/dist/chunk-D4MEOKNQ.js +0 -95
- package/dist/chunk-D4MEOKNQ.js.map +0 -1
- package/dist/chunk-D4RAMWYH.js +0 -88
- package/dist/chunk-D4RAMWYH.js.map +0 -1
- package/dist/chunk-EHIT6WCY.js +0 -95
- package/dist/chunk-EHIT6WCY.js.map +0 -1
- package/dist/chunk-EN6TZYT2.js +0 -95
- package/dist/chunk-EN6TZYT2.js.map +0 -1
- package/dist/chunk-FTDVV7EQ.js +0 -85
- package/dist/chunk-FTDVV7EQ.js.map +0 -1
- package/dist/chunk-G67Q2Z6I.js +0 -95
- package/dist/chunk-G67Q2Z6I.js.map +0 -1
- package/dist/chunk-GM2QMJAY.js +0 -85
- package/dist/chunk-GM2QMJAY.js.map +0 -1
- package/dist/chunk-HRWLHJX2.js +0 -84
- package/dist/chunk-HRWLHJX2.js.map +0 -1
- package/dist/chunk-INEXV2PN.js +0 -91
- package/dist/chunk-INEXV2PN.js.map +0 -1
- package/dist/chunk-IZMKMD3O.js +0 -11
- package/dist/chunk-IZMKMD3O.js.map +0 -1
- package/dist/chunk-JUVMJ5GI.js +0 -85
- package/dist/chunk-JUVMJ5GI.js.map +0 -1
- package/dist/chunk-KL2VFYUV.js +0 -159
- package/dist/chunk-KL2VFYUV.js.map +0 -1
- package/dist/chunk-L64GRKOD.js +0 -38
- package/dist/chunk-L64GRKOD.js.map +0 -1
- package/dist/chunk-LPDLPRPS.js +0 -11
- package/dist/chunk-LPDLPRPS.js.map +0 -1
- package/dist/chunk-M2UF2JHJ.js +0 -11
- package/dist/chunk-M2UF2JHJ.js.map +0 -1
- package/dist/chunk-NVHPJ5CV.js +0 -109
- package/dist/chunk-NVHPJ5CV.js.map +0 -1
- package/dist/chunk-OSTDTTWI.js +0 -35
- package/dist/chunk-OSTDTTWI.js.map +0 -1
- package/dist/chunk-PQCRGTSA.js +0 -85
- package/dist/chunk-PQCRGTSA.js.map +0 -1
- package/dist/chunk-QE7QNA45.js +0 -114
- package/dist/chunk-QE7QNA45.js.map +0 -1
- package/dist/chunk-QG2NUNCY.js +0 -95
- package/dist/chunk-QG2NUNCY.js.map +0 -1
- package/dist/chunk-UFHBDBZD.js +0 -1212
- package/dist/chunk-UFHBDBZD.js.map +0 -1
- package/dist/chunk-UY22T4AC.js +0 -112
- package/dist/chunk-UY22T4AC.js.map +0 -1
- package/dist/chunk-XJBC3OYX.js +0 -11
- package/dist/chunk-XJBC3OYX.js.map +0 -1
- package/dist/chunk-Y6DYUK6J.js +0 -85
- package/dist/chunk-Y6DYUK6J.js.map +0 -1
- package/dist/chunk-YOCTIHQZ.js +0 -89
- package/dist/chunk-YOCTIHQZ.js.map +0 -1
- package/dist/chunk-ZDJPUXYH.js +0 -101
- package/dist/chunk-ZDJPUXYH.js.map +0 -1
- package/dist/chunk-ZKCOSE3R.js +0 -90
- package/dist/chunk-ZKCOSE3R.js.map +0 -1
- package/dist/chunk-ZTHVEXIV.js +0 -11
- package/dist/chunk-ZTHVEXIV.js.map +0 -1
- package/dist/config-2Y6LZKLV.js +0 -9
- package/dist/config-2Y6LZKLV.js.map +0 -1
- package/dist/config-4GSOMUMF.js +0 -9
- package/dist/config-4GSOMUMF.js.map +0 -1
- package/dist/config-5YBUWFUP.js +0 -9
- package/dist/config-5YBUWFUP.js.map +0 -1
- package/dist/config-DE5OZ4I7.js +0 -9
- package/dist/config-DE5OZ4I7.js.map +0 -1
- package/dist/config-ELDOFRJW.js +0 -9
- package/dist/config-ELDOFRJW.js.map +0 -1
- package/dist/config-FPM3LAW7.js +0 -9
- package/dist/config-FPM3LAW7.js.map +0 -1
- package/dist/config-JY557MA6.js +0 -9
- package/dist/config-JY557MA6.js.map +0 -1
- package/dist/config-UU27ALAA.js +0 -9
- package/dist/config-UU27ALAA.js.map +0 -1
- package/dist/config-WRACCRPN.js +0 -9
- package/dist/config-WRACCRPN.js.map +0 -1
- package/dist/digitalocean-QDHTRS2W.js +0 -8
- package/dist/digitalocean-QDHTRS2W.js.map +0 -1
- package/dist/discord-ERUI7OAQ.js +0 -7
- package/dist/discord-ERUI7OAQ.js.map +0 -1
- package/dist/dropbox-3U6D4HLE.js +0 -8
- package/dist/dropbox-3U6D4HLE.js.map +0 -1
- package/dist/gcal-MTBSDG34.js +0 -8
- package/dist/gcal-MTBSDG34.js.map +0 -1
- package/dist/gcs-KNGRBBET.js +0 -8
- package/dist/gcs-KNGRBBET.js.map +0 -1
- package/dist/gdocs-RUIOIRKP.js +0 -8
- package/dist/gdocs-RUIOIRKP.js.map +0 -1
- package/dist/gdrive-5JB7ZKEP.js +0 -8
- package/dist/gdrive-5JB7ZKEP.js.map +0 -1
- package/dist/github-CIXBFBVO.js +0 -7
- package/dist/github-CIXBFBVO.js.map +0 -1
- package/dist/github_ci-HR6YOYAO.js +0 -8
- package/dist/github_ci-HR6YOYAO.js.map +0 -1
- package/dist/gmail-JHGWTQU5.js +0 -8
- package/dist/gmail-JHGWTQU5.js.map +0 -1
- package/dist/gsheets-N54JO2RS.js +0 -8
- package/dist/gsheets-N54JO2RS.js.map +0 -1
- package/dist/gslides-B4VMNLMB.js +0 -8
- package/dist/gslides-B4VMNLMB.js.map +0 -1
- package/dist/langfuse-HEUJGDOC.js +0 -7
- package/dist/langfuse-HEUJGDOC.js.map +0 -1
- package/dist/linear-J4QQ3CA6.js +0 -7
- package/dist/linear-J4QQ3CA6.js.map +0 -1
- package/dist/minio-BXWHJ6K5.js +0 -8
- package/dist/minio-BXWHJ6K5.js.map +0 -1
- package/dist/mongodb-YZP643ZU.js +0 -7
- package/dist/mongodb-YZP643ZU.js.map +0 -1
- package/dist/notion-I5S5SRLO.js +0 -7
- package/dist/notion-I5S5SRLO.js.map +0 -1
- package/dist/oci-XOPKH4AE.js +0 -8
- package/dist/oci-XOPKH4AE.js.map +0 -1
- package/dist/opfs-36QO72Y5.js +0 -7
- package/dist/opfs-36QO72Y5.js.map +0 -1
- package/dist/postgres-HPOMN2AR.js +0 -7
- package/dist/postgres-HPOMN2AR.js.map +0 -1
- package/dist/qingstor-JKAHLK62.js +0 -8
- package/dist/qingstor-JKAHLK62.js.map +0 -1
- package/dist/r2-L3QXQ76M.js +0 -8
- package/dist/r2-L3QXQ76M.js.map +0 -1
- package/dist/s3-LRZJPGHK.js +0 -9
- package/dist/s3-LRZJPGHK.js.map +0 -1
- package/dist/scaleway-CGNDYNKS.js +0 -8
- package/dist/scaleway-CGNDYNKS.js.map +0 -1
- package/dist/seaweedfs-BSQWCBIR.js +0 -8
- package/dist/seaweedfs-BSQWCBIR.js.map +0 -1
- package/dist/slack-62ECSENR.js +0 -7
- package/dist/slack-62ECSENR.js.map +0 -1
- package/dist/supabase-J66NXWAF.js +0 -8
- package/dist/supabase-J66NXWAF.js.map +0 -1
- package/dist/tencent-AC667LV3.js +0 -8
- package/dist/tencent-AC667LV3.js.map +0 -1
- package/dist/trello-SUPG6VDF.js +0 -7
- package/dist/trello-SUPG6VDF.js.map +0 -1
- package/dist/wasabi-5KKPW6LH.js +0 -8
- package/dist/wasabi-5KKPW6LH.js.map +0 -1
package/dist/chunk-AUZNQ7EI.js
DELETED
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
redactGoogleConfig
|
|
3
|
-
} from "./chunk-4IF4TGAI.js";
|
|
4
|
-
|
|
5
|
-
// src/resource/gslides/gslides.ts
|
|
6
|
-
import { mountKey, mountPrefixOf } from "@struktoai/mirage-core";
|
|
7
|
-
import {
|
|
8
|
-
GSLIDES_COMMANDS,
|
|
9
|
-
GSLIDES_PROMPT,
|
|
10
|
-
GSLIDES_OPS,
|
|
11
|
-
GSLIDES_WRITE_PROMPT,
|
|
12
|
-
GSlidesAccessor,
|
|
13
|
-
PathSpec,
|
|
14
|
-
RAMIndexCacheStore,
|
|
15
|
-
ResourceName,
|
|
16
|
-
TokenManager,
|
|
17
|
-
gslidesRead,
|
|
18
|
-
gslidesReaddir,
|
|
19
|
-
makeResolveGlob,
|
|
20
|
-
gslidesStat
|
|
21
|
-
} from "@struktoai/mirage-core";
|
|
22
|
-
var gslidesResolveGlob = makeResolveGlob(gslidesReaddir);
|
|
23
|
-
var GSlidesResource = class {
|
|
24
|
-
kind = ResourceName.GSLIDES;
|
|
25
|
-
cachesReads = true;
|
|
26
|
-
indexTtl = 86400;
|
|
27
|
-
prompt = GSLIDES_PROMPT;
|
|
28
|
-
writePrompt = GSLIDES_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 GSlidesAccessor({ 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 GSLIDES_COMMANDS;
|
|
46
|
-
}
|
|
47
|
-
ops() {
|
|
48
|
-
return GSLIDES_OPS;
|
|
49
|
-
}
|
|
50
|
-
readFile(p) {
|
|
51
|
-
return gslidesRead(this.accessor, p, this.index);
|
|
52
|
-
}
|
|
53
|
-
readdir(p) {
|
|
54
|
-
return gslidesReaddir(this.accessor, p, this.index);
|
|
55
|
-
}
|
|
56
|
-
stat(p) {
|
|
57
|
-
return gslidesStat(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 gslidesResolveGlob(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
|
-
GSlidesResource
|
|
84
|
-
};
|
|
85
|
-
//# sourceMappingURL=chunk-AUZNQ7EI.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/resource/gslides/gslides.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 GSLIDES_COMMANDS,\n GSLIDES_PROMPT,\n GSLIDES_OPS,\n GSLIDES_WRITE_PROMPT,\n GSlidesAccessor,\n type IndexCacheStore,\n PathSpec,\n RAMIndexCacheStore,\n type RegisteredCommand,\n type RegisteredOp,\n type Resource,\n ResourceName,\n TokenManager,\n gslidesRead,\n gslidesReaddir,\n makeResolveGlob,\n gslidesStat,\n} from '@struktoai/mirage-core'\nimport { redactGSlidesConfig, type GSlidesConfig, type GSlidesConfigRedacted } from './config.ts'\n\nconst gslidesResolveGlob = makeResolveGlob(gslidesReaddir)\n\nexport interface GSlidesResourceState {\n type: string\n config: GSlidesConfigRedacted\n}\n\nexport class GSlidesResource implements Resource {\n readonly kind: string = ResourceName.GSLIDES\n readonly cachesReads: boolean = true\n readonly indexTtl: number = 86_400\n readonly prompt: string = GSLIDES_PROMPT\n readonly writePrompt: string = GSLIDES_WRITE_PROMPT\n readonly config: GSlidesConfig\n readonly accessor: GSlidesAccessor\n readonly index: IndexCacheStore\n\n constructor(config: GSlidesConfig) {\n this.config = config\n const tm = new TokenManager(config)\n this.accessor = new GSlidesAccessor({ 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 GSLIDES_COMMANDS\n }\n\n ops(): readonly RegisteredOp[] {\n return GSLIDES_OPS\n }\n\n readFile(p: PathSpec): Promise<Uint8Array> {\n return gslidesRead(this.accessor, p, this.index)\n }\n\n readdir(p: PathSpec): Promise<string[]> {\n return gslidesReaddir(this.accessor, p, this.index)\n }\n\n stat(p: PathSpec): Promise<FileStat> {\n return gslidesStat(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 gslidesResolveGlob(this.accessor, effective, this.index)\n }\n\n getState(): Promise<GSlidesResourceState> {\n return Promise.resolve({\n type: this.kind,\n config: redactGSlidesConfig(this.config),\n })\n }\n\n loadState(_state: GSlidesResourceState): 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,qBAAqB,gBAAgB,cAAc;AAOlD,IAAM,kBAAN,MAA0C;AAAA,EACtC,OAAe,aAAa;AAAA,EAC5B,cAAuB;AAAA,EACvB,WAAmB;AAAA,EACnB,SAAiB;AAAA,EACjB,cAAsB;AAAA,EACtB;AAAA,EACA;AAAA,EACA;AAAA,EAET,YAAY,QAAuB;AACjC,SAAK,SAAS;AACd,UAAM,KAAK,IAAI,aAAa,MAAM;AAClC,SAAK,WAAW,IAAI,gBAAgB,EAAE,cAAc,GAAG,CAAC;AACxD,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,YAAY,KAAK,UAAU,GAAG,KAAK,KAAK;AAAA,EACjD;AAAA,EAEA,QAAQ,GAAgC;AACtC,WAAO,eAAe,KAAK,UAAU,GAAG,KAAK,KAAK;AAAA,EACpD;AAAA,EAEA,KAAK,GAAgC;AACnC,WAAO,YAAY,KAAK,UAAU,GAAG,KAAK,KAAK;AAAA,EACjD;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,mBAAmB,KAAK,UAAU,WAAW,KAAK,KAAK;AAAA,EAChE;AAAA,EAEA,WAA0C;AACxC,WAAO,QAAQ,QAAQ;AAAA,MACrB,MAAM,KAAK;AAAA,MACX,QAAQ,mBAAoB,KAAK,MAAM;AAAA,IACzC,CAAC;AAAA,EACH;AAAA,EAEA,UAAU,QAA6C;AACrD,WAAO,QAAQ,QAAQ;AAAA,EACzB;AACF;","names":[]}
|
package/dist/chunk-BGA2F226.js
DELETED
|
@@ -1,182 +0,0 @@
|
|
|
1
|
-
// src/resource/s3/s3.ts
|
|
2
|
-
import { mountKey, mountPrefixOf } from "@struktoai/mirage-core";
|
|
3
|
-
import {
|
|
4
|
-
copy as copyCore,
|
|
5
|
-
create as createCore,
|
|
6
|
-
s3DuSize as duSizeCore,
|
|
7
|
-
s3DuEntries as duEntriesCore,
|
|
8
|
-
exists as existsCore,
|
|
9
|
-
find as findCore,
|
|
10
|
-
makeResolveGlob,
|
|
11
|
-
mkdir as mkdirCore,
|
|
12
|
-
PathSpec,
|
|
13
|
-
RAMIndexCacheStore,
|
|
14
|
-
rangeRead as rangeReadCore,
|
|
15
|
-
S3_COMMANDS,
|
|
16
|
-
read as readCore,
|
|
17
|
-
readdir as readdirCore,
|
|
18
|
-
rename as renameCore,
|
|
19
|
-
ResourceName,
|
|
20
|
-
S3_SCOPE_ERROR,
|
|
21
|
-
s3StorageId,
|
|
22
|
-
rmR as rmRCore,
|
|
23
|
-
rmdir as rmdirCore,
|
|
24
|
-
S3_OPS,
|
|
25
|
-
S3Accessor,
|
|
26
|
-
stat as statCore,
|
|
27
|
-
stream as streamCore,
|
|
28
|
-
truncate as truncateCore,
|
|
29
|
-
unlink as unlinkCore,
|
|
30
|
-
write as writeCore
|
|
31
|
-
} from "@struktoai/mirage-core";
|
|
32
|
-
|
|
33
|
-
// src/resource/s3/config.ts
|
|
34
|
-
import {
|
|
35
|
-
redactS3Config
|
|
36
|
-
} from "@struktoai/mirage-core";
|
|
37
|
-
|
|
38
|
-
// src/resource/s3/s3.ts
|
|
39
|
-
var globCore = makeResolveGlob(readdirCore, S3_SCOPE_ERROR);
|
|
40
|
-
var S3_BROWSER_PROMPT = `{prefix}
|
|
41
|
-
Remote S3 bucket accessed via presigned URLs (browser runtime).
|
|
42
|
-
Supports the full filesystem command set: ls/tree/cat/grep/find/du/cp/mv/rm/etc.
|
|
43
|
-
Listing operations require the presigner to sign LIST/COPY operations in
|
|
44
|
-
addition to GET/PUT/HEAD/DELETE \u2014 see S3BrowserPresignedUrlProvider docs.`;
|
|
45
|
-
var S3Resource = class {
|
|
46
|
-
supportsSnapshot = true;
|
|
47
|
-
kind = ResourceName.S3;
|
|
48
|
-
cachesReads = true;
|
|
49
|
-
// A HEAD carries ContentLength, so a size is always knowable without
|
|
50
|
-
// fetching. Every sibling browser resource says so; s3 was the one that
|
|
51
|
-
// did not, and its node twin has always declared it.
|
|
52
|
-
sizesAlwaysKnown = true;
|
|
53
|
-
indexTtl = 600;
|
|
54
|
-
prompt = S3_BROWSER_PROMPT;
|
|
55
|
-
config;
|
|
56
|
-
accessor;
|
|
57
|
-
index;
|
|
58
|
-
constructor(config) {
|
|
59
|
-
this.config = config;
|
|
60
|
-
this.accessor = new S3Accessor(this.config);
|
|
61
|
-
this.index = new RAMIndexCacheStore({ ttl: this.indexTtl });
|
|
62
|
-
}
|
|
63
|
-
// Without this, two mounts of one bucket at different prefixes are two
|
|
64
|
-
// storages, so `mv` between them copies an object over itself and then
|
|
65
|
-
// unlinks the source. Node has always declared it; the shared helper keeps
|
|
66
|
-
// the two runtimes from computing different identities for one bucket.
|
|
67
|
-
storageId() {
|
|
68
|
-
return s3StorageId(this.kind, this.config);
|
|
69
|
-
}
|
|
70
|
-
open() {
|
|
71
|
-
return Promise.resolve();
|
|
72
|
-
}
|
|
73
|
-
close() {
|
|
74
|
-
return Promise.resolve();
|
|
75
|
-
}
|
|
76
|
-
commands() {
|
|
77
|
-
return S3_COMMANDS;
|
|
78
|
-
}
|
|
79
|
-
ops() {
|
|
80
|
-
return S3_OPS;
|
|
81
|
-
}
|
|
82
|
-
streamPath(p) {
|
|
83
|
-
return streamCore(this.accessor, p);
|
|
84
|
-
}
|
|
85
|
-
readFile(p) {
|
|
86
|
-
return readCore(this.accessor, p);
|
|
87
|
-
}
|
|
88
|
-
writeFile(p, data) {
|
|
89
|
-
return writeCore(this.accessor, p, data);
|
|
90
|
-
}
|
|
91
|
-
async appendFile(p, data) {
|
|
92
|
-
let existing;
|
|
93
|
-
try {
|
|
94
|
-
existing = await readCore(this.accessor, p);
|
|
95
|
-
} catch (err) {
|
|
96
|
-
if (err?.code === "ENOENT") {
|
|
97
|
-
existing = new Uint8Array();
|
|
98
|
-
} else {
|
|
99
|
-
throw err;
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
const merged = new Uint8Array(existing.byteLength + data.byteLength);
|
|
103
|
-
merged.set(existing, 0);
|
|
104
|
-
merged.set(data, existing.byteLength);
|
|
105
|
-
await writeCore(this.accessor, p, merged);
|
|
106
|
-
}
|
|
107
|
-
readdir(p) {
|
|
108
|
-
return readdirCore(this.accessor, p, this.index);
|
|
109
|
-
}
|
|
110
|
-
stat(p) {
|
|
111
|
-
return statCore(this.accessor, p, this.index);
|
|
112
|
-
}
|
|
113
|
-
exists(p) {
|
|
114
|
-
return existsCore(this.accessor, p);
|
|
115
|
-
}
|
|
116
|
-
mkdir(p) {
|
|
117
|
-
return mkdirCore(this.accessor, p);
|
|
118
|
-
}
|
|
119
|
-
rmdir(p) {
|
|
120
|
-
return rmdirCore(this.accessor, p);
|
|
121
|
-
}
|
|
122
|
-
unlink(p) {
|
|
123
|
-
return unlinkCore(this.accessor, p);
|
|
124
|
-
}
|
|
125
|
-
rename(src, dst) {
|
|
126
|
-
return renameCore(this.accessor, src, dst);
|
|
127
|
-
}
|
|
128
|
-
truncate(p, length) {
|
|
129
|
-
return truncateCore(this.accessor, p, length);
|
|
130
|
-
}
|
|
131
|
-
copy(src, dst) {
|
|
132
|
-
return copyCore(this.accessor, src, dst);
|
|
133
|
-
}
|
|
134
|
-
rmR(p) {
|
|
135
|
-
return rmRCore(this.accessor, p);
|
|
136
|
-
}
|
|
137
|
-
du(p) {
|
|
138
|
-
return duSizeCore(this.accessor, p);
|
|
139
|
-
}
|
|
140
|
-
find(p, options = {}) {
|
|
141
|
-
return findCore(this.accessor, p, options);
|
|
142
|
-
}
|
|
143
|
-
glob(paths, prefix = "") {
|
|
144
|
-
const effective = prefix ? paths.map(
|
|
145
|
-
(p) => mountPrefixOf(p.virtual, p.resourcePath) ? p : new PathSpec({
|
|
146
|
-
virtual: p.virtual,
|
|
147
|
-
directory: p.directory,
|
|
148
|
-
...p.pattern !== null ? { pattern: p.pattern } : {},
|
|
149
|
-
resolved: p.resolved,
|
|
150
|
-
resourcePath: mountKey(p.virtual, prefix)
|
|
151
|
-
})
|
|
152
|
-
) : paths;
|
|
153
|
-
return globCore(this.accessor, effective, this.index);
|
|
154
|
-
}
|
|
155
|
-
getState() {
|
|
156
|
-
return Promise.resolve({
|
|
157
|
-
type: this.kind,
|
|
158
|
-
config: redactS3Config(this.config)
|
|
159
|
-
});
|
|
160
|
-
}
|
|
161
|
-
loadState(_state) {
|
|
162
|
-
return Promise.resolve();
|
|
163
|
-
}
|
|
164
|
-
// Ignored — duEntries is not yet on the public Resource interface, but keeping
|
|
165
|
-
// it around matches the node-side S3Resource.opsMap hook for completeness.
|
|
166
|
-
_duEntries(p) {
|
|
167
|
-
return duEntriesCore(this.accessor, p);
|
|
168
|
-
}
|
|
169
|
-
_rangeRead(p, offset, size) {
|
|
170
|
-
return rangeReadCore(this.accessor, p, offset, size);
|
|
171
|
-
}
|
|
172
|
-
_create(p) {
|
|
173
|
-
return createCore(this.accessor, p);
|
|
174
|
-
}
|
|
175
|
-
};
|
|
176
|
-
|
|
177
|
-
export {
|
|
178
|
-
redactS3Config,
|
|
179
|
-
S3_BROWSER_PROMPT,
|
|
180
|
-
S3Resource
|
|
181
|
-
};
|
|
182
|
-
//# sourceMappingURL=chunk-BGA2F226.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/resource/s3/s3.ts","../src/resource/s3/config.ts"],"sourcesContent":["// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nimport { mountKey, mountPrefixOf } from '@struktoai/mirage-core'\nimport {\n copy as copyCore,\n create as createCore,\n s3DuSize as duSizeCore,\n s3DuEntries as duEntriesCore,\n exists as existsCore,\n type FileStat,\n type FindOptions,\n find as findCore,\n type IndexCacheStore,\n makeResolveGlob,\n mkdir as mkdirCore,\n PathSpec,\n RAMIndexCacheStore,\n rangeRead as rangeReadCore,\n S3_COMMANDS,\n read as readCore,\n readdir as readdirCore,\n type RegisteredCommand,\n type RegisteredOp,\n rename as renameCore,\n type Resource,\n ResourceName,\n S3_SCOPE_ERROR,\n s3StorageId,\n rmR as rmRCore,\n rmdir as rmdirCore,\n S3_OPS,\n S3Accessor,\n stat as statCore,\n stream as streamCore,\n truncate as truncateCore,\n unlink as unlinkCore,\n write as writeCore,\n} from '@struktoai/mirage-core'\nimport { redactConfig, type S3Config, type S3ConfigRedacted } from './config.ts'\n\nconst globCore = makeResolveGlob(readdirCore, S3_SCOPE_ERROR)\n\nexport const S3_BROWSER_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 — see S3BrowserPresignedUrlProvider docs.`\n\nexport interface S3ResourceState {\n type: string\n config: S3ConfigRedacted\n}\n\nexport class S3Resource implements Resource {\n readonly supportsSnapshot: boolean = true\n readonly kind: string = ResourceName.S3\n readonly cachesReads: boolean = true\n // A HEAD carries ContentLength, so a size is always knowable without\n // fetching. Every sibling browser resource says so; s3 was the one that\n // did not, and its node twin has always declared it.\n readonly sizesAlwaysKnown: boolean = true\n readonly indexTtl: number = 600\n readonly prompt: string = S3_BROWSER_PROMPT\n readonly config: S3Config\n readonly accessor: S3Accessor\n readonly index: IndexCacheStore\n\n constructor(config: S3Config) {\n this.config = config\n this.accessor = new S3Accessor(this.config)\n this.index = new RAMIndexCacheStore({ ttl: this.indexTtl })\n }\n\n // Without this, two mounts of one bucket at different prefixes are two\n // storages, so `mv` between them copies an object over itself and then\n // unlinks the source. Node has always declared it; the shared helper keeps\n // the two runtimes from computing different identities for one bucket.\n storageId(): string {\n return s3StorageId(this.kind, this.config)\n }\n\n open(): Promise<void> {\n return Promise.resolve()\n }\n\n close(): Promise<void> {\n return Promise.resolve()\n }\n\n commands(): readonly RegisteredCommand[] {\n return S3_COMMANDS\n }\n\n ops(): readonly RegisteredOp[] {\n return S3_OPS\n }\n\n streamPath(p: PathSpec): AsyncIterable<Uint8Array> {\n return streamCore(this.accessor, p)\n }\n\n readFile(p: PathSpec): Promise<Uint8Array> {\n return readCore(this.accessor, p)\n }\n\n writeFile(p: PathSpec, data: Uint8Array): Promise<void> {\n return writeCore(this.accessor, p, data)\n }\n\n async appendFile(p: PathSpec, data: Uint8Array): Promise<void> {\n let existing: Uint8Array\n try {\n existing = await readCore(this.accessor, p)\n } catch (err) {\n if ((err as { code?: string } | null)?.code === 'ENOENT') {\n existing = new Uint8Array()\n } else {\n throw err\n }\n }\n const merged = new Uint8Array(existing.byteLength + data.byteLength)\n merged.set(existing, 0)\n merged.set(data, existing.byteLength)\n await writeCore(this.accessor, p, merged)\n }\n\n readdir(p: PathSpec): Promise<string[]> {\n return readdirCore(this.accessor, p, this.index)\n }\n\n stat(p: PathSpec): Promise<FileStat> {\n return statCore(this.accessor, p, this.index)\n }\n\n exists(p: PathSpec): Promise<boolean> {\n return existsCore(this.accessor, p)\n }\n\n mkdir(p: PathSpec): Promise<void> {\n return mkdirCore(this.accessor, p)\n }\n\n rmdir(p: PathSpec): Promise<void> {\n return rmdirCore(this.accessor, p)\n }\n\n unlink(p: PathSpec): Promise<void> {\n return unlinkCore(this.accessor, p)\n }\n\n rename(src: PathSpec, dst: PathSpec): Promise<void> {\n return renameCore(this.accessor, src, dst)\n }\n\n truncate(p: PathSpec, length: number): Promise<void> {\n return truncateCore(this.accessor, p, length)\n }\n\n copy(src: PathSpec, dst: PathSpec): Promise<void> {\n return copyCore(this.accessor, src, dst)\n }\n\n rmR(p: PathSpec): Promise<void> {\n return rmRCore(this.accessor, p)\n }\n\n du(p: PathSpec): Promise<number> {\n return duSizeCore(this.accessor, p)\n }\n\n find(p: PathSpec, options: FindOptions = {}): Promise<string[]> {\n return findCore(this.accessor, p, options)\n }\n\n glob(paths: readonly PathSpec[], prefix = ''): Promise<PathSpec[]> {\n const effective = 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 globCore(this.accessor, effective, this.index)\n }\n\n getState(): Promise<S3ResourceState> {\n return Promise.resolve({\n type: this.kind,\n config: redactConfig(this.config),\n })\n }\n\n loadState(_state: S3ResourceState): Promise<void> {\n return Promise.resolve()\n }\n\n // Ignored — duEntries is not yet on the public Resource interface, but keeping\n // it around matches the node-side S3Resource.opsMap hook for completeness.\n _duEntries(p: PathSpec): Promise<[[string, number][], number]> {\n return duEntriesCore(this.accessor, p)\n }\n\n _rangeRead(p: PathSpec, offset: number, size: number): Promise<Uint8Array> {\n return rangeReadCore(this.accessor, p, offset, size)\n }\n\n _create(p: PathSpec): Promise<void> {\n return createCore(this.accessor, p)\n }\n}\n","// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nexport {\n redactS3Config as redactConfig,\n type S3BrowserOperation,\n type S3BrowserPresignedUrlProvider,\n type S3BrowserSignOptions,\n type S3Config,\n type S3ConfigRedacted,\n} from '@struktoai/mirage-core'\n"],"mappings":";AAcA,SAAS,UAAU,qBAAqB;AACxC;AAAA,EACE,QAAQ;AAAA,EACR,UAAU;AAAA,EACV,YAAY;AAAA,EACZ,eAAe;AAAA,EACf,UAAU;AAAA,EAGV,QAAQ;AAAA,EAER;AAAA,EACA,SAAS;AAAA,EACT;AAAA,EACA;AAAA,EACA,aAAa;AAAA,EACb;AAAA,EACA,QAAQ;AAAA,EACR,WAAW;AAAA,EAGX,UAAU;AAAA,EAEV;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAO;AAAA,EACP,SAAS;AAAA,EACT;AAAA,EACA;AAAA,EACA,QAAQ;AAAA,EACR,UAAU;AAAA,EACV,YAAY;AAAA,EACZ,UAAU;AAAA,EACV,SAAS;AAAA,OACJ;;;ACnCP;AAAA,EACoB;AAAA,OAMb;;;AD+BP,IAAM,WAAW,gBAAgB,aAAa,cAAc;AAErD,IAAM,oBAAoB;AAAA;AAAA;AAAA;AAAA;AAW1B,IAAM,aAAN,MAAqC;AAAA,EACjC,mBAA4B;AAAA,EAC5B,OAAe,aAAa;AAAA,EAC5B,cAAuB;AAAA;AAAA;AAAA;AAAA,EAIvB,mBAA4B;AAAA,EAC5B,WAAmB;AAAA,EACnB,SAAiB;AAAA,EACjB;AAAA,EACA;AAAA,EACA;AAAA,EAET,YAAY,QAAkB;AAC5B,SAAK,SAAS;AACd,SAAK,WAAW,IAAI,WAAW,KAAK,MAAM;AAC1C,SAAK,QAAQ,IAAI,mBAAmB,EAAE,KAAK,KAAK,SAAS,CAAC;AAAA,EAC5D;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,YAAoB;AAClB,WAAO,YAAY,KAAK,MAAM,KAAK,MAAM;AAAA,EAC3C;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,WAAW,GAAwC;AACjD,WAAO,WAAW,KAAK,UAAU,CAAC;AAAA,EACpC;AAAA,EAEA,SAAS,GAAkC;AACzC,WAAO,SAAS,KAAK,UAAU,CAAC;AAAA,EAClC;AAAA,EAEA,UAAU,GAAa,MAAiC;AACtD,WAAO,UAAU,KAAK,UAAU,GAAG,IAAI;AAAA,EACzC;AAAA,EAEA,MAAM,WAAW,GAAa,MAAiC;AAC7D,QAAI;AACJ,QAAI;AACF,iBAAW,MAAM,SAAS,KAAK,UAAU,CAAC;AAAA,IAC5C,SAAS,KAAK;AACZ,UAAK,KAAkC,SAAS,UAAU;AACxD,mBAAW,IAAI,WAAW;AAAA,MAC5B,OAAO;AACL,cAAM;AAAA,MACR;AAAA,IACF;AACA,UAAM,SAAS,IAAI,WAAW,SAAS,aAAa,KAAK,UAAU;AACnE,WAAO,IAAI,UAAU,CAAC;AACtB,WAAO,IAAI,MAAM,SAAS,UAAU;AACpC,UAAM,UAAU,KAAK,UAAU,GAAG,MAAM;AAAA,EAC1C;AAAA,EAEA,QAAQ,GAAgC;AACtC,WAAO,YAAY,KAAK,UAAU,GAAG,KAAK,KAAK;AAAA,EACjD;AAAA,EAEA,KAAK,GAAgC;AACnC,WAAO,SAAS,KAAK,UAAU,GAAG,KAAK,KAAK;AAAA,EAC9C;AAAA,EAEA,OAAO,GAA+B;AACpC,WAAO,WAAW,KAAK,UAAU,CAAC;AAAA,EACpC;AAAA,EAEA,MAAM,GAA4B;AAChC,WAAO,UAAU,KAAK,UAAU,CAAC;AAAA,EACnC;AAAA,EAEA,MAAM,GAA4B;AAChC,WAAO,UAAU,KAAK,UAAU,CAAC;AAAA,EACnC;AAAA,EAEA,OAAO,GAA4B;AACjC,WAAO,WAAW,KAAK,UAAU,CAAC;AAAA,EACpC;AAAA,EAEA,OAAO,KAAe,KAA8B;AAClD,WAAO,WAAW,KAAK,UAAU,KAAK,GAAG;AAAA,EAC3C;AAAA,EAEA,SAAS,GAAa,QAA+B;AACnD,WAAO,aAAa,KAAK,UAAU,GAAG,MAAM;AAAA,EAC9C;AAAA,EAEA,KAAK,KAAe,KAA8B;AAChD,WAAO,SAAS,KAAK,UAAU,KAAK,GAAG;AAAA,EACzC;AAAA,EAEA,IAAI,GAA4B;AAC9B,WAAO,QAAQ,KAAK,UAAU,CAAC;AAAA,EACjC;AAAA,EAEA,GAAG,GAA8B;AAC/B,WAAO,WAAW,KAAK,UAAU,CAAC;AAAA,EACpC;AAAA,EAEA,KAAK,GAAa,UAAuB,CAAC,GAAsB;AAC9D,WAAO,SAAS,KAAK,UAAU,GAAG,OAAO;AAAA,EAC3C;AAAA,EAEA,KAAK,OAA4B,SAAS,IAAyB;AACjE,UAAM,YAAY,SACd,MAAM;AAAA,MAAI,CAAC,MACT,cAAc,EAAE,SAAS,EAAE,YAAY,IACnC,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;AACJ,WAAO,SAAS,KAAK,UAAU,WAAW,KAAK,KAAK;AAAA,EACtD;AAAA,EAEA,WAAqC;AACnC,WAAO,QAAQ,QAAQ;AAAA,MACrB,MAAM,KAAK;AAAA,MACX,QAAQ,eAAa,KAAK,MAAM;AAAA,IAClC,CAAC;AAAA,EACH;AAAA,EAEA,UAAU,QAAwC;AAChD,WAAO,QAAQ,QAAQ;AAAA,EACzB;AAAA;AAAA;AAAA,EAIA,WAAW,GAAoD;AAC7D,WAAO,cAAc,KAAK,UAAU,CAAC;AAAA,EACvC;AAAA,EAEA,WAAW,GAAa,QAAgB,MAAmC;AACzE,WAAO,cAAc,KAAK,UAAU,GAAG,QAAQ,IAAI;AAAA,EACrD;AAAA,EAEA,QAAQ,GAA4B;AAClC,WAAO,WAAW,KAAK,UAAU,CAAC;AAAA,EACpC;AACF;","names":[]}
|
package/dist/chunk-BV372CUO.js
DELETED
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
redactBoxConfig
|
|
3
|
-
} from "./chunk-L64GRKOD.js";
|
|
4
|
-
|
|
5
|
-
// src/resource/box/box.ts
|
|
6
|
-
import { mountKey, mountPrefixOf } from "@struktoai/mirage-core";
|
|
7
|
-
import {
|
|
8
|
-
BOX_COMMANDS,
|
|
9
|
-
BOX_PROMPT,
|
|
10
|
-
BOX_OPS,
|
|
11
|
-
BoxAccessor,
|
|
12
|
-
BoxTokenManager,
|
|
13
|
-
PathSpec,
|
|
14
|
-
RAMIndexCacheStore,
|
|
15
|
-
ResourceName,
|
|
16
|
-
boxRead,
|
|
17
|
-
boxReaddir,
|
|
18
|
-
makeResolveGlob,
|
|
19
|
-
boxStat
|
|
20
|
-
} from "@struktoai/mirage-core";
|
|
21
|
-
var boxResolveGlob = makeResolveGlob(boxReaddir);
|
|
22
|
-
var BoxResource = class {
|
|
23
|
-
kind = ResourceName.BOX;
|
|
24
|
-
cachesReads = true;
|
|
25
|
-
// Box item listings carry an exact byte `size` for every file (0
|
|
26
|
-
// included); sizeless weblinks are filtered out of listings.
|
|
27
|
-
sizesAlwaysKnown = true;
|
|
28
|
-
indexTtl = 86400;
|
|
29
|
-
prompt = BOX_PROMPT;
|
|
30
|
-
config;
|
|
31
|
-
accessor;
|
|
32
|
-
index;
|
|
33
|
-
constructor(config) {
|
|
34
|
-
this.config = config;
|
|
35
|
-
const tm = new BoxTokenManager(config);
|
|
36
|
-
this.accessor = new BoxAccessor({
|
|
37
|
-
tokenManager: tm,
|
|
38
|
-
...config.rootFolderId !== void 0 ? { rootFolderId: config.rootFolderId } : {},
|
|
39
|
-
...config.contentSearch !== void 0 ? { contentSearch: config.contentSearch } : {}
|
|
40
|
-
});
|
|
41
|
-
this.index = new RAMIndexCacheStore({ ttl: 86400 });
|
|
42
|
-
}
|
|
43
|
-
open() {
|
|
44
|
-
return Promise.resolve();
|
|
45
|
-
}
|
|
46
|
-
close() {
|
|
47
|
-
return Promise.resolve();
|
|
48
|
-
}
|
|
49
|
-
commands() {
|
|
50
|
-
return BOX_COMMANDS;
|
|
51
|
-
}
|
|
52
|
-
ops() {
|
|
53
|
-
return BOX_OPS;
|
|
54
|
-
}
|
|
55
|
-
readFile(p) {
|
|
56
|
-
return boxRead(this.accessor, p, this.index);
|
|
57
|
-
}
|
|
58
|
-
readdir(p) {
|
|
59
|
-
return boxReaddir(this.accessor, p, this.index);
|
|
60
|
-
}
|
|
61
|
-
stat(p) {
|
|
62
|
-
return boxStat(this.accessor, p, this.index);
|
|
63
|
-
}
|
|
64
|
-
glob(paths, prefix = "") {
|
|
65
|
-
const effective = prefix !== "" ? paths.map(
|
|
66
|
-
(p) => mountPrefixOf(p.virtual, p.resourcePath) !== "" ? p : new PathSpec({
|
|
67
|
-
virtual: p.virtual,
|
|
68
|
-
directory: p.directory,
|
|
69
|
-
...p.pattern !== null ? { pattern: p.pattern } : {},
|
|
70
|
-
resolved: p.resolved,
|
|
71
|
-
resourcePath: mountKey(p.virtual, prefix)
|
|
72
|
-
})
|
|
73
|
-
) : paths;
|
|
74
|
-
return boxResolveGlob(this.accessor, effective, this.index);
|
|
75
|
-
}
|
|
76
|
-
getState() {
|
|
77
|
-
return Promise.resolve({
|
|
78
|
-
type: this.kind,
|
|
79
|
-
config: redactBoxConfig(this.config)
|
|
80
|
-
});
|
|
81
|
-
}
|
|
82
|
-
loadState(_state) {
|
|
83
|
-
return Promise.resolve();
|
|
84
|
-
}
|
|
85
|
-
};
|
|
86
|
-
|
|
87
|
-
export {
|
|
88
|
-
BoxResource
|
|
89
|
-
};
|
|
90
|
-
//# sourceMappingURL=chunk-BV372CUO.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/resource/box/box.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 BOX_COMMANDS,\n BOX_PROMPT,\n BOX_OPS,\n BoxAccessor,\n BoxTokenManager,\n type FileStat,\n type IndexCacheStore,\n PathSpec,\n RAMIndexCacheStore,\n type RegisteredCommand,\n type RegisteredOp,\n type Resource,\n ResourceName,\n boxRead,\n boxReaddir,\n makeResolveGlob,\n boxStat,\n} from '@struktoai/mirage-core'\nimport { redactBoxConfig, type BoxConfig, type BoxConfigRedacted } from './config.ts'\n\nconst boxResolveGlob = makeResolveGlob(boxReaddir)\n\nexport interface BoxResourceState {\n type: string\n config: BoxConfigRedacted\n}\n\nexport class BoxResource implements Resource {\n readonly kind: string = ResourceName.BOX\n readonly cachesReads: boolean = true\n // Box item listings carry an exact byte `size` for every file (0\n // included); sizeless weblinks are filtered out of listings.\n readonly sizesAlwaysKnown: boolean = true\n readonly indexTtl: number = 86_400\n readonly prompt: string = BOX_PROMPT\n readonly config: BoxConfig\n readonly accessor: BoxAccessor\n readonly index: IndexCacheStore\n\n constructor(config: BoxConfig) {\n this.config = config\n // The whole config goes to the token manager, never a hand-picked\n // subset: a field added to BoxConfig would silently stop reaching it\n // (that is how gdrive lost apiBase and kept refreshing at the real\n // Google endpoint against a fake server).\n const tm = new BoxTokenManager(config)\n this.accessor = new BoxAccessor({\n tokenManager: tm,\n ...(config.rootFolderId !== undefined ? { rootFolderId: config.rootFolderId } : {}),\n ...(config.contentSearch !== undefined ? { contentSearch: config.contentSearch } : {}),\n })\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 BOX_COMMANDS\n }\n\n ops(): readonly RegisteredOp[] {\n return BOX_OPS\n }\n\n readFile(p: PathSpec): Promise<Uint8Array> {\n return boxRead(this.accessor, p, this.index)\n }\n\n readdir(p: PathSpec): Promise<string[]> {\n return boxReaddir(this.accessor, p, this.index)\n }\n\n stat(p: PathSpec): Promise<FileStat> {\n return boxStat(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 boxResolveGlob(this.accessor, effective, this.index)\n }\n\n getState(): Promise<BoxResourceState> {\n return Promise.resolve({\n type: this.kind,\n config: redactBoxConfig(this.config),\n })\n }\n\n loadState(_state: BoxResourceState): Promise<void> {\n return Promise.resolve()\n }\n}\n"],"mappings":";;;;;AAcA,SAAS,UAAU,qBAAqB;AACxC;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAGA;AAAA,EACA;AAAA,EAIA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAGP,IAAM,iBAAiB,gBAAgB,UAAU;AAO1C,IAAM,cAAN,MAAsC;AAAA,EAClC,OAAe,aAAa;AAAA,EAC5B,cAAuB;AAAA;AAAA;AAAA,EAGvB,mBAA4B;AAAA,EAC5B,WAAmB;AAAA,EACnB,SAAiB;AAAA,EACjB;AAAA,EACA;AAAA,EACA;AAAA,EAET,YAAY,QAAmB;AAC7B,SAAK,SAAS;AAKd,UAAM,KAAK,IAAI,gBAAgB,MAAM;AACrC,SAAK,WAAW,IAAI,YAAY;AAAA,MAC9B,cAAc;AAAA,MACd,GAAI,OAAO,iBAAiB,SAAY,EAAE,cAAc,OAAO,aAAa,IAAI,CAAC;AAAA,MACjF,GAAI,OAAO,kBAAkB,SAAY,EAAE,eAAe,OAAO,cAAc,IAAI,CAAC;AAAA,IACtF,CAAC;AACD,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,QAAQ,KAAK,UAAU,GAAG,KAAK,KAAK;AAAA,EAC7C;AAAA,EAEA,QAAQ,GAAgC;AACtC,WAAO,WAAW,KAAK,UAAU,GAAG,KAAK,KAAK;AAAA,EAChD;AAAA,EAEA,KAAK,GAAgC;AACnC,WAAO,QAAQ,KAAK,UAAU,GAAG,KAAK,KAAK;AAAA,EAC7C;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,eAAe,KAAK,UAAU,WAAW,KAAK,KAAK;AAAA,EAC5D;AAAA,EAEA,WAAsC;AACpC,WAAO,QAAQ,QAAQ;AAAA,MACrB,MAAM,KAAK;AAAA,MACX,QAAQ,gBAAgB,KAAK,MAAM;AAAA,IACrC,CAAC;AAAA,EACH;AAAA,EAEA,UAAU,QAAyC;AACjD,WAAO,QAAQ,QAAQ;AAAA,EACzB;AACF;","names":[]}
|
package/dist/chunk-C4THTILY.js
DELETED
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
S3Resource
|
|
3
|
-
} from "./chunk-BGA2F226.js";
|
|
4
|
-
|
|
5
|
-
// src/resource/oci/oci.ts
|
|
6
|
-
import {
|
|
7
|
-
remapCommandsResource,
|
|
8
|
-
remapOpsResource,
|
|
9
|
-
ResourceName
|
|
10
|
-
} from "@struktoai/mirage-core";
|
|
11
|
-
|
|
12
|
-
// src/resource/oci/config.ts
|
|
13
|
-
import {
|
|
14
|
-
redactConfigWithSchema,
|
|
15
|
-
secretSchema,
|
|
16
|
-
z
|
|
17
|
-
} from "@struktoai/mirage-core";
|
|
18
|
-
var OCIConfigSchema = z.object({
|
|
19
|
-
bucket: z.string(),
|
|
20
|
-
presignedUrlProvider: secretSchema(
|
|
21
|
-
z.custom((value) => typeof value === "function")
|
|
22
|
-
),
|
|
23
|
-
namespace: z.string().optional(),
|
|
24
|
-
region: z.string().optional(),
|
|
25
|
-
endpoint: z.string().optional(),
|
|
26
|
-
defaultContentType: z.string().optional(),
|
|
27
|
-
keyPrefix: z.string().optional()
|
|
28
|
-
});
|
|
29
|
-
function resolvedOciEndpoint(config) {
|
|
30
|
-
if (config.endpoint !== void 0 && config.endpoint !== "") return config.endpoint;
|
|
31
|
-
if (config.namespace !== void 0 && config.namespace !== "" && config.region !== void 0 && config.region !== "") {
|
|
32
|
-
return `https://${config.namespace}.compat.objectstorage.${config.region}.oci.customer-oci.com`;
|
|
33
|
-
}
|
|
34
|
-
return void 0;
|
|
35
|
-
}
|
|
36
|
-
function ociToS3Config(config) {
|
|
37
|
-
const endpoint = resolvedOciEndpoint(config);
|
|
38
|
-
return {
|
|
39
|
-
bucket: config.bucket,
|
|
40
|
-
presignedUrlProvider: config.presignedUrlProvider,
|
|
41
|
-
...config.region !== void 0 ? { region: config.region } : {},
|
|
42
|
-
...endpoint !== void 0 ? { endpoint } : {},
|
|
43
|
-
...config.defaultContentType !== void 0 ? { defaultContentType: config.defaultContentType } : {},
|
|
44
|
-
...config.keyPrefix !== void 0 ? { keyPrefix: config.keyPrefix } : {}
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
function redactOciConfig(config) {
|
|
48
|
-
return redactConfigWithSchema(OCIConfigSchema, config);
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
// src/resource/oci/prompt.ts
|
|
52
|
-
var OCI_BROWSER_PROMPT = `{prefix}
|
|
53
|
-
Remote Oracle Cloud Object Storage accessed via presigned URLs (browser runtime).
|
|
54
|
-
Supports the full filesystem command set: ls/tree/cat/grep/find/du/cp/mv/rm/etc.
|
|
55
|
-
Listing operations require the presigner to sign LIST/COPY operations in
|
|
56
|
-
addition to GET/PUT/HEAD/DELETE \u2014 see S3BrowserPresignedUrlProvider docs.`;
|
|
57
|
-
|
|
58
|
-
// src/resource/oci/oci.ts
|
|
59
|
-
var OCIResource = class extends S3Resource {
|
|
60
|
-
kind = ResourceName.OCI;
|
|
61
|
-
prompt = OCI_BROWSER_PROMPT;
|
|
62
|
-
ociConfig;
|
|
63
|
-
ociOps;
|
|
64
|
-
ociCommands;
|
|
65
|
-
constructor(config) {
|
|
66
|
-
super(ociToS3Config(config));
|
|
67
|
-
this.ociConfig = config;
|
|
68
|
-
this.ociOps = remapOpsResource(super.ops(), ResourceName.OCI);
|
|
69
|
-
this.ociCommands = remapCommandsResource(super.commands(), ResourceName.OCI);
|
|
70
|
-
}
|
|
71
|
-
ops() {
|
|
72
|
-
return this.ociOps;
|
|
73
|
-
}
|
|
74
|
-
commands() {
|
|
75
|
-
return this.ociCommands;
|
|
76
|
-
}
|
|
77
|
-
getState() {
|
|
78
|
-
return Promise.resolve({
|
|
79
|
-
type: this.kind,
|
|
80
|
-
config: redactOciConfig(this.ociConfig)
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
loadState(_state) {
|
|
84
|
-
return Promise.resolve();
|
|
85
|
-
}
|
|
86
|
-
};
|
|
87
|
-
|
|
88
|
-
export {
|
|
89
|
-
resolvedOciEndpoint,
|
|
90
|
-
ociToS3Config,
|
|
91
|
-
redactOciConfig,
|
|
92
|
-
OCI_BROWSER_PROMPT,
|
|
93
|
-
OCIResource
|
|
94
|
-
};
|
|
95
|
-
//# sourceMappingURL=chunk-C4THTILY.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/resource/oci/oci.ts","../src/resource/oci/config.ts","../src/resource/oci/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 { ociToS3Config, redactOciConfig, type OCIConfig, type OCIConfigRedacted } from './config.ts'\nimport { OCI_BROWSER_PROMPT } from './prompt.ts'\n\nexport interface OCIResourceState {\n type: string\n config: OCIConfigRedacted\n}\n\nexport class OCIResource extends S3Resource {\n override readonly kind: string = ResourceName.OCI\n override readonly prompt: string = OCI_BROWSER_PROMPT\n readonly ociConfig: OCIConfig\n private readonly ociOps: readonly RegisteredOp[]\n private readonly ociCommands: readonly RegisteredCommand[]\n\n constructor(config: OCIConfig) {\n super(ociToS3Config(config))\n this.ociConfig = config\n this.ociOps = remapOpsResource(super.ops(), ResourceName.OCI)\n this.ociCommands = remapCommandsResource(super.commands(), ResourceName.OCI)\n }\n\n override ops(): readonly RegisteredOp[] {\n return this.ociOps\n }\n\n override commands(): readonly RegisteredCommand[] {\n return this.ociCommands\n }\n\n override getState(): Promise<OCIResourceState> {\n return Promise.resolve({\n type: this.kind,\n config: redactOciConfig(this.ociConfig),\n })\n }\n\n override loadState(_state: OCIResourceState): 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 OCIConfigSchema = z.object({\n bucket: z.string(),\n presignedUrlProvider: secretSchema(\n z.custom<S3BrowserPresignedUrlProvider>((value) => typeof value === 'function'),\n ),\n namespace: z.string().optional(),\n region: z.string().optional(),\n endpoint: z.string().optional(),\n defaultContentType: z.string().optional(),\n keyPrefix: z.string().optional(),\n})\n\nexport type OCIConfig = ConfigOf<typeof OCIConfigSchema>\n\nexport type OCIConfigRedacted = RedactedConfig<OCIConfig, 'presignedUrlProvider'>\n\nexport function resolvedOciEndpoint(config: OCIConfig): string | undefined {\n if (config.endpoint !== undefined && config.endpoint !== '') return config.endpoint\n if (\n config.namespace !== undefined &&\n config.namespace !== '' &&\n config.region !== undefined &&\n config.region !== ''\n ) {\n return `https://${config.namespace}.compat.objectstorage.${config.region}.oci.customer-oci.com`\n }\n return undefined\n}\n\nexport function ociToS3Config(config: OCIConfig): S3Config {\n const endpoint = resolvedOciEndpoint(config)\n return {\n bucket: config.bucket,\n presignedUrlProvider: config.presignedUrlProvider,\n ...(config.region !== undefined ? { region: config.region } : {}),\n ...(endpoint !== undefined ? { endpoint } : {}),\n ...(config.defaultContentType !== undefined\n ? { defaultContentType: config.defaultContentType }\n : {}),\n ...(config.keyPrefix !== undefined ? { keyPrefix: config.keyPrefix } : {}),\n }\n}\n\nexport function redactOciConfig(config: OCIConfig): OCIConfigRedacted {\n return redactConfigWithSchema(OCIConfigSchema, config) as unknown as OCIConfigRedacted\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 OCI_BROWSER_PROMPT = `{prefix}\n Remote Oracle Cloud Object Storage 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,kBAAkB,EAAE,OAAO;AAAA,EAC/B,QAAQ,EAAE,OAAO;AAAA,EACjB,sBAAsB;AAAA,IACpB,EAAE,OAAsC,CAAC,UAAU,OAAO,UAAU,UAAU;AAAA,EAChF;AAAA,EACA,WAAW,EAAE,OAAO,EAAE,SAAS;AAAA,EAC/B,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,oBAAoB,QAAuC;AACzE,MAAI,OAAO,aAAa,UAAa,OAAO,aAAa,GAAI,QAAO,OAAO;AAC3E,MACE,OAAO,cAAc,UACrB,OAAO,cAAc,MACrB,OAAO,WAAW,UAClB,OAAO,WAAW,IAClB;AACA,WAAO,WAAW,OAAO,SAAS,yBAAyB,OAAO,MAAM;AAAA,EAC1E;AACA,SAAO;AACT;AAEO,SAAS,cAAc,QAA6B;AACzD,QAAM,WAAW,oBAAoB,MAAM;AAC3C,SAAO;AAAA,IACL,QAAQ,OAAO;AAAA,IACf,sBAAsB,OAAO;AAAA,IAC7B,GAAI,OAAO,WAAW,SAAY,EAAE,QAAQ,OAAO,OAAO,IAAI,CAAC;AAAA,IAC/D,GAAI,aAAa,SAAY,EAAE,SAAS,IAAI,CAAC;AAAA,IAC7C,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,gBAAgB,QAAsC;AACpE,SAAO,uBAAuB,iBAAiB,MAAM;AACvD;;;ACtDO,IAAM,qBAAqB;AAAA;AAAA;AAAA;AAAA;;;AFgB3B,IAAM,cAAN,cAA0B,WAAW;AAAA,EACxB,OAAe,aAAa;AAAA,EAC5B,SAAiB;AAAA,EAC1B;AAAA,EACQ;AAAA,EACA;AAAA,EAEjB,YAAY,QAAmB;AAC7B,UAAM,cAAc,MAAM,CAAC;AAC3B,SAAK,YAAY;AACjB,SAAK,SAAS,iBAAiB,MAAM,IAAI,GAAG,aAAa,GAAG;AAC5D,SAAK,cAAc,sBAAsB,MAAM,SAAS,GAAG,aAAa,GAAG;AAAA,EAC7E;AAAA,EAES,MAA+B;AACtC,WAAO,KAAK;AAAA,EACd;AAAA,EAES,WAAyC;AAChD,WAAO,KAAK;AAAA,EACd;AAAA,EAES,WAAsC;AAC7C,WAAO,QAAQ,QAAQ;AAAA,MACrB,MAAM,KAAK;AAAA,MACX,QAAQ,gBAAgB,KAAK,SAAS;AAAA,IACxC,CAAC;AAAA,EACH;AAAA,EAES,UAAU,QAAyC;AAC1D,WAAO,QAAQ,QAAQ;AAAA,EACzB;AACF;","names":[]}
|
package/dist/chunk-D4MEOKNQ.js
DELETED
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
S3Resource
|
|
3
|
-
} from "./chunk-BGA2F226.js";
|
|
4
|
-
|
|
5
|
-
// src/resource/scaleway/scaleway.ts
|
|
6
|
-
import {
|
|
7
|
-
remapCommandsResource,
|
|
8
|
-
remapOpsResource,
|
|
9
|
-
ResourceName
|
|
10
|
-
} from "@struktoai/mirage-core";
|
|
11
|
-
|
|
12
|
-
// src/resource/scaleway/config.ts
|
|
13
|
-
import {
|
|
14
|
-
redactConfigWithSchema,
|
|
15
|
-
secretSchema,
|
|
16
|
-
z
|
|
17
|
-
} from "@struktoai/mirage-core";
|
|
18
|
-
var ScalewayConfigSchema = 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 resolvedScalewayEndpoint(config) {
|
|
29
|
-
if (config.endpoint !== void 0 && config.endpoint !== "") return config.endpoint;
|
|
30
|
-
if (config.region !== void 0 && config.region !== "") {
|
|
31
|
-
const region = config.region;
|
|
32
|
-
return `https://s3.${region}.scw.cloud`;
|
|
33
|
-
}
|
|
34
|
-
return void 0;
|
|
35
|
-
}
|
|
36
|
-
function scalewayToS3Config(config) {
|
|
37
|
-
const endpoint = resolvedScalewayEndpoint(config);
|
|
38
|
-
return {
|
|
39
|
-
bucket: config.bucket,
|
|
40
|
-
presignedUrlProvider: config.presignedUrlProvider,
|
|
41
|
-
...config.region !== void 0 ? { region: config.region } : {},
|
|
42
|
-
...endpoint !== void 0 ? { endpoint } : {},
|
|
43
|
-
...config.defaultContentType !== void 0 ? { defaultContentType: config.defaultContentType } : {},
|
|
44
|
-
...config.keyPrefix !== void 0 ? { keyPrefix: config.keyPrefix } : {}
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
function redactScalewayConfig(config) {
|
|
48
|
-
return redactConfigWithSchema(ScalewayConfigSchema, config);
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
// src/resource/scaleway/prompt.ts
|
|
52
|
-
var SCALEWAY_BROWSER_PROMPT = `{prefix}
|
|
53
|
-
Remote Scaleway Object Storage bucket (S3-compatible) accessed via presigned URLs (browser runtime).
|
|
54
|
-
Supports the full filesystem command set: ls/tree/cat/grep/find/du/cp/mv/rm/etc.
|
|
55
|
-
Listing operations require the presigner to sign LIST/COPY operations in
|
|
56
|
-
addition to GET/PUT/HEAD/DELETE \u2014 see S3BrowserPresignedUrlProvider docs.`;
|
|
57
|
-
|
|
58
|
-
// src/resource/scaleway/scaleway.ts
|
|
59
|
-
var ScalewayResource = class extends S3Resource {
|
|
60
|
-
kind = ResourceName.SCALEWAY;
|
|
61
|
-
prompt = SCALEWAY_BROWSER_PROMPT;
|
|
62
|
-
scalewayConfig;
|
|
63
|
-
scalewayOps;
|
|
64
|
-
scalewayCommands;
|
|
65
|
-
constructor(config) {
|
|
66
|
-
super(scalewayToS3Config(config));
|
|
67
|
-
this.scalewayConfig = config;
|
|
68
|
-
this.scalewayOps = remapOpsResource(super.ops(), ResourceName.SCALEWAY);
|
|
69
|
-
this.scalewayCommands = remapCommandsResource(super.commands(), ResourceName.SCALEWAY);
|
|
70
|
-
}
|
|
71
|
-
ops() {
|
|
72
|
-
return this.scalewayOps;
|
|
73
|
-
}
|
|
74
|
-
commands() {
|
|
75
|
-
return this.scalewayCommands;
|
|
76
|
-
}
|
|
77
|
-
getState() {
|
|
78
|
-
return Promise.resolve({
|
|
79
|
-
type: this.kind,
|
|
80
|
-
config: redactScalewayConfig(this.scalewayConfig)
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
loadState(_state) {
|
|
84
|
-
return Promise.resolve();
|
|
85
|
-
}
|
|
86
|
-
};
|
|
87
|
-
|
|
88
|
-
export {
|
|
89
|
-
resolvedScalewayEndpoint,
|
|
90
|
-
scalewayToS3Config,
|
|
91
|
-
redactScalewayConfig,
|
|
92
|
-
SCALEWAY_BROWSER_PROMPT,
|
|
93
|
-
ScalewayResource
|
|
94
|
-
};
|
|
95
|
-
//# sourceMappingURL=chunk-D4MEOKNQ.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/resource/scaleway/scaleway.ts","../src/resource/scaleway/config.ts","../src/resource/scaleway/prompt.ts"],"sourcesContent":["// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nimport {\n remapCommandsResource,\n remapOpsResource,\n ResourceName,\n type RegisteredCommand,\n type RegisteredOp,\n} from '@struktoai/mirage-core'\nimport { S3Resource } from '../s3/s3.ts'\nimport {\n redactScalewayConfig,\n scalewayToS3Config,\n type ScalewayConfig,\n type ScalewayConfigRedacted,\n} from './config.ts'\nimport { SCALEWAY_BROWSER_PROMPT } from './prompt.ts'\n\nexport interface ScalewayResourceState {\n type: string\n config: ScalewayConfigRedacted\n}\n\nexport class ScalewayResource extends S3Resource {\n override readonly kind: string = ResourceName.SCALEWAY\n override readonly prompt: string = SCALEWAY_BROWSER_PROMPT\n readonly scalewayConfig: ScalewayConfig\n private readonly scalewayOps: readonly RegisteredOp[]\n private readonly scalewayCommands: readonly RegisteredCommand[]\n\n constructor(config: ScalewayConfig) {\n super(scalewayToS3Config(config))\n this.scalewayConfig = config\n this.scalewayOps = remapOpsResource(super.ops(), ResourceName.SCALEWAY)\n this.scalewayCommands = remapCommandsResource(super.commands(), ResourceName.SCALEWAY)\n }\n\n override ops(): readonly RegisteredOp[] {\n return this.scalewayOps\n }\n\n override commands(): readonly RegisteredCommand[] {\n return this.scalewayCommands\n }\n\n override getState(): Promise<ScalewayResourceState> {\n return Promise.resolve({\n type: this.kind,\n config: redactScalewayConfig(this.scalewayConfig),\n })\n }\n\n override loadState(_state: ScalewayResourceState): Promise<void> {\n return Promise.resolve()\n }\n}\n","// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\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 ScalewayConfigSchema = 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 ScalewayConfig = ConfigOf<typeof ScalewayConfigSchema>\n\nexport type ScalewayConfigRedacted = RedactedConfig<ScalewayConfig, 'presignedUrlProvider'>\n\nexport function resolvedScalewayEndpoint(config: ScalewayConfig): string | undefined {\n if (config.endpoint !== undefined && config.endpoint !== '') return config.endpoint\n if (config.region !== undefined && config.region !== '') {\n const region = config.region\n return `https://s3.${region}.scw.cloud`\n }\n return undefined\n}\n\nexport function scalewayToS3Config(config: ScalewayConfig): S3Config {\n const endpoint = resolvedScalewayEndpoint(config)\n return {\n bucket: config.bucket,\n presignedUrlProvider: config.presignedUrlProvider,\n ...(config.region !== undefined ? { region: config.region } : {}),\n ...(endpoint !== undefined ? { endpoint } : {}),\n ...(config.defaultContentType !== undefined\n ? { defaultContentType: config.defaultContentType }\n : {}),\n ...(config.keyPrefix !== undefined ? { keyPrefix: config.keyPrefix } : {}),\n }\n}\n\nexport function redactScalewayConfig(config: ScalewayConfig): ScalewayConfigRedacted {\n return redactConfigWithSchema(ScalewayConfigSchema, config) as unknown as ScalewayConfigRedacted\n}\n","// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nexport const SCALEWAY_BROWSER_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 — 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,uBAAuB,EAAE,OAAO;AAAA,EACpC,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,yBAAyB,QAA4C;AACnF,MAAI,OAAO,aAAa,UAAa,OAAO,aAAa,GAAI,QAAO,OAAO;AAC3E,MAAI,OAAO,WAAW,UAAa,OAAO,WAAW,IAAI;AACvD,UAAM,SAAS,OAAO;AACtB,WAAO,cAAc,MAAM;AAAA,EAC7B;AACA,SAAO;AACT;AAEO,SAAS,mBAAmB,QAAkC;AACnE,QAAM,WAAW,yBAAyB,MAAM;AAChD,SAAO;AAAA,IACL,QAAQ,OAAO;AAAA,IACf,sBAAsB,OAAO;AAAA,IAC7B,GAAI,OAAO,WAAW,SAAY,EAAE,QAAQ,OAAO,OAAO,IAAI,CAAC;AAAA,IAC/D,GAAI,aAAa,SAAY,EAAE,SAAS,IAAI,CAAC;AAAA,IAC7C,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,qBAAqB,QAAgD;AACnF,SAAO,uBAAuB,sBAAsB,MAAM;AAC5D;;;ACjDO,IAAM,0BAA0B;AAAA;AAAA;AAAA;AAAA;;;AFqBhC,IAAM,mBAAN,cAA+B,WAAW;AAAA,EAC7B,OAAe,aAAa;AAAA,EAC5B,SAAiB;AAAA,EAC1B;AAAA,EACQ;AAAA,EACA;AAAA,EAEjB,YAAY,QAAwB;AAClC,UAAM,mBAAmB,MAAM,CAAC;AAChC,SAAK,iBAAiB;AACtB,SAAK,cAAc,iBAAiB,MAAM,IAAI,GAAG,aAAa,QAAQ;AACtE,SAAK,mBAAmB,sBAAsB,MAAM,SAAS,GAAG,aAAa,QAAQ;AAAA,EACvF;AAAA,EAES,MAA+B;AACtC,WAAO,KAAK;AAAA,EACd;AAAA,EAES,WAAyC;AAChD,WAAO,KAAK;AAAA,EACd;AAAA,EAES,WAA2C;AAClD,WAAO,QAAQ,QAAQ;AAAA,MACrB,MAAM,KAAK;AAAA,MACX,QAAQ,qBAAqB,KAAK,cAAc;AAAA,IAClD,CAAC;AAAA,EACH;AAAA,EAES,UAAU,QAA8C;AAC/D,WAAO,QAAQ,QAAQ;AAAA,EACzB;AACF;","names":[]}
|