@freehour/supabase-core 1.0.3 → 1.1.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.
- package/README.md +1 -0
- package/dist/data-service.d.ts +4 -53
- package/dist/data-service.d.ts.map +1 -1
- package/dist/data.d.ts +53 -0
- package/dist/data.d.ts.map +1 -0
- package/dist/database.d.ts +2 -10
- package/dist/database.d.ts.map +1 -1
- package/dist/embedding-service.d.ts +49 -0
- package/dist/embedding-service.d.ts.map +1 -0
- package/dist/embedding.d.ts +33 -0
- package/dist/embedding.d.ts.map +1 -0
- package/dist/errors.d.ts +26 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +388 -274
- package/dist/storage-service.d.ts +12 -56
- package/dist/storage-service.d.ts.map +1 -1
- package/dist/storage.d.ts +22 -12
- package/dist/storage.d.ts.map +1 -1
- package/dist/utils.d.ts +7 -0
- package/dist/utils.d.ts.map +1 -1
- package/package.json +2 -1
- package/supabase/schemas/supabase-core/2_extensions.sql +0 -1
|
@@ -1,10 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { SearchV2Options, SearchV2Result } from '@supabase/storage-js';
|
|
2
2
|
import { DatabaseService } from './database-service';
|
|
3
|
-
import { FileInfo, PublicURLOptions,
|
|
4
|
-
import { MaybeArray } from './utils';
|
|
5
|
-
export declare class StorageClient<BucketName extends string = string> extends SupabaseStorageClient {
|
|
6
|
-
from(bucket: BucketName | (string & {})): ReturnType<SupabaseStorageClient['from']>;
|
|
7
|
-
}
|
|
3
|
+
import { FileInfo, FilePointer, FileRef, PublicURLOptions, StorageClient, StorageLocation, UploadFileOptions } from './storage';
|
|
8
4
|
export interface StorageServiceParams<BucketName extends string = string> {
|
|
9
5
|
client: StorageClient<BucketName>;
|
|
10
6
|
database: DatabaseService<any>;
|
|
@@ -17,57 +13,17 @@ export declare class StorageService<BucketName extends string = string> {
|
|
|
17
13
|
private readonly database;
|
|
18
14
|
constructor({ client, database, }: StorageServiceParams<BucketName>);
|
|
19
15
|
private get files();
|
|
20
|
-
|
|
16
|
+
private getFileObject;
|
|
17
|
+
getFiles(bucket: BucketName, options?: SearchV2Options): Promise<SearchV2Result>;
|
|
18
|
+
getFileStorageLocation(fileRef: FileRef<BucketName>): Promise<StorageLocation>;
|
|
19
|
+
getFileInfo(fileRef: FileRef<BucketName>): Promise<FileInfo>;
|
|
20
|
+
getPublicURL(fileRef: FileRef<BucketName>, options?: PublicURLOptions): Promise<string>;
|
|
21
|
+
existsFile(fileRef: FileRef<BucketName>): Promise<boolean>;
|
|
22
|
+
assertExistsFile(fileRef: FileRef<BucketName>): Promise<void>;
|
|
23
|
+
uploadFile(file: File, { bucket, path }: FilePointer<BucketName>, { overwriteExisting }?: UploadFileOptions): Promise<StorageLocation>;
|
|
24
|
+
downloadFile(fileRef: FileRef<BucketName>): Promise<StorageLocation & {
|
|
21
25
|
file: File;
|
|
22
|
-
bucket: BucketName;
|
|
23
|
-
path: string;
|
|
24
|
-
overwriteExisting?: boolean;
|
|
25
|
-
}): Promise<StorageLocation>;
|
|
26
|
-
downloadFile(params: {
|
|
27
|
-
bucket: BucketName;
|
|
28
|
-
path: string;
|
|
29
|
-
properties?: FilePropertyBag;
|
|
30
|
-
} | {
|
|
31
|
-
fileId: string;
|
|
32
|
-
}): Promise<File>;
|
|
33
|
-
deleteFiles(params: MaybeArray<{
|
|
34
|
-
bucket: BucketName;
|
|
35
|
-
paths: string | string[];
|
|
36
|
-
}> | {
|
|
37
|
-
fileIds: string[];
|
|
38
|
-
}): Promise<StorageLocation[]>;
|
|
39
|
-
existsFile(params: {
|
|
40
|
-
bucket: BucketName;
|
|
41
|
-
path: string;
|
|
42
|
-
} | {
|
|
43
|
-
fileId: string;
|
|
44
|
-
}): Promise<boolean>;
|
|
45
|
-
assertExistsFile(params: {
|
|
46
|
-
bucket: BucketName;
|
|
47
|
-
path: string;
|
|
48
|
-
} | {
|
|
49
|
-
fileId: string;
|
|
50
|
-
}): Promise<void>;
|
|
51
|
-
getFiles({ bucket, ...options }: {
|
|
52
|
-
bucket: BucketName;
|
|
53
|
-
} & SearchV2Options): Promise<{
|
|
54
|
-
hasNext: boolean;
|
|
55
|
-
folders: SearchV2Folder[];
|
|
56
|
-
objects: SearchV2Object[];
|
|
57
|
-
nextCursor?: string;
|
|
58
26
|
}>;
|
|
59
|
-
|
|
60
|
-
getFileInfo(params: {
|
|
61
|
-
bucket: BucketName;
|
|
62
|
-
path: string;
|
|
63
|
-
} | {
|
|
64
|
-
fileId: string;
|
|
65
|
-
}): Promise<FileInfo>;
|
|
66
|
-
getPublicURL({ transform, download, ...params }: ({
|
|
67
|
-
bucket: BucketName;
|
|
68
|
-
path: string;
|
|
69
|
-
} | {
|
|
70
|
-
fileId: string;
|
|
71
|
-
}) & PublicURLOptions): Promise<string>;
|
|
27
|
+
deleteFiles(fileRefs: FileRef<BucketName>[]): Promise<StorageLocation[]>;
|
|
72
28
|
}
|
|
73
29
|
//# sourceMappingURL=storage-service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage-service.d.ts","sourceRoot":"","sources":["../lib/storage-service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"storage-service.d.ts","sourceRoot":"","sources":["../lib/storage-service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAA0B,eAAe,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEpG,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE1D,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAIrI,MAAM,WAAW,oBAAoB,CACjC,UAAU,SAAS,MAAM,GAAG,MAAM;IAElC,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IAClC,QAAQ,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC;CAClC;AAED;;GAEG;AACH,qBAAa,cAAc,CACvB,UAAU,SAAS,MAAM,GAAG,MAAM;IAElC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA4B;IACnD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAkB;gBAE/B,EACR,MAAM,EACN,QAAQ,GACX,EAAE,oBAAoB,CAAC,UAAU,CAAC;IAKnC,OAAO,KAAK,KAAK,GAEhB;YAEa,aAAa;IAYrB,QAAQ,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC;IAYhF,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC;IAsB9E,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC;IAsB5D,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC;IAUvF,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAc1D,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB7D,UAAU,CACZ,IAAI,EAAE,IAAI,EACV,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,WAAW,CAAC,UAAU,CAAC,EACzC,EAAE,iBAAyB,EAAE,GAAE,iBAAsB,GACtD,OAAO,CAAC,eAAe,CAAC;IAsBrB,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,eAAe,GAAG;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,CAAC;IAoBrF,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,EAAE,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;CA2CjF"}
|
package/dist/storage.d.ts
CHANGED
|
@@ -1,20 +1,30 @@
|
|
|
1
|
-
import { Camelize, FileObjectV2, TransformOptions } from '@supabase/storage-js';
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
export
|
|
5
|
-
|
|
6
|
-
download?: string | boolean;
|
|
7
|
-
transform?: TransformOptions;
|
|
1
|
+
import { Camelize, FileObjectV2, TransformOptions, StorageClient as SupabaseStorageClient } from '@supabase/storage-js';
|
|
2
|
+
import { StorageObjectsTable } from './database';
|
|
3
|
+
import { OmitFrom } from './utils';
|
|
4
|
+
export declare class StorageClient<BucketName extends string = string> extends SupabaseStorageClient {
|
|
5
|
+
from(bucket: BucketName | (string & {})): ReturnType<SupabaseStorageClient['from']>;
|
|
8
6
|
}
|
|
7
|
+
export type StorageObject = StorageObjectsTable['Row'];
|
|
9
8
|
export interface StorageLocation {
|
|
10
|
-
|
|
9
|
+
fileId: string;
|
|
11
10
|
bucket: string;
|
|
12
11
|
path: string;
|
|
13
12
|
}
|
|
14
|
-
export interface
|
|
15
|
-
|
|
13
|
+
export interface FilePointer<BucketName extends string = string> {
|
|
14
|
+
bucket: BucketName;
|
|
15
|
+
path: string;
|
|
16
|
+
}
|
|
17
|
+
export type FileRef<BucketName extends string = string> = {
|
|
18
|
+
fileId: string;
|
|
19
|
+
} | FilePointer<BucketName>;
|
|
20
|
+
export interface FileInfo extends OmitFrom<Camelize<FileObjectV2>, 'id' | 'bucketId'>, StorageLocation {
|
|
16
21
|
properties: FilePropertyBag;
|
|
17
22
|
}
|
|
18
|
-
export
|
|
19
|
-
|
|
23
|
+
export interface PublicURLOptions {
|
|
24
|
+
download?: string | boolean;
|
|
25
|
+
transform?: TransformOptions;
|
|
26
|
+
}
|
|
27
|
+
export interface UploadFileOptions {
|
|
28
|
+
overwriteExisting?: boolean;
|
|
29
|
+
}
|
|
20
30
|
//# sourceMappingURL=storage.d.ts.map
|
package/dist/storage.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../lib/storage.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../lib/storage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACrF,OAAO,EAAE,aAAa,IAAI,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE9E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGxC,MAAM,CAAC,OAAO,OAAO,aAAa,CAAC,UAAU,SAAS,MAAM,GAAG,MAAM,CAAE,SAAQ,qBAAqB;IAChG,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,GAAG,UAAU,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;CACtF;AAED,MAAM,MAAM,aAAa,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;AAEvD,MAAM,WAAW,eAAe;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW,CAAC,UAAU,SAAS,MAAM,GAAG,MAAM;IAC3D,MAAM,EAAE,UAAU,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,OAAO,CAAC,UAAU,SAAS,MAAM,GAAG,MAAM,IAAI;IACtD,MAAM,EAAE,MAAM,CAAC;CAClB,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;AAE5B,MAAM,WAAW,QAAS,SAAQ,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,IAAI,GAAG,UAAU,CAAC,EAAE,eAAe;IAClG,UAAU,EAAE,eAAe,CAAC;CAC/B;AAED,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5B,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAChC;AAED,MAAM,WAAW,iBAAiB;IAC9B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC/B"}
|
package/dist/utils.d.ts
CHANGED
|
@@ -54,6 +54,13 @@ export declare function coerceArray<T>(input: MaybeArray<T>): T[];
|
|
|
54
54
|
* @returns The grouped items as a record where keys are the grouping keys and values are the grouped items.
|
|
55
55
|
*/
|
|
56
56
|
export declare function groupBy<T, G extends PropertyKey>(items: T[], groupFn: (item: T) => G): Record<G, T[]>;
|
|
57
|
+
/**
|
|
58
|
+
* Removes the first element from an array that matches a given predicate function.
|
|
59
|
+
* @param array The array from which to remove the element.
|
|
60
|
+
* @param predicate The function that determines whether an element should be removed. It should return `true` for the element to remove.
|
|
61
|
+
* @returns The modified array with the element removed, if found. If no element matches the predicate, the original array is returned unchanged.
|
|
62
|
+
*/
|
|
63
|
+
export declare function removeElement<T>(array: T[], predicate: (item: T) => boolean): T[];
|
|
57
64
|
/**
|
|
58
65
|
* Extracts entries from an object as tuples of key-value pairs.
|
|
59
66
|
* This is a typesafe version of `Object.entries` that preserves the types of the keys and values.
|
package/dist/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../lib/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,QAAQ,CAAC,IAAI,EAAE,IAAI,SAAS,MAAM,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAEvE;;;;GAIG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;AAE/D;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;AAEzD;;GAEG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;AAEpC;;;;;;;;;;;;GAYG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,SAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAMzE;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAExD;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,CAAC,SAAS,WAAW,EAC5C,KAAK,EAAE,CAAC,EAAE,EACV,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GACxB,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAMhB;AAED;;;;;;;GAOG;AACH,wBAAgB,OAAO,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../lib/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,QAAQ,CAAC,IAAI,EAAE,IAAI,SAAS,MAAM,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAEvE;;;;GAIG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;AAE/D;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;AAEzD;;GAEG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;AAEpC;;;;;;;;;;;;GAYG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,SAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAMzE;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAExD;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,CAAC,SAAS,WAAW,EAC5C,KAAK,EAAE,CAAC,EAAE,EACV,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GACxB,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAMhB;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,GAAG,CAAC,EAAE,CAMjF;AAED;;;;;;;GAOG;AACH,wBAAgB,OAAO,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC"}
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"private": false,
|
|
4
4
|
"displayName": "Supabase-Core",
|
|
5
5
|
"description": "Core services for Supabase",
|
|
6
|
-
"version": "1.
|
|
6
|
+
"version": "1.1.1",
|
|
7
7
|
"type": "module",
|
|
8
8
|
"repository": {
|
|
9
9
|
"type": "git",
|
|
@@ -28,6 +28,7 @@
|
|
|
28
28
|
},
|
|
29
29
|
"dependencies": {
|
|
30
30
|
"@freehour/assert": "1.0.0",
|
|
31
|
+
"@freehour/mime": "^1.0.5",
|
|
31
32
|
"@supabase/storage-js": "^2.99.3",
|
|
32
33
|
"@supabase/supabase-js": "2.99.3",
|
|
33
34
|
"zod": "4.3.6"
|