@strapi/admin 4.1.10-beta.0 → 4.1.12
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/admin/src/assets/images/homepage-logo.png +0 -0
- package/admin/src/components/AutoReloadOverlayBlockerProvider/Blocker.js +2 -6
- package/admin/src/components/GuidedTour/Homepage/index.js +1 -2
- package/admin/src/components/GuidedTour/Modal/components/Stepper.js +1 -2
- package/admin/src/components/LeftMenu/index.js +9 -9
- package/admin/src/components/Notifications/Notification/index.js +2 -2
- package/admin/src/components/Providers/index.js +4 -8
- package/admin/src/components/UnauthenticatedLogo/index.js +2 -4
- package/admin/src/components/UpgradePlanModal/index.js +6 -2
- package/admin/src/content-manager/components/DynamicZone/components/ComponentPicker/Category/ComponentCard/index.js +1 -1
- package/admin/src/content-manager/components/SelectMany/ListItem.js +1 -2
- package/admin/src/content-manager/components/SelectWrapper/index.js +8 -7
- package/admin/src/content-manager/components/SelectWrapper/utils/getSelectStyles.js +1 -1
- package/admin/src/content-manager/components/SingleTypeFormWrapper/index.js +2 -2
- package/admin/src/content-manager/components/Wysiwyg/Editor.js +2 -0
- package/admin/src/content-manager/pages/App/LeftMenu/index.js +8 -7
- package/admin/src/content-manager/pages/EditSettingsView/components/ComponentFieldList.js +1 -1
- package/admin/src/content-manager/pages/EditSettingsView/components/LinkToCTB.js +1 -2
- package/admin/src/content-manager/pages/EditSettingsView/index.js +1 -2
- package/admin/src/content-manager/pages/EditView/Header/index.js +3 -3
- package/admin/src/content-manager/pages/EditView/index.js +1 -4
- package/admin/src/content-manager/pages/ListSettingsView/index.js +1 -2
- package/admin/src/content-manager/pages/ListView/index.js +1 -1
- package/admin/src/content-manager/pages/NoContentType/index.js +1 -2
- package/admin/src/pages/App/index.js +2 -7
- package/admin/src/pages/AuthPage/components/ForgotPassword/index.js +1 -2
- package/admin/src/pages/AuthPage/components/ForgotPasswordSuccess/index.js +1 -1
- package/admin/src/pages/AuthPage/components/Login/BaseLogin.js +1 -2
- package/admin/src/pages/AuthPage/components/Oops/index.js +1 -2
- package/admin/src/pages/AuthPage/components/Register/index.js +12 -12
- package/admin/src/pages/AuthPage/components/ResetPassword/index.js +3 -4
- package/admin/src/pages/HomePage/ContentBlocks.js +15 -2
- package/admin/src/pages/HomePage/HomeHeader.js +2 -2
- package/admin/src/pages/HomePage/SocialLinks.js +4 -3
- package/admin/src/pages/InternalErrorPage/index.js +1 -2
- package/admin/src/pages/MarketplacePage/components/PageHeader/index.js +2 -1
- package/admin/src/pages/MarketplacePage/components/PluginCard/index.js +4 -3
- package/admin/src/pages/NotFoundPage/index.js +1 -2
- package/admin/src/pages/SettingsPage/components/SettingsNav/index.js +5 -4
- package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/index.js +1 -1
- package/admin/src/pages/SettingsPage/pages/ApiTokens/ListView/DynamicTable/UpdateButton/index.js +1 -1
- package/admin/src/pages/SettingsPage/pages/ApiTokens/ListView/index.js +1 -1
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/index.js +94 -150
- package/admin/src/pages/SettingsPage/pages/Roles/EditPage/index.js +1 -1
- package/admin/src/pages/SettingsPage/pages/Users/EditPage/index.js +1 -1
- package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/WebhookForm/index.js +1 -2
- package/admin/src/pages/SettingsPage/pages/Webhooks/ListView/index.js +1 -1
- package/admin/src/translations/ca.json +699 -0
- package/admin/src/translations/en.json +0 -25
- package/admin/src/translations/languageNativeNames.js +1 -0
- package/admin/src/translations/ru.json +34 -0
- package/build/1856.6a94980b.chunk.js +172 -0
- package/build/2077.5456ccd1.chunk.js +194 -0
- package/build/2758.9475712b.chunk.js +162 -0
- package/build/2912.dd031292.chunk.js +253 -0
- package/build/4715.4588fdf5.chunk.js +385 -0
- package/build/4982.c57c5675.chunk.js +308 -0
- package/build/6706.7f57cb76.chunk.js +113 -0
- package/build/7589.577cf729.chunk.js +194 -0
- package/build/{5289.0341db2d.chunk.js → 7757.f6eb5e92.chunk.js} +89 -87
- package/build/7841.9e9cf739.chunk.js +253 -0
- package/build/8681.aec05472.chunk.js +163 -0
- package/build/9066.2847fdff.chunk.js +101 -0
- package/build/9115.abdf4e3b.chunk.js +1 -0
- package/build/9158.e48d88af.chunk.js +503 -0
- package/build/{9298.f97fcef0.chunk.js → 9298.cb3b6bc1.chunk.js} +93 -93
- package/build/9420.ba035f29.chunk.js +508 -0
- package/build/Admin-authenticatedApp.98b6e05b.chunk.js +80 -0
- package/build/Admin_homePage.8c00145e.chunk.js +71 -0
- package/build/Admin_marketplace.25133b64.chunk.js +11 -0
- package/build/Admin_settingsPage.e1dfbb1d.chunk.js +172 -0
- package/build/admin-edit-roles-page.e77a2acc.chunk.js +1 -0
- package/build/admin-edit-users.4c49fe98.chunk.js +11 -0
- package/build/api-tokens-create-page.618b3e40.chunk.js +1 -0
- package/build/api-tokens-edit-page.8d19dfe1.chunk.js +1 -0
- package/build/api-tokens-list-page.274e1c80.chunk.js +15 -0
- package/build/ca-json.0097e443.chunk.js +1 -0
- package/build/content-manager.04b93497.chunk.js +1204 -0
- package/build/content-type-builder.b3139cb1.chunk.js +141 -0
- package/build/email-settings-page.4ae595f6.chunk.js +103 -0
- package/build/en-json.3e1a222e.chunk.js +1 -0
- package/build/fb376b132d18bf4522ca.png +0 -0
- package/build/i18n-settings-page.bdac3c7b.chunk.js +101 -0
- package/build/index.html +1 -1
- package/build/main.baf8a3fd.js +8404 -0
- package/build/ru-json.28147733.chunk.js +1 -0
- package/build/runtime~main.7d21ca6f.js +2 -0
- package/build/upload-settings.cadfd452.chunk.js +101 -0
- package/build/upload-translation-ca-json.79159984.chunk.js +1 -0
- package/build/upload.fbc65439.chunk.js +105 -0
- package/build/users-advanced-settings-page.646b6f29.chunk.js +101 -0
- package/build/users-roles-settings-page.28bf6bdc.chunk.js +30 -0
- package/build/{webhook-edit-page.2e6727ab.chunk.js → webhook-edit-page.ca670f8d.chunk.js} +3 -3
- package/build/webhook-list-page.7057f1e8.chunk.js +133 -0
- package/ee/admin/pages/AuthPage/components/Providers/index.js +1 -1
- package/ee/admin/pages/SettingsPage/pages/Roles/CreatePage/index.js +1 -1
- package/ee/server/controllers/user.js +4 -0
- package/package.json +7 -7
- package/server/config/admin-actions.js +0 -14
- package/server/controllers/admin.js +1 -33
- package/server/controllers/user.js +4 -0
- package/server/routes/admin.js +0 -28
- package/server/services/index.js +0 -1
- package/server/services/permission/permissions-manager/sanitize.js +22 -0
- package/server/services/user.js +1 -1
- package/server/utils/index.d.ts +0 -2
- package/admin/src/components/ConfigurationsProvider/index.js +0 -51
- package/admin/src/components/ConfigurationsProvider/reducer.js +0 -28
- package/admin/src/content-manager/components/DynamicComponentCard/index.js +0 -43
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/Form/index.js +0 -85
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/Form/init.js +0 -13
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/Form/reducer.js +0 -43
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoInput/index.js +0 -116
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoInput/reducer.js +0 -28
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoInput/stepper.js +0 -25
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/AddLogoDialog.js +0 -67
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/FromComputerForm.js +0 -176
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/FromUrlForm.js +0 -82
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/ImageCardAsset.js +0 -51
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/PendingLogoDialog.js +0 -97
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/index.js +0 -85
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/reducer.js +0 -28
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/api.js +0 -16
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/constants.js +0 -3
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/getFormData.js +0 -17
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/parseFileMetadatas.js +0 -76
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/prefixAllUrls.js +0 -17
- package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/urlToFile.js +0 -21
- package/build/1856.521a99fd.chunk.js +0 -172
- package/build/2481.7ba28142.chunk.js +0 -184
- package/build/2758.927ecb6d.chunk.js +0 -162
- package/build/2912.79c2b3c8.chunk.js +0 -253
- package/build/2a9e9ef5c4c775bb7c7b.png +0 -0
- package/build/372.3720845e.chunk.js +0 -899
- package/build/4715.77e04177.chunk.js +0 -385
- package/build/497.fbd75558.chunk.js +0 -284
- package/build/4982.f53b78a4.chunk.js +0 -308
- package/build/6404.80bf5858.chunk.js +0 -506
- package/build/7197.959bbe97.chunk.js +0 -113
- package/build/7589.f3b26345.chunk.js +0 -194
- package/build/7841.f0e7d629.chunk.js +0 -253
- package/build/9115.318a6841.chunk.js +0 -1
- package/build/9853.d96fbc67.chunk.js +0 -356
- package/build/Admin-authenticatedApp.d8767873.chunk.js +0 -80
- package/build/Admin_homePage.50b6c129.chunk.js +0 -71
- package/build/Admin_marketplace.514ace37.chunk.js +0 -11
- package/build/Admin_settingsPage.0d94a598.chunk.js +0 -180
- package/build/admin-edit-roles-page.06f3d288.chunk.js +0 -1
- package/build/admin-edit-users.6a325cca.chunk.js +0 -11
- package/build/api-tokens-create-page.635e20c8.chunk.js +0 -1
- package/build/api-tokens-edit-page.db07253e.chunk.js +0 -1
- package/build/api-tokens-list-page.346c2149.chunk.js +0 -15
- package/build/content-manager.78e3f35c.chunk.js +0 -1204
- package/build/content-type-builder.0d8729ad.chunk.js +0 -141
- package/build/email-settings-page.fcc7e65d.chunk.js +0 -103
- package/build/en-json.ca572384.chunk.js +0 -1
- package/build/i18n-settings-page.477ffac7.chunk.js +0 -101
- package/build/main.06f66609.js +0 -7909
- package/build/ru-json.4560906c.chunk.js +0 -1
- package/build/runtime~main.dc1c7ef6.js +0 -2
- package/build/upload-settings.1456cd65.chunk.js +0 -101
- package/build/upload.d45af2c9.chunk.js +0 -105
- package/build/users-advanced-settings-page.5aa21b84.chunk.js +0 -101
- package/build/users-roles-settings-page.97d7092d.chunk.js +0 -30
- package/build/webhook-list-page.927257b5.chunk.js +0 -133
- package/server/services/project-settings.js +0 -173
- package/server/validation/project-settings.js +0 -39
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[9460],{16540:(C,A,d)=>{"use strict";C.exports=d(67468)},67468:function(C,A,d){(function(f,S){C.exports=S(d(32735),d(19615))})(this,function(f,S){return function(n){var c={};function t(i){if(c[i])return c[i].exports;var a=c[i]={i,l:!1,exports:{}};return n[i].call(a.exports,a,a.exports,t),a.l=!0,a.exports}return t.m=n,t.c=c,t.d=function(i,a,u){t.o(i,a)||Object.defineProperty(i,a,{enumerable:!0,get:u})},t.r=function(i){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(i,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(i,"__esModule",{value:!0})},t.t=function(i,a){if(1&a&&(i=t(i)),8&a||4&a&&typeof i=="object"&&i&&i.__esModule)return i;var u=Object.create(null);if(t.r(u),Object.defineProperty(u,"default",{enumerable:!0,value:i}),2&a&&typeof i!="string")for(var l in i)t.d(u,l,function(r){return i[r]}.bind(null,l));return u},t.n=function(i){var a=i&&i.__esModule?function(){return i.default}:function(){return i};return t.d(a,"a",a),a},t.o=function(i,a){return Object.prototype.hasOwnProperty.call(i,a)},t.p="",t(t.s=110)}({0:function(n,c,t){n.exports=t(19)()},1:function(n,c){n.exports=f},10:function(n,c,t){var i=t(25),a=t(26),u=t(22),l=t(27);n.exports=function(r,p){return i(r)||a(r,p)||u(r,p)||l()},n.exports.default=n.exports,n.exports.__esModule=!0},110:function(n,c,t){"use strict";t.r(c),t.d(c,"Main",function(){return M}),t.d(c,"SkipToContent",function(){return W});var i,a=t(5),u=t.n(a),l=t(4),r=t.n(l),p=t(3),m=t.n(p),g=t(1),x=t.n(g),y=t(0),e=t.n(y),o=t(2),s=t.n(o),P=["labelledBy"],R=s.a.main(i||(i=m()([`
|
|
2
|
-
// To prevent global outline on focus visible to force an outline when Main is focused
|
|
3
|
-
&:focus-visible {
|
|
4
|
-
outline: none;
|
|
5
|
-
}
|
|
6
|
-
`]))),M=function(T){var _=T.labelledBy,k=r()(T,P),H=_||"main-content-title";return x.a.createElement(R,u()({"aria-labelledby":H,id:"main-content",tabIndex:-1},k))};M.defaultProps={labelledBy:void 0},M.propTypes={labelledBy:e.a.string};var I,Q=t(6),N=s()(Q.Box)(I||(I=m()([`
|
|
7
|
-
text-decoration: none;
|
|
8
|
-
position: absolute;
|
|
9
|
-
z-index: 9999;
|
|
10
|
-
left: -100%;
|
|
11
|
-
top: -100%;
|
|
12
|
-
|
|
13
|
-
&:focus {
|
|
14
|
-
left: `,`;
|
|
15
|
-
top: `,`;
|
|
16
|
-
}
|
|
17
|
-
`])),function(T){return T.theme.spaces[3]},function(T){return T.theme.spaces[3]}),W=function(T){var _=T.children;return x.a.createElement(N,{as:"a",href:"#main-content",background:"primary600",color:"neutral0",padding:3,hasRadius:!0},_)};W.propTypes={children:e.a.node.isRequired}},13:function(n,c){function t(i){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?(n.exports=t=function(a){return typeof a},n.exports.default=n.exports,n.exports.__esModule=!0):(n.exports=t=function(a){return a&&typeof Symbol=="function"&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},n.exports.default=n.exports,n.exports.__esModule=!0),t(i)}n.exports=t,n.exports.default=n.exports,n.exports.__esModule=!0},19:function(n,c,t){"use strict";var i=t(20);function a(){}function u(){}u.resetWarningCache=a,n.exports=function(){function l(m,g,x,y,e,o){if(o!==i){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function r(){return l}l.isRequired=l;var p={array:l,bool:l,func:l,number:l,object:l,string:l,symbol:l,any:l,arrayOf:r,element:l,elementType:l,instanceOf:r,node:l,objectOf:r,oneOf:r,oneOfType:r,shape:r,exact:r,checkPropTypes:u,resetWarningCache:a};return p.PropTypes=p,p}},2:function(n,c){n.exports=S},20:function(n,c,t){"use strict";n.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},21:function(n,c){n.exports=function(t,i){(i==null||i>t.length)&&(i=t.length);for(var a=0,u=new Array(i);a<i;a++)u[a]=t[a];return u},n.exports.default=n.exports,n.exports.__esModule=!0},22:function(n,c,t){var i=t(21);n.exports=function(a,u){if(a){if(typeof a=="string")return i(a,u);var l=Object.prototype.toString.call(a).slice(8,-1);return l==="Object"&&a.constructor&&(l=a.constructor.name),l==="Map"||l==="Set"?Array.from(a):l==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(l)?i(a,u):void 0}},n.exports.default=n.exports,n.exports.__esModule=!0},24:function(n,c){n.exports=function(t,i){if(t==null)return{};var a,u,l={},r=Object.keys(t);for(u=0;u<r.length;u++)a=r[u],i.indexOf(a)>=0||(l[a]=t[a]);return l},n.exports.default=n.exports,n.exports.__esModule=!0},25:function(n,c){n.exports=function(t){if(Array.isArray(t))return t},n.exports.default=n.exports,n.exports.__esModule=!0},26:function(n,c){n.exports=function(t,i){var a=t==null?null:typeof Symbol!="undefined"&&t[Symbol.iterator]||t["@@iterator"];if(a!=null){var u,l,r=[],p=!0,m=!1;try{for(a=a.call(t);!(p=(u=a.next()).done)&&(r.push(u.value),!i||r.length!==i);p=!0);}catch(g){m=!0,l=g}finally{try{p||a.return==null||a.return()}finally{if(m)throw l}}return r}},n.exports.default=n.exports,n.exports.__esModule=!0},27:function(n,c){n.exports=function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
18
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)},n.exports.default=n.exports,n.exports.__esModule=!0},3:function(n,c){n.exports=function(t,i){return i||(i=t.slice(0)),Object.freeze(Object.defineProperties(t,{raw:{value:Object.freeze(i)}}))},n.exports.default=n.exports,n.exports.__esModule=!0},4:function(n,c,t){var i=t(24);n.exports=function(a,u){if(a==null)return{};var l,r,p=i(a,u);if(Object.getOwnPropertySymbols){var m=Object.getOwnPropertySymbols(a);for(r=0;r<m.length;r++)l=m[r],u.indexOf(l)>=0||Object.prototype.propertyIsEnumerable.call(a,l)&&(p[l]=a[l])}return p},n.exports.default=n.exports,n.exports.__esModule=!0},5:function(n,c){function t(){return n.exports=t=Object.assign||function(i){for(var a=1;a<arguments.length;a++){var u=arguments[a];for(var l in u)Object.prototype.hasOwnProperty.call(u,l)&&(i[l]=u[l])}return i},n.exports.default=n.exports,n.exports.__esModule=!0,t.apply(this,arguments)}n.exports=t,n.exports.default=n.exports,n.exports.__esModule=!0},6:function(n,c,t){"use strict";t.r(c),t.d(c,"Box",function(){return y});var i,a=t(3),u=t.n(a),l=t(0),r=t.n(l),p=t(2),m=t.n(p),g=t(7),x={color:!0},y=m.a.div.withConfig({shouldForwardProp:function(e,o){return!x[e]&&o(e)}})(i||(i=u()([`
|
|
19
|
-
// Font
|
|
20
|
-
font-size: `,`;
|
|
21
|
-
|
|
22
|
-
// Colors
|
|
23
|
-
background: `,`;
|
|
24
|
-
color: `,`;
|
|
25
|
-
|
|
26
|
-
// Spaces
|
|
27
|
-
`,`
|
|
28
|
-
`,`
|
|
29
|
-
`,`
|
|
30
|
-
`,`
|
|
31
|
-
`,`
|
|
32
|
-
`,`
|
|
33
|
-
`,`
|
|
34
|
-
`,`
|
|
35
|
-
`,`
|
|
36
|
-
|
|
37
|
-
// Responsive hiding
|
|
38
|
-
`,`
|
|
39
|
-
`,`
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
// Borders
|
|
43
|
-
border-radius: `,`;
|
|
44
|
-
border-style: `,`;
|
|
45
|
-
border-width: `,`;
|
|
46
|
-
border-color: `,`;
|
|
47
|
-
border: `,`;
|
|
48
|
-
|
|
49
|
-
// Shadows
|
|
50
|
-
box-shadow: `,`;
|
|
51
|
-
|
|
52
|
-
// Handlers
|
|
53
|
-
pointer-events: `,`;
|
|
54
|
-
&:hover {
|
|
55
|
-
`,`
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
// Display
|
|
59
|
-
display: `,`;
|
|
60
|
-
|
|
61
|
-
// Position
|
|
62
|
-
position: `,`;
|
|
63
|
-
left: `,`;
|
|
64
|
-
right: `,`;
|
|
65
|
-
top: `,`;
|
|
66
|
-
bottom: `,`;
|
|
67
|
-
z-index: `,`;
|
|
68
|
-
overflow: `,`;
|
|
69
|
-
cursor: `,`;
|
|
70
|
-
|
|
71
|
-
// Size
|
|
72
|
-
width: `,`;
|
|
73
|
-
max-width: `,`;
|
|
74
|
-
min-width: `,`;
|
|
75
|
-
height: `,`;
|
|
76
|
-
max-height: `,`;
|
|
77
|
-
min-height: `,`;
|
|
78
|
-
|
|
79
|
-
// Animation
|
|
80
|
-
transition: `,`;
|
|
81
|
-
transform: `,`;
|
|
82
|
-
animation: `,`;
|
|
83
|
-
|
|
84
|
-
//Flexbox children props
|
|
85
|
-
flex-shrink: `,`;
|
|
86
|
-
flex-grow: `,`;
|
|
87
|
-
flex-basis: `,`;
|
|
88
|
-
flex: `,`;
|
|
89
|
-
|
|
90
|
-
// Text
|
|
91
|
-
text-align: `,`;
|
|
92
|
-
text-transform: `,`;
|
|
93
|
-
line-height: `,`;
|
|
94
|
-
|
|
95
|
-
// Cursor
|
|
96
|
-
cursor: `,`;
|
|
97
|
-
`])),function(e){var o=e.fontSize;return e.theme.fontSizes[o]||o},function(e){var o=e.theme,s=e.background;return o.colors[s]},function(e){var o=e.theme,s=e.color;return o.colors[s]},function(e){var o=e.theme,s=e.padding;return Object(g.a)("padding",s,o)},function(e){var o=e.theme,s=e.paddingTop;return Object(g.a)("padding-top",s,o)},function(e){var o=e.theme,s=e.paddingRight;return Object(g.a)("padding-right",s,o)},function(e){var o=e.theme,s=e.paddingBottom;return Object(g.a)("padding-bottom",s,o)},function(e){var o=e.theme,s=e.paddingLeft;return Object(g.a)("padding-left",s,o)},function(e){var o=e.theme,s=e.marginLeft;return Object(g.a)("margin-left",s,o)},function(e){var o=e.theme,s=e.marginRight;return Object(g.a)("margin-right",s,o)},function(e){var o=e.theme,s=e.marginTop;return Object(g.a)("margin-top",s,o)},function(e){var o=e.theme,s=e.marginBottom;return Object(g.a)("margin-bottom",s,o)},function(e){var o=e.theme;return e.hiddenS?"".concat(o.mediaQueries.tablet," { display: none; }"):void 0},function(e){var o=e.theme;return e.hiddenXS?"".concat(o.mediaQueries.mobile," { display: none; }"):void 0},function(e){var o=e.theme,s=e.hasRadius,P=e.borderRadius;return s?o.borderRadius:P},function(e){return e.borderStyle},function(e){return e.borderWidth},function(e){var o=e.borderColor;return e.theme.colors[o]},function(e){var o=e.theme,s=e.borderColor,P=e.borderStyle,R=e.borderWidth;if(s&&!P&&!R)return"1px solid ".concat(o.colors[s])},function(e){var o=e.theme,s=e.shadow;return o.shadows[s]},function(e){return e.pointerEvents},function(e){var o=e._hover,s=e.theme;return o?o(s):void 0},function(e){return e.display},function(e){return e.position},function(e){var o=e.left;return e.theme.spaces[o]||o},function(e){var o=e.right;return e.theme.spaces[o]||o},function(e){var o=e.top;return e.theme.spaces[o]||o},function(e){var o=e.bottom;return e.theme.spaces[o]||o},function(e){return e.zIndex},function(e){return e.overflow},function(e){return e.cursor},function(e){var o=e.width;return e.theme.spaces[o]||o},function(e){var o=e.maxWidth;return e.theme.spaces[o]||o},function(e){var o=e.minWidth;return e.theme.spaces[o]||o},function(e){var o=e.height;return e.theme.spaces[o]||o},function(e){var o=e.maxHeight;return e.theme.spaces[o]||o},function(e){var o=e.minHeight;return e.theme.spaces[o]||o},function(e){return e.transition},function(e){return e.transform},function(e){return e.animation},function(e){return e.shrink},function(e){return e.grow},function(e){return e.basis},function(e){return e.flex},function(e){return e.textAlign},function(e){return e.textTransform},function(e){return e.lineHeight},function(e){return e.cursor});y.displayName="Box",y.defaultProps={background:void 0,borderColor:void 0,color:void 0,hiddenS:!1,hiddenXS:!1,padding:void 0,paddingTop:void 0,paddingRight:void 0,paddingBottom:void 0,paddingLeft:void 0,hasRadius:!1,shadow:void 0,children:null,shrink:void 0,grow:void 0,basis:void 0,flex:void 0,_hover:function(){}},y.propTypes={_hover:r.a.func,background:r.a.string,basis:r.a.oneOfType([r.a.string,r.a.string]),borderColor:r.a.string,children:r.a.oneOfType([r.a.node,r.a.string]),color:r.a.string,flex:r.a.oneOfType([r.a.string,r.a.string]),grow:r.a.oneOfType([r.a.string,r.a.string]),hasRadius:r.a.bool,hiddenS:r.a.bool,hiddenXS:r.a.bool,padding:r.a.oneOfType([r.a.number,r.a.arrayOf(r.a.number)]),paddingBottom:r.a.oneOfType([r.a.number,r.a.arrayOf(r.a.number)]),paddingLeft:r.a.oneOfType([r.a.number,r.a.arrayOf(r.a.number)]),paddingRight:r.a.oneOfType([r.a.number,r.a.arrayOf(r.a.number)]),paddingTop:r.a.oneOfType([r.a.number,r.a.arrayOf(r.a.number)]),shadow:r.a.string,shrink:r.a.oneOfType([r.a.string,r.a.string])}},7:function(n,c,t){"use strict";var i=t(10),a=t.n(i),u=t(13),l=t.n(u);c.a=function(r,p,m){var g=p;if(Array.isArray(p)||l()(p)!=="object"||(g=[p==null?void 0:p.desktop,p==null?void 0:p.tablet,p==null?void 0:p.mobile]),g!==void 0){if(Array.isArray(g)){var x=g,y=a()(x,3),e=y[0],o=y[1],s=y[2],P="".concat(r,": ").concat(m.spaces[e],";");return o!==void 0&&(P+="".concat(m.mediaQueries.tablet,`{
|
|
98
|
-
`).concat(r,": ").concat(m.spaces[o],`;
|
|
99
|
-
}`)),s!==void 0&&(P+="".concat(m.mediaQueries.mobile,`{
|
|
100
|
-
`).concat(r,": ").concat(m.spaces[s],`;
|
|
101
|
-
}`)),P}var R=m.spaces[g]||g;return"".concat(r,": ").concat(R,";")}}}})})},81253:(C,A,d)=>{"use strict";d.r(A),d.d(A,{default:()=>ae});var f=d(32735),S=d(84968),n=d(5636),c=d(83281),t=d(10938),i=d(29270),a=d(16540),u=d(11856),l=d(44526),r=d(9808),p=d(90662),m=d(25716),g=d(95602),x=d(78330),y=d(88677),e=d.n(y),o=d(13087),s=d(13810);const R=[{intlLabel:{id:(0,s.OB)("EditForm.inputToggle.label.email"),defaultMessage:"One account per email address"},description:{id:(0,s.OB)("EditForm.inputToggle.description.email"),defaultMessage:"Disallow the user to create multiple accounts using the same email address with different authentication providers."},name:"unique_email",type:"bool",size:{col:12,xs:12}},{intlLabel:{id:(0,s.OB)("EditForm.inputToggle.label.sign-up"),defaultMessage:"Enable sign-ups"},description:{id:(0,s.OB)("EditForm.inputToggle.description.sign-up"),defaultMessage:"When disabled (OFF), the registration process is forbidden. No one can subscribe anymore no matter the used provider."},name:"allow_register",type:"bool",size:{col:12,xs:12}},{intlLabel:{id:(0,s.OB)("EditForm.inputToggle.label.email-reset-password"),defaultMessage:"Reset password page"},description:{id:(0,s.OB)("EditForm.inputToggle.description.email-reset-password"),defaultMessage:"URL of your application's reset password page."},placeholder:{id:(0,s.OB)("EditForm.inputToggle.placeholder.email-reset-password"),defaultMessage:"ex: https://youtfrontend.com/reset-password"},name:"email_reset_password",type:"text",size:{col:6,xs:12}},{intlLabel:{id:(0,s.OB)("EditForm.inputToggle.label.email-confirmation"),defaultMessage:"Enable email confirmation"},description:{id:(0,s.OB)("EditForm.inputToggle.description.email-confirmation"),defaultMessage:"When enabled (ON), new registered users receive a confirmation email."},name:"email_confirmation",type:"bool",size:{col:12,xs:12}},{intlLabel:{id:(0,s.OB)("EditForm.inputToggle.label.email-confirmation-redirection"),defaultMessage:"Redirection url"},description:{id:(0,s.OB)("EditForm.inputToggle.description.email-confirmation-redirection"),defaultMessage:"After you confirmed your email, choose where you will be redirected."},placeholder:{id:(0,s.OB)("EditForm.inputToggle.placeholder.email-reset-password"),defaultMessage:"ex: https://youtfrontend.com/reset-password"},name:"email_confirmation_redirection",type:"text",size:{col:6,xs:12}}];var M=d(5173);const I=new RegExp("(^$)|((.+:\\/\\/.*)(d*)\\/?(.*))"),N=M.Ry().shape({email_confirmation_redirection:M.nK().when("email_confirmation",{is:!0,then:M.Z_().matches(I).required(),otherwise:M.Z_().nullable()}),email_reset_password:M.Z_(t.translatedErrors.string).matches(I,t.translatedErrors.regex).nullable()});var W=(v,b,h)=>new Promise((F,j)=>{var z=O=>{try{w(h.next(O))}catch(B){j(B)}},D=O=>{try{w(h.throw(O))}catch(B){j(B)}},w=O=>O.done?F(O.value):Promise.resolve(O.value).then(z,D);w((h=h.apply(v,b)).next())});const T=()=>W(void 0,null,function*(){const{data:v}=yield s.be.get((0,s.Gc)("advanced"));return v}),_=v=>s.be.put((0,s.Gc)("advanced"),v);var k=Object.defineProperty,H=Object.defineProperties,ee=Object.getOwnPropertyDescriptors,K=Object.getOwnPropertySymbols,te=Object.prototype.hasOwnProperty,ne=Object.prototype.propertyIsEnumerable,X=(v,b,h)=>b in v?k(v,b,{enumerable:!0,configurable:!0,writable:!0,value:h}):v[b]=h,G=(v,b)=>{for(var h in b||(b={}))te.call(b,h)&&X(v,h,b[h]);if(K)for(var h of K(b))ne.call(b,h)&&X(v,h,b[h]);return v},$=(v,b)=>H(v,ee(b)),V=(v,b,h)=>new Promise((F,j)=>{var z=O=>{try{w(h.next(O))}catch(B){j(B)}},D=O=>{try{w(h.throw(O))}catch(B){j(B)}},w=O=>O.done?F(O.value):Promise.resolve(O.value).then(z,D);w((h=h.apply(v,b)).next())});const re=()=>f.createElement(t.CheckPagePermissions,{permissions:o.Z.readAdvancedSettings},f.createElement(oe,null)),oe=()=>{const{formatMessage:v}=(0,n.useIntl)(),b=(0,t.useNotification)(),{lockApp:h,unlockApp:F}=(0,t.useOverlayBlocker)(),{notifyStatus:j}=(0,i.useNotifyAT)(),z=(0,S.useQueryClient)();(0,t.useFocusWhenNavigate)();const D=(0,f.useMemo)(()=>({update:o.Z.updateAdvancedSettings}),[]),{isLoading:w,allowedActions:{canUpdate:O}}=(0,t.useRBAC)(D),{status:B,data:Y}=(0,S.useQuery)("advanced",()=>T(),{onSuccess:()=>{j(v({id:(0,s.OB)("Form.advancedSettings.data.loaded"),defaultMessage:"Advanced settings data has been loaded"}))},onError:()=>{b({type:"warning",message:{id:(0,s.OB)("notification.error"),defaultMessage:"An error occured"}})}}),ie=w||B!=="success",J=(0,S.useMutation)(L=>_(L),{onSuccess:()=>V(void 0,null,function*(){yield z.invalidateQueries("advanced"),b({type:"success",message:{id:(0,s.OB)("notification.success.saved"),defaultMessage:"Saved"}}),F()}),onError:()=>{b({type:"warning",message:{id:(0,s.OB)("notification.error"),defaultMessage:"An error occured"}}),F()},refetchActive:!0}),{isLoading:se}=J,le=L=>V(void 0,null,function*(){h();const U=L.email_confirmation?L.email_confirmation_redirection:"";yield J.mutateAsync($(G({},L),{email_confirmation_redirection:U}))});return ie?f.createElement(a.Main,{"aria-busy":"true"},f.createElement(t.SettingsPageTitle,{name:v({id:(0,s.OB)("HeaderNav.link.advancedSettings"),defaultMessage:"Advanced Settings"})}),f.createElement(u.HeaderLayout,{title:v({id:(0,s.OB)("HeaderNav.link.advancedSettings"),defaultMessage:"Advanced Settings"})}),f.createElement(u.ContentLayout,null,f.createElement(t.LoadingIndicatorPage,null))):f.createElement(a.Main,{"aria-busy":se},f.createElement(t.SettingsPageTitle,{name:v({id:(0,s.OB)("HeaderNav.link.advancedSettings"),defaultMessage:"Advanced Settings"})}),f.createElement(c.Formik,{onSubmit:le,initialValues:Y.settings,validateOnChange:!1,validationSchema:N,enableReinitialize:!0},({errors:L,values:U,handleChange:q,isSubmitting:ue})=>f.createElement(t.Form,null,f.createElement(u.HeaderLayout,{title:v({id:(0,s.OB)("HeaderNav.link.advancedSettings"),defaultMessage:"Advanced Settings"}),primaryAction:f.createElement(l.Button,{loading:ue,type:"submit",disabled:!O,startIcon:f.createElement(e(),null),size:"L"},v({id:"global.save",defaultMessage:"Save"}))}),f.createElement(u.ContentLayout,null,f.createElement(r.Box,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},f.createElement(p.Stack,{spacing:4},f.createElement(g.Typography,{variant:"delta",as:"h2"},v({id:"global.settings",defaultMessage:"Settings"})),f.createElement(x.Grid,{gap:6},f.createElement(x.GridItem,{col:6,s:12},f.createElement(m.Select,{label:v({id:(0,s.OB)("EditForm.inputSelect.label.role"),defaultMessage:"Default role for authenticated users"}),value:U.default_role,hint:v({id:(0,s.OB)("EditForm.inputSelect.description.role"),defaultMessage:"It will attach the new authenticated user to the selected role."}),onChange:E=>q({target:{name:"default_role",value:E}})},Y.roles.map(E=>f.createElement(m.Option,{key:E.type,value:E.type},E.name)))),R.map(E=>{let Z=U[E.name];return Z||(Z=E.type==="bool"?!1:""),f.createElement(x.GridItem,G({key:E.name},E.size),f.createElement(t.GenericInput,$(G({},E),{value:Z,error:L[E.name],disabled:E.name==="email_confirmation_redirection"&&U.email_confirmation===!1,onChange:q})))}))))))))},ae=re},54080:(C,A,d)=>{"use strict";d.d(A,{Z:()=>a});var f=d(43653),S=d.n(f),n=d(10938),c=d.n(n),t=(u,l,r)=>new Promise((p,m)=>{var g=e=>{try{y(r.next(e))}catch(o){m(o)}},x=e=>{try{y(r.throw(e))}catch(o){m(o)}},y=e=>e.done?p(e.value):Promise.resolve(e.value).then(g,x);y((r=r.apply(u,l)).next())});const i=S().create({baseURL:"http://localhost:1337"});i.interceptors.request.use(u=>t(void 0,null,function*(){return u.headers={Authorization:`Bearer ${n.auth.getToken()}`,Accept:"application/json","Content-Type":"application/json"},u}),u=>{Promise.reject(u)}),i.interceptors.response.use(u=>u,u=>{var l;throw((l=u.response)==null?void 0:l.status)===401&&(n.auth.clearAppStorage(),window.location.reload()),u});const a=i},13810:(C,A,d)=>{"use strict";d.d(A,{be:()=>f.Z,YX:()=>c,Gc:()=>a,OB:()=>u.Z});var f=d(54080),S=d(92891);const c=l=>Object.keys(l).reduce((r,p)=>{const m=l[p].controllers,g=Object.keys(m).reduce((x,y)=>((0,S.isEmpty)(m[y])||(x[y]=m[y]),x),{});return(0,S.isEmpty)(g)||(r[p]={controllers:g}),r},{});var t=d(46354);const a=l=>`/${t.Z}/${l}`;var u=d(39650)}}]);
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[8853],{15738:(W,N,o)=>{var s=o(4293);function O(p){var E=p==null?0:p.length;return E?s(p,1,E):[]}W.exports=O},67872:(W,N,o)=>{"use strict";o.r(N),o.d(N,{default:()=>Ts});var s=o(32735),O=o(5141),p=o(10938),E=o(46354),T=o(13087),_=o(44526),D=o(11856),v=o(16540),f=o(53214),U=o(28004),P=o(95602),x=o(29270),F=o(59290),G=o.n(F),h=o(5636),A=o(84968),V=o(58469),B=o(13810),re=(r,e,t)=>new Promise((i,u)=>{var l=n=>{try{a(t.next(n))}catch(c){u(c)}},d=n=>{try{a(t.throw(n))}catch(c){u(c)}},a=n=>n.done?i(n.value):Promise.resolve(n.value).then(l,d);a((t=t.apply(r,e)).next())});const Je=(r,e)=>re(void 0,null,function*(){try{const{data:t}=yield B.be.get((0,B.Gc)("roles"));return e("The roles have loaded successfully"),t}catch(t){throw r({type:"warning",message:{id:"notification.error"}}),new Error("error")}}),qe=(r,e)=>re(void 0,null,function*(){try{yield B.be.delete(`${(0,B.Gc)("roles")}/${r}`)}catch(t){e({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}});var et=o(60216),R=o.n(et),se=o(20763),X=o(19192),tt=o(95717),rt=o.n(tt),st=o(76470),nt=o.n(st),ot=Object.defineProperty,ne=Object.getOwnPropertySymbols,at=Object.prototype.hasOwnProperty,it=Object.prototype.propertyIsEnumerable,oe=(r,e,t)=>e in r?ot(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,ae=(r,e)=>{for(var t in e||(e={}))at.call(e,t)&&oe(r,t,e[t]);if(ne)for(var t of ne(e))it.call(e,t)&&oe(r,t,e[t]);return r};const Y=({sortedRoles:r,canDelete:e,permissions:t,setRoleToDelete:i,onDelete:u})=>{const{formatMessage:l}=(0,h.useIntl)(),{push:d}=(0,O.useHistory)(),[a,n]=u,c=m=>e&&!["public","authenticated"].includes(m.type),g=m=>{i(m),n(!a)},y=m=>{d(`/settings/${E.Z}/roles/${m}`)};return s.createElement(f.Tbody,null,r==null?void 0:r.map(m=>s.createElement(f.Tr,ae({key:m.name},(0,p.onRowClick)({fn:()=>y(m.id)})),s.createElement(f.Td,{width:"20%"},s.createElement(P.Typography,null,m.name)),s.createElement(f.Td,{width:"50%"},s.createElement(P.Typography,null,m.description)),s.createElement(f.Td,{width:"30%"},s.createElement(P.Typography,null,`${m.nb_users} ${l({id:"global.users",defaultMessage:"users"}).toLowerCase()}`)),s.createElement(f.Td,null,s.createElement(X.Flex,ae({justifyContent:"end"},p.stopPropagation),s.createElement(p.CheckPermissions,{permissions:t.updateRole},s.createElement(se.IconButton,{onClick:()=>y(m.id),noBorder:!0,icon:s.createElement(rt(),null),label:l({id:"app.component.table.edit",defaultMessage:"Edit {target}"},{target:`${m.name}`})})),c(m)&&s.createElement(p.CheckPermissions,{permissions:t.deleteRole},s.createElement(se.IconButton,{onClick:()=>g(m.id),noBorder:!0,icon:s.createElement(nt(),null),label:l({id:"global.delete-target",defaultMessage:"Delete {target}"},{target:`${m.name}`})})))))))},lt=Y;Y.defaultProps={canDelete:!1},Y.propTypes={onDelete:R().array.isRequired,permissions:R().object.isRequired,setRoleToDelete:R().func.isRequired,sortedRoles:R().array.isRequired,canDelete:R().bool};var ie=(r,e,t)=>new Promise((i,u)=>{var l=n=>{try{a(t.next(n))}catch(c){u(c)}},d=n=>{try{a(t.throw(n))}catch(c){u(c)}},a=n=>n.done?i(n.value):Promise.resolve(n.value).then(l,d);a((t=t.apply(r,e)).next())});const ct=()=>{const{trackUsage:r}=(0,p.useTracking)(),{formatMessage:e}=(0,h.useIntl)(),{push:t}=(0,O.useHistory)(),i=(0,p.useNotification)(),{notifyStatus:u}=(0,x.useNotifyAT)(),[{query:l}]=(0,p.useQueryParams)(),d=(l==null?void 0:l._q)||"",[a,n]=(0,s.useState)(!1),[c,g]=(0,s.useState)(!1),[y,m]=(0,s.useState)();(0,p.useFocusWhenNavigate)();const b=(0,A.useQueryClient)(),C=(0,s.useMemo)(()=>({create:T.Z.createRole,read:T.Z.readRoles,update:T.Z.updateRole,delete:T.Z.deleteRole}),[]),{isLoading:w,allowedActions:{canRead:M,canDelete:k}}=(0,p.useRBAC)(C),{isLoading:Ds,data:{roles:te},isFetching:As}=(0,A.useQuery)("get-roles",()=>Je(i,u),{initialData:{},enabled:M}),Ye=Ds||As,Ls=()=>{r("willCreateRole"),t(`/settings/${E.Z}/roles/new`)},Ss=()=>{n(!a)},ws={roles:{id:(0,B.OB)("Roles.empty"),defaultMessage:"You don't have any roles yet."},search:{id:(0,B.OB)("Roles.empty.search"),defaultMessage:"No roles match the search."}},Ms=e({id:"global.roles",defaultMessage:"Roles"}),Us=(0,A.useMutation)(Bs=>qe(Bs,i),{onSuccess:()=>ie(void 0,null,function*(){yield b.invalidateQueries("get-roles")})}),Is=()=>ie(void 0,null,function*(){g(!0),yield Us.mutateAsync(y),n(!a),g(!1)}),H=(0,V.ZP)(te||[],d,{keys:["name","description"]}),js=d&&!H.length?"search":"roles",_s=4,xs=((te==null?void 0:te.length)||0)+1;return s.createElement(D.Layout,null,s.createElement(p.SettingsPageTitle,{name:Ms}),s.createElement(v.Main,{"aria-busy":Ye},s.createElement(D.HeaderLayout,{title:e({id:"global.roles",defaultMessage:"Roles"}),subtitle:e({id:"Settings.roles.list.description",defaultMessage:"List of roles"}),primaryAction:s.createElement(p.CheckPermissions,{permissions:T.Z.createRole},s.createElement(_.Button,{onClick:Ls,startIcon:s.createElement(G(),null),size:"L"},e({id:(0,B.OB)("List.button.roles"),defaultMessage:"Add new role"})))}),s.createElement(D.ActionLayout,{startActions:s.createElement(p.SearchURLQuery,{label:e({id:"app.component.search.label",defaultMessage:"Search"})})}),s.createElement(D.ContentLayout,null,!M&&s.createElement(p.NoPermissions,null),(Ye||w)&&s.createElement(p.LoadingIndicatorPage,null),M&&H&&(H==null?void 0:H.length)?s.createElement(f.Table,{colCount:_s,rowCount:xs},s.createElement(f.Thead,null,s.createElement(f.Tr,null,s.createElement(f.Th,null,s.createElement(P.Typography,{variant:"sigma",textColor:"neutral600"},e({id:"global.name",defaultMessage:"Name"}))),s.createElement(f.Th,null,s.createElement(P.Typography,{variant:"sigma",textColor:"neutral600"},e({id:"global.description",defaultMessage:"Description"}))),s.createElement(f.Th,null,s.createElement(P.Typography,{variant:"sigma",textColor:"neutral600"},e({id:"global.users",defaultMessage:"Users"}))),s.createElement(f.Th,null,s.createElement(U.VisuallyHidden,null,e({id:"global.actions",defaultMessage:"Actions"}))))),s.createElement(lt,{sortedRoles:H,canDelete:k,permissions:T.Z,setRoleToDelete:m,onDelete:[a,n]})):s.createElement(p.EmptyStateLayout,{content:ws[js]})),s.createElement(p.ConfirmDialog,{isConfirmButtonLoading:c,onConfirm:Is,onToggleDialog:Ss,isOpen:a})))},ut=()=>s.createElement(p.CheckPagePermissions,{permissions:T.Z.accessRoles},s.createElement(ct,null));var L=o(90662),I=o(9808),le=o(37178),ce=o(90353),dt=o(98599),pt=o.n(dt),mt=o(88677),ue=o.n(mt),gt=o(58434),S=o(78330),de=o(83281),Z=o(39650),j=o(92891);const pe=(0,s.createContext)({}),me=({children:r,value:e})=>s.createElement(pe.Provider,{value:e},r),J=()=>(0,s.useContext)(pe);me.propTypes={children:R().node.isRequired,value:R().object.isRequired};var z=o(19615),ft=o(37213),Pt=o.n(ft),yt=o(15738),Et=o.n(yt);const vt=r=>{switch(r){case"POST":return{text:"success600",border:"success200",background:"success100"};case"GET":return{text:"secondary600",border:"secondary200",background:"secondary100"};case"PUT":return{text:"warning600",border:"warning200",background:"warning100"};case"DELETE":return{text:"danger600",border:"danger200",background:"danger100"};default:return{text:"neutral600",border:"neutral200",background:"neutral100"}}},ht=(0,z.default)(I.Box)`
|
|
2
|
-
margin: -1px;
|
|
3
|
-
border-radius: ${({theme:r})=>r.spaces[1]} 0 0 ${({theme:r})=>r.spaces[1]};
|
|
4
|
-
`;function q({route:r}){const{formatMessage:e}=(0,h.useIntl)(),{method:t,handler:i,path:u}=r,l=u?Et()(u.split("/")):[],[d="",a=""]=i?i.split("."):[],n=vt(r.method);return s.createElement(L.Stack,{spacing:2},s.createElement(P.Typography,{variant:"delta",as:"h3"},e({id:"users-permissions.BoundRoute.title",defaultMessage:"Bound route to"}),"\xA0",s.createElement("span",null,d),s.createElement(P.Typography,{variant:"delta",textColor:"primary600"},".",a)),s.createElement(L.Stack,{horizontal:!0,hasRadius:!0,background:"neutral0",borderColor:"neutral200",spacing:0},s.createElement(ht,{background:n.background,borderColor:n.border,padding:2},s.createElement(P.Typography,{fontWeight:"bold",textColor:n.text},t)),s.createElement(I.Box,{paddingLeft:2,paddingRight:2},Pt()(l,c=>s.createElement(P.Typography,{key:c,textColor:c.includes(":")?"neutral600":"neutral900"},"/",c)))))}q.defaultProps={route:{handler:"Nocontroller.error",method:"GET",path:"/there-is-no-path"}},q.propTypes={route:R().shape({handler:R().string,method:R().string,path:R().string})};const Ot=q,Rt=()=>{const{formatMessage:r}=(0,h.useIntl)(),{selectedAction:e,routes:t}=J(),i=(0,j.without)(e.split("."),"controllers"),u=(0,j.get)(t,i[0]),l=i.slice(1).join("."),d=(0,j.isEmpty)(u)?[]:u.filter(a=>a.handler.endsWith(l));return s.createElement(S.GridItem,{col:5,background:"neutral150",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7,style:{minHeight:"100%"}},e?s.createElement(L.Stack,{spacing:2},d.map((a,n)=>s.createElement(Ot,{key:n,route:a}))):s.createElement(L.Stack,{spacing:2},s.createElement(P.Typography,{variant:"delta",as:"h3"},r({id:"users-permissions.Policies.header.title",defaultMessage:"Advanced settings"})),s.createElement(P.Typography,{as:"p",textColor:"neutral600"},r({id:"users-permissions.Policies.header.hint",defaultMessage:"Select the application's actions or the plugin's actions and click on the cog icon to display the bound route"}))))};var ee=o(12001),Ct=o(23940),bt=o.n(Ct);function Tt(r){switch(r){case"application":return"Application";case"plugin::content-manager":return"Content manager";case"plugin::content-type-builder":return"Content types builder";case"plugin::documentation":return"Documentation";case"plugin::email":return"Email";case"plugin::i18n":return"i18n";case"plugin::upload":return"Upload";case"plugin::users-permissions":return"Users-permissions";default:return bt()(r.replace("api::","").replace("plugin::",""))}}const Dt=Tt;var At=o(98978),ge=o.n(At),fe=o(52111),Lt=o(42258),St=o.n(Lt);const Pe=z.css`
|
|
5
|
-
background: ${r=>r.theme.colors.primary100};
|
|
6
|
-
svg {
|
|
7
|
-
opacity: 1;
|
|
8
|
-
}
|
|
9
|
-
`,wt=(0,z.default)(I.Box)`
|
|
10
|
-
display: flex;
|
|
11
|
-
justify-content: space-between;
|
|
12
|
-
align-items: center;
|
|
13
|
-
|
|
14
|
-
svg {
|
|
15
|
-
opacity: 0;
|
|
16
|
-
path {
|
|
17
|
-
fill: ${r=>r.theme.colors.primary600};
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
/* Show active style both on hover and when the action is selected */
|
|
22
|
-
${r=>r.isActive&&Pe}
|
|
23
|
-
&:hover {
|
|
24
|
-
${Pe}
|
|
25
|
-
}
|
|
26
|
-
`,Mt=z.default.div`
|
|
27
|
-
flex: 1;
|
|
28
|
-
align-self: center;
|
|
29
|
-
border-top: 1px solid ${({theme:r})=>r.colors.neutral150};
|
|
30
|
-
`,ye=({subCategory:r})=>{const{formatMessage:e}=(0,h.useIntl)(),{onChange:t,onChangeSelectAll:i,onSelectedAction:u,selectedAction:l,modifiedData:d}=J(),a=(0,s.useMemo)(()=>(0,j.get)(d,r.name,{}),[d,r]),n=(0,s.useMemo)(()=>Object.values(a).every(m=>m.enabled===!0),[a]),c=(0,s.useMemo)(()=>Object.values(a).some(m=>m.enabled===!0)&&!n,[a,n]),g=(0,s.useCallback)(({target:{name:m}})=>{i({target:{name:m,value:!n}})},[n,i]),y=(0,s.useCallback)(m=>l===m,[l]);return s.createElement(I.Box,null,s.createElement(X.Flex,{justifyContent:"space-between",alignItems:"center"},s.createElement(I.Box,{paddingRight:4},s.createElement(P.Typography,{variant:"sigma",textColor:"neutral600"},r.label)),s.createElement(Mt,null),s.createElement(I.Box,{paddingLeft:4},s.createElement(fe.Checkbox,{name:r.name,value:n,onValueChange:m=>g({target:{name:r.name,value:m}}),indeterminate:c},e({id:"app.utils.select-all",defaultMessage:"Select all"})))),s.createElement(X.Flex,{paddingTop:6,paddingBottom:6},s.createElement(S.Grid,{gap:2,style:{flex:1}},r.actions.map(m=>{const b=`${m.name}.enabled`;return s.createElement(S.GridItem,{col:6,key:m.name},s.createElement(wt,{isActive:y(m.name),padding:2,hasRadius:!0},s.createElement(fe.Checkbox,{value:(0,j.get)(d,b,!1),name:b,onValueChange:C=>t({target:{name:b,value:C}})},m.label),s.createElement("button",{type:"button","data-testid":"action-cog",onClick:()=>u(m.name),style:{display:"inline-flex",alignItems:"center"}},s.createElement(St(),null))))}))))};ye.propTypes={subCategory:R().object.isRequired};const Ut=ye;var It=Object.defineProperty,jt=Object.defineProperties,_t=Object.getOwnPropertyDescriptors,Ee=Object.getOwnPropertySymbols,xt=Object.prototype.hasOwnProperty,Bt=Object.prototype.propertyIsEnumerable,ve=(r,e,t)=>e in r?It(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Nt=(r,e)=>{for(var t in e||(e={}))xt.call(e,t)&&ve(r,t,e[t]);if(Ee)for(var t of Ee(e))Bt.call(e,t)&&ve(r,t,e[t]);return r},Gt=(r,e)=>jt(r,_t(e));const he=({name:r,permissions:e})=>{const t=(0,s.useMemo)(()=>ge()(Object.values(e.controllers).reduce((i,u,l)=>{const d=`${r}.controllers.${Object.keys(e.controllers)[l]}`,a=ge()(Object.keys(u).reduce((n,c)=>[...n,Gt(Nt({},u[c]),{label:c,name:`${d}.${c}`})],[]),"label");return[...i,{actions:a,label:Object.keys(e.controllers)[l],name:d}]},[]),"label"),[r,e]);return s.createElement(I.Box,{padding:6},t.map(i=>s.createElement(Ut,{key:i.name,subCategory:i})))};he.propTypes={name:R().string.isRequired,permissions:R().object.isRequired};const Ft=he;var Zt=Object.defineProperty,$t=Object.defineProperties,kt=Object.getOwnPropertyDescriptors,Oe=Object.getOwnPropertySymbols,Vt=Object.prototype.hasOwnProperty,Ht=Object.prototype.propertyIsEnumerable,Re=(r,e,t)=>e in r?Zt(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Wt=(r,e)=>{for(var t in e||(e={}))Vt.call(e,t)&&Re(r,t,e[t]);if(Oe)for(var t of Oe(e))Ht.call(e,t)&&Re(r,t,e[t]);return r},zt=(r,e)=>$t(r,kt(e));const Kt=(r,e)=>{const t=Object.keys(e).sort().map(i=>({name:i,isOpen:!1}));return zt(Wt({},r),{collapses:t})};var K=o(49415),Qt=Object.defineProperty,Xt=Object.defineProperties,Yt=Object.getOwnPropertyDescriptors,Ce=Object.getOwnPropertySymbols,Jt=Object.prototype.hasOwnProperty,qt=Object.prototype.propertyIsEnumerable,be=(r,e,t)=>e in r?Qt(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Te=(r,e)=>{for(var t in e||(e={}))Jt.call(e,t)&&be(r,t,e[t]);if(Ce)for(var t of Ce(e))qt.call(e,t)&&be(r,t,e[t]);return r},De=(r,e)=>Xt(r,Yt(e));const er={collapses:[]},tr=(r,e)=>(0,K.default)(r,t=>{switch(e.type){case"TOGGLE_COLLAPSE":{t.collapses=r.collapses.map((i,u)=>u===e.index?De(Te({},i),{isOpen:!i.isOpen}):De(Te({},i),{isOpen:!1}));break}default:return t}}),rr=()=>{const{modifiedData:r}=J(),{formatMessage:e}=(0,h.useIntl)(),[{collapses:t},i]=(0,s.useReducer)(tr,er,l=>Kt(l,r)),u=l=>i({type:"TOGGLE_COLLAPSE",index:l});return s.createElement(L.Stack,{spacing:1},t.map((l,d)=>s.createElement(ee.Accordion,{expanded:l.isOpen,onToggle:()=>u(d),key:l.name,variant:d%2===0?"secondary":void 0},s.createElement(ee.AccordionToggle,{title:Dt(l.name),description:e({id:"users-permissions.Plugin.permissions.plugins.description",defaultMessage:"Define all allowed actions for the {name} plugin."},{name:l.name}),variant:d%2?"primary":"secondary"}),s.createElement(ee.AccordionContent,null,s.createElement(I.Box,null,s.createElement(Ft,{permissions:r[l.name],name:l.name}))))))};var sr=Object.defineProperty,nr=Object.defineProperties,or=Object.getOwnPropertyDescriptors,Ae=Object.getOwnPropertySymbols,ar=Object.prototype.hasOwnProperty,ir=Object.prototype.propertyIsEnumerable,Le=(r,e,t)=>e in r?sr(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,lr=(r,e)=>{for(var t in e||(e={}))ar.call(e,t)&&Le(r,t,e[t]);if(Ae)for(var t of Ae(e))ir.call(e,t)&&Le(r,t,e[t]);return r},cr=(r,e)=>nr(r,or(e));const ur={initialData:{},modifiedData:{},routes:{},selectedAction:"",policies:[]},dr=(r,e)=>(0,K.default)(r,t=>{switch(e.type){case"ON_CHANGE":{const i=e.keys.length,u=e.keys[i-1]==="enabled";if(e.value&&u){const l=(0,j.take)(e.keys,i-1).join(".");t.selectedAction=l}(0,j.set)(t,["modifiedData",...e.keys],e.value);break}case"ON_CHANGE_SELECT_ALL":{const i=["modifiedData",...e.keys],u=(0,j.get)(r,i,{}),l=Object.keys(u).reduce((d,a)=>(d[a]=cr(lr({},u[a]),{enabled:e.value}),d),{});(0,j.set)(t,i,l);break}case"ON_RESET":{t.modifiedData=r.initialData;break}case"ON_SUBMIT_SUCCEEDED":{t.initialData=r.modifiedData;break}case"SELECT_ACTION":{const{actionToSelect:i}=e;t.selectedAction=i===r.selectedAction?"":i;break}default:return t}});var pr=Object.defineProperty,mr=Object.defineProperties,gr=Object.getOwnPropertyDescriptors,Se=Object.getOwnPropertySymbols,fr=Object.prototype.hasOwnProperty,Pr=Object.prototype.propertyIsEnumerable,we=(r,e,t)=>e in r?pr(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,yr=(r,e)=>{for(var t in e||(e={}))fr.call(e,t)&&we(r,t,e[t]);if(Se)for(var t of Se(e))Pr.call(e,t)&&we(r,t,e[t]);return r},Er=(r,e)=>mr(r,gr(e));const vr=(r,e,t)=>Er(yr({},r),{initialData:e,modifiedData:e,routes:t});var hr=Object.defineProperty,Or=Object.defineProperties,Rr=Object.getOwnPropertyDescriptors,Me=Object.getOwnPropertySymbols,Cr=Object.prototype.hasOwnProperty,br=Object.prototype.propertyIsEnumerable,Ue=(r,e,t)=>e in r?hr(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Tr=(r,e)=>{for(var t in e||(e={}))Cr.call(e,t)&&Ue(r,t,e[t]);if(Me)for(var t of Me(e))br.call(e,t)&&Ue(r,t,e[t]);return r},Dr=(r,e)=>Or(r,Rr(e));const Ie=(0,s.forwardRef)(({permissions:r,routes:e},t)=>{const{formatMessage:i}=(0,h.useIntl)(),[u,l]=(0,s.useReducer)(dr,ur,g=>vr(g,r,e));(0,s.useImperativeHandle)(t,()=>({getPermissions:()=>({permissions:u.modifiedData}),resetForm:()=>{l({type:"ON_RESET"})},setFormAfterSubmit:()=>{l({type:"ON_SUBMIT_SUCCEEDED"})}}));const d=({target:{name:g,value:y}})=>l({type:"ON_CHANGE",keys:g.split("."),value:y==="empty__string_value"?"":y}),a=({target:{name:g,value:y}})=>l({type:"ON_CHANGE_SELECT_ALL",keys:g.split("."),value:y}),n=g=>l({type:"SELECT_ACTION",actionToSelect:g}),c=Dr(Tr({},u),{onChange:d,onChangeSelectAll:a,onSelectedAction:n});return s.createElement(me,{value:c},s.createElement(S.Grid,{gap:0,shadow:"filterShadow",hasRadius:!0,background:"neutral0"},s.createElement(S.GridItem,{col:7,paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},s.createElement(L.Stack,{spacing:6},s.createElement(L.Stack,{spacing:2},s.createElement(P.Typography,{variant:"delta",as:"h2"},i({id:(0,Z.Z)("Plugins.header.title"),defaultMessage:"Permissions"})),s.createElement(P.Typography,{as:"p",textColor:"neutral600"},i({id:(0,Z.Z)("Plugins.header.description"),defaultMessage:"Only actions bound by a route are listed below."}))),s.createElement(rr,null))),s.createElement(Rt,null)))});Ie.propTypes={permissions:R().object.isRequired,routes:R().object.isRequired};const je=(0,s.memo)(Ie),zs={isLoading:!0,modifiedData:{}},Ks=(r,e)=>produce(r,t=>{switch(e.type){case"GET_DATA":{t.isLoading=!0,t.modifiedData={};break}case"GET_DATA_SUCCEEDED":{t.isLoading=!1,t.modifiedData=e.data;break}case"GET_DATA_ERROR":{t.isLoading=!0;break}case"ON_SUBMIT_SUCCEEDED":{t.modifiedData=e.data;break}default:return t}}),Qs=null;var Ar=o(98399),Lr=(r,e,t)=>new Promise((i,u)=>{var l=n=>{try{a(t.next(n))}catch(c){u(c)}},d=n=>{try{a(t.throw(n))}catch(c){u(c)}},a=n=>n.done?i(n.value):Promise.resolve(n.value).then(l,d);a((t=t.apply(r,e)).next())});const Xs=(r,e)=>{const{isLoading:t,allowedActions:i}=useRBAC(e),[{isLoading:u,modifiedData:l},d]=useReducer(reducer,initialState),a=useNotification(),n=useRef(!0),c=new AbortController,{signal:g}=c;useEffect(()=>(t||(()=>Lr(void 0,null,function*(){try{d({type:"GET_DATA"});const b=yield request(getRequestURL(r),{method:"GET",signal:g});d({type:"GET_DATA_SUCCEEDED",data:b})}catch(b){n.current&&(d({type:"GET_DATA_ERROR"}),Ar.error(b),a({type:"warning",message:{id:"notification.error"}}))}}))(),()=>{c.abort(),n.current=!1}),[t,r]);const y=useCallback(m=>{d({type:"ON_SUBMIT_SUCCEEDED",data:m})},[]);return{allowedActions:i,dispatchSubmitSucceeded:y,isLoading:u,isLoadingForPermissions:t,modifiedData:l}},Ys=null;var Sr=Object.defineProperty,wr=Object.defineProperties,Mr=Object.getOwnPropertyDescriptors,_e=Object.getOwnPropertySymbols,Ur=Object.prototype.hasOwnProperty,Ir=Object.prototype.propertyIsEnumerable,xe=(r,e,t)=>e in r?Sr(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,jr=(r,e)=>{for(var t in e||(e={}))Ur.call(e,t)&&xe(r,t,e[t]);if(_e)for(var t of _e(e))Ir.call(e,t)&&xe(r,t,e[t]);return r},_r=(r,e)=>wr(r,Mr(e));const Js=(r,e)=>_r(jr({},r),{isLoading:e}),qs=null,en={roles:[],isLoading:!0},tn=(r,e)=>produce(r,t=>{switch(e.type){case"GET_DATA":{t.isLoading=!0,t.roles=[];break}case"GET_DATA_SUCCEEDED":{t.roles=e.data,t.isLoading=!1;break}case"GET_DATA_ERROR":{t.isLoading=!1;break}default:return t}}),rn=null;var xr=(r,e,t)=>new Promise((i,u)=>{var l=n=>{try{a(t.next(n))}catch(c){u(c)}},d=n=>{try{a(t.throw(n))}catch(c){u(c)}},a=n=>n.done?i(n.value):Promise.resolve(n.value).then(l,d);a((t=t.apply(r,e)).next())});const sn=(r=!0)=>{const[{roles:e,isLoading:t},i]=useReducer(reducer,initialState,()=>init(initialState,r)),u=useNotification(),l=useRef(!0),d=new AbortController,{signal:a}=d;useEffect(()=>(r&&n(),()=>{d.abort(),l.current=!1}),[r]);const n=()=>xr(void 0,null,function*(){try{i({type:"GET_DATA"});const{roles:c}=yield request(`/${pluginId}/roles`,{method:"GET",signal:a});i({type:"GET_DATA_SUCCEEDED",data:c})}catch(c){const g=get(c,["response","payload","message"],"An error occured");l.current&&(i({type:"GET_DATA_ERROR"}),g!=="Forbidden"&&u({type:"warning",message:g}))}});return{roles:e,isLoading:t,getData:n}},nn=null;var Br=Object.defineProperty,Nr=Object.defineProperties,Gr=Object.getOwnPropertyDescriptors,Be=Object.getOwnPropertySymbols,Fr=Object.prototype.hasOwnProperty,Zr=Object.prototype.propertyIsEnumerable,Ne=(r,e,t)=>e in r?Br(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,$r=(r,e)=>{for(var t in e||(e={}))Fr.call(e,t)&&Ne(r,t,e[t]);if(Be)for(var t of Be(e))Zr.call(e,t)&&Ne(r,t,e[t]);return r},kr=(r,e)=>Nr(r,Gr(e));const Vr=(r,e)=>kr($r({},r),{isLoading:e});var Q=o(54080);const Ge={permissions:{},routes:{},isLoading:!0},Hr=(r,e)=>(0,K.default)(r,t=>{switch(e.type){case"GET_DATA":{t.isLoading=!0,t.permissions={},t.routes={};break}case"GET_DATA_SUCCEEDED":{t.permissions=e.permissions,t.routes=e.routes,t.isLoading=!1;break}case"GET_DATA_ERROR":{t.isLoading=!1;break}default:return t}});var Fe=(r,e,t)=>new Promise((i,u)=>{var l=n=>{try{a(t.next(n))}catch(c){u(c)}},d=n=>{try{a(t.throw(n))}catch(c){u(c)}},a=n=>n.done?i(n.value):Promise.resolve(n.value).then(l,d);a((t=t.apply(r,e)).next())});const Ze=(r=!0)=>{const e=(0,p.useNotification)(),[{permissions:t,routes:i,isLoading:u},l]=(0,s.useReducer)(Hr,Ge,()=>Vr(Ge,r)),d=(0,s.useCallback)(()=>Fe(void 0,null,function*(){try{l({type:"GET_DATA"});const[{permissions:a},{routes:n}]=yield Promise.all([`/${E.Z}/permissions`,`/${E.Z}/routes`].map(c=>Fe(this,null,function*(){return(yield Q.Z.get(c)).data})));l({type:"GET_DATA_SUCCEEDED",permissions:(0,B.YX)(a),routes:n})}catch(a){const n=(0,j.get)(a,["response","payload","message"],"An error occured");l({type:"GET_DATA_ERROR"}),n!=="Forbidden"&&e({type:"warning",message:n})}}),[e]);return(0,s.useEffect)(()=>{r&&d()},[d,r]),{permissions:t,routes:i,getData:d,isLoading:u}},Wr={role:{},isLoading:!0},zr=(r,e)=>(0,K.default)(r,t=>{switch(e.type){case"GET_DATA_SUCCEEDED":{t.role=e.role,t.isLoading=!1;break}case"GET_DATA_ERROR":{t.isLoading=!1;break}case"ON_SUBMIT_SUCCEEDED":{t.role.name=e.name,t.role.description=e.description;break}default:return t}});var Kr=o(98399),Qr=Object.defineProperty,Xr=Object.defineProperties,Yr=Object.getOwnPropertyDescriptors,$e=Object.getOwnPropertySymbols,Jr=Object.prototype.hasOwnProperty,qr=Object.prototype.propertyIsEnumerable,ke=(r,e,t)=>e in r?Qr(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Ve=(r,e)=>{for(var t in e||(e={}))Jr.call(e,t)&&ke(r,t,e[t]);if($e)for(var t of $e(e))qr.call(e,t)&&ke(r,t,e[t]);return r},es=(r,e)=>Xr(r,Yr(e)),ts=(r,e,t)=>new Promise((i,u)=>{var l=n=>{try{a(t.next(n))}catch(c){u(c)}},d=n=>{try{a(t.throw(n))}catch(c){u(c)}},a=n=>n.done?i(n.value):Promise.resolve(n.value).then(l,d);a((t=t.apply(r,e)).next())});const rs=r=>{const[e,t]=(0,s.useReducer)(zr,Wr),i=(0,p.useNotification)(),u=(0,s.useRef)(null);(0,s.useEffect)(()=>(u.current=!0,r?l(r):t({type:"GET_DATA_SUCCEEDED",role:{}}),()=>u.current=!1),[r]);const l=a=>ts(void 0,null,function*(){try{const{data:{role:n}}=yield Q.Z.get(`/${E.Z}/roles/${a}`);u.current&&t({type:"GET_DATA_SUCCEEDED",role:n})}catch(n){Kr.error(n),t({type:"GET_DATA_ERROR"}),i({type:"warning",message:{id:"notification.error"}})}}),d=(0,s.useCallback)(a=>{t(Ve({type:"ON_SUBMIT_SUCCEEDED"},a))},[]);return es(Ve({},e),{onSubmitSucceeded:d})};var $=o(5173);const ss=$.Ry().shape({name:$.Z_().required(p.translatedErrors.required),description:$.Z_().required(p.translatedErrors.required)});var ns=o(98399),os=Object.defineProperty,as=Object.defineProperties,is=Object.getOwnPropertyDescriptors,He=Object.getOwnPropertySymbols,ls=Object.prototype.hasOwnProperty,cs=Object.prototype.propertyIsEnumerable,We=(r,e,t)=>e in r?os(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,ze=(r,e)=>{for(var t in e||(e={}))ls.call(e,t)&&We(r,t,e[t]);if(He)for(var t of He(e))cs.call(e,t)&&We(r,t,e[t]);return r},us=(r,e)=>as(r,is(e)),ds=(r,e,t)=>new Promise((i,u)=>{var l=n=>{try{a(t.next(n))}catch(c){u(c)}},d=n=>{try{a(t.throw(n))}catch(c){u(c)}},a=n=>n.done?i(n.value):Promise.resolve(n.value).then(l,d);a((t=t.apply(r,e)).next())});const ps=()=>{const{formatMessage:r}=(0,h.useIntl)(),[e,t]=(0,s.useState)(!1),i=(0,p.useNotification)(),{lockApp:u,unlockApp:l}=(0,p.useOverlayBlocker)(),{params:{id:d}}=(0,O.useRouteMatch)(`/settings/${E.Z}/roles/:id`),{isLoading:a,routes:n}=Ze(),{role:c,onSubmitSucceeded:g,isLoading:y}=rs(d),m=(0,s.useRef)(),b=C=>ds(void 0,null,function*(){u(),t(!0);try{const w=m.current.getPermissions();yield Q.Z.put(`/${E.Z}/roles/${d}`,us(ze(ze({},C),w),{users:[]})),g({name:C.name,description:C.description}),i({type:"success",message:{id:(0,Z.Z)("Settings.roles.edited"),defaultMessage:"Role edited"}})}catch(w){ns.error(w),i({type:"warning",message:{id:"notification.error",defaultMessage:"An error occurred"}})}t(!1),l()});return y?s.createElement(p.LoadingIndicatorPage,null):s.createElement(v.Main,null,s.createElement(p.SettingsPageTitle,{name:"Roles"}),s.createElement(de.Formik,{enableReinitialize:!0,initialValues:{name:c.name,description:c.description},onSubmit:b,validationSchema:ss},({handleSubmit:C,values:w,handleChange:M,errors:k})=>s.createElement(p.Form,{noValidate:!0,onSubmit:C},s.createElement(D.HeaderLayout,{primaryAction:!a&&s.createElement(_.Button,{disabled:c.code==="strapi-super-admin",type:"submit",loading:e,startIcon:s.createElement(ue(),null)},r({id:"global.save",defaultMessage:"Save"})),title:c.name,subtitle:c.description,navigationAction:s.createElement(gt.Link,{startIcon:s.createElement(pt(),null),to:"/settings/users-permissions/roles"},r({id:"global.back",defaultMessage:"Back"}))}),s.createElement(D.ContentLayout,null,s.createElement(L.Stack,{spacing:7},s.createElement(I.Box,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},s.createElement(L.Stack,{spacing:4},s.createElement(P.Typography,{variant:"delta",as:"h2"},r({id:(0,Z.Z)("EditPage.form.roles"),defaultMessage:"Role details"})),s.createElement(S.Grid,{gap:4},s.createElement(S.GridItem,{col:6},s.createElement(le.TextInput,{name:"name",value:w.name||"",onChange:M,label:r({id:"global.name",defaultMessage:"Name"}),error:k.name?r({id:k.name,defaultMessage:"Invalid value"}):null})),s.createElement(S.GridItem,{col:6},s.createElement(ce.Textarea,{name:"description",value:w.description||"",onChange:M,label:r({id:"global.description",defaultMessage:"Description"}),error:k.description?r({id:k.description,defaultMessage:"Invalid value"}):null}))))),!a&&s.createElement(je,{ref:m,permissions:c.permissions,routes:n}))))))},ms=()=>s.createElement(p.CheckPagePermissions,{permissions:T.Z.updateRole},s.createElement(ps,null)),gs=$.Ry().shape({name:$.Z_().required(p.translatedErrors.required),description:$.Z_().required(p.translatedErrors.required)});var fs=o(98399),Ps=Object.defineProperty,ys=Object.defineProperties,Es=Object.getOwnPropertyDescriptors,Ke=Object.getOwnPropertySymbols,vs=Object.prototype.hasOwnProperty,hs=Object.prototype.propertyIsEnumerable,Qe=(r,e,t)=>e in r?Ps(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Xe=(r,e)=>{for(var t in e||(e={}))vs.call(e,t)&&Qe(r,t,e[t]);if(Ke)for(var t of Ke(e))hs.call(e,t)&&Qe(r,t,e[t]);return r},Os=(r,e)=>ys(r,Es(e)),Rs=(r,e,t)=>new Promise((i,u)=>{var l=n=>{try{a(t.next(n))}catch(c){u(c)}},d=n=>{try{a(t.throw(n))}catch(c){u(c)}},a=n=>n.done?i(n.value):Promise.resolve(n.value).then(l,d);a((t=t.apply(r,e)).next())});const Cs=()=>{const{formatMessage:r}=(0,h.useIntl)(),[e,t]=(0,s.useState)(!1),i=(0,p.useNotification)(),{goBack:u}=(0,O.useHistory)(),{lockApp:l,unlockApp:d}=(0,p.useOverlayBlocker)(),{isLoading:a,permissions:n,routes:c}=Ze(),{trackUsage:g}=(0,p.useTracking)(),y=(0,s.useRef)(),m=b=>Rs(void 0,null,function*(){l(),t(!0);try{const C=y.current.getPermissions();yield Q.Z.post(`/${E.Z}/roles`,Os(Xe(Xe({},b),C),{users:[]})),g("didCreateRole"),i({type:"success",message:{id:(0,Z.Z)("Settings.roles.created"),defaultMessage:"Role created"}}),u()}catch(C){fs.error(C),i({type:"warning",message:{id:"notification.error",defaultMessage:"An error occurred"}})}t(!1),d()});return s.createElement(v.Main,null,s.createElement(p.SettingsPageTitle,{name:"Roles"}),s.createElement(de.Formik,{enableReinitialize:!0,initialValues:{name:"",description:""},onSubmit:m,validationSchema:gs},({handleSubmit:b,values:C,handleChange:w,errors:M})=>s.createElement(p.Form,{noValidate:!0,onSubmit:b},s.createElement(D.HeaderLayout,{primaryAction:!a&&s.createElement(_.Button,{type:"submit",loading:e,startIcon:s.createElement(ue(),null)},r({id:"global.save",defaultMessage:"Save"})),title:r({id:"Settings.roles.create.title",defaultMessage:"Create a role"}),subtitle:r({id:"Settings.roles.create.description",defaultMessage:"Define the rights given to the role"})}),s.createElement(D.ContentLayout,null,s.createElement(L.Stack,{spacing:7},s.createElement(I.Box,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},s.createElement(L.Stack,{spacing:4},s.createElement(P.Typography,{variant:"delta",as:"h2"},r({id:(0,Z.Z)("EditPage.form.roles"),defaultMessage:"Role details"})),s.createElement(S.Grid,{gap:4},s.createElement(S.GridItem,{col:6},s.createElement(le.TextInput,{name:"name",value:C.name||"",onChange:w,label:r({id:"global.name",defaultMessage:"Name"}),error:M.name?r({id:M.name,defaultMessage:"Invalid value"}):null})),s.createElement(S.GridItem,{col:6},s.createElement(ce.Textarea,{name:"description",value:C.description||"",onChange:w,label:r({id:"global.description",defaultMessage:"Description"}),error:M.description?r({id:M.description,defaultMessage:"Invalid value"}):null}))))),!a&&s.createElement(je,{ref:y,permissions:n,routes:c}))))))},bs=()=>s.createElement(p.CheckPagePermissions,{permissions:T.Z.createRole},s.createElement(Cs,null)),Ts=()=>s.createElement(p.CheckPagePermissions,{permissions:T.Z.accessRoles},s.createElement(O.Switch,null,s.createElement(O.Route,{path:`/settings/${E.Z}/roles/new`,component:bs,exact:!0}),s.createElement(O.Route,{path:`/settings/${E.Z}/roles/:id`,component:ms,exact:!0}),s.createElement(O.Route,{path:`/settings/${E.Z}/roles`,component:ut,exact:!0}),s.createElement(O.Route,{path:"",component:p.NotFound})))},54080:(W,N,o)=>{"use strict";o.d(N,{Z:()=>D});var s=o(43653),O=o.n(s),p=o(10938),E=o.n(p),T=(v,f,U)=>new Promise((P,x)=>{var F=A=>{try{h(U.next(A))}catch(V){x(V)}},G=A=>{try{h(U.throw(A))}catch(V){x(V)}},h=A=>A.done?P(A.value):Promise.resolve(A.value).then(F,G);h((U=U.apply(v,f)).next())});const _=O().create({baseURL:"http://localhost:1337"});_.interceptors.request.use(v=>T(void 0,null,function*(){return v.headers={Authorization:`Bearer ${p.auth.getToken()}`,Accept:"application/json","Content-Type":"application/json"},v}),v=>{Promise.reject(v)}),_.interceptors.response.use(v=>v,v=>{var f;throw((f=v.response)==null?void 0:f.status)===401&&(p.auth.clearAppStorage(),window.location.reload()),v});const D=_},13810:(W,N,o)=>{"use strict";o.d(N,{be:()=>s.Z,YX:()=>E,Gc:()=>D,OB:()=>v.Z});var s=o(54080),O=o(92891);const E=f=>Object.keys(f).reduce((U,P)=>{const x=f[P].controllers,F=Object.keys(x).reduce((G,h)=>((0,O.isEmpty)(x[h])||(G[h]=x[h]),G),{});return(0,O.isEmpty)(F)||(U[P]={controllers:F}),U},{});var T=o(46354);const D=f=>`/${T.Z}/${f}`;var v=o(39650)}}]);
|
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4121],{55470:(K,V,d)=>{"use strict";K.exports=d(17173)},17173:function(K,V,d){(function(s,O){K.exports=O(d(32735),d(19615))})(this,function(s,O){return function(r){var h={};function n(i){if(h[i])return h[i].exports;var a=h[i]={i,l:!1,exports:{}};return r[i].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return n.m=r,n.c=h,n.d=function(i,a,c){n.o(i,a)||Object.defineProperty(i,a,{enumerable:!0,get:c})},n.r=function(i){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(i,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(i,"__esModule",{value:!0})},n.t=function(i,a){if(1&a&&(i=n(i)),8&a||4&a&&typeof i=="object"&&i&&i.__esModule)return i;var c=Object.create(null);if(n.r(c),Object.defineProperty(c,"default",{enumerable:!0,value:i}),2&a&&typeof i!="string")for(var l in i)n.d(c,l,function(o){return i[o]}.bind(null,l));return c},n.n=function(i){var a=i&&i.__esModule?function(){return i.default}:function(){return i};return n.d(a,"a",a),a},n.o=function(i,a){return Object.prototype.hasOwnProperty.call(i,a)},n.p="",n(n.s=121)}({0:function(r,h,n){r.exports=n(19)()},1:function(r,h){r.exports=s},10:function(r,h,n){var i=n(25),a=n(26),c=n(22),l=n(27);r.exports=function(o,b){return i(o)||a(o,b)||c(o,b)||l()},r.exports.default=r.exports,r.exports.__esModule=!0},121:function(r,h,n){"use strict";n.r(h),n.d(h,"Switch",function(){return W});var i,a,c=n(5),l=n.n(c),o=n(4),b=n.n(o),p=n(3),g=n.n(p),S=n(1),T=n.n(S),e=n(0),t=n.n(e),u=n(2),w=n.n(u),B=n(9),Y=n(6),I=["label","onChange","onLabel","offLabel","selected","visibleLabels"],R=w.a.div(i||(i=g()([`
|
|
2
|
-
background: `,`;
|
|
3
|
-
border: none;
|
|
4
|
-
border-radius: 16px;
|
|
5
|
-
position: relative;
|
|
6
|
-
height: `,`rem;
|
|
7
|
-
width: `,`rem;
|
|
8
|
-
|
|
9
|
-
& span {
|
|
10
|
-
font-size: `,`;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
&:before {
|
|
14
|
-
content: '';
|
|
15
|
-
background: `,`;
|
|
16
|
-
width: 1rem;
|
|
17
|
-
height: 1rem;
|
|
18
|
-
border-radius: 50%;
|
|
19
|
-
position: absolute;
|
|
20
|
-
transition: all 0.5s;
|
|
21
|
-
left: `,`;
|
|
22
|
-
top: `,`;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
@media (prefers-reduced-motion: reduce) {
|
|
26
|
-
&:before {
|
|
27
|
-
transition: none;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
`])),function(x){return x.theme.colors.danger500},1.5,2.5,function(x){return x.visibleLabels?"1rem":0},function(x){return x.theme.colors.neutral0},function(x){return x.theme.spaces[1]},function(x){return x.theme.spaces[1]}),J=w.a.button(a||(a=g()([`
|
|
31
|
-
background: transparent;
|
|
32
|
-
padding: 0;
|
|
33
|
-
border: none;
|
|
34
|
-
|
|
35
|
-
&[aria-checked='true'] `,` {
|
|
36
|
-
background: `,`;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
&[aria-checked='true'] `,`:before {
|
|
40
|
-
transform: translateX(1rem);
|
|
41
|
-
}
|
|
42
|
-
`])),R,function(x){return x.theme.colors.success500},R),W=T.a.forwardRef(function(x,q){var _=x.label,ee=x.onChange,z=x.onLabel,G=x.offLabel,H=x.selected,ne=x.visibleLabels,te=b()(x,I);return T.a.createElement(J,l()({ref:q,role:"switch","aria-checked":H,"aria-label":_,onClick:ee,visibleLabels:ne,type:"button"},te),T.a.createElement(B.Flex,null,T.a.createElement(R,null,T.a.createElement("span",null,z),T.a.createElement("span",null,G)),ne&&T.a.createElement(Y.Box,{as:"span","aria-hidden":!0,paddingLeft:2,color:H?"success600":"danger600"},H?z:G)))});W.defaultProps={onLabel:"On",offLabel:"Off",visibleLabels:!1},W.propTypes={label:t.a.string.isRequired,offLabel:t.a.string,onChange:t.a.func.isRequired,onLabel:t.a.string,selected:t.a.bool.isRequired,visibleLabels:t.a.bool},W.displayName="Switch"},13:function(r,h){function n(i){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?(r.exports=n=function(a){return typeof a},r.exports.default=r.exports,r.exports.__esModule=!0):(r.exports=n=function(a){return a&&typeof Symbol=="function"&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},r.exports.default=r.exports,r.exports.__esModule=!0),n(i)}r.exports=n,r.exports.default=r.exports,r.exports.__esModule=!0},19:function(r,h,n){"use strict";var i=n(20);function a(){}function c(){}c.resetWarningCache=a,r.exports=function(){function l(p,g,S,T,e,t){if(t!==i){var u=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw u.name="Invariant Violation",u}}function o(){return l}l.isRequired=l;var b={array:l,bool:l,func:l,number:l,object:l,string:l,symbol:l,any:l,arrayOf:o,element:l,elementType:l,instanceOf:o,node:l,objectOf:o,oneOf:o,oneOfType:o,shape:o,exact:o,checkPropTypes:c,resetWarningCache:a};return b.PropTypes=b,b}},2:function(r,h){r.exports=O},20:function(r,h,n){"use strict";r.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},21:function(r,h){r.exports=function(n,i){(i==null||i>n.length)&&(i=n.length);for(var a=0,c=new Array(i);a<i;a++)c[a]=n[a];return c},r.exports.default=r.exports,r.exports.__esModule=!0},22:function(r,h,n){var i=n(21);r.exports=function(a,c){if(a){if(typeof a=="string")return i(a,c);var l=Object.prototype.toString.call(a).slice(8,-1);return l==="Object"&&a.constructor&&(l=a.constructor.name),l==="Map"||l==="Set"?Array.from(a):l==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(l)?i(a,c):void 0}},r.exports.default=r.exports,r.exports.__esModule=!0},24:function(r,h){r.exports=function(n,i){if(n==null)return{};var a,c,l={},o=Object.keys(n);for(c=0;c<o.length;c++)a=o[c],i.indexOf(a)>=0||(l[a]=n[a]);return l},r.exports.default=r.exports,r.exports.__esModule=!0},25:function(r,h){r.exports=function(n){if(Array.isArray(n))return n},r.exports.default=r.exports,r.exports.__esModule=!0},26:function(r,h){r.exports=function(n,i){var a=n==null?null:typeof Symbol!="undefined"&&n[Symbol.iterator]||n["@@iterator"];if(a!=null){var c,l,o=[],b=!0,p=!1;try{for(a=a.call(n);!(b=(c=a.next()).done)&&(o.push(c.value),!i||o.length!==i);b=!0);}catch(g){p=!0,l=g}finally{try{b||a.return==null||a.return()}finally{if(p)throw l}}return o}},r.exports.default=r.exports,r.exports.__esModule=!0},27:function(r,h){r.exports=function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
43
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)},r.exports.default=r.exports,r.exports.__esModule=!0},3:function(r,h){r.exports=function(n,i){return i||(i=n.slice(0)),Object.freeze(Object.defineProperties(n,{raw:{value:Object.freeze(i)}}))},r.exports.default=r.exports,r.exports.__esModule=!0},4:function(r,h,n){var i=n(24);r.exports=function(a,c){if(a==null)return{};var l,o,b=i(a,c);if(Object.getOwnPropertySymbols){var p=Object.getOwnPropertySymbols(a);for(o=0;o<p.length;o++)l=p[o],c.indexOf(l)>=0||Object.prototype.propertyIsEnumerable.call(a,l)&&(b[l]=a[l])}return b},r.exports.default=r.exports,r.exports.__esModule=!0},5:function(r,h){function n(){return r.exports=n=Object.assign||function(i){for(var a=1;a<arguments.length;a++){var c=arguments[a];for(var l in c)Object.prototype.hasOwnProperty.call(c,l)&&(i[l]=c[l])}return i},r.exports.default=r.exports,r.exports.__esModule=!0,n.apply(this,arguments)}r.exports=n,r.exports.default=r.exports,r.exports.__esModule=!0},6:function(r,h,n){"use strict";n.r(h),n.d(h,"Box",function(){return T});var i,a=n(3),c=n.n(a),l=n(0),o=n.n(l),b=n(2),p=n.n(b),g=n(7),S={color:!0},T=p.a.div.withConfig({shouldForwardProp:function(e,t){return!S[e]&&t(e)}})(i||(i=c()([`
|
|
44
|
-
// Font
|
|
45
|
-
font-size: `,`;
|
|
46
|
-
|
|
47
|
-
// Colors
|
|
48
|
-
background: `,`;
|
|
49
|
-
color: `,`;
|
|
50
|
-
|
|
51
|
-
// Spaces
|
|
52
|
-
`,`
|
|
53
|
-
`,`
|
|
54
|
-
`,`
|
|
55
|
-
`,`
|
|
56
|
-
`,`
|
|
57
|
-
`,`
|
|
58
|
-
`,`
|
|
59
|
-
`,`
|
|
60
|
-
`,`
|
|
61
|
-
|
|
62
|
-
// Responsive hiding
|
|
63
|
-
`,`
|
|
64
|
-
`,`
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
// Borders
|
|
68
|
-
border-radius: `,`;
|
|
69
|
-
border-style: `,`;
|
|
70
|
-
border-width: `,`;
|
|
71
|
-
border-color: `,`;
|
|
72
|
-
border: `,`;
|
|
73
|
-
|
|
74
|
-
// Shadows
|
|
75
|
-
box-shadow: `,`;
|
|
76
|
-
|
|
77
|
-
// Handlers
|
|
78
|
-
pointer-events: `,`;
|
|
79
|
-
&:hover {
|
|
80
|
-
`,`
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
// Display
|
|
84
|
-
display: `,`;
|
|
85
|
-
|
|
86
|
-
// Position
|
|
87
|
-
position: `,`;
|
|
88
|
-
left: `,`;
|
|
89
|
-
right: `,`;
|
|
90
|
-
top: `,`;
|
|
91
|
-
bottom: `,`;
|
|
92
|
-
z-index: `,`;
|
|
93
|
-
overflow: `,`;
|
|
94
|
-
cursor: `,`;
|
|
95
|
-
|
|
96
|
-
// Size
|
|
97
|
-
width: `,`;
|
|
98
|
-
max-width: `,`;
|
|
99
|
-
min-width: `,`;
|
|
100
|
-
height: `,`;
|
|
101
|
-
max-height: `,`;
|
|
102
|
-
min-height: `,`;
|
|
103
|
-
|
|
104
|
-
// Animation
|
|
105
|
-
transition: `,`;
|
|
106
|
-
transform: `,`;
|
|
107
|
-
animation: `,`;
|
|
108
|
-
|
|
109
|
-
//Flexbox children props
|
|
110
|
-
flex-shrink: `,`;
|
|
111
|
-
flex-grow: `,`;
|
|
112
|
-
flex-basis: `,`;
|
|
113
|
-
flex: `,`;
|
|
114
|
-
|
|
115
|
-
// Text
|
|
116
|
-
text-align: `,`;
|
|
117
|
-
text-transform: `,`;
|
|
118
|
-
line-height: `,`;
|
|
119
|
-
|
|
120
|
-
// Cursor
|
|
121
|
-
cursor: `,`;
|
|
122
|
-
`])),function(e){var t=e.fontSize;return e.theme.fontSizes[t]||t},function(e){var t=e.theme,u=e.background;return t.colors[u]},function(e){var t=e.theme,u=e.color;return t.colors[u]},function(e){var t=e.theme,u=e.padding;return Object(g.a)("padding",u,t)},function(e){var t=e.theme,u=e.paddingTop;return Object(g.a)("padding-top",u,t)},function(e){var t=e.theme,u=e.paddingRight;return Object(g.a)("padding-right",u,t)},function(e){var t=e.theme,u=e.paddingBottom;return Object(g.a)("padding-bottom",u,t)},function(e){var t=e.theme,u=e.paddingLeft;return Object(g.a)("padding-left",u,t)},function(e){var t=e.theme,u=e.marginLeft;return Object(g.a)("margin-left",u,t)},function(e){var t=e.theme,u=e.marginRight;return Object(g.a)("margin-right",u,t)},function(e){var t=e.theme,u=e.marginTop;return Object(g.a)("margin-top",u,t)},function(e){var t=e.theme,u=e.marginBottom;return Object(g.a)("margin-bottom",u,t)},function(e){var t=e.theme;return e.hiddenS?"".concat(t.mediaQueries.tablet," { display: none; }"):void 0},function(e){var t=e.theme;return e.hiddenXS?"".concat(t.mediaQueries.mobile," { display: none; }"):void 0},function(e){var t=e.theme,u=e.hasRadius,w=e.borderRadius;return u?t.borderRadius:w},function(e){return e.borderStyle},function(e){return e.borderWidth},function(e){var t=e.borderColor;return e.theme.colors[t]},function(e){var t=e.theme,u=e.borderColor,w=e.borderStyle,B=e.borderWidth;if(u&&!w&&!B)return"1px solid ".concat(t.colors[u])},function(e){var t=e.theme,u=e.shadow;return t.shadows[u]},function(e){return e.pointerEvents},function(e){var t=e._hover,u=e.theme;return t?t(u):void 0},function(e){return e.display},function(e){return e.position},function(e){var t=e.left;return e.theme.spaces[t]||t},function(e){var t=e.right;return e.theme.spaces[t]||t},function(e){var t=e.top;return e.theme.spaces[t]||t},function(e){var t=e.bottom;return e.theme.spaces[t]||t},function(e){return e.zIndex},function(e){return e.overflow},function(e){return e.cursor},function(e){var t=e.width;return e.theme.spaces[t]||t},function(e){var t=e.maxWidth;return e.theme.spaces[t]||t},function(e){var t=e.minWidth;return e.theme.spaces[t]||t},function(e){var t=e.height;return e.theme.spaces[t]||t},function(e){var t=e.maxHeight;return e.theme.spaces[t]||t},function(e){var t=e.minHeight;return e.theme.spaces[t]||t},function(e){return e.transition},function(e){return e.transform},function(e){return e.animation},function(e){return e.shrink},function(e){return e.grow},function(e){return e.basis},function(e){return e.flex},function(e){return e.textAlign},function(e){return e.textTransform},function(e){return e.lineHeight},function(e){return e.cursor});T.displayName="Box",T.defaultProps={background:void 0,borderColor:void 0,color:void 0,hiddenS:!1,hiddenXS:!1,padding:void 0,paddingTop:void 0,paddingRight:void 0,paddingBottom:void 0,paddingLeft:void 0,hasRadius:!1,shadow:void 0,children:null,shrink:void 0,grow:void 0,basis:void 0,flex:void 0,_hover:function(){}},T.propTypes={_hover:o.a.func,background:o.a.string,basis:o.a.oneOfType([o.a.string,o.a.string]),borderColor:o.a.string,children:o.a.oneOfType([o.a.node,o.a.string]),color:o.a.string,flex:o.a.oneOfType([o.a.string,o.a.string]),grow:o.a.oneOfType([o.a.string,o.a.string]),hasRadius:o.a.bool,hiddenS:o.a.bool,hiddenXS:o.a.bool,padding:o.a.oneOfType([o.a.number,o.a.arrayOf(o.a.number)]),paddingBottom:o.a.oneOfType([o.a.number,o.a.arrayOf(o.a.number)]),paddingLeft:o.a.oneOfType([o.a.number,o.a.arrayOf(o.a.number)]),paddingRight:o.a.oneOfType([o.a.number,o.a.arrayOf(o.a.number)]),paddingTop:o.a.oneOfType([o.a.number,o.a.arrayOf(o.a.number)]),shadow:o.a.string,shrink:o.a.oneOfType([o.a.string,o.a.string])}},7:function(r,h,n){"use strict";var i=n(10),a=n.n(i),c=n(13),l=n.n(c);h.a=function(o,b,p){var g=b;if(Array.isArray(b)||l()(b)!=="object"||(g=[b==null?void 0:b.desktop,b==null?void 0:b.tablet,b==null?void 0:b.mobile]),g!==void 0){if(Array.isArray(g)){var S=g,T=a()(S,3),e=T[0],t=T[1],u=T[2],w="".concat(o,": ").concat(p.spaces[e],";");return t!==void 0&&(w+="".concat(p.mediaQueries.tablet,`{
|
|
123
|
-
`).concat(o,": ").concat(p.spaces[t],`;
|
|
124
|
-
}`)),u!==void 0&&(w+="".concat(p.mediaQueries.mobile,`{
|
|
125
|
-
`).concat(o,": ").concat(p.spaces[u],`;
|
|
126
|
-
}`)),w}var B=p.spaces[g]||g;return"".concat(o,": ").concat(B,";")}}},9:function(r,h,n){"use strict";n.r(h),n.d(h,"Flex",function(){return e});var i,a=n(3),c=n.n(a),l=n(0),o=n.n(l),b=n(2),p=n.n(b),g=n(6),S=n(7),T={direction:!0},e=p()(g.Box).withConfig({shouldForwardProp:function(t,u){return!T[t]&&u(t)}})(i||(i=c()([`
|
|
127
|
-
align-items: `,`;
|
|
128
|
-
display: `,`;
|
|
129
|
-
flex-direction: `,`;
|
|
130
|
-
flex-wrap: `,`;
|
|
131
|
-
`,`};
|
|
132
|
-
justify-content: `,`;
|
|
133
|
-
`])),function(t){return t.alignItems},function(t){return t.inline?"inline-flex":"flex"},function(t){return t.direction},function(t){return t.wrap},function(t){var u=t.gap,w=t.theme;return Object(S.a)("gap",u,w)},function(t){return t.justifyContent});e.defaultProps={alignItems:"center",basis:void 0,direction:"row",gap:void 0,inline:!1,justifyContent:void 0,reverse:!1,wrap:void 0},e.propTypes={alignItems:o.a.string,basis:o.a.oneOfType([o.a.string,o.a.number]),direction:o.a.string,gap:o.a.oneOfType([o.a.shape({desktop:o.a.number,mobile:o.a.number,tablet:o.a.number}),o.a.number,o.a.arrayOf(o.a.number),o.a.string]),inline:o.a.bool,justifyContent:o.a.string,reverse:o.a.bool,wrap:o.a.string}}})})},17542:(K,V,d)=>{"use strict";d.r(V),d.d(V,{default:()=>xe});var s=d(32735),O=d(10938),r=d(79613),h=d(5141),n=d(5636),i=d(11856),a=d(64354),c=d(19192),l=d(90662),o=d(20763),b=d(35980),p=d(53214),g=d(95602),S=d(44526),T=d(28004),e=d(55470),t=d(16540),u=d(74064),w=d(29270),B=d(9808),Y=d(59290),I=d.n(Y),R=d(95717),J=d.n(R),W=d(76470),x=d.n(W),q=d(97042),_=d.n(q),ee=d(49415),z=d(3040),G=d.n(z);const H={webhooks:[],webhooksToDelete:[],webhookToDelete:null,loadingWebhooks:!0},te=(v,y)=>(0,ee.default)(v,m=>{switch(y.type){case"GET_DATA_SUCCEEDED":{m.webhooks=y.data,m.loadingWebhooks=!1;break}case"TOGGLE_LOADING":{m.loadingWebhooks=!v.loadingWebhooks;break}case"SET_WEBHOOK_ENABLED":{G()(m,["webhooks",...y.keys],y.value);break}case"SET_WEBHOOK_TO_DELETE":{m.webhookToDelete=y.id;break}case"SET_WEBHOOKS_TO_DELETE":{y.value?m.webhooksToDelete.push(y.id):m.webhooksToDelete=v.webhooksToDelete.filter(L=>L!==y.id);break}case"SET_ALL_WEBHOOKS_TO_DELETE":{v.webhooksToDelete.length===0?m.webhooksToDelete=v.webhooks.map(L=>L.id):m.webhooksToDelete=[];break}case"WEBHOOKS_DELETED":{m.webhooks=v.webhooks.filter(L=>!v.webhooksToDelete.includes(L.id)),m.webhooksToDelete=[];break}case"WEBHOOK_DELETED":{m.webhooks=v.webhooks.filter((L,j)=>j!==y.index),m.webhookToDelete=null;break}default:return m}});var pe=d(98399),he=Object.defineProperty,me=Object.defineProperties,be=Object.getOwnPropertyDescriptors,ae=Object.getOwnPropertySymbols,ge=Object.prototype.hasOwnProperty,ye=Object.prototype.propertyIsEnumerable,ie=(v,y,m)=>y in v?he(v,y,{enumerable:!0,configurable:!0,writable:!0,value:m}):v[y]=m,N=(v,y)=>{for(var m in y||(y={}))ge.call(y,m)&&ie(v,m,y[m]);if(ae)for(var m of ae(y))ye.call(y,m)&&ie(v,m,y[m]);return v},ve=(v,y)=>me(v,be(y)),$=(v,y,m)=>new Promise((L,j)=>{var A=D=>{try{E(m.next(D))}catch(M){j(M)}},C=D=>{try{E(m.throw(D))}catch(M){j(M)}},E=D=>D.done?L(D.value):Promise.resolve(D.value).then(A,C);E((m=m.apply(v,y)).next())});const Ee=()=>{const{isLoading:v,allowedActions:{canCreate:y,canRead:m,canUpdate:L,canDelete:j}}=(0,O.useRBAC)(r.Z.settings.webhooks),A=(0,O.useNotification)(),C=(0,s.useRef)(!0),{formatMessage:E}=(0,n.useIntl)(),[D,M]=(0,s.useState)(!1),[{webhooks:U,webhooksToDelete:Q,webhookToDelete:oe,loadingWebhooks:re},P]=(0,s.useReducer)(te,H),{notifyStatus:Te}=(0,w.useNotifyAT)();(0,O.useFocusWhenNavigate)();const{push:Oe}=(0,h.useHistory)(),{pathname:se}=(0,h.useLocation)(),X=U.length,F=Q.length,le=f=>U.findIndex(k=>k.id===f);(0,s.useEffect)(()=>(C.current=!0,()=>{C.current=!1}),[]),(0,s.useEffect)(()=>{m&&we()},[m]);const we=()=>$(void 0,null,function*(){try{const{data:f}=yield(0,O.request)("/admin/webhooks",{method:"GET"});C.current&&(P({type:"GET_DATA_SUCCEEDED",data:f}),Te("webhooks have been loaded"))}catch(f){pe.log(f),C.current&&(f.code!==20&&A({type:"warning",message:{id:"notification.error"}}),P({type:"TOGGLE_LOADING"}))}}),Se=()=>{M(f=>!f)},Le=()=>{oe?ke():Ce()},ke=()=>$(void 0,null,function*(){try{yield(0,O.request)(`/admin/webhooks/${oe}`,{method:"DELETE"}),P({type:"WEBHOOK_DELETED",index:le(oe)})}catch(f){f.code!==20&&A({type:"warning",message:{id:"notification.error"}})}M(!1)}),Ce=()=>$(void 0,null,function*(){const f={ids:Q};try{yield(0,O.request)("/admin/webhooks/batch-delete",{method:"POST",body:f}),C.current&&P({type:"WEBHOOKS_DELETED"})}catch(k){C.current&&k.code!==20&&A({type:"warning",message:{id:"notification.error"}})}M(!1)}),ue=f=>{M(!0),f!=="all"&&P({type:"SET_WEBHOOK_TO_DELETE",id:f})},De=(f,k)=>$(void 0,null,function*(){const ce=le(k),Be=U[ce],de=[ce,"isEnabled"],fe=ve(N({},Be),{isEnabled:f});delete fe.id;try{P({type:"SET_WEBHOOK_ENABLED",keys:de,value:f}),yield(0,O.request)(`/admin/webhooks/${k}`,{method:"PUT",body:fe})}catch(je){C.current&&(P({type:"SET_WEBHOOK_ENABLED",keys:de,value:!f}),je.code!==20&&A({type:"warning",message:{id:"notification.error"}}))}}),Pe=()=>{P({type:"SET_ALL_WEBHOOKS_TO_DELETE"})},Me=(f,k)=>{P({type:"SET_WEBHOOKS_TO_DELETE",value:f,id:k})},Z=f=>{Oe(`${se}/${f}`)};return s.createElement(i.Layout,null,s.createElement(O.SettingsPageTitle,{name:"Webhooks"}),s.createElement(t.Main,{"aria-busy":v||re},s.createElement(i.HeaderLayout,{title:E({id:"Settings.webhooks.title",defaultMessage:"Webhooks"}),subtitle:E({id:"Settings.webhooks.list.description",defaultMessage:"Get POST changes notifications"}),primaryAction:y&&!re&&s.createElement(u.LinkButton,{startIcon:s.createElement(I(),null),variant:"default",to:`${se}/create`,size:"L"},E({id:"Settings.webhooks.list.button.add",defaultMessage:"Create new webhook"}))}),F>0&&j&&s.createElement(i.ActionLayout,{startActions:s.createElement(s.Fragment,null,s.createElement(g.Typography,{variant:"epsilon",textColor:"neutral600"},E({id:"Settings.webhooks.to.delete",defaultMessage:"{webhooksToDeleteLength, plural, one {# asset} other {# assets}} selected"},{webhooksToDeleteLength:F})),s.createElement(S.Button,{onClick:()=>ue("all"),startIcon:s.createElement(x(),null),size:"L",variant:"danger-light"},E({id:"global.delete",defaultMessage:"Delete"})))}),s.createElement(i.ContentLayout,null,v||re?s.createElement(B.Box,{background:"neutral0",padding:6,shadow:"filterShadow",hasRadius:!0},s.createElement(O.LoadingIndicatorPage,null)):s.createElement(s.Fragment,null,X>0?s.createElement(p.Table,{colCount:5,rowCount:X+1,footer:s.createElement(p.TFooter,{onClick:()=>y?Z("create"):{},icon:s.createElement(I(),null)},E({id:"Settings.webhooks.list.button.add",defaultMessage:"Create new webhook"}))},s.createElement(p.Thead,null,s.createElement(p.Tr,null,s.createElement(p.Th,null,s.createElement(b.BaseCheckbox,{"aria-label":E({id:"global.select-all-entries",defaultMessage:"Select all entries"}),indeterminate:F>0&&F<X,value:F===X,onValueChange:Pe})),s.createElement(p.Th,{width:"20%"},s.createElement(g.Typography,{variant:"sigma",textColor:"neutral600"},E({id:"global.name",defaultMessage:"Name"}))),s.createElement(p.Th,{width:"60%"},s.createElement(g.Typography,{variant:"sigma",textColor:"neutral600"},E({id:"Settings.webhooks.form.url",defaultMessage:"URL"}))),s.createElement(p.Th,{width:"20%"},s.createElement(g.Typography,{variant:"sigma",textColor:"neutral600"},E({id:"Settings.webhooks.list.th.status",defaultMessage:"Status"}))),s.createElement(p.Th,null,s.createElement(T.VisuallyHidden,null,E({id:"Settings.webhooks.list.th.actions",defaultMessage:"Actions"}))))),s.createElement(p.Tbody,null,U.map(f=>s.createElement(p.Tr,N({key:f.id},(0,O.onRowClick)({fn:()=>Z(f.id),condition:L})),s.createElement(p.Td,N({},O.stopPropagation),s.createElement(b.BaseCheckbox,{"aria-label":`${E({id:"global.select",defaultMessage:"Select"})} ${f.name}`,value:Q==null?void 0:Q.includes(f.id),onValueChange:k=>Me(k,f.id),id:"select",name:"select"})),s.createElement(p.Td,null,s.createElement(g.Typography,{fontWeight:"semiBold",textColor:"neutral800"},f.name)),s.createElement(p.Td,null,s.createElement(g.Typography,{textColor:"neutral800"},f.url)),s.createElement(p.Td,null,s.createElement(c.Flex,N({},O.stopPropagation),s.createElement(e.Switch,{onLabel:E({id:"global.enabled",defaultMessage:"Enabled"}),offLabel:E({id:"global.disabled",defaultMessage:"Disabled"}),label:`${f.name} ${E({id:"Settings.webhooks.list.th.status",defaultMessage:"Status"})}`,selected:f.isEnabled,onChange:()=>De(!f.isEnabled,f.id),visibleLabels:!0}))),s.createElement(p.Td,null,s.createElement(l.Stack,N({horizontal:!0,spacing:1},O.stopPropagation),L&&s.createElement(o.IconButton,{onClick:()=>{Z(f.id)},label:E({id:"Settings.webhooks.events.update",defaultMessage:"Update"}),icon:s.createElement(J(),null),noBorder:!0}),j&&s.createElement(o.IconButton,{onClick:()=>ue(f.id),label:E({id:"global.delete",defaultMessage:"Delete"}),icon:s.createElement(x(),null),noBorder:!0,id:`delete-${f.id}`}))))))):s.createElement(a.EmptyStateLayout,{icon:s.createElement(_(),{width:"160px"}),content:E({id:"Settings.webhooks.list.empty.description",defaultMessage:"No webhooks found"}),action:s.createElement(S.Button,{variant:"secondary",startIcon:s.createElement(I(),null),onClick:()=>y?Z("create"):{}},E({id:"Settings.webhooks.list.button.add",defaultMessage:"Create new webhook"}))})))),s.createElement(O.ConfirmDialog,{isOpen:D,onToggleDialog:Se,onConfirm:Le}))},xe=()=>s.createElement(O.CheckPagePermissions,{permissions:r.Z.settings.webhooks.main},s.createElement(Ee,null))}}]);
|
|
@@ -1,173 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
const fs = require('fs');
|
|
4
|
-
const { pick } = require('lodash');
|
|
5
|
-
|
|
6
|
-
const PROJECT_SETTINGS_FILE_INPUTS = ['menuLogo'];
|
|
7
|
-
const DEFAULT_PROJECT_SETTINGS = {
|
|
8
|
-
menuLogo: null,
|
|
9
|
-
};
|
|
10
|
-
|
|
11
|
-
const parseFilesData = async files => {
|
|
12
|
-
const formatedFilesData = {};
|
|
13
|
-
|
|
14
|
-
await Promise.all(
|
|
15
|
-
PROJECT_SETTINGS_FILE_INPUTS.map(async inputName => {
|
|
16
|
-
const file = files[inputName];
|
|
17
|
-
|
|
18
|
-
// Skip empty file inputs
|
|
19
|
-
if (!file) {
|
|
20
|
-
return;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
const getStream = () => fs.createReadStream(file.path);
|
|
24
|
-
|
|
25
|
-
// Add formated data for the upload provider
|
|
26
|
-
formatedFilesData[inputName] = strapi
|
|
27
|
-
.plugin('upload')
|
|
28
|
-
.service('upload')
|
|
29
|
-
.formatFileInfo({
|
|
30
|
-
filename: file.name,
|
|
31
|
-
type: file.type,
|
|
32
|
-
size: file.size,
|
|
33
|
-
});
|
|
34
|
-
|
|
35
|
-
// Add image dimensions
|
|
36
|
-
Object.assign(
|
|
37
|
-
formatedFilesData[inputName],
|
|
38
|
-
await strapi
|
|
39
|
-
.plugin('upload')
|
|
40
|
-
.service('image-manipulation')
|
|
41
|
-
.getDimensions({ getStream })
|
|
42
|
-
);
|
|
43
|
-
|
|
44
|
-
// Add file path, and stream
|
|
45
|
-
Object.assign(formatedFilesData[inputName], {
|
|
46
|
-
stream: getStream(),
|
|
47
|
-
tmpPath: file.path,
|
|
48
|
-
provider: strapi.config.get('plugin.upload').provider,
|
|
49
|
-
});
|
|
50
|
-
})
|
|
51
|
-
);
|
|
52
|
-
|
|
53
|
-
return formatedFilesData;
|
|
54
|
-
};
|
|
55
|
-
|
|
56
|
-
const getProjectSettings = async () => {
|
|
57
|
-
const store = strapi.store({ type: 'core', name: 'admin' });
|
|
58
|
-
const projectSettings = {
|
|
59
|
-
...DEFAULT_PROJECT_SETTINGS,
|
|
60
|
-
...(await store.get({ key: 'project-settings' })),
|
|
61
|
-
};
|
|
62
|
-
|
|
63
|
-
// Filter file input fields
|
|
64
|
-
PROJECT_SETTINGS_FILE_INPUTS.forEach(inputName => {
|
|
65
|
-
if (!projectSettings[inputName]) {
|
|
66
|
-
return;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
projectSettings[inputName] = pick(projectSettings[inputName], [
|
|
70
|
-
'name',
|
|
71
|
-
'url',
|
|
72
|
-
'width',
|
|
73
|
-
'height',
|
|
74
|
-
'ext',
|
|
75
|
-
'size',
|
|
76
|
-
]);
|
|
77
|
-
});
|
|
78
|
-
|
|
79
|
-
return projectSettings;
|
|
80
|
-
};
|
|
81
|
-
|
|
82
|
-
const uploadFiles = async (files = {}) => {
|
|
83
|
-
// Call the provider upload function for each file
|
|
84
|
-
return Promise.all(
|
|
85
|
-
Object.values(files)
|
|
86
|
-
.filter(file => file.stream instanceof fs.ReadStream)
|
|
87
|
-
.map(file => strapi.plugin('upload').provider.uploadStream(file))
|
|
88
|
-
);
|
|
89
|
-
};
|
|
90
|
-
|
|
91
|
-
const deleteOldFiles = async ({ previousSettings, newSettings }) => {
|
|
92
|
-
return Promise.all(
|
|
93
|
-
PROJECT_SETTINGS_FILE_INPUTS.map(async inputName => {
|
|
94
|
-
// Skip if the store doesn't contain project settings
|
|
95
|
-
if (!previousSettings) {
|
|
96
|
-
return;
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
// Skip if there was no previous file
|
|
100
|
-
if (!previousSettings[inputName]) {
|
|
101
|
-
return;
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
// Skip if the file was not changed
|
|
105
|
-
if (
|
|
106
|
-
newSettings[inputName] &&
|
|
107
|
-
previousSettings[inputName].hash === newSettings[inputName].hash
|
|
108
|
-
) {
|
|
109
|
-
return;
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
// Skip if the file was not uploaded with the current provider
|
|
113
|
-
if (strapi.config.get('plugin.upload').provider !== previousSettings[inputName].provider) {
|
|
114
|
-
return;
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
// There was a previous file and an new file was uploaded
|
|
118
|
-
// Remove the previous file
|
|
119
|
-
strapi.plugin('upload').provider.delete(previousSettings[inputName]);
|
|
120
|
-
})
|
|
121
|
-
);
|
|
122
|
-
};
|
|
123
|
-
|
|
124
|
-
const updateProjectSettings = async newSettings => {
|
|
125
|
-
const store = strapi.store({ type: 'core', name: 'admin' });
|
|
126
|
-
const previousSettings = await store.get({ key: 'project-settings' });
|
|
127
|
-
const files = pick(newSettings, PROJECT_SETTINGS_FILE_INPUTS);
|
|
128
|
-
|
|
129
|
-
await uploadFiles(files);
|
|
130
|
-
|
|
131
|
-
PROJECT_SETTINGS_FILE_INPUTS.forEach(inputName => {
|
|
132
|
-
// If the user input exists but is not a formdata "file" remove it
|
|
133
|
-
if (newSettings[inputName] !== undefined && !(typeof newSettings[inputName] === 'object')) {
|
|
134
|
-
newSettings[inputName] = null;
|
|
135
|
-
return;
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
// If the user input is undefined reuse previous setting (do not update field)
|
|
139
|
-
if (!newSettings[inputName]) {
|
|
140
|
-
newSettings[inputName] = previousSettings[inputName];
|
|
141
|
-
return;
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
// Update the file
|
|
145
|
-
newSettings[inputName] = pick(newSettings[inputName], [
|
|
146
|
-
'name',
|
|
147
|
-
'hash',
|
|
148
|
-
'url',
|
|
149
|
-
'width',
|
|
150
|
-
'height',
|
|
151
|
-
'ext',
|
|
152
|
-
'size',
|
|
153
|
-
'provider',
|
|
154
|
-
]);
|
|
155
|
-
});
|
|
156
|
-
|
|
157
|
-
// No await to proceed asynchronously
|
|
158
|
-
deleteOldFiles({ previousSettings, newSettings });
|
|
159
|
-
|
|
160
|
-
await store.set({
|
|
161
|
-
key: 'project-settings',
|
|
162
|
-
value: { ...previousSettings, ...newSettings },
|
|
163
|
-
});
|
|
164
|
-
|
|
165
|
-
return getProjectSettings();
|
|
166
|
-
};
|
|
167
|
-
|
|
168
|
-
module.exports = {
|
|
169
|
-
deleteOldFiles,
|
|
170
|
-
parseFilesData,
|
|
171
|
-
getProjectSettings,
|
|
172
|
-
updateProjectSettings,
|
|
173
|
-
};
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
const { yup, validateYupSchemaSync } = require('@strapi/utils');
|
|
4
|
-
|
|
5
|
-
const MAX_IMAGE_WIDTH = 750;
|
|
6
|
-
const MAX_IMAGE_HEIGHT = MAX_IMAGE_WIDTH;
|
|
7
|
-
const MAX_IMAGE_FILE_SIZE = 1024 * 1024; // 1Mo
|
|
8
|
-
const ALLOWED_IMAGE_FILE_TYPES = ['image/jpeg', 'image/png', 'image/svg+xml'];
|
|
9
|
-
|
|
10
|
-
const updateProjectSettings = yup
|
|
11
|
-
.object({
|
|
12
|
-
menuLogo: yup.string(),
|
|
13
|
-
})
|
|
14
|
-
.noUnknown();
|
|
15
|
-
|
|
16
|
-
const updateProjectSettingsFiles = yup
|
|
17
|
-
.object({
|
|
18
|
-
menuLogo: yup.object({
|
|
19
|
-
name: yup.string(),
|
|
20
|
-
type: yup.string().oneOf(ALLOWED_IMAGE_FILE_TYPES),
|
|
21
|
-
size: yup.number().max(MAX_IMAGE_FILE_SIZE),
|
|
22
|
-
}),
|
|
23
|
-
})
|
|
24
|
-
.noUnknown();
|
|
25
|
-
|
|
26
|
-
const updateProjectSettingsImagesDimensions = yup.object({
|
|
27
|
-
menuLogo: yup.object({
|
|
28
|
-
width: yup.number().max(MAX_IMAGE_WIDTH),
|
|
29
|
-
height: yup.number().max(MAX_IMAGE_HEIGHT),
|
|
30
|
-
}),
|
|
31
|
-
});
|
|
32
|
-
|
|
33
|
-
module.exports = {
|
|
34
|
-
validateUpdateProjectSettings: validateYupSchemaSync(updateProjectSettings),
|
|
35
|
-
validateUpdateProjectSettingsFiles: validateYupSchemaSync(updateProjectSettingsFiles),
|
|
36
|
-
validateUpdateProjectSettingsImagesDimensions: validateYupSchemaSync(
|
|
37
|
-
updateProjectSettingsImagesDimensions
|
|
38
|
-
),
|
|
39
|
-
};
|