@strapi/admin 4.0.0-beta.13 → 4.0.0-beta.17

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 (258) hide show
  1. package/admin/src/components/AuthenticatedApp/index.js +2 -1
  2. package/admin/src/components/AutoReloadOverlayBlockerProvider/Blocker.js +3 -2
  3. package/admin/src/components/LeftMenu/index.js +5 -5
  4. package/admin/src/components/{UpgradePlanModal /index.js → UpgradePlanModal/index.js} +7 -11
  5. package/admin/src/content-manager/components/ComponentInitializer/index.js +5 -5
  6. package/admin/src/content-manager/components/DragLayer/index.js +3 -1
  7. package/admin/src/content-manager/components/DynamicTable/CellContent/Media/FileWrapper.js +4 -2
  8. package/admin/src/content-manager/components/DynamicTable/CellContent/Relation/PopoverContent.js +4 -4
  9. package/admin/src/content-manager/components/DynamicTable/CellContent/Relation/index.js +5 -5
  10. package/admin/src/content-manager/components/DynamicTable/CellContent/index.js +5 -5
  11. package/admin/src/content-manager/components/DynamicTable/ConfirmDialogDelete/index.js +3 -3
  12. package/admin/src/content-manager/components/DynamicTable/ConfirmDialogDeleteAll/index.js +3 -3
  13. package/admin/src/content-manager/components/DynamicTable/TableRows/index.js +2 -1
  14. package/admin/src/content-manager/components/DynamicZone/components/AddComponentButton/index.js +14 -6
  15. package/admin/src/content-manager/components/DynamicZone/components/Component/Rectangle.js +1 -1
  16. package/admin/src/content-manager/components/DynamicZone/components/Component/index.js +11 -2
  17. package/admin/src/content-manager/components/DynamicZone/components/ComponentPicker/Category/ComponentCard/index.js +4 -4
  18. package/admin/src/content-manager/components/DynamicZone/components/ComponentPicker/Category/index.js +1 -1
  19. package/admin/src/content-manager/components/DynamicZone/components/ComponentPicker/index.js +3 -3
  20. package/admin/src/content-manager/components/DynamicZone/components/DzLabel/index.js +10 -3
  21. package/admin/src/content-manager/components/EditViewDataManagerProvider/index.js +3 -1
  22. package/admin/src/content-manager/components/EditViewDataManagerProvider/utils/schema.js +20 -20
  23. package/admin/src/content-manager/components/FieldComponent/Label.js +10 -4
  24. package/admin/src/content-manager/components/{InputJSON/Hint.js → Hint/index.js} +3 -3
  25. package/admin/src/content-manager/components/InputJSON/FieldError.js +9 -3
  26. package/admin/src/content-manager/components/InputJSON/Label.js +9 -3
  27. package/admin/src/content-manager/components/InputJSON/index.js +1 -1
  28. package/admin/src/content-manager/components/InputUID/index.js +7 -7
  29. package/admin/src/content-manager/components/Inputs/index.js +10 -4
  30. package/admin/src/content-manager/components/RepeatableComponent/AccordionGroupCustom/index.js +11 -3
  31. package/admin/src/content-manager/components/RepeatableComponent/AddFieldButton.js +3 -3
  32. package/admin/src/content-manager/components/RepeatableComponent/DragPreview.js +12 -7
  33. package/admin/src/content-manager/components/RepeatableComponent/DraggedItem/DraggingSibling.js +3 -3
  34. package/admin/src/content-manager/components/RepeatableComponent/index.js +1 -1
  35. package/admin/src/content-manager/components/SelectMany/ListItem.js +2 -2
  36. package/admin/src/content-manager/components/SelectMany/index.js +11 -2
  37. package/admin/src/content-manager/components/SelectOne/SingleValue.js +2 -2
  38. package/admin/src/content-manager/components/SelectOne/index.js +34 -21
  39. package/admin/src/content-manager/components/SelectWrapper/Label.js +9 -3
  40. package/admin/src/content-manager/components/SelectWrapper/Option.js +2 -2
  41. package/admin/src/content-manager/components/SelectWrapper/index.js +4 -7
  42. package/admin/src/content-manager/components/State/index.js +3 -3
  43. package/admin/src/content-manager/components/Wysiwyg/Editor.js +3 -2
  44. package/admin/src/content-manager/components/Wysiwyg/EditorLayout.js +3 -3
  45. package/admin/src/content-manager/components/Wysiwyg/EditorStylesContainer.js +5 -2
  46. package/admin/src/content-manager/components/Wysiwyg/WysiwygFooter.js +3 -3
  47. package/admin/src/content-manager/components/Wysiwyg/index.js +5 -12
  48. package/admin/src/content-manager/pages/EditSettingsView/components/ComponentFieldList.js +2 -2
  49. package/admin/src/content-manager/pages/EditSettingsView/components/DisplayedFieldButton.js +393 -0
  50. package/admin/src/content-manager/pages/EditSettingsView/components/DisplayedFields.js +12 -41
  51. package/admin/src/content-manager/pages/EditSettingsView/components/FieldButtonContent.js +84 -0
  52. package/admin/src/content-manager/pages/EditSettingsView/components/FormModal.js +3 -3
  53. package/admin/src/content-manager/pages/EditSettingsView/components/RelationalFieldButton.js +135 -0
  54. package/admin/src/content-manager/pages/EditSettingsView/components/RelationalFields.js +14 -12
  55. package/admin/src/content-manager/pages/EditSettingsView/components/RowItemsLayout.js +39 -0
  56. package/admin/src/content-manager/pages/EditSettingsView/components/RowsLayout.js +32 -0
  57. package/admin/src/content-manager/pages/EditSettingsView/index.js +56 -5
  58. package/admin/src/content-manager/pages/EditView/DraftAndPublishBadge/index.js +5 -5
  59. package/admin/src/content-manager/pages/EditView/Header/index.js +10 -10
  60. package/admin/src/content-manager/pages/EditView/Informations/index.js +11 -10
  61. package/admin/src/content-manager/pages/EditView/index.js +7 -8
  62. package/admin/src/content-manager/pages/ListSettingsView/components/CardPreview.js +3 -3
  63. package/admin/src/content-manager/pages/ListSettingsView/components/DraggableCard.js +3 -3
  64. package/admin/src/content-manager/pages/ListSettingsView/components/EditFieldForm.js +3 -3
  65. package/admin/src/content-manager/pages/ListSettingsView/components/Settings.js +3 -3
  66. package/admin/src/content-manager/pages/ListSettingsView/components/SortDisplayedFields.js +3 -3
  67. package/admin/src/content-manager/pages/ListView/PaginationFooter/index.js +1 -1
  68. package/admin/src/content-manager/pages/ListView/index.js +4 -0
  69. package/admin/src/index.js +1 -0
  70. package/admin/src/pages/Admin/Onboarding/index.js +4 -4
  71. package/admin/src/pages/AuthPage/components/ForgotPassword/index.js +10 -5
  72. package/admin/src/pages/AuthPage/components/ForgotPasswordSuccess/index.js +7 -7
  73. package/admin/src/pages/AuthPage/components/Login/BaseLogin.js +12 -7
  74. package/admin/src/pages/AuthPage/components/Oops/index.js +6 -6
  75. package/admin/src/pages/AuthPage/components/Register/index.js +5 -14
  76. package/admin/src/pages/AuthPage/components/ResetPassword/index.js +10 -5
  77. package/admin/src/pages/AuthPage/utils/forms.js +2 -2
  78. package/admin/src/pages/HomePage/HomeHeader.js +5 -5
  79. package/admin/src/pages/HomePage/SocialLinks.js +5 -9
  80. package/admin/src/pages/InstalledPluginsPage/Plugins.js +111 -0
  81. package/admin/src/pages/InstalledPluginsPage/index.js +4 -25
  82. package/admin/src/pages/InstalledPluginsPage/utils/api.js +11 -0
  83. package/admin/src/pages/ProfilePage/index.js +10 -9
  84. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/ContentBox/index.js +5 -2
  85. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/index.js +13 -1
  86. package/admin/src/pages/SettingsPage/pages/ApiTokens/ListView/DynamicTable/DeleteButton/index.js +6 -2
  87. package/admin/src/pages/SettingsPage/pages/ApiTokens/ListView/DynamicTable/index.js +12 -2
  88. package/admin/src/pages/SettingsPage/pages/ApiTokens/ListView/index.js +7 -0
  89. package/admin/src/pages/SettingsPage/pages/Roles/ListPage/index.js +1 -1
  90. package/admin/src/pages/SettingsPage/pages/Users/EditPage/index.js +3 -3
  91. package/admin/src/pages/SettingsPage/pages/Users/ListPage/DynamicTable/TableRows/index.js +4 -3
  92. package/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/index.js +2 -0
  93. package/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/utils/schema.js +1 -1
  94. package/admin/src/pages/SettingsPage/pages/Users/ListPage/PaginationFooter/index.js +1 -1
  95. package/admin/src/pages/SettingsPage/pages/Users/utils/validations/users/edit.js +2 -2
  96. package/admin/src/pages/SettingsPage/pages/Users/utils/validations/users/profile.js +6 -2
  97. package/admin/src/pages/SettingsPage/pages/Webhooks/ListView/index.js +0 -1
  98. package/admin/src/plugins.js +14 -18
  99. package/admin/src/translations/en.json +1 -0
  100. package/admin/src/utils/getFullName.js +9 -0
  101. package/admin/src/utils/index.js +1 -1
  102. package/build/1024.1b15fbb5.chunk.js +1 -0
  103. package/build/1024.664cd4ee.chunk.js +1 -0
  104. package/build/1856.53d42ce5.chunk.js +1 -0
  105. package/build/1856.e06c9787.chunk.js +1 -0
  106. package/build/2912.591ddc96.chunk.js +1 -0
  107. package/build/2912.b0ac46e0.chunk.js +1 -0
  108. package/build/3226.0dc582b2.chunk.js +2 -0
  109. package/build/3226.0dc582b2.chunk.js.LICENSE.txt +15 -0
  110. package/build/3226.e8fe1445.chunk.js +2 -0
  111. package/build/3226.e8fe1445.chunk.js.LICENSE.txt +15 -0
  112. package/build/3471.327fa7e3.chunk.js +2 -0
  113. package/build/3471.327fa7e3.chunk.js.LICENSE.txt +13 -0
  114. package/build/4064.2683bcce.chunk.js +1 -0
  115. package/build/4064.56677f11.chunk.js +1 -0
  116. package/build/4261.a08a535e.chunk.js +1 -0
  117. package/build/4261.b7b7ac00.chunk.js +1 -0
  118. package/build/4362.60f0937a.chunk.js +1 -0
  119. package/build/4362.aefff6ad.chunk.js +1 -0
  120. package/build/4362.fd69112c.chunk.js +1 -0
  121. package/build/4715.2f51454b.chunk.js +1 -0
  122. package/build/4715.35096dd7.chunk.js +1 -0
  123. package/build/4715.bb03cfd8.chunk.js +1 -0
  124. package/build/4741.1fb6ad6e.chunk.js +2 -0
  125. package/build/4741.1fb6ad6e.chunk.js.LICENSE.txt +9 -0
  126. package/build/4741.45afdeda.chunk.js +2 -0
  127. package/build/4741.45afdeda.chunk.js.LICENSE.txt +9 -0
  128. package/build/497.05fa226b.chunk.js +1 -0
  129. package/build/497.838781d7.chunk.js +1 -0
  130. package/build/4982.5031302b.chunk.js +1 -0
  131. package/build/4982.a7f87e6c.chunk.js +1 -0
  132. package/build/5881.4bf14a31.chunk.js +2 -0
  133. package/build/5881.4bf14a31.chunk.js.LICENSE.txt +4 -0
  134. package/build/5881.deb18c91.chunk.js +2 -0
  135. package/build/5881.deb18c91.chunk.js.LICENSE.txt +4 -0
  136. package/build/6250.11ba8b50.chunk.js +1 -0
  137. package/build/6250.50133e63.chunk.js +1 -0
  138. package/build/6250.785ba0da.chunk.js +1 -0
  139. package/build/6925.4767e761.chunk.js +2 -0
  140. package/build/6925.4767e761.chunk.js.LICENSE.txt +4 -0
  141. package/build/7841.736189f7.chunk.js +1 -0
  142. package/build/7841.cc8241a5.chunk.js +1 -0
  143. package/build/8447.32ee17be.chunk.js +2 -0
  144. package/build/8447.32ee17be.chunk.js.LICENSE.txt +22 -0
  145. package/build/8447.686f702c.chunk.js +2 -0
  146. package/build/8447.686f702c.chunk.js.LICENSE.txt +22 -0
  147. package/build/8469.8d819a3c.chunk.js +1 -0
  148. package/build/849.abcc3b07.chunk.js +1 -0
  149. package/build/849.fc26299c.chunk.js +1 -0
  150. package/build/9138.86a2c5ad.chunk.js +2 -0
  151. package/build/9138.86a2c5ad.chunk.js.LICENSE.txt +15 -0
  152. package/build/9238.9258f79b.chunk.js +1 -0
  153. package/build/9238.f112d6c9.chunk.js +1 -0
  154. package/build/9964.345994e8.chunk.js +2 -0
  155. package/build/9964.345994e8.chunk.js.LICENSE.txt +15 -0
  156. package/build/Admin-authenticatedApp.62e5ca51.chunk.js +1 -0
  157. package/build/Admin-authenticatedApp.7bdfbab4.chunk.js +1 -0
  158. package/build/Admin-authenticatedApp.7e29e95b.chunk.js +1 -0
  159. package/build/Admin-authenticatedApp.b1104a6a.chunk.js +1 -0
  160. package/build/Admin-authenticatedApp.bfdec496.chunk.js +1 -0
  161. package/build/Admin_homePage.31e37124.chunk.js +1 -0
  162. package/build/Admin_homePage.4398cf1a.chunk.js +1 -0
  163. package/build/Admin_marketplace.201373e2.chunk.js +1 -0
  164. package/build/Admin_pluginsPage.db5748e1.chunk.js +1 -0
  165. package/build/Admin_profilePage.3aa61921.chunk.js +1 -0
  166. package/build/Admin_profilePage.e941f627.chunk.js +1 -0
  167. package/build/Admin_profilePage.f9369a69.chunk.js +1 -0
  168. package/build/Admin_settingsPage.363ad01d.chunk.js +1 -0
  169. package/build/Admin_settingsPage.60a92e51.chunk.js +1 -0
  170. package/build/Admin_settingsPage.ea6de611.chunk.js +1 -0
  171. package/build/admin-edit-roles-page.e91bd9e5.chunk.js +1 -0
  172. package/build/admin-edit-users.110f6f05.chunk.js +1 -0
  173. package/build/admin-edit-users.bcdd2e4d.chunk.js +1 -0
  174. package/build/admin-users.640b6123.chunk.js +1 -0
  175. package/build/admin-users.a2d08780.chunk.js +1 -0
  176. package/build/admin-users.fcabe1ed.chunk.js +1 -0
  177. package/build/api-tokens-create-page.451be52c.chunk.js +1 -0
  178. package/build/api-tokens-create-page.57119445.chunk.js +1 -0
  179. package/build/api-tokens-create-page.ac4285ba.chunk.js +1 -0
  180. package/build/api-tokens-edit-page.7b419f29.chunk.js +1 -0
  181. package/build/api-tokens-edit-page.b1c3ef5c.chunk.js +1 -0
  182. package/build/api-tokens-edit-page.b8900ddd.chunk.js +1 -0
  183. package/build/api-tokens-list-page.b053ddcd.chunk.js +1 -0
  184. package/build/api-tokens-list-page.d451255e.chunk.js +1 -0
  185. package/build/codemirror-addon-lint.91580cda.chunk.js +1 -0
  186. package/build/codemirror-theme.4a209ed5.chunk.js +1 -0
  187. package/build/content-manager.08eae196.chunk.js +1 -0
  188. package/build/content-manager.196287ea.chunk.js +1 -0
  189. package/build/content-manager.473d2b84.chunk.js +1 -0
  190. package/build/content-manager.a6c34b64.chunk.js +1 -0
  191. package/build/content-manager.d09d2a3a.chunk.js +1 -0
  192. package/build/content-type-builder.0e689f6b.chunk.js +1 -0
  193. package/build/content-type-builder.2a6a7156.chunk.js +1 -0
  194. package/build/content-type-builder.e9231547.chunk.js +1 -0
  195. package/build/email-settings-page.8f0ee2a7.chunk.js +1 -0
  196. package/build/email-settings-page.b1048dc6.chunk.js +1 -0
  197. package/build/en-json.6282a00f.chunk.js +1 -0
  198. package/build/fontawesome-css-all.162c8569.chunk.js +1 -0
  199. package/build/fontawesome-css.b1736497.chunk.js +1 -0
  200. package/build/fontawesome-js.2639263c.chunk.js +2 -0
  201. package/build/fontawesome-js.2639263c.chunk.js.LICENSE.txt +4 -0
  202. package/build/i18n-settings-page.5fe86c22.chunk.js +1 -0
  203. package/build/i18n-settings-page.acc3a212.chunk.js +1 -0
  204. package/build/index.html +1 -1
  205. package/build/main.3414cc4f.js +2 -0
  206. package/build/main.3414cc4f.js.LICENSE.txt +91 -0
  207. package/build/main.e21a82f5.js +2 -0
  208. package/build/main.e21a82f5.js.LICENSE.txt +91 -0
  209. package/build/main.f425e7e8.js +2 -0
  210. package/build/main.f425e7e8.js.LICENSE.txt +91 -0
  211. package/build/main.fa2000bd.js +2 -0
  212. package/build/main.fa2000bd.js.LICENSE.txt +82 -0
  213. package/build/main.ff33c0c2.js +2 -0
  214. package/build/main.ff33c0c2.js.LICENSE.txt +91 -0
  215. package/build/runtime~main.0685316b.js +1 -0
  216. package/build/runtime~main.15acd133.js +1 -0
  217. package/build/runtime~main.3f600349.js +1 -0
  218. package/build/runtime~main.44db7ede.js +1 -0
  219. package/build/runtime~main.cc96a027.js +1 -0
  220. package/build/sso-settings-page.bd7a8fd7.chunk.js +1 -0
  221. package/build/upload-settings.4daf6206.chunk.js +1 -0
  222. package/build/upload-settings.7d40d236.chunk.js +1 -0
  223. package/build/upload.c11a292c.chunk.js +1 -0
  224. package/build/upload.e53f8430.chunk.js +1 -0
  225. package/build/users-advanced-settings-page.2dfeffe8.chunk.js +1 -0
  226. package/build/users-advanced-settings-page.669b059c.chunk.js +1 -0
  227. package/build/users-email-settings-page.a4e19b13.chunk.js +1 -0
  228. package/build/users-email-settings-page.b1d1f551.chunk.js +1 -0
  229. package/build/users-providers-settings-page.733a51ec.chunk.js +1 -0
  230. package/build/users-providers-settings-page.866ddeed.chunk.js +1 -0
  231. package/build/users-roles-settings-page.2f12885b.chunk.js +1 -0
  232. package/build/users-roles-settings-page.3629c123.chunk.js +1 -0
  233. package/build/users-roles-settings-page.9d5895d6.chunk.js +1 -0
  234. package/build/users-roles-settings-page.fafcbe29.chunk.js +1 -0
  235. package/build/webhook-edit-page.634e50da.chunk.js +1 -0
  236. package/build/webhook-edit-page.f4f6935d.chunk.js +1 -0
  237. package/build/webhook-list-page.aae66737.chunk.js +1 -0
  238. package/build/webhook-list-page.fc554fbe.chunk.js +1 -0
  239. package/ee/admin/pages/AuthPage/components/Login/index.js +3 -3
  240. package/ee/admin/pages/AuthPage/components/Providers/SSOProviders.js +2 -2
  241. package/ee/admin/pages/AuthPage/components/Providers/index.js +12 -6
  242. package/ee/admin/pages/SettingsPage/SingleSignOn/index.js +119 -115
  243. package/ee/admin/pages/SettingsPage/pages/Roles/CreatePage/index.js +5 -5
  244. package/ee/admin/pages/SettingsPage/pages/Roles/ListPage/index.js +7 -7
  245. package/ee/server/controllers/authentication/middlewares.js +1 -1
  246. package/package.json +10 -9
  247. package/scripts/build.js +13 -1
  248. package/scripts/create-dev-plugins-file.js +69 -0
  249. package/scripts/create-plugins-file.js +92 -0
  250. package/server/controllers/admin.js +8 -2
  251. package/server/services/content-type.js +4 -4
  252. package/server/services/permission/permissions-manager/sanitize.js +9 -2
  253. package/server/services/user.js +14 -0
  254. package/server/validation/authentication/register.js +2 -2
  255. package/server/validation/common-validators.js +1 -1
  256. package/server/validation/user.js +3 -3
  257. package/admin/src/content-manager/components/Inputs/ComingSoonInput.js +0 -72
  258. package/admin/src/content-manager/pages/EditSettingsView/components/FieldButton.js +0 -118
@@ -9,12 +9,13 @@ import PluginsInitializer from '../PluginsInitializer';
9
9
  import RBACProvider from '../RBACProvider';
10
10
  import { fetchAppInfo, fetchCurrentUserPermissions, fetchStrapiLatestRelease } from './utils/api';
11
11
  import checkLatestStrapiVersion from './utils/checkLatestStrapiVersion';
12
+ import { getFullName } from '../../utils';
12
13
 
13
14
  const strapiVersion = packageJSON.version;
14
15
 
15
16
  const AuthenticatedApp = () => {
16
17
  const userInfo = auth.getUserInfo();
17
- const userName = get(userInfo, 'username') || `${userInfo.firstname} ${userInfo.lastname}`;
18
+ const userName = get(userInfo, 'username') || getFullName(userInfo.firstname, userInfo.lastname);
18
19
  const [userDisplayName, setUserDisplayName] = useState(userName);
19
20
  const { showReleaseNotification } = useConfigurations();
20
21
  const [
@@ -10,7 +10,6 @@ import { Link } from '@strapi/design-system/Link';
10
10
  import { Box } from '@strapi/design-system/Box';
11
11
  import { Stack } from '@strapi/design-system/Stack';
12
12
  import { Flex } from '@strapi/design-system/Flex';
13
- import { H1 } from '@strapi/design-system/Text';
14
13
  import { Typography } from '@strapi/design-system/Typography';
15
14
  import { Content, IconBox, Overlay } from './Overlay';
16
15
 
@@ -48,7 +47,9 @@ const Blocker = ({ displayedIcon, description, title, isOpen }) => {
48
47
  <Content size={6}>
49
48
  <Stack size={2}>
50
49
  <Flex justifyContent="center">
51
- <H1>{formatMessage(title)}</H1>
50
+ <Typography as="h1" variant="alpha">
51
+ {formatMessage(title)}
52
+ </Typography>
52
53
  </Flex>
53
54
  <Flex justifyContent="center">
54
55
  <Typography as="h2" textColor="neutral600" fontSize={4} fontWeight="regular">
@@ -15,7 +15,7 @@ import {
15
15
  } from '@strapi/design-system/MainNav';
16
16
  import { FocusTrap } from '@strapi/design-system/FocusTrap';
17
17
  import { Box } from '@strapi/design-system/Box';
18
- import { Text } from '@strapi/design-system/Text';
18
+ import { Typography } from '@strapi/design-system/Typography';
19
19
  import { Stack } from '@strapi/design-system/Stack';
20
20
  import Write from '@strapi/icons/Write';
21
21
  import Exit from '@strapi/icons/Exit';
@@ -144,20 +144,20 @@ const LeftMenu = ({ generalSectionLinks, pluginsSectionLinks }) => {
144
144
  <FocusTrap onEscape={handleToggleUserLinks}>
145
145
  <Stack size={0}>
146
146
  <LinkUser onClick={handleToggleUserLinks} to="/me">
147
- <Text>
147
+ <Typography>
148
148
  {formatMessage({
149
149
  id: 'app.components.LeftMenu.profile',
150
150
  defaultMessage: 'Profile',
151
151
  })}
152
- </Text>
152
+ </Typography>
153
153
  </LinkUser>
154
154
  <LinkUser onClick={handleLogout} logout="logout" to="/auth/login">
155
- <Text textColor="danger600">
155
+ <Typography textColor="danger600">
156
156
  {formatMessage({
157
157
  id: 'app.components.LeftMenu.logout',
158
158
  defaultMessage: 'Logout',
159
159
  })}
160
- </Text>
160
+ </Typography>
161
161
  <Exit />
162
162
  </LinkUser>
163
163
  </Stack>
@@ -8,7 +8,7 @@ import { IconButton } from '@strapi/design-system/IconButton';
8
8
  import { LinkButton } from '@strapi/design-system/LinkButton';
9
9
  import { Box } from '@strapi/design-system/Box';
10
10
  import { Flex } from '@strapi/design-system/Flex';
11
- import { Text, H1 } from '@strapi/design-system/Text';
11
+ import { Typography } from '@strapi/design-system/Typography';
12
12
  import { Stack } from '@strapi/design-system/Stack';
13
13
  import ExternalLink from '@strapi/icons/ExternalLink';
14
14
  import Cross from '@strapi/icons/Cross';
@@ -48,10 +48,6 @@ const UpgradeContainer = styled(Flex)`
48
48
  }
49
49
  `;
50
50
 
51
- const TextBold = styled(Text)`
52
- font-weight: 700;
53
- `;
54
-
55
51
  const StackFlexStart = styled(Stack)`
56
52
  align-items: flex-start;
57
53
  max-width: ${400 / 16}rem;
@@ -82,26 +78,26 @@ const UpgradePlanModal = ({ onClose, isOpen }) => {
82
78
  <IconButton onClick={onClose} aria-label="Close" icon={<Cross />} />
83
79
  </CloseButtonContainer>
84
80
  <StackFlexStart size={6}>
85
- <TextBold textColor="primary600">
81
+ <Typography fontWeight="bold" textColor="primary600">
86
82
  {formatMessage({
87
83
  id: 'app.components.UpgradePlanModal.text-ce',
88
84
  defaultMessage: 'COMMUNITY EDITION',
89
85
  })}
90
- </TextBold>
86
+ </Typography>
91
87
  <Stack size={2}>
92
- <H1 as="h2" id="upgrade-plan">
88
+ <Typography variant="alpha" as="h2" id="upgrade-plan">
93
89
  {formatMessage({
94
90
  id: 'app.components.UpgradePlanModal.limit-reached',
95
91
  defaultMessage: 'You have reached the limit',
96
92
  })}
97
- </H1>
98
- <Text>
93
+ </Typography>
94
+ <Typography>
99
95
  {formatMessage({
100
96
  id: 'app.components.UpgradePlanModal.text-power',
101
97
  defaultMessage:
102
98
  'Unlock the full power of Strapi by upgrading your plan to the Enterprise Edition',
103
99
  })}
104
- </Text>
100
+ </Typography>
105
101
  </Stack>
106
102
  <LinkButton href="https://strapi.io/pricing-self-hosted" endIcon={<ExternalLink />}>
107
103
  {formatMessage({
@@ -6,7 +6,7 @@ import PlusCircle from '@strapi/icons/PlusCircle';
6
6
  import { Box } from '@strapi/design-system/Box';
7
7
  import { Stack } from '@strapi/design-system/Stack';
8
8
  import { Flex } from '@strapi/design-system/Flex';
9
- import { Text } from '@strapi/design-system/Text';
9
+ import { Typography } from '@strapi/design-system/Typography';
10
10
  import { pxToRem } from '@strapi/helper-plugin';
11
11
  import { getTrad } from '../../utils';
12
12
 
@@ -46,17 +46,17 @@ const ComponentInitializer = ({ error, isReadOnly, onClick }) => {
46
46
  </IconWrapper>
47
47
  </Flex>
48
48
  <Flex justifyContent="center">
49
- <Text textColor="primary600" small bold>
49
+ <Typography textColor="primary600" variant="pi" fontWeight="bold">
50
50
  {formatMessage({
51
51
  id: getTrad('components.empty-repeatable'),
52
52
  defaultMessage: 'No entry yet. Click on the button below to add one.',
53
53
  })}
54
- </Text>
54
+ </Typography>
55
55
  </Flex>
56
56
  </Stack>
57
57
  </Box>
58
58
  {error?.id && (
59
- <Text textColor="danger600" small>
59
+ <Typography textColor="danger600" variant="pi">
60
60
  {formatMessage(
61
61
  {
62
62
  id: error.id,
@@ -64,7 +64,7 @@ const ComponentInitializer = ({ error, isReadOnly, onClick }) => {
64
64
  },
65
65
  error.values
66
66
  )}
67
- </Text>
67
+ </Typography>
68
68
  )}
69
69
  </>
70
70
  );
@@ -54,7 +54,9 @@ const CustomDragLayer = () => {
54
54
  <LayoutDndProvider>
55
55
  <div style={layerStyles}>
56
56
  <div style={getItemStyles(initialOffset, currentOffset, mouseOffset)} className="col-md-2">
57
- {itemType === ItemTypes.FIELD && <CardPreview labelField={item.labelField} />}
57
+ {[ItemTypes.EDIT_RELATION, ItemTypes.EDIT_FIELD].includes(itemType) && (
58
+ <CardPreview labelField={item.labelField} />
59
+ )}
58
60
  {itemType === ItemTypes.COMPONENT && (
59
61
  <RepeatableComponentPreview displayedValue={item.displayedValue} />
60
62
  )}
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import styled from 'styled-components';
4
4
  import { Flex } from '@strapi/design-system/Flex';
5
- import { TableLabel } from '@strapi/design-system/Text';
5
+ import { Typography } from '@strapi/design-system/Typography';
6
6
 
7
7
  const Wrapper = styled(Flex)`
8
8
  position: relative;
@@ -22,7 +22,9 @@ const Wrapper = styled(Flex)`
22
22
  const FileWrapper = ({ children, ...props }) => {
23
23
  return (
24
24
  <Wrapper justifyContent="center" alignItems="center" as="span" {...props}>
25
- <TableLabel textColor="neutral600">{children}</TableLabel>
25
+ <Typography variant="sigma" textColor="neutral600">
26
+ {children}
27
+ </Typography>
26
28
  </Wrapper>
27
29
  );
28
30
  };
@@ -3,7 +3,7 @@ import { useQuery } from 'react-query';
3
3
  import PropTypes from 'prop-types';
4
4
  import { useIntl } from 'react-intl';
5
5
  import { Box } from '@strapi/design-system/Box';
6
- import { Text } from '@strapi/design-system/Text';
6
+ import { Typography } from '@strapi/design-system/Typography';
7
7
  import { Loader } from '@strapi/design-system/Loader';
8
8
  import { useNotifyAT } from '@strapi/design-system/LiveRegions';
9
9
  import { axiosInstance } from '../../../../../core/utils';
@@ -52,19 +52,19 @@ const PopoverContent = ({ fieldSchema, name, rowId, targetModel, queryInfos }) =
52
52
 
53
53
  return (
54
54
  <Box as="li" key={entry.id} padding={3}>
55
- <Text>
55
+ <Typography>
56
56
  {value ? (
57
57
  <CellValue type={fieldSchema.schema.type} value={entry[fieldSchema.name]} />
58
58
  ) : (
59
59
  '-'
60
60
  )}
61
- </Text>
61
+ </Typography>
62
62
  </Box>
63
63
  );
64
64
  })}
65
65
  {data?.pagination.total > 10 && (
66
66
  <Box as="li" padding={3}>
67
- <Text>[...]</Text>
67
+ <Typography>[...]</Typography>
68
68
  </Box>
69
69
  )}
70
70
  </ul>
@@ -2,7 +2,7 @@ import React, { useState, useRef } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import { useIntl } from 'react-intl';
4
4
  import { IconButton } from '@strapi/design-system/IconButton';
5
- import { Text } from '@strapi/design-system/Text';
5
+ import { Typography } from '@strapi/design-system/Typography';
6
6
  import { Box } from '@strapi/design-system/Box';
7
7
  import { Badge } from '@strapi/design-system/Badge';
8
8
  import { Flex } from '@strapi/design-system/Flex';
@@ -34,9 +34,9 @@ const Relation = ({ fieldSchema, metadatas, queryInfos, name, rowId, value }) =>
34
34
 
35
35
  if (SINGLE_RELATIONS.includes(fieldSchema.relation)) {
36
36
  return (
37
- <Text textColor="neutral800">
37
+ <Typography textColor="neutral800">
38
38
  <CellValue type={metadatas.mainField.schema.type} value={value[metadatas.mainField.name]} />
39
- </Text>
39
+ </Typography>
40
40
  );
41
41
  }
42
42
 
@@ -46,7 +46,7 @@ const Relation = ({ fieldSchema, metadatas, queryInfos, name, rowId, value }) =>
46
46
  <Flex {...stopPropagation}>
47
47
  <RelationCountBadge>{value.count}</RelationCountBadge>
48
48
  <Box paddingLeft={2}>
49
- <Text textColor="neutral800">
49
+ <Typography textColor="neutral800">
50
50
  {formatMessage(
51
51
  {
52
52
  id: 'content-manager.containers.ListPage.items',
@@ -54,7 +54,7 @@ const Relation = ({ fieldSchema, metadatas, queryInfos, name, rowId, value }) =>
54
54
  },
55
55
  { number: value.count }
56
56
  )}
57
- </Text>
57
+ </Typography>
58
58
  </Box>
59
59
  {value.count > 0 && (
60
60
  <ActionWrapper>
@@ -1,19 +1,19 @@
1
1
  import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import styled from 'styled-components';
4
- import { Text } from '@strapi/design-system/Text';
4
+ import { Typography } from '@strapi/design-system/Typography';
5
5
  import Media from './Media';
6
6
  import MultipleMedias from './MultipleMedias';
7
7
  import Relation from './Relation';
8
8
  import CellValue from './CellValue';
9
9
 
10
- const TextMaxWidth = styled(Text)`
10
+ const TypographyMaxWidth = styled(Typography)`
11
11
  max-width: 300px;
12
12
  `;
13
13
 
14
14
  const CellContent = ({ content, fieldSchema, metadatas, name, queryInfos, rowId }) => {
15
15
  if (content === null || content === undefined) {
16
- return <Text textColor="neutral800">-</Text>;
16
+ return <Typography textColor="neutral800">-</Typography>;
17
17
  }
18
18
 
19
19
  if (fieldSchema.type === 'media' && !fieldSchema.multiple) {
@@ -38,9 +38,9 @@ const CellContent = ({ content, fieldSchema, metadatas, name, queryInfos, rowId
38
38
  }
39
39
 
40
40
  return (
41
- <TextMaxWidth ellipsis textColor="neutral800">
41
+ <TypographyMaxWidth ellipsis textColor="neutral800">
42
42
  <CellValue type={fieldSchema.type} value={content} />
43
- </TextMaxWidth>
43
+ </TypographyMaxWidth>
44
44
  );
45
45
  };
46
46
 
@@ -4,7 +4,7 @@ import { useIntl } from 'react-intl';
4
4
  import { Dialog, DialogBody, DialogFooter } from '@strapi/design-system/Dialog';
5
5
  import { Stack } from '@strapi/design-system/Stack';
6
6
  import { Flex } from '@strapi/design-system/Flex';
7
- import { Text } from '@strapi/design-system/Text';
7
+ import { Typography } from '@strapi/design-system/Typography';
8
8
  import { Button } from '@strapi/design-system/Button';
9
9
  import ExclamationMarkCircle from '@strapi/icons/ExclamationMarkCircle';
10
10
  import Trash from '@strapi/icons/Trash';
@@ -27,12 +27,12 @@ const ConfirmDialogDelete = ({ isConfirmButtonLoading, isOpen, onToggleDialog, o
27
27
  <DialogBody icon={<ExclamationMarkCircle />}>
28
28
  <Stack size={2}>
29
29
  <Flex justifyContent="center">
30
- <Text id="confirm-description">
30
+ <Typography id="confirm-description">
31
31
  {formatMessage({
32
32
  id: 'components.popUpWarning.message',
33
33
  defaultMessage: 'Are you sure you want to delete this?',
34
34
  })}
35
- </Text>
35
+ </Typography>
36
36
  </Flex>
37
37
  <Flex>
38
38
  <InjectionZoneList area="contentManager.listView.deleteModalAdditionalInfos" />
@@ -4,7 +4,7 @@ import { useIntl } from 'react-intl';
4
4
  import { Dialog, DialogBody, DialogFooter } from '@strapi/design-system/Dialog';
5
5
  import { Stack } from '@strapi/design-system/Stack';
6
6
  import { Flex } from '@strapi/design-system/Flex';
7
- import { Text } from '@strapi/design-system/Text';
7
+ import { Typography } from '@strapi/design-system/Typography';
8
8
  import { Button } from '@strapi/design-system/Button';
9
9
  import ExclamationMarkCircle from '@strapi/icons/ExclamationMarkCircle';
10
10
  import Trash from '@strapi/icons/Trash';
@@ -28,12 +28,12 @@ const ConfirmDialogDeleteAll = ({ isConfirmButtonLoading, isOpen, onToggleDialog
28
28
  <DialogBody icon={<ExclamationMarkCircle />}>
29
29
  <Stack size={2}>
30
30
  <Flex justifyContent="center">
31
- <Text id="confirm-description">
31
+ <Typography id="confirm-description">
32
32
  {formatMessage({
33
33
  id: getTrad('popUpWarning.bodyMessage.contentType.delete.all'),
34
34
  defaultMessage: 'Are you sure you want to delete these entries?',
35
35
  })}
36
- </Text>
36
+ </Typography>
37
37
  </Flex>
38
38
  <Flex>
39
39
  <InjectionZoneList area="contentManager.listView.deleteModalAdditionalInfos" />
@@ -13,6 +13,7 @@ import { useHistory } from 'react-router-dom';
13
13
  import { useIntl } from 'react-intl';
14
14
  import { usePluginsQueryParams } from '../../../hooks';
15
15
  import CellContent from '../CellContent';
16
+ import { getFullName } from '../../../../utils';
16
17
 
17
18
  const TableRows = ({
18
19
  canCreate,
@@ -69,7 +70,7 @@ const TableRows = ({
69
70
  id: 'app.component.table.select.one-entry',
70
71
  defaultMessage: `Select {target}`,
71
72
  },
72
- { target: `${data.firstname} ${data.lastname}` }
73
+ { target: getFullName(data.firstname, data.lastname) }
73
74
  )}
74
75
  checked={isChecked}
75
76
  onChange={() => {
@@ -12,7 +12,7 @@ import PlusCircle from '@strapi/icons/PlusCircle';
12
12
  import { BaseButton } from '@strapi/design-system/BaseButton';
13
13
  import { Box } from '@strapi/design-system/Box';
14
14
  import { Flex } from '@strapi/design-system/Flex';
15
- import { Text, ButtonText } from '@strapi/design-system/Text';
15
+ import { Typography } from '@strapi/design-system/Typography';
16
16
  import { getTrad } from '../../../../utils';
17
17
 
18
18
  const StyledAddIcon = styled(PlusCircle)`
@@ -29,8 +29,12 @@ const StyledAddIcon = styled(PlusCircle)`
29
29
 
30
30
  const StyledButton = styled(BaseButton)`
31
31
  border-radius: 26px;
32
+ border-color: ${({ theme }) => theme.colors.neutral150};
32
33
  background: ${({ theme }) => theme.colors.neutral0};
33
- padding: ${({ theme }) => theme.spaces[3]};
34
+ padding-top: ${({ theme }) => theme.spaces[3]};
35
+ padding-right: ${({ theme }) => theme.spaces[4]};
36
+ padding-bottom: ${({ theme }) => theme.spaces[3]};
37
+ padding-left: ${({ theme }) => theme.spaces[4]};
34
38
 
35
39
  box-shadow: ${({ theme }) => theme.shadows.filterShadow};
36
40
 
@@ -43,7 +47,7 @@ const StyledButton = styled(BaseButton)`
43
47
  }
44
48
  &:hover {
45
49
  color: ${({ theme }) => theme.colors.primary600} !important;
46
- ${Text} {
50
+ ${Typography} {
47
51
  color: ${({ theme }) => theme.colors.primary600} !important;
48
52
  }
49
53
 
@@ -57,7 +61,7 @@ const StyledButton = styled(BaseButton)`
57
61
  }
58
62
  }
59
63
  &:active {
60
- ${Text} {
64
+ ${Typography} {
61
65
  color: ${({ theme }) => theme.colors.primary600};
62
66
  }
63
67
  ${StyledAddIcon} {
@@ -124,9 +128,13 @@ const AddComponentButton = ({
124
128
  <BoxFullHeight aria-hidden paddingRight={2}>
125
129
  <StyledAddIcon $isOpen={isOpen} $hasError={hasError && !isOpen} />
126
130
  </BoxFullHeight>
127
- <ButtonText textColor={hasError && !isOpen ? 'danger600' : 'neutral500'} small>
131
+ <Typography
132
+ variant="pi"
133
+ fontWeight="bold"
134
+ textColor={hasError && !isOpen ? 'danger600' : 'neutral500'}
135
+ >
128
136
  {buttonLabel}
129
- </ButtonText>
137
+ </Typography>
130
138
  </Flex>
131
139
  </StyledButton>
132
140
  </Box>
@@ -11,7 +11,7 @@ const StyledBox = styled(Box)`
11
11
  const Rectangle = () => {
12
12
  return (
13
13
  <Flex justifyContent="center">
14
- <StyledBox background="primary200" />
14
+ <StyledBox background="neutral200" />
15
15
  </Flex>
16
16
  );
17
17
  };
@@ -17,6 +17,15 @@ import { getTrad } from '../../../../utils';
17
17
  import FieldComponent from '../../../FieldComponent';
18
18
  import Rectangle from './Rectangle';
19
19
 
20
+ const ActionStack = styled(Stack)`
21
+ svg {
22
+ path {
23
+ fill: ${({ theme, expanded }) =>
24
+ expanded ? theme.colors.primary600 : theme.colors.neutral600};
25
+ }
26
+ }
27
+ `;
28
+
20
29
  const IconButtonCustom = styled(IconButton)`
21
30
  background-color: transparent;
22
31
  `;
@@ -106,7 +115,7 @@ const Component = ({
106
115
  <AccordionToggle
107
116
  startIcon={<FontAwesomeIcon icon={icon} />}
108
117
  action={
109
- <Stack horizontal size={0}>
118
+ <ActionStack horizontal size={0} expanded={isOpen}>
110
119
  {showDownIcon && (
111
120
  <IconButtonCustom
112
121
  noBorder
@@ -131,7 +140,7 @@ const Component = ({
131
140
  icon={<Trash />}
132
141
  />
133
142
  )}
134
- </Stack>
143
+ </ActionStack>
135
144
  }
136
145
  title={friendlyName}
137
146
  togglePosition="left"
@@ -7,7 +7,7 @@
7
7
  import React from 'react';
8
8
  import PropTypes from 'prop-types';
9
9
  import { Box } from '@strapi/design-system/Box';
10
- import { Text } from '@strapi/design-system/Text';
10
+ import { Typography } from '@strapi/design-system/Typography';
11
11
  import { Stack } from '@strapi/design-system/Stack';
12
12
  import { pxToRem } from '@strapi/helper-plugin';
13
13
  import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
@@ -47,7 +47,7 @@ const ComponentBox = styled(Box)`
47
47
  }
48
48
  }
49
49
 
50
- ${Text} {
50
+ ${Typography} {
51
51
  color: ${({ theme }) => theme.colors.primary600};
52
52
  }
53
53
  }
@@ -64,9 +64,9 @@ function ComponentCard({ componentUid, intlLabel, icon, onClick }) {
64
64
  <ComponentBox borderRadius="borderRadius">
65
65
  <Stack size={1} style={{ justifyContent: 'center', alignItems: 'center' }}>
66
66
  <StyledFontAwesomeIcon icon={icon} />
67
- <Text small bold textColor="neutral600">
67
+ <Typography variant="pi" fontWeight="bold" textColor="neutral600">
68
68
  {formatMessage(intlLabel)}
69
- </Text>
69
+ </Typography>
70
70
  </Stack>
71
71
  </ComponentBox>
72
72
  </button>
@@ -7,7 +7,7 @@ import ComponentCard from './ComponentCard';
7
7
 
8
8
  const Grid = styled.div`
9
9
  display: grid;
10
- grid-template-columns: repeat(auto-fit, minmax(${140 / 16}rem, 1fr));
10
+ grid-template-columns: repeat(auto-fit, ${140 / 16}rem);
11
11
  grid-gap: ${({ theme }) => theme.spaces[1]};
12
12
  `;
13
13
 
@@ -5,7 +5,7 @@ import { useIntl } from 'react-intl';
5
5
  import { KeyboardNavigable } from '@strapi/design-system/KeyboardNavigable';
6
6
  import { Box } from '@strapi/design-system/Box';
7
7
  import { Flex } from '@strapi/design-system/Flex';
8
- import { Text } from '@strapi/design-system/Text';
8
+ import { Typography } from '@strapi/design-system/Typography';
9
9
  import { getTrad } from '../../../../utils';
10
10
  import { useContentTypeLayout } from '../../../../hooks';
11
11
  import Category from './Category';
@@ -71,12 +71,12 @@ const ComponentPicker = ({ components, isOpen, onClickAddComponent }) => {
71
71
  hasRadius
72
72
  >
73
73
  <Flex justifyContent="center">
74
- <Text bold textColor="neutral600">
74
+ <Typography fontWeight="bold" textColor="neutral600">
75
75
  {formatMessage({
76
76
  id: getTrad('components.DynamicZone.ComponentPicker-label'),
77
77
  defaultMessage: 'Pick one component',
78
78
  })}
79
- </Text>
79
+ </Typography>
80
80
  </Flex>
81
81
  <Box paddingTop={2}>
82
82
  <KeyboardNavigable attributeName="data-strapi-accordion-toggle">
@@ -11,7 +11,6 @@ import styled from 'styled-components';
11
11
  import { pxToRem } from '@strapi/helper-plugin';
12
12
  import { Box } from '@strapi/design-system/Box';
13
13
  import { Flex } from '@strapi/design-system/Flex';
14
- import { Text } from '@strapi/design-system/Text';
15
14
  import { Typography } from '@strapi/design-system/Typography';
16
15
 
17
16
  const StyledBox = styled(Box)`
@@ -25,12 +24,20 @@ const DzLabel = ({ label, labelAction, name, numberOfComponents, required }) =>
25
24
  return (
26
25
  <Flex justifyContent="center">
27
26
  <Box>
28
- <StyledBox padding={3} background="neutral0" shadow="filterShadow" color="neutral500">
27
+ <StyledBox
28
+ paddingTop={3}
29
+ paddingBottom={3}
30
+ paddingRight={4}
31
+ paddingLeft={4}
32
+ background="neutral0"
33
+ shadow="filterShadow"
34
+ color="neutral500"
35
+ >
29
36
  <Flex>
30
37
  <Typography fontSize={0} lineHeight={0} textColor="neutral600" fontWeight="bold">
31
38
  {intlLabel}&nbsp;({numberOfComponents})
32
39
  </Typography>
33
- {required && <Text textColor="danger600">*</Text>}
40
+ {required && <Typography textColor="danger600">*</Typography>}
34
41
  {labelAction && <Box paddingLeft={1}>{labelAction}</Box>}
35
42
  </Flex>
36
43
  </StyledBox>
@@ -518,7 +518,9 @@ const EditViewDataManagerProvider = ({
518
518
  when={!isEqual(modifiedData, initialData)}
519
519
  message={formatMessage({ id: 'global.prompt.unsaved' })}
520
520
  />
521
- <form onSubmit={handleSubmit}>{children}</form>
521
+ <form noValidate onSubmit={handleSubmit}>
522
+ {children}
523
+ </form>
522
524
  </>
523
525
  )}
524
526
  </>