alchemy 2.0.0-beta.76 → 2.0.0-beta.77
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/THIRD_PARTY_LICENSES.md +11 -11
- package/bin/cli.js +88 -11
- package/bin/exec.js +11828 -5720
- package/bin/exec.js.map +1 -1
- package/bin/register-oxc.js +27 -0
- package/lib/AWS/AMP/Scraper.js +1 -1
- package/lib/AWS/AMP/Scraper.js.map +1 -1
- package/lib/AWS/AppRunner/Service.d.ts +11 -27
- package/lib/AWS/AppRunner/Service.d.ts.map +1 -1
- package/lib/AWS/AppRunner/Service.js +7 -21
- package/lib/AWS/AppRunner/Service.js.map +1 -1
- package/lib/AWS/Assets.d.ts +1 -1
- package/lib/AWS/Assets.js +2 -2
- package/lib/AWS/Assets.js.map +1 -1
- package/lib/AWS/AuthProvider.d.ts +40 -53
- package/lib/AWS/AuthProvider.d.ts.map +1 -1
- package/lib/AWS/AuthProvider.js +480 -215
- package/lib/AWS/AuthProvider.js.map +1 -1
- package/lib/AWS/Batch/JobDefinition.d.ts +11 -27
- package/lib/AWS/Batch/JobDefinition.d.ts.map +1 -1
- package/lib/AWS/Batch/JobDefinition.js +7 -21
- package/lib/AWS/Batch/JobDefinition.js.map +1 -1
- package/lib/AWS/EC2/GetAmi.d.ts +2 -0
- package/lib/AWS/EC2/GetAmi.d.ts.map +1 -1
- package/lib/AWS/EC2/Instance.d.ts +11 -27
- package/lib/AWS/EC2/Instance.d.ts.map +1 -1
- package/lib/AWS/EC2/Instance.js +7 -21
- package/lib/AWS/EC2/Instance.js.map +1 -1
- package/lib/AWS/EC2/hosted.d.ts +5 -6
- package/lib/AWS/EC2/hosted.d.ts.map +1 -1
- package/lib/AWS/EC2/hosted.js.map +1 -1
- package/lib/AWS/ECR/Image.d.ts +1 -1
- package/lib/AWS/ECR/ImageSource.d.ts +4 -5
- package/lib/AWS/ECR/ImageSource.d.ts.map +1 -1
- package/lib/AWS/ECR/ImageSource.js.map +1 -1
- package/lib/AWS/ECS/Service.d.ts +7 -21
- package/lib/AWS/ECS/Service.d.ts.map +1 -1
- package/lib/AWS/ECS/Service.js +7 -21
- package/lib/AWS/ECS/Service.js.map +1 -1
- package/lib/AWS/ECS/Task.d.ts +7 -21
- package/lib/AWS/ECS/Task.d.ts.map +1 -1
- package/lib/AWS/ECS/Task.js +7 -21
- package/lib/AWS/ECS/Task.js.map +1 -1
- package/lib/AWS/ElastiCache/CacheCluster.d.ts +60 -0
- package/lib/AWS/ElastiCache/CacheCluster.d.ts.map +1 -0
- package/lib/AWS/ElastiCache/CacheCluster.js +199 -0
- package/lib/AWS/ElastiCache/CacheCluster.js.map +1 -0
- package/lib/AWS/ElastiCache/ConnectCacheCluster.d.ts +46 -0
- package/lib/AWS/ElastiCache/ConnectCacheCluster.d.ts.map +1 -0
- package/lib/AWS/ElastiCache/ConnectCacheCluster.js +5 -0
- package/lib/AWS/ElastiCache/ConnectCacheCluster.js.map +1 -0
- package/lib/AWS/ElastiCache/ConnectCacheClusterHttp.d.ts +4 -0
- package/lib/AWS/ElastiCache/ConnectCacheClusterHttp.d.ts.map +1 -0
- package/lib/AWS/ElastiCache/ConnectCacheClusterHttp.js +52 -0
- package/lib/AWS/ElastiCache/ConnectCacheClusterHttp.js.map +1 -0
- package/lib/AWS/ElastiCache/ConnectReplicationGroup.d.ts +47 -0
- package/lib/AWS/ElastiCache/ConnectReplicationGroup.d.ts.map +1 -0
- package/lib/AWS/ElastiCache/ConnectReplicationGroup.js +5 -0
- package/lib/AWS/ElastiCache/ConnectReplicationGroup.js.map +1 -0
- package/lib/AWS/ElastiCache/ConnectReplicationGroupHttp.d.ts +4 -0
- package/lib/AWS/ElastiCache/ConnectReplicationGroupHttp.d.ts.map +1 -0
- package/lib/AWS/ElastiCache/ConnectReplicationGroupHttp.js +77 -0
- package/lib/AWS/ElastiCache/ConnectReplicationGroupHttp.js.map +1 -0
- package/lib/AWS/ElastiCache/ReplicationGroup.d.ts +95 -0
- package/lib/AWS/ElastiCache/ReplicationGroup.d.ts.map +1 -0
- package/lib/AWS/ElastiCache/ReplicationGroup.js +383 -0
- package/lib/AWS/ElastiCache/ReplicationGroup.js.map +1 -0
- package/lib/AWS/ElastiCache/SubnetGroup.d.ts +39 -0
- package/lib/AWS/ElastiCache/SubnetGroup.d.ts.map +1 -0
- package/lib/AWS/ElastiCache/SubnetGroup.js +136 -0
- package/lib/AWS/ElastiCache/SubnetGroup.js.map +1 -0
- package/lib/AWS/ElastiCache/index.d.ts +7 -0
- package/lib/AWS/ElastiCache/index.d.ts.map +1 -1
- package/lib/AWS/ElastiCache/index.js +7 -0
- package/lib/AWS/ElastiCache/index.js.map +1 -1
- package/lib/AWS/ElastiCache/internal.d.ts +13 -0
- package/lib/AWS/ElastiCache/internal.d.ts.map +1 -0
- package/lib/AWS/ElastiCache/internal.js +19 -0
- package/lib/AWS/ElastiCache/internal.js.map +1 -0
- package/lib/AWS/Environment.d.ts +2 -3
- package/lib/AWS/Environment.d.ts.map +1 -1
- package/lib/AWS/Environment.js +11 -41
- package/lib/AWS/Environment.js.map +1 -1
- package/lib/AWS/IAM/actions.generated.js +1 -1
- package/lib/AWS/IAM/actions.generated.js.map +1 -1
- package/lib/AWS/IdentityCenter/AccountAssignment.js +6 -0
- package/lib/AWS/IdentityCenter/AccountAssignment.js.map +1 -1
- package/lib/AWS/Lambda/Function.d.ts +14 -23
- package/lib/AWS/Lambda/Function.d.ts.map +1 -1
- package/lib/AWS/Lambda/Function.js +15 -20
- package/lib/AWS/Lambda/Function.js.map +1 -1
- package/lib/AWS/Lambda/MicrovmImage.d.ts +12 -28
- package/lib/AWS/Lambda/MicrovmImage.d.ts.map +1 -1
- package/lib/AWS/Lambda/MicrovmImage.js +8 -22
- package/lib/AWS/Lambda/MicrovmImage.js.map +1 -1
- package/lib/AWS/Local/DevWatchProvider.d.ts.map +1 -1
- package/lib/AWS/Local/DevWatchProvider.js +10 -1
- package/lib/AWS/Local/DevWatchProvider.js.map +1 -1
- package/lib/AWS/Organizations/Account.d.ts +2 -2
- package/lib/AWS/Organizations/Account.d.ts.map +1 -1
- package/lib/AWS/Organizations/Account.js +16 -8
- package/lib/AWS/Organizations/Account.js.map +1 -1
- package/lib/AWS/Organizations/DelegatedAdministrator.d.ts +2 -3
- package/lib/AWS/Organizations/DelegatedAdministrator.d.ts.map +1 -1
- package/lib/AWS/Organizations/DelegatedAdministrator.js +5 -5
- package/lib/AWS/Organizations/DelegatedAdministrator.js.map +1 -1
- package/lib/AWS/Organizations/Organization.d.ts +1 -1
- package/lib/AWS/Organizations/Organization.d.ts.map +1 -1
- package/lib/AWS/Organizations/Organization.js +2 -2
- package/lib/AWS/Organizations/Organization.js.map +1 -1
- package/lib/AWS/Organizations/common.d.ts +9 -0
- package/lib/AWS/Organizations/common.d.ts.map +1 -1
- package/lib/AWS/Organizations/common.js +13 -0
- package/lib/AWS/Organizations/common.js.map +1 -1
- package/lib/AWS/Providers.d.ts.map +1 -1
- package/lib/AWS/Providers.js +4 -1
- package/lib/AWS/Providers.js.map +1 -1
- package/lib/AWS/StateStore/State.d.ts +1 -1
- package/lib/AWS/StateStore/State.d.ts.map +1 -1
- package/lib/Alchemist/Errors.d.ts +31 -0
- package/lib/Alchemist/Errors.d.ts.map +1 -0
- package/lib/Alchemist/Errors.js +19 -0
- package/lib/Alchemist/Errors.js.map +1 -0
- package/lib/Alchemist/Progress.d.ts +16 -0
- package/lib/Alchemist/Progress.d.ts.map +1 -0
- package/lib/Alchemist/Progress.js +129 -0
- package/lib/Alchemist/Progress.js.map +1 -0
- package/lib/Alchemist/Runtime.d.ts +22 -0
- package/lib/Alchemist/Runtime.d.ts.map +1 -0
- package/lib/Alchemist/Runtime.js +28 -0
- package/lib/Alchemist/Runtime.js.map +1 -0
- package/lib/Alchemist/Session.d.ts +124 -0
- package/lib/Alchemist/Session.d.ts.map +1 -0
- package/lib/Alchemist/Session.js +223 -0
- package/lib/Alchemist/Session.js.map +1 -0
- package/lib/Alchemist/index.d.ts +15 -0
- package/lib/Alchemist/index.d.ts.map +1 -0
- package/lib/Alchemist/index.js +15 -0
- package/lib/Alchemist/index.js.map +1 -0
- package/lib/Alchemist/routes/aws.d.ts +21 -0
- package/lib/Alchemist/routes/aws.d.ts.map +1 -0
- package/lib/Alchemist/routes/aws.js +54 -0
- package/lib/Alchemist/routes/aws.js.map +1 -0
- package/lib/Alchemist/routes/cloudflare.d.ts +63 -0
- package/lib/Alchemist/routes/cloudflare.d.ts.map +1 -0
- package/lib/Alchemist/routes/cloudflare.js +113 -0
- package/lib/Alchemist/routes/cloudflare.js.map +1 -0
- package/lib/Alchemist/routes/cloudflareToken.d.ts +93 -0
- package/lib/Alchemist/routes/cloudflareToken.d.ts.map +1 -0
- package/lib/Alchemist/routes/cloudflareToken.js +111 -0
- package/lib/Alchemist/routes/cloudflareToken.js.map +1 -0
- package/lib/Alchemist/routes/drift.d.ts +55 -0
- package/lib/Alchemist/routes/drift.d.ts.map +1 -0
- package/lib/Alchemist/routes/drift.js +52 -0
- package/lib/Alchemist/routes/drift.js.map +1 -0
- package/lib/Alchemist/routes/logs.d.ts +41 -0
- package/lib/Alchemist/routes/logs.d.ts.map +1 -0
- package/lib/Alchemist/routes/logs.js +112 -0
- package/lib/Alchemist/routes/logs.js.map +1 -0
- package/lib/Alchemist/routes/nuke.d.ts +46 -0
- package/lib/Alchemist/routes/nuke.d.ts.map +1 -0
- package/lib/Alchemist/routes/nuke.js +80 -0
- package/lib/Alchemist/routes/nuke.js.map +1 -0
- package/lib/Alchemist/routes/profile.d.ts +133 -0
- package/lib/Alchemist/routes/profile.d.ts.map +1 -0
- package/lib/Alchemist/routes/profile.js +257 -0
- package/lib/Alchemist/routes/profile.js.map +1 -0
- package/lib/Alchemist/routes/provider.d.ts +33 -0
- package/lib/Alchemist/routes/provider.d.ts.map +1 -0
- package/lib/Alchemist/routes/provider.js +65 -0
- package/lib/Alchemist/routes/provider.js.map +1 -0
- package/lib/Alchemist/routes/stack.d.ts +78 -0
- package/lib/Alchemist/routes/stack.d.ts.map +1 -0
- package/lib/Alchemist/routes/stack.js +67 -0
- package/lib/Alchemist/routes/stack.js.map +1 -0
- package/lib/Alchemist/routes/state.d.ts +35 -0
- package/lib/Alchemist/routes/state.d.ts.map +1 -0
- package/lib/Alchemist/routes/state.js +42 -0
- package/lib/Alchemist/routes/state.js.map +1 -0
- package/lib/Apply.d.ts +8 -6
- package/lib/Apply.d.ts.map +1 -1
- package/lib/Apply.js +209 -103
- package/lib/Apply.js.map +1 -1
- package/lib/Auth/AuthProvider.d.ts +201 -25
- package/lib/Auth/AuthProvider.d.ts.map +1 -1
- package/lib/Auth/AuthProvider.js +180 -40
- package/lib/Auth/AuthProvider.js.map +1 -1
- package/lib/Auth/BrowserOAuth.d.ts +27 -0
- package/lib/Auth/BrowserOAuth.d.ts.map +1 -0
- package/lib/Auth/BrowserOAuth.js +41 -0
- package/lib/Auth/BrowserOAuth.js.map +1 -0
- package/lib/Auth/Credentials.d.ts +11 -6
- package/lib/Auth/Credentials.d.ts.map +1 -1
- package/lib/Auth/Credentials.js +62 -23
- package/lib/Auth/Credentials.js.map +1 -1
- package/lib/Auth/CredentialsCache.d.ts +15 -0
- package/lib/Auth/CredentialsCache.d.ts.map +1 -0
- package/lib/Auth/CredentialsCache.js +34 -0
- package/lib/Auth/CredentialsCache.js.map +1 -0
- package/lib/Auth/Demand.d.ts +59 -34
- package/lib/Auth/Demand.d.ts.map +1 -1
- package/lib/Auth/Demand.js +150 -60
- package/lib/Auth/Demand.js.map +1 -1
- package/lib/Auth/Env.d.ts +4 -4
- package/lib/Auth/Env.d.ts.map +1 -1
- package/lib/Auth/Env.js +18 -9
- package/lib/Auth/Env.js.map +1 -1
- package/lib/Auth/Inspect.d.ts +33 -0
- package/lib/Auth/Inspect.d.ts.map +1 -0
- package/lib/Auth/Inspect.js +67 -0
- package/lib/Auth/Inspect.js.map +1 -0
- package/lib/Auth/Lock.d.ts +6 -0
- package/lib/Auth/Lock.d.ts.map +1 -1
- package/lib/Auth/Lock.js +22 -11
- package/lib/Auth/Lock.js.map +1 -1
- package/lib/Auth/OAuthFlow.d.ts +119 -0
- package/lib/Auth/OAuthFlow.d.ts.map +1 -0
- package/lib/Auth/OAuthFlow.js +314 -0
- package/lib/Auth/OAuthFlow.js.map +1 -0
- package/lib/Auth/Paths.d.ts +18 -0
- package/lib/Auth/Paths.d.ts.map +1 -0
- package/lib/Auth/Paths.js +20 -0
- package/lib/Auth/Paths.js.map +1 -0
- package/lib/Auth/Profile.d.ts +91 -67
- package/lib/Auth/Profile.d.ts.map +1 -1
- package/lib/Auth/Profile.js +449 -92
- package/lib/Auth/Profile.js.map +1 -1
- package/lib/Auth/Resolve.d.ts +42 -0
- package/lib/Auth/Resolve.d.ts.map +1 -0
- package/lib/Auth/Resolve.js +90 -0
- package/lib/Auth/Resolve.js.map +1 -0
- package/lib/Auth/StoredAuthProvider.d.ts +84 -0
- package/lib/Auth/StoredAuthProvider.d.ts.map +1 -0
- package/lib/Auth/StoredAuthProvider.js +179 -0
- package/lib/Auth/StoredAuthProvider.js.map +1 -0
- package/lib/Auth/index.d.ts +1 -0
- package/lib/Auth/index.d.ts.map +1 -1
- package/lib/Auth/index.js +1 -0
- package/lib/Auth/index.js.map +1 -1
- package/lib/Axiom/AuthProvider.d.ts +17 -26
- package/lib/Axiom/AuthProvider.d.ts.map +1 -1
- package/lib/Axiom/AuthProvider.js +89 -172
- package/lib/Axiom/AuthProvider.js.map +1 -1
- package/lib/Axiom/Credentials.d.ts +2 -4
- package/lib/Axiom/Credentials.d.ts.map +1 -1
- package/lib/Axiom/Credentials.js +5 -10
- package/lib/Axiom/Credentials.js.map +1 -1
- package/lib/Axiom/Providers.d.ts +2 -2
- package/lib/Axiom/Providers.d.ts.map +1 -1
- package/lib/Axiom/Providers.js +3 -3
- package/lib/Axiom/Providers.js.map +1 -1
- package/lib/Bundle/Bundle.d.ts +3 -5
- package/lib/Bundle/Bundle.d.ts.map +1 -1
- package/lib/Bundle/Bundle.js.map +1 -1
- package/lib/Cli/CliKit/CliKit.d.ts +92 -0
- package/lib/Cli/CliKit/CliKit.d.ts.map +1 -0
- package/lib/Cli/CliKit/CliKit.js +27 -0
- package/lib/Cli/CliKit/CliKit.js.map +1 -0
- package/lib/Cli/CliKit/index.d.ts +9 -0
- package/lib/Cli/CliKit/index.d.ts.map +1 -0
- package/lib/Cli/CliKit/index.js +9 -0
- package/lib/Cli/CliKit/index.js.map +1 -0
- package/lib/Cli/CliKit/interaction.d.ts +13 -0
- package/lib/Cli/CliKit/interaction.d.ts.map +1 -0
- package/lib/Cli/CliKit/interaction.js +17 -0
- package/lib/Cli/CliKit/interaction.js.map +1 -0
- package/lib/Cli/CliKit/layer.d.ts +7 -0
- package/lib/Cli/CliKit/layer.d.ts.map +1 -0
- package/lib/Cli/CliKit/layer.js +34 -0
- package/lib/Cli/CliKit/layer.js.map +1 -0
- package/lib/Cli/DevOptions.d.ts +17 -0
- package/lib/Cli/DevOptions.d.ts.map +1 -0
- package/lib/Cli/DevOptions.js +16 -0
- package/lib/Cli/DevOptions.js.map +1 -0
- package/lib/Cli/Format.d.ts +5 -0
- package/lib/Cli/Format.d.ts.map +1 -0
- package/lib/Cli/Format.js +27 -0
- package/lib/Cli/Format.js.map +1 -0
- package/lib/Cli/GlobalLog.d.ts +41 -0
- package/lib/Cli/GlobalLog.d.ts.map +1 -0
- package/lib/Cli/GlobalLog.js +112 -0
- package/lib/Cli/GlobalLog.js.map +1 -0
- package/lib/Cli/LoggingCli.d.ts +4 -3
- package/lib/Cli/LoggingCli.d.ts.map +1 -1
- package/lib/Cli/LoggingCli.js +240 -100
- package/lib/Cli/LoggingCli.js.map +1 -1
- package/lib/Cli/ModeTag.d.ts +1 -1
- package/lib/Cli/ModeTag.js +1 -1
- package/lib/Cli/NamespaceTree.d.ts +18 -8
- package/lib/Cli/NamespaceTree.d.ts.map +1 -1
- package/lib/Cli/NamespaceTree.js +52 -11
- package/lib/Cli/NamespaceTree.js.map +1 -1
- package/lib/Cli/PlainCliFormatter.d.ts +11 -0
- package/lib/Cli/PlainCliFormatter.d.ts.map +1 -0
- package/lib/Cli/PlainCliFormatter.js +70 -0
- package/lib/Cli/PlainCliFormatter.js.map +1 -0
- package/lib/Cli/PropertyDiff.d.ts +37 -0
- package/lib/Cli/PropertyDiff.d.ts.map +1 -0
- package/lib/Cli/PropertyDiff.js +162 -0
- package/lib/Cli/PropertyDiff.js.map +1 -0
- package/lib/Cli/checkVersion.d.ts.map +1 -1
- package/lib/Cli/checkVersion.js +10 -6
- package/lib/Cli/checkVersion.js.map +1 -1
- package/lib/Cli/commands/aws.d.ts +2 -4
- package/lib/Cli/commands/aws.d.ts.map +1 -1
- package/lib/Cli/commands/aws.js +43 -55
- package/lib/Cli/commands/aws.js.map +1 -1
- package/lib/Cli/commands/cloudflare.d.ts +6 -7
- package/lib/Cli/commands/cloudflare.d.ts.map +1 -1
- package/lib/Cli/commands/cloudflare.js +149 -307
- package/lib/Cli/commands/cloudflare.js.map +1 -1
- package/lib/Cli/commands/compat.d.ts +11 -0
- package/lib/Cli/commands/compat.d.ts.map +1 -0
- package/lib/Cli/commands/compat.js +19 -0
- package/lib/Cli/commands/compat.js.map +1 -0
- package/lib/Cli/commands/confirm.d.ts +33 -0
- package/lib/Cli/commands/confirm.d.ts.map +1 -0
- package/lib/Cli/commands/confirm.js +39 -0
- package/lib/Cli/commands/confirm.js.map +1 -0
- package/lib/Cli/commands/deploy.d.ts +20 -32
- package/lib/Cli/commands/deploy.d.ts.map +1 -1
- package/lib/Cli/commands/deploy.js +140 -140
- package/lib/Cli/commands/deploy.js.map +1 -1
- package/lib/Cli/commands/dev.d.ts +5 -4
- package/lib/Cli/commands/dev.d.ts.map +1 -1
- package/lib/Cli/commands/dev.js +52 -26
- package/lib/Cli/commands/dev.js.map +1 -1
- package/lib/Cli/commands/drift.d.ts +12 -0
- package/lib/Cli/commands/drift.d.ts.map +1 -0
- package/lib/Cli/commands/drift.js +68 -0
- package/lib/Cli/commands/drift.js.map +1 -0
- package/lib/Cli/commands/errors.d.ts +35 -0
- package/lib/Cli/commands/errors.d.ts.map +1 -0
- package/lib/Cli/commands/errors.js +106 -0
- package/lib/Cli/commands/errors.js.map +1 -0
- package/lib/Cli/commands/flags.d.ts +46 -0
- package/lib/Cli/commands/flags.d.ts.map +1 -0
- package/lib/Cli/commands/flags.js +98 -0
- package/lib/Cli/commands/flags.js.map +1 -0
- package/lib/Cli/commands/instrument.d.ts +3 -0
- package/lib/Cli/commands/instrument.d.ts.map +1 -0
- package/lib/Cli/commands/instrument.js +6 -0
- package/lib/Cli/commands/instrument.js.map +1 -0
- package/lib/Cli/commands/logs.d.ts +5 -4
- package/lib/Cli/commands/logs.d.ts.map +1 -1
- package/lib/Cli/commands/logs.js +63 -88
- package/lib/Cli/commands/logs.js.map +1 -1
- package/lib/Cli/commands/nuke.d.ts +3 -2
- package/lib/Cli/commands/nuke.d.ts.map +1 -1
- package/lib/Cli/commands/nuke.js +89 -588
- package/lib/Cli/commands/nuke.js.map +1 -1
- package/lib/Cli/commands/profile/commands.d.ts +9 -0
- package/lib/Cli/commands/profile/commands.d.ts.map +1 -0
- package/lib/Cli/commands/profile/commands.js +276 -0
- package/lib/Cli/commands/profile/commands.js.map +1 -0
- package/lib/Cli/commands/profile/flows.d.ts +36 -0
- package/lib/Cli/commands/profile/flows.d.ts.map +1 -0
- package/lib/Cli/commands/profile/flows.js +155 -0
- package/lib/Cli/commands/profile/flows.js.map +1 -0
- package/lib/Cli/commands/profile/hub.d.ts +8 -0
- package/lib/Cli/commands/profile/hub.d.ts.map +1 -0
- package/lib/Cli/commands/profile/hub.js +154 -0
- package/lib/Cli/commands/profile/hub.js.map +1 -0
- package/lib/Cli/commands/profile/index.d.ts +2 -0
- package/lib/Cli/commands/profile/index.d.ts.map +1 -0
- package/lib/Cli/commands/profile/index.js +2 -0
- package/lib/Cli/commands/profile/index.js.map +1 -0
- package/lib/Cli/commands/provider.d.ts +17 -0
- package/lib/Cli/commands/provider.d.ts.map +1 -0
- package/lib/Cli/commands/provider.js +44 -0
- package/lib/Cli/commands/provider.js.map +1 -0
- package/lib/Cli/commands/render.d.ts +12 -0
- package/lib/Cli/commands/render.d.ts.map +1 -0
- package/lib/Cli/commands/render.js +82 -0
- package/lib/Cli/commands/render.js.map +1 -0
- package/lib/Cli/commands/state.d.ts +8 -1
- package/lib/Cli/commands/state.d.ts.map +1 -1
- package/lib/Cli/commands/state.js +125 -248
- package/lib/Cli/commands/state.js.map +1 -1
- package/lib/Cli/components/types.d.ts +104 -0
- package/lib/Cli/components/types.d.ts.map +1 -0
- package/lib/Cli/components/types.js +4 -0
- package/lib/Cli/components/types.js.map +1 -0
- package/lib/Cli/components/ui/Data.d.ts +15 -0
- package/lib/Cli/components/ui/Data.d.ts.map +1 -0
- package/lib/Cli/components/ui/Data.js +8 -0
- package/lib/Cli/components/ui/Data.js.map +1 -0
- package/lib/Cli/components/ui/Environment.d.ts +45 -0
- package/lib/Cli/components/ui/Environment.d.ts.map +1 -0
- package/lib/Cli/components/ui/Environment.js +38 -0
- package/lib/Cli/components/ui/Environment.js.map +1 -0
- package/lib/Cli/components/ui/Feedback.d.ts +57 -0
- package/lib/Cli/components/ui/Feedback.d.ts.map +1 -0
- package/lib/Cli/components/ui/Feedback.js +83 -0
- package/lib/Cli/components/ui/Feedback.js.map +1 -0
- package/lib/Cli/components/ui/Interactive.d.ts +157 -0
- package/lib/Cli/components/ui/Interactive.d.ts.map +1 -0
- package/lib/Cli/components/ui/Interactive.js +527 -0
- package/lib/Cli/components/ui/Interactive.js.map +1 -0
- package/lib/Cli/components/ui/Layout.d.ts +74 -0
- package/lib/Cli/components/ui/Layout.d.ts.map +1 -0
- package/lib/Cli/components/ui/Layout.js +91 -0
- package/lib/Cli/components/ui/Layout.js.map +1 -0
- package/lib/Cli/components/ui/Live.d.ts +49 -0
- package/lib/Cli/components/ui/Live.d.ts.map +1 -0
- package/lib/Cli/components/ui/Live.js +43 -0
- package/lib/Cli/components/ui/Live.js.map +1 -0
- package/lib/Cli/components/ui/ProgressBar.d.ts +16 -0
- package/lib/Cli/components/ui/ProgressBar.d.ts.map +1 -0
- package/lib/Cli/components/ui/ProgressBar.js +17 -0
- package/lib/Cli/components/ui/ProgressBar.js.map +1 -0
- package/lib/Cli/components/ui/Transcript.d.ts +12 -0
- package/lib/Cli/components/ui/Transcript.d.ts.map +1 -0
- package/lib/Cli/components/ui/Transcript.js +14 -0
- package/lib/Cli/components/ui/Transcript.js.map +1 -0
- package/lib/Cli/components/ui/Typography.d.ts +17 -0
- package/lib/Cli/components/ui/Typography.d.ts.map +1 -0
- package/lib/Cli/components/ui/Typography.js +21 -0
- package/lib/Cli/components/ui/Typography.js.map +1 -0
- package/lib/Cli/components/ui/index.d.ts +16 -0
- package/lib/Cli/components/ui/index.d.ts.map +1 -0
- package/lib/Cli/components/ui/index.js +16 -0
- package/lib/Cli/components/ui/index.js.map +1 -0
- package/lib/Cli/components/view/ApprovePlan.d.ts +17 -0
- package/lib/Cli/components/view/ApprovePlan.d.ts.map +1 -0
- package/lib/Cli/components/view/ApprovePlan.js +59 -0
- package/lib/Cli/components/view/ApprovePlan.js.map +1 -0
- package/lib/Cli/components/view/Help.d.ts +4 -0
- package/lib/Cli/components/view/Help.d.ts.map +1 -0
- package/lib/Cli/components/view/Help.js +116 -0
- package/lib/Cli/components/view/Help.js.map +1 -0
- package/lib/Cli/components/view/Logo.d.ts +7 -0
- package/lib/Cli/components/view/Logo.d.ts.map +1 -0
- package/lib/Cli/components/view/Logo.js +118 -0
- package/lib/Cli/components/view/Logo.js.map +1 -0
- package/lib/Cli/components/view/Nuke.d.ts +36 -0
- package/lib/Cli/components/view/Nuke.d.ts.map +1 -0
- package/lib/Cli/components/view/Nuke.js +148 -0
- package/lib/Cli/components/view/Nuke.js.map +1 -0
- package/lib/Cli/components/view/PlanDecision.d.ts +15 -0
- package/lib/Cli/components/view/PlanDecision.d.ts.map +1 -0
- package/lib/Cli/components/view/PlanDecision.js +26 -0
- package/lib/Cli/components/view/PlanDecision.js.map +1 -0
- package/lib/Cli/components/view/PlanRow.d.ts +17 -0
- package/lib/Cli/components/view/PlanRow.d.ts.map +1 -0
- package/lib/Cli/components/view/PlanRow.js +14 -0
- package/lib/Cli/components/view/PlanRow.js.map +1 -0
- package/lib/Cli/components/view/PlanTree.d.ts +116 -0
- package/lib/Cli/components/view/PlanTree.d.ts.map +1 -0
- package/lib/Cli/components/view/PlanTree.js +207 -0
- package/lib/Cli/components/view/PlanTree.js.map +1 -0
- package/lib/Cli/components/view/PlanView.d.ts +42 -0
- package/lib/Cli/components/view/PlanView.d.ts.map +1 -0
- package/lib/Cli/components/view/PlanView.js +310 -0
- package/lib/Cli/components/view/PlanView.js.map +1 -0
- package/lib/Cli/components/view/Profile.d.ts +130 -0
- package/lib/Cli/components/view/Profile.d.ts.map +1 -0
- package/lib/Cli/components/view/Profile.js +147 -0
- package/lib/Cli/components/view/Profile.js.map +1 -0
- package/lib/Cli/components/view/ProfileDashboard.d.ts +152 -0
- package/lib/Cli/components/view/ProfileDashboard.d.ts.map +1 -0
- package/lib/Cli/components/view/ProfileDashboard.js +485 -0
- package/lib/Cli/components/view/ProfileDashboard.js.map +1 -0
- package/lib/Cli/components/view/Prompts.d.ts +10 -0
- package/lib/Cli/components/view/Prompts.d.ts.map +1 -0
- package/lib/Cli/components/view/Prompts.js +440 -0
- package/lib/Cli/components/view/Prompts.js.map +1 -0
- package/lib/Cli/components/view/Runtime.d.ts +8 -0
- package/lib/Cli/components/view/Runtime.d.ts.map +1 -0
- package/lib/Cli/components/view/Runtime.js +670 -0
- package/lib/Cli/components/view/Runtime.js.map +1 -0
- package/lib/Cli/components/view/SigilCli.d.ts +5 -0
- package/lib/Cli/components/view/SigilCli.d.ts.map +1 -0
- package/lib/Cli/components/view/SigilCli.js +134 -0
- package/lib/Cli/components/view/SigilCli.js.map +1 -0
- package/lib/Cli/components/view/StackOutputs.d.ts +10 -0
- package/lib/Cli/components/view/StackOutputs.d.ts.map +1 -0
- package/lib/Cli/components/view/StackOutputs.js +14 -0
- package/lib/Cli/components/view/StackOutputs.js.map +1 -0
- package/lib/Cli/components/view/StateExplorer.d.ts +118 -0
- package/lib/Cli/components/view/StateExplorer.d.ts.map +1 -0
- package/lib/Cli/components/view/StateExplorer.js +664 -0
- package/lib/Cli/components/view/StateExplorer.js.map +1 -0
- package/lib/Cli/components/view/statusStyle.d.ts +18 -0
- package/lib/Cli/components/view/statusStyle.d.ts.map +1 -0
- package/lib/Cli/components/view/statusStyle.js +69 -0
- package/lib/Cli/components/view/statusStyle.js.map +1 -0
- package/lib/Cli/components/view/usePlanPresentation.d.ts +25 -0
- package/lib/Cli/components/view/usePlanPresentation.d.ts.map +1 -0
- package/lib/Cli/components/view/usePlanPresentation.js +54 -0
- package/lib/Cli/components/view/usePlanPresentation.js.map +1 -0
- package/lib/Cli/components/view/usePlanViewport.d.ts +31 -0
- package/lib/Cli/components/view/usePlanViewport.d.ts.map +1 -0
- package/lib/Cli/components/view/usePlanViewport.js +113 -0
- package/lib/Cli/components/view/usePlanViewport.js.map +1 -0
- package/lib/Cli/exec.d.ts +5 -1
- package/lib/Cli/exec.d.ts.map +1 -1
- package/lib/Cli/exec.js +173 -19
- package/lib/Cli/exec.js.map +1 -1
- package/lib/Cli/main.d.ts +4 -1
- package/lib/Cli/main.d.ts.map +1 -1
- package/lib/Cli/main.js +129 -38
- package/lib/Cli/main.js.map +1 -1
- package/lib/Cli/selectCli.d.ts +5 -3
- package/lib/Cli/selectCli.d.ts.map +1 -1
- package/lib/Cli/selectCli.js +16 -9
- package/lib/Cli/selectCli.js.map +1 -1
- package/lib/Cloudflare/ApiToken/UserApiToken.d.ts +1 -1
- package/lib/Cloudflare/ApiToken/UserApiToken.js +1 -1
- package/lib/Cloudflare/Auth/AuthConfig.d.ts +60 -0
- package/lib/Cloudflare/Auth/AuthConfig.d.ts.map +1 -0
- package/lib/Cloudflare/Auth/AuthConfig.js +68 -0
- package/lib/Cloudflare/Auth/AuthConfig.js.map +1 -0
- package/lib/Cloudflare/Auth/AuthProvider.d.ts +2 -142
- package/lib/Cloudflare/Auth/AuthProvider.d.ts.map +1 -1
- package/lib/Cloudflare/Auth/AuthProvider.js +473 -327
- package/lib/Cloudflare/Auth/AuthProvider.js.map +1 -1
- package/lib/Cloudflare/Auth/OAuthClient.d.ts +16 -48
- package/lib/Cloudflare/Auth/OAuthClient.d.ts.map +1 -1
- package/lib/Cloudflare/Auth/OAuthClient.js +25 -260
- package/lib/Cloudflare/Auth/OAuthClient.js.map +1 -1
- package/lib/Cloudflare/Auth/OAuthScopes.d.ts +88 -0
- package/lib/Cloudflare/Auth/OAuthScopes.d.ts.map +1 -0
- package/lib/Cloudflare/Auth/OAuthScopes.js +887 -0
- package/lib/Cloudflare/Auth/OAuthScopes.js.map +1 -0
- package/lib/Cloudflare/Auth/TokenPolicy.d.ts +34 -0
- package/lib/Cloudflare/Auth/TokenPolicy.d.ts.map +1 -0
- package/lib/Cloudflare/Auth/TokenPolicy.js +51 -0
- package/lib/Cloudflare/Auth/TokenPolicy.js.map +1 -0
- package/lib/Cloudflare/CloudflareEnvironment.d.ts +2 -3
- package/lib/Cloudflare/CloudflareEnvironment.d.ts.map +1 -1
- package/lib/Cloudflare/CloudflareEnvironment.js +7 -11
- package/lib/Cloudflare/CloudflareEnvironment.js.map +1 -1
- package/lib/Cloudflare/Containers/Container.d.ts +10 -25
- package/lib/Cloudflare/Containers/Container.d.ts.map +1 -1
- package/lib/Cloudflare/Containers/Container.js +9 -23
- package/lib/Cloudflare/Containers/Container.js.map +1 -1
- package/lib/Cloudflare/Containers/ContainerApplication.d.ts +12 -27
- package/lib/Cloudflare/Containers/ContainerApplication.d.ts.map +1 -1
- package/lib/Cloudflare/Containers/ContainerApplication.js.map +1 -1
- package/lib/Cloudflare/Containers/StartContainer.d.ts +1 -1
- package/lib/Cloudflare/Containers/StartContainer.d.ts.map +1 -1
- package/lib/Cloudflare/Credentials.d.ts +6 -20
- package/lib/Cloudflare/Credentials.d.ts.map +1 -1
- package/lib/Cloudflare/Credentials.js +12 -54
- package/lib/Cloudflare/Credentials.js.map +1 -1
- package/lib/Cloudflare/D1/ImportDatabase.d.ts +1 -1
- package/lib/Cloudflare/D1/ImportDatabase.d.ts.map +1 -1
- package/lib/Cloudflare/EdgeSession.d.ts +1 -1
- package/lib/Cloudflare/EdgeSession.d.ts.map +1 -1
- package/lib/Cloudflare/EdgeSession.js +1 -1
- package/lib/Cloudflare/EdgeSession.js.map +1 -1
- package/lib/Cloudflare/Logs.d.ts.map +1 -1
- package/lib/Cloudflare/Logs.js +10 -6
- package/lib/Cloudflare/Logs.js.map +1 -1
- package/lib/Cloudflare/Pages/Project.d.ts +1 -1
- package/lib/Cloudflare/Pages/Project.js +1 -1
- package/lib/Cloudflare/Providers.d.ts +2 -2
- package/lib/Cloudflare/Providers.d.ts.map +1 -1
- package/lib/Cloudflare/Providers.js +2 -2
- package/lib/Cloudflare/Providers.js.map +1 -1
- package/lib/Cloudflare/StateStore/Api.d.ts +3 -0
- package/lib/Cloudflare/StateStore/Api.d.ts.map +1 -1
- package/lib/Cloudflare/StateStore/Api.js +2 -2
- package/lib/Cloudflare/StateStore/Api.js.map +1 -1
- package/lib/Cloudflare/StateStore/CredentialsFile.d.ts +10 -6
- package/lib/Cloudflare/StateStore/CredentialsFile.d.ts.map +1 -1
- package/lib/Cloudflare/StateStore/CredentialsFile.js +23 -1
- package/lib/Cloudflare/StateStore/CredentialsFile.js.map +1 -1
- package/lib/Cloudflare/StateStore/State.d.ts +9 -5
- package/lib/Cloudflare/StateStore/State.d.ts.map +1 -1
- package/lib/Cloudflare/StateStore/State.js +132 -99
- package/lib/Cloudflare/StateStore/State.js.map +1 -1
- package/lib/Cloudflare/Vectorize/SearchIndexHttpClient.js +1 -1
- package/lib/Cloudflare/Vectorize/SearchIndexHttpClient.js.map +1 -1
- package/lib/Cloudflare/Website/Nextjs.d.ts.map +1 -1
- package/lib/Cloudflare/Website/Nextjs.js +4 -12
- package/lib/Cloudflare/Website/Nextjs.js.map +1 -1
- package/lib/Cloudflare/Website/Vocs.d.ts +1 -1
- package/lib/Cloudflare/Website/Vocs.d.ts.map +1 -1
- package/lib/Cloudflare/Website/Vocs.js +3 -7
- package/lib/Cloudflare/Website/Vocs.js.map +1 -1
- package/lib/Cloudflare/Workers/Assets.d.ts +2 -2
- package/lib/Cloudflare/Workers/Assets.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/Assets.js +74 -26
- package/lib/Cloudflare/Workers/Assets.js.map +1 -1
- package/lib/Cloudflare/Workers/BrowserHttpClient.d.ts +2 -2
- package/lib/Cloudflare/Workers/BrowserHttpClient.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/BrowserHttpClient.js +10 -3
- package/lib/Cloudflare/Workers/BrowserHttpClient.js.map +1 -1
- package/lib/Cloudflare/Workers/CloudflareTracer.d.ts +9 -0
- package/lib/Cloudflare/Workers/CloudflareTracer.d.ts.map +1 -0
- package/lib/Cloudflare/Workers/CloudflareTracer.js +87 -0
- package/lib/Cloudflare/Workers/CloudflareTracer.js.map +1 -0
- package/lib/Cloudflare/Workers/Compatibility.d.ts +13 -0
- package/lib/Cloudflare/Workers/Compatibility.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/Compatibility.js +31 -6
- package/lib/Cloudflare/Workers/Compatibility.js.map +1 -1
- package/lib/Cloudflare/Workers/DurableObject.d.ts +50 -4
- package/lib/Cloudflare/Workers/DurableObject.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/DurableObject.js +44 -3
- package/lib/Cloudflare/Workers/DurableObject.js.map +1 -1
- package/lib/Cloudflare/Workers/DurableObjectBridge.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/DurableObjectBridge.js +4 -0
- package/lib/Cloudflare/Workers/DurableObjectBridge.js.map +1 -1
- package/lib/Cloudflare/Workers/DurableObjectState.d.ts +25 -2
- package/lib/Cloudflare/Workers/DurableObjectState.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/DurableObjectState.js +7 -2
- package/lib/Cloudflare/Workers/DurableObjectState.js.map +1 -1
- package/lib/Cloudflare/Workers/DurableObjectStorage.d.ts +7 -1
- package/lib/Cloudflare/Workers/DurableObjectStorage.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/DurableObjectStorage.js +6 -1
- package/lib/Cloudflare/Workers/DurableObjectStorage.js.map +1 -1
- package/lib/Cloudflare/Workers/LocalWorkerProvider.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/LocalWorkerProvider.js +125 -58
- package/lib/Cloudflare/Workers/LocalWorkerProvider.js.map +1 -1
- package/lib/Cloudflare/Workers/RpcWorker.d.ts +12 -5
- package/lib/Cloudflare/Workers/RpcWorker.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/RpcWorker.js +8 -2
- package/lib/Cloudflare/Workers/RpcWorker.js.map +1 -1
- package/lib/Cloudflare/Workers/Source.d.ts +3 -0
- package/lib/Cloudflare/Workers/Source.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/Source.js +3 -1
- package/lib/Cloudflare/Workers/Source.js.map +1 -1
- package/lib/Cloudflare/Workers/Sources/Python.d.ts +2 -0
- package/lib/Cloudflare/Workers/Sources/Python.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/Sources/Python.js +16 -12
- package/lib/Cloudflare/Workers/Sources/Python.js.map +1 -1
- package/lib/Cloudflare/Workers/Sources/Rolldown.js +1 -1
- package/lib/Cloudflare/Workers/Sources/Rolldown.js.map +1 -1
- package/lib/Cloudflare/Workers/Sources/Vite.d.ts +1 -1
- package/lib/Cloudflare/Workers/Sources/Vite.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/Sources/Vite.js +6 -4
- package/lib/Cloudflare/Workers/Sources/Vite.js.map +1 -1
- package/lib/Cloudflare/Workers/Telemetry.d.ts +113 -0
- package/lib/Cloudflare/Workers/Telemetry.d.ts.map +1 -0
- package/lib/Cloudflare/Workers/Telemetry.js +129 -0
- package/lib/Cloudflare/Workers/Telemetry.js.map +1 -0
- package/lib/Cloudflare/Workers/ViteBuildChildRunner.js +6 -1
- package/lib/Cloudflare/Workers/ViteBuildChildRunner.js.map +1 -1
- package/lib/Cloudflare/Workers/ViteChild.d.ts +2 -2
- package/lib/Cloudflare/Workers/ViteChild.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/ViteChild.js +19 -17
- package/lib/Cloudflare/Workers/ViteChild.js.map +1 -1
- package/lib/Cloudflare/Workers/ViteChild.shared.d.ts +1 -0
- package/lib/Cloudflare/Workers/ViteChild.shared.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/ViteChild.shared.js.map +1 -1
- package/lib/Cloudflare/Workers/ViteChildRunner.js +2 -1
- package/lib/Cloudflare/Workers/ViteChildRunner.js.map +1 -1
- package/lib/Cloudflare/Workers/Worker.d.ts +101 -52
- package/lib/Cloudflare/Workers/Worker.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/Worker.js +91 -50
- package/lib/Cloudflare/Workers/Worker.js.map +1 -1
- package/lib/Cloudflare/Workers/WorkerAsyncBindings.d.ts +9 -1
- package/lib/Cloudflare/Workers/WorkerAsyncBindings.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/WorkerAsyncBindings.js +23 -0
- package/lib/Cloudflare/Workers/WorkerAsyncBindings.js.map +1 -1
- package/lib/Cloudflare/Workers/WorkerBinding.d.ts +6 -0
- package/lib/Cloudflare/Workers/WorkerBinding.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/WorkerLoader.d.ts +30 -4
- package/lib/Cloudflare/Workers/WorkerLoader.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/WorkerLoader.js +36 -5
- package/lib/Cloudflare/Workers/WorkerLoader.js.map +1 -1
- package/lib/Cloudflare/Workers/WorkerProvider.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/WorkerProvider.js +52 -45
- package/lib/Cloudflare/Workers/WorkerProvider.js.map +1 -1
- package/lib/Cloudflare/Workers/cloudflare_workers.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/cloudflare_workers.js +4 -1
- package/lib/Cloudflare/Workers/cloudflare_workers.js.map +1 -1
- package/lib/Cloudflare/Workers/index.d.ts +1 -0
- package/lib/Cloudflare/Workers/index.d.ts.map +1 -1
- package/lib/Cloudflare/Workers/index.js +1 -0
- package/lib/Cloudflare/Workers/index.js.map +1 -1
- package/lib/Cloudflare/Workflows/Workflow.d.ts +84 -0
- package/lib/Cloudflare/Workflows/Workflow.d.ts.map +1 -1
- package/lib/Cloudflare/Workflows/Workflow.js +47 -0
- package/lib/Cloudflare/Workflows/Workflow.js.map +1 -1
- package/lib/Cloudflare/Workflows/WorkflowBridge.js +7 -4
- package/lib/Cloudflare/Workflows/WorkflowBridge.js.map +1 -1
- package/lib/Command/Command.d.ts +1 -1
- package/lib/Command/Command.d.ts.map +1 -1
- package/lib/Command/Command.js +2 -2
- package/lib/Command/Command.js.map +1 -1
- package/lib/Command/Dev.d.ts +5 -2
- package/lib/Command/Dev.d.ts.map +1 -1
- package/lib/Command/Dev.js +31 -7
- package/lib/Command/Dev.js.map +1 -1
- package/lib/Command/Providers.d.ts +1 -1
- package/lib/Command/Providers.d.ts.map +1 -1
- package/lib/Deploy.d.ts +1 -1
- package/lib/Deploy.d.ts.map +1 -1
- package/lib/Destroy.d.ts +1 -1
- package/lib/Destroy.d.ts.map +1 -1
- package/lib/Docker/BuildHash.d.ts +13 -0
- package/lib/Docker/BuildHash.d.ts.map +1 -1
- package/lib/Docker/BuildHash.js +53 -3
- package/lib/Docker/BuildHash.js.map +1 -1
- package/lib/Docker/Docker.d.ts +1 -1
- package/lib/Docker/Docker.d.ts.map +1 -1
- package/lib/Docker/Docker.js +1 -1
- package/lib/Docker/Docker.js.map +1 -1
- package/lib/Docker/Service.d.ts +7 -21
- package/lib/Docker/Service.d.ts.map +1 -1
- package/lib/Docker/Service.js +7 -21
- package/lib/Docker/Service.js.map +1 -1
- package/lib/Docker/ServiceImage.d.ts +4 -5
- package/lib/Docker/ServiceImage.d.ts.map +1 -1
- package/lib/Docker/ServiceImage.js.map +1 -1
- package/lib/Drift.d.ts +91 -0
- package/lib/Drift.d.ts.map +1 -0
- package/lib/{Sync.js → Drift.js} +98 -29
- package/lib/Drift.js.map +1 -0
- package/lib/Drizzle/Schema.d.ts.map +1 -1
- package/lib/Drizzle/Schema.js +5 -5
- package/lib/Drizzle/Schema.js.map +1 -1
- package/lib/Fly/App.d.ts +1 -1
- package/lib/Fly/App.d.ts.map +1 -1
- package/lib/Fly/AuthProvider.d.ts +6 -20
- package/lib/Fly/AuthProvider.d.ts.map +1 -1
- package/lib/Fly/AuthProvider.js +32 -124
- package/lib/Fly/AuthProvider.js.map +1 -1
- package/lib/Fly/Bucket.d.ts +1 -1
- package/lib/Fly/Bucket.d.ts.map +1 -1
- package/lib/Fly/Catalog.d.ts +1 -1
- package/lib/Fly/Catalog.d.ts.map +1 -1
- package/lib/Fly/CheckpointHttp.d.ts.map +1 -1
- package/lib/Fly/CheckpointHttp.js +2 -2
- package/lib/Fly/CheckpointHttp.js.map +1 -1
- package/lib/Fly/Credentials.d.ts +15 -6
- package/lib/Fly/Credentials.d.ts.map +1 -1
- package/lib/Fly/Credentials.js +25 -13
- package/lib/Fly/Credentials.js.map +1 -1
- package/lib/Fly/DecryptHttp.d.ts.map +1 -1
- package/lib/Fly/DecryptHttp.js +2 -2
- package/lib/Fly/DecryptHttp.js.map +1 -1
- package/lib/Fly/EncryptHttp.d.ts.map +1 -1
- package/lib/Fly/EncryptHttp.js +2 -2
- package/lib/Fly/EncryptHttp.js.map +1 -1
- package/lib/Fly/Environment.d.ts +1 -1
- package/lib/Fly/Environment.d.ts.map +1 -1
- package/lib/Fly/ExecHttp.d.ts.map +1 -1
- package/lib/Fly/ExecHttp.js +2 -2
- package/lib/Fly/ExecHttp.js.map +1 -1
- package/lib/Fly/GetSecretHttp.d.ts.map +1 -1
- package/lib/Fly/GetSecretHttp.js +2 -2
- package/lib/Fly/GetSecretHttp.js.map +1 -1
- package/lib/Fly/ListSecretsHttp.d.ts.map +1 -1
- package/lib/Fly/ListSecretsHttp.js +2 -2
- package/lib/Fly/ListSecretsHttp.js.map +1 -1
- package/lib/Fly/Machine.d.ts +65 -0
- package/lib/Fly/Machine.d.ts.map +1 -1
- package/lib/Fly/Machine.js +34 -19
- package/lib/Fly/Machine.js.map +1 -1
- package/lib/Fly/Postgres.d.ts +1 -1
- package/lib/Fly/Postgres.d.ts.map +1 -1
- package/lib/Fly/Providers.d.ts +1 -1
- package/lib/Fly/Providers.d.ts.map +1 -1
- package/lib/Fly/Providers.js +2 -2
- package/lib/Fly/Providers.js.map +1 -1
- package/lib/Fly/Redis.d.ts +1 -1
- package/lib/Fly/Redis.d.ts.map +1 -1
- package/lib/Fly/Service.d.ts +43 -0
- package/lib/Fly/Service.d.ts.map +1 -1
- package/lib/Fly/Service.js +44 -19
- package/lib/Fly/Service.js.map +1 -1
- package/lib/Fly/SignHttp.d.ts.map +1 -1
- package/lib/Fly/SignHttp.js +2 -2
- package/lib/Fly/SignHttp.js.map +1 -1
- package/lib/Fly/VerifyHttp.d.ts.map +1 -1
- package/lib/Fly/VerifyHttp.js +2 -2
- package/lib/Fly/VerifyHttp.js.map +1 -1
- package/lib/Fly/Volume.d.ts +8 -8
- package/lib/Fly/Volume.d.ts.map +1 -1
- package/lib/Fly/WriteSecretHttp.d.ts.map +1 -1
- package/lib/Fly/WriteSecretHttp.js +2 -2
- package/lib/Fly/WriteSecretHttp.js.map +1 -1
- package/lib/Fly/replicas.d.ts +12 -10
- package/lib/Fly/replicas.d.ts.map +1 -1
- package/lib/Fly/replicas.js +35 -0
- package/lib/Fly/replicas.js.map +1 -1
- package/lib/GitHub/AuthProvider.d.ts +20 -29
- package/lib/GitHub/AuthProvider.d.ts.map +1 -1
- package/lib/GitHub/AuthProvider.js +141 -75
- package/lib/GitHub/AuthProvider.js.map +1 -1
- package/lib/GitHub/Credentials.d.ts +2 -3
- package/lib/GitHub/Credentials.d.ts.map +1 -1
- package/lib/GitHub/Credentials.js +6 -10
- package/lib/GitHub/Credentials.js.map +1 -1
- package/lib/GitHub/Providers.d.ts +3 -3
- package/lib/GitHub/Providers.d.ts.map +1 -1
- package/lib/GitHub/Providers.js +4 -4
- package/lib/GitHub/Providers.js.map +1 -1
- package/lib/Hetzner/AuthProvider.d.ts +7 -20
- package/lib/Hetzner/AuthProvider.d.ts.map +1 -1
- package/lib/Hetzner/AuthProvider.js +42 -130
- package/lib/Hetzner/AuthProvider.js.map +1 -1
- package/lib/Hetzner/Catalog.d.ts +5 -5
- package/lib/Hetzner/Catalog.d.ts.map +1 -1
- package/lib/Hetzner/Credentials.d.ts +1 -3
- package/lib/Hetzner/Credentials.d.ts.map +1 -1
- package/lib/Hetzner/Credentials.js +4 -9
- package/lib/Hetzner/Credentials.js.map +1 -1
- package/lib/Hetzner/PlacementGroup.d.ts +1 -1
- package/lib/Hetzner/PlacementGroup.d.ts.map +1 -1
- package/lib/Hetzner/Providers.d.ts +1 -1
- package/lib/Hetzner/Providers.d.ts.map +1 -1
- package/lib/Hetzner/Providers.js +2 -2
- package/lib/Hetzner/Providers.js.map +1 -1
- package/lib/Hetzner/hosted.d.ts +1 -1
- package/lib/Interaction.d.ts +186 -0
- package/lib/Interaction.d.ts.map +1 -0
- package/lib/Interaction.js +149 -0
- package/lib/Interaction.js.map +1 -0
- package/lib/Kubernetes/ClusterAdapter.d.ts +4 -5
- package/lib/Kubernetes/ClusterAdapter.d.ts.map +1 -1
- package/lib/Kubernetes/ClusterAdapter.js.map +1 -1
- package/lib/Kubernetes/Deployment.d.ts +7 -21
- package/lib/Kubernetes/Deployment.d.ts.map +1 -1
- package/lib/Kubernetes/Deployment.js +7 -21
- package/lib/Kubernetes/Deployment.js.map +1 -1
- package/lib/Kubernetes/Job.d.ts +7 -21
- package/lib/Kubernetes/Job.d.ts.map +1 -1
- package/lib/Kubernetes/Job.js +7 -21
- package/lib/Kubernetes/Job.js.map +1 -1
- package/lib/Local/DevLog.d.ts +32 -0
- package/lib/Local/DevLog.d.ts.map +1 -0
- package/lib/Local/DevLog.js +114 -0
- package/lib/Local/DevLog.js.map +1 -0
- package/lib/Local/LocalProvider.d.ts +1 -1
- package/lib/Local/LocalProvider.d.ts.map +1 -1
- package/lib/Local/LocalProvider.js +2 -2
- package/lib/Local/LocalProvider.js.map +1 -1
- package/lib/Local/RpcServer.d.ts.map +1 -1
- package/lib/Local/RpcServer.js +10 -1
- package/lib/Local/RpcServer.js.map +1 -1
- package/lib/Local/RpcServerEnvironment.d.ts +2 -2
- package/lib/Local/RpcServerEnvironment.d.ts.map +1 -1
- package/lib/Local/RpcServerEnvironment.js +3 -2
- package/lib/Local/RpcServerEnvironment.js.map +1 -1
- package/lib/Local/RpcSpawner.d.ts +14 -5
- package/lib/Local/RpcSpawner.d.ts.map +1 -1
- package/lib/Local/RpcSpawner.js +105 -38
- package/lib/Local/RpcSpawner.js.map +1 -1
- package/lib/Neon/AuthProvider.d.ts +4 -13
- package/lib/Neon/AuthProvider.d.ts.map +1 -1
- package/lib/Neon/AuthProvider.js +24 -107
- package/lib/Neon/AuthProvider.js.map +1 -1
- package/lib/Neon/Credentials.d.ts +1 -3
- package/lib/Neon/Credentials.d.ts.map +1 -1
- package/lib/Neon/Credentials.js +4 -9
- package/lib/Neon/Credentials.js.map +1 -1
- package/lib/Neon/Providers.d.ts +1 -1
- package/lib/Neon/Providers.d.ts.map +1 -1
- package/lib/Neon/Providers.js +2 -2
- package/lib/Neon/Providers.js.map +1 -1
- package/lib/Nuke.d.ts +89 -0
- package/lib/Nuke.d.ts.map +1 -0
- package/lib/Nuke.js +265 -0
- package/lib/Nuke.js.map +1 -0
- package/lib/Plan.d.ts +27 -5
- package/lib/Plan.d.ts.map +1 -1
- package/lib/Plan.js +167 -21
- package/lib/Plan.js.map +1 -1
- package/lib/Planetscale/AuthProvider.d.ts +25 -37
- package/lib/Planetscale/AuthProvider.d.ts.map +1 -1
- package/lib/Planetscale/AuthProvider.js +267 -150
- package/lib/Planetscale/AuthProvider.js.map +1 -1
- package/lib/Planetscale/Credentials.d.ts +2 -3
- package/lib/Planetscale/Credentials.d.ts.map +1 -1
- package/lib/Planetscale/Credentials.js +16 -13
- package/lib/Planetscale/Credentials.js.map +1 -1
- package/lib/Planetscale/OAuthClient.d.ts +8 -52
- package/lib/Planetscale/OAuthClient.d.ts.map +1 -1
- package/lib/Planetscale/OAuthClient.js +18 -240
- package/lib/Planetscale/OAuthClient.js.map +1 -1
- package/lib/Planetscale/Providers.d.ts +1 -1
- package/lib/Planetscale/Providers.d.ts.map +1 -1
- package/lib/Planetscale/Providers.js +2 -2
- package/lib/Planetscale/Providers.js.map +1 -1
- package/lib/Planetscale/Util.d.ts +1 -1
- package/lib/Planetscale/Util.d.ts.map +1 -1
- package/lib/Prisma/AuthProvider.d.ts +7 -15
- package/lib/Prisma/AuthProvider.d.ts.map +1 -1
- package/lib/Prisma/AuthProvider.js +54 -121
- package/lib/Prisma/AuthProvider.js.map +1 -1
- package/lib/Prisma/Compute.d.ts +7 -21
- package/lib/Prisma/Compute.d.ts.map +1 -1
- package/lib/Prisma/Compute.js +7 -21
- package/lib/Prisma/Compute.js.map +1 -1
- package/lib/Prisma/PrismaEnvironment.d.ts +1 -2
- package/lib/Prisma/PrismaEnvironment.d.ts.map +1 -1
- package/lib/Prisma/PrismaEnvironment.js +3 -8
- package/lib/Prisma/PrismaEnvironment.js.map +1 -1
- package/lib/Prisma/Providers.d.ts +3 -3
- package/lib/Prisma/Providers.d.ts.map +1 -1
- package/lib/Prisma/Providers.js +7 -7
- package/lib/Prisma/Providers.js.map +1 -1
- package/lib/Provider.d.ts +10 -2
- package/lib/Provider.d.ts.map +1 -1
- package/lib/Provider.js +9 -10
- package/lib/Provider.js.map +1 -1
- package/lib/Railway/AuditLog.d.ts +2 -2
- package/lib/Railway/AuditLog.d.ts.map +1 -1
- package/lib/Railway/AuthProvider.d.ts +19 -19
- package/lib/Railway/AuthProvider.d.ts.map +1 -1
- package/lib/Railway/AuthProvider.js +193 -127
- package/lib/Railway/AuthProvider.js.map +1 -1
- package/lib/Railway/Bucket.js +2 -2
- package/lib/Railway/CloudAgent.js +2 -2
- package/lib/Railway/Credentials.d.ts +2 -5
- package/lib/Railway/Credentials.d.ts.map +1 -1
- package/lib/Railway/Credentials.js +5 -11
- package/lib/Railway/Credentials.js.map +1 -1
- package/lib/Railway/CustomDomain.js +3 -3
- package/lib/Railway/Function.js +6 -6
- package/lib/Railway/Group.js +2 -2
- package/lib/Railway/LoginSession.d.ts +3 -3
- package/lib/Railway/LoginSession.js +5 -5
- package/lib/Railway/Mongo.js +13 -13
- package/lib/Railway/MySQL.js +13 -13
- package/lib/Railway/Postgres.js +13 -13
- package/lib/Railway/PrivateNetwork.js +2 -2
- package/lib/Railway/Project.d.ts +3 -3
- package/lib/Railway/Project.d.ts.map +1 -1
- package/lib/Railway/Project.js +3 -3
- package/lib/Railway/ProjectEnvironment.js +3 -3
- package/lib/Railway/Providers.d.ts +1 -1
- package/lib/Railway/Providers.d.ts.map +1 -1
- package/lib/Railway/Providers.js +2 -2
- package/lib/Railway/Providers.js.map +1 -1
- package/lib/Railway/Redis.js +5 -5
- package/lib/Railway/Sandbox.d.ts +6 -6
- package/lib/Railway/Sandbox.js +5 -5
- package/lib/Railway/Service.d.ts +72 -1
- package/lib/Railway/Service.d.ts.map +1 -1
- package/lib/Railway/Service.js +42 -0
- package/lib/Railway/Service.js.map +1 -1
- package/lib/Railway/ServiceDomain.d.ts +28 -2
- package/lib/Railway/ServiceDomain.d.ts.map +1 -1
- package/lib/Railway/ServiceDomain.js +134 -17
- package/lib/Railway/ServiceDomain.js.map +1 -1
- package/lib/Railway/ServiceProvider.d.ts +2 -10
- package/lib/Railway/ServiceProvider.d.ts.map +1 -1
- package/lib/Railway/ServiceProvider.js +170 -64
- package/lib/Railway/ServiceProvider.js.map +1 -1
- package/lib/Railway/TcpProxy.js +2 -2
- package/lib/Railway/Template.js +2 -2
- package/lib/Railway/Usage.js +2 -2
- package/lib/Railway/Variable.js +2 -2
- package/lib/Railway/Volume.d.ts +1 -1
- package/lib/Railway/Volume.d.ts.map +1 -1
- package/lib/Railway/Volume.js +4 -4
- package/lib/Railway/VolumeBackup.d.ts +2 -2
- package/lib/Railway/VolumeBackup.js +8 -8
- package/lib/Railway/local-context.d.ts +125 -0
- package/lib/Railway/local-context.d.ts.map +1 -0
- package/lib/Railway/local-context.js +254 -0
- package/lib/Railway/local-context.js.map +1 -0
- package/lib/Report.d.ts +248 -0
- package/lib/Report.d.ts.map +1 -0
- package/lib/Report.js +18 -0
- package/lib/Report.js.map +1 -0
- package/lib/Stack.d.ts +7 -6
- package/lib/Stack.d.ts.map +1 -1
- package/lib/Stack.js +2 -4
- package/lib/Stack.js.map +1 -1
- package/lib/State/Export.d.ts +6 -4
- package/lib/State/Export.d.ts.map +1 -1
- package/lib/State/Export.js +13 -18
- package/lib/State/Export.js.map +1 -1
- package/lib/State/HttpStateStore.d.ts +1 -1
- package/lib/State/HttpStateStore.d.ts.map +1 -1
- package/lib/State/HttpStateStore.js +10 -6
- package/lib/State/HttpStateStore.js.map +1 -1
- package/lib/State/LocalState.d.ts.map +1 -1
- package/lib/State/LocalState.js +6 -13
- package/lib/State/LocalState.js.map +1 -1
- package/lib/State/Tree.d.ts +62 -0
- package/lib/State/Tree.d.ts.map +1 -0
- package/lib/State/Tree.js +166 -0
- package/lib/State/Tree.js.map +1 -0
- package/lib/State/index.d.ts +1 -0
- package/lib/State/index.d.ts.map +1 -1
- package/lib/State/index.js +1 -0
- package/lib/State/index.js.map +1 -1
- package/lib/Telemetry/Layer.d.ts +6 -0
- package/lib/Telemetry/Layer.d.ts.map +1 -1
- package/lib/Telemetry/Layer.js +16 -5
- package/lib/Telemetry/Layer.js.map +1 -1
- package/lib/Telemetry.d.ts +5 -0
- package/lib/Telemetry.d.ts.map +1 -1
- package/lib/Telemetry.js +6 -1
- package/lib/Telemetry.js.map +1 -1
- package/lib/Test/Core.d.ts +4 -3
- package/lib/Test/Core.d.ts.map +1 -1
- package/lib/Test/Core.js +5 -3
- package/lib/Test/Core.js.map +1 -1
- package/lib/UserFacingError.d.ts +26 -0
- package/lib/UserFacingError.d.ts.map +1 -0
- package/lib/UserFacingError.js +25 -0
- package/lib/UserFacingError.js.map +1 -0
- package/lib/Util/AtomicFile.d.ts +19 -0
- package/lib/Util/AtomicFile.d.ts.map +1 -0
- package/lib/Util/AtomicFile.js +22 -0
- package/lib/Util/AtomicFile.js.map +1 -0
- package/lib/Util/ConsoleSink.d.ts +4 -0
- package/lib/Util/ConsoleSink.d.ts.map +1 -0
- package/lib/Util/ConsoleSink.js +24 -0
- package/lib/Util/ConsoleSink.js.map +1 -0
- package/lib/Util/LineBuffer.d.ts +9 -0
- package/lib/Util/LineBuffer.d.ts.map +1 -0
- package/lib/Util/LineBuffer.js +23 -0
- package/lib/Util/LineBuffer.js.map +1 -0
- package/lib/Util/Memoize.d.ts +20 -0
- package/lib/Util/Memoize.d.ts.map +1 -0
- package/lib/Util/Memoize.js +38 -0
- package/lib/Util/Memoize.js.map +1 -0
- package/lib/Util/Node.d.ts +22 -5
- package/lib/Util/Node.d.ts.map +1 -1
- package/lib/Util/Node.js +30 -10
- package/lib/Util/Node.js.map +1 -1
- package/lib/Util/PlatformServices.d.ts +6 -2
- package/lib/Util/PlatformServices.d.ts.map +1 -1
- package/lib/Util/PlatformServices.js +6 -2
- package/lib/Util/PlatformServices.js.map +1 -1
- package/lib/Util/ResourceOutput.d.ts +30 -0
- package/lib/Util/ResourceOutput.d.ts.map +1 -0
- package/lib/Util/ResourceOutput.js +60 -0
- package/lib/Util/ResourceOutput.js.map +1 -0
- package/lib/Util/Terminal.d.ts +23 -0
- package/lib/Util/Terminal.d.ts.map +1 -0
- package/lib/Util/Terminal.js +57 -0
- package/lib/Util/Terminal.js.map +1 -0
- package/lib/Util/Theme.d.ts +123 -0
- package/lib/Util/Theme.d.ts.map +1 -0
- package/lib/Util/Theme.js +133 -0
- package/lib/Util/Theme.js.map +1 -0
- package/lib/Util/interactive.d.ts +17 -12
- package/lib/Util/interactive.d.ts.map +1 -1
- package/lib/Util/interactive.js +81 -13
- package/lib/Util/interactive.js.map +1 -1
- package/lib/Util/scc.d.ts +11 -3
- package/lib/Util/scc.d.ts.map +1 -1
- package/lib/Util/scc.js +35 -22
- package/lib/Util/scc.js.map +1 -1
- package/lib/Util/tarGzip.d.ts +3 -1
- package/lib/Util/tarGzip.d.ts.map +1 -1
- package/lib/Util/tarGzip.js +15 -5
- package/lib/Util/tarGzip.js.map +1 -1
- package/lib/index.d.ts +4 -2
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +4 -2
- package/lib/index.js.map +1 -1
- package/package.json +40 -38
- package/src/AWS/AGENTS.md +1 -1
- package/src/AWS/AMP/Scraper.ts +1 -1
- package/src/AWS/AppRunner/Service.ts +11 -27
- package/src/AWS/Assets.ts +2 -2
- package/src/AWS/AuthProvider.ts +748 -429
- package/src/AWS/Batch/JobDefinition.ts +11 -27
- package/src/AWS/EC2/Instance.ts +12 -28
- package/src/AWS/EC2/InternetGateway.ts +1 -1
- package/src/AWS/EC2/NatGateway.ts +1 -1
- package/src/AWS/EC2/NetworkInterface.ts +1 -1
- package/src/AWS/EC2/NetworkInterfaceAttachment.ts +1 -1
- package/src/AWS/EC2/RouteTable.ts +1 -1
- package/src/AWS/EC2/RouteTableAssociation.ts +1 -1
- package/src/AWS/EC2/Snapshot.ts +1 -1
- package/src/AWS/EC2/Subnet.ts +1 -1
- package/src/AWS/EC2/Volume.ts +1 -1
- package/src/AWS/EC2/VolumeAttachment.ts +1 -1
- package/src/AWS/EC2/Vpc.ts +1 -1
- package/src/AWS/EC2/VpcEndpoint.ts +1 -1
- package/src/AWS/EC2/hosted.ts +5 -6
- package/src/AWS/ECR/ImageSource.ts +4 -5
- package/src/AWS/ECS/Service.ts +7 -21
- package/src/AWS/ECS/Task.ts +7 -21
- package/src/AWS/ElastiCache/CacheCluster.ts +323 -0
- package/src/AWS/ElastiCache/ConnectCacheCluster.ts +58 -0
- package/src/AWS/ElastiCache/ConnectCacheClusterHttp.ts +77 -0
- package/src/AWS/ElastiCache/ConnectReplicationGroup.ts +62 -0
- package/src/AWS/ElastiCache/ConnectReplicationGroupHttp.ts +110 -0
- package/src/AWS/ElastiCache/ReplicationGroup.ts +594 -0
- package/src/AWS/ElastiCache/SubnetGroup.ts +208 -0
- package/src/AWS/ElastiCache/index.ts +7 -0
- package/src/AWS/ElastiCache/internal.ts +36 -0
- package/src/AWS/Environment.ts +15 -48
- package/src/AWS/IAM/actions.generated.ts +1 -1
- package/src/AWS/IdentityCenter/AccountAssignment.ts +7 -0
- package/src/AWS/Lambda/Function.ts +26 -28
- package/src/AWS/Lambda/MicrovmImage.ts +12 -28
- package/src/AWS/Lambda/MicrovmProvider.ts +1 -1
- package/src/AWS/Lambda/NetworkConnector.ts +1 -1
- package/src/AWS/Local/DevWatchProvider.ts +10 -1
- package/src/AWS/Organizations/Account.ts +18 -10
- package/src/AWS/Organizations/DelegatedAdministrator.ts +7 -7
- package/src/AWS/Organizations/Organization.ts +3 -5
- package/src/AWS/Organizations/common.ts +17 -0
- package/src/AWS/Providers.ts +12 -0
- package/src/AWS/S3/Bucket.ts +1 -1
- package/src/Alchemist/Errors.ts +36 -0
- package/src/Alchemist/Progress.ts +175 -0
- package/src/Alchemist/Runtime.ts +40 -0
- package/src/Alchemist/Session.ts +460 -0
- package/src/Alchemist/index.ts +24 -0
- package/src/Alchemist/routes/aws.ts +88 -0
- package/src/Alchemist/routes/cloudflare.ts +188 -0
- package/src/Alchemist/routes/cloudflareToken.ts +215 -0
- package/src/Alchemist/routes/drift.ts +94 -0
- package/src/Alchemist/routes/logs.ts +185 -0
- package/src/Alchemist/routes/nuke.ts +146 -0
- package/src/Alchemist/routes/profile.ts +427 -0
- package/src/Alchemist/routes/provider.ts +107 -0
- package/src/Alchemist/routes/stack.ts +137 -0
- package/src/Alchemist/routes/state.ts +77 -0
- package/src/Apply.ts +312 -173
- package/src/Auth/AuthProvider.ts +416 -158
- package/src/Auth/BrowserOAuth.ts +68 -0
- package/src/Auth/Credentials.ts +155 -46
- package/src/Auth/CredentialsCache.ts +57 -0
- package/src/Auth/Demand.ts +208 -83
- package/src/Auth/Env.ts +38 -14
- package/src/Auth/Inspect.ts +129 -0
- package/src/Auth/Lock.ts +26 -11
- package/src/Auth/OAuthFlow.ts +551 -0
- package/src/Auth/Paths.ts +30 -0
- package/src/Auth/Profile.ts +768 -164
- package/src/Auth/Resolve.ts +136 -0
- package/src/Auth/StoredAuthProvider.ts +291 -0
- package/src/Auth/index.ts +1 -0
- package/src/Axiom/AuthProvider.ts +112 -314
- package/src/Axiom/Credentials.ts +5 -13
- package/src/Axiom/Providers.ts +3 -3
- package/src/Bundle/Bundle.ts +3 -5
- package/src/Cli/CliKit/CliKit.ts +183 -0
- package/src/Cli/CliKit/index.ts +50 -0
- package/src/Cli/CliKit/interaction.ts +19 -0
- package/src/Cli/CliKit/layer.ts +50 -0
- package/src/Cli/DevOptions.ts +19 -0
- package/src/Cli/Format.ts +31 -0
- package/src/Cli/GlobalLog.ts +147 -0
- package/src/Cli/LoggingCli.ts +312 -108
- package/src/Cli/ModeTag.ts +1 -1
- package/src/Cli/NamespaceTree.ts +94 -21
- package/src/Cli/PlainCliFormatter.ts +75 -0
- package/src/Cli/PropertyDiff.ts +229 -0
- package/src/Cli/checkVersion.ts +19 -6
- package/src/Cli/commands/aws.ts +67 -100
- package/src/Cli/commands/cloudflare.ts +195 -435
- package/src/Cli/commands/compat.ts +25 -0
- package/src/Cli/commands/confirm.ts +46 -0
- package/src/Cli/commands/deploy.ts +225 -212
- package/src/Cli/commands/dev.ts +72 -34
- package/src/Cli/commands/drift.ts +107 -0
- package/src/Cli/commands/errors.ts +162 -0
- package/src/Cli/commands/flags.ts +199 -0
- package/src/Cli/commands/instrument.ts +18 -0
- package/src/Cli/commands/logs.ts +125 -143
- package/src/Cli/commands/nuke.ts +138 -811
- package/src/Cli/commands/profile/commands.ts +482 -0
- package/src/Cli/commands/profile/flows.ts +218 -0
- package/src/Cli/commands/profile/hub.ts +191 -0
- package/src/Cli/commands/profile/index.ts +1 -0
- package/src/Cli/commands/provider.ts +63 -0
- package/src/Cli/commands/render.ts +121 -0
- package/src/Cli/commands/state.ts +250 -387
- package/src/Cli/components/types.ts +141 -0
- package/src/Cli/components/ui/Data.tsx +44 -0
- package/src/Cli/components/ui/Environment.tsx +86 -0
- package/src/Cli/components/ui/Feedback.tsx +269 -0
- package/src/Cli/components/ui/Interactive.tsx +1062 -0
- package/src/Cli/components/ui/Layout.tsx +252 -0
- package/src/Cli/components/ui/Live.tsx +131 -0
- package/src/Cli/components/ui/ProgressBar.tsx +57 -0
- package/src/Cli/components/ui/Transcript.tsx +42 -0
- package/src/Cli/components/ui/Typography.tsx +83 -0
- package/src/Cli/components/ui/index.ts +68 -0
- package/src/Cli/components/view/ApprovePlan.tsx +101 -0
- package/src/Cli/components/view/Help.tsx +381 -0
- package/src/Cli/components/view/Logo.tsx +168 -0
- package/src/Cli/components/view/Nuke.tsx +258 -0
- package/src/Cli/components/view/PlanDecision.tsx +80 -0
- package/src/Cli/components/view/PlanRow.tsx +39 -0
- package/src/Cli/components/view/PlanTree.ts +354 -0
- package/src/Cli/components/view/PlanView.tsx +825 -0
- package/src/Cli/components/view/Profile.tsx +446 -0
- package/src/Cli/components/view/ProfileDashboard.tsx +929 -0
- package/src/Cli/components/view/Prompts.tsx +793 -0
- package/src/Cli/components/view/Runtime.tsx +975 -0
- package/src/Cli/components/view/SigilCli.tsx +186 -0
- package/src/Cli/components/view/StackOutputs.tsx +38 -0
- package/src/Cli/components/view/StateExplorer.tsx +1179 -0
- package/src/Cli/components/view/statusStyle.ts +97 -0
- package/src/Cli/components/view/usePlanPresentation.ts +82 -0
- package/src/Cli/components/view/usePlanViewport.ts +172 -0
- package/src/Cli/exec.ts +278 -32
- package/src/Cli/main.ts +189 -42
- package/src/Cli/selectCli.ts +30 -15
- package/src/Cloudflare/ApiToken/UserApiToken.ts +1 -1
- package/src/Cloudflare/Auth/AuthConfig.ts +117 -0
- package/src/Cloudflare/Auth/AuthProvider.ts +712 -608
- package/src/Cloudflare/Auth/OAuthClient.ts +40 -366
- package/src/Cloudflare/Auth/OAuthScopes.ts +921 -0
- package/src/Cloudflare/Auth/TokenPolicy.ts +79 -0
- package/src/Cloudflare/CloudflareEnvironment.ts +7 -17
- package/src/Cloudflare/Containers/Container.ts +12 -24
- package/src/Cloudflare/Containers/ContainerApplication.ts +12 -27
- package/src/Cloudflare/Credentials.ts +18 -72
- package/src/Cloudflare/EdgeSession.ts +2 -3
- package/src/Cloudflare/Logs.ts +16 -10
- package/src/Cloudflare/Pages/Project.ts +1 -1
- package/src/Cloudflare/Providers.ts +2 -2
- package/src/Cloudflare/StateStore/Api.ts +2 -2
- package/src/Cloudflare/StateStore/CredentialsFile.ts +11 -6
- package/src/Cloudflare/StateStore/State.ts +247 -194
- package/src/Cloudflare/Vectorize/SearchIndexHttpClient.ts +2 -2
- package/src/Cloudflare/Website/Nextjs.ts +4 -15
- package/src/Cloudflare/Website/Vocs.ts +3 -7
- package/src/Cloudflare/Workers/Assets.ts +106 -38
- package/src/Cloudflare/Workers/BrowserHttpClient.ts +10 -3
- package/src/Cloudflare/Workers/CloudflareTracer.ts +113 -0
- package/src/Cloudflare/Workers/Compatibility.ts +37 -7
- package/src/Cloudflare/Workers/DurableObject.ts +50 -4
- package/src/Cloudflare/Workers/DurableObjectBridge.ts +8 -0
- package/src/Cloudflare/Workers/DurableObjectState.ts +46 -9
- package/src/Cloudflare/Workers/DurableObjectStorage.ts +25 -12
- package/src/Cloudflare/Workers/LocalWorkerProvider.ts +172 -58
- package/src/Cloudflare/Workers/RpcWorker.ts +44 -18
- package/src/Cloudflare/Workers/Source.ts +9 -1
- package/src/Cloudflare/Workers/Sources/Python.ts +18 -12
- package/src/Cloudflare/Workers/Sources/Rolldown.ts +1 -1
- package/src/Cloudflare/Workers/Sources/Vite.ts +42 -34
- package/src/Cloudflare/Workers/Telemetry.ts +170 -0
- package/src/Cloudflare/Workers/ViteBuildChildRunner.ts +6 -1
- package/src/Cloudflare/Workers/ViteChild.shared.ts +1 -0
- package/src/Cloudflare/Workers/ViteChild.ts +21 -19
- package/src/Cloudflare/Workers/ViteChildRunner.ts +2 -1
- package/src/Cloudflare/Workers/Worker.ts +101 -50
- package/src/Cloudflare/Workers/WorkerAsyncBindings.ts +29 -0
- package/src/Cloudflare/Workers/WorkerLoader.ts +40 -8
- package/src/Cloudflare/Workers/WorkerProvider.ts +64 -29
- package/src/Cloudflare/Workers/cloudflare_workers.ts +5 -1
- package/src/Cloudflare/Workers/index.ts +1 -0
- package/src/Cloudflare/Workflows/Workflow.ts +105 -0
- package/src/Cloudflare/Workflows/WorkflowBridge.ts +5 -3
- package/src/Command/Command.ts +11 -3
- package/src/Command/Dev.ts +33 -8
- package/src/Docker/BuildHash.ts +75 -8
- package/src/Docker/Docker.ts +7 -2
- package/src/Docker/Service.ts +7 -21
- package/src/Docker/ServiceImage.ts +4 -5
- package/src/{Sync.ts → Drift.ts} +161 -59
- package/src/Drizzle/Schema.ts +5 -7
- package/src/Fly/AuthProvider.ts +44 -232
- package/src/Fly/CheckpointHttp.ts +5 -2
- package/src/Fly/Credentials.ts +29 -16
- package/src/Fly/DecryptHttp.ts +5 -2
- package/src/Fly/EncryptHttp.ts +5 -2
- package/src/Fly/ExecHttp.ts +5 -2
- package/src/Fly/GetSecretHttp.ts +5 -2
- package/src/Fly/ListSecretsHttp.ts +5 -2
- package/src/Fly/Machine.ts +67 -20
- package/src/Fly/Providers.ts +2 -2
- package/src/Fly/Service.ts +44 -20
- package/src/Fly/SignHttp.ts +5 -2
- package/src/Fly/VerifyHttp.ts +5 -2
- package/src/Fly/WriteSecretHttp.ts +5 -2
- package/src/Fly/replicas.ts +47 -1
- package/src/GitHub/AuthProvider.ts +225 -143
- package/src/GitHub/Credentials.ts +6 -13
- package/src/GitHub/Providers.ts +4 -4
- package/src/Hetzner/AuthProvider.ts +50 -238
- package/src/Hetzner/Credentials.ts +4 -12
- package/src/Hetzner/Providers.ts +2 -2
- package/src/Interaction.ts +354 -0
- package/src/Kubernetes/ClusterAdapter.ts +4 -5
- package/src/Kubernetes/Deployment.ts +7 -21
- package/src/Kubernetes/Job.ts +7 -21
- package/src/Local/DevLog.ts +135 -0
- package/src/Local/LocalProvider.ts +3 -3
- package/src/Local/RpcServer.ts +11 -0
- package/src/Local/RpcServerEnvironment.ts +3 -2
- package/src/Local/RpcSpawner.ts +161 -78
- package/src/Neon/AuthProvider.ts +31 -203
- package/src/Neon/Credentials.ts +4 -12
- package/src/Neon/Providers.ts +2 -2
- package/src/Nuke.ts +463 -0
- package/src/Plan.ts +920 -708
- package/src/Planetscale/AuthProvider.ts +397 -324
- package/src/Planetscale/Credentials.ts +21 -19
- package/src/Planetscale/OAuthClient.ts +34 -328
- package/src/Planetscale/Providers.ts +2 -2
- package/src/Planetscale/Util.ts +1 -1
- package/src/Prisma/AuthProvider.ts +62 -240
- package/src/Prisma/Compute.ts +7 -21
- package/src/Prisma/PrismaEnvironment.ts +6 -14
- package/src/Prisma/Providers.ts +7 -7
- package/src/Provider.ts +12 -13
- package/src/Railway/AuthProvider.ts +291 -235
- package/src/Railway/Bucket.ts +6 -6
- package/src/Railway/CloudAgent.ts +4 -4
- package/src/Railway/Credentials.ts +5 -14
- package/src/Railway/CustomDomain.ts +5 -5
- package/src/Railway/Function.ts +10 -10
- package/src/Railway/Group.ts +2 -2
- package/src/Railway/LoginSession.ts +5 -5
- package/src/Railway/Mongo.ts +19 -19
- package/src/Railway/MySQL.ts +19 -19
- package/src/Railway/Postgres.ts +19 -19
- package/src/Railway/PrivateNetwork.ts +2 -2
- package/src/Railway/Project.ts +7 -7
- package/src/Railway/ProjectEnvironment.ts +7 -7
- package/src/Railway/Providers.ts +2 -2
- package/src/Railway/Redis.ts +9 -9
- package/src/Railway/Sandbox.ts +10 -10
- package/src/Railway/Service.ts +72 -1
- package/src/Railway/ServiceDomain.ts +253 -27
- package/src/Railway/ServiceProvider.ts +234 -87
- package/src/Railway/TcpProxy.ts +4 -4
- package/src/Railway/Template.ts +12 -12
- package/src/Railway/Usage.ts +2 -2
- package/src/Railway/Variable.ts +2 -2
- package/src/Railway/Volume.ts +4 -4
- package/src/Railway/VolumeBackup.ts +11 -11
- package/src/Railway/local-context.ts +333 -0
- package/src/Report.ts +365 -0
- package/src/Stack.ts +12 -8
- package/src/State/Export.ts +28 -47
- package/src/State/HttpStateStore.ts +15 -8
- package/src/State/LocalState.ts +6 -16
- package/src/State/Tree.ts +277 -0
- package/src/State/index.ts +1 -0
- package/src/Telemetry/Layer.ts +16 -5
- package/src/Telemetry.ts +6 -1
- package/src/Test/Core.ts +10 -4
- package/src/UserFacingError.ts +35 -0
- package/src/Util/AtomicFile.ts +36 -0
- package/src/Util/ConsoleSink.ts +23 -0
- package/src/Util/LineBuffer.ts +20 -0
- package/src/Util/Memoize.ts +48 -0
- package/src/Util/Node.ts +35 -14
- package/src/Util/PlatformServices.ts +11 -1
- package/src/Util/ResourceOutput.ts +77 -0
- package/src/Util/Terminal.ts +81 -0
- package/src/Util/Theme.ts +150 -0
- package/src/Util/interactive.ts +103 -16
- package/src/Util/scc.ts +43 -23
- package/src/Util/tarGzip.ts +33 -5
- package/src/index.ts +4 -2
- package/lib/Cli/Cli.d.ts +0 -21
- package/lib/Cli/Cli.d.ts.map +0 -1
- package/lib/Cli/Cli.js +0 -5
- package/lib/Cli/Cli.js.map +0 -1
- package/lib/Cli/Event.d.ts +0 -29
- package/lib/Cli/Event.d.ts.map +0 -1
- package/lib/Cli/Event.js +0 -1
- package/lib/Cli/Event.js.map +0 -1
- package/lib/Cli/commands/_shared.d.ts +0 -138
- package/lib/Cli/commands/_shared.d.ts.map +0 -1
- package/lib/Cli/commands/_shared.js +0 -298
- package/lib/Cli/commands/_shared.js.map +0 -1
- package/lib/Cli/commands/login.d.ts +0 -14
- package/lib/Cli/commands/login.d.ts.map +0 -1
- package/lib/Cli/commands/login.js +0 -115
- package/lib/Cli/commands/login.js.map +0 -1
- package/lib/Cli/commands/profile.d.ts +0 -25
- package/lib/Cli/commands/profile.d.ts.map +0 -1
- package/lib/Cli/commands/profile.js +0 -83
- package/lib/Cli/commands/profile.js.map +0 -1
- package/lib/Cli/commands/sync.d.ts +0 -22
- package/lib/Cli/commands/sync.d.ts.map +0 -1
- package/lib/Cli/commands/sync.js +0 -64
- package/lib/Cli/commands/sync.js.map +0 -1
- package/lib/Cli/commands/tail.d.ts +0 -9
- package/lib/Cli/commands/tail.d.ts.map +0 -1
- package/lib/Cli/commands/tail.js +0 -97
- package/lib/Cli/commands/tail.js.map +0 -1
- package/lib/Cli/tui/InkCLI.d.ts +0 -4
- package/lib/Cli/tui/InkCLI.d.ts.map +0 -1
- package/lib/Cli/tui/InkCLI.js +0 -53
- package/lib/Cli/tui/InkCLI.js.map +0 -1
- package/lib/Cli/tui/components/ApprovePlan.d.ts +0 -9
- package/lib/Cli/tui/components/ApprovePlan.d.ts.map +0 -1
- package/lib/Cli/tui/components/ApprovePlan.js +0 -21
- package/lib/Cli/tui/components/ApprovePlan.js.map +0 -1
- package/lib/Cli/tui/components/Nuke.d.ts +0 -36
- package/lib/Cli/tui/components/Nuke.d.ts.map +0 -1
- package/lib/Cli/tui/components/Nuke.js +0 -132
- package/lib/Cli/tui/components/Nuke.js.map +0 -1
- package/lib/Cli/tui/components/Plan.d.ts +0 -8
- package/lib/Cli/tui/components/Plan.d.ts.map +0 -1
- package/lib/Cli/tui/components/Plan.js +0 -87
- package/lib/Cli/tui/components/Plan.js.map +0 -1
- package/lib/Cli/tui/components/PlanProgress.d.ts +0 -55
- package/lib/Cli/tui/components/PlanProgress.d.ts.map +0 -1
- package/lib/Cli/tui/components/PlanProgress.js +0 -292
- package/lib/Cli/tui/components/PlanProgress.js.map +0 -1
- package/lib/Sync.d.ts +0 -109
- package/lib/Sync.d.ts.map +0 -1
- package/lib/Sync.js.map +0 -1
- package/lib/Util/Clank.d.ts +0 -45
- package/lib/Util/Clank.d.ts.map +0 -1
- package/lib/Util/Clank.js +0 -79
- package/lib/Util/Clank.js.map +0 -1
- package/src/Cli/Cli.ts +0 -23
- package/src/Cli/Event.ts +0 -51
- package/src/Cli/commands/_shared.ts +0 -498
- package/src/Cli/commands/login.ts +0 -169
- package/src/Cli/commands/profile.ts +0 -132
- package/src/Cli/commands/sync.ts +0 -123
- package/src/Cli/commands/tail.ts +0 -155
- package/src/Cli/tui/InkCLI.tsx +0 -69
- package/src/Cli/tui/components/ApprovePlan.tsx +0 -44
- package/src/Cli/tui/components/Nuke.tsx +0 -273
- package/src/Cli/tui/components/Plan.tsx +0 -211
- package/src/Cli/tui/components/PlanProgress.tsx +0 -455
- package/src/Util/Clank.ts +0 -103
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
/** @jsxImportSource react */
|
|
2
|
+
import { useMemo, useState, type JSX } from "react";
|
|
3
|
+
import {
|
|
4
|
+
ChoiceGroup,
|
|
5
|
+
Box,
|
|
6
|
+
KeyBar,
|
|
7
|
+
Text,
|
|
8
|
+
useGlyphs,
|
|
9
|
+
useKeyGlyphs,
|
|
10
|
+
useTerminalInput,
|
|
11
|
+
} from "../ui/index.ts";
|
|
12
|
+
import { Screen, theme, type ScreenController } from "../../CliKit/index.ts";
|
|
13
|
+
import type { Plan as AlchemyPlan } from "../../../Plan.ts";
|
|
14
|
+
import { Plan, PlanTree } from "./PlanView.tsx";
|
|
15
|
+
|
|
16
|
+
export interface ApprovePlanProps {
|
|
17
|
+
plan: AlchemyPlan;
|
|
18
|
+
detailed?: boolean;
|
|
19
|
+
controller: ScreenController<boolean>;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Plan approval prompt: the plan tree followed by an operation-specific
|
|
24
|
+
* action and Cancel. Escape cancels; Ctrl+C is handled centrally by the
|
|
25
|
+
* screen runner.
|
|
26
|
+
*/
|
|
27
|
+
export function ApprovePlan(props: ApprovePlanProps): JSX.Element {
|
|
28
|
+
const { plan, detailed = false, controller } = props;
|
|
29
|
+
// Destruction is the risky path: require an explicit move to Destroy before
|
|
30
|
+
// Enter can remove or orphan resources. Deploy approvals remain action-first.
|
|
31
|
+
const [approved, setApproved] = useState(!plan.destroy);
|
|
32
|
+
const action = plan.destroy ? "Destroy" : "Deploy";
|
|
33
|
+
const glyphs = useGlyphs();
|
|
34
|
+
const keys = useKeyGlyphs();
|
|
35
|
+
const tree = useMemo(
|
|
36
|
+
() =>
|
|
37
|
+
new PlanTree(plan, {
|
|
38
|
+
detailed,
|
|
39
|
+
mode: "review",
|
|
40
|
+
label: action,
|
|
41
|
+
}),
|
|
42
|
+
[plan, detailed, action],
|
|
43
|
+
);
|
|
44
|
+
const complete = (answer: boolean) => {
|
|
45
|
+
const verdict = (
|
|
46
|
+
<Text color={answer ? theme.color.success : theme.color.danger}>
|
|
47
|
+
{answer ? glyphs.success : glyphs.error} {answer ? action : "Cancelled"}
|
|
48
|
+
</Text>
|
|
49
|
+
);
|
|
50
|
+
// On approval the plan disappears — the apply progress that follows
|
|
51
|
+
// shows every row again. A declined plan stays on screen (complete,
|
|
52
|
+
// unscrolled) so the user can review what they just turned down.
|
|
53
|
+
if (!answer) tree.setViewport("full");
|
|
54
|
+
const summary = answer ? (
|
|
55
|
+
verdict
|
|
56
|
+
) : (
|
|
57
|
+
<Box flexDirection="column">
|
|
58
|
+
<Plan tree={tree} />
|
|
59
|
+
{verdict}
|
|
60
|
+
</Box>
|
|
61
|
+
);
|
|
62
|
+
controller.submit(answer, summary);
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
useTerminalInput((input, key) => {
|
|
66
|
+
if (key.enter) complete(approved);
|
|
67
|
+
else if (key.escape) controller.cancel();
|
|
68
|
+
else if (key.ctrl || key.meta) return;
|
|
69
|
+
else if (input.toLowerCase() === "y") complete(true);
|
|
70
|
+
else if (input.toLowerCase() === "n") complete(false);
|
|
71
|
+
});
|
|
72
|
+
|
|
73
|
+
const prompt = (
|
|
74
|
+
<Box flexDirection="column">
|
|
75
|
+
<Text bold>{action}?</Text>
|
|
76
|
+
<ChoiceGroup
|
|
77
|
+
value={approved}
|
|
78
|
+
choices={[
|
|
79
|
+
{ value: true, label: action },
|
|
80
|
+
{ value: false, label: "Cancel" },
|
|
81
|
+
]}
|
|
82
|
+
onChange={setApproved}
|
|
83
|
+
/>
|
|
84
|
+
<KeyBar
|
|
85
|
+
keys={[
|
|
86
|
+
[keys.upDown, "scroll plan"],
|
|
87
|
+
[keys.leftRight, "choose"],
|
|
88
|
+
[keys.enter, "confirm"],
|
|
89
|
+
[keys.escape, "cancel"],
|
|
90
|
+
]}
|
|
91
|
+
/>
|
|
92
|
+
</Box>
|
|
93
|
+
);
|
|
94
|
+
|
|
95
|
+
return <Plan tree={tree} footer={prompt} />;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
export const approvePlanScreen = (plan: AlchemyPlan, detailed = false) =>
|
|
99
|
+
Screen.make<boolean>("plan approval", (controller) => (
|
|
100
|
+
<ApprovePlan plan={plan} detailed={detailed} controller={controller} />
|
|
101
|
+
));
|
|
@@ -0,0 +1,381 @@
|
|
|
1
|
+
/** @jsxImportSource react */
|
|
2
|
+
/** Branded help screens + the CliOutput formatter that renders them. */
|
|
3
|
+
import { stripVTControlCharacters } from "node:util";
|
|
4
|
+
import * as Option from "effect/Option";
|
|
5
|
+
import * as CliOutput from "effect/unstable/cli/CliOutput";
|
|
6
|
+
import type { HelpDoc } from "effect/unstable/cli/HelpDoc";
|
|
7
|
+
import { Box, Heading, Text, useGlyphs } from "../ui/index.ts";
|
|
8
|
+
import type { JSX } from "react";
|
|
9
|
+
import packageJson from "../../../../package.json" with { type: "json" };
|
|
10
|
+
import type { CliKit } from "../../CliKit/CliKit.ts";
|
|
11
|
+
import {
|
|
12
|
+
ANSI_BOLD,
|
|
13
|
+
ANSI_DIM,
|
|
14
|
+
ansiFg,
|
|
15
|
+
glyphsFor,
|
|
16
|
+
paint,
|
|
17
|
+
truncate,
|
|
18
|
+
theme,
|
|
19
|
+
} from "../../CliKit/index.ts";
|
|
20
|
+
import { Logo } from "./Logo.tsx";
|
|
21
|
+
|
|
22
|
+
const commandLabel = (command: {
|
|
23
|
+
readonly name: string;
|
|
24
|
+
readonly alias?: string | undefined;
|
|
25
|
+
}) => (command.alias ? `${command.name}, ${command.alias}` : command.name);
|
|
26
|
+
|
|
27
|
+
/** Shell-like highlighting shared by usage lines, examples, and help hints. */
|
|
28
|
+
function CommandText({ command }: { readonly command: string }): JSX.Element {
|
|
29
|
+
const tokens = command.match(
|
|
30
|
+
/\s+|"(?:\\.|[^"])*"|'(?:\\.|[^'])*'|[^\s]+/g,
|
|
31
|
+
) ?? [command];
|
|
32
|
+
let word = 0;
|
|
33
|
+
let valueAfterFlag = false;
|
|
34
|
+
|
|
35
|
+
return (
|
|
36
|
+
<Text>
|
|
37
|
+
{tokens.map((token, index) => {
|
|
38
|
+
if (/^\s+$/.test(token)) return token;
|
|
39
|
+
|
|
40
|
+
const currentWord = word++;
|
|
41
|
+
const isFlag = token.startsWith("-");
|
|
42
|
+
const isPlaceholder =
|
|
43
|
+
(token.startsWith("<") && token.endsWith(">")) ||
|
|
44
|
+
(token.startsWith("[") && token.endsWith("]"));
|
|
45
|
+
const isQuoted =
|
|
46
|
+
(token.startsWith('"') && token.endsWith('"')) ||
|
|
47
|
+
(token.startsWith("'") && token.endsWith("'"));
|
|
48
|
+
const isValue = valueAfterFlag || isQuoted;
|
|
49
|
+
valueAfterFlag = isFlag;
|
|
50
|
+
|
|
51
|
+
return (
|
|
52
|
+
<Text
|
|
53
|
+
key={`${index}:${token}`}
|
|
54
|
+
bold={currentWord <= 1 || isFlag}
|
|
55
|
+
color={
|
|
56
|
+
currentWord === 0
|
|
57
|
+
? theme.color.accent
|
|
58
|
+
: isFlag
|
|
59
|
+
? theme.color.info
|
|
60
|
+
: isPlaceholder
|
|
61
|
+
? theme.color.warning
|
|
62
|
+
: isValue
|
|
63
|
+
? theme.color.success
|
|
64
|
+
: currentWord === 1
|
|
65
|
+
? theme.color.accentBright
|
|
66
|
+
: undefined
|
|
67
|
+
}
|
|
68
|
+
>
|
|
69
|
+
{token}
|
|
70
|
+
</Text>
|
|
71
|
+
);
|
|
72
|
+
})}
|
|
73
|
+
</Text>
|
|
74
|
+
);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/** One aligned help row: fixed-width bold label cell + description. */
|
|
78
|
+
type RowProps = {
|
|
79
|
+
label: JSX.Element | string;
|
|
80
|
+
description: string;
|
|
81
|
+
width: number;
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
function Row({ label, description, width }: RowProps) {
|
|
85
|
+
return (
|
|
86
|
+
<Box paddingLeft={2}>
|
|
87
|
+
<Box width={width} flexShrink={0}>
|
|
88
|
+
{typeof label === "string" ? (
|
|
89
|
+
<Text bold tone="emphasis">
|
|
90
|
+
{label}
|
|
91
|
+
</Text>
|
|
92
|
+
) : (
|
|
93
|
+
label
|
|
94
|
+
)}
|
|
95
|
+
</Box>
|
|
96
|
+
<Text>{description}</Text>
|
|
97
|
+
</Box>
|
|
98
|
+
);
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
function BrandLine(): JSX.Element {
|
|
102
|
+
const glyphs = useGlyphs();
|
|
103
|
+
return (
|
|
104
|
+
<Text>
|
|
105
|
+
<Text tone="brand">{glyphs.selected}</Text>{" "}
|
|
106
|
+
<Text bold tone="emphasis">
|
|
107
|
+
alchemy
|
|
108
|
+
</Text>{" "}
|
|
109
|
+
<Text tone="muted">— Infrastructure as Effects</Text>
|
|
110
|
+
</Text>
|
|
111
|
+
);
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
/**
|
|
115
|
+
* Branded help for every command. The root gets a brand header and shows
|
|
116
|
+
* only `--help`/`--version` (as OPTIONS); subcommands list all global flags.
|
|
117
|
+
*/
|
|
118
|
+
type SubHelpProps = {
|
|
119
|
+
doc: HelpDoc;
|
|
120
|
+
root?: boolean;
|
|
121
|
+
};
|
|
122
|
+
|
|
123
|
+
function SubHelp({ doc, root = false }: SubHelpProps): JSX.Element {
|
|
124
|
+
const commands = doc.subcommands?.flatMap((group) => group.commands) ?? [];
|
|
125
|
+
const flags = doc.flags ?? [];
|
|
126
|
+
const globalFlags = root
|
|
127
|
+
? (doc.globalFlags ?? []).filter(
|
|
128
|
+
(flag) => flag.name === "help" || flag.name === "version",
|
|
129
|
+
)
|
|
130
|
+
: (doc.globalFlags ?? []);
|
|
131
|
+
const args = doc.args ?? [];
|
|
132
|
+
|
|
133
|
+
const flagLabel = (flag: (typeof flags)[number]) => {
|
|
134
|
+
const aliases =
|
|
135
|
+
flag.aliases.length > 0 ? `, ${flag.aliases.join(", ")}` : "";
|
|
136
|
+
return `--${flag.name}${aliases}`;
|
|
137
|
+
};
|
|
138
|
+
const argLabel = (arg: (typeof args)[number]) =>
|
|
139
|
+
arg.required ? `<${arg.name}>` : `[${arg.name}]`;
|
|
140
|
+
// width from labels only — enum types (--log-level's choice list) would
|
|
141
|
+
// otherwise blow the column out; long types truncate inside the cell
|
|
142
|
+
const nameWidth =
|
|
143
|
+
Math.min(
|
|
144
|
+
30,
|
|
145
|
+
Math.max(
|
|
146
|
+
12,
|
|
147
|
+
...commands.map((c) => commandLabel(c).length),
|
|
148
|
+
...[...flags, ...globalFlags].map((f) => flagLabel(f).length),
|
|
149
|
+
...args.map((a) => argLabel(a).length),
|
|
150
|
+
),
|
|
151
|
+
) + 4;
|
|
152
|
+
|
|
153
|
+
type FlagRowProps = { readonly flag: (typeof flags)[number] };
|
|
154
|
+
|
|
155
|
+
function FlagRow({ flag }: FlagRowProps) {
|
|
156
|
+
const label = flagLabel(flag);
|
|
157
|
+
const typeRoom = nameWidth - label.length - 2;
|
|
158
|
+
return (
|
|
159
|
+
<Row
|
|
160
|
+
width={nameWidth}
|
|
161
|
+
description={Option.getOrElse(flag.description, () => "")}
|
|
162
|
+
label={
|
|
163
|
+
<Text>
|
|
164
|
+
<Text bold color={theme.color.info}>
|
|
165
|
+
--{flag.name}
|
|
166
|
+
</Text>
|
|
167
|
+
{flag.aliases.map((alias) => (
|
|
168
|
+
<Text key={alias} color={theme.color.info}>
|
|
169
|
+
, {alias}
|
|
170
|
+
</Text>
|
|
171
|
+
))}
|
|
172
|
+
{flag.type === "boolean" || typeRoom < 8 ? null : (
|
|
173
|
+
<Text color={theme.color.warning}>
|
|
174
|
+
{" "}
|
|
175
|
+
{truncate(flag.type, typeRoom)}
|
|
176
|
+
</Text>
|
|
177
|
+
)}
|
|
178
|
+
</Text>
|
|
179
|
+
}
|
|
180
|
+
/>
|
|
181
|
+
);
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
return (
|
|
185
|
+
<Box flexDirection="column" flexShrink={root ? 0 : 1}>
|
|
186
|
+
{root ? <BrandLine /> : null}
|
|
187
|
+
{doc.description === "" ? null : (
|
|
188
|
+
<Box marginTop={root ? 1 : 0}>
|
|
189
|
+
<Text>{doc.description}</Text>
|
|
190
|
+
</Box>
|
|
191
|
+
)}
|
|
192
|
+
<Box marginTop={doc.description === "" && !root ? 0 : 1}>
|
|
193
|
+
<Heading glyph={false}>USAGE</Heading>
|
|
194
|
+
</Box>
|
|
195
|
+
<Text>
|
|
196
|
+
{" "}
|
|
197
|
+
<Text tone="brand">$</Text> <CommandText command={doc.usage} />
|
|
198
|
+
</Text>
|
|
199
|
+
{args.length === 0 ? null : (
|
|
200
|
+
<>
|
|
201
|
+
<Box marginTop={1}>
|
|
202
|
+
<Heading glyph={false}>ARGUMENTS</Heading>
|
|
203
|
+
</Box>
|
|
204
|
+
{args.map((arg) => (
|
|
205
|
+
<Row
|
|
206
|
+
key={arg.name}
|
|
207
|
+
width={nameWidth}
|
|
208
|
+
label={
|
|
209
|
+
<Text bold color={theme.color.warning}>
|
|
210
|
+
{argLabel(arg)}
|
|
211
|
+
</Text>
|
|
212
|
+
}
|
|
213
|
+
description={Option.getOrElse(arg.description, () => "")}
|
|
214
|
+
/>
|
|
215
|
+
))}
|
|
216
|
+
</>
|
|
217
|
+
)}
|
|
218
|
+
{commands.length === 0 ? null : (
|
|
219
|
+
<>
|
|
220
|
+
<Box marginTop={1}>
|
|
221
|
+
<Heading glyph={false}>COMMANDS</Heading>
|
|
222
|
+
</Box>
|
|
223
|
+
{commands.map((command) => (
|
|
224
|
+
<Row
|
|
225
|
+
key={command.name}
|
|
226
|
+
width={nameWidth}
|
|
227
|
+
label={
|
|
228
|
+
<Text>
|
|
229
|
+
<Text bold color={theme.color.accentBright}>
|
|
230
|
+
{command.name}
|
|
231
|
+
</Text>
|
|
232
|
+
{command.alias === undefined ? null : (
|
|
233
|
+
<Text color={theme.color.info}>, {command.alias}</Text>
|
|
234
|
+
)}
|
|
235
|
+
</Text>
|
|
236
|
+
}
|
|
237
|
+
description={command.description || ""}
|
|
238
|
+
/>
|
|
239
|
+
))}
|
|
240
|
+
</>
|
|
241
|
+
)}
|
|
242
|
+
{flags.length === 0 ? null : (
|
|
243
|
+
<>
|
|
244
|
+
<Box marginTop={1}>
|
|
245
|
+
<Heading glyph={false}>FLAGS</Heading>
|
|
246
|
+
</Box>
|
|
247
|
+
{flags.map((flag) => (
|
|
248
|
+
<FlagRow key={flag.name} flag={flag} />
|
|
249
|
+
))}
|
|
250
|
+
</>
|
|
251
|
+
)}
|
|
252
|
+
{globalFlags.length === 0 ? null : (
|
|
253
|
+
<>
|
|
254
|
+
<Box marginTop={1}>
|
|
255
|
+
<Heading glyph={false}>{root ? "OPTIONS" : "GLOBAL FLAGS"}</Heading>
|
|
256
|
+
</Box>
|
|
257
|
+
{globalFlags.map((flag) => (
|
|
258
|
+
<FlagRow key={flag.name} flag={flag} />
|
|
259
|
+
))}
|
|
260
|
+
</>
|
|
261
|
+
)}
|
|
262
|
+
{doc.examples === undefined || doc.examples.length === 0 ? null : (
|
|
263
|
+
<>
|
|
264
|
+
<Box marginTop={1}>
|
|
265
|
+
<Heading glyph={false}>EXAMPLES</Heading>
|
|
266
|
+
</Box>
|
|
267
|
+
{doc.examples.map((example) => (
|
|
268
|
+
<Text key={example.command}>
|
|
269
|
+
{" "}
|
|
270
|
+
<Text tone="brand">$</Text>{" "}
|
|
271
|
+
<CommandText command={example.command} />
|
|
272
|
+
</Text>
|
|
273
|
+
))}
|
|
274
|
+
</>
|
|
275
|
+
)}
|
|
276
|
+
{commands.length === 0 ? null : (
|
|
277
|
+
<Box marginTop={1}>
|
|
278
|
+
<Text>
|
|
279
|
+
<Text color={theme.color.muted}>Run '</Text>
|
|
280
|
+
<CommandText
|
|
281
|
+
command={`${doc.usage.replace(/\s*<subcommand>.*$/, "")} <command> --help`}
|
|
282
|
+
/>
|
|
283
|
+
<Text color={theme.color.muted}>
|
|
284
|
+
' for more information on a command.
|
|
285
|
+
</Text>
|
|
286
|
+
</Text>
|
|
287
|
+
</Box>
|
|
288
|
+
)}
|
|
289
|
+
</Box>
|
|
290
|
+
);
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
const formatSubHelp = (cli: CliKit["Service"], doc: HelpDoc) => {
|
|
294
|
+
const termCols = cli.terminal.columns;
|
|
295
|
+
return cli.output.format(
|
|
296
|
+
<Box width={termCols}>
|
|
297
|
+
<SubHelp doc={doc} />
|
|
298
|
+
</Box>,
|
|
299
|
+
{ columns: termCols },
|
|
300
|
+
);
|
|
301
|
+
};
|
|
302
|
+
|
|
303
|
+
/** Hide the logo entirely when it can't be at least this many columns wide. */
|
|
304
|
+
const MIN_LOGO_COLS = 20;
|
|
305
|
+
|
|
306
|
+
const formatRootHelp = (cli: CliKit["Service"], doc: HelpDoc) => {
|
|
307
|
+
const termCols = cli.terminal.columns;
|
|
308
|
+
|
|
309
|
+
// First pass: render the text alone to measure its exact footprint (post
|
|
310
|
+
// ANSI codes and wrapping), then size the logo into the leftover space.
|
|
311
|
+
const text = cli.output.format(
|
|
312
|
+
<Box width={termCols}>
|
|
313
|
+
<SubHelp doc={doc} root />
|
|
314
|
+
</Box>,
|
|
315
|
+
{ columns: termCols },
|
|
316
|
+
);
|
|
317
|
+
|
|
318
|
+
// The braille logo is mojibake without Unicode support.
|
|
319
|
+
if (!cli.terminal.unicode) return text;
|
|
320
|
+
|
|
321
|
+
const lines = text.split("\n");
|
|
322
|
+
const textWidth = Math.max(
|
|
323
|
+
...lines.map((line) => stripVTControlCharacters(line).trimEnd().length),
|
|
324
|
+
);
|
|
325
|
+
const textHeight = lines.length;
|
|
326
|
+
|
|
327
|
+
// Fill the free space beside the text: a logo of C columns is C/2 rows
|
|
328
|
+
// tall (braille cell is 1:2). Reserve two rows for the wordmark caption.
|
|
329
|
+
const logoCols = Math.min(termCols - textWidth - 2, (textHeight - 2) * 2);
|
|
330
|
+
|
|
331
|
+
if (logoCols < MIN_LOGO_COLS) return text;
|
|
332
|
+
|
|
333
|
+
return cli.output.format(
|
|
334
|
+
<Box flexDirection="row" width={termCols}>
|
|
335
|
+
<SubHelp doc={doc} root />
|
|
336
|
+
<Box
|
|
337
|
+
flexGrow={1}
|
|
338
|
+
flexDirection="column"
|
|
339
|
+
justifyContent="center"
|
|
340
|
+
alignItems="center"
|
|
341
|
+
>
|
|
342
|
+
<Logo cols={logoCols} />
|
|
343
|
+
<Box marginTop={1}>
|
|
344
|
+
<Text>
|
|
345
|
+
<Text bold color={theme.color.accent}>
|
|
346
|
+
ALCHEMY
|
|
347
|
+
</Text>{" "}
|
|
348
|
+
<Text tone="muted">v{packageJson.version}</Text>
|
|
349
|
+
</Text>
|
|
350
|
+
</Box>
|
|
351
|
+
</Box>
|
|
352
|
+
</Box>,
|
|
353
|
+
{ columns: termCols },
|
|
354
|
+
);
|
|
355
|
+
};
|
|
356
|
+
|
|
357
|
+
export const brandedCliFormatter = (
|
|
358
|
+
cli: CliKit["Service"],
|
|
359
|
+
): CliOutput.Formatter => {
|
|
360
|
+
const fallback = CliOutput.defaultFormatter();
|
|
361
|
+
const glyphs = glyphsFor(cli.terminal.unicode);
|
|
362
|
+
const formatErrorLine = (message: string) =>
|
|
363
|
+
`${paint(ansiFg(theme.color.danger), `${glyphs.error} error:`)} ${message}`;
|
|
364
|
+
return {
|
|
365
|
+
...fallback,
|
|
366
|
+
formatHelpDoc: (doc) =>
|
|
367
|
+
doc.usage.startsWith("alchemy <subcommand>")
|
|
368
|
+
? formatRootHelp(cli, doc)
|
|
369
|
+
: formatSubHelp(cli, doc),
|
|
370
|
+
formatVersion: (name, version) =>
|
|
371
|
+
`${paint(ansiFg(theme.color.brand), glyphs.selected)} ${paint(ANSI_BOLD, name)} ${paint(ANSI_DIM, `v${version}`)}`,
|
|
372
|
+
formatError: (error) => `\n${formatErrorLine(error.message)}`,
|
|
373
|
+
formatErrors: (errors) => {
|
|
374
|
+
if (errors.length === 0) return "";
|
|
375
|
+
if (errors.length === 1) return `\n${formatErrorLine(errors[0].message)}`;
|
|
376
|
+
return `\n${formatErrorLine(`${errors.length} problems`)}\n${errors
|
|
377
|
+
.map((error) => ` ${paint(ANSI_DIM, glyphs.bullet)} ${error.message}`)
|
|
378
|
+
.join("\n")}`;
|
|
379
|
+
},
|
|
380
|
+
};
|
|
381
|
+
};
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
/** @jsxImportSource react */
|
|
2
|
+
/**
|
|
3
|
+
* The yantra logo, rasterized at runtime. Geometry mirrors
|
|
4
|
+
* website/src/brand/yantra.ts (the brand's source of truth): a downward
|
|
5
|
+
* equilateral triangle inscribed in a circle, bindu at the center. Rendered
|
|
6
|
+
* as braille dots (2x4 subpixels per cell) via signed distance functions, so
|
|
7
|
+
* it scales to any column width.
|
|
8
|
+
*/
|
|
9
|
+
import { Box, Text } from "../ui/index.ts";
|
|
10
|
+
import { useMemo, type JSX } from "react";
|
|
11
|
+
import { theme } from "../../CliKit/index.ts";
|
|
12
|
+
|
|
13
|
+
const CENTER = 12;
|
|
14
|
+
const CIRCLE_R = 9.5;
|
|
15
|
+
const BINDU_R = 1.1;
|
|
16
|
+
const DOT_THRESHOLD = 0.35;
|
|
17
|
+
// stroke thickness in braille subpixels, independent of logo size — keeps the
|
|
18
|
+
// outline delicate instead of thickening into solid slabs as the logo grows
|
|
19
|
+
const STROKE_SUBPIXELS = 2.5;
|
|
20
|
+
|
|
21
|
+
const trianglePoints = (
|
|
22
|
+
strokeW: number,
|
|
23
|
+
): ReadonlyArray<readonly [number, number]> => {
|
|
24
|
+
const triR = CIRCLE_R - strokeW / 4;
|
|
25
|
+
const triDx = triR * Math.cos(Math.PI / 6);
|
|
26
|
+
const triTopY = CENTER - triR * Math.sin(Math.PI / 6);
|
|
27
|
+
const triApexY = CENTER + triR;
|
|
28
|
+
return [
|
|
29
|
+
[CENTER, triApexY],
|
|
30
|
+
[CENTER - triDx, triTopY],
|
|
31
|
+
[CENTER + triDx, triTopY],
|
|
32
|
+
];
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
const sdCircleRing = (x: number, y: number, strokeW: number) =>
|
|
36
|
+
Math.abs(Math.hypot(x - CENTER, y - CENTER) - CIRCLE_R) - strokeW / 2;
|
|
37
|
+
|
|
38
|
+
const sdSegment = (
|
|
39
|
+
px: number,
|
|
40
|
+
py: number,
|
|
41
|
+
ax: number,
|
|
42
|
+
ay: number,
|
|
43
|
+
bx: number,
|
|
44
|
+
by: number,
|
|
45
|
+
) => {
|
|
46
|
+
const abx = bx - ax;
|
|
47
|
+
const aby = by - ay;
|
|
48
|
+
const apx = px - ax;
|
|
49
|
+
const apy = py - ay;
|
|
50
|
+
const t = Math.max(
|
|
51
|
+
0,
|
|
52
|
+
Math.min(1, (apx * abx + apy * aby) / (abx * abx + aby * aby)),
|
|
53
|
+
);
|
|
54
|
+
return Math.hypot(apx - t * abx, apy - t * aby);
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
const sdTriangle = (
|
|
58
|
+
x: number,
|
|
59
|
+
y: number,
|
|
60
|
+
pts: ReadonlyArray<readonly [number, number]>,
|
|
61
|
+
strokeW: number,
|
|
62
|
+
) => {
|
|
63
|
+
let d = Infinity;
|
|
64
|
+
for (let i = 0; i < 3; i++) {
|
|
65
|
+
const [ax, ay] = pts[i];
|
|
66
|
+
const [bx, by] = pts[(i + 1) % 3];
|
|
67
|
+
d = Math.min(d, sdSegment(x, y, ax, ay, bx, by));
|
|
68
|
+
}
|
|
69
|
+
return d - strokeW / 2;
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
const sdBindu = (x: number, y: number) =>
|
|
73
|
+
Math.hypot(x - CENTER, y - CENTER) - BINDU_R;
|
|
74
|
+
|
|
75
|
+
// braille dot bit per (row 0-3, column 0-1) subpixel
|
|
76
|
+
const BRAILLE_BITS = [
|
|
77
|
+
[0x01, 0x08],
|
|
78
|
+
[0x02, 0x10],
|
|
79
|
+
[0x04, 0x20],
|
|
80
|
+
[0x40, 0x80],
|
|
81
|
+
] as const;
|
|
82
|
+
|
|
83
|
+
interface LogoRun {
|
|
84
|
+
text: string;
|
|
85
|
+
color?: string;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
const rasterizeLogo = (cols: number): LogoRun[][] => {
|
|
89
|
+
const width = cols * 2; // subpixel grid, square (2 wide x 4 tall per cell)
|
|
90
|
+
const rows = Math.ceil(width / 4);
|
|
91
|
+
const scale = 24 / width;
|
|
92
|
+
const strokeW = STROKE_SUBPIXELS * scale;
|
|
93
|
+
const triPts = trianglePoints(strokeW);
|
|
94
|
+
const lines: LogoRun[][] = [];
|
|
95
|
+
for (let r = 0; r < rows; r++) {
|
|
96
|
+
const runs: LogoRun[] = [];
|
|
97
|
+
const push = (text: string, color?: string) => {
|
|
98
|
+
const last = runs[runs.length - 1];
|
|
99
|
+
if (last && last.color === color) last.text += text;
|
|
100
|
+
else runs.push({ text, color });
|
|
101
|
+
};
|
|
102
|
+
for (let c = 0; c < cols; c++) {
|
|
103
|
+
let bits = 0;
|
|
104
|
+
let strokeSum = 0;
|
|
105
|
+
let binduSum = 0;
|
|
106
|
+
for (let sy = 0; sy < 4; sy++) {
|
|
107
|
+
for (let sx = 0; sx < 2; sx++) {
|
|
108
|
+
const x = (c * 2 + sx + 0.5) * scale;
|
|
109
|
+
const y = (r * 4 + sy + 0.5) * scale;
|
|
110
|
+
const dStroke = Math.min(
|
|
111
|
+
sdCircleRing(x, y, strokeW),
|
|
112
|
+
sdTriangle(x, y, triPts, strokeW),
|
|
113
|
+
);
|
|
114
|
+
const strokeCov = Math.min(1, Math.max(0, 0.5 - dStroke / scale));
|
|
115
|
+
const binduCov = Math.min(
|
|
116
|
+
1,
|
|
117
|
+
Math.max(0, 0.5 - sdBindu(x, y) / scale),
|
|
118
|
+
);
|
|
119
|
+
if (Math.max(strokeCov, binduCov) > DOT_THRESHOLD) {
|
|
120
|
+
bits |= BRAILLE_BITS[sy][sx];
|
|
121
|
+
strokeSum += strokeCov;
|
|
122
|
+
binduSum += binduCov;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
if (bits === 0) push(" ");
|
|
127
|
+
else {
|
|
128
|
+
push(
|
|
129
|
+
String.fromCharCode(0x2800 + bits),
|
|
130
|
+
binduSum > strokeSum ? theme.color.brand : theme.color.accent,
|
|
131
|
+
);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
// drop trailing whitespace runs
|
|
135
|
+
while (runs.length > 0) {
|
|
136
|
+
const last = runs[runs.length - 1];
|
|
137
|
+
if (last.color !== undefined || last.text.trim() !== "") break;
|
|
138
|
+
runs.pop();
|
|
139
|
+
}
|
|
140
|
+
lines.push(runs);
|
|
141
|
+
}
|
|
142
|
+
while (lines.length > 0 && lines[0].length === 0) lines.shift();
|
|
143
|
+
while (lines.length > 0 && lines[lines.length - 1].length === 0) lines.pop();
|
|
144
|
+
return lines;
|
|
145
|
+
};
|
|
146
|
+
|
|
147
|
+
// Braille rasterization is mojibake on non-Unicode terminals — the help
|
|
148
|
+
// formatter skips mounting the logo entirely when Unicode is unavailable.
|
|
149
|
+
type LogoProps = { cols: number };
|
|
150
|
+
|
|
151
|
+
export function Logo({ cols }: LogoProps): JSX.Element | null {
|
|
152
|
+
const lines = useMemo(() => rasterizeLogo(cols), [cols]);
|
|
153
|
+
return (
|
|
154
|
+
<Box flexDirection="column" flexShrink={0}>
|
|
155
|
+
{lines.map((runs, i) => (
|
|
156
|
+
<Text key={i}>
|
|
157
|
+
{runs.length === 0
|
|
158
|
+
? " "
|
|
159
|
+
: runs.map((run, j) => (
|
|
160
|
+
<Text key={j} color={run.color}>
|
|
161
|
+
{run.text}
|
|
162
|
+
</Text>
|
|
163
|
+
))}
|
|
164
|
+
</Text>
|
|
165
|
+
))}
|
|
166
|
+
</Box>
|
|
167
|
+
);
|
|
168
|
+
}
|