@strapi/admin 4.0.2 → 4.0.3

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 (247) hide show
  1. package/admin/src/components/LeftMenu/index.js +2 -2
  2. package/admin/src/content-manager/components/DynamicTable/CellContent/CellValue.js +12 -2
  3. package/admin/src/content-manager/components/DynamicTable/CellContent/utils/getNumberOfDecimals.js +8 -0
  4. package/admin/src/content-manager/components/InputUID/index.js +4 -0
  5. package/admin/src/content-manager/components/PreviewWysiwyg/Wrapper.js +4 -0
  6. package/admin/src/content-manager/components/RepeatableComponent/DraggedItem/IconButtonCustoms.js +0 -4
  7. package/admin/src/content-manager/components/RepeatableComponent/DraggedItem/index.js +36 -14
  8. package/admin/src/content-manager/components/RepeatableComponent/index.js +2 -2
  9. package/admin/src/content-manager/pages/App/index.js +9 -3
  10. package/admin/src/content-manager/pages/EditSettingsView/components/DisplayedFieldButton.js +1 -1
  11. package/admin/src/content-manager/pages/EditSettingsView/components/FieldButtonContent.js +1 -1
  12. package/admin/src/content-manager/pages/EditSettingsView/components/RelationalFieldButton.js +1 -1
  13. package/admin/src/content-manager/pages/ListSettingsView/components/DraggableCard.js +1 -0
  14. package/admin/src/pages/AuthPage/components/Register/index.js +4 -1
  15. package/admin/src/pages/AuthPage/utils/forms.js +2 -0
  16. package/admin/src/pages/ProfilePage/index.js +2 -0
  17. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/index.js +1 -0
  18. package/admin/src/pages/SettingsPage/pages/Users/EditPage/utils/layout.js +2 -0
  19. package/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/utils/layout.js +2 -0
  20. package/admin/src/pages/SettingsPage/pages/Users/components/SelectRoles/index.js +1 -0
  21. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/EventInput/index.js +1 -1
  22. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/WebhookForm/index.js +2 -0
  23. package/admin/src/translations/en.json +1 -0
  24. package/admin/src/translations/zh-Hans.json +554 -204
  25. package/build/4362.1cf3ccbd.chunk.js +1 -0
  26. package/build/{5881.deb18c91.chunk.js → 5881.746d7dc1.chunk.js} +2 -2
  27. package/build/{5881.deb18c91.chunk.js.LICENSE.txt → 5881.746d7dc1.chunk.js.LICENSE.txt} +0 -0
  28. package/build/6060.a5b86bc2.chunk.js +2 -0
  29. package/build/{3226.1a4b5cd1.chunk.js.LICENSE.txt → 6060.a5b86bc2.chunk.js.LICENSE.txt} +1 -1
  30. package/build/849.4a7be1c0.chunk.js +1 -0
  31. package/build/{2664.f33f619d.chunk.js → 9351.a0fbd4ef.chunk.js} +2 -2
  32. package/build/{2664.f33f619d.chunk.js.LICENSE.txt → 9351.a0fbd4ef.chunk.js.LICENSE.txt} +0 -0
  33. package/build/Admin-authenticatedApp.956e0be7.chunk.js +1 -0
  34. package/build/{Admin_homePage.74b48134.chunk.js → Admin_homePage.62ec13fd.chunk.js} +1 -1
  35. package/build/Admin_marketplace.9661a660.chunk.js +1 -0
  36. package/build/{Admin_pluginsPage.22390055.chunk.js → Admin_pluginsPage.7d1bd7ce.chunk.js} +1 -1
  37. package/build/Admin_profilePage.67dd744c.chunk.js +1 -0
  38. package/build/Admin_settingsPage.73423460.chunk.js +1 -0
  39. package/build/admin-edit-roles-page.2d1b6461.chunk.js +1 -0
  40. package/build/admin-edit-users.e736db15.chunk.js +1 -0
  41. package/build/admin-users.62447405.chunk.js +1 -0
  42. package/build/{api-tokens-create-page.ab33d46d.chunk.js → api-tokens-create-page.830b37b7.chunk.js} +1 -1
  43. package/build/{api-tokens-edit-page.749496cc.chunk.js → api-tokens-edit-page.dbe07b72.chunk.js} +1 -1
  44. package/build/api-tokens-list-page.1626150f.chunk.js +1 -0
  45. package/build/{ar-json.9805489e.chunk.js → ar-json.d79e4709.chunk.js} +1 -1
  46. package/build/codemirror-css.17bc19d4.chunk.js +1 -0
  47. package/build/codemirror-theme.b5559efc.chunk.js +1 -0
  48. package/build/content-manager.0872e65e.chunk.js +1 -0
  49. package/build/{content-type-builder-translation-ar-json.bce4d624.chunk.js → content-type-builder-translation-ar-json.f1fedc12.chunk.js} +1 -1
  50. package/build/{content-type-builder-translation-cs-json.785866b6.chunk.js → content-type-builder-translation-cs-json.2f7e2289.chunk.js} +1 -1
  51. package/build/{content-type-builder-translation-de-json.6faa019a.chunk.js → content-type-builder-translation-de-json.46017754.chunk.js} +1 -1
  52. package/build/content-type-builder-translation-dk-json.5c6344f9.chunk.js +1 -0
  53. package/build/{content-type-builder-translation-en-json.81257d0d.chunk.js → content-type-builder-translation-en-json.c535d180.chunk.js} +1 -1
  54. package/build/{content-type-builder-translation-es-json.5a4f519b.chunk.js → content-type-builder-translation-es-json.7e2055ad.chunk.js} +1 -1
  55. package/build/{content-type-builder-translation-fr-json.2156f48c.chunk.js → content-type-builder-translation-fr-json.8f66eb66.chunk.js} +1 -1
  56. package/build/content-type-builder-translation-id-json.aab2f426.chunk.js +1 -0
  57. package/build/{content-type-builder-translation-it-json.dc154c62.chunk.js → content-type-builder-translation-it-json.4c91e895.chunk.js} +1 -1
  58. package/build/{content-type-builder-translation-ja-json.9f8695a0.chunk.js → content-type-builder-translation-ja-json.c239ba90.chunk.js} +1 -1
  59. package/build/{content-type-builder-translation-ko-json.0288cb2b.chunk.js → content-type-builder-translation-ko-json.2a5e0769.chunk.js} +1 -1
  60. package/build/{content-type-builder-translation-ms-json.cfc21fb6.chunk.js → content-type-builder-translation-ms-json.124be88c.chunk.js} +1 -1
  61. package/build/{content-type-builder-translation-nl-json.4d742025.chunk.js → content-type-builder-translation-nl-json.98a240b8.chunk.js} +1 -1
  62. package/build/{content-type-builder-translation-pl-json.1b701a76.chunk.js → content-type-builder-translation-pl-json.2abc61bd.chunk.js} +1 -1
  63. package/build/{content-type-builder-translation-pt-BR-json.2c514ada.chunk.js → content-type-builder-translation-pt-BR-json.c0415545.chunk.js} +1 -1
  64. package/build/{content-type-builder-translation-pt-json.a3c4315c.chunk.js → content-type-builder-translation-pt-json.ab3e086d.chunk.js} +1 -1
  65. package/build/{content-type-builder-translation-ru-json.72173619.chunk.js → content-type-builder-translation-ru-json.1a6779fd.chunk.js} +1 -1
  66. package/build/{content-type-builder-translation-sk-json.e654be3b.chunk.js → content-type-builder-translation-sk-json.5c82f020.chunk.js} +1 -1
  67. package/build/{content-type-builder-translation-th-json.403aa6a4.chunk.js → content-type-builder-translation-th-json.24ee19eb.chunk.js} +1 -1
  68. package/build/{content-type-builder-translation-tr-json.72027971.chunk.js → content-type-builder-translation-tr-json.30434835.chunk.js} +1 -1
  69. package/build/{content-type-builder-translation-uk-json.a1b9f71b.chunk.js → content-type-builder-translation-uk-json.771662ef.chunk.js} +1 -1
  70. package/build/{content-type-builder-translation-zh-Hans-json.4c242866.chunk.js → content-type-builder-translation-zh-Hans-json.070020ae.chunk.js} +1 -1
  71. package/build/{content-type-builder-translation-zh-json.3b3eb4e8.chunk.js → content-type-builder-translation-zh-json.9708310d.chunk.js} +1 -1
  72. package/build/content-type-builder.44fdf56b.chunk.js +1 -0
  73. package/build/cropper-css.ace19575.chunk.js +1 -0
  74. package/build/{cs-json.ff08076e.chunk.js → cs-json.b8ba75b8.chunk.js} +1 -1
  75. package/build/de-json.e01bdeae.chunk.js +1 -0
  76. package/build/dk-json.9516eb08.chunk.js +1 -0
  77. package/build/{email-settings-page.d3ce077f.chunk.js → email-settings-page.3cdedf03.chunk.js} +1 -1
  78. package/build/email-translation-ar-json.95d90eb4.chunk.js +1 -0
  79. package/build/email-translation-cs-json.dfd1f3f2.chunk.js +1 -0
  80. package/build/email-translation-de-json.559a7d5f.chunk.js +1 -0
  81. package/build/email-translation-dk-json.b3740e8f.chunk.js +1 -0
  82. package/build/{email-translation-en-json.ef8208e3.chunk.js → email-translation-en-json.fa0dc92b.chunk.js} +1 -1
  83. package/build/email-translation-es-json.abbba8e3.chunk.js +1 -0
  84. package/build/email-translation-fr-json.49c3c888.chunk.js +1 -0
  85. package/build/email-translation-id-json.e3c2101d.chunk.js +1 -0
  86. package/build/email-translation-it-json.3de61cb6.chunk.js +1 -0
  87. package/build/{email-translation-ja-json.66b21ec1.chunk.js → email-translation-ja-json.66337e44.chunk.js} +1 -1
  88. package/build/{email-translation-ko-json.e383ad57.chunk.js → email-translation-ko-json.52bbd7b4.chunk.js} +1 -1
  89. package/build/email-translation-ms-json.e39256df.chunk.js +1 -0
  90. package/build/email-translation-nl-json.12d28adb.chunk.js +1 -0
  91. package/build/email-translation-pl-json.9585a84e.chunk.js +1 -0
  92. package/build/email-translation-pt-BR-json.6c04b3ef.chunk.js +1 -0
  93. package/build/email-translation-pt-json.0239be04.chunk.js +1 -0
  94. package/build/email-translation-ru-json.f3b4fecc.chunk.js +1 -0
  95. package/build/email-translation-sk-json.76dbaaa6.chunk.js +1 -0
  96. package/build/email-translation-th-json.25ad73e7.chunk.js +1 -0
  97. package/build/email-translation-tr-json.ae04a9f2.chunk.js +1 -0
  98. package/build/email-translation-uk-json.03b27b08.chunk.js +1 -0
  99. package/build/email-translation-vi-json.3e1dd5b3.chunk.js +1 -0
  100. package/build/email-translation-zh-Hans-json.0df4ca59.chunk.js +1 -0
  101. package/build/email-translation-zh-json.82978eb0.chunk.js +1 -0
  102. package/build/{en-json.4c3c1c95.chunk.js → en-json.1c33de7f.chunk.js} +1 -1
  103. package/build/{es-json.060b658c.chunk.js → es-json.fa8ddd1d.chunk.js} +1 -1
  104. package/build/fontawesome-css-all.3b89f909.chunk.js +1 -0
  105. package/build/fontawesome-css.ef93ee2a.chunk.js +1 -0
  106. package/build/fr-json.bae03a2c.chunk.js +1 -0
  107. package/build/{he-json.fafa8569.chunk.js → he-json.86f9e663.chunk.js} +1 -1
  108. package/build/highlight.js.6321cb45.chunk.js +1 -0
  109. package/build/{i18n-translation-en-json.a90b9dc5.chunk.js → i18n-translation-en-json.239b740f.chunk.js} +1 -1
  110. package/build/i18n-translation-fr-json.b52474fc.chunk.js +1 -0
  111. package/build/{i18n-translation-ko-json.f0628aff.chunk.js → i18n-translation-ko-json.e88e11ef.chunk.js} +1 -1
  112. package/build/{i18n-translation-zh-Hans-json.670b4940.chunk.js → i18n-translation-zh-Hans-json.4c17fed0.chunk.js} +1 -1
  113. package/build/{id-json.3372dadc.chunk.js → id-json.0b0c9731.chunk.js} +1 -1
  114. package/build/index.html +1 -1
  115. package/build/{it-json.0e5d5fdb.chunk.js → it-json.939916bc.chunk.js} +1 -1
  116. package/build/{ja-json.14eaee93.chunk.js → ja-json.57abaacb.chunk.js} +1 -1
  117. package/build/{ko-json.35832b30.chunk.js → ko-json.29633034.chunk.js} +1 -1
  118. package/build/main.b227e163.js +2 -0
  119. package/build/{main.dfa22c7a.js.LICENSE.txt → main.b227e163.js.LICENSE.txt} +0 -0
  120. package/build/{ms-json.a66beabc.chunk.js → ms-json.5e5d12f9.chunk.js} +1 -1
  121. package/build/{nl-json.9e55cf9c.chunk.js → nl-json.d757328d.chunk.js} +1 -1
  122. package/build/{no-json.25f63ee7.chunk.js → no-json.ff46b126.chunk.js} +1 -1
  123. package/build/{pl-json.3d7884e1.chunk.js → pl-json.6bff1d54.chunk.js} +1 -1
  124. package/build/{pt-BR-json.e21cd994.chunk.js → pt-BR-json.6d1cfdb2.chunk.js} +1 -1
  125. package/build/{pt-json.21a66a61.chunk.js → pt-json.b23d9a79.chunk.js} +1 -1
  126. package/build/{ru-json.ca2b6c3c.chunk.js → ru-json.bff93229.chunk.js} +1 -1
  127. package/build/runtime~main.d7a87b81.js +1 -0
  128. package/build/{sk-json.7f750e28.chunk.js → sk-json.a40bc2c8.chunk.js} +1 -1
  129. package/build/{sso-settings-page.bd7a8fd7.chunk.js → sso-settings-page.c073b6d7.chunk.js} +1 -1
  130. package/build/{sv-json.3b5cc7f9.chunk.js → sv-json.8ac61ecf.chunk.js} +1 -1
  131. package/build/{th-json.694b4038.chunk.js → th-json.6e4502a3.chunk.js} +1 -1
  132. package/build/{tr-json.a842843a.chunk.js → tr-json.eaca955b.chunk.js} +1 -1
  133. package/build/uk-json.c50ad2a8.chunk.js +1 -0
  134. package/build/{upload-translation-de-json.b4ff3c56.chunk.js → upload-translation-de-json.00f90715.chunk.js} +1 -1
  135. package/build/{upload-translation-dk-json.f37ae5c0.chunk.js → upload-translation-dk-json.e8c0a891.chunk.js} +1 -1
  136. package/build/{upload-translation-en-json.d205cecd.chunk.js → upload-translation-en-json.31ea0622.chunk.js} +1 -1
  137. package/build/upload-translation-es-json.42b5c758.chunk.js +1 -0
  138. package/build/{upload-translation-fr-json.0f4b3839.chunk.js → upload-translation-fr-json.ccb4ad8b.chunk.js} +1 -1
  139. package/build/{upload-translation-he-json.4b5e48bc.chunk.js → upload-translation-he-json.5dc34ea8.chunk.js} +1 -1
  140. package/build/upload-translation-it-json.c1809a47.chunk.js +1 -0
  141. package/build/{upload-translation-ja-json.9e1193c7.chunk.js → upload-translation-ja-json.71aa85eb.chunk.js} +1 -1
  142. package/build/{upload-translation-ko-json.b6602572.chunk.js → upload-translation-ko-json.da369eef.chunk.js} +1 -1
  143. package/build/{upload-translation-ms-json.bfb86c2e.chunk.js → upload-translation-ms-json.be669f81.chunk.js} +1 -1
  144. package/build/{upload-translation-pl-json.e0282fa4.chunk.js → upload-translation-pl-json.67685825.chunk.js} +1 -1
  145. package/build/{upload-translation-pt-BR-json.ad6bb9f8.chunk.js → upload-translation-pt-BR-json.f7b1133d.chunk.js} +1 -1
  146. package/build/{upload-translation-ru-json.4303b6a0.chunk.js → upload-translation-ru-json.54c031aa.chunk.js} +1 -1
  147. package/build/{upload-translation-sk-json.90a0bc6c.chunk.js → upload-translation-sk-json.f643dfc2.chunk.js} +1 -1
  148. package/build/{upload-translation-th-json.cf0d62e0.chunk.js → upload-translation-th-json.88ee2090.chunk.js} +1 -1
  149. package/build/{upload-translation-uk-json.ec345d61.chunk.js → upload-translation-uk-json.1a90e73c.chunk.js} +1 -1
  150. package/build/{upload-translation-zh-Hans-json.f320fa39.chunk.js → upload-translation-zh-Hans-json.ac1dc0b9.chunk.js} +1 -1
  151. package/build/{upload-translation-zh-json.9ad30216.chunk.js → upload-translation-zh-json.164ac601.chunk.js} +1 -1
  152. package/build/users-email-settings-page.678794aa.chunk.js +1 -0
  153. package/build/{users-permissions-translation-ar-json.6fe0dcf5.chunk.js → users-permissions-translation-ar-json.bdddd0d7.chunk.js} +1 -1
  154. package/build/{users-permissions-translation-cs-json.dd4bb452.chunk.js → users-permissions-translation-cs-json.7881d3ff.chunk.js} +1 -1
  155. package/build/{users-permissions-translation-de-json.1505b462.chunk.js → users-permissions-translation-de-json.8d53c619.chunk.js} +1 -1
  156. package/build/{users-permissions-translation-dk-json.6b47229f.chunk.js → users-permissions-translation-dk-json.a36b323b.chunk.js} +1 -1
  157. package/build/{users-permissions-translation-en-json.3e650c44.chunk.js → users-permissions-translation-en-json.1993655e.chunk.js} +1 -1
  158. package/build/{users-permissions-translation-es-json.768cc00e.chunk.js → users-permissions-translation-es-json.c8ef51bd.chunk.js} +1 -1
  159. package/build/users-permissions-translation-fr-json.a2172545.chunk.js +1 -0
  160. package/build/users-permissions-translation-id-json.8f17982a.chunk.js +1 -0
  161. package/build/{users-permissions-translation-it-json.baa4f859.chunk.js → users-permissions-translation-it-json.87952a24.chunk.js} +1 -1
  162. package/build/{users-permissions-translation-ja-json.3ddd4418.chunk.js → users-permissions-translation-ja-json.5915d9ef.chunk.js} +1 -1
  163. package/build/users-permissions-translation-ko-json.f1ca6cc4.chunk.js +1 -0
  164. package/build/{users-permissions-translation-ms-json.dc405667.chunk.js → users-permissions-translation-ms-json.2268324c.chunk.js} +1 -1
  165. package/build/{users-permissions-translation-nl-json.2d8e847a.chunk.js → users-permissions-translation-nl-json.4e1231dd.chunk.js} +1 -1
  166. package/build/{users-permissions-translation-pl-json.b150dfb0.chunk.js → users-permissions-translation-pl-json.107638b5.chunk.js} +1 -1
  167. package/build/{users-permissions-translation-pt-BR-json.0c494c69.chunk.js → users-permissions-translation-pt-BR-json.8dafc053.chunk.js} +1 -1
  168. package/build/{users-permissions-translation-pt-json.0fccc389.chunk.js → users-permissions-translation-pt-json.3322464f.chunk.js} +1 -1
  169. package/build/users-permissions-translation-ru-json.5709c5a0.chunk.js +1 -0
  170. package/build/{users-permissions-translation-sk-json.2602e768.chunk.js → users-permissions-translation-sk-json.fe7cc044.chunk.js} +1 -1
  171. package/build/users-permissions-translation-sv-json.e7e1684b.chunk.js +1 -0
  172. package/build/{users-permissions-translation-th-json.abe0558b.chunk.js → users-permissions-translation-th-json.bb544ee3.chunk.js} +1 -1
  173. package/build/{users-permissions-translation-tr-json.269ee593.chunk.js → users-permissions-translation-tr-json.30f3ca90.chunk.js} +1 -1
  174. package/build/{users-permissions-translation-uk-json.ffd9a4ee.chunk.js → users-permissions-translation-uk-json.634f2569.chunk.js} +1 -1
  175. package/build/{users-permissions-translation-vi-json.c2cd19d5.chunk.js → users-permissions-translation-vi-json.605d88bc.chunk.js} +1 -1
  176. package/build/{users-permissions-translation-zh-Hans-json.2d909528.chunk.js → users-permissions-translation-zh-Hans-json.85480dab.chunk.js} +1 -1
  177. package/build/{users-permissions-translation-zh-json.7f3027c5.chunk.js → users-permissions-translation-zh-json.99932731.chunk.js} +1 -1
  178. package/build/users-providers-settings-page.d4f78a77.chunk.js +1 -0
  179. package/build/users-roles-settings-page.4f04bf06.chunk.js +1 -0
  180. package/build/{vi-json.c25f42fe.chunk.js → vi-json.e993857a.chunk.js} +1 -1
  181. package/build/{webhook-edit-page.36755ae4.chunk.js → webhook-edit-page.c87c6764.chunk.js} +1 -1
  182. package/build/zh-Hans-json.fcc53388.chunk.js +1 -0
  183. package/build/{zh-json.3b683748.chunk.js → zh-json.496bd6c4.chunk.js} +1 -1
  184. package/index.html +1 -1
  185. package/package.json +26 -33
  186. package/webpack.alias.js +0 -6
  187. package/webpack.config.js +1 -3
  188. package/build/3226.1a4b5cd1.chunk.js +0 -2
  189. package/build/4362.c65ab24b.chunk.js +0 -1
  190. package/build/849.35b7e7af.chunk.js +0 -1
  191. package/build/Admin-authenticatedApp.5e99b423.chunk.js +0 -1
  192. package/build/Admin_marketplace.8d0028cc.chunk.js +0 -1
  193. package/build/Admin_profilePage.f276f571.chunk.js +0 -1
  194. package/build/Admin_settingsPage.1947fe0c.chunk.js +0 -1
  195. package/build/admin-edit-roles-page.2bccaf76.chunk.js +0 -1
  196. package/build/admin-edit-users.1632dcf7.chunk.js +0 -1
  197. package/build/admin-users.1f0533e6.chunk.js +0 -1
  198. package/build/api-tokens-list-page.d451255e.chunk.js +0 -1
  199. package/build/codemirror-css.d09c79d2.chunk.js +0 -1
  200. package/build/codemirror-theme.4a209ed5.chunk.js +0 -1
  201. package/build/content-manager.363a1bad.chunk.js +0 -1
  202. package/build/content-type-builder-translation-dk-json.215eca36.chunk.js +0 -1
  203. package/build/content-type-builder-translation-id-json.e66f4e0a.chunk.js +0 -1
  204. package/build/content-type-builder.aa13e7a4.chunk.js +0 -1
  205. package/build/cropper-css.b71d1229.chunk.js +0 -1
  206. package/build/de-json.93987708.chunk.js +0 -1
  207. package/build/dk-json.97f8f309.chunk.js +0 -1
  208. package/build/email-translation-ar-json.536b0217.chunk.js +0 -1
  209. package/build/email-translation-cs-json.8f533c9b.chunk.js +0 -1
  210. package/build/email-translation-de-json.89f5373e.chunk.js +0 -1
  211. package/build/email-translation-dk-json.9c95cf96.chunk.js +0 -1
  212. package/build/email-translation-es-json.fec78330.chunk.js +0 -1
  213. package/build/email-translation-fr-json.76afb1c3.chunk.js +0 -1
  214. package/build/email-translation-id-json.1b3e055a.chunk.js +0 -1
  215. package/build/email-translation-it-json.7273fee2.chunk.js +0 -1
  216. package/build/email-translation-ms-json.af7c5861.chunk.js +0 -1
  217. package/build/email-translation-nl-json.10fec023.chunk.js +0 -1
  218. package/build/email-translation-pl-json.ebda42d5.chunk.js +0 -1
  219. package/build/email-translation-pt-BR-json.338d8b7c.chunk.js +0 -1
  220. package/build/email-translation-pt-json.1cd0fedf.chunk.js +0 -1
  221. package/build/email-translation-ru-json.2c369331.chunk.js +0 -1
  222. package/build/email-translation-sk-json.ba2e026d.chunk.js +0 -1
  223. package/build/email-translation-th-json.16457076.chunk.js +0 -1
  224. package/build/email-translation-tr-json.92e0a5d9.chunk.js +0 -1
  225. package/build/email-translation-uk-json.d00dd5b1.chunk.js +0 -1
  226. package/build/email-translation-vi-json.ed425dde.chunk.js +0 -1
  227. package/build/email-translation-zh-Hans-json.e2c630b6.chunk.js +0 -1
  228. package/build/email-translation-zh-json.2a06ebac.chunk.js +0 -1
  229. package/build/fontawesome-css-all.90be2358.chunk.js +0 -1
  230. package/build/fontawesome-css.32df0f91.chunk.js +0 -1
  231. package/build/fr-json.c75e1a2e.chunk.js +0 -1
  232. package/build/highlight.js.3f31aed7.chunk.js +0 -1
  233. package/build/i18n-translation-fr-json.482f6933.chunk.js +0 -1
  234. package/build/main.dfa22c7a.js +0 -2
  235. package/build/runtime~main.2d8596f7.js +0 -1
  236. package/build/uk-json.3b8f967b.chunk.js +0 -1
  237. package/build/upload-translation-es-json.f9e9ffdf.chunk.js +0 -1
  238. package/build/upload-translation-it-json.fb24c332.chunk.js +0 -1
  239. package/build/users-email-settings-page.36142cd7.chunk.js +0 -1
  240. package/build/users-permissions-translation-fr-json.12f3c930.chunk.js +0 -1
  241. package/build/users-permissions-translation-id-json.ec3deaf0.chunk.js +0 -1
  242. package/build/users-permissions-translation-ko-json.4677f640.chunk.js +0 -1
  243. package/build/users-permissions-translation-ru-json.4389c542.chunk.js +0 -1
  244. package/build/users-permissions-translation-sv-json.438e46f7.chunk.js +0 -1
  245. package/build/users-providers-settings-page.2c0685d3.chunk.js +0 -1
  246. package/build/users-roles-settings-page.61c9b376.chunk.js +0 -1
  247. package/build/zh-Hans-json.e5041b18.chunk.js +0 -1
@@ -149,7 +149,7 @@ const LeftMenu = ({ generalSectionLinks, pluginsSectionLinks }) => {
149
149
  >
150
150
  <FocusTrap onEscape={handleToggleUserLinks}>
151
151
  <Stack size={0}>
152
- <LinkUser onClick={handleToggleUserLinks} to="/me">
152
+ <LinkUser tabIndex={0} onClick={handleToggleUserLinks} to="/me">
153
153
  <Typography>
154
154
  {formatMessage({
155
155
  id: 'app.components.LeftMenu.profile',
@@ -157,7 +157,7 @@ const LeftMenu = ({ generalSectionLinks, pluginsSectionLinks }) => {
157
157
  })}
158
158
  </Typography>
159
159
  </LinkUser>
160
- <LinkUser onClick={handleLogout} logout="logout" to="/auth/login">
160
+ <LinkUser tabIndex={0} onClick={handleLogout} logout="logout" to="/auth/login">
161
161
  <Typography textColor="danger600">
162
162
  {formatMessage({
163
163
  id: 'app.components.LeftMenu.logout',
@@ -1,6 +1,7 @@
1
1
  import PropTypes from 'prop-types';
2
2
  import { useIntl } from 'react-intl';
3
3
  import toString from 'lodash/toString';
4
+ import { getNumberOfDecimals } from './utils/getNumberOfDecimals';
4
5
 
5
6
  const CellValue = ({ type, value }) => {
6
7
  const { formatDate, formatTime, formatNumber } = useIntl();
@@ -27,8 +28,17 @@ const CellValue = ({ type, value }) => {
27
28
  });
28
29
  }
29
30
 
30
- if (['float', 'integer', 'biginteger', 'decimal'].includes(type)) {
31
- formattedValue = formatNumber(value);
31
+ if (['float', 'decimal'].includes(type)) {
32
+ const numberOfDecimals = getNumberOfDecimals(value);
33
+
34
+ formattedValue = formatNumber(value, {
35
+ minimumFractionDigits: numberOfDecimals,
36
+ maximumFractionDigits: numberOfDecimals,
37
+ });
38
+ }
39
+
40
+ if (['integer', 'biginteger'].includes(type)) {
41
+ formattedValue = formatNumber(value, { maximumFractionDigits: 0 });
32
42
  }
33
43
 
34
44
  return toString(formattedValue);
@@ -0,0 +1,8 @@
1
+ export const getNumberOfDecimals = value => {
2
+ if (value % 1 !== 0) {
3
+ // value has decimals
4
+ return value.toString().split('.')[1].length;
5
+ }
6
+
7
+ return 0;
8
+ };
@@ -32,6 +32,7 @@ const InputUID = ({
32
32
  onChange,
33
33
  value,
34
34
  placeholder,
35
+ required,
35
36
  }) => {
36
37
  const { modifiedData, initialData, layout } = useCMEditViewDataManager();
37
38
  const [isLoading, setIsLoading] = useState(false);
@@ -244,6 +245,7 @@ const InputUID = ({
244
245
  onChange={handleChange}
245
246
  placeholder={formattedPlaceholder}
246
247
  value={value || ''}
248
+ required={required}
247
249
  />
248
250
  );
249
251
  };
@@ -275,6 +277,7 @@ InputUID.propTypes = {
275
277
  defaultMessage: PropTypes.string.isRequired,
276
278
  values: PropTypes.object,
277
279
  }),
280
+ required: PropTypes.bool,
278
281
  };
279
282
 
280
283
  InputUID.defaultProps = {
@@ -284,6 +287,7 @@ InputUID.defaultProps = {
284
287
  labelAction: undefined,
285
288
  placeholder: undefined,
286
289
  value: '',
290
+ required: false,
287
291
  };
288
292
 
289
293
  export default InputUID;
@@ -47,6 +47,10 @@ const Wrapper = styled.div`
47
47
  font-weight: 800;
48
48
  }
49
49
 
50
+ em {
51
+ font-style: italic;
52
+ }
53
+
50
54
  blockquote {
51
55
  margin-top: 41px;
52
56
  margin-bottom: 34px;
@@ -20,10 +20,6 @@ export const CustomIconButton = styled(IconButton)`
20
20
  }
21
21
  `;
22
22
 
23
- export const DragHandleWrapper = styled(CustomIconButton)`
24
- cursor: move;
25
- `;
26
-
27
23
  export const CustomIconButtonSibling = styled(IconButton)`
28
24
  background-color: transparent;
29
25
 
@@ -3,12 +3,14 @@ import React, { memo, useEffect, useRef, useState } from 'react';
3
3
  import PropTypes from 'prop-types';
4
4
  import { useDrag, useDrop } from 'react-dnd';
5
5
  import { getEmptyImage } from 'react-dnd-html5-backend';
6
+ import styled from 'styled-components';
6
7
  import { useIntl } from 'react-intl';
7
8
  import toString from 'lodash/toString';
8
9
  import { Accordion, AccordionToggle, AccordionContent } from '@strapi/design-system/Accordion';
9
10
  import { Grid, GridItem } from '@strapi/design-system/Grid';
10
11
  import { Stack } from '@strapi/design-system/Stack';
11
12
  import { Box } from '@strapi/design-system/Box';
13
+ import { Tooltip } from '@strapi/design-system/Tooltip';
12
14
  import Trash from '@strapi/icons/Trash';
13
15
  import Drag from '@strapi/icons/Drag';
14
16
  import ItemTypes from '../../../utils/ItemTypes';
@@ -17,9 +19,23 @@ import Inputs from '../../Inputs';
17
19
  import FieldComponent from '../../FieldComponent';
18
20
  import Preview from './Preview';
19
21
  import DraggingSibling from './DraggingSibling';
20
- import { CustomIconButton, DragHandleWrapper } from './IconButtonCustoms';
22
+ import { CustomIconButton } from './IconButtonCustoms';
21
23
  import { connect, select } from './utils';
22
24
 
25
+ const DragButton = styled.span`
26
+ display: flex;
27
+ align-items: center;
28
+ height: ${({ theme }) => theme.spaces[7]};
29
+
30
+ padding: 0 ${({ theme }) => theme.spaces[3]};
31
+ cursor: all-scroll;
32
+
33
+ svg {
34
+ width: ${12 / 16}rem;
35
+ height: ${12 / 16}rem;
36
+ }
37
+ `;
38
+
23
39
  /* eslint-disable react/no-array-index-key */
24
40
 
25
41
  // Issues:
@@ -40,7 +56,7 @@ const DraggedItem = ({
40
56
  // Retrieved from the select function
41
57
  moveComponentField,
42
58
  removeRepeatableField,
43
- setIsDraggingSiblig,
59
+ setIsDraggingSibling,
44
60
  triggerFormValidation,
45
61
  // checkFormErrors,
46
62
  displayedValue,
@@ -125,7 +141,7 @@ const DraggedItem = ({
125
141
  end: () => {
126
142
  // Update the errors
127
143
  triggerFormValidation();
128
- setIsDraggingSiblig(false);
144
+ setIsDraggingSibling(false);
129
145
  },
130
146
  collect: monitor => ({
131
147
  isDragging: monitor.isDragging(),
@@ -138,9 +154,9 @@ const DraggedItem = ({
138
154
 
139
155
  useEffect(() => {
140
156
  if (isDragging) {
141
- setIsDraggingSiblig(true);
157
+ setIsDraggingSibling(true);
142
158
  }
143
- }, [isDragging, setIsDraggingSiblig]);
159
+ }, [isDragging, setIsDraggingSibling]);
144
160
 
145
161
  // Effect in order to force a rerender after reordering the components
146
162
  // Since we are removing the Accordion when doing the DnD we are losing the dragRef, therefore the replaced element cannot be dragged
@@ -195,16 +211,22 @@ const DraggedItem = ({
195
211
  })}
196
212
  icon={<Trash />}
197
213
  />
198
- <DragHandleWrapper
199
- expanded={isOpen}
200
- icon={<Drag />}
201
- label={formatMessage({
214
+ {/* react-dnd is broken in firefox with our IconButton, maybe a ref issue */}
215
+ <Tooltip
216
+ description={formatMessage({
202
217
  id: getTrad('components.DragHandle-label'),
203
218
  defaultMessage: 'Drag',
204
219
  })}
205
- noBorder
206
- ref={refs.dragRef}
207
- />
220
+ >
221
+ <DragButton
222
+ role="button"
223
+ tabIndex={-1}
224
+ ref={refs.dragRef}
225
+ onClick={e => e.stopPropagation()}
226
+ >
227
+ <Drag />
228
+ </DragButton>
229
+ </Tooltip>
208
230
  </Stack>
209
231
  )
210
232
  }
@@ -268,7 +290,7 @@ const DraggedItem = ({
268
290
  DraggedItem.defaultProps = {
269
291
  isDraggingSibling: false,
270
292
  isOpen: false,
271
- setIsDraggingSiblig: () => {},
293
+ setIsDraggingSibling: () => {},
272
294
  toggleCollapses: () => {},
273
295
  };
274
296
 
@@ -284,7 +306,7 @@ DraggedItem.propTypes = {
284
306
  toggleCollapses: PropTypes.func,
285
307
  moveComponentField: PropTypes.func.isRequired,
286
308
  removeRepeatableField: PropTypes.func.isRequired,
287
- setIsDraggingSiblig: PropTypes.func,
309
+ setIsDraggingSibling: PropTypes.func,
288
310
  triggerFormValidation: PropTypes.func.isRequired,
289
311
  // checkFormErrors: PropTypes.func.isRequired,
290
312
  displayedValue: PropTypes.string.isRequired,
@@ -47,7 +47,7 @@ const RepeatableComponent = ({
47
47
  const toggleNotification = useNotification();
48
48
  const { formatMessage } = useIntl();
49
49
  const [collapseToOpen, setCollapseToOpen] = useState('');
50
- const [isDraggingSibling, setIsDraggingSiblig] = useState(false);
50
+ const [isDraggingSibling, setIsDraggingSibling] = useState(false);
51
51
  const [, drop] = useDrop({ accept: ItemTypes.COMPONENT });
52
52
  const { getComponentLayout } = useContentTypeLayout();
53
53
  const componentLayoutData = useMemo(() => getComponentLayout(componentUid), [
@@ -173,7 +173,7 @@ const RepeatableComponent = ({
173
173
  }}
174
174
  parentName={name}
175
175
  schema={componentLayoutData}
176
- setIsDraggingSiblig={setIsDraggingSiblig}
176
+ setIsDraggingSibling={setIsDraggingSibling}
177
177
  toggleCollapses={toggleCollapses}
178
178
  />
179
179
  );
@@ -43,14 +43,20 @@ const App = () => {
43
43
  );
44
44
  }
45
45
 
46
+ // Array of models that are displayed in the content manager
47
+ const supportedModelsToDisplay = models.filter(({ isDisplayed }) => isDisplayed);
48
+
46
49
  // Redirect the user to the 403 page
47
- // FIXME when changing the routing
48
- if (authorisedModels.length === 0 && models.length > 0 && pathname !== '/content-manager/403') {
50
+ if (
51
+ authorisedModels.length === 0 &&
52
+ supportedModelsToDisplay.length > 0 &&
53
+ pathname !== '/content-manager/403'
54
+ ) {
49
55
  return <Redirect to="/content-manager/403" />;
50
56
  }
51
57
 
52
58
  // Redirect the user to the create content type page
53
- if (models.length === 0 && pathname !== '/content-manager/no-content-types') {
59
+ if (supportedModelsToDisplay.length === 0 && pathname !== '/content-manager/no-content-types') {
54
60
  return <Redirect to="/content-manager/no-content-types" />;
55
61
  }
56
62
 
@@ -341,7 +341,7 @@ const DisplayedFieldButton = ({
341
341
  isHidden={isHidden}
342
342
  >
343
343
  <DragButton
344
- as="button"
344
+ as="span"
345
345
  type="button"
346
346
  ref={refs.dragRef}
347
347
  onClick={e => e.stopPropagation()}
@@ -24,7 +24,7 @@ const FieldButtonContent = ({ attribute, onEditField, onDeleteField, children })
24
24
 
25
25
  return (
26
26
  <Box overflow="hidden" width="100%">
27
- <Flex paddingLeft={3} alignItems="baseline" justifyContent="space-between">
27
+ <Flex paddingLeft={3} alignItems="center" justifyContent="space-between">
28
28
  <Typography fontWeight="semiBold" textColor="neutral800" ellipsis>
29
29
  {children}
30
30
  </Typography>
@@ -91,7 +91,7 @@ const RelationalFieldButton = ({
91
91
  isDragging={isDragging}
92
92
  >
93
93
  <DragButton
94
- as="button"
94
+ as="span"
95
95
  type="button"
96
96
  ref={dragButtonRef}
97
97
  onClick={e => e.stopPropagation()}
@@ -195,6 +195,7 @@ const DraggableCard = ({
195
195
  >
196
196
  <Stack horizontal size={3}>
197
197
  <DragButton
198
+ as='span'
198
199
  aria-label={formatMessage(
199
200
  {
200
201
  id: getTrad('components.DraggableCard.move.field'),
@@ -178,7 +178,10 @@ const Register = ({ fieldsToDisable, noSignin, onSubmit, schema }) => {
178
178
  : undefined
179
179
  }
180
180
  required
181
- label={formatMessage({ id: 'Auth.form.email.label', defaultMessage: 'Email' })}
181
+ label={formatMessage({
182
+ id: 'Auth.form.email.label',
183
+ defaultMessage: 'Email',
184
+ })}
182
185
  type="email"
183
186
  />
184
187
  <PasswordInput
@@ -94,6 +94,8 @@ const forms = {
94
94
  email: yup
95
95
  .string()
96
96
  .email(translatedErrors.email)
97
+ .strict()
98
+ .lowercase(translatedErrors.lowercase)
97
99
  .required(translatedErrors.required),
98
100
  confirmPassword: yup
99
101
  .string()
@@ -211,6 +211,7 @@ const ProfilePage = () => {
211
211
  value={values.firstname || ''}
212
212
  type="text"
213
213
  name="firstname"
214
+ required
214
215
  />
215
216
  </GridItem>
216
217
  <GridItem s={12} col={6}>
@@ -234,6 +235,7 @@ const ProfilePage = () => {
234
235
  value={values.email || ''}
235
236
  type="email"
236
237
  name="email"
238
+ required
237
239
  />
238
240
  </GridItem>
239
241
  <GridItem s={12} col={6}>
@@ -208,6 +208,7 @@ const ApiTokenCreateView = () => {
208
208
  })}
209
209
  onChange={handleChange}
210
210
  value={values.name}
211
+ required
211
212
  />
212
213
  </GridItem>
213
214
  <GridItem key="description" col={6} xs={12}>
@@ -15,6 +15,7 @@ const layout = [
15
15
  col: 6,
16
16
  xs: 12,
17
17
  },
18
+ required: true,
18
19
  },
19
20
  {
20
21
  intlLabel: {
@@ -49,6 +50,7 @@ const layout = [
49
50
  col: 6,
50
51
  xs: 12,
51
52
  },
53
+ required: true,
52
54
  },
53
55
  {
54
56
  intlLabel: {
@@ -15,6 +15,7 @@ const layout = [
15
15
  col: 6,
16
16
  xs: 12,
17
17
  },
18
+ required: true,
18
19
  },
19
20
  {
20
21
  intlLabel: {
@@ -49,6 +50,7 @@ const layout = [
49
50
  col: 6,
50
51
  xs: 12,
51
52
  },
53
+ required: true,
52
54
  },
53
55
  ],
54
56
  ];
@@ -68,6 +68,7 @@ const SelectRoles = ({ disabled, error, onChange, value }) => {
68
68
  startIcon={startIcon}
69
69
  value={value}
70
70
  withTags
71
+ required
71
72
  >
72
73
  {(data || []).map(role => {
73
74
  return (
@@ -100,7 +100,7 @@ const EventInput = ({ isDraftAndPublish }) => {
100
100
 
101
101
  return (
102
102
  <Stack size={1}>
103
- <FieldLabel>
103
+ <FieldLabel required>
104
104
  {formatMessage({
105
105
  id: 'Settings.webhooks.form.events',
106
106
  defaultMessage: 'Events',
@@ -114,6 +114,7 @@ const WebhookForm = ({
114
114
  id: 'Settings.webhooks.form.name',
115
115
  defaultMessage: 'Name',
116
116
  })}
117
+ required
117
118
  />
118
119
  </GridItem>
119
120
  <GridItem col={12}>
@@ -125,6 +126,7 @@ const WebhookForm = ({
125
126
  id: 'Settings.roles.form.input.url',
126
127
  defaultMessage: 'Url',
127
128
  })}
129
+ required
128
130
  />
129
131
  </GridItem>
130
132
  </Grid>
@@ -407,6 +407,7 @@
407
407
  "components.Input.error.password.noMatch": "Passwords do not match",
408
408
  "components.Input.error.validation.email": "This is an invalid email",
409
409
  "components.Input.error.validation.json": "This doesn't match the JSON format",
410
+ "components.Input.error.validation.lowercase": "The value must be a lowercase string",
410
411
  "components.Input.error.validation.max": "The value is too high.",
411
412
  "components.Input.error.validation.maxLength": "The value is too long.",
412
413
  "components.Input.error.validation.min": "The value is too low.",