@strapi/admin 4.8.2 → 4.9.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/admin/src/content-manager/components/DynamicZone/utils/select.js +1 -1
- package/admin/src/content-manager/components/FieldComponent/utils/select.js +2 -1
- package/admin/src/content-manager/components/Inputs/utils/getInputType.js +1 -1
- package/admin/src/content-manager/components/Inputs/utils/select.js +1 -1
- package/admin/src/content-manager/hooks/useContentTypeLayout/index.js +1 -2
- package/admin/src/content-manager/hooks/useFetchContentTypeLayout/utils/formatLayouts.js +4 -1
- package/admin/src/content-manager/pages/CollectionTypeRecursivePath/index.js +1 -2
- package/admin/src/content-manager/pages/EditSettingsView/init.js +3 -1
- package/admin/src/content-manager/pages/EditSettingsView/utils/createPossibleMainFieldsForModelsAndComponents.js +2 -4
- package/admin/src/content-manager/pages/EditView/DeleteLink/utils/select.js +1 -1
- package/admin/src/content-manager/pages/EditView/utils/createAttributesLayout.js +2 -1
- package/admin/src/content-manager/pages/EditView/utils/getFieldsActionMatchingPermissions.js +2 -1
- package/admin/src/content-manager/utils/checkIfAttributeIsDisplayable.js +1 -1
- package/admin/src/content-manager/utils/createDefaultForm.js +2 -2
- package/admin/src/content-manager/utils/formatLayoutToApi.js +2 -1
- package/admin/src/content-manager/utils/getFieldName.js +1 -1
- package/admin/src/content-manager/utils/mergeMetasWithSchema.js +1 -1
- package/admin/src/content-manager/utils/paths.js +1 -1
- package/admin/src/content-manager/utils/removePasswordFieldsFromData.js +1 -1
- package/admin/src/hooks/useRegenerate/index.js +12 -7
- package/admin/src/hooks/useSettingsForm/index.js +3 -3
- package/admin/src/hooks/useSettingsForm/reducer.js +3 -1
- package/admin/src/hooks/useSettingsMenu/reducer.js +1 -1
- package/admin/src/pages/AuthPage/reducer.js +1 -1
- package/admin/src/pages/SettingsPage/components/Tokens/FormHead/index.js +4 -0
- package/admin/src/pages/SettingsPage/components/Tokens/Regenerate/index.js +5 -3
- package/admin/src/pages/SettingsPage/components/Tokens/TokenTypeSelect/index.js +7 -5
- package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/CollapsableContentType/index.js +1 -1
- package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/reducer.js +1 -1
- package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/utils/transformPermissionsData.js +6 -8
- package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ConditionsModal/utils/createDefaultConditionsForm.js +1 -1
- package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapse/Collapse/utils/generateCheckboxesActions.js +2 -1
- package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/ContentTypeCollapse/CollapsePropertyMatrix/ActionRow/utils/getRowLabelCheckboxeState.js +2 -1
- package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/GlobalActions/utils/getRowLabelCheckboxesState.js +1 -1
- package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/reducer.js +6 -1
- package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/utils/createDefaultCTFormFromLayout.js +5 -1
- package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/utils/createDefaultPluginsFormFromLayout.js +1 -2
- package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/utils/formatContentTypesPermissionToAPI.js +2 -2
- package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/utils/updateConditionsToFalse.js +4 -1
- package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/Permissions/utils/updateValues.js +1 -1
- package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/PluginsAndSettings/SubCategory/utils/formatActions.js +1 -1
- package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/utils/createArrayOfValues.js +2 -1
- package/admin/src/pages/SettingsPage/pages/Roles/ListPage/index.js +1 -1
- package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/components/FormTransferTokenContainer/index.js +41 -0
- package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/index.js +53 -9
- package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/utils/schema.js +1 -0
- package/admin/src/pages/SettingsPage/pages/TransferTokens/ListView/index.js +27 -5
- package/admin/src/pages/SettingsPage/pages/Users/ProtectedEditPage/index.js +2 -2
- package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/utils/formatData.js +1 -7
- package/admin/src/permissions/index.js +1 -1
- package/admin/src/translations/en.json +1 -0
- package/admin/src/utils/getAttributesToDisplay.js +2 -4
- package/admin/src/utils/getExistingActions.js +1 -3
- package/admin/src/utils/sortLinks.js +1 -1
- package/build/{8580.0aa21940.chunk.js → 2263.4c5916f9.chunk.js} +61 -61
- package/build/5563.aa832e5f.chunk.js +30 -0
- package/build/6985.66cca29c.chunk.js +1 -0
- package/build/7259.e6ef3b8e.chunk.js +1 -0
- package/build/{7112.2bf13da3.chunk.js → 9505.dbe702ab.chunk.js} +6 -6
- package/build/Admin-authenticatedApp.cb754f73.chunk.js +79 -0
- package/build/{Admin_profilePage.d2a8f9ab.chunk.js → Admin_profilePage.76afeca0.chunk.js} +1 -1
- package/build/{Admin_settingsPage.7450acfc.chunk.js → Admin_settingsPage.0aa4fcdc.chunk.js} +2 -2
- package/build/admin-app.50584489.chunk.js +112 -0
- package/build/admin-edit-roles-page.cf543488.chunk.js +216 -0
- package/build/admin-edit-users.31c20712.chunk.js +10 -0
- package/build/admin-roles-list.489c501f.chunk.js +2 -0
- package/build/{admin-users.af8c3123.chunk.js → admin-users.3e111a7d.chunk.js} +1 -1
- package/build/{api-tokens-create-page.4328b852.chunk.js → api-tokens-create-page.2a6e22bd.chunk.js} +1 -1
- package/build/{api-tokens-edit-page.bce5050f.chunk.js → api-tokens-edit-page.fa38cd63.chunk.js} +1 -1
- package/build/content-manager.f8b9710b.chunk.js +1139 -0
- package/build/content-type-builder.0f5dbcf1.chunk.js +126 -0
- package/build/{en-json.01a88a30.chunk.js → en-json.b052667a.chunk.js} +1 -1
- package/build/index.html +1 -1
- package/build/main.7fa3d343.js +3783 -0
- package/build/{runtime~main.05f8f4a1.js → runtime~main.03d11c09.js} +2 -2
- package/build/sso-settings-page.272b87c8.chunk.js +1 -0
- package/build/transfer-tokens-list-page.3c9b0280.chunk.js +16 -0
- package/build/users-advanced-settings-page.1d3c14c7.chunk.js +1 -0
- package/build/{users-email-settings-page.a3c80419.chunk.js → users-email-settings-page.e8db68c4.chunk.js} +1 -1
- package/build/users-providers-settings-page.14cac425.chunk.js +1 -0
- package/build/users-roles-settings-page.2ea4de84.chunk.js +30 -0
- package/build/{webhook-edit-page.a2a2b7bb.chunk.js → webhook-edit-page.329141a5.chunk.js} +3 -3
- package/ee/server/bootstrap.js +3 -0
- package/ee/server/utils/persisted-tables.js +49 -0
- package/package.json +11 -11
- package/server/controllers/transfer/runner.js +4 -2
- package/server/middlewares/data-transfer.js +4 -1
- package/server/routes/transfer.js +13 -4
- package/server/services/constants.js +4 -0
- package/server/services/permission/permissions-manager/sanitize.js +2 -0
- package/server/services/transfer/permission.js +1 -1
- package/server/services/transfer/token.js +33 -31
- package/server/validation/transfer/token.js +10 -2
- package/build/2637.679b590b.chunk.js +0 -1
- package/build/4649.33220ac3.chunk.js +0 -30
- package/build/7259.3675c199.chunk.js +0 -1
- package/build/Admin-authenticatedApp.26f0eff6.chunk.js +0 -79
- package/build/admin-app.c0729915.chunk.js +0 -112
- package/build/admin-edit-roles-page.3b196317.chunk.js +0 -216
- package/build/admin-edit-users.af3b0f15.chunk.js +0 -10
- package/build/admin-roles-list.0ad504a7.chunk.js +0 -2
- package/build/content-manager.b2578b87.chunk.js +0 -1139
- package/build/content-type-builder.a93f97ba.chunk.js +0 -126
- package/build/main.ed856941.js +0 -3809
- package/build/sso-settings-page.5a8588ef.chunk.js +0 -1
- package/build/transfer-tokens-list-page.ce37354b.chunk.js +0 -16
- package/build/users-advanced-settings-page.c0cae03a.chunk.js +0 -1
- package/build/users-providers-settings-page.5f86e45c.chunk.js +0 -1
- package/build/users-roles-settings-page.b02986df.chunk.js +0 -30
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5895],{61056:function(R,S,t){"use strict";t.r(S),t.d(S,{SettingsPage:function(){return oe},default:function(){return Ze}});var e=t(32735),g=t(13478),f=t(5141),n=t(39161),E=t(5636),I=t(99357),z=t(8888),x=t(
|
|
1
|
+
(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5895],{61056:function(R,S,t){"use strict";t.r(S),t.d(S,{SettingsPage:function(){return oe},default:function(){return Ze}});var e=t(32735),g=t(13478),f=t(5141),n=t(39161),E=t(5636),I=t(99357),z=t(8888),x=t(8997),P=t(84968),F=t(57269),G=t(72041),N=t(60216),i=t.n(N);const v=750,O=100,B=["image/jpeg","image/png","image/svg+xml"];var U=t(97889);const D={localImage:void 0};var j=(a=D,o)=>(0,U.default)(a,s=>{switch(o.type){case"SET_LOCAL_IMAGE":{s.localImage=o.value;break}default:return s}});const H=({onChangeLogo:a,customLogo:o,goTo:s,Component:l,modalTitle:d,next:u,prev:h,currentStep:m})=>{const[{localImage:c},r]=(0,e.useReducer)(j,D),{formatMessage:y}=(0,E.useIntl)(),p=M=>{r({type:"SET_LOCAL_IMAGE",value:M})},L=()=>{s(null)};return m?e.createElement(n.ModalLayout,{labelledBy:"modal",onClose:L},e.createElement(n.ModalHeader,null,e.createElement(n.Typography,{fontWeight:"bold",as:"h2",id:"modal"},y(d))),e.createElement(l,{setLocalImage:p,goTo:s,next:u,prev:h,onClose:L,asset:c||o,onChangeLogo:a})):null};H.defaultProps={Component:void 0,currentStep:void 0,customLogo:void 0,modalTitle:void 0,next:null,prev:null},H.propTypes={Component:i().elementType,currentStep:i().string,customLogo:i().shape({name:i().string,url:i().string,width:i().number,height:i().number,ext:i().string}),goTo:i().func.isRequired,modalTitle:i().shape({id:i().string,defaultMessage:i().string}),next:i().string,onChangeLogo:i().func.isRequired,prev:i().string};var ae=H;const Y={currentStep:void 0};var se=(a=Y,o)=>(0,U.default)(a,s=>{switch(o.type){case"GO_TO":{s.currentStep=o.to;break}default:return s}}),ie=t(83292);const le={id:"Settings.application.customization.modal.upload.error-format",defaultMessage:"Wrong format uploaded (accepted formats only: jpeg, jpg, png, svg)."},k={id:"Settings.application.customization.modal.upload.error-size",defaultMessage:"The file uploaded is too large (max dimension: {dimension}x{dimension}, max file size: {size}KB)"},re=a=>new Promise(o=>{const s=new FileReader;s.onload=()=>{const l=new Image;l.onload=function(){o({width:l.width,height:l.height})},l.src=s.result},s.readAsDataURL(a)}),de=(a,o)=>({ext:a.name.split(".").pop(),size:a.size/1e3,name:a.name,url:URL.createObjectURL(a),rawFile:a,width:o.width,height:o.height}),q=async a=>{let o;if(!B.includes(a.type))throw o=new Error("File format"),o.displayMessage=le,o;const l=await re(a);if(!(l.width<=v&&l.height<=v))throw o=new Error("File sizing"),o.displayMessage=k,o;const u=de(a,l);if(!(u.size<=O))throw o=new Error("File sizing"),o.displayMessage=k,o;return u},ce=(0,ie.default)(n.FieldInput)`
|
|
2
2
|
opacity: 0;
|
|
3
3
|
position: absolute;
|
|
4
4
|
top: 0;
|
|
@@ -6,4 +6,4 @@
|
|
|
6
6
|
left: 0;
|
|
7
7
|
right: 0;
|
|
8
8
|
z-index: 1;
|
|
9
|
-
`,K=({setLocalImage:a,goTo:o,next:s,onClose:l})=>{const{formatMessage:d}=(0,E.useIntl)(),[u,h]=(0,e.useState)(!1),[m,c]=(0,e.useState)(void 0),r=(0,e.useRef)(null),y=()=>h(!0),p=()=>h(!1),L=A=>{A.preventDefault(),r.current.click()},M=async()=>{p();const A=r.current.files[0];if(A)try{const C=await q(A);a(C),o(s)}catch(C){if(C.displayMessage)c(d(C.displayMessage,{size:O,dimension:v})),r.current.focus();else throw C}},T=()=>u?"primary500":m?"danger600":"neutral300";return e.createElement(e.Fragment,null,e.createElement("form",null,e.createElement(n.Box,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(n.Field,{name:"logo-upload",error:m},e.createElement("label",{htmlFor:"logo-upload"},e.createElement(n.Flex,{direction:"column",alignItems:"stretch",gap:2},e.createElement(n.Flex,{paddingTop:9,paddingBottom:7,hasRadius:!0,justifyContent:"center",direction:"column",background:u?"primary100":"neutral100",borderColor:T(),borderStyle:"dashed",borderWidth:"1px",position:"relative",onDragEnter:y,onDragLeave:p},e.createElement(n.Icon,{color:"primary600",width:`${60/16}rem`,height:`${60/16}rem`,as:F.PicturePlus,"aria-hidden":!0}),e.createElement(n.Box,{paddingTop:3,paddingBottom:5},e.createElement(n.Typography,{variant:"delta",as:"span"},d({id:"Settings.application.customization.modal.upload.drag-drop",defaultMessage:"Drag and Drop here or"}))),e.createElement(ce,{accept:B,cursor:"pointer",as:"input",type:"file",name:"files",tabIndex:-1,zIndex:1,onChange:M,ref:r,id:"logo-upload"}),e.createElement(n.Button,{type:"button",onClick:L},d({id:"Settings.application.customization.modal.upload.cta.browse",defaultMessage:"Browse files"})),e.createElement(n.Box,{paddingTop:6},e.createElement(n.Typography,{variant:"pi",textColor:"neutral600"},d({id:"Settings.application.customization.modal.upload.file-validation",defaultMessage:"Max dimension: {dimension}x{dimension}, Max size: {size}KB"},{size:O,dimension:v})))),e.createElement(n.FieldError,null)))))),e.createElement(n.ModalFooter,{startActions:e.createElement(n.Button,{onClick:l,variant:"tertiary"},d({id:"Settings.application.customization.modal.cancel",defaultMessage:"Cancel"}))}))};K.defaultProps={next:null},K.propTypes={goTo:i().func.isRequired,next:i().string,onClose:i().func.isRequired,setLocalImage:i().func.isRequired};var ue=K,me=t(84306),ge=async a=>{try{const o=await me.Z.get(a,{responseType:"blob",timeout:8e3});return new File([o.data],o.config.url,{type:o.headers["content-type"]})}catch(o){throw o.displayMessage={id:"Settings.application.customization.modal.upload.error-network",defaultMessage:"Network error"},o}};const Z=({goTo:a,next:o,onClose:s,setLocalImage:l})=>{const{formatMessage:d}=(0,E.useIntl)(),[u,h]=(0,e.useState)(""),[m,c]=(0,e.useState)(null),r=p=>{h(p.target.value)},y=async()=>{try{const p=await ge(u),L=await q(p);l(L),a(o)}catch(p){if(p.displayMessage)c(d(p.displayMessage,{size:O,dimension:v}));else throw p}};return e.createElement("form",{onSubmit:p=>{p.preventDefault(),y()}},e.createElement(n.Box,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(n.TextInput,{label:d({id:"Settings.application.customization.modal.upload.from-url.input-label",defaultMessage:"URL"}),error:m,onChange:r,value:u,name:"logo-url"})),e.createElement(n.ModalFooter,{startActions:e.createElement(n.Button,{onClick:s,variant:"tertiary"},d({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(n.Button,{type:"submit"},d({id:"Settings.application.customization.modal.upload.next",defaultMessage:"Next"}))}))};Z.defaultProps={next:null},Z.propTypes={goTo:i().func.isRequired,next:i().string,onClose:i().func.isRequired,setLocalImage:i().func.isRequired};var pe=Z;const $=({setLocalImage:a,goTo:o,next:s,onClose:l})=>{const{formatMessage:d}=(0,E.useIntl)();return e.createElement(n.TabGroup,{label:d({id:"Settings.application.customization.modal.tab.label",defaultMessage:"How do you want to upload your assets?"}),variant:"simple"},e.createElement(n.Box,{paddingLeft:8,paddingRight:8},e.createElement(n.Tabs,null,e.createElement(n.Tab,null,d({id:"Settings.application.customization.modal.upload.from-computer",defaultMessage:"From computer"})),e.createElement(n.Tab,null,d({id:"Settings.application.customization.modal.upload.from-url",defaultMessage:"From url"}))),e.createElement(n.Divider,null)),e.createElement(n.TabPanels,null,e.createElement(n.TabPanel,null,e.createElement(ue,{onClose:l,setLocalImage:a,goTo:o,next:s})),e.createElement(n.TabPanel,null,e.createElement(pe,{onClose:l,setLocalImage:a,goTo:o,next:s}))))};$.defaultProps={next:null},$.propTypes={goTo:i().func.isRequired,next:i().string,onClose:i().func.isRequired,setLocalImage:i().func.isRequired};var fe=$;const _=({asset:a})=>{const{formatMessage:o}=(0,E.useIntl)();return e.createElement(n.Card,null,e.createElement(n.CardHeader,null,e.createElement(n.CardAsset,{size:"S",src:a.url})),e.createElement(n.CardBody,null,e.createElement(n.CardContent,null,e.createElement(n.CardTitle,null,a.name),e.createElement(n.CardSubtitle,null,`${a.ext.toUpperCase()} - ${a.width}\u2715${a.height}`)),e.createElement(n.CardBadge,null,o({id:"Settings.application.customization.modal.pending.card-badge",defaultMessage:"image"}))))};_.propTypes={asset:i().shape({name:i().string,url:i().string,width:i().number,height:i().number,ext:i().string}).isRequired};var he=_;const V=({onClose:a,asset:o,prev:s,next:l,goTo:d,setLocalImage:u,onChangeLogo:h})=>{const{formatMessage:m}=(0,E.useIntl)(),c=()=>{u(void 0),d(s)},r=()=>{h(o),d(l)};return e.createElement(e.Fragment,null,e.createElement(n.Box,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(n.Flex,{justifyContent:"space-between",paddingBottom:6},e.createElement(n.Flex,{direction:"column",alignItems:"flex-start"},e.createElement(n.Typography,{variant:"pi",fontWeight:"bold"},m({id:"Settings.application.customization.modal.pending.title",defaultMessage:"Logo ready to upload"})),e.createElement(n.Typography,{variant:"pi",textColor:"neutral500"},m({id:"Settings.application.customization.modal.pending.subtitle",defaultMessage:"Manage the chosen logo before uploading it"}))),e.createElement(n.Button,{onClick:c,variant:"secondary"},m({id:"Settings.application.customization.modal.pending.choose-another",defaultMessage:"Choose another logo"}))),e.createElement(n.Box,{maxWidth:(0,g.pxToRem)(180)},e.createElement(he,{asset:o}))),e.createElement(n.ModalFooter,{startActions:e.createElement(n.Button,{onClick:a,variant:"tertiary"},m({id:"Settings.application.customization.modal.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(n.Button,{onClick:r},m({id:"Settings.application.customization.modal.pending.upload",defaultMessage:"Upload logo"}))}))};V.defaultProps={next:null,prev:null},V.propTypes={goTo:i().func.isRequired,asset:i().shape({name:i().string,url:i().string,width:i().number,height:i().number,ext:i().string}).isRequired,next:i().string,onClose:i().func.isRequired,onChangeLogo:i().func.isRequired,prev:i().string,setLocalImage:i().func.isRequired};var Ee=V,ye={upload:{Component:fe,modalTitle:{id:"Settings.application.customization.modal.upload",defaultMessage:"Upload logo"},next:"pending",prev:null},pending:{Component:Ee,modalTitle:{id:"Settings.application.customization.modal.pending",defaultMessage:"Pending logo"},next:null,prev:"upload"}};const Q=({canUpdate:a,customLogo:o,defaultLogo:s,hint:l,label:d,onChangeLogo:u,onResetLogo:h})=>{const[{currentStep:m},c]=(0,e.useReducer)(se,Y),{Component:r,next:y,prev:p,modalTitle:L}=ye[m]||{},{formatMessage:M}=(0,E.useIntl)(),T=A=>{c({type:"GO_TO",to:A})};return e.createElement(e.Fragment,null,e.createElement(n.CarouselInput,{label:d,selectedSlide:0,hint:l,previousLabel:"",nextLabel:"",onNext:()=>{},onPrevious:()=>{},secondaryLabel:o?.name||"logo.png",actions:e.createElement(n.CarouselActions,null,e.createElement(n.IconButton,{disabled:!a,onClick:()=>T(o?"pending":"upload"),label:M({id:"Settings.application.customization.carousel.change-action",defaultMessage:"Change logo"}),icon:e.createElement(F.Plus,null)}),o&&e.createElement(n.IconButton,{disabled:!a,onClick:h,label:M({id:"Settings.application.customization.carousel.reset-action",defaultMessage:"Reset logo"}),icon:e.createElement(F.Refresh,null)}))},e.createElement(n.CarouselSlide,{label:M({id:"Settings.application.customization.carousel-slide.label",defaultMessage:"Logo slide"})},e.createElement(n.Box,{maxHeight:"40%",maxWidth:"40%",as:"img",src:o?.url||s,alt:M({id:"Settings.application.customization.carousel.title",defaultMessage:"Logo"})}))),e.createElement(ae,{Component:r,currentStep:m,onChangeLogo:u,customLogo:o,goTo:T,next:y,prev:p,modalTitle:L}))};Q.defaultProps={canUpdate:!1,customLogo:null,hint:null},Q.propTypes={canUpdate:i().bool,customLogo:i().shape({url:i().string,name:i().string}),label:i().string.isRequired,hint:i().string,defaultLogo:i().string.isRequired,onChangeLogo:i().func.isRequired,onResetLogo:i().func.isRequired};var ee=Q;const w={menuLogo:{display:null,submit:{rawFile:null,isReset:!1}},authLogo:{display:null,submit:{rawFile:null,isReset:!1}}};var Me=(a=w,o)=>(0,U.default)(a,s=>{switch(o.type){case"SET_CUSTOM_MENU_LOGO":{s.menuLogo.display=o.value,s.menuLogo.submit.rawFile=o.value.rawFile;break}case"SET_CUSTOM_AUTH_LOGO":{s.authLogo.display=o.value,s.authLogo.submit.rawFile=o.value.rawFile;break}case"RESET_CUSTOM_MENU_LOGO":{s.menuLogo.display=null,s.menuLogo.submit={rawFile:null,isReset:!0};break}case"RESET_CUSTOM_AUTH_LOGO":{s.authLogo.display=null,s.authLogo.submit={rawFile:null,isReset:!0};break}default:return s}}),Se=t(86349),Le=t.n(Se),ve=(a,o)=>Le()(a,{menuLogo:{display:o.menuLogo},authLogo:{display:o.authLogo}});const J=(0,e.forwardRef)(({canUpdate:a,projectSettingsStored:o},s)=>{const{formatMessage:l}=(0,E.useIntl)(),{trackUsage:d}=(0,g.useTracking)(),{logos:{menu:u,auth:h}}=(0,z.um)(),[{menuLogo:m,authLogo:c},r]=(0,e.useReducer)(Me,w,()=>ve(w,o)),y=T=>{r({type:"SET_CUSTOM_MENU_LOGO",value:T})},p=()=>{d("didClickResetLogo",{logo:"menu"}),r({type:"RESET_CUSTOM_MENU_LOGO"})},L=T=>{r({type:"SET_CUSTOM_AUTH_LOGO",value:T})},M=()=>{d("didClickResetLogo",{logo:"auth"}),r({type:"RESET_CUSTOM_AUTH_LOGO"})};return(0,e.useImperativeHandle)(s,()=>({getValues:()=>({menuLogo:m.submit,authLogo:c.submit})})),e.createElement(n.Box,{hasRadius:!0,background:"neutral0",shadow:"tableShadow",paddingTop:6,paddingBottom:6,paddingRight:7,paddingLeft:7},e.createElement(n.Typography,{variant:"delta",as:"h3"},l({id:"Settings.application.customization",defaultMessage:"Customization"})),e.createElement(n.Typography,{variant:"pi",textColor:"neutral600"},l({id:"Settings.application.customization.size-details",defaultMessage:"Max dimension: {dimension}\xD7{dimension}, Max file size: {size}KB"},{dimension:v,size:O})),e.createElement(n.Grid,{paddingTop:4,gap:4},e.createElement(n.GridItem,{col:6,s:12},e.createElement(ee,{canUpdate:a,customLogo:m.display,defaultLogo:u.default,hint:l({id:"Settings.application.customization.menu-logo.carousel-hint",defaultMessage:"Replace the logo in the main navigation"}),label:l({id:"Settings.application.customization.carousel.menu-logo.title",defaultMessage:"Menu logo"}),onChangeLogo:y,onResetLogo:p})),e.createElement(n.GridItem,{col:6,s:12},e.createElement(ee,{canUpdate:a,customLogo:c.display,defaultLogo:h.default,hint:l({id:"Settings.application.customization.auth-logo.carousel-hint",defaultMessage:"Replace the logo in the authentication pages"}),label:l({id:"Settings.application.customization.carousel.auth-logo.title",defaultMessage:"Auth logo"}),onChangeLogo:L,onResetLogo:M}))))});J.defaultProps={canUpdate:!1,projectSettingsStored:null},J.propTypes={canUpdate:i().bool,projectSettingsStored:i().shape({menuLogo:i().shape({url:i().string,name:i().string})})};var Ce=J,Te=t(48344),xe=t.n(Te),te=a=>xe()(a,(o,s,l)=>{s&&s.url?o[l]={...s,url:(0,g.prefixFileUrlWithBackendUrl)(s.url)}:o[l]=s},{});const Re=async()=>{const{get:a}=(0,g.getFetchClient)(),{data:o}=await a("/admin/project-settings");return te(o)},Ie=async a=>{const{post:o}=(0,g.getFetchClient)(),{data:s}=await o("/admin/project-settings",a,{headers:{"Content-Type":"multipart/form-data"}});return te(s)};var Fe=a=>{const o=new FormData;return Object.entries(a).forEach(([s,l])=>{l&&l.rawFile instanceof File&&o.append(s,l.rawFile),l&&l.isReset&&o.append(s,null)}),o};const Ae=(()=>window&&window.strapi&&window.strapi.isEE?t(78999).Z:t(17891).Z)();var Oe=()=>{const a=(0,e.useRef)(),o=(0,g.useNotification)(),{trackUsage:s}=(0,g.useTracking)(),{formatMessage:l}=(0,E.useIntl)(),d=(0,P.useQueryClient)();(0,g.useFocusWhenNavigate)();const u=(0,g.useAppInfos)(),{latestStrapiReleaseTag:h,shouldUpdateStrapi:m,strapiVersion:c}=u,{updateProjectSettings:r}=(0,z.um)(),{allowedActions:{canRead:y,canUpdate:p}}=(0,g.useRBAC)(G.Z.settings["project-settings"]),L=y&&p,{data:M}=(0,P.useQuery)("project-settings",Re,{enabled:y}),T=(0,P.useMutation)(C=>Ie(C),{async onSuccess(C){let{menuLogo:b,authLogo:X}=C;await d.invalidateQueries("project-settings",{refetchActive:!0}),r({menuLogo:b?.url,authLogo:X?.url})}}),A=C=>{if(C.preventDefault(),!p)return;const b=a.current.getValues(),X=Fe(b);T.mutate(X,{onSuccess(){const{menuLogo:$e,authLogo:Ve}=b;$e.rawFile&&s("didChangeLogo",{logo:"menu"}),Ve.rawFile&&s("didChangeLogo",{logo:"auth"}),o({type:"success",message:l({id:"app",defaultMessage:"Saved"})})},onError(){o({type:"warning",message:{id:"notification.error",defaultMessage:"An error occurred"}})}})};return e.createElement(n.Layout,null,e.createElement(g.SettingsPageTitle,{name:"Application"}),e.createElement(n.Main,null,e.createElement("form",{onSubmit:A},e.createElement(n.HeaderLayout,{title:l({id:"Settings.application.title",defaultMessage:"Overview"}),subtitle:l({id:"Settings.application.description",defaultMessage:"Administration panel\u2019s global information"}),primaryAction:L&&e.createElement(n.Button,{type:"submit",startIcon:e.createElement(F.Check,null)},l({id:"global.save",defaultMessage:"Save"}))}),e.createElement(n.ContentLayout,null,e.createElement(n.Flex,{direction:"column",alignItems:"stretch",gap:6},e.createElement(n.Flex,{direction:"column",alignItems:"stretch",gap:4,hasRadius:!0,background:"neutral0",shadow:"tableShadow",paddingTop:6,paddingBottom:6,paddingRight:7,paddingLeft:7},e.createElement(n.Typography,{variant:"delta",as:"h3"},l({id:"global.details",defaultMessage:"Details"})),e.createElement(n.Grid,{gap:5,as:"dl"},e.createElement(n.GridItem,{col:6,s:12},e.createElement(n.Typography,{variant:"sigma",textColor:"neutral600",as:"dt"},l({id:"Settings.application.strapiVersion",defaultMessage:"strapi version"})),e.createElement(n.Flex,{gap:3,direction:"column",alignItems:"start",as:"dd"},e.createElement(n.Typography,null,"v",c),m&&e.createElement(n.Link,{href:`https://github.com/strapi/strapi/releases/tag/${h}`,isExternal:!0,endIcon:e.createElement(F.ExternalLink,null)},l({id:"Settings.application.link-upgrade",defaultMessage:"Upgrade your admin panel"})))),e.createElement(n.GridItem,{col:6,s:12},e.createElement(n.Typography,{variant:"sigma",textColor:"neutral600",as:"dt"},l({id:"Settings.application.edition-title",defaultMessage:"current plan"})),e.createElement(n.Flex,{gap:3,direction:"column",alignItems:"start",as:"dd"},e.createElement(n.Typography,null,l({id:"Settings.application.ee-or-ce",defaultMessage:"{communityEdition, select, true {Community Edition} other {Enterprise Edition}}"},{communityEdition:u.communityEdition})),e.createElement(n.Link,{href:"https://strapi.io/pricing-self-hosted",isExternal:!0,endIcon:e.createElement(F.ExternalLink,null)},l({id:"Settings.application.link-pricing",defaultMessage:"See all pricing plans"})))),e.createElement(n.GridItem,{col:6,s:12},e.createElement(n.Typography,{variant:"sigma",textColor:"neutral600",as:"dt"},l({id:"Settings.application.node-version",defaultMessage:"node version"})),e.createElement(n.Typography,{as:"dd"},u.nodeVersion)),e.createElement(Ae,null))),y&&M&&e.createElement(Ce,{canUpdate:p,ref:a,projectSettingsStored:M}))))))},ze=t(3704),Ue=t.n(ze),De=a=>Ue()(a,s=>s.links).map(s=>(0,x.ot)(s.Component,s.to,s.exact||!1)),Pe=a=>a.filter(o=>!o.links.every(s=>s.isDisplayed===!1)),Be=[{async Component(){return await Promise.all([t.e(8469),t.e(3455)]).then(t.bind(t,67249))},to:"/settings/roles",exact:!0},{async Component(){return await t.e(2544).then(t.bind(t,92034))},to:"/settings/roles/duplicate/:id",exact:!0},{async Component(){return await t.e(2544).then(t.bind(t,92034))},to:"/settings/roles/new",exact:!0},{async Component(){return await t.e(2544).then(t.bind(t,33778))},to:"/settings/roles/:id",exact:!0},{async Component(){return await t.e(5199).then(t.bind(t,54865))},to:"/settings/users",exact:!0},{async Component(){return await t.e(4263).then(t.bind(t,34669))},to:"/settings/users/:id",exact:!0},{async Component(){return await t.e(5162).then(t.bind(t,33238))},to:"/settings/webhooks/create",exact:!0},{async Component(){return await t.e(5162).then(t.bind(t,59021))},to:"/settings/webhooks/:id",exact:!0},{async Component(){return await t.e(4121).then(t.bind(t,70791))},to:"/settings/webhooks",exact:!0},{async Component(){return await t.e(8056).then(t.bind(t,37168))},to:"/settings/api-tokens",exact:!0},{async Component(){return await Promise.all([t.e(4049),t.e(4649),t.e(4299)]).then(t.bind(t,3330))},to:"/settings/api-tokens/create",exact:!0},{async Component(){return await Promise.all([t.e(4049),t.e(4649),t.e(92)]).then(t.bind(t,97841))},to:"/settings/api-tokens/:id",exact:!0},{async Component(){return await Promise.all([t.e(4049),t.e(7259),t.e(4816)]).then(t.bind(t,76411))},to:"/settings/transfer-tokens/create",exact:!0},{async Component(){return await t.e(9600).then(t.bind(t,38286))},to:"/settings/transfer-tokens",exact:!0},{async Component(){return await Promise.all([t.e(4049),t.e(7259),t.e(2492)]).then(t.bind(t,32392))},to:"/settings/transfer-tokens/:id",exact:!0}],be=[...(()=>window&&window.strapi&&window.strapi.isEE?t(63775).Z:t(75936).Z)(),...Be],Ge=t(61590),Ne=t(43110),We=t(77013),je=t(79318),He=t(66618);const ne=({menu:a})=>{const{formatMessage:o}=(0,E.useIntl)(),{trackUsage:s}=(0,g.useTracking)(),{pathname:l}=(0,f.useLocation)(),u=Pe(a).map(c=>({...c,title:c.intlLabel,links:c.links.map(r=>({...r,title:r.intlLabel,name:r.id}))})),h=o({id:"global.settings",defaultMessage:"Settings"}),m=(c=null)=>{s("willNavigate",{from:l,to:c})};return e.createElement(Ge.m,{ariaLabel:h},e.createElement(Ne.p,{label:h}),e.createElement(We.Z,null,u.map(c=>e.createElement(je.D,{key:c.id,label:o(c.intlLabel)},c.links.map(r=>e.createElement(He.E,{as:f.NavLink,withBullet:r.hasNotification,to:r.to,onClick:()=>m(r.to),key:r.id},o(r.intlLabel)))))))};ne.propTypes={menu:i().array.isRequired};var Ke=ne;function oe(){const{settingId:a}=(0,f.useParams)(),{settings:o}=(0,g.useStrapiApp)(),{formatMessage:s}=(0,E.useIntl)(),{isLoading:l,menu:d}=(0,z.Te)(),u=(0,e.useMemo)(()=>(0,x.WW)(be.map(({to:c,Component:r,exact:y})=>(0,x.ot)(r,c,y))),[]),h=De(o);if(l)return e.createElement(g.LoadingIndicatorPage,null);if(!a)return e.createElement(f.Redirect,{to:"/settings/application-infos"});const m=s({id:"global.settings",defaultMessage:"Settings"});return e.createElement(n.Layout,{sideNav:e.createElement(Ke,{menu:d})},e.createElement(I.Helmet,{title:m}),e.createElement(f.Switch,null,e.createElement(f.Route,{path:"/settings/application-infos",component:Oe,exact:!0}),u,h))}var Ze=(0,e.memo)(oe)},17891:function(R,S){"use strict";const t=()=>null;S.Z=t},75936:function(R,S){"use strict";const t=[];S.Z=t},78999:function(R,S,t){"use strict";var e=t(32735),g=t(5636),f=t(39161),n=t.n(f),E=t(41502),I=t(57269),z=t.n(I),x=t(13478),P=t.n(x),F=t(58414);const G="https://cloud.strapi.io/profile/billing",N="https://strapi.io/billing/request-seats",i=()=>{const{formatMessage:v}=(0,g.useIntl)(),{license:O}=(0,F.q5)(),{licenseLimitStatus:B,enforcementUserCount:U,permittedSeats:D,isHostedOnStrapiCloud:W}=O?.data??{};return D?e.createElement(f.GridItem,{col:6,s:12},e.createElement(f.Typography,{variant:"sigma",textColor:"neutral600"},v({id:"Settings.application.admin-seats",defaultMessage:"Admin seats"})),e.createElement(f.Flex,{gap:2},e.createElement(f.Flex,null,e.createElement(f.Typography,{as:"p"},v({id:"Settings.application.ee.admin-seats.count",defaultMessage:"<text>{enforcementUserCount}</text>/{permittedSeats}"},{permittedSeats:D,enforcementUserCount:U,text:j=>e.createElement(f.Typography,{fontWeight:"semiBold",textColor:U>D?"danger500":null},j)}))),B==="OVER_LIMIT"&&e.createElement(f.Tooltip,{description:v({id:"Settings.application.ee.admin-seats.at-limit-tooltip",defaultMessage:"At limit: add seats to invite more users"})},e.createElement(f.Icon,{width:`${(0,x.pxToRem)(14)}rem`,height:`${(0,x.pxToRem)(14)}rem`,color:"danger500",as:I.ExclamationMarkCircle}))),e.createElement(E.r,{href:W?G:N,isExternal:!0,endIcon:e.createElement(I.ExternalLink,null)},v({id:"Settings.application.ee.admin-seats.add-seats",defaultMessage:"{isHostedOnStrapiCloud, select, true {Add seats} other {Contact sales}}"},{isHostedOnStrapiCloud:W}))):null};S.Z=i},63775:function(R,S,t){"use strict";const e=[];strapi.features.isEnabled(strapi.features.SSO)&&e.push({async Component(){return await t.e(302).then(t.bind(t,26930))},to:"/settings/single-sign-on",exact:!0}),strapi.features.isEnabled(strapi.features.AUDIT_LOGS)&&e.push({async Component(){return await t.e(2812).then(t.bind(t,71765))},to:"/settings/audit-logs",exact:!0}),S.Z=e},3704:function(R,S,t){var e=t(40314),g=t(37213);function f(n,E){return e(g(n,E),1)}R.exports=f},37213:function(R,S,t){var e=t(26460),g=t(88904),f=t(52920),n=t(77236);function E(I,z){var x=n(I)?e:f;return x(I,g(z,3))}R.exports=E}}]);
|
|
9
|
+
`,K=({setLocalImage:a,goTo:o,next:s,onClose:l})=>{const{formatMessage:d}=(0,E.useIntl)(),[u,h]=(0,e.useState)(!1),[m,c]=(0,e.useState)(void 0),r=(0,e.useRef)(null),y=()=>h(!0),p=()=>h(!1),L=A=>{A.preventDefault(),r.current.click()},M=async()=>{p();const A=r.current.files[0];if(A)try{const C=await q(A);a(C),o(s)}catch(C){if(C.displayMessage)c(d(C.displayMessage,{size:O,dimension:v})),r.current.focus();else throw C}},T=()=>u?"primary500":m?"danger600":"neutral300";return e.createElement(e.Fragment,null,e.createElement("form",null,e.createElement(n.Box,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(n.Field,{name:"logo-upload",error:m},e.createElement("label",{htmlFor:"logo-upload"},e.createElement(n.Flex,{direction:"column",alignItems:"stretch",gap:2},e.createElement(n.Flex,{paddingTop:9,paddingBottom:7,hasRadius:!0,justifyContent:"center",direction:"column",background:u?"primary100":"neutral100",borderColor:T(),borderStyle:"dashed",borderWidth:"1px",position:"relative",onDragEnter:y,onDragLeave:p},e.createElement(n.Icon,{color:"primary600",width:`${60/16}rem`,height:`${60/16}rem`,as:F.PicturePlus,"aria-hidden":!0}),e.createElement(n.Box,{paddingTop:3,paddingBottom:5},e.createElement(n.Typography,{variant:"delta",as:"span"},d({id:"Settings.application.customization.modal.upload.drag-drop",defaultMessage:"Drag and Drop here or"}))),e.createElement(ce,{accept:B,cursor:"pointer",as:"input",type:"file",name:"files",tabIndex:-1,zIndex:1,onChange:M,ref:r,id:"logo-upload"}),e.createElement(n.Button,{type:"button",onClick:L},d({id:"Settings.application.customization.modal.upload.cta.browse",defaultMessage:"Browse files"})),e.createElement(n.Box,{paddingTop:6},e.createElement(n.Typography,{variant:"pi",textColor:"neutral600"},d({id:"Settings.application.customization.modal.upload.file-validation",defaultMessage:"Max dimension: {dimension}x{dimension}, Max size: {size}KB"},{size:O,dimension:v})))),e.createElement(n.FieldError,null)))))),e.createElement(n.ModalFooter,{startActions:e.createElement(n.Button,{onClick:l,variant:"tertiary"},d({id:"Settings.application.customization.modal.cancel",defaultMessage:"Cancel"}))}))};K.defaultProps={next:null},K.propTypes={goTo:i().func.isRequired,next:i().string,onClose:i().func.isRequired,setLocalImage:i().func.isRequired};var ue=K,me=t(84306),ge=async a=>{try{const o=await me.Z.get(a,{responseType:"blob",timeout:8e3});return new File([o.data],o.config.url,{type:o.headers["content-type"]})}catch(o){throw o.displayMessage={id:"Settings.application.customization.modal.upload.error-network",defaultMessage:"Network error"},o}};const Z=({goTo:a,next:o,onClose:s,setLocalImage:l})=>{const{formatMessage:d}=(0,E.useIntl)(),[u,h]=(0,e.useState)(""),[m,c]=(0,e.useState)(null),r=p=>{h(p.target.value)},y=async()=>{try{const p=await ge(u),L=await q(p);l(L),a(o)}catch(p){if(p.displayMessage)c(d(p.displayMessage,{size:O,dimension:v}));else throw p}};return e.createElement("form",{onSubmit:p=>{p.preventDefault(),y()}},e.createElement(n.Box,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(n.TextInput,{label:d({id:"Settings.application.customization.modal.upload.from-url.input-label",defaultMessage:"URL"}),error:m,onChange:r,value:u,name:"logo-url"})),e.createElement(n.ModalFooter,{startActions:e.createElement(n.Button,{onClick:s,variant:"tertiary"},d({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(n.Button,{type:"submit"},d({id:"Settings.application.customization.modal.upload.next",defaultMessage:"Next"}))}))};Z.defaultProps={next:null},Z.propTypes={goTo:i().func.isRequired,next:i().string,onClose:i().func.isRequired,setLocalImage:i().func.isRequired};var pe=Z;const $=({setLocalImage:a,goTo:o,next:s,onClose:l})=>{const{formatMessage:d}=(0,E.useIntl)();return e.createElement(n.TabGroup,{label:d({id:"Settings.application.customization.modal.tab.label",defaultMessage:"How do you want to upload your assets?"}),variant:"simple"},e.createElement(n.Box,{paddingLeft:8,paddingRight:8},e.createElement(n.Tabs,null,e.createElement(n.Tab,null,d({id:"Settings.application.customization.modal.upload.from-computer",defaultMessage:"From computer"})),e.createElement(n.Tab,null,d({id:"Settings.application.customization.modal.upload.from-url",defaultMessage:"From url"}))),e.createElement(n.Divider,null)),e.createElement(n.TabPanels,null,e.createElement(n.TabPanel,null,e.createElement(ue,{onClose:l,setLocalImage:a,goTo:o,next:s})),e.createElement(n.TabPanel,null,e.createElement(pe,{onClose:l,setLocalImage:a,goTo:o,next:s}))))};$.defaultProps={next:null},$.propTypes={goTo:i().func.isRequired,next:i().string,onClose:i().func.isRequired,setLocalImage:i().func.isRequired};var fe=$;const _=({asset:a})=>{const{formatMessage:o}=(0,E.useIntl)();return e.createElement(n.Card,null,e.createElement(n.CardHeader,null,e.createElement(n.CardAsset,{size:"S",src:a.url})),e.createElement(n.CardBody,null,e.createElement(n.CardContent,null,e.createElement(n.CardTitle,null,a.name),e.createElement(n.CardSubtitle,null,`${a.ext.toUpperCase()} - ${a.width}\u2715${a.height}`)),e.createElement(n.CardBadge,null,o({id:"Settings.application.customization.modal.pending.card-badge",defaultMessage:"image"}))))};_.propTypes={asset:i().shape({name:i().string,url:i().string,width:i().number,height:i().number,ext:i().string}).isRequired};var he=_;const V=({onClose:a,asset:o,prev:s,next:l,goTo:d,setLocalImage:u,onChangeLogo:h})=>{const{formatMessage:m}=(0,E.useIntl)(),c=()=>{u(void 0),d(s)},r=()=>{h(o),d(l)};return e.createElement(e.Fragment,null,e.createElement(n.Box,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(n.Flex,{justifyContent:"space-between",paddingBottom:6},e.createElement(n.Flex,{direction:"column",alignItems:"flex-start"},e.createElement(n.Typography,{variant:"pi",fontWeight:"bold"},m({id:"Settings.application.customization.modal.pending.title",defaultMessage:"Logo ready to upload"})),e.createElement(n.Typography,{variant:"pi",textColor:"neutral500"},m({id:"Settings.application.customization.modal.pending.subtitle",defaultMessage:"Manage the chosen logo before uploading it"}))),e.createElement(n.Button,{onClick:c,variant:"secondary"},m({id:"Settings.application.customization.modal.pending.choose-another",defaultMessage:"Choose another logo"}))),e.createElement(n.Box,{maxWidth:(0,g.pxToRem)(180)},e.createElement(he,{asset:o}))),e.createElement(n.ModalFooter,{startActions:e.createElement(n.Button,{onClick:a,variant:"tertiary"},m({id:"Settings.application.customization.modal.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(n.Button,{onClick:r},m({id:"Settings.application.customization.modal.pending.upload",defaultMessage:"Upload logo"}))}))};V.defaultProps={next:null,prev:null},V.propTypes={goTo:i().func.isRequired,asset:i().shape({name:i().string,url:i().string,width:i().number,height:i().number,ext:i().string}).isRequired,next:i().string,onClose:i().func.isRequired,onChangeLogo:i().func.isRequired,prev:i().string,setLocalImage:i().func.isRequired};var Ee=V,ye={upload:{Component:fe,modalTitle:{id:"Settings.application.customization.modal.upload",defaultMessage:"Upload logo"},next:"pending",prev:null},pending:{Component:Ee,modalTitle:{id:"Settings.application.customization.modal.pending",defaultMessage:"Pending logo"},next:null,prev:"upload"}};const Q=({canUpdate:a,customLogo:o,defaultLogo:s,hint:l,label:d,onChangeLogo:u,onResetLogo:h})=>{const[{currentStep:m},c]=(0,e.useReducer)(se,Y),{Component:r,next:y,prev:p,modalTitle:L}=ye[m]||{},{formatMessage:M}=(0,E.useIntl)(),T=A=>{c({type:"GO_TO",to:A})};return e.createElement(e.Fragment,null,e.createElement(n.CarouselInput,{label:d,selectedSlide:0,hint:l,previousLabel:"",nextLabel:"",onNext:()=>{},onPrevious:()=>{},secondaryLabel:o?.name||"logo.png",actions:e.createElement(n.CarouselActions,null,e.createElement(n.IconButton,{disabled:!a,onClick:()=>T(o?"pending":"upload"),label:M({id:"Settings.application.customization.carousel.change-action",defaultMessage:"Change logo"}),icon:e.createElement(F.Plus,null)}),o&&e.createElement(n.IconButton,{disabled:!a,onClick:h,label:M({id:"Settings.application.customization.carousel.reset-action",defaultMessage:"Reset logo"}),icon:e.createElement(F.Refresh,null)}))},e.createElement(n.CarouselSlide,{label:M({id:"Settings.application.customization.carousel-slide.label",defaultMessage:"Logo slide"})},e.createElement(n.Box,{maxHeight:"40%",maxWidth:"40%",as:"img",src:o?.url||s,alt:M({id:"Settings.application.customization.carousel.title",defaultMessage:"Logo"})}))),e.createElement(ae,{Component:r,currentStep:m,onChangeLogo:u,customLogo:o,goTo:T,next:y,prev:p,modalTitle:L}))};Q.defaultProps={canUpdate:!1,customLogo:null,hint:null},Q.propTypes={canUpdate:i().bool,customLogo:i().shape({url:i().string,name:i().string}),label:i().string.isRequired,hint:i().string,defaultLogo:i().string.isRequired,onChangeLogo:i().func.isRequired,onResetLogo:i().func.isRequired};var ee=Q;const w={menuLogo:{display:null,submit:{rawFile:null,isReset:!1}},authLogo:{display:null,submit:{rawFile:null,isReset:!1}}};var Me=(a=w,o)=>(0,U.default)(a,s=>{switch(o.type){case"SET_CUSTOM_MENU_LOGO":{s.menuLogo.display=o.value,s.menuLogo.submit.rawFile=o.value.rawFile;break}case"SET_CUSTOM_AUTH_LOGO":{s.authLogo.display=o.value,s.authLogo.submit.rawFile=o.value.rawFile;break}case"RESET_CUSTOM_MENU_LOGO":{s.menuLogo.display=null,s.menuLogo.submit={rawFile:null,isReset:!0};break}case"RESET_CUSTOM_AUTH_LOGO":{s.authLogo.display=null,s.authLogo.submit={rawFile:null,isReset:!0};break}default:return s}}),Se=t(86349),Le=t.n(Se),ve=(a,o)=>Le()(a,{menuLogo:{display:o.menuLogo},authLogo:{display:o.authLogo}});const J=(0,e.forwardRef)(({canUpdate:a,projectSettingsStored:o},s)=>{const{formatMessage:l}=(0,E.useIntl)(),{trackUsage:d}=(0,g.useTracking)(),{logos:{menu:u,auth:h}}=(0,z.um)(),[{menuLogo:m,authLogo:c},r]=(0,e.useReducer)(Me,w,()=>ve(w,o)),y=T=>{r({type:"SET_CUSTOM_MENU_LOGO",value:T})},p=()=>{d("didClickResetLogo",{logo:"menu"}),r({type:"RESET_CUSTOM_MENU_LOGO"})},L=T=>{r({type:"SET_CUSTOM_AUTH_LOGO",value:T})},M=()=>{d("didClickResetLogo",{logo:"auth"}),r({type:"RESET_CUSTOM_AUTH_LOGO"})};return(0,e.useImperativeHandle)(s,()=>({getValues:()=>({menuLogo:m.submit,authLogo:c.submit})})),e.createElement(n.Box,{hasRadius:!0,background:"neutral0",shadow:"tableShadow",paddingTop:6,paddingBottom:6,paddingRight:7,paddingLeft:7},e.createElement(n.Typography,{variant:"delta",as:"h3"},l({id:"Settings.application.customization",defaultMessage:"Customization"})),e.createElement(n.Typography,{variant:"pi",textColor:"neutral600"},l({id:"Settings.application.customization.size-details",defaultMessage:"Max dimension: {dimension}\xD7{dimension}, Max file size: {size}KB"},{dimension:v,size:O})),e.createElement(n.Grid,{paddingTop:4,gap:4},e.createElement(n.GridItem,{col:6,s:12},e.createElement(ee,{canUpdate:a,customLogo:m.display,defaultLogo:u.default,hint:l({id:"Settings.application.customization.menu-logo.carousel-hint",defaultMessage:"Replace the logo in the main navigation"}),label:l({id:"Settings.application.customization.carousel.menu-logo.title",defaultMessage:"Menu logo"}),onChangeLogo:y,onResetLogo:p})),e.createElement(n.GridItem,{col:6,s:12},e.createElement(ee,{canUpdate:a,customLogo:c.display,defaultLogo:h.default,hint:l({id:"Settings.application.customization.auth-logo.carousel-hint",defaultMessage:"Replace the logo in the authentication pages"}),label:l({id:"Settings.application.customization.carousel.auth-logo.title",defaultMessage:"Auth logo"}),onChangeLogo:L,onResetLogo:M}))))});J.defaultProps={canUpdate:!1,projectSettingsStored:null},J.propTypes={canUpdate:i().bool,projectSettingsStored:i().shape({menuLogo:i().shape({url:i().string,name:i().string})})};var Ce=J,Te=t(48344),xe=t.n(Te),te=a=>xe()(a,(o,s,l)=>{s&&s.url?o[l]={...s,url:(0,g.prefixFileUrlWithBackendUrl)(s.url)}:o[l]=s},{});const Re=async()=>{const{get:a}=(0,g.getFetchClient)(),{data:o}=await a("/admin/project-settings");return te(o)},Ie=async a=>{const{post:o}=(0,g.getFetchClient)(),{data:s}=await o("/admin/project-settings",a,{headers:{"Content-Type":"multipart/form-data"}});return te(s)};var Fe=a=>{const o=new FormData;return Object.entries(a).forEach(([s,l])=>{l&&l.rawFile instanceof File&&o.append(s,l.rawFile),l&&l.isReset&&o.append(s,null)}),o};const Ae=(()=>window&&window.strapi&&window.strapi.isEE?t(78999).Z:t(17891).Z)();var Oe=()=>{const a=(0,e.useRef)(),o=(0,g.useNotification)(),{trackUsage:s}=(0,g.useTracking)(),{formatMessage:l}=(0,E.useIntl)(),d=(0,P.useQueryClient)();(0,g.useFocusWhenNavigate)();const u=(0,g.useAppInfos)(),{latestStrapiReleaseTag:h,shouldUpdateStrapi:m,strapiVersion:c}=u,{updateProjectSettings:r}=(0,z.um)(),{allowedActions:{canRead:y,canUpdate:p}}=(0,g.useRBAC)(G.Z.settings["project-settings"]),L=y&&p,{data:M}=(0,P.useQuery)("project-settings",Re,{enabled:y}),T=(0,P.useMutation)(C=>Ie(C),{async onSuccess(C){let{menuLogo:b,authLogo:X}=C;await d.invalidateQueries("project-settings",{refetchActive:!0}),r({menuLogo:b?.url,authLogo:X?.url})}}),A=C=>{if(C.preventDefault(),!p)return;const b=a.current.getValues(),X=Fe(b);T.mutate(X,{onSuccess(){const{menuLogo:$e,authLogo:Ve}=b;$e.rawFile&&s("didChangeLogo",{logo:"menu"}),Ve.rawFile&&s("didChangeLogo",{logo:"auth"}),o({type:"success",message:l({id:"app",defaultMessage:"Saved"})})},onError(){o({type:"warning",message:{id:"notification.error",defaultMessage:"An error occurred"}})}})};return e.createElement(n.Layout,null,e.createElement(g.SettingsPageTitle,{name:"Application"}),e.createElement(n.Main,null,e.createElement("form",{onSubmit:A},e.createElement(n.HeaderLayout,{title:l({id:"Settings.application.title",defaultMessage:"Overview"}),subtitle:l({id:"Settings.application.description",defaultMessage:"Administration panel\u2019s global information"}),primaryAction:L&&e.createElement(n.Button,{type:"submit",startIcon:e.createElement(F.Check,null)},l({id:"global.save",defaultMessage:"Save"}))}),e.createElement(n.ContentLayout,null,e.createElement(n.Flex,{direction:"column",alignItems:"stretch",gap:6},e.createElement(n.Flex,{direction:"column",alignItems:"stretch",gap:4,hasRadius:!0,background:"neutral0",shadow:"tableShadow",paddingTop:6,paddingBottom:6,paddingRight:7,paddingLeft:7},e.createElement(n.Typography,{variant:"delta",as:"h3"},l({id:"global.details",defaultMessage:"Details"})),e.createElement(n.Grid,{gap:5,as:"dl"},e.createElement(n.GridItem,{col:6,s:12},e.createElement(n.Typography,{variant:"sigma",textColor:"neutral600",as:"dt"},l({id:"Settings.application.strapiVersion",defaultMessage:"strapi version"})),e.createElement(n.Flex,{gap:3,direction:"column",alignItems:"start",as:"dd"},e.createElement(n.Typography,null,"v",c),m&&e.createElement(n.Link,{href:`https://github.com/strapi/strapi/releases/tag/${h}`,isExternal:!0,endIcon:e.createElement(F.ExternalLink,null)},l({id:"Settings.application.link-upgrade",defaultMessage:"Upgrade your admin panel"})))),e.createElement(n.GridItem,{col:6,s:12},e.createElement(n.Typography,{variant:"sigma",textColor:"neutral600",as:"dt"},l({id:"Settings.application.edition-title",defaultMessage:"current plan"})),e.createElement(n.Flex,{gap:3,direction:"column",alignItems:"start",as:"dd"},e.createElement(n.Typography,null,l({id:"Settings.application.ee-or-ce",defaultMessage:"{communityEdition, select, true {Community Edition} other {Enterprise Edition}}"},{communityEdition:u.communityEdition})),e.createElement(n.Link,{href:"https://strapi.io/pricing-self-hosted",isExternal:!0,endIcon:e.createElement(F.ExternalLink,null)},l({id:"Settings.application.link-pricing",defaultMessage:"See all pricing plans"})))),e.createElement(n.GridItem,{col:6,s:12},e.createElement(n.Typography,{variant:"sigma",textColor:"neutral600",as:"dt"},l({id:"Settings.application.node-version",defaultMessage:"node version"})),e.createElement(n.Typography,{as:"dd"},u.nodeVersion)),e.createElement(Ae,null))),y&&M&&e.createElement(Ce,{canUpdate:p,ref:a,projectSettingsStored:M}))))))},ze=t(3704),Ue=t.n(ze),De=a=>Ue()(a,s=>s.links).map(s=>(0,x.ot)(s.Component,s.to,s.exact||!1)),Pe=a=>a.filter(o=>!o.links.every(s=>s.isDisplayed===!1)),Be=[{async Component(){return await Promise.all([t.e(8469),t.e(3455)]).then(t.bind(t,67249))},to:"/settings/roles",exact:!0},{async Component(){return await t.e(2544).then(t.bind(t,92034))},to:"/settings/roles/duplicate/:id",exact:!0},{async Component(){return await t.e(2544).then(t.bind(t,92034))},to:"/settings/roles/new",exact:!0},{async Component(){return await t.e(2544).then(t.bind(t,33778))},to:"/settings/roles/:id",exact:!0},{async Component(){return await t.e(5199).then(t.bind(t,54865))},to:"/settings/users",exact:!0},{async Component(){return await t.e(4263).then(t.bind(t,34669))},to:"/settings/users/:id",exact:!0},{async Component(){return await t.e(5162).then(t.bind(t,33238))},to:"/settings/webhooks/create",exact:!0},{async Component(){return await t.e(5162).then(t.bind(t,59021))},to:"/settings/webhooks/:id",exact:!0},{async Component(){return await t.e(4121).then(t.bind(t,70791))},to:"/settings/webhooks",exact:!0},{async Component(){return await t.e(8056).then(t.bind(t,37168))},to:"/settings/api-tokens",exact:!0},{async Component(){return await Promise.all([t.e(4049),t.e(5563),t.e(4299)]).then(t.bind(t,3330))},to:"/settings/api-tokens/create",exact:!0},{async Component(){return await Promise.all([t.e(4049),t.e(5563),t.e(92)]).then(t.bind(t,97841))},to:"/settings/api-tokens/:id",exact:!0},{async Component(){return await Promise.all([t.e(4049),t.e(7259),t.e(4816)]).then(t.bind(t,76411))},to:"/settings/transfer-tokens/create",exact:!0},{async Component(){return await t.e(9600).then(t.bind(t,38286))},to:"/settings/transfer-tokens",exact:!0},{async Component(){return await Promise.all([t.e(4049),t.e(7259),t.e(2492)]).then(t.bind(t,32392))},to:"/settings/transfer-tokens/:id",exact:!0}],be=[...(()=>window&&window.strapi&&window.strapi.isEE?t(63775).Z:t(75936).Z)(),...Be],Ge=t(61590),Ne=t(43110),We=t(77013),je=t(79318),He=t(66618);const ne=({menu:a})=>{const{formatMessage:o}=(0,E.useIntl)(),{trackUsage:s}=(0,g.useTracking)(),{pathname:l}=(0,f.useLocation)(),u=Pe(a).map(c=>({...c,title:c.intlLabel,links:c.links.map(r=>({...r,title:r.intlLabel,name:r.id}))})),h=o({id:"global.settings",defaultMessage:"Settings"}),m=(c=null)=>{s("willNavigate",{from:l,to:c})};return e.createElement(Ge.m,{ariaLabel:h},e.createElement(Ne.p,{label:h}),e.createElement(We.Z,null,u.map(c=>e.createElement(je.D,{key:c.id,label:o(c.intlLabel)},c.links.map(r=>e.createElement(He.E,{as:f.NavLink,withBullet:r.hasNotification,to:r.to,onClick:()=>m(r.to),key:r.id},o(r.intlLabel)))))))};ne.propTypes={menu:i().array.isRequired};var Ke=ne;function oe(){const{settingId:a}=(0,f.useParams)(),{settings:o}=(0,g.useStrapiApp)(),{formatMessage:s}=(0,E.useIntl)(),{isLoading:l,menu:d}=(0,z.Te)(),u=(0,e.useMemo)(()=>(0,x.WW)(be.map(({to:c,Component:r,exact:y})=>(0,x.ot)(r,c,y))),[]),h=De(o);if(l)return e.createElement(g.LoadingIndicatorPage,null);if(!a)return e.createElement(f.Redirect,{to:"/settings/application-infos"});const m=s({id:"global.settings",defaultMessage:"Settings"});return e.createElement(n.Layout,{sideNav:e.createElement(Ke,{menu:d})},e.createElement(I.Helmet,{title:m}),e.createElement(f.Switch,null,e.createElement(f.Route,{path:"/settings/application-infos",component:Oe,exact:!0}),u,h))}var Ze=(0,e.memo)(oe)},17891:function(R,S){"use strict";const t=()=>null;S.Z=t},75936:function(R,S){"use strict";const t=[];S.Z=t},78999:function(R,S,t){"use strict";var e=t(32735),g=t(5636),f=t(39161),n=t.n(f),E=t(41502),I=t(57269),z=t.n(I),x=t(13478),P=t.n(x),F=t(58414);const G="https://cloud.strapi.io/profile/billing",N="https://strapi.io/billing/request-seats",i=()=>{const{formatMessage:v}=(0,g.useIntl)(),{license:O}=(0,F.q5)(),{licenseLimitStatus:B,enforcementUserCount:U,permittedSeats:D,isHostedOnStrapiCloud:W}=O?.data??{};return D?e.createElement(f.GridItem,{col:6,s:12},e.createElement(f.Typography,{variant:"sigma",textColor:"neutral600"},v({id:"Settings.application.admin-seats",defaultMessage:"Admin seats"})),e.createElement(f.Flex,{gap:2},e.createElement(f.Flex,null,e.createElement(f.Typography,{as:"p"},v({id:"Settings.application.ee.admin-seats.count",defaultMessage:"<text>{enforcementUserCount}</text>/{permittedSeats}"},{permittedSeats:D,enforcementUserCount:U,text:j=>e.createElement(f.Typography,{fontWeight:"semiBold",textColor:U>D?"danger500":null},j)}))),B==="OVER_LIMIT"&&e.createElement(f.Tooltip,{description:v({id:"Settings.application.ee.admin-seats.at-limit-tooltip",defaultMessage:"At limit: add seats to invite more users"})},e.createElement(f.Icon,{width:`${(0,x.pxToRem)(14)}rem`,height:`${(0,x.pxToRem)(14)}rem`,color:"danger500",as:I.ExclamationMarkCircle}))),e.createElement(E.r,{href:W?G:N,isExternal:!0,endIcon:e.createElement(I.ExternalLink,null)},v({id:"Settings.application.ee.admin-seats.add-seats",defaultMessage:"{isHostedOnStrapiCloud, select, true {Add seats} other {Contact sales}}"},{isHostedOnStrapiCloud:W}))):null};S.Z=i},63775:function(R,S,t){"use strict";const e=[];strapi.features.isEnabled(strapi.features.SSO)&&e.push({async Component(){return await t.e(302).then(t.bind(t,26930))},to:"/settings/single-sign-on",exact:!0}),strapi.features.isEnabled(strapi.features.AUDIT_LOGS)&&e.push({async Component(){return await t.e(2812).then(t.bind(t,71765))},to:"/settings/audit-logs",exact:!0}),S.Z=e},3704:function(R,S,t){var e=t(40314),g=t(37213);function f(n,E){return e(g(n,E),1)}R.exports=f},37213:function(R,S,t){var e=t(26460),g=t(88904),f=t(52920),n=t(77236);function E(I,z){var x=n(I)?e:f;return x(I,g(z,3))}R.exports=E}}]);
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5538],{90597:function(O,E,t){"use strict";t.r(E),t.d(E,{default:function(){return Rs}});var e=t(32735),r=t(5141),n=t(39161),f=t(86349),m=t.n(f),g=t(88423),c=t.n(g),_=t(93839),R=t.n(_),j=t(56784),v=t.n(j),x=t(99357),T=t(463),W=()=>{const u=[];return{register(s){u.push(s)},delete(s){u.splice(u.indexOf(s),1)},runWaterfall(s,o){return u.reduce((i,d)=>d(i,o),s)},async runWaterfallAsync(s,o){let i=s;for(const d of u)i=await d(i,o);return i},runSeries(...s){return u.map(o=>o(...s))},async runSeriesAsync(...s){const o=[];for(const i of u)o.push(await i(...s));return o},runParallel(...s){return Promise.all(u.map(o=>o(...s)))}}},M=t(13055);const w=(u,s)=>{let o=M.compose;const i=[];u.forEach(y=>{i.push(y())});const d=(0,M.createStore)($(s,{}),{},o((0,M.applyMiddleware)(...i)));return d.asyncReducers={},d.injectReducer=(y,C)=>{d.asyncReducers[y]=C,d.replaceReducer($(s,d.asyncReducers))},d},$=(u,s)=>(0,M.combineReducers)({...u,...s});var z=w,ae=t(20284),P=t(13478),S=t(84306),A=t(5636),Z=t(60216),a=t.n(Z);const le=({component:u,path:s,...o})=>{const{pathname:i,search:d}=(0,r.useLocation)();return e.createElement(r.Route,{path:s,render:y=>P.auth.getToken()!==null?e.createElement(u,{...o,...y}):e.createElement(r.Redirect,{to:{pathname:"/auth/login",search:i!=="/"&&`?redirectTo=${encodeURIComponent(`${i}${d}`)}`}})})};le.propTypes={component:a().any.isRequired,path:a().string.isRequired};var Ae=(0,e.memo)(le),Be=t(8997),Ge=t(20011),_e=t(39935),ve=t.n(_e),Ne=t(33795),pe=t.n(Ne),Xe=t(9086),qe=t.n(Xe);const He="GUIDED_TOUR_CURRENT_STEP",N="GUIDED_TOUR_COMPLETED_STEPS",Le="GUIDED_TOUR_SKIPPED",te=JSON.parse,Te=JSON.stringify;var ue={clear(){localStorage.removeItem(He),localStorage.removeItem(N)},addCompletedStep(u){const s=te(localStorage.getItem(N))?.slice()||[];s.includes(u)||(s.push(u),localStorage.setItem(N,Te(s)))},addCurrentStep(u){localStorage.setItem(He,Te(u))},setSkipped(u){localStorage.setItem(Le,Te(u))},get(u){return te(localStorage.getItem(u))}},re=t(20139),je=t(41832),be=u=>u,he=t(97889),Pe=t(3040),Ke=t.n(Pe);const Fe={formErrors:{},modifiedData:{},requestError:null},et=(u,s)=>(0,he.default)(u,o=>{switch(s.type){case"ON_CHANGE":{Ke()(o.modifiedData,s.keys.split("."),s.value);break}case"RESET_PROPS":return Fe;case"SET_DATA":{o.modifiedData=s.data;break}case"SET_ERRORS":{o.formErrors=s.errors;break}case"SET_REQUEST_ERROR":{o.requestError={errorMessage:s.errorMessage,errorStatus:s.errorStatus};break}default:return o}}),$e=(()=>window&&window.strapi&&window.strapi.isEE?t(7277).Z:t(56355).Z)(),V=u=>{let{hasAdmin:s,setHasAdmin:o}=u;const{push:i,location:{search:d}}=(0,r.useHistory)(),{changeLocale:y}=(0,re.Z)(),{setSkipped:C}=(0,P.useGuidedTour)(),{trackUsage:I}=(0,P.useTracking)(),{params:{authType:k}}=(0,r.useRouteMatch)("/auth/:authType"),Q=(0,P.useQuery)(),{Component:H,endPoint:b,fieldsToDisable:J,fieldsToOmit:K,inputsPrefix:ee,schema:F,...de}=pe()($e,k,{}),[{formErrors:Re,modifiedData:it,requestError:lt},Qe]=(0,e.useReducer)(et,Fe,be),We=S.Z.CancelToken.source();(0,e.useEffect)(()=>()=>{We.cancel("Component unmounted")},[]),(0,e.useEffect)(()=>{Qe({type:"RESET_PROPS"})},[k]);const Cs=ne=>{let{target:{name:ye,value:fe}}=ne;Qe({type:"ON_CHANGE",keys:ye,value:fe})},As=async(ne,ye)=>{let{setSubmitting:fe,setErrors:Ce}=ye;fe(!0);const Ue=qe()(ne,K),q=`/admin/${b}`;k==="login"&&await Ms(ne,q,{setSubmitting:fe,setErrors:Ce}),(k==="register"||k==="register-admin")&&await Ss(ne,q,{setSubmitting:fe,setErrors:Ce}),k==="forgot-password"&&await Ls(Ue,q,{setSubmitting:fe,setErrors:Ce}),k==="reset-password"&&await Ds(Ue,q,{setSubmitting:fe,setErrors:Ce})},Ls=async(ne,ye,fe)=>{let{setSubmitting:Ce,setErrors:Ue}=fe;try{await(0,S.Z)({method:"POST",url:`${strapi.backendURL}${ye}`,data:ne,cancelToken:We.token}),i("/auth/forgot-password-success")}catch(q){console.error(q),Ue({errorMessage:"notification.error"})}finally{Ce(!1)}},Ms=async(ne,ye,fe)=>{let{setSubmitting:Ce,setErrors:Ue}=fe;try{const{data:{data:{token:q,user:me}}}=await(0,S.Z)({method:"POST",url:`${strapi.backendURL}${ye}`,data:qe()(ne,K),cancelToken:We.token});me.preferedLanguage&&y(me.preferedLanguage),P.auth.setToken(q,ne.rememberMe),P.auth.setUserInfo(me,ne.rememberMe),Jt()}catch(q){if(q.response){const me=pe()(q,["response","data","error","message"],"Something went wrong");if(ve()(me).toLowerCase()==="usernotactive"){i("/auth/oops"),Qe({type:"RESET_PROPS"});return}Ue({errorMessage:me})}}finally{Ce(!1)}},Ss=async(ne,ye,fe)=>{let{setSubmitting:Ce,setErrors:Ue}=fe;try{I("willCreateFirstAdmin");const{data:{data:{token:q,user:me}}}=await(0,S.Z)({method:"POST",url:`${strapi.backendURL}${ye}`,data:qe()(ne,K),cancelToken:We.token});P.auth.setToken(q,!1),P.auth.setUserInfo(me,!1),Ce(!1),o(!0);const{roles:Je}=me;if(Je&&Je.find(Is=>{let{code:Os}=Is;return Os==="strapi-super-admin"})&&(ue.setSkipped(!1),C(!1),I("didLaunchGuidedtour")),k==="register"&&ne.userInfo.news===!0||k==="register-admin"&&ne.news===!0){i({pathname:"/usecase",search:`?hasAdmin=${s}`});return}Jt()}catch(q){if(I("didNotCreateFirstAdmin"),q.response){const{data:me}=q.response,Je=(0,je.Z)(me);Ue({apiErrors:Je})}}},Ds=async(ne,ye,fe)=>{let{setErrors:Ce,setSubmitting:Ue}=fe;try{const{data:{data:{token:q,user:me}}}=await(0,S.Z)({method:"POST",url:`${strapi.backendURL}${ye}`,data:{...ne,resetPasswordToken:Q.get("code")},cancelToken:We.token});P.auth.setToken(q,!1),P.auth.setUserInfo(me,!1),i("/")}catch(q){if(q.response){const me=pe()(q,["response","data","message"],"Something went wrong"),Je=pe()(q,["response","data","statusCode"],400);Qe({type:"SET_REQUEST_ERROR",errorMessage:me,errorStatus:Je}),Ce({errorMessage:me})}}finally{Ue(!1)}},Jt=()=>{if(k==="login"){const ne=Q.get("redirectTo"),ye=ne?decodeURIComponent(ne):"/";i(ye)}else i("/")};return!$e[k]||s&&k==="register-admin"||P.auth.getToken()?e.createElement(r.Redirect,{to:"/"}):!s&&k!=="register-admin"?e.createElement(r.Redirect,{to:{pathname:"/auth/register-admin",search:d}}):e.createElement(H,(0,Ge.Z)({},de,{authType:k,fieldsToDisable:J,formErrors:Re,inputsPrefix:ee,modifiedData:it,onChange:Cs,onSubmit:As,requestError:lt,schema:F}))};V.defaultProps={hasAdmin:!1},V.propTypes={hasAdmin:a().bool,setHasAdmin:a().func.isRequired};var ut=V,xe=t(53951),X=t(83292),se=t(33348),ge=t(10190),Se=t(954);const ze=[{intlLabel:{id:"Usecase.front-end",defaultMessage:"Front-end developer"},value:"front_end_developer"},{intlLabel:{id:"Usecase.back-end",defaultMessage:"Back-end developer"},value:"back_end_developer"},{intlLabel:{id:"Usecase.full-stack",defaultMessage:"Full-stack developer"},value:"full_stack_developer"},{intlLabel:{id:"global.content-manager",defaultMessage:"Content Manager"},value:"content_manager"},{intlLabel:{id:"Usecase.content-creator",defaultMessage:"Content Creator"},value:"content_creator"},{intlLabel:{id:"Usecase.other",defaultMessage:"Other"},value:"other"}],Ut=(0,X.default)(n.Typography)`
|
|
2
|
+
text-align: center;
|
|
3
|
+
`;var xt=()=>{const u=(0,P.useNotification)(),{push:s,location:o}=(0,r.useHistory)(),{formatMessage:i}=(0,A.useIntl)(),[d,y]=(0,e.useState)(),[C,I]=(0,e.useState)(""),{firstname:k,email:Q}=P.auth.getUserInfo(),{hasAdmin:H}=(0,se.parse)(o?.search,{ignoreQueryPrefix:!0}),b=d==="other",J=K=>{try{(0,S.Z)({method:"POST",url:"https://analytics.strapi.io/register",data:{email:Q,username:k,firstAdmin:Boolean(!H),persona:{role:K?void 0:d,otherRole:K?void 0:C}}}),u({type:"success",message:{id:"Usecase.notification.success.project-created",defaultMessage:"Project has been successfully created"}}),s("/")}catch{}};return e.createElement(Se.ZP,null,e.createElement(n.Main,{labelledBy:"usecase-title"},e.createElement(Se.bU,null,e.createElement("form",{onSubmit:()=>J(!1)},e.createElement(n.Flex,{direction:"column",paddingBottom:7},e.createElement(ge.Z,null),e.createElement(n.Box,{paddingTop:6,paddingBottom:1,width:(0,P.pxToRem)(250)},e.createElement(Ut,{variant:"alpha",as:"h1",id:"usecase-title"},i({id:"Usecase.title",defaultMessage:"Tell us a bit more about yourself"})))),e.createElement(n.Flex,{direction:"column",alignItems:"stretch",gap:6},e.createElement(n.Select,{id:"usecase","data-testid":"usecase",label:i({id:"Usecase.input.work-type",defaultMessage:"What type of work do you do?"}),onChange:y,value:d},ze.map(({intlLabel:K,value:ee})=>e.createElement(n.Option,{key:ee,value:ee},i(K)))),b&&e.createElement(n.TextInput,{name:"other",label:i({id:"Usecase.other",defaultMessage:"Other"}),value:C,onChange:K=>I(K.target.value),"data-testid":"other"}),e.createElement(n.Button,{type:"submit",size:"L",fullWidth:!0,disabled:!d},i({id:"global.finish",defaultMessage:"Finish"}))))),e.createElement(n.Flex,{justifyContent:"center"},e.createElement(n.Box,{paddingTop:4},e.createElement(n.TextButton,{onClick:()=>J(!0)},i({id:"Usecase.button.skip",defaultMessage:"Skip this question"}))))))},yt=t(61605),vt=async()=>`web-fingerprint-${(await(await yt.ZP.load()).get()).visitorId}`,Tt=[],Pt=[...(()=>window&&window.strapi&&window.strapi.isEE?t(68944).Z:t(56761).Z)(),...Tt],tt=t(8888);const Rt=(0,e.lazy)(()=>Promise.all([t.e(9816),t.e(801)]).then(t.bind(t,29761)));function Ye(){const u=(0,P.useNotification)(),{updateProjectSettings:s}=(0,tt.um)(),{formatMessage:o}=(0,A.useIntl)(),[{isLoading:i,hasAdmin:d,uuid:y,deviceId:C},I]=(0,e.useState)({isLoading:!0,hasAdmin:!1}),k=(0,P.useAppInfos)(),{get:Q}=(0,P.useFetchClient)(),H=(0,e.useMemo)(()=>(0,Be.WW)(Pt.map(({to:F,Component:de,exact:Re})=>(0,Be.ot)(de,F,Re))),[]),[b,J]=(0,e.useState)(null);(0,e.useEffect)(()=>{const F=P.auth.getToken();F&&(async()=>{try{const{data:{token:Re}}=await(0,P.request)("/admin/renew-token",{method:"POST",body:{token:F}});P.auth.updateToken(Re)}catch{P.auth.clearAppStorage(),window.location.reload()}})()},[]),(0,e.useEffect)(()=>{(async()=>{try{const{data:{data:{hasAdmin:de,uuid:Re,menuLogo:it,authLogo:lt}}}=await S.Z.get(`${strapi.backendURL}/admin/init`);s({menuLogo:(0,P.prefixFileUrlWithBackendUrl)(it),authLogo:(0,P.prefixFileUrlWithBackendUrl)(lt)});const Qe=await vt();if(Re){const{data:{data:wt}}=await Q("/admin/telemetry-properties",{validateStatus:We=>We<500});J(wt);try{await fetch("https://analytics.strapi.io/api/v2/track",{method:"POST",body:JSON.stringify({event:"didInitializeAdministration",userId:"",deviceId:Qe,eventPropeties:{},userProperties:{environment:k.currentEnvironment},groupProperties:{...wt,projectId:Re}}),headers:{"Content-Type":"application/json"}})}catch{}}I({isLoading:!1,hasAdmin:de,uuid:Re,deviceId:Qe})}catch{u({type:"warning",message:{id:"app.containers.App.notification.error.init"}})}})()},[u,s]);const K=F=>I(de=>({...de,hasAdmin:F})),ee=(0,e.useMemo)(()=>({uuid:y,telemetryProperties:b,deviceId:C}),[y,b,C]);return i?e.createElement(P.LoadingIndicatorPage,null):e.createElement(e.Suspense,{fallback:e.createElement(P.LoadingIndicatorPage,null)},e.createElement(n.SkipToContent,null,o({id:"skipToContent"})),e.createElement(P.TrackingProvider,{value:ee},e.createElement(r.Switch,null,H,e.createElement(r.Route,{path:"/auth/:authType",render:F=>e.createElement(ut,{...F,setHasAdmin:K,hasAdmin:d}),exact:!0}),e.createElement(Ae,{path:"/usecase",component:xt}),e.createElement(Ae,{path:"/",component:Rt}),e.createElement(r.Route,{path:"",component:xe.default}))))}var Ct=Ye,ct=t(47750),st=t(84968),At=t(4409),dt=t(66694);const mt={menuLogo:null,authLogo:null};var Lt=(u=mt,s)=>(0,he.default)(u,o=>{switch(s.type){case"UPDATE_PROJECT_SETTINGS":{Object.assign(o,s.values);break}default:return o}});const Mt=({children:u,authLogo:s,menuLogo:o,showReleaseNotification:i,showTutorials:d})=>{const[{menuLogo:y,authLogo:C},I]=(0,e.useReducer)(Lt,mt),k=(0,e.useCallback)(({menuLogo:H,authLogo:b})=>I({type:"UPDATE_PROJECT_SETTINGS",values:{menuLogo:H||o,authLogo:b||s}}),[s,o]),Q=(0,e.useMemo)(()=>({logos:{menu:{custom:y,default:o},auth:{custom:C,default:s}},updateProjectSettings:k,showReleaseNotification:i,showTutorials:d}),[y,o,C,s,k,i,d]);return e.createElement(dt._5.Provider,{value:Q},u)};Mt.propTypes={authLogo:a().string.isRequired,children:a().element.isRequired,menuLogo:a().string.isRequired,showReleaseNotification:a().bool.isRequired,showTutorials:a().bool.isRequired};var St=Mt,Dt=t(58732),_t=t.n(Dt),Nt=t(5985);const It=({changeLocale:u,children:s,localeNames:o,messages:i})=>e.createElement(Nt.Z.Provider,{value:{changeLocale:u,localeNames:o,messages:i}},s);It.propTypes={changeLocale:a().func.isRequired,children:a().element.isRequired,localeNames:a().object.isRequired,messages:a().object.isRequired};var Ot=It,nt="strapi-admin-language",p=u=>{const s=window.localStorage.getItem(nt);return{locale:u[s]?s:"en",localeNames:u}};const l={localeNames:{en:"English"},locale:"en"};var U=(u=l,s)=>{switch(s.type){case"CHANGE_LOCALE":{const{locale:o}=s;return u.localeNames[o]?{...u,locale:o}:u}default:return u}};const B=({children:u,localeNames:s,messages:o})=>{const[{locale:i},d]=(0,e.useReducer)(U,l,()=>p(s));(0,e.useEffect)(()=>{window.localStorage.setItem(nt,i),document.documentElement.setAttribute("lang",i)},[i]);const y=I=>{d({type:"CHANGE_LOCALE",locale:I})},C=_t()(o[i],o.en);return e.createElement(A.IntlProvider,{locale:i,defaultLocale:"en",messages:C,textComponent:"span"},e.createElement(Ot,{changeLocale:y,localeNames:s,messages:C},u))};B.propTypes={children:a().element.isRequired,localeNames:a().objectOf(a().string).isRequired,messages:a().object.isRequired};var G=B,ie=(u,s)=>{const o=Object.entries(s),i=o.findIndex(([y])=>y===u);return o.slice(0,i).every(([,y])=>Object.values(y).every(Boolean))},oe=(u,s)=>{const o=u.split("."),i=o[1],d=Object.entries(s[o[0]]),y=d.findIndex(([I])=>I===i);return d.slice(0,y).every(([,I])=>I)};const Ie={currentStep:null,guidedTourState:{contentTypeBuilder:{create:!1,success:!1},contentManager:{create:!1,success:!1},apiTokens:{create:!1,success:!1}},isGuidedTourVisible:!1,isSkipped:!0};var Ve=(u=Ie,s)=>(0,he.default)(u,o=>{switch(s.type){case"SET_CURRENT_STEP":{o.currentStep=s.step;break}case"SET_STEP_STATE":{const[i,d]=s.currentStep.split(".");o.guidedTourState[i][d]=s.value;break}case"SET_SKIPPED":{o.isSkipped=s.value;break}case"SET_GUIDED_TOUR_VISIBILITY":{o.isGuidedTourVisible=s.value;break}default:return o}}),gt=u=>{const s={...u},o=ue.get(N),i=ue.get(He),d=ue.get(Le);if(o&&o.forEach(y=>{const[C,I]=y.split(".");Ke()(s,["guidedTourState",C,I],!0)}),i){const[y,C]=i.split(".");Ke()(s,["guidedTourState",y,C],!0),ue.addCompletedStep(i),ue.addCurrentStep(null)}return d!==null&&Ke()(s,"isSkipped",d),s};const ot=({children:u})=>{const[{currentStep:s,guidedTourState:o,isGuidedTourVisible:i,isSkipped:d},y]=(0,e.useReducer)(Ve,Ie,gt),C=b=>{if(b!==null){const J=pe()(o,b),K=oe(b,o);if(J||d||!K)return null}return ue.addCurrentStep(b),y({type:"SET_CURRENT_STEP",step:b})},I=b=>{y({type:"SET_GUIDED_TOUR_VISIBILITY",value:b})},k=(b,J)=>{ue.addCompletedStep(b),y({type:"SET_STEP_STATE",currentStep:b,value:J})},Q=b=>{const J=o[b];if(J){const K=ie(b,o),ee=Object.keys(J)[0],F=J[ee];if(K&&!s&&!F)return C(`${b}.${ee}`)}return null},H=b=>{ue.setSkipped(b),y({type:"SET_SKIPPED",value:b})};return e.createElement(P.GuidedTourProvider,{guidedTourState:o,currentStep:s,setCurrentStep:C,setGuidedTourVisibility:I,setSkipped:H,setStepState:k,startSection:Q,isGuidedTourVisible:i,isSkipped:d},u)};ot.propTypes={children:a().element.isRequired};var at=ot,ke=t(12788),ce=t(57269),Oe=t(41502);const we=(0,X.default)(n.Box)`
|
|
4
|
+
position: fixed;
|
|
5
|
+
top: 0;
|
|
6
|
+
right: 0;
|
|
7
|
+
bottom: 0;
|
|
8
|
+
left: 0;
|
|
9
|
+
z-index: 1140;
|
|
10
|
+
&:before {
|
|
11
|
+
content: '';
|
|
12
|
+
position: fixed;
|
|
13
|
+
top: 0;
|
|
14
|
+
right: 0;
|
|
15
|
+
bottom: 0;
|
|
16
|
+
left: 0;
|
|
17
|
+
background: ${({theme:u})=>u.colors.neutral0};
|
|
18
|
+
opacity: 0.9;
|
|
19
|
+
}
|
|
20
|
+
`,rt=(0,X.default)(n.Flex)`
|
|
21
|
+
position: fixed;
|
|
22
|
+
top: 0;
|
|
23
|
+
right: 0;
|
|
24
|
+
bottom: 0;
|
|
25
|
+
left: 0;
|
|
26
|
+
padding-top: ${(0,P.pxToRem)(160)};
|
|
27
|
+
`,Ft=(0,X.default)(n.Box)`
|
|
28
|
+
border-radius: 50%;
|
|
29
|
+
svg {
|
|
30
|
+
> path {
|
|
31
|
+
fill: ${({theme:u})=>u.colors.primary600} !important;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
`,ft=document.createElement("div"),ss="autoReloadOverlayBlocker";ft.setAttribute("id",ss);const ns=X.keyframes`
|
|
35
|
+
from {
|
|
36
|
+
transform: rotate(0deg);
|
|
37
|
+
}
|
|
38
|
+
to {
|
|
39
|
+
transform: rotate(359deg);
|
|
40
|
+
}
|
|
41
|
+
`,os=(0,X.default)(ce.Refresh)`
|
|
42
|
+
animation: ${ns} 1s infinite linear;
|
|
43
|
+
`,Zt=({displayedIcon:u,description:s,title:o,isOpen:i})=>{const{formatMessage:d}=(0,A.useIntl)();return(0,e.useEffect)(()=>(document.body.appendChild(ft),()=>{document.body.removeChild(ft)}),[]),i?ke.createPortal(e.createElement(we,null,e.createElement(rt,{direction:"column",alignItems:"stretch",gap:6},e.createElement(n.Flex,{direction:"column",alignItems:"stretch",gap:2},e.createElement(n.Flex,{justifyContent:"center"},e.createElement(n.Typography,{as:"h1",variant:"alpha"},d(o))),e.createElement(n.Flex,{justifyContent:"center"},e.createElement(n.Typography,{as:"h2",textColor:"neutral600",fontSize:4,fontWeight:"regular"},d(s)))),e.createElement(n.Flex,{justifyContent:"center"},u==="reload"&&e.createElement(Ft,{padding:6,background:"primary100",borderColor:"primary200"},e.createElement(os,{width:(0,P.pxToRem)(36),height:(0,P.pxToRem)(36)})),u==="time"&&e.createElement(Ft,{padding:6,background:"primary100",borderColor:"primary200"},e.createElement(ce.Clock,{width:(0,P.pxToRem)(40),height:(0,P.pxToRem)(40)}))),e.createElement(n.Flex,{justifyContent:"center"},e.createElement(n.Box,{paddingTop:2},e.createElement(Oe.r,{href:"https://docs.strapi.io",isExternal:!0},d({id:"global.documentation",defaultMessage:"Read the documentation"})))))),ft):null};Zt.propTypes={displayedIcon:a().oneOfType([a().string,a().array]).isRequired,description:a().object.isRequired,isOpen:a().bool.isRequired,title:a().object.isRequired};var as=Zt;const Wt=30,Gt=({children:u})=>{const[s,o]=(0,e.useState)(!1),[{elapsed:i},d]=(0,e.useState)({elapsed:0,start:0}),[y,C]=(0,e.useState)(void 0),I=(F=void 0)=>{o(!0),C(F),d(de=>({...de,start:Date.now()}))},k=()=>{o(!1),d({start:0,elapsed:0}),C(void 0)},Q=(0,e.useRef)(I),H=(0,e.useRef)(k);(0,e.useEffect)(()=>{let F=null;return s?F=setInterval(()=>i>Wt?(clearInterval(F),null):(d(de=>({...de,elapsed:Math.round(Date.now()-de.start)/1e3})),null),1e3):clearInterval(F),()=>{clearInterval(F)}},[s,i]);let b=y?.icon||"reload",J={id:y?.description||"components.OverlayBlocker.description",defaultMessage:"You're using a feature that needs the server to restart. Please wait until the server is up."},K={id:y?.title||"components.OverlayBlocker.title",defaultMessage:"Waiting for restart"};i>Wt&&(b="time",J={id:"components.OverlayBlocker.description.serverError",defaultMessage:"The server should have restarted, please check your logs in the terminal."},K={id:"components.OverlayBlocker.title.serverError",defaultMessage:"The restart is taking longer than expected"});const ee=(0,e.useMemo)(()=>({lockApp:Q.current,unlockApp:H.current}),[Q,H]);return e.createElement(P.AutoReloadOverlayBockerContext.Provider,{value:ee},e.createElement(as,{displayedIcon:b,isOpen:s,description:J,title:K}),u)};Gt.propTypes={children:a().element.isRequired};var rs=Gt;const bt=({dispatch:u,notification:s})=>{const{formatMessage:o}=(0,A.useIntl)(),{message:i,link:d,type:y,id:C,onClose:I,timeout:k,blockTransition:Q,title:H}=s,b=F=>typeof F=="string"?F:o(F,F.values),J=(0,e.useCallback)(()=>{I&&I(),u({type:"HIDE_NOTIFICATION",id:C})},[C]);(0,e.useEffect)(()=>{let F;return Q||(F=setTimeout(()=>{J()},k||2500)),()=>clearTimeout(F)},[Q,J,k]);let K,ee;return y==="info"?(K="default",ee=o({id:"notification.default.title",defaultMessage:"Information:"})):y==="warning"?(K="danger",ee=o({id:"notification.warning.title",defaultMessage:"Warning:"})):y==="softWarning"?(K="warning",ee=o({id:"notification.warning.title",defaultMessage:"Warning:"})):(K="success",ee=o({id:"notification.success.title",defaultMessage:"Success:"})),H&&(ee=typeof H=="string"?H:b({id:H?.id||H,defaultMessage:H?.defaultMessage||H?.id||H,values:H?.values})),e.createElement(n.Alert,{action:d?e.createElement(Oe.r,{href:d.url,isExternal:!0},o({id:d.label?.id||d.label,defaultMessage:d.label?.defaultMessage||d.label?.id||d.label})):void 0,onClose:J,closeLabel:"Close",title:ee,variant:K},b({id:i?.id||i,defaultMessage:i?.defaultMessage||i?.id||i,values:i?.values}))};bt.defaultProps={notification:{id:1,type:"success",message:{id:"notification.success.saved",defaultMessage:"Saved"},onClose:()=>null,timeout:2500,blockTransition:!1}},bt.propTypes={dispatch:a().func.isRequired,notification:a().shape({id:a().number,message:a().oneOfType([a().string,a().shape({id:a().string.isRequired,defaultMessage:a().string,values:a().object})]),link:a().shape({target:a().string,url:a().string.isRequired,label:a().oneOfType([a().string,a().shape({id:a().string.isRequired,defaultMessage:a().string,values:a().object})]).isRequired}),type:a().string,onClose:a().func,timeout:a().number,blockTransition:a().bool,title:a().oneOfType([a().string,a().shape({id:a().string.isRequired,defaultMessage:a().string,values:a().object})])})};var is=bt;const Ht={notifId:0,notifications:[]};var ls=(u=Ht,s)=>(0,he.default)(u,o=>{switch(s.type){case"SHOW_NOTIFICATION":{o.notifications.push({id:u.notifId,type:pe()(s,["config","type"],"success"),message:pe()(s,["config","message"],{id:"notification.success.saved",defaultMessage:"Saved"}),link:pe()(s,["config","link"],null),timeout:pe()(s,["config","timeout"],2500),blockTransition:pe()(s,["config","blockTransition"],!1),onClose:pe()(s,["config","onClose"],null),title:pe()(s,["config","title"],null)}),o.notifId=u.notifId+1;break}case"HIDE_NOTIFICATION":{const i=u.notifications.findIndex(d=>d.id===s.id);i!==-1&&o.notifications.splice(i,1);break}default:return o}});const Kt=({children:u})=>{const[{notifications:s},o]=(0,e.useReducer)(ls,Ht),i=d=>{o({type:"SHOW_NOTIFICATION",config:d})};return e.createElement(P.NotificationsProvider,{toggleNotification:i},e.createElement(n.Flex,{left:"50%",marginLeft:"-250px",position:"fixed",direction:"column",alignItems:"stretch",gap:2,top:`${46/16}rem`,width:`${500/16}rem`,zIndex:10},s.map(d=>e.createElement(is,{key:d.id,dispatch:o,notification:d}))),u)};Kt.propTypes={children:a().element.isRequired};var us=Kt;const ht=document.createElement("div");ht.setAttribute("id","overlayBlocker");const cs=X.default.div`
|
|
44
|
+
position: fixed;
|
|
45
|
+
top: 0;
|
|
46
|
+
right: 0;
|
|
47
|
+
bottom: 0;
|
|
48
|
+
left: 0;
|
|
49
|
+
z-index: 1140;
|
|
50
|
+
`,$t=({isOpen:u})=>((0,e.useEffect)(()=>(document.body.appendChild(ht),()=>{document.body.removeChild(ht)}),[]),u?ke.createPortal(e.createElement(cs,null),ht):null);$t.propTypes={isOpen:a().bool.isRequired};const zt=({children:u})=>{const[s,o]=(0,e.useState)(!1),i=()=>{o(!0)},d=()=>{o(!1)};return e.createElement(P.OverlayBlockerContext.Provider,{value:{lockApp:i,unlockApp:d}},u,e.createElement($t,{isOpen:s}))};zt.propTypes={children:a().node.isRequired};var ds=zt;const kt="STRAPI_THEME",ms=()=>{const u=window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light",s=localStorage.getItem(kt);return s||localStorage.setItem(kt,u),s||u},Vt=({children:u,themes:s})=>{const[o,i]=(0,e.useState)(ms()),d=(0,e.useCallback)(C=>{i(C),localStorage.setItem(kt,C)},[i]),y=(0,e.useMemo)(()=>({currentTheme:o,onChangeTheme:d,themes:s}),[o,d,s]);return e.createElement(dt.Rj.Provider,{value:y},u)};Vt.propTypes={children:a().node.isRequired,themes:a().shape({light:a().shape({colors:a().object.isRequired,shadows:a().object.isRequired,sizes:a().object.isRequired,zIndices:a().array.isRequired,spaces:a().array.isRequired,borderRadius:a().string.isRequired,mediaQueries:a().object.isRequired,fontSizes:a().array.isRequired,lineHeights:a().array.isRequired,fontWeights:a().object.isRequired}).isRequired,dark:a().shape({colors:a().object.isRequired,shadows:a().object.isRequired,sizes:a().object.isRequired,zIndices:a().array.isRequired,spaces:a().array.isRequired,borderRadius:a().string.isRequired,mediaQueries:a().object.isRequired,fontSizes:a().array.isRequired,lineHeights:a().array.isRequired,fontWeights:a().object.isRequired}).isRequired,custom:a().object}).isRequired};var ps=Vt,gs=X.createGlobalStyle`
|
|
51
|
+
body {
|
|
52
|
+
background: ${({theme:u})=>u.colors.neutral100};
|
|
53
|
+
}
|
|
54
|
+
`;const Qt=({children:u})=>{const{currentTheme:s,themes:o}=(0,tt.M1)();return e.createElement(n.ThemeProvider,{theme:o[s]||o.light},u,e.createElement(gs,null))};Qt.propTypes={children:a().element.isRequired};var fs=Qt;const hs=new st.QueryClient({defaultOptions:{queries:{refetchOnWindowFocus:!1}}}),Yt=({authLogo:u,children:s,components:o,customFields:i,fields:d,getAdminInjectedComponents:y,getPlugin:C,localeNames:I,menu:k,menuLogo:Q,messages:H,plugins:b,runHookParallel:J,runHookSeries:K,runHookWaterfall:ee,settings:F,showReleaseNotification:de,showTutorials:Re,store:it,themes:lt})=>e.createElement(ps,{themes:lt},e.createElement(fs,null,e.createElement(st.QueryClientProvider,{client:hs},e.createElement(At.Provider,{store:it},e.createElement(dt.ux.Provider,{value:{getAdminInjectedComponents:y}},e.createElement(St,{authLogo:u,menuLogo:Q,showReleaseNotification:de,showTutorials:Re},e.createElement(P.StrapiAppProvider,{getPlugin:C,menu:k,plugins:b,runHookParallel:J,runHookWaterfall:ee,runHookSeries:K,settings:F},e.createElement(P.LibraryProvider,{components:o,fields:d},e.createElement(P.CustomFieldsProvider,{customFields:i},e.createElement(G,{messages:H,localeNames:I},e.createElement(rs,null,e.createElement(ds,null,e.createElement(at,null,e.createElement(us,null,s))))))))))))));Yt.propTypes={authLogo:a().oneOfType([a().string,a().any]).isRequired,children:a().element.isRequired,components:a().object.isRequired,customFields:a().object.isRequired,fields:a().object.isRequired,getAdminInjectedComponents:a().func.isRequired,getPlugin:a().func.isRequired,localeNames:a().objectOf(a().string).isRequired,menu:a().arrayOf(a().shape({to:a().string.isRequired,icon:a().func.isRequired,intlLabel:a().shape({id:a().string.isRequired,defaultMessage:a().string.isRequired}).isRequired,permissions:a().array,Component:a().func})).isRequired,menuLogo:a().oneOfType([a().string,a().any]).isRequired,messages:a().object.isRequired,plugins:a().object.isRequired,runHookParallel:a().func.isRequired,runHookWaterfall:a().func.isRequired,runHookSeries:a().func.isRequired,settings:a().object.isRequired,showReleaseNotification:a().bool.isRequired,showTutorials:a().bool.isRequired,store:a().object.isRequired,themes:a().shape({light:a().shape({colors:a().object.isRequired,shadows:a().object.isRequired,sizes:a().object.isRequired,zIndices:a().array.isRequired,spaces:a().array.isRequired,borderRadius:a().string.isRequired,mediaQueries:a().object.isRequired,fontSizes:a().array.isRequired,lineHeights:a().array.isRequired,fontWeights:a().object.isRequired}).isRequired,dark:a().shape({colors:a().object.isRequired,shadows:a().object.isRequired,sizes:a().object.isRequired,zIndices:a().array.isRequired,spaces:a().array.isRequired,borderRadius:a().string.isRequired,mediaQueries:a().object.isRequired,fontSizes:a().array.isRequired,lineHeights:a().array.isRequired,fontWeights:a().object.isRequired}).isRequired,custom:a().object}).isRequired};var Es=Yt,ys={ar:"\u0627\u0644\u0639\u0631\u0628\u064A\u0629",ca:"Catal\xE0",cs:"\u010Ce\u0161tina",de:"Deutsch",dk:"Dansk",en:"English",es:"Espa\xF1ol",eu:"Euskara",fr:"Fran\xE7ais",gu:"Gujarati",he:"\u05E2\u05D1\u05E8\u05D9\u05EA",hu:"Magyar",id:"Indonesian",it:"Italiano",ja:"\u65E5\u672C\u8A9E",ko:"\uD55C\uAD6D\uC5B4",ml:"Malayalam",ms:"Melayu",nl:"Nederlands",no:"Norwegian",pl:"Polski","pt-BR":"Portugu\xEAs (Brasil)",pt:"Portugu\xEAs (Portugal)",ru:"\u0420\u0443\u0441\u0441\u043A\u0438\u0439",sk:"Sloven\u010Dina",sv:"Swedish",th:"\u0E44\u0E17\u0E22",tr:"T\xFCrk\xE7e",uk:"\u0423\u043A\u0440\u0430\u0457\u043D\u0441\u044C\u043A\u0430",vi:"Ti\u1EBFng Vi\u1EC7t","zh-Hans":"\u4E2D\u6587 (\u7B80\u4F53)",zh:"\u4E2D\u6587 (\u7E41\u9AD4)",sa:"\u0938\u0902\u0938\u094D\u0915\u0943\u0924",hi:"\u0939\u093F\u0928\u094D\u0926\u0940"},Et=t(70836),vs={admin:{tutorials:{links:[]}},contentManager:{editView:{informations:[],"right-links":[]},listView:{actions:[],deleteModalAdditionalInfos:[]}}},Ts="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAXVBMVEUAAABIRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9JRf9IRf9IRP5IRP5JRP9JRf////+Vk/+zsv++vf9mY/9taf9/fP+Jh//c3P9RTf/Ibar2AAAAFHRSTlMA/MJX+fPt48cahaff1dMaGqcahSpTPmAAAAEvSURBVFjD7dfNTsMwEATgXcf5cdKEtixtcYH3f0xEibIguba1g8Slc+58iqUedmhNaMbJzX3Xema5G2bfdv3iprE50s80g7Yqw0Oz1Z+cmOL2a38nxuy+BSfmuNv7BUhDRAMCDESBEYCDvsD6hmcMGGnCgIkcBjhaMGCmHgN66jCgoxYDWvIY4IkxgHFAkrmeU7kmfpkG4uUllXMtEE82QPs2QPs2QPs2QPs2QPsAoH0DoH0LoH0QeN3ydtnyXg38ok76MQ/gAfwf8JH8V18LQOljomBAFAyIkga4CGT7XAtEuQf4IpDri6e2BoiZA6OrAGLuxOnLQMweWXMRyPVlwQ/NAwZMNGLACJ/76ODYo5MHHl3o7EOHZ6BbjtbpG/5kfOv8P7ilbv7PX/M/rMVPqrI3XI3nd3sAAAAASUVORK5CYII=";class Ps{constructor({adminConfig:s,appPlugins:o,library:i,middlewares:d,reducers:y}){this.customConfigurations=s.config,this.customBootstrapConfiguration=s.bootstrap,this.configurations={authLogo:ct,head:{favicon:Ts},locales:["en"],menuLogo:ct,notifications:{releases:!0},themes:{light:n.lightTheme,dark:n.darkTheme},translations:{},tutorials:!0},this.appPlugins=o||{},this.library=i,this.middlewares=d,this.plugins={},this.reducers=y,this.translations={},this.hooksDict={},this.admin={injectionZones:vs},this.customFields=ae.rh,this.menu=[],this.settings={global:{id:"global",intlLabel:{id:"Settings.global",defaultMessage:"Global Settings"},links:[]}}}addComponents=s=>{Array.isArray(s)?s.map(o=>this.library.components.add(o)):this.library.components.add(s)};addCorePluginMenuLink=s=>{const o=JSON.stringify(s);v()(s.to,`link.to should be defined for ${o}`),v()(typeof s.to=="string",`Expected link.to to be a string instead received ${typeof s.to}`),v()(["/plugins/content-type-builder","/plugins/upload"].includes(s.to),"This method is not available for your plugin"),v()(s.intlLabel?.id&&s.intlLabel?.defaultMessage,`link.intlLabel.id & link.intlLabel.defaultMessage for ${o}`),this.menu.push(s)};addFields=s=>{Array.isArray(s)?s.map(o=>this.library.fields.add(o)):this.library.fields.add(s)};addMenuLink=s=>{const o=JSON.stringify(s);v()(s.to,`link.to should be defined for ${o}`),v()(typeof s.to=="string",`Expected link.to to be a string instead received ${typeof s.to}`),v()(s.intlLabel?.id&&s.intlLabel?.defaultMessage,`link.intlLabel.id & link.intlLabel.defaultMessage for ${o}`),v()(s.Component&&typeof s.Component=="function","link.Component should be a valid React Component"),v()(s.icon&&typeof s.icon=="function","link.Icon should be a valid React Component"),this.menu.push(s)};addMiddlewares=s=>{s.forEach(o=>{this.middlewares.add(o)})};addReducers=s=>{Object.keys(s).forEach(o=>{this.reducers.add(o,s[o])})};addSettingsLink=(s,o)=>{v()(this.settings[s],"The section does not exist");const i=JSON.stringify(o);v()(o.id,`link.id should be defined for ${i}`),v()(o.intlLabel?.id&&o.intlLabel?.defaultMessage,`link.intlLabel.id & link.intlLabel.defaultMessage for ${i}`),v()(o.to,`link.to should be defined for ${i}`),v()(o.Component&&typeof o.Component=="function","link.Component should be a valid React Component"),this.settings[s].links.push(o)};addSettingsLinks=(s,o)=>{v()(this.settings[s],"The section does not exist"),v()(Array.isArray(o),"TypeError expected links to be an array"),o.forEach(i=>{this.addSettingsLink(s,i)})};async bootstrap(){Object.keys(this.appPlugins).forEach(s=>{const o=this.appPlugins[s].bootstrap;o&&o({addSettingsLink:this.addSettingsLink,addSettingsLinks:this.addSettingsLinks,getPlugin:this.getPlugin,injectContentManagerComponent:this.injectContentManagerComponent,injectAdminComponent:this.injectAdminComponent,registerHook:this.registerHook})}),R()(this.customBootstrapConfiguration)&&this.customBootstrapConfiguration({addComponents:this.addComponents,addFields:this.addFields,addMenuLink:this.addMenuLink,addReducers:this.addReducers,addSettingsLink:this.addSettingsLink,addSettingsLinks:this.addSettingsLinks,getPlugin:this.getPlugin,injectContentManagerComponent:this.injectContentManagerComponent,injectAdminComponent:this.injectAdminComponent,registerHook:this.registerHook})}bootstrapAdmin=async()=>(await this.createCustomConfigurations(),this.createHook(Et.No),this.createHook(Et.LK),this.createHook(Et.dV),this.createHook(Et.Eo),Promise.resolve());createCustomConfigurations=async()=>{if(this.customConfigurations?.locales&&(this.configurations.locales=["en",...this.customConfigurations.locales?.filter(s=>s!=="en")||[]]),this.customConfigurations?.auth?.logo&&(this.configurations.authLogo=this.customConfigurations.auth.logo),this.customConfigurations?.menu?.logo&&(this.configurations.menuLogo=this.customConfigurations.menu.logo),this.customConfigurations?.head?.favicon&&(this.configurations.head.favicon=this.customConfigurations.head.favicon),this.customConfigurations?.theme){const s=this.customConfigurations.theme.dark,o=this.customConfigurations.theme.light;!s&&!o&&(console.warn("[deprecated] In future versions, Strapi will stop supporting this theme customization syntax. The theme configuration accepts a light and a dark key to customize each theme separately. See https://docs.strapi.io/developer-docs/latest/development/admin-customization.html#theme-extension."),m()(this.configurations.themes.light,this.customConfigurations.theme)),o&&m()(this.configurations.themes.light,o),s&&m()(this.configurations.themes.dark,s)}this.customConfigurations?.notifications?.releases!==void 0&&(this.configurations.notifications.releases=this.customConfigurations.notifications.releases),this.customConfigurations?.tutorials!==void 0&&(this.configurations.tutorials=this.customConfigurations.tutorials)};createHook=s=>{this.hooksDict[s]=W()};createSettingSection=(s,o)=>{v()(s.id,"section.id should be defined"),v()(s.intlLabel?.id&&s.intlLabel?.defaultMessage,"section.intlLabel should be defined"),v()(Array.isArray(o),"TypeError expected links to be an array"),v()(this.settings[s.id]===void 0,"A similar section already exists"),this.settings[s.id]={...s,links:[]},o.forEach(i=>{this.addSettingsLink(s.id,i)})};createStore=()=>z(this.middlewares.middlewares,this.reducers.reducers);getAdminInjectedComponents=(s,o,i)=>{try{return this.admin.injectionZones[s][o][i]||[]}catch(d){return console.error("Cannot get injected component",d),d}};getPlugin=s=>this.plugins[s];async initialize(){Object.keys(this.appPlugins).forEach(s=>{this.appPlugins[s].register(this)})}injectContentManagerComponent=(s,o,i)=>{v()(this.admin.injectionZones.contentManager[s]?.[o],`The ${s} ${o} zone is not defined in the content manager`),v()(i,"A Component must be provided"),this.admin.injectionZones.contentManager[s][o].push(i)};injectAdminComponent=(s,o,i)=>{v()(this.admin.injectionZones.admin[s]?.[o],`The ${s} ${o} zone is not defined in the admin`),v()(i,"A Component must be provided"),this.admin.injectionZones.admin[s][o].push(i)};async loadAdminTrads(){const s=this.configurations.locales.map(d=>t(48224)(`./${d}.json`).then(({default:y})=>({data:y,locale:d})).catch(()=>({data:null,locale:d})));return(await Promise.all(s)).reduce((d,y)=>(y.data&&(d[y.locale]=y.data),d),{})}async loadTrads(){const s=await this.loadAdminTrads(),o=Object.keys(this.appPlugins).map(C=>{const I=this.appPlugins[C].registerTrads;return I?I({locales:this.configurations.locales}):null}).filter(C=>C),d=(await Promise.all(o)).reduce((C,I)=>{const k=I.reduce((Q,H)=>(Q[H.locale]=H.data,Q),{});return Object.keys(k).forEach(Q=>{C[Q]={...C[Q],...k[Q]}}),C},{}),y=this.configurations.locales.reduce((C,I)=>(C[I]={...s[I],...d[I]||{},...this.customConfigurations?.translations?.[I]},C),{});return this.configurations.translations=y,Promise.resolve()}registerHook=(s,o)=>{v()(this.hooksDict[s],`The hook ${s} is not defined. You are trying to register a hook that does not exist in the application.`),this.hooksDict[s].register(o)};registerPlugin=s=>{const o=(0,ae.Sy)(s);this.plugins[o.pluginId]=o};runHookSeries=(s,o=!1)=>o?this.hooksDict[s].runSeriesAsync():this.hooksDict[s].runSeries();runHookWaterfall=(s,o,i=!1,d)=>i?this.hooksDict[s].runWaterfallAsync(o,d):this.hooksDict[s].runWaterfall(o,d);runHookParallel=s=>this.hooksDict[s].runParallel();render(){const s=this.createStore(),o=c()(ys,this.configurations.locales||[]),{components:{components:i},fields:{fields:d}}=this.library;return e.createElement(Es,{authLogo:this.configurations.authLogo,components:i,fields:d,customFields:this.customFields,localeNames:o,getAdminInjectedComponents:this.getAdminInjectedComponents,getPlugin:this.getPlugin,messages:this.configurations.translations,menu:this.menu,menuLogo:this.configurations.menuLogo,plugins:this.plugins,runHookParallel:this.runHookParallel,runHookWaterfall:(y,C,I=!1)=>this.runHookWaterfall(y,C,I,s),runHookSeries:this.runHookSeries,themes:this.configurations.themes,settings:this.settings,showTutorials:this.configurations.tutorials,showReleaseNotification:this.configurations.notifications.releases,store:s},e.createElement(e.Fragment,null,e.createElement(x.Helmet,{link:[{rel:"icon",type:"image/png",href:this.configurations.head.favicon}],htmlAttributes:{lang:localStorage.getItem(nt)||"en"}}),e.createElement(r.BrowserRouter,{basename:T.Z},e.createElement(Ct,{store:s}))))}}var Rs=({adminConfig:u={},appPlugins:s,library:o,middlewares:i,reducers:d})=>new Ps({adminConfig:u,appPlugins:s,library:o,middlewares:i,reducers:d})},5985:function(O,E,t){"use strict";var e=t(32735);const r=(0,e.createContext)();E.Z=r},20139:function(O,E,t){"use strict";var e=t(32735),r=t(5985);const n=()=>{const{changeLocale:f,localeNames:m,messages:g}=(0,e.useContext)(r.Z);return{changeLocale:f,localeNames:m,messages:g}};E.Z=n},10190:function(O,E,t){"use strict";var e=t(32735),r=t(83292),n=t(8888);const f=r.default.img`
|
|
55
|
+
height: ${72/16}rem;
|
|
56
|
+
`,m=()=>{const{logos:{auth:g}}=(0,n.um)();return e.createElement(f,{src:g?.custom??g.default,"aria-hidden":!0,alt:""})};E.Z=m},66694:function(O,E,t){"use strict";t.d(E,{ux:function(){return n},_5:function(){return m},$l:function(){return c},Rj:function(){return R}});var e=t(32735),n=(0,e.createContext)({}),m=(0,e.createContext)({}),c=(0,e.createContext)({}),R=(0,e.createContext)({})},463:function(O,E){"use strict";const t="/admin/".replace(window.location.origin,"");E.Z=t},70836:function(O,E,t){"use strict";t.d(E,{Eo:function(){return n},LK:function(){return r},No:function(){return e},dV:function(){return f}});const e="Admin/CM/pages/ListView/inject-column-in-table",r="Admin/CM/pages/App/mutate-collection-types-links",n="Admin/CM/pages/EditView/mutate-edit-view-layout",f="Admin/CM/pages/App/mutate-single-types-links"},8888:function(O,E,t){"use strict";t.d(E,{um:function(){return f},U_:function(){return M},Dq:function(){return P},H9:function(){return He},bP:function(){return v},$_:function(){return St},rW:function(){return nt},bF:function(){return Me},G4:function(){return Lt},Te:function(){return Pt},M1:function(){return Ot}});var e=t(32735),r=t(66694),f=()=>(0,e.useContext)(r._5),m=t(13478),g=t(97889);const c={collectionTypes:[],components:[],isLoading:!0,singleTypes:[]};var R=(h,p)=>(0,g.default)(h,l=>{switch(p.type){case"GET_MODELS":{l.collectionTypes=c.collectionTypes,l.singleTypes=c.singleTypes,l.components=c.components,l.isLoading=!0;break}case"GET_MODELS_ERROR":{l.collectionTypes=c.collectionTypes,l.singleTypes=c.singleTypes,l.components=c.components,l.isLoading=!1;break}case"GET_MODELS_SUCCEDED":{const L=U=>p.contentTypes.filter(B=>B.isDisplayed&&B.kind===U);l.isLoading=!1,l.collectionTypes=L("collectionType"),l.singleTypes=L("singleType"),l.components=p.components;break}default:return l}}),v=()=>{const h=(0,m.useNotification)(),[p,l]=(0,e.useReducer)(R,c);(0,e.useEffect)(()=>{L()},[]);const L=async()=>{l({type:"GET_MODELS"});try{const[{data:U},{data:B}]=await Promise.all(["components","content-types"].map(G=>(0,m.request)(`/content-manager/${G}`,{method:"GET"})));l({type:"GET_MODELS_SUCCEDED",contentTypes:B,components:U})}catch{l({type:"GET_MODELS_ERROR"}),h({type:"warning",message:{id:"notification.error"}})}};return{...p,getData:L}};const x={data:{},error:null,isLoading:!0};var D=(h,p)=>(0,g.default)(h,l=>{switch(p.type){case"GET_DATA":{l.isLoading=!0,l.data={},l.error=null;break}case"GET_DATA_SUCCEEDED":{l.data=p.data,l.isLoading=!1,l.error=null;break}case"GET_DATA_ERROR":{l.isLoading=!1,l.error=p.error;break}default:return l}}),M=h=>{const[{data:p,error:l,isLoading:L},U]=(0,e.useReducer)(D,x);return(0,e.useEffect)(()=>{(async()=>{U({type:"GET_DATA"});const{data:G}=await(0,m.request)("/admin/permissions",{method:"GET",params:{role:h}});U({type:"GET_DATA_SUCCEEDED",data:G})})()},[h]),{data:p,error:l,isLoading:L}};const w={role:{},permissions:{},isLoading:!0};var z=(h,p)=>(0,g.default)(h,l=>{switch(p.type){case"GET_DATA_SUCCEEDED":{l.role=p.role,l.permissions=p.permissions,l.isLoading=!1;break}case"GET_DATA_ERROR":{l.isLoading=!1;break}case"ON_SUBMIT_SUCCEEDED":{l.role.name=p.name,l.role.description=p.description;break}default:return l}}),P=h=>{const p=(0,m.useNotification)(),[l,L]=(0,e.useReducer)(z,w);(0,e.useEffect)(()=>{h?U(h):L({type:"GET_DATA_SUCCEEDED",role:{},permissions:[]})},[h]);const U=async G=>{try{const[{data:Y},{data:ie}]=await Promise.all([`roles/${G}`,`roles/${G}/permissions`].map(De=>(0,m.request)(`/admin/${De}`,{method:"GET"})));L({type:"GET_DATA_SUCCEEDED",role:Y,permissions:ie})}catch(Y){console.error(Y),L({type:"GET_DATA_ERROR"}),p({type:"warning",message:{id:"notification.error"}})}},B=(0,e.useCallback)(G=>{L({type:"ON_SUBMIT_SUCCEEDED",...G})},[]);return{...l,onSubmitSucceeded:B}},A=(h,p)=>p.map(({permissions:l})=>(0,m.hasPermissions)(h,l)),a=async(h,p)=>{const l=A(h,p),L=await Promise.all(l);return p.filter((B,G)=>L[G])},le=t(99381),Ae=t.n(le),Ge=async(h,p,l)=>{const L=A(h,p),U=await Promise.all(L),B=p.filter((ie,De)=>U[De]),G=B.findIndex(ie=>ie.to==="/settings");if(G===-1)return[];const Y=Ae()(B);return Y[G].notificationsCount=l?1:0,Y},_e=t(57269),ve=t(72041);const Ne={generalSectionLinks:[{icon:_e.Puzzle,intlLabel:{id:"global.plugins",defaultMessage:"Plugins"},to:"/list-plugins",permissions:ve.Z.marketplace.main},{icon:_e.ShoppingCart,intlLabel:{id:"global.marketplace",defaultMessage:"Marketplace"},to:"/marketplace",permissions:ve.Z.marketplace.main},{icon:_e.Cog,intlLabel:{id:"global.settings",defaultMessage:"Settings"},to:"/settings",permissions:[],notificationsCount:0}],pluginsSectionLinks:[],isLoading:!0};var Xe=(h=Ne,p)=>(0,g.default)(h,l=>{switch(p.type){case"SET_SECTION_LINKS":{const{authorizedGeneralSectionLinks:L,authorizedPluginSectionLinks:U}=p.data;l.generalSectionLinks=L,l.pluginsSectionLinks=U;break}case"UNSET_IS_LOADING":{l.isLoading=!1;break}default:return l}}),He=()=>{const[h,p]=(0,e.useReducer)(Xe,Ne),{allPermissions:l}=(0,m.useRBACProvider)(),{shouldUpdateStrapi:L}=(0,m.useAppInfos)(),{menu:U}=(0,m.useStrapiApp)(),B=(0,e.useRef)(h.generalSectionLinks),G=(0,e.useRef)(L),Y=async(De=l)=>{const Ie=await a(De,U),Ze=await Ge(De,B.current,G.current);p({type:"SET_SECTION_LINKS",data:{authorizedGeneralSectionLinks:Ze,authorizedPluginSectionLinks:Ie}}),p({type:"UNSET_IS_LOADING"})},ie=(0,e.useRef)(Y);return(0,e.useEffect)(()=>{ie.current(l)},[l,p]),h},N=t(33795),Le=t.n(N),Te=(h,p)=>({...h,isLoading:p});const Ee={roles:[],isLoading:!0};var re=(h,p)=>(0,g.default)(h,l=>{switch(p.type){case"GET_DATA":{l.isLoading=!0,l.roles=[];break}case"GET_DATA_SUCCEEDED":{l.roles=p.data,l.isLoading=!1;break}case"GET_DATA_ERROR":{l.isLoading=!1;break}default:return l}}),Me=(h=!0)=>{const p=(0,m.useNotification)(),[{roles:l,isLoading:L},U]=(0,e.useReducer)(re,Ee,()=>Te(Ee,h));(0,e.useEffect)(()=>{h&&B()},[h]);const B=(0,e.useCallback)(async()=>{const G=(0,m.getFetchClient)();try{U({type:"GET_DATA"});const{data:{data:Y}}=await G.get("/admin/roles");U({type:"GET_DATA_SUCCEEDED",data:Y})}catch(Y){const ie=Le()(Y,["response","payload","message"],"An error occured");U({type:"GET_DATA_ERROR"}),ie!=="Forbidden"&&p({type:"warning",message:ie})}},[p]);return{roles:l,isLoading:L,getData:B}},be=t(3040),he=t.n(be);const Pe={menu:[],isLoading:!0};var Fe=(h,p)=>(0,g.default)(h,l=>{switch(p.type){case"CHECK_PERMISSIONS_SUCCEEDED":{p.data.forEach(L=>{L.hasPermission&&he()(l,["menu",...L.path.split("."),"isDisplayed"],L.hasPermission)}),l.menu.forEach((L,U)=>{l.menu[U].links=L.links.filter(B=>B.isDisplayed===!0)}),l.isLoading=!1;break}default:return l}}),et=t(9086),$e=t.n(et),V=t(98978),ut=t.n(V),X=h=>ut()(h,p=>p.id),ge=h=>h.map(p=>{const l=p.links.map(L=>({...L,isDisplayed:!1}));return{...p,links:l}}),ze=[{intlLabel:{id:"global.roles",defaultMessage:"Roles"},to:"/settings/roles",id:"roles",isDisplayed:!1,permissions:ve.Z.settings.roles.main},{intlLabel:{id:"global.users"},to:"/settings/users?pageSize=10&page=1&sort=firstname",id:"users",isDisplayed:!1,permissions:ve.Z.settings.users.main}],jt=[...(()=>window&&window.strapi&&window.strapi.isEE?t(66334).Z:t(47950).Z)(),...ze],yt=[{intlLabel:{id:"Settings.application.title",defaultMessage:"Overview"},to:"/settings/application-infos",id:"000-application-infos",isDisplayed:!1,permissions:[]},{intlLabel:{id:"Settings.webhooks.title",defaultMessage:"Webhooks"},to:"/settings/webhooks",id:"webhooks",isDisplayed:!1,permissions:ve.Z.settings.webhooks.main},{intlLabel:{id:"Settings.apiTokens.title",defaultMessage:"API Tokens"},to:"/settings/api-tokens?sort=name:ASC",id:"api-tokens",isDisplayed:!1,permissions:ve.Z.settings["api-tokens"].main},{intlLabel:{id:"Settings.transferTokens.title",defaultMessage:"Transfer Tokens"},to:"/settings/transfer-tokens?sort=name:ASC",id:"transfer-tokens",isDisplayed:!1,permissions:ve.Z.settings["transfer-tokens"].main}];const Bt=(()=>window&&window.strapi&&window.strapi.isEE?t(11545).Z:t(73086).Z)();var vt=[...yt,...Bt],Tt=(h,{settings:p,shouldUpdateStrapi:l})=>{const L=p.global.links,U=X([...L,...vt]).map(Y=>({...Y,hasNotification:Y.id==="000-application-infos"&&l})),B=Object.values($e()(p,"global")),G=[{...p.global,links:U},{id:"permissions",intlLabel:{id:"Settings.permissions",defaultMessage:"Administration Panel"},links:jt},...B];return{...h,menu:ge(G)}},Pt=(h=!1)=>{const{allPermissions:p}=(0,m.useRBACProvider)(),{shouldUpdateStrapi:l}=(0,m.useAppInfos)(),{settings:L}=(0,m.useStrapiApp)(),[{isLoading:U,menu:B},G]=(0,e.useReducer)(Fe,Pe,()=>Tt(Pe,{settings:L,shouldUpdateStrapi:l}));return(0,e.useEffect)(()=>{h||(async()=>{const ie=async(Ze,Ve)=>({hasPermission:await(0,m.hasPermissions)(p,Ze),path:Ve}),oe=(Ze=>Ze.reduce((Ve,pt,gt)=>{const ot=at=>at.map((ke,ce)=>ie(at[ce].permissions,`${gt}.links.${ce}`));return[...Ve,...ot(pt.links)]},[]))(B),Ie=await Promise.all(oe);G({type:"CHECK_PERMISSIONS_SUCCEEDED",data:Ie})})()},[p,h]),{isLoading:U,menu:B}},tt=t(8997),Rt=t(88423),Ye=t.n(Rt),Ct=t(56236),ct=t.n(Ct);const st={fieldsToPick:[],formErrors:{},initialData:{},isLoading:!0,modifiedData:{},showHeaderButtonLoader:!1,showHeaderLoader:!0},At=(h,p)=>(0,g.default)(h,l=>{switch(p.type){case"GET_DATA_SUCCEEDED":{l.isLoading=!1,l.showHeaderLoader=!1,l.initialData=Ye()(p.data,h.fieldsToPick),l.modifiedData=Ye()(p.data,h.fieldsToPick);break}case"ON_CANCEL":{l.modifiedData=h.initialData,l.formErrors={};break}case"ON_CHANGE":{p.inputType==="password"&&!p.value?ct()(l.modifiedData,p.keys.split(".")):p.keys.includes("username")&&!p.value?he()(l.modifiedData,p.keys.split("."),null):he()(l.modifiedData,p.keys.split("."),p.value);break}case"ON_SUBMIT":{l.showHeaderButtonLoader=!0;break}case"ON_SUBMIT_SUCCEEDED":{l.initialData=Ye()(p.data,h.fieldsToPick),l.modifiedData=Ye()(p.data,h.fieldsToPick),l.showHeaderButtonLoader=!1;break}case"SET_ERRORS":{l.formErrors=p.errors,l.showHeaderButtonLoader=!1;break}default:return l}});var mt=(h,p)=>({...h,fieldsToPick:p}),Lt=(h,p,l,L)=>{const[{formErrors:U,initialData:B,isLoading:G,modifiedData:Y,showHeaderButtonLoader:ie,showHeaderLoader:De},oe]=(0,e.useReducer)(At,st,()=>mt(st,L)),Ie=(0,m.useNotification)(),{lockApp:Ze,unlockApp:Ve}=(0,m.useOverlayBlocker)();return(0,e.useEffect)(()=>{h&&(async()=>{try{const{data:ce}=await(0,m.request)(h,{method:"GET"});oe({type:"GET_DATA_SUCCEEDED",data:ce,fieldsToPick:L})}catch(ce){console.error(ce.response),Ie({type:"warning",message:{id:"notification.error"}})}})()},[h]),[{formErrors:U,initialData:B,isLoading:G,modifiedData:Y,showHeaderButtonLoader:ie,showHeaderLoader:De},oe,{handleCancel:()=>{oe({type:"ON_CANCEL"})},handleChange:({target:{name:ke,value:ce,type:Oe}})=>{oe({type:"ON_CHANGE",inputType:Oe,keys:ke,value:ce})},handleSubmit:async ke=>{ke.preventDefault();const ce=await(0,tt.R6)(Y,p);if(oe({type:"SET_ERRORS",errors:ce||{}}),!ce)try{Ze(),oe({type:"ON_SUBMIT"});const Oe=$e()(Y,["confirmPassword","registrationToken"]);Oe.roles&&(Oe.roles=Oe.roles.map(rt=>rt.id));const{data:we}=await(0,m.request)(h,{method:"PUT",body:Oe});l(we),oe({type:"ON_SUBMIT_SUCCEEDED",data:we}),Ie({type:"success",message:{id:"notification.success.saved"}})}catch(Oe){const we=Oe?.response?.payload??{data:{}};we?.data&&typeof we.data=="string"?Ie({type:"warning",message:we.data}):Ie({type:"warning",message:we.message});const rt=(0,tt.Iz)(we);oe({type:"SET_ERRORS",errors:rt})}finally{Ve()}},setField:(ke,ce)=>{oe({type:"ON_CHANGE",keys:ke,value:ce})}}]},St=()=>(0,e.useContext)(r.$l);const Dt=!JSON.parse(localStorage.getItem("STRAPI_UPDATE_NOTIF")),_t=()=>{const{latestStrapiReleaseTag:h,shouldUpdateStrapi:p}=useAppInfos(),l=useNotification();return useEffect(()=>{p&&Dt&&l({type:"info",message:{id:"notification.version.update.message"},link:{url:`https://github.com/strapi/strapi/releases/tag/${h}`,label:{id:"global.see-more"}},blockTransition:!0,onClose:()=>localStorage.setItem("STRAPI_UPDATE_NOTIF",!0)})},[h,p,l]),null};var Nt=null,Ot=()=>(0,e.useContext)(r.Rj),nt=(h,p,l,L)=>{const[U,B]=(0,e.useState)(!1),G=(0,m.useNotification)(),{post:Y}=(0,m.useFetchClient)(),{formatAPIError:ie}=(0,m.useAPIErrorHandler)();return{regenerateData:async()=>{try{const{data:{data:{accessKey:oe}}}=await Y(`${h}${p}/regenerate`);B(!1),l(oe)}catch(oe){B(!1),L?L(oe):G({type:"warning",message:ie(oe)})}},isLoadingConfirmation:U}}},47950:function(O,E){"use strict";E.Z=[]},73086:function(O,E){"use strict";E.Z=[]},954:function(O,E,t){"use strict";t.d(E,{sg:function(){return v},bU:function(){return x},ZP:function(){return D}});var e=t(32735),r=t(83292),n=t(60216),f=t.n(n),m=t(39161),g=t(5636),c=t(20139),R=()=>{const{changeLocale:W,localeNames:M}=(0,c.Z)(),{locale:w}=(0,g.useIntl)();return e.createElement(m.SimpleMenu,{label:M[w]},Object.keys(M).map($=>e.createElement(m.MenuItem,{onClick:()=>W($),key:$},M[$])))};const j=(0,r.default)(m.Box)`
|
|
57
|
+
margin: 0 auto;
|
|
58
|
+
width: 552px;
|
|
59
|
+
`,v=(0,r.default)(m.Flex)`
|
|
60
|
+
flex-direction: column;
|
|
61
|
+
`,x=({children:W})=>e.createElement(j,{shadow:"tableShadow",hasRadius:!0,paddingTop:9,paddingBottom:9,paddingLeft:10,paddingRight:10,background:"neutral0",justifyContent:"center"},W);x.propTypes={children:f().node.isRequired};const T=({children:W})=>e.createElement("div",null,e.createElement(m.Flex,{as:"header",justifyContent:"flex-end"},e.createElement(m.Box,{paddingTop:6,paddingRight:8},e.createElement(R,null))),e.createElement(m.Box,{paddingTop:2,paddingBottom:11},W));T.propTypes={children:f().node.isRequired};var D=T},56761:function(O,E){"use strict";const t=[];E.Z=t},72218:function(O,E,t){"use strict";var e=t(83292),r=t(39161),n=t.n(r);const f=(0,e.default)(r.FieldAction)`
|
|
62
|
+
svg {
|
|
63
|
+
height: 1rem;
|
|
64
|
+
width: 1rem;
|
|
65
|
+
path {
|
|
66
|
+
fill: ${({theme:m})=>m.colors.neutral600};
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
`;E.Z=f},1115:function(O,E,t){"use strict";var e=t(32735),r=t(13478),n=t.n(r),f=t(57269),m=t.n(f),g=t(39161),c=t.n(g),_=t(60216),R=t.n(_),j=t(5636),v=t(83292),x=t(83281),T=t(954),D=t(10190),W=t(72218);const M=(0,v.default)(g.TextInput)`
|
|
70
|
+
::-ms-reveal {
|
|
71
|
+
display: none;
|
|
72
|
+
}
|
|
73
|
+
`,w=({onSubmit:$,schema:z,children:ae})=>{const[P,S]=(0,e.useState)(!1),{formatMessage:A}=(0,j.useIntl)();return e.createElement(g.Main,null,e.createElement(T.bU,null,e.createElement(x.Formik,{enableReinitialize:!0,initialValues:{email:"",password:"",rememberMe:!1},onSubmit:$,validationSchema:z,validateOnChange:!1},({values:Z,errors:a,handleChange:le})=>e.createElement(r.Form,{noValidate:!0},e.createElement(T.sg,null,e.createElement(D.Z,null),e.createElement(g.Box,{paddingTop:6,paddingBottom:1},e.createElement(g.Typography,{variant:"alpha",as:"h1"},A({id:"Auth.form.welcome.title",defaultMessage:"Welcome!"}))),e.createElement(g.Box,{paddingBottom:7},e.createElement(g.Typography,{variant:"epsilon",textColor:"neutral600"},A({id:"Auth.form.welcome.subtitle",defaultMessage:"Log in to your Strapi account"}))),a.errorMessage&&e.createElement(g.Typography,{id:"global-form-error",role:"alert",tabIndex:-1,textColor:"danger600"},a.errorMessage)),e.createElement(g.Flex,{direction:"column",alignItems:"stretch",gap:6},e.createElement(g.TextInput,{error:a.email?A({id:a.email,defaultMessage:"This value is required."}):"",value:Z.email,onChange:le,label:A({id:"Auth.form.email.label",defaultMessage:"Email"}),placeholder:A({id:"Auth.form.email.placeholder",defaultMessage:"kai@doe.com"}),name:"email",required:!0}),e.createElement(M,{error:a.password?A({id:a.password,defaultMessage:"This value is required."}):"",onChange:le,value:Z.password,label:A({id:"global.password",defaultMessage:"Password"}),name:"password",type:P?"text":"password",endAction:e.createElement(W.Z,{onClick:Ae=>{Ae.stopPropagation(),S(Be=>!Be)},label:A(P?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},P?e.createElement(f.Eye,null):e.createElement(f.EyeStriked,null)),required:!0}),e.createElement(g.Checkbox,{onValueChange:Ae=>{le({target:{value:Ae,name:"rememberMe"}})},value:Z.rememberMe,"aria-label":"rememberMe",name:"rememberMe"},A({id:"Auth.form.rememberMe.label",defaultMessage:"Remember me"})),e.createElement(g.Button,{fullWidth:!0,type:"submit"},A({id:"Auth.form.button.login",defaultMessage:"Login"}))))),ae),e.createElement(g.Flex,{justifyContent:"center"},e.createElement(g.Box,{paddingTop:4},e.createElement(r.Link,{to:"/auth/forgot-password"},A({id:"Auth.link.forgot-password",defaultMessage:"Forgot your password?"})))))};w.defaultProps={children:null,onSubmit(){}},w.propTypes={children:R().node,onSubmit:R().func,schema:R().shape({type:R().string.isRequired}).isRequired},E.Z=w},5365:function(O,E,t){"use strict";var e=t(32735),r=t(60216),n=t.n(r),f=t(1115),m=t(954);const g=c=>e.createElement(m.ZP,null,e.createElement(f.Z,{...c}));g.defaultProps={onSubmit:c=>c.preventDefault()},g.propTypes={onSubmit:n().func},E.Z=g},53951:function(O,E,t){"use strict";t.r(E);var e=t(32735),r=t(13478),n=t.n(r),f=t(39161),m=t.n(f),g=t(57269),c=t.n(g),_=t(5636);const R=()=>{const{formatMessage:j}=(0,_.useIntl)();return(0,r.useFocusWhenNavigate)(),e.createElement(f.Main,{labelledBy:"title"},e.createElement(f.HeaderLayout,{id:"title",title:j({id:"content-manager.pageNotFound",defaultMessage:"Page not found"})}),e.createElement(f.ContentLayout,null,e.createElement(f.EmptyStateLayout,{action:e.createElement(r.LinkButton,{variant:"secondary",endIcon:e.createElement(g.ArrowRight,null),to:"/"},j({id:"app.components.NotFoundPage.back",defaultMessage:"Back to homepage"})),content:j({id:"app.page.not.found",defaultMessage:"Oops! We can't seem to find the page you're looging for..."}),hasRadius:!0,icon:e.createElement(g.EmptyPictures,{width:"10rem"}),shadow:"tableShadow"})))};E.default=R},26123:function(O,E){"use strict";E.Z={}},41832:function(O,E){"use strict";const t=({data:e})=>{try{return Object.keys(e).reduce((r,n)=>{const f=e[n][0];return r[n]={id:f,defaultMessage:f},r},{})}catch{return{}}};E.Z=t},8997:function(O,E,t){"use strict";t.d(E,{R6:function(){return n},ot:function(){return j},Iz:function(){return v.Z},Pp:function(){return z},IF:function(){return $},Qy:function(){return P},WW:function(){return T}});var e=t(13478),n=async(S,A)=>{let Z=null;try{await A.validate(S,{abortEarly:!1})}catch(a){Z=(0,e.getYupInnerErrors)(a)}return Z},f=t(32735),m=t(60216),g=t.n(m),c=t(5141);const _=({loadComponent:S})=>{const[A,Z]=(0,f.useState)(null);return(0,f.useEffect)(()=>{(async()=>{try{const le=await S();Z(()=>le.default)}catch(le){console.log(le)}})()},[S]),A?f.createElement(A,null):f.createElement(e.LoadingIndicatorPage,null)},R=(S,A,Z)=>f.createElement(c.Route,{render:()=>f.createElement(_,{loadComponent:S}),key:A,path:A,exact:Z||!1});_.propTypes={loadComponent:g().func.isRequired};var j=R,v=t(41832),T=S=>S.filter((A,Z,a)=>a.findIndex(le=>le.key===A.key)===Z),D=t(98978);const W=S=>sortBy(S,A=>A.name);var M=null,$=S=>`/admin/${S}`,z=(S,A="")=>[S,A].filter(Z=>Z).join(" ");const ae={bufferToHex(S){return[...new Uint8Array(S)].map(A=>A.toString(16).padStart(2,"0")).join("")},async digestMessage(S){const A=new TextEncoder().encode(S),Z=await crypto.subtle.digest("SHA-256",A);return this.bufferToHex(Z)}};async function P(S){if(!S)return null;try{return await ae.digestMessage(S.email)}catch{return null}}},58414:function(O,E,t){"use strict";t.d(E,{pl:function(){return R},q5:function(){return v.Z}});var e=t(32735),r=t(13478),n=t(8997),f=t(97889);const m={data:[],isLoading:!0};var c=(x,T)=>(0,f.default)(x,D=>{switch(T.type){case"GET_DATA_SUCCEEDED":{D.data=T.data,D.isLoading=!1;break}case"GET_DATA_ERROR":{D.isLoading=!1;break}default:return D}}),R=({ssoEnabled:x})=>{const[T,D]=(0,e.useReducer)(c,m),W=(0,r.useNotification)();(0,e.useEffect)(()=>{M()},[]);const M=async()=>{try{if(!x){D({type:"GET_DATA_SUCCEEDED",data:[]});return}const w=(0,n.IF)("providers"),$=await(0,r.request)(w,{method:"GET"});D({type:"GET_DATA_SUCCEEDED",data:$})}catch(w){console.error(w),D({type:"GET_DATA_ERROR"}),W({type:"warning",message:{id:"notification.error"}})}};return T},j=t(21306),v=t(2690)},21306:function(O,E,t){"use strict";var e=t(32735),r=t(5636),n=t(44096),f=t(13478),m=t.n(f),g=t(36866),c=t.n(g),_=t(2690);const R="strapi-notification-seat-limit",j="https://cloud.strapi.io/profile/billing",v="https://strapi.io/billing/request-seats",x=()=>{const{formatMessage:T}=(0,r.useIntl)();let{license:D}=(0,_.Z)();const W=(0,f.useNotification)(),{pathname:M}=(0,n.useLocation)();(0,e.useEffect)(()=>{if(!D?.data)return;const{enforcementUserCount:w,permittedSeats:$,licenseLimitStatus:z,isHostedOnStrapiCloud:ae}=D?.data??{},P=!c()($)&&!window.sessionStorage.getItem(`${R}-${M}`)&&(z==="AT_LIMIT"||z==="OVER_LIMIT");let S;z==="OVER_LIMIT"?S="warning":z==="AT_LIMIT"&&(S="softWarning"),P&&W({type:S,message:T({id:"notification.ee.warning.over-.message",defaultMessage:"Add seats to {licenseLimitStatus, select, OVER_LIMIT {invite} other {re-enable}} Users. If you already did it but it's not reflected in Strapi yet, make sure to restart your app."},{licenseLimitStatus:z}),title:T({id:"notification.ee.warning.at-seat-limit.title",defaultMessage:"{licenseLimitStatus, select, OVER_LIMIT {Over} other {At}} seat limit ({enforcementUserCount}/{permittedSeats})"},{licenseLimitStatus:z,enforcementUserCount:w,permittedSeats:$}),link:{url:ae?j:v,label:T({id:"notification.ee.warning.seat-limit.link",defaultMessage:"{isHostedOnStrapiCloud, select, true {ADD SEATS} other {CONTACT SALES}}"},{isHostedOnStrapiCloud:ae})},blockTransition:!0,onClose(){window.sessionStorage.setItem(`${R}-${M}`,!0)}})},[W,D.data,M,T])};E.Z=x},2690:function(O,E,t){"use strict";var e=t(13478),r=t.n(e),n=t(84968),f=t.n(n),m=t(72041);const g=()=>{const c=(0,e.useRBAC)(m.Z.settings.users),{isLoading:_,allowedActions:{canRead:R,canCreate:j,canUpdate:v,canDelete:x}}=c,T=R&&j&&v&&x,{get:D}=(0,e.useFetchClient)(),W=async()=>{const{data:{data:w}}=await D("/admin/license-limit-information");return w};return{license:(0,n.useQuery)(["ee","license-limit-info"],W,{enabled:!_&&T})}};E.Z=g},66334:function(O,E,t){"use strict";var e=t(72041);const n=[...strapi.features.isEnabled(strapi.features.AUDIT_LOGS)?[{intlLabel:{id:"global.auditLogs",defaultMessage:"Audit Logs"},to:"/settings/audit-logs?pageSize=50&page=1&sort=date:DESC",id:"auditLogs",isDisplayed:!1,permissions:e.Z.settings.auditLogs.main}]:[]];E.Z=n},11545:function(O,E,t){"use strict";var e=t(72041);const n=[...strapi.features.isEnabled(strapi.features.SSO)?[{intlLabel:{id:"Settings.sso.title",defaultMessage:"Single Sign-On"},to:"/settings/single-sign-on",id:"sso",isDisplayed:!1,permissions:e.Z.settings.sso.main}]:[]];E.Z=n},68944:function(O,E,t){"use strict";t.d(E,{Z:function(){return v}});var e=t(32735),r=t(5141),n=t(5636),f=t(49189),m=t.n(f),g=t(13478),c=t(8997),R=()=>{const{params:{authResponse:x}}=(0,r.useRouteMatch)("/auth/login/:authResponse"),{formatMessage:T}=(0,n.useIntl)(),{push:D}=(0,r.useHistory)(),W=(0,e.useRef)(T);let M=(0,e.useCallback)(()=>{D(`/auth/oops?info=${encodeURIComponent(W.current({id:"Auth.form.button.login.providers.error",defaultMessage:"We cannot connect you through the selected provider."}))}`)},[D]);const w=(0,e.useCallback)(async()=>{try{const $=m().get("jwtToken");if(g.auth.clearAppStorage(),$){g.auth.setToken($,!0);const z=(0,c.IF)("users/me"),{data:ae}=await(0,g.request)(z,{method:"GET"});g.auth.setUserInfo(ae,!0),m().remove("jwtToken"),D("/auth/login")}}catch{M()}},[D,M]);return(0,e.useEffect)(()=>{x==="error"&&M(),x==="success"&&w()},[x,w,M]),e.createElement(g.LoadingIndicatorPage,null)},v=[{Component:()=>({default:R}),to:"/auth/login/:authResponse",exact:!0}]},98768:function(O,E,t){"use strict";var e=t(32735),r=t(60216),n=t.n(r),f=t(83292),m=t(39161),g=t.n(m),c=t(5636),_=t(1115),R=t(58414),j=t(954),v=t(33205);const x=(0,f.default)(m.Divider)`
|
|
74
|
+
flex: 1;
|
|
75
|
+
`,T=D=>{const W=strapi.features.isEnabled(strapi.features.SSO),{isLoading:M,data:w}=(0,R.pl)({ssoEnabled:W}),{formatMessage:$}=(0,c.useIntl)();return!W||!M&&w.length===0?e.createElement(j.ZP,null,e.createElement(_.Z,{...D})):e.createElement(j.ZP,null,e.createElement(_.Z,{...D},e.createElement(m.Box,{paddingTop:7},e.createElement(m.Flex,{direction:"column",alignItems:"stretch",gap:7},e.createElement(m.Flex,null,e.createElement(x,null),e.createElement(m.Box,{paddingLeft:3,paddingRight:3},e.createElement(m.Typography,{variant:"sigma",textColor:"neutral600"},$({id:"Auth.login.sso.divider"}))),e.createElement(x,null)),e.createElement(v.Z,{providers:w,displayAllProviders:!1})))))};T.defaultProps={onSubmit:D=>D.preventDefault(),requestError:null},T.propTypes={formErrors:n().object.isRequired,modifiedData:n().object.isRequired,onChange:n().func.isRequired,onSubmit:n().func,requestError:n().object},E.Z=T},33205:function(O,E,t){"use strict";var e=t(32735),r=t(60216),n=t.n(r),f=t(39161),m=t.n(f),g=t(83292),c=t(5636),_=t(5141);const R=g.default.a`
|
|
76
|
+
width: ${136/16}rem;
|
|
77
|
+
display: flex;
|
|
78
|
+
justify-content: center;
|
|
79
|
+
align-items: center;
|
|
80
|
+
height: ${48/16}rem;
|
|
81
|
+
border: 1px solid ${({theme:T})=>T.colors.neutral150};
|
|
82
|
+
border-radius: ${({theme:T})=>T.borderRadius};
|
|
83
|
+
text-decoration: inherit;
|
|
84
|
+
&:link {
|
|
85
|
+
text-decoration: none;
|
|
86
|
+
}
|
|
87
|
+
color: ${({theme:T})=>T.colors.neutral600};
|
|
88
|
+
`,j=(0,g.default)(f.Flex)`
|
|
89
|
+
& a:not(:first-child):not(:last-child) {
|
|
90
|
+
margin: 0 ${({theme:T})=>T.spaces[2]};
|
|
91
|
+
}
|
|
92
|
+
& a:first-child {
|
|
93
|
+
margin-right: ${({theme:T})=>T.spaces[2]};
|
|
94
|
+
}
|
|
95
|
+
& a:last-child {
|
|
96
|
+
margin-left: ${({theme:T})=>T.spaces[2]};
|
|
97
|
+
}
|
|
98
|
+
`,v=({provider:T})=>e.createElement(f.Tooltip,{label:T.displayName},e.createElement(R,{href:`${strapi.backendURL}/admin/connect/${T.uid}`},T.icon?e.createElement("img",{src:T.icon,"aria-hidden":!0,alt:"",height:"32px"}):e.createElement(f.Typography,null,T.displayName)));v.propTypes={provider:n().shape({icon:n().string,displayName:n().string.isRequired,uid:n().string.isRequired}).isRequired};const x=({providers:T,displayAllProviders:D})=>{const{formatMessage:W}=(0,c.useIntl)();return D?e.createElement(f.Grid,{gap:4},T.map(M=>e.createElement(f.GridItem,{key:M.uid,col:4},e.createElement(v,{provider:M})))):T.length>2&&!D?e.createElement(f.Grid,{gap:4},T.slice(0,2).map(M=>e.createElement(f.GridItem,{key:M.uid,col:4},e.createElement(v,{provider:M}))),e.createElement(f.GridItem,{col:4},e.createElement(f.Tooltip,{label:W({id:"global.see-more"})},e.createElement(R,{as:_.Link,to:"/auth/providers"},e.createElement("span",{"aria-hidden":!0},"\u2022\u2022\u2022"))))):e.createElement(j,{justifyContent:"center"},T.map(M=>e.createElement(v,{key:M.uid,provider:M})))};x.defaultProps={displayAllProviders:!0},x.propTypes={providers:n().arrayOf(n().object).isRequired,displayAllProviders:n().bool},E.Z=x},7277:function(O,E,t){"use strict";t.d(E,{Z:function(){return M}});var e=t(32735),r=t(5141),n=t(83292),f=t(13478),m=t(39161),g=t(5636),c=t(58414),_=t(954),R=t(33205),j=t(10190);const v=(0,n.default)(m.Divider)`
|
|
99
|
+
flex: 1;
|
|
100
|
+
`;var T=()=>{const w=strapi.features.isEnabled(strapi.features.SSO),{push:$}=(0,r.useHistory)(),{formatMessage:z}=(0,g.useIntl)(),{isLoading:ae,data:P}=(0,c.pl)({ssoEnabled:w}),S=()=>{$("/auth/login")};return!w||!ae&&P.length===0?e.createElement(r.Redirect,{to:"/auth/login"}):e.createElement(_.ZP,null,e.createElement(m.Main,null,e.createElement(_.bU,null,e.createElement(_.sg,null,e.createElement(j.Z,null),e.createElement(m.Box,{paddingTop:6,paddingBottom:1},e.createElement(m.Typography,{as:"h1",variant:"alpha"},z({id:"Auth.form.welcome.title"}))),e.createElement(m.Box,{paddingBottom:7},e.createElement(m.Typography,{variant:"epsilon",textColor:"neutral600"},z({id:"Auth.login.sso.subtitle"})))),e.createElement(m.Flex,{direction:"column",alignItems:"stretch",gap:7},ae?e.createElement(m.Flex,{justifyContent:"center"},e.createElement(m.Loader,null,z({id:"Auth.login.sso.loading"}))):e.createElement(R.Z,{providers:P}),e.createElement(m.Flex,null,e.createElement(v,null),e.createElement(m.Box,{paddingLeft:3,paddingRight:3},e.createElement(m.Typography,{variant:"sigma",textColor:"neutral600"},z({id:"or"}))),e.createElement(v,null)),e.createElement(m.Button,{fullWidth:!0,size:"L",onClick:S},z({id:"Auth.form.button.login.strapi"})))),e.createElement(m.Flex,{justifyContent:"center"},e.createElement(m.Box,{paddingTop:4},e.createElement(f.Link,{to:"/auth/forgot-password"},e.createElement(m.Typography,{variant:"pi"},z({id:"Auth.link.forgot-password"})))))))},D=t(56355),M={...D.Z,providers:{Component:T,endPoint:null,fieldsToDisable:[],fieldsToOmit:[],schema:null,inputsPrefix:""}}},99568:function(O,E){"use strict";const t={settings:{auditLogs:{main:[{action:"admin::audit-logs.read",subject:null}],read:[{action:"admin::audit-logs.read",subject:null}]},sso:{main:[{action:"admin::provider-login.read",subject:null}],read:[{action:"admin::provider-login.read",subject:null}],update:[{action:"admin::provider-login.update",subject:null}]}}};E.Z=t},48224:function(O,E,t){var e={"./ar.json":[38677,7958],"./ca.json":[90169,3516],"./cs.json":[43186,7519],"./de.json":[8343,6901],"./dk.json":[65668,7898],"./en.json":[10329,320],"./es.json":[45445,8367],"./eu.json":[69511,8360],"./fr.json":[8399,8006],"./gu.json":[10182,2248],"./he.json":[21757,830],"./hi.json":[43206,6332],"./hu.json":[72320,5894],"./id.json":[74221,8897],"./it.json":[90685,6817],"./ja.json":[21727,1312],"./ko.json":[30986,1377],"./ml.json":[11309,9903],"./ms.json":[75973,3025],"./nl.json":[80381,2671],"./no.json":[82446,562],"./pl.json":[84008,7846],"./pt-BR.json":[91417,9647],"./pt.json":[41830,3340],"./ru.json":[57098,123],"./sa.json":[92900,9726],"./sk.json":[52204,606],"./sv.json":[43211,9303],"./th.json":[49582,749],"./tr.json":[99154,395],"./uk.json":[2987,7403],"./vi.json":[50576,3278],"./zh-Hans.json":[35964,2553],"./zh.json":[91999,1011]};function r(n){if(!t.o(e,n))return Promise.resolve().then(function(){var g=new Error("Cannot find module '"+n+"'");throw g.code="MODULE_NOT_FOUND",g});var f=e[n],m=f[0];return t.e(f[1]).then(function(){return t.t(m,19)})}r.keys=function(){return Object.keys(e)},r.id=48224,O.exports=r},56355:function(O,E,t){"use strict";t.d(E,{Z:function(){return He}});var e=t(5173),r=t(13478),n=t(32735),f=t(5636),m=t(60216),g=t.n(m),c=t(39161),_=t(83281),R=t(954),j=t(10190);const v=({onSubmit:N,schema:Le})=>{const{formatMessage:te}=(0,f.useIntl)();return n.createElement(R.ZP,null,n.createElement(c.Main,null,n.createElement(R.bU,null,n.createElement(_.Formik,{enableReinitialize:!0,initialValues:{email:""},onSubmit:N,validationSchema:Le,validateOnChange:!1},({values:Te,errors:Ee,handleChange:ue})=>n.createElement(r.Form,{noValidate:!0},n.createElement(R.sg,null,n.createElement(j.Z,null),n.createElement(c.Box,{paddingTop:6,paddingBottom:7},n.createElement(c.Typography,{as:"h1",variant:"alpha"},te({id:"Auth.form.button.password-recovery",defaultMessage:"Password Recovery"}))),Ee.errorMessage&&n.createElement(c.Typography,{id:"global-form-error",role:"alert",tabIndex:-1,textColor:"danger600"},te({id:Ee.errorMessage,defaultMessage:"An error occurred"}))),n.createElement(c.Flex,{direction:"column",alignItems:"stretch",gap:6},n.createElement(c.TextInput,{error:Ee.email?te({id:Ee.email,defaultMessage:"This email is invalid."}):"",value:Te.email,onChange:ue,label:te({id:"Auth.form.email.label",defaultMessage:"Email"}),placeholder:te({id:"Auth.form.email.placeholder",defaultMessage:"kai@doe.com"}),name:"email",required:!0}),n.createElement(c.Button,{type:"submit",fullWidth:!0},te({id:"Auth.form.button.forgot-password",defaultMessage:"Send Email"})))))),n.createElement(c.Flex,{justifyContent:"center"},n.createElement(c.Box,{paddingTop:4},n.createElement(r.Link,{to:"/auth/login"},te({id:"Auth.link.ready",defaultMessage:"Ready to sign in?"}))))))};v.defaultProps={onSubmit:N=>N.preventDefault()},v.propTypes={onSubmit:g().func,schema:g().shape({type:g().string.isRequired}).isRequired};var x=v,D=()=>{const{formatMessage:N}=(0,f.useIntl)();return n.createElement(R.ZP,null,n.createElement(c.Main,null,n.createElement(R.bU,null,n.createElement(R.sg,null,n.createElement(j.Z,null),n.createElement(c.Box,{paddingTop:6,paddingBottom:7},n.createElement(c.Typography,{as:"h1",variant:"alpha"},N({id:"app.containers.AuthPage.ForgotPasswordSuccess.title",defaultMessage:"Email sent"}))),n.createElement(c.Typography,null,N({id:"app.containers.AuthPage.ForgotPasswordSuccess.text.email",defaultMessage:"It can take a few minutes to receive your password recovery link."})),n.createElement(c.Box,{paddingTop:4},n.createElement(c.Typography,null,N({id:"app.containers.AuthPage.ForgotPasswordSuccess.text.contact-admin",defaultMessage:"If you do not receive this link, please contact your administrator."}))))),n.createElement(c.Flex,{justifyContent:"center"},n.createElement(c.Box,{paddingTop:4},n.createElement(r.Link,{to:"/auth/login"},N({id:"Auth.link.signin",defaultMessage:"Sign in"}))))))},M=()=>{const{formatMessage:N}=(0,f.useIntl)(),te=(0,r.useQuery)().get("info")||N({id:"Auth.components.Oops.text",defaultMessage:"Your account has been suspended."});return n.createElement(R.ZP,null,n.createElement(c.Main,null,n.createElement(R.bU,null,n.createElement(R.sg,null,n.createElement(j.Z,null),n.createElement(c.Box,{paddingTop:6,paddingBottom:7},n.createElement(c.Typography,{as:"h1",variant:"alpha"},N({id:"Auth.components.Oops.title",defaultMessage:"Oops..."}))),n.createElement(c.Typography,null,te),n.createElement(c.Box,{paddingTop:4},n.createElement(c.Typography,null,N({id:"Auth.components.Oops.text.admin",defaultMessage:"If this is a mistake, please contact your administrator."}))))),n.createElement(c.Flex,{justifyContent:"center"},n.createElement(c.Box,{paddingTop:4},n.createElement(r.Link,{to:"/auth/login"},N({id:"Auth.link.signin",defaultMessage:"Sign in"}))))))},w=t(83292),$=t(33795),z=t.n($),ae=t(9086),P=t.n(ae),S=t(5141),A=t(84306),Z=t(57269),a=t(72218);const le=(0,w.default)(c.Box)`
|
|
101
|
+
text-align: center;
|
|
102
|
+
`,Ae=w.default.a`
|
|
103
|
+
color: ${({theme:N})=>N.colors.primary600};
|
|
104
|
+
`,Be=(0,w.default)(c.TextInput)`
|
|
105
|
+
::-ms-reveal {
|
|
106
|
+
display: none;
|
|
107
|
+
}
|
|
108
|
+
`,Ge=({authType:N,fieldsToDisable:Le,noSignin:te,onSubmit:Te,schema:Ee})=>{const ue=(0,r.useNotification)(),{push:re}=(0,S.useHistory)(),[je,Me]=(0,n.useState)(!1),[be,he]=(0,n.useState)(!1),[Pe,Ke]=(0,n.useState)(0),[Fe,et]=(0,n.useState)({}),{trackUsage:$e}=(0,r.useTracking)(),{formatMessage:V}=(0,f.useIntl)(),xe=(0,r.useQuery)().get("registrationToken");return(0,n.useEffect)(()=>{xe&&(async()=>{try{const{data:{data:se}}=await A.Z.get(`${strapi.backendURL}/admin/registration-info?registrationToken=${xe}`);se&&et(se)}catch(se){const ge=z()(se,["response","data","message"],"An error occurred");ue({type:"warning",message:ge}),re(`/auth/oops?info=${encodeURIComponent(ge)}`)}})()},[xe]),n.createElement(R.ZP,null,n.createElement(R.bU,null,n.createElement(_.Formik,{enableReinitialize:!0,initialValues:{firstname:Fe.firstname||"",lastname:Fe.lastname||"",email:Fe.email||"",password:"",confirmPassword:"",registrationToken:xe||void 0,news:!1},onSubmit:async(X,se)=>{try{await Ee.validate(X,{abortEarly:!1}),Pe>0&&N==="register-admin"&&$e("didSubmitWithErrorsFirstAdmin",{count:Pe.toString()}),Te(xe?{userInfo:P()(X,["registrationToken"]),registrationToken:xe}:X,se)}catch(ge){const Se=(0,r.getYupInnerErrors)(ge);Ke(Pe+1),se.setErrors(Se)}},validateOnChange:!1},({values:X,errors:se,handleChange:ge})=>n.createElement(r.Form,{noValidate:!0},n.createElement(c.Main,null,n.createElement(R.sg,null,n.createElement(j.Z,null),n.createElement(c.Box,{paddingTop:6,paddingBottom:1},n.createElement(c.Typography,{as:"h1",variant:"alpha"},V({id:"Auth.form.welcome.title",defaultMessage:"Welcome to Strapi!"}))),n.createElement(le,{paddingBottom:7},n.createElement(c.Typography,{variant:"epsilon",textColor:"neutral600"},V({id:"Auth.form.register.subtitle",defaultMessage:"Credentials are only used to authenticate in Strapi. All saved data will be stored in your database."})))),n.createElement(c.Flex,{direction:"column",alignItems:"stretch",gap:6},n.createElement(c.Grid,{gap:4},n.createElement(c.GridItem,{col:6},n.createElement(c.TextInput,{name:"firstname",required:!0,value:X.firstname,error:se.firstname?V(se.firstname):void 0,onChange:ge,label:V({id:"Auth.form.firstname.label",defaultMessage:"Firstname"})})),n.createElement(c.GridItem,{col:6},n.createElement(c.TextInput,{name:"lastname",value:X.lastname,onChange:ge,label:V({id:"Auth.form.lastname.label",defaultMessage:"Lastname"})}))),n.createElement(c.TextInput,{name:"email",disabled:Le.includes("email"),value:X.email,onChange:ge,error:se.email?V(se.email):void 0,required:!0,label:V({id:"Auth.form.email.label",defaultMessage:"Email"}),type:"email"}),n.createElement(Be,{name:"password",onChange:ge,value:X.password,error:se.password?V(se.password):void 0,endAction:n.createElement(a.Z,{onClick:Se=>{Se.preventDefault(),Me(ze=>!ze)},label:V(je?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},je?n.createElement(Z.Eye,null):n.createElement(Z.EyeStriked,null)),hint:V({id:"Auth.form.password.hint",defaultMessage:"Must be at least 8 characters, 1 uppercase, 1 lowercase & 1 number"}),required:!0,label:V({id:"global.password",defaultMessage:"Password"}),type:je?"text":"password"}),n.createElement(Be,{name:"confirmPassword",onChange:ge,value:X.confirmPassword,error:se.confirmPassword?V(se.confirmPassword):void 0,endAction:n.createElement(a.Z,{onClick:Se=>{Se.preventDefault(),he(ze=>!ze)},label:V(be?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},be?n.createElement(Z.Eye,null):n.createElement(Z.EyeStriked,null)),required:!0,label:V({id:"Auth.form.confirmPassword.label",defaultMessage:"Confirm Password"}),type:be?"text":"password"}),n.createElement(c.Checkbox,{onValueChange:Se=>{ge({target:{value:Se,name:"news"}})},value:X.news,name:"news","aria-label":"news"},V({id:"Auth.form.register.news.label",defaultMessage:"Keep me updated about new features & upcoming improvements (by doing this you accept the {terms} and the {policy})."},{terms:n.createElement(Ae,{target:"_blank",href:"https://strapi.io/terms",rel:"noreferrer"},V({id:"Auth.privacy-policy-agreement.terms",defaultMessage:"terms"})),policy:n.createElement(Ae,{target:"_blank",href:"https://strapi.io/privacy",rel:"noreferrer"},V({id:"Auth.privacy-policy-agreement.policy",defaultMessage:"policy"}))})),n.createElement(c.Button,{fullWidth:!0,size:"L",type:"submit"},V({id:"Auth.form.button.register",defaultMessage:"Let's start"})))))),!te&&n.createElement(c.Box,{paddingTop:4},n.createElement(c.Flex,{justifyContent:"center"},n.createElement(r.Link,{label:"Auth.link.signin",to:"/auth/login"},V({id:"Auth.link.signin.account",defaultMessage:"Already have an account?"}))))))};Ge.defaultProps={fieldsToDisable:[],noSignin:!1,onSubmit:N=>N.preventDefault()},Ge.propTypes={authType:g().string.isRequired,fieldsToDisable:g().array,noSignin:g().bool,onSubmit:g().func,schema:g().shape({validate:g().func.isRequired,type:g().string.isRequired}).isRequired};var _e=Ge;const ve=(0,w.default)(c.TextInput)`
|
|
109
|
+
::-ms-reveal {
|
|
110
|
+
display: none;
|
|
111
|
+
}
|
|
112
|
+
`,Ne=({onSubmit:N,schema:Le})=>{const[te,Te]=(0,n.useState)(!1),[Ee,ue]=(0,n.useState)(!1),{formatMessage:re}=(0,f.useIntl)();return n.createElement(R.ZP,null,n.createElement(c.Main,null,n.createElement(R.bU,null,n.createElement(_.Formik,{enableReinitialize:!0,initialValues:{password:"",confirmPassword:""},onSubmit:N,validationSchema:Le,validateOnChange:!1},({values:je,errors:Me,handleChange:be})=>n.createElement(r.Form,{noValidate:!0},n.createElement(R.sg,null,n.createElement(j.Z,null),n.createElement(c.Box,{paddingTop:6,paddingBottom:7},n.createElement(c.Typography,{as:"h1",variant:"alpha"},re({id:"global.reset-password",defaultMessage:"Reset password"}))),Me.errorMessage&&n.createElement(c.Typography,{id:"global-form-error",role:"alert",tabIndex:-1,textColor:"danger600"},re({id:Me.errorMessage,defaultMessage:"An error occurred"}))),n.createElement(c.Flex,{direction:"column",alignItems:"stretch",gap:6},n.createElement(ve,{name:"password",onChange:be,value:je.password,error:Me.password?re({id:Me.password,defaultMessage:"This field is required."}):void 0,endAction:n.createElement(a.Z,{onClick:he=>{he.preventDefault(),Te(Pe=>!Pe)},label:re(te?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},te?n.createElement(Z.Eye,null):n.createElement(Z.EyeStriked,null)),hint:re({id:"Auth.form.password.hint",defaultMessage:"Password must contain at least 8 characters, 1 uppercase, 1 lowercase and 1 number"}),required:!0,label:re({id:"global.password",defaultMessage:"Password"}),type:te?"text":"password"}),n.createElement(ve,{name:"confirmPassword",onChange:be,value:je.confirmPassword,error:Me.confirmPassword?re({id:Me.confirmPassword,defaultMessage:"This value is required."}):void 0,endAction:n.createElement(a.Z,{onClick:he=>{he.preventDefault(),ue(Pe=>!Pe)},label:re(te?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},Ee?n.createElement(Z.Eye,null):n.createElement(Z.EyeStriked,null)),required:!0,label:re({id:"Auth.form.confirmPassword.label",defaultMessage:"Confirm Password"}),type:Ee?"text":"password"}),n.createElement(c.Button,{fullwidth:!0,type:"submit"},re({id:"global.change-password",defaultMessage:"Change password"})))))),n.createElement(c.Flex,{justifyContent:"center"},n.createElement(c.Box,{paddingTop:4},n.createElement(r.Link,{to:"/auth/login"},re({id:"Auth.link.ready",defaultMessage:"Ready to sign in?"}))))))};Ne.defaultProps={onSubmit:N=>N.preventDefault()},Ne.propTypes={onSubmit:g().func,schema:g().shape({type:g().string.isRequired}).isRequired};var pe=Ne;const Xe=(()=>window&&window.strapi&&window.strapi.isEE?t(98768).Z:t(5365).Z)();var He={"forgot-password":{Component:x,endPoint:"forgot-password",fieldsToDisable:[],fieldsToOmit:[],schema:e.Ry().shape({email:e.Z_().email(r.translatedErrors.email).required(r.translatedErrors.required)}),inputsPrefix:""},"forgot-password-success":{Component:D,endPoint:"",fieldsToDisable:[],fieldsToOmit:[],schema:null,inputsPrefix:""},login:{Component:Xe,endPoint:"login",fieldsToDisable:[],fieldsToOmit:["rememberMe"],schema:e.Ry().shape({email:e.Z_().email(r.translatedErrors.email).required(r.translatedErrors.required),password:e.Z_().required(r.translatedErrors.required),rememberMe:e.Xg().nullable()}),inputsPrefix:""},oops:{Component:M,endPoint:null,fieldsToDisable:[],fieldsToOmit:[],schema:null,inputsPrefix:""},register:{Component:_e,endPoint:"register",fieldsToDisable:["email"],fieldsToOmit:["userInfo.confirmPassword","userInfo.news","userInfo.email"],schema:e.Ry().shape({firstname:e.Z_().trim().required(r.translatedErrors.required),lastname:e.Z_(),password:e.Z_().min(8,r.translatedErrors.minLength).matches(/[a-z]/,"components.Input.error.contain.lowercase").matches(/[A-Z]/,"components.Input.error.contain.uppercase").matches(/\d/,"components.Input.error.contain.number").required(r.translatedErrors.required),confirmPassword:e.Z_().oneOf([e.iH("password"),null],"components.Input.error.password.noMatch").required(r.translatedErrors.required),registrationToken:e.Z_().required(r.translatedErrors.required)}),inputsPrefix:"userInfo."},"register-admin":{Component:_e,endPoint:"register-admin",noSignin:!0,fieldsToDisable:[],fieldsToOmit:["confirmPassword","news"],schema:e.Ry().shape({firstname:e.Z_().trim().required(r.translatedErrors.required),lastname:e.Z_(),password:e.Z_().min(8,r.translatedErrors.minLength).matches(/[a-z]/,"components.Input.error.contain.lowercase").matches(/[A-Z]/,"components.Input.error.contain.uppercase").matches(/\d/,"components.Input.error.contain.number").required(r.translatedErrors.required),email:e.Z_().email(r.translatedErrors.email).strict().lowercase(r.translatedErrors.lowercase).required(r.translatedErrors.required),confirmPassword:e.Z_().oneOf([e.iH("password"),null],"components.Input.error.password.noMatch").required(r.translatedErrors.required)}),inputsPrefix:""},"reset-password":{Component:pe,endPoint:"reset-password",fieldsToDisable:[],fieldsToOmit:["confirmPassword"],schema:e.Ry().shape({password:e.Z_().min(8,r.translatedErrors.minLength).matches(/[a-z]/,"components.Input.error.contain.lowercase").matches(/[A-Z]/,"components.Input.error.contain.uppercase").matches(/\d/,"components.Input.error.contain.number").required(r.translatedErrors.required),confirmPassword:e.Z_().oneOf([e.iH("password"),null],"components.Input.error.password.noMatch").required(r.translatedErrors.required)})}}},72041:function(O,E,t){"use strict";t.d(E,{Z:function(){return c}});var e=t(86349),r=t.n(e),f={contentManager:{main:[],collectionTypesConfigurations:[{action:"plugin::content-manager.collection-types.configure-view",subject:null}],componentsConfigurations:[{action:"plugin::content-manager.components.configure-layout",subject:null}],singleTypesConfigurations:[{action:"plugin::content-manager.single-types.configure-view",subject:null}]},marketplace:{main:[{action:"admin::marketplace.read",subject:null}],read:[{action:"admin::marketplace.read",subject:null}]},settings:{roles:{main:[{action:"admin::roles.create",subject:null},{action:"admin::roles.update",subject:null},{action:"admin::roles.read",subject:null},{action:"admin::roles.delete",subject:null}],create:[{action:"admin::roles.create",subject:null}],delete:[{action:"admin::roles.delete",subject:null}],read:[{action:"admin::roles.read",subject:null}],update:[{action:"admin::roles.update",subject:null}]},users:{main:[{action:"admin::users.create",subject:null},{action:"admin::users.read",subject:null},{action:"admin::users.update",subject:null},{action:"admin::users.delete",subject:null}],create:[{action:"admin::users.create",subject:null}],delete:[{action:"admin::users.delete",subject:null}],read:[{action:"admin::users.read",subject:null}],update:[{action:"admin::users.update",subject:null}]},webhooks:{main:[{action:"admin::webhooks.create",subject:null},{action:"admin::webhooks.read",subject:null},{action:"admin::webhooks.update",subject:null},{action:"admin::webhooks.delete",subject:null}],create:[{action:"admin::webhooks.create",subject:null}],delete:[{action:"admin::webhooks.delete",subject:null}],read:[{action:"admin::webhooks.read",subject:null},{action:"admin::webhooks.update",subject:null},{action:"admin::webhooks.delete",subject:null}],update:[{action:"admin::webhooks.update",subject:null}]},"api-tokens":{main:[{action:"admin::api-tokens.access",subject:null}],create:[{action:"admin::api-tokens.create",subject:null}],delete:[{action:"admin::api-tokens.delete",subject:null}],read:[{action:"admin::api-tokens.read",subject:null}],update:[{action:"admin::api-tokens.update",subject:null}],regenerate:[{action:"admin::api-tokens.regenerate",subject:null}]},"transfer-tokens":{main:[{action:"admin::transfer.tokens.access",subject:null}],create:[{action:"admin::transfer.tokens.create",subject:null}],delete:[{action:"admin::transfer.tokens.delete",subject:null}],read:[{action:"admin::transfer.tokens.read",subject:null}],update:[{action:"admin::transfer.tokens.update",subject:null}],regenerate:[{action:"admin::transfer.tokens.regenerate",subject:null}]},"project-settings":{read:[{action:"admin::project-settings.read",subject:null}],update:[{action:"admin::project-settings.update",subject:null}]}}};const m=(()=>window&&window.strapi&&window.strapi.isEE?t(99568).Z:t(26123).Z)();var c=r()(f,m)},47750:function(O,E,t){"use strict";O.exports=t.p+"70674f63fc3904c20de0.svg"}}]);
|