alchemy 0.45.6 → 0.46.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/README.md +2 -2
- package/bin/alchemy.mjs +19285 -15137
- package/bin/alchemy.ts +14 -56
- package/bin/commands/create.ts +307 -137
- package/bin/commands/deploy.ts +23 -0
- package/bin/commands/destroy.ts +19 -0
- package/bin/commands/dev.ts +21 -0
- package/bin/commands/login.ts +66 -0
- package/bin/commands/run.ts +29 -0
- package/bin/services/dependencies.ts +0 -5
- package/bin/services/execute-alchemy.ts +160 -0
- package/bin/services/git.ts +27 -0
- package/bin/services/github-workflow.ts +229 -0
- package/bin/services/package-manager.ts +51 -68
- package/bin/services/template-manager.ts +10 -21
- package/bin/trpc.ts +3 -0
- package/bin/types.ts +4 -2
- package/lib/apply.d.ts +2 -0
- package/lib/apply.d.ts.map +1 -1
- package/lib/apply.js +26 -8
- package/lib/apply.js.map +1 -1
- package/lib/build-date.d.ts +1 -1
- package/lib/build-date.js +1 -1
- package/lib/cloudflare/ai.d.ts +8 -4
- package/lib/cloudflare/ai.d.ts.map +1 -1
- package/lib/cloudflare/ai.js +6 -8
- package/lib/cloudflare/ai.js.map +1 -1
- package/lib/cloudflare/analytics-engine.d.ts +11 -7
- package/lib/cloudflare/analytics-engine.d.ts.map +1 -1
- package/lib/cloudflare/analytics-engine.js +11 -9
- package/lib/cloudflare/analytics-engine.js.map +1 -1
- package/lib/cloudflare/{types.d.ts → api-response.d.ts} +6 -1
- package/lib/cloudflare/api-response.d.ts.map +1 -0
- package/lib/cloudflare/api-response.js +38 -0
- package/lib/cloudflare/api-response.js.map +1 -0
- package/lib/cloudflare/auth-wrangler.d.ts +25 -0
- package/lib/cloudflare/auth-wrangler.d.ts.map +1 -0
- package/lib/cloudflare/auth-wrangler.js +224 -0
- package/lib/cloudflare/auth-wrangler.js.map +1 -0
- package/lib/cloudflare/auth.d.ts.map +1 -1
- package/lib/cloudflare/auth.js +7 -116
- package/lib/cloudflare/auth.js.map +1 -1
- package/lib/cloudflare/browser-rendering.d.ts +12 -3
- package/lib/cloudflare/browser-rendering.d.ts.map +1 -1
- package/lib/cloudflare/browser-rendering.js +12 -2
- package/lib/cloudflare/browser-rendering.js.map +1 -1
- package/lib/cloudflare/bundle/fs.d.ts.map +1 -1
- package/lib/cloudflare/bundle/fs.js +3 -0
- package/lib/cloudflare/bundle/fs.js.map +1 -1
- package/lib/cloudflare/bundle/internal-worker-bundle.d.ts +6 -0
- package/lib/cloudflare/bundle/internal-worker-bundle.d.ts.map +1 -0
- package/lib/cloudflare/bundle/internal-worker-bundle.js +14 -0
- package/lib/cloudflare/bundle/internal-worker-bundle.js.map +1 -0
- package/lib/cloudflare/compatibility-presets.d.ts +22 -0
- package/lib/cloudflare/compatibility-presets.d.ts.map +1 -0
- package/lib/cloudflare/compatibility-presets.js +27 -0
- package/lib/cloudflare/compatibility-presets.js.map +1 -0
- package/lib/cloudflare/container.d.ts +5 -1
- package/lib/cloudflare/container.d.ts.map +1 -1
- package/lib/cloudflare/container.js +42 -2
- package/lib/cloudflare/container.js.map +1 -1
- package/lib/cloudflare/dispatch-namespace.d.ts +5 -0
- package/lib/cloudflare/dispatch-namespace.d.ts.map +1 -1
- package/lib/cloudflare/dispatch-namespace.js +8 -0
- package/lib/cloudflare/dispatch-namespace.js.map +1 -1
- package/lib/cloudflare/durable-object-namespace.d.ts +23 -15
- package/lib/cloudflare/durable-object-namespace.d.ts.map +1 -1
- package/lib/cloudflare/durable-object-namespace.js +22 -21
- package/lib/cloudflare/durable-object-namespace.js.map +1 -1
- package/lib/cloudflare/hyperdrive.d.ts +19 -5
- package/lib/cloudflare/hyperdrive.d.ts.map +1 -1
- package/lib/cloudflare/hyperdrive.js +14 -0
- package/lib/cloudflare/hyperdrive.js.map +1 -1
- package/lib/cloudflare/images.d.ts +27 -17
- package/lib/cloudflare/images.d.ts.map +1 -1
- package/lib/cloudflare/images.js +13 -8
- package/lib/cloudflare/images.js.map +1 -1
- package/lib/cloudflare/index.d.ts +1 -3
- package/lib/cloudflare/index.d.ts.map +1 -1
- package/lib/cloudflare/index.js +1 -3
- package/lib/cloudflare/index.js.map +1 -1
- package/lib/cloudflare/miniflare/miniflare.d.ts +3 -3
- package/lib/cloudflare/miniflare/miniflare.d.ts.map +1 -1
- package/lib/cloudflare/miniflare/miniflare.js +7 -7
- package/lib/cloudflare/miniflare/miniflare.js.map +1 -1
- package/lib/cloudflare/miniflare/{mixed-mode.d.ts → remote-binding-proxy.d.ts} +5 -5
- package/lib/cloudflare/miniflare/remote-binding-proxy.d.ts.map +1 -0
- package/lib/cloudflare/miniflare/{mixed-mode.js → remote-binding-proxy.js} +16 -52
- package/lib/cloudflare/miniflare/remote-binding-proxy.js.map +1 -0
- package/lib/cloudflare/state.d.ts +26 -0
- package/lib/cloudflare/state.d.ts.map +1 -0
- package/lib/cloudflare/state.js +14 -0
- package/lib/cloudflare/state.js.map +1 -0
- package/lib/cloudflare/user.d.ts +2 -2
- package/lib/cloudflare/user.d.ts.map +1 -1
- package/lib/cloudflare/user.js +7 -21
- package/lib/cloudflare/user.js.map +1 -1
- package/lib/cloudflare/vectorize-index.d.ts.map +1 -1
- package/lib/cloudflare/vectorize-index.js +5 -2
- package/lib/cloudflare/vectorize-index.js.map +1 -1
- package/lib/cloudflare/version-metadata.d.ts +15 -3
- package/lib/cloudflare/version-metadata.d.ts.map +1 -1
- package/lib/cloudflare/version-metadata.js +11 -2
- package/lib/cloudflare/version-metadata.js.map +1 -1
- package/lib/cloudflare/vite.d.ts.map +1 -1
- package/lib/cloudflare/vite.js +2 -1
- package/lib/cloudflare/vite.js.map +1 -1
- package/lib/cloudflare/worker-metadata.d.ts +13 -2
- package/lib/cloudflare/worker-metadata.d.ts.map +1 -1
- package/lib/cloudflare/worker-metadata.js +10 -15
- package/lib/cloudflare/worker-metadata.js.map +1 -1
- package/lib/cloudflare/worker-subdomain.d.ts +7 -0
- package/lib/cloudflare/worker-subdomain.d.ts.map +1 -1
- package/lib/cloudflare/worker-subdomain.js +17 -22
- package/lib/cloudflare/worker-subdomain.js.map +1 -1
- package/lib/cloudflare/{worker/tail.d.ts → worker-tail.d.ts} +2 -2
- package/lib/cloudflare/worker-tail.d.ts.map +1 -0
- package/lib/cloudflare/{worker/tail.js → worker-tail.js} +11 -9
- package/lib/cloudflare/worker-tail.js.map +1 -0
- package/lib/cloudflare/worker.d.ts +18 -8
- package/lib/cloudflare/worker.d.ts.map +1 -1
- package/lib/cloudflare/worker.js +31 -7
- package/lib/cloudflare/worker.js.map +1 -1
- package/lib/cloudflare/workflow.d.ts +22 -11
- package/lib/cloudflare/workflow.d.ts.map +1 -1
- package/lib/cloudflare/workflow.js +23 -18
- package/lib/cloudflare/workflow.js.map +1 -1
- package/lib/context.d.ts +2 -2
- package/lib/context.d.ts.map +1 -1
- package/lib/docker/api.d.ts.map +1 -1
- package/lib/docker/api.js +30 -8
- package/lib/docker/api.js.map +1 -1
- package/lib/fs/file-system-state-store.d.ts +5 -20
- package/lib/fs/file-system-state-store.d.ts.map +1 -1
- package/lib/fs/file-system-state-store.js +5 -121
- package/lib/fs/file-system-state-store.js.map +1 -1
- package/lib/fs/index.d.ts +0 -1
- package/lib/fs/index.d.ts.map +1 -1
- package/lib/fs/index.js +0 -1
- package/lib/fs/index.js.map +1 -1
- package/lib/llms.cloudflare.txt +6 -5
- package/lib/planetscale/password.js +1 -1
- package/lib/planetscale/password.js.map +1 -1
- package/lib/scope.d.ts.map +1 -1
- package/lib/scope.js +3 -6
- package/lib/scope.js.map +1 -1
- package/lib/state/cloudflare-state-store.d.ts +34 -0
- package/lib/state/cloudflare-state-store.d.ts.map +1 -0
- package/lib/state/cloudflare-state-store.js +116 -0
- package/lib/state/cloudflare-state-store.js.map +1 -0
- package/lib/state/d1-state-store.d.ts +15 -0
- package/lib/state/d1-state-store.d.ts.map +1 -0
- package/lib/{cloudflare → state}/d1-state-store.js +31 -27
- package/lib/state/d1-state-store.js.map +1 -0
- package/lib/{cloudflare/do-state-store/types.d.ts → state/dofs-state-store/api.d.ts} +1 -1
- package/lib/state/dofs-state-store/api.d.ts.map +1 -0
- package/lib/state/dofs-state-store/api.js +1 -0
- package/lib/state/dofs-state-store/api.js.map +1 -0
- package/lib/{cloudflare/do-state-store/store.d.ts → state/dofs-state-store/index.d.ts} +10 -5
- package/lib/state/dofs-state-store/index.d.ts.map +1 -0
- package/lib/{cloudflare/do-state-store/store.js → state/dofs-state-store/index.js} +15 -11
- package/lib/state/dofs-state-store/index.js.map +1 -0
- package/lib/{cloudflare/do-state-store/internal.d.ts → state/dofs-state-store/store.d.ts} +4 -5
- package/lib/state/dofs-state-store/store.d.ts.map +1 -0
- package/lib/{cloudflare/do-state-store/internal.js → state/dofs-state-store/store.js} +7 -22
- package/lib/state/dofs-state-store/store.js.map +1 -0
- package/lib/state/file-system-state-store.d.ts +21 -0
- package/lib/state/file-system-state-store.d.ts.map +1 -0
- package/lib/state/file-system-state-store.js +122 -0
- package/lib/state/file-system-state-store.js.map +1 -0
- package/lib/state/index.d.ts +7 -0
- package/lib/state/index.d.ts.map +1 -0
- package/lib/state/index.js +7 -0
- package/lib/state/index.js.map +1 -0
- package/lib/state/migrations.d.ts +2 -0
- package/lib/state/migrations.d.ts.map +1 -0
- package/lib/state/migrations.js +3 -0
- package/lib/state/migrations.js.map +1 -0
- package/lib/state/operations.d.ts +36 -0
- package/lib/state/operations.d.ts.map +1 -0
- package/lib/state/operations.js +126 -0
- package/lib/state/operations.js.map +1 -0
- package/lib/state/proxy.d.ts +53 -0
- package/lib/state/proxy.d.ts.map +1 -0
- package/lib/state/proxy.js +65 -0
- package/lib/state/proxy.js.map +1 -0
- package/lib/{cloudflare → state}/r2-rest-state-store.d.ts +3 -1
- package/lib/state/r2-rest-state-store.d.ts.map +1 -0
- package/lib/{cloudflare → state}/r2-rest-state-store.js +6 -4
- package/lib/state/r2-rest-state-store.js.map +1 -0
- package/lib/state/schema.d.ts.map +1 -0
- package/lib/state/schema.js.map +1 -0
- package/lib/{sqlite → state}/sqlite-state-store.d.ts +5 -3
- package/lib/state/sqlite-state-store.d.ts.map +1 -0
- package/lib/{sqlite → state}/sqlite-state-store.js +15 -6
- package/lib/state/sqlite-state-store.js.map +1 -0
- package/lib/test/vitest.d.ts.map +1 -1
- package/lib/test/vitest.js +3 -6
- package/lib/test/vitest.js.map +1 -1
- package/lib/util/detect-node-runtime.d.ts +3 -0
- package/lib/util/detect-node-runtime.d.ts.map +1 -0
- package/lib/util/detect-node-runtime.js +10 -0
- package/lib/util/detect-node-runtime.js.map +1 -0
- package/lib/util/detect-package-manager.d.ts +2 -2
- package/lib/util/detect-package-manager.d.ts.map +1 -1
- package/lib/util/detect-package-manager.js +15 -5
- package/lib/util/detect-package-manager.js.map +1 -1
- package/lib/util/http-server.d.ts.map +1 -0
- package/lib/{cloudflare/miniflare → util}/http-server.js +1 -1
- package/lib/util/http-server.js.map +1 -0
- package/lib/util/memoize.d.ts +2 -0
- package/lib/util/memoize.d.ts.map +1 -1
- package/lib/util/memoize.js +14 -7
- package/lib/util/memoize.js.map +1 -1
- package/lib/util/neverthrow.d.ts +9 -0
- package/lib/util/neverthrow.d.ts.map +1 -0
- package/lib/util/neverthrow.js +29 -0
- package/lib/util/neverthrow.js.map +1 -0
- package/package.json +18 -16
- package/src/apply.ts +31 -10
- package/src/build-date.ts +1 -1
- package/src/cloudflare/ai.ts +10 -5
- package/src/cloudflare/analytics-engine.ts +20 -11
- package/src/cloudflare/{types.ts → api-response.ts} +31 -0
- package/src/cloudflare/auth-wrangler.ts +314 -0
- package/src/cloudflare/auth.ts +8 -156
- package/src/cloudflare/browser-rendering.ts +16 -2
- package/src/cloudflare/bundle/fs.ts +5 -0
- package/src/cloudflare/bundle/internal-worker-bundle.ts +21 -0
- package/src/cloudflare/compatibility-presets.ts +34 -0
- package/src/cloudflare/container.ts +70 -3
- package/src/cloudflare/dispatch-namespace.ts +28 -0
- package/src/cloudflare/durable-object-namespace.ts +38 -27
- package/src/cloudflare/hyperdrive.ts +19 -5
- package/src/cloudflare/images.ts +32 -17
- package/src/cloudflare/index.ts +1 -3
- package/src/cloudflare/miniflare/miniflare.ts +10 -7
- package/src/cloudflare/miniflare/{mixed-mode.ts → remote-binding-proxy.ts} +25 -75
- package/src/cloudflare/state.ts +35 -0
- package/src/cloudflare/user.ts +55 -70
- package/src/cloudflare/vectorize-index.ts +7 -2
- package/src/cloudflare/version-metadata.ts +19 -2
- package/src/cloudflare/vite.ts +2 -1
- package/src/cloudflare/worker-metadata.ts +18 -43
- package/src/cloudflare/worker-subdomain.ts +43 -37
- package/src/cloudflare/{worker/tail.ts → worker-tail.ts} +13 -10
- package/src/cloudflare/worker.ts +65 -19
- package/src/cloudflare/workflow.ts +38 -19
- package/src/context.ts +2 -2
- package/src/docker/api.ts +33 -8
- package/src/fs/file-system-state-store.ts +5 -148
- package/src/fs/index.ts +0 -1
- package/src/llms.cloudflare.txt +6 -5
- package/src/planetscale/password.ts +1 -1
- package/src/scope.ts +3 -6
- package/src/state/cloudflare-state-store.ts +170 -0
- package/src/state/d1-state-store.ts +102 -0
- package/src/{cloudflare/do-state-store/store.ts → state/dofs-state-store/index.ts} +20 -13
- package/src/{cloudflare/do-state-store/internal.ts → state/dofs-state-store/store.ts} +9 -27
- package/src/state/file-system-state-store.ts +149 -0
- package/src/state/index.ts +6 -0
- package/src/state/migrations.ts +9 -0
- package/src/state/operations.ts +152 -0
- package/src/state/proxy.ts +132 -0
- package/src/{cloudflare → state}/r2-rest-state-store.ts +11 -8
- package/src/{sqlite → state}/sqlite-state-store.ts +18 -10
- package/src/test/vitest.ts +8 -6
- package/src/util/detect-node-runtime.ts +12 -0
- package/src/util/detect-package-manager.ts +19 -6
- package/src/{cloudflare/miniflare → util}/http-server.ts +1 -1
- package/src/util/memoize.ts +18 -7
- package/src/util/neverthrow.ts +36 -0
- package/templates/astro/package.json +3 -3
- package/templates/nuxt/package.json +3 -3
- package/templates/react-router/package.json +3 -3
- package/templates/rwsdk/alchemy.run.ts +1 -1
- package/templates/rwsdk/package.json +3 -3
- package/templates/sveltekit/package.json +3 -3
- package/templates/tanstack-start/package.json +3 -3
- package/templates/typescript/package.json +3 -2
- package/templates/typescript/tsconfig.json +1 -0
- package/templates/vite/package.json +3 -3
- package/workers/cloudflare-state-store.js +5638 -0
- package/workers/cloudflare-state-store.ts +108 -0
- package/workers/{do-state-store.js → dofs-state-store.js} +4 -4
- package/workers/{do-state-store.ts → dofs-state-store.ts} +12 -8
- package/workers/{mixed-mode-proxy-worker.js → remote-binding-proxy.js} +3 -3
- package/workers/remote-binding-proxy.ts +45 -0
- package/lib/cloudflare/d1-state-store.d.ts +0 -10
- package/lib/cloudflare/d1-state-store.d.ts.map +0 -1
- package/lib/cloudflare/d1-state-store.js.map +0 -1
- package/lib/cloudflare/do-state-store/index.d.ts +0 -2
- package/lib/cloudflare/do-state-store/index.d.ts.map +0 -1
- package/lib/cloudflare/do-state-store/index.js +0 -2
- package/lib/cloudflare/do-state-store/index.js.map +0 -1
- package/lib/cloudflare/do-state-store/internal.d.ts.map +0 -1
- package/lib/cloudflare/do-state-store/internal.js.map +0 -1
- package/lib/cloudflare/do-state-store/store.d.ts.map +0 -1
- package/lib/cloudflare/do-state-store/store.js.map +0 -1
- package/lib/cloudflare/do-state-store/types.d.ts.map +0 -1
- package/lib/cloudflare/do-state-store/types.js +0 -1
- package/lib/cloudflare/do-state-store/types.js.map +0 -1
- package/lib/cloudflare/miniflare/http-server.d.ts.map +0 -1
- package/lib/cloudflare/miniflare/http-server.js.map +0 -1
- package/lib/cloudflare/miniflare/mixed-mode.d.ts.map +0 -1
- package/lib/cloudflare/miniflare/mixed-mode.js.map +0 -1
- package/lib/cloudflare/r2-rest-state-store.d.ts.map +0 -1
- package/lib/cloudflare/r2-rest-state-store.js.map +0 -1
- package/lib/cloudflare/types.d.ts.map +0 -1
- package/lib/cloudflare/types.js +0 -19
- package/lib/cloudflare/types.js.map +0 -1
- package/lib/cloudflare/worker/shared.d.ts +0 -4
- package/lib/cloudflare/worker/shared.d.ts.map +0 -1
- package/lib/cloudflare/worker/shared.js +0 -21
- package/lib/cloudflare/worker/shared.js.map +0 -1
- package/lib/cloudflare/worker/tail.d.ts.map +0 -1
- package/lib/cloudflare/worker/tail.js.map +0 -1
- package/lib/sqlite/base-sqlite-state-store.d.ts +0 -31
- package/lib/sqlite/base-sqlite-state-store.d.ts.map +0 -1
- package/lib/sqlite/base-sqlite-state-store.js +0 -124
- package/lib/sqlite/base-sqlite-state-store.js.map +0 -1
- package/lib/sqlite/index.d.ts +0 -2
- package/lib/sqlite/index.d.ts.map +0 -1
- package/lib/sqlite/index.js +0 -2
- package/lib/sqlite/index.js.map +0 -1
- package/lib/sqlite/schema.d.ts.map +0 -1
- package/lib/sqlite/schema.js.map +0 -1
- package/lib/sqlite/sqlite-state-store.d.ts.map +0 -1
- package/lib/sqlite/sqlite-state-store.js.map +0 -1
- package/src/cloudflare/d1-state-store.ts +0 -105
- package/src/cloudflare/do-state-store/index.ts +0 -1
- package/src/cloudflare/worker/shared.ts +0 -30
- package/src/sqlite/base-sqlite-state-store.ts +0 -199
- package/src/sqlite/index.ts +0 -1
- package/templates/typescript/src/worker.js +0 -5
- package/workers/mixed-mode-proxy-worker.ts +0 -46
- /package/drizzle/{0000_busy_mauler.sql → default/0000_busy_mauler.sql} +0 -0
- /package/drizzle/{0001_concerned_iceman.sql → default/0001_concerned_iceman.sql} +0 -0
- /package/drizzle/{meta → default/meta}/0000_snapshot.json +0 -0
- /package/drizzle/{meta → default/meta}/0001_snapshot.json +0 -0
- /package/drizzle/{meta → default/meta}/_journal.json +0 -0
- /package/lib/{sqlite → state}/schema.d.ts +0 -0
- /package/lib/{sqlite → state}/schema.js +0 -0
- /package/lib/{cloudflare/miniflare → util}/http-server.d.ts +0 -0
- /package/src/{cloudflare/do-state-store/types.ts → state/dofs-state-store/api.ts} +0 -0
- /package/src/{sqlite → state}/schema.ts +0 -0
|
@@ -9,10 +9,7 @@ import { PKG_ROOT } from "../constants.ts";
|
|
|
9
9
|
import { throwWithContext } from "../errors.ts";
|
|
10
10
|
import type { ProjectContext } from "../types.ts";
|
|
11
11
|
import { addPackageDependencies } from "./dependencies.ts";
|
|
12
|
-
import {
|
|
13
|
-
getPackageManagerCommands,
|
|
14
|
-
installDependencies,
|
|
15
|
-
} from "./package-manager.ts";
|
|
12
|
+
import { installDependencies, PackageManager } from "./package-manager.ts";
|
|
16
13
|
|
|
17
14
|
export async function copyTemplate(
|
|
18
15
|
templateName: string,
|
|
@@ -33,8 +30,8 @@ export async function copyTemplate(
|
|
|
33
30
|
];
|
|
34
31
|
|
|
35
32
|
try {
|
|
36
|
-
const
|
|
37
|
-
|
|
33
|
+
const s = spinner();
|
|
34
|
+
s.start("Setting up project files...");
|
|
38
35
|
|
|
39
36
|
const files = await globby("**/*", {
|
|
40
37
|
cwd: templatePath,
|
|
@@ -57,8 +54,6 @@ export async function copyTemplate(
|
|
|
57
54
|
await fs.copy(srcPath, destPath);
|
|
58
55
|
}
|
|
59
56
|
|
|
60
|
-
copySpinner.stop("Template files copied successfully");
|
|
61
|
-
|
|
62
57
|
await updateTemplatePackageJson(context);
|
|
63
58
|
|
|
64
59
|
await addPackageDependencies({
|
|
@@ -66,25 +61,23 @@ export async function copyTemplate(
|
|
|
66
61
|
projectDir: context.path,
|
|
67
62
|
});
|
|
68
63
|
|
|
64
|
+
s.stop("Project files ready");
|
|
65
|
+
|
|
69
66
|
if (context.options.install !== false) {
|
|
70
67
|
const installSpinner = spinner();
|
|
71
68
|
installSpinner.start("Installing dependencies...");
|
|
72
69
|
try {
|
|
73
70
|
await installDependencies(context);
|
|
74
|
-
installSpinner.stop("Dependencies installed
|
|
71
|
+
installSpinner.stop("Dependencies installed");
|
|
75
72
|
} catch (error) {
|
|
76
73
|
installSpinner.stop("Failed to install dependencies");
|
|
77
74
|
throw error;
|
|
78
75
|
}
|
|
79
|
-
} else {
|
|
80
|
-
log.info("Skipping dependency installation");
|
|
81
76
|
}
|
|
82
77
|
|
|
83
78
|
if (templateName === "rwsdk") {
|
|
84
79
|
await handleRwsdkPostInstall(context);
|
|
85
80
|
}
|
|
86
|
-
|
|
87
|
-
log.success("Project setup complete!");
|
|
88
81
|
} catch (error) {
|
|
89
82
|
throwWithContext(error, `Failed to copy template '${templateName}'`);
|
|
90
83
|
}
|
|
@@ -103,14 +96,10 @@ async function updateTemplatePackageJson(
|
|
|
103
96
|
|
|
104
97
|
packageJson.name = context.name;
|
|
105
98
|
|
|
106
|
-
const deployCommand =
|
|
107
|
-
context.packageManager === "bun"
|
|
108
|
-
? "bun --env-file=./.env ./alchemy.run.ts"
|
|
109
|
-
: "tsx --env-file=./.env ./alchemy.run.ts";
|
|
110
|
-
|
|
111
99
|
if (packageJson.scripts) {
|
|
112
|
-
packageJson.scripts.deploy =
|
|
113
|
-
packageJson.scripts.destroy =
|
|
100
|
+
packageJson.scripts.deploy = "alchemy deploy";
|
|
101
|
+
packageJson.scripts.destroy = "alchemy destroy";
|
|
102
|
+
packageJson.scripts.dev = "alchemy dev";
|
|
114
103
|
}
|
|
115
104
|
|
|
116
105
|
await fs.writeJson(packageJsonPath, packageJson, { spaces: 2 });
|
|
@@ -121,7 +110,7 @@ async function handleRwsdkPostInstall(context: ProjectContext): Promise<void> {
|
|
|
121
110
|
const migrationsDir = join(context.path, "migrations");
|
|
122
111
|
await fs.ensureDir(migrationsDir);
|
|
123
112
|
|
|
124
|
-
const commands =
|
|
113
|
+
const commands = PackageManager[context.packageManager];
|
|
125
114
|
const devInitCommand = `${commands.run} dev:init`;
|
|
126
115
|
|
|
127
116
|
if (context.options.install !== false) {
|
package/bin/trpc.ts
ADDED
package/bin/types.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import z from "zod";
|
|
2
2
|
|
|
3
3
|
export const TEMPLATE_DEFINITIONS = [
|
|
4
4
|
{ name: "typescript", description: "TypeScript Worker" },
|
|
@@ -19,7 +19,7 @@ export const TemplateSchema = z
|
|
|
19
19
|
export type TemplateType = z.infer<typeof TemplateSchema>;
|
|
20
20
|
|
|
21
21
|
export const PackageManagerSchema = z
|
|
22
|
-
.enum(["bun", "npm", "pnpm", "yarn"])
|
|
22
|
+
.enum(["bun", "npm", "pnpm", "yarn", "deno"])
|
|
23
23
|
.describe("Package manager");
|
|
24
24
|
export type PackageManager = z.infer<typeof PackageManagerSchema>;
|
|
25
25
|
|
|
@@ -73,6 +73,8 @@ export type CreateInput = {
|
|
|
73
73
|
overwrite?: boolean;
|
|
74
74
|
install?: boolean;
|
|
75
75
|
vibeRules?: EditorType;
|
|
76
|
+
githubActions?: boolean;
|
|
77
|
+
git?: boolean;
|
|
76
78
|
};
|
|
77
79
|
|
|
78
80
|
export type CLIInput = CreateInput & {
|
package/lib/apply.d.ts
CHANGED
|
@@ -7,5 +7,7 @@ export interface ApplyOptions {
|
|
|
7
7
|
}
|
|
8
8
|
export declare function apply<Out extends Resource>(resource: PendingResource<Out>, props: ResourceProps | undefined, options?: ApplyOptions): Promise<Awaited<Out>>;
|
|
9
9
|
export declare class ReplacedSignal extends Error {
|
|
10
|
+
force: boolean;
|
|
11
|
+
constructor(force?: boolean);
|
|
10
12
|
}
|
|
11
13
|
//# sourceMappingURL=apply.d.ts.map
|
package/lib/apply.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apply.d.ts","sourceRoot":"","sources":["../src/apply.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"apply.d.ts","sourceRoot":"","sources":["../src/apply.ts"],"names":[],"mappings":"AAGA,OAAO,EAOL,KAAK,eAAe,EAEpB,KAAK,QAAQ,EACb,KAAK,aAAa,EACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,KAAK,EAAyB,MAAM,YAAY,CAAC;AAO1D,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAC5C;AAED,wBAAgB,KAAK,CAAC,GAAG,SAAS,QAAQ,EACxC,QAAQ,EAAE,eAAe,CAAC,GAAG,CAAC,EAC9B,KAAK,EAAE,aAAa,GAAG,SAAS,EAChC,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAEvB;AAED,qBAAa,cAAe,SAAQ,KAAK;IAChC,KAAK,EAAE,OAAO,CAAC;gBAEV,KAAK,CAAC,EAAE,OAAO;CAI5B"}
|
package/lib/apply.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { alchemy } from "./alchemy.js";
|
|
2
2
|
import { context } from "./context.js";
|
|
3
|
+
import { destroy } from "./destroy.js";
|
|
3
4
|
import { PROVIDERS, ResourceFQN, ResourceID, ResourceKind, ResourceScope, ResourceSeq, } from "./resource.js";
|
|
4
5
|
import { Scope } from "./scope.js";
|
|
5
6
|
import { serialize } from "./serde.js";
|
|
@@ -9,6 +10,11 @@ export function apply(resource, props, options) {
|
|
|
9
10
|
return _apply(resource, props, options);
|
|
10
11
|
}
|
|
11
12
|
export class ReplacedSignal extends Error {
|
|
13
|
+
force;
|
|
14
|
+
constructor(force) {
|
|
15
|
+
super();
|
|
16
|
+
this.force = force ?? false;
|
|
17
|
+
}
|
|
12
18
|
}
|
|
13
19
|
async function _apply(resource, props, options) {
|
|
14
20
|
const scope = resource[ResourceScope];
|
|
@@ -117,15 +123,25 @@ async function _apply(resource, props, options) {
|
|
|
117
123
|
props: state.oldProps,
|
|
118
124
|
state,
|
|
119
125
|
isReplacement: false,
|
|
120
|
-
replace: () => {
|
|
126
|
+
replace: async (force) => {
|
|
121
127
|
if (phase === "create") {
|
|
122
128
|
throw new Error(`Resource ${resource[ResourceKind]} ${resource[ResourceFQN]} cannot be replaced in create phase.`);
|
|
123
129
|
}
|
|
124
130
|
if (isReplaced) {
|
|
125
131
|
logger.warn(`Resource ${resource[ResourceKind]} ${resource[ResourceFQN]} is already marked as REPLACE`);
|
|
126
132
|
}
|
|
133
|
+
if (force) {
|
|
134
|
+
await destroy(resource, {
|
|
135
|
+
quiet: scope.quiet,
|
|
136
|
+
strategy: "sequential",
|
|
137
|
+
replace: {
|
|
138
|
+
props: state.oldProps,
|
|
139
|
+
output: resource,
|
|
140
|
+
},
|
|
141
|
+
});
|
|
142
|
+
}
|
|
127
143
|
isReplaced = true;
|
|
128
|
-
throw new ReplacedSignal();
|
|
144
|
+
throw new ReplacedSignal(force);
|
|
129
145
|
},
|
|
130
146
|
});
|
|
131
147
|
let output;
|
|
@@ -157,12 +173,14 @@ async function _apply(resource, props, options) {
|
|
|
157
173
|
throw new Error(`Resource ${resource[ResourceKind]} ${resource[ResourceFQN]} cannot be replaced in create phase.`);
|
|
158
174
|
},
|
|
159
175
|
}))(resource[ResourceID], props));
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
176
|
+
if (!error.force) {
|
|
177
|
+
const pendingDeletions = (await scope.get("pendingDeletions")) ?? [];
|
|
178
|
+
pendingDeletions.push({
|
|
179
|
+
resource: oldOutput,
|
|
180
|
+
oldProps: state.oldProps,
|
|
181
|
+
});
|
|
182
|
+
await scope.set("pendingDeletions", pendingDeletions);
|
|
183
|
+
}
|
|
166
184
|
}
|
|
167
185
|
else {
|
|
168
186
|
throw error;
|
package/lib/apply.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apply.js","sourceRoot":"","sources":["../src/apply.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EACL,SAAS,EACT,WAAW,EACX,UAAU,EACV,YAAY,EACZ,aAAa,EACb,WAAW,GAKZ,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,KAAK,EAAyB,MAAM,YAAY,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAS1C,MAAM,UAAU,KAAK,CACnB,QAA8B,EAC9B,KAAgC,EAChC,OAAsB;IAEtB,OAAO,MAAM,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,OAAO,cAAe,SAAQ,KAAK;
|
|
1
|
+
{"version":3,"file":"apply.js","sourceRoot":"","sources":["../src/apply.ts"],"names":[],"mappings":"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"}
|
package/lib/build-date.d.ts
CHANGED
package/lib/build-date.js
CHANGED
package/lib/cloudflare/ai.d.ts
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* ```ts
|
|
10
10
|
* import { Worker, Ai } from "alchemy/cloudflare";
|
|
11
11
|
*
|
|
12
|
-
* const ai =
|
|
12
|
+
* const ai = Ai();
|
|
13
13
|
*
|
|
14
14
|
* await Worker("my-worker", {
|
|
15
15
|
* name: "my-worker",
|
|
@@ -22,11 +22,15 @@
|
|
|
22
22
|
*
|
|
23
23
|
* @see https://developers.cloudflare.com/workers-ai/
|
|
24
24
|
*/
|
|
25
|
-
export declare
|
|
26
|
-
readonly type
|
|
25
|
+
export declare function Ai<Models extends AiModelListType = AiModelListType>(): {
|
|
26
|
+
readonly type: "ai";
|
|
27
|
+
readonly _phantom: Models;
|
|
28
|
+
};
|
|
29
|
+
export type Ai<Models extends AiModelListType = AiModelListType> = {
|
|
30
|
+
type: "ai";
|
|
27
31
|
/**
|
|
28
32
|
* @internal
|
|
29
33
|
*/
|
|
30
34
|
_phantom: Models;
|
|
31
|
-
}
|
|
35
|
+
};
|
|
32
36
|
//# sourceMappingURL=ai.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../../src/cloudflare/ai.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,
|
|
1
|
+
{"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../../src/cloudflare/ai.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,EAAE,CAAC,MAAM,SAAS,eAAe,GAAG,eAAe;;uBAGvC,MAAM;EAEjC;AAED,MAAM,MAAM,EAAE,CAAC,MAAM,SAAS,eAAe,GAAG,eAAe,IAAI;IACjE,IAAI,EAAE,IAAI,CAAC;IACX;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC"}
|
package/lib/cloudflare/ai.js
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* ```ts
|
|
10
10
|
* import { Worker, Ai } from "alchemy/cloudflare";
|
|
11
11
|
*
|
|
12
|
-
* const ai =
|
|
12
|
+
* const ai = Ai();
|
|
13
13
|
*
|
|
14
14
|
* await Worker("my-worker", {
|
|
15
15
|
* name: "my-worker",
|
|
@@ -22,12 +22,10 @@
|
|
|
22
22
|
*
|
|
23
23
|
* @see https://developers.cloudflare.com/workers-ai/
|
|
24
24
|
*/
|
|
25
|
-
export
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
///@ts-ignore
|
|
31
|
-
_phantom;
|
|
25
|
+
export function Ai() {
|
|
26
|
+
return {
|
|
27
|
+
type: "ai",
|
|
28
|
+
_phantom: undefined,
|
|
29
|
+
};
|
|
32
30
|
}
|
|
33
31
|
//# sourceMappingURL=ai.js.map
|
package/lib/cloudflare/ai.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai.js","sourceRoot":"","sources":["../../src/cloudflare/ai.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,
|
|
1
|
+
{"version":3,"file":"ai.js","sourceRoot":"","sources":["../../src/cloudflare/ai.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,EAAE;IAChB,OAAO;QACL,IAAI,EAAE,IAAI;QACV,QAAQ,EAAE,SAAoB;KACtB,CAAC;AACb,CAAC"}
|
|
@@ -5,17 +5,21 @@ export interface AnalyticsEngineDatasetProps {
|
|
|
5
5
|
*/
|
|
6
6
|
dataset: string;
|
|
7
7
|
}
|
|
8
|
+
export type AnalyticsEngineDataset = {
|
|
9
|
+
type: "analytics_engine";
|
|
10
|
+
id: string;
|
|
11
|
+
dataset: string;
|
|
12
|
+
};
|
|
8
13
|
/**
|
|
14
|
+
* Creates a binding for an Analytics Engine dataset.
|
|
15
|
+
*
|
|
9
16
|
* @example
|
|
17
|
+
* ```ts
|
|
10
18
|
* // Create a binding for an Analytics Engine dataset
|
|
11
|
-
* const dataset =
|
|
19
|
+
* const dataset = AnalyticsEngineDataset("ae-dataset", {
|
|
12
20
|
* dataset: "WEATHER",
|
|
13
21
|
* });
|
|
22
|
+
* ```
|
|
14
23
|
*/
|
|
15
|
-
export declare
|
|
16
|
-
readonly id: string;
|
|
17
|
-
readonly type: "analytics_engine";
|
|
18
|
-
readonly dataset: string;
|
|
19
|
-
constructor(id: string, input: AnalyticsEngineDatasetProps);
|
|
20
|
-
}
|
|
24
|
+
export declare function AnalyticsEngineDataset(id: string, props: AnalyticsEngineDatasetProps): AnalyticsEngineDataset;
|
|
21
25
|
//# sourceMappingURL=analytics-engine.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analytics-engine.d.ts","sourceRoot":"","sources":["../../src/cloudflare/analytics-engine.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,2BAA2B;IAC1C;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB;AAED
|
|
1
|
+
{"version":3,"file":"analytics-engine.d.ts","sourceRoot":"","sources":["../../src/cloudflare/analytics-engine.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,2BAA2B;IAC1C;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,EAAE,kBAAkB,CAAC;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,2BAA2B,GACjC,sBAAsB,CAMxB"}
|
|
@@ -1,17 +1,19 @@
|
|
|
1
1
|
/**
|
|
2
|
+
* Creates a binding for an Analytics Engine dataset.
|
|
3
|
+
*
|
|
2
4
|
* @example
|
|
5
|
+
* ```ts
|
|
3
6
|
* // Create a binding for an Analytics Engine dataset
|
|
4
|
-
* const dataset =
|
|
7
|
+
* const dataset = AnalyticsEngineDataset("ae-dataset", {
|
|
5
8
|
* dataset: "WEATHER",
|
|
6
9
|
* });
|
|
10
|
+
* ```
|
|
7
11
|
*/
|
|
8
|
-
export
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
this.dataset = input.dataset;
|
|
15
|
-
}
|
|
12
|
+
export function AnalyticsEngineDataset(id, props) {
|
|
13
|
+
return {
|
|
14
|
+
type: "analytics_engine",
|
|
15
|
+
id,
|
|
16
|
+
dataset: props.dataset,
|
|
17
|
+
};
|
|
16
18
|
}
|
|
17
19
|
//# sourceMappingURL=analytics-engine.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analytics-engine.js","sourceRoot":"","sources":["../../src/cloudflare/analytics-engine.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"analytics-engine.js","sourceRoot":"","sources":["../../src/cloudflare/analytics-engine.ts"],"names":[],"mappings":"AAcA;;;;;;;;;;GAUG;AACH,MAAM,UAAU,sBAAsB,CACpC,EAAU,EACV,KAAkC;IAElC,OAAO;QACL,IAAI,EAAE,kBAAkB;QACxB,EAAE;QACF,OAAO,EAAE,KAAK,CAAC,OAAO;KACvB,CAAC;AACJ,CAAC"}
|
|
@@ -41,6 +41,10 @@ export interface CloudflareApiError {
|
|
|
41
41
|
* Error message
|
|
42
42
|
*/
|
|
43
43
|
message: string;
|
|
44
|
+
/**
|
|
45
|
+
* Error documentation URL
|
|
46
|
+
*/
|
|
47
|
+
documentation_url?: string;
|
|
44
48
|
}
|
|
45
49
|
/**
|
|
46
50
|
* Helper to extract and handle Cloudflare API errors
|
|
@@ -49,4 +53,5 @@ export interface CloudflareApiError {
|
|
|
49
53
|
* @returns Formatted error message
|
|
50
54
|
*/
|
|
51
55
|
export declare function extractCloudflareError(response: Response): Promise<string>;
|
|
52
|
-
|
|
56
|
+
export declare function extractCloudflareResult<T>(label: string, promise: Promise<Response>): Promise<T>;
|
|
57
|
+
//# sourceMappingURL=api-response.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-response.d.ts","sourceRoot":"","sources":["../../src/cloudflare/api-response.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,qBAAqB,CAAC,CAAC;IACtC;;OAEG;IACH,MAAM,EAAE,CAAC,CAAC;IAEV;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAE7B;;OAEG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;IAEnB;;OAEG;IACH,WAAW,CAAC,EAAE;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAC1C,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC,MAAM,CAAC,CAUjB;AAED,wBAAsB,uBAAuB,CAAC,CAAC,EAC7C,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,GACzB,OAAO,CAAC,CAAC,CAAC,CAqBZ"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Helper to extract and handle Cloudflare API errors
|
|
3
|
+
*
|
|
4
|
+
* @param response Fetch response object
|
|
5
|
+
* @returns Formatted error message
|
|
6
|
+
*/
|
|
7
|
+
export async function extractCloudflareError(response) {
|
|
8
|
+
try {
|
|
9
|
+
const data = (await response.json());
|
|
10
|
+
if (data.errors && data.errors.length > 0) {
|
|
11
|
+
return data.errors.map((e) => `Error ${e.code}: ${e.message}`).join(", ");
|
|
12
|
+
}
|
|
13
|
+
return `HTTP ${response.status}: ${response.statusText}`;
|
|
14
|
+
}
|
|
15
|
+
catch {
|
|
16
|
+
return `HTTP ${response.status}: ${response.statusText}`;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
export async function extractCloudflareResult(label, promise) {
|
|
20
|
+
const response = await promise.catch(() => {
|
|
21
|
+
throw new Error(`Failed to ${label}: Failed to fetch`);
|
|
22
|
+
});
|
|
23
|
+
const json = (await response.json().catch(() => {
|
|
24
|
+
throw new Error(`Failed to ${label} (${response.status}): The API returned an invalid response`);
|
|
25
|
+
}));
|
|
26
|
+
if (json.success) {
|
|
27
|
+
return json.result;
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
const error = new Error(`Failed to ${label} (${response.status} ${response.statusText}):\n${json.errors.map((e) => `- [${e.code}] ${e.message}${e.documentation_url ? ` (${e.documentation_url})` : ""}`).join("\n")}`);
|
|
31
|
+
Error.captureStackTrace(error, extractCloudflareResult);
|
|
32
|
+
Object.assign(error, {
|
|
33
|
+
status: response.status,
|
|
34
|
+
});
|
|
35
|
+
throw error;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=api-response.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-response.js","sourceRoot":"","sources":["../../src/cloudflare/api-response.ts"],"names":[],"mappings":"AAwDA;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,QAAkB;IAElB,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAA+B,CAAC;QACnE,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1C,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5E,CAAC;QACD,OAAO,QAAQ,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,UAAU,EAAE,CAAC;IAC3D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,QAAQ,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,UAAU,EAAE,CAAC;IAC3D,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,KAAa,EACb,OAA0B;IAE1B,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE;QACxC,MAAM,IAAI,KAAK,CAAC,aAAa,KAAK,mBAAmB,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;QAC7C,MAAM,IAAI,KAAK,CACb,aAAa,KAAK,KAAK,QAAQ,CAAC,MAAM,yCAAyC,CAChF,CAAC;IACJ,CAAC,CAAC,CAA6B,CAAC;IAChC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;SAAM,CAAC;QACN,MAAM,KAAK,GAAG,IAAI,KAAK,CACrB,aAAa,KAAK,KAAK,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC/L,CAAC;QACF,KAAK,CAAC,iBAAiB,CAAC,KAAK,EAAE,uBAAuB,CAAC,CAAC;QACxD,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE;YACnB,MAAM,EAAE,QAAQ,CAAC,MAAM;SACxB,CAAC,CAAC;QACH,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { ResultAsync } from "neverthrow";
|
|
2
|
+
export declare const DEFAULT_SCOPES: string[];
|
|
3
|
+
interface WranglerConfig {
|
|
4
|
+
oauth_token: string;
|
|
5
|
+
refresh_token: string;
|
|
6
|
+
expiration_time: Date;
|
|
7
|
+
scopes: string[];
|
|
8
|
+
}
|
|
9
|
+
export declare const getRefreshedWranglerConfig: () => ResultAsync<WranglerConfig | null, OAuthError>;
|
|
10
|
+
declare class OAuthError extends Error {
|
|
11
|
+
readonly error: string;
|
|
12
|
+
readonly error_verbose?: string;
|
|
13
|
+
readonly error_hint?: string;
|
|
14
|
+
readonly status_code: number;
|
|
15
|
+
constructor(params: {
|
|
16
|
+
error: string;
|
|
17
|
+
error_verbose?: string;
|
|
18
|
+
error_description: string;
|
|
19
|
+
error_hint?: string;
|
|
20
|
+
status_code: number;
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
export declare const wranglerLogin: (scopes?: string[], log?: (message: string) => void) => ResultAsync<WranglerConfig, OAuthError>;
|
|
24
|
+
export {};
|
|
25
|
+
//# sourceMappingURL=auth-wrangler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth-wrangler.d.ts","sourceRoot":"","sources":["../../src/cloudflare/auth-wrangler.ts"],"names":[],"mappings":"AACA,OAAO,EAAW,WAAW,EAAE,MAAM,YAAY,CAAC;AAclD,eAAO,MAAM,cAAc,UAkB1B,CAAC;AAEF,UAAU,cAAc;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,IAAI,CAAC;IACtB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAyHD,eAAO,MAAM,0BAA0B,sDA0BtC,CAAC;AA0BF,cAAM,UAAW,SAAQ,KAAK;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;gBACjB,MAAM,EAAE;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;KACrB;CAQF;AAED,eAAO,MAAM,aAAa,GACxB,SAAQ,MAAM,EAAmB,EACjC,MAAK,CAAC,OAAO,EAAE,MAAM,KAAK,IAAkB,4CA6E7C,CAAC"}
|