@strapi/admin 4.15.1 → 4.15.3-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 (267) hide show
  1. package/dist/_chunks/{AuthenticatedApp-092ef2be.js → AuthenticatedApp-26a57d48.js} +30 -30
  2. package/dist/_chunks/{AuthenticatedApp-092ef2be.js.map → AuthenticatedApp-26a57d48.js.map} +1 -1
  3. package/dist/_chunks/{AuthenticatedApp-b0ada7e9.mjs → AuthenticatedApp-332b40a8.mjs} +30 -30
  4. package/dist/_chunks/{AuthenticatedApp-b0ada7e9.mjs.map → AuthenticatedApp-332b40a8.mjs.map} +1 -1
  5. package/dist/_chunks/{HomePage-5798ba6f.mjs → HomePage-332764b2.mjs} +7 -8
  6. package/dist/_chunks/{HomePage-5798ba6f.mjs.map → HomePage-332764b2.mjs.map} +1 -1
  7. package/dist/_chunks/{HomePage-bdcb51be.js → HomePage-74c5c19b.js} +12 -13
  8. package/dist/_chunks/HomePage-74c5c19b.js.map +1 -0
  9. package/dist/_chunks/{HomePage-5ae473e6.js → HomePage-8022e4f9.js} +7 -8
  10. package/dist/_chunks/{HomePage-5ae473e6.js.map → HomePage-8022e4f9.js.map} +1 -1
  11. package/dist/_chunks/{HomePage-a3cc32d2.mjs → HomePage-ebb9bd4d.mjs} +12 -13
  12. package/dist/_chunks/HomePage-ebb9bd4d.mjs.map +1 -0
  13. package/dist/_chunks/{InstalledPluginsPage-cc2d6a36.js → InstalledPluginsPage-08915bd0.js} +10 -12
  14. package/dist/_chunks/{InstalledPluginsPage-cc2d6a36.js.map → InstalledPluginsPage-08915bd0.js.map} +1 -1
  15. package/dist/_chunks/{InstalledPluginsPage-6284aaff.mjs → InstalledPluginsPage-33ed21ac.mjs} +10 -12
  16. package/dist/_chunks/{InstalledPluginsPage-6284aaff.mjs.map → InstalledPluginsPage-33ed21ac.mjs.map} +1 -1
  17. package/dist/_chunks/{index-305a03f4.mjs → Login-4e7ab11a.mjs} +25 -29
  18. package/dist/_chunks/Login-4e7ab11a.mjs.map +1 -0
  19. package/dist/_chunks/{index-137490ba.js → Login-7c938e98.js} +25 -30
  20. package/dist/_chunks/Login-7c938e98.js.map +1 -0
  21. package/dist/_chunks/{MarketplacePage-209ec658.js → MarketplacePage-3c080568.js} +6 -8
  22. package/dist/_chunks/{MarketplacePage-209ec658.js.map → MarketplacePage-3c080568.js.map} +1 -1
  23. package/dist/_chunks/{MarketplacePage-7dee72f5.mjs → MarketplacePage-b82389f1.mjs} +6 -8
  24. package/dist/_chunks/{MarketplacePage-7dee72f5.mjs.map → MarketplacePage-b82389f1.mjs.map} +1 -1
  25. package/dist/_chunks/{ProfilePage-26c14ba4.mjs → ProfilePage-2f0d41e0.mjs} +7 -9
  26. package/dist/_chunks/{ProfilePage-26c14ba4.mjs.map → ProfilePage-2f0d41e0.mjs.map} +1 -1
  27. package/dist/_chunks/{ProfilePage-4f8c127b.js → ProfilePage-9911a1aa.js} +7 -9
  28. package/dist/_chunks/{ProfilePage-4f8c127b.js.map → ProfilePage-9911a1aa.js.map} +1 -1
  29. package/dist/_chunks/{SSOProviders-1d062c95.mjs → SSOProviders-62bfad92.mjs} +29 -61
  30. package/dist/_chunks/SSOProviders-62bfad92.mjs.map +1 -0
  31. package/dist/_chunks/{SSOProviders-1ef0a89e.js → SSOProviders-b395a4e6.js} +28 -80
  32. package/dist/_chunks/SSOProviders-b395a4e6.js.map +1 -0
  33. package/dist/_chunks/{build-f36bfc97.js → build-55ba3e68.js} +4 -2
  34. package/dist/_chunks/{build-f36bfc97.js.map → build-55ba3e68.js.map} +1 -1
  35. package/dist/_chunks/{build-e1ca35da.mjs → build-b67ecc59.mjs} +4 -2
  36. package/dist/_chunks/{build-e1ca35da.mjs.map → build-b67ecc59.mjs.map} +1 -1
  37. package/dist/_chunks/{constants-a773ff9b.js → constants-2bd3e15b.js} +13 -12
  38. package/dist/_chunks/{constants-a773ff9b.js.map → constants-2bd3e15b.js.map} +1 -1
  39. package/dist/_chunks/{constants-90c20a6f.mjs → constants-6082c0ef.mjs} +11 -12
  40. package/dist/_chunks/{constants-90c20a6f.mjs.map → constants-6082c0ef.mjs.map} +1 -1
  41. package/dist/_chunks/{constants-921eda17.mjs → constants-6ecddc43.mjs} +43 -15
  42. package/dist/_chunks/constants-6ecddc43.mjs.map +1 -0
  43. package/dist/_chunks/{constants-86aa3e70.js → constants-7596f6f3.js} +60 -13
  44. package/dist/_chunks/constants-7596f6f3.js.map +1 -0
  45. package/dist/_chunks/{constants-9de7641c.mjs → constants-889d52fe.mjs} +28 -28
  46. package/dist/_chunks/constants-889d52fe.mjs.map +1 -0
  47. package/dist/_chunks/{constants-70e05152.js → constants-9d60a039.js} +6 -6
  48. package/dist/_chunks/{constants-70e05152.js.map → constants-9d60a039.js.map} +1 -1
  49. package/dist/_chunks/{constants-6157f648.mjs → constants-b9efe215.mjs} +6 -6
  50. package/dist/_chunks/{constants-6157f648.mjs.map → constants-b9efe215.mjs.map} +1 -1
  51. package/dist/_chunks/{constants-27319180.mjs → constants-c5bbe308.mjs} +13 -12
  52. package/dist/_chunks/{constants-27319180.mjs.map → constants-c5bbe308.mjs.map} +1 -1
  53. package/dist/_chunks/{constants-32975b2e.js → constants-df81febb.js} +11 -12
  54. package/dist/_chunks/{constants-32975b2e.js.map → constants-df81febb.js.map} +1 -1
  55. package/dist/_chunks/{constants-727a113c.js → constants-efc88bf2.js} +26 -26
  56. package/dist/_chunks/constants-efc88bf2.js.map +1 -0
  57. package/dist/_chunks/{develop-513c9644.js → develop-69e28e61.js} +4 -2
  58. package/dist/_chunks/{develop-513c9644.js.map → develop-69e28e61.js.map} +1 -1
  59. package/dist/_chunks/{develop-e45b460e.mjs → develop-d97e7494.mjs} +4 -2
  60. package/dist/_chunks/{develop-e45b460e.mjs.map → develop-d97e7494.mjs.map} +1 -1
  61. package/dist/_chunks/formatAPIErrors-b599cf27.js +20 -0
  62. package/dist/_chunks/formatAPIErrors-b599cf27.js.map +1 -0
  63. package/dist/_chunks/formatAPIErrors-db6ed675.mjs +21 -0
  64. package/dist/_chunks/formatAPIErrors-db6ed675.mjs.map +1 -0
  65. package/dist/_chunks/{index-edc9bb0b.js → index-0134922e.js} +673 -811
  66. package/dist/_chunks/index-0134922e.js.map +1 -0
  67. package/dist/_chunks/{index-6a512cec.js → index-01a3932c.js} +8 -9
  68. package/dist/_chunks/{index-6a512cec.js.map → index-01a3932c.js.map} +1 -1
  69. package/dist/_chunks/{index-284c5926.js → index-13a08117.js} +33 -47
  70. package/dist/_chunks/index-13a08117.js.map +1 -0
  71. package/dist/_chunks/{index-1b7e986c.mjs → index-14462502.mjs} +14 -13
  72. package/dist/_chunks/{index-1b7e986c.mjs.map → index-14462502.mjs.map} +1 -1
  73. package/dist/_chunks/{index-85069cac.mjs → index-22fbd8cc.mjs} +9 -10
  74. package/dist/_chunks/{index-85069cac.mjs.map → index-22fbd8cc.mjs.map} +1 -1
  75. package/dist/_chunks/{index-73ba6bdd.mjs → index-259a5ab3.mjs} +3 -3
  76. package/dist/_chunks/{index-73ba6bdd.mjs.map → index-259a5ab3.mjs.map} +1 -1
  77. package/dist/_chunks/{index-7d40adea.mjs → index-287b49b0.mjs} +8 -7
  78. package/dist/_chunks/{index-7d40adea.mjs.map → index-287b49b0.mjs.map} +1 -1
  79. package/dist/_chunks/{index-77e0e5d7.js → index-293f112c.js} +8 -7
  80. package/dist/_chunks/{index-77e0e5d7.js.map → index-293f112c.js.map} +1 -1
  81. package/dist/_chunks/{index-0af587c3.js → index-2ca9ffb3.js} +78 -147
  82. package/dist/_chunks/index-2ca9ffb3.js.map +1 -0
  83. package/dist/_chunks/{index-4c5acc70.js → index-2e47d9aa.js} +9 -10
  84. package/dist/_chunks/{index-4c5acc70.js.map → index-2e47d9aa.js.map} +1 -1
  85. package/dist/_chunks/{index-59d22949.mjs → index-3d323e1b.mjs} +8 -9
  86. package/dist/_chunks/{index-59d22949.mjs.map → index-3d323e1b.mjs.map} +1 -1
  87. package/dist/_chunks/{index-5752584c.mjs → index-44360544.mjs} +182 -76
  88. package/dist/_chunks/index-44360544.mjs.map +1 -0
  89. package/dist/_chunks/{index-34a2909e.mjs → index-46245c2d.mjs} +12 -12
  90. package/dist/_chunks/{index-34a2909e.mjs.map → index-46245c2d.mjs.map} +1 -1
  91. package/dist/_chunks/{index-5ad8482b.mjs → index-486f5166.mjs} +7 -7
  92. package/dist/_chunks/{index-5ad8482b.mjs.map → index-486f5166.mjs.map} +1 -1
  93. package/dist/_chunks/{index-58db145d.mjs → index-49b41e57.mjs} +3 -3
  94. package/dist/_chunks/{index-58db145d.mjs.map → index-49b41e57.mjs.map} +1 -1
  95. package/dist/_chunks/{index-da04b144.js → index-4bdd41f2.js} +14 -13
  96. package/dist/_chunks/{index-da04b144.js.map → index-4bdd41f2.js.map} +1 -1
  97. package/dist/_chunks/{index-7aed99db.js → index-4ff5f2a8.js} +12 -12
  98. package/dist/_chunks/{index-7aed99db.js.map → index-4ff5f2a8.js.map} +1 -1
  99. package/dist/_chunks/{index-56ced4ab.mjs → index-5221021e.mjs} +8 -7
  100. package/dist/_chunks/{index-56ced4ab.mjs.map → index-5221021e.mjs.map} +1 -1
  101. package/dist/_chunks/{index-a4348f3b.js → index-54a7f1f4.js} +12 -12
  102. package/dist/_chunks/index-54a7f1f4.js.map +1 -0
  103. package/dist/_chunks/{index-1da8c640.mjs → index-5502f0f9.mjs} +9 -10
  104. package/dist/_chunks/{index-1da8c640.mjs.map → index-5502f0f9.mjs.map} +1 -1
  105. package/dist/_chunks/{index-36e0d449.mjs → index-5af78a9d.mjs} +32 -45
  106. package/dist/_chunks/index-5af78a9d.mjs.map +1 -0
  107. package/dist/_chunks/{index-1f1e2465.js → index-5be49e36.js} +9 -11
  108. package/dist/_chunks/{index-1f1e2465.js.map → index-5be49e36.js.map} +1 -1
  109. package/dist/_chunks/{index-4565fcbd.js → index-5bf8300a.js} +3 -3
  110. package/dist/_chunks/{index-4565fcbd.js.map → index-5bf8300a.js.map} +1 -1
  111. package/dist/_chunks/{index-48322669.mjs → index-663f37fb.mjs} +3 -3
  112. package/dist/_chunks/index-663f37fb.mjs.map +1 -0
  113. package/dist/_chunks/{index-35e4bad6.mjs → index-6999385d.mjs} +8 -9
  114. package/dist/_chunks/{index-35e4bad6.mjs.map → index-6999385d.mjs.map} +1 -1
  115. package/dist/_chunks/{index-928b18d2.mjs → index-70ad05e1.mjs} +3 -3
  116. package/dist/_chunks/{index-928b18d2.mjs.map → index-70ad05e1.mjs.map} +1 -1
  117. package/dist/_chunks/{index-e22d1a84.mjs → index-72195b26.mjs} +14 -13
  118. package/dist/_chunks/{index-e22d1a84.mjs.map → index-72195b26.mjs.map} +1 -1
  119. package/dist/_chunks/{index-c604806d.js → index-73b1ca6d.js} +12 -12
  120. package/dist/_chunks/{index-c604806d.js.map → index-73b1ca6d.js.map} +1 -1
  121. package/dist/_chunks/{index-62b4b3fc.js → index-76459a60.js} +11 -11
  122. package/dist/_chunks/{index-62b4b3fc.js.map → index-76459a60.js.map} +1 -1
  123. package/dist/_chunks/{index-6b9e3d60.js → index-77b91009.js} +9 -10
  124. package/dist/_chunks/{index-6b9e3d60.js.map → index-77b91009.js.map} +1 -1
  125. package/dist/_chunks/{index-24189ec9.js → index-84321b2e.js} +6 -6
  126. package/dist/_chunks/{index-24189ec9.js.map → index-84321b2e.js.map} +1 -1
  127. package/dist/_chunks/{index-b2257157.js → index-866d1aaf.js} +49 -12
  128. package/dist/_chunks/index-866d1aaf.js.map +1 -0
  129. package/dist/_chunks/{index-066ee02e.js → index-891738bc.js} +8 -10
  130. package/dist/_chunks/{index-066ee02e.js.map → index-891738bc.js.map} +1 -1
  131. package/dist/_chunks/{index-cadd3ee0.js → index-89cb437c.js} +4 -4
  132. package/dist/_chunks/{index-cadd3ee0.js.map → index-89cb437c.js.map} +1 -1
  133. package/dist/_chunks/{index-8ea5a488.js → index-901d8afc.js} +9 -10
  134. package/dist/_chunks/{index-8ea5a488.js.map → index-901d8afc.js.map} +1 -1
  135. package/dist/_chunks/{index-d1620260.js → index-9c56225f.js} +13 -14
  136. package/dist/_chunks/{index-d1620260.js.map → index-9c56225f.js.map} +1 -1
  137. package/dist/_chunks/{index-6dbc94a9.mjs → index-9e3fc4fe.mjs} +6 -6
  138. package/dist/_chunks/{index-6dbc94a9.mjs.map → index-9e3fc4fe.mjs.map} +1 -1
  139. package/dist/_chunks/{index-bdfc1149.mjs → index-a16075f2.mjs} +49 -12
  140. package/dist/_chunks/index-a16075f2.mjs.map +1 -0
  141. package/dist/_chunks/{index-6cc54f3b.mjs → index-a1c1b833.mjs} +8 -9
  142. package/dist/_chunks/{index-6cc54f3b.mjs.map → index-a1c1b833.mjs.map} +1 -1
  143. package/dist/_chunks/{index-acd6d64f.js → index-aaffa28c.js} +8 -7
  144. package/dist/_chunks/{index-acd6d64f.js.map → index-aaffa28c.js.map} +1 -1
  145. package/dist/_chunks/{index-be2ca313.mjs → index-abcea3d3.mjs} +13 -13
  146. package/dist/_chunks/{index-be2ca313.mjs.map → index-abcea3d3.mjs.map} +1 -1
  147. package/dist/_chunks/{index-af69bc98.mjs → index-acdd9b71.mjs} +11 -11
  148. package/dist/_chunks/{index-af69bc98.mjs.map → index-acdd9b71.mjs.map} +1 -1
  149. package/dist/_chunks/{index-89d27faa.js → index-adc85ed8.js} +14 -13
  150. package/dist/_chunks/{index-89d27faa.js.map → index-adc85ed8.js.map} +1 -1
  151. package/dist/_chunks/{index-f448aed2.js → index-af5e137f.js} +13 -12
  152. package/dist/_chunks/{index-f448aed2.js.map → index-af5e137f.js.map} +1 -1
  153. package/dist/_chunks/{index-16030b74.js → index-b11e88f3.js} +3 -3
  154. package/dist/_chunks/index-b11e88f3.js.map +1 -0
  155. package/dist/_chunks/{index-e414353b.js → index-b47862fc.js} +8 -8
  156. package/dist/_chunks/{index-e414353b.js.map → index-b47862fc.js.map} +1 -1
  157. package/dist/_chunks/{index-51a15b27.js → index-bea39602.js} +4 -4
  158. package/dist/_chunks/{index-51a15b27.js.map → index-bea39602.js.map} +1 -1
  159. package/dist/_chunks/{index-53ba81f9.mjs → index-c202e78f.mjs} +9 -10
  160. package/dist/_chunks/{index-53ba81f9.mjs.map → index-c202e78f.mjs.map} +1 -1
  161. package/dist/_chunks/{index-8d4d361d.mjs → index-c9f9b444.mjs} +13 -13
  162. package/dist/_chunks/{index-8d4d361d.mjs.map → index-c9f9b444.mjs.map} +1 -1
  163. package/dist/_chunks/{index-ea23ee9f.mjs → index-caecca36.mjs} +9 -11
  164. package/dist/_chunks/{index-ea23ee9f.mjs.map → index-caecca36.mjs.map} +1 -1
  165. package/dist/_chunks/{index-86dfbe3a.js → index-cce8ecb6.js} +178 -72
  166. package/dist/_chunks/index-cce8ecb6.js.map +1 -0
  167. package/dist/_chunks/{index-34de382e.mjs → index-cd461a87.mjs} +688 -824
  168. package/dist/_chunks/index-cd461a87.mjs.map +1 -0
  169. package/dist/_chunks/{index-5d8d89a7.js → index-cdfb1568.js} +13 -13
  170. package/dist/_chunks/{index-5d8d89a7.js.map → index-cdfb1568.js.map} +1 -1
  171. package/dist/_chunks/{index-1763a04f.js → index-cf87a6f0.js} +8 -9
  172. package/dist/_chunks/{index-1763a04f.js.map → index-cf87a6f0.js.map} +1 -1
  173. package/dist/_chunks/{index-b81f7273.mjs → index-d33930a8.mjs} +78 -147
  174. package/dist/_chunks/index-d33930a8.mjs.map +1 -0
  175. package/dist/_chunks/{index-fcd5bc14.mjs → index-d4473456.mjs} +14 -13
  176. package/dist/_chunks/{index-fcd5bc14.mjs.map → index-d4473456.mjs.map} +1 -1
  177. package/dist/_chunks/{index-3c58de6f.js → index-d74efba3.js} +14 -13
  178. package/dist/_chunks/{index-3c58de6f.js.map → index-d74efba3.js.map} +1 -1
  179. package/dist/_chunks/{index-1e973c03.mjs → index-d7bc095b.mjs} +14 -13
  180. package/dist/_chunks/{index-1e973c03.mjs.map → index-d7bc095b.mjs.map} +1 -1
  181. package/dist/_chunks/{index-00202c8a.mjs → index-dbbda762.mjs} +13 -12
  182. package/dist/_chunks/{index-00202c8a.mjs.map → index-dbbda762.mjs.map} +1 -1
  183. package/dist/_chunks/{index-f5342ea5.js → index-dfb03b19.js} +14 -13
  184. package/dist/_chunks/{index-f5342ea5.js.map → index-dfb03b19.js.map} +1 -1
  185. package/dist/_chunks/{index-bb8093ea.mjs → index-e10dd15d.mjs} +12 -12
  186. package/dist/_chunks/{index-bb8093ea.mjs.map → index-e10dd15d.mjs.map} +1 -1
  187. package/dist/_chunks/{index-370a4ee8.mjs → index-e4f7fa95.mjs} +12 -12
  188. package/dist/_chunks/index-e4f7fa95.mjs.map +1 -0
  189. package/dist/_chunks/{index-b98ea3ce.mjs → index-e749e6ef.mjs} +13 -14
  190. package/dist/_chunks/{index-b98ea3ce.mjs.map → index-e749e6ef.mjs.map} +1 -1
  191. package/dist/_chunks/{index-332f319e.mjs → index-ef5a0b8f.mjs} +8 -10
  192. package/dist/_chunks/{index-332f319e.mjs.map → index-ef5a0b8f.mjs.map} +1 -1
  193. package/dist/_chunks/{index-f179c7ea.js → index-f03c4e70.js} +13 -13
  194. package/dist/_chunks/{index-f179c7ea.js.map → index-f03c4e70.js.map} +1 -1
  195. package/dist/_chunks/{index-52b5db8a.js → index-fc0191f3.js} +8 -9
  196. package/dist/_chunks/{index-52b5db8a.js.map → index-fc0191f3.js.map} +1 -1
  197. package/dist/_chunks/{schema-a95f2514.mjs → schema-4d12cff6.mjs} +2 -2
  198. package/dist/_chunks/{schema-a95f2514.mjs.map → schema-4d12cff6.mjs.map} +1 -1
  199. package/dist/_chunks/{schema-f49c76d7.js → schema-c6ce9e01.js} +2 -2
  200. package/dist/_chunks/{schema-f49c76d7.js.map → schema-c6ce9e01.js.map} +1 -1
  201. package/dist/_chunks/{validateWorkflow-e66d7d2e.js → validateWorkflow-155f5778.js} +3 -3
  202. package/dist/_chunks/{validateWorkflow-e66d7d2e.js.map → validateWorkflow-155f5778.js.map} +1 -1
  203. package/dist/_chunks/{validateWorkflow-d051b610.mjs → validateWorkflow-e0166061.mjs} +3 -3
  204. package/dist/_chunks/{validateWorkflow-d051b610.mjs.map → validateWorkflow-e0166061.mjs.map} +1 -1
  205. package/dist/admin/index.js +9 -10
  206. package/dist/admin/index.js.map +1 -1
  207. package/dist/admin/index.mjs +9 -10
  208. package/dist/admin/index.mjs.map +1 -1
  209. package/dist/admin/src/constants.d.ts +10 -0
  210. package/dist/admin/src/contexts/admin.d.ts +2 -2
  211. package/dist/admin/src/hooks/__mocks__/useSettingsMenu.d.ts +2 -0
  212. package/dist/admin/src/hooks/useEnterprise.d.ts +6 -4
  213. package/dist/admin/src/hooks/useSettingsMenu.d.ts +24 -0
  214. package/dist/admin/src/pages/Auth/AuthPage.d.ts +6 -0
  215. package/dist/admin/src/pages/Auth/components/FieldActionWrapper.d.ts +3 -0
  216. package/dist/admin/src/pages/Auth/components/ForgotPassword.d.ts +3 -0
  217. package/dist/admin/src/pages/Auth/components/ForgotPasswordSuccess.d.ts +2 -0
  218. package/dist/admin/src/pages/Auth/components/Login.d.ts +8 -0
  219. package/dist/admin/src/pages/Auth/components/Oops.d.ts +2 -0
  220. package/dist/admin/src/pages/Auth/components/Register.d.ts +7 -0
  221. package/dist/admin/src/pages/Auth/components/ResetPassword.d.ts +3 -0
  222. package/dist/admin/src/pages/Auth/constants.d.ts +14 -0
  223. package/dist/admin/src/pages/Marketplace/hooks/useMarketplaceData.d.ts +2 -2
  224. package/dist/admin/src/types/permissions.d.ts +10 -0
  225. package/dist/cli.js +3 -1
  226. package/dist/cli.js.map +1 -1
  227. package/dist/cli.mjs +3 -1
  228. package/dist/cli.mjs.map +1 -1
  229. package/dist/ee/admin/src/constants.d.ts +3 -1
  230. package/dist/ee/admin/src/pages/AuthPage/components/Login.d.ts +3 -0
  231. package/dist/ee/admin/src/pages/AuthPage/components/Providers.d.ts +2 -0
  232. package/dist/ee/admin/src/pages/AuthPage/components/SSOProviders.d.ts +8 -0
  233. package/dist/ee/admin/src/pages/AuthPage/constants.d.ts +3 -0
  234. package/dist/ee/admin/src/pages/AuthResponse.d.ts +2 -0
  235. package/dist/ee/admin/src/pages/HomePage.d.ts +1 -1
  236. package/dist/shared/contracts/authentication.d.ts +126 -0
  237. package/dist/shared/contracts/providers.d.ts +18 -0
  238. package/ee/LICENSE +1 -0
  239. package/package.json +21 -21
  240. package/dist/_chunks/HomePage-a3cc32d2.mjs.map +0 -1
  241. package/dist/_chunks/HomePage-bdcb51be.js.map +0 -1
  242. package/dist/_chunks/SSOProviders-1d062c95.mjs.map +0 -1
  243. package/dist/_chunks/SSOProviders-1ef0a89e.js.map +0 -1
  244. package/dist/_chunks/constants-12dfb222.mjs +0 -34
  245. package/dist/_chunks/constants-12dfb222.mjs.map +0 -1
  246. package/dist/_chunks/constants-1aea1185.js +0 -34
  247. package/dist/_chunks/constants-1aea1185.js.map +0 -1
  248. package/dist/_chunks/constants-727a113c.js.map +0 -1
  249. package/dist/_chunks/constants-86aa3e70.js.map +0 -1
  250. package/dist/_chunks/constants-921eda17.mjs.map +0 -1
  251. package/dist/_chunks/constants-9de7641c.mjs.map +0 -1
  252. package/dist/_chunks/index-0af587c3.js.map +0 -1
  253. package/dist/_chunks/index-137490ba.js.map +0 -1
  254. package/dist/_chunks/index-16030b74.js.map +0 -1
  255. package/dist/_chunks/index-284c5926.js.map +0 -1
  256. package/dist/_chunks/index-305a03f4.mjs.map +0 -1
  257. package/dist/_chunks/index-34de382e.mjs.map +0 -1
  258. package/dist/_chunks/index-36e0d449.mjs.map +0 -1
  259. package/dist/_chunks/index-370a4ee8.mjs.map +0 -1
  260. package/dist/_chunks/index-48322669.mjs.map +0 -1
  261. package/dist/_chunks/index-5752584c.mjs.map +0 -1
  262. package/dist/_chunks/index-86dfbe3a.js.map +0 -1
  263. package/dist/_chunks/index-a4348f3b.js.map +0 -1
  264. package/dist/_chunks/index-b2257157.js.map +0 -1
  265. package/dist/_chunks/index-b81f7273.mjs.map +0 -1
  266. package/dist/_chunks/index-bdfc1149.mjs.map +0 -1
  267. package/dist/_chunks/index-edc9bb0b.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"HomePage-5ae473e6.js","sources":["../../admin/src/components/GuidedTour/Homepage.tsx","../../admin/src/pages/assets/corner-ornament.svg","../../admin/src/pages/assets/strapi-cloud-background.png","../../admin/src/pages/assets/strapi-cloud-flags.svg","../../admin/src/pages/HomePage.tsx"],"sourcesContent":["import { Box, Button, Flex, Typography } from '@strapi/design-system';\nimport { LinkButton } from '@strapi/design-system/v2';\nimport { GuidedTourContextValue, pxToRem, useGuidedTour, useTracking } from '@strapi/helper-plugin';\nimport { ArrowRight } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { NavLink } from 'react-router-dom';\n\nimport { LAYOUT_DATA, States, STATES } from './constants';\nimport { Number, VerticalDivider } from './Ornaments';\n\nconst GuidedTourHomepage = () => {\n const { guidedTourState, setSkipped } = useGuidedTour();\n const { formatMessage } = useIntl();\n const { trackUsage } = useTracking();\n\n const sections = Object.entries(LAYOUT_DATA).map(([key, val]) => ({\n key: key,\n title: val.home.title,\n content: (\n <LinkButton\n onClick={() => trackUsage(val.home.trackingEvent)}\n as={NavLink}\n // @ts-expect-error - types are not inferred correctly through the as prop.\n to={val.home.cta.target}\n endIcon={<ArrowRight />}\n >\n {formatMessage(val.home.cta.title)}\n </LinkButton>\n ),\n isDone: Object.entries(\n guidedTourState[key as keyof GuidedTourContextValue['guidedTourState']]\n ).every(([, value]) => value),\n }));\n\n const activeSectionIndex = sections.findIndex((section) => !section.isDone);\n\n const handleSkip = () => {\n setSkipped(true);\n trackUsage('didSkipGuidedtour');\n };\n\n return (\n <Box\n hasRadius\n shadow=\"tableShadow\"\n paddingTop={7}\n paddingRight={4}\n paddingLeft={7}\n paddingBottom={4}\n background=\"neutral0\"\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6}>\n <Typography variant=\"beta\" as=\"h2\">\n {formatMessage({\n id: 'app.components.GuidedTour.title',\n defaultMessage: '3 steps to get started',\n })}\n </Typography>\n <Box>\n {sections.map((section, index) => {\n const state = getState(activeSectionIndex, index);\n return (\n <Box key={section.key}>\n <Flex>\n <Box minWidth={pxToRem(30)} marginRight={5}>\n <Number state={state}>{index + 1}</Number>\n </Box>\n <Typography variant=\"delta\" as=\"h3\">\n {formatMessage(section.title)}\n </Typography>\n </Flex>\n <Flex alignItems=\"flex-start\">\n <Flex\n justifyContent=\"center\"\n minWidth={pxToRem(30)}\n marginBottom={3}\n marginTop={3}\n marginRight={5}\n >\n {index === sections.length - 1 ? null : <VerticalDivider state={state} />}\n </Flex>\n <Box marginTop={2}>{state === STATES.IS_ACTIVE ? section.content : null}</Box>\n </Flex>\n </Box>\n );\n })}\n </Box>\n </Flex>\n <Flex justifyContent=\"flex-end\">\n <Button variant=\"tertiary\" onClick={handleSkip}>\n {formatMessage({ id: 'app.components.GuidedTour.skip', defaultMessage: 'Skip the tour' })}\n </Button>\n </Flex>\n </Box>\n );\n};\n\nconst getState = (activeSectionIndex: number, index: number): States => {\n if (activeSectionIndex === -1) {\n return STATES.IS_DONE;\n }\n if (index < activeSectionIndex) {\n return STATES.IS_DONE;\n }\n if (index > activeSectionIndex) {\n return STATES.IS_NOT_DONE;\n }\n return STATES.IS_ACTIVE;\n};\n\nexport { GuidedTourHomepage };\n","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQ4IiBoZWlnaHQ9IjE0OCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIG9wYWNpdHk9Ii44IiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggb3BhY2l0eT0iLjE1IiBkPSJNMTEwLjgxIDM3SDczLjk3Vjc0LjFoMzYuODRWMzdaIiBmaWxsPSJ1cmwoI2EpIi8+CiAgICAgICAgPHBhdGggb3BhY2l0eT0iLjA3IiBkPSJNMzYuODQgMEgwdjM3LjA4aDM2Ljg0VjBaIiBmaWxsPSJ1cmwoI2IpIi8+CiAgICAgICAgPHBhdGggb3BhY2l0eT0iLjA3IiBkPSJNNzMuOTIgNzMuOTVIMzcuMDh2MzcuMDhoMzYuODRWNzMuOTVaIiBmaWxsPSJ1cmwoI2MpIi8+CiAgICAgICAgPHBhdGggb3BhY2l0eT0iLjA3IiBkPSJNMTQ3Ljk5IDExMC45MmgtMzcuM1YxNDhIMTQ4di0zNy4wOFoiIGZpbGw9InVybCgjZCkiLz4KICAgICAgICA8cGF0aCBvcGFjaXR5PSIuMTUiIGQ9Ik03My44MyAzN0gzNi44NEw3My44MyAwdjM3WiIgZmlsbD0idXJsKCNlKSIvPgogICAgICAgIDxwYXRoIG9wYWNpdHk9Ii4xNSIgZD0iTTExMC42IDExMS4wMnYtMzdoMzYuOThsLTM2Ljk5IDM3WiIgZmlsbD0idXJsKCNmKSIvPgogICAgICAgIDxwYXRoIG9wYWNpdHk9Ii40IiBkPSJNNzMuODMgMHYzN2gzNi45OHYzNy4wMWgzN1YzYTMgMyAwIDAgMC0zLTNINzMuODJaIiBmaWxsPSJ1cmwoI2cpIi8+CiAgICA8L2c+CiAgICAKICAgIDxkZWZzPgogICAgICAgIDxsaW5lYXJHcmFkaWVudCBpZD0iYSIgeDE9IjkxLjMxIiB5MT0iODMuMzEiIHgyPSIxMTguMjQiIHkyPSI1Ni41OSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjN0E5MkZGIi8+CiAgICAgICAgICAgIDxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzMyNTNFQSIvPgogICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgCiAgICAgICAgPGxpbmVhckdyYWRpZW50IGlkPSJiIiB4MT0iNDAuOTkiIHkxPSIxMy44OCIgeDI9Ii4wMSIgeTI9IjExLjY0IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiNBOEI4RkYiLz4KICAgICAgICAgICAgPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMzI1M0VBIi8+CiAgICAgICAgPC9saW5lYXJHcmFkaWVudD4KICAgICAgICAKICAgICAgICA8bGluZWFyR3JhZGllbnQgaWQ9ImMiIHgxPSI1NC40MSIgeTE9IjEyMC4yNSIgeDI9IjgxLjM1IiB5Mj0iOTMuNTIiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iI0E4QjhGRiIvPgogICAgICAgICAgICA8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMzMjUzRUEiLz4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgICAgIAogICAgICAgIDxsaW5lYXJHcmFkaWVudCBpZD0iZCIgeDE9IjEyOC4yNCIgeTE9IjE1Ny4yMiIgeDI9IjE1NS4xNyIgeTI9IjEzMC4xNyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjQThCOEZGIi8+CiAgICAgICAgICAgIDxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzMyNTNFQSIvPgogICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgCiAgICAgICAgPGxpbmVhckdyYWRpZW50IGlkPSJlIiB4MT0iNTQuMjQiIHkxPSI0Ni4yMSIgeDI9IjgxLjEyIiB5Mj0iMTkuMzgiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzdBOTJGRiIvPgogICAgICAgICAgICA8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMzMjUzRUEiLz4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgICAgIAogICAgICAgIDxsaW5lYXJHcmFkaWVudCBpZD0iZiIgeDE9IjEyNi4yOCIgeTE9Ijc0LjA1IiB4Mj0iMTI0Ljk0IiB5Mj0iMTExLjA3IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiM3QTkyRkYiLz4KICAgICAgICAgICAgPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMzI1M0VBIi8+CiAgICAgICAgPC9saW5lYXJHcmFkaWVudD4KICAgICAgICAKICAgICAgICA8bGluZWFyR3JhZGllbnQgaWQ9ImciIHgxPSI3My4zNyIgeTE9IjM2Ljg3IiB4Mj0iMTMyLjg3IiB5Mj0iNjYuNzQiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzdBOTJGRiIvPgogICAgICAgICAgICA8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMzODU4RUEiLz4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgPC9kZWZzPgo8L3N2Zz4K\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADgAAAA5CAMAAABUBBiJAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAJcEhZcwAACxMAAAsTAQCanBgAAAMAUExURUdwTP+PjYf49/Xhn4f6+P+DjIb6+Yzy9/fkof+Gjc+z6c+z6M+z6Yr4+IX39/ninvLkpf+GjvDlpsS569mw4vnhn/+Fjtqw4cG77ov695P59NnrwKD37Ij6+Jb484/59qT26Z337uTotO7kqevlrLrz27b03qj258Dy1rD14snwzZn48az15NzqvN/puufnsf6olPbfoOHot/zJmvTjo/Hkpv6kk9Xsw/TapPnhn/+ekYz498bx0P+XkbP04NLtxvrenf65ls/uyb7y2cPx0/jLn+nmr8zvyvjVn/vSm/vOmvHgp/6dlvyknP6ylP6Vle3gq5L29frZnPu/mv21l93nvvm/oPu5nPPfpffRoPTVpOrZsv6+leLdvfjan6/g6tbpxuLkuaXy6+bitfbNo/bApv+Mj+/cqvfjoL/g4P+tk7fh5f2tl4n4+ODOyvvWmvK2uei/yfyeovqip/3FmMDo3I3t99Lpy6rn6vyxnKPs7drnwpvm8ubZuf+IjvHBs+rfsLno4dfezKvt6Nnjx7Lv487j0sjt08bm2Kbf7o319t7gw/Wus8Tt2Mzp0pTs9Lfv4PrEnPi5peq3yf+Sj/DIsfDTq86/5fimrpnw8visqvjFof2enObOwZ/w7/O3s6zx573t3NfU0unUufquov7CluPHyuzIus7Q3ezTsubetp/g8uO/0Mff2uDXxO28wLLp5erPut/ivvOsvPXHpvq1oc7W2pLy9fezq/LKquTVwPqoo++1wujIw/ypnJPm9afW8Pa5rM3I4fPRp/+Pk7TI7tS25L/Z487d1sbZ3tTZ0t3Uy53079Pjzu/AuuvDwM3szvaotfDOrenir47o9+7NtN3J0fS9ru2vycTH59yz39e/3+/Yq5ja9azM8d+62Jbg9Zf18v6YmrrT6bDZ65vr8sbO4/GuwrHS7bzM6dbN1/PDq9XH3LvE7eOy2d3B15Dh9uW109zayaLm76Da8p/U88636L+/7emw0NrH18W+6sPT5LjZ59m538i66qTP8mzi5EgAAAAZdFJOUwDfoEjfSEj+lZRIoH/PgO/f79/P38/P3+9GeHQBAAAGdElEQVRIx33Xd1zNexzH8Z97L3HdvZOdTYRKQ2R00zglaShCtBx1JU0VDVGhJJUiaWghGqIiIiMpQkohVzKSVXFJup/P5/f7nWG9/38+Xp/zPZ0/Yhjm276//Xnz5tOnT/+D1dbWPniQm5t75cqV2FhXV9fVsH9hRkZGZ86csbPz8/P7+Y8+PRnYd6/Onr15E+WLFxx8wEFerpaQSP38+kDvFcCzBFFur60tFidRAt21axdJCdqT6fueZFfXnTt3XqDcXltcXJybuxkWGxvn6lpEcJeBAUqjqCikdnZ9mF/fk+zi5HYYwFWrSMbFxRW5FgkEqwUoDTSNNDWjcHZ2PZi/3r59HxMTU99VD3D//v0uvFzFwrgimEAgQAiUBrQH8/r127cxKOvrnz0j6ZKdnY1wz57NR4+y8oQAZyC2UVEAWUnwGUGU2bw8mgIrOnFCoChQUTFQN1BXVyfKtLaCrIspLX3y5AlJF1ZWIjx1lJMpJ2BIVdRpmupMWWtra11dXWkMyDdv3tTs37fPxaWqKruysnLdHqBg81O8UrwQKiqqiChTxstSkjU1+2BVMIQ3bpw6FRkZmQ/Uy2vlSknK3C4rK3v0qK6uubQ0/cljgCiPH0dYuW6dSOaThHFWhbl9G+Gj5ubm9NL0x48f19Q4IzxelZYGEOQNsfTiJFqAtx/yMh1kUo0zDGQaDGTLDVvbyEizfHNz8/nzSa5YobhCUZHpBvjw3r17nZ2sTEpyBrp7926EO3asa2mxBWpmZg7Ua/58Q0OAOKa7u/shJzvTjxw5kpSUdNGZ5GGSO0DaojSjJlJDQ4Qd3SdPkjzXeeECBy9e3I3w8OHr1xG2sBCliBoyHSibmprevTt3jmQ5SedChGkoj7Xk2cYjNDExMZ8xYwZLAXacRImQZDnJgwcLC7nksWN5eXnx8fEkTWbQAN7qaG8XJR0vXDh/vry8/OVLhIXJySCrq3m5bZuJmDK3brW3t4eENDUtFgodzx04cABlACuTk5MzMj6SCxcuZCHJxYubhO+Ejo6sDGClL8lqlMuXayMkuhCHMCsrJAQkJlGeDw4OQLloka8vwozo6urTy/OWa2uTXJOamorweWMjL4VCNhl8/lJAQNDLsIMgfa1QRoOEprY2QpSpBBuzQHqi9Hd0dNu0KTg4GGRYWNgiTkZHR5/m5GQYUeY5SJ+srLYQT09PodDfn5WXLgUEcdLKKqMBIS+3oVyzBuDzRh8fn7Y2gIcO+fu7ASQZFIRwUSZIK5SWpxcs0BY1EZaUNCKUlFs5mAMwE2FDQ7TlacsFQPX09JBOZq6VlJT4cMlDLHTbtJWTORLSEgZST5uVzDWS932827w9AwNFya0eHkuC1qLMzMxcj5CXuno0gNfCw8Pv37/v7e1NMGKv25YtW0EGLVm7NicnZynA9Vb2DQ2qBOfoshThNYIJ3pSMiNgLciOXNAW4DKW9vT3KOTBdGEB3d/dwSiZQcsMGlFtAXvZYAknTnKVLly1bv34uSFVVVZHURYhy586EBG+bwMBEkAQ3XvZASUmAnLRW5SXBAhYm2NgkJoqSl7mkKZecS0mC/8AYGRkZ94KCgp0obUhGSCcJXkWobwHQ2tp63jwOFrCwgoMbIobPmoUQk3JrTcfzUt/egoPzWCgTSrKCvXUcJIfPGjV745jLM6eLk1fngrSwECWZUBzAu3crKipsbEYmJo6eNgLh7I0ApyyRMzUdP2koQJD6ICdOZJOME0FjFvYfPHjkOIAj2KQOSDk5gJOGTmChPkBWMk4aGqGhxsbGd1ESHMclpxKcAhCTE8TJidZaCEFqABx4d+yQIQgpOZyVM/nk0KET/h42TJ6DWjCAoRoag1AilLqVTypgkoN0q5Y1QTwW3MCxXFJ861Qd+pQKClxSXp6DWjwcNKhfP5KQ5G8dxSfl5BREt8orWyiBVAM4wElWlmA/yaTkrQTxVkoqKylJQDb50a2zx4zRmc7fOoFulVciqAZwwABZWVkx7C/9rlJJuhWg2gdQ4l1Hf+5dEZJkofjW/h/+DegQFN+qrCwJJW8d/OV3RegAkvkG4SCpDzn4Sx9SGaSDg9qPCD/xhYyeNm3E516H4O/MVzz85Bcieh2pD+ng4NCb6QXQCV/HmH9X6b+6j75J+pAOXzPMDwPoB/Ll11GQfh2l3vj/Q6+vvpehH0g/9qf1iV+I1Ov88lNv6P0PQL+UTau8/+4AAAAASUVORK5CYII=\"","export default \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNjAiIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjI5LjQxIDQ0IDE0OS4wOSA1MC4zNSI+PHBhdGggc3Ryb2tlPSIjRUFFQUVGIiBkPSJNMzAuNSA0NC41YzM3IDI3IDQ3LjUgMzggMTQ3LjQ5OSAzMiIvPjxnIGZpbHRlcj0idXJsKCNhKSI+PHBhdGggZmlsbD0iI0YyOUQ0MSIgZD0ibTEyOS40NjcgOTQuMDg1IDguMTQ4LTE0LjE0MmEuNTk4LjU5OCAwIDAgMC0uNDAzLS44ODcgNzUuMDk5IDc1LjA5OSAwIDAgMC0zLjA0NS0uNTM2Yy0xLjg3NS0uMjc0LTIuOTM2LS40NC00LjgzNy0uNTA1LTEuODM4LS4wNjQtMi44NzMuMDEtNC42OTguMTUzYTY0LjA1IDY0LjA1IDAgMCAwLTIuNjkyLjI5My41OTcuNTk3IDAgMCAwLS40NjIuODUxbDcuMDQyIDE0LjczN2MuMTg2LjM4OC43MzIuNDEuOTQ3LjAzNloiLz48L2c+PGcgZmlsdGVyPSJ1cmwoI2IpIj48cGF0aCBmaWxsPSIjRjI5RDQxIiBkPSJtNDYuOTkgNzUuNTIgMTMuODEzLTguNjk3YS41OTcuNTk3IDAgMCAwIC4wNTgtLjk3MSA3NS4xOTEgNzUuMTkxIDAgMCAwLTIuNDQyLTEuODk3Yy0xLjUzLTEuMTE5LTIuMzktMS43NjEtNC4wNC0yLjcwNy0xLjU5NS0uOTE1LTIuNTQ1LTEuMzM0LTQuMjI2LTIuMDZhNjQuMDkgNjQuMDkgMCAwIDAtMi41MTYtLjk5OS41OTcuNTk3IDAgMCAwLS44MDYuNTM3bC0uNjYgMTYuMzE5YS41MzUuNTM1IDAgMCAwIC44Mi40NzRaIi8+PC9nPjxnIGZpbHRlcj0idXJsKCNjKSI+PHBhdGggZmlsbD0iIzVDQjE3NiIgZD0ibTI5LjQxIDYzLjUxIDIuMTAyLTE2LjE4NmEuNTk3LjU5NyAwIDAgMSAuODU4LS40NmMuNzQ4LjM3MSAxLjkwNS45NTQgMi43NDUgMS40MiAxLjY1Ny45MiAyLjYwMiAxLjQzMyA0LjE1MiAyLjUzNCAxLjUgMS4wNjQgMi4yNzggMS43NSAzLjY0MiAyLjk3MmE2NC4wMjYgNjQuMDI2IDAgMCAxIDEuOTYyIDEuODY1Yy4yOTEuMjg2LjIxNC43NzEtLjE0OS45NTdsLTE0LjUzOCA3LjQ0M2EuNTM1LjUzNSAwIDAgMS0uNzc0LS41NDVaIi8+PC9nPjxtYXNrIGlkPSJkIiB3aWR0aD0iMTciIGhlaWdodD0iMTkiIHg9IjI5IiB5PSI0NiIgbWFza1VuaXRzPSJ1c2VyU3BhY2VPblVzZSIgc3R5bGU9Im1hc2stdHlwZTphbHBoYSI+PHBhdGggZmlsbD0iIzVDQjE3NiIgZD0ibTI5LjQxMiA2My41MSAyLjEwMS0xNi4xODZhLjU5Ny41OTcgMCAwIDEgLjg1OC0uNDZjLjc0OS4zNzEgMS45MDUuOTU0IDIuNzQ2IDEuNDIgMS42NTcuOTIgMi42MDEgMS40MzMgNC4xNTIgMi41MzQgMS41IDEuMDY0IDIuMjc4IDEuNzUgMy42NDIgMi45NzJhNjQuMTQ4IDY0LjE0OCAwIDAgMSAxLjk2MiAxLjg2NWMuMjkuMjg2LjIxNC43NzEtLjE1Ljk1N2wtMTQuNTM3IDcuNDQzYS41MzUuNTM1IDAgMCAxLS43NzQtLjU0NVoiLz48L21hc2s+PGcgc3Ryb2tlPSIjZmZmIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS13aWR0aD0iLjY2MSIgbWFzaz0idXJsKCNkKSI+PHBhdGggZD0iTTM5Ljc1NSA1MS4yMThjLTEuMDUgMS41NTgtNC42MDYgNC43ODgtMTAuNDQgNS4yNDdNMzYuNDE1IDQ3LjgxNmMtMS4wNSAxLjU1OC00LjYwNiA0Ljc4OS0xMC40NCA1LjI0N000Mi45NyA1My45N2MtMS40NTcgMS45MDgtNi4zNDEgNS45MDItMTQuMjE2IDYuNjE5TTQyLjE1IDU4LjQ5OWMtMS42NDUgMS43NDgtNS4yOSA0LjAzMy0xMy4xOTcgMy45MzkiLz48L2c+PGcgZmlsdGVyPSJ1cmwoI2UpIj48cGF0aCBmaWxsPSIjN0I3OUZGIiBkPSJtMTY5LjgxMyA5Mi45ODMgNS45MjctMTUuMjA4YS41OTguNTk4IDAgMCAwLS41MzEtLjgxNSA3NS4yMTMgNzUuMjEzIDAgMCAwLTMuMDkxLS4wNzJjLTEuODk1LjAxLTIuOTY5LjAwNy00Ljg1OS4yMjgtMS44MjYuMjE0LTIuODM4LjQ0Mi00LjYyMS44NTktLjgxNS4xOS0xLjg5My40ODgtMi42MTcuNjk0YS41OTYuNTk2IDAgMCAwLS4zMjguOTFsOS4xNzggMTMuNTFhLjUzNi41MzYgMCAwIDAgLjk0Mi0uMTA2WiIvPjwvZz48ZyBmaWx0ZXI9InVybCgjZikiPjxwYXRoIGZpbGw9IiM3Qjc5RkYiIGQ9Im04Ny4wMDEgOTAuODUzLTQuNDY2LTE1LjY5OWEuNTk3LjU5NyAwIDAgMSAuNjA2LS43NjFjLjgzNS4wNDUgMi4xMjcuMTIzIDMuMDg0LjIyIDEuODg2LjE5IDIuOTU2LjI4NyA0LjgxNi42ODUgMS43OTcuMzg1IDIuNzg0LjcwOSA0LjUxOSAxLjI5MS43OTQuMjY3IDEuODM5LjY2NSAyLjU0LjkzOC4zOC4xNDguNTAxLjYyNC4yNC45MzhMODcuOTI5IDkxLjA0OGEuNTM1LjUzNSAwIDAgMS0uOTI3LS4xOTVaIi8+PC9nPjxnIGZpbHRlcj0idXJsKCNnKSI+PHBhdGggZmlsbD0iI0VFNUU1MiIgZD0ibTY2LjE1MyA4NS4xMjIgMTIuMzU1LTEwLjY2NWEuNTk3LjU5NyAwIDAgMC0uMDg3LS45NyA3NS4zNTMgNzUuMzUzIDAgMCAwLTIuNjk4LTEuNTFjLTEuNjgtLjg3Ny0yLjYyNy0xLjM4My00LjQtMi4wNzItMS43MTQtLjY2Ni0yLjcxNi0uOTM4LTQuNDg2LTEuNDA0YTY0LjA4MyA2NC4wODMgMCAwIDAtMi42MzgtLjYxMS41OTcuNTk3IDAgMCAwLS43MTYuNjUxbDEuNzg4IDE2LjIzNGEuNTM1LjUzNSAwIDAgMCAuODgyLjM0N1oiLz48L2c+PGNpcmNsZSBjeD0iNzAuNzkzIiBjeT0iNzQuNTExIiByPSIuOTkyIiBmaWxsPSIjZmZmIiB0cmFuc2Zvcm09InJvdGF0ZSg4LjU1MyA3MC43OTMgNzQuNTEpIi8+PGNpcmNsZSBjeD0iNjUuNTc0IiBjeT0iNzguNjMiIHI9Ii45OTIiIGZpbGw9IiNmZmYiIHRyYW5zZm9ybT0icm90YXRlKDguNTUzIDY1LjU3NCA3OC42MykiLz48Y2lyY2xlIGN4PSI2NS40MDgiIGN5PSI3NC41MTkiIHI9Ii45OTIiIGZpbGw9IiNmZmYiIHRyYW5zZm9ybT0icm90YXRlKDguNTUzIDY1LjQwOCA3NC41MTkpIi8+PGNpcmNsZSBjeD0iNjcuODM0IiBjeT0iODEuOTQzIiByPSIuOTkyIiBmaWxsPSIjZmZmIiB0cmFuc2Zvcm09InJvdGF0ZSg4LjU1MyA2Ny44MzQgODEuOTQzKSIvPjxjaXJjbGUgY3g9IjY3LjI1OSIgY3k9IjY5Ljg3NSIgcj0iLjk5MiIgZmlsbD0iI2ZmZiIgdHJhbnNmb3JtPSJyb3RhdGUoOC41NTMgNjcuMjU5IDY5Ljg3NSkiLz48Y2lyY2xlIGN4PSI3NC42OTEiIGN5PSI3Mi44MzQiIHI9Ii45OTIiIGZpbGw9IiNmZmYiIHRyYW5zZm9ybT0icm90YXRlKDguNTUzIDc0LjY5IDcyLjgzNCkiLz48Y2lyY2xlIGN4PSI3MS4xNzEiIGN5PSI3OC45NjgiIHI9Ii45OTIiIGZpbGw9IiNmZmYiIHRyYW5zZm9ybT0icm90YXRlKDguNTUzIDcxLjE3MSA3OC45NjgpIi8+PGcgZmlsdGVyPSJ1cmwoI2gpIj48cGF0aCBmaWxsPSIjRUU1RTUyIiBkPSJtMTQ5LjkxMSA5My44MjQgNi41MjEtMTQuOTYzYS41OTguNTk4IDAgMCAwLS40OTktLjgzNiA3NS4yNTUgNzUuMjU1IDAgMCAwLTMuMDg2LS4xOTNjLTEuODk0LS4wNjQtMi45NjctLjExLTQuODYzLjAzNy0xLjgzMy4xNDEtMi44NTQuMzMtNC42NTEuNjc2LS44MjMuMTU4LTEuOTEyLjQxNC0yLjY0My41OWEuNTk2LjU5NiAwIDAgMC0uMzY0Ljg5OGw4LjY0IDEzLjg2YS41MzUuNTM1IDAgMCAwIC45NDUtLjA3WiIvPjwvZz48Y2lyY2xlIGN4PSIxNDkuNSIgY3k9IjgyLjI1IiByPSIuOTkyIiBmaWxsPSIjZmZmIiB0cmFuc2Zvcm09InJvdGF0ZSgtMTcuMDk4IDE0OS41IDgyLjI1KSIvPjxjaXJjbGUgY3g9IjE0Ni41NzkiIGN5PSI4OC4yMjIiIHI9Ii45OTIiIGZpbGw9IiNmZmYiIHRyYW5zZm9ybT0icm90YXRlKC0xNy4wOTggMTQ2LjU3OSA4OC4yMjIpIi8+PGNpcmNsZSBjeD0iMTQ0LjY1IiBjeT0iODQuNTg4IiByPSIuOTkyIiBmaWxsPSIjZmZmIiB0cmFuc2Zvcm09InJvdGF0ZSgtMTcuMDk4IDE0NC42NSA4NC41ODgpIi8+PGNpcmNsZSBjeD0iMTUwLjA0OSIgY3k9IjkwLjIzMSIgcj0iLjk5MiIgZmlsbD0iI2ZmZiIgdHJhbnNmb3JtPSJyb3RhdGUoLTE3LjA5OCAxNTAuMDQ5IDkwLjIzMSkiLz48Y2lyY2xlIGN4PSIxNDQuMzA2IiBjeT0iNzkuNiIgcj0iLjk5MiIgZmlsbD0iI2ZmZiIgdHJhbnNmb3JtPSJyb3RhdGUoLTE3LjA5OCAxNDQuMzA2IDc5LjYpIi8+PGNpcmNsZSBjeD0iMTUyLjI4NyIgY3k9Ijc5LjA1MSIgcj0iLjk5MiIgZmlsbD0iI2ZmZiIgdHJhbnNmb3JtPSJyb3RhdGUoLTE3LjA5OCAxNTIuMjg3IDc5LjA1KSIvPjxjaXJjbGUgY3g9IjE1MS43NyIgY3k9Ijg2LjEwMyIgcj0iLjk5MiIgZmlsbD0iI2ZmZiIgdHJhbnNmb3JtPSJyb3RhdGUoLTE3LjA5OCAxNTEuNzcgODYuMTAzKSIvPjxnIGZpbHRlcj0idXJsKCNpKSI+PHBhdGggZmlsbD0iIzVDQjE3NiIgZD0ibTEwOS4xNzEgOTMuNCA4Ljg2LTEzLjcwN2EuNTk4LjU5OCAwIDAgMC0uMzU3LS45MDZjLS44MTEtLjItMi4wNy0uNTAzLTMuMDEzLS42OS0xLjg1OS0uMzctMi45MTEtLjU5LTQuODA2LS43NTMtMS44MzEtLjE1Ny0yLjg2OS0uMTM2LTQuNjk5LS4wODYtLjgzNy4wMjMtMS45NTMuMDk4LTIuNzAzLjE1NGEuNTk3LjU5NyAwIDAgMC0uNTA1LjgyN2w2LjI3OSAxNS4wNzdjLjE2Ni4zOTguNzEuNDQ3Ljk0NC4wODRaIi8+PC9nPjxtYXNrIGlkPSJqIiB3aWR0aD0iMTgiIGhlaWdodD0iMTciIHg9IjEwMSIgeT0iNzciIG1hc2tVbml0cz0idXNlclNwYWNlT25Vc2UiIHN0eWxlPSJtYXNrLXR5cGU6YWxwaGEiPjxwYXRoIGZpbGw9IiM1Q0IxNzYiIGQ9Im0xMDkuMTcgOTMuNCA4Ljg2LTEzLjcwN2EuNTk4LjU5OCAwIDAgMC0uMzU3LS45MDVjLS44MTEtLjIwMS0yLjA3LS41MDQtMy4wMTMtLjY5Mi0xLjg1OS0uMzctMi45MTEtLjU4OS00LjgwNi0uNzUxLTEuODMxLS4xNTgtMi44NjktLjEzNy00LjY5OS0uMDg3LS44MzcuMDIzLTEuOTUzLjA5OS0yLjcwMy4xNTRhLjU5Ny41OTcgMCAwIDAtLjUwNS44MjdsNi4yNzkgMTUuMDc3Yy4xNjYuMzk4LjcxLjQ0Ny45NDQuMDg1WiIvPjwvbWFzaz48ZyBzdHJva2U9IiNmZmYiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIuNjYxIiBtYXNrPSJ1cmwoI2opIj48cGF0aCBkPSJNMTA5LjIyNSA3Ny4zMzVjLS4yMDcgMS44NjcuNDE4IDYuNjMyIDQuNTczIDEwLjc1M00xMTMuOTcyIDc2LjljLS4yMDcgMS44NjcuNDE4IDYuNjMxIDQuNTczIDEwLjc1M00xMDQuOTkyIDc3LjM1N2MtLjEyMSAyLjM5NyAxLjAyMyA4LjYwMiA2LjU2OCAxNC4yNE0xMDIuNjkgODEuMzQzYy4xMjUgMi4zOTcgMS40MjkgNi40OTcgNy41MjIgMTEuNTM3Ii8+PC9nPjxkZWZzPjxmaWx0ZXIgaWQ9ImEiIHdpZHRoPSIyMS41NjUiIGhlaWdodD0iMjEuNjQ5IiB4PSIxMTguNzc1IiB5PSI3Ni4wMDkiIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz0ic1JHQiIgZmlsdGVyVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48ZmVGbG9vZCBmbG9vZC1vcGFjaXR5PSIwIiByZXN1bHQ9IkJhY2tncm91bmRJbWFnZUZpeCIvPjxmZUNvbG9yTWF0cml4IGluPSJTb3VyY2VBbHBoYSIgcmVzdWx0PSJoYXJkQWxwaGEiIHZhbHVlcz0iMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMTI3IDAiLz48ZmVPZmZzZXQgZHk9Ii42NjEiLz48ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPSIxLjMyMiIvPjxmZUNvbG9yTWF0cml4IHZhbHVlcz0iMCAwIDAgMCAwLjEyOTQxMiAwIDAgMCAwIDAuMTI5NDEyIDAgMCAwIDAgMC4yMDM5MjIgMCAwIDAgMC4xIDAiLz48ZmVCbGVuZCBpbjI9IkJhY2tncm91bmRJbWFnZUZpeCIgcmVzdWx0PSJlZmZlY3QxX2Ryb3BTaGFkb3dfMTJfMzkiLz48ZmVCbGVuZCBpbj0iU291cmNlR3JhcGhpYyIgaW4yPSJlZmZlY3QxX2Ryb3BTaGFkb3dfMTJfMzkiIHJlc3VsdD0ic2hhcGUiLz48L2ZpbHRlcj48ZmlsdGVyIGlkPSJiIiB3aWR0aD0iMjAuMjAxIiBoZWlnaHQ9IjIyLjc0MSIgeD0iNDMuNTI2IiB5PSI1Ni4xNjciIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz0ic1JHQiIgZmlsdGVyVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48ZmVGbG9vZCBmbG9vZC1vcGFjaXR5PSIwIiByZXN1bHQ9IkJhY2tncm91bmRJbWFnZUZpeCIvPjxmZUNvbG9yTWF0cml4IGluPSJTb3VyY2VBbHBoYSIgcmVzdWx0PSJoYXJkQWxwaGEiIHZhbHVlcz0iMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMTI3IDAiLz48ZmVPZmZzZXQgZHk9Ii42NjEiLz48ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPSIxLjMyMiIvPjxmZUNvbG9yTWF0cml4IHZhbHVlcz0iMCAwIDAgMCAwLjEyOTQxMiAwIDAgMCAwIDAuMTI5NDEyIDAgMCAwIDAgMC4yMDM5MjIgMCAwIDAgMC4xIDAiLz48ZmVCbGVuZCBpbjI9IkJhY2tncm91bmRJbWFnZUZpeCIgcmVzdWx0PSJlZmZlY3QxX2Ryb3BTaGFkb3dfMTJfMzkiLz48ZmVCbGVuZCBpbj0iU291cmNlR3JhcGhpYyIgaW4yPSJlZmZlY3QxX2Ryb3BTaGFkb3dfMTJfMzkiIHJlc3VsdD0ic2hhcGUiLz48L2ZpbHRlcj48ZmlsdGVyIGlkPSJjIiB3aWR0aD0iMjAuOTMyIiBoZWlnaHQ9IjIyLjYwMiIgeD0iMjYuNzYxIiB5PSI0NC44MTgiIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz0ic1JHQiIgZmlsdGVyVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48ZmVGbG9vZCBmbG9vZC1vcGFjaXR5PSIwIiByZXN1bHQ9IkJhY2tncm91bmRJbWFnZUZpeCIvPjxmZUNvbG9yTWF0cml4IGluPSJTb3VyY2VBbHBoYSIgcmVzdWx0PSJoYXJkQWxwaGEiIHZhbHVlcz0iMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMTI3IDAiLz48ZmVPZmZzZXQgZHk9Ii42NjEiLz48ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPSIxLjMyMiIvPjxmZUNvbG9yTWF0cml4IHZhbHVlcz0iMCAwIDAgMCAwLjEyOTQxMiAwIDAgMCAwIDAuMTI5NDEyIDAgMCAwIDAgMC4yMDM5MjIgMCAwIDAgMC4xIDAiLz48ZmVCbGVuZCBpbjI9IkJhY2tncm91bmRJbWFnZUZpeCIgcmVzdWx0PSJlZmZlY3QxX2Ryb3BTaGFkb3dfMTJfMzkiLz48ZmVCbGVuZCBpbj0iU291cmNlR3JhcGhpYyIgaW4yPSJlZmZlY3QxX2Ryb3BTaGFkb3dfMTJfMzkiIHJlc3VsdD0ic2hhcGUiLz48L2ZpbHRlcj48ZmlsdGVyIGlkPSJlIiB3aWR0aD0iMjEuNDgyIiBoZWlnaHQ9IjIxLjcyNCIgeD0iMTU2Ljk0NCIgeT0iNzQuOTA0IiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiIGZpbHRlclVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PGZlRmxvb2QgZmxvb2Qtb3BhY2l0eT0iMCIgcmVzdWx0PSJCYWNrZ3JvdW5kSW1hZ2VGaXgiLz48ZmVDb2xvck1hdHJpeCBpbj0iU291cmNlQWxwaGEiIHJlc3VsdD0iaGFyZEFscGhhIiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwIi8+PGZlT2Zmc2V0IGR5PSIuNjYxIi8+PGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0iMS4zMjIiLz48ZmVDb2xvck1hdHJpeCB2YWx1ZXM9IjAgMCAwIDAgMC4xMjk0MTIgMCAwIDAgMCAwLjEyOTQxMiAwIDAgMCAwIDAuMjAzOTIyIDAgMCAwIDAuMSAwIi8+PGZlQmxlbmQgaW4yPSJCYWNrZ3JvdW5kSW1hZ2VGaXgiIHJlc3VsdD0iZWZmZWN0MV9kcm9wU2hhZG93XzEyXzM5Ii8+PGZlQmxlbmQgaW49IlNvdXJjZUdyYXBoaWMiIGluMj0iZWZmZWN0MV9kcm9wU2hhZG93XzEyXzM5IiByZXN1bHQ9InNoYXBlIi8+PC9maWx0ZXI+PGZpbHRlciBpZD0iZiIgd2lkdGg9IjIxLjI1NiIgaGVpZ2h0PSIyMi4xMzkiIHg9Ijc5Ljg2OCIgeT0iNzIuNDA5IiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiIGZpbHRlclVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PGZlRmxvb2QgZmxvb2Qtb3BhY2l0eT0iMCIgcmVzdWx0PSJCYWNrZ3JvdW5kSW1hZ2VGaXgiLz48ZmVDb2xvck1hdHJpeCBpbj0iU291cmNlQWxwaGEiIHJlc3VsdD0iaGFyZEFscGhhIiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwIi8+PGZlT2Zmc2V0IGR5PSIuNjYxIi8+PGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0iMS4zMjIiLz48ZmVDb2xvck1hdHJpeCB2YWx1ZXM9IjAgMCAwIDAgMC4xMjk0MTIgMCAwIDAgMCAwLjEyOTQxMiAwIDAgMCAwIDAuMjAzOTIyIDAgMCAwIDAuMSAwIi8+PGZlQmxlbmQgaW4yPSJCYWNrZ3JvdW5kSW1hZ2VGaXgiIHJlc3VsdD0iZWZmZWN0MV9kcm9wU2hhZG93XzEyXzM5Ii8+PGZlQmxlbmQgaW49IlNvdXJjZUdyYXBoaWMiIGluMj0iZWZmZWN0MV9kcm9wU2hhZG93XzEyXzM5IiByZXN1bHQ9InNoYXBlIi8+PC9maWx0ZXI+PGZpbHRlciBpZD0iZyIgd2lkdGg9IjIwLjUyNiIgaGVpZ2h0PSIyMi42NjQiIHg9IjYwLjgzNSIgeT0iNjUuODkzIiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiIGZpbHRlclVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PGZlRmxvb2QgZmxvb2Qtb3BhY2l0eT0iMCIgcmVzdWx0PSJCYWNrZ3JvdW5kSW1hZ2VGaXgiLz48ZmVDb2xvck1hdHJpeCBpbj0iU291cmNlQWxwaGEiIHJlc3VsdD0iaGFyZEFscGhhIiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwIi8+PGZlT2Zmc2V0IGR5PSIuNjYxIi8+PGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0iMS4zMjIiLz48ZmVDb2xvck1hdHJpeCB2YWx1ZXM9IjAgMCAwIDAgMC4xMjk0MTIgMCAwIDAgMCAwLjEyOTQxMiAwIDAgMCAwIDAuMjAzOTIyIDAgMCAwIDAuMSAwIi8+PGZlQmxlbmQgaW4yPSJCYWNrZ3JvdW5kSW1hZ2VGaXgiIHJlc3VsdD0iZWZmZWN0MV9kcm9wU2hhZG93XzEyXzM5Ii8+PGZlQmxlbmQgaW49IlNvdXJjZUdyYXBoaWMiIGluMj0iZWZmZWN0MV9kcm9wU2hhZG93XzEyXzM5IiByZXN1bHQ9InNoYXBlIi8+PC9maWx0ZXI+PGZpbHRlciBpZD0iaCIgd2lkdGg9IjIxLjUzNyIgaGVpZ2h0PSIyMS42NjIiIHg9IjEzNy41OSIgeT0iNzUuNzg4IiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiIGZpbHRlclVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PGZlRmxvb2QgZmxvb2Qtb3BhY2l0eT0iMCIgcmVzdWx0PSJCYWNrZ3JvdW5kSW1hZ2VGaXgiLz48ZmVDb2xvck1hdHJpeCBpbj0iU291cmNlQWxwaGEiIHJlc3VsdD0iaGFyZEFscGhhIiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwIi8+PGZlT2Zmc2V0IGR5PSIuNjYxIi8+PGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0iMS4zMjIiLz48ZmVDb2xvck1hdHJpeCB2YWx1ZXM9IjAgMCAwIDAgMC4xMjk0MTIgMCAwIDAgMCAwLjEyOTQxMiAwIDAgMCAwIDAuMjAzOTIyIDAgMCAwIDAuMSAwIi8+PGZlQmxlbmQgaW4yPSJCYWNrZ3JvdW5kSW1hZ2VGaXgiIHJlc3VsdD0iZWZmZWN0MV9kcm9wU2hhZG93XzEyXzM5Ii8+PGZlQmxlbmQgaW49IlNvdXJjZUdyYXBoaWMiIGluMj0iZWZmZWN0MV9kcm9wU2hhZG93XzEyXzM5IiByZXN1bHQ9InNoYXBlIi8+PC9maWx0ZXI+PGZpbHRlciBpZD0iaSIgd2lkdGg9IjIxLjUxNSIgaGVpZ2h0PSIyMS43MTIiIHg9Ijk5LjI1NyIgeT0iNzUuMjM4IiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiIGZpbHRlclVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PGZlRmxvb2QgZmxvb2Qtb3BhY2l0eT0iMCIgcmVzdWx0PSJCYWNrZ3JvdW5kSW1hZ2VGaXgiLz48ZmVDb2xvck1hdHJpeCBpbj0iU291cmNlQWxwaGEiIHJlc3VsdD0iaGFyZEFscGhhIiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwIi8+PGZlT2Zmc2V0IGR5PSIuNjYxIi8+PGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0iMS4zMjIiLz48ZmVDb2xvck1hdHJpeCB2YWx1ZXM9IjAgMCAwIDAgMC4xMjk0MTIgMCAwIDAgMCAwLjEyOTQxMiAwIDAgMCAwIDAuMjAzOTIyIDAgMCAwIDAuMSAwIi8+PGZlQmxlbmQgaW4yPSJCYWNrZ3JvdW5kSW1hZ2VGaXgiIHJlc3VsdD0iZWZmZWN0MV9kcm9wU2hhZG93XzEyXzM5Ii8+PGZlQmxlbmQgaW49IlNvdXJjZUdyYXBoaWMiIGluMj0iZWZmZWN0MV9kcm9wU2hhZG93XzEyXzM5IiByZXN1bHQ9InNoYXBlIi8+PC9maWx0ZXI+PC9kZWZzPjwvc3ZnPg==\"","import * as React from 'react';\n\nimport { Box, Button, Flex, Grid, GridItem, Layout, Main, Typography } from '@strapi/design-system';\nimport { Link, LinkButton } from '@strapi/design-system/v2';\nimport {\n ContentBox,\n LoadingIndicatorPage,\n useAppInfo,\n useGuidedTour,\n useTracking,\n} from '@strapi/helper-plugin';\nimport {\n ArrowRight,\n CodeSquare,\n Discord,\n Discourse,\n ExternalLink,\n FeatherSquare,\n Github,\n InformationSquare,\n PlaySquare,\n Reddit,\n Strapi,\n Twitter,\n} from '@strapi/icons';\nimport { Helmet } from 'react-helmet';\nimport { useIntl } from 'react-intl';\nimport { useHistory } from 'react-router-dom';\nimport styled from 'styled-components';\n\nimport { ContentType } from '../../../shared/schema';\nimport { GuidedTourHomepage } from '../components/GuidedTour/Homepage';\nimport { useContentTypes } from '../hooks/useContentTypes';\nimport { useEnterprise } from '../hooks/useEnterprise';\n\nimport cornerOrnamentPath from './assets/corner-ornament.svg';\nimport cloudIconBackgroundImage from './assets/strapi-cloud-background.png';\nimport cloudFlagsImage from './assets/strapi-cloud-flags.svg';\n\n/* -------------------------------------------------------------------------------------------------\n * HomePageCE\n * -----------------------------------------------------------------------------------------------*/\n\nconst HomePageCE = () => {\n const { formatMessage } = useIntl();\n // Temporary until we develop the menu API\n const { collectionTypes, singleTypes, isLoading: isLoadingForModels } = useContentTypes();\n const { guidedTourState, isGuidedTourVisible, isSkipped } = useGuidedTour();\n const showGuidedTour =\n !Object.values(guidedTourState).every((section) =>\n Object.values(section).every((step) => step)\n ) &&\n isGuidedTourVisible &&\n !isSkipped;\n const { push } = useHistory();\n const handleClick: React.MouseEventHandler<HTMLButtonElement> = (e) => {\n e.preventDefault();\n\n push('/plugins/content-type-builder/content-types/create-content-type');\n };\n\n const hasAlreadyCreatedContentTypes = React.useMemo(() => {\n const filterContentTypes = (contentTypes: ContentType[]) =>\n contentTypes.filter((c) => c.isDisplayed);\n\n /**\n * TODO: this can be done with a `some` call.\n */\n return (\n filterContentTypes(collectionTypes).length > 1 || filterContentTypes(singleTypes).length > 0\n );\n }, [collectionTypes, singleTypes]);\n\n if (isLoadingForModels) {\n return <LoadingIndicatorPage />;\n }\n\n return (\n <Layout>\n <Helmet\n title={formatMessage({\n id: 'HomePage.helmet.title',\n defaultMessage: 'Homepage',\n })}\n />\n <Main>\n <LogoContainer>\n <img alt=\"\" aria-hidden src={cornerOrnamentPath} />\n </LogoContainer>\n <Box padding={10}>\n <Grid>\n <GridItem col={8} s={12}>\n <div>\n <Box paddingLeft={6} paddingBottom={10}>\n <Flex direction=\"column\" alignItems=\"flex-start\" gap={5}>\n <Typography as=\"h1\" variant=\"alpha\">\n {hasAlreadyCreatedContentTypes\n ? formatMessage({\n id: 'app.components.HomePage.welcome.again',\n defaultMessage: 'Welcome 👋',\n })\n : formatMessage({\n id: 'app.components.HomePage.welcome',\n defaultMessage: 'Welcome on board!',\n })}\n </Typography>\n <WordWrap textColor=\"neutral600\" variant=\"epsilon\">\n {hasAlreadyCreatedContentTypes\n ? formatMessage({\n id: 'app.components.HomePage.welcomeBlock.content.again',\n defaultMessage:\n '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.',\n })\n : formatMessage({\n id: 'app.components.HomePage.welcomeBlock.content',\n defaultMessage:\n '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!',\n })}\n </WordWrap>\n {hasAlreadyCreatedContentTypes ? (\n <Link isExternal href=\"https://strapi.io/blog\">\n {formatMessage({\n id: 'app.components.HomePage.button.blog',\n defaultMessage: 'See more on the blog',\n })}\n </Link>\n ) : (\n <Button size=\"L\" onClick={handleClick} endIcon={<ArrowRight />}>\n {formatMessage({\n id: 'app.components.HomePage.create',\n defaultMessage: 'Create your first Content type',\n })}\n </Button>\n )}\n </Flex>\n </Box>\n </div>\n </GridItem>\n </Grid>\n <Grid gap={6}>\n <GridItem col={8} s={12}>\n {showGuidedTour ? <GuidedTourHomepage /> : <ContentBlocks />}\n </GridItem>\n <GridItem col={4} s={12}>\n <SocialLinks />\n </GridItem>\n </Grid>\n </Box>\n </Main>\n </Layout>\n );\n};\n\nconst LogoContainer = styled(Box)`\n position: absolute;\n top: 0;\n right: 0;\n\n img {\n width: ${150 / 16}rem;\n }\n`;\n\nconst WordWrap = styled(Typography)`\n word-break: break-word;\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * ContentBlocks\n * -----------------------------------------------------------------------------------------------*/\n\nconst ContentBlocks = () => {\n const { formatMessage } = useIntl();\n const { trackUsage } = useTracking();\n\n return (\n <Flex direction=\"column\" alignItems=\"stretch\" gap={5}>\n <BlockLink\n href=\"https://cloud.strapi.io\"\n target=\"_blank\"\n rel=\"noopener noreferrer nofollow\"\n onClick={() => {\n trackUsage('didClickOnTryStrapiCloudSection');\n }}\n >\n <Flex\n shadow=\"tableShadow\"\n hasRadius\n padding={6}\n background=\"neutral0\"\n position=\"relative\"\n gap={6}\n >\n <CloudCustomWrapper hasRadius padding={3}>\n <CloudIconWrapper\n width=\"2rem\"\n height=\"2rem\"\n justifyContent=\"center\"\n hasRadius\n alignItems=\"center\"\n >\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"15\" fill=\"none\">\n <path\n fill=\"#fff\"\n fillRule=\"evenodd\"\n d=\"M4.39453 13.8298C1.93859 13.6455 0 11.468 0 8.80884 0 6.0289 2.11876 3.7753 4.73238 3.7753c.46775 0 .91964.07218 1.34638.20664C7.21234 1.62909 9.66469 0 12.5073 0c2.5102 0 4.7161 1.27036 5.9782 3.18766a4.54297 4.54297 0 0 1 .6132-.04144C21.8056 3.14622 24 5.54066 24 8.49436c0 2.89194-2.1036 5.24784-4.7323 5.34504v.0031l-1.8948.278a38.18054 38.18054 0 0 1-11.08354 0l-1.89483-.278v-.0127Z\"\n clipRule=\"evenodd\"\n />\n </svg>\n </CloudIconWrapper>\n </CloudCustomWrapper>\n <Flex gap={1} direction=\"column\" alignItems=\"start\">\n <Typography fontWeight=\"semiBold\" variant=\"pi\">\n {formatMessage({\n id: 'app.components.BlockLink.cloud',\n defaultMessage: 'Strapi Cloud',\n })}\n </Typography>\n <Typography textColor=\"neutral600\">\n {formatMessage({\n id: 'app.components.BlockLink.cloud.content',\n defaultMessage:\n 'A fully composable, and collaborative platform to boost your team velocity.',\n })}\n </Typography>\n <Box src={cloudFlagsImage} position=\"absolute\" top={0} right={0} as=\"img\" />\n </Flex>\n </Flex>\n </BlockLink>\n <BlockLink\n href=\"https://strapi.io/resource-center\"\n target=\"_blank\"\n rel=\"noopener noreferrer nofollow\"\n onClick={() => trackUsage('didClickonReadTheDocumentationSection')}\n >\n <ContentBox\n title={formatMessage({\n id: 'global.documentation',\n defaultMessage: 'Documentation',\n })}\n subtitle={formatMessage({\n id: 'app.components.BlockLink.documentation.content',\n defaultMessage: 'Discover the essential concepts, guides and instructions.',\n })}\n icon={<InformationSquare />}\n iconBackground=\"primary100\"\n />\n </BlockLink>\n <BlockLink\n href=\"https://strapi.io/starters\"\n target=\"_blank\"\n rel=\"noopener noreferrer nofollow\"\n onClick={() => trackUsage('didClickonCodeExampleSection')}\n >\n <ContentBox\n title={formatMessage({\n id: 'app.components.BlockLink.code',\n defaultMessage: 'Code example',\n })}\n subtitle={formatMessage({\n id: 'app.components.BlockLink.code.content',\n defaultMessage: 'Learn by using ready-made starters for your projects.',\n })}\n icon={<CodeSquare />}\n iconBackground=\"warning100\"\n />\n </BlockLink>\n <BlockLink\n href=\"https://strapi.io/blog/categories/tutorials\"\n target=\"_blank\"\n rel=\"noopener noreferrer nofollow\"\n onClick={() => trackUsage('didClickonTutorialSection')}\n >\n <ContentBox\n title={formatMessage({\n id: 'app.components.BlockLink.tutorial',\n defaultMessage: 'Tutorials',\n })}\n subtitle={formatMessage({\n id: 'app.components.BlockLink.tutorial.content',\n defaultMessage: 'Follow step-by-step instructions to use and customize Strapi.',\n })}\n icon={<PlaySquare />}\n iconBackground=\"secondary100\"\n />\n </BlockLink>\n <BlockLink\n href=\"https://strapi.io/blog\"\n target=\"_blank\"\n rel=\"noopener noreferrer nofollow\"\n onClick={() => trackUsage('didClickonBlogSection')}\n >\n <ContentBox\n title={formatMessage({\n id: 'app.components.BlockLink.blog',\n defaultMessage: 'Blog',\n })}\n subtitle={formatMessage({\n id: 'app.components.BlockLink.blog.content',\n defaultMessage: 'Read the latest news about Strapi and the ecosystem.',\n })}\n icon={<FeatherSquare />}\n iconBackground=\"alternative100\"\n />\n </BlockLink>\n </Flex>\n );\n};\n\nconst BlockLink = styled.a`\n text-decoration: none;\n`;\n\nconst CloudCustomWrapper = styled(Box)`\n background-image: url(${cloudIconBackgroundImage});\n`;\n\nconst CloudIconWrapper = styled(Flex)`\n background: rgba(255, 255, 255, 0.3);\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * SocialLinks\n * -----------------------------------------------------------------------------------------------*/\n\nconst SocialLinks = () => {\n const { formatMessage } = useIntl();\n const { communityEdition } = useAppInfo();\n\n const socialLinksExtended = [\n ...SOCIAL_LINKS,\n {\n icon: <StyledStrapi />,\n link: communityEdition\n ? 'https://discord.strapi.io'\n : 'https://support.strapi.io/support/home',\n name: {\n id: 'Settings.application.get-help',\n defaultMessage: 'Get help',\n },\n },\n ];\n\n return (\n <Flex\n as=\"aside\"\n direction=\"column\"\n aria-labelledby=\"join-the-community\"\n background=\"neutral0\"\n hasRadius\n paddingRight={5}\n paddingLeft={5}\n paddingTop={6}\n paddingBottom={6}\n shadow=\"tableShadow\"\n gap={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={5}>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={3}>\n <Typography variant=\"delta\" as=\"h2\" id=\"join-the-community\">\n {formatMessage({\n id: 'app.components.HomePage.community',\n defaultMessage: 'Join the community',\n })}\n </Typography>\n <Typography textColor=\"neutral600\">\n {formatMessage({\n id: 'app.components.HomePage.community.content',\n defaultMessage:\n 'Discuss with team members, contributors and developers on different channels',\n })}\n </Typography>\n </Flex>\n <Link href=\"https://feedback.strapi.io/\" isExternal endIcon={<ExternalLink />}>\n {formatMessage({\n id: 'app.components.HomePage.roadmap',\n defaultMessage: 'See our road map',\n })}\n </Link>\n </Flex>\n <GridGap>\n {socialLinksExtended.map(({ icon, link, name }) => {\n return (\n <GridItem col={6} s={12} key={name.id}>\n <LinkCustom size=\"L\" startIcon={icon} variant=\"tertiary\" href={link} isExternal>\n {formatMessage(name)}\n </LinkCustom>\n </GridItem>\n );\n })}\n </GridGap>\n </Flex>\n );\n};\n\nconst StyledDiscord = styled(Discord)`\n path {\n fill: #7289da !important;\n }\n`;\n\nconst StyledReddit = styled(Reddit)`\n > path:first-child {\n fill: #ff4500;\n }\n`;\nconst StyledStrapi = styled(Strapi)`\n > path:first-child {\n fill: #4945ff;\n }\n > path:nth-child(2) {\n fill: #fff;\n }\n > path:nth-child(4) {\n fill: #9593ff;\n }\n`;\n\nconst StyledTwitter = styled(Twitter)`\n path {\n fill: #1da1f2 !important;\n }\n`;\n\nconst StyledDiscourse = styled(Discourse)`\n > path:first-child {\n fill: #231f20;\n }\n > path:nth-child(2) {\n fill: #fff9ae;\n }\n > path:nth-child(3) {\n fill: #00aeef;\n }\n > path:nth-child(4) {\n fill: #00a94f;\n }\n > path:nth-child(5) {\n fill: #f15d22;\n }\n > path:nth-child(6) {\n fill: #e31b23;\n }\n`;\n\nconst LinkCustom = styled(LinkButton)`\n display: flex;\n align-items: center;\n border: none;\n\n svg {\n width: ${({ theme }) => theme.spaces[6]};\n height: ${({ theme }) => theme.spaces[6]};\n }\n\n span {\n word-break: keep-all;\n }\n`;\n\nconst GridGap = styled(Grid)`\n row-gap: ${({ theme }) => theme.spaces[2]};\n column-gap: ${({ theme }) => theme.spaces[4]};\n`;\n\nconst SOCIAL_LINKS = [\n {\n name: { id: 'app.components.HomePage.community.links.github', defaultMessage: 'Github' },\n link: 'https://github.com/strapi/strapi/',\n icon: <Github fill=\"#7289DA\" />,\n alt: 'github',\n },\n {\n name: { id: 'app.components.HomePage.community.links.discord', defaultMessage: 'Discord' },\n link: 'https://discord.strapi.io/',\n icon: <StyledDiscord />,\n alt: 'discord',\n },\n {\n name: { id: 'app.components.HomePage.community.links.reddit', defaultMessage: 'Reddit' },\n link: 'https://www.reddit.com/r/Strapi/',\n icon: <StyledReddit />,\n alt: 'reddit',\n },\n {\n name: { id: 'app.components.HomePage.community.links.twitter', defaultMessage: 'Twitter' },\n link: 'https://twitter.com/strapijs',\n icon: <StyledTwitter />,\n alt: 'twitter',\n },\n {\n name: { id: 'app.components.HomePage.community.links.forum', defaultMessage: 'Forum' },\n link: 'https://forum.strapi.io',\n icon: <StyledDiscourse />,\n alt: 'forum',\n },\n {\n name: { id: 'app.components.HomePage.community.links.blog', defaultMessage: 'Blog' },\n link: 'https://strapi.io/blog?utm_source=referral&utm_medium=admin&utm_campaign=career%20page',\n icon: <StyledStrapi />,\n alt: 'blog',\n },\n {\n name: {\n id: 'app.components.HomePage.community.links.career',\n defaultMessage: 'We are hiring!',\n },\n link: 'https://strapi.io/careers?utm_source=referral&utm_medium=admin&utm_campaign=blog',\n icon: <StyledStrapi />,\n alt: 'career',\n },\n];\n\n/* -------------------------------------------------------------------------------------------------\n * HomePage\n * -----------------------------------------------------------------------------------------------*/\n\nconst HomePage = () => {\n type CompFn = () => React.JSX.Element;\n const Page = useEnterprise<CompFn, CompFn, CompFn>(\n HomePageCE,\n // eslint-disable-next-line import/no-cycle\n async () => (await import('../../../ee/admin/src/pages/HomePage')).HomePageEE\n );\n\n // block rendering until the EE component is fully loaded\n if (!Page) {\n return null;\n }\n\n return <Page />;\n};\n\nexport { HomePage, HomePageCE };\n"],"names":["useGuidedTour","useIntl","useTracking","LAYOUT_DATA","jsx","LinkButton","NavLink","ArrowRight","jsxs","Box","Flex","Typography","index","pxToRem","Number","VerticalDivider","STATES","Button","useContentTypes","useHistory","React","LoadingIndicatorPage","Layout","Helmet","Main","Grid","GridItem","Link","styled","ContentBox","InformationSquare","CodeSquare","PlaySquare","FeatherSquare","useAppInfo","ExternalLink","Discord","Reddit","Strapi","Twitter","Discourse","Github","useEnterprise"],"mappings":"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"}
1
+ {"version":3,"file":"HomePage-8022e4f9.js","sources":["../../admin/src/components/GuidedTour/Homepage.tsx","../../admin/src/pages/assets/corner-ornament.svg","../../admin/src/pages/assets/strapi-cloud-background.png","../../admin/src/pages/assets/strapi-cloud-flags.svg","../../admin/src/pages/HomePage.tsx"],"sourcesContent":["import { Box, Button, Flex, Typography } from '@strapi/design-system';\nimport { LinkButton } from '@strapi/design-system/v2';\nimport { GuidedTourContextValue, pxToRem, useGuidedTour, useTracking } from '@strapi/helper-plugin';\nimport { ArrowRight } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { NavLink } from 'react-router-dom';\n\nimport { LAYOUT_DATA, States, STATES } from './constants';\nimport { Number, VerticalDivider } from './Ornaments';\n\nconst GuidedTourHomepage = () => {\n const { guidedTourState, setSkipped } = useGuidedTour();\n const { formatMessage } = useIntl();\n const { trackUsage } = useTracking();\n\n const sections = Object.entries(LAYOUT_DATA).map(([key, val]) => ({\n key: key,\n title: val.home.title,\n content: (\n <LinkButton\n onClick={() => trackUsage(val.home.trackingEvent)}\n as={NavLink}\n // @ts-expect-error - types are not inferred correctly through the as prop.\n to={val.home.cta.target}\n endIcon={<ArrowRight />}\n >\n {formatMessage(val.home.cta.title)}\n </LinkButton>\n ),\n isDone: Object.entries(\n guidedTourState[key as keyof GuidedTourContextValue['guidedTourState']]\n ).every(([, value]) => value),\n }));\n\n const activeSectionIndex = sections.findIndex((section) => !section.isDone);\n\n const handleSkip = () => {\n setSkipped(true);\n trackUsage('didSkipGuidedtour');\n };\n\n return (\n <Box\n hasRadius\n shadow=\"tableShadow\"\n paddingTop={7}\n paddingRight={4}\n paddingLeft={7}\n paddingBottom={4}\n background=\"neutral0\"\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={6}>\n <Typography variant=\"beta\" as=\"h2\">\n {formatMessage({\n id: 'app.components.GuidedTour.title',\n defaultMessage: '3 steps to get started',\n })}\n </Typography>\n <Box>\n {sections.map((section, index) => {\n const state = getState(activeSectionIndex, index);\n return (\n <Box key={section.key}>\n <Flex>\n <Box minWidth={pxToRem(30)} marginRight={5}>\n <Number state={state}>{index + 1}</Number>\n </Box>\n <Typography variant=\"delta\" as=\"h3\">\n {formatMessage(section.title)}\n </Typography>\n </Flex>\n <Flex alignItems=\"flex-start\">\n <Flex\n justifyContent=\"center\"\n minWidth={pxToRem(30)}\n marginBottom={3}\n marginTop={3}\n marginRight={5}\n >\n {index === sections.length - 1 ? null : <VerticalDivider state={state} />}\n </Flex>\n <Box marginTop={2}>{state === STATES.IS_ACTIVE ? section.content : null}</Box>\n </Flex>\n </Box>\n );\n })}\n </Box>\n </Flex>\n <Flex justifyContent=\"flex-end\">\n <Button variant=\"tertiary\" onClick={handleSkip}>\n {formatMessage({ id: 'app.components.GuidedTour.skip', defaultMessage: 'Skip the tour' })}\n </Button>\n </Flex>\n </Box>\n );\n};\n\nconst getState = (activeSectionIndex: number, index: number): States => {\n if (activeSectionIndex === -1) {\n return STATES.IS_DONE;\n }\n if (index < activeSectionIndex) {\n return STATES.IS_DONE;\n }\n if (index > activeSectionIndex) {\n return STATES.IS_NOT_DONE;\n }\n return STATES.IS_ACTIVE;\n};\n\nexport { GuidedTourHomepage };\n","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQ4IiBoZWlnaHQ9IjE0OCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIG9wYWNpdHk9Ii44IiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPHBhdGggb3BhY2l0eT0iLjE1IiBkPSJNMTEwLjgxIDM3SDczLjk3Vjc0LjFoMzYuODRWMzdaIiBmaWxsPSJ1cmwoI2EpIi8+CiAgICAgICAgPHBhdGggb3BhY2l0eT0iLjA3IiBkPSJNMzYuODQgMEgwdjM3LjA4aDM2Ljg0VjBaIiBmaWxsPSJ1cmwoI2IpIi8+CiAgICAgICAgPHBhdGggb3BhY2l0eT0iLjA3IiBkPSJNNzMuOTIgNzMuOTVIMzcuMDh2MzcuMDhoMzYuODRWNzMuOTVaIiBmaWxsPSJ1cmwoI2MpIi8+CiAgICAgICAgPHBhdGggb3BhY2l0eT0iLjA3IiBkPSJNMTQ3Ljk5IDExMC45MmgtMzcuM1YxNDhIMTQ4di0zNy4wOFoiIGZpbGw9InVybCgjZCkiLz4KICAgICAgICA8cGF0aCBvcGFjaXR5PSIuMTUiIGQ9Ik03My44MyAzN0gzNi44NEw3My44MyAwdjM3WiIgZmlsbD0idXJsKCNlKSIvPgogICAgICAgIDxwYXRoIG9wYWNpdHk9Ii4xNSIgZD0iTTExMC42IDExMS4wMnYtMzdoMzYuOThsLTM2Ljk5IDM3WiIgZmlsbD0idXJsKCNmKSIvPgogICAgICAgIDxwYXRoIG9wYWNpdHk9Ii40IiBkPSJNNzMuODMgMHYzN2gzNi45OHYzNy4wMWgzN1YzYTMgMyAwIDAgMC0zLTNINzMuODJaIiBmaWxsPSJ1cmwoI2cpIi8+CiAgICA8L2c+CiAgICAKICAgIDxkZWZzPgogICAgICAgIDxsaW5lYXJHcmFkaWVudCBpZD0iYSIgeDE9IjkxLjMxIiB5MT0iODMuMzEiIHgyPSIxMTguMjQiIHkyPSI1Ni41OSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjN0E5MkZGIi8+CiAgICAgICAgICAgIDxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzMyNTNFQSIvPgogICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgCiAgICAgICAgPGxpbmVhckdyYWRpZW50IGlkPSJiIiB4MT0iNDAuOTkiIHkxPSIxMy44OCIgeDI9Ii4wMSIgeTI9IjExLjY0IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiNBOEI4RkYiLz4KICAgICAgICAgICAgPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMzI1M0VBIi8+CiAgICAgICAgPC9saW5lYXJHcmFkaWVudD4KICAgICAgICAKICAgICAgICA8bGluZWFyR3JhZGllbnQgaWQ9ImMiIHgxPSI1NC40MSIgeTE9IjEyMC4yNSIgeDI9IjgxLjM1IiB5Mj0iOTMuNTIiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iI0E4QjhGRiIvPgogICAgICAgICAgICA8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMzMjUzRUEiLz4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgICAgIAogICAgICAgIDxsaW5lYXJHcmFkaWVudCBpZD0iZCIgeDE9IjEyOC4yNCIgeTE9IjE1Ny4yMiIgeDI9IjE1NS4xNyIgeTI9IjEzMC4xNyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjQThCOEZGIi8+CiAgICAgICAgICAgIDxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzMyNTNFQSIvPgogICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgCiAgICAgICAgPGxpbmVhckdyYWRpZW50IGlkPSJlIiB4MT0iNTQuMjQiIHkxPSI0Ni4yMSIgeDI9IjgxLjEyIiB5Mj0iMTkuMzgiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzdBOTJGRiIvPgogICAgICAgICAgICA8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMzMjUzRUEiLz4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgICAgIAogICAgICAgIDxsaW5lYXJHcmFkaWVudCBpZD0iZiIgeDE9IjEyNi4yOCIgeTE9Ijc0LjA1IiB4Mj0iMTI0Ljk0IiB5Mj0iMTExLjA3IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiM3QTkyRkYiLz4KICAgICAgICAgICAgPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMzI1M0VBIi8+CiAgICAgICAgPC9saW5lYXJHcmFkaWVudD4KICAgICAgICAKICAgICAgICA8bGluZWFyR3JhZGllbnQgaWQ9ImciIHgxPSI3My4zNyIgeTE9IjM2Ljg3IiB4Mj0iMTMyLjg3IiB5Mj0iNjYuNzQiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzdBOTJGRiIvPgogICAgICAgICAgICA8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMzODU4RUEiLz4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgPC9kZWZzPgo8L3N2Zz4K\"","export default \"data:image/png;base64,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\"","export default \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNjAiIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjI5LjQxIDQ0IDE0OS4wOSA1MC4zNSI+PHBhdGggc3Ryb2tlPSIjRUFFQUVGIiBkPSJNMzAuNSA0NC41YzM3IDI3IDQ3LjUgMzggMTQ3LjQ5OSAzMiIvPjxnIGZpbHRlcj0idXJsKCNhKSI+PHBhdGggZmlsbD0iI0YyOUQ0MSIgZD0ibTEyOS40NjcgOTQuMDg1IDguMTQ4LTE0LjE0MmEuNTk4LjU5OCAwIDAgMC0uNDAzLS44ODcgNzUuMDk5IDc1LjA5OSAwIDAgMC0zLjA0NS0uNTM2Yy0xLjg3NS0uMjc0LTIuOTM2LS40NC00LjgzNy0uNTA1LTEuODM4LS4wNjQtMi44NzMuMDEtNC42OTguMTUzYTY0LjA1IDY0LjA1IDAgMCAwLTIuNjkyLjI5My41OTcuNTk3IDAgMCAwLS40NjIuODUxbDcuMDQyIDE0LjczN2MuMTg2LjM4OC43MzIuNDEuOTQ3LjAzNloiLz48L2c+PGcgZmlsdGVyPSJ1cmwoI2IpIj48cGF0aCBmaWxsPSIjRjI5RDQxIiBkPSJtNDYuOTkgNzUuNTIgMTMuODEzLTguNjk3YS41OTcuNTk3IDAgMCAwIC4wNTgtLjk3MSA3NS4xOTEgNzUuMTkxIDAgMCAwLTIuNDQyLTEuODk3Yy0xLjUzLTEuMTE5LTIuMzktMS43NjEtNC4wNC0yLjcwNy0xLjU5NS0uOTE1LTIuNTQ1LTEuMzM0LTQuMjI2LTIuMDZhNjQuMDkgNjQuMDkgMCAwIDAtMi41MTYtLjk5OS41OTcuNTk3IDAgMCAwLS44MDYuNTM3bC0uNjYgMTYuMzE5YS41MzUuNTM1IDAgMCAwIC44Mi40NzRaIi8+PC9nPjxnIGZpbHRlcj0idXJsKCNjKSI+PHBhdGggZmlsbD0iIzVDQjE3NiIgZD0ibTI5LjQxIDYzLjUxIDIuMTAyLTE2LjE4NmEuNTk3LjU5NyAwIDAgMSAuODU4LS40NmMuNzQ4LjM3MSAxLjkwNS45NTQgMi43NDUgMS40MiAxLjY1Ny45MiAyLjYwMiAxLjQzMyA0LjE1MiAyLjUzNCAxLjUgMS4wNjQgMi4yNzggMS43NSAzLjY0MiAyLjk3MmE2NC4wMjYgNjQuMDI2IDAgMCAxIDEuOTYyIDEuODY1Yy4yOTEuMjg2LjIxNC43NzEtLjE0OS45NTdsLTE0LjUzOCA3LjQ0M2EuNTM1LjUzNSAwIDAgMS0uNzc0LS41NDVaIi8+PC9nPjxtYXNrIGlkPSJkIiB3aWR0aD0iMTciIGhlaWdodD0iMTkiIHg9IjI5IiB5PSI0NiIgbWFza1VuaXRzPSJ1c2VyU3BhY2VPblVzZSIgc3R5bGU9Im1hc2stdHlwZTphbHBoYSI+PHBhdGggZmlsbD0iIzVDQjE3NiIgZD0ibTI5LjQxMiA2My41MSAyLjEwMS0xNi4xODZhLjU5Ny41OTcgMCAwIDEgLjg1OC0uNDZjLjc0OS4zNzEgMS45MDUuOTU0IDIuNzQ2IDEuNDIgMS42NTcuOTIgMi42MDEgMS40MzMgNC4xNTIgMi41MzQgMS41IDEuMDY0IDIuMjc4IDEuNzUgMy42NDIgMi45NzJhNjQuMTQ4IDY0LjE0OCAwIDAgMSAxLjk2MiAxLjg2NWMuMjkuMjg2LjIxNC43NzEtLjE1Ljk1N2wtMTQuNTM3IDcuNDQzYS41MzUuNTM1IDAgMCAxLS43NzQtLjU0NVoiLz48L21hc2s+PGcgc3Ryb2tlPSIjZmZmIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS13aWR0aD0iLjY2MSIgbWFzaz0idXJsKCNkKSI+PHBhdGggZD0iTTM5Ljc1NSA1MS4yMThjLTEuMDUgMS41NTgtNC42MDYgNC43ODgtMTAuNDQgNS4yNDdNMzYuNDE1IDQ3LjgxNmMtMS4wNSAxLjU1OC00LjYwNiA0Ljc4OS0xMC40NCA1LjI0N000Mi45NyA1My45N2MtMS40NTcgMS45MDgtNi4zNDEgNS45MDItMTQuMjE2IDYuNjE5TTQyLjE1IDU4LjQ5OWMtMS42NDUgMS43NDgtNS4yOSA0LjAzMy0xMy4xOTcgMy45MzkiLz48L2c+PGcgZmlsdGVyPSJ1cmwoI2UpIj48cGF0aCBmaWxsPSIjN0I3OUZGIiBkPSJtMTY5LjgxMyA5Mi45ODMgNS45MjctMTUuMjA4YS41OTguNTk4IDAgMCAwLS41MzEtLjgxNSA3NS4yMTMgNzUuMjEzIDAgMCAwLTMuMDkxLS4wNzJjLTEuODk1LjAxLTIuOTY5LjAwNy00Ljg1OS4yMjgtMS44MjYuMjE0LTIuODM4LjQ0Mi00LjYyMS44NTktLjgxNS4xOS0xLjg5My40ODgtMi42MTcuNjk0YS41OTYuNTk2IDAgMCAwLS4zMjguOTFsOS4xNzggMTMuNTFhLjUzNi41MzYgMCAwIDAgLjk0Mi0uMTA2WiIvPjwvZz48ZyBmaWx0ZXI9InVybCgjZikiPjxwYXRoIGZpbGw9IiM3Qjc5RkYiIGQ9Im04Ny4wMDEgOTAuODUzLTQuNDY2LTE1LjY5OWEuNTk3LjU5NyAwIDAgMSAuNjA2LS43NjFjLjgzNS4wNDUgMi4xMjcuMTIzIDMuMDg0LjIyIDEuODg2LjE5IDIuOTU2LjI4NyA0LjgxNi42ODUgMS43OTcuMzg1IDIuNzg0LjcwOSA0LjUxOSAxLjI5MS43OTQuMjY3IDEuODM5LjY2NSAyLjU0LjkzOC4zOC4xNDguNTAxLjYyNC4yNC45MzhMODcuOTI5IDkxLjA0OGEuNTM1LjUzNSAwIDAgMS0uOTI3LS4xOTVaIi8+PC9nPjxnIGZpbHRlcj0idXJsKCNnKSI+PHBhdGggZmlsbD0iI0VFNUU1MiIgZD0ibTY2LjE1MyA4NS4xMjIgMTIuMzU1LTEwLjY2NWEuNTk3LjU5NyAwIDAgMC0uMDg3LS45NyA3NS4zNTMgNzUuMzUzIDAgMCAwLTIuNjk4LTEuNTFjLTEuNjgtLjg3Ny0yLjYyNy0xLjM4My00LjQtMi4wNzItMS43MTQtLjY2Ni0yLjcxNi0uOTM4LTQuNDg2LTEuNDA0YTY0LjA4MyA2NC4wODMgMCAwIDAtMi42MzgtLjYxMS41OTcuNTk3IDAgMCAwLS43MTYuNjUxbDEuNzg4IDE2LjIzNGEuNTM1LjUzNSAwIDAgMCAuODgyLjM0N1oiLz48L2c+PGNpcmNsZSBjeD0iNzAuNzkzIiBjeT0iNzQuNTExIiByPSIuOTkyIiBmaWxsPSIjZmZmIiB0cmFuc2Zvcm09InJvdGF0ZSg4LjU1MyA3MC43OTMgNzQuNTEpIi8+PGNpcmNsZSBjeD0iNjUuNTc0IiBjeT0iNzguNjMiIHI9Ii45OTIiIGZpbGw9IiNmZmYiIHRyYW5zZm9ybT0icm90YXRlKDguNTUzIDY1LjU3NCA3OC42MykiLz48Y2lyY2xlIGN4PSI2NS40MDgiIGN5PSI3NC41MTkiIHI9Ii45OTIiIGZpbGw9IiNmZmYiIHRyYW5zZm9ybT0icm90YXRlKDguNTUzIDY1LjQwOCA3NC41MTkpIi8+PGNpcmNsZSBjeD0iNjcuODM0IiBjeT0iODEuOTQzIiByPSIuOTkyIiBmaWxsPSIjZmZmIiB0cmFuc2Zvcm09InJvdGF0ZSg4LjU1MyA2Ny44MzQgODEuOTQzKSIvPjxjaXJjbGUgY3g9IjY3LjI1OSIgY3k9IjY5Ljg3NSIgcj0iLjk5MiIgZmlsbD0iI2ZmZiIgdHJhbnNmb3JtPSJyb3RhdGUoOC41NTMgNjcuMjU5IDY5Ljg3NSkiLz48Y2lyY2xlIGN4PSI3NC42OTEiIGN5PSI3Mi44MzQiIHI9Ii45OTIiIGZpbGw9IiNmZmYiIHRyYW5zZm9ybT0icm90YXRlKDguNTUzIDc0LjY5IDcyLjgzNCkiLz48Y2lyY2xlIGN4PSI3MS4xNzEiIGN5PSI3OC45NjgiIHI9Ii45OTIiIGZpbGw9IiNmZmYiIHRyYW5zZm9ybT0icm90YXRlKDguNTUzIDcxLjE3MSA3OC45NjgpIi8+PGcgZmlsdGVyPSJ1cmwoI2gpIj48cGF0aCBmaWxsPSIjRUU1RTUyIiBkPSJtMTQ5LjkxMSA5My44MjQgNi41MjEtMTQuOTYzYS41OTguNTk4IDAgMCAwLS40OTktLjgzNiA3NS4yNTUgNzUuMjU1IDAgMCAwLTMuMDg2LS4xOTNjLTEuODk0LS4wNjQtMi45NjctLjExLTQuODYzLjAzNy0xLjgzMy4xNDEtMi44NTQuMzMtNC42NTEuNjc2LS44MjMuMTU4LTEuOTEyLjQxNC0yLjY0My41OWEuNTk2LjU5NiAwIDAgMC0uMzY0Ljg5OGw4LjY0IDEzLjg2YS41MzUuNTM1IDAgMCAwIC45NDUtLjA3WiIvPjwvZz48Y2lyY2xlIGN4PSIxNDkuNSIgY3k9IjgyLjI1IiByPSIuOTkyIiBmaWxsPSIjZmZmIiB0cmFuc2Zvcm09InJvdGF0ZSgtMTcuMDk4IDE0OS41IDgyLjI1KSIvPjxjaXJjbGUgY3g9IjE0Ni41NzkiIGN5PSI4OC4yMjIiIHI9Ii45OTIiIGZpbGw9IiNmZmYiIHRyYW5zZm9ybT0icm90YXRlKC0xNy4wOTggMTQ2LjU3OSA4OC4yMjIpIi8+PGNpcmNsZSBjeD0iMTQ0LjY1IiBjeT0iODQuNTg4IiByPSIuOTkyIiBmaWxsPSIjZmZmIiB0cmFuc2Zvcm09InJvdGF0ZSgtMTcuMDk4IDE0NC42NSA4NC41ODgpIi8+PGNpcmNsZSBjeD0iMTUwLjA0OSIgY3k9IjkwLjIzMSIgcj0iLjk5MiIgZmlsbD0iI2ZmZiIgdHJhbnNmb3JtPSJyb3RhdGUoLTE3LjA5OCAxNTAuMDQ5IDkwLjIzMSkiLz48Y2lyY2xlIGN4PSIxNDQuMzA2IiBjeT0iNzkuNiIgcj0iLjk5MiIgZmlsbD0iI2ZmZiIgdHJhbnNmb3JtPSJyb3RhdGUoLTE3LjA5OCAxNDQuMzA2IDc5LjYpIi8+PGNpcmNsZSBjeD0iMTUyLjI4NyIgY3k9Ijc5LjA1MSIgcj0iLjk5MiIgZmlsbD0iI2ZmZiIgdHJhbnNmb3JtPSJyb3RhdGUoLTE3LjA5OCAxNTIuMjg3IDc5LjA1KSIvPjxjaXJjbGUgY3g9IjE1MS43NyIgY3k9Ijg2LjEwMyIgcj0iLjk5MiIgZmlsbD0iI2ZmZiIgdHJhbnNmb3JtPSJyb3RhdGUoLTE3LjA5OCAxNTEuNzcgODYuMTAzKSIvPjxnIGZpbHRlcj0idXJsKCNpKSI+PHBhdGggZmlsbD0iIzVDQjE3NiIgZD0ibTEwOS4xNzEgOTMuNCA4Ljg2LTEzLjcwN2EuNTk4LjU5OCAwIDAgMC0uMzU3LS45MDZjLS44MTEtLjItMi4wNy0uNTAzLTMuMDEzLS42OS0xLjg1OS0uMzctMi45MTEtLjU5LTQuODA2LS43NTMtMS44MzEtLjE1Ny0yLjg2OS0uMTM2LTQuNjk5LS4wODYtLjgzNy4wMjMtMS45NTMuMDk4LTIuNzAzLjE1NGEuNTk3LjU5NyAwIDAgMC0uNTA1LjgyN2w2LjI3OSAxNS4wNzdjLjE2Ni4zOTguNzEuNDQ3Ljk0NC4wODRaIi8+PC9nPjxtYXNrIGlkPSJqIiB3aWR0aD0iMTgiIGhlaWdodD0iMTciIHg9IjEwMSIgeT0iNzciIG1hc2tVbml0cz0idXNlclNwYWNlT25Vc2UiIHN0eWxlPSJtYXNrLXR5cGU6YWxwaGEiPjxwYXRoIGZpbGw9IiM1Q0IxNzYiIGQ9Im0xMDkuMTcgOTMuNCA4Ljg2LTEzLjcwN2EuNTk4LjU5OCAwIDAgMC0uMzU3LS45MDVjLS44MTEtLjIwMS0yLjA3LS41MDQtMy4wMTMtLjY5Mi0xLjg1OS0uMzctMi45MTEtLjU4OS00LjgwNi0uNzUxLTEuODMxLS4xNTgtMi44NjktLjEzNy00LjY5OS0uMDg3LS44MzcuMDIzLTEuOTUzLjA5OS0yLjcwMy4xNTRhLjU5Ny41OTcgMCAwIDAtLjUwNS44MjdsNi4yNzkgMTUuMDc3Yy4xNjYuMzk4LjcxLjQ0Ny45NDQuMDg1WiIvPjwvbWFzaz48ZyBzdHJva2U9IiNmZmYiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIuNjYxIiBtYXNrPSJ1cmwoI2opIj48cGF0aCBkPSJNMTA5LjIyNSA3Ny4zMzVjLS4yMDcgMS44NjcuNDE4IDYuNjMyIDQuNTczIDEwLjc1M00xMTMuOTcyIDc2LjljLS4yMDcgMS44NjcuNDE4IDYuNjMxIDQuNTczIDEwLjc1M00xMDQuOTkyIDc3LjM1N2MtLjEyMSAyLjM5NyAxLjAyMyA4LjYwMiA2LjU2OCAxNC4yNE0xMDIuNjkgODEuMzQzYy4xMjUgMi4zOTcgMS40MjkgNi40OTcgNy41MjIgMTEuNTM3Ii8+PC9nPjxkZWZzPjxmaWx0ZXIgaWQ9ImEiIHdpZHRoPSIyMS41NjUiIGhlaWdodD0iMjEuNjQ5IiB4PSIxMTguNzc1IiB5PSI3Ni4wMDkiIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz0ic1JHQiIgZmlsdGVyVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48ZmVGbG9vZCBmbG9vZC1vcGFjaXR5PSIwIiByZXN1bHQ9IkJhY2tncm91bmRJbWFnZUZpeCIvPjxmZUNvbG9yTWF0cml4IGluPSJTb3VyY2VBbHBoYSIgcmVzdWx0PSJoYXJkQWxwaGEiIHZhbHVlcz0iMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMTI3IDAiLz48ZmVPZmZzZXQgZHk9Ii42NjEiLz48ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPSIxLjMyMiIvPjxmZUNvbG9yTWF0cml4IHZhbHVlcz0iMCAwIDAgMCAwLjEyOTQxMiAwIDAgMCAwIDAuMTI5NDEyIDAgMCAwIDAgMC4yMDM5MjIgMCAwIDAgMC4xIDAiLz48ZmVCbGVuZCBpbjI9IkJhY2tncm91bmRJbWFnZUZpeCIgcmVzdWx0PSJlZmZlY3QxX2Ryb3BTaGFkb3dfMTJfMzkiLz48ZmVCbGVuZCBpbj0iU291cmNlR3JhcGhpYyIgaW4yPSJlZmZlY3QxX2Ryb3BTaGFkb3dfMTJfMzkiIHJlc3VsdD0ic2hhcGUiLz48L2ZpbHRlcj48ZmlsdGVyIGlkPSJiIiB3aWR0aD0iMjAuMjAxIiBoZWlnaHQ9IjIyLjc0MSIgeD0iNDMuNTI2IiB5PSI1Ni4xNjciIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz0ic1JHQiIgZmlsdGVyVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48ZmVGbG9vZCBmbG9vZC1vcGFjaXR5PSIwIiByZXN1bHQ9IkJhY2tncm91bmRJbWFnZUZpeCIvPjxmZUNvbG9yTWF0cml4IGluPSJTb3VyY2VBbHBoYSIgcmVzdWx0PSJoYXJkQWxwaGEiIHZhbHVlcz0iMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMTI3IDAiLz48ZmVPZmZzZXQgZHk9Ii42NjEiLz48ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPSIxLjMyMiIvPjxmZUNvbG9yTWF0cml4IHZhbHVlcz0iMCAwIDAgMCAwLjEyOTQxMiAwIDAgMCAwIDAuMTI5NDEyIDAgMCAwIDAgMC4yMDM5MjIgMCAwIDAgMC4xIDAiLz48ZmVCbGVuZCBpbjI9IkJhY2tncm91bmRJbWFnZUZpeCIgcmVzdWx0PSJlZmZlY3QxX2Ryb3BTaGFkb3dfMTJfMzkiLz48ZmVCbGVuZCBpbj0iU291cmNlR3JhcGhpYyIgaW4yPSJlZmZlY3QxX2Ryb3BTaGFkb3dfMTJfMzkiIHJlc3VsdD0ic2hhcGUiLz48L2ZpbHRlcj48ZmlsdGVyIGlkPSJjIiB3aWR0aD0iMjAuOTMyIiBoZWlnaHQ9IjIyLjYwMiIgeD0iMjYuNzYxIiB5PSI0NC44MTgiIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz0ic1JHQiIgZmlsdGVyVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48ZmVGbG9vZCBmbG9vZC1vcGFjaXR5PSIwIiByZXN1bHQ9IkJhY2tncm91bmRJbWFnZUZpeCIvPjxmZUNvbG9yTWF0cml4IGluPSJTb3VyY2VBbHBoYSIgcmVzdWx0PSJoYXJkQWxwaGEiIHZhbHVlcz0iMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMTI3IDAiLz48ZmVPZmZzZXQgZHk9Ii42NjEiLz48ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPSIxLjMyMiIvPjxmZUNvbG9yTWF0cml4IHZhbHVlcz0iMCAwIDAgMCAwLjEyOTQxMiAwIDAgMCAwIDAuMTI5NDEyIDAgMCAwIDAgMC4yMDM5MjIgMCAwIDAgMC4xIDAiLz48ZmVCbGVuZCBpbjI9IkJhY2tncm91bmRJbWFnZUZpeCIgcmVzdWx0PSJlZmZlY3QxX2Ryb3BTaGFkb3dfMTJfMzkiLz48ZmVCbGVuZCBpbj0iU291cmNlR3JhcGhpYyIgaW4yPSJlZmZlY3QxX2Ryb3BTaGFkb3dfMTJfMzkiIHJlc3VsdD0ic2hhcGUiLz48L2ZpbHRlcj48ZmlsdGVyIGlkPSJlIiB3aWR0aD0iMjEuNDgyIiBoZWlnaHQ9IjIxLjcyNCIgeD0iMTU2Ljk0NCIgeT0iNzQuOTA0IiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiIGZpbHRlclVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PGZlRmxvb2QgZmxvb2Qtb3BhY2l0eT0iMCIgcmVzdWx0PSJCYWNrZ3JvdW5kSW1hZ2VGaXgiLz48ZmVDb2xvck1hdHJpeCBpbj0iU291cmNlQWxwaGEiIHJlc3VsdD0iaGFyZEFscGhhIiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwIi8+PGZlT2Zmc2V0IGR5PSIuNjYxIi8+PGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0iMS4zMjIiLz48ZmVDb2xvck1hdHJpeCB2YWx1ZXM9IjAgMCAwIDAgMC4xMjk0MTIgMCAwIDAgMCAwLjEyOTQxMiAwIDAgMCAwIDAuMjAzOTIyIDAgMCAwIDAuMSAwIi8+PGZlQmxlbmQgaW4yPSJCYWNrZ3JvdW5kSW1hZ2VGaXgiIHJlc3VsdD0iZWZmZWN0MV9kcm9wU2hhZG93XzEyXzM5Ii8+PGZlQmxlbmQgaW49IlNvdXJjZUdyYXBoaWMiIGluMj0iZWZmZWN0MV9kcm9wU2hhZG93XzEyXzM5IiByZXN1bHQ9InNoYXBlIi8+PC9maWx0ZXI+PGZpbHRlciBpZD0iZiIgd2lkdGg9IjIxLjI1NiIgaGVpZ2h0PSIyMi4xMzkiIHg9Ijc5Ljg2OCIgeT0iNzIuNDA5IiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiIGZpbHRlclVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PGZlRmxvb2QgZmxvb2Qtb3BhY2l0eT0iMCIgcmVzdWx0PSJCYWNrZ3JvdW5kSW1hZ2VGaXgiLz48ZmVDb2xvck1hdHJpeCBpbj0iU291cmNlQWxwaGEiIHJlc3VsdD0iaGFyZEFscGhhIiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwIi8+PGZlT2Zmc2V0IGR5PSIuNjYxIi8+PGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0iMS4zMjIiLz48ZmVDb2xvck1hdHJpeCB2YWx1ZXM9IjAgMCAwIDAgMC4xMjk0MTIgMCAwIDAgMCAwLjEyOTQxMiAwIDAgMCAwIDAuMjAzOTIyIDAgMCAwIDAuMSAwIi8+PGZlQmxlbmQgaW4yPSJCYWNrZ3JvdW5kSW1hZ2VGaXgiIHJlc3VsdD0iZWZmZWN0MV9kcm9wU2hhZG93XzEyXzM5Ii8+PGZlQmxlbmQgaW49IlNvdXJjZUdyYXBoaWMiIGluMj0iZWZmZWN0MV9kcm9wU2hhZG93XzEyXzM5IiByZXN1bHQ9InNoYXBlIi8+PC9maWx0ZXI+PGZpbHRlciBpZD0iZyIgd2lkdGg9IjIwLjUyNiIgaGVpZ2h0PSIyMi42NjQiIHg9IjYwLjgzNSIgeT0iNjUuODkzIiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiIGZpbHRlclVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PGZlRmxvb2QgZmxvb2Qtb3BhY2l0eT0iMCIgcmVzdWx0PSJCYWNrZ3JvdW5kSW1hZ2VGaXgiLz48ZmVDb2xvck1hdHJpeCBpbj0iU291cmNlQWxwaGEiIHJlc3VsdD0iaGFyZEFscGhhIiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwIi8+PGZlT2Zmc2V0IGR5PSIuNjYxIi8+PGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0iMS4zMjIiLz48ZmVDb2xvck1hdHJpeCB2YWx1ZXM9IjAgMCAwIDAgMC4xMjk0MTIgMCAwIDAgMCAwLjEyOTQxMiAwIDAgMCAwIDAuMjAzOTIyIDAgMCAwIDAuMSAwIi8+PGZlQmxlbmQgaW4yPSJCYWNrZ3JvdW5kSW1hZ2VGaXgiIHJlc3VsdD0iZWZmZWN0MV9kcm9wU2hhZG93XzEyXzM5Ii8+PGZlQmxlbmQgaW49IlNvdXJjZUdyYXBoaWMiIGluMj0iZWZmZWN0MV9kcm9wU2hhZG93XzEyXzM5IiByZXN1bHQ9InNoYXBlIi8+PC9maWx0ZXI+PGZpbHRlciBpZD0iaCIgd2lkdGg9IjIxLjUzNyIgaGVpZ2h0PSIyMS42NjIiIHg9IjEzNy41OSIgeT0iNzUuNzg4IiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiIGZpbHRlclVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PGZlRmxvb2QgZmxvb2Qtb3BhY2l0eT0iMCIgcmVzdWx0PSJCYWNrZ3JvdW5kSW1hZ2VGaXgiLz48ZmVDb2xvck1hdHJpeCBpbj0iU291cmNlQWxwaGEiIHJlc3VsdD0iaGFyZEFscGhhIiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwIi8+PGZlT2Zmc2V0IGR5PSIuNjYxIi8+PGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0iMS4zMjIiLz48ZmVDb2xvck1hdHJpeCB2YWx1ZXM9IjAgMCAwIDAgMC4xMjk0MTIgMCAwIDAgMCAwLjEyOTQxMiAwIDAgMCAwIDAuMjAzOTIyIDAgMCAwIDAuMSAwIi8+PGZlQmxlbmQgaW4yPSJCYWNrZ3JvdW5kSW1hZ2VGaXgiIHJlc3VsdD0iZWZmZWN0MV9kcm9wU2hhZG93XzEyXzM5Ii8+PGZlQmxlbmQgaW49IlNvdXJjZUdyYXBoaWMiIGluMj0iZWZmZWN0MV9kcm9wU2hhZG93XzEyXzM5IiByZXN1bHQ9InNoYXBlIi8+PC9maWx0ZXI+PGZpbHRlciBpZD0iaSIgd2lkdGg9IjIxLjUxNSIgaGVpZ2h0PSIyMS43MTIiIHg9Ijk5LjI1NyIgeT0iNzUuMjM4IiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9InNSR0IiIGZpbHRlclVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PGZlRmxvb2QgZmxvb2Qtb3BhY2l0eT0iMCIgcmVzdWx0PSJCYWNrZ3JvdW5kSW1hZ2VGaXgiLz48ZmVDb2xvck1hdHJpeCBpbj0iU291cmNlQWxwaGEiIHJlc3VsdD0iaGFyZEFscGhhIiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwIi8+PGZlT2Zmc2V0IGR5PSIuNjYxIi8+PGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0iMS4zMjIiLz48ZmVDb2xvck1hdHJpeCB2YWx1ZXM9IjAgMCAwIDAgMC4xMjk0MTIgMCAwIDAgMCAwLjEyOTQxMiAwIDAgMCAwIDAuMjAzOTIyIDAgMCAwIDAuMSAwIi8+PGZlQmxlbmQgaW4yPSJCYWNrZ3JvdW5kSW1hZ2VGaXgiIHJlc3VsdD0iZWZmZWN0MV9kcm9wU2hhZG93XzEyXzM5Ii8+PGZlQmxlbmQgaW49IlNvdXJjZUdyYXBoaWMiIGluMj0iZWZmZWN0MV9kcm9wU2hhZG93XzEyXzM5IiByZXN1bHQ9InNoYXBlIi8+PC9maWx0ZXI+PC9kZWZzPjwvc3ZnPg==\"","import * as React from 'react';\n\nimport { Box, Button, Flex, Grid, GridItem, Layout, Main, Typography } from '@strapi/design-system';\nimport { Link, LinkButton } from '@strapi/design-system/v2';\nimport {\n ContentBox,\n LoadingIndicatorPage,\n useAppInfo,\n useGuidedTour,\n useTracking,\n} from '@strapi/helper-plugin';\nimport {\n ArrowRight,\n CodeSquare,\n Discord,\n Discourse,\n ExternalLink,\n FeatherSquare,\n Github,\n InformationSquare,\n PlaySquare,\n Reddit,\n Strapi,\n Twitter,\n} from '@strapi/icons';\nimport { Helmet } from 'react-helmet';\nimport { useIntl } from 'react-intl';\nimport { useHistory } from 'react-router-dom';\nimport styled from 'styled-components';\n\nimport { ContentType } from '../../../shared/schema';\nimport { GuidedTourHomepage } from '../components/GuidedTour/Homepage';\nimport { useContentTypes } from '../hooks/useContentTypes';\nimport { useEnterprise } from '../hooks/useEnterprise';\n\nimport cornerOrnamentPath from './assets/corner-ornament.svg';\nimport cloudIconBackgroundImage from './assets/strapi-cloud-background.png';\nimport cloudFlagsImage from './assets/strapi-cloud-flags.svg';\n\n/* -------------------------------------------------------------------------------------------------\n * HomePageCE\n * -----------------------------------------------------------------------------------------------*/\n\nconst HomePageCE = () => {\n const { formatMessage } = useIntl();\n // Temporary until we develop the menu API\n const { collectionTypes, singleTypes, isLoading: isLoadingForModels } = useContentTypes();\n const { guidedTourState, isGuidedTourVisible, isSkipped } = useGuidedTour();\n const showGuidedTour =\n !Object.values(guidedTourState).every((section) =>\n Object.values(section).every((step) => step)\n ) &&\n isGuidedTourVisible &&\n !isSkipped;\n const { push } = useHistory();\n const handleClick: React.MouseEventHandler<HTMLButtonElement> = (e) => {\n e.preventDefault();\n\n push('/plugins/content-type-builder/content-types/create-content-type');\n };\n\n const hasAlreadyCreatedContentTypes = React.useMemo(() => {\n const filterContentTypes = (contentTypes: ContentType[]) =>\n contentTypes.filter((c) => c.isDisplayed);\n\n /**\n * TODO: this can be done with a `some` call.\n */\n return (\n filterContentTypes(collectionTypes).length > 1 || filterContentTypes(singleTypes).length > 0\n );\n }, [collectionTypes, singleTypes]);\n\n if (isLoadingForModels) {\n return <LoadingIndicatorPage />;\n }\n\n return (\n <Layout>\n <Helmet\n title={formatMessage({\n id: 'HomePage.helmet.title',\n defaultMessage: 'Homepage',\n })}\n />\n <Main>\n <LogoContainer>\n <img alt=\"\" aria-hidden src={cornerOrnamentPath} />\n </LogoContainer>\n <Box padding={10}>\n <Grid>\n <GridItem col={8} s={12}>\n <div>\n <Box paddingLeft={6} paddingBottom={10}>\n <Flex direction=\"column\" alignItems=\"flex-start\" gap={5}>\n <Typography as=\"h1\" variant=\"alpha\">\n {hasAlreadyCreatedContentTypes\n ? formatMessage({\n id: 'app.components.HomePage.welcome.again',\n defaultMessage: 'Welcome 👋',\n })\n : formatMessage({\n id: 'app.components.HomePage.welcome',\n defaultMessage: 'Welcome on board!',\n })}\n </Typography>\n <WordWrap textColor=\"neutral600\" variant=\"epsilon\">\n {hasAlreadyCreatedContentTypes\n ? formatMessage({\n id: 'app.components.HomePage.welcomeBlock.content.again',\n defaultMessage:\n '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.',\n })\n : formatMessage({\n id: 'app.components.HomePage.welcomeBlock.content',\n defaultMessage:\n '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!',\n })}\n </WordWrap>\n {hasAlreadyCreatedContentTypes ? (\n <Link isExternal href=\"https://strapi.io/blog\">\n {formatMessage({\n id: 'app.components.HomePage.button.blog',\n defaultMessage: 'See more on the blog',\n })}\n </Link>\n ) : (\n <Button size=\"L\" onClick={handleClick} endIcon={<ArrowRight />}>\n {formatMessage({\n id: 'app.components.HomePage.create',\n defaultMessage: 'Create your first Content type',\n })}\n </Button>\n )}\n </Flex>\n </Box>\n </div>\n </GridItem>\n </Grid>\n <Grid gap={6}>\n <GridItem col={8} s={12}>\n {showGuidedTour ? <GuidedTourHomepage /> : <ContentBlocks />}\n </GridItem>\n <GridItem col={4} s={12}>\n <SocialLinks />\n </GridItem>\n </Grid>\n </Box>\n </Main>\n </Layout>\n );\n};\n\nconst LogoContainer = styled(Box)`\n position: absolute;\n top: 0;\n right: 0;\n\n img {\n width: ${150 / 16}rem;\n }\n`;\n\nconst WordWrap = styled(Typography)`\n word-break: break-word;\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * ContentBlocks\n * -----------------------------------------------------------------------------------------------*/\n\nconst ContentBlocks = () => {\n const { formatMessage } = useIntl();\n const { trackUsage } = useTracking();\n\n return (\n <Flex direction=\"column\" alignItems=\"stretch\" gap={5}>\n <BlockLink\n href=\"https://cloud.strapi.io\"\n target=\"_blank\"\n rel=\"noopener noreferrer nofollow\"\n onClick={() => {\n trackUsage('didClickOnTryStrapiCloudSection');\n }}\n >\n <Flex\n shadow=\"tableShadow\"\n hasRadius\n padding={6}\n background=\"neutral0\"\n position=\"relative\"\n gap={6}\n >\n <CloudCustomWrapper hasRadius padding={3}>\n <CloudIconWrapper\n width=\"2rem\"\n height=\"2rem\"\n justifyContent=\"center\"\n hasRadius\n alignItems=\"center\"\n >\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"15\" fill=\"none\">\n <path\n fill=\"#fff\"\n fillRule=\"evenodd\"\n d=\"M4.39453 13.8298C1.93859 13.6455 0 11.468 0 8.80884 0 6.0289 2.11876 3.7753 4.73238 3.7753c.46775 0 .91964.07218 1.34638.20664C7.21234 1.62909 9.66469 0 12.5073 0c2.5102 0 4.7161 1.27036 5.9782 3.18766a4.54297 4.54297 0 0 1 .6132-.04144C21.8056 3.14622 24 5.54066 24 8.49436c0 2.89194-2.1036 5.24784-4.7323 5.34504v.0031l-1.8948.278a38.18054 38.18054 0 0 1-11.08354 0l-1.89483-.278v-.0127Z\"\n clipRule=\"evenodd\"\n />\n </svg>\n </CloudIconWrapper>\n </CloudCustomWrapper>\n <Flex gap={1} direction=\"column\" alignItems=\"start\">\n <Typography fontWeight=\"semiBold\" variant=\"pi\">\n {formatMessage({\n id: 'app.components.BlockLink.cloud',\n defaultMessage: 'Strapi Cloud',\n })}\n </Typography>\n <Typography textColor=\"neutral600\">\n {formatMessage({\n id: 'app.components.BlockLink.cloud.content',\n defaultMessage:\n 'A fully composable, and collaborative platform to boost your team velocity.',\n })}\n </Typography>\n <Box src={cloudFlagsImage} position=\"absolute\" top={0} right={0} as=\"img\" />\n </Flex>\n </Flex>\n </BlockLink>\n <BlockLink\n href=\"https://strapi.io/resource-center\"\n target=\"_blank\"\n rel=\"noopener noreferrer nofollow\"\n onClick={() => trackUsage('didClickonReadTheDocumentationSection')}\n >\n <ContentBox\n title={formatMessage({\n id: 'global.documentation',\n defaultMessage: 'Documentation',\n })}\n subtitle={formatMessage({\n id: 'app.components.BlockLink.documentation.content',\n defaultMessage: 'Discover the essential concepts, guides and instructions.',\n })}\n icon={<InformationSquare />}\n iconBackground=\"primary100\"\n />\n </BlockLink>\n <BlockLink\n href=\"https://strapi.io/starters\"\n target=\"_blank\"\n rel=\"noopener noreferrer nofollow\"\n onClick={() => trackUsage('didClickonCodeExampleSection')}\n >\n <ContentBox\n title={formatMessage({\n id: 'app.components.BlockLink.code',\n defaultMessage: 'Code example',\n })}\n subtitle={formatMessage({\n id: 'app.components.BlockLink.code.content',\n defaultMessage: 'Learn by using ready-made starters for your projects.',\n })}\n icon={<CodeSquare />}\n iconBackground=\"warning100\"\n />\n </BlockLink>\n <BlockLink\n href=\"https://strapi.io/blog/categories/tutorials\"\n target=\"_blank\"\n rel=\"noopener noreferrer nofollow\"\n onClick={() => trackUsage('didClickonTutorialSection')}\n >\n <ContentBox\n title={formatMessage({\n id: 'app.components.BlockLink.tutorial',\n defaultMessage: 'Tutorials',\n })}\n subtitle={formatMessage({\n id: 'app.components.BlockLink.tutorial.content',\n defaultMessage: 'Follow step-by-step instructions to use and customize Strapi.',\n })}\n icon={<PlaySquare />}\n iconBackground=\"secondary100\"\n />\n </BlockLink>\n <BlockLink\n href=\"https://strapi.io/blog\"\n target=\"_blank\"\n rel=\"noopener noreferrer nofollow\"\n onClick={() => trackUsage('didClickonBlogSection')}\n >\n <ContentBox\n title={formatMessage({\n id: 'app.components.BlockLink.blog',\n defaultMessage: 'Blog',\n })}\n subtitle={formatMessage({\n id: 'app.components.BlockLink.blog.content',\n defaultMessage: 'Read the latest news about Strapi and the ecosystem.',\n })}\n icon={<FeatherSquare />}\n iconBackground=\"alternative100\"\n />\n </BlockLink>\n </Flex>\n );\n};\n\nconst BlockLink = styled.a`\n text-decoration: none;\n`;\n\nconst CloudCustomWrapper = styled(Box)`\n background-image: url(${cloudIconBackgroundImage});\n`;\n\nconst CloudIconWrapper = styled(Flex)`\n background: rgba(255, 255, 255, 0.3);\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * SocialLinks\n * -----------------------------------------------------------------------------------------------*/\n\nconst SocialLinks = () => {\n const { formatMessage } = useIntl();\n const { communityEdition } = useAppInfo();\n\n const socialLinksExtended = [\n ...SOCIAL_LINKS,\n {\n icon: <StyledStrapi />,\n link: communityEdition\n ? 'https://discord.strapi.io'\n : 'https://support.strapi.io/support/home',\n name: {\n id: 'Settings.application.get-help',\n defaultMessage: 'Get help',\n },\n },\n ];\n\n return (\n <Flex\n as=\"aside\"\n direction=\"column\"\n aria-labelledby=\"join-the-community\"\n background=\"neutral0\"\n hasRadius\n paddingRight={5}\n paddingLeft={5}\n paddingTop={6}\n paddingBottom={6}\n shadow=\"tableShadow\"\n gap={7}\n >\n <Flex direction=\"column\" alignItems=\"stretch\" gap={5}>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={3}>\n <Typography variant=\"delta\" as=\"h2\" id=\"join-the-community\">\n {formatMessage({\n id: 'app.components.HomePage.community',\n defaultMessage: 'Join the community',\n })}\n </Typography>\n <Typography textColor=\"neutral600\">\n {formatMessage({\n id: 'app.components.HomePage.community.content',\n defaultMessage:\n 'Discuss with team members, contributors and developers on different channels',\n })}\n </Typography>\n </Flex>\n <Link href=\"https://feedback.strapi.io/\" isExternal endIcon={<ExternalLink />}>\n {formatMessage({\n id: 'app.components.HomePage.roadmap',\n defaultMessage: 'See our road map',\n })}\n </Link>\n </Flex>\n <GridGap>\n {socialLinksExtended.map(({ icon, link, name }) => {\n return (\n <GridItem col={6} s={12} key={name.id}>\n <LinkCustom size=\"L\" startIcon={icon} variant=\"tertiary\" href={link} isExternal>\n {formatMessage(name)}\n </LinkCustom>\n </GridItem>\n );\n })}\n </GridGap>\n </Flex>\n );\n};\n\nconst StyledDiscord = styled(Discord)`\n path {\n fill: #7289da !important;\n }\n`;\n\nconst StyledReddit = styled(Reddit)`\n > path:first-child {\n fill: #ff4500;\n }\n`;\nconst StyledStrapi = styled(Strapi)`\n > path:first-child {\n fill: #4945ff;\n }\n > path:nth-child(2) {\n fill: #fff;\n }\n > path:nth-child(4) {\n fill: #9593ff;\n }\n`;\n\nconst StyledTwitter = styled(Twitter)`\n path {\n fill: #1da1f2 !important;\n }\n`;\n\nconst StyledDiscourse = styled(Discourse)`\n > path:first-child {\n fill: #231f20;\n }\n > path:nth-child(2) {\n fill: #fff9ae;\n }\n > path:nth-child(3) {\n fill: #00aeef;\n }\n > path:nth-child(4) {\n fill: #00a94f;\n }\n > path:nth-child(5) {\n fill: #f15d22;\n }\n > path:nth-child(6) {\n fill: #e31b23;\n }\n`;\n\nconst LinkCustom = styled(LinkButton)`\n display: flex;\n align-items: center;\n border: none;\n\n svg {\n width: ${({ theme }) => theme.spaces[6]};\n height: ${({ theme }) => theme.spaces[6]};\n }\n\n span {\n word-break: keep-all;\n }\n`;\n\nconst GridGap = styled(Grid)`\n row-gap: ${({ theme }) => theme.spaces[2]};\n column-gap: ${({ theme }) => theme.spaces[4]};\n`;\n\nconst SOCIAL_LINKS = [\n {\n name: { id: 'app.components.HomePage.community.links.github', defaultMessage: 'Github' },\n link: 'https://github.com/strapi/strapi/',\n icon: <Github fill=\"#7289DA\" />,\n alt: 'github',\n },\n {\n name: { id: 'app.components.HomePage.community.links.discord', defaultMessage: 'Discord' },\n link: 'https://discord.strapi.io/',\n icon: <StyledDiscord />,\n alt: 'discord',\n },\n {\n name: { id: 'app.components.HomePage.community.links.reddit', defaultMessage: 'Reddit' },\n link: 'https://www.reddit.com/r/Strapi/',\n icon: <StyledReddit />,\n alt: 'reddit',\n },\n {\n name: { id: 'app.components.HomePage.community.links.twitter', defaultMessage: 'Twitter' },\n link: 'https://twitter.com/strapijs',\n icon: <StyledTwitter />,\n alt: 'twitter',\n },\n {\n name: { id: 'app.components.HomePage.community.links.forum', defaultMessage: 'Forum' },\n link: 'https://forum.strapi.io',\n icon: <StyledDiscourse />,\n alt: 'forum',\n },\n {\n name: { id: 'app.components.HomePage.community.links.blog', defaultMessage: 'Blog' },\n link: 'https://strapi.io/blog?utm_source=referral&utm_medium=admin&utm_campaign=career%20page',\n icon: <StyledStrapi />,\n alt: 'blog',\n },\n {\n name: {\n id: 'app.components.HomePage.community.links.career',\n defaultMessage: 'We are hiring!',\n },\n link: 'https://strapi.io/careers?utm_source=referral&utm_medium=admin&utm_campaign=blog',\n icon: <StyledStrapi />,\n alt: 'career',\n },\n];\n\n/* -------------------------------------------------------------------------------------------------\n * HomePage\n * -----------------------------------------------------------------------------------------------*/\n\nconst HomePage = () => {\n const Page = useEnterprise(\n HomePageCE,\n // eslint-disable-next-line import/no-cycle\n async () => (await import('../../../ee/admin/src/pages/HomePage')).HomePageEE\n );\n\n // block rendering until the EE component is fully loaded\n if (!Page) {\n return null;\n }\n\n return <Page />;\n};\n\nexport { HomePage, HomePageCE };\n"],"names":["useGuidedTour","useIntl","useTracking","LAYOUT_DATA","jsx","LinkButton","NavLink","ArrowRight","jsxs","Box","Flex","Typography","index","pxToRem","Number","VerticalDivider","STATES","Button","useContentTypes","useHistory","React","LoadingIndicatorPage","Layout","Helmet","Main","Grid","GridItem","Link","styled","ContentBox","InformationSquare","CodeSquare","PlaySquare","FeatherSquare","useAppInfo","ExternalLink","Discord","Reddit","Strapi","Twitter","Discourse","Github","useEnterprise"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
- import { HomePageCE } from "./HomePage-5798ba6f.mjs";
2
+ import { HomePageCE } from "./HomePage-332764b2.mjs";
3
3
  import { u as useLicenseLimitNotification } from "./useLicenseLimitNotification-1fd756fa.mjs";
4
4
  import "react";
5
5
  import "@strapi/design-system";
@@ -10,11 +10,11 @@ import "react-helmet";
10
10
  import "react-intl";
11
11
  import "react-router-dom";
12
12
  import "styled-components";
13
- import "./AuthenticatedApp-b0ada7e9.mjs";
13
+ import "./AuthenticatedApp-332b40a8.mjs";
14
14
  import "react-query";
15
15
  import "semver/functions/lt";
16
16
  import "semver/functions/valid";
17
- import "./index-34de382e.mjs";
17
+ import "./index-cd461a87.mjs";
18
18
  import "react-dom/client";
19
19
  import "invariant";
20
20
  import "lodash/isFunction";
@@ -22,29 +22,28 @@ import "lodash/merge";
22
22
  import "lodash/pick";
23
23
  import "react-redux";
24
24
  import "@radix-ui/react-context";
25
- import "axios";
26
- import "lodash/camelCase";
27
- import "lodash/get";
28
- import "lodash/omit";
29
- import "prop-types";
30
- import "lodash/defaultsDeep";
31
25
  import "formik";
26
+ import "lodash/camelCase";
32
27
  import "yup";
28
+ import "lodash/defaultsDeep";
29
+ import "lodash/omit";
30
+ import "qs";
33
31
  import "immer";
32
+ import "lodash/get";
34
33
  import "lodash/set";
35
- import "qs";
36
34
  import "@reduxjs/toolkit";
37
35
  import "react-dnd";
38
36
  import "react-dnd-html5-backend";
39
37
  import "lodash/cloneDeep";
40
38
  import "./useContentTypes-53b449bb.mjs";
39
+ import "axios";
41
40
  import "lodash/isNil";
42
41
  import "./useLicenseLimits-13a102d3.mjs";
43
- function HomePageEE() {
42
+ const HomePageEE = () => {
44
43
  useLicenseLimitNotification();
45
44
  return /* @__PURE__ */ jsx(HomePageCE, {});
46
- }
45
+ };
47
46
  export {
48
47
  HomePageEE
49
48
  };
50
- //# sourceMappingURL=HomePage-a3cc32d2.mjs.map
49
+ //# sourceMappingURL=HomePage-ebb9bd4d.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HomePage-ebb9bd4d.mjs","sources":["../../ee/admin/src/pages/HomePage.tsx"],"sourcesContent":["import { HomePageCE } from '../../../../admin/src/pages/HomePage';\nimport { useLicenseLimitNotification } from '../hooks/useLicenseLimitNotification';\n\nexport const HomePageEE = () => {\n useLicenseLimitNotification();\n\n return <HomePageCE />;\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGO,MAAM,aAAa,MAAM;AACF;AAE5B,6BAAQ,YAAW,CAAA,CAAA;AACrB;"}
@@ -8,10 +8,10 @@ const reactHelmet = require("react-helmet");
8
8
  const reactIntl = require("react-intl");
9
9
  const reactQuery = require("react-query");
10
10
  const reactRedux = require("react-redux");
11
- const AuthenticatedApp = require("./AuthenticatedApp-092ef2be.js");
11
+ const AuthenticatedApp = require("./AuthenticatedApp-26a57d48.js");
12
12
  require("semver/functions/lt");
13
13
  require("semver/functions/valid");
14
- require("./index-edc9bb0b.js");
14
+ require("./index-0134922e.js");
15
15
  require("react-dom/client");
16
16
  require("invariant");
17
17
  require("lodash/isFunction");
@@ -19,23 +19,21 @@ require("lodash/merge");
19
19
  require("lodash/pick");
20
20
  require("react-router-dom");
21
21
  require("@radix-ui/react-context");
22
- require("axios");
23
- require("lodash/camelCase");
24
- require("lodash/get");
25
- require("lodash/omit");
26
- require("prop-types");
27
- require("lodash/defaultsDeep");
28
- require("styled-components");
22
+ require("@strapi/design-system/v2");
29
23
  require("@strapi/icons");
30
24
  require("formik");
25
+ require("lodash/camelCase");
26
+ require("styled-components");
31
27
  require("yup");
28
+ require("lodash/defaultsDeep");
29
+ require("lodash/omit");
30
+ require("qs");
32
31
  require("immer");
32
+ require("lodash/get");
33
33
  require("lodash/set");
34
- require("qs");
35
34
  require("@reduxjs/toolkit");
36
35
  require("react-dnd");
37
36
  require("react-dnd-html5-backend");
38
- require("@strapi/design-system/v2");
39
37
  require("lodash/cloneDeep");
40
38
  function _interopNamespace(e) {
41
39
  if (e && e.__esModule)
@@ -152,4 +150,4 @@ const ProtectedInstalledPluginsPage = () => {
152
150
  };
153
151
  exports.InstalledPluginsPage = InstalledPluginsPage;
154
152
  exports.ProtectedInstalledPluginsPage = ProtectedInstalledPluginsPage;
155
- //# sourceMappingURL=InstalledPluginsPage-cc2d6a36.js.map
153
+ //# sourceMappingURL=InstalledPluginsPage-08915bd0.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"InstalledPluginsPage-cc2d6a36.js","sources":["../../admin/src/pages/InstalledPluginsPage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n ContentLayout,\n HeaderLayout,\n Layout,\n Main,\n Table,\n Tbody,\n Td,\n Th,\n Thead,\n Tr,\n Typography,\n useNotifyAT,\n} from '@strapi/design-system';\nimport {\n CheckPagePermissions,\n LoadingIndicatorPage,\n useFetchClient,\n useFocusWhenNavigate,\n useNotification,\n} from '@strapi/helper-plugin';\nimport { Helmet } from 'react-helmet';\nimport { useIntl } from 'react-intl';\nimport { useQuery } from 'react-query';\nimport { useSelector } from 'react-redux';\n\nimport { selectAdminPermissions } from '../selectors';\n\nconst InstalledPluginsPage = () => {\n const { formatMessage } = useIntl();\n const { notifyStatus } = useNotifyAT();\n const toggleNotification = useNotification();\n const { get } = useFetchClient();\n useFocusWhenNavigate();\n\n const { status, data, error } = useQuery(['plugins'], async () => {\n /**\n * TODO: why is this a different format?\n */\n const { data } = await get<{\n plugins: Array<{ name: string; displayName: string; description: string }>;\n }>('/admin/plugins');\n\n return data;\n });\n\n React.useEffect(() => {\n if (data) {\n notifyStatus(\n formatMessage(\n {\n id: 'app.utils.notify.data-loaded',\n defaultMessage: 'The {target} has loaded',\n },\n {\n target: formatMessage({\n id: 'global.plugins',\n defaultMessage: 'Plugins',\n }),\n }\n )\n );\n }\n\n if (error) {\n toggleNotification({\n type: 'warning',\n message: { id: 'notification.error', defaultMessage: 'An error occured' },\n });\n }\n }, [data, error, formatMessage, notifyStatus, toggleNotification]);\n\n const isLoading = status !== 'success' && status !== 'error';\n\n if (isLoading) {\n return (\n <Layout>\n <Main aria-busy>\n <LoadingIndicatorPage />\n </Main>\n </Layout>\n );\n }\n\n return (\n <Layout>\n <Main>\n <HeaderLayout\n title={formatMessage({\n id: 'global.plugins',\n defaultMessage: 'Plugins',\n })}\n subtitle={formatMessage({\n id: 'app.components.ListPluginsPage.description',\n defaultMessage: 'List of the installed plugins in the project.',\n })}\n />\n <ContentLayout>\n <Table colCount={2} rowCount={data?.plugins?.length ?? 0 + 1}>\n <Thead>\n <Tr>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n })}\n </Typography>\n </Th>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.description',\n defaultMessage: 'description',\n })}\n </Typography>\n </Th>\n </Tr>\n </Thead>\n <Tbody>\n {data?.plugins.map(({ name, displayName, description }) => {\n return (\n <Tr key={name}>\n <Td>\n <Typography textColor=\"neutral800\" variant=\"omega\" fontWeight=\"bold\">\n {formatMessage({\n id: `global.plugins.${name}`,\n defaultMessage: displayName,\n })}\n </Typography>\n </Td>\n <Td>\n <Typography textColor=\"neutral800\">\n {formatMessage({\n id: `global.plugins.${name}.description`,\n defaultMessage: description,\n })}\n </Typography>\n </Td>\n </Tr>\n );\n })}\n </Tbody>\n </Table>\n </ContentLayout>\n </Main>\n </Layout>\n );\n};\n\nconst ProtectedInstalledPluginsPage = () => {\n const { formatMessage } = useIntl();\n const permissions = useSelector(selectAdminPermissions);\n\n return (\n <CheckPagePermissions permissions={permissions.marketplace?.main}>\n <Helmet\n title={formatMessage({\n id: 'global.plugins',\n defaultMessage: 'Plugins',\n })}\n />\n <InstalledPluginsPage />\n </CheckPagePermissions>\n );\n};\n\nexport { ProtectedInstalledPluginsPage, InstalledPluginsPage };\n"],"names":["useIntl","useNotifyAT","useNotification","useFetchClient","useFocusWhenNavigate","useQuery","data","React","jsx","Layout","Main","LoadingIndicatorPage","jsxs","HeaderLayout","ContentLayout","Table","Thead","Tr","Th","Typography","Tbody","Td","useSelector","selectAdminPermissions","CheckPagePermissions","Helmet"],"mappings":"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"}
1
+ {"version":3,"file":"InstalledPluginsPage-08915bd0.js","sources":["../../admin/src/pages/InstalledPluginsPage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n ContentLayout,\n HeaderLayout,\n Layout,\n Main,\n Table,\n Tbody,\n Td,\n Th,\n Thead,\n Tr,\n Typography,\n useNotifyAT,\n} from '@strapi/design-system';\nimport {\n CheckPagePermissions,\n LoadingIndicatorPage,\n useFetchClient,\n useFocusWhenNavigate,\n useNotification,\n} from '@strapi/helper-plugin';\nimport { Helmet } from 'react-helmet';\nimport { useIntl } from 'react-intl';\nimport { useQuery } from 'react-query';\nimport { useSelector } from 'react-redux';\n\nimport { selectAdminPermissions } from '../selectors';\n\nconst InstalledPluginsPage = () => {\n const { formatMessage } = useIntl();\n const { notifyStatus } = useNotifyAT();\n const toggleNotification = useNotification();\n const { get } = useFetchClient();\n useFocusWhenNavigate();\n\n const { status, data, error } = useQuery(['plugins'], async () => {\n /**\n * TODO: why is this a different format?\n */\n const { data } = await get<{\n plugins: Array<{ name: string; displayName: string; description: string }>;\n }>('/admin/plugins');\n\n return data;\n });\n\n React.useEffect(() => {\n if (data) {\n notifyStatus(\n formatMessage(\n {\n id: 'app.utils.notify.data-loaded',\n defaultMessage: 'The {target} has loaded',\n },\n {\n target: formatMessage({\n id: 'global.plugins',\n defaultMessage: 'Plugins',\n }),\n }\n )\n );\n }\n\n if (error) {\n toggleNotification({\n type: 'warning',\n message: { id: 'notification.error', defaultMessage: 'An error occured' },\n });\n }\n }, [data, error, formatMessage, notifyStatus, toggleNotification]);\n\n const isLoading = status !== 'success' && status !== 'error';\n\n if (isLoading) {\n return (\n <Layout>\n <Main aria-busy>\n <LoadingIndicatorPage />\n </Main>\n </Layout>\n );\n }\n\n return (\n <Layout>\n <Main>\n <HeaderLayout\n title={formatMessage({\n id: 'global.plugins',\n defaultMessage: 'Plugins',\n })}\n subtitle={formatMessage({\n id: 'app.components.ListPluginsPage.description',\n defaultMessage: 'List of the installed plugins in the project.',\n })}\n />\n <ContentLayout>\n <Table colCount={2} rowCount={data?.plugins?.length ?? 0 + 1}>\n <Thead>\n <Tr>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n })}\n </Typography>\n </Th>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.description',\n defaultMessage: 'description',\n })}\n </Typography>\n </Th>\n </Tr>\n </Thead>\n <Tbody>\n {data?.plugins.map(({ name, displayName, description }) => {\n return (\n <Tr key={name}>\n <Td>\n <Typography textColor=\"neutral800\" variant=\"omega\" fontWeight=\"bold\">\n {formatMessage({\n id: `global.plugins.${name}`,\n defaultMessage: displayName,\n })}\n </Typography>\n </Td>\n <Td>\n <Typography textColor=\"neutral800\">\n {formatMessage({\n id: `global.plugins.${name}.description`,\n defaultMessage: description,\n })}\n </Typography>\n </Td>\n </Tr>\n );\n })}\n </Tbody>\n </Table>\n </ContentLayout>\n </Main>\n </Layout>\n );\n};\n\nconst ProtectedInstalledPluginsPage = () => {\n const { formatMessage } = useIntl();\n const permissions = useSelector(selectAdminPermissions);\n\n return (\n <CheckPagePermissions permissions={permissions.marketplace?.main}>\n <Helmet\n title={formatMessage({\n id: 'global.plugins',\n defaultMessage: 'Plugins',\n })}\n />\n <InstalledPluginsPage />\n </CheckPagePermissions>\n );\n};\n\nexport { ProtectedInstalledPluginsPage, InstalledPluginsPage };\n"],"names":["useIntl","useNotifyAT","useNotification","useFetchClient","useFocusWhenNavigate","useQuery","data","React","jsx","Layout","Main","LoadingIndicatorPage","jsxs","HeaderLayout","ContentLayout","Table","Thead","Tr","Th","Typography","Tbody","Td","useSelector","selectAdminPermissions","CheckPagePermissions","Helmet"],"mappings":"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"}
@@ -6,10 +6,10 @@ import { Helmet } from "react-helmet";
6
6
  import { useIntl } from "react-intl";
7
7
  import { useQuery } from "react-query";
8
8
  import { useSelector } from "react-redux";
9
- import { s as selectAdminPermissions } from "./AuthenticatedApp-b0ada7e9.mjs";
9
+ import { s as selectAdminPermissions } from "./AuthenticatedApp-332b40a8.mjs";
10
10
  import "semver/functions/lt";
11
11
  import "semver/functions/valid";
12
- import "./index-34de382e.mjs";
12
+ import "./index-cd461a87.mjs";
13
13
  import "react-dom/client";
14
14
  import "invariant";
15
15
  import "lodash/isFunction";
@@ -17,23 +17,21 @@ import "lodash/merge";
17
17
  import "lodash/pick";
18
18
  import "react-router-dom";
19
19
  import "@radix-ui/react-context";
20
- import "axios";
21
- import "lodash/camelCase";
22
- import "lodash/get";
23
- import "lodash/omit";
24
- import "prop-types";
25
- import "lodash/defaultsDeep";
26
- import "styled-components";
20
+ import "@strapi/design-system/v2";
27
21
  import "@strapi/icons";
28
22
  import "formik";
23
+ import "lodash/camelCase";
24
+ import "styled-components";
29
25
  import "yup";
26
+ import "lodash/defaultsDeep";
27
+ import "lodash/omit";
28
+ import "qs";
30
29
  import "immer";
30
+ import "lodash/get";
31
31
  import "lodash/set";
32
- import "qs";
33
32
  import "@reduxjs/toolkit";
34
33
  import "react-dnd";
35
34
  import "react-dnd-html5-backend";
36
- import "@strapi/design-system/v2";
37
35
  import "lodash/cloneDeep";
38
36
  const InstalledPluginsPage = () => {
39
37
  const { formatMessage } = useIntl();
@@ -133,4 +131,4 @@ export {
133
131
  InstalledPluginsPage,
134
132
  ProtectedInstalledPluginsPage
135
133
  };
136
- //# sourceMappingURL=InstalledPluginsPage-6284aaff.mjs.map
134
+ //# sourceMappingURL=InstalledPluginsPage-33ed21ac.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"InstalledPluginsPage-6284aaff.mjs","sources":["../../admin/src/pages/InstalledPluginsPage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n ContentLayout,\n HeaderLayout,\n Layout,\n Main,\n Table,\n Tbody,\n Td,\n Th,\n Thead,\n Tr,\n Typography,\n useNotifyAT,\n} from '@strapi/design-system';\nimport {\n CheckPagePermissions,\n LoadingIndicatorPage,\n useFetchClient,\n useFocusWhenNavigate,\n useNotification,\n} from '@strapi/helper-plugin';\nimport { Helmet } from 'react-helmet';\nimport { useIntl } from 'react-intl';\nimport { useQuery } from 'react-query';\nimport { useSelector } from 'react-redux';\n\nimport { selectAdminPermissions } from '../selectors';\n\nconst InstalledPluginsPage = () => {\n const { formatMessage } = useIntl();\n const { notifyStatus } = useNotifyAT();\n const toggleNotification = useNotification();\n const { get } = useFetchClient();\n useFocusWhenNavigate();\n\n const { status, data, error } = useQuery(['plugins'], async () => {\n /**\n * TODO: why is this a different format?\n */\n const { data } = await get<{\n plugins: Array<{ name: string; displayName: string; description: string }>;\n }>('/admin/plugins');\n\n return data;\n });\n\n React.useEffect(() => {\n if (data) {\n notifyStatus(\n formatMessage(\n {\n id: 'app.utils.notify.data-loaded',\n defaultMessage: 'The {target} has loaded',\n },\n {\n target: formatMessage({\n id: 'global.plugins',\n defaultMessage: 'Plugins',\n }),\n }\n )\n );\n }\n\n if (error) {\n toggleNotification({\n type: 'warning',\n message: { id: 'notification.error', defaultMessage: 'An error occured' },\n });\n }\n }, [data, error, formatMessage, notifyStatus, toggleNotification]);\n\n const isLoading = status !== 'success' && status !== 'error';\n\n if (isLoading) {\n return (\n <Layout>\n <Main aria-busy>\n <LoadingIndicatorPage />\n </Main>\n </Layout>\n );\n }\n\n return (\n <Layout>\n <Main>\n <HeaderLayout\n title={formatMessage({\n id: 'global.plugins',\n defaultMessage: 'Plugins',\n })}\n subtitle={formatMessage({\n id: 'app.components.ListPluginsPage.description',\n defaultMessage: 'List of the installed plugins in the project.',\n })}\n />\n <ContentLayout>\n <Table colCount={2} rowCount={data?.plugins?.length ?? 0 + 1}>\n <Thead>\n <Tr>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n })}\n </Typography>\n </Th>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.description',\n defaultMessage: 'description',\n })}\n </Typography>\n </Th>\n </Tr>\n </Thead>\n <Tbody>\n {data?.plugins.map(({ name, displayName, description }) => {\n return (\n <Tr key={name}>\n <Td>\n <Typography textColor=\"neutral800\" variant=\"omega\" fontWeight=\"bold\">\n {formatMessage({\n id: `global.plugins.${name}`,\n defaultMessage: displayName,\n })}\n </Typography>\n </Td>\n <Td>\n <Typography textColor=\"neutral800\">\n {formatMessage({\n id: `global.plugins.${name}.description`,\n defaultMessage: description,\n })}\n </Typography>\n </Td>\n </Tr>\n );\n })}\n </Tbody>\n </Table>\n </ContentLayout>\n </Main>\n </Layout>\n );\n};\n\nconst ProtectedInstalledPluginsPage = () => {\n const { formatMessage } = useIntl();\n const permissions = useSelector(selectAdminPermissions);\n\n return (\n <CheckPagePermissions permissions={permissions.marketplace?.main}>\n <Helmet\n title={formatMessage({\n id: 'global.plugins',\n defaultMessage: 'Plugins',\n })}\n />\n <InstalledPluginsPage />\n </CheckPagePermissions>\n );\n};\n\nexport { ProtectedInstalledPluginsPage, InstalledPluginsPage };\n"],"names":["data"],"mappings":"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"}
1
+ {"version":3,"file":"InstalledPluginsPage-33ed21ac.mjs","sources":["../../admin/src/pages/InstalledPluginsPage.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n ContentLayout,\n HeaderLayout,\n Layout,\n Main,\n Table,\n Tbody,\n Td,\n Th,\n Thead,\n Tr,\n Typography,\n useNotifyAT,\n} from '@strapi/design-system';\nimport {\n CheckPagePermissions,\n LoadingIndicatorPage,\n useFetchClient,\n useFocusWhenNavigate,\n useNotification,\n} from '@strapi/helper-plugin';\nimport { Helmet } from 'react-helmet';\nimport { useIntl } from 'react-intl';\nimport { useQuery } from 'react-query';\nimport { useSelector } from 'react-redux';\n\nimport { selectAdminPermissions } from '../selectors';\n\nconst InstalledPluginsPage = () => {\n const { formatMessage } = useIntl();\n const { notifyStatus } = useNotifyAT();\n const toggleNotification = useNotification();\n const { get } = useFetchClient();\n useFocusWhenNavigate();\n\n const { status, data, error } = useQuery(['plugins'], async () => {\n /**\n * TODO: why is this a different format?\n */\n const { data } = await get<{\n plugins: Array<{ name: string; displayName: string; description: string }>;\n }>('/admin/plugins');\n\n return data;\n });\n\n React.useEffect(() => {\n if (data) {\n notifyStatus(\n formatMessage(\n {\n id: 'app.utils.notify.data-loaded',\n defaultMessage: 'The {target} has loaded',\n },\n {\n target: formatMessage({\n id: 'global.plugins',\n defaultMessage: 'Plugins',\n }),\n }\n )\n );\n }\n\n if (error) {\n toggleNotification({\n type: 'warning',\n message: { id: 'notification.error', defaultMessage: 'An error occured' },\n });\n }\n }, [data, error, formatMessage, notifyStatus, toggleNotification]);\n\n const isLoading = status !== 'success' && status !== 'error';\n\n if (isLoading) {\n return (\n <Layout>\n <Main aria-busy>\n <LoadingIndicatorPage />\n </Main>\n </Layout>\n );\n }\n\n return (\n <Layout>\n <Main>\n <HeaderLayout\n title={formatMessage({\n id: 'global.plugins',\n defaultMessage: 'Plugins',\n })}\n subtitle={formatMessage({\n id: 'app.components.ListPluginsPage.description',\n defaultMessage: 'List of the installed plugins in the project.',\n })}\n />\n <ContentLayout>\n <Table colCount={2} rowCount={data?.plugins?.length ?? 0 + 1}>\n <Thead>\n <Tr>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.name',\n defaultMessage: 'Name',\n })}\n </Typography>\n </Th>\n <Th>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({\n id: 'global.description',\n defaultMessage: 'description',\n })}\n </Typography>\n </Th>\n </Tr>\n </Thead>\n <Tbody>\n {data?.plugins.map(({ name, displayName, description }) => {\n return (\n <Tr key={name}>\n <Td>\n <Typography textColor=\"neutral800\" variant=\"omega\" fontWeight=\"bold\">\n {formatMessage({\n id: `global.plugins.${name}`,\n defaultMessage: displayName,\n })}\n </Typography>\n </Td>\n <Td>\n <Typography textColor=\"neutral800\">\n {formatMessage({\n id: `global.plugins.${name}.description`,\n defaultMessage: description,\n })}\n </Typography>\n </Td>\n </Tr>\n );\n })}\n </Tbody>\n </Table>\n </ContentLayout>\n </Main>\n </Layout>\n );\n};\n\nconst ProtectedInstalledPluginsPage = () => {\n const { formatMessage } = useIntl();\n const permissions = useSelector(selectAdminPermissions);\n\n return (\n <CheckPagePermissions permissions={permissions.marketplace?.main}>\n <Helmet\n title={formatMessage({\n id: 'global.plugins',\n defaultMessage: 'Plugins',\n })}\n />\n <InstalledPluginsPage />\n </CheckPagePermissions>\n );\n};\n\nexport { ProtectedInstalledPluginsPage, InstalledPluginsPage };\n"],"names":["data"],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import { Divider, Box, Flex, Typography } from "@strapi/design-system";
3
- import PropTypes from "prop-types";
3
+ import { useFetchClient } from "@strapi/helper-plugin";
4
4
  import { useIntl } from "react-intl";
5
+ import { useQuery } from "react-query";
5
6
  import styled from "styled-components";
6
- import { U as UnauthenticatedLayout, L as Login } from "./index-34de382e.mjs";
7
- import { u as useAuthProviders, S as SSOProviders } from "./SSOProviders-1d062c95.mjs";
8
- import "@strapi/helper-plugin";
7
+ import { L as Login } from "./index-cd461a87.mjs";
8
+ import { S as SSOProviders } from "./SSOProviders-62bfad92.mjs";
9
9
  import "react-dom/client";
10
10
  import "invariant";
11
11
  import "lodash/isFunction";
@@ -16,51 +16,47 @@ import "react-router-dom";
16
16
  import "react";
17
17
  import "react-redux";
18
18
  import "@radix-ui/react-context";
19
- import "axios";
20
- import "lodash/camelCase";
21
- import "lodash/get";
22
- import "lodash/omit";
23
- import "lodash/defaultsDeep";
19
+ import "@strapi/design-system/v2";
24
20
  import "@strapi/icons";
25
21
  import "formik";
22
+ import "lodash/camelCase";
26
23
  import "yup";
27
- import "react-query";
24
+ import "lodash/defaultsDeep";
25
+ import "lodash/omit";
26
+ import "qs";
28
27
  import "immer";
28
+ import "lodash/get";
29
29
  import "lodash/set";
30
- import "qs";
31
30
  import "@reduxjs/toolkit";
32
31
  const DividerFull = styled(Divider)`
33
32
  flex: 1;
34
33
  `;
35
34
  const LoginEE = (loginProps) => {
36
35
  const { formatMessage } = useIntl();
37
- const { isLoading, providers } = useAuthProviders({
38
- enabled: window.strapi.features.isEnabled(window.strapi.features.SSO)
39
- });
36
+ const { get } = useFetchClient();
37
+ const { isLoading, data: providers = [] } = useQuery(
38
+ ["ee", "providers"],
39
+ async () => {
40
+ const { data } = await get("/admin/providers");
41
+ return data;
42
+ },
43
+ {
44
+ enabled: window.strapi.features.isEnabled(window.strapi.features.SSO)
45
+ }
46
+ );
40
47
  if (!window.strapi.features.isEnabled(window.strapi.features.SSO) || !isLoading && providers.length === 0) {
41
- return /* @__PURE__ */ jsx(UnauthenticatedLayout, { children: /* @__PURE__ */ jsx(Login, { ...loginProps }) });
48
+ return /* @__PURE__ */ jsx(Login, { ...loginProps });
42
49
  }
43
- return /* @__PURE__ */ jsx(UnauthenticatedLayout, { children: /* @__PURE__ */ jsx(Login, { ...loginProps, children: /* @__PURE__ */ jsx(Box, { paddingTop: 7, children: /* @__PURE__ */ jsxs(Flex, { direction: "column", alignItems: "stretch", gap: 7, children: [
50
+ return /* @__PURE__ */ jsx(Login, { ...loginProps, children: /* @__PURE__ */ jsx(Box, { paddingTop: 7, children: /* @__PURE__ */ jsxs(Flex, { direction: "column", alignItems: "stretch", gap: 7, children: [
44
51
  /* @__PURE__ */ jsxs(Flex, { children: [
45
52
  /* @__PURE__ */ jsx(DividerFull, {}),
46
53
  /* @__PURE__ */ jsx(Box, { paddingLeft: 3, paddingRight: 3, children: /* @__PURE__ */ jsx(Typography, { variant: "sigma", textColor: "neutral600", children: formatMessage({ id: "Auth.login.sso.divider" }) }) }),
47
54
  /* @__PURE__ */ jsx(DividerFull, {})
48
55
  ] }),
49
56
  /* @__PURE__ */ jsx(SSOProviders, { providers, displayAllProviders: false })
50
- ] }) }) }) });
51
- };
52
- LoginEE.defaultProps = {
53
- onSubmit: (e) => e.preventDefault(),
54
- requestError: null
55
- };
56
- LoginEE.propTypes = {
57
- formErrors: PropTypes.object.isRequired,
58
- modifiedData: PropTypes.object.isRequired,
59
- onChange: PropTypes.func.isRequired,
60
- onSubmit: PropTypes.func,
61
- requestError: PropTypes.object
57
+ ] }) }) });
62
58
  };
63
59
  export {
64
60
  LoginEE
65
61
  };
66
- //# sourceMappingURL=index-305a03f4.mjs.map
62
+ //# sourceMappingURL=Login-4e7ab11a.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Login-4e7ab11a.mjs","sources":["../../ee/admin/src/pages/AuthPage/components/Login.tsx"],"sourcesContent":["import { Box, Divider, Flex, Typography } from '@strapi/design-system';\nimport { useFetchClient } from '@strapi/helper-plugin';\nimport { useIntl } from 'react-intl';\nimport { useQuery } from 'react-query';\nimport styled from 'styled-components';\n\nimport { Login, LoginProps } from '../../../../../../admin/src/pages/Auth/components/Login';\n\nimport { SSOProviders } from './SSOProviders';\n\nconst DividerFull = styled(Divider)`\n flex: 1;\n`;\n\nconst LoginEE = (loginProps: LoginProps) => {\n const { formatMessage } = useIntl();\n const { get } = useFetchClient();\n const { isLoading, data: providers = [] } = useQuery(\n ['ee', 'providers'],\n async () => {\n const { data } = await get('/admin/providers');\n\n return data;\n },\n {\n enabled: window.strapi.features.isEnabled(window.strapi.features.SSO),\n }\n );\n\n if (\n !window.strapi.features.isEnabled(window.strapi.features.SSO) ||\n (!isLoading && providers.length === 0)\n ) {\n return <Login {...loginProps} />;\n }\n\n return (\n <Login {...loginProps}>\n <Box paddingTop={7}>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={7}>\n <Flex>\n <DividerFull />\n <Box paddingLeft={3} paddingRight={3}>\n <Typography variant=\"sigma\" textColor=\"neutral600\">\n {formatMessage({ id: 'Auth.login.sso.divider' })}\n </Typography>\n </Box>\n <DividerFull />\n </Flex>\n <SSOProviders providers={providers} displayAllProviders={false} />\n </Flex>\n </Box>\n </Login>\n );\n};\n\nexport { LoginEE };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUA,MAAM,cAAc,OAAO,OAAO;AAAA;AAAA;AAI5B,MAAA,UAAU,CAAC,eAA2B;AACpC,QAAA,EAAE,kBAAkB;AACpB,QAAA,EAAE,QAAQ;AAChB,QAAM,EAAE,WAAW,MAAM,YAAY,CAAA,EAAO,IAAA;AAAA,IAC1C,CAAC,MAAM,WAAW;AAAA,IAClB,YAAY;AACV,YAAM,EAAE,KAAS,IAAA,MAAM,IAAI,kBAAkB;AAEtC,aAAA;AAAA,IACT;AAAA,IACA;AAAA,MACE,SAAS,OAAO,OAAO,SAAS,UAAU,OAAO,OAAO,SAAS,GAAG;AAAA,IACtE;AAAA,EAAA;AAGF,MACE,CAAC,OAAO,OAAO,SAAS,UAAU,OAAO,OAAO,SAAS,GAAG,KAC3D,CAAC,aAAa,UAAU,WAAW,GACpC;AACO,WAAA,oBAAC,OAAO,EAAA,GAAG,WAAY,CAAA;AAAA,EAChC;AAEA,SACG,oBAAA,OAAA,EAAO,GAAG,YACT,8BAAC,KAAI,EAAA,YAAY,GACf,UAAA,qBAAC,QAAK,WAAU,UAAS,YAAW,WAAU,KAAK,GACjD,UAAA;AAAA,IAAA,qBAAC,MACC,EAAA,UAAA;AAAA,MAAA,oBAAC,aAAY,EAAA;AAAA,0BACZ,KAAI,EAAA,aAAa,GAAG,cAAc,GACjC,8BAAC,YAAW,EAAA,SAAQ,SAAQ,WAAU,cACnC,UAAc,cAAA,EAAE,IAAI,yBAAyB,CAAC,EACjD,CAAA,GACF;AAAA,0BACC,aAAY,EAAA;AAAA,IAAA,GACf;AAAA,IACC,oBAAA,cAAA,EAAa,WAAsB,qBAAqB,MAAO,CAAA;AAAA,EAAA,GAClE,GACF,EACF,CAAA;AAEJ;"}