@effect-kit/storage 0.0.0-stage → 0.0.0
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/LICENSE +204 -0
- package/README.md +369 -2
- package/dist/_virtual/_rolldown/runtime.js +17 -0
- package/dist/azure/account-admin.d.ts +116 -0
- package/dist/azure/account-admin.js +90 -0
- package/dist/azure/account-admin.js.map +1 -0
- package/dist/azure/admin.d.ts +68 -0
- package/dist/azure/admin.js +85 -0
- package/dist/azure/admin.js.map +1 -0
- package/dist/azure/archive.d.ts +95 -0
- package/dist/azure/archive.js +52 -0
- package/dist/azure/archive.js.map +1 -0
- package/dist/azure/events.d.ts +40 -0
- package/dist/azure/events.js +62 -0
- package/dist/azure/events.js.map +1 -0
- package/dist/azure/governance.d.ts +139 -0
- package/dist/azure/governance.js +59 -0
- package/dist/azure/governance.js.map +1 -0
- package/dist/azure/identity.d.ts +4 -0
- package/dist/azure/identity.js +8 -0
- package/dist/azure/identity.js.map +1 -0
- package/dist/azure/lifecycle.d.ts +21 -0
- package/dist/azure/lifecycle.js +193 -0
- package/dist/azure/lifecycle.js.map +1 -0
- package/dist/azure/signing.d.ts +17 -0
- package/dist/azure/signing.js +71 -0
- package/dist/azure/signing.js.map +1 -0
- package/dist/azure/uploads.d.ts +11 -0
- package/dist/azure/uploads.js +83 -0
- package/dist/azure/uploads.js.map +1 -0
- package/dist/azure.d.ts +427 -0
- package/dist/azure.js +77 -0
- package/dist/azure.js.map +1 -0
- package/dist/b2/admin.d.ts +149 -0
- package/dist/b2/admin.js +157 -0
- package/dist/b2/admin.js.map +1 -0
- package/dist/b2.d.ts +15 -0
- package/dist/b2.js +15 -0
- package/dist/b2.js.map +1 -0
- package/dist/browser.d.ts +7 -0
- package/dist/browser.js +11 -0
- package/dist/browser.js.map +1 -0
- package/dist/bun.d.ts +14 -0
- package/dist/bun.js +17 -0
- package/dist/bun.js.map +1 -0
- package/dist/cache.d.ts +18 -0
- package/dist/cache.js +116 -0
- package/dist/cache.js.map +1 -0
- package/dist/client/atoms/controller.d.ts +10 -0
- package/dist/client/atoms/controller.js +267 -0
- package/dist/client/atoms/controller.js.map +1 -0
- package/dist/client/atoms/state.d.ts +17 -0
- package/dist/client/atoms/state.js +11 -0
- package/dist/client/atoms/state.js.map +1 -0
- package/dist/client/atoms.d.ts +59 -0
- package/dist/client/atoms.js +39 -0
- package/dist/client/atoms.js.map +1 -0
- package/dist/client/fingerprint.js +28 -0
- package/dist/client/fingerprint.js.map +1 -0
- package/dist/client/store.d.ts +31 -0
- package/dist/client/store.js +56 -0
- package/dist/client/store.js.map +1 -0
- package/dist/client/transport.d.ts +11 -0
- package/dist/client/transport.js +78 -0
- package/dist/client/transport.js.map +1 -0
- package/dist/client.d.ts +259 -0
- package/dist/client.js +350 -0
- package/dist/client.js.map +1 -0
- package/dist/composition/layer.js +22 -0
- package/dist/composition/layer.js.map +1 -0
- package/dist/composition/representation/staging.js +46 -0
- package/dist/composition/representation/staging.js.map +1 -0
- package/dist/composition/representation/storage.js +188 -0
- package/dist/composition/representation/storage.js.map +1 -0
- package/dist/composition.d.ts +20 -0
- package/dist/composition.js +124 -0
- package/dist/composition.js.map +1 -0
- package/dist/compression.d.ts +16 -0
- package/dist/compression.js +38 -0
- package/dist/compression.js.map +1 -0
- package/dist/content.d.ts +590 -0
- package/dist/content.js +168 -0
- package/dist/content.js.map +1 -0
- package/dist/core/capabilities.d.ts +53 -0
- package/dist/core/capabilities.js +9 -0
- package/dist/core/capabilities.js.map +1 -0
- package/dist/core/contracts/multipart.d.ts +56 -0
- package/dist/core/contracts/resumable.d.ts +70 -0
- package/dist/core/errors.d.ts +55 -0
- package/dist/core/errors.js +55 -0
- package/dist/core/errors.js.map +1 -0
- package/dist/core/object.d.ts +97 -0
- package/dist/core/object.js +55 -0
- package/dist/core/object.js.map +1 -0
- package/dist/core/ranges.d.ts +17 -0
- package/dist/core/ranges.js +27 -0
- package/dist/core/ranges.js.map +1 -0
- package/dist/core/requests.d.ts +185 -0
- package/dist/core/requests.js +42 -0
- package/dist/core/requests.js.map +1 -0
- package/dist/core/storage.d.ts +249 -0
- package/dist/core/storage.js +173 -0
- package/dist/core/storage.js.map +1 -0
- package/dist/deno.d.ts +14 -0
- package/dist/deno.js +17 -0
- package/dist/deno.js.map +1 -0
- package/dist/encryption/age.d.ts +14 -0
- package/dist/encryption/age.js +46 -0
- package/dist/encryption/age.js.map +1 -0
- package/dist/encryption.d.ts +16 -0
- package/dist/encryption.js +16 -0
- package/dist/encryption.js.map +1 -0
- package/dist/events.d.ts +57 -0
- package/dist/events.js +106 -0
- package/dist/events.js.map +1 -0
- package/dist/filesystem.d.ts +23 -0
- package/dist/filesystem.js +75 -0
- package/dist/filesystem.js.map +1 -0
- package/dist/gcs/admin.d.ts +470 -0
- package/dist/gcs/admin.js +206 -0
- package/dist/gcs/admin.js.map +1 -0
- package/dist/gcs/events.d.ts +41 -0
- package/dist/gcs/events.js +45 -0
- package/dist/gcs/events.js.map +1 -0
- package/dist/gcs/governance.d.ts +158 -0
- package/dist/gcs/governance.js +100 -0
- package/dist/gcs/governance.js.map +1 -0
- package/dist/gcs/lifecycle.d.ts +161 -0
- package/dist/gcs/lifecycle.js +174 -0
- package/dist/gcs/lifecycle.js.map +1 -0
- package/dist/gcs/post.d.ts +31 -0
- package/dist/gcs/post.js +70 -0
- package/dist/gcs/post.js.map +1 -0
- package/dist/gcs/signing.d.ts +10 -0
- package/dist/gcs/signing.js +61 -0
- package/dist/gcs/signing.js.map +1 -0
- package/dist/gcs/uploads.d.ts +10 -0
- package/dist/gcs/uploads.js +76 -0
- package/dist/gcs/uploads.js.map +1 -0
- package/dist/gcs.d.ts +888 -0
- package/dist/gcs.js +91 -0
- package/dist/gcs.js.map +1 -0
- package/dist/hetzner/admin.d.ts +112 -0
- package/dist/hetzner/admin.js +19 -0
- package/dist/hetzner/admin.js.map +1 -0
- package/dist/hetzner.d.ts +15 -0
- package/dist/hetzner.js +15 -0
- package/dist/hetzner.js.map +1 -0
- package/dist/http/api.d.ts +236 -0
- package/dist/http/api.js +54 -0
- package/dist/http/api.js.map +1 -0
- package/dist/http/download.js +99 -0
- package/dist/http/download.js.map +1 -0
- package/dist/http/schema.d.ts +3 -0
- package/dist/http/schema.js +4 -0
- package/dist/http.d.ts +35 -0
- package/dist/http.js +178 -0
- package/dist/http.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.js +9 -0
- package/dist/internal/http/control-plane.js +71 -0
- package/dist/internal/http/control-plane.js.map +1 -0
- package/dist/internal/listing-cursor.js +44 -0
- package/dist/internal/listing-cursor.js.map +1 -0
- package/dist/internal/node/provider-errors.js +16 -0
- package/dist/internal/node/provider-errors.js.map +1 -0
- package/dist/internal/node/upload-body.js +111 -0
- package/dist/internal/node/upload-body.js.map +1 -0
- package/dist/internal/provider-response.js +14 -0
- package/dist/internal/provider-response.js.map +1 -0
- package/dist/internal/public-urls.js +30 -0
- package/dist/internal/public-urls.js.map +1 -0
- package/dist/internal/read-condition.js +11 -0
- package/dist/internal/read-condition.js.map +1 -0
- package/dist/internal/request-validation.js +24 -0
- package/dist/internal/request-validation.js.map +1 -0
- package/dist/internal/signing-request.js +22 -0
- package/dist/internal/signing-request.js.map +1 -0
- package/dist/internal/web-upload-body.js +71 -0
- package/dist/internal/web-upload-body.js.map +1 -0
- package/dist/lifecycle/configuration-state.js +26 -0
- package/dist/lifecycle/configuration-state.js.map +1 -0
- package/dist/lifecycle/metadata.js +28 -0
- package/dist/lifecycle/metadata.js.map +1 -0
- package/dist/lifecycle.d.ts +269 -0
- package/dist/lifecycle.js +72 -0
- package/dist/lifecycle.js.map +1 -0
- package/dist/migrations.d.ts +537 -0
- package/dist/migrations.js +296 -0
- package/dist/migrations.js.map +1 -0
- package/dist/minio/admin.d.ts +112 -0
- package/dist/minio/admin.js +19 -0
- package/dist/minio/admin.js.map +1 -0
- package/dist/minio.d.ts +15 -0
- package/dist/minio.js +15 -0
- package/dist/minio.js.map +1 -0
- package/dist/mirror.d.ts +830 -0
- package/dist/mirror.js +290 -0
- package/dist/mirror.js.map +1 -0
- package/dist/node.d.ts +14 -0
- package/dist/node.js +17 -0
- package/dist/node.js.map +1 -0
- package/dist/providers/azure/blocks.js +94 -0
- package/dist/providers/azure/blocks.js.map +1 -0
- package/dist/providers/azure/config.d.ts +41 -0
- package/dist/providers/azure/config.js +62 -0
- package/dist/providers/azure/config.js.map +1 -0
- package/dist/providers/azure/mapping.js +83 -0
- package/dist/providers/azure/mapping.js.map +1 -0
- package/dist/providers/azure/native.js +88 -0
- package/dist/providers/azure/native.js.map +1 -0
- package/dist/providers/azure/primitives.js +203 -0
- package/dist/providers/azure/primitives.js.map +1 -0
- package/dist/providers/azure/properties.d.ts +180 -0
- package/dist/providers/azure/properties.js +55 -0
- package/dist/providers/azure/properties.js.map +1 -0
- package/dist/providers/azure/transport.js +14 -0
- package/dist/providers/azure/transport.js.map +1 -0
- package/dist/providers/azure/validation.js +11 -0
- package/dist/providers/azure/validation.js.map +1 -0
- package/dist/providers/filesystem/envelope.js +56 -0
- package/dist/providers/filesystem/envelope.js.map +1 -0
- package/dist/providers/filesystem/identity.js +68 -0
- package/dist/providers/filesystem/identity.js.map +1 -0
- package/dist/providers/filesystem/layout.d.ts +15 -0
- package/dist/providers/filesystem/layout.js +112 -0
- package/dist/providers/filesystem/layout.js.map +1 -0
- package/dist/providers/filesystem/list.js +82 -0
- package/dist/providers/filesystem/list.js.map +1 -0
- package/dist/providers/filesystem/operations.js +134 -0
- package/dist/providers/filesystem/operations.js.map +1 -0
- package/dist/providers/gcs/config.d.ts +34 -0
- package/dist/providers/gcs/config.js +60 -0
- package/dist/providers/gcs/config.js.map +1 -0
- package/dist/providers/gcs/iam.js +45 -0
- package/dist/providers/gcs/iam.js.map +1 -0
- package/dist/providers/gcs/mapping.js +118 -0
- package/dist/providers/gcs/mapping.js.map +1 -0
- package/dist/providers/gcs/native.d.ts +11 -0
- package/dist/providers/gcs/native.js +122 -0
- package/dist/providers/gcs/native.js.map +1 -0
- package/dist/providers/gcs/primitives.js +194 -0
- package/dist/providers/gcs/primitives.js.map +1 -0
- package/dist/providers/gcs/resumable.js +145 -0
- package/dist/providers/gcs/resumable.js.map +1 -0
- package/dist/providers/gcs/tier.d.ts +176 -0
- package/dist/providers/gcs/tier.js +34 -0
- package/dist/providers/gcs/tier.js.map +1 -0
- package/dist/providers/gcs/transport.js +123 -0
- package/dist/providers/gcs/transport.js.map +1 -0
- package/dist/providers/gcs/upload.js +28 -0
- package/dist/providers/gcs/upload.js.map +1 -0
- package/dist/providers/gcs/validation.js +10 -0
- package/dist/providers/gcs/validation.js.map +1 -0
- package/dist/providers/r2-workers/binding.d.ts +102 -0
- package/dist/providers/r2-workers/body.js +82 -0
- package/dist/providers/r2-workers/body.js.map +1 -0
- package/dist/providers/r2-workers/list.js +62 -0
- package/dist/providers/r2-workers/list.js.map +1 -0
- package/dist/providers/r2-workers/mapping.js +140 -0
- package/dist/providers/r2-workers/mapping.js.map +1 -0
- package/dist/providers/r2-workers/multipart.js +121 -0
- package/dist/providers/r2-workers/multipart.js.map +1 -0
- package/dist/providers/r2-workers/primitives.js +80 -0
- package/dist/providers/r2-workers/primitives.js.map +1 -0
- package/dist/providers/s3/admin-configuration.d.ts +19 -0
- package/dist/providers/s3/admin-configuration.js +171 -0
- package/dist/providers/s3/admin-configuration.js.map +1 -0
- package/dist/providers/s3/bulk-delete.d.ts +43 -0
- package/dist/providers/s3/bulk-delete.js +58 -0
- package/dist/providers/s3/bulk-delete.js.map +1 -0
- package/dist/providers/s3/config.d.ts +43 -0
- package/dist/providers/s3/config.js +89 -0
- package/dist/providers/s3/config.js.map +1 -0
- package/dist/providers/s3/copy.d.ts +115 -0
- package/dist/providers/s3/copy.js +122 -0
- package/dist/providers/s3/copy.js.map +1 -0
- package/dist/providers/s3/lifecycle-validation.js +33 -0
- package/dist/providers/s3/lifecycle-validation.js.map +1 -0
- package/dist/providers/s3/listing.js +56 -0
- package/dist/providers/s3/listing.js.map +1 -0
- package/dist/providers/s3/metadata.d.ts +10 -0
- package/dist/providers/s3/metadata.js +90 -0
- package/dist/providers/s3/metadata.js.map +1 -0
- package/dist/providers/s3/multipart.d.ts +41 -0
- package/dist/providers/s3/multipart.js +299 -0
- package/dist/providers/s3/multipart.js.map +1 -0
- package/dist/providers/s3/native-models.d.ts +82 -0
- package/dist/providers/s3/native-models.js +91 -0
- package/dist/providers/s3/native-models.js.map +1 -0
- package/dist/providers/s3/object-mapping.js +114 -0
- package/dist/providers/s3/object-mapping.js.map +1 -0
- package/dist/providers/s3/primitives.d.ts +8 -0
- package/dist/providers/s3/primitives.js +235 -0
- package/dist/providers/s3/primitives.js.map +1 -0
- package/dist/providers/s3/profile.d.ts +25 -0
- package/dist/providers/s3/profile.js +46 -0
- package/dist/providers/s3/profile.js.map +1 -0
- package/dist/providers/s3/request-extension.js +29 -0
- package/dist/providers/s3/request-extension.js.map +1 -0
- package/dist/providers/s3/service.js +55 -0
- package/dist/providers/s3/service.js.map +1 -0
- package/dist/providers/s3/signing-credentials.js +32 -0
- package/dist/providers/s3/signing-credentials.js.map +1 -0
- package/dist/providers/s3/tags.d.ts +10 -0
- package/dist/providers/s3/tags.js +65 -0
- package/dist/providers/s3/tags.js.map +1 -0
- package/dist/providers/s3/tier.d.ts +171 -0
- package/dist/providers/s3/tier.js +100 -0
- package/dist/providers/s3/tier.js.map +1 -0
- package/dist/providers/s3/transfer-driver.js +72 -0
- package/dist/providers/s3/transfer-driver.js.map +1 -0
- package/dist/providers/s3/transport.js +94 -0
- package/dist/providers/s3/transport.js.map +1 -0
- package/dist/providers/s3/upload-body.js +10 -0
- package/dist/providers/s3/upload-body.js.map +1 -0
- package/dist/providers/s3/validation.js +31 -0
- package/dist/providers/s3/validation.js.map +1 -0
- package/dist/providers/s3/versions.d.ts +10 -0
- package/dist/providers/s3/versions.js +143 -0
- package/dist/providers/s3/versions.js.map +1 -0
- package/dist/providers/s3-compatible/config.d.ts +36 -0
- package/dist/providers/s3-compatible/config.js +174 -0
- package/dist/providers/s3-compatible/config.js.map +1 -0
- package/dist/providers/s3-compatible/service.js +48 -0
- package/dist/providers/s3-compatible/service.js.map +1 -0
- package/dist/providers/supabase/config.d.ts +20 -0
- package/dist/providers/supabase/config.js +41 -0
- package/dist/providers/supabase/config.js.map +1 -0
- package/dist/providers/supabase/mapping.js +60 -0
- package/dist/providers/supabase/mapping.js.map +1 -0
- package/dist/providers/supabase/primitives.js +205 -0
- package/dist/providers/supabase/primitives.js.map +1 -0
- package/dist/providers/supabase/transport.js +64 -0
- package/dist/providers/supabase/transport.js.map +1 -0
- package/dist/providers/supabase/tus.js +163 -0
- package/dist/providers/supabase/tus.js.map +1 -0
- package/dist/providers/tigris/configuration.js +118 -0
- package/dist/providers/tigris/configuration.js.map +1 -0
- package/dist/providers/tigris/snapshots.js +87 -0
- package/dist/providers/tigris/snapshots.js.map +1 -0
- package/dist/providers/tigris/transport.js +18 -0
- package/dist/providers/tigris/transport.js.map +1 -0
- package/dist/providers/vercel/config.d.ts +16 -0
- package/dist/providers/vercel/config.js +48 -0
- package/dist/providers/vercel/config.js.map +1 -0
- package/dist/providers/vercel/mapping.js +79 -0
- package/dist/providers/vercel/mapping.js.map +1 -0
- package/dist/providers/vercel/multipart.js +113 -0
- package/dist/providers/vercel/multipart.js.map +1 -0
- package/dist/providers/vercel/primitives.js +168 -0
- package/dist/providers/vercel/primitives.js.map +1 -0
- package/dist/providers/vercel/transport.js +32 -0
- package/dist/providers/vercel/transport.js.map +1 -0
- package/dist/providers/wasabi/compliance.d.ts +52 -0
- package/dist/providers/wasabi/compliance.js +89 -0
- package/dist/providers/wasabi/compliance.js.map +1 -0
- package/dist/providers/wasabi/xml.js +55 -0
- package/dist/providers/wasabi/xml.js.map +1 -0
- package/dist/r2/admin.d.ts +126 -0
- package/dist/r2/admin.js +138 -0
- package/dist/r2/admin.js.map +1 -0
- package/dist/r2/events.d.ts +41 -0
- package/dist/r2/events.js +37 -0
- package/dist/r2/events.js.map +1 -0
- package/dist/r2-workers.d.ts +24 -0
- package/dist/r2-workers.js +115 -0
- package/dist/r2-workers.js.map +1 -0
- package/dist/r2.d.ts +15 -0
- package/dist/r2.js +15 -0
- package/dist/r2.js.map +1 -0
- package/dist/react.d.ts +73 -0
- package/dist/react.js +49 -0
- package/dist/react.js.map +1 -0
- package/dist/representation.d.ts +24 -0
- package/dist/representation.js +7 -0
- package/dist/representation.js.map +1 -0
- package/dist/runtime/bun-filesystem.js +136 -0
- package/dist/runtime/bun-filesystem.js.map +1 -0
- package/dist/runtime/file-target.d.ts +10 -0
- package/dist/runtime/file-target.js +66 -0
- package/dist/runtime/file-target.js.map +1 -0
- package/dist/runtime/filesystem.d.ts +6 -0
- package/dist/runtime/filesystem.js +68 -0
- package/dist/runtime/filesystem.js.map +1 -0
- package/dist/runtime/node-hash.d.ts +4 -0
- package/dist/runtime/node-hash.js +31 -0
- package/dist/runtime/node-hash.js.map +1 -0
- package/dist/runtime/node-protection.d.ts +4 -0
- package/dist/runtime/node-protection.js +46 -0
- package/dist/runtime/node-protection.js.map +1 -0
- package/dist/runtime/portable-hash.d.ts +3 -0
- package/dist/runtime/portable-hash.js +31 -0
- package/dist/runtime/portable-hash.js.map +1 -0
- package/dist/runtime/session-store.d.ts +12 -0
- package/dist/runtime/session-store.js +19 -0
- package/dist/runtime/session-store.js.map +1 -0
- package/dist/runtime/web-protection.d.ts +7 -0
- package/dist/runtime/web-protection.js +54 -0
- package/dist/runtime/web-protection.js.map +1 -0
- package/dist/s3/admin.d.ts +183 -0
- package/dist/s3/admin.js +197 -0
- package/dist/s3/admin.js.map +1 -0
- package/dist/s3/archive.d.ts +25 -0
- package/dist/s3/archive.js +113 -0
- package/dist/s3/archive.js.map +1 -0
- package/dist/s3/events.d.ts +42 -0
- package/dist/s3/events.js +69 -0
- package/dist/s3/events.js.map +1 -0
- package/dist/s3/governance.d.ts +319 -0
- package/dist/s3/governance.js +108 -0
- package/dist/s3/governance.js.map +1 -0
- package/dist/s3/lifecycle.d.ts +4 -0
- package/dist/s3/lifecycle.js +5 -0
- package/dist/s3/post.d.ts +31 -0
- package/dist/s3/post.js +93 -0
- package/dist/s3/post.js.map +1 -0
- package/dist/s3/signing.d.ts +105 -0
- package/dist/s3/signing.js +198 -0
- package/dist/s3/signing.js.map +1 -0
- package/dist/s3/uploads.d.ts +11 -0
- package/dist/s3/uploads.js +173 -0
- package/dist/s3/uploads.js.map +1 -0
- package/dist/s3.d.ts +37 -0
- package/dist/s3.js +114 -0
- package/dist/s3.js.map +1 -0
- package/dist/scaleway/admin.d.ts +112 -0
- package/dist/scaleway/admin.js +19 -0
- package/dist/scaleway/admin.js.map +1 -0
- package/dist/scaleway.d.ts +15 -0
- package/dist/scaleway.js +15 -0
- package/dist/scaleway.js.map +1 -0
- package/dist/session-events.d.ts +22 -0
- package/dist/session-events.js +22 -0
- package/dist/session-events.js.map +1 -0
- package/dist/sessions/checkpoint.d.ts +423 -0
- package/dist/sessions/checkpoint.js +102 -0
- package/dist/sessions/checkpoint.js.map +1 -0
- package/dist/sessions/download.d.ts +17 -0
- package/dist/sessions/download.js +111 -0
- package/dist/sessions/download.js.map +1 -0
- package/dist/sessions/native-upload.js +168 -0
- package/dist/sessions/native-upload.js.map +1 -0
- package/dist/sessions/store.d.ts +40 -0
- package/dist/sessions/store.js +77 -0
- package/dist/sessions/store.js.map +1 -0
- package/dist/sessions/upload.d.ts +10 -0
- package/dist/sessions/upload.js +329 -0
- package/dist/sessions/upload.js.map +1 -0
- package/dist/sessions.d.ts +98 -0
- package/dist/sessions.js +268 -0
- package/dist/sessions.js.map +1 -0
- package/dist/spaces/admin.d.ts +112 -0
- package/dist/spaces/admin.js +19 -0
- package/dist/spaces/admin.js.map +1 -0
- package/dist/spaces.d.ts +15 -0
- package/dist/spaces.js +15 -0
- package/dist/spaces.js.map +1 -0
- package/dist/supabase/admin.d.ts +77 -0
- package/dist/supabase/admin.js +74 -0
- package/dist/supabase/admin.js.map +1 -0
- package/dist/supabase/s3.d.ts +311 -0
- package/dist/supabase/s3.js +153 -0
- package/dist/supabase/s3.js.map +1 -0
- package/dist/supabase/signing.d.ts +23 -0
- package/dist/supabase/signing.js +93 -0
- package/dist/supabase/signing.js.map +1 -0
- package/dist/supabase/tus-uploads.d.ts +13 -0
- package/dist/supabase/tus-uploads.js +109 -0
- package/dist/supabase/tus-uploads.js.map +1 -0
- package/dist/supabase/uploads.d.ts +5 -0
- package/dist/supabase/uploads.js +32 -0
- package/dist/supabase/uploads.js.map +1 -0
- package/dist/supabase.d.ts +100 -0
- package/dist/supabase.js +50 -0
- package/dist/supabase.js.map +1 -0
- package/dist/testing/body-failure.js +18 -0
- package/dist/testing/body-failure.js.map +1 -0
- package/dist/testing/conformance/assertions.d.ts +10 -0
- package/dist/testing/conformance/assertions.js +21 -0
- package/dist/testing/conformance/assertions.js.map +1 -0
- package/dist/testing/conformance/core-cases.js +107 -0
- package/dist/testing/conformance/core-cases.js.map +1 -0
- package/dist/testing/conformance/list-cases.js +72 -0
- package/dist/testing/conformance/list-cases.js.map +1 -0
- package/dist/testing/conformance/read-cases.js +105 -0
- package/dist/testing/conformance/read-cases.js.map +1 -0
- package/dist/testing/conformance.d.ts +23 -0
- package/dist/testing/conformance.js +37 -0
- package/dist/testing/conformance.js.map +1 -0
- package/dist/testing/faults.d.ts +258 -0
- package/dist/testing/faults.js +111 -0
- package/dist/testing/faults.js.map +1 -0
- package/dist/testing/memory-list.js +79 -0
- package/dist/testing/memory-list.js.map +1 -0
- package/dist/testing/memory-state.d.ts +18 -0
- package/dist/testing/memory-state.js +57 -0
- package/dist/testing/memory-state.js.map +1 -0
- package/dist/testing/memory-upload.js +123 -0
- package/dist/testing/memory-upload.js.map +1 -0
- package/dist/testing/memory.d.ts +23 -0
- package/dist/testing/memory.js +121 -0
- package/dist/testing/memory.js.map +1 -0
- package/dist/testing.d.ts +6 -0
- package/dist/testing.js +6 -0
- package/dist/tigris/events.d.ts +42 -0
- package/dist/tigris/events.js +42 -0
- package/dist/tigris/events.js.map +1 -0
- package/dist/tigris/native.d.ts +438 -0
- package/dist/tigris/native.js +166 -0
- package/dist/tigris/native.js.map +1 -0
- package/dist/tigris.d.ts +15 -0
- package/dist/tigris.js +15 -0
- package/dist/tigris.js.map +1 -0
- package/dist/transfers/budget.js +50 -0
- package/dist/transfers/budget.js.map +1 -0
- package/dist/transfers/copy.js +250 -0
- package/dist/transfers/copy.js.map +1 -0
- package/dist/transfers/dependencies.d.ts +10 -0
- package/dist/transfers/dependencies.js +11 -0
- package/dist/transfers/dependencies.js.map +1 -0
- package/dist/transfers/download.js +132 -0
- package/dist/transfers/download.js.map +1 -0
- package/dist/transfers/managed-runtime.d.ts +34 -0
- package/dist/transfers/managed-runtime.js +30 -0
- package/dist/transfers/managed-runtime.js.map +1 -0
- package/dist/transfers/models.d.ts +160 -0
- package/dist/transfers/native-upload.js +195 -0
- package/dist/transfers/native-upload.js.map +1 -0
- package/dist/transfers/part-receipts.js +32 -0
- package/dist/transfers/part-receipts.js.map +1 -0
- package/dist/transfers/planner.d.ts +19 -0
- package/dist/transfers/planner.js +153 -0
- package/dist/transfers/planner.js.map +1 -0
- package/dist/transfers/reader.js +81 -0
- package/dist/transfers/reader.js.map +1 -0
- package/dist/transfers/runtime.d.ts +19 -0
- package/dist/transfers/runtime.js +132 -0
- package/dist/transfers/runtime.js.map +1 -0
- package/dist/transfers/sources.d.ts +22 -0
- package/dist/transfers/sources.js +83 -0
- package/dist/transfers/sources.js.map +1 -0
- package/dist/transfers/upload.js +235 -0
- package/dist/transfers/upload.js.map +1 -0
- package/dist/transfers.d.ts +31 -0
- package/dist/transfers.js +82 -0
- package/dist/transfers.js.map +1 -0
- package/dist/uploads/driver.d.ts +22 -0
- package/dist/uploads/driver.js +18 -0
- package/dist/uploads/driver.js.map +1 -0
- package/dist/uploads/policy.d.ts +39 -0
- package/dist/uploads/schema.d.ts +278 -0
- package/dist/uploads/schema.js +167 -0
- package/dist/uploads/schema.js.map +1 -0
- package/dist/uploads/signed-driver.d.ts +8 -0
- package/dist/uploads/signed-driver.js +36 -0
- package/dist/uploads/signed-driver.js.map +1 -0
- package/dist/uploads/store.d.ts +26 -0
- package/dist/uploads/store.js +51 -0
- package/dist/uploads/store.js.map +1 -0
- package/dist/uploads/verification.js +86 -0
- package/dist/uploads/verification.js.map +1 -0
- package/dist/uploads.d.ts +518 -0
- package/dist/uploads.js +330 -0
- package/dist/uploads.js.map +1 -0
- package/dist/vercel/authorized-uploads.d.ts +7 -0
- package/dist/vercel/authorized-uploads.js +15 -0
- package/dist/vercel/authorized-uploads.js.map +1 -0
- package/dist/vercel/client.d.ts +16 -0
- package/dist/vercel/client.js +28 -0
- package/dist/vercel/client.js.map +1 -0
- package/dist/vercel/signing.d.ts +19 -0
- package/dist/vercel/signing.js +120 -0
- package/dist/vercel/signing.js.map +1 -0
- package/dist/vercel/uploads.d.ts +36 -0
- package/dist/vercel/uploads.js +161 -0
- package/dist/vercel/uploads.js.map +1 -0
- package/dist/vercel.d.ts +86 -0
- package/dist/vercel.js +46 -0
- package/dist/vercel.js.map +1 -0
- package/dist/wasabi/admin.d.ts +112 -0
- package/dist/wasabi/admin.js +19 -0
- package/dist/wasabi/admin.js.map +1 -0
- package/dist/wasabi/native.d.ts +200 -0
- package/dist/wasabi/native.js +132 -0
- package/dist/wasabi/native.js.map +1 -0
- package/dist/wasabi.d.ts +15 -0
- package/dist/wasabi.js +15 -0
- package/dist/wasabi.js.map +1 -0
- package/dist/workflows/content/collection.js +122 -0
- package/dist/workflows/content/collection.js.map +1 -0
- package/dist/workflows/content/references.js +113 -0
- package/dist/workflows/content/references.js.map +1 -0
- package/dist/workflows/content/schema.d.ts +58 -0
- package/dist/workflows/content/schema.js +64 -0
- package/dist/workflows/content/schema.js.map +1 -0
- package/dist/workflows/endpoint.js +16 -0
- package/dist/workflows/endpoint.js.map +1 -0
- package/dist/workflows/migrations/schema.d.ts +149 -0
- package/dist/workflows/migrations/schema.js +58 -0
- package/dist/workflows/migrations/schema.js.map +1 -0
- package/dist/workflows/mirror/operations.js +175 -0
- package/dist/workflows/mirror/operations.js.map +1 -0
- package/dist/workflows/mirror/schema.d.ts +68 -0
- package/dist/workflows/mirror/schema.js +57 -0
- package/dist/workflows/mirror/schema.js.map +1 -0
- package/dist/workflows/mirror/view.js +103 -0
- package/dist/workflows/mirror/view.js.map +1 -0
- package/dist/workflows/objects.js +54 -0
- package/dist/workflows/objects.js.map +1 -0
- package/dist/workflows/store.d.ts +13 -0
- package/dist/workflows/store.js +58 -0
- package/dist/workflows/store.js.map +1 -0
- package/package.json +513 -3
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { failUpload } from "./schema.js";
|
|
2
|
+
import { digestText, sha256 } from "../runtime/portable-hash.js";
|
|
3
|
+
import { Effect, Stream } from "effect";
|
|
4
|
+
|
|
5
|
+
// src/uploads/verification.ts
|
|
6
|
+
const operationMetadata = (record) => ({ "effect-storage-upload": record.id });
|
|
7
|
+
const pinned = (object) => {
|
|
8
|
+
if (!object.ref.version && !object.etag) return Effect.fail(failUpload("Unsupported"));
|
|
9
|
+
return Effect.succeed({
|
|
10
|
+
ref: object.ref,
|
|
11
|
+
...object.ref.version ? {} : { condition: {
|
|
12
|
+
_tag: "IfMatch",
|
|
13
|
+
etag: object.etag ?? ""
|
|
14
|
+
} }
|
|
15
|
+
});
|
|
16
|
+
};
|
|
17
|
+
const verify = Effect.fnUntraced(function* (storage, object, record) {
|
|
18
|
+
if (object.size !== record.input.file.size) return yield* failUpload("VerificationFailed");
|
|
19
|
+
return yield* Effect.scoped(Effect.gen(function* () {
|
|
20
|
+
const selected = yield* pinned(object);
|
|
21
|
+
const download = yield* storage.get(selected);
|
|
22
|
+
if (download._tag !== "Object") return yield* failUpload("VerificationFailed");
|
|
23
|
+
const hash = sha256.create();
|
|
24
|
+
let bytes = 0;
|
|
25
|
+
yield* Stream.runForEach(download.body, (chunk) => Effect.gen(function* () {
|
|
26
|
+
bytes += chunk.length;
|
|
27
|
+
if (bytes > record.input.file.size) return yield* failUpload("VerificationFailed");
|
|
28
|
+
hash.update(chunk);
|
|
29
|
+
}));
|
|
30
|
+
if (bytes !== record.input.file.size || hash.finish().value !== record.input.file.sha256) return yield* failUpload("VerificationFailed");
|
|
31
|
+
}));
|
|
32
|
+
});
|
|
33
|
+
const snapshot = Effect.fnUntraced(function* (storage, record) {
|
|
34
|
+
if (!storage.capabilities.putConditions.includes("create-only")) return yield* failUpload("Unsupported");
|
|
35
|
+
const existing = yield* storage.head({ key: record.publishedKey }).pipe(Effect.catchReason("StorageError", "NotFound", () => Effect.succeed(void 0)));
|
|
36
|
+
if (existing) {
|
|
37
|
+
yield* verify(storage, existing, record);
|
|
38
|
+
return existing;
|
|
39
|
+
}
|
|
40
|
+
const source = yield* storage.head({ key: record.stagingKey });
|
|
41
|
+
yield* verify(storage, source, record);
|
|
42
|
+
const object = yield* Effect.scoped(Effect.gen(function* () {
|
|
43
|
+
const download = yield* storage.get(yield* pinned(source));
|
|
44
|
+
if (download._tag !== "Object") return yield* failUpload("VerificationFailed");
|
|
45
|
+
return yield* storage.put({
|
|
46
|
+
key: record.publishedKey,
|
|
47
|
+
body: download.body,
|
|
48
|
+
contentLength: record.input.file.size,
|
|
49
|
+
maxBytes: record.input.file.size,
|
|
50
|
+
contentType: record.input.file.contentType,
|
|
51
|
+
condition: { _tag: "CreateOnly" }
|
|
52
|
+
});
|
|
53
|
+
}));
|
|
54
|
+
const observed = object.ref.version || object.etag ? object : yield* storage.head({ key: record.publishedKey });
|
|
55
|
+
yield* verify(storage, observed, record);
|
|
56
|
+
return observed;
|
|
57
|
+
});
|
|
58
|
+
const removeOwned = Effect.fnUntraced(function* (storage, object) {
|
|
59
|
+
if (object.ref.version) {
|
|
60
|
+
yield* storage.delete({ ref: object.ref });
|
|
61
|
+
return true;
|
|
62
|
+
}
|
|
63
|
+
if (object.etag && storage.capabilities.deleteConditions.includes("if-match")) {
|
|
64
|
+
yield* storage.delete({
|
|
65
|
+
ref: object.ref,
|
|
66
|
+
condition: {
|
|
67
|
+
_tag: "IfMatch",
|
|
68
|
+
etag: object.etag
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
return true;
|
|
72
|
+
}
|
|
73
|
+
return false;
|
|
74
|
+
});
|
|
75
|
+
const cleanup = Effect.fnUntraced(function* (storage, record) {
|
|
76
|
+
const stage = yield* storage.head({ key: record.stagingKey }).pipe(Effect.catchReason("StorageError", "NotFound", () => Effect.succeed(void 0)));
|
|
77
|
+
const stagingCleaned = stage ? yield* removeOwned(storage, stage) : true;
|
|
78
|
+
if (!["aborted", "rejected"].includes(record.state)) return stagingCleaned;
|
|
79
|
+
const final = record.object ?? (yield* storage.head({ key: record.publishedKey }).pipe(Effect.catchReason("StorageError", "NotFound", () => Effect.succeed(void 0))));
|
|
80
|
+
if (!final) return stagingCleaned;
|
|
81
|
+
yield* verify(storage, final, record);
|
|
82
|
+
return (yield* removeOwned(storage, final)) && stagingCleaned;
|
|
83
|
+
});
|
|
84
|
+
|
|
85
|
+
export { cleanup, digestText, operationMetadata, pinned, snapshot, verify };
|
|
86
|
+
//# sourceMappingURL=verification.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verification.js","names":[],"sources":["../../src/uploads/verification.ts"],"sourcesContent":["import { Effect, Stream } from \"effect\";\n\nimport type { ObjectMetadata } from \"../core/object.js\";\nimport type { StorageService } from \"../core/storage.js\";\nimport { sha256 } from \"../runtime/portable-hash.js\";\nimport { failUpload } from \"./schema.js\";\nimport type { UploadRecord } from \"./schema.js\";\n\nexport const operationMetadata = (record: UploadRecord) => ({ \"effect-storage-upload\": record.id });\nexport { digestText } from \"../runtime/portable-hash.js\";\nexport const pinned = (object: ObjectMetadata) => {\n if (!object.ref.version && !object.etag) return Effect.fail(failUpload(\"Unsupported\"));\n return Effect.succeed({\n ref: object.ref,\n ...(object.ref.version\n ? {}\n : { condition: { _tag: \"IfMatch\" as const, etag: object.etag ?? \"\" } }),\n });\n};\nexport const verify = Effect.fnUntraced(function* (\n storage: StorageService,\n object: ObjectMetadata,\n record: UploadRecord,\n) {\n if (object.size !== record.input.file.size) return yield* failUpload(\"VerificationFailed\");\n return yield* Effect.scoped(\n Effect.gen(function* () {\n const selected = yield* pinned(object);\n const download = yield* storage.get(selected);\n if (download._tag !== \"Object\") return yield* failUpload(\"VerificationFailed\");\n const hash = sha256.create();\n let bytes = 0;\n yield* Stream.runForEach(download.body, (chunk) =>\n Effect.gen(function* () {\n bytes += chunk.length;\n if (bytes > record.input.file.size) return yield* failUpload(\"VerificationFailed\");\n hash.update(chunk);\n }),\n );\n if (bytes !== record.input.file.size || hash.finish().value !== record.input.file.sha256)\n return yield* failUpload(\"VerificationFailed\");\n }),\n );\n});\nexport const snapshot = Effect.fnUntraced(function* (\n storage: StorageService,\n record: UploadRecord,\n) {\n if (!storage.capabilities.putConditions.includes(\"create-only\"))\n return yield* failUpload(\"Unsupported\");\n const existing = yield* storage\n .head({ key: record.publishedKey })\n .pipe(Effect.catchReason(\"StorageError\", \"NotFound\", () => Effect.succeed(undefined)));\n if (existing) {\n yield* verify(storage, existing, record);\n return existing;\n }\n const source = yield* storage.head({ key: record.stagingKey });\n yield* verify(storage, source, record);\n const object = yield* Effect.scoped(\n Effect.gen(function* () {\n const download = yield* storage.get(yield* pinned(source));\n if (download._tag !== \"Object\") return yield* failUpload(\"VerificationFailed\");\n return yield* storage.put({\n key: record.publishedKey,\n body: download.body,\n contentLength: record.input.file.size,\n maxBytes: record.input.file.size,\n contentType: record.input.file.contentType,\n condition: { _tag: \"CreateOnly\" },\n });\n }),\n );\n // Some native upload acknowledgements lack a validator. This key is reserved for this\n // intent and never granted to the browser; pinned full-hash readback proves its bytes.\n const observed =\n object.ref.version || object.etag ? object : yield* storage.head({ key: record.publishedKey });\n yield* verify(storage, observed, record);\n return observed;\n});\nconst removeOwned = Effect.fnUntraced(function* (storage: StorageService, object: ObjectMetadata) {\n if (object.ref.version) {\n yield* storage.delete({ ref: object.ref });\n return true;\n }\n if (object.etag && storage.capabilities.deleteConditions.includes(\"if-match\")) {\n yield* storage.delete({ ref: object.ref, condition: { _tag: \"IfMatch\", etag: object.etag } });\n return true;\n }\n return false;\n});\nexport const cleanup = Effect.fnUntraced(function* (storage: StorageService, record: UploadRecord) {\n const stage = yield* storage\n .head({ key: record.stagingKey })\n .pipe(Effect.catchReason(\"StorageError\", \"NotFound\", () => Effect.succeed(undefined)));\n const stagingCleaned = stage ? yield* removeOwned(storage, stage) : true;\n if (![\"aborted\", \"rejected\"].includes(record.state)) return stagingCleaned;\n const final =\n record.object ??\n (yield* storage\n .head({ key: record.publishedKey })\n .pipe(Effect.catchReason(\"StorageError\", \"NotFound\", () => Effect.succeed(undefined))));\n if (!final) return stagingCleaned;\n yield* verify(storage, final, record);\n return (yield* removeOwned(storage, final)) && stagingCleaned;\n});\n"],"mappings":"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"}
|
|
@@ -0,0 +1,518 @@
|
|
|
1
|
+
import { GrantResponse, PartRequest, PartsRequest, PublishedObject, UploadActor, UploadError, UploadErrorCode, UploadFile, UploadGrant, UploadId, UploadInput, UploadRecord, UploadRequest, UploadState, UploadStatus, failUpload } from "./uploads/schema.js";
|
|
2
|
+
import { StorageError } from "./core/errors.js";
|
|
3
|
+
import { UploadBody } from "./core/requests.js";
|
|
4
|
+
import { Storage } from "./core/storage.js";
|
|
5
|
+
import "./index.js";
|
|
6
|
+
import { StorageEvent } from "./events.js";
|
|
7
|
+
import { UploadFailure, UploadGrantDriver, UploadGrantDriverService } from "./uploads/driver.js";
|
|
8
|
+
import { UploadAction, UploadDecision, UploadOptions } from "./uploads/policy.js";
|
|
9
|
+
import { UploadStore, UploadStoreOptions } from "./uploads/store.js";
|
|
10
|
+
import { SignedUploadGrants } from "./uploads/signed-driver.js";
|
|
11
|
+
import { Context, Effect, Layer, Redacted } from "effect";
|
|
12
|
+
declare const Uploads_base: Context.ServiceClass<Uploads, "@effect-kit/storage/Uploads", {
|
|
13
|
+
create: (raw: {
|
|
14
|
+
readonly actor: UploadActor;
|
|
15
|
+
readonly idempotencyKey: string;
|
|
16
|
+
readonly input: UploadInput;
|
|
17
|
+
}) => Effect.Effect<{
|
|
18
|
+
readonly version: 1;
|
|
19
|
+
readonly id: string;
|
|
20
|
+
readonly state: "aborted" | "initiating" | "published" | "publishing" | "ready" | "rejected" | "reserving" | "uploading" | "verifying";
|
|
21
|
+
readonly expiresAt: number;
|
|
22
|
+
readonly cleanupPending: boolean;
|
|
23
|
+
readonly result?: unknown;
|
|
24
|
+
}, StorageError | UploadError, never>;
|
|
25
|
+
maximumContentBytes: (input: {
|
|
26
|
+
readonly actor: UploadActor;
|
|
27
|
+
readonly uploadId: string;
|
|
28
|
+
}) => Effect.Effect<number, StorageError | UploadError, never>;
|
|
29
|
+
status: (input: {
|
|
30
|
+
readonly actor: UploadActor;
|
|
31
|
+
readonly uploadId: string;
|
|
32
|
+
}) => Effect.Effect<{
|
|
33
|
+
readonly version: 1;
|
|
34
|
+
readonly id: string;
|
|
35
|
+
readonly state: "aborted" | "initiating" | "published" | "publishing" | "ready" | "rejected" | "reserving" | "uploading" | "verifying";
|
|
36
|
+
readonly expiresAt: number;
|
|
37
|
+
readonly cleanupPending: boolean;
|
|
38
|
+
readonly result?: unknown;
|
|
39
|
+
}, StorageError | UploadError, never>;
|
|
40
|
+
grant: (input: {
|
|
41
|
+
readonly actor: UploadActor;
|
|
42
|
+
readonly uploadId: string;
|
|
43
|
+
}) => Effect.Effect<{
|
|
44
|
+
version: 1;
|
|
45
|
+
id: string;
|
|
46
|
+
grant: Redacted.Redacted<{
|
|
47
|
+
_tag: "SignedRequest";
|
|
48
|
+
method: "PUT";
|
|
49
|
+
url: string;
|
|
50
|
+
headers: {
|
|
51
|
+
readonly [x: string]: string;
|
|
52
|
+
};
|
|
53
|
+
expiresAt: number;
|
|
54
|
+
partReceipt?: string | undefined;
|
|
55
|
+
constraints: {
|
|
56
|
+
readonly kind: string;
|
|
57
|
+
readonly enforcement: "advisory" | "backend" | "provider";
|
|
58
|
+
readonly value: string | number;
|
|
59
|
+
}[];
|
|
60
|
+
} | {
|
|
61
|
+
_tag: "PostForm";
|
|
62
|
+
url: string;
|
|
63
|
+
fields: {
|
|
64
|
+
readonly [x: string]: string;
|
|
65
|
+
};
|
|
66
|
+
expiresAt: number;
|
|
67
|
+
constraints: {
|
|
68
|
+
readonly kind: string;
|
|
69
|
+
readonly enforcement: "advisory" | "backend" | "provider";
|
|
70
|
+
readonly value: string | number;
|
|
71
|
+
}[];
|
|
72
|
+
} | {
|
|
73
|
+
_tag: "Multipart";
|
|
74
|
+
partBytes: number;
|
|
75
|
+
checksum?: "sha256" | undefined;
|
|
76
|
+
expiresAt: number;
|
|
77
|
+
completed: readonly {
|
|
78
|
+
readonly partNumber: number;
|
|
79
|
+
readonly etag: string;
|
|
80
|
+
}[];
|
|
81
|
+
constraints: {
|
|
82
|
+
readonly kind: string;
|
|
83
|
+
readonly enforcement: "advisory" | "backend" | "provider";
|
|
84
|
+
readonly value: string | number;
|
|
85
|
+
}[];
|
|
86
|
+
} | {
|
|
87
|
+
_tag: "Blocks";
|
|
88
|
+
partBytes: number;
|
|
89
|
+
completed: readonly number[];
|
|
90
|
+
expiresAt: number;
|
|
91
|
+
constraints: {
|
|
92
|
+
readonly kind: string;
|
|
93
|
+
readonly enforcement: "advisory" | "backend" | "provider";
|
|
94
|
+
readonly value: string | number;
|
|
95
|
+
}[];
|
|
96
|
+
} | {
|
|
97
|
+
_tag: "Resumable";
|
|
98
|
+
protocol: "gcs" | "tus";
|
|
99
|
+
url: string;
|
|
100
|
+
headers: {
|
|
101
|
+
readonly [x: string]: string;
|
|
102
|
+
};
|
|
103
|
+
offset: number;
|
|
104
|
+
chunkBytes: number;
|
|
105
|
+
expiresAt: number;
|
|
106
|
+
constraints: {
|
|
107
|
+
readonly kind: string;
|
|
108
|
+
readonly enforcement: "advisory" | "backend" | "provider";
|
|
109
|
+
readonly value: string | number;
|
|
110
|
+
}[];
|
|
111
|
+
} | {
|
|
112
|
+
_tag: "Proxy";
|
|
113
|
+
expiresAt: number;
|
|
114
|
+
constraints: {
|
|
115
|
+
readonly kind: string;
|
|
116
|
+
readonly enforcement: "advisory" | "backend" | "provider";
|
|
117
|
+
readonly value: string | number;
|
|
118
|
+
}[];
|
|
119
|
+
}>;
|
|
120
|
+
}, UploadFailure, never>;
|
|
121
|
+
part: (input: {
|
|
122
|
+
readonly actor: UploadActor;
|
|
123
|
+
readonly uploadId: string;
|
|
124
|
+
readonly partNumber: number;
|
|
125
|
+
readonly sha256?: string | undefined;
|
|
126
|
+
}) => Effect.Effect<{
|
|
127
|
+
version: 1;
|
|
128
|
+
id: string;
|
|
129
|
+
grant: Redacted.Redacted<{
|
|
130
|
+
_tag: "SignedRequest";
|
|
131
|
+
method: "PUT";
|
|
132
|
+
url: string;
|
|
133
|
+
headers: {
|
|
134
|
+
readonly [x: string]: string;
|
|
135
|
+
};
|
|
136
|
+
expiresAt: number;
|
|
137
|
+
partReceipt?: string | undefined;
|
|
138
|
+
constraints: {
|
|
139
|
+
readonly kind: string;
|
|
140
|
+
readonly enforcement: "advisory" | "backend" | "provider";
|
|
141
|
+
readonly value: string | number;
|
|
142
|
+
}[];
|
|
143
|
+
} | {
|
|
144
|
+
_tag: "PostForm";
|
|
145
|
+
url: string;
|
|
146
|
+
fields: {
|
|
147
|
+
readonly [x: string]: string;
|
|
148
|
+
};
|
|
149
|
+
expiresAt: number;
|
|
150
|
+
constraints: {
|
|
151
|
+
readonly kind: string;
|
|
152
|
+
readonly enforcement: "advisory" | "backend" | "provider";
|
|
153
|
+
readonly value: string | number;
|
|
154
|
+
}[];
|
|
155
|
+
} | {
|
|
156
|
+
_tag: "Multipart";
|
|
157
|
+
partBytes: number;
|
|
158
|
+
checksum?: "sha256" | undefined;
|
|
159
|
+
expiresAt: number;
|
|
160
|
+
completed: readonly {
|
|
161
|
+
readonly partNumber: number;
|
|
162
|
+
readonly etag: string;
|
|
163
|
+
}[];
|
|
164
|
+
constraints: {
|
|
165
|
+
readonly kind: string;
|
|
166
|
+
readonly enforcement: "advisory" | "backend" | "provider";
|
|
167
|
+
readonly value: string | number;
|
|
168
|
+
}[];
|
|
169
|
+
} | {
|
|
170
|
+
_tag: "Blocks";
|
|
171
|
+
partBytes: number;
|
|
172
|
+
completed: readonly number[];
|
|
173
|
+
expiresAt: number;
|
|
174
|
+
constraints: {
|
|
175
|
+
readonly kind: string;
|
|
176
|
+
readonly enforcement: "advisory" | "backend" | "provider";
|
|
177
|
+
readonly value: string | number;
|
|
178
|
+
}[];
|
|
179
|
+
} | {
|
|
180
|
+
_tag: "Resumable";
|
|
181
|
+
protocol: "gcs" | "tus";
|
|
182
|
+
url: string;
|
|
183
|
+
headers: {
|
|
184
|
+
readonly [x: string]: string;
|
|
185
|
+
};
|
|
186
|
+
offset: number;
|
|
187
|
+
chunkBytes: number;
|
|
188
|
+
expiresAt: number;
|
|
189
|
+
constraints: {
|
|
190
|
+
readonly kind: string;
|
|
191
|
+
readonly enforcement: "advisory" | "backend" | "provider";
|
|
192
|
+
readonly value: string | number;
|
|
193
|
+
}[];
|
|
194
|
+
} | {
|
|
195
|
+
_tag: "Proxy";
|
|
196
|
+
expiresAt: number;
|
|
197
|
+
constraints: {
|
|
198
|
+
readonly kind: string;
|
|
199
|
+
readonly enforcement: "advisory" | "backend" | "provider";
|
|
200
|
+
readonly value: string | number;
|
|
201
|
+
}[];
|
|
202
|
+
}>;
|
|
203
|
+
}, UploadFailure, never>;
|
|
204
|
+
complete: (input: {
|
|
205
|
+
readonly actor: UploadActor;
|
|
206
|
+
readonly uploadId: string;
|
|
207
|
+
readonly parts?: (typeof PartsRequest.Type)["parts"];
|
|
208
|
+
}) => Effect.Effect<{
|
|
209
|
+
readonly version: 1;
|
|
210
|
+
readonly id: string;
|
|
211
|
+
readonly state: "aborted" | "initiating" | "published" | "publishing" | "ready" | "rejected" | "reserving" | "uploading" | "verifying";
|
|
212
|
+
readonly expiresAt: number;
|
|
213
|
+
readonly cleanupPending: boolean;
|
|
214
|
+
readonly result?: unknown;
|
|
215
|
+
}, UploadFailure, never>;
|
|
216
|
+
reconcile: (input: {
|
|
217
|
+
readonly actor: UploadActor;
|
|
218
|
+
readonly uploadId: string;
|
|
219
|
+
}) => Effect.Effect<{
|
|
220
|
+
readonly version: 1;
|
|
221
|
+
readonly id: string;
|
|
222
|
+
readonly state: "aborted" | "initiating" | "published" | "publishing" | "ready" | "rejected" | "reserving" | "uploading" | "verifying";
|
|
223
|
+
readonly expiresAt: number;
|
|
224
|
+
readonly cleanupPending: boolean;
|
|
225
|
+
readonly result?: unknown;
|
|
226
|
+
}, UploadFailure, never>;
|
|
227
|
+
observe: (input: {
|
|
228
|
+
readonly actor: UploadActor;
|
|
229
|
+
readonly uploadId: string;
|
|
230
|
+
readonly event: StorageEvent;
|
|
231
|
+
}) => Effect.Effect<{
|
|
232
|
+
readonly version: 1;
|
|
233
|
+
readonly id: string;
|
|
234
|
+
readonly state: "aborted" | "initiating" | "published" | "publishing" | "ready" | "rejected" | "reserving" | "uploading" | "verifying";
|
|
235
|
+
readonly expiresAt: number;
|
|
236
|
+
readonly cleanupPending: boolean;
|
|
237
|
+
readonly result?: unknown;
|
|
238
|
+
}, UploadFailure, never>;
|
|
239
|
+
abort: (input: {
|
|
240
|
+
readonly actor: UploadActor;
|
|
241
|
+
readonly uploadId: string;
|
|
242
|
+
}) => Effect.Effect<{
|
|
243
|
+
readonly version: 1;
|
|
244
|
+
readonly id: string;
|
|
245
|
+
readonly state: "aborted" | "initiating" | "published" | "publishing" | "ready" | "rejected" | "reserving" | "uploading" | "verifying";
|
|
246
|
+
readonly expiresAt: number;
|
|
247
|
+
readonly cleanupPending: boolean;
|
|
248
|
+
readonly result?: unknown;
|
|
249
|
+
}, UploadFailure, never>;
|
|
250
|
+
content: <E = never, ER = never>(input: {
|
|
251
|
+
readonly actor: UploadActor;
|
|
252
|
+
readonly uploadId: string;
|
|
253
|
+
readonly body: UploadBody<E, ER>;
|
|
254
|
+
}) => Effect.Effect<{
|
|
255
|
+
readonly version: 1;
|
|
256
|
+
readonly id: string;
|
|
257
|
+
readonly state: "aborted" | "initiating" | "published" | "publishing" | "ready" | "rejected" | "reserving" | "uploading" | "verifying";
|
|
258
|
+
readonly expiresAt: number;
|
|
259
|
+
readonly cleanupPending: boolean;
|
|
260
|
+
readonly result?: unknown;
|
|
261
|
+
}, E | StorageError | UploadError, ER>;
|
|
262
|
+
}>;
|
|
263
|
+
export declare class Uploads extends Uploads_base {
|
|
264
|
+
static readonly make: <R>(options: UploadOptions<R>) => Effect.Effect<{
|
|
265
|
+
create: (raw: {
|
|
266
|
+
readonly actor: UploadActor;
|
|
267
|
+
readonly idempotencyKey: string;
|
|
268
|
+
readonly input: UploadInput;
|
|
269
|
+
}) => Effect.Effect<{
|
|
270
|
+
readonly version: 1;
|
|
271
|
+
readonly id: string;
|
|
272
|
+
readonly state: "aborted" | "initiating" | "published" | "publishing" | "ready" | "rejected" | "reserving" | "uploading" | "verifying";
|
|
273
|
+
readonly expiresAt: number;
|
|
274
|
+
readonly cleanupPending: boolean;
|
|
275
|
+
readonly result?: unknown;
|
|
276
|
+
}, StorageError | UploadError, never>;
|
|
277
|
+
maximumContentBytes: (input: {
|
|
278
|
+
readonly actor: UploadActor;
|
|
279
|
+
readonly uploadId: string;
|
|
280
|
+
}) => Effect.Effect<number, StorageError | UploadError, Exclude<R, R>>;
|
|
281
|
+
status: (input: {
|
|
282
|
+
readonly actor: UploadActor;
|
|
283
|
+
readonly uploadId: string;
|
|
284
|
+
}) => Effect.Effect<{
|
|
285
|
+
readonly version: 1;
|
|
286
|
+
readonly id: string;
|
|
287
|
+
readonly state: "aborted" | "initiating" | "published" | "publishing" | "ready" | "rejected" | "reserving" | "uploading" | "verifying";
|
|
288
|
+
readonly expiresAt: number;
|
|
289
|
+
readonly cleanupPending: boolean;
|
|
290
|
+
readonly result?: unknown;
|
|
291
|
+
}, StorageError | UploadError, Exclude<R, R>>;
|
|
292
|
+
grant: (input: {
|
|
293
|
+
readonly actor: UploadActor;
|
|
294
|
+
readonly uploadId: string;
|
|
295
|
+
}) => Effect.Effect<{
|
|
296
|
+
version: 1;
|
|
297
|
+
id: string;
|
|
298
|
+
grant: Redacted.Redacted<{
|
|
299
|
+
_tag: "SignedRequest";
|
|
300
|
+
method: "PUT";
|
|
301
|
+
url: string;
|
|
302
|
+
headers: {
|
|
303
|
+
readonly [x: string]: string;
|
|
304
|
+
};
|
|
305
|
+
expiresAt: number;
|
|
306
|
+
partReceipt?: string | undefined;
|
|
307
|
+
constraints: {
|
|
308
|
+
readonly kind: string;
|
|
309
|
+
readonly enforcement: "advisory" | "backend" | "provider";
|
|
310
|
+
readonly value: string | number;
|
|
311
|
+
}[];
|
|
312
|
+
} | {
|
|
313
|
+
_tag: "PostForm";
|
|
314
|
+
url: string;
|
|
315
|
+
fields: {
|
|
316
|
+
readonly [x: string]: string;
|
|
317
|
+
};
|
|
318
|
+
expiresAt: number;
|
|
319
|
+
constraints: {
|
|
320
|
+
readonly kind: string;
|
|
321
|
+
readonly enforcement: "advisory" | "backend" | "provider";
|
|
322
|
+
readonly value: string | number;
|
|
323
|
+
}[];
|
|
324
|
+
} | {
|
|
325
|
+
_tag: "Multipart";
|
|
326
|
+
partBytes: number;
|
|
327
|
+
checksum?: "sha256" | undefined;
|
|
328
|
+
expiresAt: number;
|
|
329
|
+
completed: readonly {
|
|
330
|
+
readonly partNumber: number;
|
|
331
|
+
readonly etag: string;
|
|
332
|
+
}[];
|
|
333
|
+
constraints: {
|
|
334
|
+
readonly kind: string;
|
|
335
|
+
readonly enforcement: "advisory" | "backend" | "provider";
|
|
336
|
+
readonly value: string | number;
|
|
337
|
+
}[];
|
|
338
|
+
} | {
|
|
339
|
+
_tag: "Blocks";
|
|
340
|
+
partBytes: number;
|
|
341
|
+
completed: readonly number[];
|
|
342
|
+
expiresAt: number;
|
|
343
|
+
constraints: {
|
|
344
|
+
readonly kind: string;
|
|
345
|
+
readonly enforcement: "advisory" | "backend" | "provider";
|
|
346
|
+
readonly value: string | number;
|
|
347
|
+
}[];
|
|
348
|
+
} | {
|
|
349
|
+
_tag: "Resumable";
|
|
350
|
+
protocol: "gcs" | "tus";
|
|
351
|
+
url: string;
|
|
352
|
+
headers: {
|
|
353
|
+
readonly [x: string]: string;
|
|
354
|
+
};
|
|
355
|
+
offset: number;
|
|
356
|
+
chunkBytes: number;
|
|
357
|
+
expiresAt: number;
|
|
358
|
+
constraints: {
|
|
359
|
+
readonly kind: string;
|
|
360
|
+
readonly enforcement: "advisory" | "backend" | "provider";
|
|
361
|
+
readonly value: string | number;
|
|
362
|
+
}[];
|
|
363
|
+
} | {
|
|
364
|
+
_tag: "Proxy";
|
|
365
|
+
expiresAt: number;
|
|
366
|
+
constraints: {
|
|
367
|
+
readonly kind: string;
|
|
368
|
+
readonly enforcement: "advisory" | "backend" | "provider";
|
|
369
|
+
readonly value: string | number;
|
|
370
|
+
}[];
|
|
371
|
+
}>;
|
|
372
|
+
}, UploadFailure, never>;
|
|
373
|
+
part: (input: {
|
|
374
|
+
readonly actor: UploadActor;
|
|
375
|
+
readonly uploadId: string;
|
|
376
|
+
readonly partNumber: number;
|
|
377
|
+
readonly sha256?: string | undefined;
|
|
378
|
+
}) => Effect.Effect<{
|
|
379
|
+
version: 1;
|
|
380
|
+
id: string;
|
|
381
|
+
grant: Redacted.Redacted<{
|
|
382
|
+
_tag: "SignedRequest";
|
|
383
|
+
method: "PUT";
|
|
384
|
+
url: string;
|
|
385
|
+
headers: {
|
|
386
|
+
readonly [x: string]: string;
|
|
387
|
+
};
|
|
388
|
+
expiresAt: number;
|
|
389
|
+
partReceipt?: string | undefined;
|
|
390
|
+
constraints: {
|
|
391
|
+
readonly kind: string;
|
|
392
|
+
readonly enforcement: "advisory" | "backend" | "provider";
|
|
393
|
+
readonly value: string | number;
|
|
394
|
+
}[];
|
|
395
|
+
} | {
|
|
396
|
+
_tag: "PostForm";
|
|
397
|
+
url: string;
|
|
398
|
+
fields: {
|
|
399
|
+
readonly [x: string]: string;
|
|
400
|
+
};
|
|
401
|
+
expiresAt: number;
|
|
402
|
+
constraints: {
|
|
403
|
+
readonly kind: string;
|
|
404
|
+
readonly enforcement: "advisory" | "backend" | "provider";
|
|
405
|
+
readonly value: string | number;
|
|
406
|
+
}[];
|
|
407
|
+
} | {
|
|
408
|
+
_tag: "Multipart";
|
|
409
|
+
partBytes: number;
|
|
410
|
+
checksum?: "sha256" | undefined;
|
|
411
|
+
expiresAt: number;
|
|
412
|
+
completed: readonly {
|
|
413
|
+
readonly partNumber: number;
|
|
414
|
+
readonly etag: string;
|
|
415
|
+
}[];
|
|
416
|
+
constraints: {
|
|
417
|
+
readonly kind: string;
|
|
418
|
+
readonly enforcement: "advisory" | "backend" | "provider";
|
|
419
|
+
readonly value: string | number;
|
|
420
|
+
}[];
|
|
421
|
+
} | {
|
|
422
|
+
_tag: "Blocks";
|
|
423
|
+
partBytes: number;
|
|
424
|
+
completed: readonly number[];
|
|
425
|
+
expiresAt: number;
|
|
426
|
+
constraints: {
|
|
427
|
+
readonly kind: string;
|
|
428
|
+
readonly enforcement: "advisory" | "backend" | "provider";
|
|
429
|
+
readonly value: string | number;
|
|
430
|
+
}[];
|
|
431
|
+
} | {
|
|
432
|
+
_tag: "Resumable";
|
|
433
|
+
protocol: "gcs" | "tus";
|
|
434
|
+
url: string;
|
|
435
|
+
headers: {
|
|
436
|
+
readonly [x: string]: string;
|
|
437
|
+
};
|
|
438
|
+
offset: number;
|
|
439
|
+
chunkBytes: number;
|
|
440
|
+
expiresAt: number;
|
|
441
|
+
constraints: {
|
|
442
|
+
readonly kind: string;
|
|
443
|
+
readonly enforcement: "advisory" | "backend" | "provider";
|
|
444
|
+
readonly value: string | number;
|
|
445
|
+
}[];
|
|
446
|
+
} | {
|
|
447
|
+
_tag: "Proxy";
|
|
448
|
+
expiresAt: number;
|
|
449
|
+
constraints: {
|
|
450
|
+
readonly kind: string;
|
|
451
|
+
readonly enforcement: "advisory" | "backend" | "provider";
|
|
452
|
+
readonly value: string | number;
|
|
453
|
+
}[];
|
|
454
|
+
}>;
|
|
455
|
+
}, UploadFailure, never>;
|
|
456
|
+
complete: (input: {
|
|
457
|
+
readonly actor: UploadActor;
|
|
458
|
+
readonly uploadId: string;
|
|
459
|
+
readonly parts?: (typeof PartsRequest.Type)["parts"];
|
|
460
|
+
}) => Effect.Effect<{
|
|
461
|
+
readonly version: 1;
|
|
462
|
+
readonly id: string;
|
|
463
|
+
readonly state: "aborted" | "initiating" | "published" | "publishing" | "ready" | "rejected" | "reserving" | "uploading" | "verifying";
|
|
464
|
+
readonly expiresAt: number;
|
|
465
|
+
readonly cleanupPending: boolean;
|
|
466
|
+
readonly result?: unknown;
|
|
467
|
+
}, UploadFailure, never>;
|
|
468
|
+
reconcile: (input: {
|
|
469
|
+
readonly actor: UploadActor;
|
|
470
|
+
readonly uploadId: string;
|
|
471
|
+
}) => Effect.Effect<{
|
|
472
|
+
readonly version: 1;
|
|
473
|
+
readonly id: string;
|
|
474
|
+
readonly state: "aborted" | "initiating" | "published" | "publishing" | "ready" | "rejected" | "reserving" | "uploading" | "verifying";
|
|
475
|
+
readonly expiresAt: number;
|
|
476
|
+
readonly cleanupPending: boolean;
|
|
477
|
+
readonly result?: unknown;
|
|
478
|
+
}, UploadFailure, never>;
|
|
479
|
+
observe: (input: {
|
|
480
|
+
readonly actor: UploadActor;
|
|
481
|
+
readonly uploadId: string;
|
|
482
|
+
readonly event: StorageEvent;
|
|
483
|
+
}) => Effect.Effect<{
|
|
484
|
+
readonly version: 1;
|
|
485
|
+
readonly id: string;
|
|
486
|
+
readonly state: "aborted" | "initiating" | "published" | "publishing" | "ready" | "rejected" | "reserving" | "uploading" | "verifying";
|
|
487
|
+
readonly expiresAt: number;
|
|
488
|
+
readonly cleanupPending: boolean;
|
|
489
|
+
readonly result?: unknown;
|
|
490
|
+
}, UploadFailure, never>;
|
|
491
|
+
abort: (input: {
|
|
492
|
+
readonly actor: UploadActor;
|
|
493
|
+
readonly uploadId: string;
|
|
494
|
+
}) => Effect.Effect<{
|
|
495
|
+
readonly version: 1;
|
|
496
|
+
readonly id: string;
|
|
497
|
+
readonly state: "aborted" | "initiating" | "published" | "publishing" | "ready" | "rejected" | "reserving" | "uploading" | "verifying";
|
|
498
|
+
readonly expiresAt: number;
|
|
499
|
+
readonly cleanupPending: boolean;
|
|
500
|
+
readonly result?: unknown;
|
|
501
|
+
}, UploadFailure, never>;
|
|
502
|
+
content: <E = never, ER = never>(input: {
|
|
503
|
+
readonly actor: UploadActor;
|
|
504
|
+
readonly uploadId: string;
|
|
505
|
+
readonly body: UploadBody<E, ER>;
|
|
506
|
+
}) => Effect.Effect<{
|
|
507
|
+
readonly version: 1;
|
|
508
|
+
readonly id: string;
|
|
509
|
+
readonly state: "aborted" | "initiating" | "published" | "publishing" | "ready" | "rejected" | "reserving" | "uploading" | "verifying";
|
|
510
|
+
readonly expiresAt: number;
|
|
511
|
+
readonly cleanupPending: boolean;
|
|
512
|
+
readonly result?: unknown;
|
|
513
|
+
}, E | StorageError | UploadError, ER>;
|
|
514
|
+
}, UploadError, R | Storage | UploadGrantDriver | UploadStore>;
|
|
515
|
+
static layer<R>(options: UploadOptions<R>): Layer.Layer<Uploads, UploadError, Storage | UploadGrantDriver | UploadStore | Exclude<R, import("effect/Scope").Scope>>;
|
|
516
|
+
}
|
|
517
|
+
export { GrantResponse, PartRequest, PartsRequest, PublishedObject, SignedUploadGrants, type UploadAction, UploadActor, type UploadDecision, UploadError, UploadErrorCode, UploadFile, UploadGrant, UploadGrantDriver, type UploadGrantDriverService, UploadId, UploadInput, type UploadOptions, UploadRecord, UploadRequest, UploadState, UploadStatus, UploadStore, type UploadStoreOptions, failUpload };
|
|
518
|
+
//# sourceMappingURL=uploads.d.ts.map
|