@struktoai/mirage-node 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 +137 -79
- package/dist/accessor/disk.d.ts +6 -0
- package/dist/accessor/disk.d.ts.map +1 -0
- package/dist/accessor/disk.js +22 -0
- package/dist/accessor/disk.js.map +1 -0
- package/dist/accessor/email.d.ts +11 -0
- package/dist/accessor/email.d.ts.map +1 -0
- package/dist/accessor/email.js +57 -0
- package/dist/accessor/email.js.map +1 -0
- package/dist/accessor/gridfs.d.ts +13 -0
- package/dist/accessor/gridfs.d.ts.map +1 -0
- package/dist/accessor/gridfs.js +48 -0
- package/dist/accessor/gridfs.js.map +1 -0
- package/dist/accessor/hf.d.ts +38 -0
- package/dist/accessor/hf.d.ts.map +1 -0
- package/dist/accessor/hf.js +101 -0
- package/dist/accessor/hf.js.map +1 -0
- package/dist/accessor/hf_hub.d.ts +80 -0
- package/dist/accessor/hf_hub.d.ts.map +1 -0
- package/dist/accessor/hf_hub.js +122 -0
- package/dist/accessor/hf_hub.js.map +1 -0
- package/dist/accessor/nextcloud.d.ts +12 -0
- package/dist/accessor/nextcloud.d.ts.map +1 -0
- package/dist/accessor/nextcloud.js +26 -0
- package/dist/accessor/nextcloud.js.map +1 -0
- package/dist/accessor/ssh.d.ts +14 -0
- package/dist/accessor/ssh.d.ts.map +1 -0
- package/dist/accessor/ssh.js +105 -0
- package/dist/accessor/ssh.js.map +1 -0
- package/dist/cache/file/add.lua +16 -0
- package/dist/cache/file/redis.d.ts +41 -0
- package/dist/cache/file/redis.d.ts.map +1 -0
- package/dist/cache/file/redis.js +191 -0
- package/dist/cache/file/redis.js.map +1 -0
- package/dist/commands/builtin/disk/index.d.ts +3 -0
- package/dist/commands/builtin/disk/index.d.ts.map +1 -0
- package/dist/commands/builtin/disk/index.js +20 -0
- package/dist/commands/builtin/disk/index.js.map +1 -0
- package/dist/commands/builtin/disk/io.d.ts +4 -0
- package/dist/commands/builtin/disk/io.d.ts.map +1 -0
- package/dist/commands/builtin/disk/io.js +57 -0
- package/dist/commands/builtin/disk/io.js.map +1 -0
- package/dist/commands/builtin/email/_provision.d.ts +7 -0
- package/dist/commands/builtin/email/_provision.d.ts.map +1 -0
- package/dist/commands/builtin/email/_provision.js +42 -0
- package/dist/commands/builtin/email/_provision.js.map +1 -0
- package/dist/commands/builtin/email/find.d.ts +2 -0
- package/dist/commands/builtin/email/find.d.ts.map +1 -0
- package/dist/commands/builtin/email/find.js +51 -0
- package/dist/commands/builtin/email/find.js.map +1 -0
- package/dist/commands/builtin/email/grep.d.ts +4 -0
- package/dist/commands/builtin/email/grep.d.ts.map +1 -0
- package/dist/commands/builtin/email/grep.js +108 -0
- package/dist/commands/builtin/email/grep.js.map +1 -0
- package/dist/commands/builtin/email/index.d.ts +3 -0
- package/dist/commands/builtin/email/index.d.ts.map +1 -0
- package/dist/commands/builtin/email/index.js +31 -0
- package/dist/commands/builtin/email/index.js.map +1 -0
- package/dist/commands/builtin/email/io.d.ts +4 -0
- package/dist/commands/builtin/email/io.d.ts.map +1 -0
- package/dist/commands/builtin/email/io.js +28 -0
- package/dist/commands/builtin/email/io.js.map +1 -0
- package/dist/commands/builtin/email/rg.d.ts +2 -0
- package/dist/commands/builtin/email/rg.d.ts.map +1 -0
- package/dist/commands/builtin/email/rg.js +93 -0
- package/dist/commands/builtin/email/rg.js.map +1 -0
- package/dist/commands/builtin/gridfs/index.d.ts +3 -0
- package/dist/commands/builtin/gridfs/index.d.ts.map +1 -0
- package/dist/commands/builtin/gridfs/index.js +24 -0
- package/dist/commands/builtin/gridfs/index.js.map +1 -0
- package/dist/commands/builtin/gridfs/io.d.ts +4 -0
- package/dist/commands/builtin/gridfs/io.d.ts.map +1 -0
- package/dist/commands/builtin/gridfs/io.js +54 -0
- package/dist/commands/builtin/gridfs/io.js.map +1 -0
- package/dist/commands/builtin/hf/find.d.ts +2 -0
- package/dist/commands/builtin/hf/find.d.ts.map +1 -0
- package/dist/commands/builtin/hf/find.js +31 -0
- package/dist/commands/builtin/hf/find.js.map +1 -0
- package/dist/commands/builtin/hf/index.d.ts +3 -0
- package/dist/commands/builtin/hf/index.d.ts.map +1 -0
- package/dist/commands/builtin/hf/index.js +25 -0
- package/dist/commands/builtin/hf/index.js.map +1 -0
- package/dist/commands/builtin/hf/io.d.ts +4 -0
- package/dist/commands/builtin/hf/io.d.ts.map +1 -0
- package/dist/commands/builtin/hf/io.js +44 -0
- package/dist/commands/builtin/hf/io.js.map +1 -0
- package/dist/commands/builtin/hf_hub/index.d.ts +4 -0
- package/dist/commands/builtin/hf_hub/index.d.ts.map +1 -0
- package/dist/commands/builtin/hf_hub/index.js +30 -0
- package/dist/commands/builtin/hf_hub/index.js.map +1 -0
- package/dist/commands/builtin/hf_hub/io.d.ts +4 -0
- package/dist/commands/builtin/hf_hub/io.d.ts.map +1 -0
- package/dist/commands/builtin/hf_hub/io.js +54 -0
- package/dist/commands/builtin/hf_hub/io.js.map +1 -0
- package/dist/commands/builtin/nextcloud/index.d.ts +3 -0
- package/dist/commands/builtin/nextcloud/index.d.ts.map +1 -0
- package/dist/commands/builtin/nextcloud/index.js +7 -0
- package/dist/commands/builtin/nextcloud/index.js.map +1 -0
- package/dist/commands/builtin/nextcloud/io.d.ts +4 -0
- package/dist/commands/builtin/nextcloud/io.d.ts.map +1 -0
- package/dist/commands/builtin/nextcloud/io.js +41 -0
- package/dist/commands/builtin/nextcloud/io.js.map +1 -0
- package/dist/commands/builtin/ssh/index.d.ts +3 -0
- package/dist/commands/builtin/ssh/index.d.ts.map +1 -0
- package/dist/commands/builtin/ssh/index.js +20 -0
- package/dist/commands/builtin/ssh/index.js.map +1 -0
- package/dist/commands/builtin/ssh/io.d.ts +4 -0
- package/dist/commands/builtin/ssh/io.d.ts.map +1 -0
- package/dist/commands/builtin/ssh/io.js +58 -0
- package/dist/commands/builtin/ssh/io.js.map +1 -0
- package/dist/commands/cli/builtin/hf/accessor.d.ts +37 -0
- package/dist/commands/cli/builtin/hf/accessor.d.ts.map +1 -0
- package/dist/commands/cli/builtin/hf/accessor.js +80 -0
- package/dist/commands/cli/builtin/hf/accessor.js.map +1 -0
- package/dist/commands/cli/builtin/hf/auth.d.ts +14 -0
- package/dist/commands/cli/builtin/hf/auth.d.ts.map +1 -0
- package/dist/commands/cli/builtin/hf/auth.js +77 -0
- package/dist/commands/cli/builtin/hf/auth.js.map +1 -0
- package/dist/commands/cli/builtin/hf/download.d.ts +46 -0
- package/dist/commands/cli/builtin/hf/download.d.ts.map +1 -0
- package/dist/commands/cli/builtin/hf/download.js +296 -0
- package/dist/commands/cli/builtin/hf/download.js.map +1 -0
- package/dist/commands/cli/builtin/hf/env.d.ts +12 -0
- package/dist/commands/cli/builtin/hf/env.d.ts.map +1 -0
- package/dist/commands/cli/builtin/hf/env.js +37 -0
- package/dist/commands/cli/builtin/hf/env.js.map +1 -0
- package/dist/commands/cli/builtin/hf/files.d.ts +11 -0
- package/dist/commands/cli/builtin/hf/files.d.ts.map +1 -0
- package/dist/commands/cli/builtin/hf/files.js +43 -0
- package/dist/commands/cli/builtin/hf/files.js.map +1 -0
- package/dist/commands/cli/builtin/hf/index.d.ts +3 -0
- package/dist/commands/cli/builtin/hf/index.d.ts.map +1 -0
- package/dist/commands/cli/builtin/hf/index.js +286 -0
- package/dist/commands/cli/builtin/hf/index.js.map +1 -0
- package/dist/commands/cli/builtin/hf/repo.d.ts +16 -0
- package/dist/commands/cli/builtin/hf/repo.d.ts.map +1 -0
- package/dist/commands/cli/builtin/hf/repo.js +97 -0
- package/dist/commands/cli/builtin/hf/repo.js.map +1 -0
- package/dist/commands/cli/builtin/hf/upload.d.ts +21 -0
- package/dist/commands/cli/builtin/hf/upload.d.ts.map +1 -0
- package/dist/commands/cli/builtin/hf/upload.js +178 -0
- package/dist/commands/cli/builtin/hf/upload.js.map +1 -0
- package/dist/commands/cli/builtin/himalaya/builder.d.ts +65 -0
- package/dist/commands/cli/builtin/himalaya/builder.d.ts.map +1 -0
- package/dist/commands/cli/builtin/himalaya/builder.js +197 -0
- package/dist/commands/cli/builtin/himalaya/builder.js.map +1 -0
- package/dist/commands/cli/builtin/himalaya/compose.d.ts +4 -0
- package/dist/commands/cli/builtin/himalaya/compose.d.ts.map +1 -0
- package/dist/commands/cli/builtin/himalaya/compose.js +19 -0
- package/dist/commands/cli/builtin/himalaya/compose.js.map +1 -0
- package/dist/commands/cli/builtin/himalaya/deliver.d.ts +49 -0
- package/dist/commands/cli/builtin/himalaya/deliver.d.ts.map +1 -0
- package/dist/commands/cli/builtin/himalaya/deliver.js +94 -0
- package/dist/commands/cli/builtin/himalaya/deliver.js.map +1 -0
- package/dist/commands/cli/builtin/himalaya/forward.d.ts +4 -0
- package/dist/commands/cli/builtin/himalaya/forward.d.ts.map +1 -0
- package/dist/commands/cli/builtin/himalaya/forward.js +37 -0
- package/dist/commands/cli/builtin/himalaya/forward.js.map +1 -0
- package/dist/commands/cli/builtin/himalaya/index.d.ts +3 -0
- package/dist/commands/cli/builtin/himalaya/index.d.ts.map +1 -0
- package/dist/commands/cli/builtin/himalaya/index.js +201 -0
- package/dist/commands/cli/builtin/himalaya/index.js.map +1 -0
- package/dist/commands/cli/builtin/himalaya/list.d.ts +5 -0
- package/dist/commands/cli/builtin/himalaya/list.d.ts.map +1 -0
- package/dist/commands/cli/builtin/himalaya/list.js +41 -0
- package/dist/commands/cli/builtin/himalaya/list.js.map +1 -0
- package/dist/commands/cli/builtin/himalaya/query.d.ts +38 -0
- package/dist/commands/cli/builtin/himalaya/query.d.ts.map +1 -0
- package/dist/commands/cli/builtin/himalaya/query.js +296 -0
- package/dist/commands/cli/builtin/himalaya/query.js.map +1 -0
- package/dist/commands/cli/builtin/himalaya/read.d.ts +4 -0
- package/dist/commands/cli/builtin/himalaya/read.d.ts.map +1 -0
- package/dist/commands/cli/builtin/himalaya/read.js +40 -0
- package/dist/commands/cli/builtin/himalaya/read.js.map +1 -0
- package/dist/commands/cli/builtin/himalaya/reply.d.ts +4 -0
- package/dist/commands/cli/builtin/himalaya/reply.d.ts.map +1 -0
- package/dist/commands/cli/builtin/himalaya/reply.js +37 -0
- package/dist/commands/cli/builtin/himalaya/reply.js.map +1 -0
- package/dist/commands/cli/builtin/himalaya/search.d.ts +4 -0
- package/dist/commands/cli/builtin/himalaya/search.d.ts.map +1 -0
- package/dist/commands/cli/builtin/himalaya/search.js +44 -0
- package/dist/commands/cli/builtin/himalaya/search.js.map +1 -0
- package/dist/commands/cli/builtin/himalaya/send.d.ts +4 -0
- package/dist/commands/cli/builtin/himalaya/send.d.ts.map +1 -0
- package/dist/commands/cli/builtin/himalaya/send.js +43 -0
- package/dist/commands/cli/builtin/himalaya/send.js.map +1 -0
- package/dist/commands/cli/builtin/himalaya/smtp.d.ts +20 -0
- package/dist/commands/cli/builtin/himalaya/smtp.d.ts.map +1 -0
- package/dist/commands/cli/builtin/himalaya/smtp.js +116 -0
- package/dist/commands/cli/builtin/himalaya/smtp.js.map +1 -0
- package/dist/commands/cli/builtin/himalaya/util.d.ts +17 -0
- package/dist/commands/cli/builtin/himalaya/util.d.ts.map +1 -0
- package/dist/commands/cli/builtin/himalaya/util.js +120 -0
- package/dist/commands/cli/builtin/himalaya/util.js.map +1 -0
- package/dist/commands/native_fixture.d.ts +25 -0
- package/dist/commands/native_fixture.d.ts.map +1 -0
- package/dist/commands/native_fixture.js +186 -0
- package/dist/commands/native_fixture.js.map +1 -0
- package/dist/compression_codecs.d.ts +2 -0
- package/dist/compression_codecs.d.ts.map +1 -0
- package/dist/compression_codecs.js +34 -0
- package/dist/compression_codecs.js.map +1 -0
- package/dist/config.d.ts +191 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +967 -0
- package/dist/config.js.map +1 -0
- package/dist/core/disk/append.d.ts +4 -0
- package/dist/core/disk/append.d.ts.map +1 -0
- package/dist/core/disk/append.js +33 -0
- package/dist/core/disk/append.js.map +1 -0
- package/dist/core/disk/constants.d.ts +3 -0
- package/dist/core/disk/constants.d.ts.map +1 -0
- package/dist/core/disk/constants.js +16 -0
- package/dist/core/disk/constants.js.map +1 -0
- package/dist/core/disk/copy.d.ts +4 -0
- package/dist/core/disk/copy.d.ts.map +1 -0
- package/dist/core/disk/copy.js +38 -0
- package/dist/core/disk/copy.js.map +1 -0
- package/dist/core/disk/create.d.ts +4 -0
- package/dist/core/disk/create.d.ts.map +1 -0
- package/dist/core/disk/create.js +18 -0
- package/dist/core/disk/create.js.map +1 -0
- package/dist/core/disk/dest.d.ts +4 -0
- package/dist/core/disk/dest.d.ts.map +1 -0
- package/dist/core/disk/dest.js +44 -0
- package/dist/core/disk/dest.js.map +1 -0
- package/dist/core/disk/du/entries.d.ts +4 -0
- package/dist/core/disk/du/entries.d.ts.map +1 -0
- package/dist/core/disk/du/entries.js +25 -0
- package/dist/core/disk/du/entries.js.map +1 -0
- package/dist/core/disk/du/index.d.ts +3 -0
- package/dist/core/disk/du/index.d.ts.map +1 -0
- package/dist/core/disk/du/index.js +16 -0
- package/dist/core/disk/du/index.js.map +1 -0
- package/dist/core/disk/du/size.d.ts +4 -0
- package/dist/core/disk/du/size.d.ts.map +1 -0
- package/dist/core/disk/du/size.js +21 -0
- package/dist/core/disk/du/size.js.map +1 -0
- package/dist/core/disk/du/walk.d.ts +4 -0
- package/dist/core/disk/du/walk.d.ts.map +1 -0
- package/dist/core/disk/du/walk.js +82 -0
- package/dist/core/disk/du/walk.js.map +1 -0
- package/dist/core/disk/entry.d.ts +11 -0
- package/dist/core/disk/entry.d.ts.map +1 -0
- package/dist/core/disk/entry.js +42 -0
- package/dist/core/disk/entry.js.map +1 -0
- package/dist/core/disk/errors.d.ts +3 -0
- package/dist/core/disk/errors.d.ts.map +1 -0
- package/dist/core/disk/errors.js +31 -0
- package/dist/core/disk/errors.js.map +1 -0
- package/dist/core/disk/exists.d.ts +4 -0
- package/dist/core/disk/exists.d.ts.map +1 -0
- package/dist/core/disk/exists.js +26 -0
- package/dist/core/disk/exists.js.map +1 -0
- package/dist/core/disk/find.d.ts +21 -0
- package/dist/core/disk/find.d.ts.map +1 -0
- package/dist/core/disk/find.js +143 -0
- package/dist/core/disk/find.js.map +1 -0
- package/dist/core/disk/mkdir.d.ts +4 -0
- package/dist/core/disk/mkdir.d.ts.map +1 -0
- package/dist/core/disk/mkdir.js +51 -0
- package/dist/core/disk/mkdir.js.map +1 -0
- package/dist/core/disk/read.d.ts +18 -0
- package/dist/core/disk/read.d.ts.map +1 -0
- package/dist/core/disk/read.js +92 -0
- package/dist/core/disk/read.js.map +1 -0
- package/dist/core/disk/readdir.d.ts +5 -0
- package/dist/core/disk/readdir.d.ts.map +1 -0
- package/dist/core/disk/readdir.js +73 -0
- package/dist/core/disk/readdir.js.map +1 -0
- package/dist/core/disk/rename.d.ts +4 -0
- package/dist/core/disk/rename.d.ts.map +1 -0
- package/dist/core/disk/rename.js +36 -0
- package/dist/core/disk/rename.js.map +1 -0
- package/dist/core/disk/rm.d.ts +4 -0
- package/dist/core/disk/rm.d.ts.map +1 -0
- package/dist/core/disk/rm.js +22 -0
- package/dist/core/disk/rm.js.map +1 -0
- package/dist/core/disk/rmdir.d.ts +4 -0
- package/dist/core/disk/rmdir.d.ts.map +1 -0
- package/dist/core/disk/rmdir.js +29 -0
- package/dist/core/disk/rmdir.js.map +1 -0
- package/dist/core/disk/set_attrs.d.ts +11 -0
- package/dist/core/disk/set_attrs.d.ts.map +1 -0
- package/dist/core/disk/set_attrs.js +53 -0
- package/dist/core/disk/set_attrs.js.map +1 -0
- package/dist/core/disk/stat.d.ts +5 -0
- package/dist/core/disk/stat.d.ts.map +1 -0
- package/dist/core/disk/stat.js +58 -0
- package/dist/core/disk/stat.js.map +1 -0
- package/dist/core/disk/stream.d.ts +4 -0
- package/dist/core/disk/stream.d.ts.map +1 -0
- package/dist/core/disk/stream.js +40 -0
- package/dist/core/disk/stream.js.map +1 -0
- package/dist/core/disk/truncate.d.ts +4 -0
- package/dist/core/disk/truncate.d.ts.map +1 -0
- package/dist/core/disk/truncate.js +40 -0
- package/dist/core/disk/truncate.js.map +1 -0
- package/dist/core/disk/unlink.d.ts +4 -0
- package/dist/core/disk/unlink.d.ts.map +1 -0
- package/dist/core/disk/unlink.js +29 -0
- package/dist/core/disk/unlink.js.map +1 -0
- package/dist/core/disk/utils.d.ts +3 -0
- package/dist/core/disk/utils.d.ts.map +1 -0
- package/dist/core/disk/utils.js +26 -0
- package/dist/core/disk/utils.js.map +1 -0
- package/dist/core/disk/watch/constants.d.ts +3 -0
- package/dist/core/disk/watch/constants.d.ts.map +1 -0
- package/dist/core/disk/watch/constants.js +20 -0
- package/dist/core/disk/watch/constants.js.map +1 -0
- package/dist/core/disk/watch/hook.d.ts +54 -0
- package/dist/core/disk/watch/hook.d.ts.map +1 -0
- package/dist/core/disk/watch/hook.js +108 -0
- package/dist/core/disk/watch/hook.js.map +1 -0
- package/dist/core/disk/watch/index.d.ts +2 -0
- package/dist/core/disk/watch/index.d.ts.map +1 -0
- package/dist/core/disk/watch/index.js +15 -0
- package/dist/core/disk/watch/index.js.map +1 -0
- package/dist/core/disk/watch/walk.d.ts +22 -0
- package/dist/core/disk/watch/walk.d.ts.map +1 -0
- package/dist/core/disk/watch/walk.js +100 -0
- package/dist/core/disk/watch/walk.js.map +1 -0
- package/dist/core/disk/write.d.ts +4 -0
- package/dist/core/disk/write.d.ts.map +1 -0
- package/dist/core/disk/write.js +36 -0
- package/dist/core/disk/write.js.map +1 -0
- package/dist/core/email/_parse.d.ts +32 -0
- package/dist/core/email/_parse.d.ts.map +1 -0
- package/dist/core/email/_parse.js +87 -0
- package/dist/core/email/_parse.js.map +1 -0
- package/dist/core/email/client.d.ts +58 -0
- package/dist/core/email/client.d.ts.map +1 -0
- package/dist/core/email/client.js +328 -0
- package/dist/core/email/client.js.map +1 -0
- package/dist/core/email/config.d.ts +21 -0
- package/dist/core/email/config.d.ts.map +1 -0
- package/dist/core/email/config.js +55 -0
- package/dist/core/email/config.js.map +1 -0
- package/dist/core/email/folders.d.ts +3 -0
- package/dist/core/email/folders.d.ts.map +1 -0
- package/dist/core/email/folders.js +18 -0
- package/dist/core/email/folders.js.map +1 -0
- package/dist/core/email/read.d.ts +5 -0
- package/dist/core/email/read.d.ts.map +1 -0
- package/dist/core/email/read.js +41 -0
- package/dist/core/email/read.js.map +1 -0
- package/dist/core/email/readdir.d.ts +16 -0
- package/dist/core/email/readdir.d.ts.map +1 -0
- package/dist/core/email/readdir.js +222 -0
- package/dist/core/email/readdir.js.map +1 -0
- package/dist/core/email/render.d.ts +5 -0
- package/dist/core/email/render.d.ts.map +1 -0
- package/dist/core/email/render.js +42 -0
- package/dist/core/email/render.js.map +1 -0
- package/dist/core/email/scope.d.ts +3 -0
- package/dist/core/email/scope.d.ts.map +1 -0
- package/dist/core/email/scope.js +49 -0
- package/dist/core/email/scope.js.map +1 -0
- package/dist/core/email/search.d.ts +5 -0
- package/dist/core/email/search.d.ts.map +1 -0
- package/dist/core/email/search.js +67 -0
- package/dist/core/email/search.js.map +1 -0
- package/dist/core/email/stat.d.ts +5 -0
- package/dist/core/email/stat.d.ts.map +1 -0
- package/dist/core/email/stat.js +56 -0
- package/dist/core/email/stat.js.map +1 -0
- package/dist/core/gridfs/client.d.ts +37 -0
- package/dist/core/gridfs/client.d.ts.map +1 -0
- package/dist/core/gridfs/client.js +129 -0
- package/dist/core/gridfs/client.js.map +1 -0
- package/dist/core/gridfs/constants.d.ts +2 -0
- package/dist/core/gridfs/constants.d.ts.map +1 -0
- package/dist/core/gridfs/constants.js +15 -0
- package/dist/core/gridfs/constants.js.map +1 -0
- package/dist/core/gridfs/copy.d.ts +2 -0
- package/dist/core/gridfs/copy.d.ts.map +1 -0
- package/dist/core/gridfs/copy.js +18 -0
- package/dist/core/gridfs/copy.js.map +1 -0
- package/dist/core/gridfs/create.d.ts +2 -0
- package/dist/core/gridfs/create.d.ts.map +1 -0
- package/dist/core/gridfs/create.js +17 -0
- package/dist/core/gridfs/create.js.map +1 -0
- package/dist/core/gridfs/driver.d.ts +20 -0
- package/dist/core/gridfs/driver.d.ts.map +1 -0
- package/dist/core/gridfs/driver.js +284 -0
- package/dist/core/gridfs/driver.js.map +1 -0
- package/dist/core/gridfs/du/entries.d.ts +2 -0
- package/dist/core/gridfs/du/entries.d.ts.map +1 -0
- package/dist/core/gridfs/du/entries.js +17 -0
- package/dist/core/gridfs/du/entries.js.map +1 -0
- package/dist/core/gridfs/du/index.d.ts +3 -0
- package/dist/core/gridfs/du/index.d.ts.map +1 -0
- package/dist/core/gridfs/du/index.js +16 -0
- package/dist/core/gridfs/du/index.js.map +1 -0
- package/dist/core/gridfs/du/size.d.ts +2 -0
- package/dist/core/gridfs/du/size.d.ts.map +1 -0
- package/dist/core/gridfs/du/size.js +17 -0
- package/dist/core/gridfs/du/size.js.map +1 -0
- package/dist/core/gridfs/exists.d.ts +2 -0
- package/dist/core/gridfs/exists.d.ts.map +1 -0
- package/dist/core/gridfs/exists.js +17 -0
- package/dist/core/gridfs/exists.js.map +1 -0
- package/dist/core/gridfs/find.d.ts +2 -0
- package/dist/core/gridfs/find.d.ts.map +1 -0
- package/dist/core/gridfs/find.js +17 -0
- package/dist/core/gridfs/find.js.map +1 -0
- package/dist/core/gridfs/mkdir.d.ts +2 -0
- package/dist/core/gridfs/mkdir.d.ts.map +1 -0
- package/dist/core/gridfs/mkdir.js +17 -0
- package/dist/core/gridfs/mkdir.js.map +1 -0
- package/dist/core/gridfs/read.d.ts +12 -0
- package/dist/core/gridfs/read.d.ts.map +1 -0
- package/dist/core/gridfs/read.js +99 -0
- package/dist/core/gridfs/read.js.map +1 -0
- package/dist/core/gridfs/readdir.d.ts +2 -0
- package/dist/core/gridfs/readdir.d.ts.map +1 -0
- package/dist/core/gridfs/readdir.js +17 -0
- package/dist/core/gridfs/readdir.js.map +1 -0
- package/dist/core/gridfs/rename.d.ts +2 -0
- package/dist/core/gridfs/rename.d.ts.map +1 -0
- package/dist/core/gridfs/rename.js +18 -0
- package/dist/core/gridfs/rename.js.map +1 -0
- package/dist/core/gridfs/rm.d.ts +2 -0
- package/dist/core/gridfs/rm.d.ts.map +1 -0
- package/dist/core/gridfs/rm.js +17 -0
- package/dist/core/gridfs/rm.js.map +1 -0
- package/dist/core/gridfs/rmdir.d.ts +2 -0
- package/dist/core/gridfs/rmdir.d.ts.map +1 -0
- package/dist/core/gridfs/rmdir.js +17 -0
- package/dist/core/gridfs/rmdir.js.map +1 -0
- package/dist/core/gridfs/stat.d.ts +2 -0
- package/dist/core/gridfs/stat.d.ts.map +1 -0
- package/dist/core/gridfs/stat.js +17 -0
- package/dist/core/gridfs/stat.js.map +1 -0
- package/dist/core/gridfs/stream.d.ts +17 -0
- package/dist/core/gridfs/stream.d.ts.map +1 -0
- package/dist/core/gridfs/stream.js +75 -0
- package/dist/core/gridfs/stream.js.map +1 -0
- package/dist/core/gridfs/truncate.d.ts +2 -0
- package/dist/core/gridfs/truncate.d.ts.map +1 -0
- package/dist/core/gridfs/truncate.js +17 -0
- package/dist/core/gridfs/truncate.js.map +1 -0
- package/dist/core/gridfs/unlink.d.ts +2 -0
- package/dist/core/gridfs/unlink.d.ts.map +1 -0
- package/dist/core/gridfs/unlink.js +17 -0
- package/dist/core/gridfs/unlink.js.map +1 -0
- package/dist/core/gridfs/watch.d.ts +4 -0
- package/dist/core/gridfs/watch.d.ts.map +1 -0
- package/dist/core/gridfs/watch.js +68 -0
- package/dist/core/gridfs/watch.js.map +1 -0
- package/dist/core/gridfs/write.d.ts +2 -0
- package/dist/core/gridfs/write.d.ts.map +1 -0
- package/dist/core/gridfs/write.js +17 -0
- package/dist/core/gridfs/write.js.map +1 -0
- package/dist/core/hf/constants.d.ts +3 -0
- package/dist/core/hf/constants.d.ts.map +1 -0
- package/dist/core/hf/constants.js +16 -0
- package/dist/core/hf/constants.js.map +1 -0
- package/dist/core/hf/create.d.ts +2 -0
- package/dist/core/hf/create.d.ts.map +1 -0
- package/dist/core/hf/create.js +17 -0
- package/dist/core/hf/create.js.map +1 -0
- package/dist/core/hf/driver.d.ts +5 -0
- package/dist/core/hf/driver.d.ts.map +1 -0
- package/dist/core/hf/driver.js +222 -0
- package/dist/core/hf/driver.js.map +1 -0
- package/dist/core/hf/du/entries.d.ts +2 -0
- package/dist/core/hf/du/entries.d.ts.map +1 -0
- package/dist/core/hf/du/entries.js +17 -0
- package/dist/core/hf/du/entries.js.map +1 -0
- package/dist/core/hf/du/index.d.ts +3 -0
- package/dist/core/hf/du/index.d.ts.map +1 -0
- package/dist/core/hf/du/index.js +16 -0
- package/dist/core/hf/du/index.js.map +1 -0
- package/dist/core/hf/du/size.d.ts +2 -0
- package/dist/core/hf/du/size.d.ts.map +1 -0
- package/dist/core/hf/du/size.js +17 -0
- package/dist/core/hf/du/size.js.map +1 -0
- package/dist/core/hf/exists.d.ts +2 -0
- package/dist/core/hf/exists.d.ts.map +1 -0
- package/dist/core/hf/exists.js +17 -0
- package/dist/core/hf/exists.js.map +1 -0
- package/dist/core/hf/find.d.ts +2 -0
- package/dist/core/hf/find.d.ts.map +1 -0
- package/dist/core/hf/find.js +17 -0
- package/dist/core/hf/find.js.map +1 -0
- package/dist/core/hf/mkdir.d.ts +2 -0
- package/dist/core/hf/mkdir.d.ts.map +1 -0
- package/dist/core/hf/mkdir.js +17 -0
- package/dist/core/hf/mkdir.js.map +1 -0
- package/dist/core/hf/mock.d.ts +34 -0
- package/dist/core/hf/mock.d.ts.map +1 -0
- package/dist/core/hf/mock.js +147 -0
- package/dist/core/hf/mock.js.map +1 -0
- package/dist/core/hf/read.d.ts +9 -0
- package/dist/core/hf/read.d.ts.map +1 -0
- package/dist/core/hf/read.js +53 -0
- package/dist/core/hf/read.js.map +1 -0
- package/dist/core/hf/readdir.d.ts +2 -0
- package/dist/core/hf/readdir.d.ts.map +1 -0
- package/dist/core/hf/readdir.js +17 -0
- package/dist/core/hf/readdir.js.map +1 -0
- package/dist/core/hf/rm.d.ts +2 -0
- package/dist/core/hf/rm.d.ts.map +1 -0
- package/dist/core/hf/rm.js +17 -0
- package/dist/core/hf/rm.js.map +1 -0
- package/dist/core/hf/stat.d.ts +2 -0
- package/dist/core/hf/stat.d.ts.map +1 -0
- package/dist/core/hf/stat.js +17 -0
- package/dist/core/hf/stat.js.map +1 -0
- package/dist/core/hf/stream.d.ts +6 -0
- package/dist/core/hf/stream.d.ts.map +1 -0
- package/dist/core/hf/stream.js +48 -0
- package/dist/core/hf/stream.js.map +1 -0
- package/dist/core/hf/unlink.d.ts +2 -0
- package/dist/core/hf/unlink.d.ts.map +1 -0
- package/dist/core/hf/unlink.js +17 -0
- package/dist/core/hf/unlink.js.map +1 -0
- package/dist/core/hf/util.d.ts +5 -0
- package/dist/core/hf/util.d.ts.map +1 -0
- package/dist/core/hf/util.js +30 -0
- package/dist/core/hf/util.js.map +1 -0
- package/dist/core/hf/watch.d.ts +12 -0
- package/dist/core/hf/watch.d.ts.map +1 -0
- package/dist/core/hf/watch.js +28 -0
- package/dist/core/hf/watch.js.map +1 -0
- package/dist/core/hf/write.d.ts +2 -0
- package/dist/core/hf/write.d.ts.map +1 -0
- package/dist/core/hf/write.js +17 -0
- package/dist/core/hf/write.js.map +1 -0
- package/dist/core/hf_hub/account.d.ts +4 -0
- package/dist/core/hf_hub/account.d.ts.map +1 -0
- package/dist/core/hf_hub/account.js +22 -0
- package/dist/core/hf_hub/account.js.map +1 -0
- package/dist/core/hf_hub/admin.d.ts +41 -0
- package/dist/core/hf_hub/admin.d.ts.map +1 -0
- package/dist/core/hf_hub/admin.js +98 -0
- package/dist/core/hf_hub/admin.js.map +1 -0
- package/dist/core/hf_hub/cache.d.ts +47 -0
- package/dist/core/hf_hub/cache.d.ts.map +1 -0
- package/dist/core/hf_hub/cache.js +81 -0
- package/dist/core/hf_hub/cache.js.map +1 -0
- package/dist/core/hf_hub/client.d.ts +81 -0
- package/dist/core/hf_hub/client.d.ts.map +1 -0
- package/dist/core/hf_hub/client.js +197 -0
- package/dist/core/hf_hub/client.js.map +1 -0
- package/dist/core/hf_hub/commit.d.ts +54 -0
- package/dist/core/hf_hub/commit.d.ts.map +1 -0
- package/dist/core/hf_hub/commit.js +124 -0
- package/dist/core/hf_hub/commit.js.map +1 -0
- package/dist/core/hf_hub/config.d.ts +18 -0
- package/dist/core/hf_hub/config.d.ts.map +1 -0
- package/dist/core/hf_hub/config.js +33 -0
- package/dist/core/hf_hub/config.js.map +1 -0
- package/dist/core/hf_hub/constants.d.ts +18 -0
- package/dist/core/hf_hub/constants.d.ts.map +1 -0
- package/dist/core/hf_hub/constants.js +80 -0
- package/dist/core/hf_hub/constants.js.map +1 -0
- package/dist/core/hf_hub/exists.d.ts +6 -0
- package/dist/core/hf_hub/exists.d.ts.map +1 -0
- package/dist/core/hf_hub/exists.js +25 -0
- package/dist/core/hf_hub/exists.js.map +1 -0
- package/dist/core/hf_hub/lookup.d.ts +33 -0
- package/dist/core/hf_hub/lookup.d.ts.map +1 -0
- package/dist/core/hf_hub/lookup.js +80 -0
- package/dist/core/hf_hub/lookup.js.map +1 -0
- package/dist/core/hf_hub/read.d.ts +18 -0
- package/dist/core/hf_hub/read.d.ts.map +1 -0
- package/dist/core/hf_hub/read.js +54 -0
- package/dist/core/hf_hub/read.js.map +1 -0
- package/dist/core/hf_hub/readdir.d.ts +10 -0
- package/dist/core/hf_hub/readdir.d.ts.map +1 -0
- package/dist/core/hf_hub/readdir.js +35 -0
- package/dist/core/hf_hub/readdir.js.map +1 -0
- package/dist/core/hf_hub/repo.d.ts +40 -0
- package/dist/core/hf_hub/repo.d.ts.map +1 -0
- package/dist/core/hf_hub/repo.js +80 -0
- package/dist/core/hf_hub/repo.js.map +1 -0
- package/dist/core/hf_hub/stat.d.ts +6 -0
- package/dist/core/hf_hub/stat.d.ts.map +1 -0
- package/dist/core/hf_hub/stat.js +66 -0
- package/dist/core/hf_hub/stat.js.map +1 -0
- package/dist/core/hf_hub/stream.d.ts +7 -0
- package/dist/core/hf_hub/stream.d.ts.map +1 -0
- package/dist/core/hf_hub/stream.js +32 -0
- package/dist/core/hf_hub/stream.js.map +1 -0
- package/dist/core/hf_hub/tree.d.ts +105 -0
- package/dist/core/hf_hub/tree.d.ts.map +1 -0
- package/dist/core/hf_hub/tree.js +334 -0
- package/dist/core/hf_hub/tree.js.map +1 -0
- package/dist/core/hf_hub/tree_entry.d.ts +31 -0
- package/dist/core/hf_hub/tree_entry.d.ts.map +1 -0
- package/dist/core/hf_hub/tree_entry.js +17 -0
- package/dist/core/hf_hub/tree_entry.js.map +1 -0
- package/dist/core/hf_hub/watch.d.ts +4 -0
- package/dist/core/hf_hub/watch.d.ts.map +1 -0
- package/dist/core/hf_hub/watch.js +63 -0
- package/dist/core/hf_hub/watch.js.map +1 -0
- package/dist/core/nextcloud/constants.d.ts +3 -0
- package/dist/core/nextcloud/constants.d.ts.map +1 -0
- package/dist/core/nextcloud/constants.js +3 -0
- package/dist/core/nextcloud/constants.js.map +1 -0
- package/dist/core/nextcloud/copy.d.ts +4 -0
- package/dist/core/nextcloud/copy.d.ts.map +1 -0
- package/dist/core/nextcloud/copy.js +16 -0
- package/dist/core/nextcloud/copy.js.map +1 -0
- package/dist/core/nextcloud/create.d.ts +5 -0
- package/dist/core/nextcloud/create.d.ts.map +1 -0
- package/dist/core/nextcloud/create.js +5 -0
- package/dist/core/nextcloud/create.js.map +1 -0
- package/dist/core/nextcloud/du/entries.d.ts +4 -0
- package/dist/core/nextcloud/du/entries.d.ts.map +1 -0
- package/dist/core/nextcloud/du/entries.js +36 -0
- package/dist/core/nextcloud/du/entries.js.map +1 -0
- package/dist/core/nextcloud/du/index.d.ts +3 -0
- package/dist/core/nextcloud/du/index.d.ts.map +1 -0
- package/dist/core/nextcloud/du/index.js +3 -0
- package/dist/core/nextcloud/du/index.js.map +1 -0
- package/dist/core/nextcloud/du/size.d.ts +4 -0
- package/dist/core/nextcloud/du/size.d.ts.map +1 -0
- package/dist/core/nextcloud/du/size.js +28 -0
- package/dist/core/nextcloud/du/size.js.map +1 -0
- package/dist/core/nextcloud/du/walk.d.ts +4 -0
- package/dist/core/nextcloud/du/walk.d.ts.map +1 -0
- package/dist/core/nextcloud/du/walk.js +12 -0
- package/dist/core/nextcloud/du/walk.js.map +1 -0
- package/dist/core/nextcloud/exists.d.ts +4 -0
- package/dist/core/nextcloud/exists.d.ts.map +1 -0
- package/dist/core/nextcloud/exists.js +13 -0
- package/dist/core/nextcloud/exists.js.map +1 -0
- package/dist/core/nextcloud/find.d.ts +5 -0
- package/dist/core/nextcloud/find.d.ts.map +1 -0
- package/dist/core/nextcloud/find.js +230 -0
- package/dist/core/nextcloud/find.js.map +1 -0
- package/dist/core/nextcloud/mkdir.d.ts +15 -0
- package/dist/core/nextcloud/mkdir.d.ts.map +1 -0
- package/dist/core/nextcloud/mkdir.js +22 -0
- package/dist/core/nextcloud/mkdir.js.map +1 -0
- package/dist/core/nextcloud/mock.d.ts +28 -0
- package/dist/core/nextcloud/mock.d.ts.map +1 -0
- package/dist/core/nextcloud/mock.js +117 -0
- package/dist/core/nextcloud/mock.js.map +1 -0
- package/dist/core/nextcloud/read.d.ts +9 -0
- package/dist/core/nextcloud/read.d.ts.map +1 -0
- package/dist/core/nextcloud/read.js +46 -0
- package/dist/core/nextcloud/read.js.map +1 -0
- package/dist/core/nextcloud/readdir.d.ts +5 -0
- package/dist/core/nextcloud/readdir.d.ts.map +1 -0
- package/dist/core/nextcloud/readdir.js +120 -0
- package/dist/core/nextcloud/readdir.js.map +1 -0
- package/dist/core/nextcloud/rename.d.ts +4 -0
- package/dist/core/nextcloud/rename.d.ts.map +1 -0
- package/dist/core/nextcloud/rename.js +17 -0
- package/dist/core/nextcloud/rename.js.map +1 -0
- package/dist/core/nextcloud/rm.d.ts +4 -0
- package/dist/core/nextcloud/rm.d.ts.map +1 -0
- package/dist/core/nextcloud/rm.js +18 -0
- package/dist/core/nextcloud/rm.js.map +1 -0
- package/dist/core/nextcloud/rmdir.d.ts +18 -0
- package/dist/core/nextcloud/rmdir.d.ts.map +1 -0
- package/dist/core/nextcloud/rmdir.js +39 -0
- package/dist/core/nextcloud/rmdir.js.map +1 -0
- package/dist/core/nextcloud/search/client.d.ts +5 -0
- package/dist/core/nextcloud/search/client.d.ts.map +1 -0
- package/dist/core/nextcloud/search/client.js +51 -0
- package/dist/core/nextcloud/search/client.js.map +1 -0
- package/dist/core/nextcloud/search/constants.d.ts +18 -0
- package/dist/core/nextcloud/search/constants.d.ts.map +1 -0
- package/dist/core/nextcloud/search/constants.js +38 -0
- package/dist/core/nextcloud/search/constants.js.map +1 -0
- package/dist/core/nextcloud/search/index.d.ts +4 -0
- package/dist/core/nextcloud/search/index.d.ts.map +1 -0
- package/dist/core/nextcloud/search/index.js +3 -0
- package/dist/core/nextcloud/search/index.js.map +1 -0
- package/dist/core/nextcloud/search/query.d.ts +6 -0
- package/dist/core/nextcloud/search/query.d.ts.map +1 -0
- package/dist/core/nextcloud/search/query.js +181 -0
- package/dist/core/nextcloud/search/query.js.map +1 -0
- package/dist/core/nextcloud/search/response.d.ts +3 -0
- package/dist/core/nextcloud/search/response.d.ts.map +1 -0
- package/dist/core/nextcloud/search/response.js +108 -0
- package/dist/core/nextcloud/search/response.js.map +1 -0
- package/dist/core/nextcloud/search/target.d.ts +6 -0
- package/dist/core/nextcloud/search/target.d.ts.map +1 -0
- package/dist/core/nextcloud/search/target.js +54 -0
- package/dist/core/nextcloud/search/target.js.map +1 -0
- package/dist/core/nextcloud/search/types.d.ts +49 -0
- package/dist/core/nextcloud/search/types.d.ts.map +1 -0
- package/dist/core/nextcloud/search/types.js +16 -0
- package/dist/core/nextcloud/search/types.js.map +1 -0
- package/dist/core/nextcloud/stat.d.ts +6 -0
- package/dist/core/nextcloud/stat.d.ts.map +1 -0
- package/dist/core/nextcloud/stat.js +78 -0
- package/dist/core/nextcloud/stat.js.map +1 -0
- package/dist/core/nextcloud/stream.d.ts +6 -0
- package/dist/core/nextcloud/stream.d.ts.map +1 -0
- package/dist/core/nextcloud/stream.js +32 -0
- package/dist/core/nextcloud/stream.js.map +1 -0
- package/dist/core/nextcloud/truncate.d.ts +4 -0
- package/dist/core/nextcloud/truncate.d.ts.map +1 -0
- package/dist/core/nextcloud/truncate.js +24 -0
- package/dist/core/nextcloud/truncate.js.map +1 -0
- package/dist/core/nextcloud/unlink.d.ts +4 -0
- package/dist/core/nextcloud/unlink.d.ts.map +1 -0
- package/dist/core/nextcloud/unlink.js +20 -0
- package/dist/core/nextcloud/unlink.js.map +1 -0
- package/dist/core/nextcloud/util.d.ts +5 -0
- package/dist/core/nextcloud/util.d.ts.map +1 -0
- package/dist/core/nextcloud/util.js +15 -0
- package/dist/core/nextcloud/util.js.map +1 -0
- package/dist/core/nextcloud/watch.d.ts +6 -0
- package/dist/core/nextcloud/watch.d.ts.map +1 -0
- package/dist/core/nextcloud/watch.js +22 -0
- package/dist/core/nextcloud/watch.js.map +1 -0
- package/dist/core/nextcloud/write.d.ts +5 -0
- package/dist/core/nextcloud/write.d.ts.map +1 -0
- package/dist/core/nextcloud/write.js +20 -0
- package/dist/core/nextcloud/write.js.map +1 -0
- package/dist/core/opendal/types.d.ts +5 -0
- package/dist/core/opendal/types.d.ts.map +1 -0
- package/dist/core/opendal/types.js +15 -0
- package/dist/core/opendal/types.js.map +1 -0
- package/dist/core/opendal/watch.d.ts +23 -0
- package/dist/core/opendal/watch.d.ts.map +1 -0
- package/dist/core/opendal/watch.js +96 -0
- package/dist/core/opendal/watch.js.map +1 -0
- package/dist/core/ssh/append.d.ts +4 -0
- package/dist/core/ssh/append.d.ts.map +1 -0
- package/dist/core/ssh/append.js +30 -0
- package/dist/core/ssh/append.js.map +1 -0
- package/dist/core/ssh/constants.d.ts +3 -0
- package/dist/core/ssh/constants.d.ts.map +1 -0
- package/dist/core/ssh/constants.js +16 -0
- package/dist/core/ssh/constants.js.map +1 -0
- package/dist/core/ssh/copy.d.ts +4 -0
- package/dist/core/ssh/copy.d.ts.map +1 -0
- package/dist/core/ssh/copy.js +20 -0
- package/dist/core/ssh/copy.js.map +1 -0
- package/dist/core/ssh/create.d.ts +4 -0
- package/dist/core/ssh/create.d.ts.map +1 -0
- package/dist/core/ssh/create.js +18 -0
- package/dist/core/ssh/create.js.map +1 -0
- package/dist/core/ssh/du/entries.d.ts +4 -0
- package/dist/core/ssh/du/entries.d.ts.map +1 -0
- package/dist/core/ssh/du/entries.js +25 -0
- package/dist/core/ssh/du/entries.js.map +1 -0
- package/dist/core/ssh/du/index.d.ts +3 -0
- package/dist/core/ssh/du/index.d.ts.map +1 -0
- package/dist/core/ssh/du/index.js +16 -0
- package/dist/core/ssh/du/index.js.map +1 -0
- package/dist/core/ssh/du/size.d.ts +4 -0
- package/dist/core/ssh/du/size.d.ts.map +1 -0
- package/dist/core/ssh/du/size.js +20 -0
- package/dist/core/ssh/du/size.js.map +1 -0
- package/dist/core/ssh/du/walk.d.ts +4 -0
- package/dist/core/ssh/du/walk.d.ts.map +1 -0
- package/dist/core/ssh/du/walk.js +105 -0
- package/dist/core/ssh/du/walk.js.map +1 -0
- package/dist/core/ssh/entry.d.ts +11 -0
- package/dist/core/ssh/entry.d.ts.map +1 -0
- package/dist/core/ssh/entry.js +61 -0
- package/dist/core/ssh/entry.js.map +1 -0
- package/dist/core/ssh/exists.d.ts +4 -0
- package/dist/core/ssh/exists.d.ts.map +1 -0
- package/dist/core/ssh/exists.js +24 -0
- package/dist/core/ssh/exists.js.map +1 -0
- package/dist/core/ssh/find.d.ts +21 -0
- package/dist/core/ssh/find.d.ts.map +1 -0
- package/dist/core/ssh/find.js +142 -0
- package/dist/core/ssh/find.js.map +1 -0
- package/dist/core/ssh/mkdir.d.ts +4 -0
- package/dist/core/ssh/mkdir.d.ts.map +1 -0
- package/dist/core/ssh/mkdir.js +76 -0
- package/dist/core/ssh/mkdir.js.map +1 -0
- package/dist/core/ssh/read.d.ts +21 -0
- package/dist/core/ssh/read.d.ts.map +1 -0
- package/dist/core/ssh/read.js +65 -0
- package/dist/core/ssh/read.js.map +1 -0
- package/dist/core/ssh/readdir.d.ts +4 -0
- package/dist/core/ssh/readdir.d.ts.map +1 -0
- package/dist/core/ssh/readdir.js +80 -0
- package/dist/core/ssh/readdir.js.map +1 -0
- package/dist/core/ssh/rename.d.ts +4 -0
- package/dist/core/ssh/rename.d.ts.map +1 -0
- package/dist/core/ssh/rename.js +50 -0
- package/dist/core/ssh/rename.js.map +1 -0
- package/dist/core/ssh/rm.d.ts +4 -0
- package/dist/core/ssh/rm.d.ts.map +1 -0
- package/dist/core/ssh/rm.js +86 -0
- package/dist/core/ssh/rm.js.map +1 -0
- package/dist/core/ssh/rmdir.d.ts +4 -0
- package/dist/core/ssh/rmdir.d.ts.map +1 -0
- package/dist/core/ssh/rmdir.js +69 -0
- package/dist/core/ssh/rmdir.js.map +1 -0
- package/dist/core/ssh/set_attrs.d.ts +11 -0
- package/dist/core/ssh/set_attrs.d.ts.map +1 -0
- package/dist/core/ssh/set_attrs.js +81 -0
- package/dist/core/ssh/set_attrs.js.map +1 -0
- package/dist/core/ssh/stat.d.ts +4 -0
- package/dist/core/ssh/stat.d.ts.map +1 -0
- package/dist/core/ssh/stat.js +40 -0
- package/dist/core/ssh/stat.js.map +1 -0
- package/dist/core/ssh/stream.d.ts +7 -0
- package/dist/core/ssh/stream.d.ts.map +1 -0
- package/dist/core/ssh/stream.js +83 -0
- package/dist/core/ssh/stream.js.map +1 -0
- package/dist/core/ssh/truncate.d.ts +4 -0
- package/dist/core/ssh/truncate.d.ts.map +1 -0
- package/dist/core/ssh/truncate.js +33 -0
- package/dist/core/ssh/truncate.js.map +1 -0
- package/dist/core/ssh/unlink.d.ts +4 -0
- package/dist/core/ssh/unlink.d.ts.map +1 -0
- package/dist/core/ssh/unlink.js +35 -0
- package/dist/core/ssh/unlink.js.map +1 -0
- package/dist/core/ssh/utils.d.ts +12 -0
- package/dist/core/ssh/utils.d.ts.map +1 -0
- package/dist/core/ssh/utils.js +63 -0
- package/dist/core/ssh/utils.js.map +1 -0
- package/dist/core/ssh/watch.d.ts +4 -0
- package/dist/core/ssh/watch.d.ts.map +1 -0
- package/dist/core/ssh/watch.js +89 -0
- package/dist/core/ssh/watch.js.map +1 -0
- package/dist/core/ssh/write.d.ts +4 -0
- package/dist/core/ssh/write.d.ts.map +1 -0
- package/dist/core/ssh/write.js +34 -0
- package/dist/core/ssh/write.js.map +1 -0
- package/dist/fs_monkey.d.ts +11 -0
- package/dist/fs_monkey.d.ts.map +1 -0
- package/dist/fs_monkey.js +187 -0
- package/dist/fs_monkey.js.map +1 -0
- package/dist/fuse/backend.d.ts +73 -0
- package/dist/fuse/backend.d.ts.map +1 -0
- package/dist/fuse/backend.js +170 -0
- package/dist/fuse/backend.js.map +1 -0
- package/dist/fuse/core.d.ts +157 -0
- package/dist/fuse/core.d.ts.map +1 -0
- package/dist/fuse/core.js +478 -0
- package/dist/fuse/core.js.map +1 -0
- package/dist/fuse/errors.d.ts +31 -0
- package/dist/fuse/errors.d.ts.map +1 -0
- package/dist/fuse/errors.js +102 -0
- package/dist/fuse/errors.js.map +1 -0
- package/dist/fuse/fs.d.ts +58 -0
- package/dist/fuse/fs.d.ts.map +1 -0
- package/dist/fuse/fs.js +280 -0
- package/dist/fuse/fs.js.map +1 -0
- package/dist/fuse/mount.d.ts +74 -0
- package/dist/fuse/mount.d.ts.map +1 -0
- package/dist/fuse/mount.js +180 -0
- package/dist/fuse/mount.js.map +1 -0
- package/dist/fuse/platform/macos.d.ts +2 -0
- package/dist/fuse/platform/macos.d.ts.map +1 -0
- package/dist/fuse/platform/macos.js +23 -0
- package/dist/fuse/platform/macos.js.map +1 -0
- package/dist/index.d.ts +199 -2923
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +208 -4624
- package/dist/index.js.map +1 -1
- package/dist/observe/disk_store.d.ts +17 -0
- package/dist/observe/disk_store.d.ts.map +1 -0
- package/dist/observe/disk_store.js +98 -0
- package/dist/observe/disk_store.js.map +1 -0
- package/dist/observe/redis_store.d.ts +28 -0
- package/dist/observe/redis_store.d.ts.map +1 -0
- package/dist/observe/redis_store.js +100 -0
- package/dist/observe/redis_store.js.map +1 -0
- package/dist/ops/disk/index.d.ts +3 -0
- package/dist/ops/disk/index.d.ts.map +1 -0
- package/dist/ops/disk/index.js +20 -0
- package/dist/ops/disk/index.js.map +1 -0
- package/dist/ops/email/index.d.ts +3 -0
- package/dist/ops/email/index.d.ts.map +1 -0
- package/dist/ops/email/index.js +18 -0
- package/dist/ops/email/index.js.map +1 -0
- package/dist/ops/gridfs/index.d.ts +3 -0
- package/dist/ops/gridfs/index.d.ts.map +1 -0
- package/dist/ops/gridfs/index.js +18 -0
- package/dist/ops/gridfs/index.js.map +1 -0
- package/dist/ops/hf/index.d.ts +3 -0
- package/dist/ops/hf/index.d.ts.map +1 -0
- package/dist/ops/hf/index.js +18 -0
- package/dist/ops/hf/index.js.map +1 -0
- package/dist/ops/hf_hub/index.d.ts +3 -0
- package/dist/ops/hf_hub/index.d.ts.map +1 -0
- package/dist/ops/hf_hub/index.js +18 -0
- package/dist/ops/hf_hub/index.js.map +1 -0
- package/dist/ops/nextcloud/index.d.ts +3 -0
- package/dist/ops/nextcloud/index.d.ts.map +1 -0
- package/dist/ops/nextcloud/index.js +5 -0
- package/dist/ops/nextcloud/index.js.map +1 -0
- package/dist/ops/ssh/index.d.ts +3 -0
- package/dist/ops/ssh/index.d.ts.map +1 -0
- package/dist/ops/ssh/index.js +20 -0
- package/dist/ops/ssh/index.js.map +1 -0
- package/dist/optional_peer.d.ts +2 -0
- package/dist/optional_peer.d.ts.map +1 -0
- package/dist/optional_peer.js +15 -0
- package/dist/optional_peer.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 +10 -0
- package/dist/resource/aliyun/config.d.ts.map +1 -0
- package/dist/resource/aliyun/config.js +20 -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 +10 -0
- package/dist/resource/backblaze/config.d.ts.map +1 -0
- package/dist/resource/backblaze/config.js +20 -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 +43 -0
- package/dist/resource/box/config.d.ts.map +1 -0
- package/dist/resource/box/config.js +39 -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 +9 -0
- package/dist/resource/ceph/config.d.ts.map +1 -0
- package/dist/resource/ceph/config.js +19 -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/databricks_volume/config.d.ts +3 -0
- package/dist/resource/databricks_volume/config.d.ts.map +1 -0
- package/dist/resource/databricks_volume/config.js +15 -0
- package/dist/resource/databricks_volume/config.js.map +1 -0
- package/dist/resource/databricks_volume/databricks_volume.d.ts +45 -0
- package/dist/resource/databricks_volume/databricks_volume.d.ts.map +1 -0
- package/dist/resource/databricks_volume/databricks_volume.js +186 -0
- package/dist/resource/databricks_volume/databricks_volume.js.map +1 -0
- package/dist/resource/databricks_volume/profile.d.ts +7 -0
- package/dist/resource/databricks_volume/profile.d.ts.map +1 -0
- package/dist/resource/databricks_volume/profile.js +55 -0
- package/dist/resource/databricks_volume/profile.js.map +1 -0
- package/dist/resource/digitalocean/config.d.ts +10 -0
- package/dist/resource/digitalocean/config.d.ts.map +1 -0
- package/dist/resource/digitalocean/config.js +20 -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/discord.d.ts +33 -0
- package/dist/resource/discord/discord.d.ts.map +1 -0
- package/dist/resource/discord/discord.js +87 -0
- package/dist/resource/discord/discord.js.map +1 -0
- package/dist/resource/disk/disk.d.ts +55 -0
- package/dist/resource/disk/disk.d.ts.map +1 -0
- package/dist/resource/disk/disk.js +218 -0
- package/dist/resource/disk/disk.js.map +1 -0
- package/dist/resource/disk/prompt.d.ts +2 -0
- package/dist/resource/disk/prompt.d.ts.map +1 -0
- package/dist/resource/disk/prompt.js +17 -0
- package/dist/resource/disk/prompt.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/email/email.d.ts +33 -0
- package/dist/resource/email/email.d.ts.map +1 -0
- package/dist/resource/email/email.js +89 -0
- package/dist/resource/email/email.js.map +1 -0
- package/dist/resource/email/index.d.ts +3 -0
- package/dist/resource/email/index.d.ts.map +1 -0
- package/dist/resource/email/index.js +16 -0
- package/dist/resource/email/index.js.map +1 -0
- package/dist/resource/email/prompt.d.ts +3 -0
- package/dist/resource/email/prompt.d.ts.map +1 -0
- package/dist/resource/email/prompt.js +26 -0
- package/dist/resource/email/prompt.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 +36 -0
- package/dist/resource/gcs/config.d.ts.map +1 -0
- package/dist/resource/gcs/config.js +55 -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 +37 -0
- package/dist/resource/github/github.d.ts.map +1 -0
- package/dist/resource/github/github.js +119 -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/gridfs/config.d.ts +20 -0
- package/dist/resource/gridfs/config.d.ts.map +1 -0
- package/dist/resource/gridfs/config.js +42 -0
- package/dist/resource/gridfs/config.js.map +1 -0
- package/dist/resource/gridfs/gridfs.d.ts +50 -0
- package/dist/resource/gridfs/gridfs.d.ts.map +1 -0
- package/dist/resource/gridfs/gridfs.js +190 -0
- package/dist/resource/gridfs/gridfs.js.map +1 -0
- package/dist/resource/gridfs/prompt.d.ts +2 -0
- package/dist/resource/gridfs/prompt.d.ts.map +1 -0
- package/dist/resource/gridfs/prompt.js +19 -0
- package/dist/resource/gridfs/prompt.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/hf_buckets/base.d.ts +34 -0
- package/dist/resource/hf_buckets/base.d.ts.map +1 -0
- package/dist/resource/hf_buckets/base.js +117 -0
- package/dist/resource/hf_buckets/base.js.map +1 -0
- package/dist/resource/hf_buckets/config.d.ts +58 -0
- package/dist/resource/hf_buckets/config.d.ts.map +1 -0
- package/dist/resource/hf_buckets/config.js +89 -0
- package/dist/resource/hf_buckets/config.js.map +1 -0
- package/dist/resource/hf_buckets/hf_buckets.d.ts +16 -0
- package/dist/resource/hf_buckets/hf_buckets.d.ts.map +1 -0
- package/dist/resource/hf_buckets/hf_buckets.js +46 -0
- package/dist/resource/hf_buckets/hf_buckets.js.map +1 -0
- package/dist/resource/hf_buckets/prompt.d.ts +2 -0
- package/dist/resource/hf_buckets/prompt.d.ts.map +1 -0
- package/dist/resource/hf_buckets/prompt.js +18 -0
- package/dist/resource/hf_buckets/prompt.js.map +1 -0
- package/dist/resource/hf_datasets/hf_datasets.d.ts +16 -0
- package/dist/resource/hf_datasets/hf_datasets.d.ts.map +1 -0
- package/dist/resource/hf_datasets/hf_datasets.js +46 -0
- package/dist/resource/hf_datasets/hf_datasets.js.map +1 -0
- package/dist/resource/hf_datasets/prompt.d.ts +2 -0
- package/dist/resource/hf_datasets/prompt.d.ts.map +1 -0
- package/dist/resource/hf_datasets/prompt.js +18 -0
- package/dist/resource/hf_datasets/prompt.js.map +1 -0
- package/dist/resource/hf_hub/base.d.ts +43 -0
- package/dist/resource/hf_hub/base.d.ts.map +1 -0
- package/dist/resource/hf_hub/base.js +111 -0
- package/dist/resource/hf_hub/base.js.map +1 -0
- package/dist/resource/hf_models/config.d.ts +6 -0
- package/dist/resource/hf_models/config.d.ts.map +1 -0
- package/dist/resource/hf_models/config.js +17 -0
- package/dist/resource/hf_models/config.js.map +1 -0
- package/dist/resource/hf_models/hf_models.d.ts +16 -0
- package/dist/resource/hf_models/hf_models.d.ts.map +1 -0
- package/dist/resource/hf_models/hf_models.js +46 -0
- package/dist/resource/hf_models/hf_models.js.map +1 -0
- package/dist/resource/hf_models/prompt.d.ts +2 -0
- package/dist/resource/hf_models/prompt.d.ts.map +1 -0
- package/dist/resource/hf_models/prompt.js +18 -0
- package/dist/resource/hf_models/prompt.js.map +1 -0
- package/dist/resource/hf_spaces/hf_spaces.d.ts +16 -0
- package/dist/resource/hf_spaces/hf_spaces.d.ts.map +1 -0
- package/dist/resource/hf_spaces/hf_spaces.js +46 -0
- package/dist/resource/hf_spaces/hf_spaces.js.map +1 -0
- package/dist/resource/hf_spaces/prompt.d.ts +2 -0
- package/dist/resource/hf_spaces/prompt.d.ts.map +1 -0
- package/dist/resource/hf_spaces/prompt.js +18 -0
- package/dist/resource/hf_spaces/prompt.js.map +1 -0
- package/dist/resource/jaeger/config.d.ts +15 -0
- package/dist/resource/jaeger/config.d.ts.map +1 -0
- package/dist/resource/jaeger/config.js +28 -0
- package/dist/resource/jaeger/config.js.map +1 -0
- package/dist/resource/jaeger/jaeger.d.ts +32 -0
- package/dist/resource/jaeger/jaeger.d.ts.map +1 -0
- package/dist/resource/jaeger/jaeger.js +101 -0
- package/dist/resource/jaeger/jaeger.js.map +1 -0
- package/dist/resource/lancedb/lancedb.d.ts +37 -0
- package/dist/resource/lancedb/lancedb.d.ts.map +1 -0
- package/dist/resource/lancedb/lancedb.js +85 -0
- package/dist/resource/lancedb/lancedb.js.map +1 -0
- package/dist/resource/lancedb/store.d.ts +29 -0
- package/dist/resource/lancedb/store.d.ts.map +1 -0
- package/dist/resource/lancedb/store.js +159 -0
- package/dist/resource/lancedb/store.js.map +1 -0
- package/dist/resource/langfuse/config.d.ts +16 -0
- package/dist/resource/langfuse/config.d.ts.map +1 -0
- package/dist/resource/langfuse/config.js +29 -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/loader.d.ts +46 -0
- package/dist/resource/loader.d.ts.map +1 -0
- package/dist/resource/loader.js +127 -0
- package/dist/resource/loader.js.map +1 -0
- package/dist/resource/minio/config.d.ts +9 -0
- package/dist/resource/minio/config.d.ts.map +1 -0
- package/dist/resource/minio/config.js +19 -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/mongodb.d.ts +39 -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/mongodb/store.d.ts +71 -0
- package/dist/resource/mongodb/store.d.ts.map +1 -0
- package/dist/resource/mongodb/store.js +148 -0
- package/dist/resource/mongodb/store.js.map +1 -0
- package/dist/resource/nextcloud/config.d.ts +14 -0
- package/dist/resource/nextcloud/config.d.ts.map +1 -0
- package/dist/resource/nextcloud/config.js +17 -0
- package/dist/resource/nextcloud/config.js.map +1 -0
- package/dist/resource/nextcloud/nextcloud.d.ts +48 -0
- package/dist/resource/nextcloud/nextcloud.d.ts.map +1 -0
- package/dist/resource/nextcloud/nextcloud.js +157 -0
- package/dist/resource/nextcloud/nextcloud.js.map +1 -0
- package/dist/resource/nextcloud/prompt.d.ts +2 -0
- package/dist/resource/nextcloud/prompt.d.ts.map +1 -0
- package/dist/resource/nextcloud/prompt.js +2 -0
- package/dist/resource/nextcloud/prompt.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 +90 -0
- package/dist/resource/notion/notion.js.map +1 -0
- package/dist/resource/oci/config.d.ts +37 -0
- package/dist/resource/oci/config.d.ts.map +1 -0
- package/dist/resource/oci/config.js +60 -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/postgres/postgres.d.ts +39 -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/postgres/store.d.ts +21 -0
- package/dist/resource/postgres/store.d.ts.map +1 -0
- package/dist/resource/postgres/store.js +53 -0
- package/dist/resource/postgres/store.js.map +1 -0
- package/dist/resource/qingstor/config.d.ts +10 -0
- package/dist/resource/qingstor/config.d.ts.map +1 -0
- package/dist/resource/qingstor/config.js +20 -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 +37 -0
- package/dist/resource/r2/config.d.ts.map +1 -0
- package/dist/resource/r2/config.js +63 -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 +30 -0
- package/dist/resource/redis/redis.d.ts.map +1 -0
- package/dist/resource/redis/redis.js +37 -0
- package/dist/resource/redis/redis.js.map +1 -0
- package/dist/resource/redis/store.d.ts +63 -0
- package/dist/resource/redis/store.d.ts.map +1 -0
- package/dist/resource/redis/store.js +243 -0
- package/dist/resource/redis/store.js.map +1 -0
- package/dist/resource/registry.d.ts +42 -0
- package/dist/resource/registry.d.ts.map +1 -0
- package/dist/resource/registry.js +405 -0
- package/dist/resource/registry.js.map +1 -0
- package/dist/resource/s3/config.d.ts +36 -0
- package/dist/resource/s3/config.d.ts.map +1 -0
- package/dist/resource/s3/config.js +61 -0
- package/dist/resource/s3/config.js.map +1 -0
- package/dist/resource/s3/mock.d.ts +17 -0
- package/dist/resource/s3/mock.d.ts.map +1 -0
- package/dist/resource/s3/mock.js +214 -0
- package/dist/resource/s3/mock.js.map +1 -0
- package/dist/resource/s3/s3.d.ts +50 -0
- package/dist/resource/s3/s3.d.ts.map +1 -0
- package/dist/resource/s3/s3.js +201 -0
- package/dist/resource/s3/s3.js.map +1 -0
- package/dist/resource/s3_alias.d.ts +112 -0
- package/dist/resource/s3_alias.d.ts.map +1 -0
- package/dist/resource/s3_alias.js +155 -0
- package/dist/resource/s3_alias.js.map +1 -0
- package/dist/resource/scaleway/config.d.ts +10 -0
- package/dist/resource/scaleway/config.d.ts.map +1 -0
- package/dist/resource/scaleway/config.js +20 -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 +9 -0
- package/dist/resource/seaweedfs/config.d.ts.map +1 -0
- package/dist/resource/seaweedfs/config.js +19 -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/slack.d.ts +33 -0
- package/dist/resource/slack/slack.d.ts.map +1 -0
- package/dist/resource/slack/slack.js +88 -0
- package/dist/resource/slack/slack.js.map +1 -0
- package/dist/resource/ssh/config.d.ts +20 -0
- package/dist/resource/ssh/config.d.ts.map +1 -0
- package/dist/resource/ssh/config.js +33 -0
- package/dist/resource/ssh/config.js.map +1 -0
- package/dist/resource/ssh/prompt.d.ts +2 -0
- package/dist/resource/ssh/prompt.d.ts.map +1 -0
- package/dist/resource/ssh/prompt.js +18 -0
- package/dist/resource/ssh/prompt.js.map +1 -0
- package/dist/resource/ssh/ssh.d.ts +51 -0
- package/dist/resource/ssh/ssh.d.ts.map +1 -0
- package/dist/resource/ssh/ssh.js +169 -0
- package/dist/resource/ssh/ssh.js.map +1 -0
- package/dist/resource/supabase/config.d.ts +38 -0
- package/dist/resource/supabase/config.d.ts.map +1 -0
- package/dist/resource/supabase/config.js +63 -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 +10 -0
- package/dist/resource/tencent/config.d.ts.map +1 -0
- package/dist/resource/tencent/config.js +20 -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 +15 -0
- package/dist/resource/trello/config.d.ts.map +1 -0
- package/dist/resource/trello/config.js +28 -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 +36 -0
- package/dist/resource/wasabi/config.d.ts.map +1 -0
- package/dist/resource/wasabi/config.js +60 -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/runtime/python/local.d.ts +23 -0
- package/dist/runtime/python/local.d.ts.map +1 -0
- package/dist/runtime/python/local.js +98 -0
- package/dist/runtime/python/local.js.map +1 -0
- package/dist/runtime/sandbox/daytona/config.d.ts +14 -0
- package/dist/runtime/sandbox/daytona/config.d.ts.map +1 -0
- package/dist/runtime/sandbox/daytona/config.js +15 -0
- package/dist/runtime/sandbox/daytona/config.js.map +1 -0
- package/dist/runtime/sandbox/daytona/runtime.d.ts +28 -0
- package/dist/runtime/sandbox/daytona/runtime.d.ts.map +1 -0
- package/dist/runtime/sandbox/daytona/runtime.js +89 -0
- package/dist/runtime/sandbox/daytona/runtime.js.map +1 -0
- package/dist/runtime/sandbox/docker/config.d.ts +13 -0
- package/dist/runtime/sandbox/docker/config.d.ts.map +1 -0
- package/dist/runtime/sandbox/docker/config.js +15 -0
- package/dist/runtime/sandbox/docker/config.js.map +1 -0
- package/dist/runtime/sandbox/docker/constants.d.ts +2 -0
- package/dist/runtime/sandbox/docker/constants.d.ts.map +1 -0
- package/dist/runtime/sandbox/docker/constants.js +15 -0
- package/dist/runtime/sandbox/docker/constants.js.map +1 -0
- package/dist/runtime/sandbox/docker/runtime.d.ts +27 -0
- package/dist/runtime/sandbox/docker/runtime.d.ts.map +1 -0
- package/dist/runtime/sandbox/docker/runtime.js +95 -0
- package/dist/runtime/sandbox/docker/runtime.js.map +1 -0
- package/dist/runtime/sandbox/e2b/config.d.ts +13 -0
- package/dist/runtime/sandbox/e2b/config.d.ts.map +1 -0
- package/dist/runtime/sandbox/e2b/config.js +15 -0
- package/dist/runtime/sandbox/e2b/config.js.map +1 -0
- package/dist/runtime/sandbox/e2b/runtime.d.ts +27 -0
- package/dist/runtime/sandbox/e2b/runtime.d.ts.map +1 -0
- package/dist/runtime/sandbox/e2b/runtime.js +93 -0
- package/dist/runtime/sandbox/e2b/runtime.js.map +1 -0
- package/dist/runtime/sandbox/smolvm/config.d.ts +15 -0
- package/dist/runtime/sandbox/smolvm/config.d.ts.map +1 -0
- package/dist/runtime/sandbox/smolvm/config.js +15 -0
- package/dist/runtime/sandbox/smolvm/config.js.map +1 -0
- package/dist/runtime/sandbox/smolvm/constants.d.ts +11 -0
- package/dist/runtime/sandbox/smolvm/constants.d.ts.map +1 -0
- package/dist/runtime/sandbox/smolvm/constants.js +39 -0
- package/dist/runtime/sandbox/smolvm/constants.js.map +1 -0
- package/dist/runtime/sandbox/smolvm/runtime.d.ts +39 -0
- package/dist/runtime/sandbox/smolvm/runtime.d.ts.map +1 -0
- package/dist/runtime/sandbox/smolvm/runtime.js +111 -0
- package/dist/runtime/sandbox/smolvm/runtime.js.map +1 -0
- package/dist/runtime/sandbox/ssh/config.d.ts +25 -0
- package/dist/runtime/sandbox/ssh/config.d.ts.map +1 -0
- package/dist/runtime/sandbox/ssh/config.js +23 -0
- package/dist/runtime/sandbox/ssh/config.js.map +1 -0
- package/dist/runtime/sandbox/ssh/constants.d.ts +12 -0
- package/dist/runtime/sandbox/ssh/constants.d.ts.map +1 -0
- package/dist/runtime/sandbox/ssh/constants.js +32 -0
- package/dist/runtime/sandbox/ssh/constants.js.map +1 -0
- package/dist/runtime/sandbox/ssh/runtime.d.ts +40 -0
- package/dist/runtime/sandbox/ssh/runtime.d.ts.map +1 -0
- package/dist/runtime/sandbox/ssh/runtime.js +139 -0
- package/dist/runtime/sandbox/ssh/runtime.js.map +1 -0
- package/dist/secrets/aws.d.ts +22 -0
- package/dist/secrets/aws.d.ts.map +1 -0
- package/dist/secrets/aws.js +80 -0
- package/dist/secrets/aws.js.map +1 -0
- package/dist/secrets/config.d.ts +39 -0
- package/dist/secrets/config.d.ts.map +1 -0
- package/dist/secrets/config.js +95 -0
- package/dist/secrets/config.js.map +1 -0
- package/dist/secrets/constants.d.ts +3 -0
- package/dist/secrets/constants.d.ts.map +1 -0
- package/dist/secrets/constants.js +58 -0
- package/dist/secrets/constants.js.map +1 -0
- package/dist/secrets/dotenv.d.ts +13 -0
- package/dist/secrets/dotenv.d.ts.map +1 -0
- package/dist/secrets/dotenv.js +40 -0
- package/dist/secrets/dotenv.js.map +1 -0
- package/dist/secrets/env.d.ts +10 -0
- package/dist/secrets/env.d.ts.map +1 -0
- package/dist/secrets/env.js +32 -0
- package/dist/secrets/env.js.map +1 -0
- package/dist/secrets/onepassword.d.ts +79 -0
- package/dist/secrets/onepassword.d.ts.map +1 -0
- package/dist/secrets/onepassword.js +141 -0
- package/dist/secrets/onepassword.js.map +1 -0
- package/dist/shell/console/redis/constants.d.ts +3 -0
- package/dist/shell/console/redis/constants.d.ts.map +1 -0
- package/dist/shell/console/redis/constants.js +22 -0
- package/dist/shell/console/redis/constants.js.map +1 -0
- package/dist/shell/console/redis/index.d.ts +2 -0
- package/dist/shell/console/redis/index.d.ts.map +1 -0
- package/dist/shell/console/redis/index.js +15 -0
- package/dist/shell/console/redis/index.js.map +1 -0
- package/dist/shell/console/redis/store.d.ts +67 -0
- package/dist/shell/console/redis/store.d.ts.map +1 -0
- package/dist/shell/console/redis/store.js +176 -0
- package/dist/shell/console/redis/store.js.map +1 -0
- package/dist/test-utils.d.ts +11 -0
- package/dist/test-utils.d.ts.map +1 -0
- package/dist/test-utils.js +38 -0
- package/dist/test-utils.js.map +1 -0
- package/dist/version.d.ts +2 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +21 -0
- package/dist/version.js.map +1 -0
- package/dist/workspace/fuse.d.ts +11 -0
- package/dist/workspace/fuse.d.ts.map +1 -0
- package/dist/workspace/fuse.js +129 -0
- package/dist/workspace/fuse.js.map +1 -0
- package/dist/workspace/namespace/disk.d.ts +28 -0
- package/dist/workspace/namespace/disk.d.ts.map +1 -0
- package/dist/workspace/namespace/disk.js +110 -0
- package/dist/workspace/namespace/disk.js.map +1 -0
- package/dist/workspace/namespace/redis.d.ts +31 -0
- package/dist/workspace/namespace/redis.d.ts.map +1 -0
- package/dist/workspace/namespace/redis.js +99 -0
- package/dist/workspace/namespace/redis.js.map +1 -0
- package/dist/workspace/record/disk.d.ts +47 -0
- package/dist/workspace/record/disk.d.ts.map +1 -0
- package/dist/workspace/record/disk.js +229 -0
- package/dist/workspace/record/disk.js.map +1 -0
- package/dist/workspace/session/disk.d.ts +22 -0
- package/dist/workspace/session/disk.d.ts.map +1 -0
- package/dist/workspace/session/disk.js +54 -0
- package/dist/workspace/session/disk.js.map +1 -0
- package/dist/workspace/session/redis.d.ts +32 -0
- package/dist/workspace/session/redis.d.ts.map +1 -0
- package/dist/workspace/session/redis.js +106 -0
- package/dist/workspace/session/redis.js.map +1 -0
- package/dist/workspace/store/disk.d.ts +46 -0
- package/dist/workspace/store/disk.d.ts.map +1 -0
- package/dist/workspace/store/disk.js +119 -0
- package/dist/workspace/store/disk.js.map +1 -0
- package/dist/workspace/store/redis.d.ts +43 -0
- package/dist/workspace/store/redis.d.ts.map +1 -0
- package/dist/workspace/store/redis.js +126 -0
- package/dist/workspace/store/redis.js.map +1 -0
- package/dist/workspace/workspace/kernel_mounts.d.ts +48 -0
- package/dist/workspace/workspace/kernel_mounts.d.ts.map +1 -0
- package/dist/workspace/workspace/kernel_mounts.js +117 -0
- package/dist/workspace/workspace/kernel_mounts.js.map +1 -0
- package/dist/workspace.d.ts +44 -0
- package/dist/workspace.d.ts.map +1 -0
- package/dist/workspace.js +127 -0
- package/dist/workspace.js.map +1 -0
- package/package.json +24 -9
- package/dist/aliyun-S62BR3TB.js +0 -11
- package/dist/aliyun-S62BR3TB.js.map +0 -1
- package/dist/backblaze-4EKSW63F.js +0 -11
- package/dist/backblaze-4EKSW63F.js.map +0 -1
- package/dist/box-ZPLZAGMK.js +0 -8
- package/dist/box-ZPLZAGMK.js.map +0 -1
- package/dist/ceph-ALKLD3MO.js +0 -11
- package/dist/ceph-ALKLD3MO.js.map +0 -1
- package/dist/chunk-2A4YGVBM.js +0 -81
- package/dist/chunk-2A4YGVBM.js.map +0 -1
- package/dist/chunk-2HCYLVGY.js +0 -28
- package/dist/chunk-2HCYLVGY.js.map +0 -1
- package/dist/chunk-2VPZAH5Q.js +0 -20
- package/dist/chunk-2VPZAH5Q.js.map +0 -1
- package/dist/chunk-3JZQ6VSZ.js +0 -38
- package/dist/chunk-3JZQ6VSZ.js.map +0 -1
- package/dist/chunk-4IF4TGAI.js +0 -11
- package/dist/chunk-4IF4TGAI.js.map +0 -1
- package/dist/chunk-5H6KNEPP.js +0 -56
- package/dist/chunk-5H6KNEPP.js.map +0 -1
- package/dist/chunk-5K2MWDCE.js +0 -56
- package/dist/chunk-5K2MWDCE.js.map +0 -1
- package/dist/chunk-6SVXWRKX.js +0 -56
- package/dist/chunk-6SVXWRKX.js.map +0 -1
- package/dist/chunk-6VOIUGAD.js +0 -68
- package/dist/chunk-6VOIUGAD.js.map +0 -1
- package/dist/chunk-7JYHFXXC.js +0 -82
- package/dist/chunk-7JYHFXXC.js.map +0 -1
- package/dist/chunk-7VQQFWV6.js +0 -20
- package/dist/chunk-7VQQFWV6.js.map +0 -1
- package/dist/chunk-7ZP6TPHX.js +0 -87
- package/dist/chunk-7ZP6TPHX.js.map +0 -1
- package/dist/chunk-ADEXNSYU.js +0 -87
- package/dist/chunk-ADEXNSYU.js.map +0 -1
- package/dist/chunk-AQSYAXL4.js +0 -16
- package/dist/chunk-AQSYAXL4.js.map +0 -1
- package/dist/chunk-ATLXMNKD.js +0 -34
- package/dist/chunk-ATLXMNKD.js.map +0 -1
- package/dist/chunk-BYCUGFRF.js +0 -86
- package/dist/chunk-BYCUGFRF.js.map +0 -1
- package/dist/chunk-BZTVYOES.js +0 -50
- package/dist/chunk-BZTVYOES.js.map +0 -1
- package/dist/chunk-CRC4YWXB.js +0 -79
- package/dist/chunk-CRC4YWXB.js.map +0 -1
- package/dist/chunk-CTGXJHO5.js +0 -39
- package/dist/chunk-CTGXJHO5.js.map +0 -1
- package/dist/chunk-DCDBIXVZ.js +0 -35
- package/dist/chunk-DCDBIXVZ.js.map +0 -1
- package/dist/chunk-DDAFNROK.js +0 -750
- package/dist/chunk-DDAFNROK.js.map +0 -1
- package/dist/chunk-DQIEWEAW.js +0 -85
- package/dist/chunk-DQIEWEAW.js.map +0 -1
- package/dist/chunk-EBI4IHDC.js +0 -73
- package/dist/chunk-EBI4IHDC.js.map +0 -1
- package/dist/chunk-EIUTZ6N7.js +0 -84
- package/dist/chunk-EIUTZ6N7.js.map +0 -1
- package/dist/chunk-EJZG5VUF.js +0 -190
- package/dist/chunk-EJZG5VUF.js.map +0 -1
- package/dist/chunk-ENW5BVYN.js +0 -50
- package/dist/chunk-ENW5BVYN.js.map +0 -1
- package/dist/chunk-ETIAW4YD.js +0 -56
- package/dist/chunk-ETIAW4YD.js.map +0 -1
- package/dist/chunk-EUPXAYPB.js +0 -20
- package/dist/chunk-EUPXAYPB.js.map +0 -1
- package/dist/chunk-FA6YNU75.js +0 -56
- package/dist/chunk-FA6YNU75.js.map +0 -1
- package/dist/chunk-FFH6R5VQ.js +0 -28
- package/dist/chunk-FFH6R5VQ.js.map +0 -1
- package/dist/chunk-GE6H2COM.js +0 -82
- package/dist/chunk-GE6H2COM.js.map +0 -1
- package/dist/chunk-GMMQ3ZK4.js +0 -56
- package/dist/chunk-GMMQ3ZK4.js.map +0 -1
- package/dist/chunk-GSGE3M5P.js +0 -82
- package/dist/chunk-GSGE3M5P.js.map +0 -1
- package/dist/chunk-H64SB6VO.js +0 -335
- package/dist/chunk-H64SB6VO.js.map +0 -1
- package/dist/chunk-HCRYAFBI.js +0 -50
- package/dist/chunk-HCRYAFBI.js.map +0 -1
- package/dist/chunk-HOPUP6LA.js +0 -982
- package/dist/chunk-HOPUP6LA.js.map +0 -1
- package/dist/chunk-HS24BL6W.js +0 -160
- package/dist/chunk-HS24BL6W.js.map +0 -1
- package/dist/chunk-HVYVG5KQ.js +0 -16
- package/dist/chunk-HVYVG5KQ.js.map +0 -1
- package/dist/chunk-I7CPLZNW.js +0 -56
- package/dist/chunk-I7CPLZNW.js.map +0 -1
- package/dist/chunk-IFUCGI4I.js +0 -35
- package/dist/chunk-IFUCGI4I.js.map +0 -1
- package/dist/chunk-IFYXSSKR.js +0 -227
- package/dist/chunk-IFYXSSKR.js.map +0 -1
- package/dist/chunk-IXA4DQE4.js +0 -20
- package/dist/chunk-IXA4DQE4.js.map +0 -1
- package/dist/chunk-IZMKMD3O.js +0 -11
- package/dist/chunk-IZMKMD3O.js.map +0 -1
- package/dist/chunk-JJERW2BI.js +0 -56
- package/dist/chunk-JJERW2BI.js.map +0 -1
- package/dist/chunk-JQR4HVUX.js +0 -94
- package/dist/chunk-JQR4HVUX.js.map +0 -1
- package/dist/chunk-JXOMDLFS.js +0 -87
- package/dist/chunk-JXOMDLFS.js.map +0 -1
- package/dist/chunk-KIX6N7NT.js +0 -1001
- package/dist/chunk-KIX6N7NT.js.map +0 -1
- package/dist/chunk-L42UTDFK.js +0 -40
- package/dist/chunk-L42UTDFK.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-MONC734W.js +0 -36
- package/dist/chunk-MONC734W.js.map +0 -1
- package/dist/chunk-N72RLCMU.js +0 -56
- package/dist/chunk-N72RLCMU.js.map +0 -1
- package/dist/chunk-ND4IWJ4V.js +0 -29
- package/dist/chunk-ND4IWJ4V.js.map +0 -1
- package/dist/chunk-NZ3EKGW4.js +0 -1312
- package/dist/chunk-NZ3EKGW4.js.map +0 -1
- package/dist/chunk-OAE57MNL.js +0 -68
- package/dist/chunk-OAE57MNL.js.map +0 -1
- package/dist/chunk-OHKGIQB4.js +0 -87
- package/dist/chunk-OHKGIQB4.js.map +0 -1
- package/dist/chunk-OQKNDS66.js +0 -7
- package/dist/chunk-OQKNDS66.js.map +0 -1
- package/dist/chunk-OXEQSPND.js +0 -50
- package/dist/chunk-OXEQSPND.js.map +0 -1
- package/dist/chunk-PKNE5J2B.js +0 -82
- package/dist/chunk-PKNE5J2B.js.map +0 -1
- package/dist/chunk-PSXXEGYQ.js +0 -16
- package/dist/chunk-PSXXEGYQ.js.map +0 -1
- package/dist/chunk-QAOVABCR.js +0 -79
- package/dist/chunk-QAOVABCR.js.map +0 -1
- package/dist/chunk-QQ7FP4GD.js +0 -56
- package/dist/chunk-QQ7FP4GD.js.map +0 -1
- package/dist/chunk-QYLVMC6B.js +0 -94
- package/dist/chunk-QYLVMC6B.js.map +0 -1
- package/dist/chunk-RX3XR65X.js +0 -56
- package/dist/chunk-RX3XR65X.js.map +0 -1
- package/dist/chunk-RYQJJB4C.js +0 -30
- package/dist/chunk-RYQJJB4C.js.map +0 -1
- package/dist/chunk-TUF7TCN7.js +0 -56
- package/dist/chunk-TUF7TCN7.js.map +0 -1
- package/dist/chunk-TUX36JY5.js +0 -56
- package/dist/chunk-TUX36JY5.js.map +0 -1
- package/dist/chunk-TWRQCQWU.js +0 -1153
- package/dist/chunk-TWRQCQWU.js.map +0 -1
- package/dist/chunk-U6DFQRG3.js +0 -20
- package/dist/chunk-U6DFQRG3.js.map +0 -1
- package/dist/chunk-VI5YTKNY.js +0 -20
- package/dist/chunk-VI5YTKNY.js.map +0 -1
- package/dist/chunk-WG5YS6TC.js +0 -872
- package/dist/chunk-WG5YS6TC.js.map +0 -1
- package/dist/chunk-WMJJ4WGF.js +0 -56
- package/dist/chunk-WMJJ4WGF.js.map +0 -1
- package/dist/chunk-WY4FNH42.js +0 -113
- package/dist/chunk-WY4FNH42.js.map +0 -1
- package/dist/chunk-XIG5BWWH.js +0 -75
- package/dist/chunk-XIG5BWWH.js.map +0 -1
- package/dist/chunk-XJBC3OYX.js +0 -11
- package/dist/chunk-XJBC3OYX.js.map +0 -1
- package/dist/chunk-XPRDXWK7.js +0 -93
- package/dist/chunk-XPRDXWK7.js.map +0 -1
- package/dist/chunk-YKRQSZS7.js +0 -96
- package/dist/chunk-YKRQSZS7.js.map +0 -1
- package/dist/chunk-YMBL3VJB.js +0 -87
- package/dist/chunk-YMBL3VJB.js.map +0 -1
- package/dist/chunk-YUJBXFYK.js +0 -1205
- package/dist/chunk-YUJBXFYK.js.map +0 -1
- package/dist/chunk-YZ4ZJNOL.js +0 -72
- package/dist/chunk-YZ4ZJNOL.js.map +0 -1
- package/dist/chunk-ZTHVEXIV.js +0 -11
- package/dist/chunk-ZTHVEXIV.js.map +0 -1
- package/dist/chunk-ZVSYUCYS.js +0 -120
- package/dist/chunk-ZVSYUCYS.js.map +0 -1
- package/dist/config-2YBCHU2W.js +0 -13
- package/dist/config-2YBCHU2W.js.map +0 -1
- package/dist/config-3YRGRW72.js +0 -14
- package/dist/config-3YRGRW72.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-5ZRKJTKG.js +0 -12
- package/dist/config-5ZRKJTKG.js.map +0 -1
- package/dist/config-A25LTL5W.js +0 -11
- package/dist/config-A25LTL5W.js.map +0 -1
- package/dist/config-CLU7JABG.js +0 -9
- package/dist/config-CLU7JABG.js.map +0 -1
- package/dist/config-D2RF7L3N.js +0 -9
- package/dist/config-D2RF7L3N.js.map +0 -1
- package/dist/config-E55TKM6K.js +0 -9
- package/dist/config-E55TKM6K.js.map +0 -1
- package/dist/config-ELDOFRJW.js +0 -9
- package/dist/config-ELDOFRJW.js.map +0 -1
- package/dist/config-FPC3RBFD.js +0 -13
- package/dist/config-FPC3RBFD.js.map +0 -1
- package/dist/config-FPM3LAW7.js +0 -9
- package/dist/config-FPM3LAW7.js.map +0 -1
- package/dist/config-G3F54CS4.js +0 -14
- package/dist/config-G3F54CS4.js.map +0 -1
- package/dist/config-G43HRUI3.js +0 -9
- package/dist/config-G43HRUI3.js.map +0 -1
- package/dist/config-GG3WO5PB.js +0 -14
- package/dist/config-GG3WO5PB.js.map +0 -1
- package/dist/config-JUYBWAZE.js +0 -9
- package/dist/config-JUYBWAZE.js.map +0 -1
- package/dist/config-LJ5T6TVA.js +0 -17
- package/dist/config-LJ5T6TVA.js.map +0 -1
- package/dist/config-MDSAE4O3.js +0 -11
- package/dist/config-MDSAE4O3.js.map +0 -1
- package/dist/config-NRIOKK5T.js +0 -9
- package/dist/config-NRIOKK5T.js.map +0 -1
- package/dist/config-OYK2BSJK.js +0 -9
- package/dist/config-OYK2BSJK.js.map +0 -1
- package/dist/config-PB3KA2CE.js +0 -9
- package/dist/config-PB3KA2CE.js.map +0 -1
- package/dist/config-QY4IL3PH.js +0 -12
- package/dist/config-QY4IL3PH.js.map +0 -1
- package/dist/config-R4LAOEDS.js +0 -9
- package/dist/config-R4LAOEDS.js.map +0 -1
- package/dist/config-RIAAD6RW.js +0 -14
- package/dist/config-RIAAD6RW.js.map +0 -1
- package/dist/config-SYNEQAUB.js +0 -9
- package/dist/config-SYNEQAUB.js.map +0 -1
- package/dist/config-TJKGYA2B.js +0 -14
- package/dist/config-TJKGYA2B.js.map +0 -1
- package/dist/config-UU27ALAA.js +0 -9
- package/dist/config-UU27ALAA.js.map +0 -1
- package/dist/config-UURRGA7U.js +0 -13
- package/dist/config-UURRGA7U.js.map +0 -1
- package/dist/config-VPLHQXVE.js +0 -13
- package/dist/config-VPLHQXVE.js.map +0 -1
- package/dist/config-WRACCRPN.js +0 -9
- package/dist/config-WRACCRPN.js.map +0 -1
- package/dist/config-WVHKXEVE.js +0 -12
- package/dist/config-WVHKXEVE.js.map +0 -1
- package/dist/config-XU7R36IE.js +0 -14
- package/dist/config-XU7R36IE.js.map +0 -1
- package/dist/config-Y2KOUYSS.js +0 -9
- package/dist/config-Y2KOUYSS.js.map +0 -1
- package/dist/databricks_volume-CNCPTZHS.js +0 -7
- package/dist/databricks_volume-CNCPTZHS.js.map +0 -1
- package/dist/digitalocean-DJZOUB6Q.js +0 -11
- package/dist/digitalocean-DJZOUB6Q.js.map +0 -1
- package/dist/discord-ETB2CADR.js +0 -7
- package/dist/discord-ETB2CADR.js.map +0 -1
- package/dist/disk-WEHSTK3F.js +0 -7
- package/dist/disk-WEHSTK3F.js.map +0 -1
- package/dist/dropbox-XN6PGLNE.js +0 -8
- package/dist/dropbox-XN6PGLNE.js.map +0 -1
- package/dist/email-OV7XCP3T.js +0 -8
- package/dist/email-OV7XCP3T.js.map +0 -1
- package/dist/gcal-P56MRCGU.js +0 -8
- package/dist/gcal-P56MRCGU.js.map +0 -1
- package/dist/gcs-HFBIAE2C.js +0 -10
- package/dist/gcs-HFBIAE2C.js.map +0 -1
- package/dist/gdocs-LQ3UXP3J.js +0 -8
- package/dist/gdocs-LQ3UXP3J.js.map +0 -1
- package/dist/gdrive-N6UBYLON.js +0 -8
- package/dist/gdrive-N6UBYLON.js.map +0 -1
- package/dist/github-BPZREGPI.js +0 -8
- package/dist/github-BPZREGPI.js.map +0 -1
- package/dist/github_ci-7A4LUIZ7.js +0 -8
- package/dist/github_ci-7A4LUIZ7.js.map +0 -1
- package/dist/gmail-YED2MF6H.js +0 -8
- package/dist/gmail-YED2MF6H.js.map +0 -1
- package/dist/gridfs-CPLQ4G62.js +0 -9
- package/dist/gridfs-CPLQ4G62.js.map +0 -1
- package/dist/gsheets-4BNIJPQ6.js +0 -8
- package/dist/gsheets-4BNIJPQ6.js.map +0 -1
- package/dist/gslides-GDBYLO5A.js +0 -8
- package/dist/gslides-GDBYLO5A.js.map +0 -1
- package/dist/hf_buckets-FTJITQ3P.js +0 -10
- package/dist/hf_buckets-FTJITQ3P.js.map +0 -1
- package/dist/hf_datasets-6GXVKQD7.js +0 -10
- package/dist/hf_datasets-6GXVKQD7.js.map +0 -1
- package/dist/hf_models-PJPGZAC5.js +0 -10
- package/dist/hf_models-PJPGZAC5.js.map +0 -1
- package/dist/hf_spaces-LFNFOLBF.js +0 -10
- package/dist/hf_spaces-LFNFOLBF.js.map +0 -1
- package/dist/jaeger-GCA6MJ6E.js +0 -8
- package/dist/jaeger-GCA6MJ6E.js.map +0 -1
- package/dist/lancedb-TJ5YSJY5.js +0 -7
- package/dist/lancedb-TJ5YSJY5.js.map +0 -1
- package/dist/langfuse-RUMTUMXS.js +0 -8
- package/dist/langfuse-RUMTUMXS.js.map +0 -1
- package/dist/linear-BCE4KEAC.js +0 -7
- package/dist/linear-BCE4KEAC.js.map +0 -1
- package/dist/minio-5SO6KBTK.js +0 -11
- package/dist/minio-5SO6KBTK.js.map +0 -1
- package/dist/mongodb-L5CMN2EE.js +0 -7
- package/dist/mongodb-L5CMN2EE.js.map +0 -1
- package/dist/nextcloud-4O2LZVW2.js +0 -9
- package/dist/nextcloud-4O2LZVW2.js.map +0 -1
- package/dist/notion-RVKEAQ2M.js +0 -7
- package/dist/notion-RVKEAQ2M.js.map +0 -1
- package/dist/oci-OQXOIC62.js +0 -10
- package/dist/oci-OQXOIC62.js.map +0 -1
- package/dist/postgres-AV45GNRS.js +0 -7
- package/dist/postgres-AV45GNRS.js.map +0 -1
- package/dist/qingstor-W277YA4K.js +0 -11
- package/dist/qingstor-W277YA4K.js.map +0 -1
- package/dist/r2-FUA4IORE.js +0 -10
- package/dist/r2-FUA4IORE.js.map +0 -1
- package/dist/redis-LPS357NF.js +0 -8
- package/dist/redis-LPS357NF.js.map +0 -1
- package/dist/s3-FPNWWIVM.js +0 -8
- package/dist/s3-FPNWWIVM.js.map +0 -1
- package/dist/scaleway-BP3732U7.js +0 -11
- package/dist/scaleway-BP3732U7.js.map +0 -1
- package/dist/seaweedfs-MC6HIEP4.js +0 -11
- package/dist/seaweedfs-MC6HIEP4.js.map +0 -1
- package/dist/slack-JFGW7VLN.js +0 -7
- package/dist/slack-JFGW7VLN.js.map +0 -1
- package/dist/ssh-UYPG42LM.js +0 -8
- package/dist/ssh-UYPG42LM.js.map +0 -1
- package/dist/supabase-A3KUFMDC.js +0 -10
- package/dist/supabase-A3KUFMDC.js.map +0 -1
- package/dist/tencent-5464UQ2X.js +0 -11
- package/dist/tencent-5464UQ2X.js.map +0 -1
- package/dist/trello-O2KB3FUO.js +0 -8
- package/dist/trello-O2KB3FUO.js.map +0 -1
- package/dist/wasabi-2IKBIWNO.js +0 -10
- package/dist/wasabi-2IKBIWNO.js.map +0 -1
- /package/dist/{append.lua → shell/console/redis/append.lua} +0 -0
- /package/dist/{cas.lua → workspace/session/cas.lua} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/resource/disk/disk.ts","../src/commands/builtin/disk/index.ts","../src/core/disk/append.ts","../src/core/disk/errors.ts","../src/core/disk/utils.ts","../src/core/disk/constants.ts","../src/core/disk/copy.ts","../src/core/disk/write.ts","../src/core/disk/create.ts","../src/core/disk/du/walk.ts","../src/core/disk/du/entries.ts","../src/core/disk/du/size.ts","../src/core/disk/exists.ts","../src/core/disk/find.ts","../src/core/disk/mkdir.ts","../src/core/disk/dest.ts","../src/core/disk/read.ts","../src/core/disk/readdir.ts","../src/core/disk/rename.ts","../src/core/disk/rm.ts","../src/core/disk/rmdir.ts","../src/core/disk/set_attrs.ts","../src/core/disk/stat.ts","../src/core/disk/stream.ts","../src/core/disk/truncate.ts","../src/core/disk/unlink.ts","../src/commands/builtin/disk/io.ts","../src/accessor/disk.ts","../src/ops/disk/index.ts","../src/resource/disk/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 chmod,\n mkdir,\n readdir,\n readFile,\n stat as fsStat,\n statfs as fsStatfs,\n writeFile,\n} from 'node:fs/promises'\nimport path from 'node:path'\nimport {\n BaseResource,\n CapacityState,\n PathSpec,\n ResourceName,\n makeResolveGlob,\n mountKey,\n mountPrefixOf,\n type CapacityResult,\n type FileStat,\n type FindOptions,\n type RegisteredCommand,\n type RegisteredOp,\n type Resource,\n} from '@struktoai/mirage-core'\nimport { DISK_COMMANDS } from '../../commands/builtin/disk/index.ts'\nimport { appendBytes as appendCore } from '../../core/disk/append.ts'\nimport { SCOPE_ERROR } from '../../core/disk/constants.ts'\nimport { copy as copyCore } from '../../core/disk/copy.ts'\nimport { create as createCore } from '../../core/disk/create.ts'\nimport { size as duSizeCore, entries as duEntriesCore } from '../../core/disk/du/index.ts'\nimport { exists as existsCore } from '../../core/disk/exists.ts'\nimport { find as findCore, type FindOptions as DiskFindOptions } from '../../core/disk/find.ts'\nimport { mkdir as mkdirCore } from '../../core/disk/mkdir.ts'\nimport { read as readCoreFn } from '../../core/disk/read.ts'\nimport { readdir as readdirCore } from '../../core/disk/readdir.ts'\nimport { rename as renameCore } from '../../core/disk/rename.ts'\nimport { rmR as rmRCore } from '../../core/disk/rm.ts'\nimport { rmdir as rmdirCore } from '../../core/disk/rmdir.ts'\nimport { stat as statCore } from '../../core/disk/stat.ts'\nimport { stream as streamCore } from '../../core/disk/stream.ts'\nimport { truncate as truncateCore } from '../../core/disk/truncate.ts'\nimport { unlink as unlinkCore } from '../../core/disk/unlink.ts'\nimport { writeBytes as writeCore } from '../../core/disk/write.ts'\nimport { DiskAccessor } from '../../accessor/disk.ts'\nimport { DISK_OPS } from '../../ops/disk/index.ts'\nimport { DISK_PROMPT } from './prompt.ts'\n\nconst globCore = makeResolveGlob(readdirCore, SCOPE_ERROR)\n\nexport interface DiskResourceOptions {\n root: string\n}\n\nexport interface DiskResourceState {\n type: string\n files: Record<string, Uint8Array>\n modes?: Record<string, number>\n}\n\nasync function walkFiles(root: string, current: string, out: string[]): Promise<void> {\n const entries = await readdir(current, { withFileTypes: true })\n for (const e of entries) {\n const child = path.join(current, e.name)\n if (e.isDirectory()) {\n await walkFiles(root, child, out)\n } else if (e.isFile()) {\n out.push(child)\n }\n }\n}\n\nexport class DiskResource extends BaseResource implements Resource {\n readonly kind = ResourceName.DISK\n readonly cachesReads: boolean = false\n // byte store: stat() sizes every file from metadata\n readonly sizesAlwaysKnown: boolean = true\n override readonly indexTtl: number = 60\n readonly prompt = DISK_PROMPT\n readonly root: string\n readonly accessor: DiskAccessor\n readonly opsMap: Record<string, unknown> = {\n read_bytes: readCoreFn,\n write: writeCore,\n readdir: readdirCore,\n stat: statCore,\n unlink: unlinkCore,\n rmdir: rmdirCore,\n copy: copyCore,\n rename: renameCore,\n mkdir: mkdirCore,\n read_stream: streamCore,\n rm_recursive: rmRCore,\n du_size: duSizeCore,\n du_entries: duEntriesCore,\n create: createCore,\n truncate: truncateCore,\n exists: existsCore,\n find_flat: findCore,\n append: appendCore,\n }\n\n constructor(options: DiskResourceOptions) {\n super()\n this.root = path.resolve(options.root)\n this.accessor = new DiskAccessor(this.root)\n }\n\n // The resolved root is the storage: two DiskResources built on the same\n // directory are one store, however they were spelled.\n override storageId(): string {\n return `${this.kind}:${this.root}`\n }\n\n async open(): Promise<void> {\n await mkdir(this.root, { recursive: true })\n }\n\n // A real filesystem reports real numbers (QUOTA). GNU df: used counts\n // reserved blocks (blocks - bfree), available excludes them (bavail).\n override async statfs(): Promise<CapacityResult> {\n const st = await fsStatfs(this.root)\n const bsize = st.bsize\n return {\n state: CapacityState.QUOTA,\n total: st.blocks * bsize,\n used: (st.blocks - st.bfree) * bsize,\n available: st.bavail * bsize,\n inodes: st.files,\n inodesUsed: st.files - st.ffree,\n inodesFree: st.ffree,\n }\n }\n\n ops(): readonly RegisteredOp[] {\n return DISK_OPS\n }\n\n commands(): readonly RegisteredCommand[] {\n return DISK_COMMANDS\n }\n\n streamPath(p: PathSpec): AsyncIterable<Uint8Array> {\n return streamCore(this.accessor, p)\n }\n\n readFile(p: PathSpec): Promise<Uint8Array> {\n return readCoreFn(this.accessor, p)\n }\n\n writeFile(p: PathSpec, data: Uint8Array): Promise<void> {\n return writeCore(this.accessor, p, data)\n }\n\n appendFile(p: PathSpec, data: Uint8Array): Promise<void> {\n return appendCore(this.accessor, p, data)\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)\n }\n\n exists(p: PathSpec): Promise<boolean> {\n return existsCore(this.accessor, p)\n }\n\n mkdir(p: PathSpec, options?: { recursive?: boolean }): Promise<void> {\n return mkdirCore(this.accessor, p, options?.recursive === true)\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 as DiskFindOptions)\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 async getState(): Promise<DiskResourceState> {\n await mkdir(this.root, { recursive: true })\n const files: Record<string, Uint8Array> = {}\n const modes: Record<string, number> = {}\n const fileList: string[] = []\n await walkFiles(this.root, this.root, fileList)\n for (const full of fileList) {\n const rel = path.relative(this.root, full).split(path.sep).join('/')\n const data = await readFile(full)\n files[rel] = new Uint8Array(data.buffer, data.byteOffset, data.byteLength)\n // Capture the real inode mode: it is the base truth for disk\n // permissions (the sidecar is gone), so restore must reapply it or\n // a chmod would reset to the host umask.\n modes[rel] = (await fsStat(full)).mode & 0o7777\n }\n return {\n type: this.kind,\n files,\n modes,\n }\n }\n\n async loadState(state: DiskResourceState): Promise<void> {\n await mkdir(this.root, { recursive: true })\n for (const [rel, data] of Object.entries(state.files)) {\n const full = path.join(this.root, rel)\n await mkdir(path.dirname(full), { recursive: true })\n await writeFile(full, data)\n const mode = state.modes?.[rel]\n if (mode !== undefined) await chmod(full, mode)\n }\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 RegisteredCommand, ResourceName, makeGenericCommands } from '@struktoai/mirage-core'\nimport type { DiskAccessor } from '../../../accessor/disk.ts'\nimport { DISK_IO } from './io.ts'\n\nexport const DISK_COMMANDS: readonly RegisteredCommand[] = [\n ...makeGenericCommands<DiskAccessor>(ResourceName.DISK, DISK_IO),\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 { DiskAccessor } from '../../accessor/disk.ts'\nimport { appendFile } from 'node:fs/promises'\nimport { ResourceName, invalidateAfterWrite, record, type PathSpec } from '@struktoai/mirage-core'\nimport { diskError } from './errors.ts'\nimport { resolveSafe } from './utils.ts'\n\nexport async function appendBytes(\n accessor: DiskAccessor,\n p: PathSpec,\n data: Uint8Array,\n): Promise<void> {\n const start = performance.now()\n const virtual = p.mountPath\n const full = resolveSafe(accessor.root, virtual)\n try {\n await appendFile(full, data)\n } catch (err) {\n throw diskError(err, p)\n }\n record('append', virtual, ResourceName.DISK, data.byteLength, start)\n await invalidateAfterWrite(p)\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 { FsError, PathSpec } from '@struktoai/mirage-core'\n\n// Restamp a raw node:fs error against the mount path. The disk backend\n// operates on a resolved host path, so a raw ErrnoException carries that host\n// path in its message and the command boundary would print it. Only the\n// virtual path may ever reach a user-facing message: the host root is an\n// implementation detail of the mount, and leaking it discloses the server's\n// directory layout. The errno code is preserved, so the GNU strerror wording\n// at the command boundary is unchanged. Errors with no errno code (a bug, not\n// a filesystem condition) are returned untouched so they still surface.\nexport function diskError(err: unknown, spec: PathSpec): unknown {\n const code = (err as NodeJS.ErrnoException).code\n if (typeof code !== 'string') return err\n const out = new Error(spec.virtual) as FsError\n out.code = code\n out.virtualPath = spec.virtual\n return out\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 path from 'node:path'\nimport { lstripSlash } from '@struktoai/mirage-core'\n\nexport { norm, parent, gnuBasename as basename } from '@struktoai/mirage-core'\n\nexport function resolveSafe(root: string, virtual: string): string {\n const relative = lstripSlash(virtual)\n const resolved = path.resolve(root, relative)\n const rootResolved = path.resolve(root)\n if (resolved !== rootResolved && !resolved.startsWith(rootResolved + path.sep)) {\n throw new Error(`path escapes root: ${virtual}`)\n }\n return resolved\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 SCOPE_WARN = 5000\nexport const SCOPE_ERROR = 50000\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 { DiskAccessor } from '../../accessor/disk.ts'\nimport { copyFile, stat } from 'node:fs/promises'\nimport { invalidateAfterWrite, type PathSpec } from '@struktoai/mirage-core'\nimport { diskError } from './errors.ts'\nimport { resolveSafe } from './utils.ts'\n\nexport async function copy(accessor: DiskAccessor, src: PathSpec, dst: PathSpec): Promise<void> {\n const s = resolveSafe(accessor.root, src.mountPath)\n const d = resolveSafe(accessor.root, dst.mountPath)\n try {\n await copyFile(s, d)\n } catch (err) {\n // copyFile reports ENOENT both for a missing source and for a missing\n // destination parent, so the operand to blame is only knowable after\n // the failure: probe the source to tell them apart.\n let blame = dst\n if ((err as NodeJS.ErrnoException).code === 'ENOENT') {\n const srcMissing = await stat(s).then(\n () => false,\n () => true,\n )\n if (srcMissing) blame = src\n }\n throw diskError(err, blame)\n }\n await invalidateAfterWrite(dst)\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 { DiskAccessor } from '../../accessor/disk.ts'\nimport { writeFile } from 'node:fs/promises'\nimport { ResourceName, invalidateAfterWrite, record, type PathSpec } from '@struktoai/mirage-core'\nimport { diskError } from './errors.ts'\nimport { resolveSafe } from './utils.ts'\n\nexport async function writeBytes(\n accessor: DiskAccessor,\n p: PathSpec,\n data: Uint8Array,\n): Promise<void> {\n const start = performance.now()\n const virtual = p.mountPath\n const full = resolveSafe(accessor.root, virtual)\n // A write is not `mkdir -p`: GNU reports ENOENT on a missing parent\n // rather than building the chain, and the store-backed backends refuse\n // the same way. Only the virtual path may reach a stderr line.\n try {\n await writeFile(full, data)\n } catch (err) {\n throw diskError(err, p)\n }\n record('write', virtual, ResourceName.DISK, data.byteLength, start)\n await invalidateAfterWrite(p)\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 { DiskAccessor } from '../../accessor/disk.ts'\nimport type { PathSpec } from '@struktoai/mirage-core'\nimport { writeBytes } from './write.ts'\n\nexport function create(accessor: DiskAccessor, path: PathSpec): Promise<void> {\n return writeBytes(accessor, path, new Uint8Array())\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 { DiskAccessor } from '../../../accessor/disk.ts'\nimport { readdir, stat } from 'node:fs/promises'\nimport path from 'node:path'\n\nexport async function walkSizes(full: string): Promise<number> {\n let total = 0\n let st\n try {\n st = await stat(full)\n } catch {\n return 0\n }\n if (st.isFile()) return st.size\n if (!st.isDirectory()) return 0\n const entries = await readdir(full, { withFileTypes: true })\n for (const e of entries) {\n const child = path.join(full, e.name)\n if (e.isDirectory()) total += await walkSizes(child)\n else if (e.isFile()) {\n try {\n const cst = await stat(child)\n total += cst.size\n } catch {\n // ignore\n }\n }\n }\n return total\n}\n\nexport async function walkAll(\n accessor: DiskAccessor,\n full: string,\n entries: [string, number][],\n): Promise<number> {\n let total = 0\n let st\n try {\n st = await stat(full)\n } catch {\n return 0\n }\n if (st.isFile()) {\n const rel = '/' + path.relative(accessor.root, full).split(path.sep).join('/')\n entries.push([rel, st.size])\n return st.size\n }\n if (!st.isDirectory()) return 0\n const children = await readdir(full, { withFileTypes: true })\n for (const e of children) {\n const child = path.join(full, e.name)\n if (e.isDirectory()) {\n total += await walkAll(accessor, child, entries)\n } else if (e.isFile()) {\n try {\n const cst = await stat(child)\n const rel = '/' + path.relative(accessor.root, child).split(path.sep).join('/')\n entries.push([rel, cst.size])\n total += cst.size\n } catch {\n // ignore\n }\n }\n }\n return total\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 { DiskAccessor } from '../../../accessor/disk.ts'\nimport type { PathSpec } from '@struktoai/mirage-core'\nimport { norm, resolveSafe } from '../utils.ts'\nimport { walkAll } from './walk.ts'\nimport { compareCodePoints } from '@struktoai/mirage-core'\n\nexport async function entries(\n accessor: DiskAccessor,\n p: PathSpec,\n): Promise<[entries: [string, number][], total: number]> {\n const virtual = norm(p.mountPath)\n const full = resolveSafe(accessor.root, virtual)\n const entries: [string, number][] = []\n const total = await walkAll(accessor, full, entries)\n entries.sort((a, b) => compareCodePoints(a[0], b[0]))\n return [entries, total]\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 { DiskAccessor } from '../../../accessor/disk.ts'\nimport type { PathSpec } from '@struktoai/mirage-core'\nimport { resolveSafe } from '../utils.ts'\nimport { walkSizes } from './walk.ts'\n\nexport async function size(accessor: DiskAccessor, p: PathSpec): Promise<number> {\n const virtual = p.mountPath\n const full = resolveSafe(accessor.root, virtual)\n return walkSizes(full)\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 { DiskAccessor } from '../../accessor/disk.ts'\nimport { access } from 'node:fs/promises'\nimport type { PathSpec } from '@struktoai/mirage-core'\nimport { resolveSafe } from './utils.ts'\n\nexport async function exists(accessor: DiskAccessor, path: PathSpec): Promise<boolean> {\n const full = resolveSafe(accessor.root, path.mountPath)\n try {\n await access(full)\n return true\n } catch {\n return false\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 { DiskAccessor } from '../../accessor/disk.ts'\nimport { readdir, stat } from 'node:fs/promises'\nimport path from 'node:path'\nimport type { PathSpec } from '@struktoai/mirage-core'\nimport { norm, resolveSafe } from './utils.ts'\nimport {\n buildTree,\n emitStartPath,\n keep,\n type PredNode,\n startBasename,\n compareCodePoints,\n} from '@struktoai/mirage-core'\n\nexport interface FindOptions {\n name?: string | null\n type?: string | null\n minSize?: number | null\n maxSize?: number | null\n maxDepth?: number | null\n minDepth?: number | null\n nameExclude?: string | null\n orNames?: string[] | null\n iname?: string | null\n pathPattern?: string | null\n empty?: boolean | null\n tree?: PredNode | null\n mtimeMin?: number | null\n mtimeMax?: number | null\n}\n\ninterface WalkCtx {\n accessor: DiskAccessor\n base: string\n baseDepth: number\n options: FindOptions\n tree: PredNode\n results: string[]\n}\n\nasync function walk(ctx: WalkCtx, full: string, current: string, depth: number): Promise<void> {\n const opts = ctx.options\n if (opts.maxDepth !== null && opts.maxDepth !== undefined && depth > opts.maxDepth) return\n let entries\n try {\n entries = await readdir(full, { withFileTypes: true })\n } catch {\n return\n }\n for (const e of entries) {\n const kind: 'f' | 'd' = e.isDirectory() ? 'd' : 'f'\n const entryPath = current === '/' ? `/${e.name}` : `${current}/${e.name}`\n const entryName = e.name\n const entrySlashCount = (entryPath.match(/\\//g) ?? []).length\n const entryDepth = entrySlashCount - ctx.baseDepth\n\n let accept = true\n if (opts.maxDepth !== null && opts.maxDepth !== undefined && entryDepth > opts.maxDepth) {\n accept = false\n }\n let isEmpty: boolean | null = null\n if (accept && opts.empty === true) {\n try {\n isEmpty =\n kind === 'f'\n ? (await stat(path.join(full, e.name))).size === 0\n : (await readdir(path.join(full, e.name))).length === 0\n } catch {\n isEmpty = null\n }\n }\n if (\n accept &&\n !keep(\n { key: entryPath, name: entryName, kind, depth: entryDepth, isEmpty },\n ctx.tree,\n opts.minDepth,\n )\n ) {\n accept = false\n }\n\n // Directories count as size 0 for -size (deliberate GNU divergence).\n if (accept && kind !== 'f' && (opts.minSize != null || opts.maxSize != null)) {\n // Directories contribute size 0 to -size (#318).\n if (opts.minSize != null && opts.minSize > 0) accept = false\n if (opts.maxSize != null && opts.maxSize < 0) accept = false\n }\n if (\n accept &&\n kind === 'f' &&\n (opts.minSize !== null ||\n opts.maxSize !== null ||\n opts.mtimeMin !== null ||\n opts.mtimeMax !== null)\n ) {\n try {\n const st = await stat(path.join(full, e.name))\n if (opts.minSize !== null && opts.minSize !== undefined && st.size < opts.minSize)\n accept = false\n if (opts.maxSize !== null && opts.maxSize !== undefined && st.size > opts.maxSize)\n accept = false\n if (accept && (opts.mtimeMin !== undefined || opts.mtimeMax !== undefined)) {\n const mtime = st.mtime.getTime() / 1000\n if (opts.mtimeMin !== null && opts.mtimeMin !== undefined && mtime < opts.mtimeMin)\n accept = false\n if (opts.mtimeMax !== null && opts.mtimeMax !== undefined && mtime > opts.mtimeMax)\n accept = false\n }\n } catch {\n accept = false\n }\n }\n\n if (accept) ctx.results.push(entryPath)\n\n if (kind === 'd') {\n await walk(ctx, path.join(full, e.name), entryPath, depth + 1)\n }\n }\n}\n\nexport async function find(\n accessor: DiskAccessor,\n p: PathSpec,\n options: FindOptions = {},\n): Promise<string[]> {\n const virtual = norm(p.mountPath)\n const startName = startBasename(p.virtual)\n const full = resolveSafe(accessor.root, virtual)\n const baseDepth = virtual === '/' ? 0 : (virtual.match(/\\//g) ?? []).length\n const results: string[] = []\n const tree =\n options.tree ??\n buildTree({\n name: options.name,\n iname: options.iname,\n pathPattern: options.pathPattern,\n type: options.type,\n nameExclude: options.nameExclude,\n orNames: options.orNames,\n empty: options.empty,\n })\n if (options.maxDepth == null || options.maxDepth >= 0) {\n let isDir = false\n try {\n isDir = (await stat(full)).isDirectory()\n } catch {\n isDir = false\n }\n let rootEmpty: boolean | null = null\n if (isDir && options.empty === true) {\n try {\n rootEmpty = (await readdir(full)).length === 0\n } catch {\n rootEmpty = null\n }\n }\n emitStartPath(results, virtual, startName, {\n kind: 'd',\n isEmpty: rootEmpty,\n exists: isDir,\n tree,\n maxDepth: options.maxDepth,\n minDepth: options.minDepth,\n minSize: options.minSize,\n maxSize: options.maxSize,\n })\n }\n await walk({ accessor, base: virtual, baseDepth, options, tree, results }, full, virtual, 0)\n results.sort(compareCodePoints)\n return results\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 { DiskAccessor } from '../../accessor/disk.ts'\nimport { mkdir as fsMkdir } from 'node:fs/promises'\nimport {\n type PathSpec,\n invalidateAfterWrite,\n invalidateAncestors,\n norm,\n} from '@struktoai/mirage-core'\nimport { mkdirComponentError } from './dest.ts'\nimport { diskError } from './errors.ts'\nimport { resolveSafe } from './utils.ts'\n\nexport async function mkdir(\n accessor: DiskAccessor,\n path: PathSpec,\n parents = false,\n): Promise<void> {\n const root = accessor.root\n const full = resolveSafe(root, path.mountPath)\n if (parents) {\n try {\n await fsMkdir(full, { recursive: true })\n } catch (err) {\n // The kernel names the whole path; GNU names the component it tripped\n // on, so the chain is walked only now that it is known to be broken.\n const named =\n (err as NodeJS.ErrnoException).code === 'ENOTDIR'\n ? await mkdirComponentError(root, path, norm(path.mountPath))\n : null\n throw named ?? diskError(err, path)\n }\n await invalidateAfterWrite(path)\n await invalidateAncestors(path)\n return\n }\n // An existing target is EEXIST, not success: only -p is idempotent (GNU).\n // Every internal caller that mirrors a tree through this op (cp -r) probes\n // with isDirectory first, so it never reaches this path for a directory it\n // meant to reuse.\n try {\n await fsMkdir(full)\n } catch (err) {\n throw diskError(err, path)\n }\n await invalidateAfterWrite(path)\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 { stat as fsStat } from 'node:fs/promises'\nimport {\n ancestors,\n enotdir,\n mountedPath,\n type FsError,\n type PathSpec,\n} from '@struktoai/mirage-core'\nimport { resolveSafe } from './utils.ts'\n\n// The ENOTDIR `mkdir -p` owes, named after the component to blame. The disk\n// backend has a kernel, so it needs no equivalent of the store-backed\n// checkMkdirTarget: mkdir(recursive) already refuses a chain that crosses a\n// plain file, and an existing target is already EEXIST. What the kernel cannot\n// give is GNU's *wording*, because it reports the whole path where `mkdir -p`\n// names the component it tripped on. So the chain is walked here, only once\n// the op is known to have failed, and only to attribute the failure.\n//\n// Returns null when the walk finds nothing to blame, which leaves the caller\n// free to re-raise the original errno: a failure this cannot explain (a\n// permission gap, say) must still surface. Mirrors Python's\n// mkdir_component_error.\nexport async function mkdirComponentError(\n root: string,\n spec: PathSpec,\n key: string,\n): Promise<FsError | null> {\n for (const component of ancestors(key)) {\n try {\n const st = await fsStat(resolveSafe(root, component))\n if (!st.isDirectory()) return enotdir(mountedPath(spec, component))\n } catch {\n return null\n }\n }\n return null\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 { DiskAccessor } from '../../accessor/disk.ts'\nimport { open, readFile } from 'node:fs/promises'\nimport { enoent, type PathSpec, record, ResourceName } from '@struktoai/mirage-core'\nimport { resolveSafe } from './utils.ts'\n\nconst CHUNK = 1 << 20\n\nexport async function read(accessor: DiskAccessor, path: PathSpec): Promise<Uint8Array> {\n const start = performance.now()\n const virtual = path.mountPath\n const full = resolveSafe(accessor.root, virtual)\n let data: Buffer\n try {\n data = await readFile(full)\n } catch (err) {\n if ((err as NodeJS.ErrnoException).code === 'ENOENT') {\n throw enoent(path)\n }\n throw err\n }\n record('read', virtual, ResourceName.DISK, data.byteLength, start)\n return new Uint8Array(data.buffer, data.byteOffset, data.byteLength)\n}\n\n/**\n * Read a byte range, seeking rather than reading the whole file.\n *\n * A null size means the rest of the file, which has no length to allocate for\n * up front, so those reads accumulate fixed chunks until the handle is spent.\n * A stated size is one positioned read.\n *\n * @param accessor the mount's disk handle\n * @param path the path to read\n * @param _index listing cache, unused here\n * @param offset first byte to read\n * @param size how many bytes, or null for the rest\n */\nexport async function readRange(\n accessor: DiskAccessor,\n path: PathSpec,\n _index: unknown,\n offset: number,\n size: number | null,\n): Promise<Uint8Array> {\n const start = performance.now()\n const virtual = path.mountPath\n const full = resolveSafe(accessor.root, virtual)\n let handle\n try {\n handle = await open(full, 'r')\n } catch (err) {\n if ((err as NodeJS.ErrnoException).code === 'ENOENT') {\n throw enoent(path)\n }\n throw err\n }\n try {\n if (size !== null) {\n const buf = Buffer.allocUnsafe(size)\n const { bytesRead } = await handle.read(buf, 0, size, offset)\n const out = new Uint8Array(buf.buffer, buf.byteOffset, bytesRead)\n record('read', virtual, ResourceName.DISK, bytesRead, start)\n return out\n }\n const parts: Buffer[] = []\n let total = 0\n let at = offset\n for (;;) {\n const buf = Buffer.allocUnsafe(CHUNK)\n const { bytesRead } = await handle.read(buf, 0, CHUNK, at)\n if (bytesRead === 0) break\n parts.push(buf.subarray(0, bytesRead))\n total += bytesRead\n at += bytesRead\n }\n const joined = Buffer.concat(parts, total)\n record('read', virtual, ResourceName.DISK, total, start)\n return new Uint8Array(joined.buffer, joined.byteOffset, joined.byteLength)\n } finally {\n await handle.close()\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 { DiskAccessor } from '../../accessor/disk.ts'\nimport { readdir as fsReaddir } from 'node:fs/promises'\nimport {\n IndexEntry,\n ResourceType,\n enoent,\n enotdir,\n mountPrefixOf,\n rstripSlash,\n type IndexCacheStore,\n type PathSpec,\n compareCodePoints,\n} from '@struktoai/mirage-core'\nimport { norm, resolveSafe } from './utils.ts'\n\nexport async function readdir(\n accessor: DiskAccessor,\n path: PathSpec,\n index?: IndexCacheStore,\n): Promise<string[]> {\n const virtual = path.pattern !== null ? path.directory : path.mountPath\n const mountPrefix = mountPrefixOf(path.virtual, path.resourcePath)\n // Canonical key: no trailing slash (except root), or the same dir\n // indexes under two keys and cache hits return doubled-slash entries.\n const virtualKey = rstripSlash(mountPrefix + virtual) || '/'\n if (index !== undefined) {\n const cached = await index.listDir(virtualKey)\n if (cached.entries !== undefined && cached.entries !== null) {\n return cached.entries\n }\n }\n const full = resolveSafe(accessor.root, virtual)\n let entries: string[]\n try {\n entries = await fsReaddir(full)\n } catch (err) {\n // The kernel already separates ENOENT (a component does not exist) from\n // ENOTDIR (a component exists but is not a directory); keep that split\n // instead of collapsing both into one errno. Restamped onto the PathSpec\n // so the virtual path, never the real fs path, is reported.\n const code = (err as NodeJS.ErrnoException).code\n if (code === 'ENOTDIR') throw enotdir(path)\n if (code === 'ENOENT') throw enoent(path)\n throw err\n }\n const base = norm(virtual)\n const dirPrefix = base === '/' ? '/' : `${base}/`\n const sorted = [...entries].sort(compareCodePoints)\n const virtualEntries = sorted.map((e) => `${mountPrefix}${dirPrefix}${e}`)\n if (index !== undefined) {\n const indexEntries: [string, IndexEntry][] = sorted.map((name) => [\n name,\n new IndexEntry({\n id: `${dirPrefix}${name}`,\n name,\n resourceType: ResourceType.FILE,\n }),\n ])\n await index.setDir(virtualKey, indexEntries)\n }\n return virtualEntries\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 { DiskAccessor } from '../../accessor/disk.ts'\nimport { rename as fsRename } from 'node:fs/promises'\nimport {\n enoent,\n invalidateAfterUnlink,\n invalidateAfterWrite,\n type PathSpec,\n} from '@struktoai/mirage-core'\nimport { resolveSafe } from './utils.ts'\n\nexport async function rename(accessor: DiskAccessor, src: PathSpec, dst: PathSpec): Promise<void> {\n const s = resolveSafe(accessor.root, src.mountPath)\n const d = resolveSafe(accessor.root, dst.mountPath)\n try {\n await fsRename(s, d)\n } catch (err) {\n if ((err as NodeJS.ErrnoException).code === 'ENOENT') {\n throw enoent(src)\n }\n throw err\n }\n await invalidateAfterUnlink(src)\n await invalidateAfterWrite(dst)\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 { DiskAccessor } from '../../accessor/disk.ts'\nimport { rm } from 'node:fs/promises'\nimport { type PathSpec, invalidateAfterUnlink } from '@struktoai/mirage-core'\nimport { resolveSafe } from './utils.ts'\n\nexport async function rmR(accessor: DiskAccessor, path: PathSpec): Promise<void> {\n const full = resolveSafe(accessor.root, path.mountPath)\n await rm(full, { recursive: true, force: true })\n await invalidateAfterUnlink(path)\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 { DiskAccessor } from '../../accessor/disk.ts'\nimport { rmdir as fsRmdir } from 'node:fs/promises'\nimport { type PathSpec, invalidateAfterUnlink } from '@struktoai/mirage-core'\nimport { resolveSafe } from './utils.ts'\n\nexport async function rmdir(accessor: DiskAccessor, path: PathSpec): Promise<void> {\n const full = resolveSafe(accessor.root, path.mountPath)\n try {\n await fsRmdir(full)\n } catch (err) {\n if ((err as NodeJS.ErrnoException).code === 'ENOENT') return\n throw err\n }\n await invalidateAfterUnlink(path)\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 { chmod, stat as fsStat, utimes } from 'node:fs/promises'\nimport { enoent, type PathSpec } from '@struktoai/mirage-core'\nimport type { DiskAccessor } from '../../accessor/disk.ts'\nimport { resolveSafe } from './utils.ts'\n\nexport interface SetAttrsFields {\n mode?: number\n uid?: number | string\n gid?: number | string\n atime?: string\n mtime?: string\n}\n\n// Write metadata fields (the write side of stat). Applies natively what the\n// real inode can take and returns the residual: fields the caller must\n// overlay elsewhere. Times always apply. `mode` is applied with owner access\n// kept (`chmod 000` must not lock mirage itself out of reads, cp, or\n// snapshot capture; mount mode does real access control), so clamped bits\n// come back as residual. Ownership never applies (chown to arbitrary ids\n// needs privileges the process does not have) and is always residual.\nexport async function setAttrs(\n accessor: DiskAccessor,\n path: PathSpec,\n fields: SetAttrsFields,\n): Promise<Record<string, number | string>> {\n const full = resolveSafe(accessor.root, path.mountPath)\n let st\n try {\n st = await fsStat(full)\n } catch (err) {\n if ((err as NodeJS.ErrnoException).code === 'ENOENT') throw enoent(path)\n throw err\n }\n const residual: Record<string, number | string> = {}\n if (fields.mode !== undefined) {\n const keep = st.isDirectory() ? 0o700 : 0o600\n await chmod(full, fields.mode | keep)\n if ((fields.mode | keep) !== fields.mode) residual.mode = fields.mode\n }\n if (fields.uid !== undefined) residual.uid = fields.uid\n if (fields.gid !== undefined) residual.gid = fields.gid\n if (fields.atime !== undefined || fields.mtime !== undefined) {\n const newAtime = fields.atime !== undefined ? new Date(fields.atime) : st.atime\n const newMtime = fields.mtime !== undefined ? new Date(fields.mtime) : st.mtime\n await utimes(full, newAtime, newMtime)\n }\n return residual\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 { DiskAccessor } from '../../accessor/disk.ts'\nimport { stat as fsStat } from 'node:fs/promises'\nimport path from 'node:path'\nimport { FileStat, FileType, guessType, type PathSpec } from '@struktoai/mirage-core'\nimport { diskError } from './errors.ts'\nimport { resolveSafe } from './utils.ts'\n\nexport async function stat(accessor: DiskAccessor, p: PathSpec): Promise<FileStat> {\n const virtual = p.mountPath\n const full = resolveSafe(accessor.root, virtual)\n let st\n try {\n st = await fsStat(full)\n } catch (err) {\n throw diskError(err, p)\n }\n const modified = st.mtime.toISOString()\n const name = path.basename(full)\n // Fields setattr applies natively (mode, times) read from the real\n // inode, so external chmod/utime stays visible. Ownership can never be\n // applied natively (chown needs privileges), so it lives wholly in the\n // namespace overlay, merged at the stat-merge layer; host uid/gid\n // numbers would also be machine-dependent noise.\n if (st.isDirectory()) {\n return new FileStat({\n name,\n size: null,\n modified,\n type: FileType.DIRECTORY,\n mode: st.mode & 0o7777,\n atime: st.atime.toISOString(),\n })\n }\n return new FileStat({\n name,\n size: st.size,\n modified,\n fingerprint: modified,\n type: guessType(name),\n mode: st.mode & 0o7777,\n atime: st.atime.toISOString(),\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 { DiskAccessor } from '../../accessor/disk.ts'\nimport { createReadStream } from 'node:fs'\nimport { enoent, type PathSpec, recordStream, ResourceName } from '@struktoai/mirage-core'\nimport { resolveSafe } from './utils.ts'\n\nexport async function* stream(accessor: DiskAccessor, path: PathSpec): AsyncIterable<Uint8Array> {\n const virtual = path.mountPath\n const full = resolveSafe(accessor.root, virtual)\n const rec = recordStream('read', virtual, ResourceName.DISK)\n const rs = createReadStream(full, { highWaterMark: 65536 })\n try {\n for await (const chunk of rs) {\n const buf = chunk as Buffer\n const u8 = new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength)\n if (rec !== null) rec.bytes += u8.byteLength\n yield u8\n }\n } catch (err) {\n if ((err as NodeJS.ErrnoException).code === 'ENOENT') {\n throw enoent(path)\n }\n throw err\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 { DiskAccessor } from '../../accessor/disk.ts'\nimport { readFile, writeFile } from 'node:fs/promises'\nimport { ResourceName, invalidateAfterWrite, record, type PathSpec } from '@struktoai/mirage-core'\nimport { resolveSafe } from './utils.ts'\n\nexport async function truncate(\n accessor: DiskAccessor,\n path: PathSpec,\n length: number,\n): Promise<void> {\n const start = performance.now()\n const full = resolveSafe(accessor.root, path.mountPath)\n let data: Buffer\n try {\n data = await readFile(full)\n } catch (err) {\n if ((err as NodeJS.ErrnoException).code === 'ENOENT') {\n data = Buffer.alloc(0)\n } else {\n throw err\n }\n }\n const out = new Uint8Array(length)\n out.set(data.subarray(0, Math.min(data.byteLength, length)))\n await writeFile(full, out)\n record('truncate', path.mountPath, ResourceName.DISK, 0, start)\n await invalidateAfterWrite(path)\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 { DiskAccessor } from '../../accessor/disk.ts'\nimport { unlink as fsUnlink } from 'node:fs/promises'\nimport { type PathSpec, invalidateAfterUnlink } from '@struktoai/mirage-core'\nimport { resolveSafe } from './utils.ts'\n\nexport async function unlink(accessor: DiskAccessor, path: PathSpec): Promise<void> {\n const full = resolveSafe(accessor.root, path.mountPath)\n try {\n await fsUnlink(full)\n } catch (err) {\n if ((err as NodeJS.ErrnoException).code === 'ENOENT') return\n throw err\n }\n await invalidateAfterUnlink(path)\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 { CommandIO } from '@struktoai/mirage-core'\nimport type { DiskAccessor } from '../../../accessor/disk.ts'\nimport { appendBytes as diskAppend } from '../../../core/disk/append.ts'\nimport { SCOPE_ERROR } from '../../../core/disk/constants.ts'\nimport { copy as diskCopy } from '../../../core/disk/copy.ts'\nimport { create as diskCreate } from '../../../core/disk/create.ts'\nimport { size as diskDu, entries as diskDuAll } from '../../../core/disk/du/index.ts'\nimport { exists as diskExists } from '../../../core/disk/exists.ts'\nimport { find as diskFind } from '../../../core/disk/find.ts'\nimport { mkdir as diskMkdir } from '../../../core/disk/mkdir.ts'\nimport { read as diskRead, readRange as diskReadRange } from '../../../core/disk/read.ts'\nimport { readdir as diskReaddir } from '../../../core/disk/readdir.ts'\nimport { rename as diskRename } from '../../../core/disk/rename.ts'\nimport { rmR as diskRmR } from '../../../core/disk/rm.ts'\nimport { rmdir as diskRmdir } from '../../../core/disk/rmdir.ts'\nimport { setAttrs as diskSetAttrs } from '../../../core/disk/set_attrs.ts'\nimport { stat as diskStat } from '../../../core/disk/stat.ts'\nimport { stream as diskStream } from '../../../core/disk/stream.ts'\nimport { truncate as diskTruncate } from '../../../core/disk/truncate.ts'\nimport { unlink as diskUnlink } from '../../../core/disk/unlink.ts'\nimport { writeBytes as diskWrite } from '../../../core/disk/write.ts'\n\nexport const DISK_IO: CommandIO<DiskAccessor> = {\n readdir: diskReaddir,\n readBytes: diskRead,\n readRange: diskReadRange,\n readStream: diskStream,\n stat: diskStat,\n isMounted: (a) => a.root !== '',\n local: true,\n maxGlobMatches: SCOPE_ERROR,\n write: diskWrite,\n exists: diskExists,\n mkdir: diskMkdir,\n unlink: diskUnlink,\n rmdir: diskRmdir,\n rmR: diskRmR,\n rename: diskRename,\n copy: diskCopy,\n create: diskCreate,\n truncate: diskTruncate,\n append: diskAppend,\n setAttrs: diskSetAttrs,\n find: diskFind,\n du: { size: diskDu, entries: diskDuAll },\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 { Accessor } from '@struktoai/mirage-core'\n\nexport class DiskAccessor extends Accessor {\n readonly root: string\n\n constructor(root: string) {\n super()\n this.root = root\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 { RegisteredOp } from '@struktoai/mirage-core'\nimport { ResourceName, makeGenericOps } from '@struktoai/mirage-core'\nimport { DISK_IO } from '../../commands/builtin/disk/io.ts'\n\nexport const DISK_OPS: readonly RegisteredOp[] = makeGenericOps(ResourceName.DISK, DISK_IO, {\n mkdirParents: true,\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 DISK_PROMPT = `{prefix}\n Local disk filesystem. Mirrors the configured root directory.\n Standard commands: ls, cat, head, tail, grep, wc, find, tree, mkdir, touch, cp, mv, rm, tee.`\n"],"mappings":"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","names":["chmod","mkdir","readdir","readFile","fsStat","writeFile","path","ResourceName","mountPrefixOf","ResourceName","invalidateAfterWrite","invalidateAfterWrite","ResourceName","invalidateAfterWrite","record","record","ResourceName","invalidateAfterWrite","path","stat","path","entries","entries","path","readdir","stat","path","compareCodePoints","entries","readdir","stat","path","invalidateAfterWrite","norm","path","norm","invalidateAfterWrite","record","ResourceName","path","record","ResourceName","size","enoent","enotdir","compareCodePoints","readdir","path","entries","enotdir","enoent","compareCodePoints","enoent","invalidateAfterWrite","enoent","invalidateAfterWrite","invalidateAfterUnlink","path","invalidateAfterUnlink","invalidateAfterUnlink","path","invalidateAfterUnlink","fsStat","enoent","path","fsStat","enoent","keep","fsStat","path","stat","fsStat","path","enoent","ResourceName","path","ResourceName","enoent","readFile","writeFile","ResourceName","invalidateAfterWrite","record","path","readFile","writeFile","record","ResourceName","invalidateAfterWrite","invalidateAfterUnlink","path","invalidateAfterUnlink","readdir","stat","ResourceName","ResourceName","ResourceName","readdir","entries","path","ResourceName","stat","mkdir","mountPrefixOf","readFile","fsStat","writeFile","chmod"]}
|
package/dist/chunk-WMJJ4WGF.js
DELETED
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
r2ToS3Config,
|
|
3
|
-
redactR2Config
|
|
4
|
-
} from "./chunk-XIG5BWWH.js";
|
|
5
|
-
import {
|
|
6
|
-
S3Resource
|
|
7
|
-
} from "./chunk-EJZG5VUF.js";
|
|
8
|
-
|
|
9
|
-
// src/resource/r2/r2.ts
|
|
10
|
-
import {
|
|
11
|
-
remapCommandsResource,
|
|
12
|
-
remapOpsResource,
|
|
13
|
-
ResourceName
|
|
14
|
-
} from "@struktoai/mirage-core";
|
|
15
|
-
|
|
16
|
-
// src/resource/r2/prompt.ts
|
|
17
|
-
var R2_PROMPT = `{prefix}
|
|
18
|
-
Remote Cloudflare R2 bucket.
|
|
19
|
-
IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.
|
|
20
|
-
Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.`;
|
|
21
|
-
|
|
22
|
-
// src/resource/r2/r2.ts
|
|
23
|
-
var R2Resource = class extends S3Resource {
|
|
24
|
-
kind = ResourceName.R2;
|
|
25
|
-
prompt = R2_PROMPT;
|
|
26
|
-
r2Config;
|
|
27
|
-
r2Ops;
|
|
28
|
-
r2Commands;
|
|
29
|
-
constructor(config) {
|
|
30
|
-
super(r2ToS3Config(config));
|
|
31
|
-
this.r2Config = config;
|
|
32
|
-
this.r2Ops = remapOpsResource(super.ops(), ResourceName.R2);
|
|
33
|
-
this.r2Commands = remapCommandsResource(super.commands(), ResourceName.R2);
|
|
34
|
-
}
|
|
35
|
-
ops() {
|
|
36
|
-
return this.r2Ops;
|
|
37
|
-
}
|
|
38
|
-
commands() {
|
|
39
|
-
return this.r2Commands;
|
|
40
|
-
}
|
|
41
|
-
getState() {
|
|
42
|
-
return Promise.resolve({
|
|
43
|
-
type: this.kind,
|
|
44
|
-
config: redactR2Config(this.r2Config)
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
loadState(_state) {
|
|
48
|
-
return Promise.resolve();
|
|
49
|
-
}
|
|
50
|
-
};
|
|
51
|
-
|
|
52
|
-
export {
|
|
53
|
-
R2_PROMPT,
|
|
54
|
-
R2Resource
|
|
55
|
-
};
|
|
56
|
-
//# sourceMappingURL=chunk-WMJJ4WGF.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/resource/r2/r2.ts","../src/resource/r2/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 { r2ToS3Config, redactR2Config, type R2Config, type R2ConfigRedacted } from './config.ts'\nimport { R2_PROMPT } from './prompt.ts'\n\nexport interface R2ResourceState {\n type: string\n config: R2ConfigRedacted\n}\n\nexport class R2Resource extends S3Resource {\n override readonly kind: string = ResourceName.R2\n override readonly prompt: string = R2_PROMPT\n readonly r2Config: R2Config\n private readonly r2Ops: readonly RegisteredOp[]\n private readonly r2Commands: readonly RegisteredCommand[]\n\n constructor(config: R2Config) {\n super(r2ToS3Config(config))\n this.r2Config = config\n this.r2Ops = remapOpsResource(super.ops(), ResourceName.R2)\n this.r2Commands = remapCommandsResource(super.commands(), ResourceName.R2)\n }\n\n override ops(): readonly RegisteredOp[] {\n return this.r2Ops\n }\n\n override commands(): readonly RegisteredCommand[] {\n return this.r2Commands\n }\n\n override getState(): Promise<R2ResourceState> {\n return Promise.resolve({\n type: this.kind,\n config: redactR2Config(this.r2Config),\n })\n }\n\n override loadState(_state: R2ResourceState): Promise<void> {\n return Promise.resolve()\n }\n}\n","// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nexport const R2_PROMPT = `\\\n{prefix}\n Remote Cloudflare R2 bucket.\n IMPORTANT: This is a remote mount. Prefer targeted reads over full scans.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.`\n"],"mappings":";;;;;;;;;AAcA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OAGK;;;ACNA,IAAM,YAAY;AAAA;AAAA;AAAA;;;ADgBlB,IAAM,aAAN,cAAyB,WAAW;AAAA,EACvB,OAAe,aAAa;AAAA,EAC5B,SAAiB;AAAA,EAC1B;AAAA,EACQ;AAAA,EACA;AAAA,EAEjB,YAAY,QAAkB;AAC5B,UAAM,aAAa,MAAM,CAAC;AAC1B,SAAK,WAAW;AAChB,SAAK,QAAQ,iBAAiB,MAAM,IAAI,GAAG,aAAa,EAAE;AAC1D,SAAK,aAAa,sBAAsB,MAAM,SAAS,GAAG,aAAa,EAAE;AAAA,EAC3E;AAAA,EAES,MAA+B;AACtC,WAAO,KAAK;AAAA,EACd;AAAA,EAES,WAAyC;AAChD,WAAO,KAAK;AAAA,EACd;AAAA,EAES,WAAqC;AAC5C,WAAO,QAAQ,QAAQ;AAAA,MACrB,MAAM,KAAK;AAAA,MACX,QAAQ,eAAe,KAAK,QAAQ;AAAA,IACtC,CAAC;AAAA,EACH;AAAA,EAES,UAAU,QAAwC;AACzD,WAAO,QAAQ,QAAQ;AAAA,EACzB;AACF;","names":[]}
|
package/dist/chunk-WY4FNH42.js
DELETED
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
redactGitHubConfig
|
|
3
|
-
} from "./chunk-FFH6R5VQ.js";
|
|
4
|
-
|
|
5
|
-
// src/resource/github/github.ts
|
|
6
|
-
import {
|
|
7
|
-
BaseResource,
|
|
8
|
-
GITHUB_COMMANDS,
|
|
9
|
-
GITHUB_OPS,
|
|
10
|
-
GitHubAccessor,
|
|
11
|
-
HttpGitHubTransport,
|
|
12
|
-
PathSpec,
|
|
13
|
-
RAMIndexCacheStore,
|
|
14
|
-
ResourceName,
|
|
15
|
-
fetchGitHubRepoInfo,
|
|
16
|
-
fetchGitHubTree,
|
|
17
|
-
githubBuildTreeMap,
|
|
18
|
-
githubPopulateIndex,
|
|
19
|
-
githubRead,
|
|
20
|
-
githubReaddir,
|
|
21
|
-
makeResolveGlob,
|
|
22
|
-
githubStat,
|
|
23
|
-
mountKey,
|
|
24
|
-
mountPrefixOf
|
|
25
|
-
} from "@struktoai/mirage-core";
|
|
26
|
-
var githubResolveGlob = makeResolveGlob(githubReaddir);
|
|
27
|
-
var GitHubResource = class _GitHubResource extends BaseResource {
|
|
28
|
-
kind = ResourceName.GITHUB;
|
|
29
|
-
cachesReads = true;
|
|
30
|
-
// The git tree API reports the exact blob size for every file; the
|
|
31
|
-
// blob read returns those same bytes, and submodule gitlinks (which
|
|
32
|
-
// have no size and no blob) are excluded from the tree.
|
|
33
|
-
sizesAlwaysKnown = true;
|
|
34
|
-
// Blob shas are stable per-path markers, so cached reads can be
|
|
35
|
-
// probe-verified under ALWAYS and snapshots carry drift fingerprints.
|
|
36
|
-
supportsSnapshot = true;
|
|
37
|
-
indexTtl = 86400;
|
|
38
|
-
config;
|
|
39
|
-
accessor;
|
|
40
|
-
constructor(config, accessor, index) {
|
|
41
|
-
super();
|
|
42
|
-
this.config = config;
|
|
43
|
-
this.accessor = accessor;
|
|
44
|
-
this._index = index;
|
|
45
|
-
}
|
|
46
|
-
static async create(config) {
|
|
47
|
-
const transportOpts = { token: config.token };
|
|
48
|
-
if (config.baseUrl !== void 0) transportOpts.baseUrl = config.baseUrl;
|
|
49
|
-
const transport = new HttpGitHubTransport(transportOpts);
|
|
50
|
-
const repoInfo = await fetchGitHubRepoInfo(transport, config.owner, config.repo);
|
|
51
|
-
const ref = config.ref ?? repoInfo.default_branch;
|
|
52
|
-
const { tree, truncated } = await fetchGitHubTree(transport, config.owner, config.repo, ref);
|
|
53
|
-
const treeMap = githubBuildTreeMap(tree);
|
|
54
|
-
const accessor = new GitHubAccessor({
|
|
55
|
-
transport,
|
|
56
|
-
owner: config.owner,
|
|
57
|
-
repo: config.repo,
|
|
58
|
-
ref,
|
|
59
|
-
defaultBranch: repoInfo.default_branch,
|
|
60
|
-
truncated,
|
|
61
|
-
tree: treeMap
|
|
62
|
-
});
|
|
63
|
-
const index = new RAMIndexCacheStore({ ttl: 86400 });
|
|
64
|
-
await githubPopulateIndex(index, tree);
|
|
65
|
-
return new _GitHubResource(config, accessor, index);
|
|
66
|
-
}
|
|
67
|
-
open() {
|
|
68
|
-
return Promise.resolve();
|
|
69
|
-
}
|
|
70
|
-
commands() {
|
|
71
|
-
return GITHUB_COMMANDS;
|
|
72
|
-
}
|
|
73
|
-
ops() {
|
|
74
|
-
return GITHUB_OPS;
|
|
75
|
-
}
|
|
76
|
-
readFile(p) {
|
|
77
|
-
return githubRead(this.accessor, p, this.index);
|
|
78
|
-
}
|
|
79
|
-
readdir(p) {
|
|
80
|
-
return githubReaddir(this.accessor, p, this.index);
|
|
81
|
-
}
|
|
82
|
-
stat(p) {
|
|
83
|
-
return githubStat(this.accessor, p, this.index);
|
|
84
|
-
}
|
|
85
|
-
glob(paths, prefix = "") {
|
|
86
|
-
const effective = prefix !== "" ? paths.map(
|
|
87
|
-
(p) => mountPrefixOf(p.virtual, p.resourcePath) !== "" ? p : new PathSpec({
|
|
88
|
-
virtual: p.virtual,
|
|
89
|
-
directory: p.directory,
|
|
90
|
-
...p.pattern !== null ? { pattern: p.pattern } : {},
|
|
91
|
-
resolved: p.resolved,
|
|
92
|
-
resourcePath: mountKey(p.virtual, prefix)
|
|
93
|
-
})
|
|
94
|
-
) : paths;
|
|
95
|
-
return githubResolveGlob(this.accessor, effective, this.index);
|
|
96
|
-
}
|
|
97
|
-
getState() {
|
|
98
|
-
return Promise.resolve({
|
|
99
|
-
type: this.kind,
|
|
100
|
-
config: redactGitHubConfig(this.config),
|
|
101
|
-
defaultBranch: this.accessor.defaultBranch,
|
|
102
|
-
truncated: this.accessor.truncated
|
|
103
|
-
});
|
|
104
|
-
}
|
|
105
|
-
loadState(_state) {
|
|
106
|
-
return Promise.resolve();
|
|
107
|
-
}
|
|
108
|
-
};
|
|
109
|
-
|
|
110
|
-
export {
|
|
111
|
-
GitHubResource
|
|
112
|
-
};
|
|
113
|
-
//# sourceMappingURL=chunk-WY4FNH42.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/resource/github/github.ts"],"sourcesContent":["// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nimport {\n BaseResource,\n GITHUB_COMMANDS,\n GITHUB_OPS,\n GitHubAccessor,\n HttpGitHubTransport,\n PathSpec,\n RAMIndexCacheStore,\n ResourceName,\n fetchGitHubRepoInfo,\n fetchGitHubTree,\n githubBuildTreeMap,\n githubPopulateIndex,\n githubRead,\n githubReaddir,\n makeResolveGlob,\n githubStat,\n mountKey,\n mountPrefixOf,\n type FileStat,\n type IndexCacheStore,\n type RegisteredCommand,\n type RegisteredOp,\n type Resource,\n} from '@struktoai/mirage-core'\nimport { redactGitHubConfig, type GitHubConfig, type GitHubConfigRedacted } from './config.ts'\n\nconst githubResolveGlob = makeResolveGlob(githubReaddir)\n\nexport interface GitHubResourceState {\n type: string\n config: GitHubConfigRedacted\n defaultBranch: string\n truncated: boolean\n}\n\nexport class GitHubResource extends BaseResource implements Resource {\n readonly kind: string = ResourceName.GITHUB\n readonly cachesReads: boolean = true\n // The git tree API reports the exact blob size for every file; the\n // blob read returns those same bytes, and submodule gitlinks (which\n // have no size and no blob) are excluded from the tree.\n readonly sizesAlwaysKnown: boolean = true\n // Blob shas are stable per-path markers, so cached reads can be\n // probe-verified under ALWAYS and snapshots carry drift fingerprints.\n readonly supportsSnapshot: boolean = true\n override readonly indexTtl: number = 86_400\n readonly config: GitHubConfig\n readonly accessor: GitHubAccessor\n\n private constructor(config: GitHubConfig, accessor: GitHubAccessor, index: IndexCacheStore) {\n super()\n this.config = config\n this.accessor = accessor\n this._index = index\n }\n\n static async create(config: GitHubConfig): Promise<GitHubResource> {\n const transportOpts: { token: string; baseUrl?: string } = { token: config.token }\n if (config.baseUrl !== undefined) transportOpts.baseUrl = config.baseUrl\n const transport = new HttpGitHubTransport(transportOpts)\n const repoInfo = await fetchGitHubRepoInfo(transport, config.owner, config.repo)\n const ref = config.ref ?? repoInfo.default_branch\n const { tree, truncated } = await fetchGitHubTree(transport, config.owner, config.repo, ref)\n const treeMap = githubBuildTreeMap(tree)\n const accessor = new GitHubAccessor({\n transport,\n owner: config.owner,\n repo: config.repo,\n ref,\n defaultBranch: repoInfo.default_branch,\n truncated,\n tree: treeMap,\n })\n const index = new RAMIndexCacheStore({ ttl: 86_400 })\n await githubPopulateIndex(index, tree)\n return new GitHubResource(config, accessor, index)\n }\n\n open(): Promise<void> {\n return Promise.resolve()\n }\n\n commands(): readonly RegisteredCommand[] {\n return GITHUB_COMMANDS\n }\n\n ops(): readonly RegisteredOp[] {\n return GITHUB_OPS\n }\n\n readFile(p: PathSpec): Promise<Uint8Array> {\n return githubRead(this.accessor, p, this.index)\n }\n\n readdir(p: PathSpec): Promise<string[]> {\n return githubReaddir(this.accessor, p, this.index)\n }\n\n stat(p: PathSpec): Promise<FileStat> {\n return githubStat(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 githubResolveGlob(this.accessor, effective, this.index)\n }\n\n getState(): Promise<GitHubResourceState> {\n return Promise.resolve({\n type: this.kind,\n config: redactGitHubConfig(this.config),\n defaultBranch: this.accessor.defaultBranch,\n truncated: this.accessor.truncated,\n })\n }\n\n loadState(_state: GitHubResourceState): Promise<void> {\n return Promise.resolve()\n }\n}\n"],"mappings":"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","names":[]}
|
package/dist/chunk-XIG5BWWH.js
DELETED
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
// src/resource/r2/config.ts
|
|
2
|
-
import {
|
|
3
|
-
normalizeFields,
|
|
4
|
-
redactConfigWithSchema,
|
|
5
|
-
secretStr,
|
|
6
|
-
z
|
|
7
|
-
} from "@struktoai/mirage-core";
|
|
8
|
-
var R2ConfigSchema = z.object({
|
|
9
|
-
bucket: z.string(),
|
|
10
|
-
accessKeyId: secretStr().optional(),
|
|
11
|
-
secretAccessKey: secretStr().optional(),
|
|
12
|
-
sessionToken: secretStr().optional(),
|
|
13
|
-
accountId: z.string().optional(),
|
|
14
|
-
endpoint: z.string(),
|
|
15
|
-
region: z.string(),
|
|
16
|
-
profile: z.string().optional(),
|
|
17
|
-
forcePathStyle: z.boolean().optional(),
|
|
18
|
-
keyPrefix: z.string().optional(),
|
|
19
|
-
timeoutMs: z.number().optional(),
|
|
20
|
-
proxy: secretStr().optional()
|
|
21
|
-
});
|
|
22
|
-
function resolvedR2Endpoint(config) {
|
|
23
|
-
if (config.endpoint !== void 0 && config.endpoint !== "") return config.endpoint;
|
|
24
|
-
if (config.accountId !== void 0 && config.accountId !== "") {
|
|
25
|
-
return `https://${config.accountId}.r2.cloudflarestorage.com`;
|
|
26
|
-
}
|
|
27
|
-
throw new Error("R2Config requires accountId or endpoint");
|
|
28
|
-
}
|
|
29
|
-
function r2ToS3Config(config) {
|
|
30
|
-
return {
|
|
31
|
-
bucket: config.bucket,
|
|
32
|
-
region: config.region ?? "auto",
|
|
33
|
-
endpoint: resolvedR2Endpoint(config),
|
|
34
|
-
...config.accessKeyId !== void 0 ? { accessKeyId: config.accessKeyId } : {},
|
|
35
|
-
...config.secretAccessKey !== void 0 ? { secretAccessKey: config.secretAccessKey } : {},
|
|
36
|
-
...config.sessionToken !== void 0 ? { sessionToken: config.sessionToken } : {},
|
|
37
|
-
...config.profile !== void 0 ? { profile: config.profile } : {},
|
|
38
|
-
...config.forcePathStyle !== void 0 ? { forcePathStyle: config.forcePathStyle } : {},
|
|
39
|
-
...config.keyPrefix !== void 0 ? { keyPrefix: config.keyPrefix } : {},
|
|
40
|
-
...config.timeoutMs !== void 0 ? { timeoutMs: config.timeoutMs } : {},
|
|
41
|
-
...config.proxy !== void 0 ? { proxy: config.proxy } : {}
|
|
42
|
-
};
|
|
43
|
-
}
|
|
44
|
-
function redactR2Config(config) {
|
|
45
|
-
return redactConfigWithSchema(R2ConfigSchema, {
|
|
46
|
-
...config,
|
|
47
|
-
endpoint: resolvedR2Endpoint(config),
|
|
48
|
-
region: config.region ?? "auto"
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
function normalizeR2Config(input) {
|
|
52
|
-
return normalizeFields(input, {
|
|
53
|
-
rename: {
|
|
54
|
-
account_id: "accountId",
|
|
55
|
-
access_key_id: "accessKeyId",
|
|
56
|
-
secret_access_key: "secretAccessKey",
|
|
57
|
-
session_token: "sessionToken",
|
|
58
|
-
aws_profile: "profile",
|
|
59
|
-
endpoint_url: "endpoint",
|
|
60
|
-
path_style: "forcePathStyle",
|
|
61
|
-
key_prefix: "keyPrefix",
|
|
62
|
-
timeout: "timeoutMs"
|
|
63
|
-
},
|
|
64
|
-
transform: {
|
|
65
|
-
timeout: (v) => typeof v === "number" ? v * 1e3 : v
|
|
66
|
-
}
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
export {
|
|
71
|
-
r2ToS3Config,
|
|
72
|
-
redactR2Config,
|
|
73
|
-
normalizeR2Config
|
|
74
|
-
};
|
|
75
|
-
//# sourceMappingURL=chunk-XIG5BWWH.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/resource/r2/config.ts"],"sourcesContent":["// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nimport {\n normalizeFields,\n redactConfigWithSchema,\n type ConfigOf,\n type RedactedConfig,\n secretStr,\n z,\n} from '@struktoai/mirage-core'\nimport type { S3Config } from '../s3/config.ts'\n\nexport interface R2Config {\n bucket: string\n accessKeyId?: string\n secretAccessKey?: string\n sessionToken?: string\n accountId?: string\n endpoint?: string\n region?: string\n profile?: string\n forcePathStyle?: boolean\n keyPrefix?: string\n timeoutMs?: number\n proxy?: string\n}\n\nconst R2ConfigSchema = z.object({\n bucket: z.string(),\n accessKeyId: secretStr().optional(),\n secretAccessKey: secretStr().optional(),\n sessionToken: secretStr().optional(),\n accountId: z.string().optional(),\n endpoint: z.string(),\n region: z.string(),\n profile: z.string().optional(),\n forcePathStyle: z.boolean().optional(),\n keyPrefix: z.string().optional(),\n timeoutMs: z.number().optional(),\n proxy: secretStr().optional(),\n})\n\n// Only the redacted twin derives: the schema is the resolved shape, with\n// the region and endpoint the redactor fills in.\nexport type R2ConfigRedacted = RedactedConfig<\n ConfigOf<typeof R2ConfigSchema>,\n 'accessKeyId' | 'secretAccessKey' | 'sessionToken' | 'proxy'\n>\n\nfunction resolvedR2Endpoint(config: R2Config): string {\n if (config.endpoint !== undefined && config.endpoint !== '') return config.endpoint\n if (config.accountId !== undefined && config.accountId !== '') {\n return `https://${config.accountId}.r2.cloudflarestorage.com`\n }\n throw new Error('R2Config requires accountId or endpoint')\n}\n\nexport function r2ToS3Config(config: R2Config): S3Config {\n return {\n bucket: config.bucket,\n region: config.region ?? 'auto',\n endpoint: resolvedR2Endpoint(config),\n ...(config.accessKeyId !== undefined ? { accessKeyId: config.accessKeyId } : {}),\n ...(config.secretAccessKey !== undefined ? { secretAccessKey: config.secretAccessKey } : {}),\n ...(config.sessionToken !== undefined ? { sessionToken: config.sessionToken } : {}),\n ...(config.profile !== undefined ? { profile: config.profile } : {}),\n ...(config.forcePathStyle !== undefined ? { forcePathStyle: config.forcePathStyle } : {}),\n ...(config.keyPrefix !== undefined ? { keyPrefix: config.keyPrefix } : {}),\n ...(config.timeoutMs !== undefined ? { timeoutMs: config.timeoutMs } : {}),\n ...(config.proxy !== undefined ? { proxy: config.proxy } : {}),\n }\n}\n\nexport function redactR2Config(config: R2Config): R2ConfigRedacted {\n return redactConfigWithSchema(R2ConfigSchema, {\n ...config,\n endpoint: resolvedR2Endpoint(config),\n region: config.region ?? 'auto',\n }) as unknown as R2ConfigRedacted\n}\n\nexport function normalizeR2Config(input: Record<string, unknown>): R2Config {\n return normalizeFields(input, {\n rename: {\n account_id: 'accountId',\n access_key_id: 'accessKeyId',\n secret_access_key: 'secretAccessKey',\n session_token: 'sessionToken',\n aws_profile: 'profile',\n endpoint_url: 'endpoint',\n path_style: 'forcePathStyle',\n key_prefix: 'keyPrefix',\n timeout: 'timeoutMs',\n },\n transform: {\n timeout: (v: unknown) => (typeof v === 'number' ? v * 1000 : v),\n },\n }) as unknown as R2Config\n}\n"],"mappings":";AAcA;AAAA,EACE;AAAA,EACA;AAAA,EAGA;AAAA,EACA;AAAA,OACK;AAkBP,IAAM,iBAAiB,EAAE,OAAO;AAAA,EAC9B,QAAQ,EAAE,OAAO;AAAA,EACjB,aAAa,UAAU,EAAE,SAAS;AAAA,EAClC,iBAAiB,UAAU,EAAE,SAAS;AAAA,EACtC,cAAc,UAAU,EAAE,SAAS;AAAA,EACnC,WAAW,EAAE,OAAO,EAAE,SAAS;AAAA,EAC/B,UAAU,EAAE,OAAO;AAAA,EACnB,QAAQ,EAAE,OAAO;AAAA,EACjB,SAAS,EAAE,OAAO,EAAE,SAAS;AAAA,EAC7B,gBAAgB,EAAE,QAAQ,EAAE,SAAS;AAAA,EACrC,WAAW,EAAE,OAAO,EAAE,SAAS;AAAA,EAC/B,WAAW,EAAE,OAAO,EAAE,SAAS;AAAA,EAC/B,OAAO,UAAU,EAAE,SAAS;AAC9B,CAAC;AASD,SAAS,mBAAmB,QAA0B;AACpD,MAAI,OAAO,aAAa,UAAa,OAAO,aAAa,GAAI,QAAO,OAAO;AAC3E,MAAI,OAAO,cAAc,UAAa,OAAO,cAAc,IAAI;AAC7D,WAAO,WAAW,OAAO,SAAS;AAAA,EACpC;AACA,QAAM,IAAI,MAAM,yCAAyC;AAC3D;AAEO,SAAS,aAAa,QAA4B;AACvD,SAAO;AAAA,IACL,QAAQ,OAAO;AAAA,IACf,QAAQ,OAAO,UAAU;AAAA,IACzB,UAAU,mBAAmB,MAAM;AAAA,IACnC,GAAI,OAAO,gBAAgB,SAAY,EAAE,aAAa,OAAO,YAAY,IAAI,CAAC;AAAA,IAC9E,GAAI,OAAO,oBAAoB,SAAY,EAAE,iBAAiB,OAAO,gBAAgB,IAAI,CAAC;AAAA,IAC1F,GAAI,OAAO,iBAAiB,SAAY,EAAE,cAAc,OAAO,aAAa,IAAI,CAAC;AAAA,IACjF,GAAI,OAAO,YAAY,SAAY,EAAE,SAAS,OAAO,QAAQ,IAAI,CAAC;AAAA,IAClE,GAAI,OAAO,mBAAmB,SAAY,EAAE,gBAAgB,OAAO,eAAe,IAAI,CAAC;AAAA,IACvF,GAAI,OAAO,cAAc,SAAY,EAAE,WAAW,OAAO,UAAU,IAAI,CAAC;AAAA,IACxE,GAAI,OAAO,cAAc,SAAY,EAAE,WAAW,OAAO,UAAU,IAAI,CAAC;AAAA,IACxE,GAAI,OAAO,UAAU,SAAY,EAAE,OAAO,OAAO,MAAM,IAAI,CAAC;AAAA,EAC9D;AACF;AAEO,SAAS,eAAe,QAAoC;AACjE,SAAO,uBAAuB,gBAAgB;AAAA,IAC5C,GAAG;AAAA,IACH,UAAU,mBAAmB,MAAM;AAAA,IACnC,QAAQ,OAAO,UAAU;AAAA,EAC3B,CAAC;AACH;AAEO,SAAS,kBAAkB,OAA0C;AAC1E,SAAO,gBAAgB,OAAO;AAAA,IAC5B,QAAQ;AAAA,MACN,YAAY;AAAA,MACZ,eAAe;AAAA,MACf,mBAAmB;AAAA,MACnB,eAAe;AAAA,MACf,aAAa;AAAA,MACb,cAAc;AAAA,MACd,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,SAAS;AAAA,IACX;AAAA,IACA,WAAW;AAAA,MACT,SAAS,CAAC,MAAgB,OAAO,MAAM,WAAW,IAAI,MAAO;AAAA,IAC/D;AAAA,EACF,CAAC;AACH;","names":[]}
|
package/dist/chunk-XJBC3OYX.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/resource/gdocs/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 normalizeGDocsConfig,\n redactGoogleConfig as redactGDocsConfig,\n type GoogleConfig as GDocsConfig,\n type GoogleConfigRedacted as GDocsConfigRedacted,\n} from '@struktoai/mirage-core'\n"],"mappings":";AAcA;AAAA,EAC2B;AAAA,EACH;AAAA,OAGjB;","names":[]}
|
package/dist/chunk-XPRDXWK7.js
DELETED
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
// src/resource/linear/linear.ts
|
|
2
|
-
import {
|
|
3
|
-
BaseResource,
|
|
4
|
-
HttpLinearTransport,
|
|
5
|
-
LINEAR_COMMANDS,
|
|
6
|
-
LINEAR_PROMPT,
|
|
7
|
-
LINEAR_OPS,
|
|
8
|
-
LINEAR_WRITE_PROMPT,
|
|
9
|
-
LinearAccessor,
|
|
10
|
-
PathSpec,
|
|
11
|
-
ResourceName,
|
|
12
|
-
linearRead,
|
|
13
|
-
linearReaddir,
|
|
14
|
-
linearStat,
|
|
15
|
-
makeResolveGlob,
|
|
16
|
-
mountKey,
|
|
17
|
-
mountPrefixOf
|
|
18
|
-
} from "@struktoai/mirage-core";
|
|
19
|
-
import {
|
|
20
|
-
redactLinearConfig
|
|
21
|
-
} from "@struktoai/mirage-core";
|
|
22
|
-
var resolveLinearGlob = (accessor, paths, index, filter) => makeResolveGlob(
|
|
23
|
-
(a, p, i) => linearReaddir(a, p, i, filter)
|
|
24
|
-
)(accessor, paths, index);
|
|
25
|
-
var LinearResource = class extends BaseResource {
|
|
26
|
-
kind = ResourceName.LINEAR;
|
|
27
|
-
cachesReads = true;
|
|
28
|
-
// Every file is sized at its parent's readdir from the listing payload
|
|
29
|
-
// (comments.jsonl via one bounded comments call), so stat always reports
|
|
30
|
-
// the rendered byte length and fskit mounts serve exact reads.
|
|
31
|
-
sizesAlwaysKnown = true;
|
|
32
|
-
indexTtl = 600;
|
|
33
|
-
prompt = LINEAR_PROMPT;
|
|
34
|
-
writePrompt = LINEAR_WRITE_PROMPT;
|
|
35
|
-
config;
|
|
36
|
-
accessor;
|
|
37
|
-
constructor(config) {
|
|
38
|
-
super();
|
|
39
|
-
this.config = config;
|
|
40
|
-
const transportOpts = { apiKey: config.apiKey };
|
|
41
|
-
if (config.baseUrl !== void 0) transportOpts.baseUrl = config.baseUrl;
|
|
42
|
-
this.accessor = new LinearAccessor(new HttpLinearTransport(transportOpts));
|
|
43
|
-
}
|
|
44
|
-
open() {
|
|
45
|
-
return Promise.resolve();
|
|
46
|
-
}
|
|
47
|
-
commands() {
|
|
48
|
-
return LINEAR_COMMANDS;
|
|
49
|
-
}
|
|
50
|
-
ops() {
|
|
51
|
-
return LINEAR_OPS;
|
|
52
|
-
}
|
|
53
|
-
filter() {
|
|
54
|
-
const out = {};
|
|
55
|
-
if (this.config.teamIds !== void 0) out.teamIds = this.config.teamIds;
|
|
56
|
-
return out;
|
|
57
|
-
}
|
|
58
|
-
readFile(p) {
|
|
59
|
-
return linearRead(this.accessor, p, this.index, this.filter());
|
|
60
|
-
}
|
|
61
|
-
readdir(p) {
|
|
62
|
-
return linearReaddir(this.accessor, p, this.index, this.filter());
|
|
63
|
-
}
|
|
64
|
-
stat(p) {
|
|
65
|
-
return linearStat(this.accessor, p, this.index);
|
|
66
|
-
}
|
|
67
|
-
glob(paths, prefix = "") {
|
|
68
|
-
const effective = prefix !== "" ? paths.map(
|
|
69
|
-
(p) => mountPrefixOf(p.virtual, p.resourcePath) !== "" ? p : new PathSpec({
|
|
70
|
-
virtual: p.virtual,
|
|
71
|
-
directory: p.directory,
|
|
72
|
-
...p.pattern !== null ? { pattern: p.pattern } : {},
|
|
73
|
-
resolved: p.resolved,
|
|
74
|
-
resourcePath: mountKey(p.virtual, prefix)
|
|
75
|
-
})
|
|
76
|
-
) : paths;
|
|
77
|
-
return resolveLinearGlob(this.accessor, effective, this.index, this.filter());
|
|
78
|
-
}
|
|
79
|
-
getState() {
|
|
80
|
-
return Promise.resolve({
|
|
81
|
-
type: this.kind,
|
|
82
|
-
config: redactLinearConfig(this.config)
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
loadState(_state) {
|
|
86
|
-
return Promise.resolve();
|
|
87
|
-
}
|
|
88
|
-
};
|
|
89
|
-
|
|
90
|
-
export {
|
|
91
|
-
LinearResource
|
|
92
|
-
};
|
|
93
|
-
//# sourceMappingURL=chunk-XPRDXWK7.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/resource/linear/linear.ts"],"sourcesContent":["// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nimport {\n BaseResource,\n HttpLinearTransport,\n LINEAR_COMMANDS,\n LINEAR_PROMPT,\n LINEAR_OPS,\n LINEAR_WRITE_PROMPT,\n LinearAccessor,\n PathSpec,\n ResourceName,\n linearRead,\n linearReaddir,\n linearStat,\n makeResolveGlob,\n mountKey,\n mountPrefixOf,\n type FileStat,\n type IndexCacheStore,\n type LinearReaddirFilter,\n type RegisteredCommand,\n type RegisteredOp,\n type Resource,\n} from '@struktoai/mirage-core'\nimport {\n redactLinearConfig,\n type LinearConfig,\n type LinearConfigRedacted,\n} from '@struktoai/mirage-core'\n\nconst resolveLinearGlob = (\n accessor: LinearAccessor,\n paths: readonly PathSpec[],\n index: IndexCacheStore | undefined,\n filter: LinearReaddirFilter,\n): Promise<PathSpec[]> =>\n makeResolveGlob((a: LinearAccessor, p: PathSpec, i?: IndexCacheStore) =>\n linearReaddir(a, p, i, filter),\n )(accessor, paths, index)\n\nexport interface LinearResourceState {\n type: string\n config: LinearConfigRedacted\n}\n\nexport class LinearResource extends BaseResource implements Resource {\n readonly kind: string = ResourceName.LINEAR\n readonly cachesReads: boolean = true\n // Every file is sized at its parent's readdir from the listing payload\n // (comments.jsonl via one bounded comments call), so stat always reports\n // the rendered byte length and fskit mounts serve exact reads.\n readonly sizesAlwaysKnown: boolean = true\n override readonly indexTtl: number = 600\n readonly prompt: string = LINEAR_PROMPT\n readonly writePrompt: string = LINEAR_WRITE_PROMPT\n readonly config: LinearConfig\n readonly accessor: LinearAccessor\n\n constructor(config: LinearConfig) {\n super()\n this.config = config\n const transportOpts: { apiKey: string; baseUrl?: string } = { apiKey: config.apiKey }\n if (config.baseUrl !== undefined) transportOpts.baseUrl = config.baseUrl\n this.accessor = new LinearAccessor(new HttpLinearTransport(transportOpts))\n }\n\n open(): Promise<void> {\n return Promise.resolve()\n }\n\n commands(): readonly RegisteredCommand[] {\n return LINEAR_COMMANDS\n }\n\n ops(): readonly RegisteredOp[] {\n return LINEAR_OPS\n }\n\n private filter(): LinearReaddirFilter {\n const out: LinearReaddirFilter = {}\n if (this.config.teamIds !== undefined) out.teamIds = this.config.teamIds\n return out\n }\n\n readFile(p: PathSpec): Promise<Uint8Array> {\n return linearRead(this.accessor, p, this.index, this.filter())\n }\n\n readdir(p: PathSpec): Promise<string[]> {\n return linearReaddir(this.accessor, p, this.index, this.filter())\n }\n\n stat(p: PathSpec): Promise<FileStat> {\n return linearStat(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 resolveLinearGlob(this.accessor, effective, this.index, this.filter())\n }\n\n getState(): Promise<LinearResourceState> {\n return Promise.resolve({\n type: this.kind,\n config: redactLinearConfig(this.config),\n })\n }\n\n loadState(_state: LinearResourceState): Promise<void> {\n return Promise.resolve()\n }\n}\n"],"mappings":";AAcA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAOK;AACP;AAAA,EACE;AAAA,OAGK;AAEP,IAAM,oBAAoB,CACxB,UACA,OACA,OACA,WAEA;AAAA,EAAgB,CAAC,GAAmB,GAAa,MAC/C,cAAc,GAAG,GAAG,GAAG,MAAM;AAC/B,EAAE,UAAU,OAAO,KAAK;AAOnB,IAAM,iBAAN,cAA6B,aAAiC;AAAA,EAC1D,OAAe,aAAa;AAAA,EAC5B,cAAuB;AAAA;AAAA;AAAA;AAAA,EAIvB,mBAA4B;AAAA,EACnB,WAAmB;AAAA,EAC5B,SAAiB;AAAA,EACjB,cAAsB;AAAA,EACtB;AAAA,EACA;AAAA,EAET,YAAY,QAAsB;AAChC,UAAM;AACN,SAAK,SAAS;AACd,UAAM,gBAAsD,EAAE,QAAQ,OAAO,OAAO;AACpF,QAAI,OAAO,YAAY,OAAW,eAAc,UAAU,OAAO;AACjE,SAAK,WAAW,IAAI,eAAe,IAAI,oBAAoB,aAAa,CAAC;AAAA,EAC3E;AAAA,EAEA,OAAsB;AACpB,WAAO,QAAQ,QAAQ;AAAA,EACzB;AAAA,EAEA,WAAyC;AACvC,WAAO;AAAA,EACT;AAAA,EAEA,MAA+B;AAC7B,WAAO;AAAA,EACT;AAAA,EAEQ,SAA8B;AACpC,UAAM,MAA2B,CAAC;AAClC,QAAI,KAAK,OAAO,YAAY,OAAW,KAAI,UAAU,KAAK,OAAO;AACjE,WAAO;AAAA,EACT;AAAA,EAEA,SAAS,GAAkC;AACzC,WAAO,WAAW,KAAK,UAAU,GAAG,KAAK,OAAO,KAAK,OAAO,CAAC;AAAA,EAC/D;AAAA,EAEA,QAAQ,GAAgC;AACtC,WAAO,cAAc,KAAK,UAAU,GAAG,KAAK,OAAO,KAAK,OAAO,CAAC;AAAA,EAClE;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,OAAO,KAAK,OAAO,CAAC;AAAA,EAC9E;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":[]}
|