Rename CM hook

Signed-off-by: soupette <cyril@strapi.io>
This commit is contained in:
soupette 2021-09-21 06:01:01 +02:00
parent 9096a86b91
commit ff8069a1c8
20 changed files with 43 additions and 49 deletions

View File

@ -1,14 +1,14 @@
import React from 'react'; import React from 'react';
import PropTypes from 'prop-types'; import PropTypes from 'prop-types';
import { FormattedMessage } from 'react-intl'; import { FormattedMessage } from 'react-intl';
import { useContentManagerEditViewDataManager } from '@strapi/helper-plugin'; import { useCMEditViewDataManager } from '@strapi/helper-plugin';
import { getTrad } from '../../utils'; import { getTrad } from '../../utils';
import NonRepeatableWrapper from '../NonRepeatableWrapper'; import NonRepeatableWrapper from '../NonRepeatableWrapper';
import PlusButton from '../PlusButton'; import PlusButton from '../PlusButton';
import P from './P'; import P from './P';
const ComponentInitializer = ({ componentUid, isReadOnly, name }) => { const ComponentInitializer = ({ componentUid, isReadOnly, name }) => {
const { addNonRepeatableComponentToField } = useContentManagerEditViewDataManager(); const { addNonRepeatableComponentToField } = useCMEditViewDataManager();
return ( return (
<NonRepeatableWrapper <NonRepeatableWrapper

View File

@ -1,6 +1,6 @@
import { useMemo } from 'react'; import { useMemo } from 'react';
import { get } from 'lodash'; import { get } from 'lodash';
import { useContentManagerEditViewDataManager } from '@strapi/helper-plugin'; import { useCMEditViewDataManager } from '@strapi/helper-plugin';
function useSelect(name) { function useSelect(name) {
const { const {
@ -14,7 +14,7 @@ function useSelect(name) {
removeComponentFromDynamicZone, removeComponentFromDynamicZone,
readActionAllowedFields, readActionAllowedFields,
updateActionAllowedFields, updateActionAllowedFields,
} = useContentManagerEditViewDataManager(); } = useCMEditViewDataManager();
const dynamicDisplayedComponents = useMemo( const dynamicDisplayedComponents = useMemo(
() => get(modifiedData, [name], []).map(data => data.__component), () => get(modifiedData, [name], []).map(data => data.__component),

View File

@ -1,6 +1,6 @@
import { useMemo } from 'react'; import { useMemo } from 'react';
import { get, take } from 'lodash'; import { get, take } from 'lodash';
import { useContentManagerEditViewDataManager } from '@strapi/helper-plugin'; import { useCMEditViewDataManager } from '@strapi/helper-plugin';
import { getFieldName } from '../../../utils'; import { getFieldName } from '../../../utils';
import { useContentTypeLayout } from '../../../hooks'; import { useContentTypeLayout } from '../../../hooks';
@ -13,7 +13,7 @@ function useSelect({ isFromDynamicZone, name }) {
removeComponentFromField, removeComponentFromField,
readActionAllowedFields, readActionAllowedFields,
updateActionAllowedFields, updateActionAllowedFields,
} = useContentManagerEditViewDataManager(); } = useCMEditViewDataManager();
const { contentType } = useContentTypeLayout(); const { contentType } = useContentTypeLayout();
// This is used for the readonly mode when updating an entry // This is used for the readonly mode when updating an entry

View File

@ -8,7 +8,7 @@ import styled from 'styled-components';
import { import {
LabelIconWrapper, LabelIconWrapper,
LoadingIndicator, LoadingIndicator,
useContentManagerEditViewDataManager, useCMEditViewDataManager,
} from '@strapi/helper-plugin'; } from '@strapi/helper-plugin';
import { useIntl } from 'react-intl'; import { useIntl } from 'react-intl';
import get from 'lodash/get'; import get from 'lodash/get';
@ -52,7 +52,7 @@ const InputUID = ({
editable, editable,
...inputProps ...inputProps
}) => { }) => {
const { modifiedData, initialData, layout } = useContentManagerEditViewDataManager(); const { modifiedData, initialData, layout } = useCMEditViewDataManager();
const [isLoading, setIsLoading] = useState(false); const [isLoading, setIsLoading] = useState(false);
const [availability, setAvailability] = useState(null); const [availability, setAvailability] = useState(null);
const [isSuggestionOpen, setIsSuggestionOpen] = useState(true); const [isSuggestionOpen, setIsSuggestionOpen] = useState(true);

View File

@ -1,6 +1,6 @@
import { useMemo } from 'react'; import { useMemo } from 'react';
import { get } from 'lodash'; import { get } from 'lodash';
import { useContentManagerEditViewDataManager } from '@strapi/helper-plugin'; import { useCMEditViewDataManager } from '@strapi/helper-plugin';
function useSelect(keys) { function useSelect(keys) {
const { const {
@ -12,7 +12,7 @@ function useSelect(keys) {
readActionAllowedFields, readActionAllowedFields,
shouldNotRunValidations, shouldNotRunValidations,
updateActionAllowedFields, updateActionAllowedFields,
} = useContentManagerEditViewDataManager(); } = useCMEditViewDataManager();
const allowedFields = useMemo(() => { const allowedFields = useMemo(() => {
return isCreatingEntry ? createActionAllowedFields : updateActionAllowedFields; return isCreatingEntry ? createActionAllowedFields : updateActionAllowedFields;

View File

@ -1,6 +1,6 @@
import { useMemo } from 'react'; import { useMemo } from 'react';
import { get, toString } from 'lodash'; import { get, toString } from 'lodash';
import { useContentManagerEditViewDataManager } from '@strapi/helper-plugin'; import { useCMEditViewDataManager } from '@strapi/helper-plugin';
function useSelect({ schema, componentFieldName }) { function useSelect({ schema, componentFieldName }) {
const { const {
@ -9,7 +9,7 @@ function useSelect({ schema, componentFieldName }) {
moveComponentField, moveComponentField,
removeRepeatableField, removeRepeatableField,
triggerFormValidation, triggerFormValidation,
} = useContentManagerEditViewDataManager(); } = useCMEditViewDataManager();
const mainField = useMemo(() => get(schema, ['settings', 'mainField'], 'id'), [schema]); const mainField = useMemo(() => get(schema, ['settings', 'mainField'], 'id'), [schema]);
const displayedValue = toString( const displayedValue = toString(

View File

@ -1,7 +1,7 @@
import { useContentManagerEditViewDataManager } from '@strapi/helper-plugin'; import { useCMEditViewDataManager } from '@strapi/helper-plugin';
function useSelect() { function useSelect() {
const { addRepeatableComponentToField, formErrors } = useContentManagerEditViewDataManager(); const { addRepeatableComponentToField, formErrors } = useCMEditViewDataManager();
return { return {
addRepeatableComponentToField, addRepeatableComponentToField,

View File

@ -7,7 +7,7 @@ import {
DropdownIndicator, DropdownIndicator,
LabelIconWrapper, LabelIconWrapper,
NotAllowedInput, NotAllowedInput,
useContentManagerEditViewDataManager, useCMEditViewDataManager,
useQueryParams, useQueryParams,
} from '@strapi/helper-plugin'; } from '@strapi/helper-plugin';
import { Flex, Text, Padded } from '@buffetjs/core'; import { Flex, Text, Padded } from '@buffetjs/core';
@ -69,7 +69,7 @@ function SelectWrapper({
moveRelation, moveRelation,
onChange, onChange,
onRemoveRelation, onRemoveRelation,
} = useContentManagerEditViewDataManager(); } = useCMEditViewDataManager();
const { pathname } = useLocation(); const { pathname } = useLocation();
const value = get(modifiedData, name, null); const value = get(modifiedData, name, null);

View File

@ -1,5 +1,5 @@
import { useMemo } from 'react'; import { useMemo } from 'react';
import { useContentManagerEditViewDataManager } from '@strapi/helper-plugin'; import { useCMEditViewDataManager } from '@strapi/helper-plugin';
function useSelect({ isUserAllowedToEditField, isUserAllowedToReadField, name }) { function useSelect({ isUserAllowedToEditField, isUserAllowedToReadField, name }) {
const { const {
@ -7,7 +7,7 @@ function useSelect({ isUserAllowedToEditField, isUserAllowedToReadField, name })
createActionAllowedFields, createActionAllowedFields,
readActionAllowedFields, readActionAllowedFields,
updateActionAllowedFields, updateActionAllowedFields,
} = useContentManagerEditViewDataManager(); } = useCMEditViewDataManager();
const isFieldAllowed = useMemo(() => { const isFieldAllowed = useMemo(() => {
if (isUserAllowedToEditField === true) { if (isUserAllowedToEditField === true) {

View File

@ -1,8 +1,8 @@
import { isEmpty } from 'lodash'; import { isEmpty } from 'lodash';
import { useContentManagerEditViewDataManager } from '@strapi/helper-plugin'; import { useCMEditViewDataManager } from '@strapi/helper-plugin';
function useSelect() { function useSelect() {
const { hasDraftAndPublish, modifiedData } = useContentManagerEditViewDataManager(); const { hasDraftAndPublish, modifiedData } = useCMEditViewDataManager();
let trackerProperty = {}; let trackerProperty = {};

View File

@ -1,7 +1,7 @@
import { useContentManagerEditViewDataManager } from '@strapi/helper-plugin'; import { useCMEditViewDataManager } from '@strapi/helper-plugin';
function useSelect() { function useSelect() {
const { initialData, hasDraftAndPublish } = useContentManagerEditViewDataManager(); const { initialData, hasDraftAndPublish } = useCMEditViewDataManager();
const isPublished = initialData.published_at !== undefined && initialData.published_at !== null; const isPublished = initialData.published_at !== undefined && initialData.published_at !== null;

View File

@ -1,4 +1,4 @@
import { useContentManagerEditViewDataManager } from '@strapi/helper-plugin'; import { useCMEditViewDataManager } from '@strapi/helper-plugin';
function useSelect() { function useSelect() {
const { const {
@ -12,7 +12,7 @@ function useSelect() {
modifiedData, modifiedData,
onPublish, onPublish,
onUnpublish, onUnpublish,
} = useContentManagerEditViewDataManager(); } = useCMEditViewDataManager();
return { return {
componentLayouts: allLayoutData.components, componentLayouts: allLayoutData.components,

View File

@ -4,7 +4,7 @@ import { get, isEmpty } from 'lodash';
import moment from 'moment'; import moment from 'moment';
import styled from 'styled-components'; import styled from 'styled-components';
import { useIntl } from 'react-intl'; import { useIntl } from 'react-intl';
import { useContentManagerEditViewDataManager } from '@strapi/helper-plugin'; import { useCMEditViewDataManager } from '@strapi/helper-plugin';
import { InjectionZone } from '../../../shared/components'; import { InjectionZone } from '../../../shared/components';
import { SubWrapper, StatusWrapper } from './components'; import { SubWrapper, StatusWrapper } from './components';
import { getTrad } from '../../utils'; import { getTrad } from '../../utils';
@ -14,7 +14,7 @@ const BaselineAlignment = styled.div`
`; `;
const InformationCard = () => { const InformationCard = () => {
const { initialData, hasDraftAndPublish, layout } = useContentManagerEditViewDataManager(); const { initialData, hasDraftAndPublish, layout } = useCMEditViewDataManager();
const { formatMessage } = useIntl(); const { formatMessage } = useIntl();
const updatedAtName = useMemo( const updatedAtName = useMemo(

View File

@ -1,6 +1,6 @@
import React, { useRef } from 'react'; import React, { useRef } from 'react';
import { useIntl } from 'react-intl'; import { useIntl } from 'react-intl';
import { useContentManagerEditViewDataManager } from '@strapi/helper-plugin'; import { useCMEditViewDataManager } from '@strapi/helper-plugin';
import { Box } from '@strapi/parts/Box'; import { Box } from '@strapi/parts/Box';
import { Divider } from '@strapi/parts/Divider'; import { Divider } from '@strapi/parts/Divider';
import { TableLabel, Text } from '@strapi/parts/Text'; import { TableLabel, Text } from '@strapi/parts/Text';
@ -11,7 +11,7 @@ import getUnits from './utils/getUnits';
const Informations = () => { const Informations = () => {
const { formatMessage, formatRelativeTime } = useIntl(); const { formatMessage, formatRelativeTime } = useIntl();
const { initialData, isCreatingEntry } = useContentManagerEditViewDataManager(); const { initialData, isCreatingEntry } = useCMEditViewDataManager();
// TODO if timestamps are still configurable in the V4 // TODO if timestamps are still configurable in the V4
const updatedAt = 'updated_at'; const updatedAt = 'updated_at';

View File

@ -7,12 +7,12 @@
import React from 'react'; import React from 'react';
import { render } from '@testing-library/react'; import { render } from '@testing-library/react';
import { IntlProvider } from 'react-intl'; import { IntlProvider } from 'react-intl';
import { useContentManagerEditViewDataManager } from '@strapi/helper-plugin'; import { useCMEditViewDataManager } from '@strapi/helper-plugin';
import Theme from '../../../../../components/Theme'; import Theme from '../../../../../components/Theme';
import Informations from '../index'; import Informations from '../index';
jest.mock('@strapi/helper-plugin', () => ({ jest.mock('@strapi/helper-plugin', () => ({
useContentManagerEditViewDataManager: jest.fn(), useCMEditViewDataManager: jest.fn(),
})); }));
const makeApp = () => { const makeApp = () => {
@ -41,7 +41,7 @@ describe('CONTENT MANAGER | EditView | Header', () => {
}); });
it('renders and matches the snaphsot', () => { it('renders and matches the snaphsot', () => {
useContentManagerEditViewDataManager.mockImplementationOnce(() => ({ useCMEditViewDataManager.mockImplementationOnce(() => ({
initialData: {}, initialData: {},
isCreatingEntry: true, isCreatingEntry: true,
})); }));

View File

@ -1,8 +1,8 @@
import { useContext } from 'react'; import { useContext } from 'react';
import ContentManagerEditViewDataManagerContext from '../../contexts/ContentManagerEditViewDataManagerContext'; import ContentManagerEditViewDataManagerContext from '../../contexts/ContentManagerEditViewDataManagerContext';
const useContentManagerEditViewDataManager = () => { const useCMEditViewDataManager = () => {
return useContext(ContentManagerEditViewDataManagerContext); return useContext(ContentManagerEditViewDataManagerContext);
}; };
export default useContentManagerEditViewDataManager; export default useCMEditViewDataManager;

View File

@ -1,18 +1,18 @@
<!--- useContentManagerEditViewDataManager.stories.mdx ---> <!--- useCMEditViewDataManager.stories.mdx --->
import { Meta, ArgsTable, Canvas, Story } from '@storybook/addon-docs'; import { Meta, ArgsTable, Canvas, Story } from '@storybook/addon-docs';
import { Main, Row, Button } from '@strapi/parts'; import { Main, Row, Button } from '@strapi/parts';
<Meta title="content-manager/hooks/useContentManagerEditViewDataManager" /> <Meta title="content-manager/hooks/useCMEditViewDataManager" />
# useContentManagerEditViewDataManager # useCMEditViewDataManager
Hook that manages the content manager edit view. Use this hooks when you want to inject a component into the Hook that manages the content manager edit view. Use this hooks when you want to inject a component into the
## Usage ## Usage
```js ```js
import { useContentManagerEditViewDataManager } from '@strapi/helper-plugin'; import { useCMEditViewDataManager } from '@strapi/helper-plugin';
const MyCompo = () => { const MyCompo = () => {
const { const {
@ -47,7 +47,7 @@ const MyCompo = () => {
removeComponentFromDynamicZone: () => {}, removeComponentFromDynamicZone: () => {},
removeComponentFromField: () => {}, removeComponentFromField: () => {},
removeRepeatableField: () => {}, removeRepeatableField: () => {},
} = useContentManagerEditViewDataManager() } = useCMEditViewDataManager()
return null return null
} }

View File

@ -205,6 +205,6 @@ export { default as RemoveRoundedButton } from './icons/RemoveRoundedButton';
// content-manager // content-manager
export { default as ContentManagerEditViewDataManagerContext } from './content-manager/contexts/ContentManagerEditViewDataManagerContext'; export { default as ContentManagerEditViewDataManagerContext } from './content-manager/contexts/ContentManagerEditViewDataManagerContext';
export { default as useContentManagerEditViewDataManager } from './content-manager/hooks/useContentManagerEditViewDataManager'; export { default as useCMEditViewDataManager } from './content-manager/hooks/useCMEditViewDataManager';
export { getType }; export { getType };
export { getOtherInfos }; export { getOtherInfos };

View File

@ -12,7 +12,7 @@ import { Row } from '@strapi/parts/Row';
import { Stack } from '@strapi/parts/Stack'; import { Stack } from '@strapi/parts/Stack';
import AlertWarningIcon from '@strapi/icons/AlertWarningIcon'; import AlertWarningIcon from '@strapi/icons/AlertWarningIcon';
import Duplicate from '@strapi/icons/Duplicate'; import Duplicate from '@strapi/icons/Duplicate';
import { useContentManagerEditViewDataManager, useNotification } from '@strapi/helper-plugin'; import { useCMEditViewDataManager, useNotification } from '@strapi/helper-plugin';
import { axiosInstance, getTrad } from '../../../utils'; import { axiosInstance, getTrad } from '../../../utils';
import { cleanData, generateOptions } from './utils'; import { cleanData, generateOptions } from './utils';
@ -41,7 +41,7 @@ const Content = ({ appLocales, currentLocale, localizations, readPermissions })
const toggleNotification = useNotification(); const toggleNotification = useNotification();
const { formatMessage } = useIntl(); const { formatMessage } = useIntl();
const dispatch = useDispatch(); const dispatch = useDispatch();
const { allLayoutData, slug } = useContentManagerEditViewDataManager(); const { allLayoutData, slug } = useCMEditViewDataManager();
const [isLoading, setIsLoading] = useState(false); const [isLoading, setIsLoading] = useState(false);
const [isOpen, setIsOpen] = useState(false); const [isOpen, setIsOpen] = useState(false);
const [value, setValue] = useState(options[0]?.value || ''); const [value, setValue] = useState(options[0]?.value || '');

View File

@ -3,19 +3,13 @@ import get from 'lodash/get';
import has from 'lodash/has'; import has from 'lodash/has';
import { useSelector } from 'react-redux'; import { useSelector } from 'react-redux';
import { useParams } from 'react-router-dom'; import { useParams } from 'react-router-dom';
import { useContentManagerEditViewDataManager, useQueryParams } from '@strapi/helper-plugin'; import { useCMEditViewDataManager, useQueryParams } from '@strapi/helper-plugin';
import selectI18NLocales from '../../selectors/selectI18nLocales'; import selectI18NLocales from '../../selectors/selectI18nLocales';
import useContentTypePermissions from '../../hooks/useContentTypePermissions'; import useContentTypePermissions from '../../hooks/useContentTypePermissions';
import CMEditViewLocalePicker from './CMEditViewLocalePicker'; import CMEditViewLocalePicker from './CMEditViewLocalePicker';
const CMEditViewInjectedComponents = () => { const CMEditViewInjectedComponents = () => {
const { const { layout, modifiedData, initialData, slug, isSingleType } = useCMEditViewDataManager();
layout,
modifiedData,
initialData,
slug,
isSingleType,
} = useContentManagerEditViewDataManager();
const { createPermissions, readPermissions } = useContentTypePermissions(slug); const { createPermissions, readPermissions } = useContentTypePermissions(slug);
const locales = useSelector(selectI18NLocales); const locales = useSelector(selectI18NLocales);
const params = useParams(); const params = useParams();