alchemy 0.66.0 → 0.68.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/bin/alchemy.js +25554 -26250
- package/bin/alchemy.ts +6 -2
- package/bin/commands/configure.ts +194 -0
- package/bin/commands/login.ts +99 -55
- package/bin/commands/logout.ts +66 -0
- package/bin/services/find-workspace-root.ts +1 -1
- package/bin/trpc.ts +27 -2
- package/lib/alchemy.d.ts +6 -0
- package/lib/alchemy.d.ts.map +1 -1
- package/lib/alchemy.js +1 -0
- package/lib/alchemy.js.map +1 -1
- package/lib/apply.d.ts +2 -2
- package/lib/apply.d.ts.map +1 -1
- package/lib/apply.js +18 -15
- package/lib/apply.js.map +1 -1
- package/lib/auth.d.ts +72 -0
- package/lib/auth.d.ts.map +1 -0
- package/lib/auth.js +163 -0
- package/lib/auth.js.map +1 -0
- package/lib/aws/bucket.d.ts +12 -3
- package/lib/aws/bucket.d.ts.map +1 -1
- package/lib/aws/bucket.js +2 -2
- package/lib/aws/bucket.js.map +1 -1
- package/lib/aws/control/resource.d.ts +34 -3
- package/lib/aws/control/resource.d.ts.map +1 -1
- package/lib/aws/control/resource.js +3 -3
- package/lib/aws/control/resource.js.map +1 -1
- package/lib/aws/ec2/internet-gateway-attachment.d.ts +1 -2
- package/lib/aws/ec2/internet-gateway-attachment.d.ts.map +1 -1
- package/lib/aws/ec2/internet-gateway-attachment.js +4 -4
- package/lib/aws/ec2/internet-gateway-attachment.js.map +1 -1
- package/lib/aws/ec2/internet-gateway.d.ts +1 -2
- package/lib/aws/ec2/internet-gateway.d.ts.map +1 -1
- package/lib/aws/ec2/internet-gateway.js +2 -2
- package/lib/aws/ec2/internet-gateway.js.map +1 -1
- package/lib/aws/ec2/nat-gateway.d.ts +1 -2
- package/lib/aws/ec2/nat-gateway.d.ts.map +1 -1
- package/lib/aws/ec2/nat-gateway.js +2 -2
- package/lib/aws/ec2/nat-gateway.js.map +1 -1
- package/lib/aws/ec2/route-table-association.d.ts +1 -2
- package/lib/aws/ec2/route-table-association.d.ts.map +1 -1
- package/lib/aws/ec2/route-table-association.js +2 -2
- package/lib/aws/ec2/route-table-association.js.map +1 -1
- package/lib/aws/ec2/route-table.d.ts +1 -2
- package/lib/aws/ec2/route-table.d.ts.map +1 -1
- package/lib/aws/ec2/route-table.js +2 -2
- package/lib/aws/ec2/route-table.js.map +1 -1
- package/lib/aws/ec2/route.d.ts +1 -2
- package/lib/aws/ec2/route.d.ts.map +1 -1
- package/lib/aws/ec2/route.js +2 -2
- package/lib/aws/ec2/route.js.map +1 -1
- package/lib/aws/ec2/security-group-rule.d.ts +1 -2
- package/lib/aws/ec2/security-group-rule.d.ts.map +1 -1
- package/lib/aws/ec2/security-group-rule.js +2 -2
- package/lib/aws/ec2/security-group-rule.js.map +1 -1
- package/lib/aws/ec2/security-group.d.ts +1 -2
- package/lib/aws/ec2/security-group.d.ts.map +1 -1
- package/lib/aws/ec2/security-group.js +2 -2
- package/lib/aws/ec2/security-group.js.map +1 -1
- package/lib/aws/ec2/subnet.d.ts +1 -2
- package/lib/aws/ec2/subnet.d.ts.map +1 -1
- package/lib/aws/ec2/subnet.js +2 -2
- package/lib/aws/ec2/subnet.js.map +1 -1
- package/lib/aws/ec2/vpc.d.ts +1 -2
- package/lib/aws/ec2/vpc.d.ts.map +1 -1
- package/lib/aws/ec2/vpc.js +2 -2
- package/lib/aws/ec2/vpc.js.map +1 -1
- package/lib/aws/function.d.ts +116 -3
- package/lib/aws/function.d.ts.map +1 -1
- package/lib/aws/function.js +2 -2
- package/lib/aws/function.js.map +1 -1
- package/lib/aws/oidc/github-oidc-provider.d.ts +13 -2
- package/lib/aws/oidc/github-oidc-provider.d.ts.map +1 -1
- package/lib/aws/oidc/oidc-provider.d.ts +48 -3
- package/lib/aws/oidc/oidc-provider.d.ts.map +1 -1
- package/lib/aws/oidc/oidc-provider.js +2 -2
- package/lib/aws/oidc/oidc-provider.js.map +1 -1
- package/lib/aws/policy-attachment.d.ts +2 -3
- package/lib/aws/policy-attachment.d.ts.map +1 -1
- package/lib/aws/policy-attachment.js +1 -1
- package/lib/aws/policy-attachment.js.map +1 -1
- package/lib/aws/policy.d.ts +1 -2
- package/lib/aws/policy.d.ts.map +1 -1
- package/lib/aws/policy.js +4 -4
- package/lib/aws/policy.js.map +1 -1
- package/lib/aws/queue.d.ts +1 -2
- package/lib/aws/queue.d.ts.map +1 -1
- package/lib/aws/queue.js +4 -4
- package/lib/aws/queue.js.map +1 -1
- package/lib/aws/role.d.ts +1 -2
- package/lib/aws/role.d.ts.map +1 -1
- package/lib/aws/role.js +2 -2
- package/lib/aws/role.js.map +1 -1
- package/lib/aws/ses.d.ts +1 -2
- package/lib/aws/ses.d.ts.map +1 -1
- package/lib/aws/ses.js +2 -2
- package/lib/aws/ses.js.map +1 -1
- package/lib/aws/ssm-parameter.d.ts +1 -2
- package/lib/aws/ssm-parameter.d.ts.map +1 -1
- package/lib/aws/ssm-parameter.js +2 -2
- package/lib/aws/ssm-parameter.js.map +1 -1
- package/lib/aws/table.d.ts +1 -2
- package/lib/aws/table.d.ts.map +1 -1
- package/lib/aws/table.js +2 -2
- package/lib/aws/table.js.map +1 -1
- package/lib/cloudflare/account-api-token.d.ts +1 -2
- package/lib/cloudflare/account-api-token.d.ts.map +1 -1
- package/lib/cloudflare/account-api-token.js +2 -2
- package/lib/cloudflare/account-api-token.js.map +1 -1
- package/lib/cloudflare/ai-gateway.d.ts +1 -2
- package/lib/cloudflare/ai-gateway.d.ts.map +1 -1
- package/lib/cloudflare/ai-gateway.js +2 -2
- package/lib/cloudflare/ai-gateway.js.map +1 -1
- package/lib/cloudflare/api-gateway-operation.d.ts +1 -2
- package/lib/cloudflare/api-gateway-operation.d.ts.map +1 -1
- package/lib/cloudflare/api-gateway-operation.js +2 -2
- package/lib/cloudflare/api-gateway-operation.js.map +1 -1
- package/lib/cloudflare/api-schema.d.ts +1 -2
- package/lib/cloudflare/api-schema.d.ts.map +1 -1
- package/lib/cloudflare/api-schema.js +2 -2
- package/lib/cloudflare/api-schema.js.map +1 -1
- package/lib/cloudflare/api-shield.d.ts +1 -2
- package/lib/cloudflare/api-shield.d.ts.map +1 -1
- package/lib/cloudflare/api-shield.js +2 -2
- package/lib/cloudflare/api-shield.js.map +1 -1
- package/lib/cloudflare/api.d.ts +18 -10
- package/lib/cloudflare/api.d.ts.map +1 -1
- package/lib/cloudflare/api.js +93 -38
- package/lib/cloudflare/api.js.map +1 -1
- package/lib/cloudflare/assets.d.ts +21 -43
- package/lib/cloudflare/assets.d.ts.map +1 -1
- package/lib/cloudflare/assets.js +78 -70
- package/lib/cloudflare/assets.js.map +1 -1
- package/lib/cloudflare/auth.d.ts +91 -17
- package/lib/cloudflare/auth.d.ts.map +1 -1
- package/lib/cloudflare/auth.js +141 -62
- package/lib/cloudflare/auth.js.map +1 -1
- package/lib/cloudflare/bindings.d.ts +17 -5
- package/lib/cloudflare/bindings.d.ts.map +1 -1
- package/lib/cloudflare/bindings.js +3 -1
- package/lib/cloudflare/bindings.js.map +1 -1
- package/lib/cloudflare/bound.d.ts +4 -3
- package/lib/cloudflare/bound.d.ts.map +1 -1
- package/lib/cloudflare/bucket.d.ts +60 -8
- package/lib/cloudflare/bucket.d.ts.map +1 -1
- package/lib/cloudflare/bucket.js +161 -18
- package/lib/cloudflare/bucket.js.map +1 -1
- package/lib/cloudflare/bundle/internal-worker-bundle.d.ts +1 -1
- package/lib/cloudflare/bundle/internal-worker-bundle.d.ts.map +1 -1
- package/lib/cloudflare/bundle/internal-worker-bundle.js.map +1 -1
- package/lib/cloudflare/bundle/plugin-wasm.js +4 -2
- package/lib/cloudflare/bundle/plugin-wasm.js.map +1 -1
- package/lib/cloudflare/certificate-pack.d.ts +1 -2
- package/lib/cloudflare/certificate-pack.d.ts.map +1 -1
- package/lib/cloudflare/certificate-pack.js +4 -4
- package/lib/cloudflare/certificate-pack.js.map +1 -1
- package/lib/cloudflare/compatibility-date.gen.d.ts +1 -1
- package/lib/cloudflare/compatibility-date.gen.js +1 -1
- package/lib/cloudflare/container.d.ts +1 -2
- package/lib/cloudflare/container.d.ts.map +1 -1
- package/lib/cloudflare/container.js +6 -6
- package/lib/cloudflare/container.js.map +1 -1
- package/lib/cloudflare/custom-domain.d.ts +1 -2
- package/lib/cloudflare/custom-domain.d.ts.map +1 -1
- package/lib/cloudflare/custom-domain.js +2 -2
- package/lib/cloudflare/custom-domain.js.map +1 -1
- package/lib/cloudflare/d1-database.d.ts +2 -3
- package/lib/cloudflare/d1-database.d.ts.map +1 -1
- package/lib/cloudflare/d1-database.js +5 -5
- package/lib/cloudflare/d1-database.js.map +1 -1
- package/lib/cloudflare/dispatch-namespace.d.ts +2 -3
- package/lib/cloudflare/dispatch-namespace.d.ts.map +1 -1
- package/lib/cloudflare/dispatch-namespace.js +3 -3
- package/lib/cloudflare/dispatch-namespace.js.map +1 -1
- package/lib/cloudflare/dns-records.d.ts +1 -2
- package/lib/cloudflare/dns-records.d.ts.map +1 -1
- package/lib/cloudflare/dns-records.js +4 -4
- package/lib/cloudflare/dns-records.js.map +1 -1
- package/lib/cloudflare/email-address.d.ts +1 -2
- package/lib/cloudflare/email-address.d.ts.map +1 -1
- package/lib/cloudflare/email-address.js +6 -6
- package/lib/cloudflare/email-address.js.map +1 -1
- package/lib/cloudflare/email-catch-all.d.ts +1 -2
- package/lib/cloudflare/email-catch-all.d.ts.map +1 -1
- package/lib/cloudflare/email-catch-all.js +4 -4
- package/lib/cloudflare/email-catch-all.js.map +1 -1
- package/lib/cloudflare/email-routing.d.ts +1 -2
- package/lib/cloudflare/email-routing.d.ts.map +1 -1
- package/lib/cloudflare/email-routing.js +4 -4
- package/lib/cloudflare/email-routing.js.map +1 -1
- package/lib/cloudflare/email-rule.d.ts +1 -2
- package/lib/cloudflare/email-rule.d.ts.map +1 -1
- package/lib/cloudflare/email-rule.js +4 -4
- package/lib/cloudflare/email-rule.js.map +1 -1
- package/lib/cloudflare/hyperdrive-ref.d.ts +23 -0
- package/lib/cloudflare/hyperdrive-ref.d.ts.map +1 -0
- package/lib/cloudflare/hyperdrive-ref.js +52 -0
- package/lib/cloudflare/hyperdrive-ref.js.map +1 -0
- package/lib/cloudflare/hyperdrive.d.ts +1 -2
- package/lib/cloudflare/hyperdrive.d.ts.map +1 -1
- package/lib/cloudflare/hyperdrive.js +4 -4
- package/lib/cloudflare/hyperdrive.js.map +1 -1
- package/lib/cloudflare/index.d.ts +2 -0
- package/lib/cloudflare/index.d.ts.map +1 -1
- package/lib/cloudflare/index.js +2 -0
- package/lib/cloudflare/index.js.map +1 -1
- package/lib/cloudflare/kv-namespace.d.ts +2 -3
- package/lib/cloudflare/kv-namespace.d.ts.map +1 -1
- package/lib/cloudflare/kv-namespace.js +5 -5
- package/lib/cloudflare/kv-namespace.js.map +1 -1
- package/lib/cloudflare/miniflare/build-worker-options.d.ts +2 -1
- package/lib/cloudflare/miniflare/build-worker-options.d.ts.map +1 -1
- package/lib/cloudflare/miniflare/build-worker-options.js +11 -6
- package/lib/cloudflare/miniflare/build-worker-options.js.map +1 -1
- package/lib/cloudflare/miniflare/delete.js +1 -1
- package/lib/cloudflare/miniflare/delete.js.map +1 -1
- package/lib/cloudflare/miniflare/miniflare-controller.d.ts +3 -1
- package/lib/cloudflare/miniflare/miniflare-controller.d.ts.map +1 -1
- package/lib/cloudflare/miniflare/miniflare-controller.js +24 -9
- package/lib/cloudflare/miniflare/miniflare-controller.js.map +1 -1
- package/lib/cloudflare/miniflare/miniflare-worker-proxy.d.ts +24 -13
- package/lib/cloudflare/miniflare/miniflare-worker-proxy.d.ts.map +1 -1
- package/lib/cloudflare/miniflare/miniflare-worker-proxy.js +90 -79
- package/lib/cloudflare/miniflare/miniflare-worker-proxy.js.map +1 -1
- package/lib/cloudflare/miniflare/remote-binding-proxy.d.ts.map +1 -1
- package/lib/cloudflare/miniflare/remote-binding-proxy.js +15 -4
- package/lib/cloudflare/miniflare/remote-binding-proxy.js.map +1 -1
- package/lib/cloudflare/miniflare/tunnel.d.ts +18 -0
- package/lib/cloudflare/miniflare/tunnel.d.ts.map +1 -0
- package/lib/cloudflare/miniflare/tunnel.js +79 -0
- package/lib/cloudflare/miniflare/tunnel.js.map +1 -0
- package/lib/cloudflare/next.d.ts.map +1 -1
- package/lib/cloudflare/next.js +3 -0
- package/lib/cloudflare/next.js.map +1 -1
- package/lib/cloudflare/permission-groups.d.ts +1 -2
- package/lib/cloudflare/permission-groups.d.ts.map +1 -1
- package/lib/cloudflare/permission-groups.js +1 -1
- package/lib/cloudflare/permission-groups.js.map +1 -1
- package/lib/cloudflare/pipeline.d.ts +2 -3
- package/lib/cloudflare/pipeline.d.ts.map +1 -1
- package/lib/cloudflare/pipeline.js +5 -5
- package/lib/cloudflare/pipeline.js.map +1 -1
- package/lib/cloudflare/queue-consumer.d.ts +1 -2
- package/lib/cloudflare/queue-consumer.d.ts.map +1 -1
- package/lib/cloudflare/queue-consumer.js +4 -4
- package/lib/cloudflare/queue-consumer.js.map +1 -1
- package/lib/cloudflare/queue.d.ts +1 -2
- package/lib/cloudflare/queue.d.ts.map +1 -1
- package/lib/cloudflare/queue.js +4 -4
- package/lib/cloudflare/queue.js.map +1 -1
- package/lib/cloudflare/quick-tunnel.d.ts +1 -1
- package/lib/cloudflare/react-router/plugin.d.ts.map +1 -1
- package/lib/cloudflare/react-router/plugin.js +13 -0
- package/lib/cloudflare/react-router/plugin.js.map +1 -1
- package/lib/cloudflare/redirect-rule.d.ts +1 -2
- package/lib/cloudflare/redirect-rule.d.ts.map +1 -1
- package/lib/cloudflare/redirect-rule.js +4 -4
- package/lib/cloudflare/redirect-rule.js.map +1 -1
- package/lib/cloudflare/route.d.ts +1 -2
- package/lib/cloudflare/route.d.ts.map +1 -1
- package/lib/cloudflare/route.js +4 -4
- package/lib/cloudflare/route.js.map +1 -1
- package/lib/cloudflare/ruleset.d.ts +1 -2
- package/lib/cloudflare/ruleset.d.ts.map +1 -1
- package/lib/cloudflare/ruleset.js +2 -2
- package/lib/cloudflare/ruleset.js.map +1 -1
- package/lib/cloudflare/secret-ref.d.ts +38 -0
- package/lib/cloudflare/secret-ref.d.ts.map +1 -0
- package/lib/cloudflare/secret-ref.js +38 -0
- package/lib/cloudflare/secret-ref.js.map +1 -0
- package/lib/cloudflare/secret.d.ts +2 -3
- package/lib/cloudflare/secret.d.ts.map +1 -1
- package/lib/cloudflare/secret.js +3 -3
- package/lib/cloudflare/secret.js.map +1 -1
- package/lib/cloudflare/secrets-store.d.ts +2 -3
- package/lib/cloudflare/secrets-store.d.ts.map +1 -1
- package/lib/cloudflare/secrets-store.js +3 -3
- package/lib/cloudflare/secrets-store.js.map +1 -1
- package/lib/cloudflare/tunnel.d.ts +2 -3
- package/lib/cloudflare/tunnel.d.ts.map +1 -1
- package/lib/cloudflare/tunnel.js +3 -3
- package/lib/cloudflare/tunnel.js.map +1 -1
- package/lib/cloudflare/user.d.ts +3 -2
- package/lib/cloudflare/user.d.ts.map +1 -1
- package/lib/cloudflare/user.js +7 -5
- package/lib/cloudflare/user.js.map +1 -1
- package/lib/cloudflare/vectorize-index.d.ts +2 -3
- package/lib/cloudflare/vectorize-index.d.ts.map +1 -1
- package/lib/cloudflare/vectorize-index.js +6 -6
- package/lib/cloudflare/vectorize-index.js.map +1 -1
- package/lib/cloudflare/vectorize-metadata-index.d.ts +2 -3
- package/lib/cloudflare/vectorize-metadata-index.d.ts.map +1 -1
- package/lib/cloudflare/vectorize-metadata-index.js +4 -4
- package/lib/cloudflare/vectorize-metadata-index.js.map +1 -1
- package/lib/cloudflare/website.js +1 -1
- package/lib/cloudflare/website.js.map +1 -1
- package/lib/cloudflare/worker-assets.d.ts +1 -29
- package/lib/cloudflare/worker-assets.d.ts.map +1 -1
- package/lib/cloudflare/worker-assets.js +9 -42
- package/lib/cloudflare/worker-assets.js.map +1 -1
- package/lib/cloudflare/worker-metadata.d.ts +1 -1
- package/lib/cloudflare/worker-metadata.d.ts.map +1 -1
- package/lib/cloudflare/worker-metadata.js +7 -9
- package/lib/cloudflare/worker-metadata.js.map +1 -1
- package/lib/cloudflare/worker-stub.d.ts +2 -3
- package/lib/cloudflare/worker-stub.d.ts.map +1 -1
- package/lib/cloudflare/worker-stub.js +3 -3
- package/lib/cloudflare/worker-stub.js.map +1 -1
- package/lib/cloudflare/worker-subdomain.d.ts +4 -3
- package/lib/cloudflare/worker-subdomain.d.ts.map +1 -1
- package/lib/cloudflare/worker-subdomain.js +5 -5
- package/lib/cloudflare/worker-subdomain.js.map +1 -1
- package/lib/cloudflare/worker.d.ts +19 -5
- package/lib/cloudflare/worker.d.ts.map +1 -1
- package/lib/cloudflare/worker.js +18 -5
- package/lib/cloudflare/worker.js.map +1 -1
- package/lib/cloudflare/wrangler.json.d.ts +2 -1
- package/lib/cloudflare/wrangler.json.d.ts.map +1 -1
- package/lib/cloudflare/wrangler.json.js +4 -6
- package/lib/cloudflare/wrangler.json.js.map +1 -1
- package/lib/cloudflare/zone.d.ts +1 -2
- package/lib/cloudflare/zone.d.ts.map +1 -1
- package/lib/cloudflare/zone.js +2 -2
- package/lib/cloudflare/zone.js.map +1 -1
- package/lib/context.d.ts +8 -8
- package/lib/context.d.ts.map +1 -1
- package/lib/context.js.map +1 -1
- package/lib/destroy.d.ts +1 -1
- package/lib/destroy.d.ts.map +1 -1
- package/lib/destroy.js.map +1 -1
- package/lib/dns/import-dns.d.ts +1 -2
- package/lib/dns/import-dns.d.ts.map +1 -1
- package/lib/dns/import-dns.js +2 -2
- package/lib/dns/import-dns.js.map +1 -1
- package/lib/docker/container.d.ts +1 -2
- package/lib/docker/container.d.ts.map +1 -1
- package/lib/docker/container.js +2 -3
- package/lib/docker/container.js.map +1 -1
- package/lib/docker/image.d.ts +1 -2
- package/lib/docker/image.d.ts.map +1 -1
- package/lib/docker/image.js +9 -9
- package/lib/docker/image.js.map +1 -1
- package/lib/docker/network.d.ts +1 -2
- package/lib/docker/network.d.ts.map +1 -1
- package/lib/docker/network.js +2 -3
- package/lib/docker/network.js.map +1 -1
- package/lib/docker/remote-image.d.ts +1 -2
- package/lib/docker/remote-image.d.ts.map +1 -1
- package/lib/docker/remote-image.js +2 -3
- package/lib/docker/remote-image.js.map +1 -1
- package/lib/docker/volume.d.ts +1 -2
- package/lib/docker/volume.d.ts.map +1 -1
- package/lib/docker/volume.js +2 -3
- package/lib/docker/volume.js.map +1 -1
- package/lib/esbuild/bundle.d.ts +1 -2
- package/lib/esbuild/bundle.d.ts.map +1 -1
- package/lib/esbuild/bundle.js +4 -4
- package/lib/esbuild/bundle.js.map +1 -1
- package/lib/fs/copy-file.d.ts +1 -2
- package/lib/fs/copy-file.d.ts.map +1 -1
- package/lib/fs/copy-file.js +2 -2
- package/lib/fs/copy-file.js.map +1 -1
- package/lib/fs/file.d.ts +1 -2
- package/lib/fs/file.d.ts.map +1 -1
- package/lib/fs/file.js +2 -2
- package/lib/fs/file.js.map +1 -1
- package/lib/fs/folder.d.ts +1 -2
- package/lib/fs/folder.d.ts.map +1 -1
- package/lib/fs/folder.js +2 -2
- package/lib/fs/folder.js.map +1 -1
- package/lib/github/comment.d.ts +1 -2
- package/lib/github/comment.d.ts.map +1 -1
- package/lib/github/comment.js +4 -4
- package/lib/github/comment.js.map +1 -1
- package/lib/github/repository-environment.d.ts +1 -2
- package/lib/github/repository-environment.d.ts.map +1 -1
- package/lib/github/repository-environment.js +2 -2
- package/lib/github/repository-environment.js.map +1 -1
- package/lib/github/repository-webhook.d.ts +1 -2
- package/lib/github/repository-webhook.d.ts.map +1 -1
- package/lib/github/repository-webhook.js +2 -2
- package/lib/github/repository-webhook.js.map +1 -1
- package/lib/github/secret.d.ts +1 -2
- package/lib/github/secret.d.ts.map +1 -1
- package/lib/github/secret.js +2 -2
- package/lib/github/secret.js.map +1 -1
- package/lib/llms.cloudflare.txt +1 -1
- package/lib/neon/api/client.gen.d.ts +13 -0
- package/lib/neon/api/client.gen.d.ts.map +1 -0
- package/lib/neon/api/client.gen.js +7 -0
- package/lib/neon/api/client.gen.js.map +1 -0
- package/lib/neon/api/sdk.gen.d.ts +880 -0
- package/lib/neon/api/sdk.gen.d.ts.map +1 -0
- package/lib/neon/api/sdk.gen.js +1527 -0
- package/lib/neon/api/sdk.gen.js.map +1 -0
- package/lib/neon/api/types.gen.d.ts +7250 -0
- package/lib/neon/api/types.gen.d.ts.map +1 -0
- package/lib/neon/api/types.gen.js +2 -0
- package/lib/neon/api/types.gen.js.map +1 -0
- package/lib/neon/api.d.ts +14 -49
- package/lib/neon/api.d.ts.map +1 -1
- package/lib/neon/api.js +36 -114
- package/lib/neon/api.js.map +1 -1
- package/lib/neon/branch.d.ts +141 -0
- package/lib/neon/branch.d.ts.map +1 -0
- package/lib/neon/branch.js +112 -0
- package/lib/neon/branch.js.map +1 -0
- package/lib/neon/index.d.ts +1 -1
- package/lib/neon/index.d.ts.map +1 -1
- package/lib/neon/index.js +1 -1
- package/lib/neon/index.js.map +1 -1
- package/lib/neon/project.d.ts +32 -242
- package/lib/neon/project.d.ts.map +1 -1
- package/lib/neon/project.js +90 -269
- package/lib/neon/project.js.map +1 -1
- package/lib/neon/utils.d.ts +49 -0
- package/lib/neon/utils.d.ts.map +1 -0
- package/lib/neon/utils.js +44 -0
- package/lib/neon/utils.js.map +1 -0
- package/lib/os/exec.d.ts +1 -2
- package/lib/os/exec.d.ts.map +1 -1
- package/lib/os/exec.js +2 -2
- package/lib/os/exec.js.map +1 -1
- package/lib/planetscale/api/client.gen.d.ts +12 -1749
- package/lib/planetscale/api/client.gen.d.ts.map +1 -1
- package/lib/planetscale/api/client.gen.js +6 -2400
- package/lib/planetscale/api/client.gen.js.map +1 -1
- package/lib/planetscale/api/sdk.gen.d.ts +1582 -0
- package/lib/planetscale/api/sdk.gen.d.ts.map +1 -0
- package/lib/planetscale/api/sdk.gen.js +2219 -0
- package/lib/planetscale/api/sdk.gen.js.map +1 -0
- package/lib/planetscale/api/types.gen.d.ts +594 -449
- package/lib/planetscale/api/types.gen.d.ts.map +1 -1
- package/lib/planetscale/api.d.ts +43 -0
- package/lib/planetscale/api.d.ts.map +1 -0
- package/lib/planetscale/api.js +53 -0
- package/lib/planetscale/api.js.map +1 -0
- package/lib/planetscale/branch.d.ts +2 -3
- package/lib/planetscale/branch.d.ts.map +1 -1
- package/lib/planetscale/branch.js +17 -15
- package/lib/planetscale/branch.js.map +1 -1
- package/lib/planetscale/database.d.ts +2 -3
- package/lib/planetscale/database.d.ts.map +1 -1
- package/lib/planetscale/database.js +34 -34
- package/lib/planetscale/database.js.map +1 -1
- package/lib/planetscale/index.d.ts +1 -1
- package/lib/planetscale/index.d.ts.map +1 -1
- package/lib/planetscale/index.js +1 -1
- package/lib/planetscale/index.js.map +1 -1
- package/lib/planetscale/password.d.ts +2 -3
- package/lib/planetscale/password.d.ts.map +1 -1
- package/lib/planetscale/password.js +11 -11
- package/lib/planetscale/password.js.map +1 -1
- package/lib/planetscale/role.d.ts +2 -3
- package/lib/planetscale/role.d.ts.map +1 -1
- package/lib/planetscale/role.js +18 -18
- package/lib/planetscale/role.js.map +1 -1
- package/lib/planetscale/utils.d.ts +1 -1
- package/lib/planetscale/utils.d.ts.map +1 -1
- package/lib/planetscale/utils.js +17 -33
- package/lib/planetscale/utils.js.map +1 -1
- package/lib/random/random-string.d.ts +1 -2
- package/lib/random/random-string.d.ts.map +1 -1
- package/lib/random/random-string.js +3 -3
- package/lib/random/random-string.js.map +1 -1
- package/lib/resource.d.ts +4 -1
- package/lib/resource.d.ts.map +1 -1
- package/lib/resource.js.map +1 -1
- package/lib/scope.d.ts +10 -1
- package/lib/scope.d.ts.map +1 -1
- package/lib/scope.js +3 -1
- package/lib/scope.js.map +1 -1
- package/lib/sentry/client-key.d.ts +1 -2
- package/lib/sentry/client-key.d.ts.map +1 -1
- package/lib/sentry/client-key.js +2 -2
- package/lib/sentry/client-key.js.map +1 -1
- package/lib/sentry/project.d.ts +1 -2
- package/lib/sentry/project.d.ts.map +1 -1
- package/lib/sentry/project.js +2 -2
- package/lib/sentry/project.js.map +1 -1
- package/lib/sentry/team.d.ts +1 -2
- package/lib/sentry/team.d.ts.map +1 -1
- package/lib/sentry/team.js +2 -2
- package/lib/sentry/team.js.map +1 -1
- package/lib/state/r2-rest-state-store.d.ts +1 -0
- package/lib/state/r2-rest-state-store.d.ts.map +1 -1
- package/lib/state/r2-rest-state-store.js +15 -34
- package/lib/state/r2-rest-state-store.js.map +1 -1
- package/lib/stripe/card.d.ts +1 -2
- package/lib/stripe/card.d.ts.map +1 -1
- package/lib/stripe/card.js +2 -2
- package/lib/stripe/card.js.map +1 -1
- package/lib/stripe/coupon.d.ts +1 -2
- package/lib/stripe/coupon.d.ts.map +1 -1
- package/lib/stripe/coupon.js +2 -2
- package/lib/stripe/coupon.js.map +1 -1
- package/lib/stripe/customer.d.ts +1 -2
- package/lib/stripe/customer.d.ts.map +1 -1
- package/lib/stripe/customer.js +2 -2
- package/lib/stripe/customer.js.map +1 -1
- package/lib/stripe/entitlements-feature.d.ts +1 -2
- package/lib/stripe/entitlements-feature.d.ts.map +1 -1
- package/lib/stripe/entitlements-feature.js +2 -2
- package/lib/stripe/entitlements-feature.js.map +1 -1
- package/lib/stripe/file.d.ts +1 -2
- package/lib/stripe/file.d.ts.map +1 -1
- package/lib/stripe/file.js +2 -2
- package/lib/stripe/file.js.map +1 -1
- package/lib/stripe/meter.d.ts +1 -2
- package/lib/stripe/meter.d.ts.map +1 -1
- package/lib/stripe/meter.js +1 -1
- package/lib/stripe/meter.js.map +1 -1
- package/lib/stripe/portal-configuration.d.ts +1 -2
- package/lib/stripe/portal-configuration.d.ts.map +1 -1
- package/lib/stripe/portal-configuration.js +2 -2
- package/lib/stripe/portal-configuration.js.map +1 -1
- package/lib/stripe/price.d.ts +1 -2
- package/lib/stripe/price.d.ts.map +1 -1
- package/lib/stripe/price.js +2 -2
- package/lib/stripe/price.js.map +1 -1
- package/lib/stripe/product-feature.d.ts +1 -2
- package/lib/stripe/product-feature.d.ts.map +1 -1
- package/lib/stripe/product-feature.js +2 -2
- package/lib/stripe/product-feature.js.map +1 -1
- package/lib/stripe/product.d.ts +1 -2
- package/lib/stripe/product.d.ts.map +1 -1
- package/lib/stripe/product.js +2 -2
- package/lib/stripe/product.js.map +1 -1
- package/lib/stripe/promotion-code.d.ts +1 -2
- package/lib/stripe/promotion-code.d.ts.map +1 -1
- package/lib/stripe/promotion-code.js +2 -2
- package/lib/stripe/promotion-code.js.map +1 -1
- package/lib/stripe/shipping-rate.d.ts +1 -2
- package/lib/stripe/shipping-rate.d.ts.map +1 -1
- package/lib/stripe/shipping-rate.js +2 -2
- package/lib/stripe/shipping-rate.js.map +1 -1
- package/lib/stripe/tax-rate.d.ts +1 -2
- package/lib/stripe/tax-rate.d.ts.map +1 -1
- package/lib/stripe/tax-rate.js +2 -2
- package/lib/stripe/tax-rate.js.map +1 -1
- package/lib/stripe/webhook.d.ts +16 -3
- package/lib/stripe/webhook.d.ts.map +1 -1
- package/lib/stripe/webhook.js +2 -2
- package/lib/stripe/webhook.js.map +1 -1
- package/lib/test/bun.d.ts.map +1 -1
- package/lib/test/bun.js +1 -0
- package/lib/test/bun.js.map +1 -1
- package/lib/test/options.d.ts +5 -0
- package/lib/test/options.d.ts.map +1 -1
- package/lib/test/vitest.d.ts.map +1 -1
- package/lib/test/vitest.js +1 -0
- package/lib/test/vitest.js.map +1 -1
- package/lib/upstash/redis.d.ts +1 -2
- package/lib/upstash/redis.d.ts.map +1 -1
- package/lib/upstash/redis.js.map +1 -1
- package/lib/util/api/client/client.gen.d.ts +3 -0
- package/lib/util/api/client/client.gen.d.ts.map +1 -0
- package/lib/util/api/client/client.gen.js +205 -0
- package/lib/util/api/client/client.gen.js.map +1 -0
- package/lib/util/api/client/index.d.ts +8 -0
- package/lib/util/api/client/index.d.ts.map +1 -0
- package/lib/util/api/client/index.js +6 -0
- package/lib/util/api/client/index.js.map +1 -0
- package/lib/util/api/client/types.gen.d.ts +125 -0
- package/lib/util/api/client/types.gen.d.ts.map +1 -0
- package/lib/util/api/client/types.gen.js +2 -0
- package/lib/util/api/client/types.gen.js.map +1 -0
- package/lib/util/api/client/utils.gen.d.ts +34 -0
- package/lib/util/api/client/utils.gen.d.ts.map +1 -0
- package/lib/util/api/client/utils.gen.js +231 -0
- package/lib/util/api/client/utils.gen.js.map +1 -0
- package/lib/util/api/core/auth.gen.d.ts +19 -0
- package/lib/util/api/core/auth.gen.d.ts.map +1 -0
- package/lib/util/api/core/auth.gen.js +15 -0
- package/lib/util/api/core/auth.gen.js.map +1 -0
- package/lib/util/api/core/bodySerializer.gen.d.ts +18 -0
- package/lib/util/api/core/bodySerializer.gen.d.ts.map +1 -0
- package/lib/util/api/core/bodySerializer.gen.js +58 -0
- package/lib/util/api/core/bodySerializer.gen.js.map +1 -0
- package/lib/util/api/core/params.gen.d.ts +34 -0
- package/lib/util/api/core/params.gen.d.ts.map +1 -0
- package/lib/util/api/core/params.gen.js +89 -0
- package/lib/util/api/core/params.gen.js.map +1 -0
- package/lib/util/api/core/pathSerializer.gen.d.ts +34 -0
- package/lib/util/api/core/pathSerializer.gen.d.ts.map +1 -0
- package/lib/util/api/core/pathSerializer.gen.js +115 -0
- package/lib/util/api/core/pathSerializer.gen.js.map +1 -0
- package/lib/util/api/core/serverSentEvents.gen.d.ts +72 -0
- package/lib/util/api/core/serverSentEvents.gen.d.ts.map +1 -0
- package/lib/util/api/core/serverSentEvents.gen.js +136 -0
- package/lib/util/api/core/serverSentEvents.gen.js.map +1 -0
- package/lib/util/api/core/types.gen.d.ts +79 -0
- package/lib/util/api/core/types.gen.d.ts.map +1 -0
- package/lib/util/api/core/types.gen.js +2 -0
- package/lib/util/api/core/types.gen.js.map +1 -0
- package/lib/util/api/core/utils.gen.d.ts +20 -0
- package/lib/util/api/core/utils.gen.d.ts.map +1 -0
- package/lib/util/api/core/utils.gen.js +88 -0
- package/lib/util/api/core/utils.gen.js.map +1 -0
- package/lib/util/http.d.ts +7 -2
- package/lib/util/http.d.ts.map +1 -1
- package/lib/util/http.js +29 -11
- package/lib/util/http.js.map +1 -1
- package/lib/util/idempotent-spawn.d.ts.map +1 -1
- package/lib/util/idempotent-spawn.js +5 -8
- package/lib/util/idempotent-spawn.js.map +1 -1
- package/lib/util/lock.d.ts +20 -0
- package/lib/util/lock.d.ts.map +1 -0
- package/lib/util/lock.js +45 -0
- package/lib/util/lock.js.map +1 -0
- package/lib/util/memoize.d.ts +6 -0
- package/lib/util/memoize.d.ts.map +1 -1
- package/lib/util/memoize.js +23 -0
- package/lib/util/memoize.js.map +1 -1
- package/lib/util/oauth-client.d.ts +71 -0
- package/lib/util/oauth-client.d.ts.map +1 -0
- package/lib/util/oauth-client.js +188 -0
- package/lib/util/oauth-client.js.map +1 -0
- package/lib/util/poll.d.ts +33 -0
- package/lib/util/poll.d.ts.map +1 -0
- package/lib/util/poll.js +19 -0
- package/lib/util/poll.js.map +1 -0
- package/lib/vercel/project-domain.d.ts +1 -2
- package/lib/vercel/project-domain.d.ts.map +1 -1
- package/lib/vercel/project-domain.js.map +1 -1
- package/lib/vercel/project.d.ts +1 -2
- package/lib/vercel/project.d.ts.map +1 -1
- package/lib/vercel/project.js +2 -2
- package/lib/vercel/project.js.map +1 -1
- package/package.json +5 -1
- package/src/alchemy.ts +7 -0
- package/src/apply.ts +32 -29
- package/src/auth.ts +253 -0
- package/src/aws/bucket.ts +3 -3
- package/src/aws/control/resource.ts +4 -6
- package/src/aws/ec2/internet-gateway-attachment.ts +5 -6
- package/src/aws/ec2/internet-gateway.ts +3 -5
- package/src/aws/ec2/nat-gateway.ts +3 -5
- package/src/aws/ec2/route-table-association.ts +3 -5
- package/src/aws/ec2/route-table.ts +3 -5
- package/src/aws/ec2/route.ts +3 -3
- package/src/aws/ec2/security-group-rule.ts +3 -5
- package/src/aws/ec2/security-group.ts +3 -5
- package/src/aws/ec2/subnet.ts +3 -3
- package/src/aws/ec2/vpc.ts +3 -3
- package/src/aws/function.ts +3 -3
- package/src/aws/oidc/oidc-provider.ts +3 -5
- package/src/aws/policy-attachment.ts +2 -4
- package/src/aws/policy.ts +5 -5
- package/src/aws/queue.ts +5 -5
- package/src/aws/role.ts +3 -3
- package/src/aws/ses.ts +3 -3
- package/src/aws/ssm-parameter.ts +3 -3
- package/src/aws/table.ts +3 -3
- package/src/cloudflare/account-api-token.ts +3 -4
- package/src/cloudflare/ai-gateway.ts +3 -5
- package/src/cloudflare/api-gateway-operation.ts +3 -4
- package/src/cloudflare/api-schema.ts +25 -26
- package/src/cloudflare/api-shield.ts +3 -4
- package/src/cloudflare/api.ts +122 -57
- package/src/cloudflare/assets.ts +95 -136
- package/src/cloudflare/auth.ts +160 -95
- package/src/cloudflare/bindings.ts +21 -4
- package/src/cloudflare/bound.ts +50 -52
- package/src/cloudflare/bucket.ts +321 -58
- package/src/cloudflare/bundle/internal-worker-bundle.ts +2 -1
- package/src/cloudflare/bundle/plugin-wasm.ts +5 -5
- package/src/cloudflare/certificate-pack.ts +5 -6
- package/src/cloudflare/compatibility-date.gen.ts +1 -1
- package/src/cloudflare/container.ts +7 -8
- package/src/cloudflare/custom-domain.ts +3 -5
- package/src/cloudflare/d1-database.ts +33 -34
- package/src/cloudflare/dispatch-namespace.ts +5 -6
- package/src/cloudflare/dns-records.ts +5 -5
- package/src/cloudflare/email-address.ts +7 -7
- package/src/cloudflare/email-catch-all.ts +6 -6
- package/src/cloudflare/email-routing.ts +5 -5
- package/src/cloudflare/email-rule.ts +5 -5
- package/src/cloudflare/hyperdrive-ref.ts +98 -0
- package/src/cloudflare/hyperdrive.ts +35 -36
- package/src/cloudflare/index.ts +2 -0
- package/src/cloudflare/kv-namespace.ts +31 -32
- package/src/cloudflare/miniflare/build-worker-options.ts +21 -12
- package/src/cloudflare/miniflare/delete.ts +1 -1
- package/src/cloudflare/miniflare/miniflare-controller.ts +27 -12
- package/src/cloudflare/miniflare/miniflare-worker-proxy.ts +117 -102
- package/src/cloudflare/miniflare/remote-binding-proxy.ts +16 -4
- package/src/cloudflare/miniflare/tunnel.ts +116 -0
- package/src/cloudflare/next.ts +3 -0
- package/src/cloudflare/permission-groups.ts +4 -6
- package/src/cloudflare/pipeline.ts +29 -30
- package/src/cloudflare/queue-consumer.ts +5 -7
- package/src/cloudflare/queue.ts +42 -43
- package/src/cloudflare/react-router/plugin.ts +20 -0
- package/src/cloudflare/redirect-rule.ts +5 -5
- package/src/cloudflare/route.ts +5 -5
- package/src/cloudflare/ruleset.ts +3 -4
- package/src/cloudflare/secret-ref.ts +56 -0
- package/src/cloudflare/secret.ts +35 -36
- package/src/cloudflare/secrets-store.ts +5 -8
- package/src/cloudflare/tunnel.ts +5 -7
- package/src/cloudflare/user.ts +12 -9
- package/src/cloudflare/vectorize-index.ts +8 -12
- package/src/cloudflare/vectorize-metadata-index.ts +6 -8
- package/src/cloudflare/website.ts +1 -1
- package/src/cloudflare/worker-assets.ts +10 -56
- package/src/cloudflare/worker-metadata.ts +14 -12
- package/src/cloudflare/worker-stub.ts +5 -5
- package/src/cloudflare/worker-subdomain.ts +6 -7
- package/src/cloudflare/worker.ts +123 -92
- package/src/cloudflare/wrangler.json.ts +13 -11
- package/src/cloudflare/zone.ts +3 -3
- package/src/context.ts +9 -7
- package/src/destroy.ts +2 -2
- package/src/dns/import-dns.ts +3 -5
- package/src/docker/container.ts +3 -6
- package/src/docker/image.ts +13 -13
- package/src/docker/network.ts +3 -4
- package/src/docker/remote-image.ts +3 -6
- package/src/docker/volume.ts +3 -4
- package/src/esbuild/bundle.ts +10 -8
- package/src/fs/copy-file.ts +3 -3
- package/src/fs/file.ts +3 -3
- package/src/fs/folder.ts +3 -3
- package/src/github/comment.ts +5 -7
- package/src/github/repository-environment.ts +3 -5
- package/src/github/repository-webhook.ts +3 -5
- package/src/github/secret.ts +3 -5
- package/src/llms.cloudflare.txt +1 -1
- package/src/neon/api/client.gen.ts +28 -0
- package/src/neon/api/sdk.gen.ts +2596 -0
- package/src/neon/api/types.gen.ts +8287 -0
- package/src/neon/api.ts +51 -147
- package/src/neon/branch.ts +278 -0
- package/src/neon/index.ts +1 -1
- package/src/neon/project.ts +136 -721
- package/src/neon/utils.ts +105 -0
- package/src/os/exec.ts +3 -3
- package/src/planetscale/api/client.gen.ts +28 -2882
- package/src/planetscale/api/sdk.gen.ts +3336 -0
- package/src/planetscale/api/types.gen.ts +778 -450
- package/src/planetscale/api.ts +101 -0
- package/src/planetscale/branch.ts +20 -19
- package/src/planetscale/database.ts +69 -70
- package/src/planetscale/index.ts +1 -1
- package/src/planetscale/password.ts +18 -22
- package/src/planetscale/role.ts +21 -21
- package/src/planetscale/utils.ts +20 -74
- package/src/random/random-string.ts +4 -4
- package/src/resource.ts +6 -2
- package/src/scope.ts +12 -1
- package/src/sentry/client-key.ts +3 -5
- package/src/sentry/project.ts +3 -5
- package/src/sentry/team.ts +3 -3
- package/src/state/r2-rest-state-store.ts +15 -57
- package/src/stripe/card.ts +3 -3
- package/src/stripe/coupon.ts +3 -3
- package/src/stripe/customer.ts +3 -3
- package/src/stripe/entitlements-feature.ts +3 -5
- package/src/stripe/file.ts +3 -3
- package/src/stripe/meter.ts +3 -3
- package/src/stripe/portal-configuration.ts +3 -5
- package/src/stripe/price.ts +3 -3
- package/src/stripe/product-feature.ts +3 -5
- package/src/stripe/product.ts +3 -3
- package/src/stripe/promotion-code.ts +3 -5
- package/src/stripe/shipping-rate.ts +3 -5
- package/src/stripe/tax-rate.ts +3 -3
- package/src/stripe/webhook.ts +3 -5
- package/src/test/bun.ts +1 -0
- package/src/test/options.ts +6 -0
- package/src/test/vitest.ts +1 -0
- package/src/upstash/redis.ts +1 -3
- package/src/util/api/client/client.gen.ts +268 -0
- package/src/util/api/client/index.ts +25 -0
- package/src/util/api/client/types.gen.ts +268 -0
- package/src/util/api/client/utils.gen.ts +331 -0
- package/src/util/api/core/auth.gen.ts +42 -0
- package/src/util/api/core/bodySerializer.gen.ts +92 -0
- package/src/util/api/core/params.gen.ts +153 -0
- package/src/util/api/core/pathSerializer.gen.ts +181 -0
- package/src/util/api/core/serverSentEvents.gen.ts +264 -0
- package/src/util/api/core/types.gen.ts +118 -0
- package/src/util/api/core/utils.gen.ts +143 -0
- package/src/util/http.ts +38 -11
- package/src/util/idempotent-spawn.ts +5 -6
- package/src/util/lock.ts +48 -0
- package/src/util/memoize.ts +26 -0
- package/src/util/oauth-client.ts +238 -0
- package/src/util/poll.ts +55 -0
- package/src/vercel/project-domain.ts +1 -3
- package/src/vercel/project.ts +3 -3
- package/templates/rwsdk/.cursor/rules/alchemy_cloudflare.mdc +1 -1
- package/templates/rwsdk/package.json +3 -3
- package/workers/cloudflare-state-store.js +8 -5619
- package/workers/dofs-state-store.js +2 -802
- package/workers/remote-binding-proxy.js +3 -39
- package/workers/remote-binding-proxy.ts +126 -35
- package/workers/tunnel-proxy.js +43 -0
- package/workers/tunnel-proxy.ts +121 -0
- package/lib/cloudflare/asset-manifest.d.ts +0 -15
- package/lib/cloudflare/asset-manifest.d.ts.map +0 -1
- package/lib/cloudflare/asset-manifest.js +0 -1
- package/lib/cloudflare/asset-manifest.js.map +0 -1
- package/lib/cloudflare/oauth.d.ts +0 -22
- package/lib/cloudflare/oauth.d.ts.map +0 -1
- package/lib/cloudflare/oauth.js +0 -214
- package/lib/cloudflare/oauth.js.map +0 -1
- package/lib/neon/api-error.d.ts +0 -31
- package/lib/neon/api-error.d.ts.map +0 -1
- package/lib/neon/api-error.js +0 -73
- package/lib/neon/api-error.js.map +0 -1
- package/lib/planetscale/api/index.d.ts +0 -3
- package/lib/planetscale/api/index.d.ts.map +0 -1
- package/lib/planetscale/api/index.js +0 -4
- package/lib/planetscale/api/index.js.map +0 -1
- package/lib/util/neverthrow.d.ts +0 -16
- package/lib/util/neverthrow.d.ts.map +0 -1
- package/lib/util/neverthrow.js +0 -46
- package/lib/util/neverthrow.js.map +0 -1
- package/src/cloudflare/asset-manifest.ts +0 -16
- package/src/cloudflare/oauth.ts +0 -301
- package/src/neon/api-error.ts +0 -81
- package/src/planetscale/api/index.ts +0 -4
- package/src/util/neverthrow.ts +0 -64
|
@@ -127,8 +127,7 @@ export interface CertificatePackProps extends CloudflareApiOptions {
|
|
|
127
127
|
/**
|
|
128
128
|
* Output returned after Certificate Pack creation/update
|
|
129
129
|
*/
|
|
130
|
-
export interface CertificatePack
|
|
131
|
-
extends Resource<"cloudflare::CertificatePack"> {
|
|
130
|
+
export interface CertificatePack {
|
|
132
131
|
/**
|
|
133
132
|
* The unique ID of the certificate pack
|
|
134
133
|
*/
|
|
@@ -356,7 +355,7 @@ export const CertificatePack = Resource(
|
|
|
356
355
|
`Adopting existing certificate pack ${existingPack.id} instead of creating a new one`,
|
|
357
356
|
);
|
|
358
357
|
|
|
359
|
-
return
|
|
358
|
+
return {
|
|
360
359
|
id: existingPack.id,
|
|
361
360
|
certificateAuthority: existingPack.certificate_authority,
|
|
362
361
|
cloudflareBranding: props.cloudflareBranding ?? false,
|
|
@@ -367,7 +366,7 @@ export const CertificatePack = Resource(
|
|
|
367
366
|
validityDays: existingPack.validity_days,
|
|
368
367
|
zoneId,
|
|
369
368
|
zoneName: zoneName,
|
|
370
|
-
}
|
|
369
|
+
};
|
|
371
370
|
}
|
|
372
371
|
|
|
373
372
|
logger.log(
|
|
@@ -416,7 +415,7 @@ export const CertificatePack = Resource(
|
|
|
416
415
|
`Certificate pack created with ID ${createdPack.id}. Status: ${createdPack.status}. Note: Certificate provisioning can take up to 10 minutes.`,
|
|
417
416
|
);
|
|
418
417
|
|
|
419
|
-
return
|
|
418
|
+
return {
|
|
420
419
|
id: createdPack.id,
|
|
421
420
|
certificateAuthority: createdPack.certificate_authority,
|
|
422
421
|
cloudflareBranding: props.cloudflareBranding ?? false,
|
|
@@ -427,7 +426,7 @@ export const CertificatePack = Resource(
|
|
|
427
426
|
validityDays: createdPack.validity_days,
|
|
428
427
|
zoneId,
|
|
429
428
|
zoneName: zoneName,
|
|
430
|
-
}
|
|
429
|
+
};
|
|
431
430
|
},
|
|
432
431
|
);
|
|
433
432
|
|
|
@@ -410,8 +410,7 @@ export type SchedulingPolicy =
|
|
|
410
410
|
* This resource manages the lifecycle of containerized applications running on
|
|
411
411
|
* Cloudflare's global network with automatic scaling and scheduling.
|
|
412
412
|
*/
|
|
413
|
-
export interface ContainerApplication
|
|
414
|
-
extends Resource<"cloudflare::ContainerApplication"> {
|
|
413
|
+
export interface ContainerApplication {
|
|
415
414
|
/** Unique identifier for the container application */
|
|
416
415
|
id: string;
|
|
417
416
|
|
|
@@ -514,10 +513,10 @@ export const ContainerApplication = Resource(
|
|
|
514
513
|
const applicationName = props.name ?? this.scope.createPhysicalName(id);
|
|
515
514
|
|
|
516
515
|
if (this.scope.local && props.dev) {
|
|
517
|
-
return
|
|
516
|
+
return {
|
|
518
517
|
id: this.output?.id ?? "",
|
|
519
518
|
name: applicationName,
|
|
520
|
-
}
|
|
519
|
+
};
|
|
521
520
|
}
|
|
522
521
|
|
|
523
522
|
const adopt = props.adopt ?? this.scope.adopt;
|
|
@@ -565,10 +564,10 @@ export const ContainerApplication = Resource(
|
|
|
565
564
|
step_percentage: props.rollout?.stepPercentage ?? 25,
|
|
566
565
|
target_configuration: configuration,
|
|
567
566
|
});
|
|
568
|
-
return
|
|
567
|
+
return {
|
|
569
568
|
id: application.id,
|
|
570
569
|
name: application.name,
|
|
571
|
-
}
|
|
570
|
+
};
|
|
572
571
|
} else {
|
|
573
572
|
let application: ContainerApplicationData;
|
|
574
573
|
|
|
@@ -643,10 +642,10 @@ export const ContainerApplication = Resource(
|
|
|
643
642
|
}
|
|
644
643
|
}
|
|
645
644
|
|
|
646
|
-
return
|
|
645
|
+
return {
|
|
647
646
|
id: application.id,
|
|
648
647
|
name: application.name,
|
|
649
|
-
}
|
|
648
|
+
};
|
|
650
649
|
}
|
|
651
650
|
},
|
|
652
651
|
);
|
|
@@ -69,9 +69,7 @@ interface CloudflareDomain {
|
|
|
69
69
|
/**
|
|
70
70
|
* Output returned after CustomDomain creation/update
|
|
71
71
|
*/
|
|
72
|
-
export interface CustomDomain
|
|
73
|
-
extends Resource<"cloudflare::CustomDomain">,
|
|
74
|
-
CustomDomainProps {
|
|
72
|
+
export interface CustomDomain extends CustomDomainProps {
|
|
75
73
|
/**
|
|
76
74
|
* The unique identifier for the Cloudflare domain binding.
|
|
77
75
|
*/
|
|
@@ -125,14 +123,14 @@ export const CustomDomain = Resource(
|
|
|
125
123
|
): Promise<CustomDomain> {
|
|
126
124
|
if (this.scope.local && props.dev) {
|
|
127
125
|
const now = Date.now();
|
|
128
|
-
return
|
|
126
|
+
return {
|
|
129
127
|
...props,
|
|
130
128
|
id: this.output?.id ?? "noop-domain",
|
|
131
129
|
zoneId: props.zoneId ?? "noop-zone",
|
|
132
130
|
environment: props.environment ?? "production",
|
|
133
131
|
createdAt: this.output?.createdAt ?? now,
|
|
134
132
|
updatedAt: now,
|
|
135
|
-
}
|
|
133
|
+
};
|
|
136
134
|
}
|
|
137
135
|
|
|
138
136
|
// Create Cloudflare API client with automatic account discovery
|
|
@@ -117,48 +117,47 @@ export interface D1DatabaseProps extends CloudflareApiOptions {
|
|
|
117
117
|
};
|
|
118
118
|
}
|
|
119
119
|
|
|
120
|
-
export function isD1Database(resource:
|
|
121
|
-
return resource[ResourceKind] === "cloudflare::D1Database";
|
|
120
|
+
export function isD1Database(resource: any): resource is D1Database {
|
|
121
|
+
return resource?.[ResourceKind] === "cloudflare::D1Database";
|
|
122
122
|
}
|
|
123
123
|
|
|
124
124
|
/**
|
|
125
125
|
* Output returned after D1 Database creation/update
|
|
126
126
|
*/
|
|
127
|
-
export type D1Database =
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
127
|
+
export type D1Database = Pick<
|
|
128
|
+
D1DatabaseProps,
|
|
129
|
+
| "migrationsDir"
|
|
130
|
+
| "migrationsTable"
|
|
131
|
+
| "primaryLocationHint"
|
|
132
|
+
| "readReplication"
|
|
133
|
+
> & {
|
|
134
|
+
type: "d1";
|
|
135
|
+
/**
|
|
136
|
+
* The unique ID of the database (UUID)
|
|
137
|
+
*/
|
|
138
|
+
id: string;
|
|
139
|
+
|
|
140
|
+
/**
|
|
141
|
+
* The name of the database
|
|
142
|
+
*/
|
|
143
|
+
name: string;
|
|
140
144
|
|
|
145
|
+
/**
|
|
146
|
+
* Development mode properties
|
|
147
|
+
* @internal
|
|
148
|
+
*/
|
|
149
|
+
dev: {
|
|
141
150
|
/**
|
|
142
|
-
* The
|
|
151
|
+
* The ID of the database in development mode
|
|
143
152
|
*/
|
|
144
|
-
|
|
153
|
+
id: string;
|
|
145
154
|
|
|
146
155
|
/**
|
|
147
|
-
*
|
|
148
|
-
* @internal
|
|
156
|
+
* Whether the database is running remotely
|
|
149
157
|
*/
|
|
150
|
-
|
|
151
|
-
/**
|
|
152
|
-
* The ID of the database in development mode
|
|
153
|
-
*/
|
|
154
|
-
id: string;
|
|
155
|
-
|
|
156
|
-
/**
|
|
157
|
-
* Whether the database is running remotely
|
|
158
|
-
*/
|
|
159
|
-
remote: boolean;
|
|
160
|
-
};
|
|
158
|
+
remote: boolean;
|
|
161
159
|
};
|
|
160
|
+
};
|
|
162
161
|
|
|
163
162
|
/**
|
|
164
163
|
* Creates and manages Cloudflare D1 Databases.
|
|
@@ -286,7 +285,7 @@ const _D1Database = Resource(
|
|
|
286
285
|
rootDir: this.scope.rootDir,
|
|
287
286
|
});
|
|
288
287
|
}
|
|
289
|
-
return
|
|
288
|
+
return {
|
|
290
289
|
type: "d1",
|
|
291
290
|
id: this.output?.id ?? "",
|
|
292
291
|
name: databaseName,
|
|
@@ -295,7 +294,7 @@ const _D1Database = Resource(
|
|
|
295
294
|
migrationsDir: props.migrationsDir,
|
|
296
295
|
migrationsTable: props.migrationsTable ?? DEFAULT_MIGRATIONS_TABLE,
|
|
297
296
|
dev,
|
|
298
|
-
}
|
|
297
|
+
};
|
|
299
298
|
}
|
|
300
299
|
|
|
301
300
|
const api = await createCloudflareApi(props);
|
|
@@ -414,7 +413,7 @@ const _D1Database = Resource(
|
|
|
414
413
|
// TODO(sam): why would this ever happen?
|
|
415
414
|
throw new Error("Database ID not found");
|
|
416
415
|
}
|
|
417
|
-
return
|
|
416
|
+
return {
|
|
418
417
|
type: "d1",
|
|
419
418
|
id: dbData.result.uuid!,
|
|
420
419
|
name: databaseName,
|
|
@@ -423,7 +422,7 @@ const _D1Database = Resource(
|
|
|
423
422
|
dev,
|
|
424
423
|
migrationsDir: props.migrationsDir,
|
|
425
424
|
migrationsTable: props.migrationsTable ?? DEFAULT_MIGRATIONS_TABLE,
|
|
426
|
-
}
|
|
425
|
+
};
|
|
427
426
|
},
|
|
428
427
|
);
|
|
429
428
|
|
|
@@ -37,17 +37,16 @@ export interface DispatchNamespaceProps extends CloudflareApiOptions {
|
|
|
37
37
|
}
|
|
38
38
|
|
|
39
39
|
export function isDispatchNamespace(
|
|
40
|
-
resource:
|
|
40
|
+
resource: any,
|
|
41
41
|
): resource is DispatchNamespace {
|
|
42
|
-
return resource[ResourceKind] === "cloudflare::DispatchNamespace";
|
|
42
|
+
return resource?.[ResourceKind] === "cloudflare::DispatchNamespace";
|
|
43
43
|
}
|
|
44
44
|
|
|
45
45
|
/**
|
|
46
46
|
* Output returned after Dispatch Namespace creation/update
|
|
47
47
|
*/
|
|
48
48
|
export interface DispatchNamespace
|
|
49
|
-
extends
|
|
50
|
-
Omit<DispatchNamespaceProps, "delete"> {
|
|
49
|
+
extends Omit<DispatchNamespaceProps, "delete"> {
|
|
51
50
|
type: "dispatch_namespace";
|
|
52
51
|
/**
|
|
53
52
|
* The name of the namespace
|
|
@@ -182,14 +181,14 @@ export const DispatchNamespace = Resource(
|
|
|
182
181
|
throw new Error(`Failed to get namespace information for '${namespace}'`);
|
|
183
182
|
}
|
|
184
183
|
|
|
185
|
-
return
|
|
184
|
+
return {
|
|
186
185
|
type: "dispatch_namespace",
|
|
187
186
|
namespace,
|
|
188
187
|
namespaceName: namespaceInfo.namespaceName,
|
|
189
188
|
namespaceId: namespaceInfo.namespaceId,
|
|
190
189
|
createdAt: createdAt,
|
|
191
190
|
modifiedAt: Date.now(),
|
|
192
|
-
}
|
|
191
|
+
};
|
|
193
192
|
},
|
|
194
193
|
);
|
|
195
194
|
|
|
@@ -68,7 +68,7 @@ export interface DnsRecordsProps extends CloudflareApiOptions {
|
|
|
68
68
|
/**
|
|
69
69
|
* Output returned after DNS records creation/update
|
|
70
70
|
*/
|
|
71
|
-
export interface DnsRecords
|
|
71
|
+
export interface DnsRecords {
|
|
72
72
|
/**
|
|
73
73
|
* Zone ID where records are created
|
|
74
74
|
*/
|
|
@@ -219,10 +219,10 @@ export const DnsRecords = Resource(
|
|
|
219
219
|
}),
|
|
220
220
|
);
|
|
221
221
|
|
|
222
|
-
return
|
|
222
|
+
return {
|
|
223
223
|
zoneId,
|
|
224
224
|
records: updatedRecords,
|
|
225
|
-
}
|
|
225
|
+
};
|
|
226
226
|
}
|
|
227
227
|
|
|
228
228
|
// Create new records
|
|
@@ -270,10 +270,10 @@ export const DnsRecords = Resource(
|
|
|
270
270
|
}),
|
|
271
271
|
);
|
|
272
272
|
|
|
273
|
-
return
|
|
273
|
+
return {
|
|
274
274
|
zoneId,
|
|
275
275
|
records: createdRecords,
|
|
276
|
-
}
|
|
276
|
+
};
|
|
277
277
|
},
|
|
278
278
|
);
|
|
279
279
|
|
|
@@ -36,7 +36,7 @@ export interface EmailAddressProps extends CloudflareApiOptions {
|
|
|
36
36
|
/**
|
|
37
37
|
* A destination email address for Cloudflare email routing
|
|
38
38
|
*/
|
|
39
|
-
export interface EmailAddress
|
|
39
|
+
export interface EmailAddress {
|
|
40
40
|
/**
|
|
41
41
|
* The email address
|
|
42
42
|
*/
|
|
@@ -145,13 +145,13 @@ export const EmailAddress = Resource(
|
|
|
145
145
|
const result =
|
|
146
146
|
(await getResponse.json()) as CloudflareResponse<CloudflareEmailAddress>;
|
|
147
147
|
|
|
148
|
-
return
|
|
148
|
+
return {
|
|
149
149
|
email: result.result.email,
|
|
150
150
|
verified: result.result.verified,
|
|
151
151
|
created: result.result.created,
|
|
152
152
|
modified: result.result.modified,
|
|
153
153
|
tag: result.result.tag,
|
|
154
|
-
}
|
|
154
|
+
};
|
|
155
155
|
}
|
|
156
156
|
}
|
|
157
157
|
}
|
|
@@ -166,13 +166,13 @@ export const EmailAddress = Resource(
|
|
|
166
166
|
const result =
|
|
167
167
|
(await getResponse.json()) as CloudflareResponse<CloudflareEmailAddress>;
|
|
168
168
|
|
|
169
|
-
return
|
|
169
|
+
return {
|
|
170
170
|
email: result.result.email,
|
|
171
171
|
verified: result.result.verified,
|
|
172
172
|
created: result.result.created,
|
|
173
173
|
modified: result.result.modified,
|
|
174
174
|
tag: result.result.tag,
|
|
175
|
-
}
|
|
175
|
+
};
|
|
176
176
|
}
|
|
177
177
|
|
|
178
178
|
// Create new email address
|
|
@@ -192,12 +192,12 @@ export const EmailAddress = Resource(
|
|
|
192
192
|
const result =
|
|
193
193
|
(await createResponse.json()) as CloudflareResponse<CloudflareEmailAddress>;
|
|
194
194
|
|
|
195
|
-
return
|
|
195
|
+
return {
|
|
196
196
|
email: result.result.email,
|
|
197
197
|
verified: result.result.verified,
|
|
198
198
|
created: result.result.created,
|
|
199
199
|
modified: result.result.modified,
|
|
200
200
|
tag: result.result.tag,
|
|
201
|
-
}
|
|
201
|
+
};
|
|
202
202
|
},
|
|
203
203
|
);
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { Context } from "../context.ts";
|
|
2
2
|
import { Resource } from "../resource.ts";
|
|
3
3
|
import { type CloudflareApiOptions, createCloudflareApi } from "./api.ts";
|
|
4
|
-
import type { CloudflareResponse } from "./response.ts";
|
|
5
4
|
import type { EmailAction, EmailMatcher } from "./email-rule.ts";
|
|
5
|
+
import type { CloudflareResponse } from "./response.ts";
|
|
6
6
|
import type { Zone } from "./zone.ts";
|
|
7
7
|
|
|
8
8
|
/**
|
|
@@ -54,7 +54,7 @@ export interface EmailCatchAllProps extends CloudflareApiOptions {
|
|
|
54
54
|
/**
|
|
55
55
|
* A catch-all email routing rule for a Cloudflare zone
|
|
56
56
|
*/
|
|
57
|
-
export interface EmailCatchAll
|
|
57
|
+
export interface EmailCatchAll {
|
|
58
58
|
/**
|
|
59
59
|
* Zone ID where the catch-all rule is configured
|
|
60
60
|
*/
|
|
@@ -203,14 +203,14 @@ export const EmailCatchAll = Resource(
|
|
|
203
203
|
const result =
|
|
204
204
|
(await response.json()) as CloudflareResponse<CloudflareEmailCatchAll>;
|
|
205
205
|
|
|
206
|
-
return
|
|
206
|
+
return {
|
|
207
207
|
zoneId,
|
|
208
208
|
enabled: result.result.enabled,
|
|
209
209
|
name: result.result.name,
|
|
210
210
|
matchers: result.result.matchers,
|
|
211
211
|
actions: result.result.actions,
|
|
212
212
|
tag: result.result.tag,
|
|
213
|
-
}
|
|
213
|
+
};
|
|
214
214
|
}
|
|
215
215
|
|
|
216
216
|
// Create or update catch-all rule
|
|
@@ -236,13 +236,13 @@ export const EmailCatchAll = Resource(
|
|
|
236
236
|
const result =
|
|
237
237
|
(await response.json()) as CloudflareResponse<CloudflareEmailCatchAll>;
|
|
238
238
|
|
|
239
|
-
return
|
|
239
|
+
return {
|
|
240
240
|
zoneId,
|
|
241
241
|
enabled: result.result.enabled,
|
|
242
242
|
name: result.result.name,
|
|
243
243
|
matchers: result.result.matchers,
|
|
244
244
|
actions: result.result.actions,
|
|
245
245
|
tag: result.result.tag,
|
|
246
|
-
}
|
|
246
|
+
};
|
|
247
247
|
},
|
|
248
248
|
);
|
|
@@ -43,7 +43,7 @@ export interface EmailRoutingProps extends CloudflareApiOptions {
|
|
|
43
43
|
/**
|
|
44
44
|
* Email routing configuration for a Cloudflare zone
|
|
45
45
|
*/
|
|
46
|
-
export interface EmailRouting
|
|
46
|
+
export interface EmailRouting {
|
|
47
47
|
/**
|
|
48
48
|
* Zone ID where email routing is configured
|
|
49
49
|
*/
|
|
@@ -173,14 +173,14 @@ export const EmailRouting = Resource(
|
|
|
173
173
|
const result =
|
|
174
174
|
(await getResponse.json()) as CloudflareResponse<CloudflareEmailRouting>;
|
|
175
175
|
|
|
176
|
-
return
|
|
176
|
+
return {
|
|
177
177
|
zoneId,
|
|
178
178
|
enabled: result.result.enabled,
|
|
179
179
|
name: result.result.name,
|
|
180
180
|
created: result.result.created,
|
|
181
181
|
modified: result.result.modified,
|
|
182
182
|
tag: result.result.tag,
|
|
183
|
-
}
|
|
183
|
+
};
|
|
184
184
|
}
|
|
185
185
|
|
|
186
186
|
// Create/Enable email routing
|
|
@@ -218,13 +218,13 @@ export const EmailRouting = Resource(
|
|
|
218
218
|
const result =
|
|
219
219
|
(await getResponse.json()) as CloudflareResponse<CloudflareEmailRouting>;
|
|
220
220
|
|
|
221
|
-
return
|
|
221
|
+
return {
|
|
222
222
|
zoneId,
|
|
223
223
|
enabled: result.result.enabled,
|
|
224
224
|
name: result.result.name,
|
|
225
225
|
created: result.result.created,
|
|
226
226
|
modified: result.result.modified,
|
|
227
227
|
tag: result.result.tag,
|
|
228
|
-
}
|
|
228
|
+
};
|
|
229
229
|
},
|
|
230
230
|
);
|
|
@@ -104,7 +104,7 @@ export interface EmailRuleProps extends CloudflareApiOptions {
|
|
|
104
104
|
/**
|
|
105
105
|
* An email routing rule for a Cloudflare zone
|
|
106
106
|
*/
|
|
107
|
-
export interface EmailRule
|
|
107
|
+
export interface EmailRule {
|
|
108
108
|
/**
|
|
109
109
|
* Zone ID where the rule is created
|
|
110
110
|
*/
|
|
@@ -274,7 +274,7 @@ export const EmailRule = Resource(
|
|
|
274
274
|
const result =
|
|
275
275
|
(await response.json()) as CloudflareResponse<CloudflareEmailRule>;
|
|
276
276
|
|
|
277
|
-
return
|
|
277
|
+
return {
|
|
278
278
|
zoneId,
|
|
279
279
|
ruleId: result.result.id,
|
|
280
280
|
name: result.result.name,
|
|
@@ -283,7 +283,7 @@ export const EmailRule = Resource(
|
|
|
283
283
|
matchers: result.result.matchers,
|
|
284
284
|
actions: result.result.actions,
|
|
285
285
|
tag: result.result.tag,
|
|
286
|
-
}
|
|
286
|
+
};
|
|
287
287
|
}
|
|
288
288
|
}
|
|
289
289
|
|
|
@@ -308,7 +308,7 @@ export const EmailRule = Resource(
|
|
|
308
308
|
const result =
|
|
309
309
|
(await createResponse.json()) as CloudflareResponse<CloudflareEmailRule>;
|
|
310
310
|
|
|
311
|
-
return
|
|
311
|
+
return {
|
|
312
312
|
zoneId,
|
|
313
313
|
ruleId: result.result.id,
|
|
314
314
|
name: result.result.name,
|
|
@@ -317,6 +317,6 @@ export const EmailRule = Resource(
|
|
|
317
317
|
matchers: result.result.matchers,
|
|
318
318
|
actions: result.result.actions,
|
|
319
319
|
tag: result.result.tag,
|
|
320
|
-
}
|
|
320
|
+
};
|
|
321
321
|
},
|
|
322
322
|
);
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { alchemy } from "../alchemy.ts";
|
|
2
|
+
import type { Secret } from "../secret.ts";
|
|
3
|
+
import { handleApiError } from "./api-error.ts";
|
|
4
|
+
import {
|
|
5
|
+
createCloudflareApi,
|
|
6
|
+
type CloudflareApi,
|
|
7
|
+
type CloudflareApiOptions,
|
|
8
|
+
} from "./api.ts";
|
|
9
|
+
|
|
10
|
+
export interface HyperdriveRefProps extends CloudflareApiOptions {
|
|
11
|
+
name?: string;
|
|
12
|
+
id?: string;
|
|
13
|
+
dev?: {
|
|
14
|
+
origin: string | Secret;
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export type HyperdriveRef = {
|
|
19
|
+
type: "hyperdrive";
|
|
20
|
+
name: string;
|
|
21
|
+
hyperdriveId: string;
|
|
22
|
+
dev?: {
|
|
23
|
+
origin: Secret;
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
export async function HyperdriveRef(
|
|
28
|
+
props: HyperdriveRefProps,
|
|
29
|
+
): Promise<HyperdriveRef> {
|
|
30
|
+
const api = await createCloudflareApi(props);
|
|
31
|
+
|
|
32
|
+
let hyperdriveId = props.id;
|
|
33
|
+
let hyperdriveName = props.name;
|
|
34
|
+
|
|
35
|
+
if (!hyperdriveId && hyperdriveName) {
|
|
36
|
+
// Find hyperdrive by name
|
|
37
|
+
hyperdriveId = await findHyperdriveIdByName(api, hyperdriveName);
|
|
38
|
+
if (!hyperdriveId) {
|
|
39
|
+
throw new Error(
|
|
40
|
+
`Hyperdrive config with name "${hyperdriveName}" not found`,
|
|
41
|
+
);
|
|
42
|
+
}
|
|
43
|
+
} else if (!hyperdriveName && hyperdriveId) {
|
|
44
|
+
throw new Error("HyperdriveRef requires either name or both name and id");
|
|
45
|
+
} else if (!hyperdriveName && !hyperdriveId) {
|
|
46
|
+
throw new Error("HyperdriveRef requires at least a name");
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
return {
|
|
50
|
+
type: "hyperdrive",
|
|
51
|
+
name: hyperdriveName!,
|
|
52
|
+
hyperdriveId: hyperdriveId!,
|
|
53
|
+
dev: props.dev
|
|
54
|
+
? {
|
|
55
|
+
origin:
|
|
56
|
+
typeof props.dev.origin === "string"
|
|
57
|
+
? alchemy.secret(props.dev.origin)
|
|
58
|
+
: props.dev.origin,
|
|
59
|
+
}
|
|
60
|
+
: undefined,
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* Find a Hyperdrive configuration by name
|
|
66
|
+
*/
|
|
67
|
+
export async function findHyperdriveIdByName(
|
|
68
|
+
api: CloudflareApi,
|
|
69
|
+
name: string,
|
|
70
|
+
page = 1,
|
|
71
|
+
): Promise<string | undefined> {
|
|
72
|
+
const response = await api.get(
|
|
73
|
+
`/accounts/${api.accountId}/hyperdrive/configs?page=${page}`,
|
|
74
|
+
);
|
|
75
|
+
|
|
76
|
+
if (!response.ok) {
|
|
77
|
+
await handleApiError(response, "list", "hyperdrive", "all");
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
const data: {
|
|
81
|
+
result: Array<{
|
|
82
|
+
id: string;
|
|
83
|
+
name: string;
|
|
84
|
+
}>;
|
|
85
|
+
result_info?: { total_pages?: number };
|
|
86
|
+
} = await response.json();
|
|
87
|
+
|
|
88
|
+
const found = data.result.find((config) => config.name === name);
|
|
89
|
+
if (found) {
|
|
90
|
+
return found.id;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
if (data.result_info?.total_pages && page < data.result_info.total_pages) {
|
|
94
|
+
return await findHyperdriveIdByName(api, name, page + 1);
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
return undefined;
|
|
98
|
+
}
|