@rubixstudios/payload-images 1.0.5 → 1.0.7
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/components/SearchImages/index.d.ts +0 -1
- package/dist/components/SearchImages/index.d.ts.map +1 -1
- package/dist/components/SearchImages/index.js +85 -112
- package/dist/types.d.ts +6 -4
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/fetchCache.d.ts.map +1 -1
- package/dist/utils/fetchCache.js +7 -3
- package/package.json +7 -7
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { type SearchImagesProps } from '../../types.js';
|
|
3
3
|
import './style.css';
|
|
4
|
-
export declare const previewImageDrawerSlug = "preview-image";
|
|
5
4
|
export declare const SearchImages: (props: SearchImagesProps) => React.JSX.Element;
|
|
6
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/SearchImages/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAA2C,MAAM,OAAO,CAAA;AAC/D,OAAO,EAYL,KAAK,iBAAiB,EAGvB,MAAM,gBAAgB,CAAA;AAGvB,OAAO,aAAa,CAAA;AAIpB,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/SearchImages/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAA2C,MAAM,OAAO,CAAA;AAC/D,OAAO,EAYL,KAAK,iBAAiB,EAGvB,MAAM,gBAAgB,CAAA;AAGvB,OAAO,aAAa,CAAA;AAIpB,eAAO,MAAM,YAAY,GAAI,OAAO,iBAAiB,sBAiiBpD,CAAA"}
|
|
@@ -6,19 +6,18 @@ import { fetchCache } from '../../utils/fetchCache.js';
|
|
|
6
6
|
import { HeartIcon } from '../SearchImages/heart.js';
|
|
7
7
|
import './style.css';
|
|
8
8
|
const baseClass = 'search-images';
|
|
9
|
-
export const previewImageDrawerSlug = 'preview-image';
|
|
10
9
|
export const SearchImages = (props)=>{
|
|
11
10
|
const { serverURL, api, onSelect } = props;
|
|
12
|
-
const [providerFilters, setProviderFilters] = useState(null);
|
|
13
|
-
const [providerOptions, setProviderOptions] = useState([]);
|
|
14
11
|
const [selectedProvider, setSelectedProvider] = useState(null);
|
|
12
|
+
const [providerOptions, setProviderOptions] = useState([]);
|
|
13
|
+
const [filters, setFilters] = useState(null);
|
|
15
14
|
const [images, setImages] = useState(null);
|
|
16
|
-
const [totalPages, setTotalPages] = useState(null);
|
|
17
15
|
const [currentPage, setCurrentPage] = useState(null);
|
|
16
|
+
const [totalPages, setTotalPages] = useState(null);
|
|
18
17
|
const [loading, setLoading] = useState(true);
|
|
19
18
|
const [show, setShow] = useState(false);
|
|
20
19
|
const [value, setValue] = useState('');
|
|
21
|
-
const
|
|
20
|
+
const defaultError = useCallback(()=>{
|
|
22
21
|
toast.error('Something went wrong.');
|
|
23
22
|
}, []);
|
|
24
23
|
const resetImages = useCallback(()=>{
|
|
@@ -41,50 +40,34 @@ export const SearchImages = (props)=>{
|
|
|
41
40
|
setProviderOptions(providers);
|
|
42
41
|
const first = providers[0];
|
|
43
42
|
if (!first) return;
|
|
43
|
+
setFilters({
|
|
44
|
+
provider: first.value,
|
|
45
|
+
options: {}
|
|
46
|
+
});
|
|
44
47
|
setSelectedProvider(first);
|
|
45
|
-
switch(first.value){
|
|
46
|
-
case 'unsplash':
|
|
47
|
-
setProviderFilters({
|
|
48
|
-
provider: 'unsplash',
|
|
49
|
-
filters: {}
|
|
50
|
-
});
|
|
51
|
-
break;
|
|
52
|
-
case 'pexels':
|
|
53
|
-
setProviderFilters({
|
|
54
|
-
provider: 'pexels',
|
|
55
|
-
filters: {}
|
|
56
|
-
});
|
|
57
|
-
break;
|
|
58
|
-
case 'pixabay':
|
|
59
|
-
setProviderFilters({
|
|
60
|
-
provider: 'pixabay',
|
|
61
|
-
filters: {}
|
|
62
|
-
});
|
|
63
|
-
break;
|
|
64
|
-
}
|
|
65
48
|
} catch {
|
|
66
49
|
setLoading(false);
|
|
67
|
-
|
|
50
|
+
defaultError();
|
|
68
51
|
}
|
|
69
52
|
}, [
|
|
70
53
|
serverURL,
|
|
71
54
|
api,
|
|
72
|
-
|
|
55
|
+
defaultError
|
|
73
56
|
]);
|
|
74
57
|
const buildFeaturedParams = useCallback(()=>{
|
|
75
|
-
if (!
|
|
58
|
+
if (!filters) return '';
|
|
76
59
|
const params = new URLSearchParams();
|
|
77
|
-
switch(
|
|
60
|
+
switch(filters.provider){
|
|
78
61
|
case 'unsplash':
|
|
79
62
|
{
|
|
80
|
-
const { color, orientation } =
|
|
63
|
+
const { color, orientation } = filters.options;
|
|
81
64
|
if (color) params.set('color', color);
|
|
82
65
|
if (orientation) params.set('orientation', orientation);
|
|
83
66
|
break;
|
|
84
67
|
}
|
|
85
68
|
case 'pexels':
|
|
86
69
|
{
|
|
87
|
-
const { color, orientation, size } =
|
|
70
|
+
const { color, orientation, size } = filters.options;
|
|
88
71
|
if (color) params.set('color', color);
|
|
89
72
|
if (orientation) params.set('orientation', orientation);
|
|
90
73
|
if (size) params.set('size', size);
|
|
@@ -92,7 +75,7 @@ export const SearchImages = (props)=>{
|
|
|
92
75
|
}
|
|
93
76
|
case 'pixabay':
|
|
94
77
|
{
|
|
95
|
-
const { category, image_type, order, orientation, colors } =
|
|
78
|
+
const { category, image_type, order, orientation, colors } = filters.options;
|
|
96
79
|
if (category) params.set('category', category);
|
|
97
80
|
if (image_type) params.set('image_type', image_type);
|
|
98
81
|
if (order) params.set('order', order);
|
|
@@ -104,42 +87,48 @@ export const SearchImages = (props)=>{
|
|
|
104
87
|
const query = params.toString();
|
|
105
88
|
return query ? `?${query}` : '';
|
|
106
89
|
}, [
|
|
107
|
-
|
|
90
|
+
filters
|
|
108
91
|
]);
|
|
109
92
|
const getFeaturedPhotos = useCallback(async ()=>{
|
|
93
|
+
if (!selectedProvider?.value) return;
|
|
94
|
+
if (!filters) return;
|
|
110
95
|
try {
|
|
111
96
|
setLoading(true);
|
|
112
|
-
const json = await fetchCache(`${serverURL}${api}/providers/${selectedProvider
|
|
113
|
-
if (json.error)
|
|
97
|
+
const json = await fetchCache(`${serverURL}${api}/providers/${selectedProvider.value}/featured${buildFeaturedParams()}`);
|
|
98
|
+
if (json.error) {
|
|
99
|
+
toast.error(json.error);
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
114
102
|
setImages(json.data.images);
|
|
115
103
|
} catch {
|
|
116
|
-
|
|
104
|
+
defaultError();
|
|
117
105
|
} finally{
|
|
118
106
|
setLoading(false);
|
|
119
107
|
}
|
|
120
108
|
}, [
|
|
121
109
|
serverURL,
|
|
122
110
|
api,
|
|
123
|
-
selectedProvider
|
|
124
|
-
|
|
125
|
-
buildFeaturedParams
|
|
111
|
+
selectedProvider,
|
|
112
|
+
filters,
|
|
113
|
+
buildFeaturedParams,
|
|
114
|
+
defaultError
|
|
126
115
|
]);
|
|
127
116
|
const buildQueryParams = useCallback((page = 1)=>{
|
|
128
|
-
if (!
|
|
117
|
+
if (!filters) return '';
|
|
129
118
|
const params = new URLSearchParams();
|
|
130
119
|
params.set('query', value);
|
|
131
120
|
params.set('page', String(page));
|
|
132
|
-
switch(
|
|
121
|
+
switch(filters.provider){
|
|
133
122
|
case 'unsplash':
|
|
134
123
|
{
|
|
135
|
-
const { color, orientation } =
|
|
124
|
+
const { color, orientation } = filters.options;
|
|
136
125
|
if (color) params.set('color', color);
|
|
137
126
|
if (orientation) params.set('orientation', orientation);
|
|
138
127
|
break;
|
|
139
128
|
}
|
|
140
129
|
case 'pexels':
|
|
141
130
|
{
|
|
142
|
-
const { color, orientation, size } =
|
|
131
|
+
const { color, orientation, size } = filters.options;
|
|
143
132
|
if (color) params.set('color', color);
|
|
144
133
|
if (orientation) params.set('orientation', orientation);
|
|
145
134
|
if (size) params.set('size', size);
|
|
@@ -147,7 +136,7 @@ export const SearchImages = (props)=>{
|
|
|
147
136
|
}
|
|
148
137
|
case 'pixabay':
|
|
149
138
|
{
|
|
150
|
-
const { category, image_type, order, orientation, colors } =
|
|
139
|
+
const { category, image_type, order, orientation, colors } = filters.options;
|
|
151
140
|
if (category) params.set('category', category);
|
|
152
141
|
if (image_type) params.set('image_type', image_type);
|
|
153
142
|
if (order) params.set('order', order);
|
|
@@ -158,7 +147,7 @@ export const SearchImages = (props)=>{
|
|
|
158
147
|
}
|
|
159
148
|
return params.toString();
|
|
160
149
|
}, [
|
|
161
|
-
|
|
150
|
+
filters,
|
|
162
151
|
value
|
|
163
152
|
]);
|
|
164
153
|
const getPhotos = useCallback(async (page = 1)=>{
|
|
@@ -170,7 +159,7 @@ export const SearchImages = (props)=>{
|
|
|
170
159
|
setTotalPages(json.data.totalPages);
|
|
171
160
|
setCurrentPage(page);
|
|
172
161
|
} catch {
|
|
173
|
-
|
|
162
|
+
defaultError();
|
|
174
163
|
} finally{
|
|
175
164
|
setLoading(false);
|
|
176
165
|
}
|
|
@@ -178,7 +167,7 @@ export const SearchImages = (props)=>{
|
|
|
178
167
|
serverURL,
|
|
179
168
|
api,
|
|
180
169
|
selectedProvider?.value,
|
|
181
|
-
|
|
170
|
+
defaultError,
|
|
182
171
|
buildQueryParams
|
|
183
172
|
]);
|
|
184
173
|
const handleSearchFilterChange = useCallback((search)=>{
|
|
@@ -188,28 +177,12 @@ export const SearchImages = (props)=>{
|
|
|
188
177
|
resetImages
|
|
189
178
|
]);
|
|
190
179
|
const handleSelectChange = useCallback((select)=>{
|
|
180
|
+
setFilters({
|
|
181
|
+
provider: select.value,
|
|
182
|
+
options: {}
|
|
183
|
+
});
|
|
191
184
|
setSelectedProvider(select);
|
|
192
185
|
resetImages();
|
|
193
|
-
switch(select.value){
|
|
194
|
-
case 'unsplash':
|
|
195
|
-
setProviderFilters({
|
|
196
|
-
provider: 'unsplash',
|
|
197
|
-
filters: {}
|
|
198
|
-
});
|
|
199
|
-
break;
|
|
200
|
-
case 'pexels':
|
|
201
|
-
setProviderFilters({
|
|
202
|
-
provider: 'pexels',
|
|
203
|
-
filters: {}
|
|
204
|
-
});
|
|
205
|
-
break;
|
|
206
|
-
case 'pixabay':
|
|
207
|
-
setProviderFilters({
|
|
208
|
-
provider: 'pixabay',
|
|
209
|
-
filters: {}
|
|
210
|
-
});
|
|
211
|
-
break;
|
|
212
|
-
}
|
|
213
186
|
}, [
|
|
214
187
|
resetImages
|
|
215
188
|
]);
|
|
@@ -228,7 +201,7 @@ export const SearchImages = (props)=>{
|
|
|
228
201
|
getProviderOptions
|
|
229
202
|
]);
|
|
230
203
|
useEffect(()=>{
|
|
231
|
-
if (!selectedProvider?.value || !
|
|
204
|
+
if (!selectedProvider?.value || !filters) return;
|
|
232
205
|
if (value.trim().length > 0) {
|
|
233
206
|
void getPhotos(1);
|
|
234
207
|
} else {
|
|
@@ -236,7 +209,7 @@ export const SearchImages = (props)=>{
|
|
|
236
209
|
}
|
|
237
210
|
}, [
|
|
238
211
|
selectedProvider?.value,
|
|
239
|
-
|
|
212
|
+
filters,
|
|
240
213
|
value,
|
|
241
214
|
getPhotos,
|
|
242
215
|
getFeaturedPhotos
|
|
@@ -255,15 +228,15 @@ export const SearchImages = (props)=>{
|
|
|
255
228
|
isClearable: false,
|
|
256
229
|
isSearchable: false,
|
|
257
230
|
isCreatable: false
|
|
258
|
-
})),
|
|
231
|
+
})), filters?.provider === 'pexels' && /*#__PURE__*/ React.createElement("div", {
|
|
259
232
|
className: `${baseClass}__filters`
|
|
260
233
|
}, /*#__PURE__*/ React.createElement(Select, {
|
|
261
234
|
options: PexelsColours,
|
|
262
|
-
value: PexelsColours.find((o)=>o.value ===
|
|
263
|
-
onChange: (opt)=>
|
|
235
|
+
value: PexelsColours.find((o)=>o.value === filters.options.color),
|
|
236
|
+
onChange: (opt)=>setFilters((prev)=>prev?.provider === 'pexels' ? {
|
|
264
237
|
provider: 'pexels',
|
|
265
|
-
|
|
266
|
-
...prev.
|
|
238
|
+
options: {
|
|
239
|
+
...prev.options,
|
|
267
240
|
color: opt?.value
|
|
268
241
|
}
|
|
269
242
|
} : prev),
|
|
@@ -272,11 +245,11 @@ export const SearchImages = (props)=>{
|
|
|
272
245
|
placeholder: "Select color..."
|
|
273
246
|
}), /*#__PURE__*/ React.createElement(Select, {
|
|
274
247
|
options: PexelsSize,
|
|
275
|
-
value: PexelsSize.find((o)=>o.value ===
|
|
276
|
-
onChange: (opt)=>
|
|
248
|
+
value: PexelsSize.find((o)=>o.value === filters.options.size),
|
|
249
|
+
onChange: (opt)=>setFilters((prev)=>prev?.provider === 'pexels' ? {
|
|
277
250
|
provider: 'pexels',
|
|
278
|
-
|
|
279
|
-
...prev.
|
|
251
|
+
options: {
|
|
252
|
+
...prev.options,
|
|
280
253
|
size: opt?.value
|
|
281
254
|
}
|
|
282
255
|
} : prev),
|
|
@@ -285,26 +258,26 @@ export const SearchImages = (props)=>{
|
|
|
285
258
|
placeholder: "Select size..."
|
|
286
259
|
}), /*#__PURE__*/ React.createElement(Select, {
|
|
287
260
|
options: PexelsOrientation,
|
|
288
|
-
value: PexelsOrientation.find((o)=>o.value ===
|
|
289
|
-
onChange: (opt)=>
|
|
261
|
+
value: PexelsOrientation.find((o)=>o.value === filters.options.orientation),
|
|
262
|
+
onChange: (opt)=>setFilters((prev)=>prev?.provider === 'pexels' ? {
|
|
290
263
|
provider: 'pexels',
|
|
291
|
-
|
|
292
|
-
...prev.
|
|
264
|
+
options: {
|
|
265
|
+
...prev.options,
|
|
293
266
|
orientation: opt?.value
|
|
294
267
|
}
|
|
295
268
|
} : prev),
|
|
296
269
|
isClearable: true,
|
|
297
270
|
isSearchable: false,
|
|
298
271
|
placeholder: "Select orientation..."
|
|
299
|
-
})),
|
|
272
|
+
})), filters?.provider === 'pixabay' && /*#__PURE__*/ React.createElement("div", {
|
|
300
273
|
className: `${baseClass}__filters`
|
|
301
274
|
}, /*#__PURE__*/ React.createElement(Select, {
|
|
302
275
|
options: PixabayCategories,
|
|
303
|
-
value: PixabayCategories.find((o)=>o.value ===
|
|
304
|
-
onChange: (opt)=>
|
|
276
|
+
value: PixabayCategories.find((o)=>o.value === filters.options.category),
|
|
277
|
+
onChange: (opt)=>setFilters((prev)=>prev?.provider === 'pixabay' ? {
|
|
305
278
|
provider: 'pixabay',
|
|
306
|
-
|
|
307
|
-
...prev.
|
|
279
|
+
options: {
|
|
280
|
+
...prev.options,
|
|
308
281
|
category: opt?.value
|
|
309
282
|
}
|
|
310
283
|
} : prev),
|
|
@@ -313,11 +286,11 @@ export const SearchImages = (props)=>{
|
|
|
313
286
|
placeholder: "Select category..."
|
|
314
287
|
}), /*#__PURE__*/ React.createElement(Select, {
|
|
315
288
|
options: PixabayImageType,
|
|
316
|
-
value: PixabayImageType.find((o)=>o.value ===
|
|
317
|
-
onChange: (opt)=>
|
|
289
|
+
value: PixabayImageType.find((o)=>o.value === filters.options.image_type),
|
|
290
|
+
onChange: (opt)=>setFilters((prev)=>prev?.provider === 'pixabay' ? {
|
|
318
291
|
provider: 'pixabay',
|
|
319
|
-
|
|
320
|
-
...prev.
|
|
292
|
+
options: {
|
|
293
|
+
...prev.options,
|
|
321
294
|
image_type: opt?.value
|
|
322
295
|
}
|
|
323
296
|
} : prev),
|
|
@@ -326,11 +299,11 @@ export const SearchImages = (props)=>{
|
|
|
326
299
|
placeholder: "Select type..."
|
|
327
300
|
}), /*#__PURE__*/ React.createElement(Select, {
|
|
328
301
|
options: PixabayColours,
|
|
329
|
-
value: PixabayColours.find((o)=>o.value ===
|
|
330
|
-
onChange: (opt)=>
|
|
302
|
+
value: PixabayColours.find((o)=>o.value === filters.options.colors),
|
|
303
|
+
onChange: (opt)=>setFilters((prev)=>prev?.provider === 'pixabay' ? {
|
|
331
304
|
provider: 'pixabay',
|
|
332
|
-
|
|
333
|
-
...prev.
|
|
305
|
+
options: {
|
|
306
|
+
...prev.options,
|
|
334
307
|
colors: opt?.value
|
|
335
308
|
}
|
|
336
309
|
} : prev),
|
|
@@ -339,11 +312,11 @@ export const SearchImages = (props)=>{
|
|
|
339
312
|
placeholder: "Select color..."
|
|
340
313
|
}), /*#__PURE__*/ React.createElement(Select, {
|
|
341
314
|
options: PixabayOrientation,
|
|
342
|
-
value: PixabayOrientation.find((o)=>o.value ===
|
|
343
|
-
onChange: (opt)=>
|
|
315
|
+
value: PixabayOrientation.find((o)=>o.value === filters.options.orientation),
|
|
316
|
+
onChange: (opt)=>setFilters((prev)=>prev?.provider === 'pixabay' ? {
|
|
344
317
|
provider: 'pixabay',
|
|
345
|
-
|
|
346
|
-
...prev.
|
|
318
|
+
options: {
|
|
319
|
+
...prev.options,
|
|
347
320
|
orientation: opt?.value
|
|
348
321
|
}
|
|
349
322
|
} : prev),
|
|
@@ -352,26 +325,26 @@ export const SearchImages = (props)=>{
|
|
|
352
325
|
placeholder: "Select orientation..."
|
|
353
326
|
}), /*#__PURE__*/ React.createElement(Select, {
|
|
354
327
|
options: PixabayOrder,
|
|
355
|
-
value: PixabayOrder.find((o)=>o.value ===
|
|
356
|
-
onChange: (opt)=>
|
|
328
|
+
value: PixabayOrder.find((o)=>o.value === filters.options.order),
|
|
329
|
+
onChange: (opt)=>setFilters((prev)=>prev?.provider === 'pixabay' ? {
|
|
357
330
|
provider: 'pixabay',
|
|
358
|
-
|
|
359
|
-
...prev.
|
|
331
|
+
options: {
|
|
332
|
+
...prev.options,
|
|
360
333
|
order: opt?.value
|
|
361
334
|
}
|
|
362
335
|
} : prev),
|
|
363
336
|
isClearable: true,
|
|
364
337
|
isSearchable: false,
|
|
365
338
|
placeholder: "Select order..."
|
|
366
|
-
})),
|
|
339
|
+
})), filters?.provider === 'unsplash' && /*#__PURE__*/ React.createElement("div", {
|
|
367
340
|
className: `${baseClass}__filters`
|
|
368
341
|
}, /*#__PURE__*/ React.createElement(Select, {
|
|
369
342
|
options: UnsplashColours,
|
|
370
|
-
value: UnsplashColours.find((o)=>o.value ===
|
|
371
|
-
onChange: (opt)=>
|
|
343
|
+
value: UnsplashColours.find((o)=>o.value === filters.options.color),
|
|
344
|
+
onChange: (opt)=>setFilters((prev)=>prev?.provider === 'unsplash' ? {
|
|
372
345
|
provider: 'unsplash',
|
|
373
|
-
|
|
374
|
-
...prev.
|
|
346
|
+
options: {
|
|
347
|
+
...prev.options,
|
|
375
348
|
color: opt?.value
|
|
376
349
|
}
|
|
377
350
|
} : prev),
|
|
@@ -380,11 +353,11 @@ export const SearchImages = (props)=>{
|
|
|
380
353
|
placeholder: "Select color..."
|
|
381
354
|
}), /*#__PURE__*/ React.createElement(Select, {
|
|
382
355
|
options: UnsplashOrientation,
|
|
383
|
-
value: UnsplashOrientation.find((o)=>o.value ===
|
|
384
|
-
onChange: (opt)=>
|
|
356
|
+
value: UnsplashOrientation.find((o)=>o.value === filters.options.orientation),
|
|
357
|
+
onChange: (opt)=>setFilters((prev)=>prev?.provider === 'unsplash' ? {
|
|
385
358
|
provider: 'unsplash',
|
|
386
|
-
|
|
387
|
-
...prev.
|
|
359
|
+
options: {
|
|
360
|
+
...prev.options,
|
|
388
361
|
orientation: opt?.value
|
|
389
362
|
}
|
|
390
363
|
} : prev),
|
package/dist/types.d.ts
CHANGED
|
@@ -124,17 +124,18 @@ export interface ProviderResult {
|
|
|
124
124
|
}
|
|
125
125
|
export type ProviderFilters = {
|
|
126
126
|
provider: 'unsplash';
|
|
127
|
-
|
|
127
|
+
options: UnsplashFilters;
|
|
128
128
|
} | {
|
|
129
129
|
provider: 'pexels';
|
|
130
|
-
|
|
130
|
+
options: PexelsFilters;
|
|
131
131
|
} | {
|
|
132
132
|
provider: 'pixabay';
|
|
133
|
-
|
|
133
|
+
options: PixabayFilters;
|
|
134
134
|
};
|
|
135
|
+
type ProviderKey = 'unsplash' | 'pexels' | 'pixabay';
|
|
135
136
|
export type ProviderOption = {
|
|
136
137
|
label: string;
|
|
137
|
-
value:
|
|
138
|
+
value: ProviderKey;
|
|
138
139
|
};
|
|
139
140
|
export type SearchImagesProps = {
|
|
140
141
|
serverURL: string;
|
|
@@ -180,4 +181,5 @@ export interface UnsplashResult {
|
|
|
180
181
|
};
|
|
181
182
|
};
|
|
182
183
|
}
|
|
184
|
+
export {};
|
|
183
185
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchCache.d.ts","sourceRoot":"","sources":["../../src/utils/fetchCache.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,UAAU,GAAU,WAAW,MAAM,
|
|
1
|
+
{"version":3,"file":"fetchCache.d.ts","sourceRoot":"","sources":["../../src/utils/fetchCache.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,UAAU,GAAU,WAAW,MAAM,iBAqBjD,CAAA"}
|
package/dist/utils/fetchCache.js
CHANGED
|
@@ -2,14 +2,18 @@ import { CacheManager } from '../lib/cache.js';
|
|
|
2
2
|
const cache = new CacheManager();
|
|
3
3
|
const defaultExpiry = 24 * 60 * 60 * 1000;
|
|
4
4
|
export const fetchCache = async (queryPath)=>{
|
|
5
|
+
if (queryPath.includes('undefined')) {
|
|
6
|
+
throw new Error('Invalid provider');
|
|
7
|
+
}
|
|
5
8
|
const key = `image-search:${queryPath}`;
|
|
6
9
|
if (cache.exists(key)) {
|
|
7
10
|
return cache.get(key);
|
|
8
11
|
}
|
|
9
12
|
const response = await fetch(queryPath);
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
cache.set(key, json, defaultExpiry);
|
|
13
|
+
if (!response.ok) {
|
|
14
|
+
throw await response.json();
|
|
13
15
|
}
|
|
16
|
+
const json = await response.json();
|
|
17
|
+
cache.set(key, json, defaultExpiry);
|
|
14
18
|
return json;
|
|
15
19
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rubixstudios/payload-images",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.7",
|
|
4
4
|
"description": "A Payload CMS plugin that integrates with stock image providers including Unsplash, Pexels and Pixabay.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Rubix Studios <hello@rubixstudios.com.au> (https://rubixstudios.com.au)",
|
|
@@ -58,17 +58,17 @@
|
|
|
58
58
|
"release": "semantic-release"
|
|
59
59
|
},
|
|
60
60
|
"devDependencies": {
|
|
61
|
-
"@biomejs/biome": "2.3.
|
|
62
|
-
"@payloadcms/ui": "^3.
|
|
61
|
+
"@biomejs/biome": "2.3.14",
|
|
62
|
+
"@payloadcms/ui": "^3.74.0",
|
|
63
63
|
"@semantic-release/changelog": "^6.0.3",
|
|
64
64
|
"@semantic-release/git": "^10.0.1",
|
|
65
65
|
"@swc/cli": "^0.7.10",
|
|
66
|
-
"@swc/core": "^1.15.
|
|
67
|
-
"@types/react": "^19.2.
|
|
66
|
+
"@swc/core": "^1.15.11",
|
|
67
|
+
"@types/react": "^19.2.11",
|
|
68
68
|
"clean-css-cli": "^5.6.3",
|
|
69
|
-
"payload": "^3.
|
|
69
|
+
"payload": "^3.74.0",
|
|
70
70
|
"rimraf": "^6.1.2",
|
|
71
|
-
"semantic-release": "^25.0.
|
|
71
|
+
"semantic-release": "^25.0.3",
|
|
72
72
|
"typescript": "5.9.3"
|
|
73
73
|
},
|
|
74
74
|
"peerDependencies": {
|