@effect-kit/storage 0.0.0-stage → 0.1.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/CHANGELOG.md +18 -0
- 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,116 @@
|
|
|
1
|
+
import { StorageError, storageError } from "../core/errors.js";
|
|
2
|
+
import "../index.js";
|
|
3
|
+
import { Context, Effect, Layer, Redacted } from "effect";
|
|
4
|
+
import { HttpClient } from "effect/http";
|
|
5
|
+
export interface AzureAccountConfig {
|
|
6
|
+
readonly subscriptionId: string;
|
|
7
|
+
readonly resourceGroup: string;
|
|
8
|
+
readonly account: string;
|
|
9
|
+
readonly apiVersion: string;
|
|
10
|
+
readonly endpoint?: string;
|
|
11
|
+
readonly accessToken: Effect.Effect<Redacted.Redacted<string>, ReturnType<typeof storageError>>;
|
|
12
|
+
}
|
|
13
|
+
declare const AzureAccountAdministration_base: Context.ServiceClass<AzureAccountAdministration, "@effect-kit/storage/azure/AzureAccountAdministration", {
|
|
14
|
+
getAccount: () => Effect.Effect<{
|
|
15
|
+
_tag: "Accepted" | "Observed";
|
|
16
|
+
resource: unknown;
|
|
17
|
+
}, StorageError, never>;
|
|
18
|
+
getBlobConfiguration: () => Effect.Effect<{
|
|
19
|
+
_tag: "Accepted" | "Observed";
|
|
20
|
+
resource: unknown;
|
|
21
|
+
}, StorageError, never>;
|
|
22
|
+
getLifecycle: () => Effect.Effect<{
|
|
23
|
+
_tag: "Accepted" | "Observed";
|
|
24
|
+
resource: unknown;
|
|
25
|
+
}, StorageError, never>;
|
|
26
|
+
getReplication: (input: {
|
|
27
|
+
readonly policyId: string;
|
|
28
|
+
}) => Effect.Effect<{
|
|
29
|
+
_tag: "Accepted" | "Observed";
|
|
30
|
+
resource: unknown;
|
|
31
|
+
}, StorageError, never>;
|
|
32
|
+
setBlobConfiguration: (input: {
|
|
33
|
+
readonly properties: Readonly<Record<string, unknown>>;
|
|
34
|
+
readonly intent: "replace-blob-service-configuration";
|
|
35
|
+
}) => Effect.Effect<{
|
|
36
|
+
_tag: "Accepted" | "Observed";
|
|
37
|
+
resource: unknown;
|
|
38
|
+
}, StorageError, never>;
|
|
39
|
+
setAccountProtection: (input: {
|
|
40
|
+
readonly properties: Readonly<Record<string, unknown>>;
|
|
41
|
+
readonly intent: "change-account-protection";
|
|
42
|
+
}) => Effect.Effect<{
|
|
43
|
+
_tag: "Accepted" | "Observed";
|
|
44
|
+
resource: unknown;
|
|
45
|
+
}, StorageError, never>;
|
|
46
|
+
setLifecycle: (input: {
|
|
47
|
+
readonly rules: ReadonlyArray<Readonly<Record<string, unknown>>>;
|
|
48
|
+
readonly intent: "replace-lifecycle-policy";
|
|
49
|
+
}) => Effect.Effect<{
|
|
50
|
+
_tag: "Accepted" | "Observed";
|
|
51
|
+
resource: unknown;
|
|
52
|
+
}, StorageError, never>;
|
|
53
|
+
setReplication: (input: {
|
|
54
|
+
readonly policyId: string;
|
|
55
|
+
readonly policy: Readonly<Record<string, unknown>>;
|
|
56
|
+
readonly intent: "replace-replication-policy";
|
|
57
|
+
}) => Effect.Effect<{
|
|
58
|
+
_tag: "Accepted" | "Observed";
|
|
59
|
+
resource: unknown;
|
|
60
|
+
}, StorageError, never>;
|
|
61
|
+
}>;
|
|
62
|
+
export declare class AzureAccountAdministration extends AzureAccountAdministration_base {
|
|
63
|
+
static readonly make: (settings: AzureAccountConfig) => Effect.Effect<{
|
|
64
|
+
getAccount: () => Effect.Effect<{
|
|
65
|
+
_tag: "Accepted" | "Observed";
|
|
66
|
+
resource: unknown;
|
|
67
|
+
}, StorageError, never>;
|
|
68
|
+
getBlobConfiguration: () => Effect.Effect<{
|
|
69
|
+
_tag: "Accepted" | "Observed";
|
|
70
|
+
resource: unknown;
|
|
71
|
+
}, StorageError, never>;
|
|
72
|
+
getLifecycle: () => Effect.Effect<{
|
|
73
|
+
_tag: "Accepted" | "Observed";
|
|
74
|
+
resource: unknown;
|
|
75
|
+
}, StorageError, never>;
|
|
76
|
+
getReplication: (input: {
|
|
77
|
+
readonly policyId: string;
|
|
78
|
+
}) => Effect.Effect<{
|
|
79
|
+
_tag: "Accepted" | "Observed";
|
|
80
|
+
resource: unknown;
|
|
81
|
+
}, StorageError, never>;
|
|
82
|
+
setBlobConfiguration: (input: {
|
|
83
|
+
readonly properties: Readonly<Record<string, unknown>>;
|
|
84
|
+
readonly intent: "replace-blob-service-configuration";
|
|
85
|
+
}) => Effect.Effect<{
|
|
86
|
+
_tag: "Accepted" | "Observed";
|
|
87
|
+
resource: unknown;
|
|
88
|
+
}, StorageError, never>;
|
|
89
|
+
setAccountProtection: (input: {
|
|
90
|
+
readonly properties: Readonly<Record<string, unknown>>;
|
|
91
|
+
readonly intent: "change-account-protection";
|
|
92
|
+
}) => Effect.Effect<{
|
|
93
|
+
_tag: "Accepted" | "Observed";
|
|
94
|
+
resource: unknown;
|
|
95
|
+
}, StorageError, never>;
|
|
96
|
+
setLifecycle: (input: {
|
|
97
|
+
readonly rules: ReadonlyArray<Readonly<Record<string, unknown>>>;
|
|
98
|
+
readonly intent: "replace-lifecycle-policy";
|
|
99
|
+
}) => Effect.Effect<{
|
|
100
|
+
_tag: "Accepted" | "Observed";
|
|
101
|
+
resource: unknown;
|
|
102
|
+
}, StorageError, never>;
|
|
103
|
+
setReplication: (input: {
|
|
104
|
+
readonly policyId: string;
|
|
105
|
+
readonly policy: Readonly<Record<string, unknown>>;
|
|
106
|
+
readonly intent: "replace-replication-policy";
|
|
107
|
+
}) => Effect.Effect<{
|
|
108
|
+
_tag: "Accepted" | "Observed";
|
|
109
|
+
resource: unknown;
|
|
110
|
+
}, StorageError, never>;
|
|
111
|
+
}, StorageError, HttpClient.HttpClient>;
|
|
112
|
+
static layerHttp(config: AzureAccountConfig): Layer.Layer<AzureAccountAdministration, StorageError, HttpClient.HttpClient>;
|
|
113
|
+
static layer(config: AzureAccountConfig): Layer.Layer<AzureAccountAdministration, StorageError, never>;
|
|
114
|
+
}
|
|
115
|
+
export {};
|
|
116
|
+
//# sourceMappingURL=account-admin.d.ts.map
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { storageError } from "../core/errors.js";
|
|
2
|
+
import { decodeRequest } from "../internal/request-validation.js";
|
|
3
|
+
import { controlEndpoint, controlRequest } from "../internal/http/control-plane.js";
|
|
4
|
+
import { Context, Effect, Layer, Redacted, Schema } from "effect";
|
|
5
|
+
import { FetchHttpClient, HttpClient } from "effect/http";
|
|
6
|
+
|
|
7
|
+
// src/providers/azure/account-admin.ts
|
|
8
|
+
const Native = Schema.Record(Schema.String, Schema.Unknown);
|
|
9
|
+
const make = Effect.fnUntraced(function* (settings) {
|
|
10
|
+
const config = yield* decodeRequest(Schema.Struct({
|
|
11
|
+
subscriptionId: Schema.NonEmptyString,
|
|
12
|
+
resourceGroup: Schema.NonEmptyString,
|
|
13
|
+
account: Schema.String.check(Schema.isPattern(/^[a-z0-9]{3,24}$/u)),
|
|
14
|
+
apiVersion: Schema.String.check(Schema.isPattern(/^\d{4}-\d{2}-\d{2}(?:-preview)?$/u)),
|
|
15
|
+
endpoint: Schema.optional(Schema.String),
|
|
16
|
+
accessToken: Schema.declare((value) => Effect.isEffect(value))
|
|
17
|
+
}), settings, "makeAccountAdministration", "azure");
|
|
18
|
+
const endpoint = yield* controlEndpoint(config.endpoint ?? "https://management.azure.com", "azure");
|
|
19
|
+
const http = yield* HttpClient.HttpClient;
|
|
20
|
+
const root = `${endpoint}/subscriptions/${encodeURIComponent(config.subscriptionId)}/resourceGroups/${encodeURIComponent(config.resourceGroup)}/providers/Microsoft.Storage/storageAccounts/${config.account}`;
|
|
21
|
+
const call = Effect.fnUntraced(function* (operation, method, suffix, properties) {
|
|
22
|
+
const token = yield* config.accessToken;
|
|
23
|
+
if (!Redacted.isRedacted(token) || !Redacted.value(token) || /[\r\n]/u.test(Redacted.value(token))) return yield* storageError(operation, "azure", { _tag: "AccessDenied" }, "not-started");
|
|
24
|
+
const output = yield* controlRequest(http, "azure", operation, `${root}${suffix}?api-version=${config.apiVersion}`, method, { authorization: `Bearer ${Redacted.value(token)}` }, properties === void 0 ? void 0 : { properties });
|
|
25
|
+
return {
|
|
26
|
+
_tag: method === "GET" ? "Observed" : "Accepted",
|
|
27
|
+
resource: output
|
|
28
|
+
};
|
|
29
|
+
});
|
|
30
|
+
return {
|
|
31
|
+
getAccount: () => call("getAccount", "GET", ""),
|
|
32
|
+
getBlobConfiguration: () => call("getBlobConfiguration", "GET", "/blobServices/default"),
|
|
33
|
+
getLifecycle: () => call("getLifecycle", "GET", "/managementPolicies/default"),
|
|
34
|
+
getReplication: (input) => decodeRequest(Schema.NonEmptyString, input.policyId, "getReplication", "azure").pipe(Effect.flatMap((id) => call("getReplication", "GET", `/objectReplicationPolicies/${encodeURIComponent(id)}`))),
|
|
35
|
+
setBlobConfiguration: Effect.fnUntraced(function* (input) {
|
|
36
|
+
const value = yield* decodeRequest(Schema.Struct({
|
|
37
|
+
properties: Schema.Struct({
|
|
38
|
+
cors: Schema.optional(Native),
|
|
39
|
+
isVersioningEnabled: Schema.optional(Schema.Boolean),
|
|
40
|
+
deleteRetentionPolicy: Schema.optional(Native),
|
|
41
|
+
containerDeleteRetentionPolicy: Schema.optional(Native),
|
|
42
|
+
restorePolicy: Schema.optional(Native),
|
|
43
|
+
changeFeed: Schema.optional(Native),
|
|
44
|
+
defaultServiceVersion: Schema.optional(Schema.String)
|
|
45
|
+
}),
|
|
46
|
+
intent: Schema.Literal("replace-blob-service-configuration")
|
|
47
|
+
}), input, "setBlobConfiguration", "azure", true);
|
|
48
|
+
return yield* call("setBlobConfiguration", "PUT", "/blobServices/default", value.properties);
|
|
49
|
+
}),
|
|
50
|
+
setAccountProtection: Effect.fnUntraced(function* (input) {
|
|
51
|
+
const value = yield* decodeRequest(Schema.Struct({
|
|
52
|
+
properties: Schema.Struct({
|
|
53
|
+
allowBlobPublicAccess: Schema.optional(Schema.Boolean),
|
|
54
|
+
minimumTlsVersion: Schema.optional(Schema.Literals(["TLS1_2", "TLS1_3"])),
|
|
55
|
+
encryption: Schema.optional(Native),
|
|
56
|
+
publicNetworkAccess: Schema.optional(Schema.Literals(["Enabled", "Disabled"]))
|
|
57
|
+
}),
|
|
58
|
+
intent: Schema.Literal("change-account-protection")
|
|
59
|
+
}), input, "setAccountProtection", "azure", true);
|
|
60
|
+
return yield* call("setAccountProtection", "PATCH", "", value.properties);
|
|
61
|
+
}),
|
|
62
|
+
setLifecycle: Effect.fnUntraced(function* (input) {
|
|
63
|
+
const value = yield* decodeRequest(Schema.Struct({
|
|
64
|
+
rules: Schema.Array(Native),
|
|
65
|
+
intent: Schema.Literal("replace-lifecycle-policy")
|
|
66
|
+
}), input, "setLifecycle", "azure", true);
|
|
67
|
+
return yield* call("setLifecycle", "PUT", "/managementPolicies/default", { policy: { rules: value.rules } });
|
|
68
|
+
}),
|
|
69
|
+
setReplication: Effect.fnUntraced(function* (input) {
|
|
70
|
+
const value = yield* decodeRequest(Schema.Struct({
|
|
71
|
+
policyId: Schema.NonEmptyString,
|
|
72
|
+
policy: Native,
|
|
73
|
+
intent: Schema.Literal("replace-replication-policy")
|
|
74
|
+
}), input, "setReplication", "azure", true);
|
|
75
|
+
return yield* call("setReplication", "PUT", `/objectReplicationPolicies/${encodeURIComponent(value.policyId)}`, value.policy);
|
|
76
|
+
})
|
|
77
|
+
};
|
|
78
|
+
});
|
|
79
|
+
var AzureAccountAdministration = class AzureAccountAdministration extends Context.Service()("@effect-kit/storage/azure/AzureAccountAdministration") {
|
|
80
|
+
static make = make;
|
|
81
|
+
static layerHttp(config) {
|
|
82
|
+
return Layer.effect(AzureAccountAdministration, make(config));
|
|
83
|
+
}
|
|
84
|
+
static layer(config) {
|
|
85
|
+
return AzureAccountAdministration.layerHttp(config).pipe(Layer.provide(FetchHttpClient.layer));
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
|
|
89
|
+
export { AzureAccountAdministration };
|
|
90
|
+
//# sourceMappingURL=account-admin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"account-admin.js","names":[],"sources":["../../src/providers/azure/account-admin.ts"],"sourcesContent":["import { Context, Effect, Layer, Redacted, Schema } from \"effect\";\nimport { FetchHttpClient, HttpClient } from \"effect/http\";\n\nimport { storageError } from \"../../core/errors.js\";\nimport { controlEndpoint, controlRequest } from \"../../internal/http/control-plane.js\";\nimport { decodeRequest } from \"../../internal/request-validation.js\";\n\nexport interface AzureAccountConfig {\n readonly subscriptionId: string;\n readonly resourceGroup: string;\n readonly account: string;\n readonly apiVersion: string;\n readonly endpoint?: string;\n readonly accessToken: Effect.Effect<Redacted.Redacted<string>, ReturnType<typeof storageError>>;\n}\nconst Native = Schema.Record(Schema.String, Schema.Unknown);\nconst make = Effect.fnUntraced(function* (settings: AzureAccountConfig) {\n const config = yield* decodeRequest(\n Schema.Struct({\n subscriptionId: Schema.NonEmptyString,\n resourceGroup: Schema.NonEmptyString,\n account: Schema.String.check(Schema.isPattern(/^[a-z0-9]{3,24}$/u)),\n apiVersion: Schema.String.check(Schema.isPattern(/^\\d{4}-\\d{2}-\\d{2}(?:-preview)?$/u)),\n endpoint: Schema.optional(Schema.String),\n accessToken: Schema.declare<AzureAccountConfig[\"accessToken\"]>(\n (value): value is AzureAccountConfig[\"accessToken\"] => Effect.isEffect(value),\n ),\n }),\n settings,\n \"makeAccountAdministration\",\n \"azure\",\n );\n const endpoint = yield* controlEndpoint(\n config.endpoint ?? \"https://management.azure.com\",\n \"azure\",\n );\n const http = yield* HttpClient.HttpClient;\n const root = `${endpoint}/subscriptions/${encodeURIComponent(config.subscriptionId)}/resourceGroups/${encodeURIComponent(config.resourceGroup)}/providers/Microsoft.Storage/storageAccounts/${config.account}`;\n const call = Effect.fnUntraced(function* (\n operation: string,\n method: \"GET\" | \"PUT\" | \"PATCH\",\n suffix: string,\n properties?: unknown,\n ) {\n const token = yield* config.accessToken;\n if (\n !Redacted.isRedacted(token) ||\n !Redacted.value(token) ||\n /[\\r\\n]/u.test(Redacted.value(token))\n )\n return yield* storageError(operation, \"azure\", { _tag: \"AccessDenied\" }, \"not-started\");\n const output = yield* controlRequest(\n http,\n \"azure\",\n operation,\n `${root}${suffix}?api-version=${config.apiVersion}`,\n method,\n { authorization: `Bearer ${Redacted.value(token)}` },\n properties === undefined ? undefined : { properties },\n );\n return {\n _tag: method === \"GET\" ? (\"Observed\" as const) : (\"Accepted\" as const),\n resource: output,\n };\n });\n return {\n getAccount: () => call(\"getAccount\", \"GET\", \"\"),\n getBlobConfiguration: () => call(\"getBlobConfiguration\", \"GET\", \"/blobServices/default\"),\n getLifecycle: () => call(\"getLifecycle\", \"GET\", \"/managementPolicies/default\"),\n getReplication: (input: { readonly policyId: string }) =>\n decodeRequest(Schema.NonEmptyString, input.policyId, \"getReplication\", \"azure\").pipe(\n Effect.flatMap((id) =>\n call(\"getReplication\", \"GET\", `/objectReplicationPolicies/${encodeURIComponent(id)}`),\n ),\n ),\n setBlobConfiguration: Effect.fnUntraced(function* (input: {\n readonly properties: Readonly<Record<string, unknown>>;\n readonly intent: \"replace-blob-service-configuration\";\n }) {\n const value = yield* decodeRequest(\n Schema.Struct({\n properties: Schema.Struct({\n cors: Schema.optional(Native),\n isVersioningEnabled: Schema.optional(Schema.Boolean),\n deleteRetentionPolicy: Schema.optional(Native),\n containerDeleteRetentionPolicy: Schema.optional(Native),\n restorePolicy: Schema.optional(Native),\n changeFeed: Schema.optional(Native),\n defaultServiceVersion: Schema.optional(Schema.String),\n }),\n intent: Schema.Literal(\"replace-blob-service-configuration\"),\n }),\n input,\n \"setBlobConfiguration\",\n \"azure\",\n true,\n );\n return yield* call(\"setBlobConfiguration\", \"PUT\", \"/blobServices/default\", value.properties);\n }),\n setAccountProtection: Effect.fnUntraced(function* (input: {\n readonly properties: Readonly<Record<string, unknown>>;\n readonly intent: \"change-account-protection\";\n }) {\n const value = yield* decodeRequest(\n Schema.Struct({\n properties: Schema.Struct({\n allowBlobPublicAccess: Schema.optional(Schema.Boolean),\n minimumTlsVersion: Schema.optional(Schema.Literals([\"TLS1_2\", \"TLS1_3\"])),\n encryption: Schema.optional(Native),\n publicNetworkAccess: Schema.optional(Schema.Literals([\"Enabled\", \"Disabled\"])),\n }),\n intent: Schema.Literal(\"change-account-protection\"),\n }),\n input,\n \"setAccountProtection\",\n \"azure\",\n true,\n );\n return yield* call(\"setAccountProtection\", \"PATCH\", \"\", value.properties);\n }),\n setLifecycle: Effect.fnUntraced(function* (input: {\n readonly rules: ReadonlyArray<Readonly<Record<string, unknown>>>;\n readonly intent: \"replace-lifecycle-policy\";\n }) {\n const value = yield* decodeRequest(\n Schema.Struct({\n rules: Schema.Array(Native),\n intent: Schema.Literal(\"replace-lifecycle-policy\"),\n }),\n input,\n \"setLifecycle\",\n \"azure\",\n true,\n );\n return yield* call(\"setLifecycle\", \"PUT\", \"/managementPolicies/default\", {\n policy: { rules: value.rules },\n });\n }),\n setReplication: Effect.fnUntraced(function* (input: {\n readonly policyId: string;\n readonly policy: Readonly<Record<string, unknown>>;\n readonly intent: \"replace-replication-policy\";\n }) {\n const value = yield* decodeRequest(\n Schema.Struct({\n policyId: Schema.NonEmptyString,\n policy: Native,\n intent: Schema.Literal(\"replace-replication-policy\"),\n }),\n input,\n \"setReplication\",\n \"azure\",\n true,\n );\n return yield* call(\n \"setReplication\",\n \"PUT\",\n `/objectReplicationPolicies/${encodeURIComponent(value.policyId)}`,\n value.policy,\n );\n }),\n };\n});\nexport class AzureAccountAdministration extends Context.Service<\n AzureAccountAdministration,\n Effect.Success<ReturnType<typeof make>>\n>()(\"@effect-kit/storage/azure/AzureAccountAdministration\") {\n static readonly make = make;\n static layerHttp(config: AzureAccountConfig) {\n return Layer.effect(AzureAccountAdministration, make(config));\n }\n static layer(config: AzureAccountConfig) {\n return AzureAccountAdministration.layerHttp(config).pipe(Layer.provide(FetchHttpClient.layer));\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { StorageError } from "../core/errors.js";
|
|
2
|
+
import "../index.js";
|
|
3
|
+
import { AzureConfig } from "../providers/azure/config.js";
|
|
4
|
+
import { Context, Effect, Layer, Redacted } from "effect";
|
|
5
|
+
import { BlobServiceProperties } from "@azure/storage-blob";
|
|
6
|
+
export interface AzureAdminConfig {
|
|
7
|
+
readonly serviceUrl: string | Redacted.Redacted<string>;
|
|
8
|
+
readonly credential?: AzureConfig["credential"];
|
|
9
|
+
}
|
|
10
|
+
declare const AzureAdministration_base: Context.ServiceClass<AzureAdministration, "@effect-kit/storage/azure/AzureAdministration", {
|
|
11
|
+
listPage: (input?: {
|
|
12
|
+
readonly cursor?: string;
|
|
13
|
+
readonly limit?: number;
|
|
14
|
+
} | undefined) => Effect.Effect<{
|
|
15
|
+
containers: any;
|
|
16
|
+
cursor: any;
|
|
17
|
+
}, StorageError, never>;
|
|
18
|
+
head: (input: {
|
|
19
|
+
readonly container: string;
|
|
20
|
+
}) => Effect.Effect<import("@azure/storage-blob").ContainerGetPropertiesResponse, StorageError, never>;
|
|
21
|
+
create: (input: {
|
|
22
|
+
readonly container: string;
|
|
23
|
+
}) => Effect.Effect<{
|
|
24
|
+
_tag: "Accepted";
|
|
25
|
+
}, StorageError, never>;
|
|
26
|
+
deleteEmpty: (_input: {
|
|
27
|
+
readonly container: string;
|
|
28
|
+
}) => Effect.Effect<never, StorageError, never>;
|
|
29
|
+
configuration: {
|
|
30
|
+
get: () => Effect.Effect<import("@azure/storage-blob").ServiceGetPropertiesResponse, StorageError, never>;
|
|
31
|
+
set: (input: {
|
|
32
|
+
readonly properties: BlobServiceProperties;
|
|
33
|
+
readonly intent: "replace-service-configuration";
|
|
34
|
+
}) => Effect.Effect<import("@azure/storage-blob").ServiceSetPropertiesResponse, StorageError, never>;
|
|
35
|
+
};
|
|
36
|
+
}>;
|
|
37
|
+
export declare class AzureAdministration extends AzureAdministration_base {
|
|
38
|
+
static readonly make: (config: AzureAdminConfig) => Effect.Effect<{
|
|
39
|
+
listPage: (input?: {
|
|
40
|
+
readonly cursor?: string;
|
|
41
|
+
readonly limit?: number;
|
|
42
|
+
} | undefined) => Effect.Effect<{
|
|
43
|
+
containers: any;
|
|
44
|
+
cursor: any;
|
|
45
|
+
}, StorageError, never>;
|
|
46
|
+
head: (input: {
|
|
47
|
+
readonly container: string;
|
|
48
|
+
}) => Effect.Effect<import("@azure/storage-blob").ContainerGetPropertiesResponse, StorageError, never>;
|
|
49
|
+
create: (input: {
|
|
50
|
+
readonly container: string;
|
|
51
|
+
}) => Effect.Effect<{
|
|
52
|
+
_tag: "Accepted";
|
|
53
|
+
}, StorageError, never>;
|
|
54
|
+
deleteEmpty: (_input: {
|
|
55
|
+
readonly container: string;
|
|
56
|
+
}) => Effect.Effect<never, StorageError, never>;
|
|
57
|
+
configuration: {
|
|
58
|
+
get: () => Effect.Effect<import("@azure/storage-blob").ServiceGetPropertiesResponse, StorageError, never>;
|
|
59
|
+
set: (input: {
|
|
60
|
+
readonly properties: BlobServiceProperties;
|
|
61
|
+
readonly intent: "replace-service-configuration";
|
|
62
|
+
}) => Effect.Effect<import("@azure/storage-blob").ServiceSetPropertiesResponse, StorageError, never>;
|
|
63
|
+
};
|
|
64
|
+
}, StorageError, never>;
|
|
65
|
+
static layer(config: AzureAdminConfig): Layer.Layer<AzureAdministration, StorageError, never>;
|
|
66
|
+
}
|
|
67
|
+
export {};
|
|
68
|
+
//# sourceMappingURL=admin.d.ts.map
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { storageError } from "../core/errors.js";
|
|
2
|
+
import { decodeRequest } from "../internal/request-validation.js";
|
|
3
|
+
import { providerError } from "../internal/node/provider-errors.js";
|
|
4
|
+
import { controlEndpoint } from "../internal/http/control-plane.js";
|
|
5
|
+
import { Context, Effect, Layer, Redacted, Schema } from "effect";
|
|
6
|
+
import { BlobServiceClient } from "@azure/storage-blob";
|
|
7
|
+
|
|
8
|
+
// src/providers/azure/admin.ts
|
|
9
|
+
const Container = Schema.String.check(Schema.isPattern(/^(?!.*--)[a-z0-9][a-z0-9-]{1,61}[a-z0-9]$/u));
|
|
10
|
+
const call = (operation, mutation, request) => Effect.tryPromise({
|
|
11
|
+
try: request,
|
|
12
|
+
catch: (error) => providerError("azure", operation, mutation, error)
|
|
13
|
+
}).pipe(Effect.timeoutOrElse({
|
|
14
|
+
duration: "30 seconds",
|
|
15
|
+
orElse: () => Effect.fail(providerError("azure", operation, mutation, void 0))
|
|
16
|
+
}));
|
|
17
|
+
const make = Effect.fnUntraced(function* (config) {
|
|
18
|
+
const url = yield* Effect.try({
|
|
19
|
+
try: () => new URL(Redacted.isRedacted(config.serviceUrl) ? Redacted.value(config.serviceUrl) : config.serviceUrl),
|
|
20
|
+
catch: () => storageError("makeAdministration", "azure", {
|
|
21
|
+
_tag: "InvalidConfiguration",
|
|
22
|
+
field: "serviceUrl"
|
|
23
|
+
})
|
|
24
|
+
});
|
|
25
|
+
yield* controlEndpoint(url.origin, "azure");
|
|
26
|
+
if (url.username || url.password || url.hash || !config.credential && (!Redacted.isRedacted(config.serviceUrl) || !url.search)) return yield* storageError("makeAdministration", "azure", {
|
|
27
|
+
_tag: "InvalidConfiguration",
|
|
28
|
+
field: "management-credential"
|
|
29
|
+
});
|
|
30
|
+
const client = yield* Effect.try({
|
|
31
|
+
try: () => new BlobServiceClient(url.href, config.credential, { retryOptions: { maxTries: 1 } }),
|
|
32
|
+
catch: () => storageError("makeAdministration", "azure", {
|
|
33
|
+
_tag: "InvalidConfiguration",
|
|
34
|
+
field: "client"
|
|
35
|
+
})
|
|
36
|
+
});
|
|
37
|
+
return {
|
|
38
|
+
listPage: Effect.fnUntraced(function* (input = {}) {
|
|
39
|
+
const value = yield* decodeRequest(Schema.Struct({
|
|
40
|
+
cursor: Schema.optional(Schema.NonEmptyString),
|
|
41
|
+
limit: Schema.optional(Schema.Int.check(Schema.isBetween({
|
|
42
|
+
minimum: 1,
|
|
43
|
+
maximum: 1e3
|
|
44
|
+
})))
|
|
45
|
+
}), input, "listContainers", "azure");
|
|
46
|
+
const page = yield* call("listContainers", false, (signal) => client.listContainers({ abortSignal: signal }).byPage({
|
|
47
|
+
...value.cursor ? { continuationToken: value.cursor } : {},
|
|
48
|
+
maxPageSize: value.limit ?? 1e3
|
|
49
|
+
}).next());
|
|
50
|
+
return {
|
|
51
|
+
containers: page.value?.containerItems ?? [],
|
|
52
|
+
cursor: page.value?.continuationToken
|
|
53
|
+
};
|
|
54
|
+
}),
|
|
55
|
+
head: Effect.fnUntraced(function* (input) {
|
|
56
|
+
const value = yield* decodeRequest(Schema.Struct({ container: Container }), input, "headContainer", "azure");
|
|
57
|
+
return yield* call("headContainer", false, (signal) => client.getContainerClient(value.container).getProperties({ abortSignal: signal }));
|
|
58
|
+
}),
|
|
59
|
+
create: Effect.fnUntraced(function* (input) {
|
|
60
|
+
const value = yield* decodeRequest(Schema.Struct({ container: Container }), input, "createContainer", "azure", true);
|
|
61
|
+
yield* call("createContainer", true, (signal) => client.getContainerClient(value.container).create({ abortSignal: signal }));
|
|
62
|
+
return { _tag: "Accepted" };
|
|
63
|
+
}),
|
|
64
|
+
deleteEmpty: (_input) => Effect.fail(storageError("deleteEmpty", "azure", {
|
|
65
|
+
_tag: "Unsupported",
|
|
66
|
+
capability: "atomic-nonempty-container-protection"
|
|
67
|
+
}, "not-started")),
|
|
68
|
+
configuration: {
|
|
69
|
+
get: () => call("getServiceProperties", false, (signal) => client.getProperties({ abortSignal: signal })),
|
|
70
|
+
set: (input) => input.intent === "replace-service-configuration" ? call("setServiceProperties", true, (signal) => client.setProperties(input.properties, { abortSignal: signal })) : Effect.fail(storageError("setServiceProperties", "azure", {
|
|
71
|
+
_tag: "InvalidInput",
|
|
72
|
+
field: "intent"
|
|
73
|
+
}, "not-started"))
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
});
|
|
77
|
+
var AzureAdministration = class AzureAdministration extends Context.Service()("@effect-kit/storage/azure/AzureAdministration") {
|
|
78
|
+
static make = make;
|
|
79
|
+
static layer(config) {
|
|
80
|
+
return Layer.effect(AzureAdministration, make(config));
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
export { AzureAdministration };
|
|
85
|
+
//# sourceMappingURL=admin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin.js","names":[],"sources":["../../src/providers/azure/admin.ts"],"sourcesContent":["import { Context, Effect, Layer, Redacted, Schema } from \"effect\";\n\nimport { BlobServiceClient } from \"@azure/storage-blob\";\nimport type { BlobServiceProperties } from \"@azure/storage-blob\";\n\nimport { storageError } from \"../../core/errors.js\";\nimport { controlEndpoint } from \"../../internal/http/control-plane.js\";\nimport { providerError } from \"../../internal/node/provider-errors.js\";\nimport { decodeRequest } from \"../../internal/request-validation.js\";\nimport type { AzureConfig } from \"./config.js\";\n\nexport interface AzureAdminConfig {\n readonly serviceUrl: string | Redacted.Redacted<string>;\n readonly credential?: AzureConfig[\"credential\"];\n}\nconst Container = Schema.String.check(\n Schema.isPattern(/^(?!.*--)[a-z0-9][a-z0-9-]{1,61}[a-z0-9]$/u),\n);\nconst call = <A>(\n operation: string,\n mutation: boolean,\n request: (signal: AbortSignal) => Promise<A>,\n) =>\n Effect.tryPromise({\n try: request,\n catch: (error) => providerError(\"azure\", operation, mutation, error),\n }).pipe(\n Effect.timeoutOrElse({\n duration: \"30 seconds\",\n orElse: () => Effect.fail(providerError(\"azure\", operation, mutation, undefined)),\n }),\n );\n\nconst make = Effect.fnUntraced(function* (config: AzureAdminConfig) {\n const url = yield* Effect.try({\n try: () =>\n new URL(\n Redacted.isRedacted(config.serviceUrl)\n ? Redacted.value(config.serviceUrl)\n : config.serviceUrl,\n ),\n catch: () =>\n storageError(\"makeAdministration\", \"azure\", {\n _tag: \"InvalidConfiguration\",\n field: \"serviceUrl\",\n }),\n });\n yield* controlEndpoint(url.origin, \"azure\");\n if (\n url.username ||\n url.password ||\n url.hash ||\n (!config.credential && (!Redacted.isRedacted(config.serviceUrl) || !url.search))\n )\n return yield* storageError(\"makeAdministration\", \"azure\", {\n _tag: \"InvalidConfiguration\",\n field: \"management-credential\",\n });\n const client = yield* Effect.try({\n try: () =>\n new BlobServiceClient(url.href, config.credential, { retryOptions: { maxTries: 1 } }),\n catch: () =>\n storageError(\"makeAdministration\", \"azure\", {\n _tag: \"InvalidConfiguration\",\n field: \"client\",\n }),\n });\n return {\n listPage: Effect.fnUntraced(function* (\n input: { readonly cursor?: string; readonly limit?: number } = {},\n ) {\n const value = yield* decodeRequest(\n Schema.Struct({\n cursor: Schema.optional(Schema.NonEmptyString),\n limit: Schema.optional(Schema.Int.check(Schema.isBetween({ minimum: 1, maximum: 1000 }))),\n }),\n input,\n \"listContainers\",\n \"azure\",\n );\n const page = yield* call(\"listContainers\", false, (signal) =>\n client\n .listContainers({ abortSignal: signal })\n .byPage({\n ...(value.cursor ? { continuationToken: value.cursor } : {}),\n maxPageSize: value.limit ?? 1000,\n })\n .next(),\n );\n return {\n containers: page.value?.containerItems ?? [],\n cursor: page.value?.continuationToken,\n };\n }),\n head: Effect.fnUntraced(function* (input: { readonly container: string }) {\n const value = yield* decodeRequest(\n Schema.Struct({ container: Container }),\n input,\n \"headContainer\",\n \"azure\",\n );\n return yield* call(\"headContainer\", false, (signal) =>\n client.getContainerClient(value.container).getProperties({ abortSignal: signal }),\n );\n }),\n create: Effect.fnUntraced(function* (input: { readonly container: string }) {\n const value = yield* decodeRequest(\n Schema.Struct({ container: Container }),\n input,\n \"createContainer\",\n \"azure\",\n true,\n );\n yield* call(\"createContainer\", true, (signal) =>\n client.getContainerClient(value.container).create({ abortSignal: signal }),\n );\n return { _tag: \"Accepted\" as const };\n }),\n deleteEmpty: (_input: { readonly container: string }) =>\n Effect.fail(\n storageError(\n \"deleteEmpty\",\n \"azure\",\n { _tag: \"Unsupported\", capability: \"atomic-nonempty-container-protection\" },\n \"not-started\",\n ),\n ),\n configuration: {\n get: () =>\n call(\"getServiceProperties\", false, (signal) =>\n client.getProperties({ abortSignal: signal }),\n ),\n set: (input: {\n readonly properties: BlobServiceProperties;\n readonly intent: \"replace-service-configuration\";\n }) =>\n input.intent === \"replace-service-configuration\"\n ? call(\"setServiceProperties\", true, (signal) =>\n client.setProperties(input.properties, { abortSignal: signal }),\n )\n : Effect.fail(\n storageError(\n \"setServiceProperties\",\n \"azure\",\n { _tag: \"InvalidInput\", field: \"intent\" },\n \"not-started\",\n ),\n ),\n },\n };\n});\nexport class AzureAdministration extends Context.Service<\n AzureAdministration,\n Effect.Success<ReturnType<typeof make>>\n>()(\"@effect-kit/storage/azure/AzureAdministration\") {\n static readonly make = make;\n static layer(config: AzureAdminConfig) {\n return Layer.effect(AzureAdministration, make(config));\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { ObjectRef } from "../core/object.js";
|
|
2
|
+
import { StorageError } from "../core/errors.js";
|
|
3
|
+
import "../index.js";
|
|
4
|
+
import { AzureStorage, AzureStorageService } from "../azure.js";
|
|
5
|
+
import { Context, Effect, Layer } from "effect";
|
|
6
|
+
declare const make: (storage: AzureStorageService) => {
|
|
7
|
+
setTier: (input: {
|
|
8
|
+
readonly ref: {
|
|
9
|
+
readonly storeId: string;
|
|
10
|
+
readonly key: string;
|
|
11
|
+
readonly version?: {
|
|
12
|
+
readonly _tag: "S3Version";
|
|
13
|
+
readonly id: string;
|
|
14
|
+
} | {
|
|
15
|
+
readonly _tag: "GcsGeneration";
|
|
16
|
+
readonly id: string;
|
|
17
|
+
readonly metageneration?: string | undefined;
|
|
18
|
+
} | {
|
|
19
|
+
readonly _tag: "AzureVersion";
|
|
20
|
+
readonly id: string;
|
|
21
|
+
} | {
|
|
22
|
+
readonly _tag: "AzureSnapshot";
|
|
23
|
+
readonly id: string;
|
|
24
|
+
} | {
|
|
25
|
+
readonly _tag: "OpaqueVersion";
|
|
26
|
+
readonly provider: string;
|
|
27
|
+
readonly id: string;
|
|
28
|
+
} | undefined;
|
|
29
|
+
};
|
|
30
|
+
readonly tier: "Archive" | "Cold" | "Cool" | "Hot";
|
|
31
|
+
readonly priority?: "High" | "Standard" | undefined;
|
|
32
|
+
}) => Effect.Effect<{
|
|
33
|
+
_tag: "Accepted";
|
|
34
|
+
}, StorageError, never>;
|
|
35
|
+
restoreStatus: (input: {
|
|
36
|
+
readonly ref: ObjectRef;
|
|
37
|
+
}) => Effect.Effect<{
|
|
38
|
+
_tag: "Archived" | "Pending" | "Ready";
|
|
39
|
+
tier: string | undefined;
|
|
40
|
+
rehydration: string | undefined;
|
|
41
|
+
}, StorageError, never>;
|
|
42
|
+
undelete: (input: {
|
|
43
|
+
readonly ref: ObjectRef;
|
|
44
|
+
}) => Effect.Effect<{
|
|
45
|
+
_tag: "Accepted";
|
|
46
|
+
}, StorageError, never>;
|
|
47
|
+
};
|
|
48
|
+
declare const AzureArchive_base: Context.ServiceClass<AzureArchive, "@effect-kit/storage/azure/AzureArchive", {
|
|
49
|
+
setTier: (input: {
|
|
50
|
+
readonly ref: {
|
|
51
|
+
readonly storeId: string;
|
|
52
|
+
readonly key: string;
|
|
53
|
+
readonly version?: {
|
|
54
|
+
readonly _tag: "S3Version";
|
|
55
|
+
readonly id: string;
|
|
56
|
+
} | {
|
|
57
|
+
readonly _tag: "GcsGeneration";
|
|
58
|
+
readonly id: string;
|
|
59
|
+
readonly metageneration?: string | undefined;
|
|
60
|
+
} | {
|
|
61
|
+
readonly _tag: "AzureVersion";
|
|
62
|
+
readonly id: string;
|
|
63
|
+
} | {
|
|
64
|
+
readonly _tag: "AzureSnapshot";
|
|
65
|
+
readonly id: string;
|
|
66
|
+
} | {
|
|
67
|
+
readonly _tag: "OpaqueVersion";
|
|
68
|
+
readonly provider: string;
|
|
69
|
+
readonly id: string;
|
|
70
|
+
} | undefined;
|
|
71
|
+
};
|
|
72
|
+
readonly tier: "Archive" | "Cold" | "Cool" | "Hot";
|
|
73
|
+
readonly priority?: "High" | "Standard" | undefined;
|
|
74
|
+
}) => Effect.Effect<{
|
|
75
|
+
_tag: "Accepted";
|
|
76
|
+
}, StorageError, never>;
|
|
77
|
+
restoreStatus: (input: {
|
|
78
|
+
readonly ref: ObjectRef;
|
|
79
|
+
}) => Effect.Effect<{
|
|
80
|
+
_tag: "Archived" | "Pending" | "Ready";
|
|
81
|
+
tier: string | undefined;
|
|
82
|
+
rehydration: string | undefined;
|
|
83
|
+
}, StorageError, never>;
|
|
84
|
+
undelete: (input: {
|
|
85
|
+
readonly ref: ObjectRef;
|
|
86
|
+
}) => Effect.Effect<{
|
|
87
|
+
_tag: "Accepted";
|
|
88
|
+
}, StorageError, never>;
|
|
89
|
+
}>;
|
|
90
|
+
export declare class AzureArchive extends AzureArchive_base {
|
|
91
|
+
static readonly make: typeof make;
|
|
92
|
+
static readonly layer: Layer.Layer<AzureArchive, never, AzureStorage>;
|
|
93
|
+
}
|
|
94
|
+
export {};
|
|
95
|
+
//# sourceMappingURL=archive.d.ts.map
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { ObjectRef } from "../core/object.js";
|
|
2
|
+
import { decodeRequest } from "../internal/request-validation.js";
|
|
3
|
+
import { target } from "../providers/azure/mapping.js";
|
|
4
|
+
import { request } from "../providers/azure/transport.js";
|
|
5
|
+
import { AzureStorage } from "../azure.js";
|
|
6
|
+
import { Context, Effect, Layer, Schema } from "effect";
|
|
7
|
+
|
|
8
|
+
// src/providers/azure/archive.ts
|
|
9
|
+
const Tier = Schema.Struct({
|
|
10
|
+
ref: ObjectRef,
|
|
11
|
+
tier: Schema.Literals([
|
|
12
|
+
"Hot",
|
|
13
|
+
"Cool",
|
|
14
|
+
"Cold",
|
|
15
|
+
"Archive"
|
|
16
|
+
]),
|
|
17
|
+
priority: Schema.optional(Schema.Literals(["Standard", "High"]))
|
|
18
|
+
});
|
|
19
|
+
const make = (storage) => ({
|
|
20
|
+
setTier: Effect.fnUntraced(function* (input) {
|
|
21
|
+
const value = yield* decodeRequest(Tier, input, "setTier", "azure", true);
|
|
22
|
+
const address = yield* target(storage, { ref: value.ref }, "setTier");
|
|
23
|
+
yield* request(storage, "setTier", true, (signal) => address.client.setAccessTier(value.tier, {
|
|
24
|
+
abortSignal: signal,
|
|
25
|
+
...value.priority ? { rehydratePriority: value.priority } : {}
|
|
26
|
+
}));
|
|
27
|
+
return { _tag: "Accepted" };
|
|
28
|
+
}),
|
|
29
|
+
restoreStatus: Effect.fnUntraced(function* (input) {
|
|
30
|
+
const value = yield* decodeRequest(Schema.Struct({ ref: ObjectRef }), input, "restoreStatus", "azure");
|
|
31
|
+
const address = yield* target(storage, { ref: value.ref }, "restoreStatus");
|
|
32
|
+
const output = yield* request(storage, "restoreStatus", false, (signal) => address.client.getProperties({ abortSignal: signal }));
|
|
33
|
+
return {
|
|
34
|
+
_tag: output.archiveStatus ? "Pending" : output.accessTier === "Archive" ? "Archived" : "Ready",
|
|
35
|
+
tier: output.accessTier,
|
|
36
|
+
rehydration: output.archiveStatus
|
|
37
|
+
};
|
|
38
|
+
}),
|
|
39
|
+
undelete: Effect.fnUntraced(function* (input) {
|
|
40
|
+
const value = yield* decodeRequest(Schema.Struct({ ref: ObjectRef }), input, "undelete", "azure", true);
|
|
41
|
+
const address = yield* target(storage, { ref: value.ref }, "undelete");
|
|
42
|
+
yield* request(storage, "undelete", true, (signal) => address.client.undelete({ abortSignal: signal }));
|
|
43
|
+
return { _tag: "Accepted" };
|
|
44
|
+
})
|
|
45
|
+
});
|
|
46
|
+
var AzureArchive = class AzureArchive extends Context.Service()("@effect-kit/storage/azure/AzureArchive") {
|
|
47
|
+
static make = make;
|
|
48
|
+
static layer = Layer.effect(AzureArchive, Effect.map(AzureStorage, make));
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
export { AzureArchive };
|
|
52
|
+
//# sourceMappingURL=archive.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"archive.js","names":[],"sources":["../../src/providers/azure/archive.ts"],"sourcesContent":["import { Context, Effect, Layer, Schema } from \"effect\";\n\nimport { ObjectRef } from \"../../core/object.js\";\nimport { decodeRequest } from \"../../internal/request-validation.js\";\nimport { AzureStorage } from \"./index.js\";\nimport type { AzureStorageService } from \"./index.js\";\nimport { target } from \"./mapping.js\";\nimport { request } from \"./transport.js\";\n\nconst Tier = Schema.Struct({\n ref: ObjectRef,\n tier: Schema.Literals([\"Hot\", \"Cool\", \"Cold\", \"Archive\"]),\n priority: Schema.optional(Schema.Literals([\"Standard\", \"High\"])),\n});\nconst make = (storage: AzureStorageService) => ({\n setTier: Effect.fnUntraced(function* (input: typeof Tier.Type) {\n const value = yield* decodeRequest(Tier, input, \"setTier\", \"azure\", true);\n const address = yield* target(storage, { ref: value.ref }, \"setTier\");\n yield* request(storage, \"setTier\", true, (signal) =>\n address.client.setAccessTier(value.tier, {\n abortSignal: signal,\n ...(value.priority ? { rehydratePriority: value.priority } : {}),\n }),\n );\n return { _tag: \"Accepted\" as const };\n }),\n restoreStatus: Effect.fnUntraced(function* (input: { readonly ref: ObjectRef }) {\n const value = yield* decodeRequest(\n Schema.Struct({ ref: ObjectRef }),\n input,\n \"restoreStatus\",\n \"azure\",\n );\n const address = yield* target(storage, { ref: value.ref }, \"restoreStatus\");\n const output = yield* request(storage, \"restoreStatus\", false, (signal) =>\n address.client.getProperties({ abortSignal: signal }),\n );\n return {\n _tag: output.archiveStatus\n ? (\"Pending\" as const)\n : output.accessTier === \"Archive\"\n ? (\"Archived\" as const)\n : (\"Ready\" as const),\n tier: output.accessTier,\n rehydration: output.archiveStatus,\n };\n }),\n undelete: Effect.fnUntraced(function* (input: { readonly ref: ObjectRef }) {\n const value = yield* decodeRequest(\n Schema.Struct({ ref: ObjectRef }),\n input,\n \"undelete\",\n \"azure\",\n true,\n );\n const address = yield* target(storage, { ref: value.ref }, \"undelete\");\n yield* request(storage, \"undelete\", true, (signal) =>\n address.client.undelete({ abortSignal: signal }),\n );\n return { _tag: \"Accepted\" as const };\n }),\n});\nexport class AzureArchive extends Context.Service<AzureArchive, ReturnType<typeof make>>()(\n \"@effect-kit/storage/azure/AzureArchive\",\n) {\n static readonly make = make;\n static readonly layer = Layer.effect(AzureArchive, Effect.map(AzureStorage, make));\n}\n"],"mappings":";;;;;;;;AASA,MAAM,OAAO,OAAO,OAAO;CACzB,KAAK;CACL,MAAM,OAAO,SAAS;EAAC;EAAO;EAAQ;EAAQ;CAAS,CAAC;CACxD,UAAU,OAAO,SAAS,OAAO,SAAS,CAAC,YAAY,MAAM,CAAC,CAAC;AACjE,CAAC;AACD,MAAM,QAAQ,aAAkC;CAC9C,SAAS,OAAO,WAAW,WAAW,OAAyB;EAC7D,MAAM,QAAQ,OAAO,cAAc,MAAM,OAAO,WAAW,SAAS,IAAI;EACxE,MAAM,UAAU,OAAO,OAAO,SAAS,EAAE,KAAK,MAAM,IAAI,GAAG,SAAS;EACpE,OAAO,QAAQ,SAAS,WAAW,OAAO,WACxC,QAAQ,OAAO,cAAc,MAAM,MAAM;GACvC,aAAa;GACb,GAAI,MAAM,WAAW,EAAE,mBAAmB,MAAM,SAAS,IAAI,CAAC;EAChE,CAAC,CACH;EACA,OAAO,EAAE,MAAM,WAAoB;CACrC,CAAC;CACD,eAAe,OAAO,WAAW,WAAW,OAAoC;EAC9E,MAAM,QAAQ,OAAO,cACnB,OAAO,OAAO,EAAE,KAAK,UAAU,CAAC,GAChC,OACA,iBACA,OACF;EACA,MAAM,UAAU,OAAO,OAAO,SAAS,EAAE,KAAK,MAAM,IAAI,GAAG,eAAe;EAC1E,MAAM,SAAS,OAAO,QAAQ,SAAS,iBAAiB,QAAQ,WAC9D,QAAQ,OAAO,cAAc,EAAE,aAAa,OAAO,CAAC,CACtD;EACA,OAAO;GACL,MAAM,OAAO,gBACR,YACD,OAAO,eAAe,YACnB,aACA;GACP,MAAM,OAAO;GACb,aAAa,OAAO;EACtB;CACF,CAAC;CACD,UAAU,OAAO,WAAW,WAAW,OAAoC;EACzE,MAAM,QAAQ,OAAO,cACnB,OAAO,OAAO,EAAE,KAAK,UAAU,CAAC,GAChC,OACA,YACA,SACA,IACF;EACA,MAAM,UAAU,OAAO,OAAO,SAAS,EAAE,KAAK,MAAM,IAAI,GAAG,UAAU;EACrE,OAAO,QAAQ,SAAS,YAAY,OAAO,WACzC,QAAQ,OAAO,SAAS,EAAE,aAAa,OAAO,CAAC,CACjD;EACA,OAAO,EAAE,MAAM,WAAoB;CACrC,CAAC;AACH;AACA,IAAa,eAAb,MAAa,qBAAqB,QAAQ,QAA+C,CAAC,CACxF,wCACF,CAAC,CAAC;CACA,OAAgB,OAAO;CACvB,OAAgB,QAAQ,MAAM,OAAO,cAAc,OAAO,IAAI,cAAc,IAAI,CAAC;AACnF"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { StorageError } from "../core/errors.js";
|
|
2
|
+
import "../index.js";
|
|
3
|
+
import { Effect, Redacted } from "effect";
|
|
4
|
+
export declare namespace AzureEvents {
|
|
5
|
+
const decode: (payload: unknown, options: {
|
|
6
|
+
readonly containerUrl: string;
|
|
7
|
+
readonly storeId: string;
|
|
8
|
+
}) => Effect.Effect<{
|
|
9
|
+
readonly provider: string;
|
|
10
|
+
readonly kind: "delete-marker-created" | "metadata-updated" | "object-created" | "object-deleted" | "other" | "restore-completed" | "version-archived";
|
|
11
|
+
readonly ref: {
|
|
12
|
+
readonly storeId: string;
|
|
13
|
+
readonly key: string;
|
|
14
|
+
readonly version?: {
|
|
15
|
+
readonly _tag: "S3Version";
|
|
16
|
+
readonly id: string;
|
|
17
|
+
} | {
|
|
18
|
+
readonly _tag: "GcsGeneration";
|
|
19
|
+
readonly id: string;
|
|
20
|
+
readonly metageneration?: string | undefined;
|
|
21
|
+
} | {
|
|
22
|
+
readonly _tag: "AzureVersion";
|
|
23
|
+
readonly id: string;
|
|
24
|
+
} | {
|
|
25
|
+
readonly _tag: "AzureSnapshot";
|
|
26
|
+
readonly id: string;
|
|
27
|
+
} | {
|
|
28
|
+
readonly _tag: "OpaqueVersion";
|
|
29
|
+
readonly provider: string;
|
|
30
|
+
readonly id: string;
|
|
31
|
+
} | undefined;
|
|
32
|
+
};
|
|
33
|
+
readonly occurredAt: import("effect/DateTime").Utc;
|
|
34
|
+
readonly id?: string | undefined;
|
|
35
|
+
readonly sequencer?: string | undefined;
|
|
36
|
+
readonly nativeType: string;
|
|
37
|
+
readonly native?: Redacted.Redacted<unknown> | undefined;
|
|
38
|
+
}[], StorageError, never>;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=events.d.ts.map
|