diff --git a/packages/ra-ui-materialui/src/input/ArrayInput/ArrayInputContext.ts b/packages/ra-core/src/controller/input/ArrayInputContext.ts similarity index 100% rename from packages/ra-ui-materialui/src/input/ArrayInput/ArrayInputContext.ts rename to packages/ra-core/src/controller/input/ArrayInputContext.ts diff --git a/packages/ra-core/src/controller/input/index.ts b/packages/ra-core/src/controller/input/index.ts index d699b0bf3c6..2452dbdf748 100644 --- a/packages/ra-core/src/controller/input/index.ts +++ b/packages/ra-core/src/controller/input/index.ts @@ -8,6 +8,8 @@ export * from './useReferenceArrayInputController'; export * from './useReferenceInputController'; export * from './ReferenceInputBase'; export * from './ReferenceArrayInputBase'; +export * from './ArrayInputContext'; +export * from './useArrayInput'; export { getStatusForInput, diff --git a/packages/ra-ui-materialui/src/input/ArrayInput/useArrayInput.ts b/packages/ra-core/src/controller/input/useArrayInput.ts similarity index 100% rename from packages/ra-ui-materialui/src/input/ArrayInput/useArrayInput.ts rename to packages/ra-core/src/controller/input/useArrayInput.ts diff --git a/packages/ra-ui-materialui/src/input/ArrayInput/ArrayInput.spec.tsx b/packages/ra-ui-materialui/src/input/ArrayInput/ArrayInput.spec.tsx index 1da18ab454b..600599d0688 100644 --- a/packages/ra-ui-materialui/src/input/ArrayInput/ArrayInput.spec.tsx +++ b/packages/ra-ui-materialui/src/input/ArrayInput/ArrayInput.spec.tsx @@ -5,6 +5,7 @@ import { RecordContextProvider, ResourceContextProvider, testDataProvider, + useArrayInput, } from 'ra-core'; import { AdminContext } from '../../AdminContext'; @@ -25,7 +26,6 @@ import { Focus, Reset, } from './ArrayInput.stories'; -import { useArrayInput } from './useArrayInput'; describe('', () => { it('should pass array functions to child', async () => { diff --git a/packages/ra-ui-materialui/src/input/ArrayInput/ArrayInput.tsx b/packages/ra-ui-materialui/src/input/ArrayInput/ArrayInput.tsx index 0d68e22d554..cd3ee89b7d6 100644 --- a/packages/ra-ui-materialui/src/input/ArrayInput/ArrayInput.tsx +++ b/packages/ra-ui-materialui/src/input/ArrayInput/ArrayInput.tsx @@ -30,7 +30,7 @@ import type { CommonInputProps } from '../CommonInputProps'; import { InputHelperText } from '../InputHelperText'; import { sanitizeInputRestProps } from '../sanitizeInputRestProps'; import { Labeled } from '../../Labeled'; -import { ArrayInputContext } from './ArrayInputContext'; +import { ArrayInputContext } from 'ra-core'; /** * To edit arrays of data embedded inside a record, creates a list of sub-forms. diff --git a/packages/ra-ui-materialui/src/input/ArrayInput/SimpleFormIterator.tsx b/packages/ra-ui-materialui/src/input/ArrayInput/SimpleFormIterator.tsx index d0c9d01973b..af004ac60e5 100644 --- a/packages/ra-ui-materialui/src/input/ArrayInput/SimpleFormIterator.tsx +++ b/packages/ra-ui-materialui/src/input/ArrayInput/SimpleFormIterator.tsx @@ -21,12 +21,12 @@ import { FormDataConsumer, type RaRecord, useRecordContext, + useArrayInput, useTranslate, useWrappedSource, } from 'ra-core'; import { type UseFieldArrayReturn, useFormContext } from 'react-hook-form'; -import { useArrayInput } from './useArrayInput'; import { SimpleFormIteratorClasses, SimpleFormIteratorPrefix as PREFIX, diff --git a/packages/ra-ui-materialui/src/input/ArrayInput/SimpleFormIteratorItem.tsx b/packages/ra-ui-materialui/src/input/ArrayInput/SimpleFormIteratorItem.tsx index bd8b3c5e235..2f8a87df90b 100644 --- a/packages/ra-ui-materialui/src/input/ArrayInput/SimpleFormIteratorItem.tsx +++ b/packages/ra-ui-materialui/src/input/ArrayInput/SimpleFormIteratorItem.tsx @@ -3,6 +3,7 @@ import { ReactElement, ReactNode, useMemo } from 'react'; import { Typography, Stack } from '@mui/material'; import clsx from 'clsx'; import { + ArrayInputContextValue, RaRecord, RecordContextProvider, SourceContextProvider, @@ -12,7 +13,6 @@ import { import { SimpleFormIteratorClasses } from './useSimpleFormIteratorStyles'; import { useSimpleFormIterator } from './useSimpleFormIterator'; -import { ArrayInputContextValue } from './ArrayInputContext'; import { SimpleFormIteratorItemContext, SimpleFormIteratorItemContextValue, diff --git a/packages/ra-ui-materialui/src/input/ArrayInput/index.ts b/packages/ra-ui-materialui/src/input/ArrayInput/index.ts index f3c70513aeb..036b9dc6185 100644 --- a/packages/ra-ui-materialui/src/input/ArrayInput/index.ts +++ b/packages/ra-ui-materialui/src/input/ArrayInput/index.ts @@ -1,13 +1,16 @@ export * from './ArrayInput'; -export * from './ArrayInputContext'; export * from './SimpleFormIterator'; export * from './SimpleFormIteratorContext'; export * from './SimpleFormIteratorItem'; export * from './SimpleFormIteratorItemContext'; -export * from './useArrayInput'; export * from './useSimpleFormIterator'; export * from './useSimpleFormIteratorItem'; export * from './useSimpleFormIteratorStyles'; export * from './AddItemButton'; export * from './RemoveItemButton'; export * from './ReOrderButtons'; + +/** + * @deprecated Import from `ra-core` or `react-admin` instead + */ +export { ArrayInputContext, useArrayInput } from 'ra-core';