@fluentui/react-accordion 0.0.0-nightlyebf02572f720211207.1 → 0.0.0-nightlyf3017f159620220222.1
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.
- package/CHANGELOG.json +245 -25
- package/CHANGELOG.md +58 -14
- package/Spec.md +36 -4
- package/dist/react-accordion.d.ts +40 -58
- package/lib/Accordion.js.map +1 -1
- package/lib/AccordionHeader.js.map +1 -1
- package/lib/AccordionItem.js.map +1 -1
- package/lib/AccordionPanel.js.map +1 -1
- package/lib/components/Accordion/Accordion.d.ts +1 -1
- package/lib/components/Accordion/Accordion.js +9 -9
- package/lib/components/Accordion/Accordion.js.map +1 -1
- package/lib/components/Accordion/Accordion.types.d.ts +7 -5
- package/lib/components/Accordion/Accordion.types.js.map +1 -1
- package/lib/components/Accordion/AccordionContext.js +0 -1
- package/lib/components/Accordion/AccordionContext.js.map +1 -1
- package/lib/components/Accordion/index.js.map +1 -1
- package/lib/components/Accordion/renderAccordion.d.ts +1 -1
- package/lib/components/Accordion/renderAccordion.js +3 -2
- package/lib/components/Accordion/renderAccordion.js.map +1 -1
- package/lib/components/Accordion/useAccordion.d.ts +2 -3
- package/lib/components/Accordion/useAccordion.js +17 -20
- package/lib/components/Accordion/useAccordion.js.map +1 -1
- package/lib/components/Accordion/useAccordionContextValues.d.ts +1 -1
- package/lib/components/Accordion/useAccordionContextValues.js +3 -3
- package/lib/components/Accordion/useAccordionContextValues.js.map +1 -1
- package/lib/components/Accordion/useAccordionStyles.d.ts +1 -1
- package/lib/components/Accordion/useAccordionStyles.js +2 -2
- package/lib/components/Accordion/useAccordionStyles.js.map +1 -1
- package/lib/components/AccordionHeader/AccordionHeader.d.ts +2 -1
- package/lib/components/AccordionHeader/AccordionHeader.js +10 -9
- package/lib/components/AccordionHeader/AccordionHeader.js.map +1 -1
- package/lib/components/AccordionHeader/AccordionHeader.types.d.ts +12 -11
- package/lib/components/AccordionHeader/AccordionHeader.types.js.map +1 -1
- package/lib/components/AccordionHeader/AccordionHeaderContext.js.map +1 -1
- package/lib/components/AccordionHeader/index.d.ts +0 -1
- package/lib/components/AccordionHeader/index.js +0 -1
- package/lib/components/AccordionHeader/index.js.map +1 -1
- package/lib/components/AccordionHeader/renderAccordionHeader.d.ts +1 -1
- package/lib/components/AccordionHeader/renderAccordionHeader.js +8 -4
- package/lib/components/AccordionHeader/renderAccordionHeader.js.map +1 -1
- package/lib/components/AccordionHeader/useAccordionHeader.d.ts +2 -6
- package/lib/components/AccordionHeader/useAccordionHeader.js +28 -19
- package/lib/components/AccordionHeader/useAccordionHeader.js.map +1 -1
- package/lib/components/AccordionHeader/useAccordionHeaderContextValues.d.ts +1 -1
- package/lib/components/AccordionHeader/useAccordionHeaderContextValues.js +1 -1
- package/lib/components/AccordionHeader/useAccordionHeaderContextValues.js.map +1 -1
- package/lib/components/AccordionHeader/useAccordionHeaderStyles.d.ts +1 -1
- package/lib/components/AccordionHeader/useAccordionHeaderStyles.js +27 -45
- package/lib/components/AccordionHeader/useAccordionHeaderStyles.js.map +1 -1
- package/lib/components/AccordionItem/AccordionItem.d.ts +1 -1
- package/lib/components/AccordionItem/AccordionItem.js +9 -9
- package/lib/components/AccordionItem/AccordionItem.js.map +1 -1
- package/lib/components/AccordionItem/AccordionItem.types.d.ts +4 -3
- package/lib/components/AccordionItem/AccordionItem.types.js.map +1 -1
- package/lib/components/AccordionItem/AccordionItemContext.d.ts +1 -1
- package/lib/components/AccordionItem/AccordionItemContext.js +1 -1
- package/lib/components/AccordionItem/AccordionItemContext.js.map +1 -1
- package/lib/components/AccordionItem/index.js.map +1 -1
- package/lib/components/AccordionItem/renderAccordionItem.d.ts +1 -1
- package/lib/components/AccordionItem/renderAccordionItem.js +4 -4
- package/lib/components/AccordionItem/renderAccordionItem.js.map +1 -1
- package/lib/components/AccordionItem/useAccordionItem.d.ts +2 -6
- package/lib/components/AccordionItem/useAccordionItem.js +9 -13
- package/lib/components/AccordionItem/useAccordionItem.js.map +1 -1
- package/lib/components/AccordionItem/useAccordionItemContextValues.d.ts +1 -1
- package/lib/components/AccordionItem/useAccordionItemContextValues.js +1 -1
- package/lib/components/AccordionItem/useAccordionItemContextValues.js.map +1 -1
- package/lib/components/AccordionItem/useAccordionItemStyles.d.ts +1 -1
- package/lib/components/AccordionItem/useAccordionItemStyles.js +2 -2
- package/lib/components/AccordionItem/useAccordionItemStyles.js.map +1 -1
- package/lib/components/AccordionPanel/AccordionPanel.d.ts +1 -1
- package/lib/components/AccordionPanel/AccordionPanel.js +7 -7
- package/lib/components/AccordionPanel/AccordionPanel.js.map +1 -1
- package/lib/components/AccordionPanel/AccordionPanel.types.d.ts +2 -2
- package/lib/components/AccordionPanel/AccordionPanel.types.js.map +1 -1
- package/lib/components/AccordionPanel/index.js.map +1 -1
- package/lib/components/AccordionPanel/renderAccordionPanel.d.ts +1 -1
- package/lib/components/AccordionPanel/renderAccordionPanel.js +4 -4
- package/lib/components/AccordionPanel/renderAccordionPanel.js.map +1 -1
- package/lib/components/AccordionPanel/useAccordionPanel.d.ts +2 -6
- package/lib/components/AccordionPanel/useAccordionPanel.js +6 -9
- package/lib/components/AccordionPanel/useAccordionPanel.js.map +1 -1
- package/lib/components/AccordionPanel/useAccordionPanelStyles.d.ts +1 -1
- package/lib/components/AccordionPanel/useAccordionPanelStyles.js +2 -2
- package/lib/components/AccordionPanel/useAccordionPanelStyles.js.map +1 -1
- package/lib/index.js.map +1 -1
- package/lib-commonjs/Accordion.js.map +1 -1
- package/lib-commonjs/AccordionHeader.js.map +1 -1
- package/lib-commonjs/AccordionItem.js.map +1 -1
- package/lib-commonjs/AccordionPanel.js.map +1 -1
- package/lib-commonjs/components/Accordion/Accordion.d.ts +1 -1
- package/lib-commonjs/components/Accordion/Accordion.js +5 -5
- package/lib-commonjs/components/Accordion/Accordion.js.map +1 -1
- package/lib-commonjs/components/Accordion/Accordion.types.d.ts +7 -5
- package/lib-commonjs/components/Accordion/Accordion.types.js.map +1 -1
- package/lib-commonjs/components/Accordion/AccordionContext.js +0 -1
- package/lib-commonjs/components/Accordion/AccordionContext.js.map +1 -1
- package/lib-commonjs/components/Accordion/index.js.map +1 -1
- package/lib-commonjs/components/Accordion/renderAccordion.d.ts +1 -1
- package/lib-commonjs/components/Accordion/renderAccordion.js +5 -4
- package/lib-commonjs/components/Accordion/renderAccordion.js.map +1 -1
- package/lib-commonjs/components/Accordion/useAccordion.d.ts +2 -3
- package/lib-commonjs/components/Accordion/useAccordion.js +20 -22
- package/lib-commonjs/components/Accordion/useAccordion.js.map +1 -1
- package/lib-commonjs/components/Accordion/useAccordionContextValues.d.ts +1 -1
- package/lib-commonjs/components/Accordion/useAccordionContextValues.js +5 -5
- package/lib-commonjs/components/Accordion/useAccordionContextValues.js.map +1 -1
- package/lib-commonjs/components/Accordion/useAccordionStyles.d.ts +1 -1
- package/lib-commonjs/components/Accordion/useAccordionStyles.js +5 -5
- package/lib-commonjs/components/Accordion/useAccordionStyles.js.map +1 -1
- package/lib-commonjs/components/AccordionHeader/AccordionHeader.d.ts +2 -1
- package/lib-commonjs/components/AccordionHeader/AccordionHeader.js +6 -5
- package/lib-commonjs/components/AccordionHeader/AccordionHeader.js.map +1 -1
- package/lib-commonjs/components/AccordionHeader/AccordionHeader.types.d.ts +12 -11
- package/lib-commonjs/components/AccordionHeader/AccordionHeader.types.js.map +1 -1
- package/lib-commonjs/components/AccordionHeader/AccordionHeaderContext.js.map +1 -1
- package/lib-commonjs/components/AccordionHeader/index.d.ts +0 -1
- package/lib-commonjs/components/AccordionHeader/index.js +0 -2
- package/lib-commonjs/components/AccordionHeader/index.js.map +1 -1
- package/lib-commonjs/components/AccordionHeader/renderAccordionHeader.d.ts +1 -1
- package/lib-commonjs/components/AccordionHeader/renderAccordionHeader.js +10 -7
- package/lib-commonjs/components/AccordionHeader/renderAccordionHeader.js.map +1 -1
- package/lib-commonjs/components/AccordionHeader/useAccordionHeader.d.ts +2 -6
- package/lib-commonjs/components/AccordionHeader/useAccordionHeader.js +31 -20
- package/lib-commonjs/components/AccordionHeader/useAccordionHeader.js.map +1 -1
- package/lib-commonjs/components/AccordionHeader/useAccordionHeaderContextValues.d.ts +1 -1
- package/lib-commonjs/components/AccordionHeader/useAccordionHeaderContextValues.js +3 -3
- package/lib-commonjs/components/AccordionHeader/useAccordionHeaderContextValues.js.map +1 -1
- package/lib-commonjs/components/AccordionHeader/useAccordionHeaderStyles.d.ts +1 -1
- package/lib-commonjs/components/AccordionHeader/useAccordionHeaderStyles.js +34 -51
- package/lib-commonjs/components/AccordionHeader/useAccordionHeaderStyles.js.map +1 -1
- package/lib-commonjs/components/AccordionItem/AccordionItem.d.ts +1 -1
- package/lib-commonjs/components/AccordionItem/AccordionItem.js +5 -5
- package/lib-commonjs/components/AccordionItem/AccordionItem.js.map +1 -1
- package/lib-commonjs/components/AccordionItem/AccordionItem.types.d.ts +4 -3
- package/lib-commonjs/components/AccordionItem/AccordionItem.types.js.map +1 -1
- package/lib-commonjs/components/AccordionItem/AccordionItemContext.d.ts +1 -1
- package/lib-commonjs/components/AccordionItem/AccordionItemContext.js +3 -3
- package/lib-commonjs/components/AccordionItem/AccordionItemContext.js.map +1 -1
- package/lib-commonjs/components/AccordionItem/index.js.map +1 -1
- package/lib-commonjs/components/AccordionItem/renderAccordionItem.d.ts +1 -1
- package/lib-commonjs/components/AccordionItem/renderAccordionItem.js +6 -7
- package/lib-commonjs/components/AccordionItem/renderAccordionItem.js.map +1 -1
- package/lib-commonjs/components/AccordionItem/useAccordionItem.d.ts +2 -6
- package/lib-commonjs/components/AccordionItem/useAccordionItem.js +11 -15
- package/lib-commonjs/components/AccordionItem/useAccordionItem.js.map +1 -1
- package/lib-commonjs/components/AccordionItem/useAccordionItemContextValues.d.ts +1 -1
- package/lib-commonjs/components/AccordionItem/useAccordionItemContextValues.js +3 -3
- package/lib-commonjs/components/AccordionItem/useAccordionItemContextValues.js.map +1 -1
- package/lib-commonjs/components/AccordionItem/useAccordionItemStyles.d.ts +1 -1
- package/lib-commonjs/components/AccordionItem/useAccordionItemStyles.js +5 -5
- package/lib-commonjs/components/AccordionItem/useAccordionItemStyles.js.map +1 -1
- package/lib-commonjs/components/AccordionPanel/AccordionPanel.d.ts +1 -1
- package/lib-commonjs/components/AccordionPanel/AccordionPanel.js +4 -4
- package/lib-commonjs/components/AccordionPanel/AccordionPanel.js.map +1 -1
- package/lib-commonjs/components/AccordionPanel/AccordionPanel.types.d.ts +2 -2
- package/lib-commonjs/components/AccordionPanel/AccordionPanel.types.js.map +1 -1
- package/lib-commonjs/components/AccordionPanel/index.js.map +1 -1
- package/lib-commonjs/components/AccordionPanel/renderAccordionPanel.d.ts +1 -1
- package/lib-commonjs/components/AccordionPanel/renderAccordionPanel.js +6 -7
- package/lib-commonjs/components/AccordionPanel/renderAccordionPanel.js.map +1 -1
- package/lib-commonjs/components/AccordionPanel/useAccordionPanel.d.ts +2 -6
- package/lib-commonjs/components/AccordionPanel/useAccordionPanel.js +8 -11
- package/lib-commonjs/components/AccordionPanel/useAccordionPanel.js.map +1 -1
- package/lib-commonjs/components/AccordionPanel/useAccordionPanelStyles.d.ts +1 -1
- package/lib-commonjs/components/AccordionPanel/useAccordionPanelStyles.js +6 -6
- package/lib-commonjs/components/AccordionPanel/useAccordionPanelStyles.js.map +1 -1
- package/lib-commonjs/index.js.map +1 -1
- package/package.json +15 -17
- package/lib/components/AccordionHeader/AccordionHeaderExpandIcon.d.ts +0 -3
- package/lib/components/AccordionHeader/AccordionHeaderExpandIcon.js +0 -41
- package/lib/components/AccordionHeader/AccordionHeaderExpandIcon.js.map +0 -1
- package/lib-commonjs/components/AccordionHeader/AccordionHeaderExpandIcon.d.ts +0 -3
- package/lib-commonjs/components/AccordionHeader/AccordionHeaderExpandIcon.js +0 -50
- package/lib-commonjs/components/AccordionHeader/AccordionHeaderExpandIcon.js.map +0 -1
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ARIAButtonSlotProps } from '@fluentui/react-aria';
|
|
2
2
|
import type { ComponentProps } from '@fluentui/react-utilities';
|
|
3
3
|
import type { ComponentState } from '@fluentui/react-utilities';
|
|
4
4
|
import type { Context } from '@fluentui/react-context-selector';
|
|
5
5
|
import type { ForwardRefComponent } from '@fluentui/react-utilities';
|
|
6
|
-
import type { IntrinsicShorthandProps } from '@fluentui/react-utilities';
|
|
7
|
-
import type { ObjectShorthandProps } from '@fluentui/react-utilities';
|
|
8
6
|
import * as React_2 from 'react';
|
|
7
|
+
import type { Slot } from '@fluentui/react-utilities';
|
|
9
8
|
|
|
10
9
|
/**
|
|
11
|
-
* Define a styled Accordion, using the `
|
|
10
|
+
* Define a styled Accordion, using the `useAccordion_unstable` and `useAccordionStyles_unstable` hooks.
|
|
12
11
|
*/
|
|
13
12
|
export declare const Accordion: ForwardRefComponent<AccordionProps>;
|
|
14
13
|
|
|
15
14
|
export declare const accordionClassName = "fui-Accordion";
|
|
16
15
|
|
|
17
|
-
|
|
16
|
+
declare type AccordionCommons = {
|
|
18
17
|
/**
|
|
19
|
-
* Indicates if keyboard navigation is available
|
|
18
|
+
* Indicates if keyboard navigation is available and gives two options,
|
|
19
|
+
* linear or circular navigation
|
|
20
20
|
*/
|
|
21
|
-
|
|
21
|
+
navigation?: 'linear' | 'circular';
|
|
22
22
|
/**
|
|
23
23
|
* Indicates if Accordion support multiple Panels opened at the same time
|
|
24
24
|
*/
|
|
@@ -48,13 +48,14 @@ export declare type AccordionContextValues = {
|
|
|
48
48
|
};
|
|
49
49
|
|
|
50
50
|
/**
|
|
51
|
-
* Define a styled AccordionHeader, using the `
|
|
51
|
+
* Define a styled AccordionHeader, using the `useAccordionHeader_unstable` and `useAccordionHeaderStyles_unstable`
|
|
52
|
+
* hooks.
|
|
52
53
|
*/
|
|
53
54
|
export declare const AccordionHeader: ForwardRefComponent<AccordionHeaderProps>;
|
|
54
55
|
|
|
55
56
|
export declare const accordionHeaderClassName = "fui-AccordionHeader";
|
|
56
57
|
|
|
57
|
-
|
|
58
|
+
declare type AccordionHeaderCommons = {
|
|
58
59
|
/**
|
|
59
60
|
* Size of spacing in the heading
|
|
60
61
|
*/
|
|
@@ -80,36 +81,29 @@ export declare type AccordionHeaderContextValues = {
|
|
|
80
81
|
accordionHeader: AccordionHeaderContextValue;
|
|
81
82
|
};
|
|
82
83
|
|
|
83
|
-
export declare const AccordionHeaderExpandIcon: ForwardRefComponent<AccordionHeaderExpandIconProps>;
|
|
84
|
-
|
|
85
84
|
export declare type AccordionHeaderExpandIconPosition = 'start' | 'end';
|
|
86
85
|
|
|
87
|
-
export declare type
|
|
88
|
-
|
|
89
|
-
export declare type AccordionHeaderProps = ComponentProps<AccordionHeaderSlots> & Partial<AccordionHeaderCommons>;
|
|
90
|
-
|
|
91
|
-
/**
|
|
92
|
-
* Const listing which props are shorthand props.
|
|
93
|
-
*/
|
|
94
|
-
export declare const accordionHeaderShorthandProps: Array<keyof AccordionHeaderSlots>;
|
|
86
|
+
export declare type AccordionHeaderProps = ComponentProps<Partial<AccordionHeaderSlots>> & Partial<AccordionHeaderCommons>;
|
|
95
87
|
|
|
96
88
|
export declare type AccordionHeaderSize = 'small' | 'medium' | 'large' | 'extra-large';
|
|
97
89
|
|
|
98
90
|
export declare type AccordionHeaderSlots = {
|
|
99
|
-
|
|
91
|
+
/**
|
|
92
|
+
* The element wrapping the button. By default this is a div, but can be a heading.
|
|
93
|
+
*/
|
|
94
|
+
root: Slot<'div', 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6'>;
|
|
100
95
|
/**
|
|
101
96
|
* The component to be used as button in heading
|
|
102
97
|
*/
|
|
103
|
-
button:
|
|
98
|
+
button: NonNullable<Slot<ARIAButtonSlotProps>>;
|
|
104
99
|
/**
|
|
105
100
|
* Expand icon slot rendered before (or after) children content in heading
|
|
106
101
|
*/
|
|
107
|
-
expandIcon:
|
|
102
|
+
expandIcon: Slot<'span'>;
|
|
108
103
|
/**
|
|
109
104
|
* Expand icon slot rendered before (or after) children content in heading
|
|
110
105
|
*/
|
|
111
|
-
icon?:
|
|
112
|
-
children: ObjectShorthandProps<React_2.HTMLAttributes<HTMLElement>>;
|
|
106
|
+
icon?: Slot<'div'>;
|
|
113
107
|
};
|
|
114
108
|
|
|
115
109
|
export declare type AccordionHeaderState = ComponentState<AccordionHeaderSlots> & AccordionHeaderCommons & AccordionHeaderContextValue;
|
|
@@ -117,13 +111,13 @@ export declare type AccordionHeaderState = ComponentState<AccordionHeaderSlots>
|
|
|
117
111
|
export declare type AccordionIndex = number | number[];
|
|
118
112
|
|
|
119
113
|
/**
|
|
120
|
-
* Define a styled AccordionItem, using the `
|
|
114
|
+
* Define a styled AccordionItem, using the `useAccordionItem_unstable` and `useAccordionItemStyles_unstable` hooks.
|
|
121
115
|
*/
|
|
122
116
|
export declare const AccordionItem: ForwardRefComponent<AccordionItemProps>;
|
|
123
117
|
|
|
124
118
|
export declare const accordionItemClassName = "fui-AccordionItem";
|
|
125
119
|
|
|
126
|
-
|
|
120
|
+
declare type AccordionItemCommons = {
|
|
127
121
|
/**
|
|
128
122
|
* Disables opening/closing of panel
|
|
129
123
|
*/
|
|
@@ -147,13 +141,8 @@ export declare type AccordionItemContextValues = {
|
|
|
147
141
|
|
|
148
142
|
export declare type AccordionItemProps = ComponentProps<AccordionItemSlots> & Partial<AccordionItemCommons> & Pick<AccordionItemCommons, 'value'>;
|
|
149
143
|
|
|
150
|
-
/**
|
|
151
|
-
* Const listing which props are shorthand props.
|
|
152
|
-
*/
|
|
153
|
-
export declare const accordionItemShorthandProps: Array<keyof AccordionItemSlots>;
|
|
154
|
-
|
|
155
144
|
export declare type AccordionItemSlots = {
|
|
156
|
-
root:
|
|
145
|
+
root: Slot<'div'>;
|
|
157
146
|
};
|
|
158
147
|
|
|
159
148
|
export declare type AccordionItemState = ComponentState<AccordionItemSlots> & AccordionItemCommons & AccordionItemContextValue;
|
|
@@ -161,7 +150,7 @@ export declare type AccordionItemState = ComponentState<AccordionItemSlots> & Ac
|
|
|
161
150
|
export declare type AccordionItemValue = unknown;
|
|
162
151
|
|
|
163
152
|
/**
|
|
164
|
-
* Define a styled AccordionPanel, using the `
|
|
153
|
+
* Define a styled AccordionPanel, using the `useAccordionPanel_unstable` and `useAccordionPanelStyles_unstable` hooks.
|
|
165
154
|
*/
|
|
166
155
|
export declare const AccordionPanel: ForwardRefComponent<AccordionPanelProps>;
|
|
167
156
|
|
|
@@ -169,13 +158,8 @@ export declare const accordionPanelClassName = "fui-AccordionPanel";
|
|
|
169
158
|
|
|
170
159
|
export declare type AccordionPanelProps = ComponentProps<AccordionPanelSlots>;
|
|
171
160
|
|
|
172
|
-
/**
|
|
173
|
-
* Const listing which props are shorthand props.
|
|
174
|
-
*/
|
|
175
|
-
export declare const accordionPanelShorthandProps: Array<keyof AccordionPanelSlots>;
|
|
176
|
-
|
|
177
161
|
export declare type AccordionPanelSlots = {
|
|
178
|
-
root:
|
|
162
|
+
root: Slot<'div'>;
|
|
179
163
|
};
|
|
180
164
|
|
|
181
165
|
export declare type AccordionPanelState = ComponentState<AccordionPanelSlots> & {
|
|
@@ -197,10 +181,8 @@ export declare type AccordionProps = ComponentProps<AccordionSlots> & Partial<Ac
|
|
|
197
181
|
onToggle?: AccordionToggleEventHandler;
|
|
198
182
|
};
|
|
199
183
|
|
|
200
|
-
export declare const accordionShorthandProps: Array<keyof AccordionSlots>;
|
|
201
|
-
|
|
202
184
|
export declare type AccordionSlots = {
|
|
203
|
-
root:
|
|
185
|
+
root: Slot<'div'>;
|
|
204
186
|
};
|
|
205
187
|
|
|
206
188
|
export declare type AccordionState = ComponentState<AccordionSlots> & AccordionCommons & AccordionContextValue;
|
|
@@ -216,67 +198,67 @@ export declare type AccordionToggleEventHandler = (event: AccordionToggleEvent,
|
|
|
216
198
|
/**
|
|
217
199
|
* Function that renders the final JSX of the component
|
|
218
200
|
*/
|
|
219
|
-
export declare const
|
|
201
|
+
export declare const renderAccordion_unstable: (state: AccordionState, contextValues: AccordionContextValues) => JSX.Element;
|
|
220
202
|
|
|
221
203
|
/**
|
|
222
204
|
* Function that renders the final JSX of the component
|
|
223
205
|
*/
|
|
224
|
-
export declare const
|
|
206
|
+
export declare const renderAccordionHeader_unstable: (state: AccordionHeaderState, contextValues: AccordionHeaderContextValues) => JSX.Element;
|
|
225
207
|
|
|
226
208
|
/**
|
|
227
209
|
* Function that renders the final JSX of the component
|
|
228
210
|
*/
|
|
229
|
-
export declare const
|
|
211
|
+
export declare const renderAccordionItem_unstable: (state: AccordionItemState, contextValues: AccordionItemContextValues) => JSX.Element;
|
|
230
212
|
|
|
231
213
|
/**
|
|
232
214
|
* Function that renders the final JSX of the component
|
|
233
215
|
*/
|
|
234
|
-
export declare const
|
|
216
|
+
export declare const renderAccordionPanel_unstable: (state: AccordionPanelState) => JSX.Element | null;
|
|
235
217
|
|
|
236
218
|
/**
|
|
237
219
|
* Returns the props and state required to render the component
|
|
238
220
|
* @param props - Accordion properties
|
|
239
221
|
* @param ref - reference to root HTMLElement of Accordion
|
|
240
222
|
*/
|
|
241
|
-
export declare const
|
|
223
|
+
export declare const useAccordion_unstable: (props: AccordionProps, ref: React_2.Ref<HTMLElement>) => AccordionState;
|
|
242
224
|
|
|
243
|
-
export declare function
|
|
225
|
+
export declare function useAccordionContextValues_unstable(state: AccordionState): AccordionContextValues;
|
|
244
226
|
|
|
245
227
|
/**
|
|
246
228
|
* Returns the props and state required to render the component
|
|
247
229
|
* @param props - AccordionHeader properties
|
|
248
230
|
* @param ref - reference to root HTMLElement of AccordionHeader
|
|
249
231
|
*/
|
|
250
|
-
export declare const
|
|
232
|
+
export declare const useAccordionHeader_unstable: (props: AccordionHeaderProps, ref: React_2.Ref<HTMLElement>) => AccordionHeaderState;
|
|
251
233
|
|
|
252
|
-
export declare function
|
|
234
|
+
export declare function useAccordionHeaderContextValues_unstable(state: AccordionHeaderState): AccordionHeaderContextValues;
|
|
253
235
|
|
|
254
236
|
/** Applies style classnames to slots */
|
|
255
|
-
export declare const
|
|
237
|
+
export declare const useAccordionHeaderStyles_unstable: (state: AccordionHeaderState) => AccordionHeaderState;
|
|
256
238
|
|
|
257
239
|
/**
|
|
258
240
|
* Returns the props and state required to render the component
|
|
259
241
|
* @param props - AccordionItem properties
|
|
260
242
|
* @param ref - reference to root HTMLElement of AccordionItem
|
|
261
243
|
*/
|
|
262
|
-
export declare const
|
|
244
|
+
export declare const useAccordionItem_unstable: (props: AccordionItemProps, ref: React_2.Ref<HTMLElement>) => AccordionItemState;
|
|
263
245
|
|
|
264
|
-
export declare const
|
|
246
|
+
export declare const useAccordionItemContext_unstable: () => AccordionItemContextValue;
|
|
265
247
|
|
|
266
|
-
export declare function
|
|
248
|
+
export declare function useAccordionItemContextValues_unstable(state: AccordionItemState): AccordionItemContextValues;
|
|
267
249
|
|
|
268
|
-
export declare const
|
|
250
|
+
export declare const useAccordionItemStyles_unstable: (state: AccordionItemState) => AccordionItemState;
|
|
269
251
|
|
|
270
252
|
/**
|
|
271
253
|
* Returns the props and state required to render the component
|
|
272
254
|
* @param props - AccordionPanel properties
|
|
273
255
|
* @param ref - reference to root HTMLElement of AccordionPanel
|
|
274
256
|
*/
|
|
275
|
-
export declare const
|
|
257
|
+
export declare const useAccordionPanel_unstable: (props: AccordionPanelProps, ref: React_2.Ref<HTMLElement>) => AccordionPanelState;
|
|
276
258
|
|
|
277
259
|
/** Applies style classnames to slots */
|
|
278
|
-
export declare const
|
|
260
|
+
export declare const useAccordionPanelStyles_unstable: (state: AccordionPanelState) => AccordionPanelState;
|
|
279
261
|
|
|
280
|
-
export declare const
|
|
262
|
+
export declare const useAccordionStyles_unstable: (state: AccordionState) => AccordionState;
|
|
281
263
|
|
|
282
264
|
export { }
|
package/lib/Accordion.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Accordion.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"Accordion.js","sourceRoot":"../src/","sources":["Accordion.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC","sourcesContent":["export * from './components/Accordion/index';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccordionHeader.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"AccordionHeader.js","sourceRoot":"../src/","sources":["AccordionHeader.ts"],"names":[],"mappings":"AAAA,cAAc,oCAAoC,CAAC","sourcesContent":["export * from './components/AccordionHeader/index';\n"]}
|
package/lib/AccordionItem.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccordionItem.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"AccordionItem.js","sourceRoot":"../src/","sources":["AccordionItem.ts"],"names":[],"mappings":"AAAA,cAAc,kCAAkC,CAAC","sourcesContent":["export * from './components/AccordionItem/index';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccordionPanel.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"AccordionPanel.js","sourceRoot":"../src/","sources":["AccordionPanel.ts"],"names":[],"mappings":"AAAA,cAAc,mCAAmC,CAAC","sourcesContent":["export * from './components/AccordionPanel/index';\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { AccordionProps } from './Accordion.types';
|
|
2
2
|
import type { ForwardRefComponent } from '@fluentui/react-utilities';
|
|
3
3
|
/**
|
|
4
|
-
* Define a styled Accordion, using the `
|
|
4
|
+
* Define a styled Accordion, using the `useAccordion_unstable` and `useAccordionStyles_unstable` hooks.
|
|
5
5
|
*/
|
|
6
6
|
export declare const Accordion: ForwardRefComponent<AccordionProps>;
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
2
|
+
import { renderAccordion_unstable } from './renderAccordion';
|
|
3
|
+
import { useAccordion_unstable } from './useAccordion';
|
|
4
|
+
import { useAccordionContextValues_unstable } from './useAccordionContextValues';
|
|
5
|
+
import { useAccordionStyles_unstable } from './useAccordionStyles';
|
|
6
6
|
/**
|
|
7
|
-
* Define a styled Accordion, using the `
|
|
7
|
+
* Define a styled Accordion, using the `useAccordion_unstable` and `useAccordionStyles_unstable` hooks.
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
export const Accordion = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
11
|
-
const state =
|
|
12
|
-
const contextValues =
|
|
13
|
-
|
|
14
|
-
return
|
|
11
|
+
const state = useAccordion_unstable(props, ref);
|
|
12
|
+
const contextValues = useAccordionContextValues_unstable(state);
|
|
13
|
+
useAccordionStyles_unstable(state);
|
|
14
|
+
return renderAccordion_unstable(state, contextValues);
|
|
15
15
|
});
|
|
16
16
|
Accordion.displayName = 'Accordion';
|
|
17
17
|
//# sourceMappingURL=Accordion.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["components/Accordion/Accordion.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,wBAAT,QAAyC,mBAAzC;AACA,SAAS,qBAAT,QAAsC,gBAAtC;AACA,SAAS,kCAAT,QAAmD,6BAAnD;AAGA,SAAS,2BAAT,QAA4C,sBAA5C;AAEA;;AAEG;;AACH,OAAO,MAAM,SAAS,gBAAwC,KAAK,CAAC,UAAN,CAC5D,CAAC,KAAD,EAAQ,GAAR,KAAe;AACb,QAAM,KAAK,GAAG,qBAAqB,CAAC,KAAD,EAAQ,GAAR,CAAnC;AACA,QAAM,aAAa,GAAG,kCAAkC,CAAC,KAAD,CAAxD;AAEA,EAAA,2BAA2B,CAAC,KAAD,CAA3B;AAEA,SAAO,wBAAwB,CAAC,KAAD,EAAQ,aAAR,CAA/B;AACD,CAR2D,CAAvD;AAWP,SAAS,CAAC,WAAV,GAAwB,WAAxB","sourcesContent":["import * as React from 'react';\nimport { renderAccordion_unstable } from './renderAccordion';\nimport { useAccordion_unstable } from './useAccordion';\nimport { useAccordionContextValues_unstable } from './useAccordionContextValues';\nimport type { AccordionProps } from './Accordion.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\nimport { useAccordionStyles_unstable } from './useAccordionStyles';\n\n/**\n * Define a styled Accordion, using the `useAccordion_unstable` and `useAccordionStyles_unstable` hooks.\n */\nexport const Accordion: ForwardRefComponent<AccordionProps> = React.forwardRef<HTMLDivElement, AccordionProps>(\n (props, ref) => {\n const state = useAccordion_unstable(props, ref);\n const contextValues = useAccordionContextValues_unstable(state);\n\n useAccordionStyles_unstable(state);\n\n return renderAccordion_unstable(state, contextValues);\n },\n);\n\nAccordion.displayName = 'Accordion';\n"],"sourceRoot":"../src/"}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import type { ComponentProps, ComponentState,
|
|
2
|
+
import type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';
|
|
3
3
|
import type { AccordionItemValue } from '../AccordionItem/AccordionItem.types';
|
|
4
4
|
export declare type AccordionIndex = number | number[];
|
|
5
5
|
export declare type AccordionToggleEvent<E = HTMLElement> = React.MouseEvent<E> | React.KeyboardEvent<E>;
|
|
6
6
|
export declare type AccordionToggleEventHandler = (event: AccordionToggleEvent, data: AccordionToggleData) => void;
|
|
7
|
-
|
|
7
|
+
declare type AccordionCommons = {
|
|
8
8
|
/**
|
|
9
|
-
* Indicates if keyboard navigation is available
|
|
9
|
+
* Indicates if keyboard navigation is available and gives two options,
|
|
10
|
+
* linear or circular navigation
|
|
10
11
|
*/
|
|
11
|
-
|
|
12
|
+
navigation?: 'linear' | 'circular';
|
|
12
13
|
/**
|
|
13
14
|
* Indicates if Accordion support multiple Panels opened at the same time
|
|
14
15
|
*/
|
|
@@ -33,7 +34,7 @@ export declare type AccordionContextValues = {
|
|
|
33
34
|
accordion: AccordionContextValue;
|
|
34
35
|
};
|
|
35
36
|
export declare type AccordionSlots = {
|
|
36
|
-
root:
|
|
37
|
+
root: Slot<'div'>;
|
|
37
38
|
};
|
|
38
39
|
export declare type AccordionToggleData = {
|
|
39
40
|
value: AccordionItemValue;
|
|
@@ -50,3 +51,4 @@ export declare type AccordionProps = ComponentProps<AccordionSlots> & Partial<Ac
|
|
|
50
51
|
onToggle?: AccordionToggleEventHandler;
|
|
51
52
|
};
|
|
52
53
|
export declare type AccordionState = ComponentState<AccordionSlots> & AccordionCommons & AccordionContextValue;
|
|
54
|
+
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Accordion.types.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"Accordion.types.js","sourceRoot":"../src/","sources":["components/Accordion/Accordion.types.ts"],"names":[],"mappings":"","sourcesContent":["import * as React from 'react';\nimport type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\nimport type { AccordionItemValue } from '../AccordionItem/AccordionItem.types';\n\nexport type AccordionIndex = number | number[];\n\nexport type AccordionToggleEvent<E = HTMLElement> = React.MouseEvent<E> | React.KeyboardEvent<E>;\n\nexport type AccordionToggleEventHandler = (event: AccordionToggleEvent, data: AccordionToggleData) => void;\n\ntype AccordionCommons = {\n /**\n * Indicates if keyboard navigation is available and gives two options,\n * linear or circular navigation\n */\n navigation?: 'linear' | 'circular';\n /**\n * Indicates if Accordion support multiple Panels opened at the same time\n */\n multiple: boolean;\n /**\n * Indicates if Accordion support multiple Panels closed at the same time\n */\n collapsible: boolean;\n};\n\nexport type AccordionContextValue = Omit<AccordionCommons, 'multiple'> & {\n /**\n * The list of opened panels by index\n */\n openItems: AccordionItemValue[];\n /**\n * Callback used by AccordionItem to request a change on it's own opened state\n * Should be used to toggle AccordionItem\n */\n requestToggle: (event: AccordionToggleEvent, data: AccordionToggleData) => void;\n};\n\nexport type AccordionContextValues = {\n accordion: AccordionContextValue;\n};\n\nexport type AccordionSlots = {\n root: Slot<'div'>;\n};\n\nexport type AccordionToggleData = {\n value: AccordionItemValue;\n};\n\nexport type AccordionProps = ComponentProps<AccordionSlots> &\n Partial<AccordionCommons> & {\n /**\n * Controls the state of the panel\n */\n openItems?: AccordionItemValue | AccordionItemValue[];\n /**\n * Default value for the uncontrolled state of the panel\n */\n defaultOpenItems?: AccordionItemValue | AccordionItemValue[];\n onToggle?: AccordionToggleEventHandler;\n };\n\nexport type AccordionState = ComponentState<AccordionSlots> & AccordionCommons & AccordionContextValue;\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["components/Accordion/AccordionContext.ts"],"names":[],"mappings":"AAAA,SAAS,aAAT,QAA8B,kCAA9B;AAIA,OAAO,MAAM,gBAAgB,gBAAmC,aAAa,CAAwB;AACnG,EAAA,SAAS,EAAE,EADwF;AAEnG,EAAA,WAAW,EAAE,KAFsF;;AAGnG,EAAA,aAAa,GAAA;AACX;AACD;;AALkG,CAAxB,CAAtE","sourcesContent":["import { createContext } from '@fluentui/react-context-selector';\nimport type { Context } from '@fluentui/react-context-selector';\nimport type { AccordionContextValue } from './Accordion.types';\n\nexport const AccordionContext: Context<AccordionContextValue> = createContext<AccordionContextValue>({\n openItems: [],\n collapsible: false,\n requestToggle() {\n /* noop */\n },\n});\n"],"sourceRoot":"../src/"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"../src/","sources":["components/Accordion/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,oBAAoB,CAAC","sourcesContent":["export * from './Accordion';\nexport * from './Accordion.types';\nexport * from './renderAccordion';\nexport * from './useAccordion';\nexport * from './useAccordionStyles';\nexport * from './useAccordionContextValues';\nexport * from './AccordionContext';\n"]}
|
|
@@ -2,4 +2,4 @@ import type { AccordionState, AccordionContextValues } from './Accordion.types';
|
|
|
2
2
|
/**
|
|
3
3
|
* Function that renders the final JSX of the component
|
|
4
4
|
*/
|
|
5
|
-
export declare const
|
|
5
|
+
export declare const renderAccordion_unstable: (state: AccordionState, contextValues: AccordionContextValues) => JSX.Element;
|
|
@@ -5,12 +5,13 @@ import { AccordionContext } from './AccordionContext';
|
|
|
5
5
|
* Function that renders the final JSX of the component
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
-
export const
|
|
8
|
+
export const renderAccordion_unstable = (state, contextValues) => {
|
|
9
9
|
const {
|
|
10
10
|
slots,
|
|
11
11
|
slotProps
|
|
12
12
|
} = getSlots(state);
|
|
13
|
-
return /*#__PURE__*/React.createElement(slots.root,
|
|
13
|
+
return /*#__PURE__*/React.createElement(slots.root, { ...slotProps.root
|
|
14
|
+
}, /*#__PURE__*/React.createElement(AccordionContext.Provider, {
|
|
14
15
|
value: contextValues.accordion
|
|
15
16
|
}, slotProps.root.children));
|
|
16
17
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["components/Accordion/renderAccordion.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,QAAT,QAAyB,2BAAzB;AAEA,SAAS,gBAAT,QAAiC,oBAAjC;AAGA;;AAEG;;AACH,OAAO,MAAM,wBAAwB,GAAG,CAAC,KAAD,EAAwB,aAAxB,KAAiE;AACvG,QAAM;AAAE,IAAA,KAAF;AAAS,IAAA;AAAT,MAAuB,QAAQ,CAAiB,KAAjB,CAArC;AAEA,sBACE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,IAAP,EAAW,EAAA,GAAK,SAAS,CAAC;AAAf,GAAX,eACE,KAAA,CAAA,aAAA,CAAC,gBAAgB,CAAC,QAAlB,EAA0B;AAAC,IAAA,KAAK,EAAE,aAAa,CAAC;AAAtB,GAA1B,EAA4D,SAAS,CAAC,IAAV,CAAe,QAA3E,CADF,CADF;AAKD,CARM","sourcesContent":["import * as React from 'react';\nimport { getSlots } from '@fluentui/react-utilities';\n\nimport { AccordionContext } from './AccordionContext';\nimport type { AccordionState, AccordionSlots, AccordionContextValues } from './Accordion.types';\n\n/**\n * Function that renders the final JSX of the component\n */\nexport const renderAccordion_unstable = (state: AccordionState, contextValues: AccordionContextValues) => {\n const { slots, slotProps } = getSlots<AccordionSlots>(state);\n\n return (\n <slots.root {...slotProps.root}>\n <AccordionContext.Provider value={contextValues.accordion}>{slotProps.root.children}</AccordionContext.Provider>\n </slots.root>\n );\n};\n"],"sourceRoot":"../src/"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import type { AccordionProps,
|
|
3
|
-
export declare const accordionShorthandProps: Array<keyof AccordionSlots>;
|
|
2
|
+
import type { AccordionProps, AccordionState } from './Accordion.types';
|
|
4
3
|
/**
|
|
5
4
|
* Returns the props and state required to render the component
|
|
6
5
|
* @param props - Accordion properties
|
|
7
6
|
* @param ref - reference to root HTMLElement of Accordion
|
|
8
7
|
*/
|
|
9
|
-
export declare const
|
|
8
|
+
export declare const useAccordion_unstable: (props: AccordionProps, ref: React.Ref<HTMLElement>) => AccordionState;
|
|
@@ -1,46 +1,50 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { getNativeElementProps, useControllableState, useEventCallback } from '@fluentui/react-utilities';
|
|
3
|
-
|
|
3
|
+
import { useArrowNavigationGroup } from '@fluentui/react-tabster';
|
|
4
4
|
/**
|
|
5
5
|
* Returns the props and state required to render the component
|
|
6
6
|
* @param props - Accordion properties
|
|
7
7
|
* @param ref - reference to root HTMLElement of Accordion
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
|
-
export const
|
|
10
|
+
export const useAccordion_unstable = (props, ref) => {
|
|
11
11
|
const {
|
|
12
12
|
openItems: controlledOpenItems,
|
|
13
13
|
defaultOpenItems,
|
|
14
14
|
multiple = false,
|
|
15
15
|
collapsible = false,
|
|
16
16
|
onToggle,
|
|
17
|
-
|
|
17
|
+
navigation
|
|
18
18
|
} = props;
|
|
19
19
|
const [openItems, setOpenItems] = useControllableState({
|
|
20
20
|
state: React.useMemo(() => normalizeValues(controlledOpenItems), [controlledOpenItems]),
|
|
21
21
|
defaultState: () => initializeUncontrolledOpenItems({
|
|
22
|
-
collapsible,
|
|
23
22
|
defaultOpenItems,
|
|
24
23
|
multiple
|
|
25
24
|
}),
|
|
26
25
|
initialState: []
|
|
27
26
|
});
|
|
27
|
+
const arrowNavigationProps = useArrowNavigationGroup({
|
|
28
|
+
circular: navigation === 'circular'
|
|
29
|
+
});
|
|
28
30
|
const requestToggle = useEventCallback((event, data) => {
|
|
29
31
|
onToggle === null || onToggle === void 0 ? void 0 : onToggle(event, data);
|
|
30
|
-
setOpenItems(previousOpenItems => {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
});
|
|
35
|
-
});
|
|
32
|
+
setOpenItems(previousOpenItems => updateOpenItems(data.value, previousOpenItems, {
|
|
33
|
+
collapsible,
|
|
34
|
+
multiple
|
|
35
|
+
}));
|
|
36
36
|
});
|
|
37
37
|
return {
|
|
38
38
|
multiple,
|
|
39
39
|
collapsible,
|
|
40
|
-
|
|
40
|
+
navigation,
|
|
41
41
|
openItems,
|
|
42
42
|
requestToggle,
|
|
43
|
+
components: {
|
|
44
|
+
root: 'div'
|
|
45
|
+
},
|
|
43
46
|
root: getNativeElementProps('div', { ...props,
|
|
47
|
+
...(navigation ? arrowNavigationProps : {}),
|
|
44
48
|
ref
|
|
45
49
|
})
|
|
46
50
|
};
|
|
@@ -51,8 +55,7 @@ export const useAccordion = (props, ref) => {
|
|
|
51
55
|
|
|
52
56
|
function initializeUncontrolledOpenItems({
|
|
53
57
|
defaultOpenItems,
|
|
54
|
-
multiple
|
|
55
|
-
collapsible
|
|
58
|
+
multiple
|
|
56
59
|
}) {
|
|
57
60
|
if (defaultOpenItems !== undefined) {
|
|
58
61
|
if (Array.isArray(defaultOpenItems)) {
|
|
@@ -61,14 +64,8 @@ function initializeUncontrolledOpenItems({
|
|
|
61
64
|
|
|
62
65
|
return [defaultOpenItems];
|
|
63
66
|
}
|
|
64
|
-
/**
|
|
65
|
-
* TODO: since the dropping of descendants API due to performance issues,
|
|
66
|
-
* the default behavior of Accordion has been compromised and [0] makes no sense
|
|
67
|
-
* indexes are not used anymore to ensure the position of the element which should be opened by default
|
|
68
|
-
*/
|
|
69
|
-
|
|
70
67
|
|
|
71
|
-
return
|
|
68
|
+
return [];
|
|
72
69
|
}
|
|
73
70
|
/**
|
|
74
71
|
* Updates the list of open indexes based on an index that changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["components/Accordion/useAccordion.ts"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { getNativeElementProps, useControllableState, useEventCallback } from '@fluentui/react-utilities';\nimport type { AccordionProps, AccordionState, AccordionToggleData, AccordionToggleEvent } from './Accordion.types';\nimport type { AccordionItemValue } from '../AccordionItem/AccordionItem.types';\nimport { useArrowNavigationGroup } from '@fluentui/react-tabster';\n\n/**\n * Returns the props and state required to render the component\n * @param props - Accordion properties\n * @param ref - reference to root HTMLElement of Accordion\n */\nexport const useAccordion_unstable = (props: AccordionProps, ref: React.Ref<HTMLElement>): AccordionState => {\n const {\n openItems: controlledOpenItems,\n defaultOpenItems,\n multiple = false,\n collapsible = false,\n onToggle,\n navigation,\n } = props;\n const [openItems, setOpenItems] = useControllableState({\n state: React.useMemo(() => normalizeValues(controlledOpenItems), [controlledOpenItems]),\n defaultState: () => initializeUncontrolledOpenItems({ defaultOpenItems, multiple }),\n initialState: [],\n });\n\n const arrowNavigationProps = useArrowNavigationGroup({\n circular: navigation === 'circular',\n });\n\n const requestToggle = useEventCallback((event: AccordionToggleEvent, data: AccordionToggleData) => {\n onToggle?.(event, data);\n setOpenItems(previousOpenItems =>\n updateOpenItems(data.value, previousOpenItems, {\n collapsible,\n multiple,\n }),\n );\n });\n\n return {\n multiple,\n collapsible,\n navigation,\n openItems,\n requestToggle,\n components: {\n root: 'div',\n },\n root: getNativeElementProps('div', {\n ...props,\n ...(navigation ? arrowNavigationProps : {}),\n ref,\n }),\n };\n};\n\n/**\n * Initial value for the uncontrolled case of the list of open indexes\n */\nfunction initializeUncontrolledOpenItems({\n defaultOpenItems,\n multiple,\n}: Pick<AccordionProps, 'defaultOpenItems' | 'multiple'>): AccordionItemValue[] {\n if (defaultOpenItems !== undefined) {\n if (Array.isArray(defaultOpenItems)) {\n return multiple ? defaultOpenItems : [defaultOpenItems[0]];\n }\n return [defaultOpenItems];\n }\n return [];\n}\n\n/**\n * Updates the list of open indexes based on an index that changes\n * @param value - the index that will change\n * @param previousOpenItems - list of current open indexes\n * @param param2 - {multiple, collapsible}\n */\nfunction updateOpenItems(\n value: AccordionItemValue,\n previousOpenItems: AccordionItemValue[],\n { multiple, collapsible }: Pick<AccordionState, 'multiple' | 'collapsible'>,\n) {\n if (multiple) {\n if (previousOpenItems.includes(value)) {\n if (previousOpenItems.length > 1 || collapsible) {\n return previousOpenItems.filter(i => i !== value);\n }\n } else {\n return [...previousOpenItems, value].sort();\n }\n } else {\n return previousOpenItems[0] === value && collapsible ? [] : [value];\n }\n return previousOpenItems;\n}\n\n/**\n * Normalizes Accordion index into an array of indexes\n */\nfunction normalizeValues(index?: AccordionItemValue | AccordionItemValue[]): AccordionItemValue[] | undefined {\n if (index === undefined) {\n return undefined;\n }\n return Array.isArray(index) ? index : [index];\n}\n"],"sourceRoot":"../src/"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import type { AccordionContextValues, AccordionState } from './Accordion.types';
|
|
2
|
-
export declare function
|
|
2
|
+
export declare function useAccordionContextValues_unstable(state: AccordionState): AccordionContextValues;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
export function
|
|
1
|
+
export function useAccordionContextValues_unstable(state) {
|
|
2
2
|
const {
|
|
3
|
-
|
|
3
|
+
navigation,
|
|
4
4
|
openItems,
|
|
5
5
|
requestToggle,
|
|
6
6
|
collapsible
|
|
7
7
|
} = state; // This context is created with "@fluentui/react-context-selector", these is no sense to memoize it
|
|
8
8
|
|
|
9
9
|
const accordion = {
|
|
10
|
-
|
|
10
|
+
navigation,
|
|
11
11
|
openItems,
|
|
12
12
|
requestToggle,
|
|
13
13
|
collapsible
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["components/Accordion/useAccordionContextValues.ts"],"names":[],"mappings":"AAEA,OAAM,SAAU,kCAAV,CAA6C,KAA7C,EAAkE;AACtE,QAAM;AAAE,IAAA,UAAF;AAAc,IAAA,SAAd;AAAyB,IAAA,aAAzB;AAAwC,IAAA;AAAxC,MAAwD,KAA9D,CADsE,CAGtE;;AACA,QAAM,SAAS,GAA0B;AACvC,IAAA,UADuC;AAEvC,IAAA,SAFuC;AAGvC,IAAA,aAHuC;AAIvC,IAAA;AAJuC,GAAzC;AAOA,SAAO;AAAE,IAAA;AAAF,GAAP;AACD","sourcesContent":["import type { AccordionContextValue, AccordionContextValues, AccordionState } from './Accordion.types';\n\nexport function useAccordionContextValues_unstable(state: AccordionState): AccordionContextValues {\n const { navigation, openItems, requestToggle, collapsible } = state;\n\n // This context is created with \"@fluentui/react-context-selector\", these is no sense to memoize it\n const accordion: AccordionContextValue = {\n navigation,\n openItems,\n requestToggle,\n collapsible,\n };\n\n return { accordion };\n}\n"],"sourceRoot":"../src/"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { AccordionState } from './Accordion.types';
|
|
2
2
|
export declare const accordionClassName = "fui-Accordion";
|
|
3
|
-
export declare const
|
|
3
|
+
export declare const useAccordionStyles_unstable: (state: AccordionState) => AccordionState;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { mergeClasses } from '@
|
|
1
|
+
import { mergeClasses } from '@griffel/react';
|
|
2
2
|
export const accordionClassName = 'fui-Accordion';
|
|
3
|
-
export const
|
|
3
|
+
export const useAccordionStyles_unstable = state => {
|
|
4
4
|
state.root.className = mergeClasses(accordionClassName, state.root.className);
|
|
5
5
|
return state;
|
|
6
6
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["components/Accordion/useAccordionStyles.ts"],"names":[],"mappings":"AAAA,SAAS,YAAT,QAA6B,gBAA7B;AAGA,OAAO,MAAM,kBAAkB,GAAG,eAA3B;AAEP,OAAO,MAAM,2BAA2B,GAAI,KAAD,IAA0B;AACnE,EAAA,KAAK,CAAC,IAAN,CAAW,SAAX,GAAuB,YAAY,CAAC,kBAAD,EAAqB,KAAK,CAAC,IAAN,CAAW,SAAhC,CAAnC;AAEA,SAAO,KAAP;AACD,CAJM","sourcesContent":["import { mergeClasses } from '@griffel/react';\nimport type { AccordionState } from './Accordion.types';\n\nexport const accordionClassName = 'fui-Accordion';\n\nexport const useAccordionStyles_unstable = (state: AccordionState) => {\n state.root.className = mergeClasses(accordionClassName, state.root.className);\n\n return state;\n};\n"],"sourceRoot":"../src/"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { AccordionHeaderProps } from './AccordionHeader.types';
|
|
2
2
|
import type { ForwardRefComponent } from '@fluentui/react-utilities';
|
|
3
3
|
/**
|
|
4
|
-
* Define a styled AccordionHeader, using the `
|
|
4
|
+
* Define a styled AccordionHeader, using the `useAccordionHeader_unstable` and `useAccordionHeaderStyles_unstable`
|
|
5
|
+
* hooks.
|
|
5
6
|
*/
|
|
6
7
|
export declare const AccordionHeader: ForwardRefComponent<AccordionHeaderProps>;
|
|
@@ -1,17 +1,18 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
2
|
+
import { useAccordionHeader_unstable } from './useAccordionHeader';
|
|
3
|
+
import { renderAccordionHeader_unstable } from './renderAccordionHeader';
|
|
4
|
+
import { useAccordionHeaderStyles_unstable } from './useAccordionHeaderStyles';
|
|
5
|
+
import { useAccordionHeaderContextValues_unstable } from './useAccordionHeaderContextValues';
|
|
6
6
|
/**
|
|
7
|
-
* Define a styled AccordionHeader, using the `
|
|
7
|
+
* Define a styled AccordionHeader, using the `useAccordionHeader_unstable` and `useAccordionHeaderStyles_unstable`
|
|
8
|
+
* hooks.
|
|
8
9
|
*/
|
|
9
10
|
|
|
10
11
|
export const AccordionHeader = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
11
|
-
const state =
|
|
12
|
-
const contextValues =
|
|
13
|
-
|
|
14
|
-
return
|
|
12
|
+
const state = useAccordionHeader_unstable(props, ref);
|
|
13
|
+
const contextValues = useAccordionHeaderContextValues_unstable(state);
|
|
14
|
+
useAccordionHeaderStyles_unstable(state);
|
|
15
|
+
return renderAccordionHeader_unstable(state, contextValues);
|
|
15
16
|
});
|
|
16
17
|
AccordionHeader.displayName = 'AccordionHeader';
|
|
17
18
|
//# sourceMappingURL=AccordionHeader.js.map
|