@strapi/admin 4.2.0-beta.3 → 4.2.1-alpha.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 (160) hide show
  1. package/admin/src/app.js +4 -7
  2. package/admin/src/components/ConfigurationsProvider/index.js +51 -0
  3. package/admin/src/components/ConfigurationsProvider/reducer.js +28 -0
  4. package/admin/src/components/LeftMenu/index.js +12 -2
  5. package/admin/src/components/Providers/index.js +8 -4
  6. package/admin/src/components/UnauthenticatedLogo/index.js +4 -2
  7. package/admin/src/hooks/useFetchMarketplaceProviders/index.js +23 -0
  8. package/admin/src/hooks/useFetchMarketplaceProviders/utils/api.js +11 -0
  9. package/admin/src/pages/Admin/index.js +5 -15
  10. package/admin/src/pages/App/index.js +9 -18
  11. package/admin/src/pages/MarketplacePage/components/{EmptyPluginSearch/EmptyPluginGrid.js → EmptyNpmPackageSearch/EmptyNpmPackageGrid.js} +1 -1
  12. package/admin/src/pages/MarketplacePage/components/{EmptyPluginSearch → EmptyNpmPackageSearch}/index.js +6 -4
  13. package/admin/src/pages/MarketplacePage/components/{PluginCard → NpmPackageCard}/InstallPluginButton.js +0 -0
  14. package/admin/src/pages/MarketplacePage/components/{PluginCard → NpmPackageCard}/index.js +22 -10
  15. package/admin/src/pages/MarketplacePage/components/NpmPackagesGrid/index.js +42 -0
  16. package/admin/src/pages/MarketplacePage/components/PageHeader/index.js +12 -5
  17. package/admin/src/pages/MarketplacePage/index.js +99 -37
  18. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/Form/index.js +85 -0
  19. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/Form/init.js +13 -0
  20. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/Form/reducer.js +43 -0
  21. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoInput/index.js +118 -0
  22. package/admin/src/pages/{App → SettingsPage/pages/ApplicationInfosPage/components/LogoInput}/reducer.js +13 -7
  23. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoInput/stepper.js +25 -0
  24. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/AddLogoDialog.js +67 -0
  25. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/FromComputerForm.js +176 -0
  26. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/FromUrlForm.js +82 -0
  27. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/ImageCardAsset.js +51 -0
  28. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/PendingLogoDialog.js +97 -0
  29. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/index.js +85 -0
  30. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/reducer.js +28 -0
  31. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/index.js +153 -91
  32. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/api.js +16 -0
  33. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/constants.js +3 -0
  34. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/getFormData.js +17 -0
  35. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/parseFileMetadatas.js +76 -0
  36. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/prefixAllUrls.js +17 -0
  37. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/utils/urlToFile.js +21 -0
  38. package/admin/src/reducers.js +2 -4
  39. package/admin/src/translations/en.json +33 -3
  40. package/admin/src/translations/pl.json +264 -12
  41. package/admin/src/translations/vi.json +17 -17
  42. package/build/1856.6a94980b.chunk.js +172 -0
  43. package/build/2077.5456ccd1.chunk.js +194 -0
  44. package/build/2758.9475712b.chunk.js +162 -0
  45. package/build/2912.dd031292.chunk.js +253 -0
  46. package/build/4715.4588fdf5.chunk.js +385 -0
  47. package/build/4800.d3ebc81d.chunk.js +1 -0
  48. package/build/4982.c57c5675.chunk.js +308 -0
  49. package/build/7197.47565569.chunk.js +113 -0
  50. package/build/{6229.a5cca9f2.chunk.js → 7589.77ef4fbf.chunk.js} +2 -2
  51. package/build/{210.014495c1.chunk.js → 7757.f6eb5e92.chunk.js} +58 -58
  52. package/build/7841.9e9cf739.chunk.js +253 -0
  53. package/build/8681.aec05472.chunk.js +163 -0
  54. package/build/9066.2847fdff.chunk.js +101 -0
  55. package/build/{4073.41ac1235.chunk.js → 9115.623dc4f7.chunk.js} +1 -1
  56. package/build/9158.e48d88af.chunk.js +503 -0
  57. package/build/{7191.3bde3cbf.chunk.js → 9298.cb3b6bc1.chunk.js} +112 -113
  58. package/build/9420.ba035f29.chunk.js +508 -0
  59. package/build/948.d64fb515.chunk.js +2 -0
  60. package/build/Admin-authenticatedApp.63a5061a.chunk.js +80 -0
  61. package/build/{Admin_homePage.f157e33e.chunk.js → Admin_homePage.447df176.chunk.js} +2 -2
  62. package/build/Admin_marketplace.8a503eec.chunk.js +11 -0
  63. package/build/Admin_pluginsPage.91a96fa5.chunk.js +1 -0
  64. package/build/{Admin_profilePage.62c203ad.chunk.js → Admin_profilePage.249cbfc9.chunk.js} +2 -2
  65. package/build/Admin_settingsPage.0d138832.chunk.js +180 -0
  66. package/build/{admin-edit-roles-page.94e1403b.chunk.js → admin-edit-roles-page.7c2c9752.chunk.js} +1 -1
  67. package/build/admin-edit-users.b835bc48.chunk.js +11 -0
  68. package/build/admin-users.19900b75.chunk.js +12 -0
  69. package/build/api-tokens-create-page.8d299dde.chunk.js +1 -0
  70. package/build/api-tokens-edit-page.3e453fc1.chunk.js +1 -0
  71. package/build/{api-tokens-list-page.340750a6.chunk.js → api-tokens-list-page.872c3800.chunk.js} +1 -1
  72. package/build/{codemirror-css.b467b1de.chunk.js → codemirror-css.98490df3.chunk.js} +2 -2
  73. package/build/{codemirror-javacript.41bdefda.chunk.js → codemirror-javacript.cafbda9c.chunk.js} +1 -1
  74. package/build/codemirror-theme.b3c64617.chunk.js +34 -0
  75. package/build/{content-manager.6cdcfb6e.chunk.js → content-manager.002bfd99.chunk.js} +16 -16
  76. package/build/content-type-builder.a0450dfe.chunk.js +141 -0
  77. package/build/{cropper-css.ecc0d670.chunk.js → cropper-css.0055cd53.chunk.js} +2 -2
  78. package/build/email-settings-page.1f235173.chunk.js +103 -0
  79. package/build/en-json.0a5ba154.chunk.js +1 -0
  80. package/build/{fontawesome-css-all.04f33619.chunk.js → fontawesome-css-all.b88d464e.chunk.js} +3 -3
  81. package/build/{fontawesome-css.477ba714.chunk.js → fontawesome-css.a92a7b6c.chunk.js} +2 -2
  82. package/build/highlight.js.9d8ef460.chunk.js +86 -0
  83. package/build/i18n-settings-page.06e88cf2.chunk.js +101 -0
  84. package/build/index.html +1 -1
  85. package/build/main.e3a13431.js +8404 -0
  86. package/build/pl-json.f65302c2.chunk.js +1 -0
  87. package/build/{runtime~main.e7611418.js → runtime~main.dacf1aff.js} +2 -2
  88. package/build/sso-settings-page.a7c2e854.chunk.js +1 -0
  89. package/build/upload-settings.4ee2f135.chunk.js +101 -0
  90. package/build/upload.0d4153e8.chunk.js +105 -0
  91. package/build/users-advanced-settings-page.747b2ec1.chunk.js +101 -0
  92. package/build/users-email-settings-page.8b9a266d.chunk.js +1 -0
  93. package/build/users-providers-settings-page.fc9d8f9d.chunk.js +1 -0
  94. package/build/{users-roles-settings-page.988ebc3b.chunk.js → users-roles-settings-page.1bf4ffc5.chunk.js} +2 -2
  95. package/build/vi-json.bf3424be.chunk.js +1 -0
  96. package/build/webhook-edit-page.142b23ac.chunk.js +23 -0
  97. package/build/webhook-list-page.671582a0.chunk.js +133 -0
  98. package/index.js +239 -53
  99. package/package.json +8 -12
  100. package/scripts/build.js +3 -17
  101. package/server/config/admin-actions.js +14 -0
  102. package/server/controllers/admin.js +29 -12
  103. package/server/policies/index.js +0 -1
  104. package/server/routes/admin.js +28 -9
  105. package/server/routes/serve-admin-panel.js +1 -1
  106. package/server/services/index.js +1 -0
  107. package/server/services/project-settings.js +173 -0
  108. package/server/utils/index.d.ts +2 -0
  109. package/server/validation/project-settings.js +39 -0
  110. package/webpack.alias.js +30 -19
  111. package/webpack.config.js +5 -28
  112. package/admin/src/pages/App/constants.js +0 -1
  113. package/admin/src/tsconfig.json +0 -10
  114. package/build/1709.ceed0e18.chunk.js +0 -503
  115. package/build/1856.521a99fd.chunk.js +0 -172
  116. package/build/20.cf744c35.chunk.js +0 -308
  117. package/build/2077.51485bfb.chunk.js +0 -194
  118. package/build/2135.95ee6de1.chunk.js +0 -162
  119. package/build/2524.688d0355.chunk.js +0 -1
  120. package/build/2912.79c2b3c8.chunk.js +0 -253
  121. package/build/4715.77e04177.chunk.js +0 -385
  122. package/build/4761.3eabdf46.chunk.js +0 -101
  123. package/build/6281.f10a7e3a.chunk.js +0 -1
  124. package/build/7009.79fce86d.chunk.js +0 -164
  125. package/build/7841.f0e7d629.chunk.js +0 -253
  126. package/build/7863.bc7a8f3a.chunk.js +0 -112
  127. package/build/9420.cb0b75e8.chunk.js +0 -508
  128. package/build/Admin-authenticatedApp.4ce8d292.chunk.js +0 -80
  129. package/build/Admin_marketplace.1e3393c9.chunk.js +0 -11
  130. package/build/Admin_pluginsPage.788fb2f6.chunk.js +0 -1
  131. package/build/Admin_settingsPage.924a7816.chunk.js +0 -170
  132. package/build/admin-edit-users.6c2bf718.chunk.js +0 -10
  133. package/build/admin-users.e03db115.chunk.js +0 -11
  134. package/build/api-tokens-create-page.787ab302.chunk.js +0 -1
  135. package/build/api-tokens-edit-page.e4010c0c.chunk.js +0 -1
  136. package/build/codemirror-theme.cf9f9eb6.chunk.js +0 -34
  137. package/build/content-type-builder.e73879b9.chunk.js +0 -141
  138. package/build/email-settings-page.f67d13b2.chunk.js +0 -103
  139. package/build/en-json.3e1a222e.chunk.js +0 -1
  140. package/build/highlight.js.3381ffc3.chunk.js +0 -86
  141. package/build/i18n-settings-page.6b67cb75.chunk.js +0 -101
  142. package/build/main.45472ea9.js +0 -8404
  143. package/build/pl-json.94f05d2c.chunk.js +0 -1
  144. package/build/sso-settings-page.e9034e22.chunk.js +0 -1
  145. package/build/upload-settings.3db55de0.chunk.js +0 -101
  146. package/build/upload.070c189b.chunk.js +0 -105
  147. package/build/users-advanced-settings-page.a23cda17.chunk.js +0 -101
  148. package/build/users-email-settings-page.0a096388.chunk.js +0 -1
  149. package/build/users-providers-settings-page.bfe7755a.chunk.js +0 -1
  150. package/build/vi-json.3d14e91e.chunk.js +0 -1
  151. package/build/webhook-edit-page.2fa94db3.chunk.js +0 -23
  152. package/build/webhook-list-page.b594db49.chunk.js +0 -133
  153. package/server/policies/isTelemetryEnabled.js +0 -16
  154. package/utils/create-cache-dir.js +0 -161
  155. package/utils/get-custom-app-config-file.js +0 -23
  156. package/utils/get-custom-webpack-config.js +0 -38
  157. package/utils/get-plugins-path.js +0 -26
  158. package/utils/index.js +0 -13
  159. package/utils/should-build-admin.js +0 -52
  160. package/utils/watch-admin-files.js +0 -59
@@ -0,0 +1,80 @@
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[801],{72298:(K,R,n)=>{n.r(R),n.d(R,{default:()=>_t});var e=n(32735),i=n(83985),B=n(84968),P=n(33795),Q=n.n(P);const S=JSON.parse('{"i8":"4.2.1-alpha.0"}');var W=n(28492),u=n(5141),V=n(74506),x=n(51968),C=n(19615),G=n(60216),s=n.n(G),T=n(5636),b=n(27635),v=n(34499),N=n(54742),l=n(9808),d=n(95602),E=n(90662),M=n(82926),Be=n.n(M),Ne=n(70258),be=n.n(Ne),Ge=n(15015);const Ue=(0,C.default)(l.Box)`
2
+ width: ${150/16}rem;
3
+ position: absolute;
4
+ bottom: ${({theme:t})=>t.spaces[9]};
5
+ left: ${({theme:t})=>t.spaces[5]};
6
+ `,te=(0,C.default)(u.NavLink)`
7
+ display: flex;
8
+ justify-content: space-between;
9
+ align-items: center;
10
+ text-decoration: none;
11
+ padding: ${({theme:t})=>`${t.spaces[2]} ${t.spaces[4]}`};
12
+ border-radius: ${({theme:t})=>t.spaces[1]};
13
+
14
+ &:hover {
15
+ background: ${({theme:t,logout:a})=>a?t.colors.danger100:t.colors.primary100};
16
+ text-decoration: none;
17
+ }
18
+
19
+ svg {
20
+ path {
21
+ fill: ${({theme:t})=>t.colors.danger600};
22
+ }
23
+ }
24
+ `,ne=({generalSectionLinks:t,pluginsSectionLinks:a})=>{const o=(0,e.useRef)(),[r,p]=(0,e.useState)(!1),{logos:{menu:c}}=(0,Ge.Z)(),[f,y]=(0,i.usePersistentState)("navbar-condensed",!1),{userDisplayName:h}=(0,i.useAppInfos)(),{formatMessage:g}=(0,T.useIntl)(),L=h.split(" ").map(m=>m.substring(0,1)).join("").substring(0,2),D=()=>p(m=>!m),j=()=>{i.auth.clearAppStorage(),D()},$=m=>{var A,I;!m.currentTarget.contains(m.relatedTarget)&&((I=(A=m.relatedTarget)==null?void 0:A.parentElement)==null?void 0:I.id)!=="main-nav-user-button"&&p(!1)},F=g({id:"app.components.LeftMenu.navbrand.title",defaultMessage:"Strapi Dashboard"});return e.createElement(v.MainNav,{condensed:f},e.createElement(v.NavBrand,{as:u.NavLink,workplace:g({id:"app.components.LeftMenu.navbrand.workplace",defaultMessage:"Workplace"}),title:F,icon:e.createElement("img",{src:c.custom||c.default,alt:g({id:"app.components.LeftMenu.logo.alt",defaultMessage:"Application logo"})})}),e.createElement(b.Divider,null),e.createElement(v.NavSections,null,e.createElement(v.NavLink,{as:u.NavLink,to:"/content-manager",icon:e.createElement(Be(),null)},g({id:"global.content-manager",defaultMessage:"Content manager"})),a.length>0?e.createElement(v.NavSection,{label:"Plugins"},a.map(m=>{const A=m.icon;return e.createElement(v.NavLink,{as:u.NavLink,to:m.to,key:m.to,icon:e.createElement(A,null)},g(m.intlLabel))})):null,t.length>0?e.createElement(v.NavSection,{label:"General"},t.map(m=>{const A=m.icon;return e.createElement(v.NavLink,{as:u.NavLink,badgeContent:m.notificationsCount>0&&m.notificationsCount.toString()||void 0,to:m.to,key:m.to,icon:e.createElement(A,null)},g(m.intlLabel))})):null),e.createElement(v.NavUser,{id:"main-nav-user-button",ref:o,onClick:D,initials:L},h),r&&e.createElement(Ue,{onBlur:$,padding:1,shadow:"tableShadow",background:"neutral0",hasRadius:!0},e.createElement(N.FocusTrap,{onEscape:D},e.createElement(E.Stack,{spacing:0},e.createElement(te,{tabIndex:0,onClick:D,to:"/me"},e.createElement(d.Typography,null,g({id:"global.profile",defaultMessage:"Profile"}))),e.createElement(te,{tabIndex:0,onClick:j,logout:"logout",to:"/auth/login"},e.createElement(d.Typography,{textColor:"danger600"},g({id:"app.components.LeftMenu.logout",defaultMessage:"Logout"})),e.createElement(be(),null))))),e.createElement(v.NavCondense,{onClick:()=>y(m=>!m)},g(f?{id:"app.components.LeftMenu.expand",defaultMessage:"Expand the navbar"}:{id:"app.components.LeftMenu.collapse",defaultMessage:"Collapse the navbar"})))};ne.propTypes={generalSectionLinks:s().array.isRequired,pluginsSectionLinks:s().array.isRequired};const Fe=ne;var O=n(19192),We=n(16540);const je=(0,C.default)(l.Box)`
25
+ flex: 1;
26
+ `,ae=({children:t,sideNav:a})=>{const{formatMessage:o}=(0,T.useIntl)();return e.createElement(l.Box,{background:"neutral100"},e.createElement(We.SkipToContent,null,o({id:"skipToContent",defaultMessage:"Skip to content"})),e.createElement(O.Flex,{alignItems:"flex-start"},a,e.createElement(je,null,t)))};ae.propTypes={children:s().node.isRequired,sideNav:s().node.isRequired};const $e=ae;var Y=n(16925),oe=n(28257);const Ke=(0,C.default)(l.Box)`
27
+ position: fixed;
28
+ bottom: ${({theme:t})=>t.spaces[2]};
29
+ right: ${({theme:t})=>t.spaces[2]};
30
+ `,Ve=C.default.button`
31
+ width: ${({theme:t})=>t.spaces[8]};
32
+ height: ${({theme:t})=>t.spaces[8]};
33
+ background: ${({theme:t})=>t.colors.primary600};
34
+ box-shadow: ${({theme:t})=>t.shadows.tableShadow};
35
+ border-radius: 50%;
36
+ svg {
37
+ color: ${({theme:t})=>t.colors.buttonNeutral0};
38
+ }
39
+ `,ze=(0,C.default)(l.Box)`
40
+ position: absolute;
41
+ bottom: ${({theme:t})=>`${t.spaces[9]}`};
42
+ right: 0;
43
+ width: ${200/16}rem;
44
+ `,ke=C.default.a`
45
+ display: flex;
46
+ align-items: center;
47
+ text-decoration: none;
48
+ padding: ${({theme:t})=>t.spaces[2]};
49
+ padding-left: ${({theme:t})=>t.spaces[5]};
50
+
51
+ svg {
52
+ color: ${({theme:t})=>t.colors.neutral600};
53
+ margin-right: ${({theme:t})=>t.spaces[2]};
54
+ }
55
+
56
+ &:hover {
57
+ background: ${({theme:t})=>t.colors.neutral100};
58
+ color: ${({theme:t})=>t.colors.neutral500};
59
+
60
+ svg {
61
+ color: ${({theme:t})=>t.colors.neutral700};
62
+ }
63
+
64
+ ${[d.Typography]} {
65
+ color: ${({theme:t})=>t.colors.neutral700};
66
+ }
67
+ }
68
+
69
+ ${[d.Typography]} {
70
+ color: ${({theme:t})=>t.colors.neutral600};
71
+ }
72
+ `,He=()=>{const[t,a]=(0,e.useState)(!1),{formatMessage:o}=(0,T.useIntl)(),{showTutorials:r}=(0,W.um)();if(!r)return null;const p=[{icon:"book",label:o({id:"global.documentation",defaultMessage:"Documentation"}),destination:"https://docs.strapi.io"},{icon:"file",label:o({id:"app.static.links.cheatsheet",defaultMessage:"CheatSheet"}),destination:"https://strapi-showcase.s3-us-west-2.amazonaws.com/CheatSheet.pdf"}],c=()=>{a(f=>!f)};return e.createElement(Ke,{as:"aside"},e.createElement(Ve,{id:"onboarding","aria-label":o({id:"app.components.Onboarding.help.button",defaultMessage:"Help button"}),onClick:c},!t&&e.createElement(Y.G,{icon:oe.faQuestion}),t&&e.createElement(Y.G,{icon:oe.faTimes})),t&&e.createElement(N.FocusTrap,{onEscape:c},e.createElement(ze,{background:"neutral0",hasRadius:!0,shadow:"tableShadow",paddingBottom:2,paddingTop:2},p.map(f=>e.createElement(ke,{key:f.label,rel:"nofollow noreferrer noopener",target:"_blank",href:f.destination},e.createElement(Y.G,{icon:f.icon}),e.createElement(d.Typography,null,f.label))))))};var se=n(81430),Ze=n(88311),re=n.n(Ze),Qe=n(70620),Ye=n(64410),Xe=n(20763),ie=n(44526),Je=n(94009),we=n.n(Je);const qe=(0,C.default)(O.Flex)`
73
+ position: fixed;
74
+ z-index: 4;
75
+ inset: 0;
76
+ /* this is theme.colors.neutral800 with opacity */
77
+ background: ${({theme:t})=>`${t.colors.neutral800}1F`};
78
+ `,le=({onClose:t,onSkip:a,children:o,hideSkip:r})=>{const{formatMessage:p}=(0,T.useIntl)();return e.createElement(Ye.Portal,null,e.createElement(qe,{onClick:t,padding:8,justifyContent:"center"},e.createElement(N.FocusTrap,{onEscape:t},e.createElement(E.Stack,{background:"neutral0",width:(0,i.pxToRem)(660),shadow:"popupShadow",hasRadius:!0,padding:4,spacing:8,role:"dialog","aria-modal":!0,onClick:c=>c.stopPropagation()},e.createElement(O.Flex,{justifyContent:"flex-end"},e.createElement(Xe.IconButton,{onClick:t,"aria-label":p({id:"app.utils.close-label",defaultMessage:"Close"}),icon:e.createElement(we(),null)})),e.createElement(l.Box,{paddingLeft:7,paddingRight:7,paddingBottom:r?8:0},o),!r&&e.createElement(O.Flex,{justifyContent:"flex-end"},e.createElement(ie.Button,{variant:"tertiary",onClick:a},p({id:"app.components.GuidedTour.skip",defaultMessage:"Skip the tour"})))))))};le.propTypes={children:s().node.isRequired,onClose:s().func.isRequired,onSkip:s().func.isRequired,hideSkip:s().bool.isRequired};const _e=le;var de=n(49415);const ce={stepContent:null,sectionIndex:null,stepIndex:null,hasSectionAfter:!1,hasStepAfter:!1},et=(t=ce,a)=>(0,de.default)(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}});var tt=n(30345),ue=n.n(tt);const nt=C.default.li`
79
+ list-style: disc;
80
+ `,pe=({id:t,defaultMessage:a})=>{const{formatMessage:o}=(0,T.useIntl)();return e.createElement(E.Stack,{spacing:4,paddingBottom:6},o({id:t,defaultMessage:a},{documentationLink:r=>e.createElement("a",{target:"_blank",rel:"noopener noreferrer",href:"https://docs.strapi.io/developer-docs/latest/developer-resources/database-apis-reference/rest-api.html#api-parameters"},r),b:r=>e.createElement(d.Typography,{fontWeight:"semiBold"},r),p:r=>e.createElement(d.Typography,null,r),light:r=>e.createElement(d.Typography,{textColor:"neutral600"},r),ul:r=>e.createElement(l.Box,{paddingLeft:6},e.createElement("ul",null,r)),li:r=>e.createElement(nt,null,r)}))};pe.propTypes={id:s().string.isRequired,defaultMessage:s().string.isRequired};const at=pe;var X=n(29470),ot=n(48634);const J=({number:t,last:a,type:o})=>e.createElement(l.Box,{paddingTop:3,paddingBottom:a?0:3},e.createElement(ot.Z,{number:t,type:o}));J.defaultProps={number:void 0,last:!1,type:""},J.propTypes={number:s().number,last:s().bool,type:s().string};const me=J;var U=n(66358),st=Object.defineProperty,ge=Object.getOwnPropertySymbols,rt=Object.prototype.hasOwnProperty,it=Object.prototype.propertyIsEnumerable,fe=(t,a,o)=>a in t?st(t,a,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[a]=o,lt=(t,a)=>{for(var o in a||(a={}))rt.call(a,o)&&fe(t,o,a[o]);if(ge)for(var o of ge(a))it.call(a,o)&&fe(t,o,a[o]);return t};const w=({title:t,content:a,cta:o,onCtaClick:r,sectionIndex:p,stepIndex:c,hasSectionAfter:f})=>{const{formatMessage:y}=(0,T.useIntl)(),h=p>0,g=c>0,L=p+1;return e.createElement(e.Fragment,null,e.createElement(O.Flex,{alignItems:"stretch"},e.createElement(O.Flex,{marginRight:8,justifyContent:"center",minWidth:(0,i.pxToRem)(30)},h&&e.createElement(X.Z,{type:U.hx,minHeight:(0,i.pxToRem)(24)})),e.createElement(d.Typography,{variant:"sigma",textColor:"primary600"},y({id:"app.components.GuidedTour.title",defaultMessage:"3 steps to get started"}))),e.createElement(O.Flex,null,e.createElement(O.Flex,{marginRight:8,minWidth:(0,i.pxToRem)(30)},e.createElement(me,{number:p+1,type:g?U.hx:U.lW})),e.createElement(d.Typography,{variant:"alpha",fontWeight:"bold",textColor:"neutral800",as:"h3",id:"title"},y(t))),e.createElement(O.Flex,{alignItems:"stretch"},e.createElement(O.Flex,{marginRight:8,direction:"column",justifyContent:"center",minWidth:(0,i.pxToRem)(30)},f&&e.createElement(e.Fragment,null,e.createElement(X.Z,{type:U.hx}),g&&e.createElement(me,{number:L+1,type:U.lW,last:!0}))),e.createElement(l.Box,null,e.createElement(at,lt({},a)),o&&(o.target?e.createElement(i.LinkButton,{endIcon:e.createElement(ue(),null),onClick:r,to:o.target},y(o.title)):e.createElement(ie.Button,{endIcon:e.createElement(ue(),null),onClick:r},y(o.title))))),g&&f&&e.createElement(l.Box,{paddingTop:3},e.createElement(O.Flex,{marginRight:8,justifyContent:"center",width:(0,i.pxToRem)(30)},e.createElement(X.Z,{type:U.hx,minHeight:(0,i.pxToRem)(24)}))))};w.defaultProps={currentStep:null,cta:void 0},w.propTypes={sectionIndex:s().number.isRequired,stepIndex:s().number.isRequired,hasSectionAfter:s().bool.isRequired,content:s().shape({id:s().string.isRequired,defaultMessage:s().string.isRequired}).isRequired,cta:s().shape({target:s().string,title:s().shape({id:s().string.isRequired,defaultMessage:s().string.isRequired})}),currentStep:s().string,onCtaClick:s().func.isRequired,title:s().shape({id:s().string.isRequired,defaultMessage:s().string.isRequired}).isRequired};const dt=w;var ct=Object.defineProperty,ut=Object.defineProperties,pt=Object.getOwnPropertyDescriptors,he=Object.getOwnPropertySymbols,mt=Object.prototype.hasOwnProperty,gt=Object.prototype.propertyIsEnumerable,Ee=(t,a,o)=>a in t?ct(t,a,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[a]=o,ft=(t,a)=>{for(var o in a||(a={}))mt.call(a,o)&&Ee(t,o,a[o]);if(he)for(var o of he(a))gt.call(a,o)&&Ee(t,o,a[o]);return t},ht=(t,a)=>ut(t,pt(a));const Et=()=>{const{currentStep:t,guidedTourState:a,setCurrentStep:o,setStepState:r,isGuidedTourVisible:p,setSkipped:c}=(0,i.useGuidedTour)(),[f,y]=(0,e.useState)(t),[{stepContent:h,sectionIndex:g,stepIndex:L,hasSectionAfter:D,hasStepAfter:j},$]=(0,e.useReducer)(et,ce),{trackUsage:F}=(0,i.useTracking)();(0,e.useEffect)(()=>{if(!t){y(!1);return}const[I]=re()(a,t);y(!I&&p)},[t,a,p]),(0,e.useEffect)(()=>{if(t){const[I]=re()(Qe.Z,t),k=Object.keys(a),[H,De]=t.split("."),ee=k.indexOf(H),Z=Object.keys(a[H]).indexOf(De),en=ee<k.length-1,tn=Z<Object.keys(a[H]).length-1;$({type:"UPDATE_MODAL",content:I,newSectionIndex:ee,newStepIndex:Z,newHasSectionAfter:en,newHasStepAfter:tn})}},[t,a]);const m=()=>{r(t,!0),F(h.trackingEvent),o(null)},A=()=>{c(!0),o(null),F("didSkipGuidedtour")};return f&&h?e.createElement(_e,{hideSkip:!j&&!D,onSkip:A,onClose:m},e.createElement(dt,ht(ft({},h),{onCtaClick:m,currentStep:t,sectionIndex:g,stepIndex:L,hasSectionAfter:D}))):null},yt=(0,e.lazy)(()=>Promise.all([n.e(8469),n.e(9420),n.e(4982),n.e(948),n.e(9298),n.e(994)]).then(n.bind(n,19415))),vt=(0,e.lazy)(()=>Promise.all([n.e(4800),n.e(3981)]).then(n.bind(n,5085))),Tt=(0,e.lazy)(()=>n.e(3677).then(n.bind(n,73204))),Pt=(0,e.lazy)(()=>Promise.all([n.e(8469),n.e(5516)]).then(n.bind(n,18207))),ye=(0,e.lazy)(()=>Promise.resolve().then(n.bind(n,6437))),Ct=(0,e.lazy)(()=>n.e(9115).then(n.bind(n,69115))),Mt=(0,e.lazy)(()=>n.e(9497).then(n.bind(n,63072))),ve=(0,e.lazy)(()=>Promise.all([n.e(8469),n.e(9420),n.e(4982),n.e(2758),n.e(5895)]).then(n.bind(n,819))),Ot=()=>{const{trackUsage:t}=(0,i.useTracking)();(0,e.useEffect)(()=>{t("didAccessAuthenticatedAdministration")},[])},Rt=()=>{Ot();const{isLoading:t,generalSectionLinks:a,pluginsSectionLinks:o}=(0,W.H9)(),{menu:r}=(0,i.useStrapiApp)(),p=(0,e.useMemo)(()=>r.filter(c=>c.Component).map(({to:c,Component:f,exact:y})=>(0,se.ot)(f,c,y)),[r]);return t?e.createElement(i.LoadingIndicatorPage,null):e.createElement(V.DndProvider,{backend:x.PD},e.createElement($e,{sideNav:e.createElement(Fe,{generalSectionLinks:a,pluginsSectionLinks:o})},e.createElement(e.Suspense,{fallback:e.createElement(i.LoadingIndicatorPage,null)},e.createElement(u.Switch,null,e.createElement(u.Route,{path:"/",component:vt,exact:!0}),e.createElement(u.Route,{path:"/me",component:Mt,exact:!0}),e.createElement(u.Route,{path:"/content-manager",component:yt}),p,e.createElement(u.Route,{path:"/settings/:settingId",component:ve}),e.createElement(u.Route,{path:"/settings",component:ve,exact:!0}),e.createElement(u.Route,{path:"/marketplace"},e.createElement(Pt,null)),e.createElement(u.Route,{path:"/list-plugins",exact:!0},e.createElement(Tt,null)),e.createElement(u.Route,{path:"/404",component:ye}),e.createElement(u.Route,{path:"/500",component:Ct}),e.createElement(u.Route,{path:"",component:ye}))),e.createElement(Et,null),e.createElement(He,null)))};var St=Object.defineProperty,Te=Object.getOwnPropertySymbols,At=Object.prototype.hasOwnProperty,It=Object.prototype.propertyIsEnumerable,Pe=(t,a,o)=>a in t?St(t,a,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[a]=o,xt=(t,a)=>{for(var o in a||(a={}))At.call(a,o)&&Pe(t,o,a[o]);if(Te)for(var o of Te(a))It.call(a,o)&&Pe(t,o,a[o]);return t};const Lt=t=>({plugins:Object.keys(t).reduce((a,o)=>(a[o]=xt({},t[o]),a),{})});var Dt=n(3040),Bt=n.n(Dt);const Ce={plugins:null},Nt=(t=Ce,a)=>(0,de.default)(t,o=>{switch(a.type){case"SET_PLUGIN_READY":{Bt()(o,["plugins",a.pluginId,"isReady"],!0);break}default:return o}}),bt=()=>{const{plugins:t}=(0,i.useStrapiApp)(),[{plugins:a},o]=(0,e.useReducer)(Nt,Ce,()=>Lt(t)),r=(0,e.useRef)(c=>{o({type:"SET_PLUGIN_READY",pluginId:c})});if(Object.keys(a).some(c=>a[c].isReady===!1)){const c=Object.keys(a).reduce((f,y)=>{const h=a[y].initializer;if(h){const g=a[y].pluginId;f.push(e.createElement(h,{key:g,setPlugin:r.current}))}return f},[]);return e.createElement(e.Fragment,null,c,e.createElement(i.LoadingIndicatorPage,null))}return e.createElement(Rt,null)};var Me=n(4409),Oe=n(3828);const Gt=()=>({type:Oe.l}),Ut=t=>({type:Oe.m,permissions:t}),Re=({children:t,permissions:a,refetchPermissions:o})=>{const{allPermissions:r}=(0,Me.v9)(c=>c.rbacProvider),p=(0,Me.I0)();return(0,e.useEffect)(()=>(p(Ut(a)),()=>{p(Gt())}),[a,p]),r?e.createElement(i.RBACProviderContext.Provider,{value:{allPermissions:r,refetchPermissions:o}},t):e.createElement(i.LoadingIndicatorPage,null)};Re.propTypes={children:s().element.isRequired,permissions:s().array.isRequired,refetchPermissions:s().func.isRequired};const Ft=Re;var Wt=n(43653),jt=n.n(Wt),$t=n(12551),q=n.n($t);const Se=(t,a)=>!q().valid(t)||!q().valid(a)?!1:q().lt(t,a);var _=n(81999),z=(t,a,o)=>new Promise((r,p)=>{var c=h=>{try{y(o.next(h))}catch(g){p(g)}},f=h=>{try{y(o.throw(h))}catch(g){p(g)}},y=h=>h.done?r(h.value):Promise.resolve(h.value).then(c,f);y((o=o.apply(t,a)).next())});const Ae=S.i8,Kt=!JSON.parse(localStorage.getItem("STRAPI_UPDATE_NOTIF")),Vt=t=>z(void 0,null,function*(){try{const{data:{tag_name:a}}=yield jt().get("https://api.github.com/repos/strapi/strapi/releases/latest");return Se(Ae,a)&&Kt&&t({type:"info",message:{id:"notification.version.update.message"},link:{url:`https://github.com/strapi/strapi/releases/tag/${a}`,label:{id:"global.see-more"}},blockTransition:!0,onClose:()=>localStorage.setItem("STRAPI_UPDATE_NOTIF",!0)}),a}catch(a){return Ae}}),zt=()=>z(void 0,null,function*(){try{const{data:t,headers:a}=yield _.be.get("/admin/information");if(!a["content-type"].includes("application/json"))throw new Error("Not found");return t.data}catch(t){throw new Error(t)}}),kt=()=>z(void 0,null,function*(){try{const{data:t,headers:a}=yield _.be.get("/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)}}),Ht=()=>z(void 0,null,function*(){try{const{data:{data:{roles:t}}}=yield _.be.get("/admin/users/me");return t}catch(t){throw new Error(t)}});var Zt=Object.defineProperty,Qt=Object.defineProperties,Yt=Object.getOwnPropertyDescriptors,Ie=Object.getOwnPropertySymbols,Xt=Object.prototype.hasOwnProperty,Jt=Object.prototype.propertyIsEnumerable,xe=(t,a,o)=>a in t?Zt(t,a,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[a]=o,wt=(t,a)=>{for(var o in a||(a={}))Xt.call(a,o)&&xe(t,o,a[o]);if(Ie)for(var o of Ie(a))Jt.call(a,o)&&xe(t,o,a[o]);return t},qt=(t,a)=>Qt(t,Yt(a));const Le=S.i8,_t=()=>{const{setGuidedTourVisibility:t}=(0,i.useGuidedTour)(),a=(0,i.useNotification)(),o=(0,e.useRef)(t),r=i.auth.getUserInfo(),p=Q()(r,"username")||(0,se.Pp)(r.firstname,r.lastname),[c,f]=(0,e.useState)(p),{showReleaseNotification:y}=(0,W.um)(),[{data:h,status:g},{data:L,isLoading:D},{data:j,status:$,refetch:F,isFetched:m,isFetching:A},{data:I}]=(0,B.useQueries)([{queryKey:"app-infos",queryFn:zt},{queryKey:"strapi-release",queryFn:()=>Vt(a),enabled:y,initialData:Le},{queryKey:"admin-users-permission",queryFn:kt,initialData:[]},{queryKey:"user-roles",queryFn:Ht}]),k=(0,e.useMemo)(()=>Se(Le,L),[L]);return(0,e.useEffect)(()=>{I&&I.find(({code:Z})=>Z==="strapi-super-admin")&&o.current(!0)},[I]),D||(A&&m||g==="loading"||$==="loading")?e.createElement(i.LoadingIndicatorPage,null):g==="error"?e.createElement("div",null,"error..."):e.createElement(i.AppInfosContext.Provider,{value:qt(wt({},h),{latestStrapiReleaseTag:L,setUserDisplayName:f,shouldUpdateStrapi:k,userDisplayName:c})},e.createElement(Ft,{permissions:j,refetchPermissions:F},e.createElement(bt,null)))}},29470:(K,R,n)=>{n.d(R,{Z:()=>N});var e=n(32735),i=n(60216),B=n.n(i),P=n(83985),Q=n.n(P),S=n(9808),W=n.n(S),u=n(66358),V=Object.defineProperty,x=Object.getOwnPropertySymbols,C=Object.prototype.hasOwnProperty,G=Object.prototype.propertyIsEnumerable,s=(l,d,E)=>d in l?V(l,d,{enumerable:!0,configurable:!0,writable:!0,value:E}):l[d]=E,T=(l,d)=>{for(var E in d||(d={}))C.call(d,E)&&s(l,E,d[E]);if(x)for(var E of x(d))G.call(d,E)&&s(l,E,d[E]);return l},b=(l,d)=>{var E={};for(var M in l)C.call(l,M)&&d.indexOf(M)<0&&(E[M]=l[M]);if(l!=null&&x)for(var M of x(l))d.indexOf(M)<0&&G.call(l,M)&&(E[M]=l[M]);return E};const v=l=>{var d=l,{type:E}=d,M=b(d,["type"]);return e.createElement(S.Box,T({width:(0,P.pxToRem)(2),height:"100%",background:E===u.VM?"neutral300":"primary500",hasRadius:!0},M))};v.defaultProps={type:u.VM},v.propTypes={type:B().oneOf([u.lW,u.hx,u.VM])};const N=v},48634:(K,R,n)=>{n.d(R,{Z:()=>v});var e=n(32735),i=n(60216),B=n.n(i),P=n(83985),Q=n.n(P),S=n(19192),W=n.n(S),u=n(95602),V=n.n(u),x=n(78752),C=n.n(x),G=n(88677),s=n.n(G),T=n(66358);const b=({type:N,number:l})=>N===T.hx?e.createElement(S.Flex,{background:"primary600",padding:2,borderRadius:"50%",width:(0,P.pxToRem)(30),height:(0,P.pxToRem)(30),justifyContent:"center"},e.createElement(x.Icon,{as:s(),"aria-hidden":!0,width:(0,P.pxToRem)(16),color:"neutral0"})):N===T.lW?e.createElement(S.Flex,{background:"primary600",padding:2,borderRadius:"50%",width:(0,P.pxToRem)(30),height:(0,P.pxToRem)(30),justifyContent:"center"},e.createElement(u.Typography,{fontWeight:"semiBold",textColor:"neutral0"},l)):e.createElement(S.Flex,{borderColor:"neutral500",borderWidth:"1px",borderStyle:"solid",padding:2,borderRadius:"50%",width:(0,P.pxToRem)(30),height:(0,P.pxToRem)(30),justifyContent:"center"},e.createElement(u.Typography,{fontWeight:"semiBold",textColor:"neutral600"},l));b.defaultProps={number:void 0,type:T.VM},b.propTypes={number:B().number,type:B().oneOf([T.lW,T.hx,T.VM])};const v=b},66358:(K,R,n)=>{n.d(R,{lW:()=>e,hx:()=>i,VM:()=>B});const e="isActive",i="isDone",B="isNotDone"},70620:(K,R,n)=>{n.d(R,{Z:()=>i});const i={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"}}}}}]);
@@ -1,4 +1,4 @@
1
- "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[3981],{40279:(L,C,n)=>{n.r(C),n.d(C,{default:()=>We});var e=n(32735),f=n(5636),c=n(19615),j=n(99357),O=n(5141),i=n(10938),F=n(11856),W=n(16540),d=n(9808),g=n(78330),V=n(16490),$=n(41072);const A=t=>Object.entries(t).every(([,a])=>Object.entries(a).every(([,o])=>o));var E=n(90662),v=n(19192),h=n(95602),H=n(44526),z=n(59838),P=n.n(z),K=n(60216),r=n.n(K),Z=n(99378),N=n(59872),m=n(56565);const k=({type:t,title:a,number:o,content:l,hasLine:u})=>{const{formatMessage:y}=(0,f.useIntl)();return e.createElement(d.Box,null,e.createElement(v.Flex,null,e.createElement(d.Box,{minWidth:(0,i.pxToRem)(30),marginRight:5},e.createElement(Z.Z,{type:t,number:o})),e.createElement(h.Typography,{variant:"delta",as:"h3"},y(a))),e.createElement(v.Flex,{alignItems:"flex-start"},e.createElement(v.Flex,{justifyContent:"center",minWidth:(0,i.pxToRem)(30),marginBottom:3,marginTop:3,marginRight:5},u&&e.createElement(N.Z,{type:t,minHeight:t===m.lW?(0,i.pxToRem)(85):(0,i.pxToRem)(65)})),e.createElement(d.Box,{marginTop:2},t===m.lW&&l)))};k.defaultProps={content:void 0,number:void 0,type:m.VM,hasLine:!0},k.propTypes={content:r().node,number:r().number,title:r().shape({id:r().string,defaultMessage:r().string}).isRequired,type:r().oneOf([m.lW,m.hx,m.VM]),hasLine:r().bool};const U=k,J=(t,a)=>t===-1||a<t?m.hx:a>t?m.VM:m.lW,T=({sections:t,currentSectionKey:a})=>{const o=t.findIndex(l=>l.key===a);return e.createElement(d.Box,null,t.map((l,u)=>e.createElement(U,{key:l.key,title:l.title,content:l.content,number:u+1,type:J(o,u),hasLine:u!==t.length-1})))};T.defaultProps={currentSectionKey:void 0},T.propTypes={sections:r().arrayOf(r().shape({key:r().string.isRequired,title:r().shape({id:r().string,defaultMessage:r().string}).isRequired,content:r().node})).isRequired,currentSectionKey:r().string};const Y=T;var Q=n(52846),X=Object.defineProperty,b=Object.getOwnPropertySymbols,w=Object.prototype.hasOwnProperty,q=Object.prototype.propertyIsEnumerable,G=(t,a,o)=>a in t?X(t,a,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[a]=o,_=(t,a)=>{for(var o in a||(a={}))w.call(a,o)&&G(t,o,a[o]);if(b)for(var o of b(a))q.call(a,o)&&G(t,o,a[o]);return t};const ee=()=>{var t;const{guidedTourState:a,setSkipped:o}=(0,i.useGuidedTour)(),{formatMessage:l}=(0,f.useIntl)(),{trackUsage:u}=(0,i.useTracking)(),y=Object.entries(Q.Z).map(([p,s])=>({key:p,title:s.home.title,content:e.createElement(i.LinkButton,{onClick:()=>u(s.home.trackingEvent),to:s.home.cta.target,endIcon:e.createElement(P(),null)},l(s.home.cta.title))})),x=(t=y.map(p=>_({isDone:Object.entries(a[p.key]).every(([,s])=>s)},p)).find(p=>!p.isDone))==null?void 0:t.key,M=()=>{o(!0),u("didSkipGuidedtour")};return e.createElement(d.Box,{hasRadius:!0,shadow:"tableShadow",paddingTop:7,paddingRight:4,paddingLeft:7,paddingBottom:4,background:"neutral0"},e.createElement(E.Stack,{spacing:6},e.createElement(h.Typography,{variant:"beta",as:"h2"},l({id:"app.components.GuidedTour.title",defaultMessage:"3 steps to get started"})),e.createElement(Y,{sections:y,currentSectionKey:x})),e.createElement(v.Flex,{justifyContent:"flex-end"},e.createElement(H.Button,{variant:"tertiary",onClick:M},l({id:"app.components.GuidedTour.skip",defaultMessage:"Skip the tour"}))))};var te=n(61541),R=n(14983),ne=n(74885),ae=n.n(ne),oe=n(85870),re=n.n(oe),le=n(7569),ie=n.n(le),se=n(9468),ce=n.n(se),de=n(59755),me=n.n(de),ue=n(54517),pe=n.n(ue),ge=n(77844),fe=n.n(ge);const he=(0,c.default)(ie())`
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[3981],{5085:(L,C,n)=>{n.r(C),n.d(C,{default:()=>We});var e=n(32735),f=n(5636),c=n(19615),j=n(99357),O=n(5141),i=n(83985),F=n(11856),W=n(16540),d=n(9808),g=n(78330),V=n(16490),$=n(28492);const A=t=>Object.entries(t).every(([,a])=>Object.entries(a).every(([,o])=>o));var E=n(90662),v=n(19192),h=n(95602),H=n(44526),z=n(30345),P=n.n(z),K=n(60216),r=n.n(K),Z=n(48634),N=n(29470),m=n(66358);const k=({type:t,title:a,number:o,content:l,hasLine:u})=>{const{formatMessage:y}=(0,f.useIntl)();return e.createElement(d.Box,null,e.createElement(v.Flex,null,e.createElement(d.Box,{minWidth:(0,i.pxToRem)(30),marginRight:5},e.createElement(Z.Z,{type:t,number:o})),e.createElement(h.Typography,{variant:"delta",as:"h3"},y(a))),e.createElement(v.Flex,{alignItems:"flex-start"},e.createElement(v.Flex,{justifyContent:"center",minWidth:(0,i.pxToRem)(30),marginBottom:3,marginTop:3,marginRight:5},u&&e.createElement(N.Z,{type:t,minHeight:t===m.lW?(0,i.pxToRem)(85):(0,i.pxToRem)(65)})),e.createElement(d.Box,{marginTop:2},t===m.lW&&l)))};k.defaultProps={content:void 0,number:void 0,type:m.VM,hasLine:!0},k.propTypes={content:r().node,number:r().number,title:r().shape({id:r().string,defaultMessage:r().string}).isRequired,type:r().oneOf([m.lW,m.hx,m.VM]),hasLine:r().bool};const U=k,J=(t,a)=>t===-1||a<t?m.hx:a>t?m.VM:m.lW,T=({sections:t,currentSectionKey:a})=>{const o=t.findIndex(l=>l.key===a);return e.createElement(d.Box,null,t.map((l,u)=>e.createElement(U,{key:l.key,title:l.title,content:l.content,number:u+1,type:J(o,u),hasLine:u!==t.length-1})))};T.defaultProps={currentSectionKey:void 0},T.propTypes={sections:r().arrayOf(r().shape({key:r().string.isRequired,title:r().shape({id:r().string,defaultMessage:r().string}).isRequired,content:r().node})).isRequired,currentSectionKey:r().string};const Y=T;var Q=n(70620),X=Object.defineProperty,b=Object.getOwnPropertySymbols,w=Object.prototype.hasOwnProperty,q=Object.prototype.propertyIsEnumerable,G=(t,a,o)=>a in t?X(t,a,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[a]=o,_=(t,a)=>{for(var o in a||(a={}))w.call(a,o)&&G(t,o,a[o]);if(b)for(var o of b(a))q.call(a,o)&&G(t,o,a[o]);return t};const ee=()=>{var t;const{guidedTourState:a,setSkipped:o}=(0,i.useGuidedTour)(),{formatMessage:l}=(0,f.useIntl)(),{trackUsage:u}=(0,i.useTracking)(),y=Object.entries(Q.Z).map(([p,s])=>({key:p,title:s.home.title,content:e.createElement(i.LinkButton,{onClick:()=>u(s.home.trackingEvent),to:s.home.cta.target,endIcon:e.createElement(P(),null)},l(s.home.cta.title))})),x=(t=y.map(p=>_({isDone:Object.entries(a[p.key]).every(([,s])=>s)},p)).find(p=>!p.isDone))==null?void 0:t.key,M=()=>{o(!0),u("didSkipGuidedtour")};return e.createElement(d.Box,{hasRadius:!0,shadow:"tableShadow",paddingTop:7,paddingRight:4,paddingLeft:7,paddingBottom:4,background:"neutral0"},e.createElement(E.Stack,{spacing:6},e.createElement(h.Typography,{variant:"beta",as:"h2"},l({id:"app.components.GuidedTour.title",defaultMessage:"3 steps to get started"})),e.createElement(Y,{sections:y,currentSectionKey:x})),e.createElement(v.Flex,{justifyContent:"flex-end"},e.createElement(H.Button,{variant:"tertiary",onClick:M},l({id:"app.components.GuidedTour.skip",defaultMessage:"Skip the tour"}))))};var te=n(61541),R=n(14983),ne=n(82372),ae=n.n(ne),oe=n(62030),re=n.n(oe),le=n(47440),ie=n.n(le),se=n(56569),ce=n.n(se),de=n(48993),me=n.n(de),ue=n(15723),pe=n.n(ue),ge=n(5319),fe=n.n(ge);const he=(0,c.default)(ie())`
2
2
  path {
3
3
  fill: #7289da !important;
4
4
  }
@@ -59,7 +59,7 @@
59
59
  word-break: break-word;
60
60
  `,xe=(0,c.default)(E.Stack)`
61
61
  align-items: flex-start;
62
- `,B=({hasCreatedContentType:t,onCreateCT:a})=>{const{formatMessage:o}=(0,f.useIntl)();return e.createElement("div",null,e.createElement(d.Box,{paddingLeft:6,paddingBottom:10},e.createElement(xe,{spacing:5},e.createElement(h.Typography,{as:"h1",variant:"alpha"},o(t?{id:"app.components.HomePage.welcome.again",defaultMessage:"Welcome \u{1F44B}"}:{id:"app.components.HomePage.welcome",defaultMessage:"Welcome on board!"})),e.createElement(Be,{textColor:"neutral600",variant:"epsilon"},o(t?{id:"app.components.HomePage.welcomeBlock.content.again",defaultMessage:"We hope you are making progress on your project! Feel free to read the latest news about Strapi. We are giving our best to improve the product based on your feedback."}:{id:"app.components.HomePage.welcomeBlock.content",defaultMessage:"Congrats! You are logged as the first administrator. To discover the powerful features provided by Strapi, we recommend you to create your first Content type!"})),t?e.createElement(R.Link,{isExternal:!0,href:"https://strapi.io/blog"},o({id:"app.components.HomePage.button.blog",defaultMessage:"See more on the blog"})):e.createElement(H.Button,{size:"L",onClick:a,endIcon:e.createElement(P(),null)},o({id:"app.components.HomePage.create",defaultMessage:"Create your first Content type"})))))};B.defaultProps={hasCreatedContentType:void 0,onCreateCT:void 0},B.propTypes={hasCreatedContentType:r().bool,onCreateCT:r().func};const Me=B;var Le=n(1779),He=n.n(Le),Pe=n(67e3),be=n.n(Pe),Ge=n(11923),Re=n.n(Ge),Ie=n(65583),De=n.n(Ie);const S=c.default.a`
62
+ `,B=({hasCreatedContentType:t,onCreateCT:a})=>{const{formatMessage:o}=(0,f.useIntl)();return e.createElement("div",null,e.createElement(d.Box,{paddingLeft:6,paddingBottom:10},e.createElement(xe,{spacing:5},e.createElement(h.Typography,{as:"h1",variant:"alpha"},o(t?{id:"app.components.HomePage.welcome.again",defaultMessage:"Welcome \u{1F44B}"}:{id:"app.components.HomePage.welcome",defaultMessage:"Welcome on board!"})),e.createElement(Be,{textColor:"neutral600",variant:"epsilon"},o(t?{id:"app.components.HomePage.welcomeBlock.content.again",defaultMessage:"We hope you are making progress on your project! Feel free to read the latest news about Strapi. We are giving our best to improve the product based on your feedback."}:{id:"app.components.HomePage.welcomeBlock.content",defaultMessage:"Congrats! You are logged as the first administrator. To discover the powerful features provided by Strapi, we recommend you to create your first Content type!"})),t?e.createElement(R.Link,{isExternal:!0,href:"https://strapi.io/blog"},o({id:"app.components.HomePage.button.blog",defaultMessage:"See more on the blog"})):e.createElement(H.Button,{size:"L",onClick:a,endIcon:e.createElement(P(),null)},o({id:"app.components.HomePage.create",defaultMessage:"Create your first Content type"})))))};B.defaultProps={hasCreatedContentType:void 0,onCreateCT:void 0},B.propTypes={hasCreatedContentType:r().bool,onCreateCT:r().func};const Me=B;var Le=n(59046),He=n.n(Le),Pe=n(63376),be=n.n(Pe),Ge=n(80555),Re=n.n(Ge),Ie=n(83525),De=n.n(Ie);const S=c.default.a`
63
63
  text-decoration: none;
64
64
  `,je=()=>{const{formatMessage:t}=(0,f.useIntl)(),{trackUsage:a}=(0,i.useTracking)(),o=l=>{a(l)};return e.createElement(E.Stack,{spacing:5},e.createElement(S,{href:"https://strapi.io/resource-center",target:"_blank",rel:"noopener noreferrer nofollow",onClick:()=>o("didClickonReadTheDocumentationSection")},e.createElement(i.ContentBox,{title:t({id:"global.documentation",defaultMessage:"Documentation"}),subtitle:t({id:"app.components.BlockLink.documentation.content",defaultMessage:"Discover the essential concepts, guides and instructions."}),icon:e.createElement(He(),null),iconBackground:"primary100"})),e.createElement(S,{href:"https://strapi.io/starters",target:"_blank",rel:"noopener noreferrer nofollow",onClick:()=>o("didClickonCodeExampleSection")},e.createElement(i.ContentBox,{title:t({id:"app.components.BlockLink.code",defaultMessage:"Code example"}),subtitle:t({id:"app.components.BlockLink.code.content",defaultMessage:"Learn by using ready-made starters for your projects."}),icon:e.createElement(be(),null),iconBackground:"warning100"})),e.createElement(S,{href:"https://strapi.io/blog/categories/tutorials",target:"_blank",rel:"noopener noreferrer nofollow",onClick:()=>o("didClickonTutorialSection")},e.createElement(i.ContentBox,{title:t({id:"app.components.BlockLink.tutorial",defaultMessage:"Tutorials"}),subtitle:t({id:"app.components.BlockLink.tutorial.content",defaultMessage:"Follow step-by-step instructions to use and customize Strapi."}),icon:e.createElement(Re(),null),iconBackground:"secondary100"})),e.createElement(S,{href:"https://strapi.io/blog",target:"_blank",rel:"noopener noreferrer nofollow",onClick:()=>o("didClickonBlogSection")},e.createElement(i.ContentBox,{title:t({id:"app.components.BlockLink.blog",defaultMessage:"Blog"}),subtitle:t({id:"app.components.BlockLink.blog.content",defaultMessage:"Read the latest news about Strapi and the ecosystem."}),icon:e.createElement(De(),null),iconBackground:"alternative100"})))},Oe=(0,c.default)(d.Box)`
65
65
  position: absolute;
@@ -0,0 +1,11 @@
1
+ (self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[5516],{28992:function(k,T,r){(function(e,f){k.exports=f(r(32735))})(this,function(e){return function(f){var v={};function s(t){if(v[t])return v[t].exports;var a=v[t]={i:t,l:!1,exports:{}};return f[t].call(a.exports,a,a.exports,s),a.l=!0,a.exports}return s.m=f,s.c=v,s.d=function(t,a,c){s.o(t,a)||Object.defineProperty(t,a,{enumerable:!0,get:c})},s.r=function(t){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},s.t=function(t,a){if(1&a&&(t=s(t)),8&a||4&a&&typeof t=="object"&&t&&t.__esModule)return t;var c=Object.create(null);if(s.r(c),Object.defineProperty(c,"default",{enumerable:!0,value:t}),2&a&&typeof t!="string")for(var g in t)s.d(c,g,function(P){return t[P]}.bind(null,g));return c},s.n=function(t){var a=t&&t.__esModule?function(){return t.default}:function(){return t};return s.d(a,"a",a),a},s.o=function(t,a){return Object.prototype.hasOwnProperty.call(t,a)},s.p="",s(s.s=86)}({0:function(f,v){f.exports=e},86:function(f,v,s){"use strict";s.r(v);var t=s(0);function a(){return(a=Object.assign||function(c){for(var g=1;g<arguments.length;g++){var P=arguments[g];for(var d in P)Object.prototype.hasOwnProperty.call(P,d)&&(c[d]=P[d])}return c}).apply(this,arguments)}v.default=function(c){return t.createElement("svg",a({width:"1em",height:"1em",viewBox:"0 0 32 32",fill:"none",xmlns:"http://www.w3.org/2000/svg"},c),t.createElement("path",{d:"M0 4a4 4 0 014-4h24a4 4 0 014 4v24a4 4 0 01-4 4H4a4 4 0 01-4-4V4z",fill:"#AC73E6"}),t.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M15.027 13.839c-3.19-.836-6.305-1.064-10.18-.608-1.215.152-1.063 1.975.076 2.203.304.836.456 2.355.912 3.267.987 2.279 5.622 1.975 7.369.835 1.14-.683 1.443-2.279 1.9-3.494.227-.684 1.595-.684 1.822 0 .38 1.215.76 2.81 1.9 3.494 1.747 1.14 6.381 1.444 7.369-.835.456-.912.607-2.431.911-3.267 1.14-.228 1.216-2.051.076-2.203-3.874-.456-6.989-.228-10.18.608-.455.075-1.519.075-1.975 0z",fill:"#fff"}))}}})})},75152:function(k,T,r){(function(e,f){k.exports=f(r(32735))})(this,function(e){return function(f){var v={};function s(t){if(v[t])return v[t].exports;var a=v[t]={i:t,l:!1,exports:{}};return f[t].call(a.exports,a,a.exports,s),a.l=!0,a.exports}return s.m=f,s.c=v,s.d=function(t,a,c){s.o(t,a)||Object.defineProperty(t,a,{enumerable:!0,get:c})},s.r=function(t){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},s.t=function(t,a){if(1&a&&(t=s(t)),8&a||4&a&&typeof t=="object"&&t&&t.__esModule)return t;var c=Object.create(null);if(s.r(c),Object.defineProperty(c,"default",{enumerable:!0,value:t}),2&a&&typeof t!="string")for(var g in t)s.d(c,g,function(P){return t[P]}.bind(null,g));return c},s.n=function(t){var a=t&&t.__esModule?function(){return t.default}:function(){return t};return s.d(a,"a",a),a},s.o=function(t,a){return Object.prototype.hasOwnProperty.call(t,a)},s.p="",s(s.s=187)}({0:function(f,v){f.exports=e},187:function(f,v,s){"use strict";s.r(v);var t=s(0);function a(){return(a=Object.assign||function(c){for(var g=1;g<arguments.length;g++){var P=arguments[g];for(var d in P)Object.prototype.hasOwnProperty.call(P,d)&&(c[d]=P[d])}return c}).apply(this,arguments)}v.default=function(c){return t.createElement("svg",a({width:"1em",height:"1em",viewBox:"0 0 24 25",fill:"none",xmlns:"http://www.w3.org/2000/svg"},c),t.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M13.571 18.272H10.43v-8.47H2.487a.2.2 0 01-.14-.343L11.858.058a.2.2 0 01.282 0l9.513 9.4a.2.2 0 01-.14.343H13.57v8.47zM2.2 21.095a.2.2 0 00-.2.2v2.424c0 .11.09.2.2.2h19.6a.2.2 0 00.2-.2v-2.424a.2.2 0 00-.2-.2H2.2z",fill:"#212134"}))}}})})},11652:(k,T,r)=>{"use strict";r.d(T,{Z:()=>c});var e=r(84968),f=r(83985),v=r(81999),s=(g,P,d)=>new Promise((B,b)=>{var S=i=>{try{O(d.next(i))}catch(R){b(R)}},x=i=>{try{O(d.throw(i))}catch(R){b(R)}},O=i=>i.done?B(i.value):Promise.resolve(i.value).then(S,x);O((d=d.apply(g,P)).next())});const t=()=>s(void 0,null,function*(){const{data:g}=yield v.be.get("/admin/plugins");return g}),c=g=>{const P=(0,f.useNotification)();return(0,e.useQuery)("list-installed-plugins",()=>t(),{onSuccess:()=>{g&&g()},onError:()=>{P({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}})}},18207:(k,T,r)=>{"use strict";r.r(T),r.d(T,{MarketPlacePage:()=>q,default:()=>qe});var e=r(32735),f=r(5636),v=r(99357),s=r(84968),t=r(58469),a=r(83985),c=r(11856),g=r(16540),P=r(89978),d=r(9808),B=r(29270),b=r(95602),S=r(19192),x=r(81700),O=r(60216),i=r.n(O),R=r(78752),le=r(97042),oe=r.n(le),D=r(19615);const ie=(0,D.default)(d.Box)`
2
+ background: ${({theme:n})=>`linear-gradient(180deg, rgba(234, 234, 239, 0) 0%, ${n.colors.neutral150} 100%)`};
3
+ opacity: 0.33;
4
+ `,ce=()=>e.createElement(c.GridLayout,null,Array(12).fill(null).map((n,l)=>e.createElement(ie,{key:`empty-plugin-card-${l}`,height:"234px",hasRadius:!0}))),H=({content:n})=>e.createElement(d.Box,{position:"relative"},e.createElement(ce,null),e.createElement(d.Box,{position:"absolute",top:11,width:"100%"},e.createElement(S.Flex,{alignItems:"center",justifyContent:"center",direction:"column"},e.createElement(R.Icon,{as:oe(),color:"",width:"160px",height:"88px"}),e.createElement(d.Box,{paddingTop:6},e.createElement(b.Typography,{variant:"delta",as:"p",textColor:"neutral600"},n)))));H.propTypes={content:i().string.isRequired};const U=H;var G=r(61541),ue=r(75152),de=r.n(ue);const N=({isOnline:n,npmPackageType:l})=>{const{formatMessage:o}=(0,f.useIntl)(),{trackUsage:h}=(0,a.useTracking)(),m=l==="provider"?"didSubmitProvider":"didSubmitPlugin";return e.createElement(c.HeaderLayout,{title:o({id:"global.marketplace",defaultMessage:"Marketplace"}),subtitle:o({id:"admin.pages.MarketPlacePage.subtitle",defaultMessage:"Get more out of Strapi"}),primaryAction:n&&e.createElement(G.LinkButton,{startIcon:e.createElement(de(),null),variant:"tertiary",href:`https://market.strapi.io/submit-${l}`,onClick:()=>h(m),isExternal:!0},o({id:`admin.pages.MarketPlacePage.submit.${l}.link`,defaultMessage:`Submit ${l}`}))})},$=N;N.defaultProps={npmPackageType:"plugin"},N.propTypes={isOnline:i().bool.isRequired,npmPackageType:i().string};var pe=r(81999),ge=(n,l,o)=>new Promise((h,m)=>{var u=p=>{try{E(o.next(p))}catch(y){m(y)}},M=p=>{try{E(o.throw(p))}catch(y){m(y)}},E=p=>p.done?h(p.value):Promise.resolve(p.value).then(u,M);E((o=o.apply(n,l)).next())});const me=()=>ge(void 0,null,function*(){const{data:n}=yield pe.be.get("/admin/information");return n});var fe=r(11652),ve=r(43653),Y=r.n(ve),he=(n,l,o)=>new Promise((h,m)=>{var u=p=>{try{E(o.next(p))}catch(y){m(y)}},M=p=>{try{E(o.throw(p))}catch(y){m(y)}},E=p=>p.done?h(p.value):Promise.resolve(p.value).then(u,M);E((o=o.apply(n,l)).next())});const ye="https://market-api.strapi.io",Pe=()=>he(void 0,null,function*(){const{data:n}=yield Y().get(`${ye}/providers`);return n}),Ee=n=>{const l=(0,a.useNotification)();return(0,s.useQuery)("list-marketplace-providers",()=>Pe(),{onSuccess:()=>{n&&n()},onError:()=>{l({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}})};var Me=Object.defineProperty,ke=Object.defineProperties,be=Object.getOwnPropertyDescriptors,z=Object.getOwnPropertySymbols,xe=Object.prototype.hasOwnProperty,Te=Object.prototype.propertyIsEnumerable,Q=(n,l,o)=>l in n?Me(n,l,{enumerable:!0,configurable:!0,writable:!0,value:o}):n[l]=o,Se=(n,l)=>{for(var o in l||(l={}))xe.call(l,o)&&Q(n,o,l[o]);if(z)for(var o of z(l))Te.call(l,o)&&Q(n,o,l[o]);return n},Re=(n,l)=>ke(n,be(l)),Ie=(n,l,o)=>new Promise((h,m)=>{var u=p=>{try{E(o.next(p))}catch(y){m(y)}},M=p=>{try{E(o.throw(p))}catch(y){m(y)}},E=p=>p.done?h(p.value):Promise.resolve(p.value).then(u,M);E((o=o.apply(n,l)).next())});const Oe="https://market-api.strapi.io",Ce=()=>Ie(void 0,null,function*(){const{data:n}=yield Y().get(`${Oe}/plugins`);return Re(Se({},n),{data:n.data.filter(o=>o.attributes.strapiCompatibility==="v4")})}),Be=n=>{const l=(0,a.useNotification)();return(0,s.useQuery)("list-marketplace-plugins",()=>Ce(),{onSuccess:()=>{n&&n()},onError:()=>{l({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}})};var Ne=r(79613),Le=r(72661);const je=()=>{const n=typeof navigator!="undefined"&&typeof navigator.onLine=="boolean"?navigator.onLine:!0,[l,o]=(0,e.useState)(n),h=()=>o(!0),m=()=>o(!1);return(0,e.useEffect)(()=>(window.addEventListener("online",h),window.addEventListener("offline",m),()=>{window.removeEventListener("online",h),window.removeEventListener("offline",m)}),[]),l};var we=r(28992),Ae=r.n(we),Fe=r(82372),W=r.n(Fe);const De=()=>{const{formatMessage:n}=(0,f.useIntl)(),{trackUsage:l}=(0,a.useTracking)();return e.createElement("a",{href:"https://strapi.canny.io/plugin-requests",target:"_blank",rel:"noopener noreferrer nofollow",style:{textDecoration:"none"},onClick:()=>l("didMissMarketplacePlugin")},e.createElement(a.ContentBox,{title:n({id:"admin.pages.MarketPlacePage.missingPlugin.title",defaultMessage:"Documentation"}),subtitle:n({id:"admin.pages.MarketPlacePage.missingPlugin.description",defaultMessage:"Tell us what plugin you are looking for and we'll let our community plugin developers know in case they are in search for inspiration!"}),icon:e.createElement(Ae(),null),iconBackground:"alternative100",endAction:e.createElement(R.Icon,{as:W(),color:"neutral600",width:3,height:3,marginLeft:2})}))};var Z=r(78330),He=r(90662),K=r(44826),Ue=r(14356),Ge=r.n(Ue),$e=r(77016),Ye=r(59087),ze=r(88677),Qe=r.n(ze),We=r(68192),Ze=r.n(We),Ke=r(44526);const V=({isInstalled:n,isInDevelopmentMode:l,commandToCopy:o})=>{const h=(0,a.useNotification)(),{formatMessage:m}=(0,f.useIntl)(),{trackUsage:u}=(0,a.useTracking)();return n?e.createElement(d.Box,{paddingLeft:4},e.createElement(R.Icon,{as:Qe(),marginRight:2,width:12,height:12,color:"success600"}),e.createElement(b.Typography,{variant:"omega",textColor:"success600",fontWeight:"bold"},m({id:"admin.pages.MarketPlacePage.plugin.installed",defaultMessage:"Installed"}))):l?e.createElement(Ye.CopyToClipboard,{onCopy:()=>{u("willInstallPlugin"),h({type:"success",message:{id:"admin.pages.MarketPlacePage.plugin.copy.success"}})},text:o},e.createElement(Ke.Button,{size:"S",startIcon:e.createElement(Ze(),null),variant:"secondary"},m({id:"admin.pages.MarketPlacePage.plugin.copy",defaultMessage:"Copy install command"}))):null};V.propTypes={isInstalled:i().bool.isRequired,isInDevelopmentMode:i().bool.isRequired,commandToCopy:i().string.isRequired};const Ve=V,Je=(0,D.default)(b.Typography)`
5
+ /* stylelint-disable value-no-vendor-prefix, property-no-vendor-prefix */
6
+ display: -webkit-box;
7
+ -webkit-box-orient: vertical;
8
+ -webkit-line-clamp: 2;
9
+ /* stylelint-enable value-no-vendor-prefix, property-no-vendor-prefix */
10
+ overflow: hidden;
11
+ `,L=({npmPackage:n,installedPackageNames:l,useYarn:o,isInDevelopmentMode:h,npmPackageType:m})=>{const{attributes:u}=n,{formatMessage:M}=(0,f.useIntl)(),{trackUsage:E}=(0,a.useTracking)(),p=l.includes(u.npmPackageName),y=o?`yarn add ${u.npmPackageName}`:`npm install ${u.npmPackageName}`,I=M({id:"admin.pages.MarketPlacePage.plugin.tooltip.madeByStrapi",defaultMessage:"Made by Strapi"}),w=m==="provider"?u.npmPackageUrl:`https://market.strapi.io/plugins/${u.slug}`;return e.createElement(S.Flex,{direction:"column",justifyContent:"space-between",paddingTop:4,paddingRight:4,paddingBottom:4,paddingLeft:4,hasRadius:!0,background:"neutral0",shadow:"tableShadow",height:"100%",alignItems:"normal"},e.createElement(d.Box,null,e.createElement(d.Box,{as:"img",src:u.logo.url,alt:`${u.name} logo`,hasRadius:!0,width:11,height:11}),e.createElement(d.Box,{paddingTop:4},e.createElement(b.Typography,{as:"h3",variant:"delta"},e.createElement(S.Flex,{alignItems:"center"},u.name,u.validated&&!u.madeByStrapi&&e.createElement(K.Tooltip,{description:M({id:"admin.pages.MarketPlacePage.plugin.tooltip.verified",defaultMessage:"Plugin verified by Strapi"})},e.createElement(S.Flex,null,e.createElement(R.Icon,{as:Ge(),marginLeft:2,color:"success600"}))),u.madeByStrapi&&e.createElement(K.Tooltip,{description:I},e.createElement(S.Flex,null,e.createElement(d.Box,{as:"img",src:$e,alt:I,marginLeft:1,width:6,height:"auto"})))))),e.createElement(d.Box,{paddingTop:2},e.createElement(Je,{as:"p",variant:"omega",textColor:"neutral600"},u.description))),e.createElement(He.Stack,{horizontal:!0,spacing:2,style:{alignSelf:"flex-end"},paddingTop:6},e.createElement(G.LinkButton,{size:"S",href:w,isExternal:!0,endIcon:e.createElement(W(),null),"aria-label":M({id:"admin.pages.MarketPlacePage.plugin.info.label",defaultMessage:"Learn more about {pluginName}"},{pluginName:u.name}),variant:"tertiary",onClick:()=>E("didPluginLearnMore")},M({id:"admin.pages.MarketPlacePage.plugin.info.text",defaultMessage:"Learn more"})),e.createElement(Ve,{isInstalled:p,isInDevelopmentMode:h,commandToCopy:y})))};L.defaultProps={isInDevelopmentMode:!1},L.propTypes={npmPackage:i().shape({id:i().string.isRequired,attributes:i().shape({name:i().string.isRequired,description:i().string.isRequired,slug:i().string.isRequired,npmPackageName:i().string.isRequired,npmPackageUrl:i().string.isRequired,repositoryUrl:i().string.isRequired,logo:i().object.isRequired,developerName:i().string.isRequired,validated:i().bool.isRequired,madeByStrapi:i().bool.isRequired,strapiCompatibility:i().oneOf(["v3","v4"])}).isRequired}).isRequired,installedPackageNames:i().arrayOf(i().string).isRequired,useYarn:i().bool.isRequired,isInDevelopmentMode:i().bool,npmPackageType:i().string.isRequired};const Xe=L,j=({npmPackages:n,installedPackageNames:l,useYarn:o,isInDevelopmentMode:h,npmPackageType:m})=>e.createElement(Z.Grid,{gap:4},n.map(u=>e.createElement(Z.GridItem,{col:4,s:6,xs:12,style:{height:"100%"},key:u.id},e.createElement(Xe,{npmPackage:u,installedPackageNames:l,useYarn:o,isInDevelopmentMode:h,npmPackageType:m}))));j.defaultProps={installedPackageNames:[]},j.propTypes={npmPackages:i().array.isRequired,installedPackageNames:i().arrayOf(i().string),useYarn:i().bool.isRequired,isInDevelopmentMode:i().bool.isRequired,npmPackageType:i().string.isRequired};const J=j,X=(n,l)=>(0,t.ZP)(n,l,{keys:[{threshold:t.ZP.rankings.WORD_STARTS_WITH,key:"attributes.name"},{threshold:t.ZP.rankings.WORD_STARTS_WITH,key:"attributes.description"}]}),q=()=>{const{formatMessage:n}=(0,f.useIntl)(),{trackUsage:l}=(0,a.useTracking)(),{notifyStatus:o}=(0,B.useNotifyAT)(),h=(0,e.useRef)(l),m=(0,a.useNotification)(),[u,M]=(0,e.useState)(""),[E,p]=(0,e.useState)("plugin"),{autoReload:y}=(0,a.useAppInfos)(),I=je();(0,a.useFocusWhenNavigate)();const w=n({id:"global.marketplace",defaultMessage:"Marketplace"}),_=()=>{o(n({id:"app.utils.notify.data-loaded",defaultMessage:"The {target} has loaded"},{target:w}))},{status:ee,data:_e}=Be(_),{status:te,data:et}=Ee(_),{status:ae,data:tt}=(0,fe.Z)(),{data:ne,status:re}=(0,s.useQuery)("app-information",me,{onError:()=>{m({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}}),at=[ee,te,ae,re].includes("loading"),nt=[ee,te,ae,re].includes("error");if((0,e.useEffect)(()=>{h.current("didGoToMarketplace")},[]),(0,e.useEffect)(()=>{y||m({type:"info",message:{id:"admin.pages.MarketPlacePage.production",defaultMessage:"Manage plugins from the development environment"},blockTransition:!0})},[m,y]),!I)return e.createElement(c.Layout,null,e.createElement(g.Main,null,e.createElement($,{isOnline:I}),e.createElement(S.Flex,{width:"100%",direction:"column",alignItems:"center",justifyContent:"center",style:{paddingTop:"120px"}},e.createElement(d.Box,{paddingBottom:2},e.createElement(b.Typography,{textColor:"neutral700",variant:"alpha"},n({id:"admin.pages.MarketPlacePage.offline.title",defaultMessage:"You are offline"}))),e.createElement(d.Box,{paddingBottom:6},e.createElement(b.Typography,{textColor:"neutral700",variant:"epsilon"},n({id:"admin.pages.MarketPlacePage.offline.subtitle",defaultMessage:"You need to be connected to the Internet to access Strapi Market."}))),e.createElement("img",{src:Le,alt:"offline",style:{width:"88px",height:"88px"}}))));if(nt)return e.createElement(c.Layout,null,e.createElement(c.ContentLayout,null,e.createElement(d.Box,{paddingTop:8},e.createElement(a.AnErrorOccurred,null))));if(at)return e.createElement(c.Layout,null,e.createElement(g.Main,{"aria-busy":!0},e.createElement(a.LoadingIndicatorPage,null)));const A=X(_e.data,u),F=X(et.data,u),se=n({id:"admin.pages.MarketPlacePage.search.empty",defaultMessage:'No result for "{target}"'},{target:u}),rt=C=>{p(C===0?"plugin":"provider")},st=tt.plugins.map(C=>C.packageName);return e.createElement(c.Layout,null,e.createElement(g.Main,null,e.createElement(v.Helmet,{title:n({id:"admin.pages.MarketPlacePage.helmet",defaultMessage:"Marketplace - Plugins"})}),e.createElement($,{isOnline:I,npmPackageType:E}),e.createElement(c.ContentLayout,null,e.createElement(d.Box,{width:"25%",paddingBottom:4},e.createElement(P.Searchbar,{name:"searchbar",onClear:()=>M(""),value:u,onChange:C=>M(C.target.value),clearLabel:n({id:"admin.pages.MarketPlacePage.search.clear",defaultMessage:"Clear the search"}),placeholder:n({id:"admin.pages.MarketPlacePage.search.placeholder",defaultMessage:"Search"})},n({id:"admin.pages.MarketPlacePage.search.placeholder",defaultMessage:"Search"}))),e.createElement(x.TabGroup,{label:n({id:"admin.pages.MarketPlacePage.tab-group.label",defaultMessage:"Plugins and Providers for Strapi"}),id:"tabs",variant:"simple",onTabChange:rt},e.createElement(d.Box,{paddingBottom:4},e.createElement(x.Tabs,null,e.createElement(x.Tab,null,n({id:"admin.pages.MarketPlacePage.plugins",defaultMessage:"Plugins"})," ","(",A.length,")"),e.createElement(x.Tab,null,n({id:"admin.pages.MarketPlacePage.providers",defaultMessage:"Providers"})," ","(",F.length,")"))),e.createElement(x.TabPanels,null,e.createElement(x.TabPanel,null,u.length>0&&!A.length?e.createElement(U,{content:se}):e.createElement(J,{npmPackages:A,installedPackageNames:st,useYarn:ne.data.useYarn,isInDevelopmentMode:y,npmPackageType:"plugin"})),e.createElement(x.TabPanel,null,u.length>0&&!F.length?e.createElement(U,{content:se}):e.createElement(J,{npmPackages:F,useYarn:ne.data.useYarn,isInDevelopmentMode:y,npmPackageType:"provider"})))),e.createElement(d.Box,{paddingTop:7},e.createElement(De,null)))))},qe=()=>e.createElement(a.CheckPagePermissions,{permissions:Ne.Z.marketplace.main},e.createElement(q,null))},77016:(k,T,r)=>{"use strict";k.exports=r.p+"90f49a385afb000fb1d4.svg"},72661:(k,T,r)=>{"use strict";k.exports=r.p+"a6b842e0b6d2b61135d1.svg"}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[3677],{11652:(I,d,t)=>{t.d(d,{Z:()=>i});var e=t(84968),u=t(83985),c=t(81999),g=(a,s,n)=>new Promise((h,y)=>{var f=l=>{try{r(n.next(l))}catch(o){y(o)}},p=l=>{try{r(n.throw(l))}catch(o){y(o)}},r=l=>l.done?h(l.value):Promise.resolve(l.value).then(f,p);r((n=n.apply(a,s)).next())});const m=()=>g(void 0,null,function*(){const{data:a}=yield c.be.get("/admin/plugins");return a}),i=a=>{const s=(0,u.useNotification)();return(0,e.useQuery)("list-installed-plugins",()=>m(),{onSuccess:()=>{a&&a()},onError:()=>{s({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}})}},73204:(I,d,t)=>{t.r(d),t.d(d,{default:()=>r});var e=t(32735),u=t(83985),c=t(99357),g=t(5636),m=t(79613),P=t(29270),i=t(11856),a=t(16540),s=t(95602),n=t(53214),h=t(11652);const f=()=>{const{formatMessage:l}=(0,g.useIntl)(),{notifyStatus:o}=(0,P.useNotifyAT)();(0,u.useFocusWhenNavigate)();const E=l({id:"global.plugins",defaultMessage:"Plugins"}),M=()=>{o(l({id:"app.utils.notify.data-loaded",defaultMessage:"The {target} has loaded"},{target:E}))},{status:T,data:v}=(0,h.Z)(M);return T!=="success"&&T!=="error"?e.createElement(i.Layout,null,e.createElement(a.Main,{"aria-busy":!0},e.createElement(u.LoadingIndicatorPage,null))):e.createElement(i.Layout,null,e.createElement(a.Main,null,e.createElement(i.HeaderLayout,{title:E,subtitle:l({id:"app.components.ListPluginsPage.description",defaultMessage:"List of the installed plugins in the project."})}),e.createElement(i.ContentLayout,null,e.createElement(n.Table,{colCount:2,rowCount:(v==null?void 0:v.plugins.length)+1},e.createElement(n.Thead,null,e.createElement(n.Tr,null,e.createElement(n.Th,null,e.createElement(s.Typography,{variant:"sigma",textColor:"neutral600"},l({id:"global.name",defaultMessage:"Name"}))),e.createElement(n.Th,null,e.createElement(s.Typography,{variant:"sigma",textColor:"neutral600"},l({id:"global.description",defaultMessage:"description"}))))),e.createElement(n.Tbody,null,v.plugins.map(({name:L,displayName:C,description:F})=>e.createElement(n.Tr,{key:L},e.createElement(n.Td,null,e.createElement(s.Typography,{textColor:"neutral800",variant:"omega",fontWeight:"bold"},C)),e.createElement(n.Td,null,e.createElement(s.Typography,{textColor:"neutral800"},F)))))))))},r=()=>{const{formatMessage:l}=(0,g.useIntl)(),o=l({id:"global.plugins",defaultMessage:"Plugins"});return e.createElement(u.CheckPagePermissions,{permissions:m.Z.marketplace.main},e.createElement(c.Helmet,{title:o}),e.createElement(f,null))}}}]);
@@ -1,4 +1,4 @@
1
- "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[9497],{10902:(pe,j,t)=>{t.r(j),t.d(j,{default:()=>De});var e=t(32735),f=t(19615),p=t(10938),U=t(5636),Z=t(83281),G=t(23940),V=t.n(G),I=t(84968),D=t(88423),B=t.n(D),N=t(99357),L=t(16540),b=t(95602),O=t(9808),A=t(11856),z=t(44526),u=t(78330),E=t(90662),Q=t(29270),S=t(25716),K=t(20001),W=t(37178),R=t(21708),M=t.n(R),X=t(89458),F=t.n(X),Y=t(98221),d=t.n(Y),s=t(83942),i=t(41072),fe=t(9086),ge=t.n(fe),ee=t(16558),he=Object.defineProperty,ve=Object.defineProperties,Pe=Object.getOwnPropertyDescriptors,te=Object.getOwnPropertySymbols,ye=Object.prototype.hasOwnProperty,we=Object.prototype.propertyIsEnumerable,re=(a,n,r)=>n in a?he(a,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):a[n]=r,Ee=(a,n)=>{for(var r in n||(n={}))ye.call(n,r)&&re(a,r,n[r]);if(te)for(var r of te(n))we.call(n,r)&&re(a,r,n[r]);return a},Se=(a,n)=>ve(a,Pe(n)),ae=(a,n,r)=>new Promise((T,y)=>{var x=m=>{try{P(r.next(m))}catch(w){y(w)}},C=m=>{try{P(r.throw(m))}catch(w){y(w)}},P=m=>m.done?T(m.value):Promise.resolve(m.value).then(x,C);P((r=r.apply(a,n)).next())});const Oe=()=>ae(void 0,null,function*(){const{data:a}=yield ee.be.get("/admin/users/me");return a.data}),Me=a=>ae(void 0,null,function*(){const n=ge()(a,["confirmPassword","currentTheme"]),{data:r}=yield ee.be.put("/admin/users/me",n);return Se(Ee({},r.data),{currentTheme:a.currentTheme})});var Ie=t(5173),Le=t(10127);const be=Ie.Ry().shape(Le.Rw);var ne=t(13271),Ae=Object.defineProperty,Te=Object.defineProperties,xe=Object.getOwnPropertyDescriptors,se=Object.getOwnPropertySymbols,Ce=Object.prototype.hasOwnProperty,je=Object.prototype.propertyIsEnumerable,oe=(a,n,r)=>n in a?Ae(a,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):a[n]=r,le=(a,n)=>{for(var r in n||(n={}))Ce.call(n,r)&&oe(a,r,n[r]);if(se)for(var r of se(n))je.call(n,r)&&oe(a,r,n[r]);return a},ie=(a,n)=>Te(a,xe(n)),de=(a,n,r)=>new Promise((T,y)=>{var x=m=>{try{P(r.next(m))}catch(w){y(w)}},C=m=>{try{P(r.throw(m))}catch(w){y(w)}},P=m=>m.done?T(m.value):Promise.resolve(m.value).then(x,C);P((r=r.apply(a,n)).next())});const Ge=f.default.a`
1
+ "use strict";(self.webpackChunk_strapi_admin=self.webpackChunk_strapi_admin||[]).push([[9497],{63072:(pe,j,t)=>{t.r(j),t.d(j,{default:()=>De});var e=t(32735),f=t(19615),p=t(83985),U=t(5636),Z=t(83281),G=t(23940),V=t.n(G),I=t(84968),D=t(88423),B=t.n(D),N=t(99357),L=t(16540),b=t(95602),O=t(9808),A=t(11856),z=t(44526),u=t(78330),E=t(90662),Q=t(29270),S=t(25716),K=t(20001),W=t(37178),R=t(33912),M=t.n(R),X=t(37341),F=t.n(X),Y=t(88677),d=t.n(Y),s=t(76573),i=t(28492),fe=t(9086),ge=t.n(fe),ee=t(81999),he=Object.defineProperty,ve=Object.defineProperties,Pe=Object.getOwnPropertyDescriptors,te=Object.getOwnPropertySymbols,ye=Object.prototype.hasOwnProperty,we=Object.prototype.propertyIsEnumerable,re=(a,n,r)=>n in a?he(a,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):a[n]=r,Ee=(a,n)=>{for(var r in n||(n={}))ye.call(n,r)&&re(a,r,n[r]);if(te)for(var r of te(n))we.call(n,r)&&re(a,r,n[r]);return a},Se=(a,n)=>ve(a,Pe(n)),ae=(a,n,r)=>new Promise((T,y)=>{var x=m=>{try{P(r.next(m))}catch(w){y(w)}},C=m=>{try{P(r.throw(m))}catch(w){y(w)}},P=m=>m.done?T(m.value):Promise.resolve(m.value).then(x,C);P((r=r.apply(a,n)).next())});const Oe=()=>ae(void 0,null,function*(){const{data:a}=yield ee.be.get("/admin/users/me");return a.data}),Me=a=>ae(void 0,null,function*(){const n=ge()(a,["confirmPassword","currentTheme"]),{data:r}=yield ee.be.put("/admin/users/me",n);return Se(Ee({},r.data),{currentTheme:a.currentTheme})});var Ie=t(5173),Le=t(99063);const be=Ie.Ry().shape(Le.Rw);var ne=t(81430),Ae=Object.defineProperty,Te=Object.defineProperties,xe=Object.getOwnPropertyDescriptors,se=Object.getOwnPropertySymbols,Ce=Object.prototype.hasOwnProperty,je=Object.prototype.propertyIsEnumerable,oe=(a,n,r)=>n in a?Ae(a,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):a[n]=r,le=(a,n)=>{for(var r in n||(n={}))Ce.call(n,r)&&oe(a,r,n[r]);if(se)for(var r of se(n))je.call(n,r)&&oe(a,r,n[r]);return a},ie=(a,n)=>Te(a,xe(n)),de=(a,n,r)=>new Promise((T,y)=>{var x=m=>{try{P(r.next(m))}catch(w){y(w)}},C=m=>{try{P(r.throw(m))}catch(w){y(w)}},P=m=>m.done?T(m.value):Promise.resolve(m.value).then(x,C);P((r=r.apply(a,n)).next())});const Ge=f.default.a`
2
2
  color: ${({theme:a})=>a.colors.primary600};
3
3
  `,$=(0,f.default)(W.TextInput)`
4
4
  ::-ms-reveal {
@@ -12,4 +12,4 @@
12
12
  fill: ${({theme:a})=>a.colors.neutral600};
13
13
  }
14
14
  }
15
- `,De=()=>{const[a,n]=(0,e.useState)(!1),[r,T]=(0,e.useState)(!1),[y,x]=(0,e.useState)(!1),{changeLocale:C,localeNames:P}=(0,s.Z)(),{setUserDisplayName:m}=(0,p.useAppInfos)(),w=(0,I.useQueryClient)(),{formatMessage:o}=(0,U.useIntl)(),{trackUsage:Be}=(0,p.useTracking)(),k=(0,p.useNotification)(),{lockApp:Ne,unlockApp:Re}=(0,p.useOverlayBlocker)(),{notifyStatus:Fe}=(0,Q.useNotifyAT)(),{currentTheme:He,themes:ce,onChangeTheme:Ue}=(0,i.M1)();(0,p.useFocusWhenNavigate)();const{status:Ze,data:H}=(0,I.useQuery)("user",()=>Oe(),{onSuccess:()=>{Fe(o({id:"Settings.profile.form.notify.data.loaded",defaultMessage:"Your profile data has been loaded"}))},onError:()=>{k({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}}),Ve=Ze!=="success",me=(0,I.useMutation)(l=>Me(l),{onSuccess:l=>de(void 0,null,function*(){yield w.invalidateQueries("user"),p.auth.setUserInfo(B()(l,["email","firstname","lastname","username","preferedLanguage"]));const g=l.username||(0,ne.Pp)(l.firstname,l.lastname);m(g),C(l.preferedLanguage),Ue(l.currentTheme),Be("didChangeMode",{newMode:l.currentTheme}),k({type:"success",message:{id:"notification.success.saved",defaultMessage:"Saved"}})}),onSettled:()=>{Re()},refetchActive:!0}),{isLoading:ze}=me,Qe=(l,g)=>de(void 0,[l,g],function*(h,{setErrors:q}){Ne();const c=h.username||null;me.mutate(ie(le({},h),{username:c}),{onError:v=>{var ue;const _=(ue=v==null?void 0:v.response)==null?void 0:ue.data;return _!=null&&_.data?q(_.data):k({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}})}),Ke=["currentTheme","email","firstname","lastname","username","preferedLanguage"],We=B()(ie(le({},H),{currentTheme:He}),Ke);if(Ve)return e.createElement(L.Main,{"aria-busy":"true"},e.createElement(N.Helmet,{title:o({id:"Settings.profile.form.section.helmet.title",defaultMessage:"User profile"})}),e.createElement(A.HeaderLayout,{title:o({id:"Settings.profile.form.section.profile.page.title",defaultMessage:"Profile page"})}),e.createElement(A.ContentLayout,null,e.createElement(p.LoadingIndicatorPage,null)));const Xe=Object.keys(ce).filter(l=>ce[l]);return e.createElement(L.Main,{"aria-busy":ze},e.createElement(N.Helmet,{title:o({id:"Settings.profile.form.section.helmet.title",defaultMessage:"User profile"})}),e.createElement(Z.Formik,{onSubmit:Qe,initialValues:We,validateOnChange:!1,validationSchema:be,enableReinitialize:!0},({errors:l,values:g,handleChange:h,isSubmitting:q})=>e.createElement(p.Form,null,e.createElement(A.HeaderLayout,{title:H.username||(0,ne.Pp)(H.firstname,H.lastname),primaryAction:e.createElement(z.Button,{startIcon:e.createElement(d(),null),loading:q,type:"submit"},o({id:"global.save",defaultMessage:"Save"}))}),e.createElement(O.Box,{paddingBottom:10},e.createElement(A.ContentLayout,null,e.createElement(E.Stack,{spacing:6},e.createElement(O.Box,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(E.Stack,{spacing:4},e.createElement(b.Typography,{variant:"delta",as:"h2"},o({id:"global.profile",defaultMessage:"Profile"})),e.createElement(u.Grid,{gap:5},e.createElement(u.GridItem,{s:12,col:6},e.createElement(p.GenericInput,{intlLabel:{id:"Auth.form.firstname.label",defaultMessage:"First name"},error:l.firstname,onChange:h,value:g.firstname||"",type:"text",name:"firstname",required:!0})),e.createElement(u.GridItem,{s:12,col:6},e.createElement(p.GenericInput,{intlLabel:{id:"Auth.form.lastname.label",defaultMessage:"Last name"},error:l.lastname,onChange:h,value:g.lastname||"",type:"text",name:"lastname"})),e.createElement(u.GridItem,{s:12,col:6},e.createElement(p.GenericInput,{intlLabel:{id:"Auth.form.email.label",defaultMessage:"Email"},error:l.email,onChange:h,value:g.email||"",type:"email",name:"email",required:!0})),e.createElement(u.GridItem,{s:12,col:6},e.createElement(p.GenericInput,{intlLabel:{id:"Auth.form.username.label",defaultMessage:"Username"},error:l.username,onChange:h,value:g.username||"",type:"text",name:"username"}))))),e.createElement(O.Box,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(E.Stack,{spacing:4},e.createElement(b.Typography,{variant:"delta",as:"h2"},o({id:"global.change-password",defaultMessage:"Change password"})),e.createElement(u.Grid,{gap:5},e.createElement(u.GridItem,{s:12,col:6},e.createElement($,{error:l.currentPassword?o({id:l.currentPassword,defaultMessage:l.currentPassword}):"",onChange:h,value:g.currentPassword||"",label:o({id:"Auth.form.currentPassword.label",defaultMessage:"Current Password"}),name:"currentPassword",type:y?"text":"password",endAction:e.createElement(J,{onClick:c=>{c.stopPropagation(),x(v=>!v)},label:o(y?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},y?e.createElement(M(),null):e.createElement(F(),null))}))),e.createElement(u.Grid,{gap:5},e.createElement(u.GridItem,{s:12,col:6},e.createElement($,{error:l.password?o({id:l.password,defaultMessage:l.password}):"",onChange:h,value:g.password||"",label:o({id:"global.password",defaultMessage:"Password"}),name:"password",type:a?"text":"password",endAction:e.createElement(J,{onClick:c=>{c.stopPropagation(),n(v=>!v)},label:o(a?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},a?e.createElement(M(),null):e.createElement(F(),null))})),e.createElement(u.GridItem,{s:12,col:6},e.createElement($,{error:l.confirmPassword?o({id:l.confirmPassword,defaultMessage:l.confirmPassword}):"",onChange:h,value:g.confirmPassword||"",label:o({id:"Auth.form.confirmPassword.label",defaultMessage:"Password confirmation"}),name:"confirmPassword",type:r?"text":"password",endAction:e.createElement(J,{onClick:c=>{c.stopPropagation(),T(v=>!v)},label:o(r?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},r?e.createElement(M(),null):e.createElement(F(),null))}))))),e.createElement(O.Box,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(E.Stack,{spacing:4},e.createElement(E.Stack,{spacing:1},e.createElement(b.Typography,{variant:"delta",as:"h2"},o({id:"Settings.profile.form.section.experience.title",defaultMessage:"Experience"})),e.createElement(b.Typography,null,o({id:"Settings.profile.form.section.experience.interfaceLanguageHelp",defaultMessage:"Preference changes will apply only to you. More information is available {here}."},{here:e.createElement(Ge,{target:"_blank",rel:"noopener noreferrer",href:"https://docs.strapi.io/developer-docs/latest/development/admin-customization.html#locales"},o({id:"Settings.profile.form.section.experience.documentation",defaultMessage:"here"}))}))),e.createElement(u.Grid,{gap:5},e.createElement(u.GridItem,{s:12,col:6},e.createElement(S.Select,{label:o({id:"Settings.profile.form.section.experience.interfaceLanguage",defaultMessage:"Interface language"}),placeholder:o({id:"global.select",defaultMessage:"Select"}),hint:o({id:"Settings.profile.form.section.experience.interfaceLanguage.hint",defaultMessage:"This will only display your own interface in the chosen language."}),onClear:()=>{h({target:{name:"preferedLanguage",value:null}})},clearLabel:o({id:"Settings.profile.form.section.experience.clear.select",defaultMessage:"Clear the interface language selected"}),value:g.preferedLanguage,onChange:c=>{h({target:{name:"preferedLanguage",value:c}})}},Object.keys(P).map(c=>{const v=P[c];return e.createElement(S.Option,{value:c,key:c},v)}))),e.createElement(u.GridItem,{s:12,col:6},e.createElement(S.Select,{label:o({id:"Settings.profile.form.section.experience.mode.label",defaultMessage:"Interface mode"}),placeholder:o({id:"components.Select.placeholder",defaultMessage:"Select"}),hint:o({id:"Settings.profile.form.section.experience.mode.hint",defaultMessage:"Displays your interface in the chosen mode."}),value:g.currentTheme,onChange:c=>{h({target:{name:"currentTheme",value:c}})}},Xe.map(c=>{const v=o({id:"Settings.profile.form.section.experience.mode.option-label",defaultMessage:"{name} mode"},{name:V()(c)});return e.createElement(S.Option,{value:c,key:c},v)}))))))))))))}},10127:(pe,j,t)=>{t.d(j,{YM:()=>Y,Rw:()=>O});var e=t(5173),f=t(10938),p=Object.defineProperty,U=Object.defineProperties,Z=Object.getOwnPropertyDescriptors,G=Object.getOwnPropertySymbols,V=Object.prototype.hasOwnProperty,I=Object.prototype.propertyIsEnumerable,D=(d,s,i)=>s in d?p(d,s,{enumerable:!0,configurable:!0,writable:!0,value:i}):d[s]=i,B=(d,s)=>{for(var i in s||(s={}))V.call(s,i)&&D(d,i,s[i]);if(G)for(var i of G(s))I.call(s,i)&&D(d,i,s[i]);return d},N=(d,s)=>U(d,Z(s));const L={firstname:e.nK().required(f.translatedErrors.required),lastname:e.nK(),email:e.Z_().email(f.translatedErrors.email).lowercase().required(f.translatedErrors.required),username:e.Z_().nullable(),password:e.Z_().min(8,f.translatedErrors.minLength).matches(/[a-z]/,"components.Input.error.contain.lowercase").matches(/[A-Z]/,"components.Input.error.contain.uppercase").matches(/\d/,"components.Input.error.contain.number"),confirmPassword:e.Z_().min(8,f.translatedErrors.minLength).oneOf([e.iH("password"),null],"components.Input.error.password.noMatch").when("password",(d,s)=>d?s.required(f.translatedErrors.required):s)},O=N(B({},L),{currentPassword:e.Z_().when(["password","confirmPassword"],(d,s,i)=>d||s?i.required(f.translatedErrors.required):i),preferedLanguage:e.Z_().nullable()}),z={roles:e.IX().min(1,f.translatedErrors.required).required(f.translatedErrors.required)};var u=Object.defineProperty,E=Object.defineProperties,Q=Object.getOwnPropertyDescriptors,S=Object.getOwnPropertySymbols,K=Object.prototype.hasOwnProperty,W=Object.prototype.propertyIsEnumerable,R=(d,s,i)=>s in d?u(d,s,{enumerable:!0,configurable:!0,writable:!0,value:i}):d[s]=i,M=(d,s)=>{for(var i in s||(s={}))K.call(s,i)&&R(d,i,s[i]);if(S)for(var i of S(s))W.call(s,i)&&R(d,i,s[i]);return d},X=(d,s)=>E(d,Q(s));const Y=e.Ry().shape(M(X(M({},L),{isActive:e.Xg()}),z))}}]);
15
+ `,De=()=>{const[a,n]=(0,e.useState)(!1),[r,T]=(0,e.useState)(!1),[y,x]=(0,e.useState)(!1),{changeLocale:C,localeNames:P}=(0,s.Z)(),{setUserDisplayName:m}=(0,p.useAppInfos)(),w=(0,I.useQueryClient)(),{formatMessage:o}=(0,U.useIntl)(),{trackUsage:Be}=(0,p.useTracking)(),k=(0,p.useNotification)(),{lockApp:Ne,unlockApp:Re}=(0,p.useOverlayBlocker)(),{notifyStatus:Fe}=(0,Q.useNotifyAT)(),{currentTheme:He,themes:ce,onChangeTheme:Ue}=(0,i.M1)();(0,p.useFocusWhenNavigate)();const{status:Ze,data:H}=(0,I.useQuery)("user",()=>Oe(),{onSuccess:()=>{Fe(o({id:"Settings.profile.form.notify.data.loaded",defaultMessage:"Your profile data has been loaded"}))},onError:()=>{k({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}}),Ve=Ze!=="success",me=(0,I.useMutation)(l=>Me(l),{onSuccess:l=>de(void 0,null,function*(){yield w.invalidateQueries("user"),p.auth.setUserInfo(B()(l,["email","firstname","lastname","username","preferedLanguage"]));const g=l.username||(0,ne.Pp)(l.firstname,l.lastname);m(g),C(l.preferedLanguage),Ue(l.currentTheme),Be("didChangeMode",{newMode:l.currentTheme}),k({type:"success",message:{id:"notification.success.saved",defaultMessage:"Saved"}})}),onSettled:()=>{Re()},refetchActive:!0}),{isLoading:ze}=me,Qe=(l,g)=>de(void 0,[l,g],function*(h,{setErrors:q}){Ne();const c=h.username||null;me.mutate(ie(le({},h),{username:c}),{onError:v=>{var ue;const _=(ue=v==null?void 0:v.response)==null?void 0:ue.data;return _!=null&&_.data?q(_.data):k({type:"warning",message:{id:"notification.error",defaultMessage:"An error occured"}})}})}),Ke=["currentTheme","email","firstname","lastname","username","preferedLanguage"],We=B()(ie(le({},H),{currentTheme:He}),Ke);if(Ve)return e.createElement(L.Main,{"aria-busy":"true"},e.createElement(N.Helmet,{title:o({id:"Settings.profile.form.section.helmet.title",defaultMessage:"User profile"})}),e.createElement(A.HeaderLayout,{title:o({id:"Settings.profile.form.section.profile.page.title",defaultMessage:"Profile page"})}),e.createElement(A.ContentLayout,null,e.createElement(p.LoadingIndicatorPage,null)));const Xe=Object.keys(ce).filter(l=>ce[l]);return e.createElement(L.Main,{"aria-busy":ze},e.createElement(N.Helmet,{title:o({id:"Settings.profile.form.section.helmet.title",defaultMessage:"User profile"})}),e.createElement(Z.Formik,{onSubmit:Qe,initialValues:We,validateOnChange:!1,validationSchema:be,enableReinitialize:!0},({errors:l,values:g,handleChange:h,isSubmitting:q})=>e.createElement(p.Form,null,e.createElement(A.HeaderLayout,{title:H.username||(0,ne.Pp)(H.firstname,H.lastname),primaryAction:e.createElement(z.Button,{startIcon:e.createElement(d(),null),loading:q,type:"submit"},o({id:"global.save",defaultMessage:"Save"}))}),e.createElement(O.Box,{paddingBottom:10},e.createElement(A.ContentLayout,null,e.createElement(E.Stack,{spacing:6},e.createElement(O.Box,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(E.Stack,{spacing:4},e.createElement(b.Typography,{variant:"delta",as:"h2"},o({id:"global.profile",defaultMessage:"Profile"})),e.createElement(u.Grid,{gap:5},e.createElement(u.GridItem,{s:12,col:6},e.createElement(p.GenericInput,{intlLabel:{id:"Auth.form.firstname.label",defaultMessage:"First name"},error:l.firstname,onChange:h,value:g.firstname||"",type:"text",name:"firstname",required:!0})),e.createElement(u.GridItem,{s:12,col:6},e.createElement(p.GenericInput,{intlLabel:{id:"Auth.form.lastname.label",defaultMessage:"Last name"},error:l.lastname,onChange:h,value:g.lastname||"",type:"text",name:"lastname"})),e.createElement(u.GridItem,{s:12,col:6},e.createElement(p.GenericInput,{intlLabel:{id:"Auth.form.email.label",defaultMessage:"Email"},error:l.email,onChange:h,value:g.email||"",type:"email",name:"email",required:!0})),e.createElement(u.GridItem,{s:12,col:6},e.createElement(p.GenericInput,{intlLabel:{id:"Auth.form.username.label",defaultMessage:"Username"},error:l.username,onChange:h,value:g.username||"",type:"text",name:"username"}))))),e.createElement(O.Box,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(E.Stack,{spacing:4},e.createElement(b.Typography,{variant:"delta",as:"h2"},o({id:"global.change-password",defaultMessage:"Change password"})),e.createElement(u.Grid,{gap:5},e.createElement(u.GridItem,{s:12,col:6},e.createElement($,{error:l.currentPassword?o({id:l.currentPassword,defaultMessage:l.currentPassword}):"",onChange:h,value:g.currentPassword||"",label:o({id:"Auth.form.currentPassword.label",defaultMessage:"Current Password"}),name:"currentPassword",type:y?"text":"password",endAction:e.createElement(J,{onClick:c=>{c.stopPropagation(),x(v=>!v)},label:o(y?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},y?e.createElement(M(),null):e.createElement(F(),null))}))),e.createElement(u.Grid,{gap:5},e.createElement(u.GridItem,{s:12,col:6},e.createElement($,{error:l.password?o({id:l.password,defaultMessage:l.password}):"",onChange:h,value:g.password||"",label:o({id:"global.password",defaultMessage:"Password"}),name:"password",type:a?"text":"password",endAction:e.createElement(J,{onClick:c=>{c.stopPropagation(),n(v=>!v)},label:o(a?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},a?e.createElement(M(),null):e.createElement(F(),null))})),e.createElement(u.GridItem,{s:12,col:6},e.createElement($,{error:l.confirmPassword?o({id:l.confirmPassword,defaultMessage:l.confirmPassword}):"",onChange:h,value:g.confirmPassword||"",label:o({id:"Auth.form.confirmPassword.label",defaultMessage:"Password confirmation"}),name:"confirmPassword",type:r?"text":"password",endAction:e.createElement(J,{onClick:c=>{c.stopPropagation(),T(v=>!v)},label:o(r?{id:"Auth.form.password.show-password",defaultMessage:"Show password"}:{id:"Auth.form.password.hide-password",defaultMessage:"Hide password"})},r?e.createElement(M(),null):e.createElement(F(),null))}))))),e.createElement(O.Box,{background:"neutral0",hasRadius:!0,shadow:"filterShadow",paddingTop:6,paddingBottom:6,paddingLeft:7,paddingRight:7},e.createElement(E.Stack,{spacing:4},e.createElement(E.Stack,{spacing:1},e.createElement(b.Typography,{variant:"delta",as:"h2"},o({id:"Settings.profile.form.section.experience.title",defaultMessage:"Experience"})),e.createElement(b.Typography,null,o({id:"Settings.profile.form.section.experience.interfaceLanguageHelp",defaultMessage:"Preference changes will apply only to you. More information is available {here}."},{here:e.createElement(Ge,{target:"_blank",rel:"noopener noreferrer",href:"https://docs.strapi.io/developer-docs/latest/development/admin-customization.html#locales"},o({id:"Settings.profile.form.section.experience.documentation",defaultMessage:"here"}))}))),e.createElement(u.Grid,{gap:5},e.createElement(u.GridItem,{s:12,col:6},e.createElement(S.Select,{label:o({id:"Settings.profile.form.section.experience.interfaceLanguage",defaultMessage:"Interface language"}),placeholder:o({id:"global.select",defaultMessage:"Select"}),hint:o({id:"Settings.profile.form.section.experience.interfaceLanguage.hint",defaultMessage:"This will only display your own interface in the chosen language."}),onClear:()=>{h({target:{name:"preferedLanguage",value:null}})},clearLabel:o({id:"Settings.profile.form.section.experience.clear.select",defaultMessage:"Clear the interface language selected"}),value:g.preferedLanguage,onChange:c=>{h({target:{name:"preferedLanguage",value:c}})}},Object.keys(P).map(c=>{const v=P[c];return e.createElement(S.Option,{value:c,key:c},v)}))),e.createElement(u.GridItem,{s:12,col:6},e.createElement(S.Select,{label:o({id:"Settings.profile.form.section.experience.mode.label",defaultMessage:"Interface mode"}),placeholder:o({id:"components.Select.placeholder",defaultMessage:"Select"}),hint:o({id:"Settings.profile.form.section.experience.mode.hint",defaultMessage:"Displays your interface in the chosen mode."}),value:g.currentTheme,onChange:c=>{h({target:{name:"currentTheme",value:c}})}},Xe.map(c=>{const v=o({id:"Settings.profile.form.section.experience.mode.option-label",defaultMessage:"{name} mode"},{name:V()(c)});return e.createElement(S.Option,{value:c,key:c},v)}))))))))))))}},99063:(pe,j,t)=>{t.d(j,{YM:()=>Y,Rw:()=>O});var e=t(5173),f=t(83985),p=Object.defineProperty,U=Object.defineProperties,Z=Object.getOwnPropertyDescriptors,G=Object.getOwnPropertySymbols,V=Object.prototype.hasOwnProperty,I=Object.prototype.propertyIsEnumerable,D=(d,s,i)=>s in d?p(d,s,{enumerable:!0,configurable:!0,writable:!0,value:i}):d[s]=i,B=(d,s)=>{for(var i in s||(s={}))V.call(s,i)&&D(d,i,s[i]);if(G)for(var i of G(s))I.call(s,i)&&D(d,i,s[i]);return d},N=(d,s)=>U(d,Z(s));const L={firstname:e.nK().required(f.translatedErrors.required),lastname:e.nK(),email:e.Z_().email(f.translatedErrors.email).lowercase().required(f.translatedErrors.required),username:e.Z_().nullable(),password:e.Z_().min(8,f.translatedErrors.minLength).matches(/[a-z]/,"components.Input.error.contain.lowercase").matches(/[A-Z]/,"components.Input.error.contain.uppercase").matches(/\d/,"components.Input.error.contain.number"),confirmPassword:e.Z_().min(8,f.translatedErrors.minLength).oneOf([e.iH("password"),null],"components.Input.error.password.noMatch").when("password",(d,s)=>d?s.required(f.translatedErrors.required):s)},O=N(B({},L),{currentPassword:e.Z_().when(["password","confirmPassword"],(d,s,i)=>d||s?i.required(f.translatedErrors.required):i),preferedLanguage:e.Z_().nullable()}),z={roles:e.IX().min(1,f.translatedErrors.required).required(f.translatedErrors.required)};var u=Object.defineProperty,E=Object.defineProperties,Q=Object.getOwnPropertyDescriptors,S=Object.getOwnPropertySymbols,K=Object.prototype.hasOwnProperty,W=Object.prototype.propertyIsEnumerable,R=(d,s,i)=>s in d?u(d,s,{enumerable:!0,configurable:!0,writable:!0,value:i}):d[s]=i,M=(d,s)=>{for(var i in s||(s={}))K.call(s,i)&&R(d,i,s[i]);if(S)for(var i of S(s))W.call(s,i)&&R(d,i,s[i]);return d},X=(d,s)=>E(d,Q(s));const Y=e.Ry().shape(M(X(M({},L),{isActive:e.Xg()}),z))}}]);