From 5eb4f31d22e713d6d6e21d55b7720e6a3ea5f85c Mon Sep 17 00:00:00 2001 From: Sebastian Silbermann Date: Thu, 28 Oct 2021 10:27:15 +0200 Subject: [PATCH] [useRadioGroup] Convert to TypeScript (#29326) --- .../src/RadioGroup/RadioGroupContext.js | 12 ------------ .../src/RadioGroup/RadioGroupContext.ts | 18 ++++++++++++++++++ .../src/RadioGroup/useRadioGroup.d.ts | 5 ----- .../src/RadioGroup/useRadioGroup.js | 6 ------ .../src/RadioGroup/useRadioGroup.ts | 8 ++++++++ 5 files changed, 26 insertions(+), 23 deletions(-) delete mode 100644 packages/mui-material/src/RadioGroup/RadioGroupContext.js create mode 100644 packages/mui-material/src/RadioGroup/RadioGroupContext.ts delete mode 100644 packages/mui-material/src/RadioGroup/useRadioGroup.d.ts delete mode 100644 packages/mui-material/src/RadioGroup/useRadioGroup.js create mode 100644 packages/mui-material/src/RadioGroup/useRadioGroup.ts diff --git a/packages/mui-material/src/RadioGroup/RadioGroupContext.js b/packages/mui-material/src/RadioGroup/RadioGroupContext.js deleted file mode 100644 index 3099dd48dbdcc4..00000000000000 --- a/packages/mui-material/src/RadioGroup/RadioGroupContext.js +++ /dev/null @@ -1,12 +0,0 @@ -import * as React from 'react'; - -/** - * @ignore - internal component. - */ -const RadioGroupContext = React.createContext(); - -if (process.env.NODE_ENV !== 'production') { - RadioGroupContext.displayName = 'RadioGroupContext'; -} - -export default RadioGroupContext; diff --git a/packages/mui-material/src/RadioGroup/RadioGroupContext.ts b/packages/mui-material/src/RadioGroup/RadioGroupContext.ts new file mode 100644 index 00000000000000..0679181062d1d4 --- /dev/null +++ b/packages/mui-material/src/RadioGroup/RadioGroupContext.ts @@ -0,0 +1,18 @@ +import * as React from 'react'; + +export interface RadioGroupContextValue { + name: string | undefined; + onChange: (event: React.ChangeEvent, value: string) => void; + value: any; +} + +/** + * @ignore - internal component. + */ +const RadioGroupContext = React.createContext(undefined); + +if (process.env.NODE_ENV !== 'production') { + RadioGroupContext.displayName = 'RadioGroupContext'; +} + +export default RadioGroupContext; diff --git a/packages/mui-material/src/RadioGroup/useRadioGroup.d.ts b/packages/mui-material/src/RadioGroup/useRadioGroup.d.ts deleted file mode 100644 index f4eb93c9c18113..00000000000000 --- a/packages/mui-material/src/RadioGroup/useRadioGroup.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { RadioGroupProps } from './RadioGroup'; - -export interface RadioGroupState extends Pick {} - -export default function useRadioGroup(): RadioGroupState | undefined; diff --git a/packages/mui-material/src/RadioGroup/useRadioGroup.js b/packages/mui-material/src/RadioGroup/useRadioGroup.js deleted file mode 100644 index 81bb7987532a0d..00000000000000 --- a/packages/mui-material/src/RadioGroup/useRadioGroup.js +++ /dev/null @@ -1,6 +0,0 @@ -import * as React from 'react'; -import RadioGroupContext from './RadioGroupContext'; - -export default function useRadioGroup() { - return React.useContext(RadioGroupContext); -} diff --git a/packages/mui-material/src/RadioGroup/useRadioGroup.ts b/packages/mui-material/src/RadioGroup/useRadioGroup.ts new file mode 100644 index 00000000000000..8f948f05cecd39 --- /dev/null +++ b/packages/mui-material/src/RadioGroup/useRadioGroup.ts @@ -0,0 +1,8 @@ +import * as React from 'react'; +import RadioGroupContext, { RadioGroupContextValue } from './RadioGroupContext'; + +export interface RadioGroupState extends RadioGroupContextValue {} + +export default function useRadioGroup(): RadioGroupState | undefined { + return React.useContext(RadioGroupContext); +}