Skip to content

Commit 1326b5f

Browse files
committed
[ExpansionPanel] Add context
1 parent 5038ea5 commit 1326b5f

File tree

4 files changed

+36
-0
lines changed

4 files changed

+36
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
import React from 'react';
2+
import warning from 'warning';
3+
4+
const ExpansionPanelContext = React.createContext({
5+
disabled: false,
6+
expanded: false,
7+
onChange: () => {
8+
warning(
9+
false,
10+
[
11+
'Material-UI: You called onChange from a component that is not a child of a ',
12+
'ExpansionPanel component.',
13+
].join(''),
14+
);
15+
},
16+
});
17+
18+
export default ExpansionPanelContext;
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
11
export { default } from './ExpansionPanel';
2+
export { default as useExpansionPanel } from './useExpansionPanel';
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
import * as React from 'react';
2+
3+
interface ExpansionPanelContext<ChangeEvent> {
4+
disabled: boolean;
5+
expanded: boolean;
6+
onChange: (event: Event, expanded: boolean) => void;
7+
}
8+
9+
export default function useExpansionPanel<
10+
ChangeEvent = React.SyntheticEvent
11+
>(): ExpansionPanelContext<ChangeEvent>;
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import React from 'react';
2+
import ExpansionPanelContext from './ExpansionPanelContext';
3+
4+
export default function useExpansionPanel() {
5+
return React.useContext(ExpansionPanelContext);
6+
}

0 commit comments

Comments
 (0)