@edgestore/server 0.0.0-alpha.12 → 0.0.0-alpha.14

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 (44) hide show
  1. package/dist/adapters/next/app/index.d.ts +4 -1
  2. package/dist/adapters/next/app/index.d.ts.map +1 -1
  3. package/dist/adapters/next/app/index.js +24 -4
  4. package/dist/adapters/next/app/index.mjs +24 -4
  5. package/dist/adapters/next/pages/index.d.ts +4 -1
  6. package/dist/adapters/next/pages/index.d.ts.map +1 -1
  7. package/dist/adapters/next/pages/index.js +18 -4
  8. package/dist/adapters/next/pages/index.mjs +18 -4
  9. package/dist/adapters/shared.d.ts +4 -3
  10. package/dist/adapters/shared.d.ts.map +1 -1
  11. package/dist/core/client/index.d.ts +19 -9
  12. package/dist/core/client/index.d.ts.map +1 -1
  13. package/dist/core/index.d.ts +1 -1
  14. package/dist/core/index.d.ts.map +1 -1
  15. package/dist/core/index.js +21 -3
  16. package/dist/core/index.mjs +22 -4
  17. package/dist/core/internals/bucketBuilder.d.ts +98 -29
  18. package/dist/core/internals/bucketBuilder.d.ts.map +1 -1
  19. package/dist/core/sdk/index.d.ts +4 -4
  20. package/dist/core/sdk/index.d.ts.map +1 -1
  21. package/dist/{index-3cc4d530.js → index-0a168903.js} +4 -2
  22. package/dist/{index-ca41982b.mjs → index-579b8015.mjs} +4 -2
  23. package/dist/{index-3999aae6.js → index-62d969e5.js} +4 -2
  24. package/dist/index.js +18 -9
  25. package/dist/index.mjs +18 -9
  26. package/dist/providers/edgestore/index.d.ts +0 -1
  27. package/dist/providers/edgestore/index.d.ts.map +1 -1
  28. package/dist/providers/edgestore/index.js +4 -3
  29. package/dist/providers/edgestore/index.mjs +4 -3
  30. package/dist/providers/types.d.ts +2 -4
  31. package/dist/providers/types.d.ts.map +1 -1
  32. package/dist/{shared-43667670.mjs → shared-2a9c8307.mjs} +34 -3
  33. package/dist/{shared-f7607e44.js → shared-ae739a04.js} +34 -3
  34. package/dist/{shared-6bef8919.js → shared-fac1b0a0.js} +35 -3
  35. package/package.json +7 -5
  36. package/src/adapters/next/app/index.ts +37 -6
  37. package/src/adapters/next/pages/index.ts +33 -6
  38. package/src/adapters/shared.ts +41 -9
  39. package/src/core/client/index.ts +50 -17
  40. package/src/core/index.ts +1 -0
  41. package/src/core/internals/bucketBuilder.ts +129 -41
  42. package/src/core/sdk/index.ts +8 -6
  43. package/src/providers/edgestore/index.ts +3 -4
  44. package/src/providers/types.ts +6 -4
@@ -3,23 +3,26 @@ import { KeysOfUnion, MaybePromise, Simplify } from '../../types';
3
3
  type Merge<TType, TWith> = {
4
4
  [TKey in keyof TType | keyof TWith]?: TKey extends keyof TType ? TKey extends keyof TWith ? TType[TKey] & TWith[TKey] : TType[TKey] : TWith[TKey & keyof TWith];
5
5
  };
6
- type OverwriteIfDefined<TType, TWith> = UnsetMarker extends TType ? TWith : Simplify<TType & TWith>;
7
6
  type ConvertStringToFunction<TType> = {
8
7
  [K in keyof TType]: TType[K] extends object ? Simplify<ConvertStringToFunction<TType[K]>> : () => string;
9
8
  };
10
9
  type UnionToIntersection<TType> = (TType extends any ? (k: TType) => void : never) extends (k: infer I) => void ? I : never;
11
10
  export type InferBucketPathKeys<TBucket extends Builder<any, AnyDef>> = KeysOfUnion<TBucket['_def']['path'][number]>;
12
11
  type InferBucketPathKeysFromDef<TDef extends AnyDef> = KeysOfUnion<TDef['path'][number]>;
13
- export type InferMetadataObject<TBucket extends Builder<any, AnyDef>> = TBucket['_def']['metadata'] extends (...args: any) => any ? Awaited<ReturnType<TBucket['_def']['metadata']>> : TBucket['_def']['metadata'] extends ((...args: any) => any) | undefined ? any : never;
14
- type InferMetadataObjectFromDef<TDef extends AnyDef> = TDef['metadata'] extends (...args: any) => any ? Awaited<ReturnType<TDef['metadata']>> : TDef['metadata'] extends ((...args: any) => any) | undefined ? any : never;
12
+ export type InferBucketPathObject<TBucket extends Builder<any, AnyDef>> = InferBucketPathKeys<TBucket> extends never ? Record<string, never> : {
13
+ [TKey in InferBucketPathKeys<TBucket>]: string;
14
+ };
15
+ export type InferBucketPathObjectFromDef<TDef extends AnyDef> = InferBucketPathKeysFromDef<TDef> extends never ? Record<string, never> : {
16
+ [TKey in InferBucketPathKeysFromDef<TDef>]: string;
17
+ };
18
+ export type InferMetadataObject<TBucket extends Builder<any, AnyDef>> = TBucket['_def']['metadata'] extends (...args: any) => any ? Awaited<ReturnType<TBucket['_def']['metadata']>> : Record<string, never>;
19
+ type InferMetadataObjectFromDef<TDef extends AnyDef> = TDef['metadata'] extends (...args: any) => any ? Awaited<ReturnType<TDef['metadata']>> : Record<string, never>;
15
20
  export type AnyContext = Record<string, string | undefined | null>;
16
- export type AnyInput = z.AnyZodObject;
21
+ export type AnyInput = z.AnyZodObject | z.ZodNever;
17
22
  export type AnyPath = Record<string, () => string>[];
18
23
  type PathParam<TPath extends AnyPath> = {
19
24
  path: keyof UnionToIntersection<TPath[number]>;
20
25
  };
21
- declare const unsetMarker: unique symbol;
22
- type UnsetMarker = typeof unsetMarker;
23
26
  type Conditions<TPath extends AnyPath> = {
24
27
  eq?: string | PathParam<TPath>;
25
28
  lt?: string | PathParam<TPath>;
@@ -37,10 +40,29 @@ export type AccessControlSchema<TCtx, TDef extends AnyDef> = Merge<{
37
40
  AND?: AccessControlSchema<TCtx, TDef>[];
38
41
  NOT?: AccessControlSchema<TCtx, TDef>[];
39
42
  }>;
43
+ type BucketConfig = {
44
+ /**
45
+ * Maximum size for a single file in bytes
46
+ *
47
+ * e.g. 1024 * 1024 * 10 = 10MB
48
+ */
49
+ maxSize?: number;
50
+ /**
51
+ * Accepted MIME types
52
+ *
53
+ * e.g. ['image/jpeg', 'image/png']
54
+ *
55
+ * You can also use wildcards after the slash:
56
+ *
57
+ * e.g. ['image/*']
58
+ */
59
+ accept?: string[];
60
+ };
40
61
  type FileInfo = {
41
62
  size: number;
42
63
  type: string;
43
64
  extension: string;
65
+ fileName?: string;
44
66
  replaceTargetUrl?: string;
45
67
  };
46
68
  type BeforeUploadFn<TCtx, TDef extends AnyDef> = (params: {
@@ -50,31 +72,32 @@ type BeforeUploadFn<TCtx, TDef extends AnyDef> = (params: {
50
72
  }) => MaybePromise<boolean>;
51
73
  type BeforeDeleteFn<TCtx, TDef extends AnyDef> = (params: {
52
74
  ctx: TCtx;
53
- file: {
75
+ fileInfo: {
54
76
  url: string;
55
77
  size: number;
56
78
  uploadedAt: Date;
57
- path: {
58
- [TKey in InferBucketPathKeysFromDef<TDef>]: string;
59
- };
79
+ path: InferBucketPathObjectFromDef<TDef>;
60
80
  metadata: InferMetadataObjectFromDef<TDef>;
61
81
  };
62
82
  }) => MaybePromise<boolean>;
63
- type AnyMetadata = Record<string, string | undefined | null>;
64
- type MetadataFn<TCtx, TDef extends AnyDef, TMetadata extends AnyMetadata> = (params: {
83
+ export type AnyMetadata = Record<string, string | undefined | null>;
84
+ type MetadataFn<TCtx, TInput extends AnyInput, TMetadata extends AnyMetadata> = (params: {
65
85
  ctx: TCtx;
66
- input: z.infer<TDef['input']>;
86
+ input: z.infer<TInput>;
67
87
  }) => MaybePromise<TMetadata>;
68
- type Def<TInput extends AnyInput, TPath extends AnyPath> = {
69
- type: any;
88
+ export type AnyMetadataFn = MetadataFn<any, AnyInput, AnyMetadata>;
89
+ type BucketType = 'IMAGE' | 'FILE';
90
+ type Def<TInput extends AnyInput, TPath extends AnyPath, TMetadata extends AnyMetadataFn> = {
91
+ type: BucketType;
70
92
  input: TInput;
71
93
  path: TPath;
72
- metadata?: MetadataFn<any, any, any>;
94
+ metadata: TMetadata;
95
+ bucketConfig?: BucketConfig;
73
96
  accessControl?: AccessControlSchema<any, any>;
74
97
  beforeUpload?: BeforeUploadFn<any, any>;
75
98
  beforeDelete?: BeforeDeleteFn<any, any>;
76
99
  };
77
- type AnyDef = Def<any, any>;
100
+ type AnyDef = Def<AnyInput, AnyPath, AnyMetadataFn>;
78
101
  type Builder<TCtx, TDef extends AnyDef> = {
79
102
  /** only used for types */
80
103
  $config: {
@@ -84,15 +107,33 @@ type Builder<TCtx, TDef extends AnyDef> = {
84
107
  * @internal
85
108
  */
86
109
  _def: TDef;
110
+ /**
111
+ * You can set an input that will be required in every upload from the client.
112
+ *
113
+ * This can be used to add additional information to the file, like choose the file path or add metadata.
114
+ */
87
115
  input<TInput extends AnyInput>(input: TInput): Builder<TCtx, {
88
116
  type: TDef['type'];
89
- input: OverwriteIfDefined<TDef['input'], TInput>;
117
+ input: TInput;
90
118
  path: TDef['path'];
91
119
  metadata: TDef['metadata'];
120
+ bucketConfig: TDef['bucketConfig'];
92
121
  accessControl: TDef['accessControl'];
93
122
  beforeUpload: TDef['beforeUpload'];
94
123
  beforeDelete: TDef['beforeDelete'];
95
124
  }>;
125
+ /**
126
+ * The `path` is similar to folders in a file system.
127
+ * But in this case, every segment of the path must have a meaning.
128
+ *
129
+ * ```
130
+ * // e.g. 123/profile/file.jpg
131
+ * {
132
+ * author: '123',
133
+ * type: 'profile',
134
+ * }
135
+ * ```
136
+ */
96
137
  path<TParams extends AnyPath>(pathResolver: (params: {
97
138
  ctx: Simplify<ConvertStringToFunction<TCtx>>;
98
139
  input: Simplify<ConvertStringToFunction<z.infer<TDef['input']>>>;
@@ -101,59 +142,86 @@ type Builder<TCtx, TDef extends AnyDef> = {
101
142
  input: TDef['input'];
102
143
  path: TParams;
103
144
  metadata: TDef['metadata'];
145
+ bucketConfig: TDef['bucketConfig'];
104
146
  accessControl: TDef['accessControl'];
105
147
  beforeUpload: TDef['beforeUpload'];
106
148
  beforeDelete: TDef['beforeDelete'];
107
149
  }>;
108
- metadata<TMetadata extends AnyMetadata>(metadata: MetadataFn<TCtx, TDef, TMetadata>): Builder<TCtx, {
150
+ /**
151
+ * This metadata will be added to every file uploaded to this bucket.
152
+ *
153
+ * This can be used, for example, to filter files.
154
+ */
155
+ metadata<TMetadata extends AnyMetadata>(metadata: MetadataFn<TCtx, TDef['input'], TMetadata>): Builder<TCtx, {
109
156
  type: TDef['type'];
110
157
  input: TDef['input'];
111
158
  path: TDef['path'];
112
159
  metadata: MetadataFn<any, any, TMetadata>;
160
+ bucketConfig: TDef['bucketConfig'];
113
161
  accessControl: TDef['accessControl'];
114
162
  beforeUpload: TDef['beforeUpload'];
115
163
  beforeDelete: TDef['beforeDelete'];
116
164
  }>;
165
+ /**
166
+ * If you set this, your bucket will automatically be configured as a protected bucket.
167
+ *
168
+ * This means that images will only be accessible from within your app.
169
+ * And only if it passes the check set in this function.
170
+ */
117
171
  accessControl(accessControl: AccessControlSchema<TCtx, TDef>): Builder<TCtx, {
118
172
  type: TDef['type'];
119
173
  input: TDef['input'];
120
174
  path: TDef['path'];
121
175
  metadata: TDef['metadata'];
176
+ bucketConfig: TDef['bucketConfig'];
122
177
  accessControl: AccessControlSchema<any, any>;
123
178
  beforeUpload: TDef['beforeUpload'];
124
179
  beforeDelete: TDef['beforeDelete'];
125
180
  }>;
181
+ /**
182
+ * return `true` to allow upload
183
+ *
184
+ * By default every upload from your app is allowed.
185
+ */
126
186
  beforeUpload(beforeUpload: BeforeUploadFn<TCtx, TDef>): Builder<TCtx, {
127
187
  type: TDef['type'];
128
188
  input: TDef['input'];
129
189
  path: TDef['path'];
130
190
  metadata: TDef['metadata'];
191
+ bucketConfig: TDef['bucketConfig'];
131
192
  accessControl: TDef['accessControl'];
132
193
  beforeUpload: BeforeUploadFn<any, any>;
133
194
  beforeDelete: TDef['beforeDelete'];
134
195
  }>;
196
+ /**
197
+ * return `true` to allow delete
198
+ *
199
+ * This function must be defined if you want to delete files directly from the client.
200
+ */
135
201
  beforeDelete(beforeDelete: BeforeDeleteFn<TCtx, TDef>): Builder<TCtx, {
136
202
  type: TDef['type'];
137
203
  input: TDef['input'];
138
204
  path: TDef['path'];
139
205
  metadata: TDef['metadata'];
206
+ bucketConfig: TDef['bucketConfig'];
140
207
  accessControl: TDef['accessControl'];
141
208
  beforeUpload: TDef['beforeUpload'];
142
209
  beforeDelete: BeforeDeleteFn<any, any>;
143
210
  }>;
144
211
  };
145
212
  export type AnyBuilder = Builder<any, AnyDef>;
146
- declare class EdgeStoreBuilder<TCtx = object> {
213
+ declare class EdgeStoreBuilder<TCtx = Record<string, never>> {
147
214
  context<TNewContext extends AnyContext>(): EdgeStoreBuilder<TNewContext>;
148
215
  create(): {
149
216
  /**
150
217
  * Builder object for creating an image bucket
151
218
  */
152
- imageBucket: Builder<TCtx, {
219
+ imageBucket(config?: BucketConfig | undefined): Builder<TCtx, {
153
220
  type: "IMAGE";
154
- input: typeof unsetMarker;
155
- path: typeof unsetMarker;
156
- metadata?: MetadataFn<any, any, any> | undefined;
221
+ input: z.ZodNever;
222
+ path: [];
223
+ metadata: () => Record<string, never>;
224
+ bucketConfig?: BucketConfig | undefined;
157
225
  accessControl?: AccessControlSchema<any, any> | undefined;
158
226
  beforeUpload?: BeforeUploadFn<any, any> | undefined;
159
227
  beforeDelete?: BeforeDeleteFn<any, any> | undefined;
@@ -161,11 +229,12 @@ declare class EdgeStoreBuilder<TCtx = object> {
161
229
  /**
162
230
  * Builder object for creating a file bucket
163
231
  */
164
- fileBucket: Builder<TCtx, {
232
+ fileBucket(config?: BucketConfig | undefined): Builder<TCtx, {
165
233
  type: "FILE";
166
- input: typeof unsetMarker;
167
- path: typeof unsetMarker;
168
- metadata?: MetadataFn<any, any, any> | undefined;
234
+ input: z.ZodNever;
235
+ path: [];
236
+ metadata: () => Record<string, never>;
237
+ bucketConfig?: BucketConfig | undefined;
169
238
  accessControl?: AccessControlSchema<any, any> | undefined;
170
239
  beforeUpload?: BeforeUploadFn<any, any> | undefined;
171
240
  beforeDelete?: BeforeDeleteFn<any, any> | undefined;
@@ -194,6 +263,6 @@ export type EdgeStoreRouter<TCtx> = {
194
263
  /**
195
264
  * Initialize EdgeStore - be done exactly once per backend
196
265
  */
197
- export declare const initEdgeStore: EdgeStoreBuilder<object>;
266
+ export declare const initEdgeStore: EdgeStoreBuilder<Record<string, never>>;
198
267
  export {};
199
268
  //# sourceMappingURL=bucketBuilder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bucketBuilder.d.ts","sourceRoot":"","sources":["../../../src/core/internals/bucketBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bucketBuilder.d.ts","sourceRoot":"","sources":["../../../src/core/internals/bucketBuilder.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,16 @@
1
1
  import { AnyRouter } from '..';
2
- import { AnyContext } from '../internals/bucketBuilder';
2
+ import { AnyContext, AnyMetadata } from '../internals/bucketBuilder';
3
3
  type FileInfoForUpload = {
4
4
  size: number;
5
5
  extension: string;
6
+ type?: string;
6
7
  isPublic: boolean;
7
8
  path: {
8
9
  key: string;
9
10
  value: string;
10
11
  }[];
11
- metadata?: {
12
- [key: string]: string;
13
- };
12
+ metadata: AnyMetadata;
13
+ fileName?: string;
14
14
  replaceTargetUrl?: string;
15
15
  };
16
16
  export type SimpleOperator = 'eq' | 'neq' | 'gt' | 'gte' | 'lt' | 'lte' | 'startsWith' | 'endsWith';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/sdk/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/sdk/index.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ class EdgeStoreCredentialsError extends Error {
8
8
  }
9
9
  }
10
10
 
11
- const API_ENDPOINT = process.env.EDGE_STORE_API_ENDPOINT ?? 'https://api.edge-store.com';
11
+ const API_ENDPOINT = process.env.EDGE_STORE_API_ENDPOINT ?? 'https://api.edgestore.dev';
12
12
  async function makeRequest(params) {
13
13
  const { body, accessKey, secretKey, path } = params;
14
14
  const res = await fetch(`${API_ENDPOINT}${path}`, {
@@ -20,7 +20,7 @@ async function makeRequest(params) {
20
20
  },
21
21
  });
22
22
  if (!res.ok) {
23
- throw new Error(`Failed to make request to ${path}`);
23
+ throw new Error(`Failed to make request to ${path}: ${await res.text()}`);
24
24
  }
25
25
  return (await res.json());
26
26
  }
@@ -77,7 +77,9 @@ const edgeStoreRawSdk = {
77
77
  path: fileInfo.path,
78
78
  extension: fileInfo.extension,
79
79
  size: fileInfo.size,
80
+ mimeType: fileInfo.type,
80
81
  metadata: fileInfo.metadata,
82
+ fileName: fileInfo.fileName,
81
83
  replaceTargetUrl: fileInfo.replaceTargetUrl,
82
84
  },
83
85
  });
@@ -8,7 +8,7 @@ class EdgeStoreCredentialsError extends Error {
8
8
  }
9
9
  }
10
10
 
11
- const API_ENDPOINT = process.env.EDGE_STORE_API_ENDPOINT ?? 'https://api.edge-store.com';
11
+ const API_ENDPOINT = process.env.EDGE_STORE_API_ENDPOINT ?? 'https://api.edgestore.dev';
12
12
  async function makeRequest(params) {
13
13
  const { body, accessKey, secretKey, path } = params;
14
14
  const res = await fetch(`${API_ENDPOINT}${path}`, {
@@ -20,7 +20,7 @@ async function makeRequest(params) {
20
20
  }
21
21
  });
22
22
  if (!res.ok) {
23
- throw new Error(`Failed to make request to ${path}`);
23
+ throw new Error(`Failed to make request to ${path}: ${await res.text()}`);
24
24
  }
25
25
  return await res.json();
26
26
  }
@@ -77,7 +77,9 @@ const edgeStoreRawSdk = {
77
77
  path: fileInfo.path,
78
78
  extension: fileInfo.extension,
79
79
  size: fileInfo.size,
80
+ mimeType: fileInfo.type,
80
81
  metadata: fileInfo.metadata,
82
+ fileName: fileInfo.fileName,
81
83
  replaceTargetUrl: fileInfo.replaceTargetUrl
82
84
  }
83
85
  });
@@ -10,7 +10,7 @@ class EdgeStoreCredentialsError extends Error {
10
10
  }
11
11
  }
12
12
 
13
- const API_ENDPOINT = process.env.EDGE_STORE_API_ENDPOINT ?? 'https://api.edge-store.com';
13
+ const API_ENDPOINT = process.env.EDGE_STORE_API_ENDPOINT ?? 'https://api.edgestore.dev';
14
14
  async function makeRequest(params) {
15
15
  const { body, accessKey, secretKey, path } = params;
16
16
  const res = await fetch(`${API_ENDPOINT}${path}`, {
@@ -22,7 +22,7 @@ async function makeRequest(params) {
22
22
  }
23
23
  });
24
24
  if (!res.ok) {
25
- throw new Error(`Failed to make request to ${path}`);
25
+ throw new Error(`Failed to make request to ${path}: ${await res.text()}`);
26
26
  }
27
27
  return await res.json();
28
28
  }
@@ -79,7 +79,9 @@ const edgeStoreRawSdk = {
79
79
  path: fileInfo.path,
80
80
  extension: fileInfo.extension,
81
81
  size: fileInfo.size,
82
+ mimeType: fileInfo.type,
82
83
  metadata: fileInfo.metadata,
84
+ fileName: fileInfo.fileName,
83
85
  replaceTargetUrl: fileInfo.replaceTargetUrl
84
86
  }
85
87
  });
package/dist/index.js CHANGED
@@ -46,12 +46,14 @@ function createBuilder(opts, initDef) {
46
46
  type: opts.type,
47
47
  input: zod.z.never(),
48
48
  path: [],
49
+ metadata: ()=>({}),
49
50
  ...initDef
50
51
  };
51
52
  return {
52
53
  $config: {
53
54
  ctx: undefined
54
55
  },
56
+ // @ts-expect-error - I think it would be too much work to make this type correct.
55
57
  _def,
56
58
  input (input) {
57
59
  return createNewBuilder(_def, {
@@ -108,19 +110,26 @@ function createRouterFactory() {
108
110
  };
109
111
  };
110
112
  }
113
+ function initBucket(type, config) {
114
+ return createBuilder({
115
+ type
116
+ }, {
117
+ bucketConfig: config
118
+ });
119
+ }
111
120
  function createEdgeStoreInner() {
112
121
  return function initEdgeStoreInner() {
113
122
  return {
114
123
  /**
115
124
  * Builder object for creating an image bucket
116
- */ imageBucket: createBuilder({
117
- type: 'IMAGE'
118
- }),
125
+ */ imageBucket (config) {
126
+ return initBucket('IMAGE', config);
127
+ },
119
128
  /**
120
129
  * Builder object for creating a file bucket
121
- */ fileBucket: createBuilder({
122
- type: 'FILE'
123
- }),
130
+ */ fileBucket (config) {
131
+ return initBucket('FILE', config);
132
+ },
124
133
  /**
125
134
  * Create a router
126
135
  */ router: createRouterFactory()
@@ -135,7 +144,7 @@ function createEdgeStoreInner() {
135
144
  // userRole: 'admin' | 'visitor';
136
145
  // };
137
146
  // const es = initEdgeStore.context<Context>().create();
138
- // const imagesBucket = es.imageBucket
147
+ // const imagesBucket = es.imageBucket()
139
148
  // .input(
140
149
  // z.object({
141
150
  // type: z.enum(['profile', 'post']),
@@ -150,7 +159,7 @@ function createEdgeStoreInner() {
150
159
  // .beforeUpload(() => {
151
160
  // return true;
152
161
  // });
153
- // const a = es.imageBucket
162
+ // const a = es.imageBucket()
154
163
  // .input(z.object({ type: z.string(), someMeta: z.string().optional() }))
155
164
  // .path(({ ctx, input }) => [{ author: ctx.userId }, { type: input.type }])
156
165
  // .metadata(({ ctx, input }) => ({
@@ -173,7 +182,7 @@ function createEdgeStoreInner() {
173
182
  // .beforeDelete(({ ctx, file }) => {
174
183
  // return true;
175
184
  // });
176
- // const b = es.imageBucket.path(({ ctx }) => [{ author: ctx.userId }]);
185
+ // const b = es.imageBucket().path(({ ctx }) => [{ author: ctx.userId }]);
177
186
  // const router = es.router({
178
187
  // original: imagesBucket,
179
188
  // imageBucket: a,
package/dist/index.mjs CHANGED
@@ -42,12 +42,14 @@ function createBuilder(opts, initDef) {
42
42
  type: opts.type,
43
43
  input: z.never(),
44
44
  path: [],
45
+ metadata: ()=>({}),
45
46
  ...initDef
46
47
  };
47
48
  return {
48
49
  $config: {
49
50
  ctx: undefined
50
51
  },
52
+ // @ts-expect-error - I think it would be too much work to make this type correct.
51
53
  _def,
52
54
  input (input) {
53
55
  return createNewBuilder(_def, {
@@ -104,19 +106,26 @@ function createRouterFactory() {
104
106
  };
105
107
  };
106
108
  }
109
+ function initBucket(type, config) {
110
+ return createBuilder({
111
+ type
112
+ }, {
113
+ bucketConfig: config
114
+ });
115
+ }
107
116
  function createEdgeStoreInner() {
108
117
  return function initEdgeStoreInner() {
109
118
  return {
110
119
  /**
111
120
  * Builder object for creating an image bucket
112
- */ imageBucket: createBuilder({
113
- type: 'IMAGE'
114
- }),
121
+ */ imageBucket (config) {
122
+ return initBucket('IMAGE', config);
123
+ },
115
124
  /**
116
125
  * Builder object for creating a file bucket
117
- */ fileBucket: createBuilder({
118
- type: 'FILE'
119
- }),
126
+ */ fileBucket (config) {
127
+ return initBucket('FILE', config);
128
+ },
120
129
  /**
121
130
  * Create a router
122
131
  */ router: createRouterFactory()
@@ -131,7 +140,7 @@ function createEdgeStoreInner() {
131
140
  // userRole: 'admin' | 'visitor';
132
141
  // };
133
142
  // const es = initEdgeStore.context<Context>().create();
134
- // const imagesBucket = es.imageBucket
143
+ // const imagesBucket = es.imageBucket()
135
144
  // .input(
136
145
  // z.object({
137
146
  // type: z.enum(['profile', 'post']),
@@ -146,7 +155,7 @@ function createEdgeStoreInner() {
146
155
  // .beforeUpload(() => {
147
156
  // return true;
148
157
  // });
149
- // const a = es.imageBucket
158
+ // const a = es.imageBucket()
150
159
  // .input(z.object({ type: z.string(), someMeta: z.string().optional() }))
151
160
  // .path(({ ctx, input }) => [{ author: ctx.userId }, { type: input.type }])
152
161
  // .metadata(({ ctx, input }) => ({
@@ -169,7 +178,7 @@ function createEdgeStoreInner() {
169
178
  // .beforeDelete(({ ctx, file }) => {
170
179
  // return true;
171
180
  // });
172
- // const b = es.imageBucket.path(({ ctx }) => [{ author: ctx.userId }]);
181
+ // const b = es.imageBucket().path(({ ctx }) => [{ author: ctx.userId }]);
173
182
  // const router = es.router({
174
183
  // original: imagesBucket,
175
184
  // imageBucket: a,
@@ -2,7 +2,6 @@ import { Provider } from '../types';
2
2
  export type EdgeStoreProviderOptions = {
3
3
  accessKey?: string;
4
4
  secretKey?: string;
5
- baseUrl?: string;
6
5
  };
7
6
  export declare function EdgeStoreProvider(options?: EdgeStoreProviderOptions): Provider;
8
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/edgestore/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAoB,MAAM,UAAU,CAAC;AAKtD,MAAM,MAAM,wBAAwB,GAAG;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,wBAAgB,iBAAiB,CAC/B,OAAO,CAAC,EAAE,wBAAwB,GACjC,QAAQ,CA4HV"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/edgestore/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAoB,MAAM,UAAU,CAAC;AAItD,MAAM,MAAM,wBAAwB,GAAG;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,wBAAgB,iBAAiB,CAC/B,OAAO,CAAC,EAAE,wBAAwB,GACjC,QAAQ,CA6HV"}
@@ -2,11 +2,12 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var index = require('../../index-3999aae6.js');
5
+ var index = require('../../index-62d969e5.js');
6
6
 
7
- const DEFAULT_BASE_URL = process.env.EDGE_STORE_BASE_URL ?? 'https://files.edge-store.com';
7
+ const DEFAULT_BASE_URL = 'https://files.edgestore.dev';
8
8
  function EdgeStoreProvider(options) {
9
- const { accessKey = process.env.EDGE_STORE_ACCESS_KEY, secretKey = process.env.EDGE_STORE_SECRET_KEY, baseUrl = process.env.EDGE_STORE_BASE_URL ?? DEFAULT_BASE_URL } = options ?? {};
9
+ const { accessKey = process.env.EDGE_STORE_ACCESS_KEY, secretKey = process.env.EDGE_STORE_SECRET_KEY } = options ?? {};
10
+ const baseUrl = process.env.EDGE_STORE_BASE_URL ?? DEFAULT_BASE_URL;
10
11
  if (!accessKey || !secretKey) {
11
12
  throw new index.EdgeStoreCredentialsError();
12
13
  }
@@ -1,8 +1,9 @@
1
- import { E as EdgeStoreCredentialsError, i as initEdgeStoreSdk } from '../../index-ca41982b.mjs';
1
+ import { E as EdgeStoreCredentialsError, i as initEdgeStoreSdk } from '../../index-579b8015.mjs';
2
2
 
3
- const DEFAULT_BASE_URL = process.env.EDGE_STORE_BASE_URL ?? 'https://files.edge-store.com';
3
+ const DEFAULT_BASE_URL = 'https://files.edgestore.dev';
4
4
  function EdgeStoreProvider(options) {
5
- const { accessKey = process.env.EDGE_STORE_ACCESS_KEY, secretKey = process.env.EDGE_STORE_SECRET_KEY, baseUrl = process.env.EDGE_STORE_BASE_URL ?? DEFAULT_BASE_URL } = options ?? {};
5
+ const { accessKey = process.env.EDGE_STORE_ACCESS_KEY, secretKey = process.env.EDGE_STORE_SECRET_KEY } = options ?? {};
6
+ const baseUrl = process.env.EDGE_STORE_BASE_URL ?? DEFAULT_BASE_URL;
6
7
  if (!accessKey || !secretKey) {
7
8
  throw new EdgeStoreCredentialsError();
8
9
  }
@@ -1,4 +1,4 @@
1
- import { AnyBuilder, EdgeStoreRouter } from '../core/internals/bucketBuilder';
1
+ import { AnyBuilder, AnyMetadata, EdgeStoreRouter } from '../core/internals/bucketBuilder';
2
2
  import { MaybePromise } from '../types';
3
3
  export type InitParams = {
4
4
  ctx: any;
@@ -36,9 +36,7 @@ export type RequestUploadParams = {
36
36
  key: string;
37
37
  value: string;
38
38
  }[];
39
- metadata?: {
40
- [key: string]: string;
41
- };
39
+ metadata: AnyMetadata;
42
40
  replaceTargetUrl?: string;
43
41
  };
44
42
  };
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":"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"}