@strapi/admin 4.8.1 → 4.9.0-exp.90df253ba90fd6879eb56a720a1f80d04ff745b8
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/pages/SettingsPage/components/Tokens/TokenTypeSelect/index.js +7 -5
- package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/components/FormTransferTokenContainer/index.js +41 -0
- package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/index.js +6 -4
- package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/utils/schema.js +1 -0
- package/admin/src/translations/zh-Hans.json +895 -693
- package/build/5563.451e91ee.chunk.js +30 -0
- package/build/7259.7744297b.chunk.js +1 -0
- package/build/{8580.0aa21940.chunk.js → 8580.b0dcf37c.chunk.js} +3 -3
- package/build/{Admin-authenticatedApp.1f2fd68f.chunk.js → Admin-authenticatedApp.5aa08bf5.chunk.js} +4 -4
- package/build/{Admin_settingsPage.caf3b9ab.chunk.js → Admin_settingsPage.489ec4eb.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.84afc839.chunk.js → content-manager.f530e141.chunk.js} +1 -1
- package/build/{content-type-builder.55dac849.chunk.js → content-type-builder.6ecd201d.chunk.js} +9 -9
- package/build/index.html +1 -1
- package/build/{main.5b92c1d6.js → main.43b93ff3.js} +386 -352
- package/build/{runtime~main.a3892432.js → runtime~main.a40b1b57.js} +2 -2
- package/build/users-permissions-translation-zh-Hans-json.6ab714ee.chunk.js +1 -0
- package/build/zh-Hans-json.4cfef87d.chunk.js +1 -0
- package/package.json +11 -11
- package/server/controllers/transfer/runner.js +4 -2
- package/server/routes/transfer.js +13 -4
- package/server/services/constants.js +4 -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/4649.33220ac3.chunk.js +0 -30
- package/build/7259.3675c199.chunk.js +0 -1
- package/build/users-permissions-translation-zh-Hans-json.0b31c705.chunk.js +0 -1
- package/build/zh-Hans-json.4c9706a6.chunk.js +0 -1
package/build/{Admin-authenticatedApp.1f2fd68f.chunk.js → Admin-authenticatedApp.5aa08bf5.chunk.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[801],{29761:function(K,M,n){n.r(M),n.d(M,{default:function(){return It}});var e=n(32735),r=n(13478),S=n(84968),E=n(33795),z=n.n(E),y={i8:"4.
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[801],{29761:function(K,M,n){n.r(M),n.d(M,{default:function(){return It}});var e=n(32735),r=n(13478),S=n(84968),E=n(33795),z=n.n(E),y=JSON.parse('{"i8":"4.9.0-exp.90df253ba90fd6879eb56a720a1f80d04ff745b8"}'),k=n(8888),d=n(5141),x=n(4409),R=n(74506),b=n(51968),$=n(88311),U=n.n($),Ce=n(58107),v=n(83292),Me=n(60216),i=n.n(Me),F=n(5636),o=n(39161),C=n(57269);const Re=(0,v.default)(o.Flex)`
|
|
2
2
|
position: fixed;
|
|
3
3
|
z-index: 4;
|
|
4
4
|
inset: 0;
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
&::marker {
|
|
10
10
|
color: ${({theme:t})=>t.colors.neutral800};
|
|
11
11
|
}
|
|
12
|
-
`,oe=({id:t,defaultMessage:a})=>{const{formatMessage:s}=(0,F.useIntl)();return e.createElement(o.Flex,{direction:"column",alignItems:"stretch",gap:4,paddingBottom:6},s({id:t,defaultMessage:a},{documentationLink:Se,b:Ae,p:Le,light:be,ul:Oe,li:De}))},Se=t=>e.createElement(o.Typography,{as:"a",textColor:"primary600",target:"_blank",rel:"noopener noreferrer",href:"https://docs.strapi.io/developer-docs/latest/developer-resources/database-apis-reference/rest-api.html#api-parameters"},t),Ae=t=>e.createElement(o.Typography,{fontWeight:"semiBold"},t),Le=t=>e.createElement(o.Typography,null,t),be=t=>e.createElement(o.Typography,{textColor:"neutral600"},t),Oe=t=>e.createElement(o.Box,{paddingLeft:6},e.createElement("ul",null,t)),De=t=>e.createElement(Pe,null,t);oe.propTypes={id:i().string.isRequired,defaultMessage:i().string.isRequired};var Be=oe,H=n(78024),ke=n(14317);const w=({number:t,last:a,type:s})=>e.createElement(o.Box,{paddingTop:3,paddingBottom:a?0:3},e.createElement(ke.Z,{number:t,type:s}));w.defaultProps={number:void 0,last:!1,type:""},w.propTypes={number:i().number,last:i().bool,type:i().string};var se=w,
|
|
12
|
+
`,oe=({id:t,defaultMessage:a})=>{const{formatMessage:s}=(0,F.useIntl)();return e.createElement(o.Flex,{direction:"column",alignItems:"stretch",gap:4,paddingBottom:6},s({id:t,defaultMessage:a},{documentationLink:Se,b:Ae,p:Le,light:be,ul:Oe,li:De}))},Se=t=>e.createElement(o.Typography,{as:"a",textColor:"primary600",target:"_blank",rel:"noopener noreferrer",href:"https://docs.strapi.io/developer-docs/latest/developer-resources/database-apis-reference/rest-api.html#api-parameters"},t),Ae=t=>e.createElement(o.Typography,{fontWeight:"semiBold"},t),Le=t=>e.createElement(o.Typography,null,t),be=t=>e.createElement(o.Typography,{textColor:"neutral600"},t),Oe=t=>e.createElement(o.Box,{paddingLeft:6},e.createElement("ul",null,t)),De=t=>e.createElement(Pe,null,t);oe.propTypes={id:i().string.isRequired,defaultMessage:i().string.isRequired};var Be=oe,H=n(78024),ke=n(14317);const w=({number:t,last:a,type:s})=>e.createElement(o.Box,{paddingTop:3,paddingBottom:a?0:3},e.createElement(ke.Z,{number:t,type:s}));w.defaultProps={number:void 0,last:!1,type:""},w.propTypes={number:i().number,last:i().bool,type:i().string};var se=w,N=n(23678);const Z=({title:t,content:a,cta:s,onCtaClick:l,sectionIndex:g,stepIndex:p,hasSectionAfter:f})=>{const{formatMessage:m}=(0,F.useIntl)(),h=g>0,u=p>0,T=g+1;return e.createElement(e.Fragment,null,e.createElement(o.Flex,{alignItems:"stretch"},e.createElement(o.Flex,{marginRight:8,justifyContent:"center",minWidth:(0,r.pxToRem)(30)},h&&e.createElement(H.Z,{type:N.hx,minHeight:(0,r.pxToRem)(24)})),e.createElement(o.Typography,{variant:"sigma",textColor:"primary600"},m({id:"app.components.GuidedTour.title",defaultMessage:"3 steps to get started"}))),e.createElement(o.Flex,null,e.createElement(o.Flex,{marginRight:8,minWidth:(0,r.pxToRem)(30)},e.createElement(se,{number:g+1,type:u?N.hx:N.lW})),e.createElement(o.Typography,{variant:"alpha",fontWeight:"bold",textColor:"neutral800",as:"h3",id:"title"},m(t))),e.createElement(o.Flex,{alignItems:"stretch"},e.createElement(o.Flex,{marginRight:8,direction:"column",justifyContent:"center",minWidth:(0,r.pxToRem)(30)},f&&e.createElement(e.Fragment,null,e.createElement(H.Z,{type:N.hx}),u&&e.createElement(se,{number:T+1,type:N.lW,last:!0}))),e.createElement(o.Box,null,e.createElement(Be,{...a}),s&&(s.target?e.createElement(r.LinkButton,{endIcon:e.createElement(C.ArrowRight,null),onClick:l,to:s.target},m(s.title)):e.createElement(o.Button,{endIcon:e.createElement(C.ArrowRight,null),onClick:l},m(s.title))))),u&&f&&e.createElement(o.Box,{paddingTop:3},e.createElement(o.Flex,{marginRight:8,justifyContent:"center",width:(0,r.pxToRem)(30)},e.createElement(H.Z,{type:N.hx,minHeight:(0,r.pxToRem)(24)}))))};Z.defaultProps={currentStep:null,cta:void 0},Z.propTypes={sectionIndex:i().number.isRequired,stepIndex:i().number.isRequired,hasSectionAfter:i().bool.isRequired,content:i().shape({id:i().string.isRequired,defaultMessage:i().string.isRequired}).isRequired,cta:i().shape({target:i().string,title:i().shape({id:i().string.isRequired,defaultMessage:i().string.isRequired})}),currentStep:i().string,onCtaClick:i().func.isRequired,title:i().shape({id:i().string.isRequired,defaultMessage:i().string.isRequired}).isRequired};var Fe=Z,Ne=()=>{const{currentStep:t,guidedTourState:a,setCurrentStep:s,setStepState:l,isGuidedTourVisible:g,setSkipped:p}=(0,r.useGuidedTour)(),[f,m]=(0,e.useState)(t),[{stepContent:h,sectionIndex:u,stepIndex:T,hasSectionAfter:O,hasStepAfter:A},W]=(0,e.useReducer)(Ie,ae),{trackUsage:G}=(0,r.useTracking)();(0,e.useEffect)(()=>{if(!t){m(!1);return}const[D]=U()(a,t);m(!D&&g)},[t,a,g]),(0,e.useEffect)(()=>{if(t){const[D]=U()(Ce.Z,t),L=Object.keys(a),[P,c]=t.split("."),B=L.indexOf(P),V=Object.keys(a[P]).indexOf(c),q=B<L.length-1,_=V<Object.keys(a[P]).length-1;W({type:"UPDATE_MODAL",content:D,newSectionIndex:B,newStepIndex:V,newHasSectionAfter:q,newHasStepAfter:_})}},[t,a]);const I=()=>{l(t,!0),G(h.trackingEvent),s(null)},j=()=>{p(!0),s(null),G("didSkipGuidedtour")};return f&&h?e.createElement(xe,{hideSkip:!A&&!O,onSkip:j,onClose:I},e.createElement(Fe,{...h,onCtaClick:I,currentStep:t,sectionIndex:u,stepIndex:T,hasSectionAfter:O})):null},Ge=n(15300),Ue=n(61450),We=n(1897),Q=n(78464),re=n(42889),je=n(25390),Ke=n(3703),$e=n(17264);const Ve=(0,v.default)(o.Box)`
|
|
13
13
|
width: ${150/16}rem;
|
|
14
14
|
position: absolute;
|
|
15
15
|
bottom: ${({theme:t})=>t.spaces[9]};
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
fill: ${({theme:t})=>t.colors.danger600};
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
|
-
`,le=({generalSectionLinks:t,pluginsSectionLinks:a})=>{const s=(0,e.useRef)(),[l,g]=(0,e.useState)(!1),{logos:{menu:p}}=(0,k.um)(),[f,m]=(0,r.usePersistentState)("navbar-condensed",!1),{userDisplayName:h}=(0,r.useAppInfos)(),{formatMessage:u}=(0,F.useIntl)(),{trackUsage:T}=(0,r.useTracking)(),{pathname:O}=(0,d.useLocation)(),A=(0,d.useHistory)(),{post:W}=(0,r.getFetchClient)(),
|
|
35
|
+
`,le=({generalSectionLinks:t,pluginsSectionLinks:a})=>{const s=(0,e.useRef)(),[l,g]=(0,e.useState)(!1),{logos:{menu:p}}=(0,k.um)(),[f,m]=(0,r.usePersistentState)("navbar-condensed",!1),{userDisplayName:h}=(0,r.useAppInfos)(),{formatMessage:u}=(0,F.useIntl)(),{trackUsage:T}=(0,r.useTracking)(),{pathname:O}=(0,d.useLocation)(),A=(0,d.useHistory)(),{post:W}=(0,r.getFetchClient)(),G=h.split(" ").map(c=>c.substring(0,1)).join("").substring(0,2),I=()=>g(c=>!c),j=async()=>{await W("/admin/logout"),r.auth.clearAppStorage(),I(),A.push("/auth/login")},D=c=>{!c.currentTarget.contains(c.relatedTarget)&&c.relatedTarget?.parentElement?.id!=="main-nav-user-button"&&g(!1)},L=(c=null)=>{T("willNavigate",{from:O,to:c})},P=u({id:"app.components.LeftMenu.navbrand.title",defaultMessage:"Strapi Dashboard"});return e.createElement(Ge.$,{condensed:f},e.createElement(Ue.D,{as:d.NavLink,workplace:u({id:"app.components.LeftMenu.navbrand.workplace",defaultMessage:"Workplace"}),title:P,icon:e.createElement("img",{src:p.custom||p.default,alt:u({id:"app.components.LeftMenu.logo.alt",defaultMessage:"Application logo"})})}),e.createElement(o.Divider,null),e.createElement(We._,null,e.createElement(Q.O,{as:d.NavLink,to:"/content-manager",icon:e.createElement(C.Write,null),onClick:()=>L("/content-manager")},u({id:"global.content-manager",defaultMessage:"Content manager"})),a.length>0?e.createElement(re.y,{label:u({id:"app.components.LeftMenu.plugins",defaultMessage:"Plugins"})},a.map(c=>{const B=c.icon;return e.createElement(Q.O,{as:d.NavLink,to:c.to,key:c.to,icon:e.createElement(B,null),onClick:()=>L(c.to)},u(c.intlLabel))})):null,t.length>0?e.createElement(re.y,{label:u({id:"app.components.LeftMenu.general",defaultMessage:"General"})},t.map(c=>{const B=c.icon;return e.createElement(Q.O,{as:d.NavLink,badgeContent:c.notificationsCount>0&&c.notificationsCount.toString()||void 0,to:c.to,key:c.to,icon:e.createElement(B,null),onClick:()=>L(c.to)},u(c.intlLabel))})):null),e.createElement(je.q,null,e.createElement(Ke.r,{id:"main-nav-user-button",ref:s,onClick:I,initials:G},h),l&&e.createElement(Ve,{onBlur:D,padding:1,shadow:"tableShadow",background:"neutral0",hasRadius:!0},e.createElement(o.FocusTrap,{onEscape:I},e.createElement(o.Flex,{direction:"column",alignItems:"stretch",gap:0},e.createElement(ie,{tabIndex:0,onClick:I,to:"/me"},e.createElement(o.Typography,null,u({id:"global.profile",defaultMessage:"Profile"}))),e.createElement(ie,{tabIndex:0,onClick:j,logout:"logout",to:"/auth/login"},e.createElement(o.Typography,{textColor:"danger600"},u({id:"app.components.LeftMenu.logout",defaultMessage:"Logout"})),e.createElement(C.Exit,null))))),e.createElement($e.w,{onClick:()=>m(c=>!c)},u(f?{id:"app.components.LeftMenu.expand",defaultMessage:"Expand the navbar"}:{id:"app.components.LeftMenu.collapse",defaultMessage:"Collapse the navbar"}))))};le.propTypes={generalSectionLinks:i().array.isRequired,pluginsSectionLinks:i().array.isRequired};var ze=le;const He=(0,v.default)(o.Box)`
|
|
36
36
|
flex: 1;
|
|
37
37
|
`,ce=({children:t,sideNav:a})=>{const{formatMessage:s}=(0,F.useIntl)();return e.createElement(o.Box,{background:"neutral100"},e.createElement(o.SkipToContent,null,s({id:"skipToContent",defaultMessage:"Skip to content"})),e.createElement(o.Flex,{alignItems:"flex-start"},a,e.createElement(He,null,t)))};ce.propTypes={children:i().node.isRequired,sideNav:i().node.isRequired};var we=ce,Y=n(64421),Ze=n(26648),Qe=n.p+"19eb2dfcf2603eb55733.png";const Ye=[{label:{id:"app.components.Onboarding.link.build-content",defaultMessage:"Build a content architecture"},href:"https://www.youtube.com/watch?v=G9GjN0RxhkE",duration:"5:48"},{label:{id:"app.components.Onboarding.link.manage-content",defaultMessage:"Add & manage content"},href:"https://www.youtube.com/watch?v=DEZw4KbybAI",duration:"3:18"},{label:{id:"app.components.Onboarding.link.manage-media",defaultMessage:"Manage media"},href:"https://www.youtube.com/watch?v=-61MuiMQb38",duration:"3:41"}],de={href:"https://www.youtube.com/playlist?list=PL7Q0DQYATmvidz6lEmwE5nIcOAYagxWqq",label:{id:"app.components.Onboarding.link.more-videos",defaultMessage:"Watch more videos"}},Je=[{label:{id:"global.documentation",defaultMessage:"documentation"},href:"https://docs.strapi.io",icon:C.Book},{label:{id:"app.static.links.cheatsheet",defaultMessage:"cheatsheet"},href:"https://strapi-showcase.s3-us-west-2.amazonaws.com/CheatSheet.pdf",icon:C.PaperPlane}],Xe=(0,v.default)(o.Button)`
|
|
38
38
|
border-radius: 50%;
|
|
@@ -76,4 +76,4 @@
|
|
|
76
76
|
:hover {
|
|
77
77
|
text-decoration: underline;
|
|
78
78
|
}
|
|
79
|
-
`;var tt=()=>{const t=(0,e.useRef)(),[a,s]=(0,e.useState)(!1),{formatMessage:l}=(0,F.useIntl)(),{communityEdition:g}=(0,r.useAppInfos)(),p=()=>{s(m=>!m)},f=[...Je,{label:{id:"Settings.application.get-help",defaultMessage:"Get help"},icon:C.Message,href:g?"https://discord.strapi.io":"https://support.strapi.io/support/home"}];return e.createElement(o.Box,{as:"aside",position:"fixed",bottom:2,right:2},e.createElement(Xe,{"aria-label":l(a?{id:"app.components.Onboarding.help.button-close",defaultMessage:"Close help menu"}:{id:"app.components.Onboarding.help.button",defaultMessage:"Open help menu"}),onClick:p,ref:t},e.createElement(o.Icon,{as:a?C.Cross:C.Question,color:"buttonNeutral0"})),a&&e.createElement(o.Portal,null,e.createElement(o.PopoverPrimitives.Content,{padding:0,source:t,placement:"top-end",spacing:12},e.createElement(o.FocusTrap,{onEscape:p},e.createElement(o.Flex,{justifyContent:"space-between",paddingBottom:5,paddingRight:6,paddingLeft:6,paddingTop:6},e.createElement(ue,{fontWeight:"bold"},l({id:"app.components.Onboarding.title",defaultMessage:"Get started videos"})),e.createElement(pe,{as:"a",href:de.href,target:"_blank",rel:"noreferrer noopener",variant:"pi",textColor:"primary600"},l(de.label))),e.createElement(o.Divider,null),Ye.map(({href:m,duration:h,label:u},T)=>e.createElement(_e,{as:"a",href:m,target:"_blank",rel:"noreferrer noopener",key:m,hasRadius:!0,paddingTop:4,paddingBottom:4,paddingLeft:6,paddingRight:11},e.createElement(o.Box,{paddingRight:5},e.createElement(o.Typography,{textColor:"neutral200",variant:"alpha"},T+1)),e.createElement(o.Box,{position:"relative"},e.createElement(et,{src:Qe,alt:""}),e.createElement(qe,{position:"absolute",top:"50%",left:"50%",background:"primary600",borderRadius:"50%",justifyContent:"center",width:6,height:6},e.createElement(o.Icon,{as:C.Play,color:"buttonNeutral0",width:3,height:3}))),e.createElement(o.Flex,{direction:"column",alignItems:"start",paddingLeft:4},e.createElement(o.Typography,{fontWeight:"bold"},l(u)),e.createElement(o.VisuallyHidden,null,":"),e.createElement(o.Typography,{textColor:"neutral600",variant:"pi"},h)))),e.createElement(o.Flex,{direction:"column",alignItems:"stretch",gap:2,paddingLeft:5,paddingTop:2,paddingBottom:5},f.map(({label:m,href:h,icon:u})=>e.createElement(o.Flex,{gap:3,key:h},e.createElement(o.Icon,{as:u,color:"primary600"}),e.createElement(pe,{as:"a",href:h,target:"_blank",rel:"noreferrer noopener",variant:"sigma",textColor:"primary700"},l(m)))))))))};const nt=(0,e.lazy)(()=>Promise.all([n.e(8469),n.e(8580),n.e(994)]).then(n.bind(n,58153))),at=(0,e.lazy)(()=>n.e(3981).then(n.bind(n,12016))),ot=(0,e.lazy)(()=>n.e(3677).then(n.bind(n,15415))),st=(0,e.lazy)(()=>Promise.all([n.e(8469),n.e(5516)]).then(n.bind(n,92698))),me=(0,e.lazy)(()=>Promise.resolve().then(n.bind(n,53951))),rt=(0,e.lazy)(()=>n.e(9501).then(n.bind(n,92336))),it=(0,e.lazy)(()=>n.e(9497).then(n.bind(n,9972))),ge=(0,e.lazy)(()=>n.e(5895).then(n.bind(n,61056))),lt=()=>{const{trackUsage:t}=(0,r.useTracking)(),a=(0,x.useDispatch)(),s=(0,x.useSelector)(l=>l.admin_app.status);(0,e.useEffect)(()=>{s==="init"&&(t("didAccessAuthenticatedAdministration"),a({type:Ze.e}))},[s])};var ct=()=>{lt();const{isLoading:t,generalSectionLinks:a,pluginsSectionLinks:s}=(0,k.H9)(),{menu:l}=(0,r.useStrapiApp)(),{showTutorials:g}=(0,k.um)(),p=(0,e.useMemo)(()=>l.filter(f=>f.Component).map(({to:f,Component:m,exact:h})=>(0,Y.ot)(m,f,h)),[l]);return t?e.createElement(r.LoadingIndicatorPage,null):e.createElement(R.DndProvider,{backend:b.PD},e.createElement(we,{sideNav:e.createElement(ze,{generalSectionLinks:a,pluginsSectionLinks:s})},e.createElement(e.Suspense,{fallback:e.createElement(r.LoadingIndicatorPage,null)},e.createElement(d.Switch,null,e.createElement(d.Route,{path:"/",component:at,exact:!0}),e.createElement(d.Route,{path:"/me",component:it,exact:!0}),e.createElement(d.Route,{path:"/content-manager",component:nt}),p,e.createElement(d.Route,{path:"/settings/:settingId",component:ge}),e.createElement(d.Route,{path:"/settings",component:ge,exact:!0}),e.createElement(d.Route,{path:"/marketplace"},e.createElement(st,null)),e.createElement(d.Route,{path:"/list-plugins",exact:!0},e.createElement(ot,null)),e.createElement(d.Route,{path:"/404",component:me}),e.createElement(d.Route,{path:"/500",component:rt}),e.createElement(d.Route,{path:"",component:me}))),e.createElement(Ge,null),g&&e.createElement(tt,null)))},dt=t=>({plugins:Object.keys(t).reduce((a,s)=>(a[s]={...t[s]},a),{})}),ut=n(3040),pt=n.n(ut);const he={plugins:null};var mt=(t=he,a)=>(0,ne.default)(t,s=>{switch(a.type){case"SET_PLUGIN_READY":{pt()(s,["plugins",a.pluginId,"isReady"],!0);break}default:return s}}),gt=()=>{const{plugins:t}=(0,r.useStrapiApp)(),[{plugins:a},s]=(0,e.useReducer)(mt,he,()=>dt(t)),l=(0,e.useRef)(p=>{s({type:"SET_PLUGIN_READY",pluginId:p})});if(Object.keys(a).some(p=>a[p].isReady===!1)){const p=Object.keys(a).reduce((f,m)=>{const h=a[m].initializer;if(h){const u=a[m].pluginId;f.push(e.createElement(h,{key:u,setPlugin:l.current}))}return f},[]);return e.createElement(e.Fragment,null,p,e.createElement(r.LoadingIndicatorPage,null))}return e.createElement(ct,null)},fe=n(17367);const ht=()=>({type:fe.l}),ft=t=>({type:fe.m,permissions:t}),Ee=({children:t,permissions:a,refetchPermissions:s})=>{const{allPermissions:l}=(0,x.useSelector)(p=>p.rbacProvider),g=(0,x.useDispatch)();return(0,e.useEffect)(()=>(g(ft(a)),()=>{g(ht())}),[a,g]),l?e.createElement(r.RBACProviderContext.Provider,{value:{allPermissions:l,refetchPermissions:s}},t):e.createElement(r.LoadingIndicatorPage,null)};Ee.propTypes={children:i().element.isRequired,permissions:i().array.isRequired,refetchPermissions:i().func.isRequired};var Et=Ee,yt=n(55721),Tt=n(54770),J=n.n(Tt),ye=(t,a)=>!J().valid(t)||!J().valid(a)?!1:J().lt(t,a);const Te=y.i8,vt=!JSON.parse(localStorage.getItem("STRAPI_UPDATE_NOTIF")),{get:X}=(0,r.getFetchClient)(),Ct=async t=>{try{const{data:{tag_name:a}}=await yt.Z.get("https://api.github.com/repos/strapi/strapi/releases/latest");return ye(Te,a)&&vt&&t({type:"info",message:{id:"notification.version.update.message"},link:{url:`https://github.com/strapi/strapi/releases/tag/${a}`,label:{id:"global.see-more"}},blockTransition:!0,onClose:()=>localStorage.setItem("STRAPI_UPDATE_NOTIF",!0)}),a}catch{return Te}},Mt=async()=>{try{const{data:t,headers:a}=await X("/admin/information");if(!a["content-type"].includes("application/json"))throw new Error("Not found");return t.data}catch(t){throw new Error(t)}},Rt=async()=>{try{const{data:t,headers:a}=await X("/admin/users/me/permissions");if(!a["content-type"].includes("application/json"))throw new Error("Not found");return t.data}catch(t){throw new Error(t)}},xt=async()=>{try{const{data:{data:{roles:t}}}=await X("/admin/users/me");return t}catch(t){throw new Error(t)}},ve=y.i8;var It=()=>{const{setGuidedTourVisibility:t}=(0,r.useGuidedTour)(),a=(0,r.useNotification)(),s=(0,e.useRef)(t),l=r.auth.getUserInfo(),g=z()(l,"username")||(0,Y.Pp)(l.firstname,l.lastname),[p,f]=(0,e.useState)(g),[m,h]=(0,e.useState)(null),{showReleaseNotification:u}=(0,k.um)(),[{data:T,status:O},{data:A,isLoading:W},{data:N,status:I,refetch:j,isFetched:D,isFetching:L},{data:P}]=(0,S.useQueries)([{queryKey:"app-infos",queryFn:Mt},{queryKey:"strapi-release",queryFn:()=>Ct(a),enabled:u,initialData:ve},{queryKey:"admin-users-permission",queryFn:Rt,initialData:[]},{queryKey:"user-roles",queryFn:xt}]),c=(0,e.useMemo)(()=>ye(ve,A),[A]);(0,e.useEffect)(()=>{P&&P.find(({code:ee})=>ee==="strapi-super-admin")&&T?.autoReload&&s.current(!0)},[P,T]),(0,e.useEffect)(()=>{(async()=>{const ee=await(0,Y.Qy)(l);h(ee)})()},[l]);const V=W||(L&&D||O==="loading"||I==="loading"),q=(0,e.useMemo)(()=>({...T,userId:m,latestStrapiReleaseTag:A,setUserDisplayName:f,shouldUpdateStrapi:c,userDisplayName:p}),[T,A,c,p,m]);return V?e.createElement(r.LoadingIndicatorPage,null):O==="error"?e.createElement("div",null,"error..."):e.createElement(r.AppInfosContext.Provider,{value:q},e.createElement(Et,{permissions:N,refetchPermissions:j},e.createElement(gt,null)))}},78024:function(K,M,n){var e=n(32735),r=n(60216),S=n.n(r),E=n(13478),z=n.n(E),y=n(39161),k=n.n(y),d=n(23678);const x=({type:R,...b})=>e.createElement(y.Box,{width:(0,E.pxToRem)(2),height:"100%",background:R===d.VM?"neutral300":"primary500",hasRadius:!0,...b});x.defaultProps={type:d.VM},x.propTypes={type:S().oneOf([d.lW,d.hx,d.VM])},M.Z=x},14317:function(K,M,n){var e=n(32735),r=n(60216),S=n.n(r),E=n(13478),z=n.n(E),y=n(39161),k=n.n(y),d=n(57269),x=n.n(d),R=n(23678);const b=({type:$,number:U})=>$===R.hx?e.createElement(y.Flex,{background:"primary600",padding:2,borderRadius:"50%",width:(0,E.pxToRem)(30),height:(0,E.pxToRem)(30),justifyContent:"center"},e.createElement(y.Icon,{as:d.Check,"aria-hidden":!0,width:(0,E.pxToRem)(16),color:"neutral0"})):$===R.lW?e.createElement(y.Flex,{background:"primary600",padding:2,borderRadius:"50%",width:(0,E.pxToRem)(30),height:(0,E.pxToRem)(30),justifyContent:"center"},e.createElement(y.Typography,{fontWeight:"semiBold",textColor:"neutral0"},U)):e.createElement(y.Flex,{borderColor:"neutral500",borderWidth:"1px",borderStyle:"solid",padding:2,borderRadius:"50%",width:(0,E.pxToRem)(30),height:(0,E.pxToRem)(30),justifyContent:"center"},e.createElement(y.Typography,{fontWeight:"semiBold",textColor:"neutral600"},U));b.defaultProps={number:void 0,type:R.VM},b.propTypes={number:S().number,type:S().oneOf([R.lW,R.hx,R.VM])},M.Z=b},23678:function(K,M,n){n.d(M,{VM:function(){return S},hx:function(){return r},lW:function(){return e}});const e="isActive",r="isDone",S="isNotDone"},58107:function(K,M){const n={contentTypeBuilder:{home:{title:{id:"app.components.GuidedTour.home.CTB.title",defaultMessage:"\u{1F9E0} Build the content structure"},cta:{title:{id:"app.components.GuidedTour.home.CTB.cta.title",defaultMessage:"Go to the Content type Builder"},type:"REDIRECT",target:"/plugins/content-type-builder"},trackingEvent:"didClickGuidedTourHomepageContentTypeBuilder"},create:{title:{id:"app.components.GuidedTour.CTB.create.title",defaultMessage:"\u{1F9E0} Create a first Collection type"},content:{id:"app.components.GuidedTour.CTB.create.content",defaultMessage:"<p>Collection types help you manage several entries, Single types are suitable to manage only one entry.</p> <p>Ex: For a Blog website, Articles would be a Collection type whereas a Homepage would be a Single type.</p>"},cta:{title:{id:"app.components.GuidedTour.CTB.create.cta.title",defaultMessage:"Build a Collection type"},type:"CLOSE"},trackingEvent:"didClickGuidedTourStep1CollectionType"},success:{title:{id:"app.components.GuidedTour.CTB.success.title",defaultMessage:"Step 1: Completed \u2705"},content:{id:"app.components.GuidedTour.CTB.success.content",defaultMessage:"<p>Good going!</p><b>\u26A1\uFE0F What would you like to share with the world?</b>"},cta:{title:{id:"app.components.GuidedTour.create-content",defaultMessage:"Create content"},type:"REDIRECT",target:"/content-manager"},trackingEvent:"didCreateGuidedTourCollectionType"}},contentManager:{home:{title:{id:"app.components.GuidedTour.home.CM.title",defaultMessage:"\u26A1\uFE0F What would you like to share with the world?"},cta:{title:{id:"app.components.GuidedTour.create-content",defaultMessage:"Create content"},type:"REDIRECT",target:"/content-manager"},trackingEvent:"didClickGuidedTourHomepageContentManager"},create:{title:{id:"app.components.GuidedTour.CM.create.title",defaultMessage:"\u26A1\uFE0F Create content"},content:{id:"app.components.GuidedTour.CM.create.content",defaultMessage:"<p>Create and manage all the content here in the Content Manager.</p><p>Ex: Taking the Blog website example further, one can write an Article, save and publish it as they like.</p><p>\u{1F4A1} Quick tip - Don't forget to hit publish on the content you create.</p>"},cta:{title:{id:"app.components.GuidedTour.create-content",defaultMessage:"Create content"},type:"CLOSE"},trackingEvent:"didClickGuidedTourStep2ContentManager"},success:{title:{id:"app.components.GuidedTour.CM.success.title",defaultMessage:"Step 2: Completed \u2705"},content:{id:"app.components.GuidedTour.CM.success.content",defaultMessage:"<p>Awesome, one last step to go!</p><b>\u{1F680} See content in action</b>"},cta:{title:{id:"app.components.GuidedTour.CM.success.cta.title",defaultMessage:"Test the API"},type:"REDIRECT",target:"/settings/api-tokens"},trackingEvent:"didCreateGuidedTourEntry"}},apiTokens:{home:{title:{id:"app.components.GuidedTour.apiTokens.create.title",defaultMessage:"\u{1F680} See content in action"},cta:{title:{id:"app.components.GuidedTour.home.apiTokens.cta.title",defaultMessage:"Test the API"},type:"REDIRECT",target:"/settings/api-tokens"},trackingEvent:"didClickGuidedTourHomepageApiTokens"},create:{title:{id:"app.components.GuidedTour.apiTokens.create.title",defaultMessage:"\u{1F680} See content in action"},content:{id:"app.components.GuidedTour.apiTokens.create.content",defaultMessage:"<p>Generate an authentication token here and retrieve the content you just created.</p>"},cta:{title:{id:"app.components.GuidedTour.apiTokens.create.cta.title",defaultMessage:"Generate an API Token"},type:"CLOSE"},trackingEvent:"didClickGuidedTourStep3ApiTokens"},success:{title:{id:"app.components.GuidedTour.apiTokens.success.title",defaultMessage:"Step 3: Completed \u2705"},content:{id:"app.components.GuidedTour.apiTokens.success.content",defaultMessage:"<p>See content in action by making an HTTP request:</p><ul><li><p>To this URL: <light>https://'<'YOUR_DOMAIN'>'/api/'<'YOUR_CT'>'</light></p></li><li><p>With the header: <light>Authorization: bearer '<'YOUR_API_TOKEN'>'</light></p></li></ul><p>For more ways to interact with content, see the <documentationLink>documentation</documentationLink>.</p>"},trackingEvent:"didGenerateGuidedTourApiTokens"}}};M.Z=n}}]);
|
|
79
|
+
`;var tt=()=>{const t=(0,e.useRef)(),[a,s]=(0,e.useState)(!1),{formatMessage:l}=(0,F.useIntl)(),{communityEdition:g}=(0,r.useAppInfos)(),p=()=>{s(m=>!m)},f=[...Je,{label:{id:"Settings.application.get-help",defaultMessage:"Get help"},icon:C.Message,href:g?"https://discord.strapi.io":"https://support.strapi.io/support/home"}];return e.createElement(o.Box,{as:"aside",position:"fixed",bottom:2,right:2},e.createElement(Xe,{"aria-label":l(a?{id:"app.components.Onboarding.help.button-close",defaultMessage:"Close help menu"}:{id:"app.components.Onboarding.help.button",defaultMessage:"Open help menu"}),onClick:p,ref:t},e.createElement(o.Icon,{as:a?C.Cross:C.Question,color:"buttonNeutral0"})),a&&e.createElement(o.Portal,null,e.createElement(o.PopoverPrimitives.Content,{padding:0,source:t,placement:"top-end",spacing:12},e.createElement(o.FocusTrap,{onEscape:p},e.createElement(o.Flex,{justifyContent:"space-between",paddingBottom:5,paddingRight:6,paddingLeft:6,paddingTop:6},e.createElement(ue,{fontWeight:"bold"},l({id:"app.components.Onboarding.title",defaultMessage:"Get started videos"})),e.createElement(pe,{as:"a",href:de.href,target:"_blank",rel:"noreferrer noopener",variant:"pi",textColor:"primary600"},l(de.label))),e.createElement(o.Divider,null),Ye.map(({href:m,duration:h,label:u},T)=>e.createElement(_e,{as:"a",href:m,target:"_blank",rel:"noreferrer noopener",key:m,hasRadius:!0,paddingTop:4,paddingBottom:4,paddingLeft:6,paddingRight:11},e.createElement(o.Box,{paddingRight:5},e.createElement(o.Typography,{textColor:"neutral200",variant:"alpha"},T+1)),e.createElement(o.Box,{position:"relative"},e.createElement(et,{src:Qe,alt:""}),e.createElement(qe,{position:"absolute",top:"50%",left:"50%",background:"primary600",borderRadius:"50%",justifyContent:"center",width:6,height:6},e.createElement(o.Icon,{as:C.Play,color:"buttonNeutral0",width:3,height:3}))),e.createElement(o.Flex,{direction:"column",alignItems:"start",paddingLeft:4},e.createElement(o.Typography,{fontWeight:"bold"},l(u)),e.createElement(o.VisuallyHidden,null,":"),e.createElement(o.Typography,{textColor:"neutral600",variant:"pi"},h)))),e.createElement(o.Flex,{direction:"column",alignItems:"stretch",gap:2,paddingLeft:5,paddingTop:2,paddingBottom:5},f.map(({label:m,href:h,icon:u})=>e.createElement(o.Flex,{gap:3,key:h},e.createElement(o.Icon,{as:u,color:"primary600"}),e.createElement(pe,{as:"a",href:h,target:"_blank",rel:"noreferrer noopener",variant:"sigma",textColor:"primary700"},l(m)))))))))};const nt=(0,e.lazy)(()=>Promise.all([n.e(8469),n.e(8580),n.e(994)]).then(n.bind(n,58153))),at=(0,e.lazy)(()=>n.e(3981).then(n.bind(n,12016))),ot=(0,e.lazy)(()=>n.e(3677).then(n.bind(n,15415))),st=(0,e.lazy)(()=>Promise.all([n.e(8469),n.e(5516)]).then(n.bind(n,92698))),me=(0,e.lazy)(()=>Promise.resolve().then(n.bind(n,53951))),rt=(0,e.lazy)(()=>n.e(9501).then(n.bind(n,92336))),it=(0,e.lazy)(()=>n.e(9497).then(n.bind(n,9972))),ge=(0,e.lazy)(()=>n.e(5895).then(n.bind(n,61056))),lt=()=>{const{trackUsage:t}=(0,r.useTracking)(),a=(0,x.useDispatch)(),s=(0,x.useSelector)(l=>l.admin_app.status);(0,e.useEffect)(()=>{s==="init"&&(t("didAccessAuthenticatedAdministration"),a({type:Ze.e}))},[s])};var ct=()=>{lt();const{isLoading:t,generalSectionLinks:a,pluginsSectionLinks:s}=(0,k.H9)(),{menu:l}=(0,r.useStrapiApp)(),{showTutorials:g}=(0,k.um)(),p=(0,e.useMemo)(()=>l.filter(f=>f.Component).map(({to:f,Component:m,exact:h})=>(0,Y.ot)(m,f,h)),[l]);return t?e.createElement(r.LoadingIndicatorPage,null):e.createElement(R.DndProvider,{backend:b.PD},e.createElement(we,{sideNav:e.createElement(ze,{generalSectionLinks:a,pluginsSectionLinks:s})},e.createElement(e.Suspense,{fallback:e.createElement(r.LoadingIndicatorPage,null)},e.createElement(d.Switch,null,e.createElement(d.Route,{path:"/",component:at,exact:!0}),e.createElement(d.Route,{path:"/me",component:it,exact:!0}),e.createElement(d.Route,{path:"/content-manager",component:nt}),p,e.createElement(d.Route,{path:"/settings/:settingId",component:ge}),e.createElement(d.Route,{path:"/settings",component:ge,exact:!0}),e.createElement(d.Route,{path:"/marketplace"},e.createElement(st,null)),e.createElement(d.Route,{path:"/list-plugins",exact:!0},e.createElement(ot,null)),e.createElement(d.Route,{path:"/404",component:me}),e.createElement(d.Route,{path:"/500",component:rt}),e.createElement(d.Route,{path:"",component:me}))),e.createElement(Ne,null),g&&e.createElement(tt,null)))},dt=t=>({plugins:Object.keys(t).reduce((a,s)=>(a[s]={...t[s]},a),{})}),ut=n(3040),pt=n.n(ut);const he={plugins:null};var mt=(t=he,a)=>(0,ne.default)(t,s=>{switch(a.type){case"SET_PLUGIN_READY":{pt()(s,["plugins",a.pluginId,"isReady"],!0);break}default:return s}}),gt=()=>{const{plugins:t}=(0,r.useStrapiApp)(),[{plugins:a},s]=(0,e.useReducer)(mt,he,()=>dt(t)),l=(0,e.useRef)(p=>{s({type:"SET_PLUGIN_READY",pluginId:p})});if(Object.keys(a).some(p=>a[p].isReady===!1)){const p=Object.keys(a).reduce((f,m)=>{const h=a[m].initializer;if(h){const u=a[m].pluginId;f.push(e.createElement(h,{key:u,setPlugin:l.current}))}return f},[]);return e.createElement(e.Fragment,null,p,e.createElement(r.LoadingIndicatorPage,null))}return e.createElement(ct,null)},fe=n(17367);const ht=()=>({type:fe.l}),ft=t=>({type:fe.m,permissions:t}),Ee=({children:t,permissions:a,refetchPermissions:s})=>{const{allPermissions:l}=(0,x.useSelector)(p=>p.rbacProvider),g=(0,x.useDispatch)();return(0,e.useEffect)(()=>(g(ft(a)),()=>{g(ht())}),[a,g]),l?e.createElement(r.RBACProviderContext.Provider,{value:{allPermissions:l,refetchPermissions:s}},t):e.createElement(r.LoadingIndicatorPage,null)};Ee.propTypes={children:i().element.isRequired,permissions:i().array.isRequired,refetchPermissions:i().func.isRequired};var Et=Ee,yt=n(55721),Tt=n(54770),J=n.n(Tt),ye=(t,a)=>!J().valid(t)||!J().valid(a)?!1:J().lt(t,a);const Te=y.i8,vt=!JSON.parse(localStorage.getItem("STRAPI_UPDATE_NOTIF")),{get:X}=(0,r.getFetchClient)(),Ct=async t=>{try{const{data:{tag_name:a}}=await yt.Z.get("https://api.github.com/repos/strapi/strapi/releases/latest");return ye(Te,a)&&vt&&t({type:"info",message:{id:"notification.version.update.message"},link:{url:`https://github.com/strapi/strapi/releases/tag/${a}`,label:{id:"global.see-more"}},blockTransition:!0,onClose:()=>localStorage.setItem("STRAPI_UPDATE_NOTIF",!0)}),a}catch{return Te}},Mt=async()=>{try{const{data:t,headers:a}=await X("/admin/information");if(!a["content-type"].includes("application/json"))throw new Error("Not found");return t.data}catch(t){throw new Error(t)}},Rt=async()=>{try{const{data:t,headers:a}=await X("/admin/users/me/permissions");if(!a["content-type"].includes("application/json"))throw new Error("Not found");return t.data}catch(t){throw new Error(t)}},xt=async()=>{try{const{data:{data:{roles:t}}}=await X("/admin/users/me");return t}catch(t){throw new Error(t)}},ve=y.i8;var It=()=>{const{setGuidedTourVisibility:t}=(0,r.useGuidedTour)(),a=(0,r.useNotification)(),s=(0,e.useRef)(t),l=r.auth.getUserInfo(),g=z()(l,"username")||(0,Y.Pp)(l.firstname,l.lastname),[p,f]=(0,e.useState)(g),[m,h]=(0,e.useState)(null),{showReleaseNotification:u}=(0,k.um)(),[{data:T,status:O},{data:A,isLoading:W},{data:G,status:I,refetch:j,isFetched:D,isFetching:L},{data:P}]=(0,S.useQueries)([{queryKey:"app-infos",queryFn:Mt},{queryKey:"strapi-release",queryFn:()=>Ct(a),enabled:u,initialData:ve},{queryKey:"admin-users-permission",queryFn:Rt,initialData:[]},{queryKey:"user-roles",queryFn:xt}]),c=(0,e.useMemo)(()=>ye(ve,A),[A]);(0,e.useEffect)(()=>{P&&P.find(({code:ee})=>ee==="strapi-super-admin")&&T?.autoReload&&s.current(!0)},[P,T]),(0,e.useEffect)(()=>{(async()=>{const ee=await(0,Y.Qy)(l);h(ee)})()},[l]);const V=W||(L&&D||O==="loading"||I==="loading"),q=(0,e.useMemo)(()=>({...T,userId:m,latestStrapiReleaseTag:A,setUserDisplayName:f,shouldUpdateStrapi:c,userDisplayName:p}),[T,A,c,p,m]);return V?e.createElement(r.LoadingIndicatorPage,null):O==="error"?e.createElement("div",null,"error..."):e.createElement(r.AppInfosContext.Provider,{value:q},e.createElement(Et,{permissions:G,refetchPermissions:j},e.createElement(gt,null)))}},78024:function(K,M,n){var e=n(32735),r=n(60216),S=n.n(r),E=n(13478),z=n.n(E),y=n(39161),k=n.n(y),d=n(23678);const x=({type:R,...b})=>e.createElement(y.Box,{width:(0,E.pxToRem)(2),height:"100%",background:R===d.VM?"neutral300":"primary500",hasRadius:!0,...b});x.defaultProps={type:d.VM},x.propTypes={type:S().oneOf([d.lW,d.hx,d.VM])},M.Z=x},14317:function(K,M,n){var e=n(32735),r=n(60216),S=n.n(r),E=n(13478),z=n.n(E),y=n(39161),k=n.n(y),d=n(57269),x=n.n(d),R=n(23678);const b=({type:$,number:U})=>$===R.hx?e.createElement(y.Flex,{background:"primary600",padding:2,borderRadius:"50%",width:(0,E.pxToRem)(30),height:(0,E.pxToRem)(30),justifyContent:"center"},e.createElement(y.Icon,{as:d.Check,"aria-hidden":!0,width:(0,E.pxToRem)(16),color:"neutral0"})):$===R.lW?e.createElement(y.Flex,{background:"primary600",padding:2,borderRadius:"50%",width:(0,E.pxToRem)(30),height:(0,E.pxToRem)(30),justifyContent:"center"},e.createElement(y.Typography,{fontWeight:"semiBold",textColor:"neutral0"},U)):e.createElement(y.Flex,{borderColor:"neutral500",borderWidth:"1px",borderStyle:"solid",padding:2,borderRadius:"50%",width:(0,E.pxToRem)(30),height:(0,E.pxToRem)(30),justifyContent:"center"},e.createElement(y.Typography,{fontWeight:"semiBold",textColor:"neutral600"},U));b.defaultProps={number:void 0,type:R.VM},b.propTypes={number:S().number,type:S().oneOf([R.lW,R.hx,R.VM])},M.Z=b},23678:function(K,M,n){n.d(M,{VM:function(){return S},hx:function(){return r},lW:function(){return e}});const e="isActive",r="isDone",S="isNotDone"},58107:function(K,M){const n={contentTypeBuilder:{home:{title:{id:"app.components.GuidedTour.home.CTB.title",defaultMessage:"\u{1F9E0} Build the content structure"},cta:{title:{id:"app.components.GuidedTour.home.CTB.cta.title",defaultMessage:"Go to the Content type Builder"},type:"REDIRECT",target:"/plugins/content-type-builder"},trackingEvent:"didClickGuidedTourHomepageContentTypeBuilder"},create:{title:{id:"app.components.GuidedTour.CTB.create.title",defaultMessage:"\u{1F9E0} Create a first Collection type"},content:{id:"app.components.GuidedTour.CTB.create.content",defaultMessage:"<p>Collection types help you manage several entries, Single types are suitable to manage only one entry.</p> <p>Ex: For a Blog website, Articles would be a Collection type whereas a Homepage would be a Single type.</p>"},cta:{title:{id:"app.components.GuidedTour.CTB.create.cta.title",defaultMessage:"Build a Collection type"},type:"CLOSE"},trackingEvent:"didClickGuidedTourStep1CollectionType"},success:{title:{id:"app.components.GuidedTour.CTB.success.title",defaultMessage:"Step 1: Completed \u2705"},content:{id:"app.components.GuidedTour.CTB.success.content",defaultMessage:"<p>Good going!</p><b>\u26A1\uFE0F What would you like to share with the world?</b>"},cta:{title:{id:"app.components.GuidedTour.create-content",defaultMessage:"Create content"},type:"REDIRECT",target:"/content-manager"},trackingEvent:"didCreateGuidedTourCollectionType"}},contentManager:{home:{title:{id:"app.components.GuidedTour.home.CM.title",defaultMessage:"\u26A1\uFE0F What would you like to share with the world?"},cta:{title:{id:"app.components.GuidedTour.create-content",defaultMessage:"Create content"},type:"REDIRECT",target:"/content-manager"},trackingEvent:"didClickGuidedTourHomepageContentManager"},create:{title:{id:"app.components.GuidedTour.CM.create.title",defaultMessage:"\u26A1\uFE0F Create content"},content:{id:"app.components.GuidedTour.CM.create.content",defaultMessage:"<p>Create and manage all the content here in the Content Manager.</p><p>Ex: Taking the Blog website example further, one can write an Article, save and publish it as they like.</p><p>\u{1F4A1} Quick tip - Don't forget to hit publish on the content you create.</p>"},cta:{title:{id:"app.components.GuidedTour.create-content",defaultMessage:"Create content"},type:"CLOSE"},trackingEvent:"didClickGuidedTourStep2ContentManager"},success:{title:{id:"app.components.GuidedTour.CM.success.title",defaultMessage:"Step 2: Completed \u2705"},content:{id:"app.components.GuidedTour.CM.success.content",defaultMessage:"<p>Awesome, one last step to go!</p><b>\u{1F680} See content in action</b>"},cta:{title:{id:"app.components.GuidedTour.CM.success.cta.title",defaultMessage:"Test the API"},type:"REDIRECT",target:"/settings/api-tokens"},trackingEvent:"didCreateGuidedTourEntry"}},apiTokens:{home:{title:{id:"app.components.GuidedTour.apiTokens.create.title",defaultMessage:"\u{1F680} See content in action"},cta:{title:{id:"app.components.GuidedTour.home.apiTokens.cta.title",defaultMessage:"Test the API"},type:"REDIRECT",target:"/settings/api-tokens"},trackingEvent:"didClickGuidedTourHomepageApiTokens"},create:{title:{id:"app.components.GuidedTour.apiTokens.create.title",defaultMessage:"\u{1F680} See content in action"},content:{id:"app.components.GuidedTour.apiTokens.create.content",defaultMessage:"<p>Generate an authentication token here and retrieve the content you just created.</p>"},cta:{title:{id:"app.components.GuidedTour.apiTokens.create.cta.title",defaultMessage:"Generate an API Token"},type:"CLOSE"},trackingEvent:"didClickGuidedTourStep3ApiTokens"},success:{title:{id:"app.components.GuidedTour.apiTokens.success.title",defaultMessage:"Step 3: Completed \u2705"},content:{id:"app.components.GuidedTour.apiTokens.success.content",defaultMessage:"<p>See content in action by making an HTTP request:</p><ul><li><p>To this URL: <light>https://'<'YOUR_DOMAIN'>'/api/'<'YOUR_CT'>'</light></p></li><li><p>With the header: <light>Authorization: bearer '<'YOUR_API_TOKEN'>'</light></p></li></ul><p>For more ways to interact with content, see the <documentationLink>documentation</documentationLink>.</p>"},trackingEvent:"didGenerateGuidedTourApiTokens"}}};M.Z=n}}]);
|
|
@@ -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(55721),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(55721),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(64669),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}}]);
|
package/build/{api-tokens-create-page.4328b852.chunk.js → api-tokens-create-page.2a6e22bd.chunk.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4299],{3330:function(i,t,e){e.r(t);var s=e(32735),_=e(13478),l=e.n(_),n=e(72041),E=e(
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[4299],{3330:function(i,t,e){e.r(t);var s=e(32735),_=e(13478),l=e.n(_),n=e(72041),E=e(35563);const a=()=>s.createElement(_.CheckPagePermissions,{permissions:n.Z.settings["api-tokens"].create},s.createElement(E.Z,null));t.default=a}}]);
|
package/build/{api-tokens-edit-page.bce5050f.chunk.js → api-tokens-edit-page.fa38cd63.chunk.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[92],{97841:function(i,s,e){e.r(s);var t=e(32735),_=e(13478),l=e.n(_),n=e(72041),E=e(
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[92],{97841:function(i,s,e){e.r(s);var t=e(32735),_=e(13478),l=e.n(_),n=e(72041),E=e(35563);const a=()=>t.createElement(_.CheckPagePermissions,{permissions:n.Z.settings["api-tokens"].read},t.createElement(E.Z,null));s.default=a}}]);
|
|
@@ -1136,4 +1136,4 @@ ${e}
|
|
|
1136
1136
|
height: ${24/16}rem;
|
|
1137
1137
|
margin-right: ${({theme:e})=>e.spaces[3]};
|
|
1138
1138
|
}
|
|
1139
|
-
`,Go=({attributes:e,fieldForm:r,fieldToEdit:o,onCloseModal:s,onChangeEditLabel:a,onSubmit:c,type:l})=>{const{formatMessage:d}=(0,Z.useIntl)(),u=e[o].relationType;let m=!["media","relation"].includes(l);return["oneWay","oneToOne","manyToOne"].includes(u)&&(m=!0),t.createElement(i.ModalLayout,{onClose:s,labelledBy:"title"},t.createElement("form",{onSubmit:c},t.createElement(i.ModalHeader,null,t.createElement(Qd,null,t.createElement(yo,{type:l}),t.createElement(i.Typography,{fontWeight:"bold",textColor:"neutral800",as:"h2",id:"title"},d({id:C("containers.ListSettingsView.modal-form.edit-label"),defaultMessage:"Edit {fieldName}"},{fieldName:Xe()(o)})))),t.createElement(i.ModalBody,null,t.createElement(i.Grid,{gap:4},t.createElement(i.GridItem,{s:12,col:6},t.createElement(i.TextInput,{id:"label-input",label:d({id:C("form.Input.label"),defaultMessage:"Label"}),name:"label",onChange:g=>a(g),value:r.label,hint:d({id:C("form.Input.label.inputDescription"),defaultMessage:"This value overrides the label displayed in the table's head"})})),m&&t.createElement(i.GridItem,{s:12,col:6},t.createElement(i.ToggleInput,{"data-testid":"Enable sort on this field",checked:r.sortable,label:d({id:C("form.Input.sort.field"),defaultMessage:"Enable sort on this field"}),name:"sortable",onChange:g=>a({target:{name:"sortable",value:g.target.checked}}),onLabel:d({id:"app.components.ToggleCheckbox.on-label",defaultMessage:"on"}),offLabel:d({id:"app.components.ToggleCheckbox.off-label",defaultMessage:"off"})})))),t.createElement(i.ModalFooter,{startActions:t.createElement(i.Button,{onClick:s,variant:"tertiary"},d({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:t.createElement(i.Button,{type:"submit"},d({id:"global.finish",defaultMessage:"Finish"}))})))};Go.propTypes={attributes:n().objectOf(n().shape({relationType:n().string})).isRequired,fieldForm:n().shape({label:n().string,sortable:n().bool}).isRequired,fieldToEdit:n().string.isRequired,onChangeEditLabel:n().func.isRequired,onCloseModal:n().func.isRequired,onSubmit:n().func.isRequired,type:n().string.isRequired};var Kd=Go,Yd=(e,r)=>({...e,initialData:r,modifiedData:r});const Wn={fieldForm:{},fieldToEdit:"",initialData:{},modifiedData:{}};var Xd=(e=Wn,r)=>(0,lt.default)(e,o=>{const s=["modifiedData","layouts","list"];switch(r.type){case"ADD_FIELD":{const a=P()(e,s,[]);ne()(o,s,[...a,r.item]);break}case"MOVE_FIELD":{const a=P()(e,s,[]),{originalIndex:c,atIndex:l}=r;ne()(o,s,rt(a,c,l));break}case"ON_CHANGE":{ne()(o,["modifiedData",...r.keys.split(".")],r.value);break}case"ON_CHANGE_FIELD_METAS":{ne()(o,["fieldForm",r.name],r.value);break}case"REMOVE_FIELD":{const a=P()(e,s,[]);ne()(o,s,a.filter((c,l)=>r.index!==l));break}case"SET_FIELD_TO_EDIT":{const{fieldToEdit:a}=r;o.fieldToEdit=a,o.fieldForm.label=P()(o,["modifiedData","metadatas",a,"list","label"],""),o.fieldForm.sortable=P()(o,["modifiedData","metadatas",a,"list","sortable"],"");break}case"UNSET_FIELD_TO_EDIT":{o.fieldForm={},o.fieldToEdit="";break}case"SUBMIT_FIELD_FORM":{const a=["modifiedData","metadatas",e.fieldToEdit,"list"];ne()(o,[...a,"label"],e.fieldForm.label),ne()(o,[...a,"sortable"],e.fieldForm.sortable);break}default:return o}});const Jd=["media","richtext","dynamiczone","relation","component","json"],Zo=({layout:e,slug:r})=>{const{formatMessage:o}=(0,Z.useIntl)(),{trackUsage:s}=(0,h.useTracking)(),a=Er(),c=(0,h.useNotification)(),{refetchData:l}=(0,t.useContext)(kr),[d,u]=(0,t.useState)(!1),m=()=>u(M=>!M),[g,f]=(0,t.useReducer)(Xd,Wn,()=>Yd(Wn,e)),{fieldToEdit:p,fieldForm:y,initialData:b,modifiedData:v}=g,I=!ge()(y),{attributes:E}=e,R=v.layouts.list,S=()=>{const{settings:{pageSize:M,defaultSortBy:x,defaultSortOrder:Q},kind:j,uid:O}=b,V=`${x}:${Q}`,H=`${(0,Me.stringify)({page:1,pageSize:M,sort:V},{encode:!1})}${a?`&${a}`:""}`;return`/content-manager/${j}/${O}?${H}`},A=({target:{name:M,value:x}})=>{f({type:"ON_CHANGE",keys:M,value:M==="settings.pageSize"?parseInt(x,10):x})},T=async()=>{const M=Gt()(v,["layouts","settings","metadatas"]);$.mutate(M)},k=M=>{f({type:"ADD_FIELD",item:M})},F=(M,x)=>{M.stopPropagation(),R.length===1?c({type:"info",message:{id:C("notification.info.minimumFields")}}):f({type:"REMOVE_FIELD",index:x})},_=M=>{M.preventDefault(),m(),s("willSaveContentTypeLayout")},z=M=>{f({type:"SET_FIELD_TO_EDIT",fieldToEdit:M})},B=()=>{f({type:"UNSET_FIELD_TO_EDIT"})},U=M=>{M.preventDefault(),f({type:"SUBMIT_FIELD_FORM"})},$=(0,Ae.useMutation)(M=>Vd(M,r),{onSuccess(){s("didEditListSettings"),l()},onError(){c({type:"warning",message:{id:"notification.error"}})}}),{isLoading:G}=$,W=({target:{name:M,value:x}})=>{f({type:"ON_CHANGE_FIELD_METAS",name:M,value:x})},K=Object.entries(E).reduce((M,x)=>{const[Q,j]=x,O=nr(j),V=R.includes(Q);return O&&!V&&M.push(Q),M},[]).sort(),N=Object.entries(E).reduce((M,x)=>{const[Q,{type:j}]=x;return Jd.includes(j)||M.push(Q),M},[]),X=(M,x)=>{f({type:"MOVE_FIELD",originalIndex:M,atIndex:x})};return t.createElement(i.Layout,null,t.createElement(i.Main,{"aria-busy":G},t.createElement("form",{onSubmit:_},t.createElement(i.HeaderLayout,{navigationAction:t.createElement(h.Link,{startIcon:t.createElement(L.ArrowLeft,null),to:S,id:"go-back"},o({id:"global.back",defaultMessage:"Back"})),primaryAction:t.createElement(i.Button,{size:"S",startIcon:t.createElement(L.Check,null),disabled:Qe()(v,b),type:"submit"},o({id:"global.save",defaultMessage:"Save"})),subtitle:o({id:C("components.SettingsViewWrapper.pluginHeader.description.list-settings"),defaultMessage:"Define the settings of the list view."}),title:o({id:C("components.SettingsViewWrapper.pluginHeader.title"),defaultMessage:"Configure the view - {name}"},{name:Xe()(v.info.displayName)})}),t.createElement(i.ContentLayout,null,t.createElement(i.Box,{background:"neutral0",hasRadius:!0,shadow:"tableShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},t.createElement(_d,{modifiedData:v,onChange:A,sortOptions:N}),t.createElement(i.Box,{paddingTop:6,paddingBottom:6},t.createElement(i.Divider,null)),t.createElement(Zd,{listRemainingFields:K,displayedFields:R,onAddField:k,onClickEditField:z,onMoveField:X,onRemoveField:F,metadatas:v.metadatas}))),t.createElement(h.ConfirmDialog,{bodyText:{id:C("popUpWarning.warning.updateAllSettings"),defaultMessage:"This will modify all your settings"},iconRightButton:t.createElement(L.Check,null),isConfirmButtonLoading:G,isOpen:d,onToggleDialog:m,onConfirm:T,variantRightButton:"success-light"})),I&&t.createElement(Kd,{attributes:E,fieldForm:y,fieldToEdit:p,onChangeEditLabel:W,onCloseModal:B,onSubmit:U,type:P()(E,[p,"type"],"text")})))};Zo.propTypes={layout:n().shape({uid:n().string.isRequired,settings:n().shape({bulkable:n().bool,defaultSortBy:n().string,defaultSortOrder:n().string,filterable:n().bool,pageSize:n().number,searchable:n().bool}).isRequired,metadatas:n().object.isRequired,options:n().object.isRequired,attributes:n().objectOf(n().shape({type:n().string})).isRequired}).isRequired,slug:n().string.isRequired};var eu=(0,t.memo)(Zo),tu=()=>t.createElement(i.Box,{padding:8},t.createElement(h.AnErrorOccurred,null));const Qo=qe.Z.contentManager,Ko=({match:{params:{slug:e},url:r}})=>{const{isLoading:o,layout:s,updateLayout:a}=fr(e),{rawContentTypeLayout:c,rawComponentsLayouts:l}=(0,t.useMemo)(()=>{let g={},f={};return s.contentType&&(g=at(s.contentType)),s.components&&(f=Object.keys(s.components).reduce((p,y)=>(p[y]=at(s.components[y]),p),{})),{rawContentTypeLayout:g,rawComponentsLayouts:f}},[s]);if((0,te.get)(s,["contentType","uid"],null)!==e||o)return t.createElement(h.LoadingIndicatorPage,null);const u=({location:{state:g},history:{goBack:f},match:{params:{id:p,origin:y}}},b)=>t.createElement(b,{slug:e,layout:s,state:g,goBack:f,id:p,origin:y}),m=[{path:"create/clone/:origin",comp:Et},{path:"create",comp:Et},{path:":id",comp:Et},{path:"",comp:jd}].map(({path:g,comp:f})=>t.createElement(oe.Route,{key:g,path:`${r}/${g}`,render:p=>u(p,f)}));return t.createElement(zs.ErrorBoundary,{FallbackComponent:tu},t.createElement(Ir.Provider,{value:s},t.createElement(oe.Switch,null,t.createElement(oe.Route,{path:`${r}/configurations/list`},t.createElement(h.CheckPagePermissions,{permissions:Qo.collectionTypesConfigurations},t.createElement(eu,{layout:c,slug:e,updateLayout:a}))),t.createElement(oe.Route,{path:`${r}/configurations/edit`},t.createElement(h.CheckPagePermissions,{permissions:Qo.collectionTypesConfigurations},t.createElement(An,{components:l,isContentTypeView:!0,mainLayout:c,slug:e,updateLayout:a}))),m)))};Ko.propTypes={match:n().shape({url:n().string.isRequired,params:n().shape({slug:n().string.isRequired}).isRequired}).isRequired};var nu=(0,t.memo)(Ko),Yo=D(57678);const ru=qe.Z.contentManager,ou=()=>{const[{isLoading:e,data:r},o]=(0,t.useReducer)(Yo.Z,Yo.q),s=(0,t.useMemo)(Ft,[]),{schemas:a}=(0,le.useSelector)(d=>s(d),le.shallowEqual),{uid:c}=(0,oe.useParams)(),{get:l}=(0,h.useFetchClient)();return(0,t.useEffect)(()=>{const u=ye.Z.CancelToken.source();return(async g=>{try{o(ht());const{data:{data:f}}=await l(ce(`components/${c}/configuration`),{cancelToken:g.token});o(pn(ar(f,a,"component")))}catch(f){if(ye.Z.isCancel(f))return;console.error(f)}})(u),()=>{u.cancel("Operation canceled by the user.")}},[c,a,l]),e?t.createElement(h.LoadingIndicatorPage,null):t.createElement(h.CheckPagePermissions,{permissions:ru.componentsConfigurations},t.createElement(An,{components:r.components,mainLayout:r.component,slug:c}))};var su=(0,t.memo)(ou),au=()=>{const{formatMessage:e}=(0,Z.useIntl)();return(0,h.useFocusWhenNavigate)(),t.createElement(i.Main,null,t.createElement(i.HeaderLayout,{title:e({id:C("header.name"),defaultMessage:"Content"})}),t.createElement(i.ContentLayout,null,t.createElement(i.EmptyStateLayout,{action:t.createElement(h.LinkButton,{variant:"secondary",startIcon:t.createElement(L.Plus,null),to:"/plugins/content-type-builder/content-types/create-content-type"},e({id:"app.components.HomePage.create",defaultMessage:"Create your first Content-type"})),content:e({id:"content-manager.pages.NoContentType.text",defaultMessage:"You don't have any content yet, we recommend you to create your first Content-Type."}),hasRadius:!0,icon:t.createElement(L.EmptyDocuments,{width:"10rem"}),shadow:"tableShadow"})))},iu=()=>{const{formatMessage:e}=(0,Z.useIntl)();return(0,h.useFocusWhenNavigate)(),t.createElement(i.Main,null,t.createElement(i.HeaderLayout,{title:e({id:C("header.name"),defaultMessage:"Content"})}),t.createElement(i.ContentLayout,null,t.createElement(h.NoPermissions,null)))};const lu=qe.Z.contentManager,Xo=({match:{params:{slug:e},url:r}})=>{const{isLoading:o,layout:s,updateLayout:a}=fr(e),{rawContentTypeLayout:c,rawComponentsLayouts:l}=(0,t.useMemo)(()=>{let d={},u={};return s.contentType&&(u=at(s.contentType)),s.components&&(d=Object.keys(s.components).reduce((m,g)=>(m[g]=at(s.components[g]),m),{})),{rawContentTypeLayout:u,rawComponentsLayouts:d}},[s]);return o?t.createElement(h.LoadingIndicatorPage,null):t.createElement(Ir.Provider,{value:s},t.createElement(oe.Switch,null,t.createElement(oe.Route,{path:`${r}/configurations/edit`},t.createElement(h.CheckPagePermissions,{permissions:lu.singleTypesConfigurations},t.createElement(An,{components:l,isContentTypeView:!0,mainLayout:c,slug:e,updateLayout:a}))),t.createElement(oe.Route,{path:r,render:({location:{state:d},history:{goBack:u}})=>t.createElement(Et,{layout:s,slug:e,isSingleType:!0,state:d,goBack:u})})))};Xo.propTypes={match:n().shape({url:n().string.isRequired,params:n().shape({slug:n().string.isRequired}).isRequired}).isRequired};var cu=(0,t.memo)(Xo),du=D(61590),uu=D(43110),mu=D(77013),pu=D(79318),gu=D(66618),fu=D(58469),hu=D(39935),Jo=D.n(hu),es=(e,r)=>r?(0,fu.ZP)(e,r.toLowerCase(),{keys:[o=>o.title.toLowerCase()]}):e.sort((o,s)=>{const a=Jo()(o.title),c=Jo()(s.title);return a<c?-1:a>c?1:0}),yu=()=>{const[e,r]=(0,t.useState)(""),{formatMessage:o}=(0,Z.useIntl)(),s=(0,t.useMemo)(xs,[]),{collectionTypeLinks:a,singleTypeLinks:c}=(0,le.useSelector)(y=>s(y),le.shallowEqual),l=y=>y.map(b=>({...b,title:o({id:b.title,defaultMessage:b.title})})),d=l(a),u=l(c),m=[{id:"collectionTypes",title:{id:C("components.LeftMenu.collection-types"),defaultMessage:"Collection Types"},searchable:!0,links:es(d,e)},{id:"singleTypes",title:{id:C("components.LeftMenu.single-types"),defaultMessage:"Single Types"},searchable:!0,links:es(u,e)}],g=()=>{r("")},f=({target:{value:y}})=>{r(y)},p=o({id:C("header.name"),defaultMessage:"Content"});return t.createElement(du.m,{ariaLabel:p},t.createElement(uu.p,{label:p,searchable:!0,value:e,onChange:f,onClear:g,searchLabel:o({id:"content-manager.components.LeftMenu.Search.label",defaultMessage:"Search for a content type"})}),t.createElement(mu.Z,null,m.map(y=>{const b=o({id:y.title.id,defaultMessage:y.title.defaultMessage},y.title.values);return t.createElement(pu.D,{key:y.id,label:b,badgeLabel:y.links.length.toString()},y.links.map(v=>{const I=v.search?`?${v.search}`:"";return t.createElement(gu.E,{as:oe.NavLink,key:v.uid,to:`${v.to}${I}`},v.title)}))})))},Un=D(92886);const bu=()=>({type:Un.ZA}),Eu=()=>({type:Un.c2}),Cu=(e,r,o,s)=>({type:Un.ix,data:{authorizedCtLinks:e,authorizedStLinks:r,components:s,contentTypeSchemas:o}}),ts=(e,r,o=[])=>e.filter(s=>s.isDisplayed).map(s=>{const a=[{action:"plugin::content-manager.explorer.create",subject:s.uid},{action:"plugin::content-manager.explorer.read",subject:s.uid}],c=[{action:"plugin::content-manager.explorer.read",subject:s.uid}],l=r==="collectionTypes"?a:c,d=o.find(({uid:m})=>m===s.uid);let u=null;if(d){const m={page:1,pageSize:d.settings.pageSize,sort:`${d.settings.defaultSortBy}:${d.settings.defaultSortOrder}`};u=(0,Me.stringify)(m,{encode:!1})}return{permissions:l,search:u,kind:s.kind,title:s.info.displayName,to:`/content-manager/${s.kind}/${s.uid}`,uid:s.uid,name:s.uid,isDisplayed:s.isDisplayed}});var Ru=(e,r)=>{const o=Object.entries(Ur()(e,"kind")).map(([c,l])=>({name:c,links:l})),[s,a]=Qn()(o,"name");return{collectionTypesSectionLinks:ts(s?.links||[],"collectionTypes",r),singleTypesSectionLinks:ts(a?.links??[],"singleTypes")}},ns=(e,r)=>r.map(({permissions:o})=>(0,h.hasPermissions)(e,o)),vu=async(e,r,o)=>{const{get:s}=(0,h.getFetchClient)();try{const{data:{data:a}}=await s(ce("content-types-settings")),{collectionTypesSectionLinks:c,singleTypesSectionLinks:l}=Ru(e,a),d=ns(r,c),u=await Promise.all(d),m=c.filter((y,b)=>u[b]),g=ns(r,l),f=await Promise.all(g),p=l.filter((y,b)=>f[b]);return{authorizedCtLinks:m,authorizedStLinks:p}}catch(a){return console.error(a),o({type:"warning",message:{id:"notification.error"}}),{authorizedCtLinks:[],authorizedStLinks:[],contentTypes:[]}}},Tu=()=>{const e=(0,le.useDispatch)(),r=(0,h.useNotification)(),o=(0,le.useSelector)(Ge()),s=(0,t.useRef)(),{allPermissions:a}=(0,h.useRBACProvider)(),{runHookWaterfall:c}=(0,h.useStrapiApp)(),d=ye.Z.CancelToken.source(),{notifyStatus:u}=(0,i.useNotifyAT)(),{formatMessage:m}=(0,Z.useIntl)(),{get:g}=(0,h.useFetchClient)(),f=async()=>{e(bu());try{const[{data:{data:p}},{data:{data:y}}]=await Promise.all(["components","content-types"].map(S=>g(ce(S),{cancelToken:d.token})));u(m({id:C("App.schemas.data-loaded"),defaultMessage:"The schemas have been successfully loaded."}));const{authorizedCtLinks:b,authorizedStLinks:v}=await vu(y,a,r),{ctLinks:I}=c(ct.LK,{ctLinks:b,models:y}),{stLinks:E}=c(ct.dV,{stLinks:v,models:y}),R=Cu(I,E,y,p);e(R)}catch(p){if(ye.Z.isCancel(p))return;console.error(p),r({type:"warning",message:{id:"notification.error"}})}};return s.current=f,(0,t.useEffect)(()=>(s.current(),()=>{d.cancel("Operation canceled by the user."),e(Eu())}),[e,r]),{...o,refetchData:s.current}};const Mu=qe.Z.contentManager,rs=()=>{const e=(0,oe.useRouteMatch)("/content-manager/:kind/:uid"),{status:r,collectionTypeLinks:o,singleTypeLinks:s,models:a,refetchData:c}=Tu(),l=Qn()([...o,...s],p=>p.title.toLowerCase()),{pathname:d}=(0,oe.useLocation)(),{formatMessage:u}=(0,Z.useIntl)(),{startSection:m}=(0,h.useGuidedTour)(),g=(0,t.useRef)(m);if((0,t.useEffect)(()=>{g.current&&g.current("contentManager")},[]),r==="loading")return t.createElement(i.Main,{"aria-busy":"true"},t.createElement(i.HeaderLayout,{title:u({id:C("header.name"),defaultMessage:"Content"})}),t.createElement(h.LoadingIndicatorPage,null));const f=a.filter(({isDisplayed:p})=>p);return l.length===0&&f.length>0&&d!=="/content-manager/403"?t.createElement(oe.Redirect,{to:"/content-manager/403"}):f.length===0&&d!=="/content-manager/no-content-types"?t.createElement(oe.Redirect,{to:"/content-manager/no-content-types"}):!e&&l.length>0?t.createElement(oe.Redirect,{to:`${l[0].to}${l[0].search?`?${l[0].search}`:""}`}):t.createElement(i.Layout,{sideNav:t.createElement(yu,null)},t.createElement(_s,null),t.createElement(kr.Provider,{value:{refetchData:c}},t.createElement(oe.Switch,null,t.createElement(oe.Route,{path:"/content-manager/components/:uid/configurations/edit"},t.createElement(h.CheckPagePermissions,{permissions:Mu.componentsConfigurations},t.createElement(su,null))),t.createElement(oe.Route,{path:"/content-manager/collectionType/:slug",component:nu}),t.createElement(oe.Route,{path:"/content-manager/singleType/:slug",component:cu}),t.createElement(oe.Route,{path:"/content-manager/403"},t.createElement(iu,null)),t.createElement(oe.Route,{path:"/content-manager/no-content-types"},t.createElement(au,null)),t.createElement(oe.Route,{path:"",component:h.NotFound}))))};function Du(){const{formatMessage:e}=(0,Z.useIntl)();return t.createElement(t.Fragment,null,t.createElement(os.Helmet,{title:e({id:C("plugin.name"),defaultMessage:"Content Manager"})}),t.createElement(rs,null))}},57544:function(){},59599:function(){},42310:function(){},33842:function(){},85695:function(){}}]);
|
|
1139
|
+
`,Go=({attributes:e,fieldForm:r,fieldToEdit:o,onCloseModal:s,onChangeEditLabel:a,onSubmit:c,type:l})=>{const{formatMessage:d}=(0,Z.useIntl)(),u=e[o].relationType;let m=!["media","relation"].includes(l);return["oneWay","oneToOne","manyToOne"].includes(u)&&(m=!0),t.createElement(i.ModalLayout,{onClose:s,labelledBy:"title"},t.createElement("form",{onSubmit:c},t.createElement(i.ModalHeader,null,t.createElement(Qd,null,t.createElement(yo,{type:l}),t.createElement(i.Typography,{fontWeight:"bold",textColor:"neutral800",as:"h2",id:"title"},d({id:C("containers.ListSettingsView.modal-form.edit-label"),defaultMessage:"Edit {fieldName}"},{fieldName:Xe()(o)})))),t.createElement(i.ModalBody,null,t.createElement(i.Grid,{gap:4},t.createElement(i.GridItem,{s:12,col:6},t.createElement(i.TextInput,{id:"label-input",label:d({id:C("form.Input.label"),defaultMessage:"Label"}),name:"label",onChange:g=>a(g),value:r.label,hint:d({id:C("form.Input.label.inputDescription"),defaultMessage:"This value overrides the label displayed in the table's head"})})),m&&t.createElement(i.GridItem,{s:12,col:6},t.createElement(i.ToggleInput,{"data-testid":"Enable sort on this field",checked:r.sortable,label:d({id:C("form.Input.sort.field"),defaultMessage:"Enable sort on this field"}),name:"sortable",onChange:g=>a({target:{name:"sortable",value:g.target.checked}}),onLabel:d({id:"app.components.ToggleCheckbox.on-label",defaultMessage:"on"}),offLabel:d({id:"app.components.ToggleCheckbox.off-label",defaultMessage:"off"})})))),t.createElement(i.ModalFooter,{startActions:t.createElement(i.Button,{onClick:s,variant:"tertiary"},d({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:t.createElement(i.Button,{type:"submit"},d({id:"global.finish",defaultMessage:"Finish"}))})))};Go.propTypes={attributes:n().objectOf(n().shape({relationType:n().string})).isRequired,fieldForm:n().shape({label:n().string,sortable:n().bool}).isRequired,fieldToEdit:n().string.isRequired,onChangeEditLabel:n().func.isRequired,onCloseModal:n().func.isRequired,onSubmit:n().func.isRequired,type:n().string.isRequired};var Kd=Go,Yd=(e,r)=>({...e,initialData:r,modifiedData:r});const Wn={fieldForm:{},fieldToEdit:"",initialData:{},modifiedData:{}};var Xd=(e=Wn,r)=>(0,lt.default)(e,o=>{const s=["modifiedData","layouts","list"];switch(r.type){case"ADD_FIELD":{const a=P()(e,s,[]);ne()(o,s,[...a,r.item]);break}case"MOVE_FIELD":{const a=P()(e,s,[]),{originalIndex:c,atIndex:l}=r;ne()(o,s,rt(a,c,l));break}case"ON_CHANGE":{ne()(o,["modifiedData",...r.keys.split(".")],r.value);break}case"ON_CHANGE_FIELD_METAS":{ne()(o,["fieldForm",r.name],r.value);break}case"REMOVE_FIELD":{const a=P()(e,s,[]);ne()(o,s,a.filter((c,l)=>r.index!==l));break}case"SET_FIELD_TO_EDIT":{const{fieldToEdit:a}=r;o.fieldToEdit=a,o.fieldForm.label=P()(o,["modifiedData","metadatas",a,"list","label"],""),o.fieldForm.sortable=P()(o,["modifiedData","metadatas",a,"list","sortable"],"");break}case"UNSET_FIELD_TO_EDIT":{o.fieldForm={},o.fieldToEdit="";break}case"SUBMIT_FIELD_FORM":{const a=["modifiedData","metadatas",e.fieldToEdit,"list"];ne()(o,[...a,"label"],e.fieldForm.label),ne()(o,[...a,"sortable"],e.fieldForm.sortable);break}default:return o}});const Jd=["media","richtext","dynamiczone","relation","component","json"],Zo=({layout:e,slug:r})=>{const{formatMessage:o}=(0,Z.useIntl)(),{trackUsage:s}=(0,h.useTracking)(),a=Er(),c=(0,h.useNotification)(),{refetchData:l}=(0,t.useContext)(kr),[d,u]=(0,t.useState)(!1),m=()=>u(M=>!M),[g,f]=(0,t.useReducer)(Xd,Wn,()=>Yd(Wn,e)),{fieldToEdit:p,fieldForm:y,initialData:b,modifiedData:v}=g,I=!ge()(y),{attributes:E}=e,R=v.layouts.list,S=()=>{const{settings:{pageSize:M,defaultSortBy:x,defaultSortOrder:Q},kind:j,uid:O}=b,V=`${x}:${Q}`,H=`${(0,Me.stringify)({page:1,pageSize:M,sort:V},{encode:!1})}${a?`&${a}`:""}`;return`/content-manager/${j}/${O}?${H}`},A=({target:{name:M,value:x}})=>{f({type:"ON_CHANGE",keys:M,value:M==="settings.pageSize"?parseInt(x,10):x})},T=async()=>{const M=Gt()(v,["layouts","settings","metadatas"]);$.mutate(M)},k=M=>{f({type:"ADD_FIELD",item:M})},F=(M,x)=>{M.stopPropagation(),R.length===1?c({type:"info",message:{id:C("notification.info.minimumFields")}}):f({type:"REMOVE_FIELD",index:x})},_=M=>{M.preventDefault(),m(),s("willSaveContentTypeLayout")},z=M=>{f({type:"SET_FIELD_TO_EDIT",fieldToEdit:M})},B=()=>{f({type:"UNSET_FIELD_TO_EDIT"})},U=M=>{M.preventDefault(),f({type:"SUBMIT_FIELD_FORM"})},$=(0,Ae.useMutation)(M=>Vd(M,r),{onSuccess(){s("didEditListSettings"),l()},onError(){c({type:"warning",message:{id:"notification.error"}})}}),{isLoading:G}=$,W=({target:{name:M,value:x}})=>{f({type:"ON_CHANGE_FIELD_METAS",name:M,value:x})},K=Object.entries(E).reduce((M,x)=>{const[Q,j]=x,O=nr(j),V=R.includes(Q);return O&&!V&&M.push(Q),M},[]).sort(),N=Object.entries(E).reduce((M,x)=>{const[Q,{type:j}]=x;return Jd.includes(j)||M.push(Q),M},[]),X=(M,x)=>{f({type:"MOVE_FIELD",originalIndex:M,atIndex:x})};return t.createElement(i.Layout,null,t.createElement(i.Main,{"aria-busy":G},t.createElement("form",{onSubmit:_},t.createElement(i.HeaderLayout,{navigationAction:t.createElement(h.Link,{startIcon:t.createElement(L.ArrowLeft,null),to:S,id:"go-back"},o({id:"global.back",defaultMessage:"Back"})),primaryAction:t.createElement(i.Button,{size:"S",startIcon:t.createElement(L.Check,null),disabled:Qe()(v,b),type:"submit"},o({id:"global.save",defaultMessage:"Save"})),subtitle:o({id:C("components.SettingsViewWrapper.pluginHeader.description.list-settings"),defaultMessage:"Define the settings of the list view."}),title:o({id:C("components.SettingsViewWrapper.pluginHeader.title"),defaultMessage:"Configure the view - {name}"},{name:Xe()(v.info.displayName)})}),t.createElement(i.ContentLayout,null,t.createElement(i.Box,{background:"neutral0",hasRadius:!0,shadow:"tableShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},t.createElement(_d,{modifiedData:v,onChange:A,sortOptions:N}),t.createElement(i.Box,{paddingTop:6,paddingBottom:6},t.createElement(i.Divider,null)),t.createElement(Zd,{listRemainingFields:K,displayedFields:R,onAddField:k,onClickEditField:z,onMoveField:X,onRemoveField:F,metadatas:v.metadatas}))),t.createElement(h.ConfirmDialog,{bodyText:{id:C("popUpWarning.warning.updateAllSettings"),defaultMessage:"This will modify all your settings"},iconRightButton:t.createElement(L.Check,null),isConfirmButtonLoading:G,isOpen:d,onToggleDialog:m,onConfirm:T,variantRightButton:"success-light"})),I&&t.createElement(Kd,{attributes:E,fieldForm:y,fieldToEdit:p,onChangeEditLabel:W,onCloseModal:B,onSubmit:U,type:P()(E,[p,"type"],"text")})))};Zo.propTypes={layout:n().shape({uid:n().string.isRequired,settings:n().shape({bulkable:n().bool,defaultSortBy:n().string,defaultSortOrder:n().string,filterable:n().bool,pageSize:n().number,searchable:n().bool}).isRequired,metadatas:n().object.isRequired,options:n().object.isRequired,attributes:n().objectOf(n().shape({type:n().string})).isRequired}).isRequired,slug:n().string.isRequired};var eu=(0,t.memo)(Zo),tu=()=>t.createElement(i.Box,{padding:8},t.createElement(h.AnErrorOccurred,null));const Qo=qe.Z.contentManager,Ko=({match:{params:{slug:e},url:r}})=>{const{isLoading:o,layout:s,updateLayout:a}=fr(e),{rawContentTypeLayout:c,rawComponentsLayouts:l}=(0,t.useMemo)(()=>{let g={},f={};return s.contentType&&(g=at(s.contentType)),s.components&&(f=Object.keys(s.components).reduce((p,y)=>(p[y]=at(s.components[y]),p),{})),{rawContentTypeLayout:g,rawComponentsLayouts:f}},[s]);if((0,te.get)(s,["contentType","uid"],null)!==e||o)return t.createElement(h.LoadingIndicatorPage,null);const u=({location:{state:g},history:{goBack:f},match:{params:{id:p,origin:y}}},b)=>t.createElement(b,{slug:e,layout:s,state:g,goBack:f,id:p,origin:y}),m=[{path:"create/clone/:origin",comp:Et},{path:"create",comp:Et},{path:":id",comp:Et},{path:"",comp:jd}].map(({path:g,comp:f})=>t.createElement(oe.Route,{key:g,path:`${r}/${g}`,render:p=>u(p,f)}));return t.createElement(zs.ErrorBoundary,{FallbackComponent:tu},t.createElement(Ir.Provider,{value:s},t.createElement(oe.Switch,null,t.createElement(oe.Route,{path:`${r}/configurations/list`},t.createElement(h.CheckPagePermissions,{permissions:Qo.collectionTypesConfigurations},t.createElement(eu,{layout:c,slug:e,updateLayout:a}))),t.createElement(oe.Route,{path:`${r}/configurations/edit`},t.createElement(h.CheckPagePermissions,{permissions:Qo.collectionTypesConfigurations},t.createElement(An,{components:l,isContentTypeView:!0,mainLayout:c,slug:e,updateLayout:a}))),m)))};Ko.propTypes={match:n().shape({url:n().string.isRequired,params:n().shape({slug:n().string.isRequired}).isRequired}).isRequired};var nu=(0,t.memo)(Ko),Yo=D(57678);const ru=qe.Z.contentManager,ou=()=>{const[{isLoading:e,data:r},o]=(0,t.useReducer)(Yo.Z,Yo.q),s=(0,t.useMemo)(Ft,[]),{schemas:a}=(0,le.useSelector)(d=>s(d),le.shallowEqual),{uid:c}=(0,oe.useParams)(),{get:l}=(0,h.useFetchClient)();return(0,t.useEffect)(()=>{const u=ye.Z.CancelToken.source();return(async g=>{try{o(ht());const{data:{data:f}}=await l(ce(`components/${c}/configuration`),{cancelToken:g.token});o(pn(ar(f,a,"component")))}catch(f){if(ye.Z.isCancel(f))return;console.error(f)}})(u),()=>{u.cancel("Operation canceled by the user.")}},[c,a,l]),e?t.createElement(h.LoadingIndicatorPage,null):t.createElement(h.CheckPagePermissions,{permissions:ru.componentsConfigurations},t.createElement(An,{components:r.components,mainLayout:r.component,slug:c}))};var su=(0,t.memo)(ou),au=()=>{const{formatMessage:e}=(0,Z.useIntl)();return(0,h.useFocusWhenNavigate)(),t.createElement(i.Main,null,t.createElement(i.HeaderLayout,{title:e({id:C("header.name"),defaultMessage:"Content"})}),t.createElement(i.ContentLayout,null,t.createElement(i.EmptyStateLayout,{action:t.createElement(h.LinkButton,{variant:"secondary",startIcon:t.createElement(L.Plus,null),to:"/plugins/content-type-builder/content-types/create-content-type"},e({id:"app.components.HomePage.create",defaultMessage:"Create your first Content-type"})),content:e({id:"content-manager.pages.NoContentType.text",defaultMessage:"You don't have any content yet, we recommend you to create your first Content-Type."}),hasRadius:!0,icon:t.createElement(L.EmptyDocuments,{width:"10rem"}),shadow:"tableShadow"})))},iu=()=>{const{formatMessage:e}=(0,Z.useIntl)();return(0,h.useFocusWhenNavigate)(),t.createElement(i.Main,null,t.createElement(i.HeaderLayout,{title:e({id:C("header.name"),defaultMessage:"Content"})}),t.createElement(i.ContentLayout,null,t.createElement(h.NoPermissions,null)))};const lu=qe.Z.contentManager,Xo=({match:{params:{slug:e},url:r}})=>{const{isLoading:o,layout:s,updateLayout:a}=fr(e),{rawContentTypeLayout:c,rawComponentsLayouts:l}=(0,t.useMemo)(()=>{let d={},u={};return s.contentType&&(u=at(s.contentType)),s.components&&(d=Object.keys(s.components).reduce((m,g)=>(m[g]=at(s.components[g]),m),{})),{rawContentTypeLayout:u,rawComponentsLayouts:d}},[s]);return o?t.createElement(h.LoadingIndicatorPage,null):t.createElement(Ir.Provider,{value:s},t.createElement(oe.Switch,null,t.createElement(oe.Route,{path:`${r}/configurations/edit`},t.createElement(h.CheckPagePermissions,{permissions:lu.singleTypesConfigurations},t.createElement(An,{components:l,isContentTypeView:!0,mainLayout:c,slug:e,updateLayout:a}))),t.createElement(oe.Route,{path:r,render:({location:{state:d},history:{goBack:u}})=>t.createElement(Et,{layout:s,slug:e,isSingleType:!0,state:d,goBack:u})})))};Xo.propTypes={match:n().shape({url:n().string.isRequired,params:n().shape({slug:n().string.isRequired}).isRequired}).isRequired};var cu=(0,t.memo)(Xo),du=D(61590),uu=D(64669),mu=D(77013),pu=D(79318),gu=D(66618),fu=D(58469),hu=D(39935),Jo=D.n(hu),es=(e,r)=>r?(0,fu.ZP)(e,r.toLowerCase(),{keys:[o=>o.title.toLowerCase()]}):e.sort((o,s)=>{const a=Jo()(o.title),c=Jo()(s.title);return a<c?-1:a>c?1:0}),yu=()=>{const[e,r]=(0,t.useState)(""),{formatMessage:o}=(0,Z.useIntl)(),s=(0,t.useMemo)(xs,[]),{collectionTypeLinks:a,singleTypeLinks:c}=(0,le.useSelector)(y=>s(y),le.shallowEqual),l=y=>y.map(b=>({...b,title:o({id:b.title,defaultMessage:b.title})})),d=l(a),u=l(c),m=[{id:"collectionTypes",title:{id:C("components.LeftMenu.collection-types"),defaultMessage:"Collection Types"},searchable:!0,links:es(d,e)},{id:"singleTypes",title:{id:C("components.LeftMenu.single-types"),defaultMessage:"Single Types"},searchable:!0,links:es(u,e)}],g=()=>{r("")},f=({target:{value:y}})=>{r(y)},p=o({id:C("header.name"),defaultMessage:"Content"});return t.createElement(du.m,{ariaLabel:p},t.createElement(uu.p,{label:p,searchable:!0,value:e,onChange:f,onClear:g,searchLabel:o({id:"content-manager.components.LeftMenu.Search.label",defaultMessage:"Search for a content type"})}),t.createElement(mu.Z,null,m.map(y=>{const b=o({id:y.title.id,defaultMessage:y.title.defaultMessage},y.title.values);return t.createElement(pu.D,{key:y.id,label:b,badgeLabel:y.links.length.toString()},y.links.map(v=>{const I=v.search?`?${v.search}`:"";return t.createElement(gu.E,{as:oe.NavLink,key:v.uid,to:`${v.to}${I}`},v.title)}))})))},Un=D(92886);const bu=()=>({type:Un.ZA}),Eu=()=>({type:Un.c2}),Cu=(e,r,o,s)=>({type:Un.ix,data:{authorizedCtLinks:e,authorizedStLinks:r,components:s,contentTypeSchemas:o}}),ts=(e,r,o=[])=>e.filter(s=>s.isDisplayed).map(s=>{const a=[{action:"plugin::content-manager.explorer.create",subject:s.uid},{action:"plugin::content-manager.explorer.read",subject:s.uid}],c=[{action:"plugin::content-manager.explorer.read",subject:s.uid}],l=r==="collectionTypes"?a:c,d=o.find(({uid:m})=>m===s.uid);let u=null;if(d){const m={page:1,pageSize:d.settings.pageSize,sort:`${d.settings.defaultSortBy}:${d.settings.defaultSortOrder}`};u=(0,Me.stringify)(m,{encode:!1})}return{permissions:l,search:u,kind:s.kind,title:s.info.displayName,to:`/content-manager/${s.kind}/${s.uid}`,uid:s.uid,name:s.uid,isDisplayed:s.isDisplayed}});var Ru=(e,r)=>{const o=Object.entries(Ur()(e,"kind")).map(([c,l])=>({name:c,links:l})),[s,a]=Qn()(o,"name");return{collectionTypesSectionLinks:ts(s?.links||[],"collectionTypes",r),singleTypesSectionLinks:ts(a?.links??[],"singleTypes")}},ns=(e,r)=>r.map(({permissions:o})=>(0,h.hasPermissions)(e,o)),vu=async(e,r,o)=>{const{get:s}=(0,h.getFetchClient)();try{const{data:{data:a}}=await s(ce("content-types-settings")),{collectionTypesSectionLinks:c,singleTypesSectionLinks:l}=Ru(e,a),d=ns(r,c),u=await Promise.all(d),m=c.filter((y,b)=>u[b]),g=ns(r,l),f=await Promise.all(g),p=l.filter((y,b)=>f[b]);return{authorizedCtLinks:m,authorizedStLinks:p}}catch(a){return console.error(a),o({type:"warning",message:{id:"notification.error"}}),{authorizedCtLinks:[],authorizedStLinks:[],contentTypes:[]}}},Tu=()=>{const e=(0,le.useDispatch)(),r=(0,h.useNotification)(),o=(0,le.useSelector)(Ge()),s=(0,t.useRef)(),{allPermissions:a}=(0,h.useRBACProvider)(),{runHookWaterfall:c}=(0,h.useStrapiApp)(),d=ye.Z.CancelToken.source(),{notifyStatus:u}=(0,i.useNotifyAT)(),{formatMessage:m}=(0,Z.useIntl)(),{get:g}=(0,h.useFetchClient)(),f=async()=>{e(bu());try{const[{data:{data:p}},{data:{data:y}}]=await Promise.all(["components","content-types"].map(S=>g(ce(S),{cancelToken:d.token})));u(m({id:C("App.schemas.data-loaded"),defaultMessage:"The schemas have been successfully loaded."}));const{authorizedCtLinks:b,authorizedStLinks:v}=await vu(y,a,r),{ctLinks:I}=c(ct.LK,{ctLinks:b,models:y}),{stLinks:E}=c(ct.dV,{stLinks:v,models:y}),R=Cu(I,E,y,p);e(R)}catch(p){if(ye.Z.isCancel(p))return;console.error(p),r({type:"warning",message:{id:"notification.error"}})}};return s.current=f,(0,t.useEffect)(()=>(s.current(),()=>{d.cancel("Operation canceled by the user."),e(Eu())}),[e,r]),{...o,refetchData:s.current}};const Mu=qe.Z.contentManager,rs=()=>{const e=(0,oe.useRouteMatch)("/content-manager/:kind/:uid"),{status:r,collectionTypeLinks:o,singleTypeLinks:s,models:a,refetchData:c}=Tu(),l=Qn()([...o,...s],p=>p.title.toLowerCase()),{pathname:d}=(0,oe.useLocation)(),{formatMessage:u}=(0,Z.useIntl)(),{startSection:m}=(0,h.useGuidedTour)(),g=(0,t.useRef)(m);if((0,t.useEffect)(()=>{g.current&&g.current("contentManager")},[]),r==="loading")return t.createElement(i.Main,{"aria-busy":"true"},t.createElement(i.HeaderLayout,{title:u({id:C("header.name"),defaultMessage:"Content"})}),t.createElement(h.LoadingIndicatorPage,null));const f=a.filter(({isDisplayed:p})=>p);return l.length===0&&f.length>0&&d!=="/content-manager/403"?t.createElement(oe.Redirect,{to:"/content-manager/403"}):f.length===0&&d!=="/content-manager/no-content-types"?t.createElement(oe.Redirect,{to:"/content-manager/no-content-types"}):!e&&l.length>0?t.createElement(oe.Redirect,{to:`${l[0].to}${l[0].search?`?${l[0].search}`:""}`}):t.createElement(i.Layout,{sideNav:t.createElement(yu,null)},t.createElement(_s,null),t.createElement(kr.Provider,{value:{refetchData:c}},t.createElement(oe.Switch,null,t.createElement(oe.Route,{path:"/content-manager/components/:uid/configurations/edit"},t.createElement(h.CheckPagePermissions,{permissions:Mu.componentsConfigurations},t.createElement(su,null))),t.createElement(oe.Route,{path:"/content-manager/collectionType/:slug",component:nu}),t.createElement(oe.Route,{path:"/content-manager/singleType/:slug",component:cu}),t.createElement(oe.Route,{path:"/content-manager/403"},t.createElement(iu,null)),t.createElement(oe.Route,{path:"/content-manager/no-content-types"},t.createElement(au,null)),t.createElement(oe.Route,{path:"",component:h.NotFound}))))};function Du(){const{formatMessage:e}=(0,Z.useIntl)();return t.createElement(t.Fragment,null,t.createElement(os.Helmet,{title:e({id:C("plugin.name"),defaultMessage:"Content Manager"})}),t.createElement(rs,null))}},57544:function(){},59599:function(){},42310:function(){},33842:function(){},85695:function(){}}]);
|