@strapi/admin 4.11.3 → 4.12.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (176) hide show
  1. package/admin/src/components/AuthenticatedApp/index.js +2 -2
  2. package/admin/src/constants.js +83 -83
  3. package/admin/src/content-manager/components/CollectionTypeFormWrapper/index.js +8 -5
  4. package/admin/src/content-manager/components/Inputs/index.js +3 -47
  5. package/admin/src/content-manager/components/RelationInput/RelationInput.js +99 -178
  6. package/admin/src/content-manager/components/RelationInput/components/Option.js +17 -15
  7. package/admin/src/content-manager/components/RelationInput/components/RelationList.js +2 -2
  8. package/admin/src/content-manager/components/SingleTypeFormWrapper/index.js +34 -37
  9. package/admin/src/content-manager/pages/EditSettingsView/components/ModalForm.js +0 -27
  10. package/admin/src/content-manager/pages/ListView/components/TableRows/index.js +93 -14
  11. package/admin/src/content-manager/pages/ListView/index.js +65 -47
  12. package/admin/src/content-manager/pages/ListView/utils/buildValidGetParams.js +30 -0
  13. package/admin/src/content-manager/pages/ListView/utils/index.js +1 -1
  14. package/admin/src/content-manager/utils/mergeMetasWithSchema.js +5 -1
  15. package/admin/src/hooks/index.js +0 -1
  16. package/admin/src/hooks/useAdminUsers/useAdminUsers.js +3 -3
  17. package/admin/src/hooks/useEnterprise/useEnterprise.js +4 -4
  18. package/admin/src/pages/App/index.js +28 -23
  19. package/admin/src/pages/AuthPage/components/Register/index.js +5 -1
  20. package/admin/src/pages/ProfilePage/index.js +6 -1
  21. package/admin/src/pages/SettingsPage/components/Tokens/Table/index.js +15 -1
  22. package/admin/src/pages/SettingsPage/components/Tokens/TokenBox/index.js +1 -1
  23. package/admin/src/pages/SettingsPage/pages/Roles/ProtectedEditPage/index.js +4 -10
  24. package/admin/src/pages/SettingsPage/pages/Users/EditPage/index.js +2 -2
  25. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/WebhookForm/utils/makeWebhookValidationSchema.js +11 -5
  26. package/admin/src/translations/ca.json +1 -0
  27. package/admin/src/translations/en.json +4 -1
  28. package/admin/src/translations/es.json +5 -0
  29. package/admin/src/translations/fr.json +1 -0
  30. package/admin/src/translations/zh-Hans.json +1 -1
  31. package/build/0cd5f8915b265d5b1856.png +0 -0
  32. package/build/2799.cf9b491f.chunk.js +1 -0
  33. package/build/4485.d3c6dd1d.chunk.js +6 -0
  34. package/build/539.865446c0.chunk.js +1 -0
  35. package/build/{5542.64b623c9.chunk.js → 5542.c62d0daf.chunk.js} +1 -1
  36. package/build/{5563.86f9aa9c.chunk.js → 5563.a146acac.chunk.js} +2 -2
  37. package/build/7018.f3dad3c1.chunk.js +1 -0
  38. package/build/7259.0e25ab5d.chunk.js +1 -0
  39. package/build/9465.d8fc1377.chunk.js +112 -0
  40. package/build/{6405.27e1bee5.chunk.js → 970.89601f27.chunk.js} +2 -2
  41. package/build/9944.29289a16.chunk.js +26 -0
  42. package/build/Admin-authenticatedApp.9d3afb79.chunk.js +79 -0
  43. package/build/{Admin_settingsPage.4069bb8a.chunk.js → Admin_settingsPage.074655f6.chunk.js} +13 -13
  44. package/build/admin-app.3ede71ad.chunk.js +61 -0
  45. package/build/{admin-edit-roles-page.2040034a.chunk.js → admin-edit-roles-page.3fdd6b9d.chunk.js} +11 -11
  46. package/build/admin-edit-users.78552758.chunk.js +10 -0
  47. package/build/admin-users.c23322fc.chunk.js +11 -0
  48. package/build/api-tokens-list-page.a103f526.chunk.js +16 -0
  49. package/build/audit-logs-settings-page.37fe915c.chunk.js +1 -0
  50. package/build/ca-json.1fed5d8b.chunk.js +1 -0
  51. package/build/content-manager.08541eeb.chunk.js +1094 -0
  52. package/build/{content-type-builder-list-view.0c3ceb4e.chunk.js → content-type-builder-list-view.a200a358.chunk.js} +1 -1
  53. package/build/content-type-builder-translation-en-json.38e20391.chunk.js +1 -0
  54. package/build/content-type-builder.de22f7c9.chunk.js +166 -0
  55. package/build/{email-settings-page.6b38222d.chunk.js → email-settings-page.45695daa.chunk.js} +1 -1
  56. package/build/en-json.fb9f6ddd.chunk.js +1 -0
  57. package/build/es-json.42096084.chunk.js +1 -0
  58. package/build/fr-json.69789980.chunk.js +1 -0
  59. package/build/{i18n-settings-page.ff863f20.chunk.js → i18n-settings-page.29308d0b.chunk.js} +1 -1
  60. package/build/index.html +1 -1
  61. package/build/main.a8ede50d.js +2927 -0
  62. package/build/review-workflows-settings-create-view.56f61e18.chunk.js +1 -0
  63. package/build/review-workflows-settings-edit-view.912bc9c0.chunk.js +1 -0
  64. package/build/review-workflows-settings-list-view.cf6a08d3.chunk.js +56 -0
  65. package/build/runtime~main.5e9bf4b3.js +2 -0
  66. package/build/sso-settings-page.0cdb96a6.chunk.js +1 -0
  67. package/build/transfer-tokens-list-page.7237443d.chunk.js +16 -0
  68. package/build/{upload-settings.43cf16cd.chunk.js → upload-settings.cb6c14c3.chunk.js} +1 -1
  69. package/build/{upload.72f8f8fc.chunk.js → upload.7e629643.chunk.js} +2 -2
  70. package/build/users-advanced-settings-page.750b1f76.chunk.js +9 -0
  71. package/build/{users-email-settings-page.33359797.chunk.js → users-email-settings-page.e9bcd865.chunk.js} +1 -1
  72. package/build/{users-providers-settings-page.1e7a4a71.chunk.js → users-providers-settings-page.a94253e9.chunk.js} +1 -1
  73. package/build/{users-roles-settings-page.235378b6.chunk.js → users-roles-settings-page.d286426a.chunk.js} +5 -5
  74. package/build/webhook-edit-page.77ef4f1a.chunk.js +33 -0
  75. package/build/{zh-Hans-json.4cfef87d.chunk.js → zh-Hans-json.fada6f40.chunk.js} +1 -1
  76. package/ee/admin/constants.js +14 -14
  77. package/ee/admin/content-manager/pages/EditView/InformationBox/InformationBoxEE.js +84 -30
  78. package/ee/admin/content-manager/{components/DynamicTable/CellContent/ReviewWorkflowsStage → pages/ListView/ReviewWorkflowsColumn}/ReviewWorkflowsStageEE.js +7 -2
  79. package/ee/admin/content-manager/pages/ListView/ReviewWorkflowsColumn/constants.js +24 -0
  80. package/ee/admin/content-manager/pages/ListView/ReviewWorkflowsColumn/index.js +1 -0
  81. package/ee/admin/hooks/useLicenseLimitNotification/index.js +17 -6
  82. package/ee/admin/hooks/useLicenseLimits/index.js +1 -32
  83. package/ee/admin/hooks/useLicenseLimits/useLicenseLimits.js +44 -0
  84. package/ee/admin/pages/SettingsPage/constants.js +25 -1
  85. package/ee/admin/pages/SettingsPage/pages/ApplicationInfosPage/components/AdminSeatInfo/index.js +6 -4
  86. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/hooks/useAuditLogsData.js +6 -4
  87. package/ee/admin/pages/SettingsPage/pages/AuditLogs/ListView/index.js +4 -9
  88. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/actions/index.js +19 -4
  89. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/Layout/Layout.js +65 -0
  90. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/Layout/index.js +1 -0
  91. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/LimitsModal/LimitsModal.js +111 -0
  92. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/LimitsModal/assets/balloon.png +0 -0
  93. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/LimitsModal/index.js +3 -0
  94. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/ProtectedPage/ProtectedPage.js +21 -0
  95. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/ProtectedPage/index.js +1 -0
  96. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/Stages/Stage/Stage.js +4 -4
  97. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/WorkflowAttributes/WorkflowAttributes.js +110 -0
  98. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/components/WorkflowAttributes/index.js +1 -0
  99. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/constants.js +3 -1
  100. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/hooks/useReviewWorkflows.js +13 -19
  101. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/pages/CreateView/CreateView.js +246 -0
  102. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/pages/CreateView/index.js +13 -0
  103. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/pages/EditView/EditView.js +269 -0
  104. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/pages/EditView/index.js +13 -0
  105. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/pages/ListView/ListView.js +382 -0
  106. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/pages/ListView/index.js +13 -0
  107. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/reducer/index.js +53 -23
  108. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/utils/getWorkflowValidationSchema.js +43 -28
  109. package/ee/admin/pages/SettingsPage/pages/SingleSignOn/index.js +4 -9
  110. package/ee/admin/pages/SettingsPage/pages/Users/ListPage/CreateAction/index.js +9 -2
  111. package/ee/server/config/admin-actions.js +24 -0
  112. package/ee/server/constants/default-stages.json +8 -4
  113. package/ee/server/constants/default-workflow.json +3 -1
  114. package/ee/server/constants/workflows.js +10 -1
  115. package/ee/server/content-types/workflow/index.js +10 -0
  116. package/ee/server/content-types/workflow-stage/index.js +3 -1
  117. package/ee/server/controllers/admin.js +1 -0
  118. package/ee/server/controllers/workflows/index.js +135 -8
  119. package/ee/server/controllers/workflows/stages/index.js +38 -38
  120. package/ee/server/migrations/review-workflows-content-types.js +29 -0
  121. package/ee/server/migrations/review-workflows-deleted-ct-in-workflows.js +39 -0
  122. package/ee/server/migrations/review-workflows-stage-attribute.js +49 -0
  123. package/ee/server/migrations/review-workflows-stages-color.js +2 -2
  124. package/ee/server/migrations/review-workflows-workflow-name.js +21 -0
  125. package/ee/server/register.js +12 -2
  126. package/ee/server/routes/review-workflows.js +44 -10
  127. package/ee/server/services/index.js +1 -0
  128. package/ee/server/services/review-workflows/entity-service-decorator.js +28 -24
  129. package/ee/server/services/review-workflows/review-workflows.js +45 -53
  130. package/ee/server/services/review-workflows/stages.js +84 -46
  131. package/ee/server/services/review-workflows/validation.js +60 -0
  132. package/ee/server/services/review-workflows/workflows/content-types.js +80 -0
  133. package/ee/server/services/review-workflows/workflows/index.js +207 -0
  134. package/ee/server/utils/review-workflows.js +30 -25
  135. package/ee/server/validation/review-workflows.js +49 -10
  136. package/package.json +13 -14
  137. package/server/content-types/User.js +10 -0
  138. package/server/strategies/api-token.js +9 -5
  139. package/server/strategies/data-transfer.js +9 -5
  140. package/admin/src/content-manager/components/DynamicTable/CellContent/ReviewWorkflowsStage/getTableColumn.js +0 -2
  141. package/admin/src/content-manager/components/RelationInput/components/Relation.js +0 -53
  142. package/admin/src/content-manager/pages/ListView/utils/buildQueryString.js +0 -36
  143. package/admin/src/content-manager/pages/ListView/utils/createPluginsFilter.js +0 -4
  144. package/admin/src/hooks/useLicenseLimits/index.js +0 -3
  145. package/admin/src/pages/App/utils/index.js +0 -3
  146. package/admin/src/pages/App/utils/unique-identifier.js +0 -12
  147. package/build/1799.84268ad3.chunk.js +0 -33
  148. package/build/5932.6a23b88c.chunk.js +0 -1
  149. package/build/7018.98feed67.chunk.js +0 -1
  150. package/build/7259.fb69d4bf.chunk.js +0 -1
  151. package/build/Admin-authenticatedApp.69855f1b.chunk.js +0 -79
  152. package/build/admin-app.fea867af.chunk.js +0 -61
  153. package/build/admin-edit-users.53e4290a.chunk.js +0 -10
  154. package/build/admin-users.3b12dca2.chunk.js +0 -11
  155. package/build/api-tokens-list-page.201fb67a.chunk.js +0 -16
  156. package/build/audit-logs-settings-page.b07ad202.chunk.js +0 -1
  157. package/build/ca-json.43e14418.chunk.js +0 -1
  158. package/build/content-manager.66cec770.chunk.js +0 -1094
  159. package/build/content-type-builder-translation-en-json.f592325b.chunk.js +0 -1
  160. package/build/content-type-builder.e1b6d13b.chunk.js +0 -166
  161. package/build/en-json.f5fa476a.chunk.js +0 -1
  162. package/build/es-json.715b6fd8.chunk.js +0 -1
  163. package/build/fr-json.73494bf5.chunk.js +0 -1
  164. package/build/main.83edb3fc.js +0 -2926
  165. package/build/review-workflows-settings.93808ae0.chunk.js +0 -110
  166. package/build/runtime~main.20c3cac6.js +0 -2
  167. package/build/sso-settings-page.35b67909.chunk.js +0 -1
  168. package/build/transfer-tokens-list-page.217573c3.chunk.js +0 -16
  169. package/build/users-advanced-settings-page.1911adf5.chunk.js +0 -9
  170. package/build/webhook-edit-page.1ee02c4b.chunk.js +0 -33
  171. package/ee/admin/content-manager/components/DynamicTable/CellContent/ReviewWorkflowsStage/getTableColumn.js +0 -58
  172. package/ee/admin/content-manager/components/DynamicTable/CellContent/ReviewWorkflowsStage/index.js +0 -3
  173. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/ProtectedPage.js +0 -20
  174. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/ReviewWorkflows.js +0 -204
  175. package/ee/admin/pages/SettingsPage/pages/ReviewWorkflows/index.js +0 -3
  176. package/ee/server/services/review-workflows/workflows.js +0 -25
@@ -0,0 +1,79 @@
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[801],{29761:function(K,T,n){n.r(T),n.d(T,{default:function(){return jt}});var e=n(32735),s=n(19565),b=n(33795),Z=n.n(b),y=n(20108),M=JSON.parse('{"i8":"4.12.0-beta.0"}'),S=n(10328),L=n(8997),P=n(74506),F=n(51968),D=n(15062),f=n(53038),Re=n(88311),ee=n.n(Re),Ae=n(58107),m=n(87933),te=n(71933),ne=n(67563),Le=n(50563),v=n(72850),V=n(41415),ae=n(35331),Oe=n(60216),r=n.n(Oe),B=n(67879),C=n(8471);const xe=(0,C.ZP)(m.k)`
2
+ position: fixed;
3
+ z-index: 4;
4
+ inset: 0;
5
+ /* this is theme.colors.neutral800 with opacity */
6
+ background: ${({theme:t})=>`${t.colors.neutral800}1F`};
7
+ `,oe=({onClose:t,onSkip:a,children:o,hideSkip:i})=>{const{formatMessage:d}=(0,B.Z)();return e.createElement(te.h,null,e.createElement(xe,{onClick:t,padding:8,justifyContent:"center"},e.createElement(ne.i,{onEscape:t},e.createElement(m.k,{direction:"column",alignItems:"stretch",background:"neutral0",width:(0,s.Q1)(660),shadow:"popupShadow",hasRadius:!0,padding:4,gap:8,role:"dialog","aria-modal":!0,onClick:u=>u.stopPropagation()},e.createElement(m.k,{justifyContent:"flex-end"},e.createElement(Le.h,{onClick:t,"aria-label":d({id:"app.utils.close-label",defaultMessage:"Close"}),icon:e.createElement(ae.Z,null)})),e.createElement(v.x,{paddingLeft:7,paddingRight:7,paddingBottom:i?8:0},o),!i&&e.createElement(m.k,{justifyContent:"flex-end"},e.createElement(V.z,{variant:"tertiary",onClick:a},d({id:"app.components.GuidedTour.skip",defaultMessage:"Skip the tour"})))))))};oe.propTypes={children:r().node.isRequired,onClose:r().func.isRequired,onSkip:r().func.isRequired,hideSkip:r().bool.isRequired};var be=oe,E=n(49372),se=n(8482),W=n(23678),H=n(78024);const De=C.ZP.li`
8
+ list-style: disc;
9
+ &::marker {
10
+ color: ${({theme:t})=>t.colors.neutral800};
11
+ }
12
+ `,re=({id:t,defaultMessage:a})=>{const{formatMessage:o}=(0,B.Z)();return e.createElement(m.k,{direction:"column",alignItems:"stretch",gap:4,paddingBottom:6},o({id:t,defaultMessage:a},{documentationLink:ke,b:Ze,p:Be,light:We,ul:Ge,li:Ne}))},ke=t=>e.createElement(E.Z,{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),Ze=t=>e.createElement(E.Z,{fontWeight:"semiBold"},t),Be=t=>e.createElement(E.Z,null,t),We=t=>e.createElement(E.Z,{textColor:"neutral600"},t),Ge=t=>e.createElement(v.x,{paddingLeft:6},e.createElement("ul",null,t)),Ne=t=>e.createElement(De,null,t);re.propTypes={id:r().string.isRequired,defaultMessage:r().string.isRequired};var Ue=re,Fe=n(14317);const Y=({number:t,last:a,type:o})=>e.createElement(v.x,{paddingTop:3,paddingBottom:a?0:3},e.createElement(Fe.Z,{number:t,type:o}));Y.defaultProps={number:void 0,last:!1,type:""},Y.propTypes={number:r().number,last:r().bool,type:r().string};var ie=Y;const w=({title:t,content:a,cta:o,onCtaClick:i,sectionIndex:d,stepIndex:u,hasSectionAfter:h})=>{const{formatMessage:p}=(0,B.Z)(),g=d>0,l=u>0,I=d+1;return e.createElement(e.Fragment,null,e.createElement(m.k,{alignItems:"stretch"},e.createElement(m.k,{marginRight:8,justifyContent:"center",minWidth:(0,s.Q1)(30)},g&&e.createElement(H.Z,{type:W.hx,minHeight:(0,s.Q1)(24)})),e.createElement(E.Z,{variant:"sigma",textColor:"primary600"},p({id:"app.components.GuidedTour.title",defaultMessage:"3 steps to get started"}))),e.createElement(m.k,null,e.createElement(m.k,{marginRight:8,minWidth:(0,s.Q1)(30)},e.createElement(ie,{number:d+1,type:l?W.hx:W.lW})),e.createElement(E.Z,{variant:"alpha",fontWeight:"bold",textColor:"neutral800",as:"h3",id:"title"},p(t))),e.createElement(m.k,{alignItems:"stretch"},e.createElement(m.k,{marginRight:8,direction:"column",justifyContent:"center",minWidth:(0,s.Q1)(30)},h&&e.createElement(e.Fragment,null,e.createElement(H.Z,{type:W.hx}),l&&e.createElement(ie,{number:I+1,type:W.lW,last:!0}))),e.createElement(v.x,null,e.createElement(Ue,{...a}),o&&(o.target?e.createElement(s.Qj,{endIcon:e.createElement(se.Z,null),onClick:i,to:o.target},p(o.title)):e.createElement(V.z,{endIcon:e.createElement(se.Z,null),onClick:i},p(o.title))))),l&&h&&e.createElement(v.x,{paddingTop:3},e.createElement(m.k,{marginRight:8,justifyContent:"center",width:(0,s.Q1)(30)},e.createElement(H.Z,{type:W.hx,minHeight:(0,s.Q1)(24)}))))};w.defaultProps={currentStep:null,cta:void 0},w.propTypes={sectionIndex:r().number.isRequired,stepIndex:r().number.isRequired,hasSectionAfter:r().bool.isRequired,content:r().shape({id:r().string.isRequired,defaultMessage:r().string.isRequired}).isRequired,cta:r().shape({target:r().string,title:r().shape({id:r().string.isRequired,defaultMessage:r().string.isRequired})}),currentStep:r().string,onCtaClick:r().func.isRequired,title:r().shape({id:r().string.isRequired,defaultMessage:r().string.isRequired}).isRequired};var je=w,le=n(97889);const ce={stepContent:null,sectionIndex:null,stepIndex:null,hasSectionAfter:!1,hasStepAfter:!1};var $e=(t=ce,a)=>(0,le.ZP)(t,o=>{switch(a.type){case"UPDATE_MODAL":{o.stepContent=a.content,o.sectionIndex=a.newSectionIndex,o.stepIndex=a.newStepIndex,o.hasSectionAfter=a.newHasSectionAfter,o.hasStepAfter=a.newHasStepAfter;break}default:return o}}),Qe=()=>{const{currentStep:t,guidedTourState:a,setCurrentStep:o,setStepState:i,isGuidedTourVisible:d,setSkipped:u}=(0,s.c1)(),[h,p]=(0,e.useState)(t),[{stepContent:g,sectionIndex:l,stepIndex:I,hasSectionAfter:k,hasStepAfter:$},Q]=(0,e.useReducer)($e,ce),{trackUsage:G}=(0,s.rS)();(0,e.useEffect)(()=>{if(!t){p(!1);return}const[A]=ee()(a,t);p(!A&&d)},[t,a,d]),(0,e.useEffect)(()=>{if(t){const[A]=ee()(Ae.Z,t),O=Object.keys(a),[N,c]=t.split("."),x=O.indexOf(N),U=Object.keys(a[N]).indexOf(c),$t=x<O.length-1,Qt=U<Object.keys(a[N]).length-1;Q({type:"UPDATE_MODAL",content:A,newSectionIndex:x,newStepIndex:U,newHasSectionAfter:$t,newHasStepAfter:Qt})}},[t,a]);const R=()=>{i(t,!0),G(g.trackingEvent),o(null)},z=()=>{u(!0),o(null),G("didSkipGuidedtour")};return h&&g?e.createElement(be,{hideSkip:!$&&!k,onSkip:z,onClose:R},e.createElement(je,{...g,onCtaClick:R,currentStep:t,sectionIndex:l,stepIndex:I,hasSectionAfter:k})):null},de=n(9026),ze=n(15300),Ke=n(61450),Ve=n(1897),J=n(78464),ue=n(42889),He=n(25390),Ye=n(64838),we=n(9371),Je=n(73165),Xe=n(92967),j=n(14911);const qe=(0,C.ZP)(v.x)`
13
+ width: ${150/16}rem;
14
+ position: absolute;
15
+ bottom: ${({theme:t})=>t.spaces[9]};
16
+ left: ${({theme:t})=>t.spaces[5]};
17
+ `,pe=(0,C.ZP)(j.OL)`
18
+ display: flex;
19
+ justify-content: space-between;
20
+ align-items: center;
21
+ text-decoration: none;
22
+ padding: ${({theme:t})=>`${t.spaces[2]} ${t.spaces[4]}`};
23
+ border-radius: ${({theme:t})=>t.spaces[1]};
24
+
25
+ &:hover {
26
+ background: ${({theme:t,logout:a})=>a?t.colors.danger100:t.colors.primary100};
27
+ text-decoration: none;
28
+ }
29
+
30
+ svg {
31
+ path {
32
+ fill: ${({theme:t})=>t.colors.danger600};
33
+ }
34
+ }
35
+ `,me=({generalSectionLinks:t,pluginsSectionLinks:a})=>{const o=(0,e.useRef)(),[i,d]=(0,e.useState)(!1),{logos:{menu:u}}=(0,S.um)(),[h,p]=(0,s.Yw)("navbar-condensed",!1),{userDisplayName:g}=(0,s.L7)(),{formatMessage:l}=(0,B.Z)(),{trackUsage:I}=(0,s.rS)(),{pathname:k}=(0,f.TH)(),$=(0,f.k6)(),{post:Q}=(0,s.tg)(),G=g.split(" ").map(c=>c.substring(0,1)).join("").substring(0,2),R=()=>d(c=>!c),z=async()=>{await Q("/admin/logout"),s.I8.clearAppStorage(),R(),$.push("/auth/login")},A=c=>{!c.currentTarget.contains(c.relatedTarget)&&c.relatedTarget?.parentElement?.id!=="main-nav-user-button"&&d(!1)},O=(c=null)=>{I("willNavigate",{from:k,to:c})},N=l({id:"app.components.LeftMenu.navbrand.title",defaultMessage:"Strapi Dashboard"});return e.createElement(ze.$,{condensed:h},e.createElement(Ke.D,{as:j.OL,workplace:l({id:"app.components.LeftMenu.navbrand.workplace",defaultMessage:"Workplace"}),title:N,icon:e.createElement("img",{src:u.custom||u.default,alt:l({id:"app.components.LeftMenu.logo.alt",defaultMessage:"Application logo"})})}),e.createElement(de.i,null),e.createElement(Ve._,null,e.createElement(J.O,{as:j.OL,to:"/content-manager",icon:e.createElement(Je.Z,null),onClick:()=>O("/content-manager")},l({id:"global.content-manager",defaultMessage:"Content manager"})),a.length>0?e.createElement(ue.y,{label:l({id:"app.components.LeftMenu.plugins",defaultMessage:"Plugins"})},a.map(c=>{const x=c.icon;return e.createElement(J.O,{as:j.OL,to:c.to,key:c.to,icon:e.createElement(x,null),onClick:()=>O(c.to)},l(c.intlLabel))})):null,t.length>0?e.createElement(ue.y,{label:l({id:"app.components.LeftMenu.general",defaultMessage:"General"})},t.map(c=>{const x=c.icon;return e.createElement(J.O,{as:j.OL,badgeContent:c.notificationsCount>0&&c.notificationsCount.toString()||void 0,to:c.to,key:c.to,icon:e.createElement(x,null),onClick:()=>O(c.to)},l(c.intlLabel))})):null),e.createElement(He.q,null,e.createElement(Ye.r,{id:"main-nav-user-button",ref:o,onClick:R,initials:G},g),i&&e.createElement(qe,{onBlur:A,padding:1,shadow:"tableShadow",background:"neutral0",hasRadius:!0},e.createElement(ne.i,{onEscape:R},e.createElement(m.k,{direction:"column",alignItems:"stretch",gap:0},e.createElement(pe,{tabIndex:0,onClick:R,to:"/me"},e.createElement(E.Z,null,l({id:"global.profile",defaultMessage:"Profile"}))),e.createElement(pe,{tabIndex:0,onClick:z,logout:"logout",to:"/auth/login"},e.createElement(E.Z,{textColor:"danger600"},l({id:"app.components.LeftMenu.logout",defaultMessage:"Logout"})),e.createElement(Xe.Z,null))))),e.createElement(we.w,{onClick:()=>p(c=>!c)},l(h?{id:"app.components.LeftMenu.expand",defaultMessage:"Expand the navbar"}:{id:"app.components.LeftMenu.collapse",defaultMessage:"Collapse the navbar"}))))};me.propTypes={generalSectionLinks:r().array.isRequired,pluginsSectionLinks:r().array.isRequired};var _e=me,et=n(10728);const tt=(0,C.ZP)(v.x)`
36
+ flex: 1;
37
+ `,ge=({children:t,sideNav:a})=>{const{formatMessage:o}=(0,B.Z)();return e.createElement(v.x,{background:"neutral100"},e.createElement(et.z,null,o({id:"skipToContent",defaultMessage:"Skip to content"})),e.createElement(m.k,{alignItems:"flex-start"},a,e.createElement(tt,null,t)))};ge.propTypes={children:r().node.isRequired,sideNav:r().node.isRequired};var nt=ge,at=n(26648),X=n(99140),ot=n(5383),st=n(3685),rt=n(45323),it=n(29685),lt=n(2438),ct=n.p+"19eb2dfcf2603eb55733.png",dt=n(37272),ut=n(78429);const pt=[{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"}],he={href:"https://www.youtube.com/playlist?list=PL7Q0DQYATmvidz6lEmwE5nIcOAYagxWqq",label:{id:"app.components.Onboarding.link.more-videos",defaultMessage:"Watch more videos"}},mt=[{label:{id:"global.documentation",defaultMessage:"documentation"},href:"https://docs.strapi.io",icon:dt.Z},{label:{id:"app.static.links.cheatsheet",defaultMessage:"cheatsheet"},href:"https://strapi-showcase.s3-us-west-2.amazonaws.com/CheatSheet.pdf",icon:ut.Z}],gt=(0,C.ZP)(V.z)`
38
+ border-radius: 50%;
39
+ padding: ${({theme:t})=>t.spaces[3]};
40
+ /* Resetting 2rem height defined by Button component */
41
+ height: 100%;
42
+ `,ht=(0,C.ZP)(m.k)`
43
+ transform: translate(-50%, -50%);
44
+ `,ft=(0,C.ZP)(m.k)`
45
+ text-decoration: none;
46
+
47
+ :focus-visible {
48
+ outline-offset: ${({theme:t})=>`-${t.spaces[1]}`};
49
+ }
50
+
51
+ :hover {
52
+ background: ${({theme:t})=>t.colors.primary100};
53
+
54
+ /* Hover style for the number displayed */
55
+ ${E.Z}:first-child {
56
+ color: ${({theme:t})=>t.colors.primary500};
57
+ }
58
+
59
+ /* Hover style for the label */
60
+ ${E.Z}:nth-child(1) {
61
+ color: ${({theme:t})=>t.colors.primary600};
62
+ }
63
+ }
64
+ `,Et=C.ZP.img`
65
+ width: ${({theme:t})=>t.spaces[10]};
66
+ height: ${({theme:t})=>t.spaces[8]};
67
+ /* Same overlay used in ModalLayout */
68
+ background: ${({theme:t})=>`${t.colors.neutral800}1F`};
69
+ border-radius: ${({theme:t})=>t.borderRadius};
70
+ `,fe=(0,C.ZP)(E.Z)`
71
+ /* line height of label and watch more to 1 so they can be better aligned visually */
72
+ line-height: 1;
73
+ `,Ee=(0,C.ZP)(fe)`
74
+ text-decoration: none;
75
+
76
+ :hover {
77
+ text-decoration: underline;
78
+ }
79
+ `;var yt=()=>{const t=(0,e.useRef)(),[a,o]=(0,e.useState)(!1),{formatMessage:i}=(0,B.Z)(),{communityEdition:d}=(0,s.L7)(),u=()=>{o(p=>!p)},h=[...mt,{label:{id:"Settings.application.get-help",defaultMessage:"Get help"},icon:rt.Z,href:d?"https://discord.strapi.io":"https://support.strapi.io/support/home"}];return e.createElement(v.x,{as:"aside",position:"fixed",bottom:2,right:2},e.createElement(gt,{"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(X.J,{as:a?ae.Z:it.Z,color:"buttonNeutral0"})),a&&e.createElement(te.h,null,e.createElement(ot.VY,{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(fe,{fontWeight:"bold"},i({id:"app.components.Onboarding.title",defaultMessage:"Get started videos"})),e.createElement(Ee,{as:"a",href:he.href,target:"_blank",rel:"noreferrer noopener",variant:"pi",textColor:"primary600"},i(he.label))),e.createElement(de.i,null),pt.map(({href:p,duration:g,label:l},I)=>e.createElement(ft,{as:"a",href:p,target:"_blank",rel:"noreferrer noopener",key:p,hasRadius:!0,paddingTop:4,paddingBottom:4,paddingLeft:6,paddingRight:11},e.createElement(v.x,{paddingRight:5},e.createElement(E.Z,{textColor:"neutral200",variant:"alpha"},I+1)),e.createElement(v.x,{position:"relative"},e.createElement(Et,{src:ct,alt:""}),e.createElement(ht,{position:"absolute",top:"50%",left:"50%",background:"primary600",borderRadius:"50%",justifyContent:"center",width:6,height:6},e.createElement(X.J,{as:lt.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(st.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(X.J,{as:l,color:"primary600"}),e.createElement(Ee,{as:"a",href:g,target:"_blank",rel:"noreferrer noopener",variant:"sigma",textColor:"primary700"},i(p))))))))};const vt=(0,e.lazy)(()=>Promise.all([n.e(970),n.e(9932),n.e(4485),n.e(994)]).then(n.bind(n,58890))),Ct=(0,e.lazy)(()=>n.e(3981).then(n.bind(n,42566))),Tt=(0,e.lazy)(()=>n.e(3677).then(n.bind(n,15415))),Mt=(0,e.lazy)(()=>n.e(5516).then(n.bind(n,89948))),ye=(0,e.lazy)(()=>Promise.resolve().then(n.bind(n,53951))),St=(0,e.lazy)(()=>n.e(9501).then(n.bind(n,92336))),Pt=(0,e.lazy)(()=>n.e(9497).then(n.bind(n,84355))),ve=(0,e.lazy)(()=>n.e(5895).then(n.bind(n,75960))),It=()=>{const{trackUsage:t}=(0,s.rS)(),a=(0,D.I0)(),o=(0,D.v9)(i=>i.admin_app.status);(0,e.useEffect)(()=>{o==="init"&&(t("didAccessAuthenticatedAdministration"),a({type:at.eb}))},[o])};var Rt=()=>{It();const{isLoading:t,generalSectionLinks:a,pluginsSectionLinks:o}=(0,S.H9)(),{menu:i}=(0,s.j1)(),{showTutorials:d}=(0,S.um)(),u=(0,e.useMemo)(()=>i.filter(h=>h.Component).map(({to:h,Component:p,exact:g})=>(0,L.ot)(p,h,g)),[i]);return t?e.createElement(s.dO,null):e.createElement(P.DndProvider,{backend:F.PD},e.createElement(nt,{sideNav:e.createElement(_e,{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:Ct,exact:!0}),e.createElement(f.AW,{path:"/me",component:Pt,exact:!0}),e.createElement(f.AW,{path:"/content-manager",component:vt}),u,e.createElement(f.AW,{path:"/settings/:settingId",component:ve}),e.createElement(f.AW,{path:"/settings",component:ve,exact:!0}),e.createElement(f.AW,{path:"/marketplace"},e.createElement(Mt,null)),e.createElement(f.AW,{path:"/list-plugins",exact:!0},e.createElement(Tt,null)),e.createElement(f.AW,{path:"/404",component:ye}),e.createElement(f.AW,{path:"/500",component:St}),e.createElement(f.AW,{path:"",component:ye}))),e.createElement(Qe,null),d&&e.createElement(yt,null)))},At=t=>({plugins:Object.keys(t).reduce((a,o)=>(a[o]={...t[o]},a),{})}),Lt=n(3040),Ot=n.n(Lt);const Ce={plugins:null};var xt=(t=Ce,a)=>(0,le.ZP)(t,o=>{switch(a.type){case"SET_PLUGIN_READY":{Ot()(o,["plugins",a.pluginId,"isReady"],!0);break}default:return o}}),bt=()=>{const{plugins:t}=(0,s.j1)(),[{plugins:a},o]=(0,e.useReducer)(xt,Ce,()=>At(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(Rt,null)},Te=n(17367);const Dt=()=>({type:Te.l}),kt=t=>({type:Te.m,permissions:t}),Me=({children:t,permissions:a,refetchPermissions:o})=>{const{allPermissions:i}=(0,D.v9)(u=>u.rbacProvider),d=(0,D.I0)();return(0,e.useEffect)(()=>(d(kt(a)),()=>{d(Dt())}),[a,d]),i?e.createElement(s.oL.Provider,{value:{allPermissions:i,refetchPermissions:o}},t):e.createElement(s.dO,null)};Me.propTypes={children:r().element.isRequired,permissions:r().array.isRequired,refetchPermissions:r().func.isRequired};var Zt=Me,Bt=n(54770),q=n.n(Bt),Se=(t,a)=>!q().valid(t)||!q().valid(a)?!1:q().lt(t,a);const Pe=M.i8,Wt=!JSON.parse(localStorage.getItem("STRAPI_UPDATE_NOTIF")),{get:_}=(0,s.tg)(),Gt=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 Se(Pe,o)&&Wt&&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 Pe}},Nt=async()=>{try{const{data:t,headers:a}=await _("/admin/information");if(!a["content-type"].includes("application/json"))throw new Error("Not found");return t.data}catch(t){throw new Error(t)}},Ut=async()=>{try{const{data:t,headers:a}=await _("/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)}},Ft=async()=>{try{const{data:{data:{roles:t}}}=await _("/admin/users/me");return t}catch(t){throw new Error(t)}},Ie=M.i8;var jt=()=>{const{setGuidedTourVisibility:t}=(0,s.c1)(),a=(0,s.lm)(),o=s.I8.getUserInfo(),i=Z()(o,"username")||(0,L.Pp)(o.firstname,o.lastname),[d,u]=(0,e.useState)(i),[h,p]=(0,e.useState)(null),{showReleaseNotification:g}=(0,S.um)(),[{data:l,status:I},{data:k,isLoading:$},{data:Q,status:G,refetch:R,isFetching:z},{data:A}]=(0,y.useQueries)([{queryKey:"app-infos",queryFn:Nt},{queryKey:"strapi-release",queryFn:()=>Gt(a),enabled:g,initialData:Ie},{queryKey:"admin-users-permission",queryFn:Ut,initialData:[]},{queryKey:"user-roles",queryFn:Ft}]),O=Se(Ie,k);return(0,e.useEffect)(()=>{A&&A.find(({code:U})=>U==="strapi-super-admin")&&l?.autoReload&&t(!0)},[A,l,t]),(0,e.useEffect)(()=>{(async()=>{const U=await(0,L.Qy)(o);p(U)})()},[o]),$||(z||I==="loading"||G==="loading")?e.createElement(s.dO,null):I==="error"?e.createElement("div",null,"error..."):e.createElement(s.iq,{...l,userId:h,latestStrapiReleaseTag:k,setUserDisplayName:u,shouldUpdateStrapi:O,userDisplayName:d},e.createElement(Zt,{permissions:Q,refetchPermissions:R},e.createElement(bt,null)))}},78024:function(K,T,n){var e=n(32735),s=n(72850),b=n(19565),Z=n(60216),y=n.n(Z),M=n(23678);const S=({type:L,...P})=>e.createElement(s.x,{width:(0,b.Q1)(2),height:"100%",background:L===M.VM?"neutral300":"primary500",hasRadius:!0,...P});S.defaultProps={type:M.VM},S.propTypes={type:y().oneOf([M.lW,M.hx,M.VM])},T.Z=S},14317:function(K,T,n){var e=n(32735),s=n(87933),b=n(99140),Z=n(49372),y=n(19565),M=n(66456),S=n(60216),L=n.n(S),P=n(23678);const F=({type:D,number:f})=>D===P.hx?e.createElement(s.k,{background:"primary600",padding:2,borderRadius:"50%",width:(0,y.Q1)(30),height:(0,y.Q1)(30),justifyContent:"center"},e.createElement(b.J,{as:M.Z,"aria-hidden":!0,width:(0,y.Q1)(16),color:"neutral0"})):D===P.lW?e.createElement(s.k,{background:"primary600",padding:2,borderRadius:"50%",width:(0,y.Q1)(30),height:(0,y.Q1)(30),justifyContent:"center"},e.createElement(Z.Z,{fontWeight:"semiBold",textColor:"neutral0"},f)):e.createElement(s.k,{borderColor:"neutral500",borderWidth:"1px",borderStyle:"solid",padding:2,borderRadius:"50%",width:(0,y.Q1)(30),height:(0,y.Q1)(30),justifyContent:"center"},e.createElement(Z.Z,{fontWeight:"semiBold",textColor:"neutral600"},f));F.defaultProps={number:void 0,type:P.VM},F.propTypes={number:L().number,type:L().oneOf([P.lW,P.hx,P.VM])},T.Z=F},23678:function(K,T,n){n.d(T,{VM:function(){return b},hx:function(){return s},lW:function(){return e}});const e="isActive",s="isDone",b="isNotDone"},58107:function(K,T){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"}}};T.Z=n}}]);
@@ -1,4 +1,4 @@
1
- (self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5895],{75960:function(A,v,t){"use strict";t.r(v),t.d(v,{SettingsPage:function(){return Ut},default:function(){return De}});var e=t(32735),m=t(96709),l=t(19565),h=t(74758),d=t(67879),g=t(53038),u=t(10328),C=t(18782),R=t(8997),z=t(90700),Z=t(78090),$=t(77013),M=t(79318),U=t(66618),S=t(60216),o=t.n(S),y=t(14911),P=t(3704),B=t.n(P),V=a=>B()(a,s=>s.links).map(s=>(0,R.ot)(s.Component,s.to,s.exact||!1)),J=a=>a.filter(n=>!n.links.every(s=>s.isDisplayed===!1));const w=({menu:a})=>{const{formatMessage:n}=(0,d.Z)(),{trackUsage:s}=(0,l.rS)(),{pathname:i}=(0,g.TH)(),f=J(a).map(p=>({...p,title:p.intlLabel,links:p.links.map(r=>({...r,title:r.intlLabel,name:r.id}))})),L=n({id:"global.settings",defaultMessage:"Settings"}),E=(p=null)=>{s("willNavigate",{from:i,to:p})};return e.createElement(z.m,{ariaLabel:L},e.createElement(Z.p,{label:L}),e.createElement($.Z,null,f.map(p=>e.createElement(M.D,{key:p.id,label:n(p.intlLabel)},p.links.map(r=>e.createElement(U.E,{as:y.OL,withBullet:r.hasNotification,to:r.to,onClick:()=>E(r.to),key:r.id},n(r.intlLabel)))))))};w.propTypes={menu:o().array.isRequired};var st=w;const X=[{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,58795))},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}];var q=t(27649),nt=t(23866),it=t(82055),j=t(41415),_=t(17e3),F=t(87933),T=t(49372),at=t(15335),Y=t(5803),W=t(50428),Bt=t(66456),Ct=t(47361),lt=t(20108),jt=t(15062),zt=t(78125),G=t(72850);const k=750,tt=100,Lt=["image/jpeg","image/png","image/svg+xml"];var Zt=t(23272),Ft=t(68387),St=t(50563),Wt=t(98779),Kt=t(19406),$t=t(44647),Nt=t(85025),Gt=t(55225),rt=t(97889);const yt={localImage:void 0};var Ht=(a=yt,n)=>(0,rt.ZP)(a,s=>{switch(n.type){case"SET_LOCAL_IMAGE":{s.localImage=n.value;break}default:return s}});const dt=({onChangeLogo:a,customLogo:n,goTo:s,Component:i,modalTitle:c,next:f,prev:L,currentStep:E})=>{const[{localImage:p},r]=(0,e.useReducer)(Ht,yt),{formatMessage:O}=(0,d.Z)(),x=D=>{r({type:"SET_LOCAL_IMAGE",value:D})},I=()=>{s(null)};return E?e.createElement(Nt.P,{labelledBy:"modal",onClose:I},e.createElement(Gt.x,null,e.createElement(T.Z,{fontWeight:"bold",as:"h2",id:"modal"},O(c))),e.createElement(i,{setLocalImage:x,goTo:s,next:f,prev:L,onClose:I,asset:p||n,onChangeLogo:a})):null};dt.defaultProps={Component:void 0,currentStep:void 0,customLogo:void 0,modalTitle:void 0,next:null,prev:null},dt.propTypes={Component:o().elementType,currentStep:o().string,customLogo:o().shape({name:o().string,url:o().string,width:o().number,height:o().number,ext:o().string}),goTo:o().func.isRequired,modalTitle:o().shape({id:o().string,defaultMessage:o().string}),next:o().string,onChangeLogo:o().func.isRequired,prev:o().string};var Vt=dt;const Rt={currentStep:void 0};var Qt=(a=Rt,n)=>(0,rt.ZP)(a,s=>{switch(n.type){case"GO_TO":{s.currentStep=n.to;break}default:return s}}),Jt=t(91215),ct=t(90980),Xt=t(9026),mt=t(3653),Yt=t(98275),bt=t(87107),wt=t(99140),kt=t(47851),ut=t(11406),qt=t(47284),_t=t(8471);const te={id:"Settings.application.customization.modal.upload.error-format",defaultMessage:"Wrong format uploaded (accepted formats only: jpeg, jpg, png, svg)."},Tt={id:"Settings.application.customization.modal.upload.error-size",defaultMessage:"The file uploaded is too large (max dimension: {dimension}x{dimension}, max file size: {size}KB)"},ee=a=>new Promise(n=>{const s=new FileReader;s.onload=()=>{const i=new Image;i.onload=function(){n({width:i.width,height:i.height})},i.src=s.result},s.readAsDataURL(a)}),ne=(a,n)=>({ext:a.name.split(".").pop(),size:a.size/1e3,name:a.name,url:URL.createObjectURL(a),rawFile:a,width:n.width,height:n.height}),Pt=async a=>{let n;if(!Lt.includes(a.type))throw n=new Error("File format"),n.displayMessage=te,n;const i=await ee(a);if(!(i.width<=k&&i.height<=k))throw n=new Error("File sizing"),n.displayMessage=Tt,n;const f=ne(a,i);if(!(f.size<=tt))throw n=new Error("File sizing"),n.displayMessage=Tt,n;return f},ae=(0,_t.ZP)(Yt._)`
1
+ (self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5895],{75960:function(U,v,t){"use strict";t.r(v),t.d(v,{SettingsPage:function(){return Ut},default:function(){return De}});var e=t(32735),m=t(96709),l=t(19565),h=t(74758),d=t(67879),u=t(53038),g=t(10328),C=t(18782),R=t(8997),z=t(90700),Z=t(78090),$=t(77013),M=t(79318),B=t(66618),S=t(60216),o=t.n(S),y=t(14911),T=t(3704),I=t.n(T),Q=a=>I()(a,s=>s.links).map(s=>(0,R.ot)(s.Component,s.to,s.exact||!1)),N=a=>a.filter(n=>!n.links.every(s=>s.isDisplayed===!1));const w=({menu:a})=>{const{formatMessage:n}=(0,d.Z)(),{trackUsage:s}=(0,l.rS)(),{pathname:i}=(0,u.TH)(),f=N(a).map(p=>({...p,title:p.intlLabel,links:p.links.map(r=>({...r,title:r.intlLabel,name:r.id}))})),L=n({id:"global.settings",defaultMessage:"Settings"}),E=(p=null)=>{s("willNavigate",{from:i,to:p})};return e.createElement(z.m,{ariaLabel:L},e.createElement(Z.p,{label:L}),e.createElement($.Z,null,f.map(p=>e.createElement(M.D,{key:p.id,label:n(p.intlLabel)},p.links.map(r=>e.createElement(B.E,{as:y.OL,withBullet:r.hasNotification,to:r.to,onClick:()=>E(r.to),key:r.id},n(r.intlLabel)))))))};w.propTypes={menu:o().array.isRequired};var st=w;const X=[{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,58795))},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}];var q=t(27649),nt=t(23866),it=t(82055),j=t(41415),_=t(17e3),F=t(87933),P=t(49372),at=t(15335),Y=t(5803),W=t(50428),Bt=t(66456),Ct=t(47361),lt=t(20108),jt=t(15062),zt=t(78125),G=t(72850);const k=750,tt=100,Lt=["image/jpeg","image/png","image/svg+xml"];var Zt=t(23272),Ft=t(68387),St=t(50563),Wt=t(98779),Kt=t(19406),$t=t(44647),Nt=t(85025),Gt=t(55225),rt=t(97889);const yt={localImage:void 0};var Ht=(a=yt,n)=>(0,rt.ZP)(a,s=>{switch(n.type){case"SET_LOCAL_IMAGE":{s.localImage=n.value;break}default:return s}});const dt=({onChangeLogo:a,customLogo:n,goTo:s,Component:i,modalTitle:c,next:f,prev:L,currentStep:E})=>{const[{localImage:p},r]=(0,e.useReducer)(Ht,yt),{formatMessage:O}=(0,d.Z)(),x=A=>{r({type:"SET_LOCAL_IMAGE",value:A})},D=()=>{s(null)};return E?e.createElement(Nt.P,{labelledBy:"modal",onClose:D},e.createElement(Gt.x,null,e.createElement(P.Z,{fontWeight:"bold",as:"h2",id:"modal"},O(c))),e.createElement(i,{setLocalImage:x,goTo:s,next:f,prev:L,onClose:D,asset:p||n,onChangeLogo:a})):null};dt.defaultProps={Component:void 0,currentStep:void 0,customLogo:void 0,modalTitle:void 0,next:null,prev:null},dt.propTypes={Component:o().elementType,currentStep:o().string,customLogo:o().shape({name:o().string,url:o().string,width:o().number,height:o().number,ext:o().string}),goTo:o().func.isRequired,modalTitle:o().shape({id:o().string,defaultMessage:o().string}),next:o().string,onChangeLogo:o().func.isRequired,prev:o().string};var Vt=dt;const Rt={currentStep:void 0};var Qt=(a=Rt,n)=>(0,rt.ZP)(a,s=>{switch(n.type){case"GO_TO":{s.currentStep=n.to;break}default:return s}}),Jt=t(91215),ct=t(90980),Xt=t(9026),mt=t(3653),Yt=t(98275),bt=t(87107),wt=t(99140),kt=t(47851),gt=t(11406),qt=t(47284),_t=t(8471);const te={id:"Settings.application.customization.modal.upload.error-format",defaultMessage:"Wrong format uploaded (accepted formats only: jpeg, jpg, png, svg)."},Tt={id:"Settings.application.customization.modal.upload.error-size",defaultMessage:"The file uploaded is too large (max dimension: {dimension}x{dimension}, max file size: {size}KB)"},ee=a=>new Promise(n=>{const s=new FileReader;s.onload=()=>{const i=new Image;i.onload=function(){n({width:i.width,height:i.height})},i.src=s.result},s.readAsDataURL(a)}),ne=(a,n)=>({ext:a.name.split(".").pop(),size:a.size/1e3,name:a.name,url:URL.createObjectURL(a),rawFile:a,width:n.width,height:n.height}),Pt=async a=>{let n;if(!Lt.includes(a.type))throw n=new Error("File format"),n.displayMessage=te,n;const i=await ee(a);if(!(i.width<=k&&i.height<=k))throw n=new Error("File sizing"),n.displayMessage=Tt,n;const f=ne(a,i);if(!(f.size<=tt))throw n=new Error("File sizing"),n.displayMessage=Tt,n;return f},ae=(0,_t.ZP)(Yt._)`
2
2
  opacity: 0;
3
3
  position: absolute;
4
4
  top: 0;
@@ -6,24 +6,24 @@
6
6
  left: 0;
7
7
  right: 0;
8
8
  z-index: 1;
9
- `,gt=({setLocalImage:a,goTo:n,next:s,onClose:i})=>{const{formatMessage:c}=(0,d.Z)(),[f,L]=(0,e.useState)(!1),[E,p]=(0,e.useState)(void 0),r=(0,e.useRef)(null),O=()=>L(!0),x=()=>L(!1),I=H=>{H.preventDefault(),r.current.click()},D=async()=>{x();const H=r.current.files[0];if(H)try{const b=await Pt(H);a(b),n(s)}catch(b){if(b.displayMessage)p(c(b.displayMessage,{size:tt,dimension:k})),r.current.focus();else throw b}},K=()=>f?"primary500":E?"danger600":"neutral300";return e.createElement(e.Fragment,null,e.createElement("form",null,e.createElement(G.x,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(bt.g,{name:"logo-upload",error:E},e.createElement("label",{htmlFor:"logo-upload"},e.createElement(F.k,{direction:"column",alignItems:"stretch",gap:2},e.createElement(F.k,{paddingTop:9,paddingBottom:7,hasRadius:!0,justifyContent:"center",direction:"column",background:f?"primary100":"neutral100",borderColor:K(),borderStyle:"dashed",borderWidth:"1px",position:"relative",onDragEnter:O,onDragLeave:x},e.createElement(wt.J,{color:"primary600",width:`${60/16}rem`,height:`${60/16}rem`,as:qt.Z,"aria-hidden":!0}),e.createElement(G.x,{paddingTop:3,paddingBottom:5},e.createElement(T.Z,{variant:"delta",as:"span"},c({id:"Settings.application.customization.modal.upload.drag-drop",defaultMessage:"Drag and Drop here or"}))),e.createElement(ae,{accept:Lt,cursor:"pointer",as:"input",type:"file",name:"files",tabIndex:-1,zIndex:1,onChange:D,ref:r,id:"logo-upload"}),e.createElement(j.z,{type:"button",onClick:I},c({id:"Settings.application.customization.modal.upload.cta.browse",defaultMessage:"Browse files"})),e.createElement(G.x,{paddingTop:6},e.createElement(T.Z,{variant:"pi",textColor:"neutral600"},c({id:"Settings.application.customization.modal.upload.file-validation",defaultMessage:"Max dimension: {dimension}x{dimension}, Max size: {size}KB"},{size:tt,dimension:k})))),e.createElement(kt.c,null)))))),e.createElement(ut.m,{startActions:e.createElement(j.z,{onClick:i,variant:"tertiary"},c({id:"Settings.application.customization.modal.cancel",defaultMessage:"Cancel"}))}))};gt.defaultProps={next:null},gt.propTypes={goTo:o().func.isRequired,next:o().string,onClose:o().func.isRequired,setLocalImage:o().func.isRequired};var oe=gt,se=t(10369),ie=async a=>{try{const{get:n}=(0,l.tg)(),s=await n(a,{responseType:"blob",timeout:8e3});return new File([s.data],s.config.url,{type:s.headers["content-type"]})}catch(n){throw n.displayMessage={id:"Settings.application.customization.modal.upload.error-network",defaultMessage:"Network error"},n}};const pt=({goTo:a,next:n,onClose:s,setLocalImage:i})=>{const{formatMessage:c}=(0,d.Z)(),[f,L]=(0,e.useState)(""),[E,p]=(0,e.useState)(null),r=x=>{L(x.target.value)},O=async()=>{try{const x=await ie(f),I=await Pt(x);i(I),a(n)}catch(x){if(x.displayMessage)p(c(x.displayMessage,{size:tt,dimension:k}));else throw x}};return e.createElement("form",{onSubmit:x=>{x.preventDefault(),O()}},e.createElement(G.x,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(se.o,{label:c({id:"Settings.application.customization.modal.upload.from-url.input-label",defaultMessage:"URL"}),error:E,onChange:r,value:f,name:"logo-url"})),e.createElement(ut.m,{startActions:e.createElement(j.z,{onClick:s,variant:"tertiary"},c({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(j.z,{type:"submit"},c({id:"Settings.application.customization.modal.upload.next",defaultMessage:"Next"}))}))};pt.defaultProps={next:null},pt.propTypes={goTo:o().func.isRequired,next:o().string,onClose:o().func.isRequired,setLocalImage:o().func.isRequired};var le=pt;const ht=({setLocalImage:a,goTo:n,next:s,onClose:i})=>{const{formatMessage:c}=(0,d.Z)();return e.createElement(Jt.v,{label:c({id:"Settings.application.customization.modal.tab.label",defaultMessage:"How do you want to upload your assets?"}),variant:"simple"},e.createElement(G.x,{paddingLeft:8,paddingRight:8},e.createElement(ct.m,null,e.createElement(ct.O,null,c({id:"Settings.application.customization.modal.upload.from-computer",defaultMessage:"From computer"})),e.createElement(ct.O,null,c({id:"Settings.application.customization.modal.upload.from-url",defaultMessage:"From url"}))),e.createElement(Xt.i,null)),e.createElement(mt.n,null,e.createElement(mt.x,null,e.createElement(oe,{onClose:i,setLocalImage:a,goTo:n,next:s})),e.createElement(mt.x,null,e.createElement(le,{onClose:i,setLocalImage:a,goTo:n,next:s}))))};ht.defaultProps={next:null},ht.propTypes={goTo:o().func.isRequired,next:o().string,onClose:o().func.isRequired,setLocalImage:o().func.isRequired};var re=ht,de=t(42466),ce=t(20853),me=t(2800),ue=t(26835),ge=t(41048),Ot=t(37083),pe=t(11505);const It=({asset:a})=>{const{formatMessage:n}=(0,d.Z)();return e.createElement(de.Z,null,e.createElement(ce.O,null,e.createElement(me.H,{size:"S",src:a.url})),e.createElement(ue.e,null,e.createElement(ge.a,null,e.createElement(Ot.l,null,a.name),e.createElement(Ot._,null,`${a.ext.toUpperCase()} - ${a.width}\u2715${a.height}`)),e.createElement(pe.E,null,n({id:"Settings.application.customization.modal.pending.card-badge",defaultMessage:"image"}))))};It.propTypes={asset:o().shape({name:o().string,url:o().string,width:o().number,height:o().number,ext:o().string}).isRequired};var he=It;const Et=({onClose:a,asset:n,prev:s,next:i,goTo:c,setLocalImage:f,onChangeLogo:L})=>{const{formatMessage:E}=(0,d.Z)(),p=()=>{f(void 0),c(s)},r=()=>{L(n),c(i)};return e.createElement(e.Fragment,null,e.createElement(G.x,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(F.k,{justifyContent:"space-between",paddingBottom:6},e.createElement(F.k,{direction:"column",alignItems:"flex-start"},e.createElement(T.Z,{variant:"pi",fontWeight:"bold"},E({id:"Settings.application.customization.modal.pending.title",defaultMessage:"Logo ready to upload"})),e.createElement(T.Z,{variant:"pi",textColor:"neutral500"},E({id:"Settings.application.customization.modal.pending.subtitle",defaultMessage:"Manage the chosen logo before uploading it"}))),e.createElement(j.z,{onClick:p,variant:"secondary"},E({id:"Settings.application.customization.modal.pending.choose-another",defaultMessage:"Choose another logo"}))),e.createElement(G.x,{maxWidth:(0,l.Q1)(180)},n.url?e.createElement(he,{asset:n}):null)),e.createElement(ut.m,{startActions:e.createElement(j.z,{onClick:a,variant:"tertiary"},E({id:"Settings.application.customization.modal.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(j.z,{onClick:r},E({id:"Settings.application.customization.modal.pending.upload",defaultMessage:"Upload logo"}))}))};Et.defaultProps={next:null,prev:null},Et.propTypes={goTo:o().func.isRequired,asset:o().shape({name:o().string,url:o().string,width:o().number,height:o().number,ext:o().string}).isRequired,next:o().string,onClose:o().func.isRequired,onChangeLogo:o().func.isRequired,prev:o().string,setLocalImage:o().func.isRequired};var Ee=Et,fe={upload:{Component:re,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 ft=({canUpdate:a,customLogo:n,defaultLogo:s,hint:i,label:c,onChangeLogo:f,onResetLogo:L})=>{const[{currentStep:E},p]=(0,e.useReducer)(Qt,Rt),{Component:r,next:O,prev:x,modalTitle:I}=fe[E]||{},{formatMessage:D}=(0,d.Z)(),K=H=>{p({type:"GO_TO",to:H})};return e.createElement(e.Fragment,null,e.createElement(Zt.F,{label:c,selectedSlide:0,hint:i,previousLabel:"",nextLabel:"",onNext:()=>{},onPrevious:()=>{},secondaryLabel:n?.name||"logo.png",actions:e.createElement(Ft.b,null,e.createElement(St.h,{disabled:!a,onClick:()=>K(n?"pending":"upload"),label:D({id:"Settings.application.customization.carousel.change-action",defaultMessage:"Change logo"}),icon:e.createElement(Kt.Z,null)}),n&&e.createElement(St.h,{disabled:!a,onClick:L,label:D({id:"Settings.application.customization.carousel.reset-action",defaultMessage:"Reset logo"}),icon:e.createElement($t.Z,null)}))},e.createElement(Wt.q,{label:D({id:"Settings.application.customization.carousel-slide.label",defaultMessage:"Logo slide"})},e.createElement(G.x,{maxHeight:"40%",maxWidth:"40%",as:"img",src:n?.url||s,alt:D({id:"Settings.application.customization.carousel.title",defaultMessage:"Logo"})}))),e.createElement(Vt,{Component:r,currentStep:E,onChangeLogo:f,customLogo:n,goTo:K,next:O,prev:x,modalTitle:I}))};ft.defaultProps={canUpdate:!1,customLogo:null,hint:null},ft.propTypes={canUpdate:o().bool,customLogo:o().shape({url:o().string,name:o().string}),label:o().string.isRequired,hint:o().string,defaultLogo:o().string.isRequired,onChangeLogo:o().func.isRequired,onResetLogo:o().func.isRequired};var Dt=ft,ve=t(86349),xe=t.n(ve),Me=(a,n)=>xe()(a,{menuLogo:{display:n.menuLogo},authLogo:{display:n.authLogo}});const vt={menuLogo:{display:null,submit:{rawFile:null,isReset:!1}},authLogo:{display:null,submit:{rawFile:null,isReset:!1}}};var Ce=(a=vt,n)=>(0,rt.ZP)(a,s=>{switch(n.type){case"SET_CUSTOM_MENU_LOGO":{s.menuLogo.display=n.value,s.menuLogo.submit.rawFile=n.value.rawFile;break}case"SET_CUSTOM_AUTH_LOGO":{s.authLogo.display=n.value,s.authLogo.submit.rawFile=n.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}});const xt=(0,e.forwardRef)(({canUpdate:a,projectSettingsStored:n},s)=>{const{formatMessage:i}=(0,d.Z)(),{trackUsage:c}=(0,l.rS)(),{logos:{menu:f,auth:L}}=(0,u.um)(),[{menuLogo:E,authLogo:p},r]=(0,e.useReducer)(Ce,vt,()=>Me(vt,n)),O=K=>{r({type:"SET_CUSTOM_MENU_LOGO",value:K})},x=()=>{c("didClickResetLogo",{logo:"menu"}),r({type:"RESET_CUSTOM_MENU_LOGO"})},I=K=>{r({type:"SET_CUSTOM_AUTH_LOGO",value:K})},D=()=>{c("didClickResetLogo",{logo:"auth"}),r({type:"RESET_CUSTOM_AUTH_LOGO"})};return(0,e.useImperativeHandle)(s,()=>({getValues:()=>({menuLogo:E.submit,authLogo:p.submit})})),e.createElement(G.x,{hasRadius:!0,background:"neutral0",shadow:"tableShadow",paddingTop:6,paddingBottom:6,paddingRight:7,paddingLeft:7},e.createElement(T.Z,{variant:"delta",as:"h3"},i({id:"Settings.application.customization",defaultMessage:"Customization"})),e.createElement(T.Z,{variant:"pi",textColor:"neutral600"},i({id:"Settings.application.customization.size-details",defaultMessage:"Max dimension: {dimension}\xD7{dimension}, Max file size: {size}KB"},{dimension:k,size:tt})),e.createElement(at.r,{paddingTop:4,gap:4},e.createElement(Y.P,{col:6,s:12},e.createElement(Dt,{canUpdate:a,customLogo:E.display,defaultLogo:f.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:O,onResetLogo:x})),e.createElement(Y.P,{col:6,s:12},e.createElement(Dt,{canUpdate:a,customLogo:p.display,defaultLogo:L.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:I,onResetLogo:D}))))});xt.defaultProps={canUpdate:!1,projectSettingsStored:null},xt.propTypes={canUpdate:o().bool,projectSettingsStored:o().shape({menuLogo:o().shape({url:o().string,name:o().string})})};var Le=xt,Se=t(48344),ye=t.n(Se),At=a=>ye()(a,(n,s,i)=>{s&&s.url?n[i]={...s,url:(0,l.CR)(s.url)}:n[i]=s},{});const Re=async()=>{const{get:a}=(0,l.tg)(),{data:n}=await a("/admin/project-settings");return At(n)},Te=async a=>{const{post:n}=(0,l.tg)(),{data:s}=await n("/admin/project-settings",a,{headers:{"Content-Type":"multipart/form-data"}});return At(s)};var Pe=a=>{const n=new FormData;return Object.entries(a).forEach(([s,i])=>{i&&i.rawFile instanceof File&&n.append(s,i.rawFile),i&&i.isReset&&n.append(s,null)}),n};const Oe=(()=>window&&window.strapi&&window.strapi.isEE?t(78999).Z:t(17891).Z)();var Ie=()=>{const a=(0,e.useRef)(),n=(0,l.lm)(),{trackUsage:s}=(0,l.rS)(),{formatMessage:i}=(0,d.Z)(),c=(0,lt.useQueryClient)();(0,l.go)();const{communityEdition:f,latestStrapiReleaseTag:L,nodeVersion:E,shouldUpdateStrapi:p,strapiVersion:r}=(0,l.L7)(),{updateProjectSettings:O}=(0,u.um)(),x=(0,jt.v9)(zt._),{allowedActions:{canRead:I,canUpdate:D}}=(0,l.ss)(x.settings["project-settings"]),K=I&&D,{data:H,isLoading:b}=(0,lt.useQuery)("project-settings",Re,{enabled:I}),Ae=(0,lt.useMutation)(et=>Te(et),{async onSuccess(et){let{menuLogo:ot,authLogo:Mt}=et;await c.invalidateQueries("project-settings",{refetchActive:!0}),O({menuLogo:ot?.url,authLogo:Mt?.url})}}),Ue=et=>{if(et.preventDefault(),!D)return;const ot=a.current.getValues(),Mt=Pe(ot);Ae.mutate(Mt,{onSuccess(){const{menuLogo:Be,authLogo:je}=ot;Be.rawFile&&s("didChangeLogo",{logo:"menu"}),je.rawFile&&s("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(m.A,null,e.createElement(l.SL,{name:"Application"}),e.createElement(q.o,null,b?e.createElement(nt.a,null,i({id:"Settings.application.isLoading",defaultMessage:"Loading"})):e.createElement("form",{onSubmit:Ue},e.createElement(it.T,{title:i({id:"Settings.application.title",defaultMessage:"Overview"}),subtitle:i({id:"Settings.application.description",defaultMessage:"Administration panel\u2019s global information"}),primaryAction:K&&e.createElement(j.z,{type:"submit",startIcon:e.createElement(Bt.Z,null)},i({id:"global.save",defaultMessage:"Save"}))}),e.createElement(_.D,null,e.createElement(F.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(F.k,{direction:"column",alignItems:"stretch",gap:4,hasRadius:!0,background:"neutral0",shadow:"tableShadow",paddingTop:6,paddingBottom:6,paddingRight:7,paddingLeft:7},e.createElement(T.Z,{variant:"delta",as:"h3"},i({id:"global.details",defaultMessage:"Details"})),e.createElement(at.r,{gap:5,as:"dl"},e.createElement(Y.P,{col:6,s:12},e.createElement(T.Z,{variant:"sigma",textColor:"neutral600",as:"dt"},i({id:"Settings.application.strapiVersion",defaultMessage:"strapi version"})),e.createElement(F.k,{gap:3,direction:"column",alignItems:"start",as:"dd"},e.createElement(T.Z,null,"v",r),p&&e.createElement(W.r,{href:`https://github.com/strapi/strapi/releases/tag/${L}`,isExternal:!0,endIcon:e.createElement(Ct.Z,null)},i({id:"Settings.application.link-upgrade",defaultMessage:"Upgrade your admin panel"})))),e.createElement(Y.P,{col:6,s:12},e.createElement(T.Z,{variant:"sigma",textColor:"neutral600",as:"dt"},i({id:"Settings.application.edition-title",defaultMessage:"current plan"})),e.createElement(F.k,{gap:3,direction:"column",alignItems:"start",as:"dd"},e.createElement(T.Z,null,i({id:"Settings.application.ee-or-ce",defaultMessage:"{communityEdition, select, true {Community Edition} other {Enterprise Edition}}"},{communityEdition:f})),e.createElement(W.r,{href:"https://strapi.io/pricing-self-hosted",isExternal:!0,endIcon:e.createElement(Ct.Z,null)},i({id:"Settings.application.link-pricing",defaultMessage:"See all pricing plans"})))),e.createElement(Y.P,{col:6,s:12},e.createElement(T.Z,{variant:"sigma",textColor:"neutral600",as:"dt"},i({id:"Settings.application.node-version",defaultMessage:"node version"})),e.createElement(T.Z,{as:"dd"},E)),e.createElement(Oe,null))),I&&H&&e.createElement(Le,{canUpdate:D,ref:a,projectSettingsStored:H}))))))};function Ut(){const{settingId:a}=(0,g.UO)(),{settings:n}=(0,l.j1)(),{formatMessage:s}=(0,d.Z)(),{isLoading:i,menu:c}=(0,u.Te)(),f=(0,C.c)(X,async()=>(await t.e(7018).then(t.bind(t,97018))).ROUTES_EE,{combine(r,O){return[...r,...O]},defaultValue:[]}),L=(0,e.useMemo)(()=>(0,R.WW)(f.map(({to:r,Component:O,exact:x})=>(0,R.ot)(O,r,x))),[f]),E=V(n);if(i)return e.createElement(l.dO,null);if(!a)return e.createElement(g.l_,{to:"/settings/application-infos"});const p=s({id:"global.settings",defaultMessage:"Settings"});return e.createElement(m.A,{sideNav:e.createElement(st,{menu:c})},e.createElement(h.q,{title:p}),e.createElement(g.rs,null,e.createElement(g.AW,{path:"/settings/application-infos",component:Ie,exact:!0}),L,E))}var De=(0,e.memo)(Ut)},17891:function(A,v){"use strict";const t=()=>null;v.Z=t},78999:function(A,v,t){"use strict";var e=t(32735),m=t(5803),l=t(49372),h=t(87933),d=t(63919),g=t(99140),u=t(41502),C=t(19565),R=t(69932),z=t(47361),Z=t(67879),$=t(58414);const M="https://cloud.strapi.io/profile/billing",U="https://strapi.io/billing/request-seats",S=()=>{const{formatMessage:o}=(0,Z.Z)(),{license:y}=(0,$.q5)(),{licenseLimitStatus:P,enforcementUserCount:B,permittedSeats:N,isHostedOnStrapiCloud:V}=y?.data??{};return N?e.createElement(m.P,{col:6,s:12},e.createElement(l.Z,{variant:"sigma",textColor:"neutral600"},o({id:"Settings.application.admin-seats",defaultMessage:"Admin seats"})),e.createElement(h.k,{gap:2},e.createElement(h.k,null,e.createElement(l.Z,{as:"p"},o({id:"Settings.application.ee.admin-seats.count",defaultMessage:"<text>{enforcementUserCount}</text>/{permittedSeats}"},{permittedSeats:N,enforcementUserCount:B,text:Q=>e.createElement(l.Z,{fontWeight:"semiBold",textColor:B>N?"danger500":null},Q)}))),P==="OVER_LIMIT"&&e.createElement(d.u,{description:o({id:"Settings.application.ee.admin-seats.at-limit-tooltip",defaultMessage:"At limit: add seats to invite more users"})},e.createElement(g.J,{width:`${(0,C.Q1)(14)}rem`,height:`${(0,C.Q1)(14)}rem`,color:"danger500",as:R.Z}))),e.createElement(u.r,{href:V?M:U,isExternal:!0,endIcon:e.createElement(z.Z,null)},o({id:"Settings.application.ee.admin-seats.add-seats",defaultMessage:"{isHostedOnStrapiCloud, select, true {Add seats} other {Contact sales}}"},{isHostedOnStrapiCloud:V}))):null};v.Z=S},3704:function(A,v,t){var e=t(40314),m=t(37213);function l(h,d){return e(m(h,d),1)}A.exports=l},37213:function(A,v,t){var e=t(26460),m=t(88904),l=t(52920),h=t(77236);function d(g,u){var C=h(g)?e:l;return C(g,m(u,3))}A.exports=d},96709:function(A,v,t){"use strict";t.d(v,{A:function(){return g}});var e=t(74512),m=t(8471),l=t(72850);const h=(0,m.ZP)(l.x)`
9
+ `,ut=({setLocalImage:a,goTo:n,next:s,onClose:i})=>{const{formatMessage:c}=(0,d.Z)(),[f,L]=(0,e.useState)(!1),[E,p]=(0,e.useState)(void 0),r=(0,e.useRef)(null),O=()=>L(!0),x=()=>L(!1),D=H=>{H.preventDefault(),r.current.click()},A=async()=>{x();const H=r.current.files[0];if(H)try{const b=await Pt(H);a(b),n(s)}catch(b){if(b.displayMessage)p(c(b.displayMessage,{size:tt,dimension:k})),r.current.focus();else throw b}},K=()=>f?"primary500":E?"danger600":"neutral300";return e.createElement(e.Fragment,null,e.createElement("form",null,e.createElement(G.x,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(bt.g,{name:"logo-upload",error:E},e.createElement("label",{htmlFor:"logo-upload"},e.createElement(F.k,{direction:"column",alignItems:"stretch",gap:2},e.createElement(F.k,{paddingTop:9,paddingBottom:7,hasRadius:!0,justifyContent:"center",direction:"column",background:f?"primary100":"neutral100",borderColor:K(),borderStyle:"dashed",borderWidth:"1px",position:"relative",onDragEnter:O,onDragLeave:x},e.createElement(wt.J,{color:"primary600",width:`${60/16}rem`,height:`${60/16}rem`,as:qt.Z,"aria-hidden":!0}),e.createElement(G.x,{paddingTop:3,paddingBottom:5},e.createElement(P.Z,{variant:"delta",as:"span"},c({id:"Settings.application.customization.modal.upload.drag-drop",defaultMessage:"Drag and Drop here or"}))),e.createElement(ae,{accept:Lt,cursor:"pointer",as:"input",type:"file",name:"files",tabIndex:-1,zIndex:1,onChange:A,ref:r,id:"logo-upload"}),e.createElement(j.z,{type:"button",onClick:D},c({id:"Settings.application.customization.modal.upload.cta.browse",defaultMessage:"Browse files"})),e.createElement(G.x,{paddingTop:6},e.createElement(P.Z,{variant:"pi",textColor:"neutral600"},c({id:"Settings.application.customization.modal.upload.file-validation",defaultMessage:"Max dimension: {dimension}x{dimension}, Max size: {size}KB"},{size:tt,dimension:k})))),e.createElement(kt.c,null)))))),e.createElement(gt.m,{startActions:e.createElement(j.z,{onClick:i,variant:"tertiary"},c({id:"Settings.application.customization.modal.cancel",defaultMessage:"Cancel"}))}))};ut.defaultProps={next:null},ut.propTypes={goTo:o().func.isRequired,next:o().string,onClose:o().func.isRequired,setLocalImage:o().func.isRequired};var oe=ut,se=t(10369),ie=async a=>{try{const{get:n}=(0,l.tg)(),s=await n(a,{responseType:"blob",timeout:8e3});return new File([s.data],s.config.url,{type:s.headers["content-type"]})}catch(n){throw n.displayMessage={id:"Settings.application.customization.modal.upload.error-network",defaultMessage:"Network error"},n}};const pt=({goTo:a,next:n,onClose:s,setLocalImage:i})=>{const{formatMessage:c}=(0,d.Z)(),[f,L]=(0,e.useState)(""),[E,p]=(0,e.useState)(null),r=x=>{L(x.target.value)},O=async()=>{try{const x=await ie(f),D=await Pt(x);i(D),a(n)}catch(x){if(x.displayMessage)p(c(x.displayMessage,{size:tt,dimension:k}));else throw x}};return e.createElement("form",{onSubmit:x=>{x.preventDefault(),O()}},e.createElement(G.x,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(se.o,{label:c({id:"Settings.application.customization.modal.upload.from-url.input-label",defaultMessage:"URL"}),error:E,onChange:r,value:f,name:"logo-url"})),e.createElement(gt.m,{startActions:e.createElement(j.z,{onClick:s,variant:"tertiary"},c({id:"app.components.Button.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(j.z,{type:"submit"},c({id:"Settings.application.customization.modal.upload.next",defaultMessage:"Next"}))}))};pt.defaultProps={next:null},pt.propTypes={goTo:o().func.isRequired,next:o().string,onClose:o().func.isRequired,setLocalImage:o().func.isRequired};var le=pt;const ht=({setLocalImage:a,goTo:n,next:s,onClose:i})=>{const{formatMessage:c}=(0,d.Z)();return e.createElement(Jt.v,{label:c({id:"Settings.application.customization.modal.tab.label",defaultMessage:"How do you want to upload your assets?"}),variant:"simple"},e.createElement(G.x,{paddingLeft:8,paddingRight:8},e.createElement(ct.m,null,e.createElement(ct.O,null,c({id:"Settings.application.customization.modal.upload.from-computer",defaultMessage:"From computer"})),e.createElement(ct.O,null,c({id:"Settings.application.customization.modal.upload.from-url",defaultMessage:"From url"}))),e.createElement(Xt.i,null)),e.createElement(mt.n,null,e.createElement(mt.x,null,e.createElement(oe,{onClose:i,setLocalImage:a,goTo:n,next:s})),e.createElement(mt.x,null,e.createElement(le,{onClose:i,setLocalImage:a,goTo:n,next:s}))))};ht.defaultProps={next:null},ht.propTypes={goTo:o().func.isRequired,next:o().string,onClose:o().func.isRequired,setLocalImage:o().func.isRequired};var re=ht,de=t(42466),ce=t(20853),me=t(2800),ge=t(26835),ue=t(41048),Ot=t(37083),pe=t(11505);const It=({asset:a})=>{const{formatMessage:n}=(0,d.Z)();return e.createElement(de.Z,null,e.createElement(ce.O,null,e.createElement(me.H,{size:"S",src:a.url})),e.createElement(ge.e,null,e.createElement(ue.a,null,e.createElement(Ot.l,null,a.name),e.createElement(Ot._,null,`${a.ext.toUpperCase()} - ${a.width}\u2715${a.height}`)),e.createElement(pe.E,null,n({id:"Settings.application.customization.modal.pending.card-badge",defaultMessage:"image"}))))};It.propTypes={asset:o().shape({name:o().string,url:o().string,width:o().number,height:o().number,ext:o().string}).isRequired};var he=It;const Et=({onClose:a,asset:n,prev:s,next:i,goTo:c,setLocalImage:f,onChangeLogo:L})=>{const{formatMessage:E}=(0,d.Z)(),p=()=>{f(void 0),c(s)},r=()=>{L(n),c(i)};return e.createElement(e.Fragment,null,e.createElement(G.x,{paddingLeft:8,paddingRight:8,paddingTop:6,paddingBottom:6},e.createElement(F.k,{justifyContent:"space-between",paddingBottom:6},e.createElement(F.k,{direction:"column",alignItems:"flex-start"},e.createElement(P.Z,{variant:"pi",fontWeight:"bold"},E({id:"Settings.application.customization.modal.pending.title",defaultMessage:"Logo ready to upload"})),e.createElement(P.Z,{variant:"pi",textColor:"neutral500"},E({id:"Settings.application.customization.modal.pending.subtitle",defaultMessage:"Manage the chosen logo before uploading it"}))),e.createElement(j.z,{onClick:p,variant:"secondary"},E({id:"Settings.application.customization.modal.pending.choose-another",defaultMessage:"Choose another logo"}))),e.createElement(G.x,{maxWidth:(0,l.Q1)(180)},n.url?e.createElement(he,{asset:n}):null)),e.createElement(gt.m,{startActions:e.createElement(j.z,{onClick:a,variant:"tertiary"},E({id:"Settings.application.customization.modal.cancel",defaultMessage:"Cancel"})),endActions:e.createElement(j.z,{onClick:r},E({id:"Settings.application.customization.modal.pending.upload",defaultMessage:"Upload logo"}))}))};Et.defaultProps={next:null,prev:null},Et.propTypes={goTo:o().func.isRequired,asset:o().shape({name:o().string,url:o().string,width:o().number,height:o().number,ext:o().string}).isRequired,next:o().string,onClose:o().func.isRequired,onChangeLogo:o().func.isRequired,prev:o().string,setLocalImage:o().func.isRequired};var Ee=Et,fe={upload:{Component:re,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 ft=({canUpdate:a,customLogo:n,defaultLogo:s,hint:i,label:c,onChangeLogo:f,onResetLogo:L})=>{const[{currentStep:E},p]=(0,e.useReducer)(Qt,Rt),{Component:r,next:O,prev:x,modalTitle:D}=fe[E]||{},{formatMessage:A}=(0,d.Z)(),K=H=>{p({type:"GO_TO",to:H})};return e.createElement(e.Fragment,null,e.createElement(Zt.F,{label:c,selectedSlide:0,hint:i,previousLabel:"",nextLabel:"",onNext:()=>{},onPrevious:()=>{},secondaryLabel:n?.name||"logo.png",actions:e.createElement(Ft.b,null,e.createElement(St.h,{disabled:!a,onClick:()=>K(n?"pending":"upload"),label:A({id:"Settings.application.customization.carousel.change-action",defaultMessage:"Change logo"}),icon:e.createElement(Kt.Z,null)}),n&&e.createElement(St.h,{disabled:!a,onClick:L,label:A({id:"Settings.application.customization.carousel.reset-action",defaultMessage:"Reset logo"}),icon:e.createElement($t.Z,null)}))},e.createElement(Wt.q,{label:A({id:"Settings.application.customization.carousel-slide.label",defaultMessage:"Logo slide"})},e.createElement(G.x,{maxHeight:"40%",maxWidth:"40%",as:"img",src:n?.url||s,alt:A({id:"Settings.application.customization.carousel.title",defaultMessage:"Logo"})}))),e.createElement(Vt,{Component:r,currentStep:E,onChangeLogo:f,customLogo:n,goTo:K,next:O,prev:x,modalTitle:D}))};ft.defaultProps={canUpdate:!1,customLogo:null,hint:null},ft.propTypes={canUpdate:o().bool,customLogo:o().shape({url:o().string,name:o().string}),label:o().string.isRequired,hint:o().string,defaultLogo:o().string.isRequired,onChangeLogo:o().func.isRequired,onResetLogo:o().func.isRequired};var Dt=ft,ve=t(86349),xe=t.n(ve),Me=(a,n)=>xe()(a,{menuLogo:{display:n.menuLogo},authLogo:{display:n.authLogo}});const vt={menuLogo:{display:null,submit:{rawFile:null,isReset:!1}},authLogo:{display:null,submit:{rawFile:null,isReset:!1}}};var Ce=(a=vt,n)=>(0,rt.ZP)(a,s=>{switch(n.type){case"SET_CUSTOM_MENU_LOGO":{s.menuLogo.display=n.value,s.menuLogo.submit.rawFile=n.value.rawFile;break}case"SET_CUSTOM_AUTH_LOGO":{s.authLogo.display=n.value,s.authLogo.submit.rawFile=n.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}});const xt=(0,e.forwardRef)(({canUpdate:a,projectSettingsStored:n},s)=>{const{formatMessage:i}=(0,d.Z)(),{trackUsage:c}=(0,l.rS)(),{logos:{menu:f,auth:L}}=(0,g.um)(),[{menuLogo:E,authLogo:p},r]=(0,e.useReducer)(Ce,vt,()=>Me(vt,n)),O=K=>{r({type:"SET_CUSTOM_MENU_LOGO",value:K})},x=()=>{c("didClickResetLogo",{logo:"menu"}),r({type:"RESET_CUSTOM_MENU_LOGO"})},D=K=>{r({type:"SET_CUSTOM_AUTH_LOGO",value:K})},A=()=>{c("didClickResetLogo",{logo:"auth"}),r({type:"RESET_CUSTOM_AUTH_LOGO"})};return(0,e.useImperativeHandle)(s,()=>({getValues:()=>({menuLogo:E.submit,authLogo:p.submit})})),e.createElement(G.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:k,size:tt})),e.createElement(at.r,{paddingTop:4,gap:4},e.createElement(Y.P,{col:6,s:12},e.createElement(Dt,{canUpdate:a,customLogo:E.display,defaultLogo:f.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:O,onResetLogo:x})),e.createElement(Y.P,{col:6,s:12},e.createElement(Dt,{canUpdate:a,customLogo:p.display,defaultLogo:L.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:D,onResetLogo:A}))))});xt.defaultProps={canUpdate:!1,projectSettingsStored:null},xt.propTypes={canUpdate:o().bool,projectSettingsStored:o().shape({menuLogo:o().shape({url:o().string,name:o().string})})};var Le=xt,Se=t(48344),ye=t.n(Se),At=a=>ye()(a,(n,s,i)=>{s&&s.url?n[i]={...s,url:(0,l.CR)(s.url)}:n[i]=s},{});const Re=async()=>{const{get:a}=(0,l.tg)(),{data:n}=await a("/admin/project-settings");return At(n)},Te=async a=>{const{post:n}=(0,l.tg)(),{data:s}=await n("/admin/project-settings",a,{headers:{"Content-Type":"multipart/form-data"}});return At(s)};var Pe=a=>{const n=new FormData;return Object.entries(a).forEach(([s,i])=>{i&&i.rawFile instanceof File&&n.append(s,i.rawFile),i&&i.isReset&&n.append(s,null)}),n};const Oe=(()=>window&&window.strapi&&window.strapi.isEE?t(78999).Z:t(17891).Z)();var Ie=()=>{const a=(0,e.useRef)(),n=(0,l.lm)(),{trackUsage:s}=(0,l.rS)(),{formatMessage:i}=(0,d.Z)(),c=(0,lt.useQueryClient)();(0,l.go)();const{communityEdition:f,latestStrapiReleaseTag:L,nodeVersion:E,shouldUpdateStrapi:p,strapiVersion:r}=(0,l.L7)(),{updateProjectSettings:O}=(0,g.um)(),x=(0,jt.v9)(zt._),{allowedActions:{canRead:D,canUpdate:A}}=(0,l.ss)(x.settings["project-settings"]),K=D&&A,{data:H,isLoading:b}=(0,lt.useQuery)("project-settings",Re,{enabled:D}),Ae=(0,lt.useMutation)(et=>Te(et),{async onSuccess(et){let{menuLogo:ot,authLogo:Mt}=et;await c.invalidateQueries("project-settings",{refetchActive:!0}),O({menuLogo:ot?.url,authLogo:Mt?.url})}}),Ue=et=>{if(et.preventDefault(),!A)return;const ot=a.current.getValues(),Mt=Pe(ot);Ae.mutate(Mt,{onSuccess(){const{menuLogo:Be,authLogo:je}=ot;Be.rawFile&&s("didChangeLogo",{logo:"menu"}),je.rawFile&&s("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(m.A,null,e.createElement(l.SL,{name:"Application"}),e.createElement(q.o,null,b?e.createElement(nt.a,null,i({id:"Settings.application.isLoading",defaultMessage:"Loading"})):e.createElement("form",{onSubmit:Ue},e.createElement(it.T,{title:i({id:"Settings.application.title",defaultMessage:"Overview"}),subtitle:i({id:"Settings.application.description",defaultMessage:"Administration panel\u2019s global information"}),primaryAction:K&&e.createElement(j.z,{type:"submit",startIcon:e.createElement(Bt.Z,null)},i({id:"global.save",defaultMessage:"Save"}))}),e.createElement(_.D,null,e.createElement(F.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(F.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(at.r,{gap:5,as:"dl"},e.createElement(Y.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(F.k,{gap:3,direction:"column",alignItems:"start",as:"dd"},e.createElement(P.Z,null,"v",r),p&&e.createElement(W.r,{href:`https://github.com/strapi/strapi/releases/tag/${L}`,isExternal:!0,endIcon:e.createElement(Ct.Z,null)},i({id:"Settings.application.link-upgrade",defaultMessage:"Upgrade your admin panel"})))),e.createElement(Y.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(F.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:f})),e.createElement(W.r,{href:"https://strapi.io/pricing-self-hosted",isExternal:!0,endIcon:e.createElement(Ct.Z,null)},i({id:"Settings.application.link-pricing",defaultMessage:"See all pricing plans"})))),e.createElement(Y.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"},E)),e.createElement(Oe,null))),D&&H&&e.createElement(Le,{canUpdate:A,ref:a,projectSettingsStored:H}))))))};function Ut(){const{settingId:a}=(0,u.UO)(),{settings:n}=(0,l.j1)(),{formatMessage:s}=(0,d.Z)(),{isLoading:i,menu:c}=(0,g.Te)(),f=(0,C.c)(X,async()=>(await t.e(7018).then(t.bind(t,97018))).ROUTES_EE,{combine(r,O){return[...r,...O]},defaultValue:[]}),L=(0,e.useMemo)(()=>(0,R.WW)(f.map(({to:r,Component:O,exact:x})=>(0,R.ot)(O,r,x))),[f]),E=Q(n);if(i)return e.createElement(l.dO,null);if(!a)return e.createElement(u.l_,{to:"/settings/application-infos"});const p=s({id:"global.settings",defaultMessage:"Settings"});return e.createElement(m.A,{sideNav:e.createElement(st,{menu:c})},e.createElement(h.q,{title:p}),e.createElement(u.rs,null,e.createElement(u.AW,{path:"/settings/application-infos",component:Ie,exact:!0}),L,E))}var De=(0,e.memo)(Ut)},17891:function(U,v){"use strict";const t=()=>null;v.Z=t},78999:function(U,v,t){"use strict";var e=t(32735),m=t(5803),l=t(49372),h=t(87933),d=t(63919),u=t(99140),g=t(41502),C=t(19565),R=t(69932),z=t(47361),Z=t(67879),$=t(58414);const M="https://cloud.strapi.io/profile/billing",B="https://strapi.io/billing/request-seats",S=()=>{const{formatMessage:o}=(0,Z.Z)(),{license:{licenseLimitStatus:y,enforcementUserCount:T,permittedSeats:I,isHostedOnStrapiCloud:V},isError:Q,isLoading:J}=(0,$.q5)();return Q||J||!I?null:e.createElement(m.P,{col:6,s:12},e.createElement(l.Z,{variant:"sigma",textColor:"neutral600"},o({id:"Settings.application.admin-seats",defaultMessage:"Admin seats"})),e.createElement(h.k,{gap:2},e.createElement(h.k,null,e.createElement(l.Z,{as:"p"},o({id:"Settings.application.ee.admin-seats.count",defaultMessage:"<text>{enforcementUserCount}</text>/{permittedSeats}"},{permittedSeats:I,enforcementUserCount:T,text:N=>e.createElement(l.Z,{fontWeight:"semiBold",textColor:T>I?"danger500":null},N)}))),y==="OVER_LIMIT"&&e.createElement(d.u,{description:o({id:"Settings.application.ee.admin-seats.at-limit-tooltip",defaultMessage:"At limit: add seats to invite more users"})},e.createElement(u.J,{width:`${(0,C.Q1)(14)}rem`,height:`${(0,C.Q1)(14)}rem`,color:"danger500",as:R.Z}))),e.createElement(g.r,{href:V?M:B,isExternal:!0,endIcon:e.createElement(z.Z,null)},o({id:"Settings.application.ee.admin-seats.add-seats",defaultMessage:"{isHostedOnStrapiCloud, select, true {Add seats} other {Contact sales}}"},{isHostedOnStrapiCloud:V})))};v.Z=S},3704:function(U,v,t){var e=t(40314),m=t(37213);function l(h,d){return e(m(h,d),1)}U.exports=l},37213:function(U,v,t){var e=t(26460),m=t(88904),l=t(52920),h=t(77236);function d(u,g){var C=h(u)?e:l;return C(u,m(g,3))}U.exports=d},96709:function(U,v,t){"use strict";t.d(v,{A:function(){return u}});var e=t(74512),m=t(8471),l=t(72850);const h=(0,m.ZP)(l.x)`
10
10
  display: grid;
11
- grid-template-columns: ${({hasSideNav:u})=>u?"auto 1fr":"1fr"};
11
+ grid-template-columns: ${({hasSideNav:g})=>g?"auto 1fr":"1fr"};
12
12
  `,d=(0,m.ZP)(l.x)`
13
13
  overflow-x: hidden;
14
- `,g=({sideNav:u,children:C})=>(0,e.jsxs)(h,{hasSideNav:!!u,children:[u,(0,e.jsx)(d,{paddingBottom:10,children:C})]})},90700:function(A,v,t){"use strict";t.d(v,{m:function(){return g}});var e=t(74512),m=t(8471),l=t(15335);const h=`${232/16}rem`,d=(0,m.ZP)(l.r)`
14
+ `,u=({sideNav:g,children:C})=>(0,e.jsxs)(h,{hasSideNav:!!g,children:[g,(0,e.jsx)(d,{paddingBottom:10,children:C})]})},90700:function(U,v,t){"use strict";t.d(v,{m:function(){return u}});var e=t(74512),m=t(8471),l=t(15335);const h=`${232/16}rem`,d=(0,m.ZP)(l.r)`
15
15
  width: ${h};
16
- background: ${({theme:u})=>u.colors.neutral100};
16
+ background: ${({theme:g})=>g.colors.neutral100};
17
17
  position: sticky;
18
18
  top: 0;
19
19
  height: 100vh;
20
20
  overflow-y: auto;
21
- border-right: 1px solid ${({theme:u})=>u.colors.neutral200};
21
+ border-right: 1px solid ${({theme:g})=>g.colors.neutral200};
22
22
  z-index: 1;
23
- `,g=({ariaLabel:u,...C})=>(0,e.jsx)(d,{"aria-label":u,as:"nav",...C})},78090:function(A,v,t){"use strict";t.d(v,{p:function(){return o}});var e=t(74512),m=t(32735),l=t(6792),h=t(8471),d=t(94486),g=t(74971);const u=y=>{const P=(0,m.useRef)();return(0,m.useEffect)(()=>{P.current=y}),P.current};var C=t(9026),R=t(72850),z=t(89252),Z=t(61774),$=t(87933),M=t(49372),U=t(50563);const S=(0,h.ZP)(C.i)`
23
+ `,u=({ariaLabel:g,...C})=>(0,e.jsx)(d,{"aria-label":g,as:"nav",...C})},78090:function(U,v,t){"use strict";t.d(v,{p:function(){return o}});var e=t(74512),m=t(32735),l=t(6792),h=t(8471),d=t(94486),u=t(74971);const g=y=>{const T=(0,m.useRef)();return(0,m.useEffect)(()=>{T.current=y}),T.current};var C=t(9026),R=t(72850),z=t(89252),Z=t(61774),$=t(87933),M=t(49372),B=t(50563);const S=(0,h.ZP)(C.i)`
24
24
  width: ${24/16}rem;
25
25
  background-color: ${({theme:y})=>y.colors.neutral200};
26
- `,o=({as:y="h2",label:P,searchLabel:B="",searchable:N=!1,onChange:V=()=>{},value:Q="",onClear:J=()=>{},onSubmit:w=()=>{},id:st})=>{const[X,q]=(0,m.useState)(!1),nt=u(X),it=(0,g.M)(st),j=(0,m.useRef)(void 0),_=(0,m.useRef)(void 0);(0,m.useEffect)(()=>{X&&j.current&&j.current.focus(),nt&&!X&&_.current&&_.current.focus()},[X,nt]);const F=()=>{q(W=>!W)},T=W=>{J(W),j.current.focus()},at=W=>{W.relatedTarget?.id!==it&&q(!1)},Y=W=>{W.key===d.y.ESCAPE&&q(!1)};return X?(0,e.jsxs)(R.x,{paddingLeft:4,paddingTop:5,paddingBottom:2,paddingRight:4,children:[(0,e.jsx)(z.U,{children:(0,e.jsx)(Z.w,{name:"searchbar",value:Q,onChange:V,placeholder:"e.g: strapi-plugin-abcd",onKeyDown:Y,ref:j,onBlur:at,onClear:T,onSubmit:w,clearLabel:"Clear",size:"S",children:B})}),(0,e.jsx)(R.x,{paddingLeft:2,paddingTop:4,children:(0,e.jsx)(S,{})})]}):(0,e.jsxs)(R.x,{paddingLeft:6,paddingTop:6,paddingBottom:2,paddingRight:4,children:[(0,e.jsxs)($.k,{justifyContent:"space-between",alignItems:"flex-start",children:[(0,e.jsx)(M.Z,{variant:"beta",as:y,children:P}),N&&(0,e.jsx)(U.h,{ref:_,onClick:F,label:B,icon:(0,e.jsx)(l.Z,{})})]}),(0,e.jsx)(R.x,{paddingTop:4,children:(0,e.jsx)(S,{})})]})}},66618:function(A,v,t){"use strict";t.d(v,{E:function(){return $}});var e=t(74512),m=t(32735),l=t(56243),h=t(8471),d=t(72850),g=t(49372),u=t(87933),C=t(62499);const R=(0,h.ZP)(d.x)`
26
+ `,o=({as:y="h2",label:T,searchLabel:I="",searchable:V=!1,onChange:Q=()=>{},value:J="",onClear:N=()=>{},onSubmit:w=()=>{},id:st})=>{const[X,q]=(0,m.useState)(!1),nt=g(X),it=(0,u.M)(st),j=(0,m.useRef)(void 0),_=(0,m.useRef)(void 0);(0,m.useEffect)(()=>{X&&j.current&&j.current.focus(),nt&&!X&&_.current&&_.current.focus()},[X,nt]);const F=()=>{q(W=>!W)},P=W=>{N(W),j.current.focus()},at=W=>{W.relatedTarget?.id!==it&&q(!1)},Y=W=>{W.key===d.y.ESCAPE&&q(!1)};return X?(0,e.jsxs)(R.x,{paddingLeft:4,paddingTop:5,paddingBottom:2,paddingRight:4,children:[(0,e.jsx)(z.U,{children:(0,e.jsx)(Z.w,{name:"searchbar",value:J,onChange:Q,placeholder:"e.g: strapi-plugin-abcd",onKeyDown:Y,ref:j,onBlur:at,onClear:P,onSubmit:w,clearLabel:"Clear",size:"S",children:I})}),(0,e.jsx)(R.x,{paddingLeft:2,paddingTop:4,children:(0,e.jsx)(S,{})})]}):(0,e.jsxs)(R.x,{paddingLeft:6,paddingTop:6,paddingBottom:2,paddingRight:4,children:[(0,e.jsxs)($.k,{justifyContent:"space-between",alignItems:"flex-start",children:[(0,e.jsx)(M.Z,{variant:"beta",as:y,children:T}),V&&(0,e.jsx)(B.h,{ref:_,onClick:F,label:I,icon:(0,e.jsx)(l.Z,{})})]}),(0,e.jsx)(R.x,{paddingTop:4,children:(0,e.jsx)(S,{})})]})}},66618:function(U,v,t){"use strict";t.d(v,{E:function(){return $}});var e=t(74512),m=t(32735),l=t(56243),h=t(8471),d=t(72850),u=t(49372),g=t(87933),C=t(62499);const R=(0,h.ZP)(d.x)`
27
27
  display: flex;
28
28
  align-items: center;
29
29
  justify-content: space-between;
@@ -40,7 +40,7 @@
40
40
  svg > * {
41
41
  fill: ${M.colors.primary700};
42
42
  }
43
- ${g.Z} {
43
+ ${u.Z} {
44
44
  color: ${M.colors.primary700};
45
45
  font-weight: 500;
46
46
  }
@@ -54,14 +54,14 @@
54
54
  width: ${12/16}rem;
55
55
  height: ${4/16}rem;
56
56
  * {
57
- fill: ${({theme:M,$active:U})=>U?M.colors.primary600:M.colors.neutral600};
57
+ fill: ${({theme:M,$active:B})=>B?M.colors.primary600:M.colors.neutral600};
58
58
  }
59
59
  `,Z=h.ZP.div`
60
60
  svg {
61
61
  height: ${12/16}rem;
62
62
  width: ${12/16}rem;
63
63
  }
64
- `,$=m.forwardRef(({children:M,icon:U=null,withBullet:S=!1,as:o=C.f,isSubSectionChild:y=!1,...P},B)=>(0,e.jsxs)(R,{as:o,icon:U,background:"neutral100",paddingLeft:y?9:7,paddingBottom:2,paddingTop:2,ref:B,...P,children:[(0,e.jsxs)(u.k,{children:[U?(0,e.jsx)(Z,{children:U}):(0,e.jsx)(z,{}),(0,e.jsx)(d.x,{paddingLeft:2,children:(0,e.jsx)(g.Z,{as:"span",children:M})})]}),S&&(0,e.jsx)(d.x,{as:u.k,paddingRight:4,children:(0,e.jsx)(z,{$active:!0})})]}))},79318:function(A,v,t){"use strict";t.d(v,{D:function(){return U}});var e=t(74512),m=t(32735),l=t(8471),h=t(16899),d=t(87933),g=t(72850),u=t(49372);const C=(0,l.ZP)(d.k)`
64
+ `,$=m.forwardRef(({children:M,icon:B=null,withBullet:S=!1,as:o=C.f,isSubSectionChild:y=!1,...T},I)=>(0,e.jsxs)(R,{as:o,icon:B,background:"neutral100",paddingLeft:y?9:7,paddingBottom:2,paddingTop:2,ref:I,...T,children:[(0,e.jsxs)(g.k,{children:[B?(0,e.jsx)(Z,{children:B}):(0,e.jsx)(z,{}),(0,e.jsx)(d.x,{paddingLeft:2,children:(0,e.jsx)(u.Z,{as:"span",children:M})})]}),S&&(0,e.jsx)(d.x,{as:g.k,paddingRight:4,children:(0,e.jsx)(z,{$active:!0})})]}))},79318:function(U,v,t){"use strict";t.d(v,{D:function(){return B}});var e=t(74512),m=t(32735),l=t(8471),h=t(16899),d=t(87933),u=t(72850),g=t(49372);const C=(0,l.ZP)(d.k)`
65
65
  border: none;
66
66
  padding: 0;
67
67
  background: transparent;
@@ -69,11 +69,11 @@
69
69
  display: flex;
70
70
  align-items: center;
71
71
  transform: rotateX(${({rotated:S})=>S?"0deg":"180deg"});
72
- `,z=({collapsable:S=!1,label:o,onClick:y=()=>{},ariaExpanded:P,ariaControls:B})=>S?(0,e.jsxs)(C,{as:"button",onClick:y,"aria-expanded":P,"aria-controls":B,textAlign:"left",children:[(0,e.jsx)(g.x,{paddingRight:1,children:(0,e.jsx)(u.Z,{variant:"sigma",textColor:"neutral600",children:o})}),S&&(0,e.jsx)(R,{rotated:P,children:(0,e.jsx)(h.Z,{"aria-hidden":!0})})]}):(0,e.jsx)(C,{children:(0,e.jsx)(g.x,{paddingRight:1,children:(0,e.jsx)(u.Z,{variant:"sigma",textColor:"neutral600",children:o})})});var Z=t(74971),$=t(6518);const M=(0,l.ZP)(g.x)`
72
+ `,z=({collapsable:S=!1,label:o,onClick:y=()=>{},ariaExpanded:T,ariaControls:I})=>S?(0,e.jsxs)(C,{as:"button",onClick:y,"aria-expanded":T,"aria-controls":I,textAlign:"left",children:[(0,e.jsx)(u.x,{paddingRight:1,children:(0,e.jsx)(g.Z,{variant:"sigma",textColor:"neutral600",children:o})}),S&&(0,e.jsx)(R,{rotated:T,children:(0,e.jsx)(h.Z,{"aria-hidden":!0})})]}):(0,e.jsx)(C,{children:(0,e.jsx)(u.x,{paddingRight:1,children:(0,e.jsx)(g.Z,{variant:"sigma",textColor:"neutral600",children:o})})});var Z=t(74971),$=t(6518);const M=(0,l.ZP)(u.x)`
73
73
  svg {
74
74
  height: ${4/16}rem;
75
75
  path {
76
76
  fill: ${({theme:S})=>S.colors.neutral500};
77
77
  }
78
78
  }
79
- `,U=({collapsable:S=!1,label:o,badgeLabel:y,children:P,id:B})=>{const[N,V]=(0,m.useState)(!0),Q=(0,Z.M)(B);return(0,e.jsxs)(d.k,{direction:"column",alignItems:"stretch",gap:1,children:[(0,e.jsx)(M,{paddingLeft:6,paddingTop:2,paddingBottom:2,paddingRight:4,children:(0,e.jsxs)(g.x,{position:"relative",paddingRight:y?6:0,children:[(0,e.jsx)(z,{onClick:()=>{V(J=>!J)},ariaExpanded:N,ariaControls:Q,collapsable:S,label:o}),y&&(0,e.jsx)($.C,{backgroundColor:"neutral150",textColor:"neutral600",position:"absolute",right:0,top:"50%",transform:"translateY(-50%)",children:y})]})}),(!S||N)&&(0,e.jsx)("ol",{id:Q,children:m.Children.map(P,(J,w)=>(0,e.jsx)("li",{children:J},w))})]})}},77013:function(A,v,t){"use strict";t.d(v,{Z:function(){return d}});var e=t(74512),m=t(32735),l=t(72850),h=t(87933);const d=({children:g,spacing:u=2,horizontal:C=!1,...R})=>(0,e.jsx)(l.x,{paddingTop:2,paddingBottom:4,children:(0,e.jsx)(h.k,{as:"ol",gap:u,direction:C?"row":"column",alignItems:C?"center":"stretch",...R,children:m.Children.map(g,(z,Z)=>(0,e.jsx)("li",{children:z},Z))})})},56243:function(A,v,t){"use strict";t.d(v,{Z:function(){return l}});var e=t(74512);const m=h=>(0,e.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1rem",height:"1rem",fill:"none",viewBox:"0 0 4 4",...h,children:(0,e.jsx)("rect",{width:4,height:4,fill:"#A5A5BA",rx:2})}),l=m}}]);
79
+ `,B=({collapsable:S=!1,label:o,badgeLabel:y,children:T,id:I})=>{const[V,Q]=(0,m.useState)(!0),J=(0,Z.M)(I);return(0,e.jsxs)(d.k,{direction:"column",alignItems:"stretch",gap:1,children:[(0,e.jsx)(M,{paddingLeft:6,paddingTop:2,paddingBottom:2,paddingRight:4,children:(0,e.jsxs)(u.x,{position:"relative",paddingRight:y?6:0,children:[(0,e.jsx)(z,{onClick:()=>{Q(N=>!N)},ariaExpanded:V,ariaControls:J,collapsable:S,label:o}),y&&(0,e.jsx)($.C,{backgroundColor:"neutral150",textColor:"neutral600",position:"absolute",right:0,top:"50%",transform:"translateY(-50%)",children:y})]})}),(!S||V)&&(0,e.jsx)("ol",{id:J,children:m.Children.map(T,(N,w)=>(0,e.jsx)("li",{children:N},w))})]})}},77013:function(U,v,t){"use strict";t.d(v,{Z:function(){return d}});var e=t(74512),m=t(32735),l=t(72850),h=t(87933);const d=({children:u,spacing:g=2,horizontal:C=!1,...R})=>(0,e.jsx)(l.x,{paddingTop:2,paddingBottom:4,children:(0,e.jsx)(h.k,{as:"ol",gap:g,direction:C?"row":"column",alignItems:C?"center":"stretch",...R,children:m.Children.map(u,(z,Z)=>(0,e.jsx)("li",{children:z},Z))})})},56243:function(U,v,t){"use strict";t.d(v,{Z:function(){return l}});var e=t(74512);const m=h=>(0,e.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1rem",height:"1rem",fill:"none",viewBox:"0 0 4 4",...h,children:(0,e.jsx)("rect",{width:4,height:4,fill:"#A5A5BA",rx:2})}),l=m}}]);
@@ -0,0 +1,61 @@
1
+ (self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5538],{33335:function(B,v,t){"use strict";t.r(v),t.d(v,{default:function(){return Ds}});var e=t(32735),p=t(12301),y=t(65810),E=t(56784),c=t.n(E),m=t(93839),A=t.n(m),M=t(86349),L=t.n(M),x=t(88423),O=t.n(x),b=t(74758),S=t(14911),R=t(47750),T="strapi-admin-language",r=t(19565),F=t(60216),a=t.n(F),G=t(20108),te=t(15062),D=t(66694),I=t(97889);const se={menuLogo:null,authLogo:null};var Te=(o=se,s)=>(0,I.ZP)(o,n=>{switch(s.type){case"UPDATE_PROJECT_SETTINGS":{Object.assign(n,s.values);break}default:return n}});const ge=({children:o,authLogo:s,menuLogo:n,showReleaseNotification:i,showTutorials:l})=>{const[{menuLogo:h,authLogo:f},P]=(0,e.useReducer)(Te,se),k=(0,e.useCallback)(({menuLogo:J,authLogo:C})=>P({type:"UPDATE_PROJECT_SETTINGS",values:{menuLogo:J||n,authLogo:C||s}}),[s,n]),w=(0,e.useMemo)(()=>({logos:{menu:{custom:h,default:n},auth:{custom:f,default:s}},updateProjectSettings:k,showReleaseNotification:i,showTutorials:l}),[h,n,f,s,k,i,l]);return e.createElement(D._5.Provider,{value:w},o)};ge.propTypes={authLogo:a().string.isRequired,children:a().element.isRequired,menuLogo:a().string.isRequired,showReleaseNotification:a().bool.isRequired,showTutorials:a().bool.isRequired};var we=ge,ke=t(33795),Se=t.n(ke),ze=t(3040),je=t.n(ze);const et="GUIDED_TOUR_CURRENT_STEP",$e="GUIDED_TOUR_COMPLETED_STEPS",mt="GUIDED_TOUR_SKIPPED",tt=JSON.parse,Xe=JSON.stringify;var De={clear(){localStorage.removeItem(et),localStorage.removeItem($e)},addCompletedStep(o){const s=tt(localStorage.getItem($e))?.slice()||[];s.includes(o)||(s.push(o),localStorage.setItem($e,Xe(s)))},addCurrentStep(o){localStorage.setItem(et,Xe(o))},setSkipped(o){localStorage.setItem(mt,Xe(o))},get(o){return tt(localStorage.getItem(o))}},gt=o=>{const s={...o},n=De.get($e),i=De.get(et),l=De.get(mt);if(n&&n.forEach(h=>{const[f,P]=h.split(".");je()(s,["guidedTourState",f,P],!0)}),i){const[h,f]=i.split(".");je()(s,["guidedTourState",h,f],!0),De.addCompletedStep(i),De.addCurrentStep(null)}return l!==null&&je()(s,"isSkipped",l),s};const pt={currentStep:null,guidedTourState:{contentTypeBuilder:{create:!1,success:!1},contentManager:{create:!1,success:!1},apiTokens:{create:!1,success:!1}},isGuidedTourVisible:!1,isSkipped:!0};var st=(o=pt,s)=>(0,I.ZP)(o,n=>{switch(s.type){case"SET_CURRENT_STEP":{n.currentStep=s.step;break}case"SET_STEP_STATE":{const[i,l]=s.currentStep.split(".");n.guidedTourState[i][l]=s.value;break}case"SET_SKIPPED":{n.isSkipped=s.value;break}case"SET_GUIDED_TOUR_VISIBILITY":{n.isGuidedTourVisible=s.value;break}default:return n}}),ft=(o,s)=>{const n=Object.entries(s),i=n.findIndex(([h])=>h===o);return n.slice(0,i).every(([,h])=>Object.values(h).every(Boolean))},ht=(o,s)=>{const n=o.split("."),i=n[1],l=Object.entries(s[n[0]]),h=l.findIndex(([P])=>P===i);return l.slice(0,h).every(([,P])=>P)};const nt=({children:o})=>{const[{currentStep:s,guidedTourState:n,isGuidedTourVisible:i,isSkipped:l},h]=(0,e.useReducer)(st,pt,gt),f=C=>{if(C!==null){const ie=Se()(n,C),X=ht(C,n);if(ie||l||!X)return null}return De.addCurrentStep(C),h({type:"SET_CURRENT_STEP",step:C})},P=C=>{h({type:"SET_GUIDED_TOUR_VISIBILITY",value:C})},k=(C,ie)=>{De.addCompletedStep(C),h({type:"SET_STEP_STATE",currentStep:C,value:ie})},w=C=>{const ie=n[C];if(ie){const X=ft(C,n),ce=Object.keys(ie)[0],ee=ie[ce];if(X&&!s&&!ee)return f(`${C}.${ce}`)}return null},J=C=>{De.setSkipped(C),h({type:"SET_SKIPPED",value:C})};return e.createElement(r.Zc,{guidedTourState:n,currentStep:s,setCurrentStep:f,setGuidedTourVisibility:P,setSkipped:J,setStepState:k,startSection:w,isGuidedTourVisible:i,isSkipped:l},o)};nt.propTypes={children:a().element.isRequired};var Et=nt,at=t(58732),Ht=t.n(at),Pt=t(78023),vt=t(5985);const Ze=({changeLocale:o,children:s,localeNames:n})=>e.createElement(vt.Z.Provider,{value:{changeLocale:o,localeNames:n}},s);Ze.propTypes={changeLocale:a().func.isRequired,children:a().element.isRequired,localeNames:a().object.isRequired};var yt=Ze,Rt=o=>{const s=window.localStorage.getItem(T);return{locale:o[s]?s:"en",localeNames:o}};const ot={localeNames:{en:"English"},locale:"en"};var Ct=(o=ot,s)=>{switch(s.type){case"CHANGE_LOCALE":{const{locale:n}=s;return o.localeNames[n]?{...o,locale:n}:o}default:return o}};const Mt=({children:o,localeNames:s,messages:n})=>{const[{locale:i},l]=(0,e.useReducer)(Ct,ot,()=>Rt(s));(0,e.useEffect)(()=>{window.localStorage.setItem(T,i),document.documentElement.setAttribute("lang",i)},[i]);const h=P=>{l({type:"CHANGE_LOCALE",locale:P})},f=Ht()(n[i],n.en);return e.createElement(Pt.Z,{locale:i,defaultLocale:"en",messages:f,textComponent:"span"},e.createElement(yt,{changeLocale:h,localeNames:s},o))};Mt.propTypes={children:a().element.isRequired,localeNames:a().objectOf(a().string).isRequired,messages:a().object.isRequired};var Lt=Mt,St=t(24854),Ie=t(67879),Dt=t(10328),Be=t(8471),It=(0,Be.vJ)`
2
+ body {
3
+ background: ${({theme:o})=>o.colors.neutral100};
4
+ }
5
+ `;const Ot=({children:o})=>{const{currentTheme:s,themes:n}=(0,Dt.M1)(),{locale:i}=(0,Ie.Z)();return e.createElement(St.h,{locale:i,theme:n[s]||n.light},o,e.createElement(It,null))};Ot.propTypes={children:a().element.isRequired};var bt=Ot;const rt="STRAPI_THEME",Ut=()=>{const o=window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light",s=localStorage.getItem(rt);return s||localStorage.setItem(rt,o),s||o},kt=({children:o,themes:s})=>{const[n,i]=(0,e.useState)(Ut()),l=(0,e.useCallback)(f=>{i(f),localStorage.setItem(rt,f)},[i]),h=(0,e.useMemo)(()=>({currentTheme:n,onChangeTheme:l,themes:s}),[n,l,s]);return e.createElement(D.Rj.Provider,{value:h},o)};kt.propTypes={children:a().node.isRequired,themes:a().shape({light:a().shape({colors:a().object.isRequired,shadows:a().object.isRequired,sizes:a().object.isRequired,zIndices:a().array.isRequired,spaces:a().array.isRequired,borderRadius:a().string.isRequired,mediaQueries:a().object.isRequired,fontSizes:a().array.isRequired,lineHeights:a().array.isRequired,fontWeights:a().object.isRequired}).isRequired,dark:a().shape({colors:a().object.isRequired,shadows:a().object.isRequired,sizes:a().object.isRequired,zIndices:a().array.isRequired,spaces:a().array.isRequired,borderRadius:a().string.isRequired,mediaQueries:a().object.isRequired,fontSizes:a().array.isRequired,lineHeights:a().array.isRequired,fontWeights:a().object.isRequired}).isRequired,custom:a().object}).isRequired};var jt=kt;const g=new G.QueryClient({defaultOptions:{queries:{refetchOnWindowFocus:!1}}}),d=({authLogo:o,children:s,components:n,customFields:i,fields:l,getAdminInjectedComponents:h,getPlugin:f,localeNames:P,menu:k,menuLogo:w,messages:J,plugins:C,runHookParallel:ie,runHookSeries:X,runHookWaterfall:ce,settings:ee,showReleaseNotification:K,showTutorials:Fe,store:Ge,themes:ne})=>e.createElement(Lt,{messages:J,localeNames:P},e.createElement(jt,{themes:ne},e.createElement(bt,null,e.createElement(G.QueryClientProvider,{client:g},e.createElement(te.zt,{store:Ge},e.createElement(D.ux.Provider,{value:{getAdminInjectedComponents:h}},e.createElement(we,{authLogo:o,menuLogo:w,showReleaseNotification:K,showTutorials:Fe},e.createElement(r._Y,{getPlugin:f,menu:k,plugins:C,runHookParallel:ie,runHookWaterfall:ce,runHookSeries:X,settings:ee},e.createElement(r.rt,{components:n,fields:l},e.createElement(r.MG,{customFields:i},e.createElement(r.m$,null,e.createElement(r.w7,null,e.createElement(Et,null,e.createElement(r.N$,null,s))))))))))))));d.propTypes={authLogo:a().oneOfType([a().string,a().any]).isRequired,children:a().element.isRequired,components:a().object.isRequired,customFields:a().object.isRequired,fields:a().object.isRequired,getAdminInjectedComponents:a().func.isRequired,getPlugin:a().func.isRequired,localeNames:a().objectOf(a().string).isRequired,menu:a().arrayOf(a().shape({to:a().string.isRequired,icon:a().func.isRequired,intlLabel:a().shape({id:a().string.isRequired,defaultMessage:a().string.isRequired}).isRequired,permissions:a().array,Component:a().func})).isRequired,menuLogo:a().oneOfType([a().string,a().any]).isRequired,messages:a().object.isRequired,plugins:a().object.isRequired,runHookParallel:a().func.isRequired,runHookWaterfall:a().func.isRequired,runHookSeries:a().func.isRequired,settings:a().object.isRequired,showReleaseNotification:a().bool.isRequired,showTutorials:a().bool.isRequired,store:a().object.isRequired,themes:a().shape({light:a().shape({colors:a().object.isRequired,shadows:a().object.isRequired,sizes:a().object.isRequired,zIndices:a().array.isRequired,spaces:a().array.isRequired,borderRadius:a().string.isRequired,mediaQueries:a().object.isRequired,fontSizes:a().array.isRequired,lineHeights:a().array.isRequired,fontWeights:a().object.isRequired}).isRequired,dark:a().shape({colors:a().object.isRequired,shadows:a().object.isRequired,sizes:a().object.isRequired,zIndices:a().array.isRequired,spaces:a().array.isRequired,borderRadius:a().string.isRequired,mediaQueries:a().object.isRequired,fontSizes:a().array.isRequired,lineHeights:a().array.isRequired,fontWeights:a().object.isRequired}).isRequired,custom:a().object}).isRequired};var u=d,U=t(20284),j=t(6680);const N=(o,s)=>{let n=j.compose;const i=[];o.forEach(h=>{i.push(h())});const l=(0,j.createStore)(V(s,{}),{},n((0,j.applyMiddleware)(...i)));return l.asyncReducers={},l.injectReducer=(h,f)=>{l.asyncReducers[h]=f,l.replaceReducer(V(s,l.asyncReducers))},l},V=(o,s)=>(0,j.combineReducers)({...o,...s});var H=N,q=t(78246),z=()=>{const o=[];return{register(s){o.push(s)},delete(s){o.splice(o.indexOf(s),1)},runWaterfall(s,n){return o.reduce((i,l)=>l(i,n),s)},async runWaterfallAsync(s,n){let i=s;for(const l of o)i=await l(i,n);return i},runSeries(...s){return o.map(n=>n(...s))},async runSeriesAsync(...s){const n=[];for(const i of o)n.push(await i(...s));return n},runParallel(...s){return Promise.all(o.map(n=>n(...s)))}}},Ee=t(46339),Oe="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAXVBMVEUAAABIRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9IRP9JRf9IRf9IRP5IRP5JRP9JRf////+Vk/+zsv++vf9mY/9taf9/fP+Jh//c3P9RTf/Ibar2AAAAFHRSTlMA/MJX+fPt48cahaff1dMaGqcahSpTPmAAAAEvSURBVFjD7dfNTsMwEATgXcf5cdKEtixtcYH3f0xEibIguba1g8Slc+58iqUedmhNaMbJzX3Xema5G2bfdv3iprE50s80g7Yqw0Oz1Z+cmOL2a38nxuy+BSfmuNv7BUhDRAMCDESBEYCDvsD6hmcMGGnCgIkcBjhaMGCmHgN66jCgoxYDWvIY4IkxgHFAkrmeU7kmfpkG4uUllXMtEE82QPs2QPs2QPs2QPs2QPsAoH0DoH0LoH0QeN3ydtnyXg38ok76MQ/gAfwf8JH8V18LQOljomBAFAyIkga4CGT7XAtEuQf4IpDri6e2BoiZA6OrAGLuxOnLQMweWXMRyPVlwQ/NAwZMNGLACJ/76ODYo5MHHl3o7EOHZ6BbjtbpG/5kfOv8P7ilbv7PX/M/rMVPqrI3XI3nd3sAAAAASUVORK5CYII=",_e={admin:{tutorials:{links:[]}},contentManager:{editView:{informations:[],"right-links":[]},listView:{actions:[],deleteModalAdditionalInfos:[],publishModalAdditionalInfos:[],unpublishModalAdditionalInfos:[]}}},xe=t(10728),oe=t(53038);const We=({component:o,path:s,...n})=>{const{pathname:i,search:l}=(0,oe.TH)();return e.createElement(oe.AW,{path:s,render:h=>r.I8.getToken()!==null?e.createElement(o,{...n,...h}):e.createElement(oe.l_,{to:{pathname:"/auth/login",search:i!=="/"&&`?redirectTo=${encodeURIComponent(`${i}${l}`)}`}})})};We.propTypes={component:a().any.isRequired,path:a().string.isRequired};var Ne=(0,e.memo)(We);const Ke={contentManager:{main:[],collectionTypesConfigurations:[{action:"plugin::content-manager.collection-types.configure-view",subject:null}],componentsConfigurations:[{action:"plugin::content-manager.components.configure-layout",subject:null}],singleTypesConfigurations:[{action:"plugin::content-manager.single-types.configure-view",subject:null}]},marketplace:{main:[{action:"admin::marketplace.read",subject:null}],read:[{action:"admin::marketplace.read",subject:null}]},settings:{roles:{main:[{action:"admin::roles.create",subject:null},{action:"admin::roles.update",subject:null},{action:"admin::roles.read",subject:null},{action:"admin::roles.delete",subject:null}],create:[{action:"admin::roles.create",subject:null}],delete:[{action:"admin::roles.delete",subject:null}],read:[{action:"admin::roles.read",subject:null}],update:[{action:"admin::roles.update",subject:null}]},users:{main:[{action:"admin::users.create",subject:null},{action:"admin::users.read",subject:null},{action:"admin::users.update",subject:null},{action:"admin::users.delete",subject:null}],create:[{action:"admin::users.create",subject:null}],delete:[{action:"admin::users.delete",subject:null}],read:[{action:"admin::users.read",subject:null}],update:[{action:"admin::users.update",subject:null}]},webhooks:{main:[{action:"admin::webhooks.create",subject:null},{action:"admin::webhooks.read",subject:null},{action:"admin::webhooks.update",subject:null},{action:"admin::webhooks.delete",subject:null}],create:[{action:"admin::webhooks.create",subject:null}],delete:[{action:"admin::webhooks.delete",subject:null}],read:[{action:"admin::webhooks.read",subject:null},{action:"admin::webhooks.update",subject:null},{action:"admin::webhooks.delete",subject:null}],update:[{action:"admin::webhooks.update",subject:null}]},"api-tokens":{main:[{action:"admin::api-tokens.access",subject:null}],create:[{action:"admin::api-tokens.create",subject:null}],delete:[{action:"admin::api-tokens.delete",subject:null}],read:[{action:"admin::api-tokens.read",subject:null}],update:[{action:"admin::api-tokens.update",subject:null}],regenerate:[{action:"admin::api-tokens.regenerate",subject:null}]},"transfer-tokens":{main:[{action:"admin::transfer.tokens.access",subject:null}],create:[{action:"admin::transfer.tokens.create",subject:null}],delete:[{action:"admin::transfer.tokens.delete",subject:null}],read:[{action:"admin::transfer.tokens.read",subject:null}],update:[{action:"admin::transfer.tokens.update",subject:null}],regenerate:[{action:"admin::transfer.tokens.regenerate",subject:null}]},"project-settings":{read:[{action:"admin::project-settings.read",subject:null}],update:[{action:"admin::project-settings.update",subject:null}]}}};var Pe=t(18782),re=t(8997),pe=t(84306),be=t(39935),qe=t.n(be),ss=t(9086),it=t.n(ss),ns=t(20139),as=t(41832),$=t(24346),Ye=t(27649),ve=t(72850),ye=t(49372),Re=t(87933),He=t(10369),lt=t(41415),wt=t(92802),Qe=t(10190),de=t(954);const Zt=({onSubmit:o,schema:s})=>{const{formatMessage:n}=(0,Ie.Z)();return e.createElement(de.ZP,null,e.createElement(Ye.o,null,e.createElement(de.bU,null,e.createElement(wt.J9,{enableReinitialize:!0,initialValues:{email:""},onSubmit:o,validationSchema:s,validateOnChange:!1},({values:i,errors:l,handleChange:h})=>e.createElement(r.l0,{noValidate:!0},e.createElement(de.sg,null,e.createElement(Qe.Z,null),e.createElement(ve.x,{paddingTop:6,paddingBottom:7},e.createElement(ye.Z,{as:"h1",variant:"alpha"},n({id:"Auth.form.button.password-recovery",defaultMessage:"Password Recovery"}))),l.errorMessage&&e.createElement(ye.Z,{id:"global-form-error",role:"alert",tabIndex:-1,textColor:"danger600"},n({id:l.errorMessage,defaultMessage:"An error occurred"}))),e.createElement(Re.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(He.o,{error:l.email?n({id:l.email,defaultMessage:"This email is invalid."}):"",value:i.email,onChange:h,label:n({id:"Auth.form.email.label",defaultMessage:"Email"}),placeholder:n({id:"Auth.form.email.placeholder",defaultMessage:"kai@doe.com"}),name:"email",required:!0}),e.createElement(lt.z,{type:"submit",fullWidth:!0},n({id:"Auth.form.button.forgot-password",defaultMessage:"Send Email"})))))),e.createElement(Re.k,{justifyContent:"center"},e.createElement(ve.x,{paddingTop:4},e.createElement(r.rU,{to:"/auth/login"},n({id:"Auth.link.ready",defaultMessage:"Ready to sign in?"}))))))};Zt.defaultProps={onSubmit:o=>o.preventDefault()},Zt.propTypes={onSubmit:a().func,schema:a().shape({type:a().string.isRequired}).isRequired};var os=Zt,rs=()=>{const{formatMessage:o}=(0,Ie.Z)();return e.createElement(de.ZP,null,e.createElement(Ye.o,null,e.createElement(de.bU,null,e.createElement(de.sg,null,e.createElement(Qe.Z,null),e.createElement(ve.x,{paddingTop:6,paddingBottom:7},e.createElement(ye.Z,{as:"h1",variant:"alpha"},o({id:"app.containers.AuthPage.ForgotPasswordSuccess.title",defaultMessage:"Email sent"}))),e.createElement(ye.Z,null,o({id:"app.containers.AuthPage.ForgotPasswordSuccess.text.email",defaultMessage:"It can take a few minutes to receive your password recovery link."})),e.createElement(ve.x,{paddingTop:4},e.createElement(ye.Z,null,o({id:"app.containers.AuthPage.ForgotPasswordSuccess.text.contact-admin",defaultMessage:"If you do not receive this link, please contact your administrator."}))))),e.createElement(Re.k,{justifyContent:"center"},e.createElement(ve.x,{paddingTop:4},e.createElement(r.rU,{to:"/auth/login"},o({id:"Auth.link.signin",defaultMessage:"Sign in"}))))))},is=()=>{const{formatMessage:o}=(0,Ie.Z)(),n=(0,r.aM)().get("info")||o({id:"Auth.components.Oops.text",defaultMessage:"Your account has been suspended."});return e.createElement(de.ZP,null,e.createElement(Ye.o,null,e.createElement(de.bU,null,e.createElement(de.sg,null,e.createElement(Qe.Z,null),e.createElement(ve.x,{paddingTop:6,paddingBottom:7},e.createElement(ye.Z,{as:"h1",variant:"alpha"},o({id:"Auth.components.Oops.title",defaultMessage:"Oops..."}))),e.createElement(ye.Z,null,n),e.createElement(ve.x,{paddingTop:4},e.createElement(ye.Z,null,o({id:"Auth.components.Oops.text.admin",defaultMessage:"If this is a mistake, please contact your administrator."}))))),e.createElement(Re.k,{justifyContent:"center"},e.createElement(ve.x,{paddingTop:4},e.createElement(r.rU,{to:"/auth/login"},o({id:"Auth.link.signin",defaultMessage:"Sign in"}))))))},ls=t(15335),Gt=t(5803),us=t(8284),ut=t(54894),ct=t(60492),dt=t(72218);const zt=Be.ZP.a`
6
+ color: ${({theme:o})=>o.colors.primary600};
7
+ `,$t=(0,Be.ZP)(He.o)`
8
+ ::-ms-reveal {
9
+ display: none;
10
+ }
11
+ `,Bt=({authType:o,fieldsToDisable:s,noSignin:n,onSubmit:i,schema:l})=>{const h=(0,r.lm)(),{push:f}=(0,oe.k6)(),[P,k]=(0,e.useState)(!1),[w,J]=(0,e.useState)(!1),[C,ie]=(0,e.useState)(0),[X,ce]=(0,e.useState)({}),{trackUsage:ee}=(0,r.rS)(),{formatMessage:K}=(0,Ie.Z)(),Fe=(0,r.aM)(),{formatAPIError:Ge}=(0,r.So)(),{get:ne}=(0,r.kY)(),le=Fe.get("registrationToken");(0,e.useEffect)(()=>{le&&(async()=>{try{const{data:{data:Z}}=await ne("/admin/registration-info",{params:{registrationToken:le}});Z&&ce(Z)}catch(Z){const _=Ge(Z);h({type:"warning",message:_}),f(`/auth/oops?info=${encodeURIComponent(_)}`)}})()},[le]);function Ae(fe){return Object.entries(fe).reduce((Z,[_,ue])=>{let Me=ue;return!["password","confirmPassword"].includes(_)&&typeof ue=="string"&&(Me=Me.trim()),Z[_]=Me,Z},{})}return e.createElement(de.ZP,null,e.createElement(de.bU,null,e.createElement(wt.J9,{enableReinitialize:!0,initialValues:{firstname:X.firstname||"",lastname:X.lastname||"",email:X.email||"",password:"",confirmPassword:"",registrationToken:le||void 0,news:!1},onSubmit:async(fe,Z)=>{const _=Ae(fe);try{await l.validate(_,{abortEarly:!1}),C>0&&o==="register-admin"&&ee("didSubmitWithErrorsFirstAdmin",{count:C.toString()}),i(le?{userInfo:it()(_,["registrationToken"]),registrationToken:le}:_,Z)}catch(ue){const Me=(0,r.CJ)(ue);ie(C+1),Z.setErrors(Me)}},validateOnChange:!1},({values:fe,errors:Z,handleChange:_})=>e.createElement(r.l0,{noValidate:!0},e.createElement(Ye.o,null,e.createElement(Re.k,{direction:"column",alignItems:"center",gap:3},e.createElement(Qe.Z,null),e.createElement(ye.Z,{as:"h1",variant:"alpha",textAlign:"center"},K({id:"Auth.form.welcome.title",defaultMessage:"Welcome to Strapi!"})),e.createElement(ye.Z,{variant:"epsilon",textColor:"neutral600",textAlign:"center"},K({id:"Auth.form.register.subtitle",defaultMessage:"Credentials are only used to authenticate in Strapi. All saved data will be stored in your database."}))),e.createElement(Re.k,{direction:"column",alignItems:"stretch",gap:6,marginTop:7},e.createElement(ls.r,{gap:4},e.createElement(Gt.P,{col:6},e.createElement(He.o,{name:"firstname",required:!0,value:fe.firstname,error:Z.firstname?K(Z.firstname):void 0,onChange:_,label:K({id:"Auth.form.firstname.label",defaultMessage:"Firstname"})})),e.createElement(Gt.P,{col:6},e.createElement(He.o,{name:"lastname",value:fe.lastname,onChange:_,label:K({id:"Auth.form.lastname.label",defaultMessage:"Lastname"})}))),e.createElement(He.o,{name:"email",disabled:s.includes("email"),value:fe.email,onChange:_,error:Z.email?K(Z.email):void 0,required:!0,label:K({id:"Auth.form.email.label",defaultMessage:"Email"}),type:"email"}),e.createElement($t,{name:"password",onChange:_,value:fe.password,error:Z.password?K(Z.password):void 0,endAction:e.createElement(dt.Z,{onClick:ue=>{ue.preventDefault(),k(Me=>!Me)},label:K(P?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},P?e.createElement(ut.Z,null):e.createElement(ct.Z,null)),hint:K({id:"Auth.form.password.hint",defaultMessage:"Must be at least 8 characters, 1 uppercase, 1 lowercase & 1 number"}),required:!0,label:K({id:"global.password",defaultMessage:"Password"}),type:P?"text":"password"}),e.createElement($t,{name:"confirmPassword",onChange:_,value:fe.confirmPassword,error:Z.confirmPassword?K(Z.confirmPassword):void 0,endAction:e.createElement(dt.Z,{onClick:ue=>{ue.preventDefault(),J(Me=>!Me)},label:K(w?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},w?e.createElement(ut.Z,null):e.createElement(ct.Z,null)),required:!0,label:K({id:"Auth.form.confirmPassword.label",defaultMessage:"Confirm Password"}),type:w?"text":"password"}),e.createElement(us.X,{onValueChange:ue=>{_({target:{value:ue,name:"news"}})},value:fe.news,name:"news","aria-label":"news"},K({id:"Auth.form.register.news.label",defaultMessage:"Keep me updated about new features & upcoming improvements (by doing this you accept the {terms} and the {policy})."},{terms:e.createElement(zt,{target:"_blank",href:"https://strapi.io/terms",rel:"noreferrer"},K({id:"Auth.privacy-policy-agreement.terms",defaultMessage:"terms"})),policy:e.createElement(zt,{target:"_blank",href:"https://strapi.io/privacy",rel:"noreferrer"},K({id:"Auth.privacy-policy-agreement.policy",defaultMessage:"policy"}))})),e.createElement(lt.z,{fullWidth:!0,size:"L",type:"submit"},K({id:"Auth.form.button.register",defaultMessage:"Let's start"})))))),!n&&e.createElement(ve.x,{paddingTop:4},e.createElement(Re.k,{justifyContent:"center"},e.createElement(r.rU,{label:"Auth.link.signin",to:"/auth/login"},K({id:"Auth.link.signin.account",defaultMessage:"Already have an account?"}))))))};Bt.defaultProps={fieldsToDisable:[],noSignin:!1,onSubmit:o=>o.preventDefault()},Bt.propTypes={authType:a().string.isRequired,fieldsToDisable:a().array,noSignin:a().bool,onSubmit:a().func,schema:a().shape({validate:a().func.isRequired,type:a().string.isRequired}).isRequired};var Vt=Bt;const Yt=(0,Be.ZP)(He.o)`
12
+ ::-ms-reveal {
13
+ display: none;
14
+ }
15
+ `,xt=({onSubmit:o,schema:s})=>{const[n,i]=(0,e.useState)(!1),[l,h]=(0,e.useState)(!1),{formatMessage:f}=(0,Ie.Z)();return e.createElement(de.ZP,null,e.createElement(Ye.o,null,e.createElement(de.bU,null,e.createElement(wt.J9,{enableReinitialize:!0,initialValues:{password:"",confirmPassword:""},onSubmit:o,validationSchema:s,validateOnChange:!1},({values:P,errors:k,handleChange:w})=>e.createElement(r.l0,{noValidate:!0},e.createElement(de.sg,null,e.createElement(Qe.Z,null),e.createElement(ve.x,{paddingTop:6,paddingBottom:7},e.createElement(ye.Z,{as:"h1",variant:"alpha"},f({id:"global.reset-password",defaultMessage:"Reset password"}))),k.errorMessage&&e.createElement(ye.Z,{id:"global-form-error",role:"alert",tabIndex:-1,textColor:"danger600"},f({id:k.errorMessage,defaultMessage:"An error occurred"}))),e.createElement(Re.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(Yt,{name:"password",onChange:w,value:P.password,error:k.password?f({id:k.password,defaultMessage:"This field is required."}):void 0,endAction:e.createElement(dt.Z,{onClick:J=>{J.preventDefault(),i(C=>!C)},label:f(n?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},n?e.createElement(ut.Z,null):e.createElement(ct.Z,null)),hint:f({id:"Auth.form.password.hint",defaultMessage:"Password must contain at least 8 characters, 1 uppercase, 1 lowercase and 1 number"}),required:!0,label:f({id:"global.password",defaultMessage:"Password"}),type:n?"text":"password"}),e.createElement(Yt,{name:"confirmPassword",onChange:w,value:P.confirmPassword,error:k.confirmPassword?f({id:k.confirmPassword,defaultMessage:"This value is required."}):void 0,endAction:e.createElement(dt.Z,{onClick:J=>{J.preventDefault(),h(C=>!C)},label:f(n?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},l?e.createElement(ut.Z,null):e.createElement(ct.Z,null)),required:!0,label:f({id:"Auth.form.confirmPassword.label",defaultMessage:"Confirm Password"}),type:l?"text":"password"}),e.createElement(lt.z,{fullwidth:!0,type:"submit"},f({id:"global.change-password",defaultMessage:"Change password"})))))),e.createElement(Re.k,{justifyContent:"center"},e.createElement(ve.x,{paddingTop:4},e.createElement(r.rU,{to:"/auth/login"},f({id:"Auth.link.ready",defaultMessage:"Ready to sign in?"}))))))};xt.defaultProps={onSubmit:o=>o.preventDefault()},xt.propTypes={onSubmit:a().func,schema:a().shape({type:a().string.isRequired}).isRequired};var cs=xt;const ds=(()=>window&&window.strapi&&window.strapi.isEE?t(98768).Z:t(5365).Z)(),Qt={"forgot-password":{Component:os,endPoint:"forgot-password",fieldsToDisable:[],fieldsToOmit:[],schema:$.Ry().shape({email:$.Z_().email(r.I0.email).required(r.I0.required)}),inputsPrefix:""},"forgot-password-success":{Component:rs,endPoint:"",fieldsToDisable:[],fieldsToOmit:[],schema:null,inputsPrefix:""},login:{Component:ds,endPoint:"login",fieldsToDisable:[],fieldsToOmit:["rememberMe"],schema:$.Ry().shape({email:$.Z_().email(r.I0.email).required(r.I0.required),password:$.Z_().required(r.I0.required),rememberMe:$.Xg().nullable()}),inputsPrefix:""},oops:{Component:is,endPoint:null,fieldsToDisable:[],fieldsToOmit:[],schema:null,inputsPrefix:""},register:{Component:Vt,endPoint:"register",fieldsToDisable:["email"],fieldsToOmit:["userInfo.confirmPassword","userInfo.news","userInfo.email"],schema:$.Ry().shape({firstname:$.Z_().trim().required(r.I0.required),lastname:$.Z_(),password:$.Z_().min(8,r.I0.minLength).matches(/[a-z]/,"components.Input.error.contain.lowercase").matches(/[A-Z]/,"components.Input.error.contain.uppercase").matches(/\d/,"components.Input.error.contain.number").required(r.I0.required),confirmPassword:$.Z_().oneOf([$.iH("password"),null],"components.Input.error.password.noMatch").required(r.I0.required),registrationToken:$.Z_().required(r.I0.required)}),inputsPrefix:"userInfo."},"register-admin":{Component:Vt,endPoint:"register-admin",noSignin:!0,fieldsToDisable:[],fieldsToOmit:["confirmPassword","news"],schema:$.Ry().shape({firstname:$.Z_().trim().required(r.I0.required),lastname:$.Z_(),password:$.Z_().min(8,r.I0.minLength).matches(/[a-z]/,"components.Input.error.contain.lowercase").matches(/[A-Z]/,"components.Input.error.contain.uppercase").matches(/\d/,"components.Input.error.contain.number").required(r.I0.required),email:$.Z_().email(r.I0.email).strict().lowercase(r.I0.lowercase).required(r.I0.required),confirmPassword:$.Z_().oneOf([$.iH("password"),null],"components.Input.error.password.noMatch").required(r.I0.required)}),inputsPrefix:""},"reset-password":{Component:cs,endPoint:"reset-password",fieldsToDisable:[],fieldsToOmit:["confirmPassword"],schema:$.Ry().shape({password:$.Z_().min(8,r.I0.minLength).matches(/[a-z]/,"components.Input.error.contain.lowercase").matches(/[A-Z]/,"components.Input.error.contain.uppercase").matches(/\d/,"components.Input.error.contain.number").required(r.I0.required),confirmPassword:$.Z_().oneOf([$.iH("password"),null],"components.Input.error.password.noMatch").required(r.I0.required)})}};var ms=o=>o;const Jt={formErrors:{},modifiedData:{},requestError:null},gs=(o,s)=>(0,I.ZP)(o,n=>{switch(s.type){case"ON_CHANGE":{je()(n.modifiedData,s.keys.split("."),s.value);break}case"RESET_PROPS":return Jt;case"SET_DATA":{n.modifiedData=s.data;break}case"SET_ERRORS":{n.formErrors=s.errors;break}case"SET_REQUEST_ERROR":{n.requestError={errorMessage:s.errorMessage,errorStatus:s.errorStatus};break}default:return n}}),Wt=({hasAdmin:o,setHasAdmin:s})=>{const{push:n,location:{search:i}}=(0,oe.k6)(),{changeLocale:l}=(0,ns.Z)(),{setSkipped:h}=(0,r.c1)(),{trackUsage:f}=(0,r.rS)(),{params:{authType:P}}=(0,oe.$B)("/auth/:authType"),k=(0,r.aM)(),w=(0,Pe.c)(Qt,async()=>(await t.e(1386).then(t.bind(t,91386))).FORMS,{combine(Y,ae){return{...Y,...ae}},defaultValue:Qt}),[{formErrors:J,modifiedData:C,requestError:ie},X]=(0,e.useReducer)(gs,Jt,ms),ee=pe.default.CancelToken.source(),{Component:K,endPoint:Fe,fieldsToDisable:Ge,fieldsToOmit:ne,inputsPrefix:le,schema:Ae,...fe}=w?.[P]??{};(0,e.useEffect)(()=>()=>{ee.cancel("Component unmounted")},[]);const{post:Z}=(0,r.kY)();(0,e.useEffect)(()=>{X({type:"RESET_PROPS"})},[P]);const _=({target:{name:Y,value:ae}})=>{X({type:"ON_CHANGE",keys:Y,value:ae})},ue=async(Y,{setSubmitting:ae,setErrors:Ce})=>{ae(!0);const Ue=it()(Y,ne),Q=`/admin/${Fe}`;P==="login"&&await Is(Y,Q,{setSubmitting:ae,setErrors:Ce}),(P==="register"||P==="register-admin")&&await Os(Y,Q,{setSubmitting:ae,setErrors:Ce}),P==="forgot-password"&&await Me(Ue,Q,{setSubmitting:ae,setErrors:Ce}),P==="reset-password"&&await bs(Ue,Q,{setSubmitting:ae,setErrors:Ce})},Me=async(Y,ae,{setSubmitting:Ce,setErrors:Ue})=>{try{await Z(ae,Y,{cancelToken:ee.token}),n("/auth/forgot-password-success")}catch(Q){console.error(Q),Ue({errorMessage:"notification.error"})}finally{Ce(!1)}},Is=async(Y,ae,{setSubmitting:Ce,setErrors:Ue})=>{try{const{data:{data:{token:Q,user:me}}}=await Z(ae,it()(Y,ne),{cancelToken:ee.token});me.preferedLanguage&&l(me.preferedLanguage),r.I8.setToken(Q,Y.rememberMe),r.I8.setUserInfo(me,Y.rememberMe),_t()}catch(Q){if(Q.response){const me=Se()(Q,["response","data","error","message"],"Something went wrong");if(qe()(me).toLowerCase()==="usernotactive"){n("/auth/oops"),X({type:"RESET_PROPS"});return}Ue({errorMessage:me})}}finally{Ce(!1)}},Os=async(Y,ae,{setSubmitting:Ce,setErrors:Ue})=>{try{f("willCreateFirstAdmin");const{data:{data:{token:Q,user:me}}}=await Z(ae,it()(Y,ne),{cancelToken:ee.token});r.I8.setToken(Q,!1),r.I8.setUserInfo(me,!1),Ce(!1),s(!0);const{roles:Je}=me;if(Je&&Je.find(({code:Us})=>Us==="strapi-super-admin")&&(De.setSkipped(!1),h(!1),f("didLaunchGuidedtour")),P==="register"&&Y.userInfo.news===!0||P==="register-admin"&&Y.news===!0){n({pathname:"/usecase",search:`?hasAdmin=${o}`});return}_t()}catch(Q){if(f("didNotCreateFirstAdmin"),Q.response){const{data:me}=Q.response,Je=(0,as.Z)(me);Ue({apiErrors:Je})}}},bs=async(Y,ae,{setErrors:Ce,setSubmitting:Ue})=>{try{const{data:{data:{token:Q,user:me}}}=await Z(ae,{...Y,resetPasswordToken:k.get("code")},{cancelToken:ee.token});r.I8.setToken(Q,!1),r.I8.setUserInfo(me,!1),n("/")}catch(Q){if(Q.response){const me=Se()(Q,["response","data","message"],"Something went wrong"),Je=Se()(Q,["response","data","statusCode"],400);X({type:"SET_REQUEST_ERROR",errorMessage:me,errorStatus:Je}),Ce({errorMessage:me})}}finally{Ue(!1)}},_t=()=>{if(P==="login"){const Y=k.get("redirectTo"),ae=Y?decodeURIComponent(Y):"/";n(ae)}else n("/")};return!w[P]||o&&P==="register-admin"||r.I8.getToken()?e.createElement(oe.l_,{to:"/"}):!o&&P!=="register-admin"?e.createElement(oe.l_,{to:{pathname:"/auth/register-admin",search:i}}):e.createElement(K,{...fe,authType:P,fieldsToDisable:Ge,formErrors:J,inputsPrefix:le,modifiedData:C,onChange:_,onSubmit:ue,requestError:ie,schema:Ae})};Wt.defaultProps={hasAdmin:!1},Wt.propTypes={hasAdmin:a().bool,setHasAdmin:a().func.isRequired};var ps=Wt,fs=t(53951),hs=t(68465),Es=t(84967),Ps=t(7563),vs=t(33348);const ys=[{intlLabel:{id:"Usecase.front-end",defaultMessage:"Front-end developer"},value:"front_end_developer"},{intlLabel:{id:"Usecase.back-end",defaultMessage:"Back-end developer"},value:"back_end_developer"},{intlLabel:{id:"Usecase.full-stack",defaultMessage:"Full-stack developer"},value:"full_stack_developer"},{intlLabel:{id:"global.content-manager",defaultMessage:"Content Manager"},value:"content_manager"},{intlLabel:{id:"Usecase.content-creator",defaultMessage:"Content Creator"},value:"content_creator"},{intlLabel:{id:"Usecase.other",defaultMessage:"Other"},value:"other"}],Ts=(0,Be.ZP)(ye.Z)`
16
+ text-align: center;
17
+ `;var Rs=()=>{const o=(0,r.lm)(),{push:s,location:n}=(0,oe.k6)(),{formatMessage:i}=(0,Ie.Z)(),[l,h]=(0,e.useState)(),[f,P]=(0,e.useState)(""),{post:k}=(0,r.kY)(),{firstname:w,email:J}=r.I8.getUserInfo(),{hasAdmin:C}=(0,vs.parse)(n?.search,{ignoreQueryPrefix:!0}),ie=l==="other",X=async(ce,ee)=>{ce.preventDefault();try{await k("https://analytics.strapi.io/register",{email:J,username:w,firstAdmin:Boolean(!C),persona:{role:ee?void 0:l,otherRole:ee?void 0:f}}),o({type:"success",message:{id:"Usecase.notification.success.project-created",defaultMessage:"Project has been successfully created"}}),s("/")}catch{}};return e.createElement(de.ZP,null,e.createElement(Ye.o,{labelledBy:"usecase-title"},e.createElement(de.bU,null,e.createElement("form",{onSubmit:ce=>X(ce,!1)},e.createElement(Re.k,{direction:"column",paddingBottom:7},e.createElement(Qe.Z,null),e.createElement(ve.x,{paddingTop:6,paddingBottom:1,width:(0,r.Q1)(250)},e.createElement(Ts,{variant:"alpha",as:"h1",id:"usecase-title"},i({id:"Usecase.title",defaultMessage:"Tell us a bit more about yourself"})))),e.createElement(Re.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(hs.P,{id:"usecase","data-testid":"usecase",label:i({id:"Usecase.input.work-type",defaultMessage:"What type of work do you do?"}),onChange:h,value:l},ys.map(({intlLabel:ce,value:ee})=>e.createElement(Es.W,{key:ee,value:ee},i(ce)))),ie&&e.createElement(He.o,{name:"other",label:i({id:"Usecase.other",defaultMessage:"Other"}),value:f,onChange:ce=>P(ce.target.value),"data-testid":"other"}),e.createElement(lt.z,{type:"submit",size:"L",fullWidth:!0,disabled:!l},i({id:"global.finish",defaultMessage:"Finish"}))))),e.createElement(Re.k,{justifyContent:"center"},e.createElement(ve.x,{paddingTop:4},e.createElement(Ps.A,{onClick:()=>X(!0)},i({id:"Usecase.button.skip",defaultMessage:"Skip this question"}))))))},Xt=t(26648);const As=(0,e.lazy)(()=>Promise.all([t.e(6691),t.e(801)]).then(t.bind(t,29761)));function Cs(){const o=(0,Pe.c)(Ke,async()=>(await t.e(7394).then(t.bind(t,17394))).ADMIN_PERMISSIONS_EE,{combine(ne,le){return L()({},ne,le)},defaultValue:Ke}),s=(0,Pe.c)(Xt.y3,async()=>(await t.e(3528).then(t.bind(t,53528))).ROUTES_EE,{defaultValue:[]}),n=(0,r.lm)(),{updateProjectSettings:i}=(0,Dt.um)(),{formatMessage:l}=(0,Ie.Z)(),[{isLoading:h,hasAdmin:f,uuid:P,deviceId:k},w]=(0,e.useState)({isLoading:!0,hasAdmin:!1}),J=(0,te.I0)(),C=(0,r.L7)(),{get:ie,post:X}=(0,r.kY)(),ce=(0,e.useMemo)(()=>(0,re.WW)(s.map(({to:ne,Component:le,exact:Ae})=>(0,re.ot)(le,ne,Ae))),[s]),[ee,K]=(0,e.useState)(null);(0,e.useEffect)(()=>{J({type:Xt.XS,payload:o})},[o,J]),(0,e.useEffect)(()=>{const ne=r.I8.getToken();ne&&(async()=>{try{const{data:{data:{token:Ae}}}=await X("/admin/renew-token",{token:ne});r.I8.updateToken(Ae)}catch{r.I8.clearAppStorage(),window.location.reload()}})()},[X]),(0,e.useEffect)(()=>{(async()=>{try{const{data:{data:{hasAdmin:le,uuid:Ae,menuLogo:fe,authLogo:Z}}}=await ie("/admin/init");if(i({menuLogo:(0,r.CR)(fe),authLogo:(0,r.CR)(Z)}),Ae){const{data:{data:_}}=await ie("/admin/telemetry-properties",{validateStatus:ue=>ue<500});K(_);try{const ue="didInitializeAdministration";await X("https://analytics.strapi.io/api/v2/track",{event:ue,userId:"",deviceId:k,eventPropeties:{},userProperties:{environment:C.currentEnvironment},groupProperties:{..._,projectId:Ae}},{headers:{"X-Strapi-Event":ue}})}catch{}}w({isLoading:!1,hasAdmin:le,uuid:Ae,deviceId:k})}catch{n({type:"warning",message:{id:"app.containers.App.notification.error.init"}})}})()},[n,i]);const Fe=ne=>w(le=>({...le,hasAdmin:ne})),Ge=(0,e.useMemo)(()=>({uuid:P,telemetryProperties:ee,deviceId:k}),[P,ee,k]);return h?e.createElement(r.dO,null):e.createElement(e.Suspense,{fallback:e.createElement(r.dO,null)},e.createElement(xe.z,null,l({id:"skipToContent"})),e.createElement(r.L8,{value:Ge},e.createElement(oe.rs,null,ce,e.createElement(oe.AW,{path:"/auth/:authType",render:ne=>e.createElement(ps,{...ne,setHasAdmin:Fe,hasAdmin:f}),exact:!0}),e.createElement(Ne,{path:"/usecase",component:Rs}),e.createElement(Ne,{path:"/",component:As}),e.createElement(oe.AW,{path:"",component:fs.default}))))}var Ms=Cs,Ls={ar:"\u0627\u0644\u0639\u0631\u0628\u064A\u0629",ca:"Catal\xE0",cs:"\u010Ce\u0161tina",de:"Deutsch",dk:"Dansk",en:"English",es:"Espa\xF1ol",eu:"Euskara",fr:"Fran\xE7ais",gu:"Gujarati",he:"\u05E2\u05D1\u05E8\u05D9\u05EA",hu:"Magyar",id:"Indonesian",it:"Italiano",ja:"\u65E5\u672C\u8A9E",ko:"\uD55C\uAD6D\uC5B4",ml:"Malayalam",ms:"Melayu",nl:"Nederlands",no:"Norwegian",pl:"Polski","pt-BR":"Portugu\xEAs (Brasil)",pt:"Portugu\xEAs (Portugal)",ru:"\u0420\u0443\u0441\u0441\u043A\u0438\u0439",sk:"Sloven\u010Dina",sv:"Swedish",th:"\u0E44\u0E17\u0E22",tr:"T\xFCrk\xE7e",uk:"\u0423\u043A\u0440\u0430\u0457\u043D\u0441\u044C\u043A\u0430",vi:"Ti\u1EBFng Vi\u1EC7t","zh-Hans":"\u4E2D\u6587 (\u7B80\u4F53)",zh:"\u4E2D\u6587 (\u7E41\u9AD4)",sa:"\u0938\u0902\u0938\u094D\u0915\u0943\u0924",hi:"\u0939\u093F\u0928\u094D\u0926\u0940"};class Ss{constructor({adminConfig:s,appPlugins:n,library:i,middlewares:l,reducers:h}){this.customConfigurations=s.config,this.customBootstrapConfiguration=s.bootstrap,this.configurations={authLogo:R,head:{favicon:Oe},locales:["en"],menuLogo:R,notifications:{releases:!0},themes:{light:p.W,dark:y.$},translations:{},tutorials:!0},this.appPlugins=n||{},this.library=i,this.middlewares=l,this.plugins={},this.reducers=h,this.translations={},this.hooksDict={},this.admin={injectionZones:_e},this.customFields=U.rh,this.menu=[],this.settings={global:{id:"global",intlLabel:{id:"Settings.global",defaultMessage:"Global Settings"},links:[]}}}addComponents=s=>{Array.isArray(s)?s.map(n=>this.library.components.add(n)):this.library.components.add(s)};addCorePluginMenuLink=s=>{const n=JSON.stringify(s);c()(s.to,`link.to should be defined for ${n}`),c()(typeof s.to=="string",`Expected link.to to be a string instead received ${typeof s.to}`),c()(["/plugins/content-type-builder","/plugins/upload"].includes(s.to),"This method is not available for your plugin"),c()(s.intlLabel?.id&&s.intlLabel?.defaultMessage,`link.intlLabel.id & link.intlLabel.defaultMessage for ${n}`),this.menu.push(s)};addFields=s=>{Array.isArray(s)?s.map(n=>this.library.fields.add(n)):this.library.fields.add(s)};addMenuLink=s=>{const n=JSON.stringify(s);c()(s.to,`link.to should be defined for ${n}`),c()(typeof s.to=="string",`Expected link.to to be a string instead received ${typeof s.to}`),c()(s.intlLabel?.id&&s.intlLabel?.defaultMessage,`link.intlLabel.id & link.intlLabel.defaultMessage for ${n}`),c()(s.Component&&typeof s.Component=="function","link.Component should be a valid React Component"),c()(s.icon&&typeof s.icon=="function","link.Icon should be a valid React Component"),this.menu.push(s)};addMiddlewares=s=>{s.forEach(n=>{this.middlewares.add(n)})};addReducers=s=>{Object.keys(s).forEach(n=>{this.reducers.add(n,s[n])})};addSettingsLink=(s,n)=>{c()(this.settings[s],"The section does not exist");const i=JSON.stringify(n);c()(n.id,`link.id should be defined for ${i}`),c()(n.intlLabel?.id&&n.intlLabel?.defaultMessage,`link.intlLabel.id & link.intlLabel.defaultMessage for ${i}`),c()(n.to,`link.to should be defined for ${i}`),c()(n.Component&&typeof n.Component=="function","link.Component should be a valid React Component"),this.settings[s].links.push(n)};addSettingsLinks=(s,n)=>{c()(this.settings[s],"The section does not exist"),c()(Array.isArray(n),"TypeError expected links to be an array"),n.forEach(i=>{this.addSettingsLink(s,i)})};async bootstrap(){Object.keys(this.appPlugins).forEach(s=>{const n=this.appPlugins[s].bootstrap;n&&n({addSettingsLink:this.addSettingsLink,addSettingsLinks:this.addSettingsLinks,getPlugin:this.getPlugin,injectContentManagerComponent:this.injectContentManagerComponent,injectAdminComponent:this.injectAdminComponent,registerHook:this.registerHook})}),A()(this.customBootstrapConfiguration)&&this.customBootstrapConfiguration({addComponents:this.addComponents,addFields:this.addFields,addMenuLink:this.addMenuLink,addReducers:this.addReducers,addSettingsLink:this.addSettingsLink,addSettingsLinks:this.addSettingsLinks,getPlugin:this.getPlugin,injectContentManagerComponent:this.injectContentManagerComponent,injectAdminComponent:this.injectAdminComponent,registerHook:this.registerHook})}bootstrapAdmin=async()=>(await this.createCustomConfigurations(),this.createHook(Ee.No),this.createHook(Ee.LK),this.createHook(Ee.dV),this.createHook(Ee.Eo),Promise.resolve());createCustomConfigurations=async()=>{if(this.customConfigurations?.locales&&(this.configurations.locales=["en",...this.customConfigurations.locales?.filter(s=>s!=="en")||[]]),this.customConfigurations?.auth?.logo&&(this.configurations.authLogo=this.customConfigurations.auth.logo),this.customConfigurations?.menu?.logo&&(this.configurations.menuLogo=this.customConfigurations.menu.logo),this.customConfigurations?.head?.favicon&&(this.configurations.head.favicon=this.customConfigurations.head.favicon),this.customConfigurations?.theme){const s=this.customConfigurations.theme.dark,n=this.customConfigurations.theme.light;!s&&!n&&(console.warn("[deprecated] In future versions, Strapi will stop supporting this theme customization syntax. The theme configuration accepts a light and a dark key to customize each theme separately. See https://docs.strapi.io/developer-docs/latest/development/admin-customization.html#theme-extension."),L()(this.configurations.themes.light,this.customConfigurations.theme)),n&&L()(this.configurations.themes.light,n),s&&L()(this.configurations.themes.dark,s)}this.customConfigurations?.notifications?.releases!==void 0&&(this.configurations.notifications.releases=this.customConfigurations.notifications.releases),this.customConfigurations?.tutorials!==void 0&&(this.configurations.tutorials=this.customConfigurations.tutorials)};createHook=s=>{this.hooksDict[s]=z()};createSettingSection=(s,n)=>{c()(s.id,"section.id should be defined"),c()(s.intlLabel?.id&&s.intlLabel?.defaultMessage,"section.intlLabel should be defined"),c()(Array.isArray(n),"TypeError expected links to be an array"),c()(this.settings[s.id]===void 0,"A similar section already exists"),this.settings[s.id]={...s,links:[]},n.forEach(i=>{this.addSettingsLink(s.id,i)})};createStore=()=>H(this.middlewares.middlewares,this.reducers.reducers);getAdminInjectedComponents=(s,n,i)=>{try{return this.admin.injectionZones[s][n][i]||[]}catch(l){return console.error("Cannot get injected component",l),l}};getPlugin=s=>this.plugins[s];async initialize(){Object.keys(this.appPlugins).forEach(s=>{this.appPlugins[s].register(this)})}injectContentManagerComponent=(s,n,i)=>{c()(this.admin.injectionZones.contentManager[s]?.[n],`The ${s} ${n} zone is not defined in the content manager`),c()(i,"A Component must be provided"),this.admin.injectionZones.contentManager[s][n].push(i)};injectAdminComponent=(s,n,i)=>{c()(this.admin.injectionZones.admin[s]?.[n],`The ${s} ${n} zone is not defined in the admin`),c()(i,"A Component must be provided"),this.admin.injectionZones.admin[s][n].push(i)};async loadAdminTrads(){const s=this.configurations.locales.map(l=>t(48224)(`./${l}.json`).then(({default:h})=>({data:h,locale:l})).catch(()=>({data:null,locale:l})));return(await Promise.all(s)).reduce((l,h)=>(h.data&&(l[h.locale]=h.data),l),{})}async loadTrads(){const s=await this.loadAdminTrads(),n=Object.keys(this.appPlugins).map(f=>{const P=this.appPlugins[f].registerTrads;return P?P({locales:this.configurations.locales}):null}).filter(f=>f),l=(await Promise.all(n)).reduce((f,P)=>{const k=P.reduce((w,J)=>(w[J.locale]=J.data,w),{});return Object.keys(k).forEach(w=>{f[w]={...f[w],...k[w]}}),f},{}),h=this.configurations.locales.reduce((f,P)=>(f[P]={...s[P],...l[P]||{},...this.customConfigurations?.translations?.[P]},f),{});return this.configurations.translations=h,Promise.resolve()}registerHook=(s,n)=>{c()(this.hooksDict[s],`The hook ${s} is not defined. You are trying to register a hook that does not exist in the application.`),this.hooksDict[s].register(n)};registerPlugin=s=>{const n=(0,U.Sy)(s);this.plugins[n.pluginId]=n};runHookSeries=(s,n=!1)=>n?this.hooksDict[s].runSeriesAsync():this.hooksDict[s].runSeries();runHookWaterfall=(s,n,i=!1,l)=>i?this.hooksDict[s].runWaterfallAsync(n,l):this.hooksDict[s].runWaterfall(n,l);runHookParallel=s=>this.hooksDict[s].runParallel();render(){const s=this.createStore(),n=O()(Ls,this.configurations.locales||[]),{components:{components:i},fields:{fields:l}}=this.library;return e.createElement(u,{authLogo:this.configurations.authLogo,components:i,fields:l,customFields:this.customFields,localeNames:n,getAdminInjectedComponents:this.getAdminInjectedComponents,getPlugin:this.getPlugin,messages:this.configurations.translations,menu:this.menu,menuLogo:this.configurations.menuLogo,plugins:this.plugins,runHookParallel:this.runHookParallel,runHookWaterfall:(h,f,P=!1)=>this.runHookWaterfall(h,f,P,s),runHookSeries:this.runHookSeries,themes:this.configurations.themes,settings:this.settings,showTutorials:this.configurations.tutorials,showReleaseNotification:this.configurations.notifications.releases,store:s},e.createElement(e.Fragment,null,e.createElement(b.q,{link:[{rel:"icon",type:"image/png",href:this.configurations.head.favicon}],htmlAttributes:{lang:localStorage.getItem(T)||"en"}}),e.createElement(S.VK,{basename:q.Z},e.createElement(Ms,{store:s}))))}}var Ds=({adminConfig:o={},appPlugins:s,library:n,middlewares:i,reducers:l})=>new Ss({adminConfig:o,appPlugins:s,library:n,middlewares:i,reducers:l})},5985:function(B,v,t){"use strict";var e=t(32735);const p=(0,e.createContext)();v.Z=p},20139:function(B,v,t){"use strict";var e=t(32735),p=t(5985);const y=()=>{const{changeLocale:E,localeNames:c,messages:m}=(0,e.useContext)(p.Z);return{changeLocale:E,localeNames:c,messages:m}};v.Z=y},10190:function(B,v,t){"use strict";var e=t(32735),p=t(8471),y=t(10328);const E=p.ZP.img`
18
+ height: ${72/16}rem;
19
+ `,c=()=>{const{logos:{auth:m}}=(0,y.um)();return e.createElement(E,{src:m?.custom??m.default,"aria-hidden":!0,alt:""})};v.Z=c},66694:function(B,v,t){"use strict";t.d(v,{ux:function(){return y},_5:function(){return c},$l:function(){return A},Rj:function(){return L}});var e=t(32735),y=(0,e.createContext)({}),c=(0,e.createContext)({}),A=(0,e.createContext)({}),L=(0,e.createContext)({})},78246:function(B,v){"use strict";const t="/admin/".replace(window.location.origin,"");v.Z=t},46339:function(B,v,t){"use strict";t.d(v,{Eo:function(){return y},LK:function(){return p},No:function(){return e},dV:function(){return E}});const e="Admin/CM/pages/ListView/inject-column-in-table",p="Admin/CM/pages/App/mutate-collection-types-links",y="Admin/CM/pages/EditView/mutate-edit-view-layout",E="Admin/CM/pages/App/mutate-single-types-links"},10328:function(B,v,t){"use strict";t.d(v,{um:function(){return E},U_:function(){return b},Dq:function(){return r},H9:function(){return je},$_:function(){return $e},rW:function(){return tt},bF:function(){return ht},G4:function(){return Lt},Te:function(){return Ut},M1:function(){return jt}});var e=t(32735),p=t(66694),E=()=>(0,e.useContext)(p._5),c=t(70166),m=t(19565),A=t(97889);const M={data:{},error:null,isLoading:!0};var x=(g,d)=>(0,A.ZP)(g,u=>{switch(d.type){case"GET_DATA":{u.isLoading=!0,u.data={},u.error=null;break}case"GET_DATA_SUCCEEDED":{u.data=d.data,u.isLoading=!1,u.error=null;break}case"GET_DATA_ERROR":{u.isLoading=!1,u.error=d.error;break}default:return u}}),b=g=>{const[{data:d,error:u,isLoading:U},j]=(0,e.useReducer)(x,M),{get:N}=(0,m.kY)();return(0,e.useEffect)(()=>{(async()=>{try{j({type:"GET_DATA"});const{data:{data:H}}=await N("/admin/permissions",{params:{role:g}});j({type:"GET_DATA_SUCCEEDED",data:H})}catch{}})()},[g,N]),{data:d,error:u,isLoading:U}};const S={role:{},permissions:{},isLoading:!0};var W=(g,d)=>(0,A.ZP)(g,u=>{switch(d.type){case"GET_DATA_SUCCEEDED":{u.role=d.role,u.permissions=d.permissions,u.isLoading=!1;break}case"GET_DATA_ERROR":{u.isLoading=!1;break}case"ON_SUBMIT_SUCCEEDED":{u.role.name=d.name,u.role.description=d.description;break}default:return u}}),r=g=>{const d=(0,m.lm)(),[u,U]=(0,e.useReducer)(W,S),{get:j}=(0,m.kY)();(0,e.useEffect)(()=>{g?(async H=>{try{const[{data:{data:q}},{data:{data:he}}]=await Promise.all([`roles/${H}`,`roles/${H}/permissions`].map(z=>j(`/admin/${z}`)));U({type:"GET_DATA_SUCCEEDED",role:q,permissions:he})}catch(q){console.error(q),U({type:"GET_DATA_ERROR"}),d({type:"warning",message:{id:"notification.error"}})}})(g):U({type:"GET_DATA_SUCCEEDED",role:{},permissions:[]})},[j,g,d]);const N=(0,e.useCallback)(V=>{U({type:"ON_SUBMIT_SUCCEEDED",...V})},[]);return{...u,onSubmitSucceeded:N}},F=t(2287),a=t(36919),G=t(45112),te=t(15062),D=t(78125),I=t(99381),se=t.n(I),Te=(g,d)=>d.map(({permissions:u})=>(0,m.qX)(g,u)),we=async(g,d,u)=>{const U=Te(g,d),j=await Promise.all(U),N=d.filter((q,he)=>j[he]),V=N.findIndex(q=>q.to==="/settings");if(V===-1)return[];const H=se()(N);return H[V].notificationsCount=u?1:0,H},Se=async(g,d)=>{const u=Te(g,d),U=await Promise.all(u);return d.filter((N,V)=>U[V])},je=()=>{const{allPermissions:g}=(0,m.vn)(),{shouldUpdateStrapi:d}=(0,m.L7)(),{menu:u}=(0,m.j1)(),U=(0,te.v9)(D._),[j,N]=e.useState({generalSectionLinks:[{icon:F.Z,intlLabel:{id:"global.plugins",defaultMessage:"Plugins"},to:"/list-plugins",permissions:U.marketplace.main},{icon:a.Z,intlLabel:{id:"global.marketplace",defaultMessage:"Marketplace"},to:"/marketplace",permissions:U.marketplace.main},{icon:G.Z,intlLabel:{id:"global.settings",defaultMessage:"Settings"},to:"/settings",permissions:[],notificationsCount:0}],pluginsSectionLinks:[],isLoading:!0}),V=e.useRef(j.generalSectionLinks);return e.useEffect(()=>{async function H(){const q=await Se(g,u),he=await we(g,V.current,d);N(z=>({...z,generalSectionLinks:he,pluginsSectionLinks:q,isLoading:!1}))}H()},[N,V,g,u,U,d]),j},$e=()=>(0,e.useContext)(p.$l),tt=(g,d,u,U)=>{const[j,N]=(0,e.useState)(!1),V=(0,m.lm)(),{post:H}=(0,m.kY)(),{formatAPIError:q}=(0,m.So)();return{regenerateData:async()=>{try{const{data:{data:{accessKey:z}}}=await H(`${g}${d}/regenerate`);N(!1),u(z)}catch(z){N(!1),U?U(z):V({type:"warning",message:q(z)})}},isLoadingConfirmation:j}};const Xe=!JSON.parse(localStorage.getItem("STRAPI_UPDATE_NOTIF")),qt=()=>{const{latestStrapiReleaseTag:g,shouldUpdateStrapi:d}=useAppInfo(),u=useNotification();return useEffect(()=>{d&&Xe&&u({type:"info",message:{id:"notification.version.update.message"},link:{url:`https://github.com/strapi/strapi/releases/tag/${g}`,label:{id:"global.see-more"}},blockTransition:!0,onClose:()=>localStorage.setItem("STRAPI_UPDATE_NOTIF",!0)})},[g,d,u]),null};var De=null,Nt=t(33795),gt=t.n(Nt),Kt=(g,d)=>({...g,isLoading:d});const st={roles:[],isLoading:!0};var ft=(g,d)=>(0,A.ZP)(g,u=>{switch(d.type){case"GET_DATA":{u.isLoading=!0,u.roles=[];break}case"GET_DATA_SUCCEEDED":{u.roles=d.data,u.isLoading=!1;break}case"GET_DATA_ERROR":{u.isLoading=!1;break}default:return u}}),ht=(g=!0)=>{const d=(0,m.lm)(),[{roles:u,isLoading:U},j]=(0,e.useReducer)(ft,st,()=>Kt(st,g));(0,e.useEffect)(()=>{g&&N()},[g]);const N=(0,e.useCallback)(async()=>{const V=(0,m.tg)();try{j({type:"GET_DATA"});const{data:{data:H}}=await V.get("/admin/roles");j({type:"GET_DATA_SUCCEEDED",data:H})}catch(H){const q=gt()(H,["response","payload","message"],"An error occured");j({type:"GET_DATA_ERROR"}),q!=="Forbidden"&&d({type:"warning",message:q})}},[d]);return{roles:u,isLoading:U,getData:N}},nt=t(9086),Et=t.n(nt),at=t(8997),Pt=(g,d)=>({...g,fieldsToPick:d}),vt=t(88423),Ze=t.n(vt),yt=t(3040),Tt=t.n(yt),Rt=t(56236),ot=t.n(Rt);const At={fieldsToPick:[],formErrors:{},initialData:{},isLoading:!0,modifiedData:{},showHeaderButtonLoader:!1,showHeaderLoader:!0},Ct=(g,d)=>(0,A.ZP)(g,u=>{switch(d.type){case"GET_DATA_SUCCEEDED":{u.isLoading=!1,u.showHeaderLoader=!1,u.initialData=Ze()(d.data,g.fieldsToPick),u.modifiedData=Ze()(d.data,g.fieldsToPick);break}case"ON_CANCEL":{u.modifiedData=g.initialData,u.formErrors={};break}case"ON_CHANGE":{d.inputType==="password"&&!d.value?ot()(u.modifiedData,d.keys.split(".")):d.keys.includes("username")&&!d.value?Tt()(u.modifiedData,d.keys.split("."),null):Tt()(u.modifiedData,d.keys.split("."),d.value);break}case"ON_SUBMIT":{u.showHeaderButtonLoader=!0;break}case"ON_SUBMIT_SUCCEEDED":{u.initialData=Ze()(d.data,g.fieldsToPick),u.modifiedData=Ze()(d.data,g.fieldsToPick),u.showHeaderButtonLoader=!1;break}case"SET_ERRORS":{u.formErrors=d.errors,u.showHeaderButtonLoader=!1;break}default:return u}});var Lt=(g,d,u,U)=>{const[{formErrors:j,initialData:N,isLoading:V,modifiedData:H,showHeaderButtonLoader:q,showHeaderLoader:he},z]=(0,e.useReducer)(Ct,At,()=>Pt(At,U)),Ee=(0,m.lm)(),{lockApp:Oe,unlockApp:Ve}=(0,m.o1)(),{get:_e,put:xe}=(0,m.kY)();return(0,e.useEffect)(()=>{g&&(async()=>{try{const{data:{data:re}}=await _e(g);z({type:"GET_DATA_SUCCEEDED",data:re,fieldsToPick:U})}catch(re){console.error(re.response),Ee({type:"warning",message:{id:"notification.error"}})}})()},[g]),[{formErrors:j,initialData:N,isLoading:V,modifiedData:H,showHeaderButtonLoader:q,showHeaderLoader:he},z,{handleCancel:()=>{z({type:"ON_CANCEL"})},handleChange:({target:{name:Pe,value:re,type:pe}})=>{z({type:"ON_CHANGE",inputType:pe,keys:Pe,value:re})},handleSubmit:async Pe=>{Pe.preventDefault();const re=await(0,at.R6)(H,d);if(z({type:"SET_ERRORS",errors:re||{}}),!re)try{Oe(),z({type:"ON_SUBMIT"});const pe=Et()(H,["confirmPassword","registrationToken"]);pe.roles&&(pe.roles=pe.roles.map(qe=>qe.id)),pe.ssoLockedRoles&&(pe.ssoLockedRoles=[...new Set(pe.ssoLockedRoles)]);const{data:{data:be}}=await xe(g,pe);u(be),z({type:"ON_SUBMIT_SUCCEEDED",data:be}),Ee({type:"success",message:{id:"notification.success.saved"}})}catch(pe){const be=pe?.response?.payload??{data:{}};be?.data&&typeof be.data=="string"?Ee({type:"warning",message:be.data}):Ee({type:"warning",message:be.message});const qe=(0,at.Iz)(be);z({type:"SET_ERRORS",errors:qe})}finally{Ve()}},setField:(Pe,re)=>{z({type:"ON_CHANGE",keys:Pe,value:re})}}]},St=t(18782);const Ie={global:[{intlLabel:{id:"Settings.application.title",defaultMessage:"Overview"},to:"/settings/application-infos",id:"000-application-infos",permissions:[]},{intlLabel:{id:"Settings.webhooks.title",defaultMessage:"Webhooks"},to:"/settings/webhooks",id:"webhooks"},{intlLabel:{id:"Settings.apiTokens.title",defaultMessage:"API Tokens"},to:"/settings/api-tokens?sort=name:ASC",id:"api-tokens"},{intlLabel:{id:"Settings.transferTokens.title",defaultMessage:"Transfer Tokens"},to:"/settings/transfer-tokens?sort=name:ASC",id:"transfer-tokens"}],admin:[{intlLabel:{id:"global.roles",defaultMessage:"Roles"},to:"/settings/roles",id:"roles"},{intlLabel:{id:"global.users"},to:"/settings/users?pageSize=10&page=1&sort=firstname",id:"users"}]};var Be=g=>g.map(d=>{const u=d.links.map(U=>({...U,isDisplayed:!1}));return{...d,links:u}}),Ft=t(98978),It=t.n(Ft),bt=g=>It()(g,d=>d.id),Ut=()=>{const[{isLoading:g,menu:d},u]=(0,e.useState)({isLoading:!0,menu:[]}),{allPermissions:U}=(0,m.vn)(),{shouldUpdateStrapi:j}=(0,m.L7)(),{settings:N}=(0,m.j1)(),V=(0,te.v9)(D._),{global:H,admin:q}=(0,St.c)(Ie,async()=>(await t.e(1970).then(t.bind(t,43278))).LINKS_EE,{combine(he,z){function Ee(Oe){if(!Oe.id)throw new Error("The settings menu item must have an id attribute.");return{...Oe,permissions:V.settings?.[Oe.id]?.main}}return{admin:[...z.admin,...he.admin].map(Ee),global:[...he.global,...z.global].map(Ee)}},defaultValue:{admin:[],global:[]}});return(0,e.useEffect)(()=>{const he=async()=>{const _e=await(xe=>Promise.all(xe.reduce((oe,We,Ne)=>{const Ke=Pe=>Pe.map(async(re,pe)=>({hasPermission:await(0,m.qX)(U,re.permissions),sectionIndex:Ne,linkIndex:pe}));return[...oe,...Ke(We.links)]},[])))(Oe);u(xe=>({...xe,isLoading:!1,menu:Oe.map((oe,We)=>({...oe,links:oe.links.map((Ne,Ke)=>{const Pe=_e.find(re=>re.sectionIndex===We&&re.linkIndex===Ke);return{...Ne,isDisplayed:Boolean(Pe.hasPermission)}})}))}))},{global:z,...Ee}=N,Oe=Be([{...N.global,links:bt([...N.global.links,...H]).map(Ve=>({...Ve,hasNotification:Ve.id==="000-application-infos"&&j}))},{id:"permissions",intlLabel:{id:"Settings.permissions",defaultMessage:"Administration Panel"},links:q},...Object.values(Ee)]);he()},[q,H,U,N,j]),{isLoading:g,menu:d}},jt=()=>(0,e.useContext)(p.Rj)},70166:function(B,v,t){"use strict";t.d(v,{G:function(){return y}});var e=t(19565),p=t(20108);function y(){const{get:E}=(0,e.kY)(),{formatAPIError:c}=(0,e.So)(),m=(0,e.lm)(),A=(0,p.useQueries)(["components","content-types"].map(S=>({queryKey:["content-manager",S],async queryFn(){const{data:{data:R}}=await E(`/content-manager/${S}`);return R},onError(R){m({type:"warning",message:c(R)})}}))),[M,L]=A,x=M.isLoading||L.isLoading,O=(L?.data??[]).filter(S=>S.kind==="collectionType"&&S.isDisplayed),b=(L?.data??[]).filter(S=>S.kind!=="collectionType"&&S.isDisplayed);return{isLoading:x,components:M?.data??[],collectionTypes:O,singleTypes:b}}},18782:function(B,v,t){"use strict";t.d(v,{c:function(){return E}});var e=t(32735),p=t(19565);function y(){return window.strapi.isEE}function E(c,m,{defaultValue:A=null,combine:M=(x,O)=>O,enabled:L=!0}={}){const x=(0,p.W6)(m),O=(0,p.W6)(M),[{data:b},S]=e.useState({data:y()&&L?A:c});return e.useEffect(()=>{async function R(){const W=await x();S({data:O(c,W)})}y()&&L&&R()},[c,x,O,L]),b}},954:function(B,v,t){"use strict";t.d(v,{sg:function(){return S},bU:function(){return R},ZP:function(){return T}});var e=t(32735),p=t(72850),y=t(87933),E=t(60216),c=t.n(E),m=t(8471),A=t(34853),M=t(67879),L=t(20139),O=()=>{const{changeLocale:r,localeNames:F}=(0,L.Z)(),{locale:a}=(0,M.Z)();return e.createElement(A.O,{label:F[a]},Object.keys(F).map(G=>e.createElement(A.s,{onClick:()=>r(G),key:G},F[G])))};const b=(0,m.ZP)(p.x)`
20
+ margin: 0 auto;
21
+ width: 552px;
22
+ `,S=(0,m.ZP)(y.k)`
23
+ flex-direction: column;
24
+ `,R=({children:r})=>e.createElement(b,{shadow:"tableShadow",hasRadius:!0,paddingTop:9,paddingBottom:9,paddingLeft:10,paddingRight:10,background:"neutral0",justifyContent:"center"},r);R.propTypes={children:c().node.isRequired};const W=({children:r})=>e.createElement("div",null,e.createElement(y.k,{as:"header",justifyContent:"flex-end"},e.createElement(p.x,{paddingTop:6,paddingRight:8},e.createElement(O,null))),e.createElement(p.x,{paddingTop:2,paddingBottom:11},r));W.propTypes={children:c().node.isRequired};var T=W},78125:function(B,v,t){"use strict";t.d(v,{_:function(){return E}});var e=t(98178),p=t(49358);const y=()=>c=>c.admin_app||p.E,E=(0,e.P1)(y(),c=>c.permissions)},72218:function(B,v,t){"use strict";var e=t(63642),p=t(8471);const y=(0,p.ZP)(e.E)`
25
+ svg {
26
+ height: 1rem;
27
+ width: 1rem;
28
+ path {
29
+ fill: ${({theme:E})=>E.colors.neutral600};
30
+ }
31
+ }
32
+ `;v.Z=y},1115:function(B,v,t){"use strict";var e=t(32735),p=t(10369),y=t(27649),E=t(72850),c=t(49372),m=t(87933),A=t(8284),M=t(41415),L=t(19565),x=t(54894),O=t(60492),b=t(92802),S=t(60216),R=t.n(S),W=t(67879),T=t(8471),r=t(10190),F=t(954),a=t(72218);const G=(0,T.ZP)(p.o)`
33
+ ::-ms-reveal {
34
+ display: none;
35
+ }
36
+ `,te=({onSubmit:D,schema:I,children:se})=>{const[Le,Te]=(0,e.useState)(!1),{formatMessage:ge}=(0,W.Z)();return e.createElement(y.o,null,e.createElement(F.bU,null,e.createElement(b.J9,{enableReinitialize:!0,initialValues:{email:"",password:"",rememberMe:!1},onSubmit:D,validationSchema:I,validateOnChange:!1},({values:we,errors:ke,handleChange:Se})=>e.createElement(L.l0,{noValidate:!0},e.createElement(F.sg,null,e.createElement(r.Z,null),e.createElement(E.x,{paddingTop:6,paddingBottom:1},e.createElement(c.Z,{variant:"alpha",as:"h1"},ge({id:"Auth.form.welcome.title",defaultMessage:"Welcome!"}))),e.createElement(E.x,{paddingBottom:7},e.createElement(c.Z,{variant:"epsilon",textColor:"neutral600"},ge({id:"Auth.form.welcome.subtitle",defaultMessage:"Log in to your Strapi account"}))),ke.errorMessage&&e.createElement(c.Z,{id:"global-form-error",role:"alert",tabIndex:-1,textColor:"danger600"},ke.errorMessage)),e.createElement(m.k,{direction:"column",alignItems:"stretch",gap:6},e.createElement(p.o,{error:ke.email?ge({id:ke.email,defaultMessage:"This value is required."}):"",value:we.email,onChange:Se,label:ge({id:"Auth.form.email.label",defaultMessage:"Email"}),placeholder:ge({id:"Auth.form.email.placeholder",defaultMessage:"kai@doe.com"}),name:"email",required:!0}),e.createElement(G,{error:ke.password?ge({id:ke.password,defaultMessage:"This value is required."}):"",onChange:Se,value:we.password,label:ge({id:"global.password",defaultMessage:"Password"}),name:"password",type:Le?"text":"password",endAction:e.createElement(a.Z,{onClick:ze=>{ze.stopPropagation(),Te(je=>!je)},label:ge(Le?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},Le?e.createElement(x.Z,null):e.createElement(O.Z,null)),required:!0}),e.createElement(A.X,{onValueChange:ze=>{Se({target:{value:ze,name:"rememberMe"}})},value:we.rememberMe,"aria-label":"rememberMe",name:"rememberMe"},ge({id:"Auth.form.rememberMe.label",defaultMessage:"Remember me"})),e.createElement(M.z,{fullWidth:!0,type:"submit"},ge({id:"Auth.form.button.login",defaultMessage:"Login"}))))),se),e.createElement(m.k,{justifyContent:"center"},e.createElement(E.x,{paddingTop:4},e.createElement(L.rU,{to:"/auth/forgot-password"},ge({id:"Auth.link.forgot-password",defaultMessage:"Forgot your password?"})))))};te.defaultProps={children:null,onSubmit(){}},te.propTypes={children:R().node,onSubmit:R().func,schema:R().shape({type:R().string.isRequired}).isRequired},v.Z=te},5365:function(B,v,t){"use strict";var e=t(32735),p=t(60216),y=t.n(p),E=t(954),c=t(1115);const m=A=>e.createElement(E.ZP,null,e.createElement(c.Z,{...A}));m.defaultProps={onSubmit:A=>A.preventDefault()},m.propTypes={onSubmit:y().func},v.Z=m},53951:function(B,v,t){"use strict";t.r(v);var e=t(32735),p=t(27649),y=t(82055),E=t(17e3),c=t(9695),m=t(19565),A=t(8482),M=t(25386),L=t(67879);const x=()=>{const{formatMessage:O}=(0,L.Z)();return(0,m.go)(),e.createElement(p.o,{labelledBy:"title"},e.createElement(y.T,{id:"title",title:O({id:"content-manager.pageNotFound",defaultMessage:"Page not found"})}),e.createElement(E.D,null,e.createElement(c.x,{action:e.createElement(m.Qj,{variant:"secondary",endIcon:e.createElement(A.Z,null),to:"/"},O({id:"app.components.NotFoundPage.back",defaultMessage:"Back to homepage"})),content:O({id:"app.page.not.found",defaultMessage:"Oops! We can't seem to find the page you're looging for..."}),hasRadius:!0,icon:e.createElement(M.Z,{width:"10rem"}),shadow:"tableShadow"})))};v.default=x},41832:function(B,v){"use strict";const t=({data:e})=>{try{return Object.keys(e).reduce((p,y)=>{const E=e[y][0];return p[y]={id:E,defaultMessage:E},p},{})}catch{return{}}};v.Z=t},8997:function(B,v,t){"use strict";t.d(v,{R6:function(){return y},ot:function(){return x},Iz:function(){return O.Z},Pp:function(){return b},IF:function(){return R},Qy:function(){return te},WW:function(){return T}});var e=t(19565),y=async(D,I)=>{let se=null;try{await I.validate(D,{abortEarly:!1})}catch(Le){se=(0,e.CJ)(Le)}return se},E=t(32735),c=t(60216),m=t.n(c),A=t(53038);const M=({loadComponent:D})=>{const[I,se]=(0,E.useState)(null);return(0,E.useEffect)(()=>{(async()=>{try{const Te=await D();se(()=>Te.default)}catch(Te){console.log(Te)}})()},[D]),I?E.createElement(I,null):E.createElement(e.dO,null)},L=(D,I,se)=>E.createElement(A.AW,{render:()=>E.createElement(M,{loadComponent:D}),key:I,path:I,exact:se||!1});M.propTypes={loadComponent:m().func.isRequired};var x=L,O=t(41832),b=(D,I="")=>[D,I].filter(se=>se).join(" "),R=D=>`/admin/${D}`,T=D=>D.filter((I,se,Le)=>Le.findIndex(Te=>Te.key===I.key)===se),r=t(98978);const F=D=>sortBy(D,I=>I.name);var a=null;const G={bufferToHex(D){return[...new Uint8Array(D)].map(I=>I.toString(16).padStart(2,"0")).join("")},async digestMessage(D){const I=new TextEncoder().encode(D),se=await crypto.subtle.digest("SHA-256",I);return this.bufferToHex(se)}};async function te(D){if(!D)return null;try{return await G.digestMessage(D.email)}catch{return null}}},58414:function(B,v,t){"use strict";t.d(v,{pl:function(){return L},q5:function(){return O.Z}});var e=t(32735),p=t(19565),y=t(8997),E=t(97889);const c={data:[],isLoading:!0};var A=(b,S)=>(0,E.ZP)(b,R=>{switch(S.type){case"GET_DATA_SUCCEEDED":{R.data=S.data,R.isLoading=!1;break}case"GET_DATA_ERROR":{R.isLoading=!1;break}default:return R}}),L=({ssoEnabled:b})=>{const[S,R]=(0,e.useReducer)(A,c),W=(0,p.lm)(),{get:T}=(0,p.kY)();return(0,e.useEffect)(()=>{(async()=>{try{if(!b){R({type:"GET_DATA_SUCCEEDED",data:[]});return}const{data:F}=await T((0,y.IF)("providers"));R({type:"GET_DATA_SUCCEEDED",data:F})}catch(F){console.error(F),R({type:"GET_DATA_ERROR"}),W({type:"warning",message:{id:"notification.error"}})}})()},[T,b,W]),S},x=t(21306),O=t(35153)},21306:function(B,v,t){"use strict";var e=t(32735),p=t(19565),y=t(36866),E=t.n(y),c=t(67879),m=t(53038),A=t(35153);const M="strapi-notification-seat-limit",L="https://cloud.strapi.io/profile/billing",x="https://strapi.io/billing/request-seats",O=()=>{const{formatMessage:b}=(0,c.Z)();let{license:S,isError:R,isLoading:W}=(0,A.Z)();const T=(0,p.lm)(),{pathname:r}=(0,m.TH)(),{enforcementUserCount:F,permittedSeats:a,licenseLimitStatus:G,isHostedOnStrapiCloud:te}=S;(0,e.useEffect)(()=>{if(R||W)return;const D=!E()(a)&&!window.sessionStorage.getItem(`${M}-${r}`)&&(G==="AT_LIMIT"||G==="OVER_LIMIT");let I;G==="OVER_LIMIT"?I="warning":G==="AT_LIMIT"&&(I="softWarning"),D&&T({type:I,message:b({id:"notification.ee.warning.over-.message",defaultMessage:"Add seats to {licenseLimitStatus, select, OVER_LIMIT {invite} other {re-enable}} Users. If you already did it but it's not reflected in Strapi yet, make sure to restart your app."},{licenseLimitStatus:G}),title:b({id:"notification.ee.warning.at-seat-limit.title",defaultMessage:"{licenseLimitStatus, select, OVER_LIMIT {Over} other {At}} seat limit ({enforcementUserCount}/{permittedSeats})"},{licenseLimitStatus:G,enforcementUserCount:F,permittedSeats:a}),link:{url:te?L:x,label:b({id:"notification.ee.warning.seat-limit.link",defaultMessage:"{isHostedOnStrapiCloud, select, true {ADD SEATS} other {CONTACT SALES}}"},{isHostedOnStrapiCloud:te})},blockTransition:!0,onClose(){window.sessionStorage.setItem(`${M}-${r}`,!0)}})},[T,S,r,b,W,a,G,F,te,R])};v.Z=O},35153:function(B,v,t){"use strict";t.d(v,{Z:function(){return A}});var e=t(32735),p=t(19565),y=t(20108),E=t(15062),c=t(78125);function m(){const M=(0,E.v9)(c._),{get:L}=(0,p.kY)(),{isLoading:x,allowedActions:{canRead:O,canCreate:b,canUpdate:S,canDelete:R}}=(0,p.ss)(M.settings.users),W=O&&b&&S&&R,{data:T,isError:r,isLoading:F}=(0,y.useQuery)(["ee","license-limit-info"],async()=>{const{data:{data:te}}=await L("/admin/license-limit-information");return te},{enabled:!x&&W}),a=T??{},G=e.useCallback(te=>(a?.features??[]).find(I=>I.name===te)?.options??{},[a?.features]);return{license:a,getFeature:G,isError:r,isLoading:F}}var A=m},98768:function(B,v,t){"use strict";var e=t(32735),p=t(9026),y=t(72850),E=t(87933),c=t(49372),m=t(60216),A=t.n(m),M=t(67879),L=t(8471),x=t(954),O=t(1115),b=t(58414),S=t(33205);const R=(0,L.ZP)(p.i)`
37
+ flex: 1;
38
+ `,W=T=>{const r=window.strapi.features.isEnabled(window.strapi.features.SSO),{isLoading:F,data:a}=(0,b.pl)({ssoEnabled:r}),{formatMessage:G}=(0,M.Z)();return!r||!F&&a.length===0?e.createElement(x.ZP,null,e.createElement(O.Z,{...T})):e.createElement(x.ZP,null,e.createElement(O.Z,{...T},e.createElement(y.x,{paddingTop:7},e.createElement(E.k,{direction:"column",alignItems:"stretch",gap:7},e.createElement(E.k,null,e.createElement(R,null),e.createElement(y.x,{paddingLeft:3,paddingRight:3},e.createElement(c.Z,{variant:"sigma",textColor:"neutral600"},G({id:"Auth.login.sso.divider"}))),e.createElement(R,null)),e.createElement(S.Z,{providers:a,displayAllProviders:!1})))))};W.defaultProps={onSubmit:T=>T.preventDefault(),requestError:null},W.propTypes={formErrors:A().object.isRequired,modifiedData:A().object.isRequired,onChange:A().func.isRequired,onSubmit:A().func,requestError:A().object},v.Z=W},33205:function(B,v,t){"use strict";var e=t(32735),p=t(87933),y=t(63919),E=t(49372),c=t(15335),m=t(5803),A=t(60216),M=t.n(A),L=t(67879),x=t(14911),O=t(8471);const b=O.ZP.a`
39
+ width: ${136/16}rem;
40
+ display: flex;
41
+ justify-content: center;
42
+ align-items: center;
43
+ height: ${48/16}rem;
44
+ border: 1px solid ${({theme:T})=>T.colors.neutral150};
45
+ border-radius: ${({theme:T})=>T.borderRadius};
46
+ text-decoration: inherit;
47
+ &:link {
48
+ text-decoration: none;
49
+ }
50
+ color: ${({theme:T})=>T.colors.neutral600};
51
+ `,S=(0,O.ZP)(p.k)`
52
+ & a:not(:first-child):not(:last-child) {
53
+ margin: 0 ${({theme:T})=>T.spaces[2]};
54
+ }
55
+ & a:first-child {
56
+ margin-right: ${({theme:T})=>T.spaces[2]};
57
+ }
58
+ & a:last-child {
59
+ margin-left: ${({theme:T})=>T.spaces[2]};
60
+ }
61
+ `,R=({provider:T})=>e.createElement(y.u,{label:T.displayName},e.createElement(b,{href:`${window.strapi.backendURL}/admin/connect/${T.uid}`},T.icon?e.createElement("img",{src:T.icon,"aria-hidden":!0,alt:"",height:"32px"}):e.createElement(E.Z,null,T.displayName)));R.propTypes={provider:M().shape({icon:M().string,displayName:M().string.isRequired,uid:M().string.isRequired}).isRequired};const W=({providers:T,displayAllProviders:r})=>{const{formatMessage:F}=(0,L.Z)();return r?e.createElement(c.r,{gap:4},T.map(a=>e.createElement(m.P,{key:a.uid,col:4},e.createElement(R,{provider:a})))):T.length>2&&!r?e.createElement(c.r,{gap:4},T.slice(0,2).map(a=>e.createElement(m.P,{key:a.uid,col:4},e.createElement(R,{provider:a}))),e.createElement(m.P,{col:4},e.createElement(y.u,{label:F({id:"global.see-more"})},e.createElement(b,{as:x.rU,to:"/auth/providers"},e.createElement("span",{"aria-hidden":!0},"\u2022\u2022\u2022"))))):e.createElement(S,{justifyContent:"center"},T.map(a=>e.createElement(R,{key:a.uid,provider:a})))};W.defaultProps={displayAllProviders:!0},W.propTypes={providers:M().arrayOf(M().object).isRequired,displayAllProviders:M().bool},v.Z=W},48224:function(B,v,t){var e={"./ar.json":[38677,7958],"./ca.json":[90169,3516],"./cs.json":[43186,7519],"./de.json":[8343,6901],"./dk.json":[65668,7898],"./en.json":[10329,320],"./es.json":[45445,8367],"./eu.json":[69511,8360],"./fr.json":[8399,8006],"./gu.json":[10182,2248],"./he.json":[21757,830],"./hi.json":[43206,6332],"./hu.json":[72320,5894],"./id.json":[74221,8897],"./it.json":[90685,6817],"./ja.json":[21727,1312],"./ko.json":[30986,1377],"./ml.json":[11309,9903],"./ms.json":[75973,3025],"./nl.json":[80381,2671],"./no.json":[82446,562],"./pl.json":[84008,7846],"./pt-BR.json":[91417,9647],"./pt.json":[41830,3340],"./ru.json":[57098,123],"./sa.json":[92900,9726],"./sk.json":[52204,606],"./sv.json":[43211,9303],"./th.json":[49582,749],"./tr.json":[99154,395],"./uk.json":[2987,7403],"./vi.json":[50576,3278],"./zh-Hans.json":[35964,2553],"./zh.json":[91999,1011]};function p(y){if(!t.o(e,y))return Promise.resolve().then(function(){var m=new Error("Cannot find module '"+y+"'");throw m.code="MODULE_NOT_FOUND",m});var E=e[y],c=E[0];return t.e(E[1]).then(function(){return t.t(c,19)})}p.keys=function(){return Object.keys(e)},p.id=48224,B.exports=p},47750:function(B,v,t){"use strict";B.exports=t.p+"70674f63fc3904c20de0.svg"}}]);