@tulip-systems/drive-local 0.11.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/LICENSE +662 -0
- package/dist/client.d.mts +12 -0
- package/dist/client.mjs +12 -0
- package/dist/database/drizzle/lib/adapter.d.mts +310 -0
- package/dist/database/drizzle/lib/adapter.mjs +520 -0
- package/dist/database/drizzle/lib/compilers.d.mts +395 -0
- package/dist/database/drizzle/lib/compilers.mjs +21 -0
- package/dist/database/drizzle/lib/schema.d.mts +61 -0
- package/dist/drizzle.d.mts +4 -0
- package/dist/drizzle.mjs +3 -0
- package/dist/index.d.mts +8 -0
- package/dist/index.mjs +8 -0
- package/dist/root/components/command-file-update.d.mts +11 -0
- package/dist/root/components/command-file-update.mjs +44 -0
- package/dist/root/components/command-file-upload.d.mts +5 -0
- package/dist/root/components/command-file-upload.mjs +31 -0
- package/dist/root/components/command-folder-create.d.mts +11 -0
- package/dist/root/components/command-folder-create.mjs +50 -0
- package/dist/root/components/command-folder-update.d.mts +11 -0
- package/dist/root/components/command-folder-update.mjs +44 -0
- package/dist/root/components/content.client.d.mts +5 -0
- package/dist/root/components/content.client.mjs +5 -0
- package/dist/root/components/navigation.client.d.mts +11 -0
- package/dist/root/components/navigation.client.mjs +12 -0
- package/dist/root/components/provider.client.d.mts +16 -0
- package/dist/root/components/provider.client.mjs +65 -0
- package/dist/root/components/upload-zone-context.client.d.mts +36 -0
- package/dist/root/components/upload-zone-context.client.mjs +19 -0
- package/dist/root/components/upload-zone.client.d.mts +16 -0
- package/dist/root/components/upload-zone.client.mjs +147 -0
- package/dist/root/components/view.client.d.mts +20 -0
- package/dist/root/components/view.client.mjs +86 -0
- package/dist/root/config/columns-data.d.mts +6 -0
- package/dist/root/config/columns-data.mjs +62 -0
- package/dist/root/config/filters.d.mts +404 -0
- package/dist/root/config/filters.mjs +122 -0
- package/dist/root/config/sorting.d.mts +38 -0
- package/dist/root/config/sorting.mjs +26 -0
- package/dist/root/lib/constants.d.mts +12 -0
- package/dist/root/lib/constants.mjs +27 -0
- package/dist/root/lib/database/contracts.d.mts +112 -0
- package/dist/root/lib/database/filters.d.mts +28 -0
- package/dist/root/lib/database/filters.mjs +73 -0
- package/dist/root/lib/helpers.d.mts +33 -0
- package/dist/root/lib/helpers.mjs +78 -0
- package/dist/root/lib/route-handler.server.d.mts +36 -0
- package/dist/root/lib/route-handler.server.mjs +111 -0
- package/dist/root/lib/router.server.d.mts +819 -0
- package/dist/root/lib/router.server.mjs +87 -0
- package/dist/root/lib/search-params.d.mts +15 -0
- package/dist/root/lib/search-params.mjs +6 -0
- package/dist/root/lib/service.server.d.mts +522 -0
- package/dist/root/lib/service.server.mjs +613 -0
- package/dist/root/lib/upload.client.d.mts +60 -0
- package/dist/root/lib/upload.client.mjs +97 -0
- package/dist/root/lib/validators.d.mts +710 -0
- package/dist/root/lib/validators.mjs +116 -0
- package/dist/server.d.mts +5 -0
- package/dist/server.mjs +4 -0
- package/package.json +83 -0
- package/styles.css +1 -0
|
@@ -0,0 +1,395 @@
|
|
|
1
|
+
//#region src/database/drizzle/lib/compilers.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* Node compilers
|
|
4
|
+
*/
|
|
5
|
+
declare const compileLocalDriveFiltersToDrizzle: <TFields extends import("@tulip-systems/query/drizzle").DatabaseFilterFields<import("@tulip-systems/query").FiltersFieldUnion<{
|
|
6
|
+
readonly search: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string>, import("zod").ZodString, {
|
|
7
|
+
readonly field: "name";
|
|
8
|
+
readonly operator: "ilike";
|
|
9
|
+
readonly value: `%${string}%`;
|
|
10
|
+
} | null>;
|
|
11
|
+
readonly types: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<("folder" | "file")[]>, import("zod").ZodArray<import("zod").ZodEnum<{
|
|
12
|
+
readonly folder: "folder";
|
|
13
|
+
readonly file: "file";
|
|
14
|
+
}>>, {
|
|
15
|
+
readonly field: "type";
|
|
16
|
+
readonly operator: "in";
|
|
17
|
+
readonly value: ("folder" | "file")[];
|
|
18
|
+
} | null>;
|
|
19
|
+
readonly contentTypes: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string[]>, import("zod").ZodArray<import("zod").ZodString>, {
|
|
20
|
+
readonly field: "contentType";
|
|
21
|
+
readonly operator: "in";
|
|
22
|
+
readonly value: string[];
|
|
23
|
+
} | null>;
|
|
24
|
+
readonly nodeIds: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string[]>, import("zod").ZodArray<import("zod").ZodString>, {
|
|
25
|
+
readonly field: "id";
|
|
26
|
+
readonly operator: "in";
|
|
27
|
+
readonly value: string[];
|
|
28
|
+
} | null>;
|
|
29
|
+
readonly assetIds: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string[]>, import("zod").ZodArray<import("zod").ZodString>, {
|
|
30
|
+
readonly field: "assetId";
|
|
31
|
+
readonly operator: "in";
|
|
32
|
+
readonly value: string[];
|
|
33
|
+
} | null>;
|
|
34
|
+
readonly namespace: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string>, import("zod").ZodString, {
|
|
35
|
+
readonly field: "namespace";
|
|
36
|
+
readonly operator: "eq";
|
|
37
|
+
readonly value: string;
|
|
38
|
+
} | null>;
|
|
39
|
+
readonly parentId: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string>, import("zod").ZodNullable<import("zod").ZodString>, {
|
|
40
|
+
readonly field: "parentId";
|
|
41
|
+
readonly operator: "isNull";
|
|
42
|
+
readonly value?: undefined;
|
|
43
|
+
} | {
|
|
44
|
+
readonly field: "parentId";
|
|
45
|
+
readonly operator: "eq";
|
|
46
|
+
readonly value: string;
|
|
47
|
+
} | null>;
|
|
48
|
+
readonly subtypes: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<("image" | "document" | "spreadsheet" | "video" | "audio" | "archive" | "other")[]>, import("zod").ZodArray<import("zod").ZodEnum<{
|
|
49
|
+
readonly image: "image";
|
|
50
|
+
readonly document: "document";
|
|
51
|
+
readonly spreadsheet: "spreadsheet";
|
|
52
|
+
readonly video: "video";
|
|
53
|
+
readonly audio: "audio";
|
|
54
|
+
readonly archive: "archive";
|
|
55
|
+
readonly other: "other";
|
|
56
|
+
}>>, {
|
|
57
|
+
readonly field: "subtype";
|
|
58
|
+
readonly operator: "in";
|
|
59
|
+
readonly value: ("image" | "document" | "spreadsheet" | "video" | "audio" | "archive" | "other")[];
|
|
60
|
+
} | null>;
|
|
61
|
+
readonly isArchived: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<boolean>, import("zod").ZodBoolean, {
|
|
62
|
+
readonly field: "archivedAt";
|
|
63
|
+
readonly operator: "isNull" | "isNotNull";
|
|
64
|
+
}>;
|
|
65
|
+
readonly hidden: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<boolean>, import("zod").ZodBoolean, {
|
|
66
|
+
readonly field: "hidden";
|
|
67
|
+
readonly operator: "eq";
|
|
68
|
+
readonly value: boolean;
|
|
69
|
+
}>;
|
|
70
|
+
}>> & object>(fields: TFields) => import("@tulip-systems/query/drizzle").DatabaseFilterCompiler<Extract<keyof TFields, string> & import("@tulip-systems/query").FiltersFieldUnion<{
|
|
71
|
+
readonly search: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string>, import("zod").ZodString, {
|
|
72
|
+
readonly field: "name";
|
|
73
|
+
readonly operator: "ilike";
|
|
74
|
+
readonly value: `%${string}%`;
|
|
75
|
+
} | null>;
|
|
76
|
+
readonly types: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<("folder" | "file")[]>, import("zod").ZodArray<import("zod").ZodEnum<{
|
|
77
|
+
readonly folder: "folder";
|
|
78
|
+
readonly file: "file";
|
|
79
|
+
}>>, {
|
|
80
|
+
readonly field: "type";
|
|
81
|
+
readonly operator: "in";
|
|
82
|
+
readonly value: ("folder" | "file")[];
|
|
83
|
+
} | null>;
|
|
84
|
+
readonly contentTypes: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string[]>, import("zod").ZodArray<import("zod").ZodString>, {
|
|
85
|
+
readonly field: "contentType";
|
|
86
|
+
readonly operator: "in";
|
|
87
|
+
readonly value: string[];
|
|
88
|
+
} | null>;
|
|
89
|
+
readonly nodeIds: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string[]>, import("zod").ZodArray<import("zod").ZodString>, {
|
|
90
|
+
readonly field: "id";
|
|
91
|
+
readonly operator: "in";
|
|
92
|
+
readonly value: string[];
|
|
93
|
+
} | null>;
|
|
94
|
+
readonly assetIds: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string[]>, import("zod").ZodArray<import("zod").ZodString>, {
|
|
95
|
+
readonly field: "assetId";
|
|
96
|
+
readonly operator: "in";
|
|
97
|
+
readonly value: string[];
|
|
98
|
+
} | null>;
|
|
99
|
+
readonly namespace: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string>, import("zod").ZodString, {
|
|
100
|
+
readonly field: "namespace";
|
|
101
|
+
readonly operator: "eq";
|
|
102
|
+
readonly value: string;
|
|
103
|
+
} | null>;
|
|
104
|
+
readonly parentId: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string>, import("zod").ZodNullable<import("zod").ZodString>, {
|
|
105
|
+
readonly field: "parentId";
|
|
106
|
+
readonly operator: "isNull";
|
|
107
|
+
readonly value?: undefined;
|
|
108
|
+
} | {
|
|
109
|
+
readonly field: "parentId";
|
|
110
|
+
readonly operator: "eq";
|
|
111
|
+
readonly value: string;
|
|
112
|
+
} | null>;
|
|
113
|
+
readonly subtypes: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<("image" | "document" | "spreadsheet" | "video" | "audio" | "archive" | "other")[]>, import("zod").ZodArray<import("zod").ZodEnum<{
|
|
114
|
+
readonly image: "image";
|
|
115
|
+
readonly document: "document";
|
|
116
|
+
readonly spreadsheet: "spreadsheet";
|
|
117
|
+
readonly video: "video";
|
|
118
|
+
readonly audio: "audio";
|
|
119
|
+
readonly archive: "archive";
|
|
120
|
+
readonly other: "other";
|
|
121
|
+
}>>, {
|
|
122
|
+
readonly field: "subtype";
|
|
123
|
+
readonly operator: "in";
|
|
124
|
+
readonly value: ("image" | "document" | "spreadsheet" | "video" | "audio" | "archive" | "other")[];
|
|
125
|
+
} | null>;
|
|
126
|
+
readonly isArchived: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<boolean>, import("zod").ZodBoolean, {
|
|
127
|
+
readonly field: "archivedAt";
|
|
128
|
+
readonly operator: "isNull" | "isNotNull";
|
|
129
|
+
}>;
|
|
130
|
+
readonly hidden: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<boolean>, import("zod").ZodBoolean, {
|
|
131
|
+
readonly field: "hidden";
|
|
132
|
+
readonly operator: "eq";
|
|
133
|
+
readonly value: boolean;
|
|
134
|
+
}>;
|
|
135
|
+
}>>;
|
|
136
|
+
declare const compileLocalDriveSortsToDrizzle: (fields: import("@tulip-systems/query/drizzle").DatabaseSortFieldMap<import("@tulip-systems/query").SortingFieldUnion<{
|
|
137
|
+
readonly name: import("@tulip-systems/query").Sort<{
|
|
138
|
+
readonly field: "name";
|
|
139
|
+
readonly direction: "asc" | "desc";
|
|
140
|
+
}>;
|
|
141
|
+
readonly createdAt: import("@tulip-systems/query").Sort<{
|
|
142
|
+
readonly field: "createdAt";
|
|
143
|
+
readonly direction: "asc" | "desc";
|
|
144
|
+
}>;
|
|
145
|
+
readonly updatedAt: import("@tulip-systems/query").Sort<{
|
|
146
|
+
readonly field: "updatedAt";
|
|
147
|
+
readonly direction: "asc" | "desc";
|
|
148
|
+
}>;
|
|
149
|
+
}>>) => import("@tulip-systems/query/drizzle").DatabaseSortingCompiler<import("@tulip-systems/query").SortingFieldUnion<{
|
|
150
|
+
readonly name: import("@tulip-systems/query").Sort<{
|
|
151
|
+
readonly field: "name";
|
|
152
|
+
readonly direction: "asc" | "desc";
|
|
153
|
+
}>;
|
|
154
|
+
readonly createdAt: import("@tulip-systems/query").Sort<{
|
|
155
|
+
readonly field: "createdAt";
|
|
156
|
+
readonly direction: "asc" | "desc";
|
|
157
|
+
}>;
|
|
158
|
+
readonly updatedAt: import("@tulip-systems/query").Sort<{
|
|
159
|
+
readonly field: "updatedAt";
|
|
160
|
+
readonly direction: "asc" | "desc";
|
|
161
|
+
}>;
|
|
162
|
+
}>>;
|
|
163
|
+
declare const compileLocalDriveDatabaseNodeFiltersToDrizzle: <TFields extends import("@tulip-systems/query/drizzle").DatabaseFilterFields<import("@tulip-systems/query").FiltersFieldUnion<{
|
|
164
|
+
readonly search: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string>, import("zod").ZodString, {
|
|
165
|
+
readonly field: "name";
|
|
166
|
+
readonly operator: "ilike";
|
|
167
|
+
readonly value: `%${string}%`;
|
|
168
|
+
} | null>;
|
|
169
|
+
readonly types: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<("folder" | "file")[]>, import("zod").ZodArray<import("zod").ZodEnum<{
|
|
170
|
+
readonly folder: "folder";
|
|
171
|
+
readonly file: "file";
|
|
172
|
+
}>>, {
|
|
173
|
+
readonly field: "type";
|
|
174
|
+
readonly operator: "in";
|
|
175
|
+
readonly value: ("folder" | "file")[];
|
|
176
|
+
} | null>;
|
|
177
|
+
readonly contentTypes: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string[]>, import("zod").ZodArray<import("zod").ZodString>, {
|
|
178
|
+
readonly field: "contentType";
|
|
179
|
+
readonly operator: "in";
|
|
180
|
+
readonly value: string[];
|
|
181
|
+
} | null>;
|
|
182
|
+
readonly nodeIds: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string[]>, import("zod").ZodArray<import("zod").ZodString>, {
|
|
183
|
+
readonly field: "id";
|
|
184
|
+
readonly operator: "in";
|
|
185
|
+
readonly value: string[];
|
|
186
|
+
} | null>;
|
|
187
|
+
readonly assetIds: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string[]>, import("zod").ZodArray<import("zod").ZodString>, {
|
|
188
|
+
readonly field: "assetId";
|
|
189
|
+
readonly operator: "in";
|
|
190
|
+
readonly value: string[];
|
|
191
|
+
} | null>;
|
|
192
|
+
readonly namespace: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string>, import("zod").ZodString, {
|
|
193
|
+
readonly field: "namespace";
|
|
194
|
+
readonly operator: "eq";
|
|
195
|
+
readonly value: string;
|
|
196
|
+
} | null>;
|
|
197
|
+
readonly parentId: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string>, import("zod").ZodNullable<import("zod").ZodString>, {
|
|
198
|
+
readonly field: "parentId";
|
|
199
|
+
readonly operator: "isNull";
|
|
200
|
+
readonly value?: undefined;
|
|
201
|
+
} | {
|
|
202
|
+
readonly field: "parentId";
|
|
203
|
+
readonly operator: "eq";
|
|
204
|
+
readonly value: string;
|
|
205
|
+
} | null>;
|
|
206
|
+
readonly subtypes: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<("image" | "document" | "spreadsheet" | "video" | "audio" | "archive" | "other")[]>, import("zod").ZodArray<import("zod").ZodEnum<{
|
|
207
|
+
readonly image: "image";
|
|
208
|
+
readonly document: "document";
|
|
209
|
+
readonly spreadsheet: "spreadsheet";
|
|
210
|
+
readonly video: "video";
|
|
211
|
+
readonly audio: "audio";
|
|
212
|
+
readonly archive: "archive";
|
|
213
|
+
readonly other: "other";
|
|
214
|
+
}>>, {
|
|
215
|
+
readonly field: "subtype";
|
|
216
|
+
readonly operator: "in";
|
|
217
|
+
readonly value: ("image" | "document" | "spreadsheet" | "video" | "audio" | "archive" | "other")[];
|
|
218
|
+
} | null>;
|
|
219
|
+
readonly isArchived: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<boolean>, import("zod").ZodBoolean, {
|
|
220
|
+
readonly field: "archivedAt";
|
|
221
|
+
readonly operator: "isNull" | "isNotNull";
|
|
222
|
+
} | null>;
|
|
223
|
+
readonly hidden: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<boolean>, import("zod").ZodBoolean, {
|
|
224
|
+
readonly field: "hidden";
|
|
225
|
+
readonly operator: "eq";
|
|
226
|
+
readonly value: boolean;
|
|
227
|
+
} | null>;
|
|
228
|
+
}>> & object>(fields: TFields) => import("@tulip-systems/query/drizzle").DatabaseFilterCompiler<Extract<keyof TFields, string> & import("@tulip-systems/query").FiltersFieldUnion<{
|
|
229
|
+
readonly search: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string>, import("zod").ZodString, {
|
|
230
|
+
readonly field: "name";
|
|
231
|
+
readonly operator: "ilike";
|
|
232
|
+
readonly value: `%${string}%`;
|
|
233
|
+
} | null>;
|
|
234
|
+
readonly types: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<("folder" | "file")[]>, import("zod").ZodArray<import("zod").ZodEnum<{
|
|
235
|
+
readonly folder: "folder";
|
|
236
|
+
readonly file: "file";
|
|
237
|
+
}>>, {
|
|
238
|
+
readonly field: "type";
|
|
239
|
+
readonly operator: "in";
|
|
240
|
+
readonly value: ("folder" | "file")[];
|
|
241
|
+
} | null>;
|
|
242
|
+
readonly contentTypes: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string[]>, import("zod").ZodArray<import("zod").ZodString>, {
|
|
243
|
+
readonly field: "contentType";
|
|
244
|
+
readonly operator: "in";
|
|
245
|
+
readonly value: string[];
|
|
246
|
+
} | null>;
|
|
247
|
+
readonly nodeIds: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string[]>, import("zod").ZodArray<import("zod").ZodString>, {
|
|
248
|
+
readonly field: "id";
|
|
249
|
+
readonly operator: "in";
|
|
250
|
+
readonly value: string[];
|
|
251
|
+
} | null>;
|
|
252
|
+
readonly assetIds: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string[]>, import("zod").ZodArray<import("zod").ZodString>, {
|
|
253
|
+
readonly field: "assetId";
|
|
254
|
+
readonly operator: "in";
|
|
255
|
+
readonly value: string[];
|
|
256
|
+
} | null>;
|
|
257
|
+
readonly namespace: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string>, import("zod").ZodString, {
|
|
258
|
+
readonly field: "namespace";
|
|
259
|
+
readonly operator: "eq";
|
|
260
|
+
readonly value: string;
|
|
261
|
+
} | null>;
|
|
262
|
+
readonly parentId: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string>, import("zod").ZodNullable<import("zod").ZodString>, {
|
|
263
|
+
readonly field: "parentId";
|
|
264
|
+
readonly operator: "isNull";
|
|
265
|
+
readonly value?: undefined;
|
|
266
|
+
} | {
|
|
267
|
+
readonly field: "parentId";
|
|
268
|
+
readonly operator: "eq";
|
|
269
|
+
readonly value: string;
|
|
270
|
+
} | null>;
|
|
271
|
+
readonly subtypes: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<("image" | "document" | "spreadsheet" | "video" | "audio" | "archive" | "other")[]>, import("zod").ZodArray<import("zod").ZodEnum<{
|
|
272
|
+
readonly image: "image";
|
|
273
|
+
readonly document: "document";
|
|
274
|
+
readonly spreadsheet: "spreadsheet";
|
|
275
|
+
readonly video: "video";
|
|
276
|
+
readonly audio: "audio";
|
|
277
|
+
readonly archive: "archive";
|
|
278
|
+
readonly other: "other";
|
|
279
|
+
}>>, {
|
|
280
|
+
readonly field: "subtype";
|
|
281
|
+
readonly operator: "in";
|
|
282
|
+
readonly value: ("image" | "document" | "spreadsheet" | "video" | "audio" | "archive" | "other")[];
|
|
283
|
+
} | null>;
|
|
284
|
+
readonly isArchived: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<boolean>, import("zod").ZodBoolean, {
|
|
285
|
+
readonly field: "archivedAt";
|
|
286
|
+
readonly operator: "isNull" | "isNotNull";
|
|
287
|
+
} | null>;
|
|
288
|
+
readonly hidden: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<boolean>, import("zod").ZodBoolean, {
|
|
289
|
+
readonly field: "hidden";
|
|
290
|
+
readonly operator: "eq";
|
|
291
|
+
readonly value: boolean;
|
|
292
|
+
} | null>;
|
|
293
|
+
}>>;
|
|
294
|
+
/**
|
|
295
|
+
* Variant compilers
|
|
296
|
+
*/
|
|
297
|
+
declare const compileLocalDriveVariantFiltersToDrizzle: <TFields extends import("@tulip-systems/query/drizzle").DatabaseFilterFields<import("@tulip-systems/query").FiltersFieldUnion<{
|
|
298
|
+
readonly ids: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string[]>, import("zod").ZodArray<import("zod").ZodString>, {
|
|
299
|
+
readonly field: "id";
|
|
300
|
+
readonly operator: "in";
|
|
301
|
+
readonly value: string[];
|
|
302
|
+
} | null>;
|
|
303
|
+
readonly nodeIds: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string[]>, import("zod").ZodArray<import("zod").ZodString>, {
|
|
304
|
+
readonly field: "nodeId";
|
|
305
|
+
readonly operator: "in";
|
|
306
|
+
readonly value: string[];
|
|
307
|
+
} | null>;
|
|
308
|
+
readonly assetIds: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string[]>, import("zod").ZodArray<import("zod").ZodString>, {
|
|
309
|
+
readonly field: "assetId";
|
|
310
|
+
readonly operator: "in";
|
|
311
|
+
readonly value: string[];
|
|
312
|
+
} | null>;
|
|
313
|
+
readonly variants: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<("main" | `preview-${number}`)[]>, import("zod").ZodArray<import("zod").ZodEnum<{
|
|
314
|
+
readonly [x: `preview-${number}`]: `preview-${number}`;
|
|
315
|
+
readonly main: "main";
|
|
316
|
+
}>>, {
|
|
317
|
+
readonly field: "variant";
|
|
318
|
+
readonly operator: "in";
|
|
319
|
+
readonly value: ("main" | `preview-${number}`)[];
|
|
320
|
+
} | null>;
|
|
321
|
+
}>> & object>(fields: TFields) => import("@tulip-systems/query/drizzle").DatabaseFilterCompiler<Extract<keyof TFields, string> & import("@tulip-systems/query").FiltersFieldUnion<{
|
|
322
|
+
readonly ids: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string[]>, import("zod").ZodArray<import("zod").ZodString>, {
|
|
323
|
+
readonly field: "id";
|
|
324
|
+
readonly operator: "in";
|
|
325
|
+
readonly value: string[];
|
|
326
|
+
} | null>;
|
|
327
|
+
readonly nodeIds: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string[]>, import("zod").ZodArray<import("zod").ZodString>, {
|
|
328
|
+
readonly field: "nodeId";
|
|
329
|
+
readonly operator: "in";
|
|
330
|
+
readonly value: string[];
|
|
331
|
+
} | null>;
|
|
332
|
+
readonly assetIds: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string[]>, import("zod").ZodArray<import("zod").ZodString>, {
|
|
333
|
+
readonly field: "assetId";
|
|
334
|
+
readonly operator: "in";
|
|
335
|
+
readonly value: string[];
|
|
336
|
+
} | null>;
|
|
337
|
+
readonly variants: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<("main" | `preview-${number}`)[]>, import("zod").ZodArray<import("zod").ZodEnum<{
|
|
338
|
+
readonly [x: `preview-${number}`]: `preview-${number}`;
|
|
339
|
+
readonly main: "main";
|
|
340
|
+
}>>, {
|
|
341
|
+
readonly field: "variant";
|
|
342
|
+
readonly operator: "in";
|
|
343
|
+
readonly value: ("main" | `preview-${number}`)[];
|
|
344
|
+
} | null>;
|
|
345
|
+
}>>;
|
|
346
|
+
/**
|
|
347
|
+
* Presigned URL compilers
|
|
348
|
+
*/
|
|
349
|
+
declare const compileLocalDrivePresignedUrlFiltersToDrizzle: <TFields extends import("@tulip-systems/query/drizzle").DatabaseFilterFields<import("@tulip-systems/query").FiltersFieldUnion<{
|
|
350
|
+
readonly nodeId: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string>, import("zod").ZodString, {
|
|
351
|
+
readonly field: "nodeId";
|
|
352
|
+
readonly operator: "eq";
|
|
353
|
+
readonly value: string;
|
|
354
|
+
} | null>;
|
|
355
|
+
readonly variant: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<"main" | `preview-${number}`>, import("zod").ZodEnum<{
|
|
356
|
+
readonly [x: `preview-${number}`]: `preview-${number}`;
|
|
357
|
+
readonly main: "main";
|
|
358
|
+
}>, {
|
|
359
|
+
readonly field: "variant";
|
|
360
|
+
readonly operator: "eq";
|
|
361
|
+
readonly value: "main" | `preview-${number}`;
|
|
362
|
+
} | null>;
|
|
363
|
+
readonly disposition: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<"inline" | "attachment">, import("zod").ZodEnum<{
|
|
364
|
+
readonly inline: "inline";
|
|
365
|
+
readonly attachment: "attachment";
|
|
366
|
+
}>, {
|
|
367
|
+
readonly field: "disposition";
|
|
368
|
+
readonly operator: "eq";
|
|
369
|
+
readonly value: "inline" | "attachment";
|
|
370
|
+
} | null>;
|
|
371
|
+
}>> & object>(fields: TFields) => import("@tulip-systems/query/drizzle").DatabaseFilterCompiler<Extract<keyof TFields, string> & import("@tulip-systems/query").FiltersFieldUnion<{
|
|
372
|
+
readonly nodeId: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<string>, import("zod").ZodString, {
|
|
373
|
+
readonly field: "nodeId";
|
|
374
|
+
readonly operator: "eq";
|
|
375
|
+
readonly value: string;
|
|
376
|
+
} | null>;
|
|
377
|
+
readonly variant: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<"main" | `preview-${number}`>, import("zod").ZodEnum<{
|
|
378
|
+
readonly [x: `preview-${number}`]: `preview-${number}`;
|
|
379
|
+
readonly main: "main";
|
|
380
|
+
}>, {
|
|
381
|
+
readonly field: "variant";
|
|
382
|
+
readonly operator: "eq";
|
|
383
|
+
readonly value: "main" | `preview-${number}`;
|
|
384
|
+
} | null>;
|
|
385
|
+
readonly disposition: import("@tulip-systems/query").Filter<import("nuqs/server").SingleParserBuilder<"inline" | "attachment">, import("zod").ZodEnum<{
|
|
386
|
+
readonly inline: "inline";
|
|
387
|
+
readonly attachment: "attachment";
|
|
388
|
+
}>, {
|
|
389
|
+
readonly field: "disposition";
|
|
390
|
+
readonly operator: "eq";
|
|
391
|
+
readonly value: "inline" | "attachment";
|
|
392
|
+
} | null>;
|
|
393
|
+
}>>;
|
|
394
|
+
//#endregion
|
|
395
|
+
export { compileLocalDriveDatabaseNodeFiltersToDrizzle, compileLocalDriveFiltersToDrizzle, compileLocalDrivePresignedUrlFiltersToDrizzle, compileLocalDriveSortsToDrizzle, compileLocalDriveVariantFiltersToDrizzle };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { localDriveFilters, localDrivePresignedUrlFilters, localDriveVariantFilters } from "../../../root/config/filters.mjs";
|
|
2
|
+
import { localDriveTableSorts } from "../../../root/config/sorting.mjs";
|
|
3
|
+
import { localDriveDatabaseNodeFilters } from "../../../root/lib/database/filters.mjs";
|
|
4
|
+
import { createDatabaseFiltersCompiler, createDatabaseSortingCompiler } from "@tulip-systems/query/drizzle";
|
|
5
|
+
//#region src/database/drizzle/lib/compilers.ts
|
|
6
|
+
/**
|
|
7
|
+
* Node compilers
|
|
8
|
+
*/
|
|
9
|
+
const compileLocalDriveFiltersToDrizzle = createDatabaseFiltersCompiler(localDriveFilters);
|
|
10
|
+
const compileLocalDriveSortsToDrizzle = createDatabaseSortingCompiler(localDriveTableSorts);
|
|
11
|
+
const compileLocalDriveDatabaseNodeFiltersToDrizzle = createDatabaseFiltersCompiler(localDriveDatabaseNodeFilters);
|
|
12
|
+
/**
|
|
13
|
+
* Variant compilers
|
|
14
|
+
*/
|
|
15
|
+
const compileLocalDriveVariantFiltersToDrizzle = createDatabaseFiltersCompiler(localDriveVariantFilters);
|
|
16
|
+
/**
|
|
17
|
+
* Presigned URL compilers
|
|
18
|
+
*/
|
|
19
|
+
const compileLocalDrivePresignedUrlFiltersToDrizzle = createDatabaseFiltersCompiler(localDrivePresignedUrlFilters);
|
|
20
|
+
//#endregion
|
|
21
|
+
export { compileLocalDriveDatabaseNodeFiltersToDrizzle, compileLocalDriveFiltersToDrizzle, compileLocalDrivePresignedUrlFiltersToDrizzle, compileLocalDriveSortsToDrizzle, compileLocalDriveVariantFiltersToDrizzle };
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { ImageVariant, LocalDriveNodeSubtype } from "../../../root/lib/constants.mjs";
|
|
2
|
+
import { ImageDisposition } from "@tulip-systems/storage";
|
|
3
|
+
import { StorageDrizzleAssetsTable } from "@tulip-systems/storage/drizzle";
|
|
4
|
+
import { AnyPgColumn, PgTable } from "drizzle-orm/pg-core";
|
|
5
|
+
//#region src/database/drizzle/lib/schema.d.ts
|
|
6
|
+
type LocalDriveNodeType = "folder" | "file";
|
|
7
|
+
type LocalDriveDrizzleColumn<TDataType extends "string" | "number" | "date" | "boolean" | "json", TColumnType extends string, TData, TNotNull extends boolean = boolean, THasDefault extends boolean = boolean, TIsPrimaryKey extends boolean = boolean> = AnyPgColumn<{
|
|
8
|
+
dataType: TDataType;
|
|
9
|
+
columnType: TColumnType;
|
|
10
|
+
data: TData;
|
|
11
|
+
notNull: TNotNull;
|
|
12
|
+
hasDefault: THasDefault;
|
|
13
|
+
isPrimaryKey: TIsPrimaryKey;
|
|
14
|
+
}>;
|
|
15
|
+
type LocalDriveDrizzleTextColumn<TData extends string = string, TNotNull extends boolean = boolean, THasDefault extends boolean = boolean> = LocalDriveDrizzleColumn<"string", "PgText", TData, TNotNull, THasDefault>;
|
|
16
|
+
type LocalDriveDrizzleEnumColumn<TData extends string, TNotNull extends boolean = boolean, THasDefault extends boolean = boolean> = LocalDriveDrizzleColumn<"string", "PgEnumColumn", TData, TNotNull, THasDefault>;
|
|
17
|
+
type LocalDriveDrizzleTimestampColumn<TNotNull extends boolean = boolean, THasDefault extends boolean = boolean> = LocalDriveDrizzleColumn<"date", "PgTimestamp", Date, TNotNull, THasDefault>;
|
|
18
|
+
type LocalDriveDrizzleUuidColumn<TNotNull extends boolean = boolean, THasDefault extends boolean = boolean, TIsPrimaryKey extends boolean = boolean> = LocalDriveDrizzleColumn<"string", "PgUUID", string, TNotNull, THasDefault, TIsPrimaryKey>;
|
|
19
|
+
type LocalDriveDrizzleIntegerColumn<TNotNull extends boolean = boolean, THasDefault extends boolean = boolean> = LocalDriveDrizzleColumn<"number", "PgInteger", number, TNotNull, THasDefault>;
|
|
20
|
+
type LocalDriveDrizzleBooleanColumn<TNotNull extends boolean = boolean, THasDefault extends boolean = boolean> = LocalDriveDrizzleColumn<"boolean", "PgBoolean", boolean, TNotNull, THasDefault>;
|
|
21
|
+
type LocalDriveDrizzleVarcharColumn<TNotNull extends boolean = boolean, THasDefault extends boolean = boolean> = LocalDriveDrizzleColumn<"string", "PgVarchar", string, TNotNull, THasDefault>;
|
|
22
|
+
type LocalDriveDrizzleBaseColumns = {
|
|
23
|
+
id: LocalDriveDrizzleUuidColumn<true, true, true>;
|
|
24
|
+
createdAt: LocalDriveDrizzleTimestampColumn<true, true>;
|
|
25
|
+
updatedAt: LocalDriveDrizzleTimestampColumn<true, true>;
|
|
26
|
+
};
|
|
27
|
+
type LocalDriveDrizzleNodesTable = PgTable & LocalDriveDrizzleBaseColumns & {
|
|
28
|
+
name: LocalDriveDrizzleTextColumn<string, true>;
|
|
29
|
+
namespace: LocalDriveDrizzleTextColumn<string, true, true>;
|
|
30
|
+
type: LocalDriveDrizzleEnumColumn<LocalDriveNodeType>;
|
|
31
|
+
subtype: LocalDriveDrizzleTextColumn<LocalDriveNodeSubtype, true, true>;
|
|
32
|
+
size: LocalDriveDrizzleIntegerColumn;
|
|
33
|
+
contentType: LocalDriveDrizzleVarcharColumn;
|
|
34
|
+
readonly: LocalDriveDrizzleBooleanColumn<boolean, true>;
|
|
35
|
+
hidden: LocalDriveDrizzleBooleanColumn<boolean, true>;
|
|
36
|
+
archivedAt: LocalDriveDrizzleTimestampColumn;
|
|
37
|
+
parentId: LocalDriveDrizzleUuidColumn;
|
|
38
|
+
assetId: LocalDriveDrizzleUuidColumn;
|
|
39
|
+
};
|
|
40
|
+
type LocalDriveDrizzleNodeVariantsTable = PgTable & LocalDriveDrizzleBaseColumns & {
|
|
41
|
+
nodeId: LocalDriveDrizzleUuidColumn<true>;
|
|
42
|
+
assetId: LocalDriveDrizzleUuidColumn<true>;
|
|
43
|
+
variant: LocalDriveDrizzleTextColumn<ImageVariant, true>;
|
|
44
|
+
width: LocalDriveDrizzleIntegerColumn<true>;
|
|
45
|
+
};
|
|
46
|
+
type LocalDriveDrizzleNodePresignedUrlsTable = PgTable & LocalDriveDrizzleBaseColumns & {
|
|
47
|
+
url: LocalDriveDrizzleTextColumn<string, true>;
|
|
48
|
+
variant: LocalDriveDrizzleTextColumn<ImageVariant, true>;
|
|
49
|
+
disposition: LocalDriveDrizzleTextColumn<ImageDisposition, true>;
|
|
50
|
+
expiresAt: LocalDriveDrizzleTimestampColumn<true>;
|
|
51
|
+
nodeId: LocalDriveDrizzleUuidColumn<true>;
|
|
52
|
+
variantId: LocalDriveDrizzleUuidColumn;
|
|
53
|
+
};
|
|
54
|
+
type LocalDriveDrizzleSchema = {
|
|
55
|
+
nodes: LocalDriveDrizzleNodesTable;
|
|
56
|
+
nodeVariants: LocalDriveDrizzleNodeVariantsTable;
|
|
57
|
+
nodePresignedUrls: LocalDriveDrizzleNodePresignedUrlsTable;
|
|
58
|
+
storageAssets: StorageDrizzleAssetsTable;
|
|
59
|
+
};
|
|
60
|
+
//#endregion
|
|
61
|
+
export { LocalDriveDrizzleNodePresignedUrlsTable, LocalDriveDrizzleNodeVariantsTable, LocalDriveDrizzleNodesTable, LocalDriveDrizzleSchema };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { LocalDriveDrizzleNodePresignedUrlsTable, LocalDriveDrizzleNodeVariantsTable, LocalDriveDrizzleNodesTable, LocalDriveDrizzleSchema } from "./database/drizzle/lib/schema.mjs";
|
|
2
|
+
import { LocalDriveDrizzleAdapterConfig, LocalDriveDrizzleProvider, localDriveDrizzleAdapter } from "./database/drizzle/lib/adapter.mjs";
|
|
3
|
+
import { compileLocalDriveDatabaseNodeFiltersToDrizzle, compileLocalDriveFiltersToDrizzle, compileLocalDrivePresignedUrlFiltersToDrizzle, compileLocalDriveSortsToDrizzle, compileLocalDriveVariantFiltersToDrizzle } from "./database/drizzle/lib/compilers.mjs";
|
|
4
|
+
export { LocalDriveDrizzleAdapterConfig, type LocalDriveDrizzleNodePresignedUrlsTable, type LocalDriveDrizzleNodeVariantsTable, type LocalDriveDrizzleNodesTable, LocalDriveDrizzleProvider, type LocalDriveDrizzleSchema, compileLocalDriveDatabaseNodeFiltersToDrizzle, compileLocalDriveFiltersToDrizzle, compileLocalDrivePresignedUrlFiltersToDrizzle, compileLocalDriveSortsToDrizzle, compileLocalDriveVariantFiltersToDrizzle, localDriveDrizzleAdapter };
|
package/dist/drizzle.mjs
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { compileLocalDriveDatabaseNodeFiltersToDrizzle, compileLocalDriveFiltersToDrizzle, compileLocalDrivePresignedUrlFiltersToDrizzle, compileLocalDriveSortsToDrizzle, compileLocalDriveVariantFiltersToDrizzle } from "./database/drizzle/lib/compilers.mjs";
|
|
2
|
+
import { localDriveDrizzleAdapter } from "./database/drizzle/lib/adapter.mjs";
|
|
3
|
+
export { compileLocalDriveDatabaseNodeFiltersToDrizzle, compileLocalDriveFiltersToDrizzle, compileLocalDrivePresignedUrlFiltersToDrizzle, compileLocalDriveSortsToDrizzle, compileLocalDriveVariantFiltersToDrizzle, localDriveDrizzleAdapter };
|
package/dist/index.d.mts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { LocalDriveFiltersInput, LocalDriveFiltersSchema, LocalDrivePresignedUrlFiltersInput, LocalDrivePresignedUrlFiltersSchema, LocalDriveVariantFiltersInput, LocalDriveVariantFiltersSchema, localDriveFilters, localDriveFiltersParser, localDriveFiltersSchema, localDrivePresignedUrlFilters, localDrivePresignedUrlFiltersParser, localDrivePresignedUrlFiltersSchema, localDriveVariantFilters, localDriveVariantFiltersParser, localDriveVariantFiltersSchema } from "./root/config/filters.mjs";
|
|
2
|
+
import { LocalDriveTableSortsInput, LocalDriveTableSortsSchema, localDriveTableSorts, localDriveTableSortsParser, localDriveTableSortsSchema } from "./root/config/sorting.mjs";
|
|
3
|
+
import { ImageVariant, LocalDriveNodeSubtype, deviceSizes, imageSizes, imageVariants, nodeSubtypes } from "./root/lib/constants.mjs";
|
|
4
|
+
import { CreateLocalDriveFolderInput, CreateLocalDriveFolderSchema, GetLocalDriveNodesByParentIdInput, GetLocalDriveNodesByParentIdSchema, GetLocalFileURLSchema, ListLocalDriveFlatSchema, ListLocalDriveTreeInput, ListLocalDriveTreeSchema, LocalDriveFileNode, LocalDriveFolderNode, LocalDriveNode, LocalDriveNodeChild, LocalDriveNodeWithAsset, LocalDriveNodeWithChildren, LocalNode, PresignLocalDriveFileInput, UpdateLocalDriveNodeInput, UploadLocalDriveFileSchema, createLocalDriveFolderInputSchema, getLocalDriveNodesByParentIdInputSchema, getLocalFileURLSchema, getLocalFileURLSchemaDefaults, listLocalDriveFlatInputSchema, listLocalDriveTreeInputSchema, localDriveFileNodeSchema, localDriveFlatResponseSchema, localDriveFolderNodeSchema, localDriveNodeParentSchema, localDriveNodeSchema, localDriveNodeWithAssetSchema, localDriveNodeWithChildrenSchema, localDrivePresignUploadOutputSchema, localDriveTreeResponseSchema, presignLocalDriveFileInputSchema, updateLocalDriveNodeInputSchema, uploadLocalDriveFileInputSchema } from "./root/lib/validators.mjs";
|
|
5
|
+
import { localDriveColumns } from "./root/config/columns-data.mjs";
|
|
6
|
+
import { getLocalDriveFileUrl, inferLocalDriveNodeSubtype, isLocalDriveFile, isLocalDriveFolder, localDriveImageLoader, renderBytes, toLocalDriveNode } from "./root/lib/helpers.mjs";
|
|
7
|
+
import { localDriveTreeFilterSearchParams } from "./root/lib/search-params.mjs";
|
|
8
|
+
export { CreateLocalDriveFolderInput, CreateLocalDriveFolderSchema, GetLocalDriveNodesByParentIdInput, GetLocalDriveNodesByParentIdSchema, GetLocalFileURLSchema, ImageVariant, ListLocalDriveFlatSchema, ListLocalDriveTreeInput, ListLocalDriveTreeSchema, LocalDriveFileNode, LocalDriveFiltersInput, LocalDriveFiltersSchema, LocalDriveFolderNode, LocalDriveNode, LocalDriveNodeChild, LocalDriveNodeSubtype, LocalDriveNodeWithAsset, LocalDriveNodeWithChildren, LocalDrivePresignedUrlFiltersInput, LocalDrivePresignedUrlFiltersSchema, LocalDriveTableSortsInput, LocalDriveTableSortsSchema, LocalDriveVariantFiltersInput, LocalDriveVariantFiltersSchema, LocalNode, PresignLocalDriveFileInput, UpdateLocalDriveNodeInput, UploadLocalDriveFileSchema, createLocalDriveFolderInputSchema, deviceSizes, getLocalDriveFileUrl, getLocalDriveNodesByParentIdInputSchema, getLocalFileURLSchema, getLocalFileURLSchemaDefaults, imageSizes, imageVariants, inferLocalDriveNodeSubtype, isLocalDriveFile, isLocalDriveFolder, listLocalDriveFlatInputSchema, listLocalDriveTreeInputSchema, localDriveColumns, localDriveFileNodeSchema, localDriveFilters, localDriveFiltersParser, localDriveFiltersSchema, localDriveFlatResponseSchema, localDriveFolderNodeSchema, localDriveImageLoader, localDriveNodeParentSchema, localDriveNodeSchema, localDriveNodeWithAssetSchema, localDriveNodeWithChildrenSchema, localDrivePresignUploadOutputSchema, localDrivePresignedUrlFilters, localDrivePresignedUrlFiltersParser, localDrivePresignedUrlFiltersSchema, localDriveTableSorts, localDriveTableSortsParser, localDriveTableSortsSchema, localDriveTreeFilterSearchParams, localDriveTreeResponseSchema, localDriveVariantFilters, localDriveVariantFiltersParser, localDriveVariantFiltersSchema, nodeSubtypes, presignLocalDriveFileInputSchema, renderBytes, toLocalDriveNode, updateLocalDriveNodeInputSchema, uploadLocalDriveFileInputSchema };
|
package/dist/index.mjs
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { localDriveColumns } from "./root/config/columns-data.mjs";
|
|
2
|
+
import { deviceSizes, imageSizes, imageVariants, nodeSubtypes } from "./root/lib/constants.mjs";
|
|
3
|
+
import { localDriveFilters, localDriveFiltersParser, localDriveFiltersSchema, localDrivePresignedUrlFilters, localDrivePresignedUrlFiltersParser, localDrivePresignedUrlFiltersSchema, localDriveVariantFilters, localDriveVariantFiltersParser, localDriveVariantFiltersSchema } from "./root/config/filters.mjs";
|
|
4
|
+
import { localDriveTableSorts, localDriveTableSortsParser, localDriveTableSortsSchema } from "./root/config/sorting.mjs";
|
|
5
|
+
import { getLocalDriveFileUrl, inferLocalDriveNodeSubtype, isLocalDriveFile, isLocalDriveFolder, localDriveImageLoader, renderBytes, toLocalDriveNode } from "./root/lib/helpers.mjs";
|
|
6
|
+
import { localDriveTreeFilterSearchParams } from "./root/lib/search-params.mjs";
|
|
7
|
+
import { createLocalDriveFolderInputSchema, getLocalDriveNodesByParentIdInputSchema, getLocalFileURLSchema, getLocalFileURLSchemaDefaults, listLocalDriveFlatInputSchema, listLocalDriveTreeInputSchema, localDriveFileNodeSchema, localDriveFlatResponseSchema, localDriveFolderNodeSchema, localDriveNodeParentSchema, localDriveNodeSchema, localDriveNodeWithAssetSchema, localDriveNodeWithChildrenSchema, localDrivePresignUploadOutputSchema, localDriveTreeResponseSchema, presignLocalDriveFileInputSchema, updateLocalDriveNodeInputSchema, uploadLocalDriveFileInputSchema } from "./root/lib/validators.mjs";
|
|
8
|
+
export { createLocalDriveFolderInputSchema, deviceSizes, getLocalDriveFileUrl, getLocalDriveNodesByParentIdInputSchema, getLocalFileURLSchema, getLocalFileURLSchemaDefaults, imageSizes, imageVariants, inferLocalDriveNodeSubtype, isLocalDriveFile, isLocalDriveFolder, listLocalDriveFlatInputSchema, listLocalDriveTreeInputSchema, localDriveColumns, localDriveFileNodeSchema, localDriveFilters, localDriveFiltersParser, localDriveFiltersSchema, localDriveFlatResponseSchema, localDriveFolderNodeSchema, localDriveImageLoader, localDriveNodeParentSchema, localDriveNodeSchema, localDriveNodeWithAssetSchema, localDriveNodeWithChildrenSchema, localDrivePresignUploadOutputSchema, localDrivePresignedUrlFilters, localDrivePresignedUrlFiltersParser, localDrivePresignedUrlFiltersSchema, localDriveTableSorts, localDriveTableSortsParser, localDriveTableSortsSchema, localDriveTreeFilterSearchParams, localDriveTreeResponseSchema, localDriveVariantFilters, localDriveVariantFiltersParser, localDriveVariantFiltersSchema, nodeSubtypes, presignLocalDriveFileInputSchema, renderBytes, toLocalDriveNode, updateLocalDriveNodeInputSchema, uploadLocalDriveFileInputSchema };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { UpdateLocalDriveNodeInput } from "../lib/validators.mjs";
|
|
2
|
+
import { DefaultError, MutationOptions } from "@tanstack/react-query";
|
|
3
|
+
//#region src/root/components/command-file-update.d.ts
|
|
4
|
+
type LocalDriveFileUpdateCommandProps<TData = unknown, TError = DefaultError, TVariables = unknown, TOnMutateResult = unknown> = {
|
|
5
|
+
defaultValues: Partial<UpdateLocalDriveNodeInput>;
|
|
6
|
+
variables: (values: UpdateLocalDriveNodeInput) => TVariables;
|
|
7
|
+
mutation: MutationOptions<TData, TError, TVariables, TOnMutateResult>;
|
|
8
|
+
};
|
|
9
|
+
declare function LocalDriveFileUpdateCommand<TData = unknown, TError = DefaultError, TVariables = unknown, TOnMutateResult = unknown>({ defaultValues, variables, mutation }: LocalDriveFileUpdateCommandProps<TData, TError, TVariables, TOnMutateResult>): import("react").JSX.Element;
|
|
10
|
+
//#endregion
|
|
11
|
+
export { LocalDriveFileUpdateCommand, LocalDriveFileUpdateCommandProps };
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { updateLocalDriveNodeInputSchema } from "../lib/validators.mjs";
|
|
3
|
+
import { FilePen } from "lucide-react";
|
|
4
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
|
+
import { standardSchemaResolver } from "@hookform/resolvers/standard-schema";
|
|
6
|
+
import { CommandFormDialog, CommandFormDialogCancel, CommandFormDialogContent, CommandFormDialogFields, CommandFormDialogFooter, CommandFormDialogHeader, CommandFormDialogSubmit, CommandFormDialogTitle, CommandFormDialogTrigger, CommandLabel } from "@tulip-systems/commands/client";
|
|
7
|
+
import { Input } from "@tulip-systems/ui/input";
|
|
8
|
+
import { Form, FormControl, FormField, FormItem, FormLabel, FormMessage } from "@tulip-systems/ui/react-hook-form";
|
|
9
|
+
import { useForm } from "react-hook-form";
|
|
10
|
+
//#region src/root/components/command-file-update.tsx
|
|
11
|
+
function LocalDriveFileUpdateCommand({ defaultValues, variables, mutation }) {
|
|
12
|
+
const form = useForm({
|
|
13
|
+
resolver: standardSchemaResolver(updateLocalDriveNodeInputSchema),
|
|
14
|
+
defaultValues
|
|
15
|
+
});
|
|
16
|
+
return /* @__PURE__ */ jsx(Form, {
|
|
17
|
+
...form,
|
|
18
|
+
children: /* @__PURE__ */ jsxs(CommandFormDialog, { children: [/* @__PURE__ */ jsxs(CommandFormDialogTrigger, {
|
|
19
|
+
label: "Wijzigen",
|
|
20
|
+
children: [/* @__PURE__ */ jsx(FilePen, { className: "size-4" }), /* @__PURE__ */ jsx(CommandLabel, {})]
|
|
21
|
+
}), /* @__PURE__ */ jsxs(CommandFormDialogContent, {
|
|
22
|
+
variables,
|
|
23
|
+
mutation,
|
|
24
|
+
children: [
|
|
25
|
+
/* @__PURE__ */ jsx(CommandFormDialogHeader, { children: /* @__PURE__ */ jsx(CommandFormDialogTitle, { children: "Bestand wijzigen" }) }),
|
|
26
|
+
/* @__PURE__ */ jsx(CommandFormDialogFields, { children: /* @__PURE__ */ jsx(FormField, {
|
|
27
|
+
control: form.control,
|
|
28
|
+
name: "name",
|
|
29
|
+
render: ({ field }) => /* @__PURE__ */ jsxs(FormItem, { children: [
|
|
30
|
+
/* @__PURE__ */ jsx(FormLabel, { children: "Naam" }),
|
|
31
|
+
/* @__PURE__ */ jsx(FormControl, { children: /* @__PURE__ */ jsx(Input, {
|
|
32
|
+
...field,
|
|
33
|
+
value: field.value ?? ""
|
|
34
|
+
}) }),
|
|
35
|
+
/* @__PURE__ */ jsx(FormMessage, {})
|
|
36
|
+
] })
|
|
37
|
+
}) }),
|
|
38
|
+
/* @__PURE__ */ jsxs(CommandFormDialogFooter, { children: [/* @__PURE__ */ jsx(CommandFormDialogCancel, { children: "Annuleren" }), /* @__PURE__ */ jsx(CommandFormDialogSubmit, { children: "Opslaan" })] })
|
|
39
|
+
]
|
|
40
|
+
})] })
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
//#endregion
|
|
44
|
+
export { LocalDriveFileUpdateCommand };
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ComponentProps } from "react";
|
|
2
|
+
//#region src/root/components/command-file-upload.d.ts
|
|
3
|
+
declare function LocalDriveFilesUploadCommand({ className, ...props }: ComponentProps<"div">): import("react").JSX.Element;
|
|
4
|
+
//#endregion
|
|
5
|
+
export { LocalDriveFilesUploadCommand };
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useLocalDriveUploadZone } from "./upload-zone-context.client.mjs";
|
|
3
|
+
import { UploadIcon } from "lucide-react";
|
|
4
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
|
+
import { CommandEmpty, CommandLabel } from "@tulip-systems/commands/client";
|
|
6
|
+
import { Input } from "@tulip-systems/ui/input";
|
|
7
|
+
import { cn } from "@tulip-systems/ui/cn";
|
|
8
|
+
//#region src/root/components/command-file-upload.tsx
|
|
9
|
+
function LocalDriveFilesUploadCommand({ className, ...props }) {
|
|
10
|
+
const { onUpload } = useLocalDriveUploadZone();
|
|
11
|
+
return /* @__PURE__ */ jsxs(CommandEmpty, {
|
|
12
|
+
...props,
|
|
13
|
+
className: cn("relative gap-2", className),
|
|
14
|
+
label: "Upload",
|
|
15
|
+
children: [
|
|
16
|
+
/* @__PURE__ */ jsx(UploadIcon, { className: "h-3 w-3" }),
|
|
17
|
+
/* @__PURE__ */ jsx(CommandLabel, {}),
|
|
18
|
+
/* @__PURE__ */ jsx(Input, {
|
|
19
|
+
type: "file",
|
|
20
|
+
className: "absolute inset-0 z-10 h-full w-full cursor-pointer opacity-0",
|
|
21
|
+
multiple: true,
|
|
22
|
+
onChange: (event) => {
|
|
23
|
+
if (!event.target.files) return;
|
|
24
|
+
Array.from(event.target.files).forEach(onUpload);
|
|
25
|
+
}
|
|
26
|
+
})
|
|
27
|
+
]
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
//#endregion
|
|
31
|
+
export { LocalDriveFilesUploadCommand };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { CreateLocalDriveFolderInput } from "../lib/validators.mjs";
|
|
2
|
+
import { DefaultError, MutationOptions } from "@tanstack/react-query";
|
|
3
|
+
//#region src/root/components/command-folder-create.d.ts
|
|
4
|
+
type LocalDriveFoldersCreateCommandProps<TData = unknown, TError = DefaultError, TVariables = unknown, TOnMutateResult = unknown> = {
|
|
5
|
+
defaultValues?: Partial<CreateLocalDriveFolderInput>;
|
|
6
|
+
variables: (values: CreateLocalDriveFolderInput) => TVariables;
|
|
7
|
+
mutation: MutationOptions<TData, TError, TVariables, TOnMutateResult>;
|
|
8
|
+
};
|
|
9
|
+
declare function LocalDriveFoldersCreateCommand<TData = unknown, TError = DefaultError, TVariables = unknown, TOnMutateResult = unknown>({ defaultValues, variables, mutation }: LocalDriveFoldersCreateCommandProps<TData, TError, TVariables, TOnMutateResult>): import("react").JSX.Element;
|
|
10
|
+
//#endregion
|
|
11
|
+
export { LocalDriveFoldersCreateCommand, LocalDriveFoldersCreateCommandProps };
|