@strapi/admin 4.7.0 → 4.7.2-exp.24dd7d95972fa822bf43e9b095b51027402c229e

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 (137) hide show
  1. package/admin/src/components/AutoReloadOverlayBlockerProvider/Blocker.js +4 -4
  2. package/admin/src/components/AutoReloadOverlayBlockerProvider/Overlay.js +2 -2
  3. package/admin/src/components/GuidedTour/Homepage/index.js +3 -3
  4. package/admin/src/components/GuidedTour/Modal/components/Content.js +35 -23
  5. package/admin/src/components/GuidedTour/Modal/components/Modal.js +6 -4
  6. package/admin/src/components/LeftMenu/index.js +3 -3
  7. package/admin/src/components/Notifications/index.js +6 -4
  8. package/admin/src/components/UpgradePlanModal/index.js +6 -7
  9. package/admin/src/content-manager/components/ComponentInitializer/index.js +3 -3
  10. package/admin/src/content-manager/components/DragLayer/RelationDragPreview.js +3 -3
  11. package/admin/src/content-manager/components/DynamicTable/ConfirmDialogDelete/index.js +3 -11
  12. package/admin/src/content-manager/components/DynamicTable/ConfirmDialogDeleteAll/index.js +3 -11
  13. package/admin/src/content-manager/components/DynamicZone/components/ComponentCard.js +4 -4
  14. package/admin/src/content-manager/components/DynamicZone/components/DynamicComponent.js +3 -4
  15. package/admin/src/content-manager/components/DynamicZone/index.js +3 -3
  16. package/admin/src/content-manager/components/FieldComponent/index.js +3 -3
  17. package/admin/src/content-manager/components/NonRepeatableComponent/index.js +3 -3
  18. package/admin/src/content-manager/components/RelationInput/components/Relation.js +9 -3
  19. package/admin/src/content-manager/components/RelationInput/components/RelationItem.js +4 -4
  20. package/admin/src/content-manager/components/RepeatableComponent/components/Component.js +12 -6
  21. package/admin/src/content-manager/components/Wysiwyg/Editor.js +2 -2
  22. package/admin/src/content-manager/components/Wysiwyg/index.js +5 -5
  23. package/admin/src/content-manager/components/Wysiwyg/utils/continueList.js +3 -3
  24. package/admin/src/content-manager/pages/EditSettingsView/components/DisplayedFields.js +5 -5
  25. package/admin/src/content-manager/pages/EditSettingsView/components/DynamicZoneList.js +3 -3
  26. package/admin/src/content-manager/pages/EditSettingsView/index.js +3 -3
  27. package/admin/src/content-manager/pages/EditView/Header/index.js +6 -7
  28. package/admin/src/content-manager/pages/EditView/Information/index.js +9 -9
  29. package/admin/src/content-manager/pages/EditView/index.js +9 -9
  30. package/admin/src/content-manager/pages/ListSettingsView/components/CardPreview.js +3 -3
  31. package/admin/src/content-manager/pages/ListSettingsView/components/DraggableCard.js +3 -3
  32. package/admin/src/content-manager/pages/ListSettingsView/components/Settings.js +5 -5
  33. package/admin/src/content-manager/pages/ListSettingsView/components/SortDisplayedFields.js +3 -11
  34. package/admin/src/pages/Admin/Onboarding/index.js +11 -5
  35. package/admin/src/pages/AuthPage/components/ForgotPassword/index.js +3 -3
  36. package/admin/src/pages/AuthPage/components/Login/BaseLogin.js +3 -12
  37. package/admin/src/pages/AuthPage/components/Register/index.js +2 -3
  38. package/admin/src/pages/AuthPage/components/ResetPassword/index.js +3 -3
  39. package/admin/src/pages/HomePage/ContentBlocks.js +3 -3
  40. package/admin/src/pages/HomePage/HomeHeader.js +3 -7
  41. package/admin/src/pages/HomePage/SocialLinks.js +5 -5
  42. package/admin/src/pages/MarketplacePage/components/NpmPackageCard/PackageStats.js +3 -3
  43. package/admin/src/pages/MarketplacePage/components/NpmPackageCard/index.js +3 -3
  44. package/admin/src/pages/MarketplacePage/components/NpmPackagesFilters/FiltersPopover.js +3 -3
  45. package/admin/src/pages/ProfilePage/index.js +11 -11
  46. package/admin/src/pages/SettingsPage/components/Tokens/FormHead/index.js +3 -3
  47. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/ActionBoundRoutes/index.js +5 -5
  48. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/BoundRoute/index.js +5 -5
  49. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/FormApiTokenContainer/index.js +3 -3
  50. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/components/Permissions/index.js +3 -3
  51. package/admin/src/pages/SettingsPage/pages/ApiTokens/EditView/index.js +3 -3
  52. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/components/LogoModalStepper/FromComputerForm.js +2 -3
  53. package/admin/src/pages/SettingsPage/pages/ApplicationInfosPage/index.js +7 -6
  54. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/GlobalActions/index.js +4 -6
  55. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/components/RoleForm/index.js +2 -3
  56. package/admin/src/pages/SettingsPage/pages/Roles/EditPage/index.js +5 -5
  57. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/components/FormTransferTokenContainer/index.js +3 -3
  58. package/admin/src/pages/SettingsPage/pages/TransferTokens/EditView/index.js +3 -3
  59. package/admin/src/pages/SettingsPage/pages/Users/EditPage/index.js +7 -7
  60. package/admin/src/pages/SettingsPage/pages/Users/ListPage/ModalForm/index.js +5 -5
  61. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/EventInput/index.js +3 -3
  62. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/HeadersInput/index.js +2 -3
  63. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/TriggerContainer/index.js +9 -9
  64. package/admin/src/pages/SettingsPage/pages/Webhooks/EditView/components/WebhookForm/index.js +7 -7
  65. package/admin/src/pages/SettingsPage/pages/Webhooks/ListView/index.js +158 -165
  66. package/admin/src/pages/UseCasePage/index.js +2 -3
  67. package/admin/src/translations/zh-Hans.json +31 -1
  68. package/build/{4849.7abafe52.chunk.js → 3094.1cac9087.chunk.js} +2 -2
  69. package/build/{4049.16583eee.chunk.js → 4049.64715f20.chunk.js} +1 -1
  70. package/build/4649.daa290f6.chunk.js +30 -0
  71. package/build/{6487.83e219bf.chunk.js → 6891.ef7464be.chunk.js} +6 -6
  72. package/build/7259.63e91b59.chunk.js +1 -0
  73. package/build/Admin-authenticatedApp.884faefa.chunk.js +79 -0
  74. package/build/Admin_homePage.1411fb7c.chunk.js +68 -0
  75. package/build/{Admin_marketplace.a8ea585f.chunk.js → Admin_marketplace.0f6c8ee2.chunk.js} +4 -4
  76. package/build/Admin_profilePage.d2a8f9ab.chunk.js +15 -0
  77. package/build/{Admin_settingsPage.f6d02df6.chunk.js → Admin_settingsPage.6814a96e.chunk.js} +17 -18
  78. package/build/admin-app.d9d96db4.chunk.js +112 -0
  79. package/build/admin-edit-roles-page.bf130aaf.chunk.js +1 -0
  80. package/build/{admin-edit-users.f06c4a53.chunk.js → admin-edit-users.48031e30.chunk.js} +2 -2
  81. package/build/admin-users.77b4188a.chunk.js +11 -0
  82. package/build/{content-manager.6ed87531.chunk.js → content-manager.d792c194.chunk.js} +40 -40
  83. package/build/{content-type-builder-list-view.c2f917b6.chunk.js → content-type-builder-list-view.cf38fe2f.chunk.js} +9 -9
  84. package/build/content-type-builder-translation-zh-Hans-json.415577fb.chunk.js +1 -0
  85. package/build/content-type-builder.cdd117c3.chunk.js +126 -0
  86. package/build/email-settings-page.4bdbef9a.chunk.js +3 -0
  87. package/build/{i18n-settings-page.c7bc29fc.chunk.js → i18n-settings-page.2bb5be96.chunk.js} +1 -1
  88. package/build/index.html +1 -1
  89. package/build/main.64fe0c37.js +3928 -0
  90. package/build/{runtime~main.bc7de2d8.js → runtime~main.684b5fed.js} +1 -1
  91. package/build/sso-settings-page.5a8588ef.chunk.js +1 -0
  92. package/build/upload-settings.0200561d.chunk.js +1 -0
  93. package/build/upload-translation-zh-Hans-json.db163b6b.chunk.js +1 -0
  94. package/build/upload.c7da1611.chunk.js +13 -0
  95. package/build/{users-advanced-settings-page.677e1973.chunk.js → users-advanced-settings-page.c0cae03a.chunk.js} +1 -1
  96. package/build/users-providers-settings-page.5f86e45c.chunk.js +1 -0
  97. package/build/users-roles-settings-page.b02986df.chunk.js +30 -0
  98. package/build/webhook-edit-page.a2a2b7bb.chunk.js +23 -0
  99. package/build/webhook-list-page.029957a4.chunk.js +1 -0
  100. package/build/zh-Hans-json.993d085f.chunk.js +1 -0
  101. package/ee/admin/hooks/useLicenseLimitNotification/index.js +2 -1
  102. package/ee/admin/pages/AuthPage/components/Login/index.js +3 -3
  103. package/ee/admin/pages/AuthPage/components/Providers/index.js +3 -3
  104. package/ee/admin/pages/SettingsPage/pages/ApplicationInfosPage/components/AdminSeatInfo/index.js +3 -3
  105. package/ee/admin/pages/SettingsPage/pages/Roles/CreatePage/index.js +6 -7
  106. package/ee/admin/pages/SettingsPage/pages/SingleSignOn/index.js +11 -3
  107. package/ee/admin/pages/SettingsPage/pages/Users/ListPage/CreateAction/index.js +5 -4
  108. package/ee/server/controllers/admin.js +4 -3
  109. package/ee/server/controllers/user.js +2 -2
  110. package/ee/server/services/seat-enforcement.js +2 -2
  111. package/package.json +13 -12
  112. package/server/content-types/User.js +4 -0
  113. package/server/content-types/api-token.js +1 -0
  114. package/server/controllers/user.js +7 -1
  115. package/server/services/permission/permissions-manager/index.js +9 -5
  116. package/server/services/permission/permissions-manager/sanitize.js +101 -4
  117. package/build/4649.ffa2f59a.chunk.js +0 -30
  118. package/build/7259.cd2f7bad.chunk.js +0 -1
  119. package/build/Admin-authenticatedApp.bce108cd.chunk.js +0 -79
  120. package/build/Admin_homePage.cec3f510.chunk.js +0 -70
  121. package/build/Admin_profilePage.b27e40f6.chunk.js +0 -15
  122. package/build/admin-app.d3b3237b.chunk.js +0 -112
  123. package/build/admin-edit-roles-page.fd041d89.chunk.js +0 -1
  124. package/build/admin-users.8c9bfda4.chunk.js +0 -11
  125. package/build/content-type-builder-translation-zh-Hans-json.52a30266.chunk.js +0 -1
  126. package/build/content-type-builder.b7fb1e65.chunk.js +0 -126
  127. package/build/email-settings-page.884cfb8b.chunk.js +0 -3
  128. package/build/main.8009bfe8.js +0 -3930
  129. package/build/sso-settings-page.82d84043.chunk.js +0 -1
  130. package/build/upload-settings.c18b010f.chunk.js +0 -1
  131. package/build/upload-translation-zh-Hans-json.3da5cf56.chunk.js +0 -1
  132. package/build/upload.0876ab69.chunk.js +0 -13
  133. package/build/users-providers-settings-page.87a9c77d.chunk.js +0 -1
  134. package/build/users-roles-settings-page.79c19845.chunk.js +0 -30
  135. package/build/webhook-edit-page.cfbdd3fd.chunk.js +0 -23
  136. package/build/webhook-list-page.3daa4fe2.chunk.js +0 -1
  137. package/build/zh-Hans-json.6e26e359.chunk.js +0 -1
@@ -6,7 +6,7 @@ import styled, { keyframes } from 'styled-components';
6
6
  import { pxToRem } from '@strapi/helper-plugin';
7
7
  import { Clock, Refresh } from '@strapi/icons';
8
8
  import { Link } from '@strapi/design-system/v2';
9
- import { Box, Stack, Flex, Typography } from '@strapi/design-system';
9
+ import { Box, Flex, Typography } from '@strapi/design-system';
10
10
  import { Content, IconBox, Overlay } from './Overlay';
11
11
 
12
12
  const overlayContainer = document.createElement('div');
@@ -40,8 +40,8 @@ const Blocker = ({ displayedIcon, description, title, isOpen }) => {
40
40
  if (isOpen) {
41
41
  return ReactDOM.createPortal(
42
42
  <Overlay>
43
- <Content spacing={6}>
44
- <Stack spacing={2}>
43
+ <Content direction="column" alignItems="stretch" gap={6}>
44
+ <Flex direction="column" alignItems="stretch" gap={2}>
45
45
  <Flex justifyContent="center">
46
46
  <Typography as="h1" variant="alpha">
47
47
  {formatMessage(title)}
@@ -52,7 +52,7 @@ const Blocker = ({ displayedIcon, description, title, isOpen }) => {
52
52
  {formatMessage(description)}
53
53
  </Typography>
54
54
  </Flex>
55
- </Stack>
55
+ </Flex>
56
56
  <Flex justifyContent="center">
57
57
  {displayedIcon === 'reload' && (
58
58
  <IconBox padding={6} background="primary100" borderColor="primary200">
@@ -1,5 +1,5 @@
1
1
  import styled from 'styled-components';
2
- import { Box, Stack } from '@strapi/design-system';
2
+ import { Box, Flex } from '@strapi/design-system';
3
3
  import { pxToRem } from '@strapi/helper-plugin';
4
4
 
5
5
  const Overlay = styled(Box)`
@@ -21,7 +21,7 @@ const Overlay = styled(Box)`
21
21
  }
22
22
  `;
23
23
 
24
- const Content = styled(Stack)`
24
+ const Content = styled(Flex)`
25
25
  position: fixed;
26
26
  top: 0;
27
27
  right: 0;
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import { useGuidedTour, useTracking, LinkButton } from '@strapi/helper-plugin';
3
3
  import { useIntl } from 'react-intl';
4
- import { Stack, Flex, Box, Typography, Button } from '@strapi/design-system';
4
+ import { Flex, Box, Typography, Button } from '@strapi/design-system';
5
5
  import { ArrowRight } from '@strapi/icons';
6
6
  import StepperHomepage from './components/Stepper';
7
7
  import layout from '../layout';
@@ -47,7 +47,7 @@ const GuidedTourHomepage = () => {
47
47
  paddingBottom={4}
48
48
  background="neutral0"
49
49
  >
50
- <Stack spacing={6}>
50
+ <Flex direction="column" alignItems="stretch" gap={6}>
51
51
  <Typography variant="beta" as="h2">
52
52
  {formatMessage({
53
53
  id: 'app.components.GuidedTour.title',
@@ -55,7 +55,7 @@ const GuidedTourHomepage = () => {
55
55
  })}
56
56
  </Typography>
57
57
  <StepperHomepage sections={sections} currentSectionKey={activeSection} />
58
- </Stack>
58
+ </Flex>
59
59
  <Flex justifyContent="flex-end">
60
60
  <Button variant="tertiary" onClick={handleSkip}>
61
61
  {formatMessage({ id: 'app.components.GuidedTour.skip', defaultMessage: 'Skip the tour' })}
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import styled from 'styled-components';
4
- import { Stack, Box, Typography } from '@strapi/design-system';
4
+ import { Flex, Box, Typography } from '@strapi/design-system';
5
5
  import { useIntl } from 'react-intl';
6
6
 
7
7
  const LiStyled = styled.li`
@@ -15,36 +15,48 @@ const Content = ({ id, defaultMessage }) => {
15
15
  const { formatMessage } = useIntl();
16
16
 
17
17
  return (
18
- <Stack spacing={4} paddingBottom={6}>
18
+ <Flex direction="column" alignItems="stretch" gap={4} paddingBottom={6}>
19
19
  {formatMessage(
20
20
  { id, defaultMessage },
21
21
  {
22
- documentationLink: (children) => (
23
- <Typography
24
- as="a"
25
- textColor="primary600"
26
- target="_blank"
27
- rel="noopener noreferrer"
28
- href="https://docs.strapi.io/developer-docs/latest/developer-resources/database-apis-reference/rest-api.html#api-parameters"
29
- >
30
- {children}
31
- </Typography>
32
- ),
33
- b: (children) => <Typography fontWeight="semiBold">{children}</Typography>,
34
- p: (children) => <Typography>{children}</Typography>,
35
- light: (children) => <Typography textColor="neutral600">{children}</Typography>,
36
- ul: (children) => (
37
- <Box paddingLeft={6}>
38
- <ul>{children}</ul>
39
- </Box>
40
- ),
41
- li: (children) => <LiStyled>{children}</LiStyled>,
22
+ documentationLink: DocumentationLink,
23
+ b: Bold,
24
+ p: Paragraph,
25
+ light: Light,
26
+ ul: List,
27
+ li: ListItem,
42
28
  }
43
29
  )}
44
- </Stack>
30
+ </Flex>
45
31
  );
46
32
  };
47
33
 
34
+ const DocumentationLink = (children) => (
35
+ <Typography
36
+ as="a"
37
+ textColor="primary600"
38
+ target="_blank"
39
+ rel="noopener noreferrer"
40
+ href="https://docs.strapi.io/developer-docs/latest/developer-resources/database-apis-reference/rest-api.html#api-parameters"
41
+ >
42
+ {children}
43
+ </Typography>
44
+ );
45
+
46
+ const Bold = (children) => <Typography fontWeight="semiBold">{children}</Typography>;
47
+
48
+ const Paragraph = (children) => <Typography>{children}</Typography>;
49
+
50
+ const Light = (children) => <Typography textColor="neutral600">{children}</Typography>;
51
+
52
+ const List = (children) => (
53
+ <Box paddingLeft={6}>
54
+ <ul>{children}</ul>
55
+ </Box>
56
+ );
57
+
58
+ const ListItem = (children) => <LiStyled>{children}</LiStyled>;
59
+
48
60
  Content.propTypes = {
49
61
  id: PropTypes.string.isRequired,
50
62
  defaultMessage: PropTypes.string.isRequired,
@@ -3,7 +3,7 @@ import styled from 'styled-components';
3
3
  import PropTypes from 'prop-types';
4
4
  import { useIntl } from 'react-intl';
5
5
  import { pxToRem } from '@strapi/helper-plugin';
6
- import { Portal, FocusTrap, Flex, Box, Stack, IconButton, Button } from '@strapi/design-system';
6
+ import { Portal, FocusTrap, Flex, Box, IconButton, Button } from '@strapi/design-system';
7
7
  import { Cross } from '@strapi/icons';
8
8
 
9
9
  const ModalWrapper = styled(Flex)`
@@ -21,13 +21,15 @@ const Modal = ({ onClose, onSkip, children, hideSkip }) => {
21
21
  <Portal>
22
22
  <ModalWrapper onClick={onClose} padding={8} justifyContent="center">
23
23
  <FocusTrap onEscape={onClose}>
24
- <Stack
24
+ <Flex
25
+ direction="column"
26
+ alignItems="stretch"
25
27
  background="neutral0"
26
28
  width={pxToRem(660)}
27
29
  shadow="popupShadow"
28
30
  hasRadius
29
31
  padding={4}
30
- spacing={8}
32
+ gap={8}
31
33
  role="dialog"
32
34
  aria-modal
33
35
  onClick={(e) => e.stopPropagation()}
@@ -52,7 +54,7 @@ const Modal = ({ onClose, onSkip, children, hideSkip }) => {
52
54
  </Button>
53
55
  </Flex>
54
56
  )}
55
- </Stack>
57
+ </Flex>
56
58
  </FocusTrap>
57
59
  </ModalWrapper>
58
60
  </Portal>
@@ -3,7 +3,7 @@ import styled from 'styled-components';
3
3
  import PropTypes from 'prop-types';
4
4
  import { useIntl } from 'react-intl';
5
5
  import { NavLink as RouterNavLink, useLocation, useHistory } from 'react-router-dom';
6
- import { Divider, FocusTrap, Box, Typography, Stack } from '@strapi/design-system';
6
+ import { Divider, FocusTrap, Box, Typography, Flex } from '@strapi/design-system';
7
7
  import {
8
8
  MainNav,
9
9
  NavBrand,
@@ -203,7 +203,7 @@ const LeftMenu = ({ generalSectionLinks, pluginsSectionLinks }) => {
203
203
  hasRadius
204
204
  >
205
205
  <FocusTrap onEscape={handleToggleUserLinks}>
206
- <Stack spacing={0}>
206
+ <Flex direction="column" alignItems="stretch" gap={0}>
207
207
  <LinkUser tabIndex={0} onClick={handleToggleUserLinks} to="/me">
208
208
  <Typography>
209
209
  {formatMessage({
@@ -221,7 +221,7 @@ const LeftMenu = ({ generalSectionLinks, pluginsSectionLinks }) => {
221
221
  </Typography>
222
222
  <Exit />
223
223
  </LinkUser>
224
- </Stack>
224
+ </Flex>
225
225
  </FocusTrap>
226
226
  </LinkUserWrapper>
227
227
  )}
@@ -1,7 +1,7 @@
1
1
  import { NotificationsProvider } from '@strapi/helper-plugin';
2
2
  import React, { useReducer } from 'react';
3
3
  import PropTypes from 'prop-types';
4
- import { Stack } from '@strapi/design-system';
4
+ import { Flex } from '@strapi/design-system';
5
5
  import Notification from './Notification';
6
6
  import reducer, { initialState } from './reducer';
7
7
 
@@ -17,11 +17,13 @@ const Notifications = ({ children }) => {
17
17
 
18
18
  return (
19
19
  <NotificationsProvider toggleNotification={displayNotification}>
20
- <Stack
20
+ <Flex
21
21
  left="50%"
22
22
  marginLeft="-250px"
23
23
  position="fixed"
24
- spacing={2}
24
+ direction="column"
25
+ alignItems="stretch"
26
+ gap={2}
25
27
  top={`${46 / 16}rem`}
26
28
  width={`${500 / 16}rem`}
27
29
  zIndex={10}
@@ -31,7 +33,7 @@ const Notifications = ({ children }) => {
31
33
  <Notification key={notification.id} dispatch={dispatch} notification={notification} />
32
34
  );
33
35
  })}
34
- </Stack>
36
+ </Flex>
35
37
  {children}
36
38
  </NotificationsProvider>
37
39
  );
@@ -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 { useIntl } from 'react-intl';
5
- import { Portal, FocusTrap, IconButton, Box, Flex, Typography, Stack } from '@strapi/design-system';
5
+ import { Portal, FocusTrap, IconButton, Box, Flex, Typography } from '@strapi/design-system';
6
6
  import { LinkButton } from '@strapi/design-system/v2';
7
7
  import { ExternalLink, Cross } from '@strapi/icons';
8
8
  import { setHexOpacity, useLockScroll } from '@strapi/helper-plugin';
@@ -41,8 +41,7 @@ const UpgradeContainer = styled(Flex)`
41
41
  }
42
42
  `;
43
43
 
44
- const StackFlexStart = styled(Stack)`
45
- align-items: flex-start;
44
+ const FlexStart = styled(Flex)`
46
45
  max-width: ${400 / 16}rem;
47
46
  z-index: 0;
48
47
  `;
@@ -75,14 +74,14 @@ const UpgradePlanModal = ({ onClose, isOpen }) => {
75
74
  <CloseButtonContainer>
76
75
  <IconButton onClick={onClose} aria-label="Close" icon={<Cross />} />
77
76
  </CloseButtonContainer>
78
- <StackFlexStart spacing={6}>
77
+ <FlexStart direction="column" alignItems="flex-start" gap={6}>
79
78
  <Typography fontWeight="bold" textColor="primary600">
80
79
  {formatMessage({
81
80
  id: 'app.components.UpgradePlanModal.text-ce',
82
81
  defaultMessage: 'COMMUNITY EDITION',
83
82
  })}
84
83
  </Typography>
85
- <Stack spacing={2}>
84
+ <Flex direction="column" alignItems="stretch" gap={2}>
86
85
  <Typography variant="alpha" as="h2" id="upgrade-plan">
87
86
  {formatMessage({
88
87
  id: 'app.components.UpgradePlanModal.limit-reached',
@@ -96,7 +95,7 @@ const UpgradePlanModal = ({ onClose, isOpen }) => {
96
95
  'Unlock the full power of Strapi by upgrading your plan to the Enterprise Edition',
97
96
  })}
98
97
  </Typography>
99
- </Stack>
98
+ </Flex>
100
99
  <LinkButton
101
100
  href="https://strapi.io/pricing-self-hosted"
102
101
  isExternal
@@ -107,7 +106,7 @@ const UpgradePlanModal = ({ onClose, isOpen }) => {
107
106
  defaultMessage: 'Learn more',
108
107
  })}
109
108
  </LinkButton>
110
- </StackFlexStart>
109
+ </FlexStart>
111
110
  <img src={BigArrow} alt="upgrade-arrow" />
112
111
  </UpgradeContainer>
113
112
  </FocusTrap>
@@ -3,7 +3,7 @@ import PropTypes from 'prop-types';
3
3
  import styled from 'styled-components';
4
4
  import { useIntl } from 'react-intl';
5
5
  import { PlusCircle } from '@strapi/icons';
6
- import { Box, Stack, Flex, Typography } from '@strapi/design-system';
6
+ import { Box, Flex, Typography } from '@strapi/design-system';
7
7
  import { pxToRem } from '@strapi/helper-plugin';
8
8
  import { getTrad } from '../../utils';
9
9
 
@@ -36,7 +36,7 @@ const ComponentInitializer = ({ error, isReadOnly, onClick }) => {
36
36
  paddingBottom={9}
37
37
  type="button"
38
38
  >
39
- <Stack spacing={2}>
39
+ <Flex direction="column" alignItems="flex-start" gap={2}>
40
40
  <Flex justifyContent="center" style={{ cursor: isReadOnly ? 'not-allowed' : 'inherit' }}>
41
41
  <IconWrapper>
42
42
  <PlusCircle />
@@ -50,7 +50,7 @@ const ComponentInitializer = ({ error, isReadOnly, onClick }) => {
50
50
  })}
51
51
  </Typography>
52
52
  </Flex>
53
- </Stack>
53
+ </Flex>
54
54
  </Box>
55
55
  {error?.id && (
56
56
  <Typography textColor="danger600" variant="pi">
@@ -6,7 +6,7 @@ import { Drag, Cross } from '@strapi/icons';
6
6
 
7
7
  import { getTrad } from '../../utils';
8
8
  import { PUBLICATION_STATES } from '../RelationInputDataManager/constants';
9
- import { ChildrenWrapper, StackWrapper } from '../RelationInput/components/RelationItem';
9
+ import { ChildrenWrapper, FlexWrapper } from '../RelationInput/components/RelationItem';
10
10
  import { LinkEllipsis, DisconnectButton } from '../RelationInput';
11
11
 
12
12
  export const RelationDragPreview = ({ status, displayedValue, width }) => {
@@ -39,7 +39,7 @@ export const RelationDragPreview = ({ status, displayedValue, width }) => {
39
39
  borderColor="neutral200"
40
40
  justifyContent="space-between"
41
41
  >
42
- <StackWrapper spacing={1} horizontal>
42
+ <FlexWrapper gap={1}>
43
43
  <IconButton noBorder>
44
44
  <Drag />
45
45
  </IconButton>
@@ -59,7 +59,7 @@ export const RelationDragPreview = ({ status, displayedValue, width }) => {
59
59
  </Status>
60
60
  )}
61
61
  </ChildrenWrapper>
62
- </StackWrapper>
62
+ </FlexWrapper>
63
63
  <Box paddingLeft={4}>
64
64
  <DisconnectButton type="button">
65
65
  <Icon width="12px" as={Cross} />
@@ -1,15 +1,7 @@
1
1
  import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import { useIntl } from 'react-intl';
4
- import {
5
- Dialog,
6
- DialogBody,
7
- DialogFooter,
8
- Stack,
9
- Flex,
10
- Typography,
11
- Button,
12
- } from '@strapi/design-system';
4
+ import { Dialog, DialogBody, DialogFooter, Flex, Typography, Button } from '@strapi/design-system';
13
5
  import { ExclamationMarkCircle, Trash } from '@strapi/icons';
14
6
  import InjectionZoneList from '../../InjectionZoneList';
15
7
 
@@ -28,7 +20,7 @@ const ConfirmDialogDelete = ({ isConfirmButtonLoading, isOpen, onToggleDialog, o
28
20
  isOpen={isOpen}
29
21
  >
30
22
  <DialogBody icon={<ExclamationMarkCircle />}>
31
- <Stack spacing={2}>
23
+ <Flex direction="column" alignItems="stretch" gap={2}>
32
24
  <Flex justifyContent="center">
33
25
  <Typography id="confirm-description">
34
26
  {formatMessage({
@@ -40,7 +32,7 @@ const ConfirmDialogDelete = ({ isConfirmButtonLoading, isOpen, onToggleDialog, o
40
32
  <Flex>
41
33
  <InjectionZoneList area="contentManager.listView.deleteModalAdditionalInfos" />
42
34
  </Flex>
43
- </Stack>
35
+ </Flex>
44
36
  </DialogBody>
45
37
  <DialogFooter
46
38
  startAction={
@@ -1,15 +1,7 @@
1
1
  import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import { useIntl } from 'react-intl';
4
- import {
5
- Dialog,
6
- DialogBody,
7
- DialogFooter,
8
- Stack,
9
- Flex,
10
- Typography,
11
- Button,
12
- } from '@strapi/design-system';
4
+ import { Dialog, DialogBody, DialogFooter, Flex, Typography, Button } from '@strapi/design-system';
13
5
  import { ExclamationMarkCircle, Trash } from '@strapi/icons';
14
6
  import InjectionZoneList from '../../InjectionZoneList';
15
7
  import { getTrad } from '../../../utils';
@@ -29,7 +21,7 @@ const ConfirmDialogDeleteAll = ({ isConfirmButtonLoading, isOpen, onToggleDialog
29
21
  isOpen={isOpen}
30
22
  >
31
23
  <DialogBody icon={<ExclamationMarkCircle />}>
32
- <Stack spacing={2}>
24
+ <Flex direction="column" alignItems="stretch" gap={2}>
33
25
  <Flex justifyContent="center">
34
26
  <Typography id="confirm-description">
35
27
  {formatMessage({
@@ -41,7 +33,7 @@ const ConfirmDialogDeleteAll = ({ isConfirmButtonLoading, isOpen, onToggleDialog
41
33
  <Flex>
42
34
  <InjectionZoneList area="contentManager.listView.deleteModalAdditionalInfos" />
43
35
  </Flex>
44
- </Stack>
36
+ </Flex>
45
37
  </DialogBody>
46
38
  <DialogFooter
47
39
  startAction={
@@ -8,7 +8,7 @@ import React from 'react';
8
8
  import PropTypes from 'prop-types';
9
9
  import styled from 'styled-components';
10
10
 
11
- import { Box, Typography, Stack } from '@strapi/design-system';
11
+ import { Box, Typography, Flex } from '@strapi/design-system';
12
12
  import { pxToRem } from '@strapi/helper-plugin';
13
13
 
14
14
  import { ComponentIcon } from '../../ComponentIcon';
@@ -32,7 +32,7 @@ const ComponentBox = styled(Box)`
32
32
  color: ${({ theme }) => theme.colors.primary600};
33
33
  }
34
34
 
35
- /* > Stack > ComponentIcon */
35
+ /* > Flex > ComponentIcon */
36
36
  > div > div:first-child {
37
37
  background: ${({ theme }) => theme.colors.primary200};
38
38
  color: ${({ theme }) => theme.colors.primary600};
@@ -43,13 +43,13 @@ const ComponentBox = styled(Box)`
43
43
  export default function ComponentCard({ children, onClick }) {
44
44
  return (
45
45
  <ComponentBox as="button" type="button" onClick={onClick} hasRadius>
46
- <Stack spacing={1} alignItems="center" justifyContent="center">
46
+ <Flex direction="column" gap={1} alignItems="center" justifyContent="center">
47
47
  <ComponentIcon />
48
48
 
49
49
  <Typography variant="pi" fontWeight="bold" textColor="neutral600">
50
50
  {children}
51
51
  </Typography>
52
- </Stack>
52
+ </Flex>
53
53
  </ComponentBox>
54
54
  );
55
55
  }
@@ -12,7 +12,6 @@ import {
12
12
  IconButton,
13
13
  Box,
14
14
  Flex,
15
- Stack,
16
15
  } from '@strapi/design-system';
17
16
  import { useCMEditViewDataManager } from '@strapi/helper-plugin';
18
17
  import { Trash, Drag } from '@strapi/icons';
@@ -22,7 +21,7 @@ import { composeRefs, getTrad, ItemTypes } from '../../../utils';
22
21
 
23
22
  import FieldComponent from '../../FieldComponent';
24
23
 
25
- const ActionsStack = styled(Stack)`
24
+ const ActionsFlex = styled(Flex)`
26
25
  /*
27
26
  we need to remove the background from the button but we can't
28
27
  wrap the element in styled because it breaks the forwardedAs which
@@ -149,7 +148,7 @@ const DynamicZoneComponent = ({
149
148
  const composedBoxRefs = composeRefs(boxRef, dropRef);
150
149
 
151
150
  const accordionActions = !isFieldAllowed ? null : (
152
- <ActionsStack horizontal spacing={0} expanded={isOpen}>
151
+ <ActionsFlex gap={0} expanded={isOpen}>
153
152
  <IconButtonCustom
154
153
  noBorder
155
154
  label={formatMessage(
@@ -179,7 +178,7 @@ const DynamicZoneComponent = ({
179
178
  >
180
179
  <Drag />
181
180
  </IconButton>
182
- </ActionsStack>
181
+ </ActionsFlex>
183
182
  );
184
183
 
185
184
  return (
@@ -2,7 +2,7 @@ import React, { memo, useMemo, useState } from 'react';
2
2
  import get from 'lodash/get';
3
3
  import isEqual from 'react-fast-compare';
4
4
  import PropTypes from 'prop-types';
5
- import { Box, Stack, VisuallyHidden } from '@strapi/design-system';
5
+ import { Box, Flex, VisuallyHidden } from '@strapi/design-system';
6
6
  import { NotAllowedInput, useNotification } from '@strapi/helper-plugin';
7
7
  import { useIntl } from 'react-intl';
8
8
 
@@ -174,7 +174,7 @@ const DynamicZone = ({
174
174
  const ariaDescriptionId = `${name}-item-instructions`;
175
175
 
176
176
  return (
177
- <Stack spacing={6}>
177
+ <Flex direction="column" alignItems="stretch" gap={6}>
178
178
  {dynamicDisplayedComponentsLength > 0 && (
179
179
  <Box>
180
180
  <DynamicZoneLabel
@@ -228,7 +228,7 @@ const DynamicZone = ({
228
228
  components={fieldSchema.components ?? []}
229
229
  onClickAddComponent={handleAddComponent}
230
230
  />
231
- </Stack>
231
+ </Flex>
232
232
  );
233
233
  };
234
234
 
@@ -7,7 +7,7 @@ import { useIntl } from 'react-intl';
7
7
 
8
8
  import { NotAllowedInput } from '@strapi/helper-plugin';
9
9
  import { Trash } from '@strapi/icons';
10
- import { Box, IconButton, Flex, Stack } from '@strapi/design-system';
10
+ import { Box, IconButton, Flex } from '@strapi/design-system';
11
11
 
12
12
  import connect from './utils/connect';
13
13
  import select from './utils/select';
@@ -92,7 +92,7 @@ const FieldComponent = ({
92
92
  />
93
93
  )}
94
94
  </Flex>
95
- <Stack spacing={1}>
95
+ <Flex direction="column" alignItems="stretch" gap={1}>
96
96
  {!isRepeatable && !isInitialized && (
97
97
  <ComponentInitializer
98
98
  isReadOnly={isReadOnly}
@@ -118,7 +118,7 @@ const FieldComponent = ({
118
118
  name={name}
119
119
  />
120
120
  )}
121
- </Stack>
121
+ </Flex>
122
122
  </Box>
123
123
  );
124
124
  };
@@ -3,7 +3,7 @@
3
3
 
4
4
  import React, { useMemo } from 'react';
5
5
  import PropTypes from 'prop-types';
6
- import { Box, Grid, GridItem, Stack } from '@strapi/design-system';
6
+ import { Box, Grid, GridItem, Flex } from '@strapi/design-system';
7
7
  import { useContentTypeLayout } from '../../hooks';
8
8
  import FieldComponent from '../FieldComponent';
9
9
  import Inputs from '../Inputs';
@@ -29,7 +29,7 @@ const NonRepeatableComponent = ({ componentUid, isFromDynamicZone, isNested, nam
29
29
  hasRadius={isNested}
30
30
  borderColor={isNested ? 'neutral200' : ''}
31
31
  >
32
- <Stack spacing={6}>
32
+ <Flex direction="column" alignItems="stretch" spacing={6}>
33
33
  {fields.map((fieldRow, key) => {
34
34
  return (
35
35
  <Grid gap={4} key={key}>
@@ -76,7 +76,7 @@ const NonRepeatableComponent = ({ componentUid, isFromDynamicZone, isNested, nam
76
76
  </Grid>
77
77
  );
78
78
  })}
79
- </Stack>
79
+ </Flex>
80
80
  </Box>
81
81
  );
82
82
  };
@@ -1,7 +1,7 @@
1
1
  import PropTypes from 'prop-types';
2
2
  import React from 'react';
3
3
 
4
- import { Stack, Flex } from '@strapi/design-system';
4
+ import { Flex } from '@strapi/design-system';
5
5
 
6
6
  export const Relation = ({
7
7
  children,
@@ -20,9 +20,15 @@ export const Relation = ({
20
20
  alignItems="end"
21
21
  wrap="wrap"
22
22
  >
23
- <Stack basis={size <= 6 ? '100%' : '70%'} spacing={1} {...props}>
23
+ <Flex
24
+ direction="column"
25
+ alignItems="stretch"
26
+ basis={size <= 6 ? '100%' : '70%'}
27
+ gap={1}
28
+ {...props}
29
+ >
24
30
  {search}
25
- </Stack>
31
+ </Flex>
26
32
 
27
33
  {loadMore}
28
34
  </Flex>
@@ -3,7 +3,7 @@ import PropTypes from 'prop-types';
3
3
  import styled from 'styled-components';
4
4
  import { getEmptyImage } from 'react-dnd-html5-backend';
5
5
 
6
- import { Box, Flex, Stack, IconButton } from '@strapi/design-system';
6
+ import { Box, Flex, IconButton } from '@strapi/design-system';
7
7
  import { Drag } from '@strapi/icons';
8
8
 
9
9
  import { useDragAndDrop } from '../../../hooks/useDragAndDrop';
@@ -12,7 +12,7 @@ import { composeRefs, ItemTypes } from '../../../utils';
12
12
 
13
13
  import { RELATION_GUTTER } from '../constants';
14
14
 
15
- export const StackWrapper = styled(Stack)`
15
+ export const FlexWrapper = styled(Flex)`
16
16
  width: 100%;
17
17
  /* Used to prevent endAction to be pushed out of container */
18
18
  min-width: 0;
@@ -94,7 +94,7 @@ export const RelationItem = ({
94
94
  data-handler-id={handlerId}
95
95
  {...props}
96
96
  >
97
- <StackWrapper spacing={1} horizontal>
97
+ <FlexWrapper gap={1}>
98
98
  {canDrag ? (
99
99
  <IconButton
100
100
  forwardedAs="div"
@@ -109,7 +109,7 @@ export const RelationItem = ({
109
109
  </IconButton>
110
110
  ) : null}
111
111
  <ChildrenWrapper justifyContent="space-between">{children}</ChildrenWrapper>
112
- </StackWrapper>
112
+ </FlexWrapper>
113
113
  {endAction && <Box paddingLeft={4}>{endAction}</Box>}
114
114
  </Flex>
115
115
  )}