alchemy 0.58.0 → 0.59.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/alchemy.js +1 -1
- package/lib/cloudflare/api.d.ts.map +1 -1
- package/lib/cloudflare/api.js +10 -2
- package/lib/cloudflare/api.js.map +1 -1
- package/lib/cloudflare/assets.d.ts +1 -1
- package/lib/cloudflare/assets.d.ts.map +1 -1
- package/lib/cloudflare/bucket.d.ts +21 -3
- package/lib/cloudflare/bucket.d.ts.map +1 -1
- package/lib/cloudflare/bucket.js +83 -53
- package/lib/cloudflare/bucket.js.map +1 -1
- package/lib/cloudflare/container.d.ts +8 -0
- package/lib/cloudflare/container.d.ts.map +1 -1
- package/lib/cloudflare/container.js +7 -1
- package/lib/cloudflare/container.js.map +1 -1
- package/lib/cloudflare/custom-domain.d.ts +8 -0
- package/lib/cloudflare/custom-domain.d.ts.map +1 -1
- package/lib/cloudflare/custom-domain.js +11 -0
- package/lib/cloudflare/custom-domain.js.map +1 -1
- package/lib/cloudflare/d1-database.d.ts +15 -1
- package/lib/cloudflare/d1-database.d.ts.map +1 -1
- package/lib/cloudflare/d1-database.js +24 -17
- package/lib/cloudflare/d1-database.js.map +1 -1
- package/lib/cloudflare/hyperdrive.d.ts +37 -9
- package/lib/cloudflare/hyperdrive.d.ts.map +1 -1
- package/lib/cloudflare/hyperdrive.js +91 -5
- package/lib/cloudflare/hyperdrive.js.map +1 -1
- package/lib/cloudflare/kv-namespace.d.ts +23 -4
- package/lib/cloudflare/kv-namespace.d.ts.map +1 -1
- package/lib/cloudflare/kv-namespace.js +70 -58
- package/lib/cloudflare/kv-namespace.js.map +1 -1
- package/lib/cloudflare/miniflare/build-worker-options.d.ts +2 -0
- package/lib/cloudflare/miniflare/build-worker-options.d.ts.map +1 -1
- package/lib/cloudflare/miniflare/build-worker-options.js +9 -7
- package/lib/cloudflare/miniflare/build-worker-options.js.map +1 -1
- package/lib/cloudflare/miniflare/delete.d.ts +21 -0
- package/lib/cloudflare/miniflare/delete.d.ts.map +1 -0
- package/lib/cloudflare/miniflare/delete.js +91 -0
- package/lib/cloudflare/miniflare/delete.js.map +1 -0
- package/lib/cloudflare/miniflare/miniflare-controller.d.ts.map +1 -1
- package/lib/cloudflare/miniflare/miniflare-controller.js +26 -9
- package/lib/cloudflare/miniflare/miniflare-controller.js.map +1 -1
- package/lib/cloudflare/miniflare/remote-binding-proxy.d.ts +2 -0
- package/lib/cloudflare/miniflare/remote-binding-proxy.d.ts.map +1 -1
- package/lib/cloudflare/miniflare/remote-binding-proxy.js +3 -4
- package/lib/cloudflare/miniflare/remote-binding-proxy.js.map +1 -1
- package/lib/cloudflare/pipeline.d.ts +3 -0
- package/lib/cloudflare/pipeline.d.ts.map +1 -1
- package/lib/cloudflare/pipeline.js +14 -1
- package/lib/cloudflare/pipeline.js.map +1 -1
- package/lib/cloudflare/queue-consumer.d.ts +8 -0
- package/lib/cloudflare/queue-consumer.d.ts.map +1 -1
- package/lib/cloudflare/queue-consumer.js +15 -4
- package/lib/cloudflare/queue-consumer.js.map +1 -1
- package/lib/cloudflare/queue.d.ts +22 -4
- package/lib/cloudflare/queue.d.ts.map +1 -1
- package/lib/cloudflare/queue.js +32 -9
- package/lib/cloudflare/queue.js.map +1 -1
- package/lib/cloudflare/route.d.ts +8 -0
- package/lib/cloudflare/route.d.ts.map +1 -1
- package/lib/cloudflare/route.js +13 -0
- package/lib/cloudflare/route.js.map +1 -1
- package/lib/cloudflare/worker-subdomain.d.ts +8 -0
- package/lib/cloudflare/worker-subdomain.d.ts.map +1 -1
- package/lib/cloudflare/worker-subdomain.js +9 -1
- package/lib/cloudflare/worker-subdomain.js.map +1 -1
- package/lib/cloudflare/worker.d.ts +7 -1
- package/lib/cloudflare/worker.d.ts.map +1 -1
- package/lib/cloudflare/worker.js +405 -375
- package/lib/cloudflare/worker.js.map +1 -1
- package/lib/cloudflare/wrangler.json.d.ts +1 -1
- package/lib/cloudflare/wrangler.json.d.ts.map +1 -1
- package/lib/cloudflare/wrangler.json.js +24 -12
- package/lib/cloudflare/wrangler.json.js.map +1 -1
- package/lib/esbuild/bundle.d.ts +1 -1
- package/lib/secret.d.ts +9 -1
- package/lib/secret.d.ts.map +1 -1
- package/lib/secret.js +12 -0
- package/lib/secret.js.map +1 -1
- package/package.json +1 -1
- package/src/cloudflare/api.ts +13 -2
- package/src/cloudflare/bucket.ts +126 -68
- package/src/cloudflare/container.ts +18 -1
- package/src/cloudflare/custom-domain.ts +22 -0
- package/src/cloudflare/d1-database.ts +44 -19
- package/src/cloudflare/hyperdrive.ts +170 -14
- package/src/cloudflare/kv-namespace.ts +117 -73
- package/src/cloudflare/miniflare/build-worker-options.ts +12 -8
- package/src/cloudflare/miniflare/delete.ts +136 -0
- package/src/cloudflare/miniflare/miniflare-controller.ts +26 -9
- package/src/cloudflare/miniflare/remote-binding-proxy.ts +5 -4
- package/src/cloudflare/pipeline.ts +17 -1
- package/src/cloudflare/queue-consumer.ts +27 -5
- package/src/cloudflare/queue.ts +62 -12
- package/src/cloudflare/route.ts +24 -0
- package/src/cloudflare/worker-subdomain.ts +29 -6
- package/src/cloudflare/worker.ts +484 -465
- package/src/cloudflare/wrangler.json.ts +34 -13
- package/src/secret.ts +15 -1
- package/templates/astro/README.md +2 -0
- package/templates/nuxt/README.md +2 -0
- package/templates/react-router/README.md +2 -0
- package/templates/rwsdk/README.md +2 -0
- package/templates/sveltekit/README.md +2 -0
- package/templates/tanstack-start/README.md +2 -0
- package/templates/typescript/README.md +2 -0
- package/templates/vite/README.md +2 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"d1-database.d.ts","sourceRoot":"","sources":["../../src/cloudflare/d1-database.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAgB,MAAM,gBAAgB,CAAC;AAIxD,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,oBAAoB,EAC1B,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"d1-database.d.ts","sourceRoot":"","sources":["../../src/cloudflare/d1-database.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ import { createCloudflareApi, } from "./api.js";
|
|
|
6
6
|
import { cloneD1Database } from "./d1-clone.js";
|
|
7
7
|
import { applyLocalD1Migrations } from "./d1-local-migrations.js";
|
|
8
8
|
import { applyMigrations, listMigrationsFiles } from "./d1-migrations.js";
|
|
9
|
+
import { deleteMiniflareBinding } from "./miniflare/delete.js";
|
|
9
10
|
const DEFAULT_MIGRATIONS_TABLE = "d1_migrations";
|
|
10
11
|
export function isD1Database(resource) {
|
|
11
12
|
return resource[ResourceKind] === "cloudflare::D1Database";
|
|
@@ -102,17 +103,13 @@ export async function D1Database(id, props = {}) {
|
|
|
102
103
|
});
|
|
103
104
|
}
|
|
104
105
|
const _D1Database = Resource("cloudflare::D1Database", async function (id, props = {}) {
|
|
105
|
-
const api = await createCloudflareApi(props);
|
|
106
106
|
const databaseName = props.name ?? id;
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
}
|
|
114
|
-
let dbData;
|
|
115
|
-
if (this.scope.local && !props.dev?.remote) {
|
|
107
|
+
const local = this.scope.local && !props.dev?.remote;
|
|
108
|
+
const dev = {
|
|
109
|
+
id: this.output?.dev?.id ?? this.output?.id ?? id,
|
|
110
|
+
remote: props.dev?.remote ?? false,
|
|
111
|
+
};
|
|
112
|
+
if (local) {
|
|
116
113
|
if (props.migrationsFiles && props.migrationsFiles.length > 0) {
|
|
117
114
|
await applyLocalD1Migrations({
|
|
118
115
|
databaseId: this.output?.id ?? id,
|
|
@@ -122,22 +119,32 @@ const _D1Database = Resource("cloudflare::D1Database", async function (id, props
|
|
|
122
119
|
}
|
|
123
120
|
return this({
|
|
124
121
|
type: "d1",
|
|
125
|
-
|
|
126
|
-
// so set it to the resource ID which we can later use to detect that a DB needs to be created during an `update`
|
|
127
|
-
id: this.output?.id ?? id,
|
|
122
|
+
id: this.output?.id ?? "",
|
|
128
123
|
name: databaseName,
|
|
129
124
|
readReplication: props.readReplication,
|
|
130
125
|
primaryLocationHint: props.primaryLocationHint,
|
|
131
126
|
migrationsDir: props.migrationsDir,
|
|
132
127
|
migrationsTable: props.migrationsTable ?? DEFAULT_MIGRATIONS_TABLE,
|
|
133
|
-
dev
|
|
128
|
+
dev,
|
|
134
129
|
});
|
|
135
130
|
}
|
|
136
|
-
|
|
131
|
+
const api = await createCloudflareApi(props);
|
|
132
|
+
if (this.phase === "delete") {
|
|
133
|
+
if (this.output.dev?.id) {
|
|
134
|
+
await deleteMiniflareBinding("d1", this.output.dev.id);
|
|
135
|
+
}
|
|
136
|
+
if (props.delete !== false && this.output?.id) {
|
|
137
|
+
await deleteDatabase(api, this.output.id);
|
|
138
|
+
}
|
|
139
|
+
// Return void (a deleted database has no content)
|
|
140
|
+
return this.destroy();
|
|
141
|
+
}
|
|
142
|
+
let dbData;
|
|
143
|
+
if (this.phase === "create" ||
|
|
137
144
|
// this is true IFF the database was created locally before any live deployment
|
|
138
145
|
// in that case, we should still go through the create flow for "update"
|
|
139
146
|
// after that, the ID will remain the UUID for the lifetime of the database
|
|
140
|
-
this.output
|
|
147
|
+
!this.output?.id) {
|
|
141
148
|
logger.log("Creating D1 database:", databaseName);
|
|
142
149
|
try {
|
|
143
150
|
dbData = await createDatabase(api, databaseName, props);
|
|
@@ -222,7 +229,7 @@ const _D1Database = Resource("cloudflare::D1Database", async function (id, props
|
|
|
222
229
|
name: databaseName,
|
|
223
230
|
readReplication: dbData.result.read_replication,
|
|
224
231
|
primaryLocationHint: props.primaryLocationHint,
|
|
225
|
-
dev
|
|
232
|
+
dev,
|
|
226
233
|
migrationsDir: props.migrationsDir,
|
|
227
234
|
migrationsTable: props.migrationsTable ?? DEFAULT_MIGRATIONS_TABLE,
|
|
228
235
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"d1-database.js","sourceRoot":"","sources":["../../src/cloudflare/d1-database.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACpE,OAAO,EACL,mBAAmB,GAGpB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"d1-database.js","sourceRoot":"","sources":["../../src/cloudflare/d1-database.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACpE,OAAO,EACL,mBAAmB,GAGpB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,MAAM,wBAAwB,GAAG,eAAe,CAAC;AAwGjD,MAAM,UAAU,YAAY,CAAC,QAAkB;IAC7C,OAAO,QAAQ,CAAC,YAAY,CAAC,KAAK,wBAAwB,CAAC;AAC7D,CAAC;AAyCD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2EG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,EAAU,EACV,QAAkD,EAAE;IAEpD,MAAM,eAAe,GAAG,KAAK,CAAC,aAAa;QACzC,CAAC,CAAC,MAAM,mBAAmB,CAAC,KAAK,CAAC,aAAa,CAAC;QAChD,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO,WAAW,CAAC,EAAE,EAAE;QACrB,GAAG,KAAK;QACR,eAAe;QACf,GAAG,EAAE;YACH,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,EAAE,CAAC;YACpB,+EAA+E;YAC/E,0FAA0F;YAC1F,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK;SAC3B;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,WAAW,GAAG,QAAQ,CAC1B,wBAAwB,EACxB,KAAK,WAEH,EAAU,EACV,QAAyB,EAAE;IAE3B,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;IACtC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC;IACrD,MAAM,GAAG,GAAG;QACV,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE;QACjD,MAAM,EAAE,KAAK,CAAC,GAAG,EAAE,MAAM,IAAI,KAAK;KACnC,CAAC;IAEF,IAAI,KAAK,EAAE,CAAC;QACV,IAAI,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9D,MAAM,sBAAsB,CAAC;gBAC3B,UAAU,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE;gBACjC,eAAe,EAAE,KAAK,CAAC,eAAe,IAAI,wBAAwB;gBAClE,UAAU,EAAE,KAAK,CAAC,eAAe;aAClC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC;YACV,IAAI,EAAE,IAAI;YACV,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE;YACzB,IAAI,EAAE,YAAY;YAClB,eAAe,EAAE,KAAK,CAAC,eAAe;YACtC,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;YAC9C,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,eAAe,EAAE,KAAK,CAAC,eAAe,IAAI,wBAAwB;YAClE,GAAG;SACJ,CAAC,CAAC;IACL,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAE7C,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC5B,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC;YACxB,MAAM,sBAAsB,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACzD,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC;YAC9C,MAAM,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC5C,CAAC;QACD,kDAAkD;QAClD,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;IACxB,CAAC;IACD,IAAI,MAA4B,CAAC;IAEjC,IACE,IAAI,CAAC,KAAK,KAAK,QAAQ;QACvB,+EAA+E;QAC/E,wEAAwE;QACxE,2EAA2E;QAC3E,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,EAChB,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,uBAAuB,EAAE,YAAY,CAAC,CAAC;QAClD,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,cAAc,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;YAExD,8EAA8E;YAC9E,IAAI,KAAK,CAAC,eAAe,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBAChD,MAAM,GAAG,MAAM,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAChE,CAAC;YAED,yEAAyE;YACzE,IAAI,KAAK,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBACtC,MAAM,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,0EAA0E;YAC1E,IACE,KAAK,CAAC,KAAK;gBACX,KAAK,YAAY,kBAAkB;gBACnC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EACxC,CAAC;gBACD,MAAM,CAAC,GAAG,CAAC,YAAY,YAAY,8BAA8B,CAAC,CAAC;gBACnE,qCAAqC;gBACrC,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;gBACzD,MAAM,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC;gBAEpE,IAAI,CAAC,UAAU,EAAE,CAAC;oBAChB,MAAM,IAAI,KAAK,CACb,qCAAqC,YAAY,gBAAgB,CAClE,CAAC;gBACJ,CAAC;gBAED,wCAAwC;gBACxC,MAAM,GAAG,MAAM,WAAW,CAAC,GAAG,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC;gBAE/C,mDAAmD;gBACnD,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;oBAC1B,MAAM,CAAC,GAAG,CACR,6BAA6B,YAAY,sBAAsB,CAChE,CAAC;oBACF,MAAM,GAAG,MAAM,cAAc,CAAC,GAAG,EAAE,UAAU,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;gBAC3D,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,qFAAqF;gBACrF,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;SAAM,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC;QAC3B,kDAAkD;QAClD,IACE,KAAK,CAAC,mBAAmB;YACzB,KAAK,CAAC,mBAAmB,KAAK,IAAI,CAAC,MAAM,EAAE,mBAAmB,EAC9D,CAAC;YACD,MAAM,IAAI,KAAK,CACb,2CAA2C,IAAI,CAAC,MAAM,CAAC,mBAAmB,SAAS,KAAK,CAAC,mBAAmB,4BAA4B,CACzI,CAAC;QACJ,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,uBAAuB,EAAE,YAAY,CAAC,CAAC;QAClD,0CAA0C;QAC1C,MAAM,GAAG,MAAM,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAC5D,CAAC;SAAM,CAAC;QACN,wDAAwD;QACxD,MAAM,CAAC,GAAG,CACR,0DAA0D,EAC1D,YAAY,CACb,CAAC;QACF,MAAM,GAAG,MAAM,cAAc,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;IAC1D,CAAC;IAED,6BAA6B;IAC7B,IAAI,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9D,IAAI,CAAC;YACH,MAAM,eAAe,GACnB,KAAK,CAAC,eAAe,IAAI,wBAAwB,CAAC;YACpD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;YAEzD,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;YAC1D,CAAC;YAED,MAAM,eAAe,CAAC;gBACpB,eAAe,EAAE,KAAK,CAAC,eAAe;gBACtC,eAAe;gBACf,SAAS,EAAE,GAAG,CAAC,SAAS;gBACxB,UAAU;gBACV,GAAG;aACJ,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,YAAY,EAAE,CAAC;YACtB,MAAM,CAAC,KAAK,CAAC,gCAAgC,EAAE,YAAY,CAAC,CAAC;YAC7D,MAAM,YAAY,CAAC;QACrB,CAAC;IACH,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACxB,yCAAyC;QACzC,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,IAAI,CAAC;QACV,IAAI,EAAE,IAAI;QACV,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,IAAK;QACvB,IAAI,EAAE,YAAY;QAClB,eAAe,EAAE,MAAM,CAAC,MAAM,CAAC,gBAAgB;QAC/C,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;QAC9C,GAAG;QACH,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,eAAe,EAAE,KAAK,CAAC,eAAe,IAAI,wBAAwB;KACnE,CAAC,CAAC;AACL,CAAC,CACF,CAAC;AAmBF;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,GAAkB,EAClB,YAAoB,EACpB,KAAsB;IAEtB,yBAAyB;IACzB,MAAM,aAAa,GAAQ;QACzB,IAAI,EAAE,YAAY;KACnB,CAAC;IAEF,IAAI,KAAK,CAAC,mBAAmB,EAAE,CAAC;QAC9B,aAAa,CAAC,qBAAqB,GAAG,KAAK,CAAC,mBAAmB,CAAC;IAClE,CAAC;IAED,MAAM,cAAc,GAAG,MAAM,GAAG,CAAC,IAAI,CACnC,aAAa,GAAG,CAAC,SAAS,cAAc,EACxC,aAAa,CACd,CAAC;IAEF,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC;QACvB,OAAO,MAAM,cAAc,CACzB,cAAc,EACd,UAAU,EACV,aAAa,EACb,YAAY,CACb,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,MAAM,cAAc,CAAC,IAAI,EAAE,CAAyB,CAAC;AAC/D,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,GAAkB,EAClB,UAAmB;IAEnB,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,GAAG,CAC5B,aAAa,GAAG,CAAC,SAAS,gBAAgB,UAAU,EAAE,CACvD,CAAC;IAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,OAAO,MAAM,cAAc,CAAC,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;IAC9E,CAAC;IAED,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAyB,CAAC;AACzD,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,GAAkB,EAClB,UAAmB;IAEnB,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;QACvD,OAAO;IACT,CAAC;IAED,qBAAqB;IACrB,MAAM,cAAc,GAAG,MAAM,GAAG,CAAC,MAAM,CACrC,aAAa,GAAG,CAAC,SAAS,gBAAgB,UAAU,EAAE,CACvD,CAAC;IAEF,IAAI,CAAC,cAAc,CAAC,EAAE,IAAI,cAAc,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QACxD,MAAM,SAAS,GAAQ,MAAM,cAAc,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;YAC9D,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,cAAc,CAAC,UAAU,EAAE,CAAC;SACjD,CAAC,CAAC,CAAC;QACJ,MAAM,IAAI,kBAAkB,CAC1B,+BAA+B,UAAU,MAAM,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,cAAc,CAAC,UAAU,EAAE,EAC5G,cAAc,CACf,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,GAAkB,EAClB,IAAa;IAEb,6CAA6C;IAC7C,MAAM,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAEpE,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,GAAG,CAC5B,aAAa,GAAG,CAAC,SAAS,eAAe,WAAW,EAAE,CACvD,CAAC;IAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,kBAAkB,CAC1B,6BAA6B,QAAQ,CAAC,UAAU,EAAE,EAClD,QAAQ,CACT,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAOlC,CAAC;IAEF,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAClB,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,eAAe,CAAC;QAClE,MAAM,IAAI,KAAK,CAAC,6BAA6B,YAAY,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,yBAAyB;IACzB,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACtC,IAAI,EAAE,EAAE,CAAC,IAAI;QACb,EAAE,EAAE,EAAE,CAAC,IAAI;KACZ,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,GAAkB,EAClB,UAAkB,EAClB,KAAsB;IAEtB,MAAM,aAAa,GAAQ,EAAE,CAAC;IAE9B,kDAAkD;IAClD,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;QAC1B,aAAa,CAAC,gBAAgB,GAAG;YAC/B,IAAI,EAAE,KAAK,CAAC,eAAe,CAAC,IAAI;SACjC,CAAC;IACJ,CAAC;IAED,MAAM,cAAc,GAAG,MAAM,GAAG,CAAC,KAAK,CACpC,aAAa,GAAG,CAAC,SAAS,gBAAgB,UAAU,EAAE,EACtD,aAAa,CACd,CAAC;IAEF,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC;QACvB,OAAO,MAAM,cAAc,CACzB,cAAc,EACd,UAAU,EACV,aAAa,EACb,UAAU,CACX,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,MAAM,cAAc,CAAC,IAAI,EAAE,CAAyB,CAAC;AAC/D,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,OAAO,CACpB,GAAkB,EAClB,QAAwD,EACxD,UAAkB;IAElB,IAAI,QAAgB,CAAC;IAErB,+BAA+B;IAC/B,IAAI,IAAI,IAAI,QAAQ,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;QACpC,2BAA2B;QAC3B,QAAQ,GAAG,QAAQ,CAAC,EAAE,CAAC;IACzB,CAAC;SAAM,IAAI,MAAM,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC/C,qBAAqB;QACrB,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC;QAElE,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CACb,8BAA8B,QAAQ,CAAC,IAAI,yBAAyB,CACrE,CAAC;QACJ,CAAC;QAED,QAAQ,GAAG,OAAO,CAAC,EAAE,CAAC;IACxB,CAAC;SAAM,IAAI,MAAM,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5E,2BAA2B;QAC3B,QAAQ,GAAG,QAAQ,CAAC,EAAE,CAAC;IACzB,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC5E,CAAC;IAED,sBAAsB;IACtB,MAAM,CAAC,GAAG,CAAC,8BAA8B,QAAQ,OAAO,UAAU,EAAE,CAAC,CAAC;IACtE,MAAM,eAAe,CAAC,GAAG,EAAE;QACzB,gBAAgB,EAAE,QAAQ;QAC1B,gBAAgB,EAAE,UAAU;KAC7B,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import type { Context } from "../context.ts";
|
|
2
1
|
import { Resource } from "../resource.ts";
|
|
3
|
-
import
|
|
2
|
+
import { Secret } from "../secret.ts";
|
|
4
3
|
import { type CloudflareApiOptions } from "./api.ts";
|
|
5
4
|
/**
|
|
6
5
|
* Origin configuration for a PostgreSQL or MySQL database connection
|
|
7
6
|
*/
|
|
8
|
-
export interface
|
|
7
|
+
export interface HyperdrivePublicOrigin {
|
|
9
8
|
/**
|
|
10
9
|
* Database name
|
|
11
10
|
*/
|
|
@@ -18,7 +17,7 @@ export interface HyperdriveOrigin {
|
|
|
18
17
|
* Database password
|
|
19
18
|
* Use alchemy.secret() to securely store this value
|
|
20
19
|
*/
|
|
21
|
-
password: Secret;
|
|
20
|
+
password: string | Secret;
|
|
22
21
|
/**
|
|
23
22
|
* Database port
|
|
24
23
|
* @default 5432 for postgres, 3306 for mysql
|
|
@@ -46,7 +45,7 @@ export interface HyperdriveOriginWithAccess {
|
|
|
46
45
|
* Access client secret
|
|
47
46
|
* Use alchemy.secret() to securely store this value
|
|
48
47
|
*/
|
|
49
|
-
access_client_secret: Secret;
|
|
48
|
+
access_client_secret: string | Secret;
|
|
50
49
|
/**
|
|
51
50
|
* Database host
|
|
52
51
|
*/
|
|
@@ -98,6 +97,8 @@ export interface HyperdriveMtls {
|
|
|
98
97
|
*/
|
|
99
98
|
sslmode?: "verify-ca" | "verify-full";
|
|
100
99
|
}
|
|
100
|
+
export type HyperdriveOriginInput = string | Secret | HyperdrivePublicOrigin | HyperdriveOriginWithAccess;
|
|
101
|
+
export type HyperdriveOrigin = HyperdrivePublicOrigin | HyperdriveOriginWithAccess;
|
|
101
102
|
/**
|
|
102
103
|
* Properties for creating or updating a Cloudflare Hyperdrive.
|
|
103
104
|
*/
|
|
@@ -109,7 +110,7 @@ export interface HyperdriveProps extends CloudflareApiOptions {
|
|
|
109
110
|
/**
|
|
110
111
|
* Database connection origin configuration
|
|
111
112
|
*/
|
|
112
|
-
origin:
|
|
113
|
+
origin: HyperdriveOriginInput;
|
|
113
114
|
/**
|
|
114
115
|
* Caching configuration
|
|
115
116
|
*/
|
|
@@ -124,12 +125,19 @@ export interface HyperdriveProps extends CloudflareApiOptions {
|
|
|
124
125
|
* @internal
|
|
125
126
|
*/
|
|
126
127
|
hyperdriveId?: string;
|
|
128
|
+
dev?: {
|
|
129
|
+
/**
|
|
130
|
+
* The database connection origin configuration for local development
|
|
131
|
+
* @default origin
|
|
132
|
+
*/
|
|
133
|
+
origin?: HyperdriveOriginInput;
|
|
134
|
+
};
|
|
127
135
|
}
|
|
128
136
|
/**
|
|
129
137
|
* Output returned after Cloudflare Hyperdrive creation/update.
|
|
130
138
|
* IMPORTANT: The interface name MUST match the exported resource name.
|
|
131
139
|
*/
|
|
132
|
-
export interface Hyperdrive extends Resource<"cloudflare::Hyperdrive">, Omit<HyperdriveProps, "origin"> {
|
|
140
|
+
export interface Hyperdrive extends Resource<"cloudflare::Hyperdrive">, Omit<HyperdriveProps, "origin" | "dev"> {
|
|
133
141
|
/**
|
|
134
142
|
* The ID of the resource
|
|
135
143
|
*/
|
|
@@ -141,7 +149,17 @@ export interface Hyperdrive extends Resource<"cloudflare::Hyperdrive">, Omit<Hyp
|
|
|
141
149
|
/**
|
|
142
150
|
* Database connection origin configuration
|
|
143
151
|
*/
|
|
144
|
-
origin:
|
|
152
|
+
origin: HyperdrivePublicOrigin | HyperdriveOriginWithAccess;
|
|
153
|
+
/**
|
|
154
|
+
* Local development configuration
|
|
155
|
+
* @internal
|
|
156
|
+
*/
|
|
157
|
+
dev: {
|
|
158
|
+
/**
|
|
159
|
+
* The connection string to use for local development
|
|
160
|
+
*/
|
|
161
|
+
origin: Secret;
|
|
162
|
+
};
|
|
145
163
|
/**
|
|
146
164
|
* Resource type identifier for binding.
|
|
147
165
|
* @internal
|
|
@@ -226,5 +244,15 @@ export interface Hyperdrive extends Resource<"cloudflare::Hyperdrive">, Omit<Hyp
|
|
|
226
244
|
* }
|
|
227
245
|
* });
|
|
228
246
|
*/
|
|
229
|
-
export declare
|
|
247
|
+
export declare function Hyperdrive(id: string, props: HyperdriveProps): Promise<Hyperdrive>;
|
|
248
|
+
/**
|
|
249
|
+
* Converts a HyperdriveOriginInput to a HyperdriveOrigin.
|
|
250
|
+
* This includes:
|
|
251
|
+
* - parsing the origin from a string
|
|
252
|
+
* - ensuring the scheme is "postgres" or "mysql"
|
|
253
|
+
* - normalizing the port to a number with default values
|
|
254
|
+
* - wrapping secrets in a Secret object
|
|
255
|
+
* @internal - Exported for testing
|
|
256
|
+
*/
|
|
257
|
+
export declare const normalizeHyperdriveOrigin: (input: HyperdriveOriginInput) => Required<HyperdrivePublicOrigin> | Required<HyperdriveOriginWithAccess>;
|
|
230
258
|
//# sourceMappingURL=hyperdrive.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hyperdrive.d.ts","sourceRoot":"","sources":["../../src/cloudflare/hyperdrive.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"hyperdrive.d.ts","sourceRoot":"","sources":["../../src/cloudflare/hyperdrive.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
+
import { alchemy } from "../alchemy.js";
|
|
1
2
|
import { Resource } from "../resource.js";
|
|
3
|
+
import { Scope } from "../scope.js";
|
|
4
|
+
import { Secret } from "../secret.js";
|
|
2
5
|
import { logger } from "../util/logger.js";
|
|
3
6
|
import { handleApiError } from "./api-error.js";
|
|
4
7
|
import { createCloudflareApi } from "./api.js";
|
|
@@ -80,12 +83,36 @@ import { createCloudflareApi } from "./api.js";
|
|
|
80
83
|
* }
|
|
81
84
|
* });
|
|
82
85
|
*/
|
|
83
|
-
export
|
|
86
|
+
export async function Hyperdrive(id, props) {
|
|
87
|
+
const origin = normalizeHyperdriveOrigin(props.origin);
|
|
88
|
+
const dev = {
|
|
89
|
+
origin: toConnectionString(normalizeHyperdriveOrigin(props.dev?.origin ?? origin)),
|
|
90
|
+
force: Scope.current.local,
|
|
91
|
+
};
|
|
92
|
+
return await _Hyperdrive(id, {
|
|
93
|
+
...props,
|
|
94
|
+
origin,
|
|
95
|
+
dev,
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
const _Hyperdrive = Resource("cloudflare::Hyperdrive", async function (id, props) {
|
|
99
|
+
const hyperdriveId = props.hyperdriveId || this.output?.hyperdriveId;
|
|
100
|
+
if (this.scope.local) {
|
|
101
|
+
return this({
|
|
102
|
+
id,
|
|
103
|
+
hyperdriveId: hyperdriveId || "",
|
|
104
|
+
name: props.name,
|
|
105
|
+
origin: props.origin,
|
|
106
|
+
caching: props.caching,
|
|
107
|
+
mtls: props.mtls,
|
|
108
|
+
dev: props.dev,
|
|
109
|
+
type: "hyperdrive",
|
|
110
|
+
});
|
|
111
|
+
}
|
|
84
112
|
const api = await createCloudflareApi(props);
|
|
85
113
|
const configsPath = `/accounts/${api.accountId}/hyperdrive/configs`;
|
|
86
114
|
// For create operations, we don't have a hyperdriveId yet
|
|
87
115
|
// For update/delete operations, we need to use the hyperdriveId from props or output
|
|
88
|
-
const hyperdriveId = props.hyperdriveId || this.output?.hyperdriveId;
|
|
89
116
|
const configPath = hyperdriveId
|
|
90
117
|
? `${configsPath}/${hyperdriveId}`
|
|
91
118
|
: `${configsPath}`;
|
|
@@ -165,9 +192,10 @@ export const Hyperdrive = Resource("cloudflare::Hyperdrive", async function (id,
|
|
|
165
192
|
id,
|
|
166
193
|
hyperdriveId: apiResource.id, // Store the Cloudflare-assigned UUID
|
|
167
194
|
name: apiResource.name,
|
|
168
|
-
origin: props.origin,
|
|
195
|
+
origin: props.origin,
|
|
169
196
|
caching: apiResource.caching,
|
|
170
197
|
mtls: apiResource.mtls,
|
|
198
|
+
dev: props.dev,
|
|
171
199
|
type: "hyperdrive",
|
|
172
200
|
});
|
|
173
201
|
});
|
|
@@ -183,7 +211,7 @@ function prepareRequestBody(props) {
|
|
|
183
211
|
// Regular origin with password
|
|
184
212
|
requestBody.origin = {
|
|
185
213
|
...props.origin,
|
|
186
|
-
password: props.origin.password
|
|
214
|
+
password: Secret.unwrap(props.origin.password),
|
|
187
215
|
scheme: props.origin.scheme ?? "postgres",
|
|
188
216
|
};
|
|
189
217
|
}
|
|
@@ -191,9 +219,67 @@ function prepareRequestBody(props) {
|
|
|
191
219
|
// Origin with access client secret
|
|
192
220
|
requestBody.origin = {
|
|
193
221
|
...props.origin,
|
|
194
|
-
access_client_secret: props.origin.access_client_secret
|
|
222
|
+
access_client_secret: Secret.unwrap(props.origin.access_client_secret),
|
|
195
223
|
};
|
|
196
224
|
}
|
|
197
225
|
return requestBody;
|
|
198
226
|
}
|
|
227
|
+
/**
|
|
228
|
+
* Converts a HyperdriveOriginInput to a HyperdriveOrigin.
|
|
229
|
+
* This includes:
|
|
230
|
+
* - parsing the origin from a string
|
|
231
|
+
* - ensuring the scheme is "postgres" or "mysql"
|
|
232
|
+
* - normalizing the port to a number with default values
|
|
233
|
+
* - wrapping secrets in a Secret object
|
|
234
|
+
* @internal - Exported for testing
|
|
235
|
+
*/
|
|
236
|
+
export const normalizeHyperdriveOrigin = (input) => {
|
|
237
|
+
const origin = Secret.unwrap(input);
|
|
238
|
+
if (typeof origin === "string") {
|
|
239
|
+
const url = new URL(origin);
|
|
240
|
+
const scheme = normalizeScheme(url.protocol.slice(0, -1));
|
|
241
|
+
return {
|
|
242
|
+
scheme,
|
|
243
|
+
user: url.username,
|
|
244
|
+
password: alchemy.secret(url.password),
|
|
245
|
+
host: url.hostname,
|
|
246
|
+
port: normalizePort(scheme, url.port),
|
|
247
|
+
database: url.pathname.slice(1),
|
|
248
|
+
};
|
|
249
|
+
}
|
|
250
|
+
const scheme = normalizeScheme(origin.scheme);
|
|
251
|
+
return {
|
|
252
|
+
...origin,
|
|
253
|
+
...("password" in origin && {
|
|
254
|
+
password: Secret.wrap(origin.password),
|
|
255
|
+
}),
|
|
256
|
+
...("access_client_secret" in origin && {
|
|
257
|
+
access_client_secret: Secret.wrap(origin.access_client_secret),
|
|
258
|
+
}),
|
|
259
|
+
scheme,
|
|
260
|
+
port: normalizePort(scheme, origin.port),
|
|
261
|
+
};
|
|
262
|
+
};
|
|
263
|
+
const normalizeScheme = (scheme) => {
|
|
264
|
+
if (!scheme || scheme === "postgres" || scheme === "postgresql") {
|
|
265
|
+
return "postgres";
|
|
266
|
+
}
|
|
267
|
+
if (scheme === "mysql" || scheme === "mysql2") {
|
|
268
|
+
return "mysql";
|
|
269
|
+
}
|
|
270
|
+
throw new Error(`Unsupported database connection scheme "${scheme}" for Hyperdrive (expected "postgres" or "mysql")`);
|
|
271
|
+
};
|
|
272
|
+
const normalizePort = (scheme, port) => {
|
|
273
|
+
if (typeof port === "number") {
|
|
274
|
+
return port;
|
|
275
|
+
}
|
|
276
|
+
if (port) {
|
|
277
|
+
return Number.parseInt(port);
|
|
278
|
+
}
|
|
279
|
+
return scheme === "postgres" ? 5432 : 3306;
|
|
280
|
+
};
|
|
281
|
+
const toConnectionString = (origin) => {
|
|
282
|
+
const password = Secret.unwrap("password" in origin ? origin.password : origin.access_client_secret);
|
|
283
|
+
return new Secret(`${origin.scheme}://${origin.user}:${password}@${origin.host}:${origin.port}/${origin.database}`);
|
|
284
|
+
};
|
|
199
285
|
//# sourceMappingURL=hyperdrive.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hyperdrive.js","sourceRoot":"","sources":["../../src/cloudflare/hyperdrive.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"hyperdrive.js","sourceRoot":"","sources":["../../src/cloudflare/hyperdrive.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { Context } from "../context.ts";
|
|
2
1
|
import { Resource } from "../resource.ts";
|
|
3
2
|
import { type CloudflareApi, type CloudflareApiOptions } from "./api.ts";
|
|
4
3
|
/**
|
|
@@ -37,6 +36,11 @@ export interface KVNamespaceProps extends CloudflareApiOptions {
|
|
|
37
36
|
* @default false
|
|
38
37
|
*/
|
|
39
38
|
remote?: boolean;
|
|
39
|
+
/**
|
|
40
|
+
* Whether to force the KV namespace to be created or updated
|
|
41
|
+
* @default false
|
|
42
|
+
*/
|
|
43
|
+
force?: boolean;
|
|
40
44
|
};
|
|
41
45
|
}
|
|
42
46
|
/**
|
|
@@ -68,7 +72,7 @@ export declare function isKVNamespace(resource: Resource): resource is KVNamespa
|
|
|
68
72
|
/**
|
|
69
73
|
* Output returned after KV Namespace creation/update
|
|
70
74
|
*/
|
|
71
|
-
export interface KVNamespace extends Resource<"cloudflare::KVNamespace">, Omit<KVNamespaceProps, "delete"> {
|
|
75
|
+
export interface KVNamespace extends Resource<"cloudflare::KVNamespace">, Omit<KVNamespaceProps, "delete" | "dev"> {
|
|
72
76
|
type: "kv_namespace";
|
|
73
77
|
/**
|
|
74
78
|
* The ID of the namespace
|
|
@@ -82,6 +86,20 @@ export interface KVNamespace extends Resource<"cloudflare::KVNamespace">, Omit<K
|
|
|
82
86
|
* Time at which the namespace was last modified
|
|
83
87
|
*/
|
|
84
88
|
modifiedAt: number;
|
|
89
|
+
/**
|
|
90
|
+
* Development mode properties
|
|
91
|
+
* @internal
|
|
92
|
+
*/
|
|
93
|
+
dev: {
|
|
94
|
+
/**
|
|
95
|
+
* The ID of the KV namespace in development mode
|
|
96
|
+
*/
|
|
97
|
+
id: string;
|
|
98
|
+
/**
|
|
99
|
+
* Whether the KV namespace is running remotely
|
|
100
|
+
*/
|
|
101
|
+
remote: boolean;
|
|
102
|
+
};
|
|
85
103
|
}
|
|
86
104
|
/**
|
|
87
105
|
* A Cloudflare KV Namespace is a key-value store that can be used to store data for your application.
|
|
@@ -137,11 +155,12 @@ export interface KVNamespace extends Resource<"cloudflare::KVNamespace">, Omit<K
|
|
|
137
155
|
* delete: false
|
|
138
156
|
* });
|
|
139
157
|
*/
|
|
140
|
-
export declare
|
|
158
|
+
export declare function KVNamespace(id: string, props?: KVNamespaceProps): Promise<KVNamespace>;
|
|
141
159
|
export declare function createKVNamespace(api: CloudflareApi, props: KVNamespaceProps & {
|
|
142
160
|
title: string;
|
|
143
161
|
}): Promise<{
|
|
144
|
-
|
|
162
|
+
namespaceId: string;
|
|
163
|
+
createdAt: number;
|
|
145
164
|
}>;
|
|
146
165
|
export declare function deleteKVNamespace(api: CloudflareApi, namespaceId: string): Promise<void>;
|
|
147
166
|
export declare function insertKVRecords(api: CloudflareApi, namespaceId: string, props: KVNamespaceProps): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kv-namespace.d.ts","sourceRoot":"","sources":["../../src/cloudflare/kv-namespace.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"kv-namespace.d.ts","sourceRoot":"","sources":["../../src/cloudflare/kv-namespace.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAgB,MAAM,gBAAgB,CAAC;AAQxD,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,oBAAoB,EAC1B,MAAM,UAAU,CAAC;AAGlB;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,oBAAoB;IAC5D;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAElB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,GAAG,CAAC,EAAE;QACJ;;;WAGG;QACH,MAAM,CAAC,EAAE,OAAO,CAAC;QAEjB;;;WAGG;QACH,KAAK,CAAC,EAAE,OAAO,CAAC;KACjB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IAEvB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,QAAQ,CAAC,EAAE,GAAG,CAAC;CAChB;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,QAAQ,IAAI,WAAW,CAEzE;AAED;;GAEG;AACH,MAAM,WAAW,WACf,SAAQ,QAAQ,CAAC,yBAAyB,CAAC,EACzC,IAAI,CAAC,gBAAgB,EAAE,QAAQ,GAAG,KAAK,CAAC;IAC1C,IAAI,EAAE,cAAc,CAAC;IACrB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,GAAG,EAAE;QACH;;WAEG;QACH,EAAE,EAAE,MAAM,CAAC;QAEX;;WAEG;QACH,MAAM,EAAE,OAAO,CAAC;KACjB,CAAC;CACH;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,wBAAsB,WAAW,CAC/B,EAAE,EAAE,MAAM,EACV,KAAK,GAAE,gBAAqB,GAC3B,OAAO,CAAC,WAAW,CAAC,CAQtB;AAgED,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,gBAAgB,GAAG;IACxB,KAAK,EAAE,MAAM,CAAC;CACf,GACA,OAAO,CAAC;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CAsCrD;AAED,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,aAAa,EAClB,WAAW,EAAE,MAAM,iBAUpB;AAED,wBAAsB,eAAe,CACnC,GAAG,EAAE,aAAa,EAClB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,gBAAgB,iBA8DxB;AAYD;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,CAiDpD"}
|