@strapi/upload 5.9.0 → 5.10.0
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/admin/chunks/App-BJY37n6T.js +993 -0
- package/dist/admin/chunks/App-BJY37n6T.js.map +1 -0
- package/dist/admin/chunks/App-DcpAXZuK.mjs +972 -0
- package/dist/admin/chunks/App-DcpAXZuK.mjs.map +1 -0
- package/dist/admin/chunks/ConfigureTheView-Bwf5I3Vq.mjs +276 -0
- package/dist/admin/chunks/ConfigureTheView-Bwf5I3Vq.mjs.map +1 -0
- package/dist/admin/chunks/ConfigureTheView-CnUk2xYx.js +297 -0
- package/dist/admin/chunks/ConfigureTheView-CnUk2xYx.js.map +1 -0
- package/dist/admin/chunks/SettingsPage-7DUsHuJU.js +354 -0
- package/dist/admin/chunks/SettingsPage-7DUsHuJU.js.map +1 -0
- package/dist/admin/chunks/SettingsPage-DJe31MUj.mjs +332 -0
- package/dist/admin/chunks/SettingsPage-DJe31MUj.mjs.map +1 -0
- package/dist/admin/chunks/ca-Bi4qskZD.mjs +120 -0
- package/dist/{_chunks/es-CuWi2pOn.mjs.map → admin/chunks/ca-Bi4qskZD.mjs.map} +1 -1
- package/dist/admin/chunks/ca-pCOhKIn8.js +122 -0
- package/dist/{_chunks/es-DWFtw_h4.js.map → admin/chunks/ca-pCOhKIn8.js.map} +1 -1
- package/dist/admin/chunks/de-BlbX8Dl_.mjs +106 -0
- package/dist/{_chunks/pl-Cj8jChOO.mjs.map → admin/chunks/de-BlbX8Dl_.mjs.map} +1 -1
- package/dist/admin/chunks/de-DUjKLmOP.js +108 -0
- package/dist/{_chunks/de-uGb_Pkq7.js.map → admin/chunks/de-DUjKLmOP.js.map} +1 -1
- package/dist/admin/chunks/dk-C2ydE6A7.mjs +102 -0
- package/dist/{_chunks/ko-vJl9kPpn.mjs.map → admin/chunks/dk-C2ydE6A7.mjs.map} +1 -1
- package/dist/admin/chunks/dk-DSsspA0e.js +104 -0
- package/dist/{_chunks/dk-Cd8oFO-O.js.map → admin/chunks/dk-DSsspA0e.js.map} +1 -1
- package/dist/admin/chunks/en-Bw_Cb2IV.mjs +143 -0
- package/dist/{_chunks/en-oDx2Gnre.mjs.map → admin/chunks/en-Bw_Cb2IV.mjs.map} +1 -1
- package/dist/admin/chunks/en-UjETkewz.js +145 -0
- package/dist/{_chunks/en-BcOqhiNe.js.map → admin/chunks/en-UjETkewz.js.map} +1 -1
- package/dist/admin/chunks/es-CiEgbw0k.mjs +119 -0
- package/dist/{_chunks/ca-B2_I-q1t.mjs.map → admin/chunks/es-CiEgbw0k.mjs.map} +1 -1
- package/dist/admin/chunks/es-qAL8YcZz.js +121 -0
- package/dist/{_chunks/ca-BUpuZx8N.js.map → admin/chunks/es-qAL8YcZz.js.map} +1 -1
- package/dist/admin/chunks/fr-BL0Uyj6j.js +145 -0
- package/dist/admin/chunks/fr-BL0Uyj6j.js.map +1 -0
- package/dist/admin/chunks/fr-CwRt2FJu.mjs +143 -0
- package/dist/admin/chunks/fr-CwRt2FJu.mjs.map +1 -0
- package/dist/admin/chunks/he-BAmhVpfZ.js +77 -0
- package/dist/admin/chunks/he-BAmhVpfZ.js.map +1 -0
- package/dist/admin/chunks/he-DdpYNQdt.mjs +75 -0
- package/dist/admin/chunks/he-DdpYNQdt.mjs.map +1 -0
- package/dist/admin/chunks/index-DAhjYc5x.mjs +7350 -0
- package/dist/admin/chunks/index-DAhjYc5x.mjs.map +1 -0
- package/dist/admin/chunks/index-jZnIE90w.js +7407 -0
- package/dist/admin/chunks/index-jZnIE90w.js.map +1 -0
- package/dist/admin/chunks/it-Be4kgSNB.mjs +75 -0
- package/dist/admin/chunks/it-Be4kgSNB.mjs.map +1 -0
- package/dist/admin/chunks/it-_NQZYepl.js +77 -0
- package/dist/admin/chunks/it-_NQZYepl.js.map +1 -0
- package/dist/admin/chunks/ja-B75QiyXf.js +77 -0
- package/dist/admin/chunks/ja-B75QiyXf.js.map +1 -0
- package/dist/admin/chunks/ja-U1NhT0bU.mjs +75 -0
- package/dist/admin/chunks/ja-U1NhT0bU.mjs.map +1 -0
- package/dist/admin/chunks/ko-BOvUcJqv.js +107 -0
- package/dist/{_chunks/pl-esgZ7ltN.js.map → admin/chunks/ko-BOvUcJqv.js.map} +1 -1
- package/dist/admin/chunks/ko-BciqXefq.mjs +105 -0
- package/dist/{_chunks/de-A7mEKx6c.mjs.map → admin/chunks/ko-BciqXefq.mjs.map} +1 -1
- package/dist/admin/chunks/ms-B7Zl6Lm9.js +69 -0
- package/dist/admin/chunks/ms-B7Zl6Lm9.js.map +1 -0
- package/dist/admin/chunks/ms-D-8McNeg.mjs +67 -0
- package/dist/admin/chunks/ms-D-8McNeg.mjs.map +1 -0
- package/dist/admin/chunks/pl-DdUYocl5.mjs +104 -0
- package/dist/{_chunks/dk-BPfkJb9q.mjs.map → admin/chunks/pl-DdUYocl5.mjs.map} +1 -1
- package/dist/admin/chunks/pl-cYDYHOEf.js +106 -0
- package/dist/{_chunks/ko-Pzj-818C.js.map → admin/chunks/pl-cYDYHOEf.js.map} +1 -1
- package/dist/admin/chunks/pt-BR-D1u_azCM.js +77 -0
- package/dist/admin/chunks/pt-BR-D1u_azCM.js.map +1 -0
- package/dist/admin/chunks/pt-BR-Demjoq41.mjs +75 -0
- package/dist/admin/chunks/pt-BR-Demjoq41.mjs.map +1 -0
- package/dist/admin/chunks/pt-D8is2LpS.mjs +75 -0
- package/dist/admin/chunks/pt-D8is2LpS.mjs.map +1 -0
- package/dist/admin/chunks/pt-L2DZeTPL.js +77 -0
- package/dist/admin/chunks/pt-L2DZeTPL.js.map +1 -0
- package/dist/admin/chunks/ru-CGgHRTey.mjs +75 -0
- package/dist/admin/chunks/ru-CGgHRTey.mjs.map +1 -0
- package/dist/admin/chunks/ru-Uxbk_WWv.js +77 -0
- package/dist/admin/chunks/ru-Uxbk_WWv.js.map +1 -0
- package/dist/admin/chunks/sk-BlLP5HAX.js +123 -0
- package/dist/admin/chunks/sk-BlLP5HAX.js.map +1 -0
- package/dist/admin/chunks/sk-xtSwaPXq.mjs +121 -0
- package/dist/admin/chunks/sk-xtSwaPXq.mjs.map +1 -0
- package/dist/admin/chunks/th-BOpLVfmg.mjs +75 -0
- package/dist/admin/chunks/th-BOpLVfmg.mjs.map +1 -0
- package/dist/admin/chunks/th-DNxPLegS.js +77 -0
- package/dist/admin/chunks/th-DNxPLegS.js.map +1 -0
- package/dist/admin/chunks/tr-BmAPh-f1.mjs +121 -0
- package/dist/admin/chunks/tr-BmAPh-f1.mjs.map +1 -0
- package/dist/admin/chunks/tr-DWgXG75k.js +123 -0
- package/dist/admin/chunks/tr-DWgXG75k.js.map +1 -0
- package/dist/admin/chunks/uk-CMvuEdG-.mjs +72 -0
- package/dist/admin/chunks/uk-CMvuEdG-.mjs.map +1 -0
- package/dist/admin/chunks/uk-D1_rBLhp.js +74 -0
- package/dist/admin/chunks/uk-D1_rBLhp.js.map +1 -0
- package/dist/admin/chunks/zh-BIl0qgBy.mjs +128 -0
- package/dist/admin/chunks/zh-BIl0qgBy.mjs.map +1 -0
- package/dist/admin/chunks/zh-Hans-B1GabBRx.mjs +151 -0
- package/dist/{_chunks/zh-Hans-Cpmhg8uH.mjs.map → admin/chunks/zh-Hans-B1GabBRx.mjs.map} +1 -1
- package/dist/admin/chunks/zh-Hans-B8qxMQIl.js +153 -0
- package/dist/{_chunks/zh-Hans-k_xAc6nm.js.map → admin/chunks/zh-Hans-B8qxMQIl.js.map} +1 -1
- package/dist/admin/chunks/zh-MemsyMV6.js +130 -0
- package/dist/admin/chunks/zh-MemsyMV6.js.map +1 -0
- package/dist/admin/index.js +29 -6
- package/dist/admin/index.js.map +1 -1
- package/dist/admin/index.mjs +24 -8
- package/dist/admin/index.mjs.map +1 -1
- package/dist/admin/src/hooks/useMediaLibraryPermissions.d.ts +2 -5
- package/dist/admin/src/hooks/useRemoveAsset.d.ts +6 -64
- package/dist/server/chunks/graphql-BTbIs_EU.js +116 -0
- package/dist/server/chunks/graphql-BTbIs_EU.js.map +1 -0
- package/dist/server/chunks/graphql-CCPJbCFt.mjs +114 -0
- package/dist/server/chunks/graphql-CCPJbCFt.mjs.map +1 -0
- package/dist/server/chunks/index-BU4qzb-i.mjs +3161 -0
- package/dist/server/chunks/index-BU4qzb-i.mjs.map +1 -0
- package/dist/server/chunks/index-BkUy20d9.js +3164 -0
- package/dist/server/chunks/index-BkUy20d9.js.map +1 -0
- package/dist/server/index.js +19 -2
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.mjs +14 -4
- package/dist/server/index.mjs.map +1 -1
- package/dist/server/src/controllers/validation/admin/folder-file.d.ts.map +1 -1
- package/dist/shared/contracts/configuration.d.ts +1 -1
- package/dist/shared/contracts/settings.d.ts +1 -1
- package/package.json +13 -9
- package/dist/_chunks/App-BLY6RlTm.mjs +0 -844
- package/dist/_chunks/App-BLY6RlTm.mjs.map +0 -1
- package/dist/_chunks/App-DNScJAhi.js +0 -864
- package/dist/_chunks/App-DNScJAhi.js.map +0 -1
- package/dist/_chunks/ConfigureTheView-CJbBTq0t.js +0 -252
- package/dist/_chunks/ConfigureTheView-CJbBTq0t.js.map +0 -1
- package/dist/_chunks/ConfigureTheView-Dk28Sh2k.mjs +0 -230
- package/dist/_chunks/ConfigureTheView-Dk28Sh2k.mjs.map +0 -1
- package/dist/_chunks/SettingsPage-CrvbJCia.js +0 -285
- package/dist/_chunks/SettingsPage-CrvbJCia.js.map +0 -1
- package/dist/_chunks/SettingsPage-DjNyJDaf.mjs +0 -264
- package/dist/_chunks/SettingsPage-DjNyJDaf.mjs.map +0 -1
- package/dist/_chunks/ca-B2_I-q1t.mjs +0 -121
- package/dist/_chunks/ca-BUpuZx8N.js +0 -121
- package/dist/_chunks/de-A7mEKx6c.mjs +0 -107
- package/dist/_chunks/de-uGb_Pkq7.js +0 -107
- package/dist/_chunks/dk-BPfkJb9q.mjs +0 -103
- package/dist/_chunks/dk-Cd8oFO-O.js +0 -103
- package/dist/_chunks/en-BcOqhiNe.js +0 -144
- package/dist/_chunks/en-oDx2Gnre.mjs +0 -144
- package/dist/_chunks/es-CuWi2pOn.mjs +0 -120
- package/dist/_chunks/es-DWFtw_h4.js +0 -120
- package/dist/_chunks/fr-BN6ndmWf.mjs +0 -144
- package/dist/_chunks/fr-BN6ndmWf.mjs.map +0 -1
- package/dist/_chunks/fr-D2bop66d.js +0 -144
- package/dist/_chunks/fr-D2bop66d.js.map +0 -1
- package/dist/_chunks/graphql-DMPTPlvx.mjs +0 -71
- package/dist/_chunks/graphql-DMPTPlvx.mjs.map +0 -1
- package/dist/_chunks/graphql-QF5Y36Qj.js +0 -71
- package/dist/_chunks/graphql-QF5Y36Qj.js.map +0 -1
- package/dist/_chunks/he-BpxHjaZg.js +0 -76
- package/dist/_chunks/he-BpxHjaZg.js.map +0 -1
- package/dist/_chunks/he-C9ZOXBB-.mjs +0 -76
- package/dist/_chunks/he-C9ZOXBB-.mjs.map +0 -1
- package/dist/_chunks/index-BfAVIhAL.js +0 -6144
- package/dist/_chunks/index-BfAVIhAL.js.map +0 -1
- package/dist/_chunks/index-D57iKFts.js +0 -2721
- package/dist/_chunks/index-D57iKFts.js.map +0 -1
- package/dist/_chunks/index-DH9hUSe3.mjs +0 -6119
- package/dist/_chunks/index-DH9hUSe3.mjs.map +0 -1
- package/dist/_chunks/index-sOlgMDiZ.mjs +0 -2711
- package/dist/_chunks/index-sOlgMDiZ.mjs.map +0 -1
- package/dist/_chunks/it-B7rmoZNx.mjs +0 -76
- package/dist/_chunks/it-B7rmoZNx.mjs.map +0 -1
- package/dist/_chunks/it-BKCWXl8t.js +0 -76
- package/dist/_chunks/it-BKCWXl8t.js.map +0 -1
- package/dist/_chunks/ja-DlaJTi_3.mjs +0 -76
- package/dist/_chunks/ja-DlaJTi_3.mjs.map +0 -1
- package/dist/_chunks/ja-ajHzIJz6.js +0 -76
- package/dist/_chunks/ja-ajHzIJz6.js.map +0 -1
- package/dist/_chunks/ko-Pzj-818C.js +0 -106
- package/dist/_chunks/ko-vJl9kPpn.mjs +0 -106
- package/dist/_chunks/ms-CqwG8v8l.mjs +0 -68
- package/dist/_chunks/ms-CqwG8v8l.mjs.map +0 -1
- package/dist/_chunks/ms-h3gjldBy.js +0 -68
- package/dist/_chunks/ms-h3gjldBy.js.map +0 -1
- package/dist/_chunks/pl-Cj8jChOO.mjs +0 -105
- package/dist/_chunks/pl-esgZ7ltN.js +0 -105
- package/dist/_chunks/pt-BR-B4LJHJIp.mjs +0 -76
- package/dist/_chunks/pt-BR-B4LJHJIp.mjs.map +0 -1
- package/dist/_chunks/pt-BR-Cazr7Z5I.js +0 -76
- package/dist/_chunks/pt-BR-Cazr7Z5I.js.map +0 -1
- package/dist/_chunks/pt-CNOOM_7x.mjs +0 -76
- package/dist/_chunks/pt-CNOOM_7x.mjs.map +0 -1
- package/dist/_chunks/pt-cbUnkHM5.js +0 -76
- package/dist/_chunks/pt-cbUnkHM5.js.map +0 -1
- package/dist/_chunks/ru-DqglvSUC.mjs +0 -76
- package/dist/_chunks/ru-DqglvSUC.mjs.map +0 -1
- package/dist/_chunks/ru-H6MzFUxp.js +0 -76
- package/dist/_chunks/ru-H6MzFUxp.js.map +0 -1
- package/dist/_chunks/sk-CZxC4dFY.js +0 -122
- package/dist/_chunks/sk-CZxC4dFY.js.map +0 -1
- package/dist/_chunks/sk-Dgpb3lnz.mjs +0 -122
- package/dist/_chunks/sk-Dgpb3lnz.mjs.map +0 -1
- package/dist/_chunks/th-C6unJZ8j.js +0 -76
- package/dist/_chunks/th-C6unJZ8j.js.map +0 -1
- package/dist/_chunks/th-DRfzuiFf.mjs +0 -76
- package/dist/_chunks/th-DRfzuiFf.mjs.map +0 -1
- package/dist/_chunks/tr--GzWXE_A.mjs +0 -122
- package/dist/_chunks/tr--GzWXE_A.mjs.map +0 -1
- package/dist/_chunks/tr-CY6AwX50.js +0 -122
- package/dist/_chunks/tr-CY6AwX50.js.map +0 -1
- package/dist/_chunks/uk-BniyNsD4.js +0 -73
- package/dist/_chunks/uk-BniyNsD4.js.map +0 -1
- package/dist/_chunks/uk-DVMT2Piq.mjs +0 -73
- package/dist/_chunks/uk-DVMT2Piq.mjs.map +0 -1
- package/dist/_chunks/zh-CsZw0IpM.js +0 -129
- package/dist/_chunks/zh-CsZw0IpM.js.map +0 -1
- package/dist/_chunks/zh-HOnih0is.mjs +0 -129
- package/dist/_chunks/zh-HOnih0is.mjs.map +0 -1
- package/dist/_chunks/zh-Hans-Cpmhg8uH.mjs +0 -152
- package/dist/_chunks/zh-Hans-k_xAc6nm.js +0 -152
|
@@ -0,0 +1,354 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
4
|
+
var React = require('react');
|
|
5
|
+
var strapiAdmin = require('@strapi/admin/strapi-admin');
|
|
6
|
+
var designSystem = require('@strapi/design-system');
|
|
7
|
+
var icons = require('@strapi/icons');
|
|
8
|
+
var isEqual = require('lodash/isEqual');
|
|
9
|
+
var reactIntl = require('react-intl');
|
|
10
|
+
var reactQuery = require('react-query');
|
|
11
|
+
var index = require('./index-jZnIE90w.js');
|
|
12
|
+
require('byte-size');
|
|
13
|
+
require('date-fns');
|
|
14
|
+
require('qs');
|
|
15
|
+
var immer = require('immer');
|
|
16
|
+
var set = require('lodash/set');
|
|
17
|
+
require('styled-components');
|
|
18
|
+
require('yup');
|
|
19
|
+
require('formik');
|
|
20
|
+
require('react-select');
|
|
21
|
+
require('cropperjs');
|
|
22
|
+
require('@mux/mux-player-react');
|
|
23
|
+
require('cropperjs/dist/cropper.css');
|
|
24
|
+
require('lodash/isEmpty');
|
|
25
|
+
require('react-dnd');
|
|
26
|
+
require('react-router-dom');
|
|
27
|
+
require('@strapi/icons/symbols');
|
|
28
|
+
require('date-fns/parseISO');
|
|
29
|
+
|
|
30
|
+
function _interopNamespaceDefault(e) {
|
|
31
|
+
var n = Object.create(null);
|
|
32
|
+
if (e) {
|
|
33
|
+
Object.keys(e).forEach(function (k) {
|
|
34
|
+
if (k !== 'default') {
|
|
35
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
36
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
37
|
+
enumerable: true,
|
|
38
|
+
get: function () { return e[k]; }
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
n.default = e;
|
|
44
|
+
return Object.freeze(n);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
|
|
48
|
+
|
|
49
|
+
const init = (initialState)=>{
|
|
50
|
+
return initialState;
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
const initialState = {
|
|
54
|
+
initialData: {
|
|
55
|
+
responsiveDimensions: true,
|
|
56
|
+
sizeOptimization: true,
|
|
57
|
+
autoOrientation: false,
|
|
58
|
+
videoPreview: false
|
|
59
|
+
},
|
|
60
|
+
modifiedData: {
|
|
61
|
+
responsiveDimensions: true,
|
|
62
|
+
sizeOptimization: true,
|
|
63
|
+
autoOrientation: false,
|
|
64
|
+
videoPreview: false
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
const reducer = (state, action)=>immer.produce(state, (drafState)=>{
|
|
68
|
+
switch(action.type){
|
|
69
|
+
case 'GET_DATA_SUCCEEDED':
|
|
70
|
+
{
|
|
71
|
+
drafState.initialData = action.data;
|
|
72
|
+
drafState.modifiedData = action.data;
|
|
73
|
+
break;
|
|
74
|
+
}
|
|
75
|
+
case 'ON_CHANGE':
|
|
76
|
+
{
|
|
77
|
+
set(drafState, [
|
|
78
|
+
'modifiedData',
|
|
79
|
+
...action.keys.split('.')
|
|
80
|
+
], action.value);
|
|
81
|
+
break;
|
|
82
|
+
}
|
|
83
|
+
default:
|
|
84
|
+
return state;
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
|
|
88
|
+
// TODO: find a better naming convention for the file that was an index file before
|
|
89
|
+
const SettingsPage = ()=>{
|
|
90
|
+
const { formatMessage } = reactIntl.useIntl();
|
|
91
|
+
const { toggleNotification } = strapiAdmin.useNotification();
|
|
92
|
+
const { get, put } = strapiAdmin.useFetchClient();
|
|
93
|
+
const [{ initialData, modifiedData }, dispatch] = React__namespace.useReducer(reducer, initialState, init);
|
|
94
|
+
const { data, isLoading, refetch } = reactQuery.useQuery({
|
|
95
|
+
queryKey: [
|
|
96
|
+
'upload',
|
|
97
|
+
'settings'
|
|
98
|
+
],
|
|
99
|
+
async queryFn () {
|
|
100
|
+
const { data: { data } } = await get('/upload/settings');
|
|
101
|
+
return data;
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
React__namespace.useEffect(()=>{
|
|
105
|
+
if (data) {
|
|
106
|
+
dispatch({
|
|
107
|
+
type: 'GET_DATA_SUCCEEDED',
|
|
108
|
+
data
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
}, [
|
|
112
|
+
data
|
|
113
|
+
]);
|
|
114
|
+
const isSaveButtonDisabled = isEqual(initialData, modifiedData);
|
|
115
|
+
const { mutateAsync, isLoading: isSubmitting } = reactQuery.useMutation(async (body)=>{
|
|
116
|
+
const { data } = await put('/upload/settings', body);
|
|
117
|
+
return data;
|
|
118
|
+
}, {
|
|
119
|
+
onSuccess () {
|
|
120
|
+
refetch();
|
|
121
|
+
toggleNotification({
|
|
122
|
+
type: 'success',
|
|
123
|
+
message: formatMessage({
|
|
124
|
+
id: 'notification.form.success.fields'
|
|
125
|
+
})
|
|
126
|
+
});
|
|
127
|
+
},
|
|
128
|
+
onError (err) {
|
|
129
|
+
console.error(err);
|
|
130
|
+
}
|
|
131
|
+
});
|
|
132
|
+
const handleSubmit = async (e)=>{
|
|
133
|
+
e.preventDefault();
|
|
134
|
+
if (isSaveButtonDisabled) {
|
|
135
|
+
return;
|
|
136
|
+
}
|
|
137
|
+
await mutateAsync(modifiedData);
|
|
138
|
+
};
|
|
139
|
+
const handleChange = ({ target: { name, value } })=>{
|
|
140
|
+
dispatch({
|
|
141
|
+
type: 'ON_CHANGE',
|
|
142
|
+
keys: name,
|
|
143
|
+
value
|
|
144
|
+
});
|
|
145
|
+
};
|
|
146
|
+
if (isLoading) {
|
|
147
|
+
return /*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Page.Loading, {});
|
|
148
|
+
}
|
|
149
|
+
return /*#__PURE__*/ jsxRuntime.jsxs(strapiAdmin.Page.Main, {
|
|
150
|
+
tabIndex: -1,
|
|
151
|
+
children: [
|
|
152
|
+
/*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Page.Title, {
|
|
153
|
+
children: formatMessage({
|
|
154
|
+
id: index.getTrad('page.title'),
|
|
155
|
+
defaultMessage: 'Settings - Media Libray'
|
|
156
|
+
})
|
|
157
|
+
}),
|
|
158
|
+
/*#__PURE__*/ jsxRuntime.jsxs("form", {
|
|
159
|
+
onSubmit: handleSubmit,
|
|
160
|
+
children: [
|
|
161
|
+
/*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Layouts.Header, {
|
|
162
|
+
title: formatMessage({
|
|
163
|
+
id: index.getTrad('settings.header.label'),
|
|
164
|
+
defaultMessage: 'Media Library'
|
|
165
|
+
}),
|
|
166
|
+
primaryAction: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Button, {
|
|
167
|
+
disabled: isSaveButtonDisabled,
|
|
168
|
+
loading: isSubmitting,
|
|
169
|
+
type: "submit",
|
|
170
|
+
startIcon: /*#__PURE__*/ jsxRuntime.jsx(icons.Check, {}),
|
|
171
|
+
size: "S",
|
|
172
|
+
children: formatMessage({
|
|
173
|
+
id: 'global.save',
|
|
174
|
+
defaultMessage: 'Save'
|
|
175
|
+
})
|
|
176
|
+
}),
|
|
177
|
+
subtitle: formatMessage({
|
|
178
|
+
id: index.getTrad('settings.sub-header.label'),
|
|
179
|
+
defaultMessage: 'Configure the settings for the Media Library'
|
|
180
|
+
})
|
|
181
|
+
}),
|
|
182
|
+
/*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Layouts.Content, {
|
|
183
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Layouts.Root, {
|
|
184
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Flex, {
|
|
185
|
+
direction: "column",
|
|
186
|
+
alignItems: "stretch",
|
|
187
|
+
gap: 12,
|
|
188
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Box, {
|
|
189
|
+
background: "neutral0",
|
|
190
|
+
padding: 6,
|
|
191
|
+
shadow: "filterShadow",
|
|
192
|
+
hasRadius: true,
|
|
193
|
+
children: /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Flex, {
|
|
194
|
+
direction: "column",
|
|
195
|
+
alignItems: "stretch",
|
|
196
|
+
gap: 4,
|
|
197
|
+
children: [
|
|
198
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Flex, {
|
|
199
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
200
|
+
variant: "delta",
|
|
201
|
+
tag: "h2",
|
|
202
|
+
children: formatMessage({
|
|
203
|
+
id: index.getTrad('settings.blockTitle'),
|
|
204
|
+
defaultMessage: 'Asset management'
|
|
205
|
+
})
|
|
206
|
+
})
|
|
207
|
+
}),
|
|
208
|
+
/*#__PURE__*/ jsxRuntime.jsxs(designSystem.Grid.Root, {
|
|
209
|
+
gap: 6,
|
|
210
|
+
children: [
|
|
211
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Grid.Item, {
|
|
212
|
+
col: 6,
|
|
213
|
+
s: 12,
|
|
214
|
+
direction: "column",
|
|
215
|
+
alignItems: "stretch",
|
|
216
|
+
children: /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Field.Root, {
|
|
217
|
+
hint: formatMessage({
|
|
218
|
+
id: index.getTrad('settings.form.responsiveDimensions.description'),
|
|
219
|
+
defaultMessage: 'Enabling this option will generate multiple formats (small, medium and large) of the uploaded asset.'
|
|
220
|
+
}),
|
|
221
|
+
name: "responsiveDimensions",
|
|
222
|
+
children: [
|
|
223
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Field.Label, {
|
|
224
|
+
children: formatMessage({
|
|
225
|
+
id: index.getTrad('settings.form.responsiveDimensions.label'),
|
|
226
|
+
defaultMessage: 'Responsive friendly upload'
|
|
227
|
+
})
|
|
228
|
+
}),
|
|
229
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Toggle, {
|
|
230
|
+
checked: modifiedData?.responsiveDimensions,
|
|
231
|
+
offLabel: formatMessage({
|
|
232
|
+
id: 'app.components.ToggleCheckbox.off-label',
|
|
233
|
+
defaultMessage: 'Off'
|
|
234
|
+
}),
|
|
235
|
+
onLabel: formatMessage({
|
|
236
|
+
id: 'app.components.ToggleCheckbox.on-label',
|
|
237
|
+
defaultMessage: 'On'
|
|
238
|
+
}),
|
|
239
|
+
onChange: (e)=>{
|
|
240
|
+
handleChange({
|
|
241
|
+
target: {
|
|
242
|
+
name: 'responsiveDimensions',
|
|
243
|
+
value: e.target.checked
|
|
244
|
+
}
|
|
245
|
+
});
|
|
246
|
+
}
|
|
247
|
+
}),
|
|
248
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Field.Hint, {})
|
|
249
|
+
]
|
|
250
|
+
})
|
|
251
|
+
}),
|
|
252
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Grid.Item, {
|
|
253
|
+
col: 6,
|
|
254
|
+
s: 12,
|
|
255
|
+
direction: "column",
|
|
256
|
+
alignItems: "stretch",
|
|
257
|
+
children: /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Field.Root, {
|
|
258
|
+
hint: formatMessage({
|
|
259
|
+
id: index.getTrad('settings.form.sizeOptimization.description'),
|
|
260
|
+
defaultMessage: 'Enabling this option will reduce the image size and slightly reduce its quality.'
|
|
261
|
+
}),
|
|
262
|
+
name: "sizeOptimization",
|
|
263
|
+
children: [
|
|
264
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Field.Label, {
|
|
265
|
+
children: formatMessage({
|
|
266
|
+
id: index.getTrad('settings.form.sizeOptimization.label'),
|
|
267
|
+
defaultMessage: 'Size optimization'
|
|
268
|
+
})
|
|
269
|
+
}),
|
|
270
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Toggle, {
|
|
271
|
+
checked: modifiedData?.sizeOptimization,
|
|
272
|
+
offLabel: formatMessage({
|
|
273
|
+
id: 'app.components.ToggleCheckbox.off-label',
|
|
274
|
+
defaultMessage: 'Off'
|
|
275
|
+
}),
|
|
276
|
+
onLabel: formatMessage({
|
|
277
|
+
id: 'app.components.ToggleCheckbox.on-label',
|
|
278
|
+
defaultMessage: 'On'
|
|
279
|
+
}),
|
|
280
|
+
onChange: (e)=>{
|
|
281
|
+
handleChange({
|
|
282
|
+
target: {
|
|
283
|
+
name: 'sizeOptimization',
|
|
284
|
+
value: e.target.checked
|
|
285
|
+
}
|
|
286
|
+
});
|
|
287
|
+
}
|
|
288
|
+
}),
|
|
289
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Field.Hint, {})
|
|
290
|
+
]
|
|
291
|
+
})
|
|
292
|
+
}),
|
|
293
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Grid.Item, {
|
|
294
|
+
col: 6,
|
|
295
|
+
s: 12,
|
|
296
|
+
direction: "column",
|
|
297
|
+
alignItems: "stretch",
|
|
298
|
+
children: /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Field.Root, {
|
|
299
|
+
hint: formatMessage({
|
|
300
|
+
id: index.getTrad('settings.form.autoOrientation.description'),
|
|
301
|
+
defaultMessage: 'Enabling this option will automatically rotate the image according to EXIF orientation tag.'
|
|
302
|
+
}),
|
|
303
|
+
name: "autoOrientation",
|
|
304
|
+
children: [
|
|
305
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Field.Label, {
|
|
306
|
+
children: formatMessage({
|
|
307
|
+
id: index.getTrad('settings.form.autoOrientation.label'),
|
|
308
|
+
defaultMessage: 'Auto orientation'
|
|
309
|
+
})
|
|
310
|
+
}),
|
|
311
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Toggle, {
|
|
312
|
+
checked: modifiedData?.autoOrientation,
|
|
313
|
+
offLabel: formatMessage({
|
|
314
|
+
id: 'app.components.ToggleCheckbox.off-label',
|
|
315
|
+
defaultMessage: 'Off'
|
|
316
|
+
}),
|
|
317
|
+
onLabel: formatMessage({
|
|
318
|
+
id: 'app.components.ToggleCheckbox.on-label',
|
|
319
|
+
defaultMessage: 'On'
|
|
320
|
+
}),
|
|
321
|
+
onChange: (e)=>{
|
|
322
|
+
handleChange({
|
|
323
|
+
target: {
|
|
324
|
+
name: 'autoOrientation',
|
|
325
|
+
value: e.target.checked
|
|
326
|
+
}
|
|
327
|
+
});
|
|
328
|
+
}
|
|
329
|
+
}),
|
|
330
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Field.Hint, {})
|
|
331
|
+
]
|
|
332
|
+
})
|
|
333
|
+
})
|
|
334
|
+
]
|
|
335
|
+
})
|
|
336
|
+
]
|
|
337
|
+
})
|
|
338
|
+
})
|
|
339
|
+
})
|
|
340
|
+
})
|
|
341
|
+
})
|
|
342
|
+
]
|
|
343
|
+
})
|
|
344
|
+
]
|
|
345
|
+
});
|
|
346
|
+
};
|
|
347
|
+
const ProtectedSettingsPage = ()=>/*#__PURE__*/ jsxRuntime.jsx(strapiAdmin.Page.Protect, {
|
|
348
|
+
permissions: index.PERMISSIONS.settings,
|
|
349
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(SettingsPage, {})
|
|
350
|
+
});
|
|
351
|
+
|
|
352
|
+
exports.ProtectedSettingsPage = ProtectedSettingsPage;
|
|
353
|
+
exports.SettingsPage = SettingsPage;
|
|
354
|
+
//# sourceMappingURL=SettingsPage-7DUsHuJU.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SettingsPage-7DUsHuJU.js","sources":["../../../admin/src/pages/SettingsPage/init.ts","../../../admin/src/pages/SettingsPage/reducer.ts","../../../admin/src/pages/SettingsPage/SettingsPage.tsx"],"sourcesContent":["import type { InitialState } from './reducer';\n\nexport const init = (initialState: InitialState) => {\n return initialState;\n};\n","import { produce } from 'immer';\nimport set from 'lodash/set';\n\nexport type InitialState = {\n initialData: {\n responsiveDimensions?: boolean;\n sizeOptimization?: boolean;\n autoOrientation?: boolean;\n videoPreview?: boolean;\n } | null;\n modifiedData: {\n responsiveDimensions?: boolean;\n sizeOptimization?: boolean;\n autoOrientation?: boolean;\n videoPreview?: boolean;\n } | null;\n};\n\ninterface ActionGetDataSucceeded {\n type: 'GET_DATA_SUCCEEDED';\n data: InitialState['initialData'];\n}\n\ninterface ActionOnChange {\n type: 'ON_CHANGE';\n keys: keyof NonNullable<InitialState['initialData']>;\n value: boolean;\n}\n\nexport type Action = ActionGetDataSucceeded | ActionOnChange;\n\nconst initialState: InitialState = {\n initialData: {\n responsiveDimensions: true,\n sizeOptimization: true,\n autoOrientation: false,\n videoPreview: false,\n },\n modifiedData: {\n responsiveDimensions: true,\n sizeOptimization: true,\n autoOrientation: false,\n videoPreview: false,\n },\n};\n\nconst reducer = (state: InitialState, action: Action) =>\n produce(state, (drafState) => {\n switch (action.type) {\n case 'GET_DATA_SUCCEEDED': {\n drafState.initialData = action.data;\n drafState.modifiedData = action.data;\n break;\n }\n case 'ON_CHANGE': {\n set(drafState, ['modifiedData', ...action.keys.split('.')], action.value);\n break;\n }\n default:\n return state;\n }\n });\n\nexport { initialState, reducer };\n","// TODO: find a better naming convention for the file that was an index file before\nimport * as React from 'react';\n\nimport { Page, useNotification, useFetchClient, Layouts } from '@strapi/admin/strapi-admin';\nimport { Box, Button, Flex, Grid, Toggle, Typography, Field } from '@strapi/design-system';\nimport { Check } from '@strapi/icons';\nimport isEqual from 'lodash/isEqual';\nimport { useIntl } from 'react-intl';\nimport { useMutation, useQuery } from 'react-query';\n\nimport { UpdateSettings } from '../../../../shared/contracts/settings';\nimport { PERMISSIONS } from '../../constants';\nimport { getTrad } from '../../utils';\n\nimport { init } from './init';\nimport { initialState, reducer } from './reducer';\n\nimport type { InitialState } from './reducer';\n\nexport const SettingsPage = () => {\n const { formatMessage } = useIntl();\n const { toggleNotification } = useNotification();\n const { get, put } = useFetchClient();\n\n const [{ initialData, modifiedData }, dispatch] = React.useReducer(reducer, initialState, init);\n\n const { data, isLoading, refetch } = useQuery({\n queryKey: ['upload', 'settings'],\n async queryFn() {\n const {\n data: { data },\n } = await get('/upload/settings');\n\n return data;\n },\n });\n\n React.useEffect(() => {\n if (data) {\n dispatch({\n type: 'GET_DATA_SUCCEEDED',\n data,\n });\n }\n }, [data]);\n\n const isSaveButtonDisabled = isEqual(initialData, modifiedData);\n\n const { mutateAsync, isLoading: isSubmitting } = useMutation<\n UpdateSettings.Response['data'],\n UpdateSettings.Response['error'],\n UpdateSettings.Request['body']\n >(\n async (body) => {\n const { data } = await put('/upload/settings', body);\n\n return data;\n },\n {\n onSuccess() {\n refetch();\n\n toggleNotification({\n type: 'success',\n message: formatMessage({ id: 'notification.form.success.fields' }),\n });\n },\n onError(err) {\n console.error(err);\n },\n }\n );\n\n const handleSubmit = async (e: React.FormEvent<HTMLFormElement>) => {\n e.preventDefault();\n\n if (isSaveButtonDisabled) {\n return;\n }\n\n await mutateAsync(modifiedData!);\n };\n\n const handleChange = ({\n target: { name, value },\n }: {\n target: { name: keyof NonNullable<InitialState['initialData']>; value: boolean };\n }) => {\n dispatch({\n type: 'ON_CHANGE',\n keys: name,\n value,\n });\n };\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n return (\n <Page.Main tabIndex={-1}>\n <Page.Title>\n {formatMessage({\n id: getTrad('page.title'),\n defaultMessage: 'Settings - Media Libray',\n })}\n </Page.Title>\n <form onSubmit={handleSubmit}>\n <Layouts.Header\n title={formatMessage({\n id: getTrad('settings.header.label'),\n defaultMessage: 'Media Library',\n })}\n primaryAction={\n <Button\n disabled={isSaveButtonDisabled}\n loading={isSubmitting}\n type=\"submit\"\n startIcon={<Check />}\n size=\"S\"\n >\n {formatMessage({\n id: 'global.save',\n defaultMessage: 'Save',\n })}\n </Button>\n }\n subtitle={formatMessage({\n id: getTrad('settings.sub-header.label'),\n defaultMessage: 'Configure the settings for the Media Library',\n })}\n />\n <Layouts.Content>\n <Layouts.Root>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={12}>\n <Box background=\"neutral0\" padding={6} shadow=\"filterShadow\" hasRadius>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4}>\n <Flex>\n <Typography variant=\"delta\" tag=\"h2\">\n {formatMessage({\n id: getTrad('settings.blockTitle'),\n defaultMessage: 'Asset management',\n })}\n </Typography>\n </Flex>\n <Grid.Root gap={6}>\n <Grid.Item col={6} s={12} direction=\"column\" alignItems=\"stretch\">\n <Field.Root\n hint={formatMessage({\n id: getTrad('settings.form.responsiveDimensions.description'),\n defaultMessage:\n 'Enabling this option will generate multiple formats (small, medium and large) of the uploaded asset.',\n })}\n name=\"responsiveDimensions\"\n >\n <Field.Label>\n {formatMessage({\n id: getTrad('settings.form.responsiveDimensions.label'),\n defaultMessage: 'Responsive friendly upload',\n })}\n </Field.Label>\n <Toggle\n checked={modifiedData?.responsiveDimensions}\n offLabel={formatMessage({\n id: 'app.components.ToggleCheckbox.off-label',\n defaultMessage: 'Off',\n })}\n onLabel={formatMessage({\n id: 'app.components.ToggleCheckbox.on-label',\n defaultMessage: 'On',\n })}\n onChange={(e) => {\n handleChange({\n target: { name: 'responsiveDimensions', value: e.target.checked },\n });\n }}\n />\n <Field.Hint />\n </Field.Root>\n </Grid.Item>\n <Grid.Item col={6} s={12} direction=\"column\" alignItems=\"stretch\">\n <Field.Root\n hint={formatMessage({\n id: getTrad('settings.form.sizeOptimization.description'),\n defaultMessage:\n 'Enabling this option will reduce the image size and slightly reduce its quality.',\n })}\n name=\"sizeOptimization\"\n >\n <Field.Label>\n {formatMessage({\n id: getTrad('settings.form.sizeOptimization.label'),\n defaultMessage: 'Size optimization',\n })}\n </Field.Label>\n <Toggle\n checked={modifiedData?.sizeOptimization}\n offLabel={formatMessage({\n id: 'app.components.ToggleCheckbox.off-label',\n defaultMessage: 'Off',\n })}\n onLabel={formatMessage({\n id: 'app.components.ToggleCheckbox.on-label',\n defaultMessage: 'On',\n })}\n onChange={(e) => {\n handleChange({\n target: { name: 'sizeOptimization', value: e.target.checked },\n });\n }}\n />\n <Field.Hint />\n </Field.Root>\n </Grid.Item>\n <Grid.Item col={6} s={12} direction=\"column\" alignItems=\"stretch\">\n <Field.Root\n hint={formatMessage({\n id: getTrad('settings.form.autoOrientation.description'),\n defaultMessage:\n 'Enabling this option will automatically rotate the image according to EXIF orientation tag.',\n })}\n name=\"autoOrientation\"\n >\n <Field.Label>\n {formatMessage({\n id: getTrad('settings.form.autoOrientation.label'),\n defaultMessage: 'Auto orientation',\n })}\n </Field.Label>\n <Toggle\n checked={modifiedData?.autoOrientation}\n offLabel={formatMessage({\n id: 'app.components.ToggleCheckbox.off-label',\n defaultMessage: 'Off',\n })}\n onLabel={formatMessage({\n id: 'app.components.ToggleCheckbox.on-label',\n defaultMessage: 'On',\n })}\n onChange={(e) => {\n handleChange({\n target: { name: 'autoOrientation', value: e.target.checked },\n });\n }}\n />\n <Field.Hint />\n </Field.Root>\n </Grid.Item>\n </Grid.Root>\n </Flex>\n </Box>\n </Flex>\n </Layouts.Root>\n </Layouts.Content>\n </form>\n </Page.Main>\n );\n};\n\nexport const ProtectedSettingsPage = () => (\n <Page.Protect permissions={PERMISSIONS.settings}>\n <SettingsPage />\n </Page.Protect>\n);\n"],"names":["init","initialState","initialData","responsiveDimensions","sizeOptimization","autoOrientation","videoPreview","modifiedData","reducer","state","action","produce","drafState","type","data","set","keys","split","value","SettingsPage","formatMessage","useIntl","toggleNotification","useNotification","get","put","useFetchClient","dispatch","React","useReducer","isLoading","refetch","useQuery","queryKey","queryFn","useEffect","isSaveButtonDisabled","isEqual","mutateAsync","isSubmitting","useMutation","body","onSuccess","message","id","onError","err","console","error","handleSubmit","e","preventDefault","handleChange","target","name","_jsx","Page","Loading","_jsxs","Main","tabIndex","Title","getTrad","defaultMessage","form","onSubmit","Layouts","Header","title","primaryAction","Button","disabled","loading","startIcon","Check","size","subtitle","Content","Root","Flex","direction","alignItems","gap","Box","background","padding","shadow","hasRadius","Typography","variant","tag","Grid","Item","col","s","Field","hint","Label","Toggle","checked","offLabel","onLabel","onChange","Hint","ProtectedSettingsPage","Protect","permissions","PERMISSIONS","settings"],"mappings":"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"}
|