@fairu/sdk 1.0.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/CHANGELOG.md +16 -0
- package/README.md +447 -0
- package/dist/FairuClient-BUObk5LJ.cjs +91 -0
- package/dist/FairuClient-BUObk5LJ.cjs.map +1 -0
- package/dist/FairuClient-CT-IPh8i.js +92 -0
- package/dist/FairuClient-CT-IPh8i.js.map +1 -0
- package/dist/FairuError-D8sSmRAa.js +214 -0
- package/dist/FairuError-D8sSmRAa.js.map +1 -0
- package/dist/FairuError-DWH_Nwk0.cjs +213 -0
- package/dist/FairuError-DWH_Nwk0.cjs.map +1 -0
- package/dist/FairuProvider-BRpRddCI.cjs +51 -0
- package/dist/FairuProvider-BRpRddCI.cjs.map +1 -0
- package/dist/FairuProvider-Tc0vFo5L.js +52 -0
- package/dist/FairuProvider-Tc0vFo5L.js.map +1 -0
- package/dist/FileProxyBuilder-D-jZpAtd.cjs +269 -0
- package/dist/FileProxyBuilder-D-jZpAtd.cjs.map +1 -0
- package/dist/FileProxyBuilder-vHw1zBpJ.js +270 -0
- package/dist/FileProxyBuilder-vHw1zBpJ.js.map +1 -0
- package/dist/FragmentBuilder-BinoxeVS.js +194 -0
- package/dist/FragmentBuilder-BinoxeVS.js.map +1 -0
- package/dist/FragmentBuilder-BuvIC0aT.cjs +193 -0
- package/dist/FragmentBuilder-BuvIC0aT.cjs.map +1 -0
- package/dist/UploadError-CHBJuChw.cjs +81 -0
- package/dist/UploadError-CHBJuChw.cjs.map +1 -0
- package/dist/UploadError-_gEcJqSS.js +82 -0
- package/dist/UploadError-_gEcJqSS.js.map +1 -0
- package/dist/client/FairuClient.d.ts +8 -0
- package/dist/client/FairuClient.d.ts.map +1 -0
- package/dist/client/FairuProvider.d.ts +78 -0
- package/dist/client/FairuProvider.d.ts.map +1 -0
- package/dist/client/cache.d.ts +6 -0
- package/dist/client/cache.d.ts.map +1 -0
- package/dist/client/config.d.ts +77 -0
- package/dist/client/config.d.ts.map +1 -0
- package/dist/client/index.d.ts +5 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/errors/FairuError.d.ts +107 -0
- package/dist/errors/FairuError.d.ts.map +1 -0
- package/dist/errors/UploadError.d.ts +54 -0
- package/dist/errors/UploadError.d.ts.map +1 -0
- package/dist/errors/index.d.ts +3 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/fileproxy/FileProxyBuilder.d.ts +141 -0
- package/dist/fileproxy/FileProxyBuilder.d.ts.map +1 -0
- package/dist/fileproxy/index.d.ts +4 -0
- package/dist/fileproxy/index.d.ts.map +1 -0
- package/dist/fileproxy/types.d.ts +79 -0
- package/dist/fileproxy/types.d.ts.map +1 -0
- package/dist/fileproxy/useFileProxyUrl.d.ts +91 -0
- package/dist/fileproxy/useFileProxyUrl.d.ts.map +1 -0
- package/dist/fileproxy.cjs +10 -0
- package/dist/fileproxy.cjs.map +1 -0
- package/dist/fileproxy.d.ts +2 -0
- package/dist/fileproxy.js +10 -0
- package/dist/fileproxy.js.map +1 -0
- package/dist/fragments/FragmentBuilder.d.ts +107 -0
- package/dist/fragments/FragmentBuilder.d.ts.map +1 -0
- package/dist/fragments/FragmentRegistry.d.ts +93 -0
- package/dist/fragments/FragmentRegistry.d.ts.map +1 -0
- package/dist/fragments/index.d.ts +5 -0
- package/dist/fragments/index.d.ts.map +1 -0
- package/dist/fragments/predefined/assetFragments.d.ts +39 -0
- package/dist/fragments/predefined/assetFragments.d.ts.map +1 -0
- package/dist/fragments/predefined/copyrightFragments.d.ts +12 -0
- package/dist/fragments/predefined/copyrightFragments.d.ts.map +1 -0
- package/dist/fragments/predefined/folderFragments.d.ts +28 -0
- package/dist/fragments/predefined/folderFragments.d.ts.map +1 -0
- package/dist/fragments/predefined/galleryFragments.d.ts +24 -0
- package/dist/fragments/predefined/galleryFragments.d.ts.map +1 -0
- package/dist/fragments/predefined/index.d.ts +6 -0
- package/dist/fragments/predefined/index.d.ts.map +1 -0
- package/dist/fragments/predefined/licenseFragments.d.ts +12 -0
- package/dist/fragments/predefined/licenseFragments.d.ts.map +1 -0
- package/dist/fragments/types.d.ts +46 -0
- package/dist/fragments/types.d.ts.map +1 -0
- package/dist/fragments.cjs +403 -0
- package/dist/fragments.cjs.map +1 -0
- package/dist/fragments.d.ts +2 -0
- package/dist/fragments.js +403 -0
- package/dist/fragments.js.map +1 -0
- package/dist/generated/graphql.d.ts +3464 -0
- package/dist/generated/graphql.d.ts.map +1 -0
- package/dist/hooks/index.d.ts +3 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/mutations/index.d.ts +5 -0
- package/dist/hooks/mutations/index.d.ts.map +1 -0
- package/dist/hooks/mutations/useAssetMutations.d.ts +66 -0
- package/dist/hooks/mutations/useAssetMutations.d.ts.map +1 -0
- package/dist/hooks/mutations/useFolderMutations.d.ts +69 -0
- package/dist/hooks/mutations/useFolderMutations.d.ts.map +1 -0
- package/dist/hooks/mutations/useGalleryMutations.d.ts +39 -0
- package/dist/hooks/mutations/useGalleryMutations.d.ts.map +1 -0
- package/dist/hooks/mutations/useUpdateAsset.d.ts +50 -0
- package/dist/hooks/mutations/useUpdateAsset.d.ts.map +1 -0
- package/dist/hooks/queries/index.d.ts +8 -0
- package/dist/hooks/queries/index.d.ts.map +1 -0
- package/dist/hooks/queries/useAsset.d.ts +46 -0
- package/dist/hooks/queries/useAsset.d.ts.map +1 -0
- package/dist/hooks/queries/useAssets.d.ts +58 -0
- package/dist/hooks/queries/useAssets.d.ts.map +1 -0
- package/dist/hooks/queries/useCopyright.d.ts +51 -0
- package/dist/hooks/queries/useCopyright.d.ts.map +1 -0
- package/dist/hooks/queries/useFolder.d.ts +93 -0
- package/dist/hooks/queries/useFolder.d.ts.map +1 -0
- package/dist/hooks/queries/useGallery.d.ts +101 -0
- package/dist/hooks/queries/useGallery.d.ts.map +1 -0
- package/dist/hooks/queries/useLicense.d.ts +63 -0
- package/dist/hooks/queries/useLicense.d.ts.map +1 -0
- package/dist/hooks/queries/useTenant.d.ts +89 -0
- package/dist/hooks/queries/useTenant.d.ts.map +1 -0
- package/dist/index.cjs +244 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +18 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +244 -0
- package/dist/index.js.map +1 -0
- package/dist/react.cjs +596 -0
- package/dist/react.cjs.map +1 -0
- package/dist/react.d.ts +22 -0
- package/dist/react.d.ts.map +1 -0
- package/dist/react.js +596 -0
- package/dist/react.js.map +1 -0
- package/dist/upload/index.d.ts +4 -0
- package/dist/upload/index.d.ts.map +1 -0
- package/dist/upload/types.d.ts +96 -0
- package/dist/upload/types.d.ts.map +1 -0
- package/dist/upload/useMultipartUpload.d.ts +67 -0
- package/dist/upload/useMultipartUpload.d.ts.map +1 -0
- package/dist/upload/useUpload.d.ts +64 -0
- package/dist/upload/useUpload.d.ts.map +1 -0
- package/dist/upload.cjs +6 -0
- package/dist/upload.cjs.map +1 -0
- package/dist/upload.d.ts +2 -0
- package/dist/upload.js +6 -0
- package/dist/upload.js.map +1 -0
- package/dist/useFileProxyUrl-BCcux6re.cjs +87 -0
- package/dist/useFileProxyUrl-BCcux6re.cjs.map +1 -0
- package/dist/useFileProxyUrl-D_S1R_7O.js +88 -0
- package/dist/useFileProxyUrl-D_S1R_7O.js.map +1 -0
- package/dist/useMultipartUpload-BKnDbl8h.cjs +423 -0
- package/dist/useMultipartUpload-BKnDbl8h.cjs.map +1 -0
- package/dist/useMultipartUpload-CPK_PgUU.js +424 -0
- package/dist/useMultipartUpload-CPK_PgUU.js.map +1 -0
- package/dist/vanilla.cjs +219 -0
- package/dist/vanilla.cjs.map +1 -0
- package/dist/vanilla.d.ts +94 -0
- package/dist/vanilla.d.ts.map +1 -0
- package/dist/vanilla.js +220 -0
- package/dist/vanilla.js.map +1 -0
- package/package.json +177 -0
package/dist/index.cjs
ADDED
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const FragmentBuilder = require("./FragmentBuilder-BuvIC0aT.cjs");
|
|
4
|
+
const fragments = require("./fragments.cjs");
|
|
5
|
+
const FairuClient = require("./FairuClient-BUObk5LJ.cjs");
|
|
6
|
+
const FairuProvider = require("./FairuProvider-BRpRddCI.cjs");
|
|
7
|
+
const exchangeGraphcache = require("@urql/exchange-graphcache");
|
|
8
|
+
const FairuError = require("./FairuError-DWH_Nwk0.cjs");
|
|
9
|
+
const UploadError = require("./UploadError-CHBJuChw.cjs");
|
|
10
|
+
const DEFAULT_KEYS = {
|
|
11
|
+
FairuAsset: (data) => data.id,
|
|
12
|
+
FairuFolder: (data) => data.id,
|
|
13
|
+
FairuGallery: (data) => data.id,
|
|
14
|
+
FairuCopyright: (data) => data.id,
|
|
15
|
+
FairuLicense: (data) => data.id,
|
|
16
|
+
FairuWorkflow: (data) => data.id,
|
|
17
|
+
FairuUser: (data) => data.id,
|
|
18
|
+
FairuRole: (data) => data.id,
|
|
19
|
+
FairuDisk: (data) => data.id,
|
|
20
|
+
FairuTenant: (data) => data.id,
|
|
21
|
+
FairuDmca: (data) => data.id,
|
|
22
|
+
FairuRakuCredential: (data) => data.id,
|
|
23
|
+
// Don't cache paginator info as entity
|
|
24
|
+
DefaultPaginator: () => null,
|
|
25
|
+
PaginatorInfo: () => null
|
|
26
|
+
};
|
|
27
|
+
function createCacheExchange(config = {}) {
|
|
28
|
+
return exchangeGraphcache.cacheExchange({
|
|
29
|
+
keys: {
|
|
30
|
+
...DEFAULT_KEYS,
|
|
31
|
+
...config.keys
|
|
32
|
+
},
|
|
33
|
+
resolvers: {
|
|
34
|
+
Query: {
|
|
35
|
+
// Resolve single entity queries from cache
|
|
36
|
+
fairuFile: (_, args) => ({
|
|
37
|
+
__typename: "FairuAsset",
|
|
38
|
+
id: args.id
|
|
39
|
+
}),
|
|
40
|
+
fairuFolder: (_, args) => ({
|
|
41
|
+
__typename: "FairuFolder",
|
|
42
|
+
id: args.id
|
|
43
|
+
}),
|
|
44
|
+
fairuGallery: (_, args) => ({
|
|
45
|
+
__typename: "FairuGallery",
|
|
46
|
+
id: args.id
|
|
47
|
+
}),
|
|
48
|
+
fairuCopyright: (_, args) => ({
|
|
49
|
+
__typename: "FairuCopyright",
|
|
50
|
+
id: args.id
|
|
51
|
+
}),
|
|
52
|
+
fairuLicense: (_, args) => ({
|
|
53
|
+
__typename: "FairuLicense",
|
|
54
|
+
id: args.id
|
|
55
|
+
}),
|
|
56
|
+
fairuWorkflow: (_, args) => ({
|
|
57
|
+
__typename: "FairuWorkflow",
|
|
58
|
+
id: args.id
|
|
59
|
+
}),
|
|
60
|
+
fairuUser: (_, args) => ({
|
|
61
|
+
__typename: "FairuUser",
|
|
62
|
+
id: args.id
|
|
63
|
+
}),
|
|
64
|
+
fairuRole: (_, args) => ({
|
|
65
|
+
__typename: "FairuRole",
|
|
66
|
+
id: args.id
|
|
67
|
+
}),
|
|
68
|
+
fairuDisk: (_, args) => ({
|
|
69
|
+
__typename: "FairuDisk",
|
|
70
|
+
id: args.id
|
|
71
|
+
}),
|
|
72
|
+
fairuDmca: (_, args) => ({
|
|
73
|
+
__typename: "FairuDmca",
|
|
74
|
+
id: args.id
|
|
75
|
+
})
|
|
76
|
+
}
|
|
77
|
+
},
|
|
78
|
+
updates: {
|
|
79
|
+
Mutation: {
|
|
80
|
+
// Asset mutations
|
|
81
|
+
updateFairuFile: (_result, _args, _cache) => {
|
|
82
|
+
},
|
|
83
|
+
deleteFairuFile: (result, args, cache) => {
|
|
84
|
+
if (result.deleteFairuFile) {
|
|
85
|
+
cache.invalidate({
|
|
86
|
+
__typename: "FairuAsset",
|
|
87
|
+
id: args.id
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
},
|
|
91
|
+
blockFairuFile: (_result, _args, _cache) => {
|
|
92
|
+
},
|
|
93
|
+
unblockFairuFile: (_result, _args, _cache) => {
|
|
94
|
+
},
|
|
95
|
+
// Folder mutations
|
|
96
|
+
createFairuFolder: (_result, _args, cache) => {
|
|
97
|
+
cache.invalidate("Query", "fairuFolders");
|
|
98
|
+
},
|
|
99
|
+
updateFairuFolder: (_result, _args, _cache) => {
|
|
100
|
+
},
|
|
101
|
+
deleteFairuFolder: (result, args, cache) => {
|
|
102
|
+
if (result.deleteFairuFolder) {
|
|
103
|
+
cache.invalidate({
|
|
104
|
+
__typename: "FairuFolder",
|
|
105
|
+
id: args.id
|
|
106
|
+
});
|
|
107
|
+
cache.invalidate("Query", "fairuFolders");
|
|
108
|
+
}
|
|
109
|
+
},
|
|
110
|
+
// Gallery mutations
|
|
111
|
+
createFairuGallery: (_result, _args, cache) => {
|
|
112
|
+
cache.invalidate("Query", "fairuGalleries");
|
|
113
|
+
},
|
|
114
|
+
deleteFairuGallery: (result, args, cache) => {
|
|
115
|
+
if (result.deleteFairuGallery) {
|
|
116
|
+
cache.invalidate({
|
|
117
|
+
__typename: "FairuGallery",
|
|
118
|
+
id: args.id
|
|
119
|
+
});
|
|
120
|
+
cache.invalidate("Query", "fairuGalleries");
|
|
121
|
+
}
|
|
122
|
+
},
|
|
123
|
+
// Copyright mutations
|
|
124
|
+
createFairuCopyright: (_result, _args, cache) => {
|
|
125
|
+
cache.invalidate("Query", "fairuCopyrights");
|
|
126
|
+
},
|
|
127
|
+
deleteFairuCopyright: (result, args, cache) => {
|
|
128
|
+
if (result.deleteFairuCopyright) {
|
|
129
|
+
cache.invalidate({
|
|
130
|
+
__typename: "FairuCopyright",
|
|
131
|
+
id: args.id
|
|
132
|
+
});
|
|
133
|
+
cache.invalidate("Query", "fairuCopyrights");
|
|
134
|
+
}
|
|
135
|
+
},
|
|
136
|
+
// License mutations
|
|
137
|
+
createFairuLicense: (_result, _args, cache) => {
|
|
138
|
+
cache.invalidate("Query", "fairuLicenses");
|
|
139
|
+
},
|
|
140
|
+
deleteFairuLicense: (result, args, cache) => {
|
|
141
|
+
if (result.deleteFairuLicense) {
|
|
142
|
+
cache.invalidate({
|
|
143
|
+
__typename: "FairuLicense",
|
|
144
|
+
id: args.id
|
|
145
|
+
});
|
|
146
|
+
cache.invalidate("Query", "fairuLicenses");
|
|
147
|
+
}
|
|
148
|
+
},
|
|
149
|
+
// Upload mutations
|
|
150
|
+
completeFairuMultipartUpload: (_result, _args, cache) => {
|
|
151
|
+
cache.invalidate("Query", "fairuFiles");
|
|
152
|
+
},
|
|
153
|
+
// Workflow mutations
|
|
154
|
+
createFairuWorkflow: (_result, _args, cache) => {
|
|
155
|
+
cache.invalidate("Query", "fairuWorkflows");
|
|
156
|
+
},
|
|
157
|
+
deleteFairuWorkflow: (result, args, cache) => {
|
|
158
|
+
if (result.deleteFairuWorkflow) {
|
|
159
|
+
cache.invalidate({
|
|
160
|
+
__typename: "FairuWorkflow",
|
|
161
|
+
id: args.id
|
|
162
|
+
});
|
|
163
|
+
cache.invalidate("Query", "fairuWorkflows");
|
|
164
|
+
}
|
|
165
|
+
},
|
|
166
|
+
// User mutations
|
|
167
|
+
deleteFairuUser: (result, args, cache) => {
|
|
168
|
+
if (result.deleteFairuUser) {
|
|
169
|
+
cache.invalidate({
|
|
170
|
+
__typename: "FairuUser",
|
|
171
|
+
id: args.id
|
|
172
|
+
});
|
|
173
|
+
cache.invalidate("Query", "fairuUsers");
|
|
174
|
+
}
|
|
175
|
+
},
|
|
176
|
+
// Role mutations
|
|
177
|
+
createFairuRole: (_result, _args, cache) => {
|
|
178
|
+
cache.invalidate("Query", "fairuRoles");
|
|
179
|
+
},
|
|
180
|
+
deleteFairuRole: (result, args, cache) => {
|
|
181
|
+
if (result.deleteFairuRole) {
|
|
182
|
+
cache.invalidate({
|
|
183
|
+
__typename: "FairuRole",
|
|
184
|
+
id: args.id
|
|
185
|
+
});
|
|
186
|
+
cache.invalidate("Query", "fairuRoles");
|
|
187
|
+
}
|
|
188
|
+
},
|
|
189
|
+
// Disk mutations
|
|
190
|
+
createFairuDisk: (_result, _args, cache) => {
|
|
191
|
+
cache.invalidate("Query", "fairuDisks");
|
|
192
|
+
},
|
|
193
|
+
deleteFairuDisk: (result, args, cache) => {
|
|
194
|
+
if (result.deleteFairuDisk) {
|
|
195
|
+
cache.invalidate({
|
|
196
|
+
__typename: "FairuDisk",
|
|
197
|
+
id: args.id
|
|
198
|
+
});
|
|
199
|
+
cache.invalidate("Query", "fairuDisks");
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
},
|
|
204
|
+
optimistic: {
|
|
205
|
+
// Optimistic updates for better UX
|
|
206
|
+
blockFairuFile: (variables) => {
|
|
207
|
+
return {
|
|
208
|
+
__typename: "FairuAsset",
|
|
209
|
+
id: variables.id,
|
|
210
|
+
blocked: true
|
|
211
|
+
};
|
|
212
|
+
},
|
|
213
|
+
unblockFairuFile: (variables) => {
|
|
214
|
+
return {
|
|
215
|
+
__typename: "FairuAsset",
|
|
216
|
+
id: variables.id,
|
|
217
|
+
blocked: false
|
|
218
|
+
};
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
});
|
|
222
|
+
}
|
|
223
|
+
exports.FragmentBuilder = FragmentBuilder.FragmentBuilder;
|
|
224
|
+
exports.FragmentRegistry = fragments.FragmentRegistry;
|
|
225
|
+
exports.assetFragments = fragments.assetFragments;
|
|
226
|
+
exports.copyrightFragments = fragments.copyrightFragments;
|
|
227
|
+
exports.folderFragments = fragments.folderFragments;
|
|
228
|
+
exports.fragments = fragments.fragments;
|
|
229
|
+
exports.galleryFragments = fragments.galleryFragments;
|
|
230
|
+
exports.licenseFragments = fragments.licenseFragments;
|
|
231
|
+
exports.DEFAULT_CONFIG = FairuClient.DEFAULT_CONFIG;
|
|
232
|
+
exports.createFairuClient = FairuClient.createFairuClient;
|
|
233
|
+
exports.FairuProvider = FairuProvider.FairuProvider;
|
|
234
|
+
exports.useFairuClient = FairuProvider.useFairuClient;
|
|
235
|
+
exports.useFairuContext = FairuProvider.useFairuContext;
|
|
236
|
+
exports.useFileProxyBaseUrl = FairuProvider.useFileProxyUrl;
|
|
237
|
+
exports.useFragments = FairuProvider.useFragments;
|
|
238
|
+
exports.AuthenticationError = FairuError.AuthenticationError;
|
|
239
|
+
exports.FairuError = FairuError.FairuError;
|
|
240
|
+
exports.GraphQLError = FairuError.GraphQLError;
|
|
241
|
+
exports.ValidationError = FairuError.ValidationError;
|
|
242
|
+
exports.UploadError = UploadError.UploadError;
|
|
243
|
+
exports.createCacheExchange = createCacheExchange;
|
|
244
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../src/client/cache.ts"],"sourcesContent":["import { cacheExchange as graphcacheExchange } from '@urql/exchange-graphcache';\nimport type { CacheConfig } from './config';\n\n/**\n * Entity key extractors for Fairu types.\n */\nconst DEFAULT_KEYS: Record<string, (data: unknown) => string | null> = {\n FairuAsset: (data) => (data as { id: string }).id,\n FairuFolder: (data) => (data as { id: string }).id,\n FairuGallery: (data) => (data as { id: string }).id,\n FairuCopyright: (data) => (data as { id: string }).id,\n FairuLicense: (data) => (data as { id: string }).id,\n FairuWorkflow: (data) => (data as { id: string }).id,\n FairuUser: (data) => (data as { id: string }).id,\n FairuRole: (data) => (data as { id: string }).id,\n FairuDisk: (data) => (data as { id: string }).id,\n FairuTenant: (data) => (data as { id: string }).id,\n FairuDmca: (data) => (data as { id: string }).id,\n FairuRakuCredential: (data) => (data as { id: string }).id,\n // Don't cache paginator info as entity\n DefaultPaginator: () => null,\n PaginatorInfo: () => null,\n};\n\n/**\n * Create a Graphcache exchange with Fairu-specific configuration.\n */\nexport function createCacheExchange(config: CacheConfig = {}) {\n return graphcacheExchange({\n keys: {\n ...DEFAULT_KEYS,\n ...config.keys,\n },\n\n resolvers: {\n Query: {\n // Resolve single entity queries from cache\n fairuFile: (_, args) => ({\n __typename: 'FairuAsset',\n id: args.id as string,\n }),\n fairuFolder: (_, args) => ({\n __typename: 'FairuFolder',\n id: args.id as string,\n }),\n fairuGallery: (_, args) => ({\n __typename: 'FairuGallery',\n id: args.id as string,\n }),\n fairuCopyright: (_, args) => ({\n __typename: 'FairuCopyright',\n id: args.id as string,\n }),\n fairuLicense: (_, args) => ({\n __typename: 'FairuLicense',\n id: args.id as string,\n }),\n fairuWorkflow: (_, args) => ({\n __typename: 'FairuWorkflow',\n id: args.id as string,\n }),\n fairuUser: (_, args) => ({\n __typename: 'FairuUser',\n id: args.id as string,\n }),\n fairuRole: (_, args) => ({\n __typename: 'FairuRole',\n id: args.id as string,\n }),\n fairuDisk: (_, args) => ({\n __typename: 'FairuDisk',\n id: args.id as string,\n }),\n fairuDmca: (_, args) => ({\n __typename: 'FairuDmca',\n id: args.id as string,\n }),\n },\n },\n\n updates: {\n Mutation: {\n // Asset mutations\n updateFairuFile: (_result, _args, _cache) => {\n // Graphcache automatically updates matching entities\n },\n\n deleteFairuFile: (result, args, cache) => {\n if (result.deleteFairuFile) {\n cache.invalidate({\n __typename: 'FairuAsset',\n id: args.id as string,\n });\n }\n },\n\n blockFairuFile: (_result, _args, _cache) => {\n // Entity is automatically updated\n },\n\n unblockFairuFile: (_result, _args, _cache) => {\n // Entity is automatically updated\n },\n\n // Folder mutations\n createFairuFolder: (_result, _args, cache) => {\n // Invalidate folder list queries to refetch\n cache.invalidate('Query', 'fairuFolders');\n },\n\n updateFairuFolder: (_result, _args, _cache) => {\n // Entity is automatically updated\n },\n\n deleteFairuFolder: (result, args, cache) => {\n if (result.deleteFairuFolder) {\n cache.invalidate({\n __typename: 'FairuFolder',\n id: args.id as string,\n });\n cache.invalidate('Query', 'fairuFolders');\n }\n },\n\n // Gallery mutations\n createFairuGallery: (_result, _args, cache) => {\n cache.invalidate('Query', 'fairuGalleries');\n },\n\n deleteFairuGallery: (result, args, cache) => {\n if (result.deleteFairuGallery) {\n cache.invalidate({\n __typename: 'FairuGallery',\n id: args.id as string,\n });\n cache.invalidate('Query', 'fairuGalleries');\n }\n },\n\n // Copyright mutations\n createFairuCopyright: (_result, _args, cache) => {\n cache.invalidate('Query', 'fairuCopyrights');\n },\n\n deleteFairuCopyright: (result, args, cache) => {\n if (result.deleteFairuCopyright) {\n cache.invalidate({\n __typename: 'FairuCopyright',\n id: args.id as string,\n });\n cache.invalidate('Query', 'fairuCopyrights');\n }\n },\n\n // License mutations\n createFairuLicense: (_result, _args, cache) => {\n cache.invalidate('Query', 'fairuLicenses');\n },\n\n deleteFairuLicense: (result, args, cache) => {\n if (result.deleteFairuLicense) {\n cache.invalidate({\n __typename: 'FairuLicense',\n id: args.id as string,\n });\n cache.invalidate('Query', 'fairuLicenses');\n }\n },\n\n // Upload mutations\n completeFairuMultipartUpload: (_result, _args, cache) => {\n // Invalidate file list to show new upload\n cache.invalidate('Query', 'fairuFiles');\n },\n\n // Workflow mutations\n createFairuWorkflow: (_result, _args, cache) => {\n cache.invalidate('Query', 'fairuWorkflows');\n },\n\n deleteFairuWorkflow: (result, args, cache) => {\n if (result.deleteFairuWorkflow) {\n cache.invalidate({\n __typename: 'FairuWorkflow',\n id: args.id as string,\n });\n cache.invalidate('Query', 'fairuWorkflows');\n }\n },\n\n // User mutations\n deleteFairuUser: (result, args, cache) => {\n if (result.deleteFairuUser) {\n cache.invalidate({\n __typename: 'FairuUser',\n id: args.id as string,\n });\n cache.invalidate('Query', 'fairuUsers');\n }\n },\n\n // Role mutations\n createFairuRole: (_result, _args, cache) => {\n cache.invalidate('Query', 'fairuRoles');\n },\n\n deleteFairuRole: (result, args, cache) => {\n if (result.deleteFairuRole) {\n cache.invalidate({\n __typename: 'FairuRole',\n id: args.id as string,\n });\n cache.invalidate('Query', 'fairuRoles');\n }\n },\n\n // Disk mutations\n createFairuDisk: (_result, _args, cache) => {\n cache.invalidate('Query', 'fairuDisks');\n },\n\n deleteFairuDisk: (result, args, cache) => {\n if (result.deleteFairuDisk) {\n cache.invalidate({\n __typename: 'FairuDisk',\n id: args.id as string,\n });\n cache.invalidate('Query', 'fairuDisks');\n }\n },\n },\n },\n\n optimistic: {\n // Optimistic updates for better UX\n blockFairuFile: (variables) => {\n return {\n __typename: 'FairuAsset',\n id: variables.id as string,\n blocked: true,\n };\n },\n\n unblockFairuFile: (variables) => {\n return {\n __typename: 'FairuAsset',\n id: variables.id as string,\n blocked: false,\n };\n },\n },\n });\n}\n"],"names":["graphcacheExchange"],"mappings":";;;;;;;;;AAMA,MAAM,eAAiE;AAAA,EACrE,YAAY,CAAC,SAAU,KAAwB;AAAA,EAC/C,aAAa,CAAC,SAAU,KAAwB;AAAA,EAChD,cAAc,CAAC,SAAU,KAAwB;AAAA,EACjD,gBAAgB,CAAC,SAAU,KAAwB;AAAA,EACnD,cAAc,CAAC,SAAU,KAAwB;AAAA,EACjD,eAAe,CAAC,SAAU,KAAwB;AAAA,EAClD,WAAW,CAAC,SAAU,KAAwB;AAAA,EAC9C,WAAW,CAAC,SAAU,KAAwB;AAAA,EAC9C,WAAW,CAAC,SAAU,KAAwB;AAAA,EAC9C,aAAa,CAAC,SAAU,KAAwB;AAAA,EAChD,WAAW,CAAC,SAAU,KAAwB;AAAA,EAC9C,qBAAqB,CAAC,SAAU,KAAwB;AAAA;AAAA,EAExD,kBAAkB,MAAM;AAAA,EACxB,eAAe,MAAM;AACvB;AAKO,SAAS,oBAAoB,SAAsB,IAAI;AAC5D,SAAOA,iCAAmB;AAAA,IACxB,MAAM;AAAA,MACJ,GAAG;AAAA,MACH,GAAG,OAAO;AAAA,IAAA;AAAA,IAGZ,WAAW;AAAA,MACT,OAAO;AAAA;AAAA,QAEL,WAAW,CAAC,GAAG,UAAU;AAAA,UACvB,YAAY;AAAA,UACZ,IAAI,KAAK;AAAA,QAAA;AAAA,QAEX,aAAa,CAAC,GAAG,UAAU;AAAA,UACzB,YAAY;AAAA,UACZ,IAAI,KAAK;AAAA,QAAA;AAAA,QAEX,cAAc,CAAC,GAAG,UAAU;AAAA,UAC1B,YAAY;AAAA,UACZ,IAAI,KAAK;AAAA,QAAA;AAAA,QAEX,gBAAgB,CAAC,GAAG,UAAU;AAAA,UAC5B,YAAY;AAAA,UACZ,IAAI,KAAK;AAAA,QAAA;AAAA,QAEX,cAAc,CAAC,GAAG,UAAU;AAAA,UAC1B,YAAY;AAAA,UACZ,IAAI,KAAK;AAAA,QAAA;AAAA,QAEX,eAAe,CAAC,GAAG,UAAU;AAAA,UAC3B,YAAY;AAAA,UACZ,IAAI,KAAK;AAAA,QAAA;AAAA,QAEX,WAAW,CAAC,GAAG,UAAU;AAAA,UACvB,YAAY;AAAA,UACZ,IAAI,KAAK;AAAA,QAAA;AAAA,QAEX,WAAW,CAAC,GAAG,UAAU;AAAA,UACvB,YAAY;AAAA,UACZ,IAAI,KAAK;AAAA,QAAA;AAAA,QAEX,WAAW,CAAC,GAAG,UAAU;AAAA,UACvB,YAAY;AAAA,UACZ,IAAI,KAAK;AAAA,QAAA;AAAA,QAEX,WAAW,CAAC,GAAG,UAAU;AAAA,UACvB,YAAY;AAAA,UACZ,IAAI,KAAK;AAAA,QAAA;AAAA,MACX;AAAA,IACF;AAAA,IAGF,SAAS;AAAA,MACP,UAAU;AAAA;AAAA,QAER,iBAAiB,CAAC,SAAS,OAAO,WAAW;AAAA,QAE7C;AAAA,QAEA,iBAAiB,CAAC,QAAQ,MAAM,UAAU;AACxC,cAAI,OAAO,iBAAiB;AAC1B,kBAAM,WAAW;AAAA,cACf,YAAY;AAAA,cACZ,IAAI,KAAK;AAAA,YAAA,CACV;AAAA,UACH;AAAA,QACF;AAAA,QAEA,gBAAgB,CAAC,SAAS,OAAO,WAAW;AAAA,QAE5C;AAAA,QAEA,kBAAkB,CAAC,SAAS,OAAO,WAAW;AAAA,QAE9C;AAAA;AAAA,QAGA,mBAAmB,CAAC,SAAS,OAAO,UAAU;AAE5C,gBAAM,WAAW,SAAS,cAAc;AAAA,QAC1C;AAAA,QAEA,mBAAmB,CAAC,SAAS,OAAO,WAAW;AAAA,QAE/C;AAAA,QAEA,mBAAmB,CAAC,QAAQ,MAAM,UAAU;AAC1C,cAAI,OAAO,mBAAmB;AAC5B,kBAAM,WAAW;AAAA,cACf,YAAY;AAAA,cACZ,IAAI,KAAK;AAAA,YAAA,CACV;AACD,kBAAM,WAAW,SAAS,cAAc;AAAA,UAC1C;AAAA,QACF;AAAA;AAAA,QAGA,oBAAoB,CAAC,SAAS,OAAO,UAAU;AAC7C,gBAAM,WAAW,SAAS,gBAAgB;AAAA,QAC5C;AAAA,QAEA,oBAAoB,CAAC,QAAQ,MAAM,UAAU;AAC3C,cAAI,OAAO,oBAAoB;AAC7B,kBAAM,WAAW;AAAA,cACf,YAAY;AAAA,cACZ,IAAI,KAAK;AAAA,YAAA,CACV;AACD,kBAAM,WAAW,SAAS,gBAAgB;AAAA,UAC5C;AAAA,QACF;AAAA;AAAA,QAGA,sBAAsB,CAAC,SAAS,OAAO,UAAU;AAC/C,gBAAM,WAAW,SAAS,iBAAiB;AAAA,QAC7C;AAAA,QAEA,sBAAsB,CAAC,QAAQ,MAAM,UAAU;AAC7C,cAAI,OAAO,sBAAsB;AAC/B,kBAAM,WAAW;AAAA,cACf,YAAY;AAAA,cACZ,IAAI,KAAK;AAAA,YAAA,CACV;AACD,kBAAM,WAAW,SAAS,iBAAiB;AAAA,UAC7C;AAAA,QACF;AAAA;AAAA,QAGA,oBAAoB,CAAC,SAAS,OAAO,UAAU;AAC7C,gBAAM,WAAW,SAAS,eAAe;AAAA,QAC3C;AAAA,QAEA,oBAAoB,CAAC,QAAQ,MAAM,UAAU;AAC3C,cAAI,OAAO,oBAAoB;AAC7B,kBAAM,WAAW;AAAA,cACf,YAAY;AAAA,cACZ,IAAI,KAAK;AAAA,YAAA,CACV;AACD,kBAAM,WAAW,SAAS,eAAe;AAAA,UAC3C;AAAA,QACF;AAAA;AAAA,QAGA,8BAA8B,CAAC,SAAS,OAAO,UAAU;AAEvD,gBAAM,WAAW,SAAS,YAAY;AAAA,QACxC;AAAA;AAAA,QAGA,qBAAqB,CAAC,SAAS,OAAO,UAAU;AAC9C,gBAAM,WAAW,SAAS,gBAAgB;AAAA,QAC5C;AAAA,QAEA,qBAAqB,CAAC,QAAQ,MAAM,UAAU;AAC5C,cAAI,OAAO,qBAAqB;AAC9B,kBAAM,WAAW;AAAA,cACf,YAAY;AAAA,cACZ,IAAI,KAAK;AAAA,YAAA,CACV;AACD,kBAAM,WAAW,SAAS,gBAAgB;AAAA,UAC5C;AAAA,QACF;AAAA;AAAA,QAGA,iBAAiB,CAAC,QAAQ,MAAM,UAAU;AACxC,cAAI,OAAO,iBAAiB;AAC1B,kBAAM,WAAW;AAAA,cACf,YAAY;AAAA,cACZ,IAAI,KAAK;AAAA,YAAA,CACV;AACD,kBAAM,WAAW,SAAS,YAAY;AAAA,UACxC;AAAA,QACF;AAAA;AAAA,QAGA,iBAAiB,CAAC,SAAS,OAAO,UAAU;AAC1C,gBAAM,WAAW,SAAS,YAAY;AAAA,QACxC;AAAA,QAEA,iBAAiB,CAAC,QAAQ,MAAM,UAAU;AACxC,cAAI,OAAO,iBAAiB;AAC1B,kBAAM,WAAW;AAAA,cACf,YAAY;AAAA,cACZ,IAAI,KAAK;AAAA,YAAA,CACV;AACD,kBAAM,WAAW,SAAS,YAAY;AAAA,UACxC;AAAA,QACF;AAAA;AAAA,QAGA,iBAAiB,CAAC,SAAS,OAAO,UAAU;AAC1C,gBAAM,WAAW,SAAS,YAAY;AAAA,QACxC;AAAA,QAEA,iBAAiB,CAAC,QAAQ,MAAM,UAAU;AACxC,cAAI,OAAO,iBAAiB;AAC1B,kBAAM,WAAW;AAAA,cACf,YAAY;AAAA,cACZ,IAAI,KAAK;AAAA,YAAA,CACV;AACD,kBAAM,WAAW,SAAS,YAAY;AAAA,UACxC;AAAA,QACF;AAAA,MAAA;AAAA,IACF;AAAA,IAGF,YAAY;AAAA;AAAA,MAEV,gBAAgB,CAAC,cAAc;AAC7B,eAAO;AAAA,UACL,YAAY;AAAA,UACZ,IAAI,UAAU;AAAA,UACd,SAAS;AAAA,QAAA;AAAA,MAEb;AAAA,MAEA,kBAAkB,CAAC,cAAc;AAC/B,eAAO;AAAA,UACL,YAAY;AAAA,UACZ,IAAI,UAAU;AAAA,UACd,SAAS;AAAA,QAAA;AAAA,MAEb;AAAA,IAAA;AAAA,EACF,CACD;AACH;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fairu/sdk - TypeScript SDK for Fairu GraphQL API
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```typescript
|
|
6
|
+
* import { createFairuClient, FairuProvider, useAsset } from '@fairu/sdk';
|
|
7
|
+
*
|
|
8
|
+
* const client = createFairuClient({
|
|
9
|
+
* url: 'https://fairu.app/graphql',
|
|
10
|
+
* token: 'your-token',
|
|
11
|
+
* });
|
|
12
|
+
* ```
|
|
13
|
+
*/
|
|
14
|
+
export { createFairuClient, FairuProvider, useFairuContext, useFairuClient, useFragments, useFileProxyUrl as useFileProxyBaseUrl, createCacheExchange, DEFAULT_CONFIG, type Client, type FairuClientConfig, type FairuProviderProps, type CacheConfig, type RetryConfig, } from './client';
|
|
15
|
+
export { FragmentBuilder, FragmentRegistry, fragments, assetFragments, folderFragments, galleryFragments, copyrightFragments, licenseFragments, type FragmentInterface, type FragmentVariant, type FragmentCallback, } from './fragments';
|
|
16
|
+
export { FairuError, GraphQLError, AuthenticationError, ValidationError, UploadError, type UploadErrorCode, } from './errors';
|
|
17
|
+
export type * from './generated/graphql';
|
|
18
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,eAAe,EACf,cAAc,EACd,YAAY,EACZ,eAAe,IAAI,mBAAmB,EACtC,mBAAmB,EACnB,cAAc,EACd,KAAK,MAAM,EACX,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,WAAW,EAChB,KAAK,WAAW,GACjB,MAAM,UAAU,CAAC;AAGlB,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,SAAS,EACT,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,gBAAgB,GACtB,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,UAAU,EACV,YAAY,EACZ,mBAAmB,EACnB,eAAe,EACf,WAAW,EACX,KAAK,eAAe,GACrB,MAAM,UAAU,CAAC;AAGlB,mBAAmB,qBAAqB,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
import { F } from "./FragmentBuilder-BinoxeVS.js";
|
|
2
|
+
import { FragmentRegistry, assetFragments, copyrightFragments, folderFragments, fragments, galleryFragments, licenseFragments } from "./fragments.js";
|
|
3
|
+
import { D, c } from "./FairuClient-CT-IPh8i.js";
|
|
4
|
+
import { F as F2, a, u, c as c2, b } from "./FairuProvider-Tc0vFo5L.js";
|
|
5
|
+
import { cacheExchange } from "@urql/exchange-graphcache";
|
|
6
|
+
import { A, F as F3, G, V } from "./FairuError-D8sSmRAa.js";
|
|
7
|
+
import { U } from "./UploadError-_gEcJqSS.js";
|
|
8
|
+
const DEFAULT_KEYS = {
|
|
9
|
+
FairuAsset: (data) => data.id,
|
|
10
|
+
FairuFolder: (data) => data.id,
|
|
11
|
+
FairuGallery: (data) => data.id,
|
|
12
|
+
FairuCopyright: (data) => data.id,
|
|
13
|
+
FairuLicense: (data) => data.id,
|
|
14
|
+
FairuWorkflow: (data) => data.id,
|
|
15
|
+
FairuUser: (data) => data.id,
|
|
16
|
+
FairuRole: (data) => data.id,
|
|
17
|
+
FairuDisk: (data) => data.id,
|
|
18
|
+
FairuTenant: (data) => data.id,
|
|
19
|
+
FairuDmca: (data) => data.id,
|
|
20
|
+
FairuRakuCredential: (data) => data.id,
|
|
21
|
+
// Don't cache paginator info as entity
|
|
22
|
+
DefaultPaginator: () => null,
|
|
23
|
+
PaginatorInfo: () => null
|
|
24
|
+
};
|
|
25
|
+
function createCacheExchange(config = {}) {
|
|
26
|
+
return cacheExchange({
|
|
27
|
+
keys: {
|
|
28
|
+
...DEFAULT_KEYS,
|
|
29
|
+
...config.keys
|
|
30
|
+
},
|
|
31
|
+
resolvers: {
|
|
32
|
+
Query: {
|
|
33
|
+
// Resolve single entity queries from cache
|
|
34
|
+
fairuFile: (_, args) => ({
|
|
35
|
+
__typename: "FairuAsset",
|
|
36
|
+
id: args.id
|
|
37
|
+
}),
|
|
38
|
+
fairuFolder: (_, args) => ({
|
|
39
|
+
__typename: "FairuFolder",
|
|
40
|
+
id: args.id
|
|
41
|
+
}),
|
|
42
|
+
fairuGallery: (_, args) => ({
|
|
43
|
+
__typename: "FairuGallery",
|
|
44
|
+
id: args.id
|
|
45
|
+
}),
|
|
46
|
+
fairuCopyright: (_, args) => ({
|
|
47
|
+
__typename: "FairuCopyright",
|
|
48
|
+
id: args.id
|
|
49
|
+
}),
|
|
50
|
+
fairuLicense: (_, args) => ({
|
|
51
|
+
__typename: "FairuLicense",
|
|
52
|
+
id: args.id
|
|
53
|
+
}),
|
|
54
|
+
fairuWorkflow: (_, args) => ({
|
|
55
|
+
__typename: "FairuWorkflow",
|
|
56
|
+
id: args.id
|
|
57
|
+
}),
|
|
58
|
+
fairuUser: (_, args) => ({
|
|
59
|
+
__typename: "FairuUser",
|
|
60
|
+
id: args.id
|
|
61
|
+
}),
|
|
62
|
+
fairuRole: (_, args) => ({
|
|
63
|
+
__typename: "FairuRole",
|
|
64
|
+
id: args.id
|
|
65
|
+
}),
|
|
66
|
+
fairuDisk: (_, args) => ({
|
|
67
|
+
__typename: "FairuDisk",
|
|
68
|
+
id: args.id
|
|
69
|
+
}),
|
|
70
|
+
fairuDmca: (_, args) => ({
|
|
71
|
+
__typename: "FairuDmca",
|
|
72
|
+
id: args.id
|
|
73
|
+
})
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
updates: {
|
|
77
|
+
Mutation: {
|
|
78
|
+
// Asset mutations
|
|
79
|
+
updateFairuFile: (_result, _args, _cache) => {
|
|
80
|
+
},
|
|
81
|
+
deleteFairuFile: (result, args, cache) => {
|
|
82
|
+
if (result.deleteFairuFile) {
|
|
83
|
+
cache.invalidate({
|
|
84
|
+
__typename: "FairuAsset",
|
|
85
|
+
id: args.id
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
},
|
|
89
|
+
blockFairuFile: (_result, _args, _cache) => {
|
|
90
|
+
},
|
|
91
|
+
unblockFairuFile: (_result, _args, _cache) => {
|
|
92
|
+
},
|
|
93
|
+
// Folder mutations
|
|
94
|
+
createFairuFolder: (_result, _args, cache) => {
|
|
95
|
+
cache.invalidate("Query", "fairuFolders");
|
|
96
|
+
},
|
|
97
|
+
updateFairuFolder: (_result, _args, _cache) => {
|
|
98
|
+
},
|
|
99
|
+
deleteFairuFolder: (result, args, cache) => {
|
|
100
|
+
if (result.deleteFairuFolder) {
|
|
101
|
+
cache.invalidate({
|
|
102
|
+
__typename: "FairuFolder",
|
|
103
|
+
id: args.id
|
|
104
|
+
});
|
|
105
|
+
cache.invalidate("Query", "fairuFolders");
|
|
106
|
+
}
|
|
107
|
+
},
|
|
108
|
+
// Gallery mutations
|
|
109
|
+
createFairuGallery: (_result, _args, cache) => {
|
|
110
|
+
cache.invalidate("Query", "fairuGalleries");
|
|
111
|
+
},
|
|
112
|
+
deleteFairuGallery: (result, args, cache) => {
|
|
113
|
+
if (result.deleteFairuGallery) {
|
|
114
|
+
cache.invalidate({
|
|
115
|
+
__typename: "FairuGallery",
|
|
116
|
+
id: args.id
|
|
117
|
+
});
|
|
118
|
+
cache.invalidate("Query", "fairuGalleries");
|
|
119
|
+
}
|
|
120
|
+
},
|
|
121
|
+
// Copyright mutations
|
|
122
|
+
createFairuCopyright: (_result, _args, cache) => {
|
|
123
|
+
cache.invalidate("Query", "fairuCopyrights");
|
|
124
|
+
},
|
|
125
|
+
deleteFairuCopyright: (result, args, cache) => {
|
|
126
|
+
if (result.deleteFairuCopyright) {
|
|
127
|
+
cache.invalidate({
|
|
128
|
+
__typename: "FairuCopyright",
|
|
129
|
+
id: args.id
|
|
130
|
+
});
|
|
131
|
+
cache.invalidate("Query", "fairuCopyrights");
|
|
132
|
+
}
|
|
133
|
+
},
|
|
134
|
+
// License mutations
|
|
135
|
+
createFairuLicense: (_result, _args, cache) => {
|
|
136
|
+
cache.invalidate("Query", "fairuLicenses");
|
|
137
|
+
},
|
|
138
|
+
deleteFairuLicense: (result, args, cache) => {
|
|
139
|
+
if (result.deleteFairuLicense) {
|
|
140
|
+
cache.invalidate({
|
|
141
|
+
__typename: "FairuLicense",
|
|
142
|
+
id: args.id
|
|
143
|
+
});
|
|
144
|
+
cache.invalidate("Query", "fairuLicenses");
|
|
145
|
+
}
|
|
146
|
+
},
|
|
147
|
+
// Upload mutations
|
|
148
|
+
completeFairuMultipartUpload: (_result, _args, cache) => {
|
|
149
|
+
cache.invalidate("Query", "fairuFiles");
|
|
150
|
+
},
|
|
151
|
+
// Workflow mutations
|
|
152
|
+
createFairuWorkflow: (_result, _args, cache) => {
|
|
153
|
+
cache.invalidate("Query", "fairuWorkflows");
|
|
154
|
+
},
|
|
155
|
+
deleteFairuWorkflow: (result, args, cache) => {
|
|
156
|
+
if (result.deleteFairuWorkflow) {
|
|
157
|
+
cache.invalidate({
|
|
158
|
+
__typename: "FairuWorkflow",
|
|
159
|
+
id: args.id
|
|
160
|
+
});
|
|
161
|
+
cache.invalidate("Query", "fairuWorkflows");
|
|
162
|
+
}
|
|
163
|
+
},
|
|
164
|
+
// User mutations
|
|
165
|
+
deleteFairuUser: (result, args, cache) => {
|
|
166
|
+
if (result.deleteFairuUser) {
|
|
167
|
+
cache.invalidate({
|
|
168
|
+
__typename: "FairuUser",
|
|
169
|
+
id: args.id
|
|
170
|
+
});
|
|
171
|
+
cache.invalidate("Query", "fairuUsers");
|
|
172
|
+
}
|
|
173
|
+
},
|
|
174
|
+
// Role mutations
|
|
175
|
+
createFairuRole: (_result, _args, cache) => {
|
|
176
|
+
cache.invalidate("Query", "fairuRoles");
|
|
177
|
+
},
|
|
178
|
+
deleteFairuRole: (result, args, cache) => {
|
|
179
|
+
if (result.deleteFairuRole) {
|
|
180
|
+
cache.invalidate({
|
|
181
|
+
__typename: "FairuRole",
|
|
182
|
+
id: args.id
|
|
183
|
+
});
|
|
184
|
+
cache.invalidate("Query", "fairuRoles");
|
|
185
|
+
}
|
|
186
|
+
},
|
|
187
|
+
// Disk mutations
|
|
188
|
+
createFairuDisk: (_result, _args, cache) => {
|
|
189
|
+
cache.invalidate("Query", "fairuDisks");
|
|
190
|
+
},
|
|
191
|
+
deleteFairuDisk: (result, args, cache) => {
|
|
192
|
+
if (result.deleteFairuDisk) {
|
|
193
|
+
cache.invalidate({
|
|
194
|
+
__typename: "FairuDisk",
|
|
195
|
+
id: args.id
|
|
196
|
+
});
|
|
197
|
+
cache.invalidate("Query", "fairuDisks");
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
},
|
|
202
|
+
optimistic: {
|
|
203
|
+
// Optimistic updates for better UX
|
|
204
|
+
blockFairuFile: (variables) => {
|
|
205
|
+
return {
|
|
206
|
+
__typename: "FairuAsset",
|
|
207
|
+
id: variables.id,
|
|
208
|
+
blocked: true
|
|
209
|
+
};
|
|
210
|
+
},
|
|
211
|
+
unblockFairuFile: (variables) => {
|
|
212
|
+
return {
|
|
213
|
+
__typename: "FairuAsset",
|
|
214
|
+
id: variables.id,
|
|
215
|
+
blocked: false
|
|
216
|
+
};
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
});
|
|
220
|
+
}
|
|
221
|
+
export {
|
|
222
|
+
A as AuthenticationError,
|
|
223
|
+
D as DEFAULT_CONFIG,
|
|
224
|
+
F3 as FairuError,
|
|
225
|
+
F2 as FairuProvider,
|
|
226
|
+
F as FragmentBuilder,
|
|
227
|
+
FragmentRegistry,
|
|
228
|
+
G as GraphQLError,
|
|
229
|
+
U as UploadError,
|
|
230
|
+
V as ValidationError,
|
|
231
|
+
assetFragments,
|
|
232
|
+
copyrightFragments,
|
|
233
|
+
createCacheExchange,
|
|
234
|
+
c as createFairuClient,
|
|
235
|
+
folderFragments,
|
|
236
|
+
fragments,
|
|
237
|
+
galleryFragments,
|
|
238
|
+
licenseFragments,
|
|
239
|
+
a as useFairuClient,
|
|
240
|
+
u as useFairuContext,
|
|
241
|
+
c2 as useFileProxyBaseUrl,
|
|
242
|
+
b as useFragments
|
|
243
|
+
};
|
|
244
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/client/cache.ts"],"sourcesContent":["import { cacheExchange as graphcacheExchange } from '@urql/exchange-graphcache';\nimport type { CacheConfig } from './config';\n\n/**\n * Entity key extractors for Fairu types.\n */\nconst DEFAULT_KEYS: Record<string, (data: unknown) => string | null> = {\n FairuAsset: (data) => (data as { id: string }).id,\n FairuFolder: (data) => (data as { id: string }).id,\n FairuGallery: (data) => (data as { id: string }).id,\n FairuCopyright: (data) => (data as { id: string }).id,\n FairuLicense: (data) => (data as { id: string }).id,\n FairuWorkflow: (data) => (data as { id: string }).id,\n FairuUser: (data) => (data as { id: string }).id,\n FairuRole: (data) => (data as { id: string }).id,\n FairuDisk: (data) => (data as { id: string }).id,\n FairuTenant: (data) => (data as { id: string }).id,\n FairuDmca: (data) => (data as { id: string }).id,\n FairuRakuCredential: (data) => (data as { id: string }).id,\n // Don't cache paginator info as entity\n DefaultPaginator: () => null,\n PaginatorInfo: () => null,\n};\n\n/**\n * Create a Graphcache exchange with Fairu-specific configuration.\n */\nexport function createCacheExchange(config: CacheConfig = {}) {\n return graphcacheExchange({\n keys: {\n ...DEFAULT_KEYS,\n ...config.keys,\n },\n\n resolvers: {\n Query: {\n // Resolve single entity queries from cache\n fairuFile: (_, args) => ({\n __typename: 'FairuAsset',\n id: args.id as string,\n }),\n fairuFolder: (_, args) => ({\n __typename: 'FairuFolder',\n id: args.id as string,\n }),\n fairuGallery: (_, args) => ({\n __typename: 'FairuGallery',\n id: args.id as string,\n }),\n fairuCopyright: (_, args) => ({\n __typename: 'FairuCopyright',\n id: args.id as string,\n }),\n fairuLicense: (_, args) => ({\n __typename: 'FairuLicense',\n id: args.id as string,\n }),\n fairuWorkflow: (_, args) => ({\n __typename: 'FairuWorkflow',\n id: args.id as string,\n }),\n fairuUser: (_, args) => ({\n __typename: 'FairuUser',\n id: args.id as string,\n }),\n fairuRole: (_, args) => ({\n __typename: 'FairuRole',\n id: args.id as string,\n }),\n fairuDisk: (_, args) => ({\n __typename: 'FairuDisk',\n id: args.id as string,\n }),\n fairuDmca: (_, args) => ({\n __typename: 'FairuDmca',\n id: args.id as string,\n }),\n },\n },\n\n updates: {\n Mutation: {\n // Asset mutations\n updateFairuFile: (_result, _args, _cache) => {\n // Graphcache automatically updates matching entities\n },\n\n deleteFairuFile: (result, args, cache) => {\n if (result.deleteFairuFile) {\n cache.invalidate({\n __typename: 'FairuAsset',\n id: args.id as string,\n });\n }\n },\n\n blockFairuFile: (_result, _args, _cache) => {\n // Entity is automatically updated\n },\n\n unblockFairuFile: (_result, _args, _cache) => {\n // Entity is automatically updated\n },\n\n // Folder mutations\n createFairuFolder: (_result, _args, cache) => {\n // Invalidate folder list queries to refetch\n cache.invalidate('Query', 'fairuFolders');\n },\n\n updateFairuFolder: (_result, _args, _cache) => {\n // Entity is automatically updated\n },\n\n deleteFairuFolder: (result, args, cache) => {\n if (result.deleteFairuFolder) {\n cache.invalidate({\n __typename: 'FairuFolder',\n id: args.id as string,\n });\n cache.invalidate('Query', 'fairuFolders');\n }\n },\n\n // Gallery mutations\n createFairuGallery: (_result, _args, cache) => {\n cache.invalidate('Query', 'fairuGalleries');\n },\n\n deleteFairuGallery: (result, args, cache) => {\n if (result.deleteFairuGallery) {\n cache.invalidate({\n __typename: 'FairuGallery',\n id: args.id as string,\n });\n cache.invalidate('Query', 'fairuGalleries');\n }\n },\n\n // Copyright mutations\n createFairuCopyright: (_result, _args, cache) => {\n cache.invalidate('Query', 'fairuCopyrights');\n },\n\n deleteFairuCopyright: (result, args, cache) => {\n if (result.deleteFairuCopyright) {\n cache.invalidate({\n __typename: 'FairuCopyright',\n id: args.id as string,\n });\n cache.invalidate('Query', 'fairuCopyrights');\n }\n },\n\n // License mutations\n createFairuLicense: (_result, _args, cache) => {\n cache.invalidate('Query', 'fairuLicenses');\n },\n\n deleteFairuLicense: (result, args, cache) => {\n if (result.deleteFairuLicense) {\n cache.invalidate({\n __typename: 'FairuLicense',\n id: args.id as string,\n });\n cache.invalidate('Query', 'fairuLicenses');\n }\n },\n\n // Upload mutations\n completeFairuMultipartUpload: (_result, _args, cache) => {\n // Invalidate file list to show new upload\n cache.invalidate('Query', 'fairuFiles');\n },\n\n // Workflow mutations\n createFairuWorkflow: (_result, _args, cache) => {\n cache.invalidate('Query', 'fairuWorkflows');\n },\n\n deleteFairuWorkflow: (result, args, cache) => {\n if (result.deleteFairuWorkflow) {\n cache.invalidate({\n __typename: 'FairuWorkflow',\n id: args.id as string,\n });\n cache.invalidate('Query', 'fairuWorkflows');\n }\n },\n\n // User mutations\n deleteFairuUser: (result, args, cache) => {\n if (result.deleteFairuUser) {\n cache.invalidate({\n __typename: 'FairuUser',\n id: args.id as string,\n });\n cache.invalidate('Query', 'fairuUsers');\n }\n },\n\n // Role mutations\n createFairuRole: (_result, _args, cache) => {\n cache.invalidate('Query', 'fairuRoles');\n },\n\n deleteFairuRole: (result, args, cache) => {\n if (result.deleteFairuRole) {\n cache.invalidate({\n __typename: 'FairuRole',\n id: args.id as string,\n });\n cache.invalidate('Query', 'fairuRoles');\n }\n },\n\n // Disk mutations\n createFairuDisk: (_result, _args, cache) => {\n cache.invalidate('Query', 'fairuDisks');\n },\n\n deleteFairuDisk: (result, args, cache) => {\n if (result.deleteFairuDisk) {\n cache.invalidate({\n __typename: 'FairuDisk',\n id: args.id as string,\n });\n cache.invalidate('Query', 'fairuDisks');\n }\n },\n },\n },\n\n optimistic: {\n // Optimistic updates for better UX\n blockFairuFile: (variables) => {\n return {\n __typename: 'FairuAsset',\n id: variables.id as string,\n blocked: true,\n };\n },\n\n unblockFairuFile: (variables) => {\n return {\n __typename: 'FairuAsset',\n id: variables.id as string,\n blocked: false,\n };\n },\n },\n });\n}\n"],"names":["graphcacheExchange"],"mappings":"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"}
|