@strapi/admin 5.33.3 → 5.34.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 (337) hide show
  1. package/dist/admin/admin/src/components/GradientBadge.js +18 -2
  2. package/dist/admin/admin/src/components/GradientBadge.js.map +1 -1
  3. package/dist/admin/admin/src/components/GradientBadge.mjs +19 -3
  4. package/dist/admin/admin/src/components/GradientBadge.mjs.map +1 -1
  5. package/dist/admin/admin/src/components/Layouts/ActionLayout.js +8 -1
  6. package/dist/admin/admin/src/components/Layouts/ActionLayout.js.map +1 -1
  7. package/dist/admin/admin/src/components/Layouts/ActionLayout.mjs +8 -1
  8. package/dist/admin/admin/src/components/Layouts/ActionLayout.mjs.map +1 -1
  9. package/dist/admin/admin/src/components/Layouts/ContentLayout.js +4 -0
  10. package/dist/admin/admin/src/components/Layouts/ContentLayout.js.map +1 -1
  11. package/dist/admin/admin/src/components/Layouts/ContentLayout.mjs +4 -0
  12. package/dist/admin/admin/src/components/Layouts/ContentLayout.mjs.map +1 -1
  13. package/dist/admin/admin/src/components/Layouts/HeaderLayout.js +80 -49
  14. package/dist/admin/admin/src/components/Layouts/HeaderLayout.js.map +1 -1
  15. package/dist/admin/admin/src/components/Layouts/HeaderLayout.mjs +81 -50
  16. package/dist/admin/admin/src/components/Layouts/HeaderLayout.mjs.map +1 -1
  17. package/dist/admin/admin/src/components/LeftMenu.js +3 -1
  18. package/dist/admin/admin/src/components/LeftMenu.js.map +1 -1
  19. package/dist/admin/admin/src/components/LeftMenu.mjs +3 -1
  20. package/dist/admin/admin/src/components/LeftMenu.mjs.map +1 -1
  21. package/dist/admin/admin/src/components/MainNav/MainNavLinks.js +32 -30
  22. package/dist/admin/admin/src/components/MainNav/MainNavLinks.js.map +1 -1
  23. package/dist/admin/admin/src/components/MainNav/MainNavLinks.mjs +32 -30
  24. package/dist/admin/admin/src/components/MainNav/MainNavLinks.mjs.map +1 -1
  25. package/dist/admin/admin/src/components/MainNav/NavBrand.js +38 -31
  26. package/dist/admin/admin/src/components/MainNav/NavBrand.js.map +1 -1
  27. package/dist/admin/admin/src/components/MainNav/NavBrand.mjs +38 -31
  28. package/dist/admin/admin/src/components/MainNav/NavBrand.mjs.map +1 -1
  29. package/dist/admin/admin/src/components/MainNav/NavBurgerMenu.js +14 -3
  30. package/dist/admin/admin/src/components/MainNav/NavBurgerMenu.js.map +1 -1
  31. package/dist/admin/admin/src/components/MainNav/NavBurgerMenu.mjs +15 -4
  32. package/dist/admin/admin/src/components/MainNav/NavBurgerMenu.mjs.map +1 -1
  33. package/dist/admin/admin/src/components/MainNav/NavLink.js +51 -4
  34. package/dist/admin/admin/src/components/MainNav/NavLink.js.map +1 -1
  35. package/dist/admin/admin/src/components/MainNav/NavLink.mjs +52 -5
  36. package/dist/admin/admin/src/components/MainNav/NavLink.mjs.map +1 -1
  37. package/dist/admin/admin/src/components/NpsSurvey.js +1 -2
  38. package/dist/admin/admin/src/components/NpsSurvey.js.map +1 -1
  39. package/dist/admin/admin/src/components/NpsSurvey.mjs +1 -2
  40. package/dist/admin/admin/src/components/NpsSurvey.mjs.map +1 -1
  41. package/dist/admin/admin/src/components/SubNav.js +44 -18
  42. package/dist/admin/admin/src/components/SubNav.js.map +1 -1
  43. package/dist/admin/admin/src/components/SubNav.mjs +45 -19
  44. package/dist/admin/admin/src/components/SubNav.mjs.map +1 -1
  45. package/dist/admin/admin/src/constants/theme.js +3 -1
  46. package/dist/admin/admin/src/constants/theme.js.map +1 -1
  47. package/dist/admin/admin/src/constants/theme.mjs +3 -2
  48. package/dist/admin/admin/src/constants/theme.mjs.map +1 -1
  49. package/dist/admin/admin/src/core/apis/router.js.map +1 -1
  50. package/dist/admin/admin/src/core/apis/router.mjs.map +1 -1
  51. package/dist/admin/admin/src/features/Tracking.js +1 -2
  52. package/dist/admin/admin/src/features/Tracking.js.map +1 -1
  53. package/dist/admin/admin/src/features/Tracking.mjs +1 -2
  54. package/dist/admin/admin/src/features/Tracking.mjs.map +1 -1
  55. package/dist/admin/admin/src/hooks/useMenu.js +2 -1
  56. package/dist/admin/admin/src/hooks/useMenu.js.map +1 -1
  57. package/dist/admin/admin/src/hooks/useMenu.mjs +2 -1
  58. package/dist/admin/admin/src/hooks/useMenu.mjs.map +1 -1
  59. package/dist/admin/admin/src/pages/Auth/components/Register.js +2 -1
  60. package/dist/admin/admin/src/pages/Auth/components/Register.js.map +1 -1
  61. package/dist/admin/admin/src/pages/Auth/components/Register.mjs +2 -1
  62. package/dist/admin/admin/src/pages/Auth/components/Register.mjs.map +1 -1
  63. package/dist/admin/admin/src/pages/Home/HomePage.js +1 -0
  64. package/dist/admin/admin/src/pages/Home/HomePage.js.map +1 -1
  65. package/dist/admin/admin/src/pages/Home/HomePage.mjs +1 -0
  66. package/dist/admin/admin/src/pages/Home/HomePage.mjs.map +1 -1
  67. package/dist/admin/admin/src/pages/ProfilePage.js +1 -0
  68. package/dist/admin/admin/src/pages/ProfilePage.js.map +1 -1
  69. package/dist/admin/admin/src/pages/ProfilePage.mjs +1 -0
  70. package/dist/admin/admin/src/pages/ProfilePage.mjs.map +1 -1
  71. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.js +7 -2
  72. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.js.map +1 -1
  73. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.mjs +7 -2
  74. package/dist/admin/admin/src/pages/Settings/components/SettingsNav.mjs.map +1 -1
  75. package/dist/admin/admin/src/pages/Settings/components/Tokens/FormHead.js +44 -26
  76. package/dist/admin/admin/src/pages/Settings/components/Tokens/FormHead.js.map +1 -1
  77. package/dist/admin/admin/src/pages/Settings/components/Tokens/FormHead.mjs +45 -27
  78. package/dist/admin/admin/src/pages/Settings/components/Tokens/FormHead.mjs.map +1 -1
  79. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/ListView.js +1 -0
  80. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/ListView.js.map +1 -1
  81. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/ListView.mjs +1 -0
  82. package/dist/admin/admin/src/pages/Settings/pages/ApiTokens/ListView.mjs.map +1 -1
  83. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.js +1 -0
  84. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.js.map +1 -1
  85. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.mjs +1 -0
  86. package/dist/admin/admin/src/pages/Settings/pages/ApplicationInfo/ApplicationInfoPage.mjs.map +1 -1
  87. package/dist/admin/admin/src/pages/Settings/pages/Roles/CreatePage.js +3 -0
  88. package/dist/admin/admin/src/pages/Settings/pages/Roles/CreatePage.js.map +1 -1
  89. package/dist/admin/admin/src/pages/Settings/pages/Roles/CreatePage.mjs +3 -0
  90. package/dist/admin/admin/src/pages/Settings/pages/Roles/CreatePage.mjs.map +1 -1
  91. package/dist/admin/admin/src/pages/Settings/pages/Roles/EditPage.js +9 -11
  92. package/dist/admin/admin/src/pages/Settings/pages/Roles/EditPage.js.map +1 -1
  93. package/dist/admin/admin/src/pages/Settings/pages/Roles/EditPage.mjs +10 -12
  94. package/dist/admin/admin/src/pages/Settings/pages/Roles/EditPage.mjs.map +1 -1
  95. package/dist/admin/admin/src/pages/Settings/pages/Roles/ListPage.js +1 -0
  96. package/dist/admin/admin/src/pages/Settings/pages/Roles/ListPage.js.map +1 -1
  97. package/dist/admin/admin/src/pages/Settings/pages/Roles/ListPage.mjs +1 -0
  98. package/dist/admin/admin/src/pages/Settings/pages/Roles/ListPage.mjs.map +1 -1
  99. package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/ListView.js +1 -0
  100. package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/ListView.js.map +1 -1
  101. package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/ListView.mjs +1 -0
  102. package/dist/admin/admin/src/pages/Settings/pages/TransferTokens/ListView.mjs.map +1 -1
  103. package/dist/admin/admin/src/pages/Settings/pages/Users/EditPage.js +1 -0
  104. package/dist/admin/admin/src/pages/Settings/pages/Users/EditPage.js.map +1 -1
  105. package/dist/admin/admin/src/pages/Settings/pages/Users/EditPage.mjs +1 -0
  106. package/dist/admin/admin/src/pages/Settings/pages/Users/EditPage.mjs.map +1 -1
  107. package/dist/admin/admin/src/pages/Settings/pages/Users/components/CreateActionCE.js +1 -0
  108. package/dist/admin/admin/src/pages/Settings/pages/Users/components/CreateActionCE.js.map +1 -1
  109. package/dist/admin/admin/src/pages/Settings/pages/Users/components/CreateActionCE.mjs +1 -0
  110. package/dist/admin/admin/src/pages/Settings/pages/Users/components/CreateActionCE.mjs.map +1 -1
  111. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/ListPage.js +1 -0
  112. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/ListPage.js.map +1 -1
  113. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/ListPage.mjs +1 -0
  114. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/ListPage.mjs.map +1 -1
  115. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/WebhookForm.js +3 -0
  116. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/WebhookForm.js.map +1 -1
  117. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/WebhookForm.mjs +3 -0
  118. package/dist/admin/admin/src/pages/Settings/pages/Webhooks/components/WebhookForm.mjs.map +1 -1
  119. package/dist/admin/admin/src/render.js +0 -1
  120. package/dist/admin/admin/src/render.js.map +1 -1
  121. package/dist/admin/admin/src/render.mjs +0 -1
  122. package/dist/admin/admin/src/render.mjs.map +1 -1
  123. package/dist/admin/admin/src/router.js +0 -9
  124. package/dist/admin/admin/src/router.js.map +1 -1
  125. package/dist/admin/admin/src/router.mjs +0 -9
  126. package/dist/admin/admin/src/router.mjs.map +1 -1
  127. package/dist/admin/admin/src/translations/ar.json.js +0 -42
  128. package/dist/admin/admin/src/translations/ar.json.js.map +1 -1
  129. package/dist/admin/admin/src/translations/ar.json.mjs +0 -42
  130. package/dist/admin/admin/src/translations/ar.json.mjs.map +1 -1
  131. package/dist/admin/admin/src/translations/ca.json.js +0 -21
  132. package/dist/admin/admin/src/translations/ca.json.js.map +1 -1
  133. package/dist/admin/admin/src/translations/ca.json.mjs +0 -21
  134. package/dist/admin/admin/src/translations/ca.json.mjs.map +1 -1
  135. package/dist/admin/admin/src/translations/de.json.js +422 -66
  136. package/dist/admin/admin/src/translations/de.json.js.map +1 -1
  137. package/dist/admin/admin/src/translations/de.json.mjs +419 -67
  138. package/dist/admin/admin/src/translations/de.json.mjs.map +1 -1
  139. package/dist/admin/admin/src/translations/dk.json.js +0 -6
  140. package/dist/admin/admin/src/translations/dk.json.js.map +1 -1
  141. package/dist/admin/admin/src/translations/dk.json.mjs +0 -6
  142. package/dist/admin/admin/src/translations/dk.json.mjs.map +1 -1
  143. package/dist/admin/admin/src/translations/en.json.js +0 -44
  144. package/dist/admin/admin/src/translations/en.json.js.map +1 -1
  145. package/dist/admin/admin/src/translations/en.json.mjs +0 -44
  146. package/dist/admin/admin/src/translations/en.json.mjs.map +1 -1
  147. package/dist/admin/admin/src/translations/es.json.js +0 -25
  148. package/dist/admin/admin/src/translations/es.json.js.map +1 -1
  149. package/dist/admin/admin/src/translations/es.json.mjs +0 -25
  150. package/dist/admin/admin/src/translations/es.json.mjs.map +1 -1
  151. package/dist/admin/admin/src/translations/eu.json.js +0 -43
  152. package/dist/admin/admin/src/translations/eu.json.js.map +1 -1
  153. package/dist/admin/admin/src/translations/eu.json.mjs +0 -43
  154. package/dist/admin/admin/src/translations/eu.json.mjs.map +1 -1
  155. package/dist/admin/admin/src/translations/fr.json.js +0 -6
  156. package/dist/admin/admin/src/translations/fr.json.js.map +1 -1
  157. package/dist/admin/admin/src/translations/fr.json.mjs +0 -6
  158. package/dist/admin/admin/src/translations/fr.json.mjs.map +1 -1
  159. package/dist/admin/admin/src/translations/gu.json.js +0 -21
  160. package/dist/admin/admin/src/translations/gu.json.js.map +1 -1
  161. package/dist/admin/admin/src/translations/gu.json.mjs +0 -21
  162. package/dist/admin/admin/src/translations/gu.json.mjs.map +1 -1
  163. package/dist/admin/admin/src/translations/hi.json.js +0 -21
  164. package/dist/admin/admin/src/translations/hi.json.js.map +1 -1
  165. package/dist/admin/admin/src/translations/hi.json.mjs +0 -21
  166. package/dist/admin/admin/src/translations/hi.json.mjs.map +1 -1
  167. package/dist/admin/admin/src/translations/hu.json.js +0 -43
  168. package/dist/admin/admin/src/translations/hu.json.js.map +1 -1
  169. package/dist/admin/admin/src/translations/hu.json.mjs +0 -43
  170. package/dist/admin/admin/src/translations/hu.json.mjs.map +1 -1
  171. package/dist/admin/admin/src/translations/it.json.js +613 -3
  172. package/dist/admin/admin/src/translations/it.json.js.map +1 -1
  173. package/dist/admin/admin/src/translations/it.json.mjs +605 -4
  174. package/dist/admin/admin/src/translations/it.json.mjs.map +1 -1
  175. package/dist/admin/admin/src/translations/ja.json.js +0 -6
  176. package/dist/admin/admin/src/translations/ja.json.js.map +1 -1
  177. package/dist/admin/admin/src/translations/ja.json.mjs +0 -6
  178. package/dist/admin/admin/src/translations/ja.json.mjs.map +1 -1
  179. package/dist/admin/admin/src/translations/ko.json.js +0 -6
  180. package/dist/admin/admin/src/translations/ko.json.js.map +1 -1
  181. package/dist/admin/admin/src/translations/ko.json.mjs +0 -6
  182. package/dist/admin/admin/src/translations/ko.json.mjs.map +1 -1
  183. package/dist/admin/admin/src/translations/ml.json.js +0 -21
  184. package/dist/admin/admin/src/translations/ml.json.js.map +1 -1
  185. package/dist/admin/admin/src/translations/ml.json.mjs +0 -21
  186. package/dist/admin/admin/src/translations/ml.json.mjs.map +1 -1
  187. package/dist/admin/admin/src/translations/nl.json.js +0 -39
  188. package/dist/admin/admin/src/translations/nl.json.js.map +1 -1
  189. package/dist/admin/admin/src/translations/nl.json.mjs +0 -39
  190. package/dist/admin/admin/src/translations/nl.json.mjs.map +1 -1
  191. package/dist/admin/admin/src/translations/pl.json.js +0 -21
  192. package/dist/admin/admin/src/translations/pl.json.js.map +1 -1
  193. package/dist/admin/admin/src/translations/pl.json.mjs +0 -21
  194. package/dist/admin/admin/src/translations/pl.json.mjs.map +1 -1
  195. package/dist/admin/admin/src/translations/pt-BR.json.js +0 -25
  196. package/dist/admin/admin/src/translations/pt-BR.json.js.map +1 -1
  197. package/dist/admin/admin/src/translations/pt-BR.json.mjs +0 -25
  198. package/dist/admin/admin/src/translations/pt-BR.json.mjs.map +1 -1
  199. package/dist/admin/admin/src/translations/ru.json.js +0 -44
  200. package/dist/admin/admin/src/translations/ru.json.js.map +1 -1
  201. package/dist/admin/admin/src/translations/ru.json.mjs +0 -44
  202. package/dist/admin/admin/src/translations/ru.json.mjs.map +1 -1
  203. package/dist/admin/admin/src/translations/sa.json.js +0 -21
  204. package/dist/admin/admin/src/translations/sa.json.js.map +1 -1
  205. package/dist/admin/admin/src/translations/sa.json.mjs +0 -21
  206. package/dist/admin/admin/src/translations/sa.json.mjs.map +1 -1
  207. package/dist/admin/admin/src/translations/sv.json.js +0 -39
  208. package/dist/admin/admin/src/translations/sv.json.js.map +1 -1
  209. package/dist/admin/admin/src/translations/sv.json.mjs +0 -39
  210. package/dist/admin/admin/src/translations/sv.json.mjs.map +1 -1
  211. package/dist/admin/admin/src/translations/tr.json.js +0 -39
  212. package/dist/admin/admin/src/translations/tr.json.js.map +1 -1
  213. package/dist/admin/admin/src/translations/tr.json.mjs +0 -39
  214. package/dist/admin/admin/src/translations/tr.json.mjs.map +1 -1
  215. package/dist/admin/admin/src/translations/uk.json.js +0 -44
  216. package/dist/admin/admin/src/translations/uk.json.js.map +1 -1
  217. package/dist/admin/admin/src/translations/uk.json.mjs +0 -44
  218. package/dist/admin/admin/src/translations/uk.json.mjs.map +1 -1
  219. package/dist/admin/admin/src/translations/vi.json.js +0 -44
  220. package/dist/admin/admin/src/translations/vi.json.js.map +1 -1
  221. package/dist/admin/admin/src/translations/vi.json.mjs +0 -44
  222. package/dist/admin/admin/src/translations/vi.json.mjs.map +1 -1
  223. package/dist/admin/admin/src/translations/zh-Hans.json.js +0 -44
  224. package/dist/admin/admin/src/translations/zh-Hans.json.js.map +1 -1
  225. package/dist/admin/admin/src/translations/zh-Hans.json.mjs +0 -44
  226. package/dist/admin/admin/src/translations/zh-Hans.json.mjs.map +1 -1
  227. package/dist/admin/admin/src/translations/zh.json.js +0 -39
  228. package/dist/admin/admin/src/translations/zh.json.js.map +1 -1
  229. package/dist/admin/admin/src/translations/zh.json.mjs +0 -39
  230. package/dist/admin/admin/src/translations/zh.json.mjs.map +1 -1
  231. package/dist/admin/admin/tests/mockData.js +0 -1413
  232. package/dist/admin/admin/tests/mockData.js.map +1 -1
  233. package/dist/admin/admin/tests/mockData.mjs +0 -1413
  234. package/dist/admin/admin/tests/mockData.mjs.map +1 -1
  235. package/dist/admin/admin/tests/server.js +0 -99
  236. package/dist/admin/admin/tests/server.js.map +1 -1
  237. package/dist/admin/admin/tests/server.mjs +0 -80
  238. package/dist/admin/admin/tests/server.mjs.map +1 -1
  239. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.js +1 -0
  240. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.js.map +1 -1
  241. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.mjs +1 -0
  242. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/SingleSignOnPage.mjs.map +1 -1
  243. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/components/CreateActionEE.js +2 -0
  244. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/components/CreateActionEE.js.map +1 -1
  245. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/components/CreateActionEE.mjs +2 -0
  246. package/dist/admin/ee/admin/src/pages/SettingsPage/pages/Users/components/CreateActionEE.mjs.map +1 -1
  247. package/dist/admin/src/components/MainNav/NavLink.d.ts +2 -1
  248. package/dist/admin/src/constants/theme.d.ts +3 -2
  249. package/dist/admin/src/core/apis/router.d.ts +1 -0
  250. package/dist/admin/src/features/Tracking.d.ts +1 -2
  251. package/dist/admin/src/hooks/useMenu.d.ts +1 -0
  252. package/dist/admin/src/services/admin.d.ts +0 -1
  253. package/dist/admin/tests/mockData.d.ts +0 -972
  254. package/dist/ee/server/src/controllers/admin.d.ts +0 -1
  255. package/dist/ee/server/src/controllers/admin.d.ts.map +1 -1
  256. package/dist/ee/server/src/controllers/index.d.ts +0 -1
  257. package/dist/ee/server/src/controllers/index.d.ts.map +1 -1
  258. package/dist/ee/server/src/index.d.ts +0 -1
  259. package/dist/ee/server/src/index.d.ts.map +1 -1
  260. package/dist/server/ee/server/src/controllers/admin.js +0 -1
  261. package/dist/server/ee/server/src/controllers/admin.js.map +1 -1
  262. package/dist/server/ee/server/src/controllers/admin.mjs +0 -1
  263. package/dist/server/ee/server/src/controllers/admin.mjs.map +1 -1
  264. package/dist/server/server/src/controllers/admin.js +0 -2
  265. package/dist/server/server/src/controllers/admin.js.map +1 -1
  266. package/dist/server/server/src/controllers/admin.mjs +0 -2
  267. package/dist/server/server/src/controllers/admin.mjs.map +1 -1
  268. package/dist/server/server/src/services/permission/permissions-manager/permission-fields.js +53 -0
  269. package/dist/server/server/src/services/permission/permissions-manager/permission-fields.js.map +1 -0
  270. package/dist/server/server/src/services/permission/permissions-manager/permission-fields.mjs +51 -0
  271. package/dist/server/server/src/services/permission/permissions-manager/permission-fields.mjs.map +1 -0
  272. package/dist/server/server/src/services/permission/permissions-manager/sanitize.js +7 -8
  273. package/dist/server/server/src/services/permission/permissions-manager/sanitize.js.map +1 -1
  274. package/dist/server/server/src/services/permission/permissions-manager/sanitize.mjs +10 -11
  275. package/dist/server/server/src/services/permission/permissions-manager/sanitize.mjs.map +1 -1
  276. package/dist/server/server/src/services/permission/permissions-manager/validate.js +7 -8
  277. package/dist/server/server/src/services/permission/permissions-manager/validate.js.map +1 -1
  278. package/dist/server/server/src/services/permission/permissions-manager/validate.mjs +10 -11
  279. package/dist/server/server/src/services/permission/permissions-manager/validate.mjs.map +1 -1
  280. package/dist/server/src/controllers/admin.d.ts +0 -1
  281. package/dist/server/src/controllers/admin.d.ts.map +1 -1
  282. package/dist/server/src/controllers/index.d.ts +0 -1
  283. package/dist/server/src/controllers/index.d.ts.map +1 -1
  284. package/dist/server/src/index.d.ts +0 -1
  285. package/dist/server/src/index.d.ts.map +1 -1
  286. package/dist/server/src/services/permission/permissions-manager/permission-fields.d.ts +21 -0
  287. package/dist/server/src/services/permission/permissions-manager/permission-fields.d.ts.map +1 -0
  288. package/dist/server/src/services/permission/permissions-manager/sanitize.d.ts.map +1 -1
  289. package/dist/server/src/services/permission/permissions-manager/validate.d.ts.map +1 -1
  290. package/dist/shared/contracts/admin.d.ts +0 -1
  291. package/dist/shared/contracts/admin.d.ts.map +1 -1
  292. package/package.json +9 -9
  293. package/dist/admin/admin/src/pages/Marketplace/MarketplacePage.js +0 -339
  294. package/dist/admin/admin/src/pages/Marketplace/MarketplacePage.js.map +0 -1
  295. package/dist/admin/admin/src/pages/Marketplace/MarketplacePage.mjs +0 -317
  296. package/dist/admin/admin/src/pages/Marketplace/MarketplacePage.mjs.map +0 -1
  297. package/dist/admin/admin/src/pages/Marketplace/components/NpmPackageCard.js +0 -329
  298. package/dist/admin/admin/src/pages/Marketplace/components/NpmPackageCard.js.map +0 -1
  299. package/dist/admin/admin/src/pages/Marketplace/components/NpmPackageCard.mjs +0 -308
  300. package/dist/admin/admin/src/pages/Marketplace/components/NpmPackageCard.mjs.map +0 -1
  301. package/dist/admin/admin/src/pages/Marketplace/components/NpmPackagesFilters.js +0 -121
  302. package/dist/admin/admin/src/pages/Marketplace/components/NpmPackagesFilters.js.map +0 -1
  303. package/dist/admin/admin/src/pages/Marketplace/components/NpmPackagesFilters.mjs +0 -119
  304. package/dist/admin/admin/src/pages/Marketplace/components/NpmPackagesFilters.mjs.map +0 -1
  305. package/dist/admin/admin/src/pages/Marketplace/components/NpmPackagesGrid.js +0 -93
  306. package/dist/admin/admin/src/pages/Marketplace/components/NpmPackagesGrid.js.map +0 -1
  307. package/dist/admin/admin/src/pages/Marketplace/components/NpmPackagesGrid.mjs +0 -91
  308. package/dist/admin/admin/src/pages/Marketplace/components/NpmPackagesGrid.mjs.map +0 -1
  309. package/dist/admin/admin/src/pages/Marketplace/components/OfflineLayout.js +0 -81
  310. package/dist/admin/admin/src/pages/Marketplace/components/OfflineLayout.js.map +0 -1
  311. package/dist/admin/admin/src/pages/Marketplace/components/OfflineLayout.mjs +0 -79
  312. package/dist/admin/admin/src/pages/Marketplace/components/OfflineLayout.mjs.map +0 -1
  313. package/dist/admin/admin/src/pages/Marketplace/components/PageHeader.js +0 -38
  314. package/dist/admin/admin/src/pages/Marketplace/components/PageHeader.js.map +0 -1
  315. package/dist/admin/admin/src/pages/Marketplace/components/PageHeader.mjs +0 -36
  316. package/dist/admin/admin/src/pages/Marketplace/components/PageHeader.mjs.map +0 -1
  317. package/dist/admin/admin/src/pages/Marketplace/components/SortSelect.js +0 -85
  318. package/dist/admin/admin/src/pages/Marketplace/components/SortSelect.js.map +0 -1
  319. package/dist/admin/admin/src/pages/Marketplace/components/SortSelect.mjs +0 -83
  320. package/dist/admin/admin/src/pages/Marketplace/components/SortSelect.mjs.map +0 -1
  321. package/dist/admin/admin/src/pages/Marketplace/hooks/useMarketplaceData.js +0 -134
  322. package/dist/admin/admin/src/pages/Marketplace/hooks/useMarketplaceData.js.map +0 -1
  323. package/dist/admin/admin/src/pages/Marketplace/hooks/useMarketplaceData.mjs +0 -113
  324. package/dist/admin/admin/src/pages/Marketplace/hooks/useMarketplaceData.mjs.map +0 -1
  325. package/dist/admin/admin/src/pages/Marketplace/hooks/useNavigatorOnline.js +0 -44
  326. package/dist/admin/admin/src/pages/Marketplace/hooks/useNavigatorOnline.js.map +0 -1
  327. package/dist/admin/admin/src/pages/Marketplace/hooks/useNavigatorOnline.mjs +0 -23
  328. package/dist/admin/admin/src/pages/Marketplace/hooks/useNavigatorOnline.mjs.map +0 -1
  329. package/dist/admin/src/pages/Marketplace/MarketplacePage.d.ts +0 -19
  330. package/dist/admin/src/pages/Marketplace/components/NpmPackageCard.d.ts +0 -13
  331. package/dist/admin/src/pages/Marketplace/components/NpmPackagesFilters.d.ts +0 -13
  332. package/dist/admin/src/pages/Marketplace/components/NpmPackagesGrid.d.ts +0 -13
  333. package/dist/admin/src/pages/Marketplace/components/OfflineLayout.d.ts +0 -2
  334. package/dist/admin/src/pages/Marketplace/components/PageHeader.d.ts +0 -8
  335. package/dist/admin/src/pages/Marketplace/components/SortSelect.d.ts +0 -51
  336. package/dist/admin/src/pages/Marketplace/hooks/useMarketplaceData.d.ts +0 -93
  337. package/dist/admin/src/pages/Marketplace/hooks/useNavigatorOnline.d.ts +0 -5
@@ -1,83 +0,0 @@
1
- import { jsx } from 'react/jsx-runtime';
2
- import { Box, SingleSelect, SingleSelectOption } from '@strapi/design-system';
3
- import { useIntl } from 'react-intl';
4
- import { styled } from 'styled-components';
5
-
6
- const SORT_TYPES = {
7
- 'name:asc': {
8
- selected: {
9
- id: 'admin.pages.MarketPlacePage.sort.alphabetical.selected',
10
- defaultMessage: 'Sort by alphabetical order'
11
- },
12
- option: {
13
- id: 'admin.pages.MarketPlacePage.sort.alphabetical',
14
- defaultMessage: 'Alphabetical order'
15
- }
16
- },
17
- 'submissionDate:desc': {
18
- selected: {
19
- id: 'admin.pages.MarketPlacePage.sort.newest.selected',
20
- defaultMessage: 'Sort by newest'
21
- },
22
- option: {
23
- id: 'admin.pages.MarketPlacePage.sort.newest',
24
- defaultMessage: 'Newest'
25
- }
26
- },
27
- 'githubStars:desc': {
28
- selected: {
29
- id: 'admin.pages.MarketPlacePage.sort.githubStars.selected',
30
- defaultMessage: 'Sort by GitHub stars'
31
- },
32
- option: {
33
- id: 'admin.pages.MarketPlacePage.sort.githubStars',
34
- defaultMessage: 'Number of GitHub stars'
35
- }
36
- },
37
- 'npmDownloads:desc': {
38
- selected: {
39
- id: 'admin.pages.MarketPlacePage.sort.npmDownloads.selected',
40
- defaultMessage: 'Sort by npm downloads'
41
- },
42
- option: {
43
- id: 'admin.pages.MarketPlacePage.sort.npmDownloads',
44
- defaultMessage: 'Number of downloads'
45
- }
46
- }
47
- };
48
- const SortSelect = ({ sortQuery, handleSelectChange })=>{
49
- const { formatMessage } = useIntl();
50
- return /*#__PURE__*/ jsx(SelectWrapper, {
51
- children: /*#__PURE__*/ jsx(SingleSelect, {
52
- value: sortQuery,
53
- customizeContent: ()=>formatMessage(SORT_TYPES[sortQuery].selected),
54
- onChange: (sortName)=>{
55
- // @ts-expect-error – in V2 design-system we'll only ever return strings.
56
- handleSelectChange({
57
- sort: sortName
58
- });
59
- },
60
- "aria-label": formatMessage({
61
- id: 'admin.pages.MarketPlacePage.sort.label',
62
- defaultMessage: 'Sort by'
63
- }),
64
- size: "S",
65
- children: Object.entries(SORT_TYPES).map(([sortName, messages])=>{
66
- return /*#__PURE__*/ jsx(SingleSelectOption, {
67
- value: sortName,
68
- children: formatMessage(messages.option)
69
- }, sortName);
70
- })
71
- })
72
- });
73
- };
74
- const SelectWrapper = styled(Box)`
75
- font-weight: ${({ theme })=>theme.fontWeights.semiBold};
76
-
77
- span {
78
- font-size: ${({ theme })=>theme.fontSizes[1]};
79
- }
80
- `;
81
-
82
- export { SortSelect };
83
- //# sourceMappingURL=SortSelect.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SortSelect.mjs","sources":["../../../../../../../admin/src/pages/Marketplace/components/SortSelect.tsx"],"sourcesContent":["import { Box, SingleSelectOption, SingleSelect, BoxComponent } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nconst SORT_TYPES = {\n 'name:asc': {\n selected: {\n id: 'admin.pages.MarketPlacePage.sort.alphabetical.selected',\n defaultMessage: 'Sort by alphabetical order',\n },\n option: {\n id: 'admin.pages.MarketPlacePage.sort.alphabetical',\n defaultMessage: 'Alphabetical order',\n },\n },\n 'submissionDate:desc': {\n selected: {\n id: 'admin.pages.MarketPlacePage.sort.newest.selected',\n defaultMessage: 'Sort by newest',\n },\n option: {\n id: 'admin.pages.MarketPlacePage.sort.newest',\n defaultMessage: 'Newest',\n },\n },\n 'githubStars:desc': {\n selected: {\n id: 'admin.pages.MarketPlacePage.sort.githubStars.selected',\n defaultMessage: 'Sort by GitHub stars',\n },\n option: {\n id: 'admin.pages.MarketPlacePage.sort.githubStars',\n defaultMessage: 'Number of GitHub stars',\n },\n },\n 'npmDownloads:desc': {\n selected: {\n id: 'admin.pages.MarketPlacePage.sort.npmDownloads.selected',\n defaultMessage: 'Sort by npm downloads',\n },\n option: {\n id: 'admin.pages.MarketPlacePage.sort.npmDownloads',\n defaultMessage: 'Number of downloads',\n },\n },\n} as const;\n\ninterface SortSelectProps {\n sortQuery: keyof typeof SORT_TYPES;\n handleSelectChange: (payload: { sort: string }) => void;\n}\n\nconst SortSelect = ({ sortQuery, handleSelectChange }: SortSelectProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <SelectWrapper>\n <SingleSelect\n value={sortQuery}\n customizeContent={() => formatMessage(SORT_TYPES[sortQuery].selected)}\n onChange={(sortName) => {\n // @ts-expect-error – in V2 design-system we'll only ever return strings.\n handleSelectChange({ sort: sortName });\n }}\n aria-label={formatMessage({\n id: 'admin.pages.MarketPlacePage.sort.label',\n defaultMessage: 'Sort by',\n })}\n size=\"S\"\n >\n {Object.entries(SORT_TYPES).map(([sortName, messages]) => {\n return (\n <SingleSelectOption key={sortName} value={sortName}>\n {formatMessage(messages.option)}\n </SingleSelectOption>\n );\n })}\n </SingleSelect>\n </SelectWrapper>\n );\n};\n\nconst SelectWrapper = styled<BoxComponent>(Box)`\n font-weight: ${({ theme }) => theme.fontWeights.semiBold};\n\n span {\n font-size: ${({ theme }) => theme.fontSizes[1]};\n }\n`;\n\nexport { SortSelect };\nexport type { SortSelectProps };\n"],"names":["SORT_TYPES","selected","id","defaultMessage","option","SortSelect","sortQuery","handleSelectChange","formatMessage","useIntl","_jsx","SelectWrapper","SingleSelect","value","customizeContent","onChange","sortName","sort","aria-label","size","Object","entries","map","messages","SingleSelectOption","styled","Box","theme","fontWeights","semiBold","fontSizes"],"mappings":";;;;;AAIA,MAAMA,UAAa,GAAA;IACjB,UAAY,EAAA;QACVC,QAAU,EAAA;YACRC,EAAI,EAAA,wDAAA;YACJC,cAAgB,EAAA;AAClB,SAAA;QACAC,MAAQ,EAAA;YACNF,EAAI,EAAA,+CAAA;YACJC,cAAgB,EAAA;AAClB;AACF,KAAA;IACA,qBAAuB,EAAA;QACrBF,QAAU,EAAA;YACRC,EAAI,EAAA,kDAAA;YACJC,cAAgB,EAAA;AAClB,SAAA;QACAC,MAAQ,EAAA;YACNF,EAAI,EAAA,yCAAA;YACJC,cAAgB,EAAA;AAClB;AACF,KAAA;IACA,kBAAoB,EAAA;QAClBF,QAAU,EAAA;YACRC,EAAI,EAAA,uDAAA;YACJC,cAAgB,EAAA;AAClB,SAAA;QACAC,MAAQ,EAAA;YACNF,EAAI,EAAA,8CAAA;YACJC,cAAgB,EAAA;AAClB;AACF,KAAA;IACA,mBAAqB,EAAA;QACnBF,QAAU,EAAA;YACRC,EAAI,EAAA,wDAAA;YACJC,cAAgB,EAAA;AAClB,SAAA;QACAC,MAAQ,EAAA;YACNF,EAAI,EAAA,+CAAA;YACJC,cAAgB,EAAA;AAClB;AACF;AACF,CAAA;AAOA,MAAME,aAAa,CAAC,EAAEC,SAAS,EAAEC,kBAAkB,EAAmB,GAAA;IACpE,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAE1B,IAAA,qBACEC,GAACC,CAAAA,aAAAA,EAAAA;AACC,QAAA,QAAA,gBAAAD,GAACE,CAAAA,YAAAA,EAAAA;YACCC,KAAOP,EAAAA,SAAAA;AACPQ,YAAAA,gBAAAA,EAAkB,IAAMN,aAAcR,CAAAA,UAAU,CAACM,SAAAA,CAAU,CAACL,QAAQ,CAAA;AACpEc,YAAAA,QAAAA,EAAU,CAACC,QAAAA,GAAAA;;gBAETT,kBAAmB,CAAA;oBAAEU,IAAMD,EAAAA;AAAS,iBAAA,CAAA;AACtC,aAAA;AACAE,YAAAA,YAAAA,EAAYV,aAAc,CAAA;gBACxBN,EAAI,EAAA,wCAAA;gBACJC,cAAgB,EAAA;AAClB,aAAA,CAAA;YACAgB,IAAK,EAAA,GAAA;sBAEJC,MAAOC,CAAAA,OAAO,CAACrB,UAAYsB,CAAAA,CAAAA,GAAG,CAAC,CAAC,CAACN,UAAUO,QAAS,CAAA,GAAA;AACnD,gBAAA,qBACEb,GAACc,CAAAA,kBAAAA,EAAAA;oBAAkCX,KAAOG,EAAAA,QAAAA;AACvCR,oBAAAA,QAAAA,EAAAA,aAAAA,CAAce,SAASnB,MAAM;AADPY,iBAAAA,EAAAA,QAAAA,CAAAA;AAI7B,aAAA;;;AAIR;AAEA,MAAML,aAAAA,GAAgBc,MAAqBC,CAAAA,GAAAA,CAAI;eAChC,EAAE,CAAC,EAAEC,KAAK,EAAE,GAAKA,KAAMC,CAAAA,WAAW,CAACC,QAAQ,CAAC;;;eAG5C,EAAE,CAAC,EAAEF,KAAK,EAAE,GAAKA,KAAMG,CAAAA,SAAS,CAAC,CAAA,CAAE,CAAC;;AAEnD,CAAC;;;;"}
@@ -1,134 +0,0 @@
1
- 'use strict';
2
-
3
- var designSystem = require('@strapi/design-system');
4
- var qs = require('qs');
5
- var reactIntl = require('react-intl');
6
- var reactQuery = require('react-query');
7
- var Notifications = require('../../../features/Notifications.js');
8
-
9
- function _interopNamespaceDefault(e) {
10
- var n = Object.create(null);
11
- if (e) {
12
- Object.keys(e).forEach(function (k) {
13
- if (k !== 'default') {
14
- var d = Object.getOwnPropertyDescriptor(e, k);
15
- Object.defineProperty(n, k, d.get ? d : {
16
- enumerable: true,
17
- get: function () { return e[k]; }
18
- });
19
- }
20
- });
21
- }
22
- n.default = e;
23
- return Object.freeze(n);
24
- }
25
-
26
- var qs__namespace = /*#__PURE__*/_interopNamespaceDefault(qs);
27
-
28
- const MARKETPLACE_API_URL = 'https://market-api.strapi.io';
29
- function useMarketplaceData({ npmPackageType, debouncedSearch, query, tabQuery, strapiVersion }) {
30
- const { notifyStatus } = designSystem.useNotifyAT();
31
- const { formatMessage } = reactIntl.useIntl();
32
- const { toggleNotification } = Notifications.useNotification();
33
- const marketplaceTitle = formatMessage({
34
- id: 'global.marketplace',
35
- defaultMessage: 'Marketplace'
36
- });
37
- const notifyMarketplaceLoad = ()=>{
38
- notifyStatus(formatMessage({
39
- id: 'app.utils.notify.data-loaded',
40
- defaultMessage: 'The {target} has loaded'
41
- }, {
42
- target: marketplaceTitle
43
- }));
44
- };
45
- const paginationParams = {
46
- page: query?.page || 1,
47
- pageSize: query?.pageSize || 24
48
- };
49
- const pluginParams = {
50
- ...tabQuery.plugin,
51
- pagination: paginationParams,
52
- search: debouncedSearch,
53
- version: strapiVersion
54
- };
55
- const { data: pluginsResponse, status: pluginsStatus } = reactQuery.useQuery([
56
- 'marketplace',
57
- 'plugins',
58
- pluginParams
59
- ], async ()=>{
60
- try {
61
- const queryString = qs__namespace.stringify(pluginParams);
62
- const res = await fetch(`${MARKETPLACE_API_URL}/plugins?${queryString}`);
63
- if (!res.ok) {
64
- throw new Error('Failed to fetch marketplace plugins.');
65
- }
66
- const data = await res.json();
67
- return data;
68
- } catch (error) {
69
- // silence
70
- }
71
- return null;
72
- }, {
73
- onSuccess () {
74
- notifyMarketplaceLoad();
75
- },
76
- onError () {
77
- toggleNotification({
78
- type: 'danger',
79
- message: formatMessage({
80
- id: 'notification.error',
81
- defaultMessage: 'An error occured'
82
- })
83
- });
84
- }
85
- });
86
- const providerParams = {
87
- ...tabQuery.provider,
88
- pagination: paginationParams,
89
- search: debouncedSearch,
90
- version: strapiVersion
91
- };
92
- const { data: providersResponse, status: providersStatus } = reactQuery.useQuery([
93
- 'marketplace',
94
- 'providers',
95
- providerParams
96
- ], async ()=>{
97
- const queryString = qs__namespace.stringify(providerParams);
98
- const res = await fetch(`${MARKETPLACE_API_URL}/providers?${queryString}`);
99
- if (!res.ok) {
100
- throw new Error('Failed to fetch marketplace providers.');
101
- }
102
- const data = await res.json();
103
- return data;
104
- }, {
105
- onSuccess () {
106
- notifyMarketplaceLoad();
107
- },
108
- onError () {
109
- toggleNotification({
110
- type: 'danger',
111
- message: formatMessage({
112
- id: 'notification.error',
113
- defaultMessage: 'An error occured'
114
- })
115
- });
116
- }
117
- });
118
- const npmPackageTypeResponse = npmPackageType === 'plugin' ? pluginsResponse : providersResponse;
119
- const possibleCollections = npmPackageTypeResponse?.meta.collections ?? {};
120
- const possibleCategories = pluginsResponse?.meta.categories ?? {};
121
- const { pagination } = npmPackageTypeResponse?.meta ?? {};
122
- return {
123
- pluginsResponse,
124
- providersResponse,
125
- pluginsStatus,
126
- providersStatus,
127
- possibleCollections,
128
- possibleCategories,
129
- pagination
130
- };
131
- }
132
-
133
- exports.useMarketplaceData = useMarketplaceData;
134
- //# sourceMappingURL=useMarketplaceData.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useMarketplaceData.js","sources":["../../../../../../../admin/src/pages/Marketplace/hooks/useMarketplaceData.ts"],"sourcesContent":["import { useNotifyAT } from '@strapi/design-system';\nimport * as qs from 'qs';\nimport { useIntl } from 'react-intl';\nimport { useQuery } from 'react-query';\n\nimport { useNotification } from '../../../features/Notifications';\n\nimport type { MarketplacePageQuery, NpmPackageType, TabQuery } from '../MarketplacePage';\n\nconst MARKETPLACE_API_URL = 'https://market-api.strapi.io';\n\ninterface UseMarketplaceDataParams {\n npmPackageType: NpmPackageType;\n debouncedSearch: string;\n query?: MarketplacePageQuery;\n tabQuery: TabQuery;\n strapiVersion?: string | null;\n}\n\ntype Collections =\n | 'Verified'\n | 'Made by the community'\n | 'Made by Strapi'\n | 'Made by official partners';\n\ntype Categories = 'Custom fields' | 'Deployment' | 'Monitoring';\n\ntype FilterTypes = 'categories' | 'collections';\n\ninterface Plugin {\n id: string;\n attributes: {\n name: string;\n description: string;\n slug: string;\n npmPackageName: string;\n npmPackageUrl: string;\n npmDownloads: number;\n repositoryUrl: string;\n githubStars: number;\n logo: {\n url: string;\n };\n developerName: string;\n validated: boolean;\n madeByStrapi: boolean;\n strapiCompatibility: string;\n submissionDate: string;\n collections: Collections[];\n categories: Categories[];\n strapiVersion: string;\n screenshots: Array<{\n url: string;\n }>;\n };\n}\n\ninterface Provider {\n id: string;\n attributes: {\n name: string;\n description: string;\n slug: string;\n npmPackageName: string;\n npmPackageUrl: string;\n npmDownloads: number;\n repositoryUrl: string;\n githubStars: number;\n pluginName: string;\n logo: {\n url: string;\n };\n developerName: string;\n validated: boolean;\n madeByStrapi: boolean;\n strapiCompatibility: string;\n strapiVersion?: never;\n submissionDate: string;\n collections: Collections[];\n };\n}\n\ninterface MarketplaceMeta {\n collections: Record<Collections, number>;\n pagination: {\n page: number;\n pageSize: number;\n pageCount: number;\n total: number;\n };\n}\n\ninterface MarketplaceResponse<TData extends Plugin | Provider> {\n data: TData[];\n meta: TData extends Provider\n ? MarketplaceMeta\n : MarketplaceMeta & { categories: Record<Categories, number> };\n}\n\nfunction useMarketplaceData({\n npmPackageType,\n debouncedSearch,\n query,\n tabQuery,\n strapiVersion,\n}: UseMarketplaceDataParams) {\n const { notifyStatus } = useNotifyAT();\n const { formatMessage } = useIntl();\n const { toggleNotification } = useNotification();\n const marketplaceTitle = formatMessage({\n id: 'global.marketplace',\n defaultMessage: 'Marketplace',\n });\n\n const notifyMarketplaceLoad = () => {\n notifyStatus(\n formatMessage(\n {\n id: 'app.utils.notify.data-loaded',\n defaultMessage: 'The {target} has loaded',\n },\n { target: marketplaceTitle }\n )\n );\n };\n\n const paginationParams = {\n page: query?.page || 1,\n pageSize: query?.pageSize || 24,\n };\n\n const pluginParams = {\n ...tabQuery.plugin,\n pagination: paginationParams,\n search: debouncedSearch,\n version: strapiVersion,\n };\n\n const { data: pluginsResponse, status: pluginsStatus } = useQuery(\n ['marketplace', 'plugins', pluginParams],\n async () => {\n try {\n const queryString = qs.stringify(pluginParams);\n const res = await fetch(`${MARKETPLACE_API_URL}/plugins?${queryString}`);\n\n if (!res.ok) {\n throw new Error('Failed to fetch marketplace plugins.');\n }\n\n const data = (await res.json()) as MarketplaceResponse<Plugin>;\n return data;\n } catch (error) {\n // silence\n }\n\n return null;\n },\n {\n onSuccess() {\n notifyMarketplaceLoad();\n },\n onError() {\n toggleNotification({\n type: 'danger',\n message: formatMessage({ id: 'notification.error', defaultMessage: 'An error occured' }),\n });\n },\n }\n );\n\n const providerParams = {\n ...tabQuery.provider,\n pagination: paginationParams,\n search: debouncedSearch,\n version: strapiVersion,\n };\n\n const { data: providersResponse, status: providersStatus } = useQuery(\n ['marketplace', 'providers', providerParams],\n async () => {\n const queryString = qs.stringify(providerParams);\n const res = await fetch(`${MARKETPLACE_API_URL}/providers?${queryString}`);\n\n if (!res.ok) {\n throw new Error('Failed to fetch marketplace providers.');\n }\n\n const data = (await res.json()) as MarketplaceResponse<Provider>;\n\n return data;\n },\n {\n onSuccess() {\n notifyMarketplaceLoad();\n },\n onError() {\n toggleNotification({\n type: 'danger',\n message: formatMessage({ id: 'notification.error', defaultMessage: 'An error occured' }),\n });\n },\n }\n );\n\n const npmPackageTypeResponse = npmPackageType === 'plugin' ? pluginsResponse : providersResponse;\n\n const possibleCollections = npmPackageTypeResponse?.meta.collections ?? {};\n const possibleCategories = pluginsResponse?.meta.categories ?? {};\n\n const { pagination } = npmPackageTypeResponse?.meta ?? {};\n\n return {\n pluginsResponse,\n providersResponse,\n pluginsStatus,\n providersStatus,\n possibleCollections,\n possibleCategories,\n pagination,\n };\n}\n\nexport { useMarketplaceData };\nexport type {\n MarketplaceResponse,\n Plugin,\n Provider,\n MarketplaceMeta,\n Collections,\n Categories,\n FilterTypes,\n UseMarketplaceDataParams,\n};\n"],"names":["MARKETPLACE_API_URL","useMarketplaceData","npmPackageType","debouncedSearch","query","tabQuery","strapiVersion","notifyStatus","useNotifyAT","formatMessage","useIntl","toggleNotification","useNotification","marketplaceTitle","id","defaultMessage","notifyMarketplaceLoad","target","paginationParams","page","pageSize","pluginParams","plugin","pagination","search","version","data","pluginsResponse","status","pluginsStatus","useQuery","queryString","qs","stringify","res","fetch","ok","Error","json","error","onSuccess","onError","type","message","providerParams","provider","providersResponse","providersStatus","npmPackageTypeResponse","possibleCollections","meta","collections","possibleCategories","categories"],"mappings":"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"}
@@ -1,113 +0,0 @@
1
- import { useNotifyAT } from '@strapi/design-system';
2
- import * as qs from 'qs';
3
- import { useIntl } from 'react-intl';
4
- import { useQuery } from 'react-query';
5
- import { useNotification } from '../../../features/Notifications.mjs';
6
-
7
- const MARKETPLACE_API_URL = 'https://market-api.strapi.io';
8
- function useMarketplaceData({ npmPackageType, debouncedSearch, query, tabQuery, strapiVersion }) {
9
- const { notifyStatus } = useNotifyAT();
10
- const { formatMessage } = useIntl();
11
- const { toggleNotification } = useNotification();
12
- const marketplaceTitle = formatMessage({
13
- id: 'global.marketplace',
14
- defaultMessage: 'Marketplace'
15
- });
16
- const notifyMarketplaceLoad = ()=>{
17
- notifyStatus(formatMessage({
18
- id: 'app.utils.notify.data-loaded',
19
- defaultMessage: 'The {target} has loaded'
20
- }, {
21
- target: marketplaceTitle
22
- }));
23
- };
24
- const paginationParams = {
25
- page: query?.page || 1,
26
- pageSize: query?.pageSize || 24
27
- };
28
- const pluginParams = {
29
- ...tabQuery.plugin,
30
- pagination: paginationParams,
31
- search: debouncedSearch,
32
- version: strapiVersion
33
- };
34
- const { data: pluginsResponse, status: pluginsStatus } = useQuery([
35
- 'marketplace',
36
- 'plugins',
37
- pluginParams
38
- ], async ()=>{
39
- try {
40
- const queryString = qs.stringify(pluginParams);
41
- const res = await fetch(`${MARKETPLACE_API_URL}/plugins?${queryString}`);
42
- if (!res.ok) {
43
- throw new Error('Failed to fetch marketplace plugins.');
44
- }
45
- const data = await res.json();
46
- return data;
47
- } catch (error) {
48
- // silence
49
- }
50
- return null;
51
- }, {
52
- onSuccess () {
53
- notifyMarketplaceLoad();
54
- },
55
- onError () {
56
- toggleNotification({
57
- type: 'danger',
58
- message: formatMessage({
59
- id: 'notification.error',
60
- defaultMessage: 'An error occured'
61
- })
62
- });
63
- }
64
- });
65
- const providerParams = {
66
- ...tabQuery.provider,
67
- pagination: paginationParams,
68
- search: debouncedSearch,
69
- version: strapiVersion
70
- };
71
- const { data: providersResponse, status: providersStatus } = useQuery([
72
- 'marketplace',
73
- 'providers',
74
- providerParams
75
- ], async ()=>{
76
- const queryString = qs.stringify(providerParams);
77
- const res = await fetch(`${MARKETPLACE_API_URL}/providers?${queryString}`);
78
- if (!res.ok) {
79
- throw new Error('Failed to fetch marketplace providers.');
80
- }
81
- const data = await res.json();
82
- return data;
83
- }, {
84
- onSuccess () {
85
- notifyMarketplaceLoad();
86
- },
87
- onError () {
88
- toggleNotification({
89
- type: 'danger',
90
- message: formatMessage({
91
- id: 'notification.error',
92
- defaultMessage: 'An error occured'
93
- })
94
- });
95
- }
96
- });
97
- const npmPackageTypeResponse = npmPackageType === 'plugin' ? pluginsResponse : providersResponse;
98
- const possibleCollections = npmPackageTypeResponse?.meta.collections ?? {};
99
- const possibleCategories = pluginsResponse?.meta.categories ?? {};
100
- const { pagination } = npmPackageTypeResponse?.meta ?? {};
101
- return {
102
- pluginsResponse,
103
- providersResponse,
104
- pluginsStatus,
105
- providersStatus,
106
- possibleCollections,
107
- possibleCategories,
108
- pagination
109
- };
110
- }
111
-
112
- export { useMarketplaceData };
113
- //# sourceMappingURL=useMarketplaceData.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useMarketplaceData.mjs","sources":["../../../../../../../admin/src/pages/Marketplace/hooks/useMarketplaceData.ts"],"sourcesContent":["import { useNotifyAT } from '@strapi/design-system';\nimport * as qs from 'qs';\nimport { useIntl } from 'react-intl';\nimport { useQuery } from 'react-query';\n\nimport { useNotification } from '../../../features/Notifications';\n\nimport type { MarketplacePageQuery, NpmPackageType, TabQuery } from '../MarketplacePage';\n\nconst MARKETPLACE_API_URL = 'https://market-api.strapi.io';\n\ninterface UseMarketplaceDataParams {\n npmPackageType: NpmPackageType;\n debouncedSearch: string;\n query?: MarketplacePageQuery;\n tabQuery: TabQuery;\n strapiVersion?: string | null;\n}\n\ntype Collections =\n | 'Verified'\n | 'Made by the community'\n | 'Made by Strapi'\n | 'Made by official partners';\n\ntype Categories = 'Custom fields' | 'Deployment' | 'Monitoring';\n\ntype FilterTypes = 'categories' | 'collections';\n\ninterface Plugin {\n id: string;\n attributes: {\n name: string;\n description: string;\n slug: string;\n npmPackageName: string;\n npmPackageUrl: string;\n npmDownloads: number;\n repositoryUrl: string;\n githubStars: number;\n logo: {\n url: string;\n };\n developerName: string;\n validated: boolean;\n madeByStrapi: boolean;\n strapiCompatibility: string;\n submissionDate: string;\n collections: Collections[];\n categories: Categories[];\n strapiVersion: string;\n screenshots: Array<{\n url: string;\n }>;\n };\n}\n\ninterface Provider {\n id: string;\n attributes: {\n name: string;\n description: string;\n slug: string;\n npmPackageName: string;\n npmPackageUrl: string;\n npmDownloads: number;\n repositoryUrl: string;\n githubStars: number;\n pluginName: string;\n logo: {\n url: string;\n };\n developerName: string;\n validated: boolean;\n madeByStrapi: boolean;\n strapiCompatibility: string;\n strapiVersion?: never;\n submissionDate: string;\n collections: Collections[];\n };\n}\n\ninterface MarketplaceMeta {\n collections: Record<Collections, number>;\n pagination: {\n page: number;\n pageSize: number;\n pageCount: number;\n total: number;\n };\n}\n\ninterface MarketplaceResponse<TData extends Plugin | Provider> {\n data: TData[];\n meta: TData extends Provider\n ? MarketplaceMeta\n : MarketplaceMeta & { categories: Record<Categories, number> };\n}\n\nfunction useMarketplaceData({\n npmPackageType,\n debouncedSearch,\n query,\n tabQuery,\n strapiVersion,\n}: UseMarketplaceDataParams) {\n const { notifyStatus } = useNotifyAT();\n const { formatMessage } = useIntl();\n const { toggleNotification } = useNotification();\n const marketplaceTitle = formatMessage({\n id: 'global.marketplace',\n defaultMessage: 'Marketplace',\n });\n\n const notifyMarketplaceLoad = () => {\n notifyStatus(\n formatMessage(\n {\n id: 'app.utils.notify.data-loaded',\n defaultMessage: 'The {target} has loaded',\n },\n { target: marketplaceTitle }\n )\n );\n };\n\n const paginationParams = {\n page: query?.page || 1,\n pageSize: query?.pageSize || 24,\n };\n\n const pluginParams = {\n ...tabQuery.plugin,\n pagination: paginationParams,\n search: debouncedSearch,\n version: strapiVersion,\n };\n\n const { data: pluginsResponse, status: pluginsStatus } = useQuery(\n ['marketplace', 'plugins', pluginParams],\n async () => {\n try {\n const queryString = qs.stringify(pluginParams);\n const res = await fetch(`${MARKETPLACE_API_URL}/plugins?${queryString}`);\n\n if (!res.ok) {\n throw new Error('Failed to fetch marketplace plugins.');\n }\n\n const data = (await res.json()) as MarketplaceResponse<Plugin>;\n return data;\n } catch (error) {\n // silence\n }\n\n return null;\n },\n {\n onSuccess() {\n notifyMarketplaceLoad();\n },\n onError() {\n toggleNotification({\n type: 'danger',\n message: formatMessage({ id: 'notification.error', defaultMessage: 'An error occured' }),\n });\n },\n }\n );\n\n const providerParams = {\n ...tabQuery.provider,\n pagination: paginationParams,\n search: debouncedSearch,\n version: strapiVersion,\n };\n\n const { data: providersResponse, status: providersStatus } = useQuery(\n ['marketplace', 'providers', providerParams],\n async () => {\n const queryString = qs.stringify(providerParams);\n const res = await fetch(`${MARKETPLACE_API_URL}/providers?${queryString}`);\n\n if (!res.ok) {\n throw new Error('Failed to fetch marketplace providers.');\n }\n\n const data = (await res.json()) as MarketplaceResponse<Provider>;\n\n return data;\n },\n {\n onSuccess() {\n notifyMarketplaceLoad();\n },\n onError() {\n toggleNotification({\n type: 'danger',\n message: formatMessage({ id: 'notification.error', defaultMessage: 'An error occured' }),\n });\n },\n }\n );\n\n const npmPackageTypeResponse = npmPackageType === 'plugin' ? pluginsResponse : providersResponse;\n\n const possibleCollections = npmPackageTypeResponse?.meta.collections ?? {};\n const possibleCategories = pluginsResponse?.meta.categories ?? {};\n\n const { pagination } = npmPackageTypeResponse?.meta ?? {};\n\n return {\n pluginsResponse,\n providersResponse,\n pluginsStatus,\n providersStatus,\n possibleCollections,\n possibleCategories,\n pagination,\n };\n}\n\nexport { useMarketplaceData };\nexport type {\n MarketplaceResponse,\n Plugin,\n Provider,\n MarketplaceMeta,\n Collections,\n Categories,\n FilterTypes,\n UseMarketplaceDataParams,\n};\n"],"names":["MARKETPLACE_API_URL","useMarketplaceData","npmPackageType","debouncedSearch","query","tabQuery","strapiVersion","notifyStatus","useNotifyAT","formatMessage","useIntl","toggleNotification","useNotification","marketplaceTitle","id","defaultMessage","notifyMarketplaceLoad","target","paginationParams","page","pageSize","pluginParams","plugin","pagination","search","version","data","pluginsResponse","status","pluginsStatus","useQuery","queryString","qs","stringify","res","fetch","ok","Error","json","error","onSuccess","onError","type","message","providerParams","provider","providersResponse","providersStatus","npmPackageTypeResponse","possibleCollections","meta","collections","possibleCategories","categories"],"mappings":";;;;;;AASA,MAAMA,mBAAsB,GAAA,8BAAA;AA0F5B,SAASC,kBAAAA,CAAmB,EAC1BC,cAAc,EACdC,eAAe,EACfC,KAAK,EACLC,QAAQ,EACRC,aAAa,EACY,EAAA;IACzB,MAAM,EAAEC,YAAY,EAAE,GAAGC,WAAAA,EAAAA;IACzB,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;IAC1B,MAAM,EAAEC,kBAAkB,EAAE,GAAGC,eAAAA,EAAAA;AAC/B,IAAA,MAAMC,mBAAmBJ,aAAc,CAAA;QACrCK,EAAI,EAAA,oBAAA;QACJC,cAAgB,EAAA;AAClB,KAAA,CAAA;AAEA,IAAA,MAAMC,qBAAwB,GAAA,IAAA;AAC5BT,QAAAA,YAAAA,CACEE,aACE,CAAA;YACEK,EAAI,EAAA,8BAAA;YACJC,cAAgB,EAAA;SAElB,EAAA;YAAEE,MAAQJ,EAAAA;AAAiB,SAAA,CAAA,CAAA;AAGjC,KAAA;AAEA,IAAA,MAAMK,gBAAmB,GAAA;AACvBC,QAAAA,IAAAA,EAAMf,OAAOe,IAAQ,IAAA,CAAA;AACrBC,QAAAA,QAAAA,EAAUhB,OAAOgB,QAAY,IAAA;AAC/B,KAAA;AAEA,IAAA,MAAMC,YAAe,GAAA;AACnB,QAAA,GAAGhB,SAASiB,MAAM;QAClBC,UAAYL,EAAAA,gBAAAA;QACZM,MAAQrB,EAAAA,eAAAA;QACRsB,OAASnB,EAAAA;AACX,KAAA;IAEA,MAAM,EAAEoB,MAAMC,eAAe,EAAEC,QAAQC,aAAa,EAAE,GAAGC,QACvD,CAAA;AAAC,QAAA,aAAA;AAAe,QAAA,SAAA;AAAWT,QAAAA;KAAa,EACxC,UAAA;QACE,IAAI;YACF,MAAMU,WAAAA,GAAcC,EAAGC,CAAAA,SAAS,CAACZ,YAAAA,CAAAA;AACjC,YAAA,MAAMa,MAAM,MAAMC,KAAAA,CAAM,GAAGnC,mBAAoB,CAAA,SAAS,EAAE+B,WAAa,CAAA,CAAA,CAAA;YAEvE,IAAI,CAACG,GAAIE,CAAAA,EAAE,EAAE;AACX,gBAAA,MAAM,IAAIC,KAAM,CAAA,sCAAA,CAAA;AAClB;YAEA,MAAMX,IAAAA,GAAQ,MAAMQ,GAAAA,CAAII,IAAI,EAAA;YAC5B,OAAOZ,IAAAA;AACT,SAAA,CAAE,OAAOa,KAAO,EAAA;;AAEhB;QAEA,OAAO,IAAA;KAET,EAAA;AACEC,QAAAA,SAAAA,CAAAA,GAAAA;AACExB,YAAAA,qBAAAA,EAAAA;AACF,SAAA;AACAyB,QAAAA,OAAAA,CAAAA,GAAAA;YACE9B,kBAAmB,CAAA;gBACjB+B,IAAM,EAAA,QAAA;AACNC,gBAAAA,OAAAA,EAASlC,aAAc,CAAA;oBAAEK,EAAI,EAAA,oBAAA;oBAAsBC,cAAgB,EAAA;AAAmB,iBAAA;AACxF,aAAA,CAAA;AACF;AACF,KAAA,CAAA;AAGF,IAAA,MAAM6B,cAAiB,GAAA;AACrB,QAAA,GAAGvC,SAASwC,QAAQ;QACpBtB,UAAYL,EAAAA,gBAAAA;QACZM,MAAQrB,EAAAA,eAAAA;QACRsB,OAASnB,EAAAA;AACX,KAAA;IAEA,MAAM,EAAEoB,MAAMoB,iBAAiB,EAAElB,QAAQmB,eAAe,EAAE,GAAGjB,QAC3D,CAAA;AAAC,QAAA,aAAA;AAAe,QAAA,WAAA;AAAac,QAAAA;KAAe,EAC5C,UAAA;QACE,MAAMb,WAAAA,GAAcC,EAAGC,CAAAA,SAAS,CAACW,cAAAA,CAAAA;AACjC,QAAA,MAAMV,MAAM,MAAMC,KAAAA,CAAM,GAAGnC,mBAAoB,CAAA,WAAW,EAAE+B,WAAa,CAAA,CAAA,CAAA;QAEzE,IAAI,CAACG,GAAIE,CAAAA,EAAE,EAAE;AACX,YAAA,MAAM,IAAIC,KAAM,CAAA,wCAAA,CAAA;AAClB;QAEA,MAAMX,IAAAA,GAAQ,MAAMQ,GAAAA,CAAII,IAAI,EAAA;QAE5B,OAAOZ,IAAAA;KAET,EAAA;AACEc,QAAAA,SAAAA,CAAAA,GAAAA;AACExB,YAAAA,qBAAAA,EAAAA;AACF,SAAA;AACAyB,QAAAA,OAAAA,CAAAA,GAAAA;YACE9B,kBAAmB,CAAA;gBACjB+B,IAAM,EAAA,QAAA;AACNC,gBAAAA,OAAAA,EAASlC,aAAc,CAAA;oBAAEK,EAAI,EAAA,oBAAA;oBAAsBC,cAAgB,EAAA;AAAmB,iBAAA;AACxF,aAAA,CAAA;AACF;AACF,KAAA,CAAA;IAGF,MAAMiC,sBAAAA,GAAyB9C,cAAmB,KAAA,QAAA,GAAWyB,eAAkBmB,GAAAA,iBAAAA;AAE/E,IAAA,MAAMG,mBAAsBD,GAAAA,sBAAAA,EAAwBE,IAAKC,CAAAA,WAAAA,IAAe,EAAC;AACzE,IAAA,MAAMC,kBAAqBzB,GAAAA,eAAAA,EAAiBuB,IAAKG,CAAAA,UAAAA,IAAc,EAAC;AAEhE,IAAA,MAAM,EAAE9B,UAAU,EAAE,GAAGyB,sBAAAA,EAAwBE,QAAQ,EAAC;IAExD,OAAO;AACLvB,QAAAA,eAAAA;AACAmB,QAAAA,iBAAAA;AACAjB,QAAAA,aAAAA;AACAkB,QAAAA,eAAAA;AACAE,QAAAA,mBAAAA;AACAG,QAAAA,kBAAAA;AACA7B,QAAAA;AACF,KAAA;AACF;;;;"}
@@ -1,44 +0,0 @@
1
- 'use strict';
2
-
3
- var React = require('react');
4
-
5
- function _interopNamespaceDefault(e) {
6
- var n = Object.create(null);
7
- if (e) {
8
- Object.keys(e).forEach(function (k) {
9
- if (k !== 'default') {
10
- var d = Object.getOwnPropertyDescriptor(e, k);
11
- Object.defineProperty(n, k, d.get ? d : {
12
- enumerable: true,
13
- get: function () { return e[k]; }
14
- });
15
- }
16
- });
17
- }
18
- n.default = e;
19
- return Object.freeze(n);
20
- }
21
-
22
- var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
23
-
24
- /**
25
- * For more details about this hook see:
26
- * https://www.30secondsofcode.org/react/s/use-navigator-on-line
27
- */ const useNavigatorOnline = ()=>{
28
- const onlineStatus = typeof navigator !== 'undefined' && typeof navigator.onLine === 'boolean' ? navigator.onLine : true;
29
- const [isOnline, setIsOnline] = React__namespace.useState(onlineStatus);
30
- const setOnline = ()=>setIsOnline(true);
31
- const setOffline = ()=>setIsOnline(false);
32
- React__namespace.useEffect(()=>{
33
- window.addEventListener('online', setOnline);
34
- window.addEventListener('offline', setOffline);
35
- return ()=>{
36
- window.removeEventListener('online', setOnline);
37
- window.removeEventListener('offline', setOffline);
38
- };
39
- }, []);
40
- return isOnline;
41
- };
42
-
43
- exports.useNavigatorOnline = useNavigatorOnline;
44
- //# sourceMappingURL=useNavigatorOnline.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useNavigatorOnline.js","sources":["../../../../../../../admin/src/pages/Marketplace/hooks/useNavigatorOnline.ts"],"sourcesContent":["import * as React from 'react';\n\n/**\n * For more details about this hook see:\n * https://www.30secondsofcode.org/react/s/use-navigator-on-line\n */\nexport const useNavigatorOnline = (): boolean => {\n const onlineStatus =\n typeof navigator !== 'undefined' && typeof navigator.onLine === 'boolean'\n ? navigator.onLine\n : true;\n\n const [isOnline, setIsOnline] = React.useState(onlineStatus);\n\n const setOnline = () => setIsOnline(true);\n const setOffline = () => setIsOnline(false);\n\n React.useEffect(() => {\n window.addEventListener('online', setOnline);\n window.addEventListener('offline', setOffline);\n\n return () => {\n window.removeEventListener('online', setOnline);\n window.removeEventListener('offline', setOffline);\n };\n }, []);\n\n return isOnline;\n};\n"],"names":["useNavigatorOnline","onlineStatus","navigator","onLine","isOnline","setIsOnline","React","useState","setOnline","setOffline","useEffect","window","addEventListener","removeEventListener"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAEA;;;UAIaA,kBAAqB,GAAA,IAAA;IAChC,MAAMC,YAAAA,GACJ,OAAOC,SAAAA,KAAc,WAAe,IAAA,OAAOA,SAAUC,CAAAA,MAAM,KAAK,SAAA,GAC5DD,SAAUC,CAAAA,MAAM,GAChB,IAAA;AAEN,IAAA,MAAM,CAACC,QAAUC,EAAAA,WAAAA,CAAY,GAAGC,gBAAAA,CAAMC,QAAQ,CAACN,YAAAA,CAAAA;IAE/C,MAAMO,SAAAA,GAAY,IAAMH,WAAY,CAAA,IAAA,CAAA;IACpC,MAAMI,UAAAA,GAAa,IAAMJ,WAAY,CAAA,KAAA,CAAA;AAErCC,IAAAA,gBAAAA,CAAMI,SAAS,CAAC,IAAA;QACdC,MAAOC,CAAAA,gBAAgB,CAAC,QAAUJ,EAAAA,SAAAA,CAAAA;QAClCG,MAAOC,CAAAA,gBAAgB,CAAC,SAAWH,EAAAA,UAAAA,CAAAA;QAEnC,OAAO,IAAA;YACLE,MAAOE,CAAAA,mBAAmB,CAAC,QAAUL,EAAAA,SAAAA,CAAAA;YACrCG,MAAOE,CAAAA,mBAAmB,CAAC,SAAWJ,EAAAA,UAAAA,CAAAA;AACxC,SAAA;AACF,KAAA,EAAG,EAAE,CAAA;IAEL,OAAOL,QAAAA;AACT;;;;"}
@@ -1,23 +0,0 @@
1
- import * as React from 'react';
2
-
3
- /**
4
- * For more details about this hook see:
5
- * https://www.30secondsofcode.org/react/s/use-navigator-on-line
6
- */ const useNavigatorOnline = ()=>{
7
- const onlineStatus = typeof navigator !== 'undefined' && typeof navigator.onLine === 'boolean' ? navigator.onLine : true;
8
- const [isOnline, setIsOnline] = React.useState(onlineStatus);
9
- const setOnline = ()=>setIsOnline(true);
10
- const setOffline = ()=>setIsOnline(false);
11
- React.useEffect(()=>{
12
- window.addEventListener('online', setOnline);
13
- window.addEventListener('offline', setOffline);
14
- return ()=>{
15
- window.removeEventListener('online', setOnline);
16
- window.removeEventListener('offline', setOffline);
17
- };
18
- }, []);
19
- return isOnline;
20
- };
21
-
22
- export { useNavigatorOnline };
23
- //# sourceMappingURL=useNavigatorOnline.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useNavigatorOnline.mjs","sources":["../../../../../../../admin/src/pages/Marketplace/hooks/useNavigatorOnline.ts"],"sourcesContent":["import * as React from 'react';\n\n/**\n * For more details about this hook see:\n * https://www.30secondsofcode.org/react/s/use-navigator-on-line\n */\nexport const useNavigatorOnline = (): boolean => {\n const onlineStatus =\n typeof navigator !== 'undefined' && typeof navigator.onLine === 'boolean'\n ? navigator.onLine\n : true;\n\n const [isOnline, setIsOnline] = React.useState(onlineStatus);\n\n const setOnline = () => setIsOnline(true);\n const setOffline = () => setIsOnline(false);\n\n React.useEffect(() => {\n window.addEventListener('online', setOnline);\n window.addEventListener('offline', setOffline);\n\n return () => {\n window.removeEventListener('online', setOnline);\n window.removeEventListener('offline', setOffline);\n };\n }, []);\n\n return isOnline;\n};\n"],"names":["useNavigatorOnline","onlineStatus","navigator","onLine","isOnline","setIsOnline","React","useState","setOnline","setOffline","useEffect","window","addEventListener","removeEventListener"],"mappings":";;AAEA;;;UAIaA,kBAAqB,GAAA,IAAA;IAChC,MAAMC,YAAAA,GACJ,OAAOC,SAAAA,KAAc,WAAe,IAAA,OAAOA,SAAUC,CAAAA,MAAM,KAAK,SAAA,GAC5DD,SAAUC,CAAAA,MAAM,GAChB,IAAA;AAEN,IAAA,MAAM,CAACC,QAAUC,EAAAA,WAAAA,CAAY,GAAGC,KAAAA,CAAMC,QAAQ,CAACN,YAAAA,CAAAA;IAE/C,MAAMO,SAAAA,GAAY,IAAMH,WAAY,CAAA,IAAA,CAAA;IACpC,MAAMI,UAAAA,GAAa,IAAMJ,WAAY,CAAA,KAAA,CAAA;AAErCC,IAAAA,KAAAA,CAAMI,SAAS,CAAC,IAAA;QACdC,MAAOC,CAAAA,gBAAgB,CAAC,QAAUJ,EAAAA,SAAAA,CAAAA;QAClCG,MAAOC,CAAAA,gBAAgB,CAAC,SAAWH,EAAAA,UAAAA,CAAAA;QAEnC,OAAO,IAAA;YACLE,MAAOE,CAAAA,mBAAmB,CAAC,QAAUL,EAAAA,SAAAA,CAAAA;YACrCG,MAAOE,CAAAA,mBAAmB,CAAC,SAAWJ,EAAAA,UAAAA,CAAAA;AACxC,SAAA;AACF,KAAA,EAAG,EAAE,CAAA;IAEL,OAAOL,QAAAA;AACT;;;;"}
@@ -1,19 +0,0 @@
1
- import { SortSelectProps } from './components/SortSelect';
2
- type NpmPackageType = 'plugin' | 'provider';
3
- interface MarketplacePageQuery {
4
- collections?: string[];
5
- categories?: string[];
6
- npmPackageType?: NpmPackageType;
7
- page?: number;
8
- pageSize?: number;
9
- search?: string;
10
- sort?: SortSelectProps['sortQuery'];
11
- }
12
- interface TabQuery {
13
- plugin: MarketplacePageQuery;
14
- provider: MarketplacePageQuery;
15
- }
16
- declare const MarketplacePage: () => import("react/jsx-runtime").JSX.Element;
17
- declare const ProtectedMarketplacePage: () => import("react/jsx-runtime").JSX.Element;
18
- export { MarketplacePage, ProtectedMarketplacePage };
19
- export type { NpmPackageType, MarketplacePageQuery, TabQuery };
@@ -1,13 +0,0 @@
1
- import { AppInfoContextValue } from '../../../features/AppInfo';
2
- import type { Plugin, Provider } from '../hooks/useMarketplaceData';
3
- import type { NpmPackageType } from '../MarketplacePage';
4
- interface NpmPackageCardProps extends Pick<AppInfoContextValue, 'useYarn'> {
5
- npmPackage: Plugin | Provider;
6
- isInstalled: boolean;
7
- isInDevelopmentMode: AppInfoContextValue['autoReload'];
8
- npmPackageType: NpmPackageType;
9
- strapiAppVersion: AppInfoContextValue['strapiVersion'];
10
- }
11
- declare const NpmPackageCard: ({ npmPackage, isInstalled, useYarn, isInDevelopmentMode, npmPackageType, strapiAppVersion, }: NpmPackageCardProps) => import("react/jsx-runtime").JSX.Element;
12
- export { NpmPackageCard };
13
- export type { NpmPackageCardProps };
@@ -1,13 +0,0 @@
1
- import type { Categories, Collections, FilterTypes } from '../hooks/useMarketplaceData';
2
- import type { NpmPackageType, MarketplacePageQuery } from '../MarketplacePage';
3
- interface NpmPackagesFiltersProps {
4
- handleSelectClear: (type: FilterTypes) => void;
5
- handleSelectChange: (update: Partial<MarketplacePageQuery>) => void;
6
- npmPackageType: NpmPackageType;
7
- possibleCategories: Partial<Record<Categories, number>>;
8
- possibleCollections: Partial<Record<Collections, number>>;
9
- query: MarketplacePageQuery;
10
- }
11
- declare const NpmPackagesFilters: ({ handleSelectClear, handleSelectChange, npmPackageType, possibleCategories, possibleCollections, query, }: NpmPackagesFiltersProps) => import("react/jsx-runtime").JSX.Element;
12
- export { NpmPackagesFilters };
13
- export type { NpmPackagesFiltersProps };
@@ -1,13 +0,0 @@
1
- import { AppInfoContextValue } from '../../../features/AppInfo';
2
- import { NpmPackageCardProps } from './NpmPackageCard';
3
- import type { Plugin, Provider } from '../hooks/useMarketplaceData';
4
- interface NpmPackagesGridProps extends Pick<NpmPackageCardProps, 'npmPackageType' | 'useYarn'> {
5
- debouncedSearch: string;
6
- installedPackageNames: string[];
7
- isInDevelopmentMode: AppInfoContextValue['autoReload'];
8
- npmPackages?: Array<Plugin | Provider>;
9
- status: 'idle' | 'loading' | 'error' | 'success';
10
- strapiAppVersion?: NpmPackageCardProps['strapiAppVersion'];
11
- }
12
- declare const NpmPackagesGrid: ({ status, npmPackages, installedPackageNames, useYarn, isInDevelopmentMode, npmPackageType, strapiAppVersion, debouncedSearch, }: NpmPackagesGridProps) => import("react/jsx-runtime").JSX.Element;
13
- export { NpmPackagesGrid };
@@ -1,2 +0,0 @@
1
- declare const OfflineLayout: () => import("react/jsx-runtime").JSX.Element;
2
- export { OfflineLayout };
@@ -1,8 +0,0 @@
1
- import type { NpmPackageType } from '../MarketplacePage';
2
- interface PageHeaderProps {
3
- isOnline?: boolean;
4
- npmPackageType?: NpmPackageType;
5
- }
6
- declare const PageHeader: ({ isOnline, npmPackageType }: PageHeaderProps) => import("react/jsx-runtime").JSX.Element;
7
- export { PageHeader };
8
- export type { PageHeaderProps };
@@ -1,51 +0,0 @@
1
- declare const SORT_TYPES: {
2
- readonly 'name:asc': {
3
- readonly selected: {
4
- readonly id: "admin.pages.MarketPlacePage.sort.alphabetical.selected";
5
- readonly defaultMessage: "Sort by alphabetical order";
6
- };
7
- readonly option: {
8
- readonly id: "admin.pages.MarketPlacePage.sort.alphabetical";
9
- readonly defaultMessage: "Alphabetical order";
10
- };
11
- };
12
- readonly 'submissionDate:desc': {
13
- readonly selected: {
14
- readonly id: "admin.pages.MarketPlacePage.sort.newest.selected";
15
- readonly defaultMessage: "Sort by newest";
16
- };
17
- readonly option: {
18
- readonly id: "admin.pages.MarketPlacePage.sort.newest";
19
- readonly defaultMessage: "Newest";
20
- };
21
- };
22
- readonly 'githubStars:desc': {
23
- readonly selected: {
24
- readonly id: "admin.pages.MarketPlacePage.sort.githubStars.selected";
25
- readonly defaultMessage: "Sort by GitHub stars";
26
- };
27
- readonly option: {
28
- readonly id: "admin.pages.MarketPlacePage.sort.githubStars";
29
- readonly defaultMessage: "Number of GitHub stars";
30
- };
31
- };
32
- readonly 'npmDownloads:desc': {
33
- readonly selected: {
34
- readonly id: "admin.pages.MarketPlacePage.sort.npmDownloads.selected";
35
- readonly defaultMessage: "Sort by npm downloads";
36
- };
37
- readonly option: {
38
- readonly id: "admin.pages.MarketPlacePage.sort.npmDownloads";
39
- readonly defaultMessage: "Number of downloads";
40
- };
41
- };
42
- };
43
- interface SortSelectProps {
44
- sortQuery: keyof typeof SORT_TYPES;
45
- handleSelectChange: (payload: {
46
- sort: string;
47
- }) => void;
48
- }
49
- declare const SortSelect: ({ sortQuery, handleSelectChange }: SortSelectProps) => import("react/jsx-runtime").JSX.Element;
50
- export { SortSelect };
51
- export type { SortSelectProps };