@strapi/admin 4.11.0-beta.1 → 4.11.0-exp.push-transfer-push-stuck
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/components/Providers/index.js +32 -32
- package/admin/src/components/Theme/index.js +3 -5
- package/admin/src/content-manager/components/DynamicTable/ConfirmDialogDeleteAll/index.js +73 -0
- package/admin/src/content-manager/components/DynamicTable/index.js +4 -20
- package/admin/src/content-manager/components/EditViewDataManagerProvider/index.js +2 -3
- package/admin/src/content-manager/components/EditViewDataManagerProvider/utils/index.js +1 -0
- package/admin/src/content-manager/{utils → components/EditViewDataManagerProvider/utils}/schema.js +1 -1
- package/admin/src/content-manager/components/Inputs/index.js +11 -18
- package/admin/src/content-manager/components/Inputs/utils/getStep.js +13 -0
- package/admin/src/content-manager/components/Inputs/utils/index.js +1 -0
- package/admin/src/content-manager/pages/ListView/index.js +2 -118
- package/admin/src/content-manager/utils/index.js +0 -2
- package/admin/src/injectionZones.js +1 -6
- package/admin/src/translations/ar.json +1 -684
- package/admin/src/translations/en.json +1 -6
- package/build/3816.60f858cf.chunk.js +211 -0
- package/build/6858.85d76858.chunk.js +50 -0
- package/build/6970.6a329e15.chunk.js +1 -0
- package/build/{Admin-authenticatedApp.990df65d.chunk.js → Admin-authenticatedApp.d425b485.chunk.js} +2 -2
- package/build/{Admin_marketplace.1436fc2b.chunk.js → Admin_marketplace.717bd7ca.chunk.js} +1 -1
- package/build/Admin_pluginsPage.7df6b5a9.chunk.js +6 -0
- package/build/{Admin_profilePage.75bc083a.chunk.js → Admin_profilePage.a8fa3a56.chunk.js} +1 -1
- package/build/{Admin_settingsPage.bd715ed3.chunk.js → Admin_settingsPage.1394aaf2.chunk.js} +1 -1
- package/build/{admin-app.8b102fe2.chunk.js → admin-app.ac5b1f59.chunk.js} +8 -8
- package/build/ar-json.39e54aba.chunk.js +1 -0
- package/build/content-manager.70548048.chunk.js +1123 -0
- package/build/{email-settings-page.4368689f.chunk.js → email-settings-page.dba83275.chunk.js} +1 -1
- package/build/{en-json.0f5cc115.chunk.js → en-json.d965e364.chunk.js} +1 -1
- package/build/i18n-settings-page.55628f74.chunk.js +114 -0
- package/build/i18n-translation-en-json.60af6722.chunk.js +1 -0
- package/build/index.html +1 -1
- package/build/main.d9d9ed10.js +2630 -0
- package/build/{review-workflows-settings.4b39b837.chunk.js → review-workflows-settings.56cab253.chunk.js} +1 -1
- package/build/{runtime~main.55d43bd7.js → runtime~main.adbe36a4.js} +2 -2
- package/build/users-advanced-settings-page.4f49ca57.chunk.js +9 -0
- package/build/users-email-settings-page.d2429d0a.chunk.js +24 -0
- package/build/users-providers-settings-page.50c5ba27.chunk.js +29 -0
- package/build/{users-roles-settings-page.c773086b.chunk.js → users-roles-settings-page.2549794b.chunk.js} +1 -1
- package/build/{webhook-list-page.b0f5a02c.chunk.js → webhook-list-page.e2fca9f8.chunk.js} +1 -1
- package/package.json +15 -15
- package/admin/src/content-manager/components/DynamicTable/BulkActionsBar/index.js +0 -307
- package/build/3562.e0b1a0b3.chunk.js +0 -50
- package/build/456.9b85d4c6.chunk.js +0 -39
- package/build/6970.7ea35fbd.chunk.js +0 -1
- package/build/Admin_pluginsPage.e1afd5ed.chunk.js +0 -6
- package/build/ar-json.f530bc3f.chunk.js +0 -1
- package/build/content-manager.89099707.chunk.js +0 -1123
- package/build/i18n-settings-page.7988d872.chunk.js +0 -114
- package/build/i18n-translation-en-json.1ec7becf.chunk.js +0 -1
- package/build/main.5a232c3d.js +0 -2630
- package/build/users-advanced-settings-page.2cfb5d24.chunk.js +0 -9
- package/build/users-email-settings-page.bd6c774a.chunk.js +0 -24
- package/build/users-providers-settings-page.528f0036.chunk.js +0 -29
package/build/{Admin-authenticatedApp.990df65d.chunk.js → Admin-authenticatedApp.d425b485.chunk.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[801],{29761:function(Q,S,n){n.r(S),n.d(S,{default:function(){return $t}});var e=n(32735),s=n(24989),L=n(20108),v=n(33795),O=n.n(v),P=JSON.parse('{"i8":"4.11.0-
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[801],{29761:function(Q,S,n){n.r(S),n.d(S,{default:function(){return $t}});var e=n(32735),s=n(24989),L=n(20108),v=n(33795),O=n.n(v),P=JSON.parse('{"i8":"4.11.0-exp.push-transfer-push-stuck"}'),C=n(32308),f=n(53038),y=n(15062),G=n(74506),z=n(51968),K=n(88311),ne=n.n(K),Le=n(58107),T=n(8471),Oe=n(60216),r=n.n(Oe),Z=n(67879),m=n(87933),ae=n(71933),oe=n(67563),xe=n(50563),M=n(72850),V=n(41415),se=n(35331);const be=(0,T.ZP)(m.k)`
|
|
2
2
|
position: fixed;
|
|
3
3
|
z-index: 4;
|
|
4
4
|
inset: 0;
|
|
@@ -76,4 +76,4 @@
|
|
|
76
76
|
:hover {
|
|
77
77
|
text-decoration: underline;
|
|
78
78
|
}
|
|
79
|
-
`;var vt=()=>{const t=(0,e.useRef)(),[a,o]=(0,e.useState)(!1),{formatMessage:i}=(0,Z.Z)(),{communityEdition:d}=(0,s.L7)(),u=()=>{o(p=>!p)},h=[...gt,{label:{id:"Settings.application.get-help",defaultMessage:"Get help"},icon:it.Z,href:d?"https://discord.strapi.io":"https://support.strapi.io/support/home"}];return e.createElement(M.x,{as:"aside",position:"fixed",bottom:2,right:2},e.createElement(ht,{"aria-label":i(a?{id:"app.components.Onboarding.help.button-close",defaultMessage:"Close help menu"}:{id:"app.components.Onboarding.help.button",defaultMessage:"Open help menu"}),onClick:u,ref:t},e.createElement(_.J,{as:a?se.Z:lt.Z,color:"buttonNeutral0"})),a&&e.createElement(ae.h,null,e.createElement(st.M.Content,{padding:0,onDimiss:u,source:t,placement:"top-end",spacing:12},e.createElement(m.k,{justifyContent:"space-between",paddingBottom:5,paddingRight:6,paddingLeft:6,paddingTop:6},e.createElement(ye,{fontWeight:"bold"},i({id:"app.components.Onboarding.title",defaultMessage:"Get started videos"})),e.createElement(ve,{as:"a",href:Ee.href,target:"_blank",rel:"noreferrer noopener",variant:"pi",textColor:"primary600"},i(Ee.label))),e.createElement(pe.i,null),mt.map(({href:p,duration:g,label:l},I)=>e.createElement(Et,{as:"a",href:p,target:"_blank",rel:"noreferrer noopener",key:p,hasRadius:!0,paddingTop:4,paddingBottom:4,paddingLeft:6,paddingRight:11},e.createElement(M.x,{paddingRight:5},e.createElement(E.Z,{textColor:"neutral200",variant:"alpha"},I+1)),e.createElement(M.x,{position:"relative"},e.createElement(yt,{src:dt,alt:""}),e.createElement(ft,{position:"absolute",top:"50%",left:"50%",background:"primary600",borderRadius:"50%",justifyContent:"center",width:6,height:6},e.createElement(_.J,{as:ct.Z,color:"buttonNeutral0",width:3,height:3}))),e.createElement(m.k,{direction:"column",alignItems:"start",paddingLeft:4},e.createElement(E.Z,{fontWeight:"bold"},i(l)),e.createElement(rt.T,null,":"),e.createElement(E.Z,{textColor:"neutral600",variant:"pi"},g)))),e.createElement(m.k,{direction:"column",alignItems:"stretch",gap:2,paddingLeft:5,paddingTop:2,paddingBottom:5},h.map(({label:p,href:g,icon:l})=>e.createElement(m.k,{gap:3,key:g},e.createElement(_.J,{as:l,color:"primary600"}),e.createElement(ve,{as:"a",href:g,target:"_blank",rel:"noreferrer noopener",variant:"sigma",textColor:"primary700"},i(p))))))))};const Ct=(0,e.lazy)(()=>Promise.all([n.e(462),n.e(1657),n.e(6970),n.e(994)]).then(n.bind(n,51686))),Tt=(0,e.lazy)(()=>n.e(3981).then(n.bind(n,55129))),Mt=(0,e.lazy)(()=>n.e(3677).then(n.bind(n,15415))),St=(0,e.lazy)(()=>n.e(5516).then(n.bind(n,77571))),Ce=(0,e.lazy)(()=>Promise.resolve().then(n.bind(n,53951))),Pt=(0,e.lazy)(()=>n.e(9501).then(n.bind(n,92336))),It=(0,e.lazy)(()=>n.e(9497).then(n.bind(n,9972))),Te=(0,e.lazy)(()=>n.e(5895).then(n.bind(n,74750))),Rt=()=>{const{trackUsage:t}=(0,s.rS)(),a=(0,y.I0)(),o=(0,y.v9)(i=>i.admin_app.status);(0,e.useEffect)(()=>{o==="init"&&(t("didAccessAuthenticatedAdministration"),a({type:ot.e}))},[o])};var At=()=>{Rt();const{isLoading:t,generalSectionLinks:a,pluginsSectionLinks:o}=(0,C.H9)(),{menu:i}=(0,s.j1)(),{showTutorials:d}=(0,C.um)(),u=(0,e.useMemo)(()=>i.filter(h=>h.Component).map(({to:h,Component:p,exact:g})=>(0,q.ot)(p,h,g)),[i]);return t?e.createElement(s.dO,null):e.createElement(G.DndProvider,{backend:z.PD},e.createElement(at,{sideNav:e.createElement(et,{generalSectionLinks:a,pluginsSectionLinks:o})},e.createElement(e.Suspense,{fallback:e.createElement(s.dO,null)},e.createElement(f.rs,null,e.createElement(f.AW,{path:"/",component:Tt,exact:!0}),e.createElement(f.AW,{path:"/me",component:It,exact:!0}),e.createElement(f.AW,{path:"/content-manager",component:Ct}),u,e.createElement(f.AW,{path:"/settings/:settingId",component:Te}),e.createElement(f.AW,{path:"/settings",component:Te,exact:!0}),e.createElement(f.AW,{path:"/marketplace"},e.createElement(St,null)),e.createElement(f.AW,{path:"/list-plugins",exact:!0},e.createElement(Mt,null)),e.createElement(f.AW,{path:"/404",component:Ce}),e.createElement(f.AW,{path:"/500",component:Pt}),e.createElement(f.AW,{path:"",component:Ce}))),e.createElement(ze,null),d&&e.createElement(vt,null)))},Lt=t=>({plugins:Object.keys(t).reduce((a,o)=>(a[o]={...t[o]},a),{})}),Ot=n(3040),xt=n.n(Ot);const Me={plugins:null};var bt=(t=Me,a)=>(0,ie.ZP)(t,o=>{switch(a.type){case"SET_PLUGIN_READY":{xt()(o,["plugins",a.pluginId,"isReady"],!0);break}default:return o}}),Dt=()=>{const{plugins:t}=(0,s.j1)(),[{plugins:a},o]=(0,e.useReducer)(bt,Me,()=>Lt(t)),i=(0,e.useRef)(u=>{o({type:"SET_PLUGIN_READY",pluginId:u})});if(Object.keys(a).some(u=>a[u].isReady===!1)){const u=Object.keys(a).reduce((h,p)=>{const g=a[p].initializer;if(g){const l=a[p].pluginId;h.push(e.createElement(g,{key:l,setPlugin:i.current}))}return h},[]);return e.createElement(e.Fragment,null,u,e.createElement(s.dO,null))}return e.createElement(At,null)},Se=n(17367);const kt=()=>({type:Se.l}),Zt=t=>({type:Se.m,permissions:t}),Pe=({children:t,permissions:a,refetchPermissions:o})=>{const{allPermissions:i}=(0,y.v9)(u=>u.rbacProvider),d=(0,y.I0)();return(0,e.useEffect)(()=>(d(Zt(a)),()=>{d(kt())}),[a,d]),i?e.createElement(s.oL.Provider,{value:{allPermissions:i,refetchPermissions:o}},t):e.createElement(s.dO,null)};Pe.propTypes={children:r().element.isRequired,permissions:r().array.isRequired,refetchPermissions:r().func.isRequired};var Bt=Pe,Wt=n(54770),ee=n.n(Wt),Ie=(t,a)=>!ee().valid(t)||!ee().valid(a)?!1:ee().lt(t,a);const Re=P.i8,Gt=!JSON.parse(localStorage.getItem("STRAPI_UPDATE_NOTIF")),{get:te}=(0,s.tg)(),Nt=async t=>{try{const a=await fetch("https://api.github.com/repos/strapi/strapi/releases/latest");if(!a.ok)throw new Error("Failed to fetch latest Strapi version.");const{tag_name:o}=await a.json();return Ie(Re,o)&&Gt&&t({type:"info",message:{id:"notification.version.update.message"},link:{url:`https://github.com/strapi/strapi/releases/tag/${o}`,label:{id:"global.see-more"}},blockTransition:!0,onClose:()=>localStorage.setItem("STRAPI_UPDATE_NOTIF",!0)}),o}catch{return Re}},Ut=async()=>{try{const{data:t,headers:a}=await te("/admin/information");if(!a["content-type"].includes("application/json"))throw new Error("Not found");return t.data}catch(t){throw new Error(t)}},Ft=async()=>{try{const{data:t,headers:a}=await te("/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)}},jt=async()=>{try{const{data:{data:{roles:t}}}=await te("/admin/users/me");return t}catch(t){throw new Error(t)}},Ae=P.i8;var $t=()=>{const{setGuidedTourVisibility:t}=(0,s.c1)(),a=(0,s.lm)(),o=s.I8.getUserInfo(),i=O()(o,"username")||(0,q.Pp)(o.firstname,o.lastname),[d,u]=(0,e.useState)(i),[h,p]=(0,e.useState)(null),{showReleaseNotification:g}=(0,C.um)(),[{data:l,status:I},{data:x,isLoading:U},{data:F,status:W,refetch:A,isFetched:j,isFetching:b},{data:R}]=(0,L.useQueries)([{queryKey:"app-infos",queryFn:Ut},{queryKey:"strapi-release",queryFn:()=>Nt(a),enabled:g,initialData:Ae},{queryKey:"admin-users-permission",queryFn:Ft,initialData:[]},{queryKey:"user-roles",queryFn:jt}]),D=Ie(Ae,x);return(0,e.useEffect)(()=>{R&&R.find(({code:$})=>$==="strapi-super-admin")&&l?.autoReload&&t(!0)},[R,l,t]),(0,e.useEffect)(()=>{(async()=>{const $=await(0,q.Qy)(o);p($)})()},[o]),U||(b&&j||I==="loading"||W==="loading")?e.createElement(s.dO,null):I==="error"?e.createElement("div",null,"error..."):e.createElement(s.iq,{...l,userId:h,latestStrapiReleaseTag:x,setUserDisplayName:u,shouldUpdateStrapi:D,userDisplayName:d},e.createElement(Bt,{permissions:F,refetchPermissions:A},e.createElement(Dt,null)))}},78024:function(Q,S,n){var e=n(32735),s=n(60216),L=n.n(s),v=n(24989),O=n(72850),P=n(23678);const C=({type:f,...y})=>e.createElement(O.x,{width:(0,v.Q1)(2),height:"100%",background:f===P.VM?"neutral300":"primary500",hasRadius:!0,...y});C.defaultProps={type:P.VM},C.propTypes={type:L().oneOf([P.lW,P.hx,P.VM])},S.Z=C},14317:function(Q,S,n){var e=n(32735),s=n(60216),L=n.n(s),v=n(24989),O=n(87933),P=n(99140),C=n(49372),f=n(66456),y=n(23678);const G=({type:z,number:K})=>z===y.hx?e.createElement(O.k,{background:"primary600",padding:2,borderRadius:"50%",width:(0,v.Q1)(30),height:(0,v.Q1)(30),justifyContent:"center"},e.createElement(P.J,{as:f.Z,"aria-hidden":!0,width:(0,v.Q1)(16),color:"neutral0"})):z===y.lW?e.createElement(O.k,{background:"primary600",padding:2,borderRadius:"50%",width:(0,v.Q1)(30),height:(0,v.Q1)(30),justifyContent:"center"},e.createElement(C.Z,{fontWeight:"semiBold",textColor:"neutral0"},K)):e.createElement(O.k,{borderColor:"neutral500",borderWidth:"1px",borderStyle:"solid",padding:2,borderRadius:"50%",width:(0,v.Q1)(30),height:(0,v.Q1)(30),justifyContent:"center"},e.createElement(C.Z,{fontWeight:"semiBold",textColor:"neutral600"},K));G.defaultProps={number:void 0,type:y.VM},G.propTypes={number:L().number,type:L().oneOf([y.lW,y.hx,y.VM])},S.Z=G},23678:function(Q,S,n){n.d(S,{VM:function(){return L},hx:function(){return s},lW:function(){return e}});const e="isActive",s="isDone",L="isNotDone"},58107:function(Q,S){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"}}};S.Z=n}}]);
|
|
79
|
+
`;var vt=()=>{const t=(0,e.useRef)(),[a,o]=(0,e.useState)(!1),{formatMessage:i}=(0,Z.Z)(),{communityEdition:d}=(0,s.L7)(),u=()=>{o(p=>!p)},h=[...gt,{label:{id:"Settings.application.get-help",defaultMessage:"Get help"},icon:it.Z,href:d?"https://discord.strapi.io":"https://support.strapi.io/support/home"}];return e.createElement(M.x,{as:"aside",position:"fixed",bottom:2,right:2},e.createElement(ht,{"aria-label":i(a?{id:"app.components.Onboarding.help.button-close",defaultMessage:"Close help menu"}:{id:"app.components.Onboarding.help.button",defaultMessage:"Open help menu"}),onClick:u,ref:t},e.createElement(_.J,{as:a?se.Z:lt.Z,color:"buttonNeutral0"})),a&&e.createElement(ae.h,null,e.createElement(st.M.Content,{padding:0,onDimiss:u,source:t,placement:"top-end",spacing:12},e.createElement(m.k,{justifyContent:"space-between",paddingBottom:5,paddingRight:6,paddingLeft:6,paddingTop:6},e.createElement(ye,{fontWeight:"bold"},i({id:"app.components.Onboarding.title",defaultMessage:"Get started videos"})),e.createElement(ve,{as:"a",href:Ee.href,target:"_blank",rel:"noreferrer noopener",variant:"pi",textColor:"primary600"},i(Ee.label))),e.createElement(pe.i,null),mt.map(({href:p,duration:g,label:l},I)=>e.createElement(Et,{as:"a",href:p,target:"_blank",rel:"noreferrer noopener",key:p,hasRadius:!0,paddingTop:4,paddingBottom:4,paddingLeft:6,paddingRight:11},e.createElement(M.x,{paddingRight:5},e.createElement(E.Z,{textColor:"neutral200",variant:"alpha"},I+1)),e.createElement(M.x,{position:"relative"},e.createElement(yt,{src:dt,alt:""}),e.createElement(ft,{position:"absolute",top:"50%",left:"50%",background:"primary600",borderRadius:"50%",justifyContent:"center",width:6,height:6},e.createElement(_.J,{as:ct.Z,color:"buttonNeutral0",width:3,height:3}))),e.createElement(m.k,{direction:"column",alignItems:"start",paddingLeft:4},e.createElement(E.Z,{fontWeight:"bold"},i(l)),e.createElement(rt.T,null,":"),e.createElement(E.Z,{textColor:"neutral600",variant:"pi"},g)))),e.createElement(m.k,{direction:"column",alignItems:"stretch",gap:2,paddingLeft:5,paddingTop:2,paddingBottom:5},h.map(({label:p,href:g,icon:l})=>e.createElement(m.k,{gap:3,key:g},e.createElement(_.J,{as:l,color:"primary600"}),e.createElement(ve,{as:"a",href:g,target:"_blank",rel:"noreferrer noopener",variant:"sigma",textColor:"primary700"},i(p))))))))};const Ct=(0,e.lazy)(()=>Promise.all([n.e(462),n.e(1657),n.e(6970),n.e(994)]).then(n.bind(n,82865))),Tt=(0,e.lazy)(()=>n.e(3981).then(n.bind(n,55129))),Mt=(0,e.lazy)(()=>n.e(3677).then(n.bind(n,15415))),St=(0,e.lazy)(()=>n.e(5516).then(n.bind(n,77571))),Ce=(0,e.lazy)(()=>Promise.resolve().then(n.bind(n,53951))),Pt=(0,e.lazy)(()=>n.e(9501).then(n.bind(n,92336))),It=(0,e.lazy)(()=>n.e(9497).then(n.bind(n,9972))),Te=(0,e.lazy)(()=>n.e(5895).then(n.bind(n,74750))),Rt=()=>{const{trackUsage:t}=(0,s.rS)(),a=(0,y.I0)(),o=(0,y.v9)(i=>i.admin_app.status);(0,e.useEffect)(()=>{o==="init"&&(t("didAccessAuthenticatedAdministration"),a({type:ot.e}))},[o])};var At=()=>{Rt();const{isLoading:t,generalSectionLinks:a,pluginsSectionLinks:o}=(0,C.H9)(),{menu:i}=(0,s.j1)(),{showTutorials:d}=(0,C.um)(),u=(0,e.useMemo)(()=>i.filter(h=>h.Component).map(({to:h,Component:p,exact:g})=>(0,q.ot)(p,h,g)),[i]);return t?e.createElement(s.dO,null):e.createElement(G.DndProvider,{backend:z.PD},e.createElement(at,{sideNav:e.createElement(et,{generalSectionLinks:a,pluginsSectionLinks:o})},e.createElement(e.Suspense,{fallback:e.createElement(s.dO,null)},e.createElement(f.rs,null,e.createElement(f.AW,{path:"/",component:Tt,exact:!0}),e.createElement(f.AW,{path:"/me",component:It,exact:!0}),e.createElement(f.AW,{path:"/content-manager",component:Ct}),u,e.createElement(f.AW,{path:"/settings/:settingId",component:Te}),e.createElement(f.AW,{path:"/settings",component:Te,exact:!0}),e.createElement(f.AW,{path:"/marketplace"},e.createElement(St,null)),e.createElement(f.AW,{path:"/list-plugins",exact:!0},e.createElement(Mt,null)),e.createElement(f.AW,{path:"/404",component:Ce}),e.createElement(f.AW,{path:"/500",component:Pt}),e.createElement(f.AW,{path:"",component:Ce}))),e.createElement(ze,null),d&&e.createElement(vt,null)))},Lt=t=>({plugins:Object.keys(t).reduce((a,o)=>(a[o]={...t[o]},a),{})}),Ot=n(3040),xt=n.n(Ot);const Me={plugins:null};var bt=(t=Me,a)=>(0,ie.ZP)(t,o=>{switch(a.type){case"SET_PLUGIN_READY":{xt()(o,["plugins",a.pluginId,"isReady"],!0);break}default:return o}}),Dt=()=>{const{plugins:t}=(0,s.j1)(),[{plugins:a},o]=(0,e.useReducer)(bt,Me,()=>Lt(t)),i=(0,e.useRef)(u=>{o({type:"SET_PLUGIN_READY",pluginId:u})});if(Object.keys(a).some(u=>a[u].isReady===!1)){const u=Object.keys(a).reduce((h,p)=>{const g=a[p].initializer;if(g){const l=a[p].pluginId;h.push(e.createElement(g,{key:l,setPlugin:i.current}))}return h},[]);return e.createElement(e.Fragment,null,u,e.createElement(s.dO,null))}return e.createElement(At,null)},Se=n(17367);const kt=()=>({type:Se.l}),Zt=t=>({type:Se.m,permissions:t}),Pe=({children:t,permissions:a,refetchPermissions:o})=>{const{allPermissions:i}=(0,y.v9)(u=>u.rbacProvider),d=(0,y.I0)();return(0,e.useEffect)(()=>(d(Zt(a)),()=>{d(kt())}),[a,d]),i?e.createElement(s.oL.Provider,{value:{allPermissions:i,refetchPermissions:o}},t):e.createElement(s.dO,null)};Pe.propTypes={children:r().element.isRequired,permissions:r().array.isRequired,refetchPermissions:r().func.isRequired};var Bt=Pe,Wt=n(54770),ee=n.n(Wt),Ie=(t,a)=>!ee().valid(t)||!ee().valid(a)?!1:ee().lt(t,a);const Re=P.i8,Gt=!JSON.parse(localStorage.getItem("STRAPI_UPDATE_NOTIF")),{get:te}=(0,s.tg)(),Nt=async t=>{try{const a=await fetch("https://api.github.com/repos/strapi/strapi/releases/latest");if(!a.ok)throw new Error("Failed to fetch latest Strapi version.");const{tag_name:o}=await a.json();return Ie(Re,o)&&Gt&&t({type:"info",message:{id:"notification.version.update.message"},link:{url:`https://github.com/strapi/strapi/releases/tag/${o}`,label:{id:"global.see-more"}},blockTransition:!0,onClose:()=>localStorage.setItem("STRAPI_UPDATE_NOTIF",!0)}),o}catch{return Re}},Ut=async()=>{try{const{data:t,headers:a}=await te("/admin/information");if(!a["content-type"].includes("application/json"))throw new Error("Not found");return t.data}catch(t){throw new Error(t)}},Ft=async()=>{try{const{data:t,headers:a}=await te("/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)}},jt=async()=>{try{const{data:{data:{roles:t}}}=await te("/admin/users/me");return t}catch(t){throw new Error(t)}},Ae=P.i8;var $t=()=>{const{setGuidedTourVisibility:t}=(0,s.c1)(),a=(0,s.lm)(),o=s.I8.getUserInfo(),i=O()(o,"username")||(0,q.Pp)(o.firstname,o.lastname),[d,u]=(0,e.useState)(i),[h,p]=(0,e.useState)(null),{showReleaseNotification:g}=(0,C.um)(),[{data:l,status:I},{data:x,isLoading:U},{data:F,status:W,refetch:A,isFetched:j,isFetching:b},{data:R}]=(0,L.useQueries)([{queryKey:"app-infos",queryFn:Ut},{queryKey:"strapi-release",queryFn:()=>Nt(a),enabled:g,initialData:Ae},{queryKey:"admin-users-permission",queryFn:Ft,initialData:[]},{queryKey:"user-roles",queryFn:jt}]),D=Ie(Ae,x);return(0,e.useEffect)(()=>{R&&R.find(({code:$})=>$==="strapi-super-admin")&&l?.autoReload&&t(!0)},[R,l,t]),(0,e.useEffect)(()=>{(async()=>{const $=await(0,q.Qy)(o);p($)})()},[o]),U||(b&&j||I==="loading"||W==="loading")?e.createElement(s.dO,null):I==="error"?e.createElement("div",null,"error..."):e.createElement(s.iq,{...l,userId:h,latestStrapiReleaseTag:x,setUserDisplayName:u,shouldUpdateStrapi:D,userDisplayName:d},e.createElement(Bt,{permissions:F,refetchPermissions:A},e.createElement(Dt,null)))}},78024:function(Q,S,n){var e=n(32735),s=n(60216),L=n.n(s),v=n(24989),O=n(72850),P=n(23678);const C=({type:f,...y})=>e.createElement(O.x,{width:(0,v.Q1)(2),height:"100%",background:f===P.VM?"neutral300":"primary500",hasRadius:!0,...y});C.defaultProps={type:P.VM},C.propTypes={type:L().oneOf([P.lW,P.hx,P.VM])},S.Z=C},14317:function(Q,S,n){var e=n(32735),s=n(60216),L=n.n(s),v=n(24989),O=n(87933),P=n(99140),C=n(49372),f=n(66456),y=n(23678);const G=({type:z,number:K})=>z===y.hx?e.createElement(O.k,{background:"primary600",padding:2,borderRadius:"50%",width:(0,v.Q1)(30),height:(0,v.Q1)(30),justifyContent:"center"},e.createElement(P.J,{as:f.Z,"aria-hidden":!0,width:(0,v.Q1)(16),color:"neutral0"})):z===y.lW?e.createElement(O.k,{background:"primary600",padding:2,borderRadius:"50%",width:(0,v.Q1)(30),height:(0,v.Q1)(30),justifyContent:"center"},e.createElement(C.Z,{fontWeight:"semiBold",textColor:"neutral0"},K)):e.createElement(O.k,{borderColor:"neutral500",borderWidth:"1px",borderStyle:"solid",padding:2,borderRadius:"50%",width:(0,v.Q1)(30),height:(0,v.Q1)(30),justifyContent:"center"},e.createElement(C.Z,{fontWeight:"semiBold",textColor:"neutral600"},K));G.defaultProps={number:void 0,type:y.VM},G.propTypes={number:L().number,type:L().oneOf([y.lW,y.hx,y.VM])},S.Z=G},23678:function(Q,S,n){n.d(S,{VM:function(){return L},hx:function(){return s},lW:function(){return e}});const e="isActive",s="isDone",L="isNotDone"},58107:function(Q,S){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"}}};S.Z=n}}]);
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
}
|
|
48
48
|
`,Y=({name:a,handleRemove:s})=>e.createElement(v.x,{padding:1},e.createElement(nt.V,{icon:e.createElement(st.Z,null),onClick:s},a)),ct=(0,w.ZP)(Q.z)`
|
|
49
49
|
height: ${({theme:a})=>a.sizes.input.S};
|
|
50
|
-
`,me=({possibleCollections:a,possibleCategories:s,npmPackageType:r,query:l,handleSelectClear:i,handleSelectChange:g})=>{const[c,d]=(0,e.useState)(!1),u=(0,e.useRef)(),{formatMessage:m}=(0,P.Z)(),h=()=>d(p=>!p),E=(p,M)=>{const C={[M]:l[M].filter(N=>N!==p)};g(C)};return e.createElement(e.Fragment,null,e.createElement(v.x,{paddingTop:1,paddingBottom:1},e.createElement(ct,{variant:"tertiary",ref:u,"data-testid":"filters-button",startIcon:e.createElement(rt.Z,null),onClick:h,size:"S"},m({id:"app.utils.filters",defaultMessage:"Filters"})),c&&e.createElement(lt,{onToggle:h,source:u,query:l,handleSelectClear:i,handleSelectChange:g,possibleCollections:a,possibleCategories:s,npmPackageType:r})),l.collections?.map(p=>e.createElement(Y,{name:p,key:p,handleRemove:()=>E(p,"collections")})),r==="plugin"&&l.categories?.map(p=>e.createElement(Y,{name:p,key:p,handleRemove:()=>E(p,"categories")})))};Y.propTypes={name:t().string.isRequired,handleRemove:t().func.isRequired},me.propTypes={npmPackageType:t().oneOf(["plugin","provider"]).isRequired,possibleCollections:t().object.isRequired,possibleCategories:t().object.isRequired,query:t().object.isRequired,handleSelectChange:t().func.isRequired,handleSelectClear:t().func.isRequired};var dt=me;const fe=({pagination:a})=>e.createElement(v.x,{paddingTop:4},e.createElement(f.k,{alignItems:"flex-end",justifyContent:"space-between"},e.createElement(o.v4,{options:["12","24","50","100"],defaultValue:"24"}),e.createElement(o.tU,{pagination:a})));fe.propTypes={pagination:t().shape({page:t().number.isRequired,pageCount:t().number.isRequired,pageSize:t().number.isRequired,total:t().number.isRequired}).isRequired};var gt=fe,pt=n(75536),ut=n.p+"9d5d788027e86620c234.svg",mt=()=>{const{formatMessage:a}=(0,P.Z)();return e.createElement(S.A,null,e.createElement(D.o,null,e.createElement(te,{isOnline:!1}),e.createElement(f.k,{width:"100%",direction:"column",alignItems:"center",justifyContent:"center",paddingTop:(0,o.Q1)(120)},e.createElement(v.x,{paddingBottom:2},e.createElement(R.Z,{textColor:"neutral700",variant:"alpha"},a({id:"admin.pages.MarketPlacePage.offline.title",defaultMessage:"You are offline"}))),e.createElement(v.x,{paddingBottom:6},e.createElement(R.Z,{textColor:"neutral700",variant:"epsilon"},a({id:"admin.pages.MarketPlacePage.offline.subtitle",defaultMessage:"You need to be connected to the Internet to access Strapi Market."}))),e.createElement("img",{src:ut,alt:"offline",style:{width:"88px",height:"88px"}}))))},ft=n(
|
|
50
|
+
`,me=({possibleCollections:a,possibleCategories:s,npmPackageType:r,query:l,handleSelectClear:i,handleSelectChange:g})=>{const[c,d]=(0,e.useState)(!1),u=(0,e.useRef)(),{formatMessage:m}=(0,P.Z)(),h=()=>d(p=>!p),E=(p,M)=>{const C={[M]:l[M].filter(N=>N!==p)};g(C)};return e.createElement(e.Fragment,null,e.createElement(v.x,{paddingTop:1,paddingBottom:1},e.createElement(ct,{variant:"tertiary",ref:u,"data-testid":"filters-button",startIcon:e.createElement(rt.Z,null),onClick:h,size:"S"},m({id:"app.utils.filters",defaultMessage:"Filters"})),c&&e.createElement(lt,{onToggle:h,source:u,query:l,handleSelectClear:i,handleSelectChange:g,possibleCollections:a,possibleCategories:s,npmPackageType:r})),l.collections?.map(p=>e.createElement(Y,{name:p,key:p,handleRemove:()=>E(p,"collections")})),r==="plugin"&&l.categories?.map(p=>e.createElement(Y,{name:p,key:p,handleRemove:()=>E(p,"categories")})))};Y.propTypes={name:t().string.isRequired,handleRemove:t().func.isRequired},me.propTypes={npmPackageType:t().oneOf(["plugin","provider"]).isRequired,possibleCollections:t().object.isRequired,possibleCategories:t().object.isRequired,query:t().object.isRequired,handleSelectChange:t().func.isRequired,handleSelectClear:t().func.isRequired};var dt=me;const fe=({pagination:a})=>e.createElement(v.x,{paddingTop:4},e.createElement(f.k,{alignItems:"flex-end",justifyContent:"space-between"},e.createElement(o.v4,{options:["12","24","50","100"],defaultValue:"24"}),e.createElement(o.tU,{pagination:a})));fe.propTypes={pagination:t().shape({page:t().number.isRequired,pageCount:t().number.isRequired,pageSize:t().number.isRequired,total:t().number.isRequired}).isRequired};var gt=fe,pt=n(75536),ut=n.p+"9d5d788027e86620c234.svg",mt=()=>{const{formatMessage:a}=(0,P.Z)();return e.createElement(S.A,null,e.createElement(D.o,null,e.createElement(te,{isOnline:!1}),e.createElement(f.k,{width:"100%",direction:"column",alignItems:"center",justifyContent:"center",paddingTop:(0,o.Q1)(120)},e.createElement(v.x,{paddingBottom:2},e.createElement(R.Z,{textColor:"neutral700",variant:"alpha"},a({id:"admin.pages.MarketPlacePage.offline.title",defaultMessage:"You are offline"}))),e.createElement(v.x,{paddingBottom:6},e.createElement(R.Z,{textColor:"neutral700",variant:"epsilon"},a({id:"admin.pages.MarketPlacePage.offline.subtitle",defaultMessage:"You need to be connected to the Internet to access Strapi Market."}))),e.createElement("img",{src:ut,alt:"offline",style:{width:"88px",height:"88px"}}))))},ft=n(94638),he=n(20108),ht=n(33348),j=n.n(ht);const ve="https://market-api.strapi.io",vt=async(a={})=>{try{const s=j().stringify(j().parse(a)),r=await fetch(`${ve}/plugins?${s}`);if(!r.ok)throw new Error("Failed to fetch marketplace plugins.");return await r.json()}catch(s){console.error(s)}return null};var Pt=(a,s)=>{const r=(0,o.lm)();return(0,he.useQuery)(["list-marketplace-plugins",s],()=>vt(s),{onSuccess(){a&&a()},onError(){r({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}})};const Et=async(a={})=>{try{const s=j().stringify(j().parse(a)),r=await fetch(`${ve}/providers?${s}`);if(!r.ok)throw new Error("Failed to fetch marketplace providers.");return await r.json()}catch(s){console.error(s)}return null};var Mt=(a,s)=>{const r=(0,o.lm)();return(0,he.useQuery)(["list-marketplace-providers",s],()=>Et(s),{onSuccess(){a&&a()},onError(){r({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}})};function yt({npmPackageType:a,debouncedSearch:s,query:r,tabQuery:l}){const{notifyStatus:i}=(0,ft.G)(),{formatMessage:g}=(0,P.Z)(),c=g({id:"global.marketplace",defaultMessage:"Marketplace"}),d=()=>{i(g({id:"app.utils.notify.data-loaded",defaultMessage:"The {target} has loaded"},{target:c}))},u={page:r?.page||1,pageSize:r?.pageSize||24},{data:m,status:h}=Pt(d,{...l.plugin,pagination:u,search:s}),{data:E,status:p}=Mt(d,{...l.provider,pagination:u,search:s}),M=a==="plugin"?m:E,C=a==="plugin"?h:p,[N,$]=(0,e.useState)({}),[A,F]=(0,e.useState)({});(0,e.useEffect)(()=>{C==="success"&&$(M.meta.collections),h==="success"&&F(m.meta.categories)},[m?.meta.categories,h,M?.meta.collections,C]);const{pagination:X}=C==="success"?M.meta:{};return{pluginsResponse:m,providersResponse:E,pluginsStatus:h,providersStatus:p,possibleCollections:N,possibleCategories:A,pagination:X}}var kt=yt;const Pe=()=>{const{formatMessage:a}=(0,P.Z)(),{trackUsage:s}=(0,o.rS)(),r=(0,e.useRef)(s),l=(0,o.lm)(),[{query:i},g]=(0,o.Kx)(),c=(0,pt.Z)(i?.search,500)||"",{autoReload:d,dependencies:u,useYarn:m,strapiVersion:h}=(0,o.L7)(),E=Se(),p=i?.npmPackageType||"plugin",[M,C]=(0,e.useState)({plugin:p==="plugin"?{...i}:{},provider:p==="provider"?{...i}:{}});(0,o.go)(),(0,e.useEffect)(()=>{r.current("didGoToMarketplace")},[]),(0,e.useEffect)(()=>{d||l({type:"info",message:{id:"admin.pages.MarketPlacePage.production",defaultMessage:"Manage plugins from the development environment"},blockTransition:!0})},[l,d]);const{pluginsResponse:N,providersResponse:$,pluginsStatus:A,providersStatus:F,possibleCollections:X,possibleCategories:Rt,pagination:Ee}=kt({npmPackageType:p,debouncedSearch:c,query:i,tabQuery:M});if(!E)return e.createElement(mt,null);const Ct=x=>{const k=x===0?"plugin":"provider",St=M[k]&&Object.keys(M[k]).length;g(St?{...M[k],search:i?.search||"",npmPackageType:k,page:1}:{npmPackageType:k,collections:[],categories:[],sort:"name:asc",page:1,search:i?.search||""})},Me=x=>{g({...x,page:1}),C(k=>({...k,[p]:{...k[p],...x}}))},xt=x=>{g({[x]:[],page:null},"remove"),C(k=>({...k,[p]:{}}))},ye=Object.keys(u);return e.createElement(S.A,null,e.createElement(D.o,null,e.createElement(y.q,{title:a({id:"admin.pages.MarketPlacePage.helmet",defaultMessage:"Marketplace - Plugins"})}),e.createElement(te,{isOnline:E,npmPackageType:p}),e.createElement(O.D,null,e.createElement(L.v,{label:a({id:"admin.pages.MarketPlacePage.tab-group.label",defaultMessage:"Plugins and Providers for Strapi"}),id:"tabs",variant:"simple",initialSelectedTabIndex:["plugin","provider"].indexOf(p),onTabChange:Ct},e.createElement(f.k,{justifyContent:"space-between",paddingBottom:4},e.createElement(B.m,null,e.createElement(B.O,null,a({id:"admin.pages.MarketPlacePage.plugins",defaultMessage:"Plugins"})," ",A==="success"?`(${N.meta.pagination.total})`:"..."),e.createElement(B.O,null,a({id:"admin.pages.MarketPlacePage.providers",defaultMessage:"Providers"})," ",F==="success"?`(${$.meta.pagination.total})`:"...")),e.createElement(v.x,{width:"25%"},e.createElement(ke.w,{name:"searchbar",onClear:()=>g({search:"",page:1}),value:i?.search,onChange:x=>g({search:x.target.value,page:1}),clearLabel:a({id:"admin.pages.MarketPlacePage.search.clear",defaultMessage:"Clear the search"}),placeholder:a({id:"admin.pages.MarketPlacePage.search.placeholder",defaultMessage:"Search"})},a({id:"admin.pages.MarketPlacePage.search.placeholder",defaultMessage:"Search"})))),e.createElement(f.k,{paddingBottom:4,gap:2},e.createElement(at,{sortQuery:i?.sort||"name:asc",handleSelectChange:Me}),e.createElement(dt,{npmPackageType:p,possibleCollections:X,possibleCategories:Rt,query:i||{},handleSelectChange:Me,handleSelectClear:xt})),e.createElement(z.n,null,e.createElement(z.x,null,e.createElement(le,{npmPackages:N?.data,status:A,installedPackageNames:ye,useYarn:m,isInDevelopmentMode:d,npmPackageType:"plugin",strapiAppVersion:h,debouncedSearch:c})),e.createElement(z.x,null,e.createElement(le,{npmPackages:$?.data,status:F,installedPackageNames:ye,useYarn:m,isInDevelopmentMode:d,npmPackageType:"provider",debouncedSearch:c})))),Ee&&e.createElement(gt,{pagination:Ee}),e.createElement(v.x,{paddingTop:8},e.createElement(we,null)))))};var bt=()=>e.createElement(o.O4,{permissions:xe.Z.marketplace.main},e.createElement(Pe,null))},96709:function(V,b,n){n.d(b,{A:function(){return L}});var e=n(74512),P=n(32735),y=n(60216),o=n(8471),S=n(72850);const D=(0,o.ZP)(S.x)`
|
|
51
51
|
display: grid;
|
|
52
52
|
grid-template-columns: ${({hasSideNav:f})=>f?"auto 1fr":"1fr"};
|
|
53
53
|
`,O=(0,o.ZP)(S.x)`
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[3677],{15415:function(T,r,e){e.r(r),e.d(r,{default:function(){return I}});var t=e(32735),a=e(24989),d=e(74758),i=e(67879),u=e(83983),E=e(94638),g=e(96709),s=e(27649),o=e(82055),v=e(17e3),y=e(56755),C=e(33827),f=e(94547),c=e(19786),m=e(49372),L=e(35658),O=e(20108);const x=async()=>{const{get:n}=(0,a.tg)(),{data:l}=await n("/admin/plugins");return l};var D=n=>{const l=(0,a.lm)();return(0,O.useQuery)("list-enabled-plugins",()=>x(),{onSuccess(){n&&n()},onError(){l({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}})},A=()=>{const{formatMessage:n}=(0,i.Z)(),{notifyStatus:l}=(0,E.G)();(0,a.go)();const h=n({id:"global.plugins",defaultMessage:"Plugins"}),Z=()=>{l(n({id:"app.utils.notify.data-loaded",defaultMessage:"The {target} has loaded"},{target:h}))},{status:p,data:M}=D(Z);return p!=="success"&&p!=="error"?t.createElement(g.A,null,t.createElement(s.o,{"aria-busy":!0},t.createElement(a.dO,null))):t.createElement(g.A,null,t.createElement(s.o,null,t.createElement(o.T,{title:h,subtitle:n({id:"app.components.ListPluginsPage.description",defaultMessage:"List of the installed plugins in the project."})}),t.createElement(v.D,null,t.createElement(y.i,{colCount:2,rowCount:M?.plugins?.length??0+1},t.createElement(C.h,null,t.createElement(f.Tr,null,t.createElement(c.Th,null,t.createElement(m.Z,{variant:"sigma",textColor:"neutral600"},n({id:"global.name",defaultMessage:"Name"}))),t.createElement(c.Th,null,t.createElement(m.Z,{variant:"sigma",textColor:"neutral600"},n({id:"global.description",defaultMessage:"description"}))))),t.createElement(L.p,null,M.plugins.map(({name:P,displayName:B,description:N})=>t.createElement(f.Tr,{key:P},t.createElement(c.Td,null,t.createElement(m.Z,{textColor:"neutral800",variant:"omega",fontWeight:"bold"},n({id:`global.plugins.${P}`,defaultMessage:B}))),t.createElement(c.Td,null,t.createElement(m.Z,{textColor:"neutral800"},n({id:`global.plugins.${P}.description`,defaultMessage:N}))))))))))},I=()=>{const{formatMessage:n}=(0,i.Z)(),l=n({id:"global.plugins",defaultMessage:"Plugins"});return t.createElement(a.O4,{permissions:u.Z.marketplace.main},t.createElement(d.q,{title:l}),t.createElement(A,null))}},96709:function(T,r,e){e.d(r,{A:function(){return s}});var t=e(74512),a=e(32735),d=e(60216),i=e(8471),u=e(72850);const E=(0,i.ZP)(u.x)`
|
|
2
|
+
display: grid;
|
|
3
|
+
grid-template-columns: ${({hasSideNav:o})=>o?"auto 1fr":"1fr"};
|
|
4
|
+
`,g=(0,i.ZP)(u.x)`
|
|
5
|
+
overflow-x: hidden;
|
|
6
|
+
`,s=({sideNav:o,children:v})=>(0,t.jsxs)(E,{hasSideNav:!!o,children:[o,(0,t.jsx)(g,{paddingBottom:10,children:v})]});s.defaultProps={sideNav:void 0},s.propTypes={children:d.node.isRequired,sideNav:d.node}}}]);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[9497],{9972:function(Y,E,t){t.r(E),t.d(E,{default:function(){return le}});var e=t(32735),o=t(8471),r=t(24989),F=t(67879),L=t(92802),H=t(23940),I=t.n(H),v=t(20108),A=t(88423),f=t.n(A),c=t(74758),w=t(10369),$=t(63642),J=t(
|
|
1
|
+
"use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[9497],{9972:function(Y,E,t){t.r(E),t.d(E,{default:function(){return le}});var e=t(32735),o=t(8471),r=t(24989),F=t(67879),L=t(92802),H=t(23940),I=t.n(H),v=t(20108),A=t(88423),f=t.n(A),c=t(74758),w=t(10369),$=t(63642),J=t(94638),j=t(27649),B=t(82055),N=t(17e3),V=t(41415),P=t(72850),g=t(87933),y=t(49372),M=t(15335),m=t(5803),O=t(68465),z=t(84967),K=t(66456),Z=t(54894),T=t(60492),k=t(20139),q=t(32308),_=t(9086),ee=t.n(_);const te=async()=>{const{get:i}=(0,r.tg)(),{data:p}=await i("/admin/users/me");return p.data},ae=async i=>{const p=ee()(i,["confirmPassword","currentTheme"]),{put:h}=(0,r.tg)(),{data:R}=await h("/admin/users/me",p);return{...R.data,currentTheme:i.currentTheme}};var ne=t(24346),se=t(1057),re=ne.Ry().shape(se.Rw),G=t(8997);const oe=o.ZP.a`
|
|
2
2
|
color: ${({theme:i})=>i.colors.primary600};
|
|
3
3
|
`,x=(0,o.ZP)(w.o)`
|
|
4
4
|
::-ms-reveal {
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
left: 0;
|
|
7
7
|
right: 0;
|
|
8
8
|
z-index: 1;
|
|
9
|
-
`,rt=({setLocalImage:o,goTo:n,next:a,onClose:i})=>{const{formatMessage:m}=(0,c.Z)(),[M,R]=(0,e.useState)(!1),[x,f]=(0,e.useState)(void 0),u=(0,e.useRef)(null),z=()=>R(!0),S=()=>R(!1),W=V=>{V.preventDefault(),u.current.click()},Z=async()=>{S();const V=u.current.files[0];if(V)try{const K=await vt(V);o(K),n(a)}catch(K){if(K.displayMessage)f(m(K.displayMessage,{size:J,dimension:$})),u.current.focus();else throw K}},G=()=>M?"primary500":x?"danger600":"neutral300";return e.createElement(e.Fragment,null,e.createElement("form",null,e.createElement(j.x,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(Bt.g,{name:"logo-upload",error:x},e.createElement("label",{htmlFor:"logo-upload"},e.createElement(g.k,{direction:"column",alignItems:"stretch",gap:2},e.createElement(g.k,{paddingTop:9,paddingBottom:7,hasRadius:!0,justifyContent:"center",direction:"column",background:M?"primary100":"neutral100",borderColor:G(),borderStyle:"dashed",borderWidth:"1px",position:"relative",onDragEnter:z,onDragLeave:S},e.createElement(Ut.J,{color:"primary600",width:`${60/16}rem`,height:`${60/16}rem`,as:zt.Z,"aria-hidden":!0}),e.createElement(j.x,{paddingTop:3,paddingBottom:5},e.createElement(p.Z,{variant:"delta",as:"span"},m({id:"Settings.application.customization.modal.upload.drag-drop",defaultMessage:"Drag and Drop here or"}))),e.createElement(Kt,{accept:b,cursor:"pointer",as:"input",type:"file",name:"files",tabIndex:-1,zIndex:1,onChange:Z,ref:u,id:"logo-upload"}),e.createElement(T.z,{type:"button",onClick:W},m({id:"Settings.application.customization.modal.upload.cta.browse",defaultMessage:"Browse files"})),e.createElement(j.x,{paddingTop:6},e.createElement(p.Z,{variant:"pi",textColor:"neutral600"},m({id:"Settings.application.customization.modal.upload.file-validation",defaultMessage:"Max dimension: {dimension}x{dimension}, Max size: {size}KB"},{size:J,dimension:$})))),e.createElement(jt.c,null)))))),e.createElement(lt.m,{startActions:e.createElement(T.z,{onClick:i,variant:"tertiary"},m({id:"Settings.application.customization.modal.cancel",defaultMessage:"Cancel"}))}))};rt.defaultProps={next:null},rt.propTypes={goTo:s().func.isRequired,next:s().string,onClose:s().func.isRequired,setLocalImage:s().func.isRequired};var $t=rt,Nt=t(10369),Gt=async o=>{try{const{get:n}=(0,l.tg)(),a=await n(o,{responseType:"blob",timeout:8e3});return new File([a.data],a.config.url,{type:a.headers["content-type"]})}catch(n){throw n.displayMessage={id:"Settings.application.customization.modal.upload.error-network",defaultMessage:"Network error"},n}};const dt=({goTo:o,next:n,onClose:a,setLocalImage:i})=>{const{formatMessage:m}=(0,c.Z)(),[M,R]=(0,e.useState)(""),[x,f]=(0,e.useState)(null),u=S=>{R(S.target.value)},z=async()=>{try{const S=await Gt(M),W=await vt(S);i(W),o(n)}catch(S){if(S.displayMessage)f(m(S.displayMessage,{size:J,dimension:$}));else throw S}};return e.createElement("form",{onSubmit:S=>{S.preventDefault(),z()}},e.createElement(j.x,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(Nt.o,{label:m({id:"Settings.application.customization.modal.upload.from-url.input-label",defaultMessage:"URL"}),error:x,onChange:u,value:M,name:"logo-url"})),e.createElement(lt.m,{startActions:e.createElement(T.z,{onClick:a,variant:"tertiary"},m({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(T.z,{type:"submit"},m({id:"Settings.application.customization.modal.upload.next",defaultMessage:"Next"}))}))};dt.defaultProps={next:null},dt.propTypes={goTo:s().func.isRequired,next:s().string,onClose:s().func.isRequired,setLocalImage:s().func.isRequired};var Ht=dt;const ct=({setLocalImage:o,goTo:n,next:a,onClose:i})=>{const{formatMessage:m}=(0,c.Z)();return e.createElement(Ot.v,{label:m({id:"Settings.application.customization.modal.tab.label",defaultMessage:"How do you want to upload your assets?"}),variant:"simple"},e.createElement(j.x,{paddingLeft:8,paddingRight:8},e.createElement(st.m,null,e.createElement(st.O,null,m({id:"Settings.application.customization.modal.upload.from-computer",defaultMessage:"From computer"})),e.createElement(st.O,null,m({id:"Settings.application.customization.modal.upload.from-url",defaultMessage:"From url"}))),e.createElement(Dt.i,null)),e.createElement(it.n,null,e.createElement(it.x,null,e.createElement($t,{onClose:i,setLocalImage:o,goTo:n,next:a})),e.createElement(it.x,null,e.createElement(Ht,{onClose:i,setLocalImage:o,goTo:n,next:a}))))};ct.defaultProps={next:null},ct.propTypes={goTo:s().func.isRequired,next:s().string,onClose:s().func.isRequired,setLocalImage:s().func.isRequired};var bt=ct,Vt=t(42466),Qt=t(20853),Jt=t(2800),Xt=t(26835),Yt=t(41048),Mt=t(37083),wt=t(11505);const xt=({asset:o})=>{const{formatMessage:n}=(0,c.Z)();return e.createElement(Vt.Z,null,e.createElement(Qt.O,null,e.createElement(Jt.H,{size:"S",src:o.url})),e.createElement(Xt.e,null,e.createElement(Yt.a,null,e.createElement(Mt.l,null,o.name),e.createElement(Mt._,null,`${o.ext.toUpperCase()} - ${o.width}\u2715${o.height}`)),e.createElement(wt.E,null,n({id:"Settings.application.customization.modal.pending.card-badge",defaultMessage:"image"}))))};xt.propTypes={asset:s().shape({name:s().string,url:s().string,width:s().number,height:s().number,ext:s().string}).isRequired};var kt=xt;const ut=({onClose:o,asset:n,prev:a,next:i,goTo:m,setLocalImage:M,onChangeLogo:R})=>{const{formatMessage:x}=(0,c.Z)(),f=()=>{M(void 0),m(a)},u=()=>{R(n),m(i)};return e.createElement(e.Fragment,null,e.createElement(j.x,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(g.k,{justifyContent:"space-between",paddingBottom:6},e.createElement(g.k,{direction:"column",alignItems:"flex-start"},e.createElement(p.Z,{variant:"pi",fontWeight:"bold"},x({id:"Settings.application.customization.modal.pending.title",defaultMessage:"Logo ready to upload"})),e.createElement(p.Z,{variant:"pi",textColor:"neutral500"},x({id:"Settings.application.customization.modal.pending.subtitle",defaultMessage:"Manage the chosen logo before uploading it"}))),e.createElement(T.z,{onClick:f,variant:"secondary"},x({id:"Settings.application.customization.modal.pending.choose-another",defaultMessage:"Choose another logo"}))),e.createElement(j.x,{maxWidth:(0,l.Q1)(180)},n.url?e.createElement(kt,{asset:n}):null)),e.createElement(lt.m,{startActions:e.createElement(T.z,{onClick:o,variant:"tertiary"},x({id:"Settings.application.customization.modal.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(T.z,{onClick:u},x({id:"Settings.application.customization.modal.pending.upload",defaultMessage:"Upload logo"}))}))};ut.defaultProps={next:null,prev:null},ut.propTypes={goTo:s().func.isRequired,asset:s().shape({name:s().string,url:s().string,width:s().number,height:s().number,ext:s().string}).isRequired,next:s().string,onClose:s().func.isRequired,onChangeLogo:s().func.isRequired,prev:s().string,setLocalImage:s().func.isRequired};var qt=ut,_t={upload:{Component:bt,modalTitle:{id:"Settings.application.customization.modal.upload",defaultMessage:"Upload logo"},next:"pending",prev:null},pending:{Component:qt,modalTitle:{id:"Settings.application.customization.modal.pending",defaultMessage:"Pending logo"},next:null,prev:"upload"}};const mt=({canUpdate:o,customLogo:n,defaultLogo:a,hint:i,label:m,onChangeLogo:M,onResetLogo:R})=>{const[{currentStep:x},f]=(0,e.useReducer)(Tt,Et),{Component:u,next:z,prev:S,modalTitle:W}=_t[x]||{},{formatMessage:Z}=(0,c.Z)(),G=V=>{f({type:"GO_TO",to:V})};return e.createElement(e.Fragment,null,e.createElement(Y.F,{label:m,selectedSlide:0,hint:i,previousLabel:"",nextLabel:"",onNext:()=>{},onPrevious:()=>{},secondaryLabel:n?.name||"logo.png",actions:e.createElement(q.b,null,e.createElement(_.h,{disabled:!o,onClick:()=>G(n?"pending":"upload"),label:Z({id:"Settings.application.customization.carousel.change-action",defaultMessage:"Change logo"}),icon:e.createElement(w.Z,null)}),n&&e.createElement(_.h,{disabled:!o,onClick:R,label:Z({id:"Settings.application.customization.carousel.reset-action",defaultMessage:"Reset logo"}),icon:e.createElement(et.Z,null)}))},e.createElement(X.q,{label:Z({id:"Settings.application.customization.carousel-slide.label",defaultMessage:"Logo slide"})},e.createElement(j.x,{maxHeight:"40%",maxWidth:"40%",as:"img",src:n?.url||a,alt:Z({id:"Settings.application.customization.carousel.title",defaultMessage:"Logo"})}))),e.createElement(Pt,{Component:u,currentStep:x,onChangeLogo:M,customLogo:n,goTo:G,next:z,prev:S,modalTitle:W}))};mt.defaultProps={canUpdate:!1,customLogo:null,hint:null},mt.propTypes={canUpdate:s().bool,customLogo:s().shape({url:s().string,name:s().string}),label:s().string.isRequired,hint:s().string,defaultLogo:s().string.isRequired,onChangeLogo:s().func.isRequired,onResetLogo:s().func.isRequired};var Ct=mt;const gt={menuLogo:{display:null,submit:{rawFile:null,isReset:!1}},authLogo:{display:null,submit:{rawFile:null,isReset:!1}}};var te=(o=gt,n)=>(0,k.ZP)(o,a=>{switch(n.type){case"SET_CUSTOM_MENU_LOGO":{a.menuLogo.display=n.value,a.menuLogo.submit.rawFile=n.value.rawFile;break}case"SET_CUSTOM_AUTH_LOGO":{a.authLogo.display=n.value,a.authLogo.submit.rawFile=n.value.rawFile;break}case"RESET_CUSTOM_MENU_LOGO":{a.menuLogo.display=null,a.menuLogo.submit={rawFile:null,isReset:!0};break}case"RESET_CUSTOM_AUTH_LOGO":{a.authLogo.display=null,a.authLogo.submit={rawFile:null,isReset:!0};break}default:return a}}),ee=t(86349),ne=t.n(ee),oe=(o,n)=>ne()(o,{menuLogo:{display:n.menuLogo},authLogo:{display:n.authLogo}});const pt=(0,e.forwardRef)(({canUpdate:o,projectSettingsStored:n},a)=>{const{formatMessage:i}=(0,c.Z)(),{trackUsage:m}=(0,l.rS)(),{logos:{menu:M,auth:R}}=(0,C.um)(),[{menuLogo:x,authLogo:f},u]=(0,e.useReducer)(te,gt,()=>oe(gt,n)),z=G=>{u({type:"SET_CUSTOM_MENU_LOGO",value:G})},S=()=>{m("didClickResetLogo",{logo:"menu"}),u({type:"RESET_CUSTOM_MENU_LOGO"})},W=G=>{u({type:"SET_CUSTOM_AUTH_LOGO",value:G})},Z=()=>{m("didClickResetLogo",{logo:"auth"}),u({type:"RESET_CUSTOM_AUTH_LOGO"})};return(0,e.useImperativeHandle)(a,()=>({getValues:()=>({menuLogo:x.submit,authLogo:f.submit})})),e.createElement(j.x,{hasRadius:!0,background:"neutral0",shadow:"tableShadow",paddingTop:6,paddingBottom:6,paddingRight:7,paddingLeft:7},e.createElement(p.Z,{variant:"delta",as:"h3"},i({id:"Settings.application.customization",defaultMessage:"Customization"})),e.createElement(p.Z,{variant:"pi",textColor:"neutral600"},i({id:"Settings.application.customization.size-details",defaultMessage:"Max dimension: {dimension}\xD7{dimension}, Max file size: {size}KB"},{dimension:$,size:J})),e.createElement(y.r,{paddingTop:4,gap:4},e.createElement(O.P,{col:6,s:12},e.createElement(Ct,{canUpdate:o,customLogo:x.display,defaultLogo:M.default,hint:i({id:"Settings.application.customization.menu-logo.carousel-hint",defaultMessage:"Replace the logo in the main navigation"}),label:i({id:"Settings.application.customization.carousel.menu-logo.title",defaultMessage:"Menu logo"}),onChangeLogo:z,onResetLogo:S})),e.createElement(O.P,{col:6,s:12},e.createElement(Ct,{canUpdate:o,customLogo:f.display,defaultLogo:R.default,hint:i({id:"Settings.application.customization.auth-logo.carousel-hint",defaultMessage:"Replace the logo in the authentication pages"}),label:i({id:"Settings.application.customization.carousel.auth-logo.title",defaultMessage:"Auth logo"}),onChangeLogo:W,onResetLogo:Z}))))});pt.defaultProps={canUpdate:!1,projectSettingsStored:null},pt.propTypes={canUpdate:s().bool,projectSettingsStored:s().shape({menuLogo:s().shape({url:s().string,name:s().string})})};var ae=pt,se=t(48344),ie=t.n(se),Lt=o=>ie()(o,(n,a,i)=>{a&&a.url?n[i]={...a,url:(0,l.CR)(a.url)}:n[i]=a},{});const le=async()=>{const{get:o}=(0,l.tg)(),{data:n}=await o("/admin/project-settings");return Lt(n)},re=async o=>{const{post:n}=(0,l.tg)(),{data:a}=await n("/admin/project-settings",o,{headers:{"Content-Type":"multipart/form-data"}});return Lt(a)};var de=o=>{const n=new FormData;return Object.entries(o).forEach(([a,i])=>{i&&i.rawFile instanceof File&&n.append(a,i.rawFile),i&&i.isReset&&n.append(a,null)}),n};const ce=(()=>window&&window.strapi&&window.strapi.isEE?t(78999).Z:t(17891).Z)();var ue=()=>{const o=(0,e.useRef)(),n=(0,l.lm)(),{trackUsage:a}=(0,l.rS)(),{formatMessage:i}=(0,c.Z)(),m=(0,E.useQueryClient)();(0,l.go)();const M=(0,l.L7)(),{latestStrapiReleaseTag:R,shouldUpdateStrapi:x,strapiVersion:f}=M,{updateProjectSettings:u}=(0,C.um)(),{allowedActions:{canRead:z,canUpdate:S}}=(0,l.ss)(H.Z.settings["project-settings"]),W=z&&S,{data:Z}=(0,E.useQuery)("project-settings",le,{enabled:z}),G=(0,E.useMutation)(K=>re(K),{async onSuccess(K){let{menuLogo:tt,authLogo:ht}=K;await m.invalidateQueries("project-settings",{refetchActive:!0}),u({menuLogo:tt?.url,authLogo:ht?.url})}}),V=K=>{if(K.preventDefault(),!S)return;const tt=o.current.getValues(),ht=de(tt);G.mutate(ht,{onSuccess(){const{menuLogo:Pe,authLogo:Te}=tt;Pe.rawFile&&a("didChangeLogo",{logo:"menu"}),Te.rawFile&&a("didChangeLogo",{logo:"auth"}),n({type:"success",message:i({id:"app",defaultMessage:"Saved"})})},onError(){n({type:"warning",message:{id:"notification.error",defaultMessage:"An error occurred"}})}})};return e.createElement(r.A,null,e.createElement(l.SL,{name:"Application"}),e.createElement(P.o,null,e.createElement("form",{onSubmit:V},e.createElement(B.T,{title:i({id:"Settings.application.title",defaultMessage:"Overview"}),subtitle:i({id:"Settings.application.description",defaultMessage:"Administration panel\u2019s global information"}),primaryAction:W&&e.createElement(T.z,{type:"submit",startIcon:e.createElement(I.Z,null)},i({id:"global.save",defaultMessage:"Save"}))}),e.createElement(F.D,null,e.createElement(g.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(g.k,{direction:"column",alignItems:"stretch",gap:4,hasRadius:!0,background:"neutral0",shadow:"tableShadow",paddingTop:6,paddingBottom:6,paddingRight:7,paddingLeft:7},e.createElement(p.Z,{variant:"delta",as:"h3"},i({id:"global.details",defaultMessage:"Details"})),e.createElement(y.r,{gap:5,as:"dl"},e.createElement(O.P,{col:6,s:12},e.createElement(p.Z,{variant:"sigma",textColor:"neutral600",as:"dt"},i({id:"Settings.application.strapiVersion",defaultMessage:"strapi version"})),e.createElement(g.k,{gap:3,direction:"column",alignItems:"start",as:"dd"},e.createElement(p.Z,null,"v",f),x&&e.createElement(D.r,{href:`https://github.com/strapi/strapi/releases/tag/${R}`,isExternal:!0,endIcon:e.createElement(U.Z,null)},i({id:"Settings.application.link-upgrade",defaultMessage:"Upgrade your admin panel"})))),e.createElement(O.P,{col:6,s:12},e.createElement(p.Z,{variant:"sigma",textColor:"neutral600",as:"dt"},i({id:"Settings.application.edition-title",defaultMessage:"current plan"})),e.createElement(g.k,{gap:3,direction:"column",alignItems:"start",as:"dd"},e.createElement(p.Z,null,i({id:"Settings.application.ee-or-ce",defaultMessage:"{communityEdition, select, true {Community Edition} other {Enterprise Edition}}"},{communityEdition:M.communityEdition})),e.createElement(D.r,{href:"https://strapi.io/pricing-self-hosted",isExternal:!0,endIcon:e.createElement(U.Z,null)},i({id:"Settings.application.link-pricing",defaultMessage:"See all pricing plans"})))),e.createElement(O.P,{col:6,s:12},e.createElement(p.Z,{variant:"sigma",textColor:"neutral600",as:"dt"},i({id:"Settings.application.node-version",defaultMessage:"node version"})),e.createElement(p.Z,{as:"dd"},M.nodeVersion)),e.createElement(ce,null))),z&&Z&&e.createElement(ae,{canUpdate:S,ref:o,projectSettingsStored:Z}))))))},me=t(3704),ge=t.n(me),pe=o=>ge()(o,a=>a.links).map(a=>(0,v.ot)(a.Component,a.to,a.exact||!1)),he=o=>o.filter(n=>!n.links.every(a=>a.isDisplayed===!1)),Ee=[{async Component(){return await t.e(3455).then(t.bind(t,67249))},to:"/settings/roles",exact:!0},{async Component(){return await Promise.all([t.e(1387),t.e(2544)]).then(t.bind(t,92034))},to:"/settings/roles/duplicate/:id",exact:!0},{async Component(){return await Promise.all([t.e(1387),t.e(2544)]).then(t.bind(t,92034))},to:"/settings/roles/new",exact:!0},{async Component(){return await Promise.all([t.e(1387),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,10108))},to:"/settings/users",exact:!0},{async Component(){return await t.e(4263).then(t.bind(t,40874))},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,32393))},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(1387),t.e(4628),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(1387),t.e(4628),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(1387),t.e(4628),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(1387),t.e(4628),t.e(7259),t.e(2492)]).then(t.bind(t,73607))},to:"/settings/transfer-tokens/:id",exact:!0}],fe=[...(()=>window&&window.strapi&&window.strapi.isEE?t(63775).Z:t(75936).Z)(),...Ee],ve=t(14911),Me=t(90700),xe=t(78090),Ce=t(77013),Le=t(79318),ye=t(66618);const yt=({menu:o})=>{const{formatMessage:n}=(0,c.Z)(),{trackUsage:a}=(0,l.rS)(),{pathname:i}=(0,d.TH)(),M=he(o).map(f=>({...f,title:f.intlLabel,links:f.links.map(u=>({...u,title:u.intlLabel,name:u.id}))})),R=n({id:"global.settings",defaultMessage:"Settings"}),x=(f=null)=>{a("willNavigate",{from:i,to:f})};return e.createElement(Me.m,{ariaLabel:R},e.createElement(xe.p,{label:R}),e.createElement(Ce.Z,null,M.map(f=>e.createElement(Le.D,{key:f.id,label:n(f.intlLabel)},f.links.map(u=>e.createElement(ye.E,{as:ve.OL,withBullet:u.hasNotification,to:u.to,onClick:()=>x(u.to),key:u.id},n(u.intlLabel)))))))};yt.propTypes={menu:s().array.isRequired};var Se=yt;function St(){const{settingId:o}=(0,d.UO)(),{settings:n}=(0,l.j1)(),{formatMessage:a}=(0,c.Z)(),{isLoading:i,menu:m}=(0,C.Te)(),M=(0,e.useMemo)(()=>(0,v.WW)(fe.map(({to:f,Component:u,exact:z})=>(0,v.ot)(u,f,z))),[]),R=pe(n);if(i)return e.createElement(l.dO,null);if(!o)return e.createElement(d.l_,{to:"/settings/application-infos"});const x=a({id:"global.settings",defaultMessage:"Settings"});return e.createElement(r.A,{sideNav:e.createElement(Se,{menu:m})},e.createElement(L.q,{title:x}),e.createElement(d.rs,null,e.createElement(d.AW,{path:"/settings/application-infos",component:ue,exact:!0}),M,R))}var Re=(0,e.memo)(St)},17891:function(A,h){"use strict";const t=()=>null;h.Z=t},75936:function(A,h){"use strict";const t=[];h.Z=t},78999:function(A,h,t){"use strict";var e=t(32735),l=t(67879),d=t(5803),r=t(49372),c=t(87933),L=t(63919),C=t(99140),v=t(41502),E=t(69932),P=t(47361),B=t(24989),T=t(58414);const F="https://cloud.strapi.io/profile/billing",g="https://strapi.io/billing/request-seats",p=()=>{const{formatMessage:y}=(0,l.Z)(),{license:O}=(0,T.q5)(),{licenseLimitStatus:D,enforcementUserCount:I,permittedSeats:U,isHostedOnStrapiCloud:H}=O?.data??{};return U?e.createElement(d.P,{col:6,s:12},e.createElement(r.Z,{variant:"sigma",textColor:"neutral600"},y({id:"Settings.application.admin-seats",defaultMessage:"Admin seats"})),e.createElement(c.k,{gap:2},e.createElement(c.k,null,e.createElement(r.Z,{as:"p"},y({id:"Settings.application.ee.admin-seats.count",defaultMessage:"<text>{enforcementUserCount}</text>/{permittedSeats}"},{permittedSeats:U,enforcementUserCount:I,text:Q=>e.createElement(r.Z,{fontWeight:"semiBold",textColor:I>U?"danger500":null},Q)}))),D==="OVER_LIMIT"&&e.createElement(L.u,{description:y({id:"Settings.application.ee.admin-seats.at-limit-tooltip",defaultMessage:"At limit: add seats to invite more users"})},e.createElement(C.J,{width:`${(0,B.Q1)(14)}rem`,height:`${(0,B.Q1)(14)}rem`,color:"danger500",as:E.Z}))),e.createElement(v.r,{href:H?F:g,isExternal:!0,endIcon:e.createElement(P.Z,null)},y({id:"Settings.application.ee.admin-seats.add-seats",defaultMessage:"{isHostedOnStrapiCloud, select, true {Add seats} other {Contact sales}}"},{isHostedOnStrapiCloud:H}))):null};h.Z=p},63775:function(A,h,t){"use strict";const e=[];window.strapi.features.isEnabled(window.strapi.features.SSO)&&e.push({async Component(){return await t.e(302).then(t.bind(t,26930))},to:"/settings/single-sign-on",exact:!0}),window.strapi.features.isEnabled(window.strapi.features.REVIEW_WORKFLOWS)&&e.push({async Component(){return await Promise.all([t.e(3562),t.e(6970),t.e(8155)]).then(t.bind(t,96594))},to:"/settings/review-workflows",exact:!0}),window.strapi.features.isEnabled(window.strapi.features.AUDIT_LOGS)&&e.push({async Component(){return await t.e(2812).then(t.bind(t,71765))},to:"/settings/audit-logs",exact:!0}),h.Z=e},3704:function(A,h,t){var e=t(40314),l=t(37213);function d(r,c){return e(l(r,c),1)}A.exports=d},37213:function(A,h,t){var e=t(26460),l=t(88904),d=t(52920),r=t(77236);function c(L,C){var v=r(L)?e:d;return v(L,l(C,3))}A.exports=c},96709:function(A,h,t){"use strict";t.d(h,{A:function(){return v}});var e=t(74512),l=t(32735),d=t(60216),r=t(8471),c=t(72850);const L=(0,r.ZP)(c.x)`
|
|
9
|
+
`,rt=({setLocalImage:o,goTo:n,next:a,onClose:i})=>{const{formatMessage:m}=(0,c.Z)(),[M,R]=(0,e.useState)(!1),[x,f]=(0,e.useState)(void 0),u=(0,e.useRef)(null),z=()=>R(!0),S=()=>R(!1),W=V=>{V.preventDefault(),u.current.click()},Z=async()=>{S();const V=u.current.files[0];if(V)try{const K=await vt(V);o(K),n(a)}catch(K){if(K.displayMessage)f(m(K.displayMessage,{size:J,dimension:$})),u.current.focus();else throw K}},G=()=>M?"primary500":x?"danger600":"neutral300";return e.createElement(e.Fragment,null,e.createElement("form",null,e.createElement(j.x,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(Bt.g,{name:"logo-upload",error:x},e.createElement("label",{htmlFor:"logo-upload"},e.createElement(g.k,{direction:"column",alignItems:"stretch",gap:2},e.createElement(g.k,{paddingTop:9,paddingBottom:7,hasRadius:!0,justifyContent:"center",direction:"column",background:M?"primary100":"neutral100",borderColor:G(),borderStyle:"dashed",borderWidth:"1px",position:"relative",onDragEnter:z,onDragLeave:S},e.createElement(Ut.J,{color:"primary600",width:`${60/16}rem`,height:`${60/16}rem`,as:zt.Z,"aria-hidden":!0}),e.createElement(j.x,{paddingTop:3,paddingBottom:5},e.createElement(p.Z,{variant:"delta",as:"span"},m({id:"Settings.application.customization.modal.upload.drag-drop",defaultMessage:"Drag and Drop here or"}))),e.createElement(Kt,{accept:b,cursor:"pointer",as:"input",type:"file",name:"files",tabIndex:-1,zIndex:1,onChange:Z,ref:u,id:"logo-upload"}),e.createElement(T.z,{type:"button",onClick:W},m({id:"Settings.application.customization.modal.upload.cta.browse",defaultMessage:"Browse files"})),e.createElement(j.x,{paddingTop:6},e.createElement(p.Z,{variant:"pi",textColor:"neutral600"},m({id:"Settings.application.customization.modal.upload.file-validation",defaultMessage:"Max dimension: {dimension}x{dimension}, Max size: {size}KB"},{size:J,dimension:$})))),e.createElement(jt.c,null)))))),e.createElement(lt.m,{startActions:e.createElement(T.z,{onClick:i,variant:"tertiary"},m({id:"Settings.application.customization.modal.cancel",defaultMessage:"Cancel"}))}))};rt.defaultProps={next:null},rt.propTypes={goTo:s().func.isRequired,next:s().string,onClose:s().func.isRequired,setLocalImage:s().func.isRequired};var $t=rt,Nt=t(10369),Gt=async o=>{try{const{get:n}=(0,l.tg)(),a=await n(o,{responseType:"blob",timeout:8e3});return new File([a.data],a.config.url,{type:a.headers["content-type"]})}catch(n){throw n.displayMessage={id:"Settings.application.customization.modal.upload.error-network",defaultMessage:"Network error"},n}};const dt=({goTo:o,next:n,onClose:a,setLocalImage:i})=>{const{formatMessage:m}=(0,c.Z)(),[M,R]=(0,e.useState)(""),[x,f]=(0,e.useState)(null),u=S=>{R(S.target.value)},z=async()=>{try{const S=await Gt(M),W=await vt(S);i(W),o(n)}catch(S){if(S.displayMessage)f(m(S.displayMessage,{size:J,dimension:$}));else throw S}};return e.createElement("form",{onSubmit:S=>{S.preventDefault(),z()}},e.createElement(j.x,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(Nt.o,{label:m({id:"Settings.application.customization.modal.upload.from-url.input-label",defaultMessage:"URL"}),error:x,onChange:u,value:M,name:"logo-url"})),e.createElement(lt.m,{startActions:e.createElement(T.z,{onClick:a,variant:"tertiary"},m({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(T.z,{type:"submit"},m({id:"Settings.application.customization.modal.upload.next",defaultMessage:"Next"}))}))};dt.defaultProps={next:null},dt.propTypes={goTo:s().func.isRequired,next:s().string,onClose:s().func.isRequired,setLocalImage:s().func.isRequired};var Ht=dt;const ct=({setLocalImage:o,goTo:n,next:a,onClose:i})=>{const{formatMessage:m}=(0,c.Z)();return e.createElement(Ot.v,{label:m({id:"Settings.application.customization.modal.tab.label",defaultMessage:"How do you want to upload your assets?"}),variant:"simple"},e.createElement(j.x,{paddingLeft:8,paddingRight:8},e.createElement(st.m,null,e.createElement(st.O,null,m({id:"Settings.application.customization.modal.upload.from-computer",defaultMessage:"From computer"})),e.createElement(st.O,null,m({id:"Settings.application.customization.modal.upload.from-url",defaultMessage:"From url"}))),e.createElement(Dt.i,null)),e.createElement(it.n,null,e.createElement(it.x,null,e.createElement($t,{onClose:i,setLocalImage:o,goTo:n,next:a})),e.createElement(it.x,null,e.createElement(Ht,{onClose:i,setLocalImage:o,goTo:n,next:a}))))};ct.defaultProps={next:null},ct.propTypes={goTo:s().func.isRequired,next:s().string,onClose:s().func.isRequired,setLocalImage:s().func.isRequired};var bt=ct,Vt=t(42466),Qt=t(20853),Jt=t(2800),Xt=t(26835),Yt=t(41048),Mt=t(37083),wt=t(11505);const xt=({asset:o})=>{const{formatMessage:n}=(0,c.Z)();return e.createElement(Vt.Z,null,e.createElement(Qt.O,null,e.createElement(Jt.H,{size:"S",src:o.url})),e.createElement(Xt.e,null,e.createElement(Yt.a,null,e.createElement(Mt.l,null,o.name),e.createElement(Mt._,null,`${o.ext.toUpperCase()} - ${o.width}\u2715${o.height}`)),e.createElement(wt.E,null,n({id:"Settings.application.customization.modal.pending.card-badge",defaultMessage:"image"}))))};xt.propTypes={asset:s().shape({name:s().string,url:s().string,width:s().number,height:s().number,ext:s().string}).isRequired};var kt=xt;const ut=({onClose:o,asset:n,prev:a,next:i,goTo:m,setLocalImage:M,onChangeLogo:R})=>{const{formatMessage:x}=(0,c.Z)(),f=()=>{M(void 0),m(a)},u=()=>{R(n),m(i)};return e.createElement(e.Fragment,null,e.createElement(j.x,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(g.k,{justifyContent:"space-between",paddingBottom:6},e.createElement(g.k,{direction:"column",alignItems:"flex-start"},e.createElement(p.Z,{variant:"pi",fontWeight:"bold"},x({id:"Settings.application.customization.modal.pending.title",defaultMessage:"Logo ready to upload"})),e.createElement(p.Z,{variant:"pi",textColor:"neutral500"},x({id:"Settings.application.customization.modal.pending.subtitle",defaultMessage:"Manage the chosen logo before uploading it"}))),e.createElement(T.z,{onClick:f,variant:"secondary"},x({id:"Settings.application.customization.modal.pending.choose-another",defaultMessage:"Choose another logo"}))),e.createElement(j.x,{maxWidth:(0,l.Q1)(180)},n.url?e.createElement(kt,{asset:n}):null)),e.createElement(lt.m,{startActions:e.createElement(T.z,{onClick:o,variant:"tertiary"},x({id:"Settings.application.customization.modal.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(T.z,{onClick:u},x({id:"Settings.application.customization.modal.pending.upload",defaultMessage:"Upload logo"}))}))};ut.defaultProps={next:null,prev:null},ut.propTypes={goTo:s().func.isRequired,asset:s().shape({name:s().string,url:s().string,width:s().number,height:s().number,ext:s().string}).isRequired,next:s().string,onClose:s().func.isRequired,onChangeLogo:s().func.isRequired,prev:s().string,setLocalImage:s().func.isRequired};var qt=ut,_t={upload:{Component:bt,modalTitle:{id:"Settings.application.customization.modal.upload",defaultMessage:"Upload logo"},next:"pending",prev:null},pending:{Component:qt,modalTitle:{id:"Settings.application.customization.modal.pending",defaultMessage:"Pending logo"},next:null,prev:"upload"}};const mt=({canUpdate:o,customLogo:n,defaultLogo:a,hint:i,label:m,onChangeLogo:M,onResetLogo:R})=>{const[{currentStep:x},f]=(0,e.useReducer)(Tt,Et),{Component:u,next:z,prev:S,modalTitle:W}=_t[x]||{},{formatMessage:Z}=(0,c.Z)(),G=V=>{f({type:"GO_TO",to:V})};return e.createElement(e.Fragment,null,e.createElement(Y.F,{label:m,selectedSlide:0,hint:i,previousLabel:"",nextLabel:"",onNext:()=>{},onPrevious:()=>{},secondaryLabel:n?.name||"logo.png",actions:e.createElement(q.b,null,e.createElement(_.h,{disabled:!o,onClick:()=>G(n?"pending":"upload"),label:Z({id:"Settings.application.customization.carousel.change-action",defaultMessage:"Change logo"}),icon:e.createElement(w.Z,null)}),n&&e.createElement(_.h,{disabled:!o,onClick:R,label:Z({id:"Settings.application.customization.carousel.reset-action",defaultMessage:"Reset logo"}),icon:e.createElement(et.Z,null)}))},e.createElement(X.q,{label:Z({id:"Settings.application.customization.carousel-slide.label",defaultMessage:"Logo slide"})},e.createElement(j.x,{maxHeight:"40%",maxWidth:"40%",as:"img",src:n?.url||a,alt:Z({id:"Settings.application.customization.carousel.title",defaultMessage:"Logo"})}))),e.createElement(Pt,{Component:u,currentStep:x,onChangeLogo:M,customLogo:n,goTo:G,next:z,prev:S,modalTitle:W}))};mt.defaultProps={canUpdate:!1,customLogo:null,hint:null},mt.propTypes={canUpdate:s().bool,customLogo:s().shape({url:s().string,name:s().string}),label:s().string.isRequired,hint:s().string,defaultLogo:s().string.isRequired,onChangeLogo:s().func.isRequired,onResetLogo:s().func.isRequired};var Ct=mt;const gt={menuLogo:{display:null,submit:{rawFile:null,isReset:!1}},authLogo:{display:null,submit:{rawFile:null,isReset:!1}}};var te=(o=gt,n)=>(0,k.ZP)(o,a=>{switch(n.type){case"SET_CUSTOM_MENU_LOGO":{a.menuLogo.display=n.value,a.menuLogo.submit.rawFile=n.value.rawFile;break}case"SET_CUSTOM_AUTH_LOGO":{a.authLogo.display=n.value,a.authLogo.submit.rawFile=n.value.rawFile;break}case"RESET_CUSTOM_MENU_LOGO":{a.menuLogo.display=null,a.menuLogo.submit={rawFile:null,isReset:!0};break}case"RESET_CUSTOM_AUTH_LOGO":{a.authLogo.display=null,a.authLogo.submit={rawFile:null,isReset:!0};break}default:return a}}),ee=t(86349),ne=t.n(ee),oe=(o,n)=>ne()(o,{menuLogo:{display:n.menuLogo},authLogo:{display:n.authLogo}});const pt=(0,e.forwardRef)(({canUpdate:o,projectSettingsStored:n},a)=>{const{formatMessage:i}=(0,c.Z)(),{trackUsage:m}=(0,l.rS)(),{logos:{menu:M,auth:R}}=(0,C.um)(),[{menuLogo:x,authLogo:f},u]=(0,e.useReducer)(te,gt,()=>oe(gt,n)),z=G=>{u({type:"SET_CUSTOM_MENU_LOGO",value:G})},S=()=>{m("didClickResetLogo",{logo:"menu"}),u({type:"RESET_CUSTOM_MENU_LOGO"})},W=G=>{u({type:"SET_CUSTOM_AUTH_LOGO",value:G})},Z=()=>{m("didClickResetLogo",{logo:"auth"}),u({type:"RESET_CUSTOM_AUTH_LOGO"})};return(0,e.useImperativeHandle)(a,()=>({getValues:()=>({menuLogo:x.submit,authLogo:f.submit})})),e.createElement(j.x,{hasRadius:!0,background:"neutral0",shadow:"tableShadow",paddingTop:6,paddingBottom:6,paddingRight:7,paddingLeft:7},e.createElement(p.Z,{variant:"delta",as:"h3"},i({id:"Settings.application.customization",defaultMessage:"Customization"})),e.createElement(p.Z,{variant:"pi",textColor:"neutral600"},i({id:"Settings.application.customization.size-details",defaultMessage:"Max dimension: {dimension}\xD7{dimension}, Max file size: {size}KB"},{dimension:$,size:J})),e.createElement(y.r,{paddingTop:4,gap:4},e.createElement(O.P,{col:6,s:12},e.createElement(Ct,{canUpdate:o,customLogo:x.display,defaultLogo:M.default,hint:i({id:"Settings.application.customization.menu-logo.carousel-hint",defaultMessage:"Replace the logo in the main navigation"}),label:i({id:"Settings.application.customization.carousel.menu-logo.title",defaultMessage:"Menu logo"}),onChangeLogo:z,onResetLogo:S})),e.createElement(O.P,{col:6,s:12},e.createElement(Ct,{canUpdate:o,customLogo:f.display,defaultLogo:R.default,hint:i({id:"Settings.application.customization.auth-logo.carousel-hint",defaultMessage:"Replace the logo in the authentication pages"}),label:i({id:"Settings.application.customization.carousel.auth-logo.title",defaultMessage:"Auth logo"}),onChangeLogo:W,onResetLogo:Z}))))});pt.defaultProps={canUpdate:!1,projectSettingsStored:null},pt.propTypes={canUpdate:s().bool,projectSettingsStored:s().shape({menuLogo:s().shape({url:s().string,name:s().string})})};var ae=pt,se=t(48344),ie=t.n(se),Lt=o=>ie()(o,(n,a,i)=>{a&&a.url?n[i]={...a,url:(0,l.CR)(a.url)}:n[i]=a},{});const le=async()=>{const{get:o}=(0,l.tg)(),{data:n}=await o("/admin/project-settings");return Lt(n)},re=async o=>{const{post:n}=(0,l.tg)(),{data:a}=await n("/admin/project-settings",o,{headers:{"Content-Type":"multipart/form-data"}});return Lt(a)};var de=o=>{const n=new FormData;return Object.entries(o).forEach(([a,i])=>{i&&i.rawFile instanceof File&&n.append(a,i.rawFile),i&&i.isReset&&n.append(a,null)}),n};const ce=(()=>window&&window.strapi&&window.strapi.isEE?t(78999).Z:t(17891).Z)();var ue=()=>{const o=(0,e.useRef)(),n=(0,l.lm)(),{trackUsage:a}=(0,l.rS)(),{formatMessage:i}=(0,c.Z)(),m=(0,E.useQueryClient)();(0,l.go)();const M=(0,l.L7)(),{latestStrapiReleaseTag:R,shouldUpdateStrapi:x,strapiVersion:f}=M,{updateProjectSettings:u}=(0,C.um)(),{allowedActions:{canRead:z,canUpdate:S}}=(0,l.ss)(H.Z.settings["project-settings"]),W=z&&S,{data:Z}=(0,E.useQuery)("project-settings",le,{enabled:z}),G=(0,E.useMutation)(K=>re(K),{async onSuccess(K){let{menuLogo:tt,authLogo:ht}=K;await m.invalidateQueries("project-settings",{refetchActive:!0}),u({menuLogo:tt?.url,authLogo:ht?.url})}}),V=K=>{if(K.preventDefault(),!S)return;const tt=o.current.getValues(),ht=de(tt);G.mutate(ht,{onSuccess(){const{menuLogo:Pe,authLogo:Te}=tt;Pe.rawFile&&a("didChangeLogo",{logo:"menu"}),Te.rawFile&&a("didChangeLogo",{logo:"auth"}),n({type:"success",message:i({id:"app",defaultMessage:"Saved"})})},onError(){n({type:"warning",message:{id:"notification.error",defaultMessage:"An error occurred"}})}})};return e.createElement(r.A,null,e.createElement(l.SL,{name:"Application"}),e.createElement(P.o,null,e.createElement("form",{onSubmit:V},e.createElement(B.T,{title:i({id:"Settings.application.title",defaultMessage:"Overview"}),subtitle:i({id:"Settings.application.description",defaultMessage:"Administration panel\u2019s global information"}),primaryAction:W&&e.createElement(T.z,{type:"submit",startIcon:e.createElement(I.Z,null)},i({id:"global.save",defaultMessage:"Save"}))}),e.createElement(F.D,null,e.createElement(g.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(g.k,{direction:"column",alignItems:"stretch",gap:4,hasRadius:!0,background:"neutral0",shadow:"tableShadow",paddingTop:6,paddingBottom:6,paddingRight:7,paddingLeft:7},e.createElement(p.Z,{variant:"delta",as:"h3"},i({id:"global.details",defaultMessage:"Details"})),e.createElement(y.r,{gap:5,as:"dl"},e.createElement(O.P,{col:6,s:12},e.createElement(p.Z,{variant:"sigma",textColor:"neutral600",as:"dt"},i({id:"Settings.application.strapiVersion",defaultMessage:"strapi version"})),e.createElement(g.k,{gap:3,direction:"column",alignItems:"start",as:"dd"},e.createElement(p.Z,null,"v",f),x&&e.createElement(D.r,{href:`https://github.com/strapi/strapi/releases/tag/${R}`,isExternal:!0,endIcon:e.createElement(U.Z,null)},i({id:"Settings.application.link-upgrade",defaultMessage:"Upgrade your admin panel"})))),e.createElement(O.P,{col:6,s:12},e.createElement(p.Z,{variant:"sigma",textColor:"neutral600",as:"dt"},i({id:"Settings.application.edition-title",defaultMessage:"current plan"})),e.createElement(g.k,{gap:3,direction:"column",alignItems:"start",as:"dd"},e.createElement(p.Z,null,i({id:"Settings.application.ee-or-ce",defaultMessage:"{communityEdition, select, true {Community Edition} other {Enterprise Edition}}"},{communityEdition:M.communityEdition})),e.createElement(D.r,{href:"https://strapi.io/pricing-self-hosted",isExternal:!0,endIcon:e.createElement(U.Z,null)},i({id:"Settings.application.link-pricing",defaultMessage:"See all pricing plans"})))),e.createElement(O.P,{col:6,s:12},e.createElement(p.Z,{variant:"sigma",textColor:"neutral600",as:"dt"},i({id:"Settings.application.node-version",defaultMessage:"node version"})),e.createElement(p.Z,{as:"dd"},M.nodeVersion)),e.createElement(ce,null))),z&&Z&&e.createElement(ae,{canUpdate:S,ref:o,projectSettingsStored:Z}))))))},me=t(3704),ge=t.n(me),pe=o=>ge()(o,a=>a.links).map(a=>(0,v.ot)(a.Component,a.to,a.exact||!1)),he=o=>o.filter(n=>!n.links.every(a=>a.isDisplayed===!1)),Ee=[{async Component(){return await t.e(3455).then(t.bind(t,67249))},to:"/settings/roles",exact:!0},{async Component(){return await Promise.all([t.e(1387),t.e(2544)]).then(t.bind(t,92034))},to:"/settings/roles/duplicate/:id",exact:!0},{async Component(){return await Promise.all([t.e(1387),t.e(2544)]).then(t.bind(t,92034))},to:"/settings/roles/new",exact:!0},{async Component(){return await Promise.all([t.e(1387),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,10108))},to:"/settings/users",exact:!0},{async Component(){return await t.e(4263).then(t.bind(t,40874))},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,32393))},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(1387),t.e(4628),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(1387),t.e(4628),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(1387),t.e(4628),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(1387),t.e(4628),t.e(7259),t.e(2492)]).then(t.bind(t,73607))},to:"/settings/transfer-tokens/:id",exact:!0}],fe=[...(()=>window&&window.strapi&&window.strapi.isEE?t(63775).Z:t(75936).Z)(),...Ee],ve=t(14911),Me=t(90700),xe=t(78090),Ce=t(77013),Le=t(79318),ye=t(66618);const yt=({menu:o})=>{const{formatMessage:n}=(0,c.Z)(),{trackUsage:a}=(0,l.rS)(),{pathname:i}=(0,d.TH)(),M=he(o).map(f=>({...f,title:f.intlLabel,links:f.links.map(u=>({...u,title:u.intlLabel,name:u.id}))})),R=n({id:"global.settings",defaultMessage:"Settings"}),x=(f=null)=>{a("willNavigate",{from:i,to:f})};return e.createElement(Me.m,{ariaLabel:R},e.createElement(xe.p,{label:R}),e.createElement(Ce.Z,null,M.map(f=>e.createElement(Le.D,{key:f.id,label:n(f.intlLabel)},f.links.map(u=>e.createElement(ye.E,{as:ve.OL,withBullet:u.hasNotification,to:u.to,onClick:()=>x(u.to),key:u.id},n(u.intlLabel)))))))};yt.propTypes={menu:s().array.isRequired};var Se=yt;function St(){const{settingId:o}=(0,d.UO)(),{settings:n}=(0,l.j1)(),{formatMessage:a}=(0,c.Z)(),{isLoading:i,menu:m}=(0,C.Te)(),M=(0,e.useMemo)(()=>(0,v.WW)(fe.map(({to:f,Component:u,exact:z})=>(0,v.ot)(u,f,z))),[]),R=pe(n);if(i)return e.createElement(l.dO,null);if(!o)return e.createElement(d.l_,{to:"/settings/application-infos"});const x=a({id:"global.settings",defaultMessage:"Settings"});return e.createElement(r.A,{sideNav:e.createElement(Se,{menu:m})},e.createElement(L.q,{title:x}),e.createElement(d.rs,null,e.createElement(d.AW,{path:"/settings/application-infos",component:ue,exact:!0}),M,R))}var Re=(0,e.memo)(St)},17891:function(A,h){"use strict";const t=()=>null;h.Z=t},75936:function(A,h){"use strict";const t=[];h.Z=t},78999:function(A,h,t){"use strict";var e=t(32735),l=t(67879),d=t(5803),r=t(49372),c=t(87933),L=t(63919),C=t(99140),v=t(41502),E=t(69932),P=t(47361),B=t(24989),T=t(58414);const F="https://cloud.strapi.io/profile/billing",g="https://strapi.io/billing/request-seats",p=()=>{const{formatMessage:y}=(0,l.Z)(),{license:O}=(0,T.q5)(),{licenseLimitStatus:D,enforcementUserCount:I,permittedSeats:U,isHostedOnStrapiCloud:H}=O?.data??{};return U?e.createElement(d.P,{col:6,s:12},e.createElement(r.Z,{variant:"sigma",textColor:"neutral600"},y({id:"Settings.application.admin-seats",defaultMessage:"Admin seats"})),e.createElement(c.k,{gap:2},e.createElement(c.k,null,e.createElement(r.Z,{as:"p"},y({id:"Settings.application.ee.admin-seats.count",defaultMessage:"<text>{enforcementUserCount}</text>/{permittedSeats}"},{permittedSeats:U,enforcementUserCount:I,text:Q=>e.createElement(r.Z,{fontWeight:"semiBold",textColor:I>U?"danger500":null},Q)}))),D==="OVER_LIMIT"&&e.createElement(L.u,{description:y({id:"Settings.application.ee.admin-seats.at-limit-tooltip",defaultMessage:"At limit: add seats to invite more users"})},e.createElement(C.J,{width:`${(0,B.Q1)(14)}rem`,height:`${(0,B.Q1)(14)}rem`,color:"danger500",as:E.Z}))),e.createElement(v.r,{href:H?F:g,isExternal:!0,endIcon:e.createElement(P.Z,null)},y({id:"Settings.application.ee.admin-seats.add-seats",defaultMessage:"{isHostedOnStrapiCloud, select, true {Add seats} other {Contact sales}}"},{isHostedOnStrapiCloud:H}))):null};h.Z=p},63775:function(A,h,t){"use strict";const e=[];window.strapi.features.isEnabled(window.strapi.features.SSO)&&e.push({async Component(){return await t.e(302).then(t.bind(t,26930))},to:"/settings/single-sign-on",exact:!0}),window.strapi.features.isEnabled(window.strapi.features.REVIEW_WORKFLOWS)&&e.push({async Component(){return await Promise.all([t.e(6858),t.e(6970),t.e(8155)]).then(t.bind(t,96594))},to:"/settings/review-workflows",exact:!0}),window.strapi.features.isEnabled(window.strapi.features.AUDIT_LOGS)&&e.push({async Component(){return await t.e(2812).then(t.bind(t,71765))},to:"/settings/audit-logs",exact:!0}),h.Z=e},3704:function(A,h,t){var e=t(40314),l=t(37213);function d(r,c){return e(l(r,c),1)}A.exports=d},37213:function(A,h,t){var e=t(26460),l=t(88904),d=t(52920),r=t(77236);function c(L,C){var v=r(L)?e:d;return v(L,l(C,3))}A.exports=c},96709:function(A,h,t){"use strict";t.d(h,{A:function(){return v}});var e=t(74512),l=t(32735),d=t(60216),r=t(8471),c=t(72850);const L=(0,r.ZP)(c.x)`
|
|
10
10
|
display: grid;
|
|
11
11
|
grid-template-columns: ${({hasSideNav:E})=>E?"auto 1fr":"1fr"};
|
|
12
12
|
`,C=(0,r.ZP)(c.x)`
|