alchemy 0.49.1 → 0.50.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.
Files changed (39) hide show
  1. package/lib/cloudflare/api-response.d.ts +2 -2
  2. package/lib/cloudflare/api-response.d.ts.map +1 -1
  3. package/lib/cloudflare/api-response.js +2 -1
  4. package/lib/cloudflare/api-response.js.map +1 -1
  5. package/lib/cloudflare/bucket.d.ts +70 -105
  6. package/lib/cloudflare/bucket.d.ts.map +1 -1
  7. package/lib/cloudflare/bucket.js +127 -244
  8. package/lib/cloudflare/bucket.js.map +1 -1
  9. package/lib/cloudflare/nuxt.js +1 -1
  10. package/lib/cloudflare/nuxt.js.map +1 -1
  11. package/lib/cloudflare/orange.d.ts.map +1 -1
  12. package/lib/cloudflare/orange.js +4 -1
  13. package/lib/cloudflare/orange.js.map +1 -1
  14. package/lib/cloudflare/redwood.d.ts.map +1 -1
  15. package/lib/cloudflare/redwood.js +5 -1
  16. package/lib/cloudflare/redwood.js.map +1 -1
  17. package/lib/cloudflare/vite.d.ts.map +1 -1
  18. package/lib/cloudflare/vite.js +2 -10
  19. package/lib/cloudflare/vite.js.map +1 -1
  20. package/lib/cloudflare/website.d.ts.map +1 -1
  21. package/lib/cloudflare/website.js +1 -0
  22. package/lib/cloudflare/website.js.map +1 -1
  23. package/lib/cloudflare/worker.d.ts.map +1 -1
  24. package/lib/cloudflare/worker.js +1 -0
  25. package/lib/cloudflare/worker.js.map +1 -1
  26. package/lib/os/exec.d.ts +1 -1
  27. package/lib/os/exec.d.ts.map +1 -1
  28. package/lib/os/exec.js +1 -1
  29. package/lib/os/exec.js.map +1 -1
  30. package/package.json +1 -1
  31. package/src/cloudflare/api-response.ts +7 -3
  32. package/src/cloudflare/bucket.ts +276 -468
  33. package/src/cloudflare/nuxt.ts +1 -1
  34. package/src/cloudflare/orange.ts +4 -1
  35. package/src/cloudflare/redwood.ts +6 -1
  36. package/src/cloudflare/vite.ts +2 -10
  37. package/src/cloudflare/website.ts +1 -0
  38. package/src/cloudflare/worker.ts +2 -1
  39. package/src/os/exec.ts +2 -2
@@ -1,10 +1,10 @@
1
- import { AwsClient } from "aws4fetch";
1
+ import { isDeepStrictEqual } from "node:util";
2
2
  import { Resource, ResourceKind } from "../resource.js";
3
3
  import { bind } from "../runtime/bind.js";
4
- import { logger } from "../util/logger.js";
5
4
  import { withExponentialBackoff } from "../util/retry.js";
6
- import { CloudflareApiError, handleApiError } from "./api-error.js";
7
- import { createCloudflareApi } from "./api.js";
5
+ import { CloudflareApiError } from "./api-error.js";
6
+ import { extractCloudflareError, extractCloudflareResult, } from "./api-response.js";
7
+ import { createCloudflareApi, } from "./api.js";
8
8
  export function isBucket(resource) {
9
9
  return resource[ResourceKind] === "cloudflare::R2Bucket";
10
10
  }
@@ -69,78 +69,64 @@ export async function R2Bucket(name, props = {}) {
69
69
  const R2BucketResource = Resource("cloudflare::R2Bucket", async function (_id, props = {}) {
70
70
  const api = await createCloudflareApi(props);
71
71
  const bucketName = props.name || this.id;
72
- if (this.phase === "delete") {
73
- if (props.delete !== false) {
74
- if (props.empty) {
75
- logger.log("Emptying R2 bucket:", bucketName);
76
- const r2Client = await createR2Client({
77
- ...props,
78
- accountId: api.accountId,
79
- accessKeyId: props.accessKey ?? this.output.accessKey,
80
- secretAccessKey: props.secretAccessKey ?? this.output.secretAccessKey,
81
- });
82
- // Empty the bucket first by deleting all objects
83
- await emptyBucket(r2Client, bucketName, props.jurisdiction);
72
+ const allowPublicAccess = props.allowPublicAccess === true;
73
+ switch (this.phase) {
74
+ case "create": {
75
+ const bucket = await createBucket(api, bucketName, props).catch(async (err) => {
76
+ if (err instanceof CloudflareApiError &&
77
+ err.status === 409 &&
78
+ props.adopt) {
79
+ return await getBucket(api, bucketName, props);
80
+ }
81
+ throw err;
82
+ });
83
+ const domain = await putManagedDomain(api, bucketName, allowPublicAccess, props.jurisdiction);
84
+ if (props.cors?.length) {
85
+ await putBucketCORS(api, bucketName, props);
84
86
  }
85
- await deleteBucket(api, bucketName, props);
87
+ return this({
88
+ name: bucketName,
89
+ location: bucket.location,
90
+ creationDate: new Date(bucket.creation_date),
91
+ jurisdiction: bucket.jurisdiction,
92
+ allowPublicAccess,
93
+ domain,
94
+ type: "r2_bucket",
95
+ accountId: api.accountId,
96
+ cors: props.cors,
97
+ dev: props.dev,
98
+ });
86
99
  }
87
- // Return void (a deleted bucket has no content)
88
- return this.destroy();
89
- }
90
- if (this.phase === "create") {
91
- try {
92
- await createBucket(api, bucketName, props);
100
+ case "update": {
101
+ if (bucketName !== this.output.name) {
102
+ throw new Error(`Cannot update R2Bucket name after creation. Bucket name is immutable. Before: ${this.output.name}, After: ${bucketName}`);
103
+ }
104
+ let domain = this.output.domain;
105
+ if (!!domain !== allowPublicAccess) {
106
+ domain = await putManagedDomain(api, bucketName, allowPublicAccess, props.jurisdiction);
107
+ }
108
+ if (!isDeepStrictEqual(this.output.cors ?? [], props.cors ?? [])) {
109
+ await putBucketCORS(api, bucketName, props);
110
+ }
111
+ return this({
112
+ ...this.output,
113
+ allowPublicAccess,
114
+ dev: props.dev,
115
+ cors: props.cors,
116
+ domain,
117
+ });
93
118
  }
94
- catch (err) {
95
- if (err instanceof CloudflareApiError && err.status === 409) {
96
- if (!props.adopt) {
97
- throw err;
119
+ case "delete": {
120
+ if (props.delete !== false) {
121
+ if (props.empty) {
122
+ await emptyBucket(api, bucketName, props);
98
123
  }
124
+ await deleteBucket(api, bucketName, props);
99
125
  }
100
- else {
101
- throw err;
102
- }
126
+ return this.destroy();
103
127
  }
104
128
  }
105
- if (this.phase === "update" && bucketName !== this.output.name) {
106
- throw new Error(`Cannot update R2Bucket name after creation. Bucket name is immutable. Before: ${this.output.name}, After: ${bucketName}`);
107
- }
108
- await updatePublicAccess(api, bucketName, props.allowPublicAccess === true, props.jurisdiction);
109
- return this({
110
- name: bucketName,
111
- location: props.locationHint || "default",
112
- creationDate: new Date(),
113
- jurisdiction: props.jurisdiction || "default",
114
- type: "r2_bucket",
115
- accountId: api.accountId,
116
- dev: props.dev,
117
- });
118
129
  });
119
- /**
120
- * Creates an aws4fetch client configured for Cloudflare R2
121
- *
122
- * @see https://developers.cloudflare.com/r2/examples/aws/aws-sdk-js-v3/
123
- */
124
- export function createR2Client(config) {
125
- const accountId = config?.accountId ?? process.env.CLOUDFLARE_ACCOUNT_ID;
126
- const accessKeyId = config?.accessKeyId?.unencrypted || process.env.R2_ACCESS_KEY_ID;
127
- const secretAccessKey = config?.secretAccessKey?.unencrypted || process.env.R2_SECRET_ACCESS_KEY;
128
- if (!accountId) {
129
- throw new Error("CLOUDFLARE_ACCOUNT_ID environment variable is required");
130
- }
131
- if (!accessKeyId || !secretAccessKey) {
132
- throw new Error("R2_ACCESS_KEY_ID and R2_SECRET_ACCESS_KEY environment variables are required");
133
- }
134
- // Create aws4fetch client with Cloudflare R2 endpoint
135
- const client = new AwsClient({
136
- accessKeyId,
137
- secretAccessKey,
138
- service: "s3",
139
- region: "auto",
140
- });
141
- client.accountId = accountId;
142
- return client;
143
- }
144
130
  /**
145
131
  * Adds jurisdiction header to the headers object if specified in props
146
132
  *
@@ -148,203 +134,93 @@ export function createR2Client(config) {
148
134
  * @param props Props or jurisdiction string
149
135
  * @returns Modified headers object
150
136
  */
151
- export function withJurisdiction(headers, props) {
152
- // Clone the headers object to avoid modifying the original
153
- const result = { ...headers };
154
- let jurisdiction;
155
- if (typeof props === "string") {
156
- jurisdiction = props;
157
- }
158
- else if (props && "jurisdiction" in props) {
159
- jurisdiction = props.jurisdiction;
137
+ export function withJurisdiction(props, headers = {}) {
138
+ if (props.jurisdiction && props.jurisdiction !== "default") {
139
+ headers["cf-r2-jurisdiction"] = props.jurisdiction;
160
140
  }
161
- if (jurisdiction && jurisdiction !== "default") {
162
- result["cf-r2-jurisdiction"] = jurisdiction;
163
- }
164
- return result;
141
+ return headers;
165
142
  }
166
143
  /**
167
144
  * Get a bucket
168
145
  */
169
146
  export async function getBucket(api, bucketName, props = {}) {
170
- const headers = withJurisdiction({}, props);
171
- const getResponse = await api.get(`/accounts/${api.accountId}/r2/buckets/${bucketName}`, { headers });
172
- if (!getResponse.ok) {
173
- return await handleApiError(getResponse, "get", "R2 bucket", bucketName);
174
- }
175
- if (getResponse.status === 200) {
176
- return (await getResponse.json());
177
- }
178
- const errorData = await getResponse.json().catch(() => ({
179
- errors: [{ message: getResponse.statusText }],
147
+ return await extractCloudflareResult(`get R2 bucket "${bucketName}"`, api.get(`/accounts/${api.accountId}/r2/buckets/${bucketName}`, {
148
+ headers: withJurisdiction(props),
180
149
  }));
181
- throw new CloudflareApiError(`Error getting R2 bucket '${bucketName}': ${errorData.errors?.[0]?.message || getResponse.statusText}`, getResponse);
182
150
  }
183
151
  /**
184
152
  * Create a new bucket
185
153
  */
186
154
  export async function createBucket(api, bucketName, props = {}) {
187
- // Create new R2 bucket
188
- const createPayload = {
155
+ return await extractCloudflareResult(`create R2 bucket "${bucketName}"`, api.post(`/accounts/${api.accountId}/r2/buckets`, {
189
156
  name: bucketName,
190
- };
191
- if (props.locationHint) {
192
- createPayload.location_hint = props.locationHint;
193
- }
194
- const headers = withJurisdiction({}, props);
195
- const createResponse = await api.post(`/accounts/${api.accountId}/r2/buckets`, createPayload, { headers });
196
- if (!createResponse.ok) {
197
- return await handleApiError(createResponse, "creating", "R2 bucket", bucketName);
198
- }
199
- return (await createResponse.json());
157
+ locationHint: props.locationHint,
158
+ storageClass: props.storageClass,
159
+ }, {
160
+ headers: withJurisdiction(props),
161
+ }));
200
162
  }
201
163
  /**
202
164
  * Delete a bucket
203
165
  */
204
166
  export async function deleteBucket(api, bucketName, props) {
205
- // Delete R2 bucket
206
- const headers = withJurisdiction({}, props);
207
- const deleteResponse = await api.delete(`/accounts/${api.accountId}/r2/buckets/${bucketName}`, { headers });
208
- if (!deleteResponse.ok && deleteResponse.status !== 404) {
209
- const errorData = await deleteResponse.json().catch(() => ({
210
- errors: [{ message: deleteResponse.statusText }],
211
- }));
212
- throw new CloudflareApiError(`Error deleting R2 bucket '${bucketName}': ${errorData.errors?.[0]?.message || deleteResponse.statusText}`, deleteResponse);
213
- }
214
- }
215
- /**
216
- * List objects in an R2 bucket
217
- *
218
- * @param r2 R2Client instance
219
- * @param bucketName Name of the bucket
220
- * @param continuationToken Optional token for pagination
221
- * @param jurisdiction Optional jurisdiction for the bucket
222
- * @returns Object containing the list of objects and the next continuation token
223
- */
224
- export async function listObjects(r2, bucketName, continuationToken, jurisdiction) {
225
- // List objects in the bucket
226
- const url = new URL(`https://${r2.accountId}.r2.cloudflarestorage.com/${bucketName}`);
227
- if (continuationToken) {
228
- url.searchParams.set("continuation-token", continuationToken);
229
- }
230
- url.searchParams.set("list-type", "2");
231
- const headers = withJurisdiction({}, jurisdiction);
232
- const listResponse = await r2.fetch(url.toString(), { headers });
233
- if (!listResponse.ok) {
234
- throw new CloudflareApiError(`Failed to list objects: ${listResponse.statusText}`, listResponse);
235
- }
236
- const responseText = await listResponse.text();
237
- // Extract objects from XML response using regex
238
- const keyRegex = /<Key>([^<]+)<\/Key>/g;
239
- const objects = [];
240
- let match;
241
- while ((match = keyRegex.exec(responseText)) !== null) {
242
- objects.push({ Key: match[1] });
243
- }
244
- // Get continuation token if present using regex
245
- const tokenMatch = /<NextContinuationToken>([^<]+)<\/NextContinuationToken>/.exec(responseText);
246
- const nextContinuationToken = tokenMatch ? tokenMatch[1] : undefined;
247
- return { objects, continuationToken: nextContinuationToken };
248
- }
249
- /**
250
- * Helper function to empty a bucket by deleting all objects
251
- */
252
- export async function emptyBucket(r2, bucketName, jurisdiction) {
253
- let continuationToken;
254
- let totalDeleted = 0;
255
167
  try {
256
- do {
257
- logger.log(`Listing objects in bucket ${bucketName}`);
258
- // List objects in the bucket
259
- const { objects, continuationToken: nextToken } = await listObjects(r2, bucketName, continuationToken, jurisdiction);
260
- continuationToken = nextToken;
261
- logger.log(`Found ${objects.length} objects in bucket ${bucketName}`);
262
- // Delete objects in batches
263
- if (objects.length > 0) {
264
- // Process delete in batches of 1000 (S3 limit)
265
- for (let i = 0; i < objects.length; i += 1000) {
266
- const batch = objects.slice(i, i + 1000);
267
- // Create DeleteObjects request XML
268
- const deleteXml = `
269
- <Delete>
270
- ${batch.map((obj) => `<Object><Key>${obj.Key}</Key></Object>`).join("")}
271
- </Delete>
272
- `;
273
- const deleteUrl = new URL(`https://${r2.accountId}.r2.cloudflarestorage.com/${bucketName}?delete`);
274
- logger.log(`Deleting ${batch.length} objects from bucket ${bucketName}`);
275
- const headers = withJurisdiction({ "Content-Type": "application/xml" }, jurisdiction);
276
- const deleteResponse = await r2.fetch(deleteUrl.toString(), {
277
- method: "POST",
278
- body: deleteXml,
279
- headers,
280
- });
281
- if (!deleteResponse.ok) {
282
- throw new CloudflareApiError(`Failed to delete objects: ${deleteResponse.statusText}`, deleteResponse);
283
- }
284
- totalDeleted += batch.length;
285
- }
286
- }
287
- } while (continuationToken);
288
- logger.log(`Successfully emptied bucket ${bucketName}, deleted ${totalDeleted} objects total`);
168
+ await extractCloudflareResult(`delete R2 bucket "${bucketName}"`, api.delete(`/accounts/${api.accountId}/r2/buckets/${bucketName}`, {
169
+ headers: withJurisdiction(props),
170
+ }));
289
171
  }
290
172
  catch (error) {
291
173
  if (error instanceof CloudflareApiError && error.status === 404) {
292
- // the bucket was not found
293
174
  return;
294
175
  }
295
- logger.error(`Failed to empty bucket ${bucketName}:`, error);
296
176
  throw error;
297
177
  }
298
178
  }
299
179
  /**
300
- * Update public access setting for a bucket
301
- *
302
- * This operation is not available through the S3 API for R2,
303
- * so we still use the Cloudflare API directly.
180
+ * Update the managed domain setting for a bucket
304
181
  */
305
- export async function updatePublicAccess(api, bucketName, allowPublicAccess, jurisdiction) {
306
- const headers = withJurisdiction({}, jurisdiction);
307
- await withExponentialBackoff(async () => {
308
- const response = await api.put(`/accounts/${api.accountId}/r2/buckets/${bucketName}/domains/managed`, {
309
- enabled: allowPublicAccess,
310
- }, { headers });
311
- if (!response.ok) {
312
- await handleApiError(response, "updating public access for", "R2 bucket", bucketName);
313
- }
182
+ export async function putManagedDomain(api, bucketName, enabled, jurisdiction) {
183
+ return await withExponentialBackoff(async () => {
184
+ const result = await extractCloudflareResult(`put R2 bucket managed domain for "${bucketName}"`, api.put(`/accounts/${api.accountId}/r2/buckets/${bucketName}/domains/managed`, { enabled }, { headers: withJurisdiction({ jurisdiction }) }));
185
+ return result.enabled ? result.domain : undefined;
314
186
  }, (err) => err.status === 404, 10, 1000);
315
187
  }
316
188
  /**
317
- * Set CORS configuration for a bucket using aws4fetch
189
+ * Delete all objects in a bucket
318
190
  */
319
- export async function setCorsConfiguration(r2, bucketName, allowedOrigins = ["*"], allowedMethods = ["GET", "HEAD", "PUT", "POST", "DELETE"], allowedHeaders = ["*"], maxAgeSeconds = 3600, jurisdiction) {
320
- try {
321
- // Construct CORS XML configuration
322
- const corsXml = `
323
- <CORSConfiguration>
324
- <CORSRule>
325
- ${allowedOrigins.map((origin) => `<AllowedOrigin>${origin}</AllowedOrigin>`).join("")}
326
- ${allowedMethods.map((method) => `<AllowedMethod>${method}</AllowedMethod>`).join("")}
327
- ${allowedHeaders.map((header) => `<AllowedHeader>${header}</AllowedHeader>`).join("")}
328
- <ExposeHeader>ETag</ExposeHeader>
329
- <MaxAgeSeconds>${maxAgeSeconds}</MaxAgeSeconds>
330
- </CORSRule>
331
- </CORSConfiguration>
332
- `;
333
- const url = new URL(`https://${r2.accountId}.r2.cloudflarestorage.com/${bucketName}?cors`);
334
- const headers = withJurisdiction({ "Content-Type": "application/xml" }, jurisdiction);
335
- const response = await r2.fetch(url.toString(), {
336
- method: "PUT",
337
- body: corsXml,
338
- headers,
339
- });
340
- if (!response.ok) {
341
- throw new CloudflareApiError(`Failed to set CORS configuration: ${response.statusText}`, response);
191
+ async function emptyBucket(api, bucketName, props) {
192
+ let batch = [];
193
+ for await (const key of listObjects(api, bucketName, props)) {
194
+ batch.push(extractCloudflareResult(`delete R2 object "${key}"`, api.delete(`/accounts/${api.accountId}/r2/buckets/${bucketName}/objects/${key}`, { headers: withJurisdiction(props) })));
195
+ if (batch.length >= 10) {
196
+ // this is an arbitary batch size, open to feedback
197
+ await Promise.all(batch);
198
+ batch = [];
342
199
  }
343
- logger.log(`Successfully set CORS configuration for bucket ${bucketName}`);
344
200
  }
345
- catch (error) {
346
- logger.error(`Failed to set CORS configuration for bucket ${bucketName}:`, error);
347
- throw error;
201
+ await Promise.all(batch);
202
+ }
203
+ /**
204
+ * Returns an async iterable of all object keys in a bucket,
205
+ * handling pagination automatically.
206
+ */
207
+ export async function* listObjects(api, bucketName, props, cursor) {
208
+ const params = new URLSearchParams({
209
+ per_page: "1000",
210
+ });
211
+ if (cursor) {
212
+ params.set("cursor", cursor);
213
+ }
214
+ const response = await api.get(`/accounts/${api.accountId}/r2/buckets/${bucketName}/objects?${params.toString()}`, { headers: withJurisdiction(props) });
215
+ if (!response.ok) {
216
+ throw new Error(`Failed to list objects in bucket "${bucketName}": ${await extractCloudflareError(response)}`);
217
+ }
218
+ const json = await response.json();
219
+ for (const object of json.result) {
220
+ yield object.key;
221
+ }
222
+ if (json.result_info?.is_truncated && json.result_info.cursor) {
223
+ yield* listObjects(api, bucketName, props, json.result_info.cursor);
348
224
  }
349
225
  }
350
226
  /**
@@ -371,22 +247,29 @@ export async function listBuckets(api, options = {}) {
371
247
  }
372
248
  // Build URL with query parameters
373
249
  const path = `/accounts/${api.accountId}/r2/buckets${params.toString() ? `?${params.toString()}` : ""}`;
374
- // Set jurisdiction header if provided
375
- const headers = withJurisdiction({}, options.jurisdiction);
376
250
  // Make the API request
377
- const response = await api.get(path, { headers });
378
- if (!response.ok) {
379
- throw new CloudflareApiError(`Failed to list buckets: ${response.statusText}`, response);
251
+ const result = await extractCloudflareResult("list R2 buckets", api.get(path, {
252
+ headers: withJurisdiction(options),
253
+ }));
254
+ return result.buckets;
255
+ }
256
+ export async function putBucketCORS(api, bucketName, props) {
257
+ let request;
258
+ if (props.cors?.length) {
259
+ request = {
260
+ method: "PUT",
261
+ body: JSON.stringify({ rules: props.cors }),
262
+ headers: withJurisdiction(props, {
263
+ "Content-Type": "application/json",
264
+ }),
265
+ };
380
266
  }
381
- const data = (await response.json());
382
- if (!data.success) {
383
- const errorMessage = data.errors?.[0]?.message || "Unknown error";
384
- throw new Error(`Failed to list buckets: ${errorMessage}`);
267
+ else {
268
+ request = {
269
+ method: "DELETE",
270
+ headers: withJurisdiction(props),
271
+ };
385
272
  }
386
- // Transform API response to R2BucketInfo objects
387
- return (data.result?.buckets || []).map((bucket) => ({
388
- Name: bucket.name,
389
- CreationDate: new Date(bucket.creation_date),
390
- }));
273
+ await extractCloudflareResult(`${request.method} R2 bucket CORS rules for "${bucketName}"`, api.fetch(`/accounts/${api.accountId}/r2/buckets/${bucketName}/cors`, request));
391
274
  }
392
275
  //# sourceMappingURL=bucket.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bucket.js","sourceRoot":"","sources":["../../src/cloudflare/bucket.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bucket.js","sourceRoot":"","sources":["../../src/cloudflare/bucket.ts"],"names":[],"mappings":"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"}
@@ -33,7 +33,7 @@ export async function Nuxt(id, props) {
33
33
  ...props,
34
34
  noBundle: props?.noBundle ?? true,
35
35
  // Default build command, can be overridden by props.command
36
- command: props?.command ?? "bun run build",
36
+ command: props?.command ?? "nuxt build",
37
37
  // Default entry point for cloudflare-module preset
38
38
  main: props?.main ?? "./.output/server/index.mjs",
39
39
  // Default static assets directory for cloudflare-module preset
@@ -1 +1 @@
1
- {"version":3,"file":"nuxt.js","sourceRoot":"","sources":["../../src/cloudflare/nuxt.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,OAAO,EAAE,OAAO,EAAqB,MAAM,cAAc,CAAC;AAkB1D;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,CAAC,KAAK,UAAU,IAAI,CACxB,EAAU,EACV,KAA6B;IAE7B,0DAA0D;IAC1D,OAAO,OAAO,CAAC,EAAE,EAAE;QACjB,GAAG,KAAK;QACR,QAAQ,EAAE,KAAK,EAAE,QAAQ,IAAI,IAAI;QACjC,4DAA4D;QAC5D,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,eAAe;QAC1C,mDAAmD;QACnD,IAAI,EAAE,KAAK,EAAE,IAAI,IAAI,4BAA4B;QACjD,+DAA+D;QAC/D,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC;QACvD,+DAA+D;QAC/D,kBAAkB,EAAE,CAAC,eAAe,EAAE,GAAG,CAAC,KAAK,EAAE,kBAAkB,IAAI,EAAE,CAAC,CAAC;QAC3E,qEAAqE;QACrE,QAAQ,EAAE,KAAK,EAAE,QAAQ,IAAI,IAAI;QACjC,GAAG,EAAE,KAAK,EAAE,GAAG,IAAI;YACjB,OAAO,EAAE,UAAU;SACpB;KACF,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"nuxt.js","sourceRoot":"","sources":["../../src/cloudflare/nuxt.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,OAAO,EAAE,OAAO,EAAqB,MAAM,cAAc,CAAC;AAkB1D;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,CAAC,KAAK,UAAU,IAAI,CACxB,EAAU,EACV,KAA6B;IAE7B,0DAA0D;IAC1D,OAAO,OAAO,CAAC,EAAE,EAAE;QACjB,GAAG,KAAK;QACR,QAAQ,EAAE,KAAK,EAAE,QAAQ,IAAI,IAAI;QACjC,4DAA4D;QAC5D,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,YAAY;QACvC,mDAAmD;QACnD,IAAI,EAAE,KAAK,EAAE,IAAI,IAAI,4BAA4B;QACjD,+DAA+D;QAC/D,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC;QACvD,+DAA+D;QAC/D,kBAAkB,EAAE,CAAC,eAAe,EAAE,GAAG,CAAC,KAAK,EAAE,kBAAkB,IAAI,EAAE,CAAC,CAAC;QAC3E,qEAAqE;QACrE,QAAQ,EAAE,KAAK,EAAE,QAAQ,IAAI,IAAI;QACjC,GAAG,EAAE,KAAK,EAAE,GAAG,IAAI;YACjB,OAAO,EAAE,UAAU;SACpB;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"orange.d.ts","sourceRoot":"","sources":["../../src/cloudflare/orange.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,QAAQ,CAAE,SAAQ,YAAY,CAAC,CAAC,CAAC;CAAG;AAG3E,MAAM,MAAM,MAAM,CAAC,CAAC,SAAS,QAAQ,IAAI,CAAC,SAAS;IAAE,MAAM,EAAE,GAAG,CAAA;CAAE,GAC9D,KAAK,GACL,MAAM,CAAC,CAAC,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAEnC;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,MAAM,CAAC,CAAC,SAAS,QAAQ,EAC7C,EAAE,EAAE,MAAM,EACV,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAC9B,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAqBpB"}
1
+ {"version":3,"file":"orange.d.ts","sourceRoot":"","sources":["../../src/cloudflare/orange.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,QAAQ,CAAE,SAAQ,YAAY,CAAC,CAAC,CAAC;CAAG;AAG3E,MAAM,MAAM,MAAM,CAAC,CAAC,SAAS,QAAQ,IAAI,CAAC,SAAS;IAAE,MAAM,EAAE,GAAG,CAAA;CAAE,GAC9D,KAAK,GACL,MAAM,CAAC,CAAC,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAEnC;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,MAAM,CAAC,CAAC,SAAS,QAAQ,EAC7C,EAAE,EAAE,MAAM,EACV,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAC9B,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAwBpB"}
@@ -26,7 +26,10 @@ import { Website } from "./website.js";
26
26
  export async function Orange(id, props) {
27
27
  return Website(id, {
28
28
  ...props,
29
- command: props?.command ?? "bun run build",
29
+ command: props?.command ?? "vite build",
30
+ dev: props?.dev ?? {
31
+ command: "vite dev",
32
+ },
30
33
  // The entrypoint and the Wrangler main must differ for the Cloudflare vite plugin
31
34
  // to bundle the application correctly, and alchemy must run our bundler on the Vite
32
35
  // output since we don't resolve vite imports.
@@ -1 +1 @@
1
- {"version":3,"file":"orange.js","sourceRoot":"","sources":["../../src/cloudflare/orange.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAqB,MAAM,cAAc,CAAC;AAU1D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,EAAU,EACV,KAA+B;IAE/B,OAAO,OAAO,CAAC,EAAE,EAAE;QACjB,GAAG,KAAK;QACR,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,eAAe;QAC1C,kFAAkF;QAClF,oFAAoF;QACpF,8CAA8C;QAC9C,QAAQ,EAAE,KAAK,EAAE,QAAQ,IAAI;YAC3B,IAAI,EAAE,qBAAqB;SAC5B;QACD,kFAAkF;QAClF,mFAAmF;QACnF,qFAAqF;QACrF,qFAAqF;QACrF,gBAAgB;QAChB,QAAQ,EAAE,IAAI;QACd,2DAA2D;QAC3D,IAAI,EAAE,KAAK,EAAE,IAAI,IAAI,0BAA0B;QAC/C,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,aAAa;QACtC,kBAAkB,EAAE,CAAC,eAAe,EAAE,GAAG,CAAC,KAAK,EAAE,kBAAkB,IAAI,EAAE,CAAC,CAAC;KAC5E,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"orange.js","sourceRoot":"","sources":["../../src/cloudflare/orange.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAqB,MAAM,cAAc,CAAC;AAU1D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,EAAU,EACV,KAA+B;IAE/B,OAAO,OAAO,CAAC,EAAE,EAAE;QACjB,GAAG,KAAK;QACR,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,YAAY;QACvC,GAAG,EAAE,KAAK,EAAE,GAAG,IAAI;YACjB,OAAO,EAAE,UAAU;SACpB;QACD,kFAAkF;QAClF,oFAAoF;QACpF,8CAA8C;QAC9C,QAAQ,EAAE,KAAK,EAAE,QAAQ,IAAI;YAC3B,IAAI,EAAE,qBAAqB;SAC5B;QACD,kFAAkF;QAClF,mFAAmF;QACnF,qFAAqF;QACrF,qFAAqF;QACrF,gBAAgB;QAChB,QAAQ,EAAE,IAAI;QACd,2DAA2D;QAC3D,IAAI,EAAE,KAAK,EAAE,IAAI,IAAI,0BAA0B;QAC/C,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,aAAa;QACtC,kBAAkB,EAAE,CAAC,eAAe,EAAE,GAAG,CAAC,KAAK,EAAE,kBAAkB,IAAI,EAAE,CAAC,CAAC;KAC5E,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"redwood.d.ts","sourceRoot":"","sources":["../../src/cloudflare/redwood.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,QAAQ,CAAE,SAAQ,YAAY,CAAC,CAAC,CAAC;CAAG;AAG5E,MAAM,MAAM,OAAO,CAAC,CAAC,SAAS,QAAQ,IAAI,CAAC,SAAS;IAAE,MAAM,EAAE,GAAG,CAAA;CAAE,GAC/D,KAAK,GACL,MAAM,CAAC,CAAC,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAEnC;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAsB,OAAO,CAAC,CAAC,SAAS,QAAQ,EAC9C,EAAE,EAAE,MAAM,EACV,KAAK,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GAC/B,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAgBrB"}
1
+ {"version":3,"file":"redwood.d.ts","sourceRoot":"","sources":["../../src/cloudflare/redwood.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,QAAQ,CAAE,SAAQ,YAAY,CAAC,CAAC,CAAC;CAAG;AAG5E,MAAM,MAAM,OAAO,CAAC,CAAC,SAAS,QAAQ,IAAI,CAAC,SAAS;IAAE,MAAM,EAAE,GAAG,CAAA;CAAE,GAC/D,KAAK,GACL,MAAM,CAAC,CAAC,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAEnC;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAsB,OAAO,CAAC,CAAC,SAAS,QAAQ,EAC9C,EAAE,EAAE,MAAM,EACV,KAAK,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GAC/B,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAqBrB"}
@@ -29,7 +29,11 @@ import { Website } from "./website.js";
29
29
  export async function Redwood(id, props) {
30
30
  return Website(id, {
31
31
  ...props,
32
- command: props?.command ?? "bun run clean && RWSDK_DEPLOY=1 bun run build",
32
+ command: props?.command ??
33
+ "rm -rf ./node_modules/.vite && RWSDK_DEPLOY=1 vite build",
34
+ dev: props?.dev ?? {
35
+ command: "vite dev",
36
+ },
33
37
  noBundle: props?.noBundle ?? true,
34
38
  wrangler: props?.wrangler === false
35
39
  ? false
@@ -1 +1 @@
1
- {"version":3,"file":"redwood.js","sourceRoot":"","sources":["../../src/cloudflare/redwood.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,OAAO,EAAE,OAAO,EAAqB,MAAM,cAAc,CAAC;AAU1D;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,EAAU,EACV,KAAgC;IAEhC,OAAO,OAAO,CAAC,EAAE,EAAE;QACjB,GAAG,KAAK;QACR,OAAO,EAAE,KAAK,EAAE,OAAO,IAAI,+CAA+C;QAC1E,QAAQ,EAAE,KAAK,EAAE,QAAQ,IAAI,IAAI;QACjC,QAAQ,EACN,KAAK,EAAE,QAAQ,KAAK,KAAK;YACvB,CAAC,CAAC,KAAK;YACP,CAAC,CAAC;gBACE,IAAI,EAAE,KAAK,EAAE,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC;aACpD;QACP,IAAI,EAAE,KAAK,EAAE,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC;QAC7D,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC;QACpD,kBAAkB,EAAE,CAAC,eAAe,EAAE,GAAG,CAAC,KAAK,EAAE,kBAAkB,IAAI,EAAE,CAAC,CAAC;QAC3E,iBAAiB,EAAE,KAAK,EAAE,iBAAiB,IAAI,YAAY;KAC5D,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"redwood.js","sourceRoot":"","sources":["../../src/cloudflare/redwood.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,OAAO,EAAE,OAAO,EAAqB,MAAM,cAAc,CAAC;AAU1D;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,EAAU,EACV,KAAgC;IAEhC,OAAO,OAAO,CAAC,EAAE,EAAE;QACjB,GAAG,KAAK;QACR,OAAO,EACL,KAAK,EAAE,OAAO;YACd,0DAA0D;QAC5D,GAAG,EAAE,KAAK,EAAE,GAAG,IAAI;YACjB,OAAO,EAAE,UAAU;SACpB;QACD,QAAQ,EAAE,KAAK,EAAE,QAAQ,IAAI,IAAI;QACjC,QAAQ,EACN,KAAK,EAAE,QAAQ,KAAK,KAAK;YACvB,CAAC,CAAC,KAAK;YACP,CAAC,CAAC;gBACE,IAAI,EAAE,KAAK,EAAE,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC;aACpD;QACP,IAAI,EAAE,KAAK,EAAE,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC;QAC7D,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC;QACpD,kBAAkB,EAAE,CAAC,eAAe,EAAE,GAAG,CAAC,KAAK,EAAE,kBAAkB,IAAI,EAAE,CAAC,CAAC;QAC3E,iBAAiB,EAAE,KAAK,EAAE,iBAAiB,IAAI,YAAY;KAC5D,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"vite.d.ts","sourceRoot":"","sources":["../../src/cloudflare/vite.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,WAAW,SAAS,CAAC,CAAC,SAAS,QAAQ,CAC3C,SAAQ,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;CAAG;AAGzC,MAAM,MAAM,IAAI,CAAC,CAAC,SAAS,QAAQ,IAAI,CAAC,SAAS;IAAE,MAAM,EAAE,GAAG,CAAA;CAAE,GAC5D,KAAK,GACL,MAAM,CAAC,CAAC,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAEnC,wBAAsB,IAAI,CAAC,CAAC,SAAS,QAAQ,EAC3C,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,GAClB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAwBlB"}
1
+ {"version":3,"file":"vite.d.ts","sourceRoot":"","sources":["../../src/cloudflare/vite.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,WAAW,SAAS,CAAC,CAAC,SAAS,QAAQ,CAC3C,SAAQ,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;CAAG;AAGzC,MAAM,MAAM,IAAI,CAAC,CAAC,SAAS,QAAQ,IAAI,CAAC,SAAS;IAAE,MAAM,EAAE,GAAG,CAAA;CAAE,GAC5D,KAAK,GACL,MAAM,CAAC,CAAC,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAEnC,wBAAsB,IAAI,CAAC,CAAC,SAAS,QAAQ,EAC3C,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,GAClB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAiBlB"}
@@ -1,16 +1,7 @@
1
1
  import path from "node:path";
2
- import { detectPackageManager } from "../util/detect-package-manager.js";
3
2
  import { Website } from "./website.js";
4
3
  export async function Vite(id, props) {
5
4
  const defaultAssets = path.join("dist", "client");
6
- const packageManager = await detectPackageManager();
7
- const devCommand = {
8
- npm: "npx vite dev",
9
- bun: "bun vite dev",
10
- pnpm: "pnpm vite dev",
11
- yarn: "yarn vite dev",
12
- deno: "deno vite dev",
13
- }[packageManager];
14
5
  return Website(id, {
15
6
  ...props,
16
7
  spa: true,
@@ -20,8 +11,9 @@ export async function Vite(id, props) {
20
11
  dist: props.assets.dist ?? defaultAssets,
21
12
  }
22
13
  : (props.assets ?? defaultAssets),
14
+ command: props.command ?? "vite build",
23
15
  dev: props.dev ?? {
24
- command: devCommand,
16
+ command: "vite dev",
25
17
  },
26
18
  });
27
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"vite.js","sourceRoot":"","sources":["../../src/cloudflare/vite.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAGzE,OAAO,EAAE,OAAO,EAAqB,MAAM,cAAc,CAAC;AAW1D,MAAM,CAAC,KAAK,UAAU,IAAI,CACxB,EAAU,EACV,KAAmB;IAEnB,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAClD,MAAM,cAAc,GAAG,MAAM,oBAAoB,EAAE,CAAC;IACpD,MAAM,UAAU,GAAG;QACjB,GAAG,EAAE,cAAc;QACnB,GAAG,EAAE,cAAc;QACnB,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE,eAAe;KACtB,CAAC,cAAc,CAAC,CAAC;IAClB,OAAO,OAAO,CAAC,EAAE,EAAE;QACjB,GAAG,KAAK;QACR,GAAG,EAAE,IAAI;QACT,MAAM,EACJ,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ;YAC9B,CAAC,CAAC;gBACE,GAAG,KAAK,CAAC,MAAM;gBACf,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,aAAa;aACzC;YACH,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,IAAI,aAAa,CAAC;QACrC,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI;YAChB,OAAO,EAAE,UAAU;SACpB;KACF,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"vite.js","sourceRoot":"","sources":["../../src/cloudflare/vite.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,OAAO,EAAE,OAAO,EAAqB,MAAM,cAAc,CAAC;AAW1D,MAAM,CAAC,KAAK,UAAU,IAAI,CACxB,EAAU,EACV,KAAmB;IAEnB,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAClD,OAAO,OAAO,CAAC,EAAE,EAAE;QACjB,GAAG,KAAK;QACR,GAAG,EAAE,IAAI;QACT,MAAM,EACJ,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ;YAC9B,CAAC,CAAC;gBACE,GAAG,KAAK,CAAC,MAAM;gBACf,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,aAAa;aACzC;YACH,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,IAAI,aAAa,CAAC;QACrC,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,YAAY;QACtC,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI;YAChB,OAAO,EAAE,UAAU;SACpB;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"website.d.ts","sourceRoot":"","sources":["../../src/cloudflare/website.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,EAAE,MAAM,EAAE,KAAK,YAAY,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1E,OAAO,EAAgB,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEzE,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,QAAQ,CAC9C,SAAQ,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,YAAY,CAAC;IAC9D;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEpC;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG;QAAE,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAE3C;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,MAAM,CAAC,EACH,MAAM,GACN,CAAC;QACC,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,GAAG,YAAY,CAAC,CAAC;IACtB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;;;OAIG;IACH,QAAQ,CAAC,EACL,OAAO,GACP,MAAM,GACN;QACE,IAAI,CAAC,EAAE,MAAM,CAAC;QAEd,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IAEN;;;;OAIG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IAEd;;OAEG;IACH,GAAG,CAAC,EAAE;QACJ,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IAEF;;OAEG;IACH,SAAS,CAAC,EAAE;QACV;;;;;;;;;WASG;QACH,QAAQ,CAAC,EAAE,CACT,IAAI,EAAE,gBAAgB,KACnB,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;KACnD,CAAC;CACH;AAWD,MAAM,MAAM,OAAO,CAAC,CAAC,SAAS,QAAQ,IAAI,CAAC,SAAS;IAAE,MAAM,EAAE,GAAG,CAAA;CAAE,GAC/D,KAAK,GACL,MAAM,CAAC,CAAC,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAEnC,wBAAsB,OAAO,CAAC,CAAC,SAAS,QAAQ,EAC9C,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,GACrB,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CA2HrB"}
1
+ {"version":3,"file":"website.d.ts","sourceRoot":"","sources":["../../src/cloudflare/website.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,EAAE,MAAM,EAAE,KAAK,YAAY,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1E,OAAO,EAAgB,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEzE,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,QAAQ,CAC9C,SAAQ,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,YAAY,CAAC;IAC9D;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEpC;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG;QAAE,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAE3C;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,MAAM,CAAC,EACH,MAAM,GACN,CAAC;QACC,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,GAAG,YAAY,CAAC,CAAC;IACtB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;;;OAIG;IACH,QAAQ,CAAC,EACL,OAAO,GACP,MAAM,GACN;QACE,IAAI,CAAC,EAAE,MAAM,CAAC;QAEd,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IAEN;;;;OAIG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IAEd;;OAEG;IACH,GAAG,CAAC,EAAE;QACJ,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IAEF;;OAEG;IACH,SAAS,CAAC,EAAE;QACV;;;;;;;;;WASG;QACH,QAAQ,CAAC,EAAE,CACT,IAAI,EAAE,gBAAgB,KACnB,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;KACnD,CAAC;CACH;AAWD,MAAM,MAAM,OAAO,CAAC,CAAC,SAAS,QAAQ,IAAI,CAAC,SAAS;IAAE,MAAM,EAAE,GAAG,CAAA;CAAE,GAC/D,KAAK,GACL,MAAM,CAAC,CAAC,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAEnC,wBAAsB,OAAO,CAAC,CAAC,SAAS,QAAQ,EAC9C,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,GACrB,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CA4HrB"}
@@ -87,6 +87,7 @@ export default {
87
87
  cwd,
88
88
  command: props.command,
89
89
  env: {
90
+ ...(process.env ?? {}),
90
91
  ...(props.env ?? {}),
91
92
  ...(props.commandEnv ?? {}),
92
93
  ...Object.fromEntries(Object.entries(props.bindings ?? {}).flatMap(([key, value]) => {