@edgestore/shared 1.0.0-next.0 → 1.0.0-next.2
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/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/internals/bucketBuilder.d.ts +46 -23
- package/dist/internals/bucketBuilder.d.ts.map +1 -1
- package/dist/internals/bucketBuilder.js +4 -3
- package/dist/internals/providerCapabilities.d.ts +44 -0
- package/dist/internals/providerCapabilities.d.ts.map +1 -0
- package/dist/internals/providerTypes.d.ts +178 -56
- package/dist/internals/providerTypes.d.ts.map +1 -1
- package/dist/internals/schema.d.ts +11 -0
- package/dist/internals/schema.d.ts.map +1 -0
- package/dist/internals/schema.js +36 -0
- package/dist/internals/sharedFuncTypes.d.ts +14 -4
- package/dist/internals/sharedFuncTypes.d.ts.map +1 -1
- package/dist/internals/types.d.ts +1 -1
- package/package.json +7 -8
- package/src/index.ts +7 -0
- package/src/internals/bucketBuilder.ts +85 -28
- package/src/internals/providerCapabilities.ts +126 -0
- package/src/internals/providerTypes.ts +290 -83
- package/src/internals/schema.ts +88 -0
- package/src/internals/sharedFuncTypes.ts +16 -4
- package/src/internals/types.ts +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
export * from './errors/index.js';
|
|
2
2
|
export * from './types.js';
|
|
3
3
|
export * from './internals/bucketBuilder.js';
|
|
4
|
+
export { type AnySchema, type InferSchemaInput, type InferSchemaOutput, parseBucketInput, } from './internals/schema.js';
|
|
4
5
|
export * from './internals/types.js';
|
|
5
6
|
export * from './internals/providerTypes.js';
|
|
7
|
+
export * from './internals/providerCapabilities.js';
|
|
6
8
|
export * from './internals/sharedFuncTypes.js';
|
|
7
9
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,2BAA2B,CAAC;AAC1C,OAAO,EACL,KAAK,SAAS,EACd,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kCAAkC,CAAC;AACjD,cAAc,6BAA6B,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
1
|
import { type KeysOfUnion, type MaybePromise, type Simplify } from '../types.js';
|
|
2
|
+
import { type AnyInput, type AnySchema, type InferSchemaOutput } from './schema.js';
|
|
3
|
+
export type { AnyInput } from './schema.js';
|
|
3
4
|
type Merge<TType, TWith> = {
|
|
4
5
|
[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
6
|
};
|
|
@@ -7,22 +8,36 @@ type ConvertStringToFunction<TType> = {
|
|
|
7
8
|
[K in keyof TType]: TType[K] extends object ? Simplify<ConvertStringToFunction<TType[K]>> : () => string;
|
|
8
9
|
};
|
|
9
10
|
type UnionToIntersection<TType> = (TType extends any ? (k: TType) => void : never) extends (k: infer I) => void ? I : never;
|
|
10
|
-
export type InferBucketPathKeys<TBucket extends
|
|
11
|
+
export type InferBucketPathKeys<TBucket extends AnyBuilder> = KeysOfUnion<TBucket['_def']['path'][number]>;
|
|
11
12
|
type InferBucketPathKeysFromDef<TDef extends AnyDef> = KeysOfUnion<TDef['path'][number]>;
|
|
12
|
-
export type InferBucketPathObject<TBucket extends
|
|
13
|
+
export type InferBucketPathObject<TBucket extends AnyBuilder> = InferBucketPathKeys<TBucket> extends never ? Record<string, never> : {
|
|
13
14
|
[TKey in InferBucketPathKeys<TBucket>]: string;
|
|
14
15
|
};
|
|
15
|
-
export type InferBucketPathOrder<TBucket extends
|
|
16
|
+
export type InferBucketPathOrder<TBucket extends AnyBuilder> = InferBucketPathKeys<TBucket> extends never ? [] : InferBucketPathKeys<TBucket>[];
|
|
16
17
|
export type InferBucketPathObjectFromDef<TDef extends AnyDef> = InferBucketPathKeysFromDef<TDef> extends never ? Record<string, never> : {
|
|
17
18
|
[TKey in InferBucketPathKeysFromDef<TDef>]: string;
|
|
18
19
|
};
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
20
|
+
type NormalizeMetadata<TMetadata> = string extends keyof TMetadata ? Record<string, Exclude<TMetadata[string], null | undefined>> : Simplify<{
|
|
21
|
+
[TKey in keyof TMetadata as Extract<TMetadata[TKey], null | undefined> extends never ? TKey : never]: Exclude<TMetadata[TKey], null | undefined>;
|
|
22
|
+
} & {
|
|
23
|
+
[TKey in keyof TMetadata as Extract<TMetadata[TKey], null | undefined> extends never ? never : TKey]?: Exclude<TMetadata[TKey], null | undefined>;
|
|
24
|
+
}>;
|
|
25
|
+
type InferMetadataObjectFromFn<TMetadata> = [
|
|
26
|
+
Exclude<TMetadata, undefined>
|
|
27
|
+
] extends [never] ? Record<string, never> : Exclude<TMetadata, undefined> extends (...args: any) => any ? NormalizeMetadata<Awaited<ReturnType<Exclude<TMetadata, undefined>>>> : Record<string, never>;
|
|
28
|
+
export type InferMetadataObject<TBucket extends AnyBuilder> = InferMetadataObjectFromFn<TBucket['_def']['metadata']>;
|
|
29
|
+
type InferMetadataObjectFromDef<TDef extends AnyDef> = InferMetadataObjectFromFn<TDef['metadata']>;
|
|
30
|
+
export type AnyContextValue = string | undefined;
|
|
31
|
+
/**
|
|
32
|
+
* Context shared by router hooks, path and metadata builders, and providers.
|
|
33
|
+
*
|
|
34
|
+
* Values are limited to strings so every supported provider receives the same
|
|
35
|
+
* context shape. Optional properties may be `undefined`; providers omit them
|
|
36
|
+
* when serializing the context.
|
|
37
|
+
*/
|
|
22
38
|
export interface AnyContext {
|
|
23
39
|
[key: string]: AnyContextValue;
|
|
24
40
|
}
|
|
25
|
-
export type AnyInput = z.AnyZodObject | z.ZodNever;
|
|
26
41
|
export type AnyPath = Record<string, () => string>[];
|
|
27
42
|
type PathParam<TPath extends AnyPath> = {
|
|
28
43
|
path: keyof UnionToIntersection<TPath[number]>;
|
|
@@ -69,7 +84,7 @@ type BucketConfig = {
|
|
|
69
84
|
};
|
|
70
85
|
type BeforeUploadFn<TCtx, TDef extends AnyDef> = (params: {
|
|
71
86
|
ctx: TCtx;
|
|
72
|
-
input:
|
|
87
|
+
input: InferSchemaOutput<TDef['input']>;
|
|
73
88
|
fileInfo: {
|
|
74
89
|
size: number;
|
|
75
90
|
type: string;
|
|
@@ -92,11 +107,14 @@ type BeforeDeleteFn<TCtx, TDef extends AnyDef> = (params: {
|
|
|
92
107
|
export type AnyMetadata = Record<string, string | undefined | null>;
|
|
93
108
|
type MetadataFn<TCtx, TInput extends AnyInput, TMetadata extends AnyMetadata> = (params: {
|
|
94
109
|
ctx: TCtx;
|
|
95
|
-
input:
|
|
110
|
+
input: InferSchemaOutput<TInput>;
|
|
96
111
|
}) => MaybePromise<TMetadata>;
|
|
97
|
-
export type AnyMetadataFn =
|
|
112
|
+
export type AnyMetadataFn = (params: {
|
|
113
|
+
ctx: any;
|
|
114
|
+
input: any;
|
|
115
|
+
}) => MaybePromise<AnyMetadata>;
|
|
98
116
|
type BucketType = 'IMAGE' | 'FILE';
|
|
99
|
-
type Def<TInput extends AnyInput, TPath extends AnyPath, TMetadata extends AnyMetadataFn> = {
|
|
117
|
+
type Def<TInput extends AnyInput, TPath extends AnyPath, TMetadata extends AnyMetadataFn | undefined> = {
|
|
100
118
|
type: BucketType;
|
|
101
119
|
input: TInput;
|
|
102
120
|
path: TPath;
|
|
@@ -107,7 +125,7 @@ type Def<TInput extends AnyInput, TPath extends AnyPath, TMetadata extends AnyMe
|
|
|
107
125
|
beforeUpload?: BeforeUploadFn<any, any>;
|
|
108
126
|
beforeDelete?: BeforeDeleteFn<any, any>;
|
|
109
127
|
};
|
|
110
|
-
type AnyDef = Def<AnyInput, AnyPath, AnyMetadataFn>;
|
|
128
|
+
type AnyDef = Def<AnyInput, AnyPath, AnyMetadataFn | undefined>;
|
|
111
129
|
type Builder<TCtx, TDef extends AnyDef> = {
|
|
112
130
|
/** only used for types */
|
|
113
131
|
$config: {
|
|
@@ -122,7 +140,7 @@ type Builder<TCtx, TDef extends AnyDef> = {
|
|
|
122
140
|
*
|
|
123
141
|
* This can be used to add additional information to the file, like choose the file path or add metadata.
|
|
124
142
|
*/
|
|
125
|
-
input<TInput extends
|
|
143
|
+
input<TInput extends AnySchema>(input: TInput): Builder<TCtx, {
|
|
126
144
|
type: TDef['type'];
|
|
127
145
|
input: TInput;
|
|
128
146
|
path: TDef['path'];
|
|
@@ -147,7 +165,7 @@ type Builder<TCtx, TDef extends AnyDef> = {
|
|
|
147
165
|
*/
|
|
148
166
|
path<TParams extends AnyPath>(pathResolver: (params: {
|
|
149
167
|
ctx: Simplify<ConvertStringToFunction<TCtx>>;
|
|
150
|
-
input: Simplify<ConvertStringToFunction<
|
|
168
|
+
input: Simplify<ConvertStringToFunction<InferSchemaOutput<TDef['input']>>>;
|
|
151
169
|
}) => [...TParams]): Builder<TCtx, {
|
|
152
170
|
type: TDef['type'];
|
|
153
171
|
input: TDef['input'];
|
|
@@ -241,7 +259,13 @@ type Builder<TCtx, TDef extends AnyDef> = {
|
|
|
241
259
|
beforeDelete: BeforeDeleteFn<any, any>;
|
|
242
260
|
}>;
|
|
243
261
|
};
|
|
244
|
-
|
|
262
|
+
type ErasedBuilder<TCtx> = {
|
|
263
|
+
$config: {
|
|
264
|
+
ctx: TCtx;
|
|
265
|
+
};
|
|
266
|
+
_def: AnyDef;
|
|
267
|
+
};
|
|
268
|
+
export type AnyBuilder = ErasedBuilder<any>;
|
|
245
269
|
declare class EdgeStoreBuilder<TCtx = Record<string, never>> {
|
|
246
270
|
context<TNewContext extends AnyContext>(): EdgeStoreBuilder<TNewContext>;
|
|
247
271
|
create(): {
|
|
@@ -250,9 +274,9 @@ declare class EdgeStoreBuilder<TCtx = Record<string, never>> {
|
|
|
250
274
|
*/
|
|
251
275
|
imageBucket(config?: BucketConfig): Builder<TCtx, {
|
|
252
276
|
type: "IMAGE";
|
|
253
|
-
input:
|
|
277
|
+
input: undefined;
|
|
254
278
|
path: [];
|
|
255
|
-
metadata:
|
|
279
|
+
metadata: undefined;
|
|
256
280
|
bucketConfig?: BucketConfig;
|
|
257
281
|
accessControl?: AccessControl<any, any>;
|
|
258
282
|
autoSignedUrls?: AutoSignedUrlsConfig;
|
|
@@ -264,9 +288,9 @@ declare class EdgeStoreBuilder<TCtx = Record<string, never>> {
|
|
|
264
288
|
*/
|
|
265
289
|
fileBucket(config?: BucketConfig): Builder<TCtx, {
|
|
266
290
|
type: "FILE";
|
|
267
|
-
input:
|
|
291
|
+
input: undefined;
|
|
268
292
|
path: [];
|
|
269
|
-
metadata:
|
|
293
|
+
metadata: undefined;
|
|
270
294
|
bucketConfig?: BucketConfig;
|
|
271
295
|
accessControl?: AccessControl<any, any>;
|
|
272
296
|
autoSignedUrls?: AutoSignedUrlsConfig;
|
|
@@ -276,7 +300,7 @@ declare class EdgeStoreBuilder<TCtx = Record<string, never>> {
|
|
|
276
300
|
/**
|
|
277
301
|
* Create a router
|
|
278
302
|
*/
|
|
279
|
-
router: <TBuckets extends Record<string,
|
|
303
|
+
router: <TBuckets extends Record<string, ErasedBuilder<TCtx>>>(buckets: TBuckets) => {
|
|
280
304
|
$config: {
|
|
281
305
|
ctx: TCtx;
|
|
282
306
|
};
|
|
@@ -284,7 +308,7 @@ declare class EdgeStoreBuilder<TCtx = Record<string, never>> {
|
|
|
284
308
|
};
|
|
285
309
|
};
|
|
286
310
|
}
|
|
287
|
-
export type EdgeStoreRouter<TCtx, TBuckets extends Record<string,
|
|
311
|
+
export type EdgeStoreRouter<TCtx, TBuckets extends Record<string, ErasedBuilder<TCtx>> = Record<string, ErasedBuilder<TCtx>>> = {
|
|
288
312
|
/**
|
|
289
313
|
* Only used for types
|
|
290
314
|
* @internal
|
|
@@ -299,5 +323,4 @@ export type AnyRouter = EdgeStoreRouter<any, Record<string, AnyBuilder>>;
|
|
|
299
323
|
* Initialize EdgeStore - be done exactly once per backend
|
|
300
324
|
*/
|
|
301
325
|
export declare const initEdgeStore: EdgeStoreBuilder<Record<string, never>>;
|
|
302
|
-
export {};
|
|
303
326
|
//# sourceMappingURL=bucketBuilder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bucketBuilder.d.ts","sourceRoot":"","sources":["../../src/internals/bucketBuilder.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bucketBuilder.d.ts","sourceRoot":"","sources":["../../src/internals/bucketBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
1
|
import { EdgeStoreError } from '../errors/EdgeStoreError.js';
|
|
3
2
|
import { createPathParamProxy } from './createPathParamProxy.js';
|
|
3
|
+
import { assertStandardSchema } from './schema.js';
|
|
4
4
|
|
|
5
5
|
const createNewBuilder = (initDef, newDef)=>{
|
|
6
6
|
const mergedDef = {
|
|
@@ -14,9 +14,9 @@ const createNewBuilder = (initDef, newDef)=>{
|
|
|
14
14
|
function createBuilder(opts, initDef) {
|
|
15
15
|
const _def = {
|
|
16
16
|
type: opts.type,
|
|
17
|
-
input:
|
|
17
|
+
input: undefined,
|
|
18
18
|
path: [],
|
|
19
|
-
metadata:
|
|
19
|
+
metadata: undefined,
|
|
20
20
|
...initDef
|
|
21
21
|
};
|
|
22
22
|
return {
|
|
@@ -26,6 +26,7 @@ function createBuilder(opts, initDef) {
|
|
|
26
26
|
// @ts-expect-error - I think it would be too much work to make this type correct.
|
|
27
27
|
_def,
|
|
28
28
|
input (input) {
|
|
29
|
+
assertStandardSchema(input);
|
|
29
30
|
return createNewBuilder(_def, {
|
|
30
31
|
input
|
|
31
32
|
});
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { StandardSchemaV1 } from '@standard-schema/spec';
|
|
2
|
+
import type { BackendFile, GetSignedUrlRes, ProviderFileMutationResult } from './providerTypes.js';
|
|
3
|
+
export type ProviderCapabilityName = 'upload' | 'get' | 'list' | 'confirm' | 'delete' | 'restore' | 'getSignedUrls';
|
|
4
|
+
export type ProviderCapability<TProvider, TName extends ProviderCapabilityName> = TName extends 'upload' ? TProvider extends {
|
|
5
|
+
uploads: {
|
|
6
|
+
upload: infer TOperation;
|
|
7
|
+
};
|
|
8
|
+
} ? Extract<TOperation, (...args: never[]) => unknown> : never : TProvider extends {
|
|
9
|
+
files: infer TFiles;
|
|
10
|
+
} ? TName extends keyof TFiles ? Extract<TFiles[TName], (...args: never[]) => unknown> : never : never;
|
|
11
|
+
export type ProviderCapabilityInput<TProvider, TName extends ProviderCapabilityName> = Parameters<ProviderCapability<TProvider, TName>>[0];
|
|
12
|
+
export type ProviderCapabilityResult<TProvider, TName extends ProviderCapabilityName> = Awaited<ReturnType<ProviderCapability<TProvider, TName>>>;
|
|
13
|
+
type ProviderReferenceSchema<TProvider> = TProvider extends {
|
|
14
|
+
reference: {
|
|
15
|
+
schema: infer TSchema extends StandardSchemaV1;
|
|
16
|
+
};
|
|
17
|
+
} ? TSchema : never;
|
|
18
|
+
export type ProviderReferenceInput<TProvider> = StandardSchemaV1.InferInput<ProviderReferenceSchema<TProvider>>;
|
|
19
|
+
export type ProviderReference<TProvider> = StandardSchemaV1.InferOutput<ProviderReferenceSchema<TProvider>>;
|
|
20
|
+
export type ProviderCursor<TProvider> = TProvider extends {
|
|
21
|
+
files: {
|
|
22
|
+
cursorSchema: infer TSchema extends StandardSchemaV1;
|
|
23
|
+
};
|
|
24
|
+
} ? StandardSchemaV1.InferOutput<TSchema> : string;
|
|
25
|
+
export type ProviderCapabilityFile<TProvider, TName extends 'upload' | 'get' | 'list'> = TName extends 'upload' ? ProviderCapabilityResult<TProvider, TName> extends {
|
|
26
|
+
file: infer TFile extends BackendFile;
|
|
27
|
+
} ? TFile : never : TName extends 'list' ? ProviderCapabilityResult<TProvider, TName> extends {
|
|
28
|
+
items: (infer TFile extends BackendFile)[];
|
|
29
|
+
} ? TFile : never : ProviderCapabilityResult<TProvider, TName> extends BackendFile ? ProviderCapabilityResult<TProvider, TName> : never;
|
|
30
|
+
export type ProviderMutationItem<TProvider, TName extends 'confirm' | 'delete' | 'restore'> = ProviderCapabilityResult<TProvider, TName> extends {
|
|
31
|
+
results: (infer TItem)[];
|
|
32
|
+
} ? TItem : never;
|
|
33
|
+
export type ProviderMutationError<TProvider, TName extends 'confirm' | 'delete' | 'restore'> = Extract<ProviderMutationItem<TProvider, TName>, {
|
|
34
|
+
success: false;
|
|
35
|
+
}> extends {
|
|
36
|
+
error: infer TError;
|
|
37
|
+
} ? TError : never;
|
|
38
|
+
type ProviderMutationErrorCode<TProvider, TName extends 'confirm' | 'delete' | 'restore'> = ProviderMutationError<TProvider, TName> extends {
|
|
39
|
+
code: infer TErrorCode extends string;
|
|
40
|
+
} ? TErrorCode : never;
|
|
41
|
+
export type ProviderSignedUrlResult<TProvider> = ProviderCapabilityResult<TProvider, 'getSignedUrls'> extends (infer TResult extends GetSignedUrlRes)[] ? TResult : never;
|
|
42
|
+
export type ProviderMutationResult<TProvider, TName extends 'confirm' | 'delete' | 'restore'> = ProviderFileMutationResult<ProviderMutationErrorCode<TProvider, TName>>;
|
|
43
|
+
export {};
|
|
44
|
+
//# sourceMappingURL=providerCapabilities.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"providerCapabilities.d.ts","sourceRoot":"","sources":["../../src/internals/providerCapabilities.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,25 +1,17 @@
|
|
|
1
|
+
import type { StandardSchemaV1 } from '@standard-schema/spec';
|
|
1
2
|
import { type MaybePromise } from '../types.js';
|
|
2
|
-
import { type
|
|
3
|
-
export type InitParams = {
|
|
4
|
-
ctx:
|
|
5
|
-
router: EdgeStoreRouter<
|
|
3
|
+
import { type AnyContext, type AnyMetadata, type EdgeStoreRouter } from './bucketBuilder.js';
|
|
4
|
+
export type InitParams<TCtx extends AnyContext = AnyContext> = {
|
|
5
|
+
ctx: TCtx;
|
|
6
|
+
router: EdgeStoreRouter<TCtx>;
|
|
7
|
+
};
|
|
8
|
+
export type ClientInit = {
|
|
9
|
+
path: string;
|
|
10
|
+
headers?: Record<string, string>;
|
|
6
11
|
};
|
|
7
12
|
export type InitRes = {
|
|
8
13
|
token?: string;
|
|
9
|
-
|
|
10
|
-
export type GetFileParams = {
|
|
11
|
-
url: string;
|
|
12
|
-
};
|
|
13
|
-
export type GetFileRes = {
|
|
14
|
-
url: string;
|
|
15
|
-
size: number;
|
|
16
|
-
uploadedAt: Date;
|
|
17
|
-
path: {
|
|
18
|
-
[key: string]: string;
|
|
19
|
-
};
|
|
20
|
-
metadata: {
|
|
21
|
-
[key: string]: string;
|
|
22
|
-
};
|
|
14
|
+
clientInit?: ClientInit;
|
|
23
15
|
};
|
|
24
16
|
export type RequestUploadParams = {
|
|
25
17
|
multipart?: {
|
|
@@ -29,6 +21,7 @@ export type RequestUploadParams = {
|
|
|
29
21
|
bucketName: string;
|
|
30
22
|
bucketType: string;
|
|
31
23
|
fileInfo: {
|
|
24
|
+
type?: string;
|
|
32
25
|
size: number;
|
|
33
26
|
extension: string;
|
|
34
27
|
isPublic: boolean;
|
|
@@ -46,6 +39,122 @@ export type RequestUploadParams = {
|
|
|
46
39
|
includeThumbnails?: boolean;
|
|
47
40
|
};
|
|
48
41
|
};
|
|
42
|
+
export type ProviderFilterValue = string | Partial<{
|
|
43
|
+
eq: string;
|
|
44
|
+
neq: string;
|
|
45
|
+
gt: string;
|
|
46
|
+
gte: string;
|
|
47
|
+
lt: string;
|
|
48
|
+
lte: string;
|
|
49
|
+
startsWith: string;
|
|
50
|
+
endsWith: string;
|
|
51
|
+
between: [string, string];
|
|
52
|
+
}>;
|
|
53
|
+
export type ListFilesFilter = {
|
|
54
|
+
AND?: ListFilesFilter[];
|
|
55
|
+
OR?: ListFilesFilter[];
|
|
56
|
+
uploadedAt?: ProviderFilterValue;
|
|
57
|
+
path?: Record<string, ProviderFilterValue>;
|
|
58
|
+
metadata?: Record<string, ProviderFilterValue>;
|
|
59
|
+
};
|
|
60
|
+
export type FileReference = {
|
|
61
|
+
id: string;
|
|
62
|
+
} | {
|
|
63
|
+
key: string;
|
|
64
|
+
} | {
|
|
65
|
+
url: string;
|
|
66
|
+
};
|
|
67
|
+
export type ProviderFile = {
|
|
68
|
+
id: string;
|
|
69
|
+
url: string;
|
|
70
|
+
key: string;
|
|
71
|
+
thumbnailUrl: string | null;
|
|
72
|
+
thumbnailKey: string | null;
|
|
73
|
+
bucketId: string;
|
|
74
|
+
bucketName: string;
|
|
75
|
+
projectId: string;
|
|
76
|
+
accountId: string;
|
|
77
|
+
name: string;
|
|
78
|
+
path: Record<string, string>;
|
|
79
|
+
metadata: Record<string, string>;
|
|
80
|
+
sizeBytes: number;
|
|
81
|
+
mimeType: string | null;
|
|
82
|
+
state: 'requested' | 'uploaded' | 'deleted' | 'replace_requested';
|
|
83
|
+
temporary: boolean;
|
|
84
|
+
uploadedAt: Date;
|
|
85
|
+
updatedAt: Date;
|
|
86
|
+
};
|
|
87
|
+
export type BackendFile = {
|
|
88
|
+
url: string;
|
|
89
|
+
sizeBytes: number;
|
|
90
|
+
/** Router-derived path values, when this operation retrieves them. */
|
|
91
|
+
path?: Record<string, string>;
|
|
92
|
+
/** Router-derived metadata values, when this operation retrieves them. */
|
|
93
|
+
metadata?: Record<string, string>;
|
|
94
|
+
uploadedAt: Date | string;
|
|
95
|
+
updatedAt: Date | string;
|
|
96
|
+
};
|
|
97
|
+
export type ProviderFileMutationResult<TErrorCode extends string = 'FILE_NOT_CONFIRMABLE' | 'FILE_NOT_DELETABLE' | 'FILE_NOT_RESTORABLE' | 'INVALID_FILE_REF'> = {
|
|
98
|
+
results: ({
|
|
99
|
+
success: true;
|
|
100
|
+
} | {
|
|
101
|
+
success: false;
|
|
102
|
+
error: {
|
|
103
|
+
code: TErrorCode;
|
|
104
|
+
message: string;
|
|
105
|
+
};
|
|
106
|
+
})[];
|
|
107
|
+
};
|
|
108
|
+
export type BackendUploadParams = {
|
|
109
|
+
bucketName: string;
|
|
110
|
+
bucketType: string;
|
|
111
|
+
fileInfo: RequestUploadParams['fileInfo'];
|
|
112
|
+
autoSignedUrls?: RequestUploadParams['autoSignedUrls'];
|
|
113
|
+
source: Blob;
|
|
114
|
+
signal?: AbortSignal;
|
|
115
|
+
onProgress?: (progress: {
|
|
116
|
+
transferredBytes: number;
|
|
117
|
+
totalBytes: number;
|
|
118
|
+
percentage: number;
|
|
119
|
+
phase: 'preparing' | 'uploading' | 'processing';
|
|
120
|
+
}) => void;
|
|
121
|
+
};
|
|
122
|
+
export type BackendUploadResult<TFile extends BackendFile = ProviderFile> = {
|
|
123
|
+
file: TFile;
|
|
124
|
+
signedReadUrl?: {
|
|
125
|
+
signedUrl: string;
|
|
126
|
+
signedThumbnailUrl?: string | null;
|
|
127
|
+
expiresAt: Date | string;
|
|
128
|
+
expiresIn: number;
|
|
129
|
+
};
|
|
130
|
+
};
|
|
131
|
+
export type BackendUploadOperation<TFile extends BackendFile = ProviderFile> = (params: BackendUploadParams) => MaybePromise<BackendUploadResult<TFile>>;
|
|
132
|
+
export type BackendGetFileOperation<TFile extends BackendFile = ProviderFile, TFileReference = FileReference> = (params: {
|
|
133
|
+
bucketName: string;
|
|
134
|
+
file: TFileReference;
|
|
135
|
+
}) => MaybePromise<TFile>;
|
|
136
|
+
export type BackendListFilesResult<TFile extends BackendFile = ProviderFile, TCursor = string> = {
|
|
137
|
+
items: TFile[];
|
|
138
|
+
limit: number;
|
|
139
|
+
nextCursor: TCursor | null;
|
|
140
|
+
hasMore: boolean;
|
|
141
|
+
};
|
|
142
|
+
export type BackendListFilesOperation<TFile extends BackendFile = ProviderFile, TCursor = string> = (params: {
|
|
143
|
+
bucketName: string;
|
|
144
|
+
filter?: ListFilesFilter;
|
|
145
|
+
cursor?: TCursor;
|
|
146
|
+
limit?: number;
|
|
147
|
+
}) => MaybePromise<BackendListFilesResult<TFile, TCursor>>;
|
|
148
|
+
export type BackendFileMutationOperation<TFileReference = FileReference, TErrorCode extends string = 'FILE_NOT_CONFIRMABLE' | 'FILE_NOT_DELETABLE' | 'FILE_NOT_RESTORABLE' | 'INVALID_FILE_REF'> = (params: {
|
|
149
|
+
bucketName: string;
|
|
150
|
+
files: TFileReference[];
|
|
151
|
+
}) => MaybePromise<ProviderFileMutationResult<TErrorCode>>;
|
|
152
|
+
export type BackendGetSignedUrlsOperation<TFileReference = FileReference, TResult extends GetSignedUrlRes = GetSignedUrlRes> = (params: {
|
|
153
|
+
bucketName: string;
|
|
154
|
+
files: TFileReference[];
|
|
155
|
+
expiresIn?: number;
|
|
156
|
+
includeThumbnails?: boolean;
|
|
157
|
+
}) => MaybePromise<TResult[]>;
|
|
49
158
|
export type RequestUploadPartsParams = {
|
|
50
159
|
multipart: {
|
|
51
160
|
uploadId: string;
|
|
@@ -70,18 +179,18 @@ export type CompleteMultipartUploadParams = {
|
|
|
70
179
|
eTag: string;
|
|
71
180
|
}[];
|
|
72
181
|
};
|
|
73
|
-
|
|
74
|
-
success: boolean;
|
|
75
|
-
};
|
|
76
|
-
export type RequestUploadRes = {
|
|
77
|
-
uploadUrl: string;
|
|
182
|
+
type RequestUploadAccess = {
|
|
78
183
|
accessUrl: string;
|
|
79
184
|
thumbnailUrl?: string | null;
|
|
80
185
|
accessSignedUrl?: string;
|
|
81
186
|
accessSignedThumbnailUrl?: string | null;
|
|
82
187
|
accessSignedUrlExpiresAt?: Date | string;
|
|
83
188
|
accessSignedUrlExpiresIn?: number;
|
|
84
|
-
}
|
|
189
|
+
};
|
|
190
|
+
export type SinglePartRequestUploadRes = RequestUploadAccess & {
|
|
191
|
+
uploadUrl: string;
|
|
192
|
+
};
|
|
193
|
+
export type MultipartRequestUploadRes = RequestUploadAccess & {
|
|
85
194
|
multipart: {
|
|
86
195
|
key: string;
|
|
87
196
|
uploadId: string;
|
|
@@ -92,19 +201,8 @@ export type RequestUploadRes = {
|
|
|
92
201
|
uploadUrl: string;
|
|
93
202
|
}[];
|
|
94
203
|
};
|
|
95
|
-
accessUrl: string;
|
|
96
|
-
thumbnailUrl?: string | null;
|
|
97
|
-
accessSignedUrl?: string;
|
|
98
|
-
accessSignedThumbnailUrl?: string | null;
|
|
99
|
-
accessSignedUrlExpiresAt?: Date | string;
|
|
100
|
-
accessSignedUrlExpiresIn?: number;
|
|
101
|
-
};
|
|
102
|
-
export type GetSignedUrlsParams = {
|
|
103
|
-
bucketName: string;
|
|
104
|
-
urls: string[];
|
|
105
|
-
expiresIn?: number;
|
|
106
|
-
includeThumbnails?: boolean;
|
|
107
204
|
};
|
|
205
|
+
export type RequestUploadRes = SinglePartRequestUploadRes | MultipartRequestUploadRes;
|
|
108
206
|
export type GetSignedUrlRes = {
|
|
109
207
|
url: string;
|
|
110
208
|
signedUrl: string;
|
|
@@ -113,30 +211,54 @@ export type GetSignedUrlRes = {
|
|
|
113
211
|
thumbnailUrl?: string | null;
|
|
114
212
|
signedThumbnailUrl?: string | null;
|
|
115
213
|
};
|
|
116
|
-
export type
|
|
117
|
-
|
|
118
|
-
url: string
|
|
214
|
+
export type ProviderReferenceDefinition<TSchema extends StandardSchemaV1 = StandardSchemaV1> = {
|
|
215
|
+
schema: TSchema;
|
|
216
|
+
fromUrl: (url: string) => MaybePromise<unknown>;
|
|
119
217
|
};
|
|
120
|
-
|
|
121
|
-
|
|
218
|
+
type ProviderUploadBase<TUpload extends BackendUploadOperation<BackendFile> | undefined = BackendUploadOperation<BackendFile> | undefined> = {
|
|
219
|
+
upload?: TUpload;
|
|
122
220
|
};
|
|
123
|
-
export type
|
|
124
|
-
|
|
125
|
-
|
|
221
|
+
export type ProviderMultipartUploads = {
|
|
222
|
+
requestParts: (params: RequestUploadPartsParams) => MaybePromise<RequestUploadPartsRes>;
|
|
223
|
+
complete: (params: CompleteMultipartUploadParams) => MaybePromise<void>;
|
|
126
224
|
};
|
|
127
|
-
export type
|
|
128
|
-
|
|
225
|
+
export type ProviderUploads<TUpload extends BackendUploadOperation<BackendFile> | undefined = BackendUploadOperation<BackendFile> | undefined> = (ProviderUploadBase<TUpload> & {
|
|
226
|
+
request: (params: RequestUploadParams) => MaybePromise<SinglePartRequestUploadRes>;
|
|
227
|
+
multipart?: never;
|
|
228
|
+
}) | (ProviderUploadBase<TUpload> & {
|
|
229
|
+
request: (params: RequestUploadParams) => MaybePromise<RequestUploadRes>;
|
|
230
|
+
multipart: ProviderMultipartUploads;
|
|
231
|
+
});
|
|
232
|
+
export type ProviderFiles<TFileReference = FileReference, TCursor = string, TGet extends BackendGetFileOperation<BackendFile, TFileReference> = BackendGetFileOperation<BackendFile, TFileReference>, TList extends BackendListFilesOperation<BackendFile, TCursor> | undefined = BackendListFilesOperation<BackendFile, TCursor> | undefined, TConfirm extends BackendFileMutationOperation<TFileReference, string> | undefined = BackendFileMutationOperation<TFileReference, string> | undefined, TDelete extends BackendFileMutationOperation<TFileReference, string> | undefined = BackendFileMutationOperation<TFileReference, string> | undefined, TRestore extends BackendFileMutationOperation<TFileReference, string> | undefined = BackendFileMutationOperation<TFileReference, string> | undefined, TGetSignedUrls extends BackendGetSignedUrlsOperation<TFileReference> | undefined = BackendGetSignedUrlsOperation<TFileReference> | undefined> = {
|
|
233
|
+
cursorSchema?: StandardSchemaV1<unknown, TCursor>;
|
|
234
|
+
get: TGet;
|
|
235
|
+
list?: TList;
|
|
236
|
+
confirm?: TConfirm;
|
|
237
|
+
delete?: TDelete;
|
|
238
|
+
restore?: TRestore;
|
|
239
|
+
getSignedUrls?: TGetSignedUrls;
|
|
129
240
|
};
|
|
130
|
-
export type
|
|
241
|
+
export type EdgeStoreProvider<TReferenceSchema extends StandardSchemaV1 = StandardSchemaV1<unknown, FileReference>, TCursor = string, TUploads extends ProviderUploads = ProviderUploads, TFiles extends ProviderFiles<StandardSchemaV1.InferOutput<TReferenceSchema>, TCursor> = ProviderFiles<StandardSchemaV1.InferOutput<TReferenceSchema>, TCursor>> = {
|
|
131
242
|
name: string;
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
243
|
+
baseUrl: string | (() => MaybePromise<string>);
|
|
244
|
+
init: <TCtx extends AnyContext>(params: InitParams<TCtx>) => MaybePromise<InitRes>;
|
|
245
|
+
reference: ProviderReferenceDefinition<TReferenceSchema>;
|
|
246
|
+
uploads: TUploads;
|
|
247
|
+
files: TFiles;
|
|
248
|
+
};
|
|
249
|
+
export type AnyEdgeStoreProvider = EdgeStoreProvider<StandardSchemaV1<any, any>, any, ProviderUploads, ProviderFiles<any, any>>;
|
|
250
|
+
export type DefaultEdgeStoreProvider = EdgeStoreProvider<StandardSchemaV1<unknown, FileReference>, string> & {
|
|
251
|
+
uploads: ProviderUploads<BackendUploadOperation> & {
|
|
252
|
+
upload: BackendUploadOperation;
|
|
253
|
+
};
|
|
254
|
+
files: ProviderFiles<FileReference, string> & {
|
|
255
|
+
get: BackendGetFileOperation;
|
|
256
|
+
list: BackendListFilesOperation;
|
|
257
|
+
confirm: BackendFileMutationOperation;
|
|
258
|
+
delete: BackendFileMutationOperation;
|
|
259
|
+
restore: BackendFileMutationOperation;
|
|
260
|
+
getSignedUrls: BackendGetSignedUrlsOperation;
|
|
261
|
+
};
|
|
141
262
|
};
|
|
263
|
+
export {};
|
|
142
264
|
//# sourceMappingURL=providerTypes.d.ts.map
|