@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/nextcloud/nextcloud.ts","../src/accessor/nextcloud.ts","../src/commands/builtin/nextcloud/index.ts","../src/commands/builtin/nextcloud/io.ts","../src/core/nextcloud/constants.ts","../src/core/nextcloud/copy.ts","../src/core/nextcloud/util.ts","../src/core/nextcloud/write.ts","../src/core/nextcloud/create.ts","../src/core/nextcloud/du/entries.ts","../src/core/nextcloud/du/walk.ts","../src/core/nextcloud/stat.ts","../src/core/nextcloud/du/size.ts","../src/core/nextcloud/exists.ts","../src/core/nextcloud/find.ts","../src/core/nextcloud/search/types.ts","../src/core/nextcloud/search/constants.ts","../src/core/nextcloud/search/target.ts","../src/core/nextcloud/search/query.ts","../src/core/nextcloud/search/response.ts","../src/core/nextcloud/search/client.ts","../src/core/nextcloud/mkdir.ts","../src/core/nextcloud/read.ts","../src/core/nextcloud/readdir.ts","../src/core/nextcloud/rename.ts","../src/core/nextcloud/rm.ts","../src/core/nextcloud/rmdir.ts","../src/core/nextcloud/stream.ts","../src/core/nextcloud/truncate.ts","../src/core/nextcloud/unlink.ts","../src/core/nextcloud/watch.ts","../src/ops/nextcloud/index.ts","../src/resource/nextcloud/prompt.ts"],"sourcesContent":["import {\n BaseResource,\n makeResolveGlob,\n mountKey,\n mountPrefixOf,\n PathSpec,\n ResourceName,\n type DeltaHook,\n type FileStat,\n type FindOptions,\n type RegisteredCommand,\n type RegisteredOp,\n type Resource,\n} from '@struktoai/mirage-core'\nimport { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { NEXTCLOUD_COMMANDS } from '../../commands/builtin/nextcloud/index.ts'\nimport { SCOPE_ERROR } from '../../core/nextcloud/constants.ts'\nimport { copy as copyCore } from '../../core/nextcloud/copy.ts'\nimport { create as createCore } from '../../core/nextcloud/create.ts'\nimport { size as duSizeCore, entries as duEntriesCore } from '../../core/nextcloud/du/index.ts'\nimport { exists as existsCore } from '../../core/nextcloud/exists.ts'\nimport { find as findCore } from '../../core/nextcloud/find.ts'\nimport { mkdir as mkdirCore } from '../../core/nextcloud/mkdir.ts'\nimport { read as readCore } from '../../core/nextcloud/read.ts'\nimport { readdir as readdirCore } from '../../core/nextcloud/readdir.ts'\nimport { rename as renameCore } from '../../core/nextcloud/rename.ts'\nimport { rmR as rmRCore } from '../../core/nextcloud/rm.ts'\nimport { rmdir as rmdirCore } from '../../core/nextcloud/rmdir.ts'\nimport { stat as statCore } from '../../core/nextcloud/stat.ts'\nimport { rangeRead as rangeReadCore, stream as streamCore } from '../../core/nextcloud/stream.ts'\nimport { truncate as truncateCore } from '../../core/nextcloud/truncate.ts'\nimport { unlink as unlinkCore } from '../../core/nextcloud/unlink.ts'\nimport { write as writeCore } from '../../core/nextcloud/write.ts'\nimport { buildDeltaHook } from '../../core/nextcloud/watch.ts'\nimport { NEXTCLOUD_OPS } from '../../ops/nextcloud/index.ts'\nimport {\n redactNextcloudConfig,\n type NextcloudConfig,\n type NextcloudConfigRedacted,\n} from './config.ts'\nimport { NEXTCLOUD_PROMPT } from './prompt.ts'\n\nconst resolveGlobCore = makeResolveGlob(readdirCore, SCOPE_ERROR)\n\nexport interface NextcloudResourceState {\n type: string\n config: NextcloudConfigRedacted\n}\n\nexport class NextcloudResource extends BaseResource implements Resource {\n readonly kind = ResourceName.NEXTCLOUD\n readonly cachesReads = true\n // WebDAV PROPFIND carries getcontentlength for every file; readdir\n // backfills any lister-omitted size with one stat per affected file.\n readonly sizesAlwaysKnown: boolean = true\n readonly supportsSnapshot = true\n readonly prompt = NEXTCLOUD_PROMPT\n readonly accessor: NextcloudAccessor\n readonly opsMap: Record<string, unknown> = {\n read_bytes: readCore,\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 range_read: rangeReadCore,\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 }\n\n constructor(readonly config: NextcloudConfig) {\n super()\n this.accessor = new NextcloudAccessor(config)\n }\n\n open(): Promise<void> {\n return Promise.resolve()\n }\n\n commands(): readonly RegisteredCommand[] {\n return NEXTCLOUD_COMMANDS\n }\n\n ops(): readonly RegisteredOp[] {\n return NEXTCLOUD_OPS\n }\n\n streamPath(path: PathSpec): AsyncIterable<Uint8Array> {\n return streamCore(this.accessor, path, this.index)\n }\n\n readFile(path: PathSpec): Promise<Uint8Array> {\n return readCore(this.accessor, path, this.index)\n }\n\n writeFile(path: PathSpec, data: Uint8Array): Promise<void> {\n return writeCore(this.accessor, path, data, this.index)\n }\n\n async appendFile(path: PathSpec, data: Uint8Array): Promise<void> {\n let existing: Uint8Array\n try {\n existing = await readCore(this.accessor, path, this.index)\n } catch (error) {\n if ((error as { code?: string } | null)?.code !== 'ENOENT') throw error\n existing = new Uint8Array()\n }\n const merged = new Uint8Array(existing.byteLength + data.byteLength)\n merged.set(existing)\n merged.set(data, existing.byteLength)\n await writeCore(this.accessor, path, merged, this.index)\n }\n\n readdir(path: PathSpec): Promise<string[]> {\n return readdirCore(this.accessor, path, this.index)\n }\n\n stat(path: PathSpec): Promise<FileStat> {\n return statCore(this.accessor, path, this.index)\n }\n\n exists(path: PathSpec): Promise<boolean> {\n return existsCore(this.accessor, path)\n }\n\n mkdir(path: PathSpec): Promise<void> {\n return mkdirCore(this.accessor, path)\n }\n\n rmdir(path: PathSpec): Promise<void> {\n return rmdirCore(this.accessor, path)\n }\n\n unlink(path: PathSpec): Promise<void> {\n return unlinkCore(this.accessor, path)\n }\n\n rename(source: PathSpec, destination: PathSpec): Promise<void> {\n return renameCore(this.accessor, source, destination)\n }\n\n truncate(path: PathSpec, length: number): Promise<void> {\n return truncateCore(this.accessor, path, length)\n }\n\n copy(source: PathSpec, destination: PathSpec): Promise<void> {\n return copyCore(this.accessor, source, destination)\n }\n\n rmR(path: PathSpec): Promise<void> {\n return rmRCore(this.accessor, path)\n }\n\n du(path: PathSpec): Promise<number> {\n return duSizeCore(this.accessor, path)\n }\n\n find(path: PathSpec, options: FindOptions = {}): Promise<string[]> {\n return findCore(this.accessor, path, options)\n }\n\n glob(paths: readonly PathSpec[], prefix = ''): Promise<PathSpec[]> {\n const effective = prefix\n ? paths.map((path) =>\n mountPrefixOf(path.virtual, path.resourcePath)\n ? path\n : new PathSpec({\n virtual: path.virtual,\n directory: path.directory,\n ...(path.pattern !== null ? { pattern: path.pattern } : {}),\n resolved: path.resolved,\n resourcePath: mountKey(path.virtual, prefix),\n }),\n )\n : paths\n return resolveGlobCore(this.accessor, effective, this.index)\n }\n\n deltaHook(): DeltaHook {\n return buildDeltaHook(this.accessor)\n }\n\n getState(): Promise<NextcloudResourceState> {\n return Promise.resolve({ type: this.kind, config: redactNextcloudConfig(this.config) })\n }\n\n loadState(_state: NextcloudResourceState): Promise<void> {\n return Promise.resolve()\n }\n}\n","import type { Operator } from 'opendal'\nimport { Accessor, ResourceName } from '@struktoai/mirage-core'\nimport { loadOptionalPeer } from '../optional_peer.ts'\nimport type { NextcloudConfig } from '../resource/nextcloud/config.ts'\n\nexport class NextcloudAccessor extends Accessor {\n readonly resourceName = ResourceName.NEXTCLOUD\n private operatorPromise: Promise<Operator> | null = null\n\n constructor(readonly config: NextcloudConfig) {\n super()\n }\n\n operator(): Promise<Operator> {\n this.operatorPromise ??= this.createOperator()\n return this.operatorPromise\n }\n\n private async createOperator(): Promise<Operator> {\n const mod = await loadOptionalPeer(\n () => import('opendal') as Promise<{ Operator: typeof Operator }>,\n { feature: 'Nextcloud resources', packageName: 'opendal' },\n )\n const options: Record<string, string> = { endpoint: this.config.url }\n if (this.config.username !== undefined) options.username = this.config.username\n if (this.config.password !== undefined) options.password = this.config.password\n return new mod.Operator('webdav', options)\n }\n}\n","import { makeGenericCommands, ResourceName, type RegisteredCommand } from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../../accessor/nextcloud.ts'\nimport { NEXTCLOUD_IO } from './io.ts'\n\nexport const NEXTCLOUD_COMMANDS: readonly RegisteredCommand[] = [\n ...makeGenericCommands<NextcloudAccessor>(ResourceName.NEXTCLOUD, NEXTCLOUD_IO),\n]\n","import { type CommandIO, rangeOf } from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../../accessor/nextcloud.ts'\nimport { SCOPE_ERROR } from '../../../core/nextcloud/constants.ts'\nimport { copy } from '../../../core/nextcloud/copy.ts'\nimport { create } from '../../../core/nextcloud/create.ts'\nimport {\n size as nextcloudDuSize,\n entries as nextcloudDuEntries,\n} from '../../../core/nextcloud/du/index.ts'\nimport { exists } from '../../../core/nextcloud/exists.ts'\nimport { find } from '../../../core/nextcloud/find.ts'\nimport { mkdir } from '../../../core/nextcloud/mkdir.ts'\nimport { read } from '../../../core/nextcloud/read.ts'\nimport { readdir } from '../../../core/nextcloud/readdir.ts'\nimport { rename } from '../../../core/nextcloud/rename.ts'\nimport { rmR } from '../../../core/nextcloud/rm.ts'\nimport { rmdir } from '../../../core/nextcloud/rmdir.ts'\nimport { stat } from '../../../core/nextcloud/stat.ts'\nimport { stream } from '../../../core/nextcloud/stream.ts'\nimport { truncate } from '../../../core/nextcloud/truncate.ts'\nimport { unlink } from '../../../core/nextcloud/unlink.ts'\nimport { write } from '../../../core/nextcloud/write.ts'\n\nexport const NEXTCLOUD_IO: CommandIO<NextcloudAccessor> = {\n maxGlobMatches: SCOPE_ERROR,\n readdir,\n readBytes: read,\n readRange: rangeOf(read),\n readStream: stream,\n stat,\n isMounted: () => true,\n local: false,\n write,\n exists,\n mkdir,\n unlink,\n rmdir,\n rmR,\n rename,\n copy,\n create,\n truncate,\n find,\n du: { size: nextcloudDuSize, entries: nextcloudDuEntries },\n}\n","export const SCOPE_ERROR = 5000\nexport const DEFAULT_CHUNK_SIZE = 8192\n","import { enoent, invalidateAfterWrite, type PathSpec } from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { isNotFound, nextcloudKey } from './util.ts'\n\nexport async function copy(\n accessor: NextcloudAccessor,\n source: PathSpec,\n destination: PathSpec,\n): Promise<void> {\n const op = await accessor.operator()\n try {\n await op.copy(nextcloudKey(source), nextcloudKey(destination))\n } catch (error) {\n if (isNotFound(error)) throw enoent(source)\n throw error\n }\n await invalidateAfterWrite(destination)\n}\n","import { lstripSlash, mountPrefixOf, type PathSpec } from '@struktoai/mirage-core'\n\nexport function rawPathOf(path: PathSpec): string {\n const prefix = mountPrefixOf(path.virtual, path.resourcePath)\n return prefix !== '' && path.virtual.startsWith(prefix)\n ? path.virtual.slice(prefix.length) || '/'\n : path.virtual\n}\n\nexport function nextcloudKey(path: PathSpec): string {\n return lstripSlash(rawPathOf(path))\n}\n\nexport function isNotFound(error: unknown): boolean {\n return error instanceof Error && error.message.startsWith('NotFound')\n}\n","import {\n enoent,\n invalidateAfterWrite,\n record,\n ResourceName,\n type IndexCacheStore,\n type PathSpec,\n} from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { isNotFound, nextcloudKey } from './util.ts'\n\nexport async function write(\n accessor: NextcloudAccessor,\n path: PathSpec,\n data: Uint8Array,\n _index?: IndexCacheStore,\n): Promise<void> {\n const startMs = performance.now()\n try {\n const op = await accessor.operator()\n await op.write(nextcloudKey(path), Buffer.from(data))\n } catch (error) {\n if (isNotFound(error)) throw enoent(path)\n throw error\n }\n record('write', path.virtual, ResourceName.NEXTCLOUD, data.byteLength, startMs)\n await invalidateAfterWrite(path)\n}\n","import type { IndexCacheStore, PathSpec } from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { write } from './write.ts'\n\nexport function create(\n accessor: NextcloudAccessor,\n path: PathSpec,\n index?: IndexCacheStore,\n): Promise<void> {\n return write(accessor, path, new Uint8Array(), index)\n}\n","import { FileType, lstripSlash, stripSlash, type PathSpec } from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../../accessor/nextcloud.ts'\nimport { isNotFound, rawPathOf } from '../util.ts'\nimport { statOrNull } from './walk.ts'\nimport { compareCodePoints } from '@struktoai/mirage-core'\n\nexport async function entries(\n accessor: NextcloudAccessor,\n path: PathSpec,\n): Promise<[[string, number][], number]> {\n const info = await statOrNull(accessor, path)\n if (info !== null && info.type !== FileType.DIRECTORY) return [[], info.size ?? 0]\n const prefix = stripSlash(rawPathOf(path))\n const scanPath = prefix !== '' ? `${prefix}/` : '/'\n const op = await accessor.operator()\n const found: [string, number][] = []\n let total = 0\n try {\n for (const entry of await op.list(scanPath, { recursive: true })) {\n const key = entry.path()\n const metadata = entry.metadata()\n if (key === '' || key.endsWith('/') || metadata.isDirectory()) continue\n const size = metadata.contentLength !== null ? Number(metadata.contentLength) : 0\n found.push([`/${lstripSlash(key)}`, size])\n total += size\n }\n } catch (error) {\n if (!isNotFound(error)) throw error\n }\n // Python is `found.sort()`, a code-point tuple sort. localeCompare applies\n // ICU collation, which reorders ASCII (punctuation carries less weight)\n // and disagrees with Python on far more than astral names.\n found.sort(([left], [right]) => compareCodePoints(left, right))\n return [found, total]\n}\n","import { type FileStat, type PathSpec } from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../../accessor/nextcloud.ts'\nimport { stat } from '../stat.ts'\n\nexport async function statOrNull(\n accessor: NextcloudAccessor,\n path: PathSpec,\n): Promise<FileStat | null> {\n try {\n return await stat(accessor, path)\n } catch (error) {\n if ((error as { code?: string } | null)?.code === 'ENOENT') return null\n throw error\n }\n}\n","import type { Metadata } from 'opendal'\nimport {\n enoent,\n FileStat,\n FileType,\n guessType,\n mountPrefixOf,\n ResourceType,\n stripSlash,\n type IndexCacheStore,\n type PathSpec,\n} from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { isNotFound, rawPathOf } from './util.ts'\n\nexport async function stat(\n accessor: NextcloudAccessor,\n path: PathSpec,\n index?: IndexCacheStore,\n): Promise<FileStat> {\n const prefix = mountPrefixOf(path.virtual, path.resourcePath)\n const raw = rawPathOf(path)\n const key = stripSlash(raw)\n if (key === '') return new FileStat({ name: '/', type: FileType.DIRECTORY })\n const virtualKey = prefix !== '' ? `${prefix}/${key}` : `/${key}`\n if (index !== undefined) {\n const lookup = await index.get(virtualKey)\n if (lookup.entry !== undefined && lookup.entry !== null) {\n const entry = lookup.entry\n if (entry.resourceType === ResourceType.FOLDER) {\n return new FileStat({\n name: entry.name,\n type: FileType.DIRECTORY,\n modified: entry.remoteTime || null,\n })\n }\n return new FileStat({\n name: entry.name,\n size: entry.size ?? null,\n modified: entry.remoteTime || null,\n type: guessType(entry.name),\n })\n }\n const parent = virtualKey.slice(0, virtualKey.lastIndexOf('/')) || '/'\n const listing = await index.listDir(parent)\n if (listing.entries !== undefined && listing.entries !== null) throw enoent(path)\n }\n const op = await accessor.operator()\n let metadata: Metadata | null = null\n try {\n metadata = await op.stat(key)\n } catch (error) {\n if (!isNotFound(error)) throw error\n }\n if (metadata !== null && !metadata.isDirectory()) return fileStat(key, raw, metadata)\n try {\n const directory = await op.stat(`${key}/`)\n if (directory.isDirectory()) {\n return new FileStat({\n name: key.split('/').pop() ?? '/',\n type: FileType.DIRECTORY,\n modified: directory.lastModified,\n })\n }\n } catch (error) {\n if (!isNotFound(error)) throw error\n }\n throw enoent(path)\n}\n\nfunction fileStat(key: string, raw: string, metadata: Metadata): FileStat {\n const etag = metadata.etag\n return new FileStat({\n name: key.split('/').pop() ?? key,\n size: metadata.contentLength !== null ? Number(metadata.contentLength) : null,\n modified: metadata.lastModified,\n type: guessType(raw),\n fingerprint: etag,\n extra: etag !== null && etag !== '' ? { etag } : {},\n })\n}\n","import { FileType, stripSlash, type PathSpec } from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../../accessor/nextcloud.ts'\nimport { isNotFound, rawPathOf } from '../util.ts'\nimport { statOrNull } from './walk.ts'\n\nexport async function size(accessor: NextcloudAccessor, path: PathSpec): Promise<number> {\n const info = await statOrNull(accessor, path)\n if (info !== null && info.type !== FileType.DIRECTORY) return info.size ?? 0\n const prefix = stripSlash(rawPathOf(path))\n const scanPath = prefix !== '' ? `${prefix}/` : '/'\n const op = await accessor.operator()\n let total = 0\n try {\n for (const entry of await op.list(scanPath, { recursive: true })) {\n const metadata = entry.metadata()\n if (entry.path().endsWith('/') || metadata.isDirectory()) continue\n total += metadata.contentLength !== null ? Number(metadata.contentLength) : 0\n }\n } catch (error) {\n if (isNotFound(error)) return 0\n throw error\n }\n return total\n}\n","import type { PathSpec } from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { stat } from './stat.ts'\n\nexport async function exists(accessor: NextcloudAccessor, path: PathSpec): Promise<boolean> {\n try {\n await stat(accessor, path)\n return true\n } catch (error) {\n if ((error as { code?: string } | null)?.code === 'ENOENT') return false\n throw error\n }\n}\n","import type { Metadata } from 'opendal'\nimport {\n keep,\n optionsTree,\n rstripSlash,\n startBasename,\n stripSlash,\n treeHasEmpty,\n type FindEntry,\n type FindOptions,\n type PathSpec,\n type PredNode,\n compareCodePoints,\n} from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport {\n searchFiles,\n supportsQuery,\n type Bounds,\n type FilesSearchQuery,\n type SearchEntry,\n} from './search/index.ts'\nimport { isNotFound, rawPathOf } from './util.ts'\n\ninterface FindScope {\n baseKey: string\n scanKey: string\n startName: string\n}\n\ninterface Candidate {\n key: string\n name: string\n kind: 'f' | 'd'\n size: number | null\n modified: number | null\n isEmpty: boolean | null\n}\n\ninterface FindCriteria {\n predicate: PredNode\n size: Bounds\n modified: Bounds\n minDepth: number | null\n maxDepth: number | null\n}\n\nfunction findScope(path: PathSpec): FindScope {\n const relative = stripSlash(rawPathOf(path))\n return {\n baseKey: relative !== '' ? `/${relative}` : '/',\n scanKey: relative !== '' ? `${relative}/` : '/',\n startName: startBasename(path.virtual),\n }\n}\n\nfunction constrained(bounds: Bounds): boolean {\n return bounds.lower !== null || bounds.upper !== null\n}\n\nfunction contains(bounds: Bounds, value: number): boolean {\n if (bounds.lower !== null && value < bounds.lower) return false\n if (bounds.upper !== null && value > bounds.upper) return false\n return true\n}\n\nfunction scopeContains(scope: FindScope, key: string): boolean {\n if (scope.baseKey === '/') return key.startsWith('/')\n return key === scope.baseKey || key.startsWith(`${scope.baseKey}/`)\n}\n\nfunction depth(scope: FindScope, key: string): number {\n if (key === scope.baseKey) return 0\n const baseDepth = scope.baseKey === '/' ? 0 : (scope.baseKey.match(/\\//g) ?? []).length\n return (key.match(/\\//g) ?? []).length - baseDepth\n}\n\nfunction parentKeys(scope: FindScope, key: string): string[] {\n const keys: string[] = []\n let parent = key.slice(0, key.lastIndexOf('/')) || '/'\n while (scopeContains(scope, parent)) {\n keys.push(parent)\n if (parent === scope.baseKey) break\n parent = parent.slice(0, parent.lastIndexOf('/')) || '/'\n }\n return keys\n}\n\nfunction basename(key: string): string {\n return rstripSlash(key).split('/').pop() ?? ''\n}\n\nfunction modifiedTimestamp(metadata: Metadata): number | null {\n if (metadata.lastModified === null) return null\n const milliseconds = Date.parse(metadata.lastModified)\n return Number.isNaN(milliseconds) ? null : milliseconds / 1000\n}\n\nfunction candidateFromMetadata(key: string, name: string, metadata: Metadata): Candidate {\n const isDirectory = metadata.isDirectory()\n return {\n key,\n name,\n kind: isDirectory ? 'd' : 'f',\n size: isDirectory ? 0 : metadata.contentLength !== null ? Number(metadata.contentLength) : null,\n modified: modifiedTimestamp(metadata),\n isEmpty: null,\n }\n}\n\nfunction candidateFromSearch(entry: SearchEntry): Candidate {\n return { ...entry, isEmpty: null }\n}\n\nasync function statCandidate(\n accessor: NextcloudAccessor,\n key: string,\n name: string,\n): Promise<Candidate | null> {\n if (key === '/') {\n return { key, name, kind: 'd', size: 0, modified: null, isEmpty: null }\n }\n const op = await accessor.operator()\n const relative = stripSlash(key)\n let metadata: Metadata\n try {\n metadata = await op.stat(relative)\n } catch (error) {\n if (!isNotFound(error)) throw error\n try {\n metadata = await op.stat(`${relative}/`)\n } catch (directoryError) {\n if (isNotFound(directoryError)) return null\n throw directoryError\n }\n }\n return candidateFromMetadata(key, name, metadata)\n}\n\nfunction matches(candidate: Candidate, scope: FindScope, criteria: FindCriteria): boolean {\n if (!scopeContains(scope, candidate.key)) {\n throw new Error(`Nextcloud Files Search returned an out-of-scope path: ${candidate.key}`)\n }\n const candidateDepth = depth(scope, candidate.key)\n if (criteria.maxDepth !== null && candidateDepth > criteria.maxDepth) return false\n const entry: FindEntry = {\n key: candidate.key,\n name: candidate.name,\n kind: candidate.kind,\n depth: candidateDepth,\n isEmpty: candidate.isEmpty,\n }\n if (!keep(entry, criteria.predicate, criteria.minDepth)) return false\n if (constrained(criteria.size)) {\n const size = candidate.kind === 'd' ? 0 : (candidate.size ?? 0)\n if (!contains(criteria.size, size)) return false\n }\n if (constrained(criteria.modified)) {\n if (candidate.modified === null || !contains(criteria.modified, candidate.modified))\n return false\n }\n return true\n}\n\nfunction matchingKeys(\n candidates: Map<string, Candidate>,\n scope: FindScope,\n criteria: FindCriteria,\n): string[] {\n return [...candidates.values()]\n .filter((candidate) => matches(candidate, scope, criteria))\n .map((candidate) => candidate.key)\n .sort(compareCodePoints)\n}\n\nfunction searchQuery(criteria: FindCriteria): FilesSearchQuery {\n return {\n tree: criteria.predicate,\n size: criteria.size,\n modified: criteria.modified,\n }\n}\n\nasync function findWithSearch(\n accessor: NextcloudAccessor,\n path: PathSpec,\n scope: FindScope,\n criteria: FindCriteria,\n): Promise<string[] | null> {\n if (criteria.maxDepth === 0 && !treeHasEmpty(criteria.predicate)) {\n const start = await statCandidate(accessor, scope.baseKey, scope.startName)\n if (start === null) return []\n return matchingKeys(new Map([[scope.baseKey, start]]), scope, criteria)\n }\n const query = searchQuery(criteria)\n if (!supportsQuery(query)) return null\n const start = await statCandidate(accessor, scope.baseKey, scope.startName)\n if (start === null) return []\n if (start.kind !== 'd') return null\n const candidates = new Map<string, Candidate>([[scope.baseKey, start]])\n if (criteria.maxDepth !== 0) {\n const found = await searchFiles(accessor, path, query)\n if (found === null) return null\n for (const entry of found) {\n if (!candidates.has(entry.key)) candidates.set(entry.key, candidateFromSearch(entry))\n }\n }\n return matchingKeys(candidates, scope, criteria)\n}\n\nfunction scanKey(rawKey: string): string {\n return `/${stripSlash(rawKey)}`\n}\n\nfunction directoryCandidate(key: string): Candidate {\n return { key, name: basename(key), kind: 'd', size: 0, modified: null, isEmpty: null }\n}\n\nasync function collectScanCandidates(\n accessor: NextcloudAccessor,\n scope: FindScope,\n): Promise<{ candidates: Map<string, Candidate>; nonemptyDirectories: Set<string> }> {\n const candidates = new Map<string, Candidate>()\n const nonemptyDirectories = new Set<string>()\n const op = await accessor.operator()\n let entries\n try {\n entries = await op.list(scope.scanKey, { recursive: true })\n } catch (error) {\n if (isNotFound(error)) return { candidates, nonemptyDirectories }\n throw error\n }\n for (const entry of entries) {\n const rawKey = entry.path()\n if (rawKey === '') continue\n const key = scanKey(rawKey)\n candidates.set(key, candidateFromMetadata(key, basename(key), entry.metadata()))\n for (const parent of parentKeys(scope, key)) {\n nonemptyDirectories.add(parent)\n if (!candidates.has(parent)) candidates.set(parent, directoryCandidate(parent))\n }\n }\n return { candidates, nonemptyDirectories }\n}\n\nfunction emptyState(candidate: Candidate, nonemptyDirectories: Set<string>): boolean {\n return candidate.kind === 'd'\n ? !nonemptyDirectories.has(candidate.key)\n : (candidate.size ?? 0) === 0\n}\n\nasync function hydrateScanCandidate(\n accessor: NextcloudAccessor,\n candidate: Candidate,\n nonemptyDirectories: Set<string>,\n criteria: FindCriteria,\n): Promise<Candidate> {\n let hydrated = candidate\n if (constrained(criteria.modified) && candidate.kind === 'd' && candidate.modified === null) {\n hydrated = (await statCandidate(accessor, candidate.key, candidate.name)) ?? candidate\n }\n return { ...hydrated, isEmpty: emptyState(hydrated, nonemptyDirectories) }\n}\n\nasync function findWithScan(\n accessor: NextcloudAccessor,\n scope: FindScope,\n criteria: FindCriteria,\n): Promise<string[]> {\n const { candidates, nonemptyDirectories } = await collectScanCandidates(accessor, scope)\n const start = await statCandidate(accessor, scope.baseKey, scope.startName)\n if (start === null) return []\n candidates.set(scope.baseKey, start)\n const hydrated = new Map<string, Candidate>()\n for (const candidate of candidates.values()) {\n const entry = await hydrateScanCandidate(accessor, candidate, nonemptyDirectories, criteria)\n hydrated.set(entry.key, entry)\n }\n return matchingKeys(hydrated, scope, criteria)\n}\n\nexport async function find(\n accessor: NextcloudAccessor,\n path: PathSpec,\n options: FindOptions = {},\n): Promise<string[]> {\n const scope = findScope(path)\n const criteria: FindCriteria = {\n predicate: optionsTree(options),\n size: { lower: options.minSize ?? null, upper: options.maxSize ?? null },\n modified: { lower: options.mtimeMin ?? null, upper: options.mtimeMax ?? null },\n minDepth: options.minDepth ?? null,\n maxDepth: options.maxDepth ?? null,\n }\n const searchResults = await findWithSearch(accessor, path, scope, criteria)\n return searchResults ?? findWithScan(accessor, scope, criteria)\n}\n","import type { PredNode } from '@struktoai/mirage-core'\n\nexport const Namespace = {\n DAV: 'DAV:',\n OWNCLOUD: 'http://owncloud.org/ns',\n SEARCHDAV: 'https://github.com/icewind1991/SearchDAV/ns',\n} as const\n\nexport const Comparison = {\n EQUAL: 'eq',\n GREATER_THAN_OR_EQUAL: 'gte',\n LESS_THAN_OR_EQUAL: 'lte',\n LIKE: 'like',\n} as const\n\nexport const BooleanOperation = {\n AND: 'and',\n OR: 'or',\n} as const\n\nexport interface Property {\n namespace: (typeof Namespace)[keyof typeof Namespace]\n prefix: 'd' | 'oc'\n name: string\n}\n\nexport interface Bounds {\n lower: number | null\n upper: number | null\n}\n\nexport interface FilesSearchQuery {\n tree: PredNode\n size?: Bounds\n modified?: Bounds\n}\n\nexport interface SearchEntry {\n key: string\n name: string\n kind: 'f' | 'd'\n size: number | null\n modified: number | null\n}\n\nexport interface SearchTarget {\n endpoint: string\n resourceScope: string\n}\n\nexport interface CompiledPredicate {\n condition: string | null\n negatable: boolean\n}\n\nexport type ComparisonOperator = (typeof Comparison)[keyof typeof Comparison]\nexport type BooleanOperator = (typeof BooleanOperation)[keyof typeof BooleanOperation]\nexport type XmlRecord = Record<string, unknown>\n","import { Namespace, type Property } from './types.ts'\n\nexport const DISPLAY_NAME: Property = {\n namespace: Namespace.DAV,\n prefix: 'd',\n name: 'displayname',\n}\nexport const RESOURCE_TYPE: Property = {\n namespace: Namespace.DAV,\n prefix: 'd',\n name: 'resourcetype',\n}\nexport const CONTENT_LENGTH: Property = {\n namespace: Namespace.DAV,\n prefix: 'd',\n name: 'getcontentlength',\n}\nexport const LAST_MODIFIED: Property = {\n namespace: Namespace.DAV,\n prefix: 'd',\n name: 'getlastmodified',\n}\nexport const SIZE: Property = {\n namespace: Namespace.OWNCLOUD,\n prefix: 'oc',\n name: 'size',\n}\nexport const SELECT_PROPERTIES = [DISPLAY_NAME, RESOURCE_TYPE, CONTENT_LENGTH, LAST_MODIFIED, SIZE]\nexport const ORDER_PROPERTIES = [DISPLAY_NAME, LAST_MODIFIED, SIZE]\nexport const SEARCH_METHOD = 'SEARCH'\nexport const SEARCH_ENDPOINT_PATH = '/remote.php/dav/'\nexport const SEARCH_DEPTH = 'infinity'\nexport const SEARCH_PAGE_SIZE = 100\nexport const SEARCH_HEADERS = {\n Accept: 'application/xml',\n 'Content-Type': 'text/xml; charset=utf-8',\n}\nexport const UNAVAILABLE_STATUS_CODES = new Set([404, 405, 501])\n","import { rstripSlash, stripSlash, type PathSpec } from '@struktoai/mirage-core'\nimport { rawPathOf } from '../util.ts'\nimport { SEARCH_ENDPOINT_PATH } from './constants.ts'\nimport type { SearchTarget } from './types.ts'\n\nfunction decodePath(path: string): string {\n try {\n return decodeURIComponent(path)\n } catch (error) {\n throw new Error(`invalid percent-encoding in Nextcloud path: ${path}`, { cause: error })\n }\n}\n\nexport function searchTarget(url: string): SearchTarget | null {\n const parsed = new URL(url)\n const marker = parsed.pathname.indexOf(SEARCH_ENDPOINT_PATH)\n if (marker < 0) return null\n const davEnd = marker + SEARCH_ENDPOINT_PATH.length\n const relative = stripSlash(parsed.pathname.slice(davEnd))\n const parts = relative === '' ? [] : relative.split('/')\n if (parts.length < 2 || parts[0] !== 'files') return null\n const endpoint = new URL(parsed.toString())\n endpoint.pathname = parsed.pathname.slice(0, davEnd)\n endpoint.search = ''\n endpoint.hash = ''\n return {\n endpoint: endpoint.toString(),\n resourceScope: decodePath(`/${parts.join('/')}`),\n }\n}\n\nexport function scopePath(target: SearchTarget, path: PathSpec): string {\n const relative = stripSlash(rawPathOf(path))\n return relative === '' ? target.resourceScope : `${rstripSlash(target.resourceScope)}/${relative}`\n}\n\nfunction stripScope(path: string, scope: string): string | null {\n if (path === scope) return ''\n const prefix = `${rstripSlash(scope)}/`\n return path.startsWith(prefix) ? path.slice(prefix.length) : null\n}\n\nexport function relativePath(href: string, target: SearchTarget): string {\n const hrefPath = rstripSlash(decodePath(new URL(href, target.endpoint).pathname))\n const resourceScope = rstripSlash(target.resourceScope)\n let relative = stripScope(hrefPath, resourceScope)\n if (relative === null) {\n const davRoot = rstripSlash(decodePath(new URL(target.endpoint).pathname))\n relative = stripScope(hrefPath, `${davRoot}${resourceScope}`)\n }\n if (relative === null) {\n throw new Error(`Nextcloud Files Search returned an out-of-scope href: ${href}`)\n }\n return relative !== '' ? `/${relative}` : '/'\n}\n","import type { PathSpec, PredNode } from '@struktoai/mirage-core'\nimport {\n DISPLAY_NAME,\n LAST_MODIFIED,\n ORDER_PROPERTIES,\n SEARCH_DEPTH,\n SEARCH_PAGE_SIZE,\n SELECT_PROPERTIES,\n SIZE,\n} from './constants.ts'\nimport { scopePath } from './target.ts'\nimport {\n BooleanOperation,\n Comparison,\n Namespace,\n type BooleanOperator,\n type ComparisonOperator,\n type CompiledPredicate,\n type FilesSearchQuery,\n type Property,\n type SearchTarget,\n} from './types.ts'\n\nfunction escapeXml(value: string | number): string {\n return String(value)\n .replaceAll('&', '&')\n .replaceAll('<', '<')\n .replaceAll('>', '>')\n .replaceAll('\"', '"')\n .replaceAll(\"'\", ''')\n}\n\nfunction propertyTag(field: Property): string {\n return `<${field.prefix}:${field.name}/>`\n}\n\nfunction property(field: Property): string {\n return `<d:prop>${propertyTag(field)}</d:prop>`\n}\n\nfunction comparison(\n operation: ComparisonOperator,\n field: Property,\n value: string | number,\n): string {\n return `<d:${operation}>${property(field)}<d:literal>${escapeXml(value)}</d:literal></d:${operation}>`\n}\n\nfunction isCollection(): string {\n return '<d:is-collection/>'\n}\n\nfunction negate(condition: string): string {\n return `<d:not>${condition}</d:not>`\n}\n\nfunction combine(operation: BooleanOperator, conditions: string[]): string {\n const [only] = conditions\n if (only !== undefined && conditions.length === 1) return only\n return `<d:${operation}>${conditions.join('')}</d:${operation}>`\n}\n\nexport function globToLike(pattern: string): string {\n let translated = ''\n for (const character of pattern) {\n if (character === '*') translated += '%'\n else if (character === '?') translated += '_'\n else if (character === '\\\\') translated += '%'\n else translated += character\n }\n return translated\n}\n\nfunction nameOperation(node: Extract<PredNode, { op: 'name' }>): ComparisonOperator {\n const wildcard = node.pattern.includes('*') || node.pattern.includes('?')\n return wildcard || node.icase ? Comparison.LIKE : Comparison.EQUAL\n}\n\nfunction nameCondition(node: Extract<PredNode, { op: 'name' }>): string {\n const operation = nameOperation(node)\n const value = operation === Comparison.LIKE ? globToLike(node.pattern) : node.pattern\n return comparison(operation, DISPLAY_NAME, value)\n}\n\nfunction compilePredicate(node: PredNode): CompiledPredicate | null {\n switch (node.op) {\n case 'true':\n return { condition: null, negatable: false }\n case 'name': {\n // A class has no LIKE spelling, and a backslash escapes the next\n // character out of the glob (`-name 'a\\b'` matches `ab`), so the literal\n // the server would compare is not the name being matched.\n if (node.pattern.includes('[') || node.pattern.includes('\\\\')) return null\n // LIKE is a deliberate superset (case-insensitive, and a literal `%`/`_`\n // in the pattern stays a wildcard) that the client-side keep()\n // re-filters. Negation has nothing to re-filter with: NOT(superset)\n // withholds rows the true predicate keeps and no client pass can add\n // them back, so only the exact comparison is safe to negate.\n return {\n condition: nameCondition(node),\n negatable: nameOperation(node) === Comparison.EQUAL,\n }\n }\n case 'type':\n if (node.kind === 'd') return { condition: isCollection(), negatable: true }\n if (node.kind === 'f') return { condition: negate(isCollection()), negatable: false }\n return null\n case 'not': {\n const compiled = compilePredicate(node.kid)\n if (compiled?.condition == null) return null\n // Nextcloud inverts a `<d:not>` by swapping the comparison inside it\n // for its opposite, so the only thing it can negate is a single\n // comparison; anything else raises server-side and comes back as a 500.\n // Refusing here is what falls the whole find back to the scan walk,\n // which has no such limit.\n if (!compiled.negatable) return null\n return { condition: negate(compiled.condition), negatable: false }\n }\n case 'and':\n case 'or': {\n const conditions: string[] = []\n let negatable = false\n for (const kid of node.kids) {\n const compiled = compilePredicate(kid)\n if (compiled === null) return null\n if (compiled.condition === null) {\n if (node.op === 'or') return null\n continue\n }\n conditions.push(compiled.condition)\n negatable = compiled.negatable\n }\n if (conditions.length === 0)\n return node.op === 'and' ? { condition: null, negatable: false } : null\n const operation = node.op === 'and' ? BooleanOperation.AND : BooleanOperation.OR\n // `combine` returns a lone condition unwrapped, so a one-armed group is\n // still exactly whatever that arm was, negatable included. With two or\n // more arms the result is a `<d:and>`/`<d:or>`, which is not.\n return {\n condition: combine(operation, conditions),\n negatable: conditions.length === 1 && negatable,\n }\n }\n case 'path':\n case 'empty':\n return null\n }\n}\n\nfunction sizeCondition(query: FilesSearchQuery): string | null {\n const size = query.size\n if (size === undefined) return null\n const conditions: string[] = []\n if (size.lower !== null && size.lower === size.upper) {\n conditions.push(comparison(Comparison.EQUAL, SIZE, size.lower))\n } else {\n if (size.lower !== null) {\n conditions.push(comparison(Comparison.GREATER_THAN_OR_EQUAL, SIZE, size.lower))\n }\n if (size.upper !== null) {\n conditions.push(comparison(Comparison.LESS_THAN_OR_EQUAL, SIZE, size.upper))\n }\n }\n if (conditions.length === 0) return null\n const fileBounds = combine(BooleanOperation.AND, [negate(isCollection()), ...conditions])\n const includesZero =\n (size.lower === null || size.lower <= 0) && (size.upper === null || size.upper >= 0)\n return includesZero ? combine(BooleanOperation.OR, [isCollection(), fileBounds]) : fileBounds\n}\n\nfunction whereCondition(query: FilesSearchQuery): string | null {\n const compiled = compilePredicate(query.tree)\n if (compiled === null) return null\n const conditions: string[] = []\n if (compiled.condition !== null) conditions.push(compiled.condition)\n const size = sizeCondition(query)\n if (size !== null) conditions.push(size)\n if (query.modified?.lower != null) {\n conditions.push(\n comparison(Comparison.GREATER_THAN_OR_EQUAL, LAST_MODIFIED, Math.floor(query.modified.lower)),\n )\n }\n if (query.modified?.upper != null) {\n conditions.push(\n comparison(Comparison.LESS_THAN_OR_EQUAL, LAST_MODIFIED, Math.ceil(query.modified.upper)),\n )\n }\n return conditions.length > 0 ? combine(BooleanOperation.AND, conditions) : null\n}\n\nexport function supportsQuery(query: FilesSearchQuery): boolean {\n return whereCondition(query) !== null\n}\n\nfunction order(field: Property): string {\n return `<d:order>${property(field)}<d:ascending/></d:order>`\n}\n\nexport function requestBody(\n target: SearchTarget,\n path: PathSpec,\n query: FilesSearchQuery,\n offset: number,\n): string {\n const condition = whereCondition(query)\n if (condition === null) throw new Error('Nextcloud Files Search requires a supported query')\n const selected = SELECT_PROPERTIES.map(propertyTag).join('')\n const ordered = ORDER_PROPERTIES.map(order).join('')\n return `<?xml version=\"1.0\" encoding=\"UTF-8\"?><d:searchrequest xmlns:d=\"${Namespace.DAV}\" xmlns:oc=\"${Namespace.OWNCLOUD}\" xmlns:sd=\"${Namespace.SEARCHDAV}\"><d:basicsearch><d:select><d:prop>${selected}</d:prop></d:select><d:from><d:scope><d:href>${escapeXml(scopePath(target, path))}</d:href><d:depth>${SEARCH_DEPTH}</d:depth></d:scope></d:from><d:where>${condition}</d:where><d:orderby>${ordered}</d:orderby><d:limit><d:nresults>${String(SEARCH_PAGE_SIZE)}</d:nresults><sd:firstresult>${String(offset)}</sd:firstresult></d:limit></d:basicsearch></d:searchrequest>`\n}\n","import { XMLParser } from 'fast-xml-parser'\nimport { SyntaxValidator } from 'fast-xml-validator'\nimport { rstripSlash } from '@struktoai/mirage-core'\nimport { CONTENT_LENGTH, DISPLAY_NAME, LAST_MODIFIED, RESOURCE_TYPE, SIZE } from './constants.ts'\nimport { relativePath } from './target.ts'\nimport type { Property, SearchEntry, SearchTarget, XmlRecord } from './types.ts'\n\nconst parser = new XMLParser({\n ignoreAttributes: false,\n removeNSPrefix: true,\n parseTagValue: false,\n trimValues: false,\n})\n\nfunction isRecord(value: unknown): value is XmlRecord {\n return value !== null && typeof value === 'object' && !Array.isArray(value)\n}\n\nfunction records(value: unknown): XmlRecord[] {\n if (Array.isArray(value)) return value.filter(isRecord)\n return isRecord(value) ? [value] : []\n}\n\nfunction stringValue(value: unknown): string | null {\n if (typeof value === 'string' || typeof value === 'number') return String(value)\n return null\n}\n\nfunction successfulProperties(response: XmlRecord): XmlRecord[] {\n const properties: XmlRecord[] = []\n for (const propstat of records(response.propstat)) {\n const status = stringValue(propstat.status) ?? ''\n const fields = status.split(/\\s+/)\n if (fields[1] === '200' && isRecord(propstat.prop)) properties.push(propstat.prop)\n }\n if (properties.length === 0) {\n throw new Error('Nextcloud Files Search result has no successful properties')\n }\n return properties\n}\n\nfunction findText(properties: XmlRecord[], field: Property): string | null {\n for (const propertySet of properties) {\n const value = stringValue(propertySet[field.name])\n if (value !== null) return value\n }\n return null\n}\n\nfunction hasCollection(properties: XmlRecord[]): boolean {\n return properties.some((propertySet) => {\n const resourceType = propertySet[RESOURCE_TYPE.name]\n return isRecord(resourceType) && 'collection' in resourceType\n })\n}\n\nfunction modifiedTimestamp(value: string | null): number | null {\n if (value === null) return null\n const milliseconds = Date.parse(value)\n if (Number.isNaN(milliseconds)) {\n throw new Error(`invalid Nextcloud Files Search timestamp: ${value}`)\n }\n return milliseconds / 1000\n}\n\nfunction entrySize(properties: XmlRecord[]): number | null {\n const value = findText(properties, SIZE) ?? findText(properties, CONTENT_LENGTH)\n if (value === null) return null\n const size = Number(value)\n if (!Number.isInteger(size)) throw new Error(`invalid Nextcloud Files Search size: ${value}`)\n return size\n}\n\nfunction parseResponse(response: XmlRecord, target: SearchTarget): SearchEntry {\n const href = stringValue(response.href)\n if (href === null) throw new Error('Nextcloud Files Search result is missing href')\n const properties = successfulProperties(response)\n const key = relativePath(href, target)\n return {\n key,\n name: findText(properties, DISPLAY_NAME) ?? rstripSlash(key).split('/').pop() ?? '',\n kind: hasCollection(properties) ? 'd' : 'f',\n size: entrySize(properties),\n modified: modifiedTimestamp(findText(properties, LAST_MODIFIED)),\n }\n}\n\nfunction validateXml(content: string): void {\n try {\n const validation = SyntaxValidator.validate(content)\n if (validation !== true) throw new Error(validation.err.msg)\n } catch (error) {\n const message = error instanceof Error ? error.message : String(error)\n throw new Error(`invalid Nextcloud Files Search XML: ${message}`, { cause: error })\n }\n}\n\nexport function parsePage(content: string, target: SearchTarget): SearchEntry[] {\n validateXml(content)\n const parsed = parser.parse(content) as unknown\n if (!isRecord(parsed) || !('multistatus' in parsed)) {\n throw new Error('invalid Nextcloud Files Search response')\n }\n const multistatus = parsed.multistatus\n if (multistatus === '') return []\n if (!isRecord(multistatus)) throw new Error('invalid Nextcloud Files Search response')\n return records(multistatus.response).map((response) => parseResponse(response, target))\n}\n","import type { PathSpec } from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../../accessor/nextcloud.ts'\nimport {\n SEARCH_HEADERS,\n SEARCH_METHOD,\n SEARCH_PAGE_SIZE,\n UNAVAILABLE_STATUS_CODES,\n} from './constants.ts'\nimport { requestBody, supportsQuery } from './query.ts'\nimport { parsePage } from './response.ts'\nimport { searchTarget } from './target.ts'\nimport type { FilesSearchQuery, SearchEntry } from './types.ts'\n\nfunction authorization(accessor: NextcloudAccessor): string | null {\n const username = accessor.config.username\n if (username === undefined || username === '') return null\n return `Basic ${Buffer.from(`${username}:${accessor.config.password ?? ''}`).toString('base64')}`\n}\n\nexport async function searchFiles(\n accessor: NextcloudAccessor,\n path: PathSpec,\n query: FilesSearchQuery,\n): Promise<SearchEntry[] | null> {\n if (!supportsQuery(query)) return null\n const target = searchTarget(accessor.config.url)\n if (target === null) return null\n const headers: Record<string, string> = { ...SEARCH_HEADERS }\n const auth = authorization(accessor)\n if (auth !== null) headers.Authorization = auth\n const entries = new Map<string, SearchEntry>()\n let offset = 0\n for (;;) {\n const response = await fetch(target.endpoint, {\n method: SEARCH_METHOD,\n headers,\n body: requestBody(target, path, query, offset),\n signal: AbortSignal.timeout((accessor.config.timeout ?? 30) * 1000),\n })\n if (UNAVAILABLE_STATUS_CODES.has(response.status)) return null\n if (!response.ok) {\n throw new Error(`Nextcloud Files Search returned HTTP ${String(response.status)}`)\n }\n if (response.status !== 207) {\n throw new Error(\n `Nextcloud Files Search returned HTTP ${String(response.status)}, expected 207`,\n )\n }\n const page = parsePage(await response.text(), target)\n const previousSize = entries.size\n for (const entry of page) if (!entries.has(entry.key)) entries.set(entry.key, entry)\n if (page.length > 0 && entries.size === previousSize) return null\n if (page.length < SEARCH_PAGE_SIZE) break\n offset += page.length\n }\n return [...entries.values()]\n}\n","import {\n invalidateAfterWrite,\n invalidateAncestors,\n rstripSlash,\n type PathSpec,\n} from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { nextcloudKey } from './util.ts'\n\nexport async function mkdir(\n accessor: NextcloudAccessor,\n path: PathSpec,\n parents = false,\n): Promise<void> {\n const key = `${rstripSlash(nextcloudKey(path))}/`\n const op = await accessor.operator()\n await op.createDir(key)\n await invalidateAfterWrite(path)\n if (parents) await invalidateAncestors(path)\n}\n","import {\n enoent,\n record,\n ResourceName,\n type IndexCacheStore,\n type PathSpec,\n} from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { isNotFound, nextcloudKey } from './util.ts'\n\nexport interface NextcloudReadOptions {\n offset?: number\n size?: number\n}\n\nexport async function read(\n accessor: NextcloudAccessor,\n path: PathSpec,\n _index?: IndexCacheStore,\n options: NextcloudReadOptions = {},\n): Promise<Uint8Array> {\n const op = await accessor.operator()\n const readOptions: { offset?: bigint; size?: bigint } = {}\n if (options.offset !== undefined && options.offset > 0) {\n readOptions.offset = BigInt(options.offset)\n }\n if (options.size !== undefined) {\n readOptions.offset ??= 0n\n readOptions.size = BigInt(options.size)\n }\n const startMs = performance.now()\n try {\n const data =\n readOptions.offset !== undefined || readOptions.size !== undefined\n ? await op.read(nextcloudKey(path), readOptions)\n : await op.read(nextcloudKey(path))\n const bytes = new Uint8Array(data)\n record('read', path.virtual, ResourceName.NEXTCLOUD, bytes.byteLength, startMs)\n return bytes\n } catch (error) {\n if (isNotFound(error)) throw enoent(path)\n throw error\n }\n}\n","import {\n enotdir,\n enoent,\n IndexEntry,\n mountPrefixOf,\n ResourceType,\n rstripSlash,\n stripSlash,\n type IndexCacheStore,\n type PathSpec,\n compareCodePoints,\n} from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { SCOPE_ERROR } from './constants.ts'\nimport { isNotFound } from './util.ts'\n\nexport async function readdir(\n accessor: NextcloudAccessor,\n path: PathSpec,\n index?: IndexCacheStore,\n): Promise<string[]> {\n const prefix = mountPrefixOf(path.virtual, path.resourcePath)\n let target = path.pattern !== null ? path.directory : path.virtual\n if (prefix !== '' && target.startsWith(prefix)) {\n const rest = target.slice(prefix.length)\n if (prefix.endsWith('/') || rest === '' || rest.startsWith('/')) target = rest || '/'\n }\n const virtualKey = rstripSlash(prefix !== '' ? `${prefix}${target}` : target) || '/'\n if (index !== undefined) {\n const listing = await index.listDir(virtualKey)\n if (listing.entries !== undefined && listing.entries !== null) return listing.entries\n }\n const stripped = stripSlash(target)\n const listPath = stripped !== '' ? `${stripped}/` : '/'\n const op = await accessor.operator()\n let entries\n try {\n entries = await op.list(listPath)\n } catch (error) {\n if (isNotFound(error)) throw enoent(path)\n throw error\n }\n const names: string[] = []\n const directories = new Set<string>()\n const metadata = new Map<string, { size: number | null; modified: string }>()\n for (const entry of entries) {\n const relative = entry.path()\n if (relative === '' || relative === listPath) continue\n const info = entry.metadata()\n const isDirectory = relative.endsWith('/') || info.isDirectory()\n const key = `/${rstripSlash(relative)}`\n names.push(key)\n if (isDirectory) directories.add(key)\n metadata.set(key, {\n size: info.contentLength !== null ? Number(info.contentLength) : null,\n modified: info.lastModified ?? '',\n })\n }\n // PROPFIND normally carries getcontentlength for every file; when the\n // lister omits the metadata, one stat per affected file fills the gap so\n // the index never caches an unknown size.\n for (const [key, info] of metadata) {\n if (directories.has(key) || info.size !== null) continue\n const md = await op.stat(stripSlash(key))\n info.size = md.contentLength !== null ? Number(md.contentLength) : null\n if (info.modified === '' && md.lastModified !== null) info.modified = md.lastModified\n }\n const targetKey = `/${stripSlash(target)}`\n if (names.length === 1 && names[0] === targetKey && !directories.has(targetKey)) {\n throw enotdir(path)\n }\n names.sort(compareCodePoints)\n if (names.length > SCOPE_ERROR) {\n console.warn(\n `nextcloud readdir: ${virtualKey} returned ${String(names.length)} entries (limit ${String(SCOPE_ERROR)})`,\n )\n }\n if (index !== undefined) {\n await index.setDir(\n virtualKey,\n names.map((key) => {\n const name = key.split('/').pop() ?? key\n const info = metadata.get(key)\n return [\n name,\n new IndexEntry({\n id: key,\n name,\n resourceType: directories.has(key) ? ResourceType.FOLDER : ResourceType.FILE,\n size: directories.has(key) ? null : (info?.size ?? null),\n remoteTime: info?.modified ?? '',\n }),\n ]\n }),\n )\n }\n return names.map((key) => (prefix !== '' ? `${prefix}${key}` : key)).sort(compareCodePoints)\n}\n","import {\n enoent,\n invalidateAfterUnlink,\n invalidateAfterWrite,\n type PathSpec,\n} from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { isNotFound, nextcloudKey } from './util.ts'\n\nexport async function rename(\n accessor: NextcloudAccessor,\n source: PathSpec,\n destination: PathSpec,\n): Promise<void> {\n const op = await accessor.operator()\n try {\n await op.rename(nextcloudKey(source), nextcloudKey(destination))\n } catch (error) {\n if (isNotFound(error)) throw enoent(source)\n throw error\n }\n await invalidateAfterWrite(destination)\n await invalidateAfterUnlink(source)\n}\n","import { enoent, invalidateAfterUnlink, rstripSlash, type PathSpec } from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { isNotFound, nextcloudKey } from './util.ts'\n\nexport async function rmR(accessor: NextcloudAccessor, path: PathSpec): Promise<void> {\n const key = `${rstripSlash(nextcloudKey(path))}/`\n const op = await accessor.operator()\n try {\n await op.removeAll(key)\n } catch (error) {\n if (isNotFound(error)) throw enoent(path)\n throw error\n }\n await invalidateAfterUnlink(path)\n}\n","import { enoent, invalidateAfterUnlink, rstripSlash, type PathSpec } from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { isNotFound, nextcloudKey } from './util.ts'\n\nexport async function rmdir(accessor: NextcloudAccessor, path: PathSpec): Promise<void> {\n const key = `${rstripSlash(nextcloudKey(path))}/`\n const op = await accessor.operator()\n try {\n await op.delete(key)\n } catch (error) {\n if (isNotFound(error)) throw enoent(path)\n throw error\n }\n await invalidateAfterUnlink(path)\n}\n","import { enoent, recordStream, type IndexCacheStore, type PathSpec } from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { DEFAULT_CHUNK_SIZE } from './constants.ts'\nimport { read } from './read.ts'\nimport { isNotFound, nextcloudKey } from './util.ts'\n\nexport function rangeRead(\n accessor: NextcloudAccessor,\n path: PathSpec,\n start: number,\n end: number,\n): Promise<Uint8Array> {\n return read(accessor, path, undefined, { offset: start, size: end - start })\n}\n\nexport async function* stream(\n accessor: NextcloudAccessor,\n path: PathSpec,\n _index?: IndexCacheStore,\n chunkSize = DEFAULT_CHUNK_SIZE,\n): AsyncIterable<Uint8Array> {\n const op = await accessor.operator()\n const rec = recordStream('read', path.virtual, accessor.resourceName)\n let reader\n try {\n reader = await op.reader(nextcloudKey(path))\n } catch (error) {\n if (isNotFound(error)) throw enoent(path)\n throw error\n }\n const buffer = Buffer.alloc(chunkSize)\n for (;;) {\n const size = Number(await reader.read(buffer))\n if (size <= 0) break\n const chunk = new Uint8Array(buffer.subarray(0, size))\n if (rec !== null) rec.bytes += chunk.byteLength\n yield chunk\n }\n}\n","import { ResourceName, invalidateAfterWrite, record, type PathSpec } from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { isNotFound, nextcloudKey } from './util.ts'\n\nexport async function truncate(\n accessor: NextcloudAccessor,\n path: PathSpec,\n length: number,\n): Promise<void> {\n const start = performance.now()\n const op = await accessor.operator()\n const key = nextcloudKey(path)\n let current: Buffer\n try {\n current = await op.read(key)\n } catch (error) {\n if (!isNotFound(error)) throw error\n current = Buffer.alloc(0)\n }\n const next = Buffer.alloc(length)\n current.copy(next, 0, 0, Math.min(current.byteLength, length))\n await op.write(key, next)\n record('truncate', path.virtual, ResourceName.NEXTCLOUD, 0, start)\n await invalidateAfterWrite(path)\n}\n","import {\n enoent,\n invalidateAfterUnlink,\n record,\n ResourceName,\n type PathSpec,\n} from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { isNotFound, nextcloudKey } from './util.ts'\n\nexport async function unlink(accessor: NextcloudAccessor, path: PathSpec): Promise<void> {\n const op = await accessor.operator()\n const startMs = performance.now()\n try {\n await op.delete(nextcloudKey(path))\n } catch (error) {\n if (isNotFound(error)) throw enoent(path)\n throw error\n }\n record('unlink', path.virtual, ResourceName.NEXTCLOUD, 0, startMs)\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 {\n ListingDeltaHook,\n mountPrefixOf,\n statFingerprint,\n stripSlash,\n type DeltaHook,\n type PathSpec,\n type WalkEntry,\n} from '@struktoai/mirage-core'\nimport type { NextcloudAccessor } from '../../accessor/nextcloud.ts'\nimport { isNotFound } from './util.ts'\n\nexport class NextcloudWalk {\n private readonly accessor: NextcloudAccessor\n\n constructor(accessor: NextcloudAccessor) {\n this.accessor = accessor\n }\n\n async *walk(root: PathSpec): AsyncGenerator<WalkEntry> {\n const prefix = mountPrefixOf(root.virtual, root.resourcePath)\n const base = stripSlash(root.resourcePath)\n const listPath = base !== '' ? `${base}/` : '/'\n const operator = await this.accessor.operator()\n let entries\n try {\n entries = await operator.list(listPath, { recursive: true })\n } catch (error) {\n if (isNotFound(error)) return\n throw error\n }\n for (const entry of entries) {\n const relative = entry.path()\n if (relative === '' || relative === listPath) continue\n const metadata = entry.metadata()\n const isDir = relative.endsWith('/') || metadata.isDirectory()\n const resourcePath = stripSlash(relative)\n const virtual = prefix !== '' ? `${prefix}/${resourcePath}` : `/${resourcePath}`\n if (isDir) {\n yield { virtual, isDir: true, fingerprint: null }\n continue\n }\n const modified = metadata.lastModified\n const size = metadata.contentLength === null ? null : Number(metadata.contentLength)\n yield {\n virtual,\n isDir: false,\n fingerprint: statFingerprint(metadata.etag, modified, size),\n size,\n modified,\n }\n }\n }\n}\n\nexport function buildDeltaHook(accessor: NextcloudAccessor): DeltaHook {\n const walk = new NextcloudWalk(accessor)\n return new ListingDeltaHook(walk.walk.bind(walk))\n}\n","import { makeGenericOps, ResourceName, type RegisteredOp } from '@struktoai/mirage-core'\nimport { NEXTCLOUD_IO } from '../../commands/builtin/nextcloud/io.ts'\n\nexport const NEXTCLOUD_OPS: readonly RegisteredOp[] = makeGenericOps(\n ResourceName.NEXTCLOUD,\n NEXTCLOUD_IO,\n)\n","export const NEXTCLOUD_PROMPT = 'You have access to files stored in Nextcloud.'\n"],"mappings":"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","names":["mountPrefixOf","ResourceName","ResourceName","enoent","invalidateAfterWrite","ResourceName","enoent","ResourceName","invalidateAfterWrite","FileType","lstripSlash","stripSlash","enoent","mountPrefixOf","mountPrefixOf","enoent","FileType","stripSlash","size","lstripSlash","FileType","stripSlash","FileType","stripSlash","rstripSlash","stripSlash","compareCodePoints","stripSlash","stripSlash","size","rstripSlash","size","rstripSlash","entries","stripSlash","rstripSlash","modifiedTimestamp","size","compareCodePoints","start","entries","invalidateAfterWrite","rstripSlash","rstripSlash","invalidateAfterWrite","enoent","record","ResourceName","record","ResourceName","enoent","enoent","mountPrefixOf","ResourceType","rstripSlash","stripSlash","compareCodePoints","mountPrefixOf","rstripSlash","stripSlash","entries","enoent","compareCodePoints","ResourceType","enoent","invalidateAfterWrite","enoent","invalidateAfterWrite","enoent","invalidateAfterUnlink","rstripSlash","rstripSlash","enoent","invalidateAfterUnlink","enoent","invalidateAfterUnlink","rstripSlash","rstripSlash","enoent","invalidateAfterUnlink","enoent","enoent","size","ResourceName","invalidateAfterWrite","record","record","ResourceName","invalidateAfterWrite","enoent","invalidateAfterUnlink","record","ResourceName","enoent","record","ResourceName","invalidateAfterUnlink","ResourceName","mountPrefixOf","stripSlash","mountPrefixOf","stripSlash","entries","size","ResourceName","ResourceName","ResourceName","mountPrefixOf"]}
|
package/dist/chunk-OAE57MNL.js
DELETED
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
// src/resource/gcs/config.ts
|
|
2
|
-
import {
|
|
3
|
-
normalizeFields,
|
|
4
|
-
redactConfigWithSchema,
|
|
5
|
-
secretStr,
|
|
6
|
-
z
|
|
7
|
-
} from "@struktoai/mirage-core";
|
|
8
|
-
var GCS_ENDPOINT = "https://storage.googleapis.com";
|
|
9
|
-
var GCSConfigSchema = z.object({
|
|
10
|
-
bucket: z.string(),
|
|
11
|
-
accessKeyId: secretStr().optional(),
|
|
12
|
-
secretAccessKey: secretStr().optional(),
|
|
13
|
-
sessionToken: secretStr().optional(),
|
|
14
|
-
profile: z.string().optional(),
|
|
15
|
-
endpoint: z.string(),
|
|
16
|
-
region: z.string(),
|
|
17
|
-
timeoutMs: z.number().optional(),
|
|
18
|
-
forcePathStyle: z.boolean().optional(),
|
|
19
|
-
keyPrefix: z.string().optional(),
|
|
20
|
-
proxy: secretStr().optional()
|
|
21
|
-
});
|
|
22
|
-
function gcsToS3Config(config) {
|
|
23
|
-
return {
|
|
24
|
-
bucket: config.bucket,
|
|
25
|
-
region: config.region ?? "auto",
|
|
26
|
-
endpoint: config.endpoint ?? GCS_ENDPOINT,
|
|
27
|
-
...config.accessKeyId !== void 0 ? { accessKeyId: config.accessKeyId } : {},
|
|
28
|
-
...config.secretAccessKey !== void 0 ? { secretAccessKey: config.secretAccessKey } : {},
|
|
29
|
-
...config.sessionToken !== void 0 ? { sessionToken: config.sessionToken } : {},
|
|
30
|
-
...config.profile !== void 0 ? { profile: config.profile } : {},
|
|
31
|
-
...config.timeoutMs !== void 0 ? { timeoutMs: config.timeoutMs } : {},
|
|
32
|
-
...config.forcePathStyle !== void 0 ? { forcePathStyle: config.forcePathStyle } : {},
|
|
33
|
-
...config.keyPrefix !== void 0 ? { keyPrefix: config.keyPrefix } : {},
|
|
34
|
-
...config.proxy !== void 0 ? { proxy: config.proxy } : {}
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
function redactGcsConfig(config) {
|
|
38
|
-
return redactConfigWithSchema(GCSConfigSchema, {
|
|
39
|
-
...config,
|
|
40
|
-
endpoint: config.endpoint ?? GCS_ENDPOINT,
|
|
41
|
-
region: config.region ?? "auto"
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
function normalizeGcsConfig(input) {
|
|
45
|
-
return normalizeFields(input, {
|
|
46
|
-
rename: {
|
|
47
|
-
access_key_id: "accessKeyId",
|
|
48
|
-
secret_access_key: "secretAccessKey",
|
|
49
|
-
session_token: "sessionToken",
|
|
50
|
-
aws_profile: "profile",
|
|
51
|
-
endpoint_url: "endpoint",
|
|
52
|
-
path_style: "forcePathStyle",
|
|
53
|
-
key_prefix: "keyPrefix",
|
|
54
|
-
timeout: "timeoutMs"
|
|
55
|
-
},
|
|
56
|
-
transform: {
|
|
57
|
-
timeout: (v) => typeof v === "number" ? v * 1e3 : v
|
|
58
|
-
}
|
|
59
|
-
});
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
export {
|
|
63
|
-
GCS_ENDPOINT,
|
|
64
|
-
gcsToS3Config,
|
|
65
|
-
redactGcsConfig,
|
|
66
|
-
normalizeGcsConfig
|
|
67
|
-
};
|
|
68
|
-
//# sourceMappingURL=chunk-OAE57MNL.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/resource/gcs/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 const GCS_ENDPOINT = 'https://storage.googleapis.com'\n\nexport interface GCSConfig {\n bucket: string\n accessKeyId?: string\n secretAccessKey?: string\n sessionToken?: string\n profile?: string\n endpoint?: string\n region?: string\n timeoutMs?: number\n forcePathStyle?: boolean\n keyPrefix?: string\n proxy?: string\n}\n\nconst GCSConfigSchema = z.object({\n bucket: z.string(),\n accessKeyId: secretStr().optional(),\n secretAccessKey: secretStr().optional(),\n sessionToken: secretStr().optional(),\n profile: z.string().optional(),\n endpoint: z.string(),\n region: z.string(),\n timeoutMs: z.number().optional(),\n forcePathStyle: z.boolean().optional(),\n keyPrefix: z.string().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 GCSConfigRedacted = RedactedConfig<\n ConfigOf<typeof GCSConfigSchema>,\n 'accessKeyId' | 'secretAccessKey' | 'sessionToken' | 'proxy'\n>\n\nexport function gcsToS3Config(config: GCSConfig): S3Config {\n return {\n bucket: config.bucket,\n region: config.region ?? 'auto',\n endpoint: config.endpoint ?? GCS_ENDPOINT,\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.timeoutMs !== undefined ? { timeoutMs: config.timeoutMs } : {}),\n ...(config.forcePathStyle !== undefined ? { forcePathStyle: config.forcePathStyle } : {}),\n ...(config.keyPrefix !== undefined ? { keyPrefix: config.keyPrefix } : {}),\n ...(config.proxy !== undefined ? { proxy: config.proxy } : {}),\n }\n}\n\nexport function redactGcsConfig(config: GCSConfig): GCSConfigRedacted {\n return redactConfigWithSchema(GCSConfigSchema, {\n ...config,\n endpoint: config.endpoint ?? GCS_ENDPOINT,\n region: config.region ?? 'auto',\n }) as unknown as GCSConfigRedacted\n}\n\nexport function normalizeGcsConfig(input: Record<string, unknown>): GCSConfig {\n return normalizeFields(input, {\n rename: {\n access_key_id: 'accessKeyId',\n secret_access_key: 'secretAccessKey',\n session_token: 'sessionToken',\n aws_profile: 'profile',\n endpoint_url: 'endpoint',\n 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 GCSConfig\n}\n"],"mappings":";AAcA;AAAA,EACE;AAAA,EACA;AAAA,EAGA;AAAA,EACA;AAAA,OACK;AAGA,IAAM,eAAe;AAgB5B,IAAM,kBAAkB,EAAE,OAAO;AAAA,EAC/B,QAAQ,EAAE,OAAO;AAAA,EACjB,aAAa,UAAU,EAAE,SAAS;AAAA,EAClC,iBAAiB,UAAU,EAAE,SAAS;AAAA,EACtC,cAAc,UAAU,EAAE,SAAS;AAAA,EACnC,SAAS,EAAE,OAAO,EAAE,SAAS;AAAA,EAC7B,UAAU,EAAE,OAAO;AAAA,EACnB,QAAQ,EAAE,OAAO;AAAA,EACjB,WAAW,EAAE,OAAO,EAAE,SAAS;AAAA,EAC/B,gBAAgB,EAAE,QAAQ,EAAE,SAAS;AAAA,EACrC,WAAW,EAAE,OAAO,EAAE,SAAS;AAAA,EAC/B,OAAO,UAAU,EAAE,SAAS;AAC9B,CAAC;AASM,SAAS,cAAc,QAA6B;AACzD,SAAO;AAAA,IACL,QAAQ,OAAO;AAAA,IACf,QAAQ,OAAO,UAAU;AAAA,IACzB,UAAU,OAAO,YAAY;AAAA,IAC7B,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,cAAc,SAAY,EAAE,WAAW,OAAO,UAAU,IAAI,CAAC;AAAA,IACxE,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,UAAU,SAAY,EAAE,OAAO,OAAO,MAAM,IAAI,CAAC;AAAA,EAC9D;AACF;AAEO,SAAS,gBAAgB,QAAsC;AACpE,SAAO,uBAAuB,iBAAiB;AAAA,IAC7C,GAAG;AAAA,IACH,UAAU,OAAO,YAAY;AAAA,IAC7B,QAAQ,OAAO,UAAU;AAAA,EAC3B,CAAC;AACH;AAEO,SAAS,mBAAmB,OAA2C;AAC5E,SAAO,gBAAgB,OAAO;AAAA,IAC5B,QAAQ;AAAA,MACN,eAAe;AAAA,MACf,mBAAmB;AAAA,MACnB,eAAe;AAAA,MACf,aAAa;AAAA,MACb,cAAc;AAAA,MACd,YAAY;AAAA,MACZ,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-OHKGIQB4.js
DELETED
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
redactGitHubCIConfig
|
|
3
|
-
} from "./chunk-ND4IWJ4V.js";
|
|
4
|
-
|
|
5
|
-
// src/resource/github_ci/github_ci.ts
|
|
6
|
-
import {
|
|
7
|
-
BaseResource,
|
|
8
|
-
GITHUB_CI_COMMANDS,
|
|
9
|
-
GITHUB_CI_PROMPT,
|
|
10
|
-
GITHUB_CI_OPS,
|
|
11
|
-
GitHubCIAccessor,
|
|
12
|
-
HttpCITransport,
|
|
13
|
-
PathSpec,
|
|
14
|
-
ResourceName,
|
|
15
|
-
githubCiRead,
|
|
16
|
-
githubCiReaddir,
|
|
17
|
-
makeResolveGlob,
|
|
18
|
-
githubCiStat,
|
|
19
|
-
mountKey,
|
|
20
|
-
mountPrefixOf
|
|
21
|
-
} from "@struktoai/mirage-core";
|
|
22
|
-
var githubCiResolveGlob = makeResolveGlob(githubCiReaddir);
|
|
23
|
-
var GitHubCIResource = class extends BaseResource {
|
|
24
|
-
kind = ResourceName.GITHUB_CI;
|
|
25
|
-
cachesReads = true;
|
|
26
|
-
indexTtl = 86400;
|
|
27
|
-
prompt = GITHUB_CI_PROMPT;
|
|
28
|
-
config;
|
|
29
|
-
accessor;
|
|
30
|
-
constructor(config) {
|
|
31
|
-
super();
|
|
32
|
-
this.config = config;
|
|
33
|
-
const transportOpts = { token: config.token };
|
|
34
|
-
if (config.baseUrl !== void 0) transportOpts.baseUrl = config.baseUrl;
|
|
35
|
-
this.accessor = new GitHubCIAccessor({
|
|
36
|
-
transport: new HttpCITransport(transportOpts),
|
|
37
|
-
owner: config.owner,
|
|
38
|
-
repo: config.repo,
|
|
39
|
-
days: config.days ?? 30,
|
|
40
|
-
maxRuns: config.maxRuns ?? 300
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
open() {
|
|
44
|
-
return Promise.resolve();
|
|
45
|
-
}
|
|
46
|
-
commands() {
|
|
47
|
-
return GITHUB_CI_COMMANDS;
|
|
48
|
-
}
|
|
49
|
-
ops() {
|
|
50
|
-
return GITHUB_CI_OPS;
|
|
51
|
-
}
|
|
52
|
-
readFile(p) {
|
|
53
|
-
return githubCiRead(this.accessor, p, this.index);
|
|
54
|
-
}
|
|
55
|
-
readdir(p) {
|
|
56
|
-
return githubCiReaddir(this.accessor, p, this.index);
|
|
57
|
-
}
|
|
58
|
-
stat(p) {
|
|
59
|
-
return githubCiStat(this.accessor, p, this.index);
|
|
60
|
-
}
|
|
61
|
-
glob(paths, prefix = "") {
|
|
62
|
-
const effective = prefix !== "" ? paths.map(
|
|
63
|
-
(p) => mountPrefixOf(p.virtual, p.resourcePath) !== "" ? p : new PathSpec({
|
|
64
|
-
virtual: p.virtual,
|
|
65
|
-
directory: p.directory,
|
|
66
|
-
...p.pattern !== null ? { pattern: p.pattern } : {},
|
|
67
|
-
resolved: p.resolved,
|
|
68
|
-
resourcePath: mountKey(p.virtual, prefix)
|
|
69
|
-
})
|
|
70
|
-
) : paths;
|
|
71
|
-
return githubCiResolveGlob(this.accessor, effective, this.index);
|
|
72
|
-
}
|
|
73
|
-
getState() {
|
|
74
|
-
return Promise.resolve({
|
|
75
|
-
type: this.kind,
|
|
76
|
-
config: redactGitHubCIConfig(this.config)
|
|
77
|
-
});
|
|
78
|
-
}
|
|
79
|
-
loadState(_state) {
|
|
80
|
-
return Promise.resolve();
|
|
81
|
-
}
|
|
82
|
-
};
|
|
83
|
-
|
|
84
|
-
export {
|
|
85
|
-
GitHubCIResource
|
|
86
|
-
};
|
|
87
|
-
//# sourceMappingURL=chunk-OHKGIQB4.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/resource/github_ci/github_ci.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_CI_COMMANDS,\n GITHUB_CI_PROMPT,\n GITHUB_CI_OPS,\n GitHubCIAccessor,\n HttpCITransport,\n PathSpec,\n ResourceName,\n githubCiRead,\n githubCiReaddir,\n makeResolveGlob,\n githubCiStat,\n mountKey,\n mountPrefixOf,\n type FileStat,\n type RegisteredCommand,\n type RegisteredOp,\n type Resource,\n} from '@struktoai/mirage-core'\nimport { redactGitHubCIConfig, type GitHubCIConfig, type GitHubCIConfigRedacted } from './config.ts'\n\nconst githubCiResolveGlob = makeResolveGlob(githubCiReaddir)\n\nexport interface GitHubCIResourceState {\n type: string\n config: GitHubCIConfigRedacted\n}\n\nexport class GitHubCIResource extends BaseResource implements Resource {\n readonly kind: string = ResourceName.GITHUB_CI\n readonly cachesReads: boolean = true\n override readonly indexTtl: number = 86_400\n readonly prompt: string = GITHUB_CI_PROMPT\n readonly config: GitHubCIConfig\n readonly accessor: GitHubCIAccessor\n\n constructor(config: GitHubCIConfig) {\n super()\n this.config = config\n const transportOpts: { token: string; baseUrl?: string } = { token: config.token }\n if (config.baseUrl !== undefined) transportOpts.baseUrl = config.baseUrl\n this.accessor = new GitHubCIAccessor({\n transport: new HttpCITransport(transportOpts),\n owner: config.owner,\n repo: config.repo,\n days: config.days ?? 30,\n maxRuns: config.maxRuns ?? 300,\n })\n }\n\n open(): Promise<void> {\n return Promise.resolve()\n }\n\n commands(): readonly RegisteredCommand[] {\n return GITHUB_CI_COMMANDS\n }\n\n ops(): readonly RegisteredOp[] {\n return GITHUB_CI_OPS\n }\n\n readFile(p: PathSpec): Promise<Uint8Array> {\n return githubCiRead(this.accessor, p, this.index)\n }\n\n readdir(p: PathSpec): Promise<string[]> {\n return githubCiReaddir(this.accessor, p, this.index)\n }\n\n stat(p: PathSpec): Promise<FileStat> {\n return githubCiStat(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 githubCiResolveGlob(this.accessor, effective, this.index)\n }\n\n getState(): Promise<GitHubCIResourceState> {\n return Promise.resolve({\n type: this.kind,\n config: redactGitHubCIConfig(this.config),\n })\n }\n\n loadState(_state: GitHubCIResourceState): Promise<void> {\n return Promise.resolve()\n }\n}\n"],"mappings":";;;;;AAcA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAKK;AAGP,IAAM,sBAAsB,gBAAgB,eAAe;AAOpD,IAAM,mBAAN,cAA+B,aAAiC;AAAA,EAC5D,OAAe,aAAa;AAAA,EAC5B,cAAuB;AAAA,EACd,WAAmB;AAAA,EAC5B,SAAiB;AAAA,EACjB;AAAA,EACA;AAAA,EAET,YAAY,QAAwB;AAClC,UAAM;AACN,SAAK,SAAS;AACd,UAAM,gBAAqD,EAAE,OAAO,OAAO,MAAM;AACjF,QAAI,OAAO,YAAY,OAAW,eAAc,UAAU,OAAO;AACjE,SAAK,WAAW,IAAI,iBAAiB;AAAA,MACnC,WAAW,IAAI,gBAAgB,aAAa;AAAA,MAC5C,OAAO,OAAO;AAAA,MACd,MAAM,OAAO;AAAA,MACb,MAAM,OAAO,QAAQ;AAAA,MACrB,SAAS,OAAO,WAAW;AAAA,IAC7B,CAAC;AAAA,EACH;AAAA,EAEA,OAAsB;AACpB,WAAO,QAAQ,QAAQ;AAAA,EACzB;AAAA,EAEA,WAAyC;AACvC,WAAO;AAAA,EACT;AAAA,EAEA,MAA+B;AAC7B,WAAO;AAAA,EACT;AAAA,EAEA,SAAS,GAAkC;AACzC,WAAO,aAAa,KAAK,UAAU,GAAG,KAAK,KAAK;AAAA,EAClD;AAAA,EAEA,QAAQ,GAAgC;AACtC,WAAO,gBAAgB,KAAK,UAAU,GAAG,KAAK,KAAK;AAAA,EACrD;AAAA,EAEA,KAAK,GAAgC;AACnC,WAAO,aAAa,KAAK,UAAU,GAAG,KAAK,KAAK;AAAA,EAClD;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,oBAAoB,KAAK,UAAU,WAAW,KAAK,KAAK;AAAA,EACjE;AAAA,EAEA,WAA2C;AACzC,WAAO,QAAQ,QAAQ;AAAA,MACrB,MAAM,KAAK;AAAA,MACX,QAAQ,qBAAqB,KAAK,MAAM;AAAA,IAC1C,CAAC;AAAA,EACH;AAAA,EAEA,UAAU,QAA8C;AACtD,WAAO,QAAQ,QAAQ;AAAA,EACzB;AACF;","names":[]}
|
package/dist/chunk-OQKNDS66.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/optional_peer.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 { loadOptionalPeer } from '@struktoai/mirage-core'\n"],"mappings":";AAcA,SAAS,wBAAwB;","names":[]}
|
package/dist/chunk-OXEQSPND.js
DELETED
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
HfModelsAccessor,
|
|
3
|
-
HfResource
|
|
4
|
-
} from "./chunk-DDAFNROK.js";
|
|
5
|
-
import {
|
|
6
|
-
assertHfRepoId,
|
|
7
|
-
redactHfRepoConfig
|
|
8
|
-
} from "./chunk-QAOVABCR.js";
|
|
9
|
-
|
|
10
|
-
// src/resource/hf_models/hf_models.ts
|
|
11
|
-
import { normalizeKeyPrefix, ResourceName } from "@struktoai/mirage-core";
|
|
12
|
-
|
|
13
|
-
// src/resource/hf_models/prompt.ts
|
|
14
|
-
var HF_MODELS_PROMPT = `{prefix}
|
|
15
|
-
Remote Hugging Face Model. Maps model repo files (weights, configs, tokenizer) to virtual paths.
|
|
16
|
-
IMPORTANT: This is a remote mount. Prefer config/tokenizer inspection over downloading full weights. Safetensors/bin files stream lazily via byte-range reads.
|
|
17
|
-
Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.`;
|
|
18
|
-
|
|
19
|
-
// src/resource/hf_models/hf_models.ts
|
|
20
|
-
var HfModelsResource = class extends HfResource {
|
|
21
|
-
kind = ResourceName.HF_MODELS;
|
|
22
|
-
prompt = HF_MODELS_PROMPT;
|
|
23
|
-
config;
|
|
24
|
-
accessor;
|
|
25
|
-
constructor(config) {
|
|
26
|
-
super();
|
|
27
|
-
assertHfRepoId(config.repoId, "repo_id");
|
|
28
|
-
const normalized = normalizeKeyPrefix(config.keyPrefix);
|
|
29
|
-
const cfg = { ...config };
|
|
30
|
-
if (normalized !== void 0) {
|
|
31
|
-
cfg.keyPrefix = normalized;
|
|
32
|
-
} else {
|
|
33
|
-
delete cfg.keyPrefix;
|
|
34
|
-
}
|
|
35
|
-
this.config = cfg;
|
|
36
|
-
this.accessor = new HfModelsAccessor(this.config);
|
|
37
|
-
}
|
|
38
|
-
getState() {
|
|
39
|
-
return Promise.resolve({
|
|
40
|
-
type: this.kind,
|
|
41
|
-
config: redactHfRepoConfig(this.config)
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
};
|
|
45
|
-
|
|
46
|
-
export {
|
|
47
|
-
HF_MODELS_PROMPT,
|
|
48
|
-
HfModelsResource
|
|
49
|
-
};
|
|
50
|
-
//# sourceMappingURL=chunk-OXEQSPND.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/resource/hf_models/hf_models.ts","../src/resource/hf_models/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 { normalizeKeyPrefix, ResourceName } from '@struktoai/mirage-core'\nimport { HfModelsAccessor } from '../../accessor/hf.ts'\nimport { HfResource } from '../hf_buckets/base.ts'\nimport {\n assertHfRepoId,\n type HfRepoConfig,\n type HfRepoConfigRedacted,\n redactHfRepoConfig,\n} from '../hf_buckets/config.ts'\nimport { HF_MODELS_PROMPT } from './prompt.ts'\n\nexport interface HfModelsResourceState {\n type: string\n config: HfRepoConfigRedacted\n}\n\nexport class HfModelsResource extends HfResource {\n readonly kind: string = ResourceName.HF_MODELS\n readonly prompt: string = HF_MODELS_PROMPT\n readonly config: HfRepoConfig\n readonly accessor: HfModelsAccessor\n\n constructor(config: HfRepoConfig) {\n super()\n assertHfRepoId(config.repoId, 'repo_id')\n const normalized = normalizeKeyPrefix(config.keyPrefix)\n const cfg: HfRepoConfig = { ...config }\n if (normalized !== undefined) {\n cfg.keyPrefix = normalized\n } else {\n delete cfg.keyPrefix\n }\n this.config = cfg\n this.accessor = new HfModelsAccessor(this.config)\n }\n\n getState(): Promise<HfModelsResourceState> {\n return Promise.resolve({\n type: this.kind,\n config: redactHfRepoConfig(this.config),\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\nexport const HF_MODELS_PROMPT = `{prefix}\n Remote Hugging Face Model. Maps model repo files (weights, configs, tokenizer) to virtual paths.\n IMPORTANT: This is a remote mount. Prefer config/tokenizer inspection over downloading full weights. Safetensors/bin files stream lazily via byte-range reads.\n Supports: ls, cat, head, tail, grep, rg, wc, find, tree, jq, stat.`\n"],"mappings":";;;;;;;;;;AAcA,SAAS,oBAAoB,oBAAoB;;;ACA1C,IAAM,mBAAmB;AAAA;AAAA;AAAA;;;ADgBzB,IAAM,mBAAN,cAA+B,WAAW;AAAA,EACtC,OAAe,aAAa;AAAA,EAC5B,SAAiB;AAAA,EACjB;AAAA,EACA;AAAA,EAET,YAAY,QAAsB;AAChC,UAAM;AACN,mBAAe,OAAO,QAAQ,SAAS;AACvC,UAAM,aAAa,mBAAmB,OAAO,SAAS;AACtD,UAAM,MAAoB,EAAE,GAAG,OAAO;AACtC,QAAI,eAAe,QAAW;AAC5B,UAAI,YAAY;AAAA,IAClB,OAAO;AACL,aAAO,IAAI;AAAA,IACb;AACA,SAAK,SAAS;AACd,SAAK,WAAW,IAAI,iBAAiB,KAAK,MAAM;AAAA,EAClD;AAAA,EAEA,WAA2C;AACzC,WAAO,QAAQ,QAAQ;AAAA,MACrB,MAAM,KAAK;AAAA,MACX,QAAQ,mBAAmB,KAAK,MAAM;AAAA,IACxC,CAAC;AAAA,EACH;AACF;","names":[]}
|
package/dist/chunk-PKNE5J2B.js
DELETED
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
redactGoogleConfig
|
|
3
|
-
} from "./chunk-4IF4TGAI.js";
|
|
4
|
-
|
|
5
|
-
// src/resource/gslides/gslides.ts
|
|
6
|
-
import {
|
|
7
|
-
BaseResource,
|
|
8
|
-
GSLIDES_COMMANDS,
|
|
9
|
-
GSLIDES_PROMPT,
|
|
10
|
-
GSLIDES_OPS,
|
|
11
|
-
GSLIDES_WRITE_PROMPT,
|
|
12
|
-
GSlidesAccessor,
|
|
13
|
-
PathSpec,
|
|
14
|
-
ResourceName,
|
|
15
|
-
TokenManager,
|
|
16
|
-
gslidesRead,
|
|
17
|
-
gslidesReaddir,
|
|
18
|
-
makeResolveGlob,
|
|
19
|
-
gslidesStat,
|
|
20
|
-
mountKey,
|
|
21
|
-
mountPrefixOf
|
|
22
|
-
} from "@struktoai/mirage-core";
|
|
23
|
-
var gslidesResolveGlob = makeResolveGlob(gslidesReaddir);
|
|
24
|
-
var GSlidesResource = class extends BaseResource {
|
|
25
|
-
kind = ResourceName.GSLIDES;
|
|
26
|
-
cachesReads = true;
|
|
27
|
-
indexTtl = 86400;
|
|
28
|
-
prompt = GSLIDES_PROMPT;
|
|
29
|
-
writePrompt = GSLIDES_WRITE_PROMPT;
|
|
30
|
-
config;
|
|
31
|
-
accessor;
|
|
32
|
-
constructor(config) {
|
|
33
|
-
super();
|
|
34
|
-
this.config = config;
|
|
35
|
-
const tm = new TokenManager(config);
|
|
36
|
-
this.accessor = new GSlidesAccessor({ tokenManager: tm });
|
|
37
|
-
}
|
|
38
|
-
open() {
|
|
39
|
-
return Promise.resolve();
|
|
40
|
-
}
|
|
41
|
-
commands() {
|
|
42
|
-
return GSLIDES_COMMANDS;
|
|
43
|
-
}
|
|
44
|
-
ops() {
|
|
45
|
-
return GSLIDES_OPS;
|
|
46
|
-
}
|
|
47
|
-
readFile(p) {
|
|
48
|
-
return gslidesRead(this.accessor, p, this.index);
|
|
49
|
-
}
|
|
50
|
-
readdir(p) {
|
|
51
|
-
return gslidesReaddir(this.accessor, p, this.index);
|
|
52
|
-
}
|
|
53
|
-
stat(p) {
|
|
54
|
-
return gslidesStat(this.accessor, p, this.index);
|
|
55
|
-
}
|
|
56
|
-
glob(paths, prefix = "") {
|
|
57
|
-
const effective = prefix !== "" ? paths.map(
|
|
58
|
-
(p) => mountPrefixOf(p.virtual, p.resourcePath) !== "" ? p : new PathSpec({
|
|
59
|
-
virtual: p.virtual,
|
|
60
|
-
directory: p.directory,
|
|
61
|
-
...p.pattern !== null ? { pattern: p.pattern } : {},
|
|
62
|
-
resolved: p.resolved,
|
|
63
|
-
resourcePath: mountKey(p.virtual, prefix)
|
|
64
|
-
})
|
|
65
|
-
) : paths;
|
|
66
|
-
return gslidesResolveGlob(this.accessor, effective, this.index);
|
|
67
|
-
}
|
|
68
|
-
getState() {
|
|
69
|
-
return Promise.resolve({
|
|
70
|
-
type: this.kind,
|
|
71
|
-
config: redactGoogleConfig(this.config)
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
loadState(_state) {
|
|
75
|
-
return Promise.resolve();
|
|
76
|
-
}
|
|
77
|
-
};
|
|
78
|
-
|
|
79
|
-
export {
|
|
80
|
-
GSlidesResource
|
|
81
|
-
};
|
|
82
|
-
//# sourceMappingURL=chunk-PKNE5J2B.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/resource/gslides/gslides.ts"],"sourcesContent":["// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n// ========= Copyright 2026 @ Strukto.AI All Rights Reserved. =========\n\nimport {\n BaseResource,\n GSLIDES_COMMANDS,\n GSLIDES_PROMPT,\n GSLIDES_OPS,\n GSLIDES_WRITE_PROMPT,\n GSlidesAccessor,\n PathSpec,\n ResourceName,\n TokenManager,\n gslidesRead,\n gslidesReaddir,\n makeResolveGlob,\n gslidesStat,\n mountKey,\n mountPrefixOf,\n type FileStat,\n type RegisteredCommand,\n type RegisteredOp,\n type Resource,\n} from '@struktoai/mirage-core'\nimport { redactGSlidesConfig, type GSlidesConfig, type GSlidesConfigRedacted } from './config.ts'\n\nconst gslidesResolveGlob = makeResolveGlob(gslidesReaddir)\n\nexport interface GSlidesResourceState {\n type: string\n config: GSlidesConfigRedacted\n}\n\nexport class GSlidesResource extends BaseResource implements Resource {\n readonly kind: string = ResourceName.GSLIDES\n readonly cachesReads: boolean = true\n override readonly indexTtl: number = 86_400\n readonly prompt: string = GSLIDES_PROMPT\n readonly writePrompt: string = GSLIDES_WRITE_PROMPT\n readonly config: GSlidesConfig\n readonly accessor: GSlidesAccessor\n\n constructor(config: GSlidesConfig) {\n super()\n this.config = config\n const tm = new TokenManager(config)\n this.accessor = new GSlidesAccessor({ tokenManager: tm })\n }\n\n open(): Promise<void> {\n return Promise.resolve()\n }\n\n commands(): readonly RegisteredCommand[] {\n return GSLIDES_COMMANDS\n }\n\n ops(): readonly RegisteredOp[] {\n return GSLIDES_OPS\n }\n\n readFile(p: PathSpec): Promise<Uint8Array> {\n return gslidesRead(this.accessor, p, this.index)\n }\n\n readdir(p: PathSpec): Promise<string[]> {\n return gslidesReaddir(this.accessor, p, this.index)\n }\n\n stat(p: PathSpec): Promise<FileStat> {\n return gslidesStat(this.accessor, p, this.index)\n }\n\n glob(paths: readonly PathSpec[], prefix = ''): Promise<PathSpec[]> {\n const effective =\n prefix !== ''\n ? paths.map((p) =>\n mountPrefixOf(p.virtual, p.resourcePath) !== ''\n ? p\n : new PathSpec({\n virtual: p.virtual,\n directory: p.directory,\n ...(p.pattern !== null ? { pattern: p.pattern } : {}),\n resolved: p.resolved,\n resourcePath: mountKey(p.virtual, prefix),\n }),\n )\n : paths\n return gslidesResolveGlob(this.accessor, effective, this.index)\n }\n\n getState(): Promise<GSlidesResourceState> {\n return Promise.resolve({\n type: this.kind,\n config: redactGSlidesConfig(this.config),\n })\n }\n\n loadState(_state: GSlidesResourceState): Promise<void> {\n return Promise.resolve()\n }\n}\n"],"mappings":";;;;;AAcA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAKK;AAGP,IAAM,qBAAqB,gBAAgB,cAAc;AAOlD,IAAM,kBAAN,cAA8B,aAAiC;AAAA,EAC3D,OAAe,aAAa;AAAA,EAC5B,cAAuB;AAAA,EACd,WAAmB;AAAA,EAC5B,SAAiB;AAAA,EACjB,cAAsB;AAAA,EACtB;AAAA,EACA;AAAA,EAET,YAAY,QAAuB;AACjC,UAAM;AACN,SAAK,SAAS;AACd,UAAM,KAAK,IAAI,aAAa,MAAM;AAClC,SAAK,WAAW,IAAI,gBAAgB,EAAE,cAAc,GAAG,CAAC;AAAA,EAC1D;AAAA,EAEA,OAAsB;AACpB,WAAO,QAAQ,QAAQ;AAAA,EACzB;AAAA,EAEA,WAAyC;AACvC,WAAO;AAAA,EACT;AAAA,EAEA,MAA+B;AAC7B,WAAO;AAAA,EACT;AAAA,EAEA,SAAS,GAAkC;AACzC,WAAO,YAAY,KAAK,UAAU,GAAG,KAAK,KAAK;AAAA,EACjD;AAAA,EAEA,QAAQ,GAAgC;AACtC,WAAO,eAAe,KAAK,UAAU,GAAG,KAAK,KAAK;AAAA,EACpD;AAAA,EAEA,KAAK,GAAgC;AACnC,WAAO,YAAY,KAAK,UAAU,GAAG,KAAK,KAAK;AAAA,EACjD;AAAA,EAEA,KAAK,OAA4B,SAAS,IAAyB;AACjE,UAAM,YACJ,WAAW,KACP,MAAM;AAAA,MAAI,CAAC,MACT,cAAc,EAAE,SAAS,EAAE,YAAY,MAAM,KACzC,IACA,IAAI,SAAS;AAAA,QACX,SAAS,EAAE;AAAA,QACX,WAAW,EAAE;AAAA,QACb,GAAI,EAAE,YAAY,OAAO,EAAE,SAAS,EAAE,QAAQ,IAAI,CAAC;AAAA,QACnD,UAAU,EAAE;AAAA,QACZ,cAAc,SAAS,EAAE,SAAS,MAAM;AAAA,MAC1C,CAAC;AAAA,IACP,IACA;AACN,WAAO,mBAAmB,KAAK,UAAU,WAAW,KAAK,KAAK;AAAA,EAChE;AAAA,EAEA,WAA0C;AACxC,WAAO,QAAQ,QAAQ;AAAA,MACrB,MAAM,KAAK;AAAA,MACX,QAAQ,mBAAoB,KAAK,MAAM;AAAA,IACzC,CAAC;AAAA,EACH;AAAA,EAEA,UAAU,QAA6C;AACrD,WAAO,QAAQ,QAAQ;AAAA,EACzB;AACF;","names":[]}
|
package/dist/chunk-PSXXEGYQ.js
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
makeFixedAlias
|
|
3
|
-
} from "./chunk-7ZP6TPHX.js";
|
|
4
|
-
|
|
5
|
-
// src/resource/ceph/config.ts
|
|
6
|
-
var alias = makeFixedAlias();
|
|
7
|
-
var cephToS3Config = alias.toS3Config;
|
|
8
|
-
var redactCephConfig = alias.redact;
|
|
9
|
-
var normalizeCephConfig = alias.normalize;
|
|
10
|
-
|
|
11
|
-
export {
|
|
12
|
-
cephToS3Config,
|
|
13
|
-
redactCephConfig,
|
|
14
|
-
normalizeCephConfig
|
|
15
|
-
};
|
|
16
|
-
//# sourceMappingURL=chunk-PSXXEGYQ.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/resource/ceph/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 { makeFixedAlias, type S3AliasConfig, type S3AliasConfigRedacted } from '../s3_alias.ts'\n\nexport interface CephConfig extends S3AliasConfig {\n endpoint: string\n}\n\nexport type CephConfigRedacted = S3AliasConfigRedacted\n\nconst alias = makeFixedAlias<CephConfig, CephConfigRedacted>()\n\nexport const cephToS3Config = alias.toS3Config\nexport const redactCephConfig = alias.redact\nexport const normalizeCephConfig = alias.normalize\n"],"mappings":";;;;;AAsBA,IAAM,QAAQ,eAA+C;AAEtD,IAAM,iBAAiB,MAAM;AAC7B,IAAM,mBAAmB,MAAM;AAC/B,IAAM,sBAAsB,MAAM;","names":[]}
|