alchemy-effect 0.1.0 → 0.3.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-effect.js +55038 -8
- package/bin/alchemy-effect.js.map +1 -1
- package/bin/alchemy-effect.ts +266 -10
- package/lib/$.d.ts +5 -0
- package/lib/$.d.ts.map +1 -0
- package/lib/$.js +9 -0
- package/lib/$.js.map +1 -0
- package/lib/app.d.ts +7 -15
- package/lib/app.d.ts.map +1 -1
- package/lib/app.js +1 -20
- package/lib/app.js.map +1 -1
- package/lib/apply.d.ts +15 -19
- package/lib/apply.d.ts.map +1 -1
- package/lib/apply.js +173 -82
- package/lib/apply.js.map +1 -1
- package/lib/assert-never.d.ts +12 -0
- package/lib/assert-never.d.ts.map +1 -0
- package/lib/assert-never.js +11 -0
- package/lib/assert-never.js.map +1 -0
- package/lib/aws/account.d.ts +13 -3
- package/lib/aws/account.d.ts.map +1 -1
- package/lib/aws/account.js +19 -4
- package/lib/aws/account.js.map +1 -1
- package/lib/aws/arn.d.ts +1 -5
- package/lib/aws/arn.d.ts.map +1 -1
- package/lib/aws/client.d.ts.map +1 -1
- package/lib/aws/client.js +8 -1
- package/lib/aws/client.js.map +1 -1
- package/lib/aws/config.d.ts +15 -0
- package/lib/aws/config.d.ts.map +1 -0
- package/lib/aws/config.js +1 -0
- package/lib/aws/config.js.map +1 -0
- package/lib/aws/credentials.d.ts +11 -1
- package/lib/aws/credentials.d.ts.map +1 -1
- package/lib/aws/credentials.js +73 -47
- package/lib/aws/credentials.js.map +1 -1
- package/lib/aws/dynamodb/attribute-value.d.ts +20 -0
- package/lib/aws/dynamodb/attribute-value.d.ts.map +1 -0
- package/lib/aws/dynamodb/attribute-value.js +217 -0
- package/lib/aws/dynamodb/attribute-value.js.map +1 -0
- package/lib/aws/dynamodb/client.d.ts +12 -0
- package/lib/aws/dynamodb/client.d.ts.map +1 -0
- package/lib/aws/{sqs/queue.client.js → dynamodb/client.js} +6 -6
- package/lib/aws/dynamodb/client.js.map +1 -0
- package/lib/aws/dynamodb/expr.d.ts +41 -0
- package/lib/aws/dynamodb/expr.d.ts.map +1 -0
- package/lib/aws/dynamodb/expr.js +1 -0
- package/lib/aws/dynamodb/expr.js.map +1 -0
- package/lib/aws/dynamodb/index.d.ts +10 -0
- package/lib/aws/dynamodb/index.d.ts.map +1 -0
- package/lib/aws/dynamodb/index.js +9 -0
- package/lib/aws/dynamodb/index.js.map +1 -0
- package/lib/aws/dynamodb/projection.d.ts +25 -0
- package/lib/aws/dynamodb/projection.d.ts.map +1 -0
- package/lib/aws/dynamodb/projection.js +1 -0
- package/lib/aws/dynamodb/projection.js.map +1 -0
- package/lib/aws/dynamodb/secondary-index.d.ts +26 -0
- package/lib/aws/dynamodb/secondary-index.d.ts.map +1 -0
- package/lib/aws/dynamodb/secondary-index.js +4 -0
- package/lib/aws/dynamodb/secondary-index.js.map +1 -0
- package/lib/aws/dynamodb/table.d.ts +59 -0
- package/lib/aws/dynamodb/table.d.ts.map +1 -0
- package/lib/aws/dynamodb/table.get-item.d.ts +57 -0
- package/lib/aws/dynamodb/table.get-item.d.ts.map +1 -0
- package/lib/aws/dynamodb/table.get-item.js +77 -0
- package/lib/aws/dynamodb/table.get-item.js.map +1 -0
- package/lib/aws/dynamodb/table.js +4 -0
- package/lib/aws/dynamodb/table.js.map +1 -0
- package/lib/aws/dynamodb/table.provider.d.ts +7 -0
- package/lib/aws/dynamodb/table.provider.d.ts.map +1 -0
- package/lib/aws/dynamodb/table.provider.js +187 -0
- package/lib/aws/dynamodb/table.provider.js.map +1 -0
- package/lib/aws/ec2/client.d.ts +12 -0
- package/lib/aws/ec2/client.d.ts.map +1 -0
- package/lib/aws/ec2/client.js +11 -0
- package/lib/aws/ec2/client.js.map +1 -0
- package/lib/aws/ec2/index.d.ts +7 -0
- package/lib/aws/ec2/index.d.ts.map +1 -0
- package/lib/aws/ec2/index.js +7 -0
- package/lib/aws/ec2/index.js.map +1 -0
- package/lib/aws/ec2/subnet.d.ts +175 -0
- package/lib/aws/ec2/subnet.d.ts.map +1 -0
- package/lib/aws/ec2/subnet.js +4 -0
- package/lib/aws/ec2/subnet.js.map +1 -0
- package/lib/aws/ec2/subnet.provider.d.ts +4 -0
- package/lib/aws/ec2/subnet.provider.d.ts.map +1 -0
- package/lib/aws/ec2/subnet.provider.js +250 -0
- package/lib/aws/ec2/subnet.provider.js.map +1 -0
- package/lib/aws/ec2/vpc.d.ts +135 -0
- package/lib/aws/ec2/vpc.d.ts.map +1 -0
- package/lib/aws/ec2/vpc.js +4 -0
- package/lib/aws/ec2/vpc.js.map +1 -0
- package/lib/aws/ec2/vpc.provider.d.ts +6 -0
- package/lib/aws/ec2/vpc.provider.d.ts.map +1 -0
- package/lib/aws/ec2/vpc.provider.js +183 -0
- package/lib/aws/ec2/vpc.provider.js.map +1 -0
- package/lib/aws/index.d.ts +23 -16
- package/lib/aws/index.d.ts.map +1 -1
- package/lib/aws/index.js +10 -18
- package/lib/aws/index.js.map +1 -1
- package/lib/aws/lambda/client.d.ts +8 -0
- package/lib/aws/lambda/client.d.ts.map +1 -0
- package/lib/aws/lambda/client.js +7 -0
- package/lib/aws/lambda/client.js.map +1 -0
- package/lib/aws/lambda/consume.d.ts +10 -11
- package/lib/aws/lambda/consume.d.ts.map +1 -1
- package/lib/aws/lambda/consume.js +3 -3
- package/lib/aws/lambda/consume.js.map +1 -1
- package/lib/aws/lambda/function.d.ts +18 -15
- package/lib/aws/lambda/function.d.ts.map +1 -1
- package/lib/aws/lambda/function.handler.d.ts +1 -1
- package/lib/aws/lambda/function.handler.d.ts.map +1 -1
- package/lib/aws/lambda/function.handler.js.map +1 -1
- package/lib/aws/lambda/function.invoke.d.ts +7 -5
- package/lib/aws/lambda/function.invoke.d.ts.map +1 -1
- package/lib/aws/lambda/function.invoke.js +5 -3
- package/lib/aws/lambda/function.invoke.js.map +1 -1
- package/lib/aws/lambda/function.js +1 -1
- package/lib/aws/lambda/function.js.map +1 -1
- package/lib/aws/lambda/function.provider.d.ts +6 -5
- package/lib/aws/lambda/function.provider.d.ts.map +1 -1
- package/lib/aws/lambda/function.provider.js +150 -58
- package/lib/aws/lambda/function.provider.js.map +1 -1
- package/lib/aws/lambda/index.d.ts +2 -2
- package/lib/aws/lambda/index.d.ts.map +1 -1
- package/lib/aws/lambda/index.js +2 -1
- package/lib/aws/lambda/index.js.map +1 -1
- package/lib/aws/lambda/serve.d.ts +2 -4
- package/lib/aws/lambda/serve.d.ts.map +1 -1
- package/lib/aws/lambda/serve.js.map +1 -1
- package/lib/aws/profile.d.ts +2 -2
- package/lib/aws/profile.d.ts.map +1 -1
- package/lib/aws/profile.js +1 -1
- package/lib/aws/profile.js.map +1 -1
- package/lib/aws/region.d.ts +14 -1
- package/lib/aws/region.d.ts.map +1 -1
- package/lib/aws/region.js +26 -1
- package/lib/aws/region.js.map +1 -1
- package/lib/aws/sqs/client.d.ts +12 -0
- package/lib/aws/sqs/client.d.ts.map +1 -0
- package/lib/aws/sqs/client.js +11 -0
- package/lib/aws/sqs/client.js.map +1 -0
- package/lib/aws/sqs/index.d.ts +3 -1
- package/lib/aws/sqs/index.d.ts.map +1 -1
- package/lib/aws/sqs/index.js +3 -1
- package/lib/aws/sqs/index.js.map +1 -1
- package/lib/aws/sqs/queue.consume.d.ts +1 -10
- package/lib/aws/sqs/queue.consume.d.ts.map +1 -1
- package/lib/aws/sqs/queue.consume.js +0 -19
- package/lib/aws/sqs/queue.consume.js.map +1 -1
- package/lib/aws/sqs/queue.d.ts +6 -12
- package/lib/aws/sqs/queue.d.ts.map +1 -1
- package/lib/aws/sqs/queue.event-source.d.ts +22 -0
- package/lib/aws/sqs/queue.event-source.d.ts.map +1 -0
- package/lib/aws/sqs/queue.event-source.js +130 -0
- package/lib/aws/sqs/queue.event-source.js.map +1 -0
- package/lib/aws/sqs/queue.js +1 -1
- package/lib/aws/sqs/queue.js.map +1 -1
- package/lib/aws/sqs/queue.provider.d.ts +5 -4
- package/lib/aws/sqs/queue.provider.d.ts.map +1 -1
- package/lib/aws/sqs/queue.provider.js +6 -6
- package/lib/aws/sqs/queue.provider.js.map +1 -1
- package/lib/aws/sqs/queue.send-message.d.ts +8 -6
- package/lib/aws/sqs/queue.send-message.d.ts.map +1 -1
- package/lib/aws/sqs/queue.send-message.js +6 -4
- package/lib/aws/sqs/queue.send-message.js.map +1 -1
- package/lib/binding.d.ts +74 -26
- package/lib/binding.d.ts.map +1 -1
- package/lib/binding.js.map +1 -1
- package/lib/capability.d.ts +38 -0
- package/lib/capability.d.ts.map +1 -1
- package/lib/cli/components/ApprovePlan.d.ts +2 -2
- package/lib/cli/components/ApprovePlan.d.ts.map +1 -1
- package/lib/cli/components/ApprovePlan.js.map +1 -1
- package/lib/cli/components/Plan.d.ts +2 -2
- package/lib/cli/components/Plan.d.ts.map +1 -1
- package/lib/cli/components/Plan.js +3 -1
- package/lib/cli/components/Plan.js.map +1 -1
- package/lib/cli/components/PlanProgress.d.ts +8 -4
- package/lib/cli/components/PlanProgress.d.ts.map +1 -1
- package/lib/cli/components/PlanProgress.js +11 -1
- package/lib/cli/components/PlanProgress.js.map +1 -1
- package/lib/cli/index.d.ts +342 -213
- package/lib/cli/index.d.ts.map +1 -1
- package/lib/cli/index.js +26047 -11403
- package/lib/cli/index.js.map +1 -1
- package/lib/cli/ink-service.d.ts +4 -0
- package/lib/cli/ink-service.d.ts.map +1 -0
- package/lib/cli/ink-service.js +43 -0
- package/lib/cli/ink-service.js.map +1 -0
- package/lib/cli/service.d.ts +21 -0
- package/lib/cli/service.d.ts.map +1 -0
- package/lib/cli/service.js +5 -0
- package/lib/cli/service.js.map +1 -0
- package/lib/cloudflare/account.d.ts +10 -0
- package/lib/cloudflare/account.d.ts.map +1 -0
- package/lib/cloudflare/account.js +24 -0
- package/lib/cloudflare/account.js.map +1 -0
- package/lib/cloudflare/api.d.ts +31 -19
- package/lib/cloudflare/api.d.ts.map +1 -1
- package/lib/cloudflare/api.js +95 -29
- package/lib/cloudflare/api.js.map +1 -1
- package/lib/cloudflare/config.d.ts +9 -0
- package/lib/cloudflare/config.d.ts.map +1 -0
- package/lib/cloudflare/config.js +1 -0
- package/lib/cloudflare/config.js.map +1 -0
- package/lib/cloudflare/context.d.ts +27 -0
- package/lib/cloudflare/context.d.ts.map +1 -0
- package/lib/cloudflare/context.js +24 -0
- package/lib/cloudflare/context.js.map +1 -0
- package/lib/cloudflare/index.d.ts +7 -4
- package/lib/cloudflare/index.d.ts.map +1 -1
- package/lib/cloudflare/index.js +7 -4
- package/lib/cloudflare/index.js.map +1 -1
- package/lib/cloudflare/kv/index.d.ts +4 -0
- package/lib/cloudflare/kv/index.d.ts.map +1 -0
- package/lib/cloudflare/kv/index.js +4 -0
- package/lib/cloudflare/kv/index.js.map +1 -0
- package/lib/cloudflare/kv/namespace.binding.d.ts +10 -0
- package/lib/cloudflare/kv/namespace.binding.d.ts.map +1 -0
- package/lib/cloudflare/kv/namespace.binding.js +15 -0
- package/lib/cloudflare/kv/namespace.binding.js.map +1 -0
- package/lib/cloudflare/kv/namespace.client.d.ts +11 -0
- package/lib/cloudflare/kv/namespace.client.d.ts.map +1 -0
- package/lib/cloudflare/kv/namespace.client.js +31 -0
- package/lib/cloudflare/kv/namespace.client.js.map +1 -0
- package/lib/cloudflare/kv/namespace.d.ts +24 -0
- package/lib/cloudflare/kv/namespace.d.ts.map +1 -0
- package/lib/cloudflare/kv/namespace.js +3 -0
- package/lib/cloudflare/kv/namespace.js.map +1 -0
- package/lib/cloudflare/kv/namespace.provider.d.ts +6 -0
- package/lib/cloudflare/kv/namespace.provider.d.ts.map +1 -0
- package/lib/cloudflare/kv/namespace.provider.js +81 -0
- package/lib/cloudflare/kv/namespace.provider.js.map +1 -0
- package/lib/cloudflare/live.d.ts +11 -0
- package/lib/cloudflare/live.d.ts.map +1 -0
- package/lib/cloudflare/live.js +15 -0
- package/lib/cloudflare/live.js.map +1 -0
- package/lib/cloudflare/r2/bucket.binding.d.ts +10 -0
- package/lib/cloudflare/r2/bucket.binding.d.ts.map +1 -0
- package/lib/cloudflare/r2/bucket.binding.js +18 -0
- package/lib/cloudflare/r2/bucket.binding.js.map +1 -0
- package/lib/cloudflare/r2/bucket.client.d.ts +8 -0
- package/lib/cloudflare/r2/bucket.client.d.ts.map +1 -0
- package/lib/cloudflare/r2/bucket.client.js +9 -0
- package/lib/cloudflare/r2/bucket.client.js.map +1 -0
- package/lib/cloudflare/r2/bucket.d.ts +33 -0
- package/lib/cloudflare/r2/bucket.d.ts.map +1 -0
- package/lib/cloudflare/r2/bucket.del.d.ts +4 -0
- package/lib/cloudflare/r2/bucket.del.d.ts.map +1 -0
- package/lib/cloudflare/r2/bucket.del.js +7 -0
- package/lib/cloudflare/r2/bucket.del.js.map +1 -0
- package/lib/cloudflare/r2/bucket.get.d.ts +5 -0
- package/lib/cloudflare/r2/bucket.get.d.ts.map +1 -0
- package/lib/cloudflare/r2/bucket.get.js +7 -0
- package/lib/cloudflare/r2/bucket.get.js.map +1 -0
- package/lib/cloudflare/r2/bucket.head.d.ts +4 -0
- package/lib/cloudflare/r2/bucket.head.d.ts.map +1 -0
- package/lib/cloudflare/r2/bucket.head.js +7 -0
- package/lib/cloudflare/r2/bucket.head.js.map +1 -0
- package/lib/cloudflare/r2/bucket.js +3 -0
- package/lib/cloudflare/r2/bucket.js.map +1 -0
- package/lib/cloudflare/r2/bucket.list.d.ts +5 -0
- package/lib/cloudflare/r2/bucket.list.d.ts.map +1 -0
- package/lib/cloudflare/r2/bucket.list.js +7 -0
- package/lib/cloudflare/r2/bucket.list.js.map +1 -0
- package/lib/cloudflare/r2/bucket.multipart.d.ts +19 -0
- package/lib/cloudflare/r2/bucket.multipart.d.ts.map +1 -0
- package/lib/cloudflare/r2/bucket.multipart.js +25 -0
- package/lib/cloudflare/r2/bucket.multipart.js.map +1 -0
- package/lib/cloudflare/r2/bucket.provider.d.ts +6 -0
- package/lib/cloudflare/r2/bucket.provider.d.ts.map +1 -0
- package/lib/cloudflare/r2/bucket.provider.js +67 -0
- package/lib/cloudflare/r2/bucket.provider.js.map +1 -0
- package/lib/cloudflare/r2/bucket.put.d.ts +6 -0
- package/lib/cloudflare/r2/bucket.put.d.ts.map +1 -0
- package/lib/cloudflare/r2/bucket.put.js +8 -0
- package/lib/cloudflare/r2/bucket.put.js.map +1 -0
- package/lib/cloudflare/r2/index.d.ts +10 -0
- package/lib/cloudflare/r2/index.d.ts.map +1 -0
- package/lib/cloudflare/r2/index.js +10 -0
- package/lib/cloudflare/r2/index.js.map +1 -0
- package/lib/cloudflare/stream.d.ts +10 -0
- package/lib/cloudflare/stream.d.ts.map +1 -0
- package/lib/cloudflare/stream.js +16 -0
- package/lib/cloudflare/stream.js.map +1 -0
- package/lib/cloudflare/worker/assets.fetch.d.ts +9 -0
- package/lib/cloudflare/worker/assets.fetch.d.ts.map +1 -0
- package/lib/cloudflare/worker/assets.fetch.js +12 -0
- package/lib/cloudflare/worker/assets.fetch.js.map +1 -0
- package/lib/cloudflare/worker/assets.provider.d.ts +66 -0
- package/lib/cloudflare/worker/assets.provider.d.ts.map +1 -0
- package/lib/cloudflare/worker/assets.provider.js +145 -0
- package/lib/cloudflare/worker/assets.provider.js.map +1 -0
- package/lib/cloudflare/worker/index.d.ts +5 -0
- package/lib/cloudflare/worker/index.d.ts.map +1 -0
- package/lib/cloudflare/worker/index.js +5 -0
- package/lib/cloudflare/worker/index.js.map +1 -0
- package/lib/cloudflare/worker/worker.d.ts +66 -0
- package/lib/cloudflare/worker/worker.d.ts.map +1 -0
- package/lib/cloudflare/worker/worker.handler.d.ts +11 -0
- package/lib/cloudflare/worker/worker.handler.d.ts.map +1 -0
- package/lib/cloudflare/worker/worker.handler.js +15 -0
- package/lib/cloudflare/worker/worker.handler.js.map +1 -0
- package/lib/cloudflare/worker/worker.js +4 -0
- package/lib/cloudflare/worker/worker.js.map +1 -0
- package/lib/cloudflare/worker/worker.provider.d.ts +11 -0
- package/lib/cloudflare/worker/worker.provider.d.ts.map +1 -0
- package/lib/cloudflare/worker/worker.provider.js +194 -0
- package/lib/cloudflare/worker/worker.provider.js.map +1 -0
- package/lib/cloudflare/worker/worker.serve.d.ts +39 -0
- package/lib/cloudflare/worker/worker.serve.d.ts.map +1 -0
- package/lib/cloudflare/worker/worker.serve.js +4 -0
- package/lib/cloudflare/worker/worker.serve.js.map +1 -0
- package/lib/data.d.ts +3 -0
- package/lib/data.d.ts.map +1 -0
- package/lib/data.js +8 -0
- package/lib/data.js.map +1 -0
- package/lib/destroy.d.ts +1 -3
- package/lib/destroy.d.ts.map +1 -1
- package/lib/destroy.js +2 -0
- package/lib/destroy.js.map +1 -1
- package/lib/diff.d.ts +16 -0
- package/lib/diff.d.ts.map +1 -0
- package/lib/diff.js +9 -0
- package/lib/diff.js.map +1 -0
- package/lib/dot-alchemy.d.ts +3 -2
- package/lib/dot-alchemy.d.ts.map +1 -1
- package/lib/dot-alchemy.js +3 -2
- package/lib/dot-alchemy.js.map +1 -1
- package/lib/env.d.ts +5 -0
- package/lib/env.d.ts.map +1 -1
- package/lib/env.js +15 -29
- package/lib/env.js.map +1 -1
- package/lib/esbuild.d.ts +28 -0
- package/lib/esbuild.d.ts.map +1 -0
- package/lib/esbuild.js +63 -0
- package/lib/esbuild.js.map +1 -0
- package/lib/exports.d.ts +9 -0
- package/lib/exports.d.ts.map +1 -0
- package/lib/exports.js +13 -0
- package/lib/exports.js.map +1 -0
- package/lib/index.d.ts +11 -5
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +11 -5
- package/lib/index.js.map +1 -1
- package/lib/input.d.ts +32 -0
- package/lib/input.d.ts.map +1 -0
- package/lib/input.js +1 -0
- package/lib/input.js.map +1 -0
- package/lib/output.d.ts +143 -0
- package/lib/output.d.ts.map +1 -0
- package/lib/output.js +269 -0
- package/lib/output.js.map +1 -0
- package/lib/plan.d.ts +59 -29
- package/lib/plan.d.ts.map +1 -1
- package/lib/plan.js +347 -169
- package/lib/plan.js.map +1 -1
- package/lib/policy.d.ts +22 -5
- package/lib/policy.d.ts.map +1 -1
- package/lib/policy.js +10 -2
- package/lib/policy.js.map +1 -1
- package/lib/provider.d.ts +16 -18
- package/lib/provider.d.ts.map +1 -1
- package/lib/ref.d.ts +14 -0
- package/lib/ref.d.ts.map +1 -0
- package/lib/ref.js +21 -0
- package/lib/ref.js.map +1 -0
- package/lib/resource.d.ts +13 -16
- package/lib/resource.d.ts.map +1 -1
- package/lib/resource.js +1 -0
- package/lib/resource.js.map +1 -1
- package/lib/runtime.d.ts +8 -7
- package/lib/runtime.d.ts.map +1 -1
- package/lib/runtime.js.map +1 -1
- package/lib/schema.d.ts +37 -0
- package/lib/schema.d.ts.map +1 -0
- package/lib/schema.js +61 -0
- package/lib/schema.js.map +1 -0
- package/lib/service.d.ts +9 -6
- package/lib/service.d.ts.map +1 -1
- package/lib/service.js.map +1 -1
- package/lib/sha256.d.ts +5 -0
- package/lib/sha256.d.ts.map +1 -0
- package/lib/sha256.js +16 -0
- package/lib/sha256.js.map +1 -0
- package/lib/stack.d.ts +60 -0
- package/lib/stack.d.ts.map +1 -0
- package/lib/stack.js +11 -0
- package/lib/stack.js.map +1 -0
- package/lib/stage.d.ts +39 -0
- package/lib/stage.d.ts.map +1 -0
- package/lib/stage.js +32 -0
- package/lib/stage.js.map +1 -0
- package/lib/state.d.ts +53 -11
- package/lib/state.d.ts.map +1 -1
- package/lib/state.js +33 -31
- package/lib/state.js.map +1 -1
- package/lib/tags.d.ts +17 -0
- package/lib/tags.d.ts.map +1 -0
- package/lib/tags.js +22 -0
- package/lib/tags.js.map +1 -0
- package/lib/test.d.ts +35 -0
- package/lib/test.d.ts.map +1 -0
- package/lib/test.js +68 -0
- package/lib/test.js.map +1 -0
- package/lib/tsconfig.test.tsbuildinfo +1 -0
- package/lib/type.d.ts +6 -0
- package/lib/type.d.ts.map +1 -0
- package/lib/type.js +3 -0
- package/lib/type.js.map +1 -0
- package/lib/unknown.d.ts +4 -0
- package/lib/unknown.d.ts.map +1 -0
- package/lib/unknown.js +4 -0
- package/lib/unknown.js.map +1 -0
- package/lib/user.d.ts +3 -0
- package/lib/user.d.ts.map +1 -0
- package/lib/user.js +3 -0
- package/lib/user.js.map +1 -0
- package/lib/util.d.ts +6 -0
- package/lib/util.d.ts.map +1 -0
- package/lib/util.js +9 -0
- package/lib/util.js.map +1 -0
- package/package.json +58 -7
- package/src/$.ts +17 -0
- package/src/app.ts +9 -37
- package/src/apply.ts +435 -289
- package/src/assert-never.ts +18 -0
- package/src/aws/account.ts +29 -7
- package/src/aws/arn.ts +1 -7
- package/src/aws/client.ts +14 -1
- package/src/aws/config.ts +16 -0
- package/src/aws/credentials.ts +213 -177
- package/src/aws/dynamodb/attribute-value.ts +240 -0
- package/src/aws/{sqs/queue.client.ts → dynamodb/client.ts} +9 -9
- package/src/aws/dynamodb/expr.ts +90 -0
- package/src/aws/dynamodb/index.ts +12 -0
- package/src/aws/dynamodb/projection.ts +159 -0
- package/src/aws/dynamodb/secondary-index.ts +45 -0
- package/src/aws/dynamodb/table.get-item.ts +173 -0
- package/src/aws/dynamodb/table.provider.ts +276 -0
- package/src/aws/dynamodb/table.ts +101 -0
- package/src/aws/ec2/client.ts +20 -0
- package/src/aws/ec2/index.ts +7 -0
- package/src/aws/ec2/subnet.provider.ts +358 -0
- package/src/aws/ec2/subnet.ts +213 -0
- package/src/aws/ec2/vpc.provider.ts +269 -0
- package/src/aws/ec2/vpc.ts +163 -0
- package/src/aws/index.ts +50 -45
- package/src/aws/lambda/client.ts +14 -0
- package/src/aws/lambda/consume.ts +8 -8
- package/src/aws/lambda/function.handler.ts +1 -1
- package/src/aws/lambda/function.invoke.ts +8 -4
- package/src/aws/lambda/function.provider.ts +208 -109
- package/src/aws/lambda/function.ts +21 -12
- package/src/aws/lambda/index.ts +3 -4
- package/src/aws/lambda/serve.ts +1 -1
- package/src/aws/profile.ts +1 -4
- package/src/aws/region.ts +43 -2
- package/src/aws/sqs/client.ts +20 -0
- package/src/aws/sqs/index.ts +4 -1
- package/src/aws/sqs/queue.consume.ts +1 -34
- package/src/aws/sqs/queue.event-source.ts +227 -0
- package/src/aws/sqs/queue.provider.ts +14 -7
- package/src/aws/sqs/queue.send-message.ts +7 -10
- package/src/aws/sqs/queue.ts +9 -4
- package/src/binding.ts +130 -34
- package/src/capability.ts +44 -0
- package/src/cli/components/ApprovePlan.tsx +2 -2
- package/src/cli/components/Plan.tsx +6 -3
- package/src/cli/components/PlanProgress.tsx +32 -14
- package/src/cli/index.ts +2 -6
- package/src/cli/ink-service.tsx +61 -0
- package/src/cli/service.ts +23 -0
- package/src/cloudflare/account.ts +37 -0
- package/src/cloudflare/api.ts +147 -63
- package/src/cloudflare/config.ts +7 -0
- package/src/cloudflare/context.ts +49 -0
- package/src/cloudflare/index.ts +8 -4
- package/src/cloudflare/kv/index.ts +3 -0
- package/src/cloudflare/kv/namespace.binding.ts +27 -0
- package/src/cloudflare/kv/namespace.client.ts +70 -0
- package/src/cloudflare/kv/namespace.provider.ts +100 -0
- package/src/cloudflare/kv/namespace.ts +30 -0
- package/src/cloudflare/live.ts +32 -0
- package/src/cloudflare/r2/bucket.binding.ts +29 -0
- package/src/cloudflare/r2/bucket.client.ts +22 -0
- package/src/cloudflare/r2/bucket.del.ts +11 -0
- package/src/cloudflare/r2/bucket.get.ts +13 -0
- package/src/cloudflare/r2/bucket.head.ts +11 -0
- package/src/cloudflare/r2/bucket.list.ts +12 -0
- package/src/cloudflare/r2/bucket.multipart.ts +55 -0
- package/src/cloudflare/r2/bucket.provider.ts +84 -0
- package/src/cloudflare/r2/bucket.put.ts +17 -0
- package/src/cloudflare/r2/bucket.ts +44 -0
- package/src/cloudflare/r2/index.ts +9 -0
- package/src/cloudflare/stream.ts +21 -0
- package/src/cloudflare/worker/assets.fetch.ts +29 -0
- package/src/cloudflare/worker/assets.provider.ts +249 -0
- package/src/cloudflare/worker/index.ts +4 -0
- package/src/cloudflare/worker/worker.handler.ts +39 -0
- package/src/cloudflare/worker/worker.provider.ts +249 -0
- package/src/cloudflare/worker/worker.serve.ts +22 -0
- package/src/cloudflare/worker/worker.ts +77 -0
- package/src/data.ts +18 -0
- package/src/destroy.ts +2 -3
- package/src/diff.ts +30 -0
- package/src/dot-alchemy.ts +3 -2
- package/src/env.ts +20 -32
- package/src/esbuild.ts +98 -0
- package/src/exports.ts +21 -0
- package/src/index.ts +12 -6
- package/src/input.ts +81 -0
- package/src/output.ts +518 -0
- package/src/plan.ts +544 -243
- package/src/policy.ts +58 -7
- package/src/provider.ts +27 -25
- package/src/ref.ts +48 -0
- package/src/resource.ts +23 -8
- package/src/runtime.ts +16 -9
- package/src/schema.ts +102 -0
- package/src/service.ts +11 -7
- package/src/sha256.ts +23 -0
- package/src/stack.ts +116 -0
- package/src/stage.ts +85 -0
- package/src/state.ts +141 -62
- package/src/tags.ts +38 -0
- package/src/test.ts +172 -0
- package/src/type.ts +6 -0
- package/src/unknown.ts +6 -0
- package/src/user.ts +4 -0
- package/src/util.ts +21 -0
- package/lib/approve.d.ts +0 -15
- package/lib/approve.d.ts.map +0 -1
- package/lib/approve.js +0 -7
- package/lib/approve.js.map +0 -1
- package/lib/aws/lambda/function.client.d.ts +0 -8
- package/lib/aws/lambda/function.client.d.ts.map +0 -1
- package/lib/aws/lambda/function.client.js +0 -7
- package/lib/aws/lambda/function.client.js.map +0 -1
- package/lib/aws/sqs/queue.client.d.ts +0 -12
- package/lib/aws/sqs/queue.client.d.ts.map +0 -1
- package/lib/aws/sqs/queue.client.js.map +0 -1
- package/lib/cli/approve.d.ts +0 -4
- package/lib/cli/approve.d.ts.map +0 -1
- package/lib/cli/approve.js +0 -18
- package/lib/cli/approve.js.map +0 -1
- package/lib/cli/clack.d.ts +0 -14
- package/lib/cli/clack.d.ts.map +0 -1
- package/lib/cli/clack.js +0 -12
- package/lib/cli/clack.js.map +0 -1
- package/lib/cli/main.d.ts +0 -2
- package/lib/cli/main.d.ts.map +0 -1
- package/lib/cli/main.js +0 -1
- package/lib/cli/main.js.map +0 -1
- package/lib/cli/plan.d.ts +0 -13
- package/lib/cli/plan.d.ts.map +0 -1
- package/lib/cli/plan.js +0 -1
- package/lib/cli/plan.js.map +0 -1
- package/lib/cli/progress.d.ts +0 -7
- package/lib/cli/progress.d.ts.map +0 -1
- package/lib/cli/progress.js +0 -29
- package/lib/cli/progress.js.map +0 -1
- package/lib/cli/spinner.d.ts +0 -2
- package/lib/cli/spinner.d.ts.map +0 -1
- package/lib/cli/spinner.js +0 -13
- package/lib/cli/spinner.js.map +0 -1
- package/lib/cloudflare/kv.d.ts +0 -29
- package/lib/cloudflare/kv.d.ts.map +0 -1
- package/lib/cloudflare/kv.js +0 -3
- package/lib/cloudflare/kv.js.map +0 -1
- package/lib/cloudflare/kv.provider.d.ts +0 -4
- package/lib/cloudflare/kv.provider.d.ts.map +0 -1
- package/lib/cloudflare/kv.provider.js +0 -39
- package/lib/cloudflare/kv.provider.js.map +0 -1
- package/lib/cloudflare/worker.d.ts +0 -33
- package/lib/cloudflare/worker.d.ts.map +0 -1
- package/lib/cloudflare/worker.js +0 -4
- package/lib/cloudflare/worker.js.map +0 -1
- package/src/approve.ts +0 -13
- package/src/aws/lambda/function.client.ts +0 -14
- package/src/cli/approve.tsx +0 -30
- package/src/cli/clack.ts +0 -22
- package/src/cli/main.ts +0 -0
- package/src/cli/plan.ts +0 -16
- package/src/cli/progress.tsx +0 -45
- package/src/cli/spinner.ts +0 -14
- package/src/cloudflare/kv.provider.ts +0 -51
- package/src/cloudflare/kv.ts +0 -20
- package/src/cloudflare/worker.ts +0 -34
package/lib/aws/credentials.js
CHANGED
|
@@ -12,7 +12,8 @@ import * as Redacted from "effect/Redacted";
|
|
|
12
12
|
import { createHash } from "node:crypto";
|
|
13
13
|
import * as path from "node:path";
|
|
14
14
|
import { parseIni, parseSSOSessionData } from "./parse-ini.js";
|
|
15
|
-
import {
|
|
15
|
+
import { Profile } from "./profile.js";
|
|
16
|
+
import { App } from "../app.js";
|
|
16
17
|
export class Credentials extends Context.Tag("AWS::Credentials")() {
|
|
17
18
|
}
|
|
18
19
|
export const fromAwsCredentialIdentity = (identity) => Credentials.of({
|
|
@@ -60,57 +61,27 @@ export class InvalidSSOToken extends Data.TaggedError("Alchemy::AWS::InvalidSSOT
|
|
|
60
61
|
}
|
|
61
62
|
export class ExpiredSSOToken extends Data.TaggedError("Alchemy::AWS::ExpiredSSOToken") {
|
|
62
63
|
}
|
|
64
|
+
export const fromStageConfig = () => Layer.effect(Credentials, Effect.gen(function* () {
|
|
65
|
+
const app = yield* App;
|
|
66
|
+
if (app.config.aws?.profile) {
|
|
67
|
+
return yield* loadSSOCredentials(app.config.aws.profile);
|
|
68
|
+
}
|
|
69
|
+
else if (app.config.aws?.credentials) {
|
|
70
|
+
return fromAwsCredentialIdentity(app.config.aws.credentials);
|
|
71
|
+
}
|
|
72
|
+
return yield* Effect.dieMessage("No AWS credentials found in stage config");
|
|
73
|
+
}));
|
|
63
74
|
export const fromSSO = () => Layer.effect(Credentials, Effect.gen(function* () {
|
|
75
|
+
const profileName = Option.getOrElse(yield* Effect.serviceOption(Profile), () => "default");
|
|
76
|
+
return yield* loadSSOCredentials(profileName);
|
|
77
|
+
}));
|
|
78
|
+
export const loadSSOCredentials = Effect.fn(function* (profileName) {
|
|
64
79
|
const client = yield* HttpClient.HttpClient;
|
|
65
80
|
const fs = yield* FileSystem.FileSystem;
|
|
66
|
-
const profileName = Option.getOrElse(yield* Effect.serviceOption(AwsProfile), () => "default");
|
|
67
|
-
const profiles = yield* Effect.promise(() => ini.parseKnownFiles({ profile: profileName }));
|
|
68
|
-
const profile = profiles[profileName];
|
|
69
|
-
if (!profile) {
|
|
70
|
-
yield* Effect.fail(new ProfileNotFound({
|
|
71
|
-
message: `Profile ${profileName} not found`,
|
|
72
|
-
profile: profileName,
|
|
73
|
-
}));
|
|
74
|
-
}
|
|
75
81
|
const awsDir = path.join(ini.getHomeDir(), ".aws");
|
|
76
|
-
const configPath = path.join(awsDir, "config");
|
|
77
82
|
const cachePath = path.join(awsDir, "sso", "cache");
|
|
83
|
+
const profile = yield* loadProfile(profileName);
|
|
78
84
|
if (profile.sso_session) {
|
|
79
|
-
const ssoRegion = Option.getOrUndefined(yield* Effect.serviceOption(SsoRegion));
|
|
80
|
-
const ssoStartUrl = Option.getOrElse(yield* Effect.serviceOption(SsoStartUrl), () => profile.sso_start_url);
|
|
81
|
-
const ssoSessions = yield* fs.readFileString(configPath).pipe(Effect.flatMap((config) => Effect.promise(async () => parseIni(config))), Effect.map(parseSSOSessionData));
|
|
82
|
-
const session = ssoSessions[profile.sso_session];
|
|
83
|
-
if (ssoRegion && ssoRegion !== session.sso_region) {
|
|
84
|
-
yield* Effect.fail(new ConflictingSSORegion({
|
|
85
|
-
message: `Conflicting SSO region`,
|
|
86
|
-
ssoRegion: ssoRegion,
|
|
87
|
-
profile: profile.sso_session,
|
|
88
|
-
}));
|
|
89
|
-
}
|
|
90
|
-
if (ssoStartUrl && ssoStartUrl !== session.sso_start_url) {
|
|
91
|
-
yield* Effect.fail(new ConflictingSSOStartUrl({
|
|
92
|
-
message: `Conflicting SSO start url`,
|
|
93
|
-
ssoStartUrl: ssoStartUrl,
|
|
94
|
-
profile: profile.sso_session,
|
|
95
|
-
}));
|
|
96
|
-
}
|
|
97
|
-
profile.sso_region = session.sso_region;
|
|
98
|
-
profile.sso_start_url = session.sso_start_url;
|
|
99
|
-
const ssoFields = [
|
|
100
|
-
"sso_start_url",
|
|
101
|
-
"sso_account_id",
|
|
102
|
-
"sso_region",
|
|
103
|
-
"sso_role_name",
|
|
104
|
-
];
|
|
105
|
-
const missingFields = ssoFields.filter((field) => !profile[field]);
|
|
106
|
-
if (missingFields.length > 0) {
|
|
107
|
-
yield* Effect.fail(new InvalidSSOProfile({
|
|
108
|
-
profile: profileName,
|
|
109
|
-
missingFields,
|
|
110
|
-
message: `Profile is configured with invalid SSO credentials. Required parameters "sso_account_id", ` +
|
|
111
|
-
`"sso_region", "sso_role_name", "sso_start_url". Got ${Object.keys(profile).join(", ")}\nReference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html`,
|
|
112
|
-
}));
|
|
113
|
-
}
|
|
114
85
|
const hasher = createHash("sha1");
|
|
115
86
|
const cacheName = hasher.update(profile.sso_session).digest("hex");
|
|
116
87
|
const ssoTokenFilepath = path.join(cachePath, `${cacheName}.json`);
|
|
@@ -166,5 +137,60 @@ export const fromSSO = () => Layer.effect(Credentials, Effect.gen(function* () {
|
|
|
166
137
|
message: `Profile ${profileName} not found`,
|
|
167
138
|
profile: profileName,
|
|
168
139
|
}));
|
|
169
|
-
})
|
|
140
|
+
});
|
|
141
|
+
export const loadProfile = Effect.fn(function* (profileName) {
|
|
142
|
+
const fs = yield* FileSystem.FileSystem;
|
|
143
|
+
const profiles = yield* Effect.promise(() => ini.parseKnownFiles({ profile: profileName }));
|
|
144
|
+
const profile = profiles[profileName];
|
|
145
|
+
if (!profile) {
|
|
146
|
+
yield* Effect.fail(new ProfileNotFound({
|
|
147
|
+
message: `Profile ${profileName} not found`,
|
|
148
|
+
profile: profileName,
|
|
149
|
+
}));
|
|
150
|
+
}
|
|
151
|
+
const awsDir = path.join(ini.getHomeDir(), ".aws");
|
|
152
|
+
const configPath = path.join(awsDir, "config");
|
|
153
|
+
if (profile.sso_session) {
|
|
154
|
+
const ssoRegion = Option.getOrUndefined(yield* Effect.serviceOption(SsoRegion));
|
|
155
|
+
const ssoStartUrl = Option.getOrElse(yield* Effect.serviceOption(SsoStartUrl), () => profile.sso_start_url);
|
|
156
|
+
const ssoSessions = yield* fs.readFileString(configPath).pipe(Effect.flatMap((config) => Effect.promise(async () => parseIni(config))), Effect.map(parseSSOSessionData));
|
|
157
|
+
const session = ssoSessions[profile.sso_session];
|
|
158
|
+
if (ssoRegion && ssoRegion !== session.sso_region) {
|
|
159
|
+
yield* Effect.fail(new ConflictingSSORegion({
|
|
160
|
+
message: `Conflicting SSO region`,
|
|
161
|
+
ssoRegion: ssoRegion,
|
|
162
|
+
profile: profile.sso_session,
|
|
163
|
+
}));
|
|
164
|
+
}
|
|
165
|
+
if (ssoStartUrl && ssoStartUrl !== session.sso_start_url) {
|
|
166
|
+
yield* Effect.fail(new ConflictingSSOStartUrl({
|
|
167
|
+
message: `Conflicting SSO start url`,
|
|
168
|
+
ssoStartUrl: ssoStartUrl,
|
|
169
|
+
profile: profile.sso_session,
|
|
170
|
+
}));
|
|
171
|
+
}
|
|
172
|
+
profile.sso_region = session.sso_region;
|
|
173
|
+
profile.sso_start_url = session.sso_start_url;
|
|
174
|
+
const ssoFields = [
|
|
175
|
+
"sso_start_url",
|
|
176
|
+
"sso_account_id",
|
|
177
|
+
"sso_region",
|
|
178
|
+
"sso_role_name",
|
|
179
|
+
];
|
|
180
|
+
const missingFields = ssoFields.filter((field) => !profile[field]);
|
|
181
|
+
if (missingFields.length > 0) {
|
|
182
|
+
yield* Effect.fail(new InvalidSSOProfile({
|
|
183
|
+
profile: profileName,
|
|
184
|
+
missingFields,
|
|
185
|
+
message: `Profile is configured with invalid SSO credentials. Required parameters "sso_account_id", ` +
|
|
186
|
+
`"sso_region", "sso_role_name", "sso_start_url". Got ${Object.keys(profile).join(", ")}\nReference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html`,
|
|
187
|
+
}));
|
|
188
|
+
}
|
|
189
|
+
return profile;
|
|
190
|
+
}
|
|
191
|
+
return yield* Effect.fail(new ProfileNotFound({
|
|
192
|
+
message: `Profile ${profileName} not found`,
|
|
193
|
+
profile: profileName,
|
|
194
|
+
}));
|
|
195
|
+
});
|
|
170
196
|
//# sourceMappingURL=credentials.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credentials.js","sourceRoot":"","sources":["../../src/aws/credentials.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,IAAI,sBAAsB,EAC/C,OAAO,IAAI,QAAQ,EACnB,QAAQ,IAAI,SAAS,EACrB,OAAO,IAAI,QAAQ,EACnB,oBAAoB,IAAI,qBAAqB,EAC7C,qBAAqB,IAAI,sBAAsB,EAC/C,WAAW,IAAI,YAAY,EAC3B,aAAa,IAAI,cAAc,EAC/B,YAAY,IAAI,aAAa,GAC9B,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"credentials.js","sourceRoot":"","sources":["../../src/aws/credentials.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import * as Effect from "effect/Effect";
|
|
2
|
+
import * as S from "effect/Schema";
|
|
3
|
+
import type { AttributeValue, ScalarAttributeType } from "itty-aws/dynamodb";
|
|
4
|
+
declare const InvalidAttributeValue_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").Equals<A, {}> extends true ? void : { readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }) => import("effect/Cause").YieldableError & {
|
|
5
|
+
readonly _tag: "InvalidAttributeValue";
|
|
6
|
+
} & Readonly<A>;
|
|
7
|
+
export declare class InvalidAttributeValue extends InvalidAttributeValue_base<{
|
|
8
|
+
message: string;
|
|
9
|
+
value: any;
|
|
10
|
+
}> {
|
|
11
|
+
}
|
|
12
|
+
export declare const toAttributeValue: (value: any) => Effect.Effect<AttributeValue, InvalidAttributeValue, never>;
|
|
13
|
+
export declare const fromAttributeValue: (value: AttributeValue) => any;
|
|
14
|
+
export declare const isScalarAttributeType: (type: string) => type is ScalarAttributeType;
|
|
15
|
+
export declare const toAttributeType: (schema: S.Schema<any>) => "L" | "M" | "N" | "S" | "SS" | "NS";
|
|
16
|
+
export declare const isMapSchemaType: (schema: S.Schema<any>) => boolean;
|
|
17
|
+
export declare const isStringSetSchema: (schema: S.Schema<any>) => boolean;
|
|
18
|
+
export declare const isNumberSetSchema: (schema: S.Schema<any>) => boolean;
|
|
19
|
+
export {};
|
|
20
|
+
//# sourceMappingURL=attribute-value.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attribute-value.d.ts","sourceRoot":"","sources":["../../../src/aws/dynamodb/attribute-value.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,CAAC,MAAM,eAAe,CAAC;AACnC,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;;;;AAiB7E,qBAAa,qBAAsB,SAAQ,2BAEzC;IACA,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,GAAG,CAAC;CACZ,CAAC;CAAG;AAEL,eAAO,MAAM,gBAAgB,EAAE,CAC7B,KAAK,EAAE,GAAG,KACP,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,qBAAqB,EAAE,KAAK,CA0F9D,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,OAAO,cAAc,KAAG,GA4B1D,CAAC;AAwDF,eAAO,MAAM,qBAAqB,GAChC,MAAM,MAAM,KACX,IAAI,IAAI,mBAEV,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,wCAepD,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,YAK9C,CAAC;AAER,eAAO,MAAM,iBAAiB,GAAI,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,YACQ,CAAC;AAEhE,eAAO,MAAM,iBAAiB,GAAI,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,YACQ,CAAC"}
|
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
import * as Data from "effect/Data";
|
|
2
|
+
import * as Effect from "effect/Effect";
|
|
3
|
+
import * as S from "effect/Schema";
|
|
4
|
+
import { getSetValueAST, isClassSchema, isListSchema, isMapSchema, isNumberSchema, isRecordLikeSchema, isRecordSchema, isSetSchema, isStringSchema, isStructSchema, } from "../../schema.js";
|
|
5
|
+
// this seems important for handling S.Struct.Fields https://effect.website/docs/schema/classes/#recursive-types-with-different-encoded-and-type
|
|
6
|
+
// interface CategoryEncoded extends Schema.Struct.Encoded<typeof fields> { .. }
|
|
7
|
+
export class InvalidAttributeValue extends Data.TaggedError("InvalidAttributeValue") {
|
|
8
|
+
}
|
|
9
|
+
export const toAttributeValue = Effect.fn(function* (value) {
|
|
10
|
+
if (value === undefined) {
|
|
11
|
+
return {
|
|
12
|
+
NULL: false,
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
else if (value === null) {
|
|
16
|
+
return {
|
|
17
|
+
NULL: true,
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
else if (typeof value === "boolean") {
|
|
21
|
+
return {
|
|
22
|
+
BOOL: value,
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
else if (typeof value === "string") {
|
|
26
|
+
return {
|
|
27
|
+
S: value,
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
else if (typeof value === "number") {
|
|
31
|
+
return {
|
|
32
|
+
N: value.toString(10),
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
else if (Array.isArray(value)) {
|
|
36
|
+
return {
|
|
37
|
+
L: yield* Effect.all(value.map(toAttributeValue)),
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
else if (value instanceof Set) {
|
|
41
|
+
const setType = getType(value);
|
|
42
|
+
if (setType === "EMPTY_SET") {
|
|
43
|
+
return {
|
|
44
|
+
SS: [],
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
else if (Array.isArray(setType)) {
|
|
48
|
+
return {
|
|
49
|
+
L: yield* Effect.all(setType.map(toAttributeValue)),
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
else if (setType === "SS") {
|
|
53
|
+
return {
|
|
54
|
+
SS: Array.from(value.values()),
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
else if (setType === "NS") {
|
|
58
|
+
return {
|
|
59
|
+
NS: Array.from(value.values()).map((value) => value.toString(10)),
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
else if (setType === "BS") {
|
|
63
|
+
return {
|
|
64
|
+
BS: Array.from(value.values()),
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
return {
|
|
69
|
+
L: yield* Effect.all(Array.from(value.values()).map(toAttributeValue)),
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
else if (Buffer.isBuffer(value)) {
|
|
74
|
+
return {
|
|
75
|
+
B: new Uint8Array(value),
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
else if (value instanceof File) {
|
|
79
|
+
return {
|
|
80
|
+
B: new Uint8Array(yield* Effect.promise(() => value.arrayBuffer())),
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
else if (value instanceof Uint8Array) {
|
|
84
|
+
return {
|
|
85
|
+
B: value,
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
else if (value instanceof ArrayBuffer) {
|
|
89
|
+
return {
|
|
90
|
+
B: new Uint8Array(value),
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
else if (typeof value === "object") {
|
|
94
|
+
return {
|
|
95
|
+
M: Object.fromEntries(yield* Effect.all(Object.entries(value).map(([key, value]) => toAttributeValue(value).pipe(Effect.map((value) => [key, value]))))),
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
return yield* Effect.fail(new InvalidAttributeValue({
|
|
99
|
+
message: `Unknown value type: ${typeof value}`,
|
|
100
|
+
value,
|
|
101
|
+
}));
|
|
102
|
+
});
|
|
103
|
+
export const fromAttributeValue = (value) => {
|
|
104
|
+
if (value.NULL) {
|
|
105
|
+
return null;
|
|
106
|
+
}
|
|
107
|
+
else if (typeof value.BOOL === "boolean") {
|
|
108
|
+
return value.BOOL;
|
|
109
|
+
}
|
|
110
|
+
else if (value.L) {
|
|
111
|
+
return value.L.map(fromAttributeValue);
|
|
112
|
+
}
|
|
113
|
+
else if (value.M) {
|
|
114
|
+
return Object.fromEntries(Object.entries(value.M).map(([key, value]) => [
|
|
115
|
+
key,
|
|
116
|
+
fromAttributeValue(value),
|
|
117
|
+
]));
|
|
118
|
+
}
|
|
119
|
+
else if (value.N) {
|
|
120
|
+
return parseFloat(value.N);
|
|
121
|
+
}
|
|
122
|
+
else if (value.S) {
|
|
123
|
+
// how do we know if this is a date?
|
|
124
|
+
return value.S;
|
|
125
|
+
}
|
|
126
|
+
else if (value.SS) {
|
|
127
|
+
return new Set(value.SS);
|
|
128
|
+
}
|
|
129
|
+
else if (value.NS) {
|
|
130
|
+
return new Set(value.NS);
|
|
131
|
+
}
|
|
132
|
+
else if (value.BS) {
|
|
133
|
+
return new Set(value.BS);
|
|
134
|
+
}
|
|
135
|
+
else {
|
|
136
|
+
throw new Error(`Unknown attribute value: ${JSON.stringify(value)}`);
|
|
137
|
+
}
|
|
138
|
+
};
|
|
139
|
+
const getType = (value) => {
|
|
140
|
+
if (value === undefined) {
|
|
141
|
+
return "undefined";
|
|
142
|
+
}
|
|
143
|
+
else if (value === null) {
|
|
144
|
+
return "NULL";
|
|
145
|
+
}
|
|
146
|
+
else if (typeof value === "boolean") {
|
|
147
|
+
return "BOOL";
|
|
148
|
+
}
|
|
149
|
+
else if (typeof value === "string") {
|
|
150
|
+
return "S";
|
|
151
|
+
}
|
|
152
|
+
else if (typeof value === "number") {
|
|
153
|
+
return "N";
|
|
154
|
+
}
|
|
155
|
+
else if (Array.isArray(value)) {
|
|
156
|
+
return "L";
|
|
157
|
+
}
|
|
158
|
+
else if (value instanceof Set) {
|
|
159
|
+
return value.size === 0
|
|
160
|
+
? "EMPTY_SET"
|
|
161
|
+
: (() => {
|
|
162
|
+
const types = Array.from(value.values())
|
|
163
|
+
.flatMap(getType)
|
|
164
|
+
.filter((type, i, arr) => arr.indexOf(type) === i);
|
|
165
|
+
return types.length === 1
|
|
166
|
+
? types[0] === "S"
|
|
167
|
+
? "SS"
|
|
168
|
+
: types[0] === "N"
|
|
169
|
+
? "NS"
|
|
170
|
+
: types[0] === "BOOL"
|
|
171
|
+
? "BS"
|
|
172
|
+
: types[0]
|
|
173
|
+
: "L";
|
|
174
|
+
})();
|
|
175
|
+
}
|
|
176
|
+
else if (value instanceof Map) {
|
|
177
|
+
return "M";
|
|
178
|
+
}
|
|
179
|
+
else if (typeof value === "object") {
|
|
180
|
+
return "M";
|
|
181
|
+
}
|
|
182
|
+
else {
|
|
183
|
+
throw new Error(`Unknown value type: ${typeof value}`);
|
|
184
|
+
}
|
|
185
|
+
};
|
|
186
|
+
export const isScalarAttributeType = (type) => {
|
|
187
|
+
return type === "S" || type === "N" || type === "B";
|
|
188
|
+
};
|
|
189
|
+
export const toAttributeType = (schema) => {
|
|
190
|
+
if (isStringSchema(schema)) {
|
|
191
|
+
return "S";
|
|
192
|
+
}
|
|
193
|
+
else if (isNumberSchema(schema)) {
|
|
194
|
+
return "N";
|
|
195
|
+
}
|
|
196
|
+
else if (isRecordLikeSchema(schema)) {
|
|
197
|
+
return "M";
|
|
198
|
+
}
|
|
199
|
+
else if (isStringSetSchema(schema)) {
|
|
200
|
+
return "SS";
|
|
201
|
+
}
|
|
202
|
+
else if (isNumberSetSchema(schema)) {
|
|
203
|
+
return "NS";
|
|
204
|
+
}
|
|
205
|
+
else if (isListSchema(schema)) {
|
|
206
|
+
return "L";
|
|
207
|
+
}
|
|
208
|
+
return "S";
|
|
209
|
+
};
|
|
210
|
+
export const isMapSchemaType = (schema) => isMapSchema(schema) ||
|
|
211
|
+
isRecordSchema(schema) ||
|
|
212
|
+
isStructSchema(schema) ||
|
|
213
|
+
isClassSchema(schema) ||
|
|
214
|
+
false;
|
|
215
|
+
export const isStringSetSchema = (schema) => isSetSchema(schema) && isStringSchema(getSetValueAST(schema));
|
|
216
|
+
export const isNumberSetSchema = (schema) => isSetSchema(schema) && isNumberSchema(getSetValueAST(schema));
|
|
217
|
+
//# sourceMappingURL=attribute-value.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attribute-value.js","sourceRoot":"","sources":["../../../src/aws/dynamodb/attribute-value.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import * as Layer from "effect/Layer";
|
|
2
|
+
import * as Context from "effect/Context";
|
|
3
|
+
import { DynamoDB } from "itty-aws/dynamodb";
|
|
4
|
+
import * as Credentials from "../credentials.ts";
|
|
5
|
+
import * as Region from "../region.ts";
|
|
6
|
+
declare const DynamoDBClient_base: Context.TagClass<DynamoDBClient, "AWS::DynamoDB::Client", DynamoDB>;
|
|
7
|
+
export declare class DynamoDBClient extends DynamoDBClient_base {
|
|
8
|
+
}
|
|
9
|
+
export declare const client: () => Layer.Layer<DynamoDBClient, never, Credentials.Credentials | Region.Region>;
|
|
10
|
+
export declare const clientFromEnv: () => Layer.Layer<DynamoDBClient, Region.EnvironmentVariableNotSet | import("effect/ConfigError").ConfigError, never>;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/aws/dynamodb/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,KAAK,WAAW,MAAM,mBAAmB,CAAC;AACjD,OAAO,KAAK,MAAM,MAAM,cAAc,CAAC;;AAGvC,qBAAa,cAAe,SAAQ,mBAGjC;CAAG;AAEN,eAAO,MAAM,MAAM,mFAGQ,CAAC;AAE5B,eAAO,MAAM,aAAa,uHACqD,CAAC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import * as Context from "effect/Context";
|
|
2
1
|
import * as Layer from "effect/Layer";
|
|
3
|
-
import
|
|
4
|
-
import {
|
|
2
|
+
import * as Context from "effect/Context";
|
|
3
|
+
import { DynamoDB } from "itty-aws/dynamodb";
|
|
5
4
|
import * as Credentials from "../credentials.js";
|
|
6
5
|
import * as Region from "../region.js";
|
|
7
|
-
|
|
6
|
+
import { createAWSServiceClientLayer } from "../client.js";
|
|
7
|
+
export class DynamoDBClient extends Context.Tag("AWS::DynamoDB::Client")() {
|
|
8
8
|
}
|
|
9
|
-
export const client = createAWSServiceClientLayer(
|
|
9
|
+
export const client = createAWSServiceClientLayer(DynamoDBClient, DynamoDB);
|
|
10
10
|
export const clientFromEnv = () => Layer.provide(client(), Layer.merge(Credentials.fromEnv(), Region.fromEnv()));
|
|
11
|
-
//# sourceMappingURL=
|
|
11
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/aws/dynamodb/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,KAAK,WAAW,MAAM,mBAAmB,CAAC;AACjD,OAAO,KAAK,MAAM,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,2BAA2B,EAAE,MAAM,cAAc,CAAC;AAE3D,MAAM,OAAO,cAAe,SAAQ,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,EAGrE;CAAG;AAEN,MAAM,CAAC,MAAM,MAAM,GAAG,2BAA2B,CAG/C,cAAc,EAAE,QAAQ,CAAC,CAAC;AAE5B,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,EAAE,CAChC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
export type Expr = ArrayIndex | Identifier | NumberLiteral | OperatorExpr | NameRef | PropRef | ValueRef;
|
|
2
|
+
export interface NameRef<Name extends string = string> {
|
|
3
|
+
kind: "name-ref";
|
|
4
|
+
name: Name;
|
|
5
|
+
}
|
|
6
|
+
export interface ValueRef<Name extends string = string> {
|
|
7
|
+
kind: "value-ref";
|
|
8
|
+
name: Name;
|
|
9
|
+
}
|
|
10
|
+
export interface Identifier<I extends string = string> {
|
|
11
|
+
kind: "identifier";
|
|
12
|
+
name: I;
|
|
13
|
+
}
|
|
14
|
+
export interface NumberLiteral<N extends string = string> {
|
|
15
|
+
kind: "index";
|
|
16
|
+
number: N;
|
|
17
|
+
}
|
|
18
|
+
export interface PropRef<Ex extends Expr = any, Id extends Identifier = any> {
|
|
19
|
+
kind: "prop-ref";
|
|
20
|
+
expr: Ex;
|
|
21
|
+
name: Id;
|
|
22
|
+
}
|
|
23
|
+
export interface ArrayIndex<List extends Expr = any, Number extends NumberLiteral | ValueRef = NumberLiteral | ValueRef> {
|
|
24
|
+
kind: "array-index";
|
|
25
|
+
list: List;
|
|
26
|
+
number: Number;
|
|
27
|
+
}
|
|
28
|
+
export type Operator = "and" | "or" | "=" | "<" | "<=" | ">=" | ">";
|
|
29
|
+
export interface OperatorExpr<Left extends Expr = any, Op extends Operator = Operator, Right extends Expr = any> {
|
|
30
|
+
kind: "op";
|
|
31
|
+
left: Left;
|
|
32
|
+
op: Op;
|
|
33
|
+
right: Right;
|
|
34
|
+
}
|
|
35
|
+
export type LowercaseLetter = "a" | "b" | "c" | "d" | "e" | "f" | "g" | "h" | "i" | "j" | "k" | "l" | "m" | "n" | "o" | "p" | "q" | "r" | "s" | "t" | "u" | "v" | "w" | "x" | "y" | "z";
|
|
36
|
+
export type UppercaseLetter = Uppercase<LowercaseLetter>;
|
|
37
|
+
export type Letter = LowercaseLetter | UppercaseLetter;
|
|
38
|
+
export type Digit = "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9";
|
|
39
|
+
export type SpecialCharacter = "_";
|
|
40
|
+
export type Word = Digit | Letter | SpecialCharacter;
|
|
41
|
+
//# sourceMappingURL=expr.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expr.d.ts","sourceRoot":"","sources":["../../../src/aws/dynamodb/expr.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,IAAI,GACZ,UAAU,GACV,UAAU,GACV,aAAa,GACb,YAAY,GACZ,OAAO,GACP,OAAO,GACP,QAAQ,CAAC;AAGb,MAAM,WAAW,OAAO,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM;IACnD,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,IAAI,CAAC;CACZ;AACD,MAAM,WAAW,QAAQ,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM;IACpD,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,EAAE,IAAI,CAAC;CACZ;AACD,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IACnD,IAAI,EAAE,YAAY,CAAC;IACnB,IAAI,EAAE,CAAC,CAAC;CACT;AAED,MAAM,WAAW,aAAa,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IACtD,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,CAAC,CAAC;CACX;AACD,MAAM,WAAW,OAAO,CAAC,EAAE,SAAS,IAAI,GAAG,GAAG,EAAE,EAAE,SAAS,UAAU,GAAG,GAAG;IACzE,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,EAAE,CAAC;IACT,IAAI,EAAE,EAAE,CAAC;CACV;AACD,MAAM,WAAW,UAAU,CACzB,IAAI,SAAS,IAAI,GAAG,GAAG,EACvB,MAAM,SAAS,aAAa,GAAG,QAAQ,GAAG,aAAa,GAAG,QAAQ;IAElE,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE,IAAI,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,GAAG,CAAC;AACpE,MAAM,WAAW,YAAY,CAC3B,IAAI,SAAS,IAAI,GAAG,GAAG,EACvB,EAAE,SAAS,QAAQ,GAAG,QAAQ,EAC9B,KAAK,SAAS,IAAI,GAAG,GAAG;IAExB,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,IAAI,CAAC;IACX,EAAE,EAAE,EAAE,CAAC;IACP,KAAK,EAAE,KAAK,CAAC;CACd;AAED,MAAM,MAAM,eAAe,GACvB,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,CAAC;AAER,MAAM,MAAM,eAAe,GAAG,SAAS,CAAC,eAAe,CAAC,CAAC;AAEzD,MAAM,MAAM,MAAM,GAAG,eAAe,GAAG,eAAe,CAAC;AAEvD,MAAM,MAAM,KAAK,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAE9E,MAAM,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAEnC,MAAM,MAAM,IAAI,GAAG,KAAK,GAAG,MAAM,GAAG,gBAAgB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=expr.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expr.js","sourceRoot":"","sources":["../../../src/aws/dynamodb/expr.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export * from "./attribute-value.ts";
|
|
2
|
+
export * from "./client.ts";
|
|
3
|
+
export * from "./expr.ts";
|
|
4
|
+
export * from "./secondary-index.ts";
|
|
5
|
+
export * from "./table.get-item.ts";
|
|
6
|
+
export * from "./table.provider.ts";
|
|
7
|
+
export * from "./table.ts";
|
|
8
|
+
export type * from "../../exports.ts";
|
|
9
|
+
import "../config.ts";
|
|
10
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/aws/dynamodb/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAG3B,mBAAmB,kBAAkB,CAAC;AAEtC,OAAO,cAAc,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export * from "./attribute-value.js";
|
|
2
|
+
export * from "./client.js";
|
|
3
|
+
export * from "./expr.js";
|
|
4
|
+
export * from "./secondary-index.js";
|
|
5
|
+
export * from "./table.get-item.js";
|
|
6
|
+
export * from "./table.provider.js";
|
|
7
|
+
export * from "./table.js";
|
|
8
|
+
import "../config.js";
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/aws/dynamodb/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAK3B,OAAO,cAAc,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { ArrayIndex, Expr, Identifier, NameRef, NumberLiteral, PropRef, ValueRef, Word } from "./expr.ts";
|
|
2
|
+
export type ParseProjectionExpression<Text extends string> = Parse<Text, [
|
|
3
|
+
], undefined>;
|
|
4
|
+
type AsExpr<T> = Extract<T, Expr>;
|
|
5
|
+
type Parse<Text extends string, Expressions extends Expr[], Exp extends Expr | undefined> = Text extends `.${infer Rest}` ? Exp extends Expr ? Parse<Rest, Expressions, PropRef<Exp, Identifier<"">>> : never : Text extends `[:${infer Rest}` ? Parse<Rest, Expressions, ArrayIndex<AsExpr<Exp>, ValueRef<"">>> : Text extends `[${infer Rest}` ? Parse<Rest, Expressions, ArrayIndex<AsExpr<Exp>, NumberLiteral<"">>> : Text extends `]${infer Rest}` ? Parse<Rest, Expressions, Exp> : Text extends `]` ? Concat<Expressions, Exp> : Text extends `${"," | " "}${infer Rest}` ? Parse<Rest, Concat<Expressions, Exp>, undefined> : Text extends `#${infer Rest}` ? Parse<Rest, Concat<Expressions, Exp>, NameRef<Rest>> : Text extends `:${infer Rest}` ? Parse<Rest, Concat<Expressions, Exp>, ValueRef<Rest>> : Text extends `${Word}${string}` ? Text extends `${infer char}${infer Rest}` ? Parse<Rest, Expressions, Append<Exp, char>> : never : Text extends `${Word}${string}` ? Text extends `${infer char}${infer Rest}` ? Parse<Rest, Expressions, Append<Exp, char>> : never : Concat<Expressions, Exp>;
|
|
6
|
+
type Concat<Expressions extends Expr[], CurrentExpr extends Expr | undefined> = undefined extends CurrentExpr ? Expressions : [...Expressions, Extract<CurrentExpr, Expr>];
|
|
7
|
+
type Append<Exp extends Expr | undefined, char extends string> = Exp extends undefined ? Identifier<char> : Exp extends Identifier<infer Name> ? Identifier<`${Name}${char}`> : Exp extends NumberLiteral<infer Name> ? NumberLiteral<`${Name}${char}`> : Exp extends NameRef<infer Name> ? NameRef<`${Name}${char}`> : Exp extends ValueRef<infer Name> ? ValueRef<`${Name}${char}`> : Exp extends PropRef<infer expr, infer name> ? PropRef<expr, Extract<Append<name, char>, Identifier>> : Exp extends ArrayIndex<infer expr, infer idx> ? ArrayIndex<expr, Extract<Append<idx, char>, NumberLiteral>> : never;
|
|
8
|
+
export type ApplyProjection<T, Expr extends string> = Flatten<UnionToIntersection<ApplyProjectionExpr<T, ParseProjectionExpression<Expr>[number]>>>;
|
|
9
|
+
type ApplyProjectionExpr<T, Exp extends Expr> = T extends undefined ? never : Exp extends PropRef<infer expr, infer i> ? {
|
|
10
|
+
[p in keyof ApplyProjectionExpr<T, expr>]: ApplyProjectionExpr<ApplyProjectionExpr<T, expr>[p], i>;
|
|
11
|
+
} : Exp extends ArrayIndex<infer expr, infer i> ? {
|
|
12
|
+
[p in keyof ApplyProjectionExpr<T, expr>]: ApplyProjectionExpr<ApplyProjectionExpr<T, expr>[keyof ApplyProjectionExpr<T, expr>], i>;
|
|
13
|
+
} : Exp extends Identifier<infer I> ? I extends keyof T ? Pick<T, I> : never : Exp extends NumberLiteral<infer I> ? ParseInt<I> extends keyof T ? Pick<T, ParseInt<I>> : never : never;
|
|
14
|
+
type UnionToIntersection<U> = (U extends any ? (k: U) => void : never) extends (k: infer I) => void ? I : never;
|
|
15
|
+
type Flatten<T> = T extends object ? keyof T extends number ? FlattenArray<Extract<T, Record<number, any>>> : {
|
|
16
|
+
[k in keyof T]: Flatten<T[k]>;
|
|
17
|
+
} : T;
|
|
18
|
+
type FlattenArray<T extends {
|
|
19
|
+
[i in number]: any;
|
|
20
|
+
}, i extends number = 0> = i extends keyof T ? [T[i], ...FlattenArray<T, Inc<i>>] : number extends i ? [] : FlattenArray<T, Inc<i>>;
|
|
21
|
+
type BuildTuple<N extends number, T extends any[] = []> = T["length"] extends N ? T : BuildTuple<N, [...T, any]>;
|
|
22
|
+
type Inc<N extends number> = Extract<[...BuildTuple<N>, any]["length"], number>;
|
|
23
|
+
type ParseInt<N extends string> = N extends "0" ? 0 : N extends "1" ? 1 : N extends "2" ? 2 : N extends "3" ? 3 : N extends "4" ? 4 : N extends "5" ? 5 : N extends "6" ? 6 : N extends "7" ? 7 : N extends "8" ? 8 : N extends "9" ? 9 : number;
|
|
24
|
+
export {};
|
|
25
|
+
//# sourceMappingURL=projection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"projection.d.ts","sourceRoot":"","sources":["../../../src/aws/dynamodb/projection.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=projection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"projection.js","sourceRoot":"","sources":["../../../src/aws/dynamodb/projection.ts"],"names":[],"mappings":""}
|