@edgestore/server 0.1.3-alpha.0 → 0.1.3-alpha.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/adapters/next/app/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAK7E,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAenD,MAAM,MAAM,oBAAoB,GAAG;IACjC,GAAG,EAAE,WAAW,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,MAAM,CAAC,IAAI,IAAI,IAAI,SAAS,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GACzD;IACE,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,MAAM,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;CAC/B,GACD;IACE,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,MAAM,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;IAC9B,aAAa,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC;CACnE,CAAC;AAEN,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,SAEhD,WAAW,uBAmI/B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/adapters/next/app/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAK7E,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAenD,MAAM,MAAM,oBAAoB,GAAG;IACjC,GAAG,EAAE,WAAW,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,MAAM,CAAC,IAAI,IAAI,IAAI,SAAS,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GACzD;IACE,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,MAAM,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;CAC/B,GACD;IACE,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,MAAM,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;IAC9B,aAAa,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC;CACnE,CAAC;AAEN,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,SAEhD,WAAW,uBAyI/B"}
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var shared = require('../../../shared-a5b84d0b.js');
5
+ var shared = require('../../../shared-ddfc7031.js');
6
6
  var providers_edgestore_index = require('../../../providers/edgestore/index.js');
7
7
  require('@panva/hkdf');
8
8
  require('cookie');
@@ -74,24 +74,30 @@ function createEdgeStoreNextHandler(config) {
74
74
  status: 200
75
75
  });
76
76
  } else if (req.nextUrl.pathname === '/api/edgestore/confirm-upload') {
77
- await shared.confirmUpload({
77
+ const res = await shared.confirmUpload({
78
78
  provider,
79
79
  router: config.router,
80
80
  body: await req.json(),
81
81
  ctxToken: req.cookies.get('edgestore-ctx')?.value
82
82
  });
83
- return new Response(null, {
84
- status: 200
83
+ return new Response(JSON.stringify(res), {
84
+ status: 200,
85
+ headers: {
86
+ 'Content-Type': 'application/json'
87
+ }
85
88
  });
86
89
  } else if (req.nextUrl.pathname === '/api/edgestore/delete-file') {
87
- await shared.deleteFile({
90
+ const res = await shared.deleteFile({
88
91
  provider,
89
92
  router: config.router,
90
93
  body: await req.json(),
91
94
  ctxToken: req.cookies.get('edgestore-ctx')?.value
92
95
  });
93
- return new Response(null, {
94
- status: 200
96
+ return new Response(JSON.stringify(res), {
97
+ status: 200,
98
+ headers: {
99
+ 'Content-Type': 'application/json'
100
+ }
95
101
  });
96
102
  } else if (req.nextUrl.pathname === '/api/edgestore/proxy-file') {
97
103
  const url = req.nextUrl.searchParams.get('url');
@@ -1,4 +1,4 @@
1
- import { i as init, r as requestUpload, a as requestUploadParts, c as completeMultipartUpload, b as confirmUpload, d as deleteFile, E as EdgeStoreError, e as EDGE_STORE_ERROR_CODES } from '../../../shared-7fc08e14.mjs';
1
+ import { i as init, r as requestUpload, a as requestUploadParts, c as completeMultipartUpload, b as confirmUpload, d as deleteFile, E as EdgeStoreError, e as EDGE_STORE_ERROR_CODES } from '../../../shared-4514686d.mjs';
2
2
  import { EdgeStoreProvider } from '../../../providers/edgestore/index.mjs';
3
3
  import '@panva/hkdf';
4
4
  import 'cookie';
@@ -70,24 +70,30 @@ function createEdgeStoreNextHandler(config) {
70
70
  status: 200
71
71
  });
72
72
  } else if (req.nextUrl.pathname === '/api/edgestore/confirm-upload') {
73
- await confirmUpload({
73
+ const res = await confirmUpload({
74
74
  provider,
75
75
  router: config.router,
76
76
  body: await req.json(),
77
77
  ctxToken: req.cookies.get('edgestore-ctx')?.value
78
78
  });
79
- return new Response(null, {
80
- status: 200
79
+ return new Response(JSON.stringify(res), {
80
+ status: 200,
81
+ headers: {
82
+ 'Content-Type': 'application/json'
83
+ }
81
84
  });
82
85
  } else if (req.nextUrl.pathname === '/api/edgestore/delete-file') {
83
- await deleteFile({
86
+ const res = await deleteFile({
84
87
  provider,
85
88
  router: config.router,
86
89
  body: await req.json(),
87
90
  ctxToken: req.cookies.get('edgestore-ctx')?.value
88
91
  });
89
- return new Response(null, {
90
- status: 200
92
+ return new Response(JSON.stringify(res), {
93
+ status: 200,
94
+ headers: {
95
+ 'Content-Type': 'application/json'
96
+ }
91
97
  });
92
98
  } else if (req.nextUrl.pathname === '/api/edgestore/proxy-file') {
93
99
  const url = req.nextUrl.searchParams.get('url');
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/adapters/next/pages/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AACvE,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAK7E,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAenD,MAAM,MAAM,oBAAoB,GAAG;IACjC,GAAG,EAAE,cAAc,CAAC;IACpB,GAAG,EAAE,eAAe,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,MAAM,CAAC,IAAI,IAAI,IAAI,SAAS,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GACzD;IACE,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,MAAM,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;CAC/B,GACD;IACE,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,MAAM,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;IAC9B,aAAa,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC;CACnE,CAAC;AAEN,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,SAEhD,cAAc,OAAO,eAAe,mBA0FxD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/adapters/next/pages/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AACvE,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAK7E,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAenD,MAAM,MAAM,oBAAoB,GAAG;IACjC,GAAG,EAAE,cAAc,CAAC;IACpB,GAAG,EAAE,eAAe,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,MAAM,CAAC,IAAI,IAAI,IAAI,SAAS,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GACzD;IACE,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,MAAM,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;CAC/B,GACD;IACE,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,MAAM,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;IAC9B,aAAa,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC;CACnE,CAAC;AAEN,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,SAEhD,cAAc,OAAO,eAAe,mBA4FxD"}
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var shared = require('../../../shared-a5b84d0b.js');
5
+ var shared = require('../../../shared-ddfc7031.js');
6
6
  var providers_edgestore_index = require('../../../providers/edgestore/index.js');
7
7
  require('@panva/hkdf');
8
8
  require('cookie');
@@ -53,21 +53,19 @@ function createEdgeStoreNextHandler(config) {
53
53
  });
54
54
  res.status(200).end();
55
55
  } else if (req.url === '/api/edgestore/confirm-upload') {
56
- await shared.confirmUpload({
56
+ res.json(await shared.confirmUpload({
57
57
  provider,
58
58
  router: config.router,
59
59
  body: req.body,
60
60
  ctxToken: req.cookies['edgestore-ctx']
61
- });
62
- res.status(200).end();
61
+ }));
63
62
  } else if (req.url === '/api/edgestore/delete-file') {
64
- await shared.deleteFile({
63
+ res.json(await shared.deleteFile({
65
64
  provider,
66
65
  router: config.router,
67
66
  body: req.body,
68
67
  ctxToken: req.cookies['edgestore-ctx']
69
- });
70
- res.status(200).end();
68
+ }));
71
69
  } else if (req.url?.startsWith('/api/edgestore/proxy-file')) {
72
70
  const { url } = req.query;
73
71
  if (typeof url === 'string') {
@@ -1,4 +1,4 @@
1
- import { i as init, r as requestUpload, a as requestUploadParts, c as completeMultipartUpload, b as confirmUpload, d as deleteFile, E as EdgeStoreError, e as EDGE_STORE_ERROR_CODES } from '../../../shared-7fc08e14.mjs';
1
+ import { i as init, r as requestUpload, a as requestUploadParts, c as completeMultipartUpload, b as confirmUpload, d as deleteFile, E as EdgeStoreError, e as EDGE_STORE_ERROR_CODES } from '../../../shared-4514686d.mjs';
2
2
  import { EdgeStoreProvider } from '../../../providers/edgestore/index.mjs';
3
3
  import '@panva/hkdf';
4
4
  import 'cookie';
@@ -49,21 +49,19 @@ function createEdgeStoreNextHandler(config) {
49
49
  });
50
50
  res.status(200).end();
51
51
  } else if (req.url === '/api/edgestore/confirm-upload') {
52
- await confirmUpload({
52
+ res.json(await confirmUpload({
53
53
  provider,
54
54
  router: config.router,
55
55
  body: req.body,
56
56
  ctxToken: req.cookies['edgestore-ctx']
57
- });
58
- res.status(200).end();
57
+ }));
59
58
  } else if (req.url === '/api/edgestore/delete-file') {
60
- await deleteFile({
59
+ res.json(await deleteFile({
61
60
  provider,
62
61
  router: config.router,
63
62
  body: req.body,
64
63
  ctxToken: req.cookies['edgestore-ctx']
65
- });
66
- res.status(200).end();
64
+ }));
67
65
  } else if (req.url?.startsWith('/api/edgestore/proxy-file')) {
68
66
  const { url } = req.query;
69
67
  if (typeof url === 'string') {
@@ -95,7 +95,7 @@ export declare function confirmUpload<TCtx>(params: {
95
95
  router: EdgeStoreRouter<TCtx>;
96
96
  ctxToken: string | undefined;
97
97
  body: ConfirmUploadBody;
98
- }): Promise<void>;
98
+ }): Promise<import("../providers/types").ConfirmUploadRes>;
99
99
  export type DeleteFileBody = {
100
100
  bucketName: string;
101
101
  url: string;
@@ -105,7 +105,7 @@ export declare function deleteFile<TCtx>(params: {
105
105
  router: EdgeStoreRouter<TCtx>;
106
106
  ctxToken: string | undefined;
107
107
  body: DeleteFileBody;
108
- }): Promise<void>;
108
+ }): Promise<import("../providers/types").DeleteFileRes>;
109
109
  export type InitRes = Awaited<ReturnType<typeof init>>;
110
110
  export type RequestUploadRes = Awaited<ReturnType<typeof requestUpload>>;
111
111
  export type RequestUploadPartsRes = Awaited<ReturnType<typeof requestUploadParts>>;
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/adapters/shared.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/adapters/shared.ts"],"names":[],"mappings":"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"}
@@ -207,9 +207,9 @@ async function confirmUpload(params) {
207
207
  if (!bucket) {
208
208
  throw new Error(`Bucket ${bucketName} not found`);
209
209
  }
210
- await provider.confirmUpload({
210
+ return await provider.confirmUpload({
211
211
  bucket,
212
- url
212
+ url: unproxyUrl(url)
213
213
  });
214
214
  }
215
215
  async function deleteFile(params) {
@@ -238,9 +238,9 @@ async function deleteFile(params) {
238
238
  if (!canDelete) {
239
239
  throw new Error('Delete not allowed');
240
240
  }
241
- await provider.deleteFile({
241
+ return await provider.deleteFile({
242
242
  bucket,
243
- url
243
+ url: unproxyUrl(url)
244
244
  });
245
245
  }
246
246
  async function encryptJWT(ctx) {
@@ -297,5 +297,21 @@ async function getContext(token) {
297
297
  }
298
298
  return await decryptJWT(token);
299
299
  }
300
+ /**
301
+ * On local development, protected files are proxied to the server,
302
+ * which changes the original URL.
303
+ *
304
+ * This function is used to get the original URL,
305
+ * so that we can delete or confirm the upload.
306
+ */ function unproxyUrl(url) {
307
+ if (process.env.NODE_ENV === 'development' && url.startsWith('http://')) {
308
+ // get the url param from the query string
309
+ const urlParam = new URL(url).searchParams.get('url');
310
+ if (urlParam) {
311
+ return urlParam;
312
+ }
313
+ }
314
+ return url;
315
+ }
300
316
 
301
317
  export { EdgeStoreError as E, requestUploadParts as a, confirmUpload as b, completeMultipartUpload as c, deleteFile as d, EDGE_STORE_ERROR_CODES as e, init as i, requestUpload as r };
@@ -199,9 +199,9 @@ async function confirmUpload(params) {
199
199
  if (!bucket) {
200
200
  throw new Error(`Bucket ${bucketName} not found`);
201
201
  }
202
- await provider.confirmUpload({
202
+ return await provider.confirmUpload({
203
203
  bucket,
204
- url,
204
+ url: unproxyUrl(url),
205
205
  });
206
206
  }
207
207
  async function deleteFile(params) {
@@ -230,9 +230,9 @@ async function deleteFile(params) {
230
230
  if (!canDelete) {
231
231
  throw new Error('Delete not allowed');
232
232
  }
233
- await provider.deleteFile({
233
+ return await provider.deleteFile({
234
234
  bucket,
235
- url,
235
+ url: unproxyUrl(url),
236
236
  });
237
237
  }
238
238
  async function encryptJWT(ctx) {
@@ -293,5 +293,22 @@ async function getContext(token) {
293
293
  }
294
294
  return await decryptJWT(token);
295
295
  }
296
+ /**
297
+ * On local development, protected files are proxied to the server,
298
+ * which changes the original URL.
299
+ *
300
+ * This function is used to get the original URL,
301
+ * so that we can delete or confirm the upload.
302
+ */
303
+ function unproxyUrl(url) {
304
+ if (process.env.NODE_ENV === 'development' && url.startsWith('http://')) {
305
+ // get the url param from the query string
306
+ const urlParam = new URL(url).searchParams.get('url');
307
+ if (urlParam) {
308
+ return urlParam;
309
+ }
310
+ }
311
+ return url;
312
+ }
296
313
 
297
314
  export { EdgeStoreError as E, requestUploadParts as a, confirmUpload as b, completeMultipartUpload as c, deleteFile as d, EDGE_STORE_ERROR_CODES as e, init as i, requestUpload as r };
@@ -209,9 +209,9 @@ async function confirmUpload(params) {
209
209
  if (!bucket) {
210
210
  throw new Error(`Bucket ${bucketName} not found`);
211
211
  }
212
- await provider.confirmUpload({
212
+ return await provider.confirmUpload({
213
213
  bucket,
214
- url
214
+ url: unproxyUrl(url)
215
215
  });
216
216
  }
217
217
  async function deleteFile(params) {
@@ -240,9 +240,9 @@ async function deleteFile(params) {
240
240
  if (!canDelete) {
241
241
  throw new Error('Delete not allowed');
242
242
  }
243
- await provider.deleteFile({
243
+ return await provider.deleteFile({
244
244
  bucket,
245
- url
245
+ url: unproxyUrl(url)
246
246
  });
247
247
  }
248
248
  async function encryptJWT(ctx) {
@@ -299,6 +299,22 @@ async function getContext(token) {
299
299
  }
300
300
  return await decryptJWT(token);
301
301
  }
302
+ /**
303
+ * On local development, protected files are proxied to the server,
304
+ * which changes the original URL.
305
+ *
306
+ * This function is used to get the original URL,
307
+ * so that we can delete or confirm the upload.
308
+ */ function unproxyUrl(url) {
309
+ if (process.env.NODE_ENV === 'development' && url.startsWith('http://')) {
310
+ // get the url param from the query string
311
+ const urlParam = new URL(url).searchParams.get('url');
312
+ if (urlParam) {
313
+ return urlParam;
314
+ }
315
+ }
316
+ return url;
317
+ }
302
318
 
303
319
  exports.EDGE_STORE_ERROR_CODES = EDGE_STORE_ERROR_CODES;
304
320
  exports.EdgeStoreError = EdgeStoreError;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@edgestore/server",
3
- "version": "0.1.3-alpha.0",
3
+ "version": "0.1.3-alpha.1",
4
4
  "description": "Upload files with ease from React/Next.js",
5
5
  "homepage": "https://edgestore.dev",
6
6
  "repository": "https://github.com/edgestorejs/edgestore.git",
@@ -104,5 +104,5 @@
104
104
  "typescript": "^5.1.6",
105
105
  "zod": "^3.21.4"
106
106
  },
107
- "gitHead": "3ed23e543ee1ed151685884bb0983c2471e03880"
107
+ "gitHead": "d83c9799cd38def8b37f6c752332c568c37cf329"
108
108
  }
@@ -106,24 +106,30 @@ export function createEdgeStoreNextHandler<TCtx>(config: Config<TCtx>) {
106
106
  status: 200,
107
107
  });
108
108
  } else if (req.nextUrl.pathname === '/api/edgestore/confirm-upload') {
109
- await confirmUpload({
109
+ const res = await confirmUpload({
110
110
  provider,
111
111
  router: config.router,
112
112
  body: (await req.json()) as ConfirmUploadBody,
113
113
  ctxToken: req.cookies.get('edgestore-ctx')?.value,
114
114
  });
115
- return new Response(null, {
115
+ return new Response(JSON.stringify(res), {
116
116
  status: 200,
117
+ headers: {
118
+ 'Content-Type': 'application/json',
119
+ },
117
120
  });
118
121
  } else if (req.nextUrl.pathname === '/api/edgestore/delete-file') {
119
- await deleteFile({
122
+ const res = await deleteFile({
120
123
  provider,
121
124
  router: config.router,
122
125
  body: (await req.json()) as DeleteFileBody,
123
126
  ctxToken: req.cookies.get('edgestore-ctx')?.value,
124
127
  });
125
- return new Response(null, {
128
+ return new Response(JSON.stringify(res), {
126
129
  status: 200,
130
+ headers: {
131
+ 'Content-Type': 'application/json',
132
+ },
127
133
  });
128
134
  } else if (req.nextUrl.pathname === '/api/edgestore/proxy-file') {
129
135
  const url = req.nextUrl.searchParams.get('url');
@@ -82,21 +82,23 @@ export function createEdgeStoreNextHandler<TCtx>(config: Config<TCtx>) {
82
82
  });
83
83
  res.status(200).end();
84
84
  } else if (req.url === '/api/edgestore/confirm-upload') {
85
- await confirmUpload({
86
- provider,
87
- router: config.router,
88
- body: req.body as ConfirmUploadBody,
89
- ctxToken: req.cookies['edgestore-ctx'],
90
- });
91
- res.status(200).end();
85
+ res.json(
86
+ await confirmUpload({
87
+ provider,
88
+ router: config.router,
89
+ body: req.body as ConfirmUploadBody,
90
+ ctxToken: req.cookies['edgestore-ctx'],
91
+ }),
92
+ );
92
93
  } else if (req.url === '/api/edgestore/delete-file') {
93
- await deleteFile({
94
- provider,
95
- router: config.router,
96
- body: req.body as DeleteFileBody,
97
- ctxToken: req.cookies['edgestore-ctx'],
98
- });
99
- res.status(200).end();
94
+ res.json(
95
+ await deleteFile({
96
+ provider,
97
+ router: config.router,
98
+ body: req.body as DeleteFileBody,
99
+ ctxToken: req.cookies['edgestore-ctx'],
100
+ }),
101
+ );
100
102
  } else if (req.url?.startsWith('/api/edgestore/proxy-file')) {
101
103
  const { url } = req.query;
102
104
  if (typeof url === 'string') {
@@ -278,9 +278,9 @@ export async function confirmUpload<TCtx>(params: {
278
278
  throw new Error(`Bucket ${bucketName} not found`);
279
279
  }
280
280
 
281
- await provider.confirmUpload({
281
+ return await provider.confirmUpload({
282
282
  bucket,
283
- url,
283
+ url: unproxyUrl(url),
284
284
  });
285
285
  }
286
286
 
@@ -330,9 +330,9 @@ export async function deleteFile<TCtx>(params: {
330
330
  if (!canDelete) {
331
331
  throw new Error('Delete not allowed');
332
332
  }
333
- await provider.deleteFile({
333
+ return await provider.deleteFile({
334
334
  bucket,
335
- url,
335
+ url: unproxyUrl(url),
336
336
  });
337
337
  }
338
338
 
@@ -418,6 +418,24 @@ async function getContext(token?: string) {
418
418
  return await decryptJWT(token);
419
419
  }
420
420
 
421
+ /**
422
+ * On local development, protected files are proxied to the server,
423
+ * which changes the original URL.
424
+ *
425
+ * This function is used to get the original URL,
426
+ * so that we can delete or confirm the upload.
427
+ */
428
+ function unproxyUrl(url: string) {
429
+ if (process.env.NODE_ENV === 'development' && url.startsWith('http://')) {
430
+ // get the url param from the query string
431
+ const urlParam = new URL(url).searchParams.get('url');
432
+ if (urlParam) {
433
+ return urlParam;
434
+ }
435
+ }
436
+ return url;
437
+ }
438
+
421
439
  export type InitRes = Awaited<ReturnType<typeof init>>;
422
440
  export type RequestUploadRes = Awaited<ReturnType<typeof requestUpload>>;
423
441
  export type RequestUploadPartsRes = Awaited<