@tulip-systems/drive 0.10.1 → 0.10.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/google/server.d.mts +2 -2
- package/dist/google/server.mjs +2 -2
- package/dist/google.d.mts +2 -2
- package/dist/google.mjs +2 -2
- package/dist/local/server.d.mts +2 -2
- package/dist/local/server.mjs +2 -2
- package/dist/local.d.mts +2 -2
- package/dist/local.mjs +2 -2
- package/dist/providers/google/lib/router.server.d.mts +107 -147
- package/dist/providers/google/lib/router.server.mjs +27 -33
- package/dist/providers/google/lib/service.server.d.mts +1 -1
- package/dist/providers/google/lib/validators.d.mts +76 -1
- package/dist/providers/google/lib/validators.mjs +22 -1
- package/dist/providers/local/lib/route-handler.server.d.mts +5 -3
- package/dist/providers/local/lib/route-handler.server.mjs +1 -1
- package/dist/providers/local/lib/router.server.d.mts +1202 -41226
- package/dist/providers/local/lib/router.server.mjs +35 -42
- package/dist/providers/local/lib/schema.mjs +1 -1
- package/dist/providers/local/lib/service.server.d.mts +31 -8
- package/dist/providers/local/lib/upload.client.d.mts +4 -4
- package/dist/providers/local/lib/upload.client.mjs +1 -1
- package/dist/providers/local/lib/validators.d.mts +1385 -9
- package/dist/providers/local/lib/validators.mjs +38 -3
- package/package.json +3 -3
- package/src/providers/google/lib/router.server.ts +55 -51
- package/src/providers/google/lib/service.server.ts +1 -1
- package/src/providers/google/lib/validators.ts +23 -0
- package/src/providers/local/lib/route-handler.server.ts +12 -10
- package/src/providers/local/lib/router.server.ts +211 -117
- package/src/providers/local/lib/schema.ts +1 -1
- package/src/providers/local/lib/service.server.ts +1 -1
- package/src/providers/local/lib/upload.client.ts +6 -6
- package/src/providers/local/lib/validators.ts +58 -5
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import stream from "node:stream/consumers";
|
|
2
|
-
import type { TDatabaseSchema } from "@tulip-systems/core/config";
|
|
3
2
|
import type { TableQueryResponse } from "@tulip-systems/core/data-tables/server";
|
|
4
3
|
import {
|
|
5
4
|
convertSearchToQueryParams,
|
|
6
5
|
createTableQueryResponse,
|
|
7
6
|
} from "@tulip-systems/core/data-tables/server";
|
|
7
|
+
import type { TDatabaseSchema } from "@tulip-systems/core/database";
|
|
8
8
|
import type { Database } from "@tulip-systems/core/database/server";
|
|
9
9
|
import { ServerError } from "@tulip-systems/core/router/server";
|
|
10
10
|
import { type ObjectBodyInput, storageAssets } from "@tulip-systems/core/storage";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { generateDefaultUUID } from "@tulip-systems/core/
|
|
1
|
+
import { generateDefaultUUID } from "@tulip-systems/core/database";
|
|
2
2
|
import type { BulkActionSchema } from "@tulip-systems/core/router";
|
|
3
|
-
import type {
|
|
3
|
+
import type { SelectStorageAssetSchema } from "@tulip-systems/core/storage";
|
|
4
4
|
import type {
|
|
5
5
|
LocalDriveFileNode,
|
|
6
6
|
LocalDriveNode,
|
|
@@ -20,13 +20,13 @@ export type LocalDriveUploadFileRequest = PresignLocalDriveFileInput & { file: F
|
|
|
20
20
|
export type LocalDriveUploadHooks = {
|
|
21
21
|
beforePresign?: (input: LocalDriveUploadFileRequest) => Promise<void> | void;
|
|
22
22
|
afterPresign?: (presignResult: {
|
|
23
|
-
asset:
|
|
23
|
+
asset: SelectStorageAssetSchema;
|
|
24
24
|
node: LocalDriveFileNode;
|
|
25
25
|
uploadId: string;
|
|
26
26
|
presignedUrl: string;
|
|
27
27
|
}) => Promise<void> | void;
|
|
28
28
|
beforeConfirm?: (presignResult: {
|
|
29
|
-
asset:
|
|
29
|
+
asset: SelectStorageAssetSchema;
|
|
30
30
|
node: LocalDriveFileNode;
|
|
31
31
|
uploadId: string;
|
|
32
32
|
presignedUrl: string;
|
|
@@ -53,7 +53,7 @@ export type LocalDriveUploadClient = {
|
|
|
53
53
|
type CreateLocalDriveUploadClientProps = {
|
|
54
54
|
endpoints: {
|
|
55
55
|
presignUpload: (input: PresignLocalDriveFileInput) => Promise<{
|
|
56
|
-
asset:
|
|
56
|
+
asset: SelectStorageAssetSchema;
|
|
57
57
|
node: LocalDriveFileNode;
|
|
58
58
|
uploadId: string;
|
|
59
59
|
presignedUrl: string;
|
|
@@ -92,7 +92,7 @@ export function createLocalDriveUploadClient(
|
|
|
92
92
|
hooks?: LocalDriveUploadHooks,
|
|
93
93
|
): Promise<LocalDriveFileNode> {
|
|
94
94
|
let presignResult: {
|
|
95
|
-
asset:
|
|
95
|
+
asset: SelectStorageAssetSchema;
|
|
96
96
|
node: LocalDriveFileNode;
|
|
97
97
|
uploadId: string;
|
|
98
98
|
presignedUrl: string;
|
|
@@ -1,7 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
resolveFiltersSchema,
|
|
3
|
+
tableQueryPaginationResponseSchema,
|
|
4
|
+
tableQuerySchema,
|
|
5
|
+
} from "@tulip-systems/core/data-tables";
|
|
2
6
|
import {
|
|
3
7
|
getAssetURLSchema,
|
|
4
|
-
type
|
|
8
|
+
type SelectStorageAssetSchema,
|
|
9
|
+
selectStorageAssetSchema,
|
|
5
10
|
storageAssetVisibilitySchema,
|
|
6
11
|
} from "@tulip-systems/core/storage";
|
|
7
12
|
import { z } from "zod";
|
|
@@ -26,11 +31,59 @@ export const localDriveNodeSchema = driveNodeSchema.extend({
|
|
|
26
31
|
assetId: z.string().nullable(),
|
|
27
32
|
});
|
|
28
33
|
|
|
34
|
+
/**
|
|
35
|
+
* File node & folder node
|
|
36
|
+
*/
|
|
37
|
+
export const localDriveFileNodeSchema = localDriveNodeSchema.extend({
|
|
38
|
+
type: z.literal("file"),
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
export const localDriveFolderNodeSchema = localDriveNodeSchema.extend({
|
|
42
|
+
type: z.literal("folder"),
|
|
43
|
+
});
|
|
44
|
+
|
|
29
45
|
export type LocalDriveNode = z.infer<typeof localDriveNodeSchema>;
|
|
30
|
-
export type LocalDriveFileNode =
|
|
31
|
-
export type LocalDriveFolderNode =
|
|
46
|
+
export type LocalDriveFileNode = z.infer<typeof localDriveFileNodeSchema>;
|
|
47
|
+
export type LocalDriveFolderNode = z.infer<typeof localDriveFolderNodeSchema>;
|
|
32
48
|
export type LocalDriveNodeChild = DriveNodeChild<LocalDriveNode>;
|
|
33
|
-
export type LocalDriveNodeWithAsset = LocalDriveNode & { asset:
|
|
49
|
+
export type LocalDriveNodeWithAsset = LocalDriveNode & { asset: SelectStorageAssetSchema | null };
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* Node with asset
|
|
53
|
+
*/
|
|
54
|
+
export const localDriveNodeWithAssetSchema = localDriveNodeSchema.extend({
|
|
55
|
+
asset: selectStorageAssetSchema.nullable(),
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Presign upload response
|
|
60
|
+
*/
|
|
61
|
+
export const localDrivePresignUploadOutputSchema = z.object({
|
|
62
|
+
uploadId: z.string(),
|
|
63
|
+
presignedUrl: z.string(),
|
|
64
|
+
node: localDriveFileNodeSchema,
|
|
65
|
+
asset: selectStorageAssetSchema,
|
|
66
|
+
});
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Node parent
|
|
70
|
+
*/
|
|
71
|
+
export const localDriveNodeParentSchema = z.object({
|
|
72
|
+
id: z.string(),
|
|
73
|
+
name: z.string(),
|
|
74
|
+
parentId: z.string().nullable(),
|
|
75
|
+
depth: z.number(),
|
|
76
|
+
});
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* Tree response
|
|
80
|
+
*/
|
|
81
|
+
export const localDriveTreeResponseSchema = z.object({
|
|
82
|
+
data: z.array(localDriveNodeWithAssetSchema),
|
|
83
|
+
pagination: tableQueryPaginationResponseSchema,
|
|
84
|
+
});
|
|
85
|
+
|
|
86
|
+
export const localDriveFlatResponseSchema = localDriveTreeResponseSchema;
|
|
34
87
|
|
|
35
88
|
/**
|
|
36
89
|
* Node with children
|