@fluentui/react-accordion 9.2.0 → 9.3.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 +115 -1
- package/CHANGELOG.md +34 -2
- package/dist/index.d.ts +44 -34
- package/lib/components/Accordion/Accordion.js.map +1 -1
- package/lib/components/Accordion/Accordion.types.js.map +1 -1
- package/lib/components/Accordion/index.js +0 -1
- package/lib/components/Accordion/index.js.map +1 -1
- package/lib/components/Accordion/renderAccordion.js +5 -5
- package/lib/components/Accordion/renderAccordion.js.map +1 -1
- package/lib/components/Accordion/useAccordion.js +13 -6
- package/lib/components/Accordion/useAccordion.js.map +1 -1
- package/lib/components/Accordion/useAccordionContextValues.js +3 -2
- package/lib/components/Accordion/useAccordionContextValues.js.map +1 -1
- package/lib/components/AccordionHeader/AccordionHeader.types.js.map +1 -1
- package/lib/components/AccordionHeader/index.js +0 -1
- package/lib/components/AccordionHeader/index.js.map +1 -1
- package/lib/components/AccordionHeader/renderAccordionHeader.js +5 -5
- package/lib/components/AccordionHeader/renderAccordionHeader.js.map +1 -1
- package/lib/components/AccordionHeader/useAccordionHeader.js +24 -15
- package/lib/components/AccordionHeader/useAccordionHeader.js.map +1 -1
- package/lib/components/AccordionHeader/useAccordionHeaderContextValues.js.map +1 -1
- package/lib/components/AccordionHeader/useAccordionHeaderStyles.styles.js +1 -1
- package/lib/components/AccordionItem/AccordionItem.types.js +1 -1
- package/lib/components/AccordionItem/AccordionItem.types.js.map +1 -1
- package/lib/components/AccordionItem/index.js +0 -1
- package/lib/components/AccordionItem/index.js.map +1 -1
- package/lib/components/AccordionItem/renderAccordionItem.js +5 -5
- package/lib/components/AccordionItem/renderAccordionItem.js.map +1 -1
- package/lib/components/AccordionItem/useAccordionItem.js +10 -9
- package/lib/components/AccordionItem/useAccordionItem.js.map +1 -1
- package/lib/components/AccordionItem/useAccordionItemContextValues.js +8 -5
- package/lib/components/AccordionItem/useAccordionItemContextValues.js.map +1 -1
- package/lib/components/AccordionPanel/renderAccordionPanel.js +3 -3
- package/lib/components/AccordionPanel/renderAccordionPanel.js.map +1 -1
- package/lib/components/AccordionPanel/useAccordionPanel.js +6 -4
- package/lib/components/AccordionPanel/useAccordionPanel.js.map +1 -1
- package/lib/{components/Accordion/AccordionContext.js → contexts/accordion.js} +4 -2
- package/lib/contexts/accordion.js.map +1 -0
- package/lib/contexts/accordionHeader.js +11 -0
- package/lib/contexts/accordionHeader.js.map +1 -0
- package/lib/{components/AccordionItem/AccordionItemContext.js → contexts/accordionItem.js} +6 -5
- package/lib/contexts/accordionItem.js.map +1 -0
- package/lib/index.js +6 -3
- package/lib/index.js.map +1 -1
- package/lib-commonjs/components/Accordion/index.js +0 -1
- package/lib-commonjs/components/Accordion/index.js.map +1 -1
- package/lib-commonjs/components/Accordion/renderAccordion.js +4 -4
- package/lib-commonjs/components/Accordion/renderAccordion.js.map +1 -1
- package/lib-commonjs/components/Accordion/useAccordion.js +12 -5
- package/lib-commonjs/components/Accordion/useAccordion.js.map +1 -1
- package/lib-commonjs/components/Accordion/useAccordionContextValues.js +3 -2
- package/lib-commonjs/components/Accordion/useAccordionContextValues.js.map +1 -1
- package/lib-commonjs/components/AccordionHeader/index.js +0 -1
- package/lib-commonjs/components/AccordionHeader/index.js.map +1 -1
- package/lib-commonjs/components/AccordionHeader/renderAccordionHeader.js +4 -4
- package/lib-commonjs/components/AccordionHeader/renderAccordionHeader.js.map +1 -1
- package/lib-commonjs/components/AccordionHeader/useAccordionHeader.js +24 -15
- package/lib-commonjs/components/AccordionHeader/useAccordionHeader.js.map +1 -1
- package/lib-commonjs/components/AccordionHeader/useAccordionHeaderStyles.styles.js +7 -7
- package/lib-commonjs/components/AccordionHeader/useAccordionHeaderStyles.styles.js.map +1 -1
- package/lib-commonjs/components/AccordionItem/AccordionItem.types.js +0 -2
- package/lib-commonjs/components/AccordionItem/AccordionItem.types.js.map +1 -1
- package/lib-commonjs/components/AccordionItem/index.js +0 -1
- package/lib-commonjs/components/AccordionItem/index.js.map +1 -1
- package/lib-commonjs/components/AccordionItem/renderAccordionItem.js +4 -4
- package/lib-commonjs/components/AccordionItem/renderAccordionItem.js.map +1 -1
- package/lib-commonjs/components/AccordionItem/useAccordionItem.js +11 -10
- package/lib-commonjs/components/AccordionItem/useAccordionItem.js.map +1 -1
- package/lib-commonjs/components/AccordionItem/useAccordionItemContextValues.js +8 -5
- package/lib-commonjs/components/AccordionItem/useAccordionItemContextValues.js.map +1 -1
- package/lib-commonjs/components/AccordionPanel/renderAccordionPanel.js +2 -2
- package/lib-commonjs/components/AccordionPanel/renderAccordionPanel.js.map +1 -1
- package/lib-commonjs/components/AccordionPanel/useAccordionPanel.js +7 -5
- package/lib-commonjs/components/AccordionPanel/useAccordionPanel.js.map +1 -1
- package/lib-commonjs/{components/Accordion/AccordionContext.js → contexts/accordion.js} +3 -2
- package/lib-commonjs/contexts/accordion.js.map +1 -0
- package/lib-commonjs/{components/AccordionHeader/AccordionHeaderContext.js → contexts/accordionHeader.js} +4 -5
- package/lib-commonjs/contexts/accordionHeader.js.map +1 -0
- package/lib-commonjs/{components/AccordionItem/AccordionItemContext.js → contexts/accordionItem.js} +5 -5
- package/lib-commonjs/contexts/accordionItem.js.map +1 -0
- package/lib-commonjs/index.js +10 -7
- package/lib-commonjs/index.js.map +1 -1
- package/package.json +9 -9
- package/lib/components/Accordion/AccordionContext.js.map +0 -1
- package/lib/components/AccordionHeader/AccordionHeaderContext.js +0 -11
- package/lib/components/AccordionHeader/AccordionHeaderContext.js.map +0 -1
- package/lib/components/AccordionItem/AccordionItemContext.js.map +0 -1
- package/lib-commonjs/components/Accordion/AccordionContext.js.map +0 -1
- package/lib-commonjs/components/AccordionHeader/AccordionHeaderContext.js.map +0 -1
- package/lib-commonjs/components/AccordionItem/AccordionItemContext.js.map +0 -1
package/CHANGELOG.json
CHANGED
|
@@ -2,7 +2,121 @@
|
|
|
2
2
|
"name": "@fluentui/react-accordion",
|
|
3
3
|
"entries": [
|
|
4
4
|
{
|
|
5
|
-
"date": "
|
|
5
|
+
"date": "Wed, 09 Aug 2023 13:11:30 GMT",
|
|
6
|
+
"tag": "@fluentui/react-accordion_v9.3.1",
|
|
7
|
+
"version": "9.3.1",
|
|
8
|
+
"comments": {
|
|
9
|
+
"patch": [
|
|
10
|
+
{
|
|
11
|
+
"author": "bernardo.sunderhus@gmail.com",
|
|
12
|
+
"package": "@fluentui/react-accordion",
|
|
13
|
+
"commit": "405adc0f15862c74784dd7576ca6d22b47adf012",
|
|
14
|
+
"comment": "bugfix: Breaking Change, onHeaderClick erroneously removed"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"author": "olfedias@microsoft.com",
|
|
18
|
+
"package": "@fluentui/react-accordion",
|
|
19
|
+
"commit": "b090c0339983847a62b9dc6187d08dc8c4b1d55f",
|
|
20
|
+
"comment": "chore: Update Griffel to latest version"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"author": "bernardo.sunderhus@gmail.com",
|
|
24
|
+
"package": "@fluentui/react-accordion",
|
|
25
|
+
"commit": "d740ac698cb7e8c3332e21f6466896f3f2763ae3",
|
|
26
|
+
"comment": "chore(cxe-coastal): migrate to new slot API"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"author": "beachball",
|
|
30
|
+
"package": "@fluentui/react-accordion",
|
|
31
|
+
"comment": "Bump @fluentui/react-aria to v9.3.29",
|
|
32
|
+
"commit": "d0e28b405dc91c4682aec72dd784767a3ce95c78"
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"author": "beachball",
|
|
36
|
+
"package": "@fluentui/react-accordion",
|
|
37
|
+
"comment": "Bump @fluentui/react-jsx-runtime to v9.0.0-alpha.14",
|
|
38
|
+
"commit": "d0e28b405dc91c4682aec72dd784767a3ce95c78"
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"author": "beachball",
|
|
42
|
+
"package": "@fluentui/react-accordion",
|
|
43
|
+
"comment": "Bump @fluentui/react-shared-contexts to v9.7.2",
|
|
44
|
+
"commit": "d0e28b405dc91c4682aec72dd784767a3ce95c78"
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"author": "beachball",
|
|
48
|
+
"package": "@fluentui/react-accordion",
|
|
49
|
+
"comment": "Bump @fluentui/react-tabster to v9.12.1",
|
|
50
|
+
"commit": "d0e28b405dc91c4682aec72dd784767a3ce95c78"
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"author": "beachball",
|
|
54
|
+
"package": "@fluentui/react-accordion",
|
|
55
|
+
"comment": "Bump @fluentui/react-theme to v9.1.11",
|
|
56
|
+
"commit": "d0e28b405dc91c4682aec72dd784767a3ce95c78"
|
|
57
|
+
}
|
|
58
|
+
]
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"date": "Fri, 04 Aug 2023 08:52:55 GMT",
|
|
63
|
+
"tag": "@fluentui/react-accordion_v9.3.0",
|
|
64
|
+
"version": "9.3.0",
|
|
65
|
+
"comments": {
|
|
66
|
+
"minor": [
|
|
67
|
+
{
|
|
68
|
+
"author": "bernardo.sunderhus@gmail.com",
|
|
69
|
+
"package": "@fluentui/react-accordion",
|
|
70
|
+
"commit": "192666b54cb365f4c958f46c3e097b597ebd94fc",
|
|
71
|
+
"comment": "feat: make AccordionItemValue generic"
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"author": "beachball",
|
|
75
|
+
"package": "@fluentui/react-accordion",
|
|
76
|
+
"comment": "Bump @fluentui/react-aria to v9.3.28",
|
|
77
|
+
"commit": "0bf7d9438c1d0ff90cd2b28bc4cceb4f807afbca"
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
"author": "beachball",
|
|
81
|
+
"package": "@fluentui/react-accordion",
|
|
82
|
+
"comment": "Bump @fluentui/react-context-selector to v9.1.27",
|
|
83
|
+
"commit": "0bf7d9438c1d0ff90cd2b28bc4cceb4f807afbca"
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
"author": "beachball",
|
|
87
|
+
"package": "@fluentui/react-accordion",
|
|
88
|
+
"comment": "Bump @fluentui/react-jsx-runtime to v9.0.0-alpha.13",
|
|
89
|
+
"commit": "0bf7d9438c1d0ff90cd2b28bc4cceb4f807afbca"
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
"author": "beachball",
|
|
93
|
+
"package": "@fluentui/react-accordion",
|
|
94
|
+
"comment": "Bump @fluentui/react-shared-contexts to v9.7.1",
|
|
95
|
+
"commit": "0bf7d9438c1d0ff90cd2b28bc4cceb4f807afbca"
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
"author": "beachball",
|
|
99
|
+
"package": "@fluentui/react-accordion",
|
|
100
|
+
"comment": "Bump @fluentui/react-tabster to v9.12.0",
|
|
101
|
+
"commit": "0bf7d9438c1d0ff90cd2b28bc4cceb4f807afbca"
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
"author": "beachball",
|
|
105
|
+
"package": "@fluentui/react-accordion",
|
|
106
|
+
"comment": "Bump @fluentui/react-theme to v9.1.10",
|
|
107
|
+
"commit": "0bf7d9438c1d0ff90cd2b28bc4cceb4f807afbca"
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"author": "beachball",
|
|
111
|
+
"package": "@fluentui/react-accordion",
|
|
112
|
+
"comment": "Bump @fluentui/react-utilities to v9.11.0",
|
|
113
|
+
"commit": "0bf7d9438c1d0ff90cd2b28bc4cceb4f807afbca"
|
|
114
|
+
}
|
|
115
|
+
]
|
|
116
|
+
}
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
"date": "Tue, 01 Aug 2023 10:17:19 GMT",
|
|
6
120
|
"tag": "@fluentui/react-accordion_v9.2.0",
|
|
7
121
|
"version": "9.2.0",
|
|
8
122
|
"comments": {
|
package/CHANGELOG.md
CHANGED
|
@@ -1,12 +1,44 @@
|
|
|
1
1
|
# Change Log - @fluentui/react-accordion
|
|
2
2
|
|
|
3
|
-
This log was last generated on
|
|
3
|
+
This log was last generated on Wed, 09 Aug 2023 13:11:30 GMT and should not be manually modified.
|
|
4
4
|
|
|
5
5
|
<!-- Start content -->
|
|
6
6
|
|
|
7
|
+
## [9.3.1](https://github.com/microsoft/fluentui/tree/@fluentui/react-accordion_v9.3.1)
|
|
8
|
+
|
|
9
|
+
Wed, 09 Aug 2023 13:11:30 GMT
|
|
10
|
+
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-accordion_v9.3.0..@fluentui/react-accordion_v9.3.1)
|
|
11
|
+
|
|
12
|
+
### Patches
|
|
13
|
+
|
|
14
|
+
- bugfix: Breaking Change, onHeaderClick erroneously removed ([PR #28764](https://github.com/microsoft/fluentui/pull/28764) by bernardo.sunderhus@gmail.com)
|
|
15
|
+
- chore: Update Griffel to latest version ([PR #28684](https://github.com/microsoft/fluentui/pull/28684) by olfedias@microsoft.com)
|
|
16
|
+
- chore(cxe-coastal): migrate to new slot API ([PR #28754](https://github.com/microsoft/fluentui/pull/28754) by bernardo.sunderhus@gmail.com)
|
|
17
|
+
- Bump @fluentui/react-aria to v9.3.29 ([commit](https://github.com/microsoft/fluentui/commit/d0e28b405dc91c4682aec72dd784767a3ce95c78) by beachball)
|
|
18
|
+
- Bump @fluentui/react-jsx-runtime to v9.0.0-alpha.14 ([commit](https://github.com/microsoft/fluentui/commit/d0e28b405dc91c4682aec72dd784767a3ce95c78) by beachball)
|
|
19
|
+
- Bump @fluentui/react-shared-contexts to v9.7.2 ([commit](https://github.com/microsoft/fluentui/commit/d0e28b405dc91c4682aec72dd784767a3ce95c78) by beachball)
|
|
20
|
+
- Bump @fluentui/react-tabster to v9.12.1 ([commit](https://github.com/microsoft/fluentui/commit/d0e28b405dc91c4682aec72dd784767a3ce95c78) by beachball)
|
|
21
|
+
- Bump @fluentui/react-theme to v9.1.11 ([commit](https://github.com/microsoft/fluentui/commit/d0e28b405dc91c4682aec72dd784767a3ce95c78) by beachball)
|
|
22
|
+
|
|
23
|
+
## [9.3.0](https://github.com/microsoft/fluentui/tree/@fluentui/react-accordion_v9.3.0)
|
|
24
|
+
|
|
25
|
+
Fri, 04 Aug 2023 08:52:55 GMT
|
|
26
|
+
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-accordion_v9.2.0..@fluentui/react-accordion_v9.3.0)
|
|
27
|
+
|
|
28
|
+
### Minor changes
|
|
29
|
+
|
|
30
|
+
- feat: make AccordionItemValue generic ([PR #28665](https://github.com/microsoft/fluentui/pull/28665) by bernardo.sunderhus@gmail.com)
|
|
31
|
+
- Bump @fluentui/react-aria to v9.3.28 ([commit](https://github.com/microsoft/fluentui/commit/0bf7d9438c1d0ff90cd2b28bc4cceb4f807afbca) by beachball)
|
|
32
|
+
- Bump @fluentui/react-context-selector to v9.1.27 ([commit](https://github.com/microsoft/fluentui/commit/0bf7d9438c1d0ff90cd2b28bc4cceb4f807afbca) by beachball)
|
|
33
|
+
- Bump @fluentui/react-jsx-runtime to v9.0.0-alpha.13 ([commit](https://github.com/microsoft/fluentui/commit/0bf7d9438c1d0ff90cd2b28bc4cceb4f807afbca) by beachball)
|
|
34
|
+
- Bump @fluentui/react-shared-contexts to v9.7.1 ([commit](https://github.com/microsoft/fluentui/commit/0bf7d9438c1d0ff90cd2b28bc4cceb4f807afbca) by beachball)
|
|
35
|
+
- Bump @fluentui/react-tabster to v9.12.0 ([commit](https://github.com/microsoft/fluentui/commit/0bf7d9438c1d0ff90cd2b28bc4cceb4f807afbca) by beachball)
|
|
36
|
+
- Bump @fluentui/react-theme to v9.1.10 ([commit](https://github.com/microsoft/fluentui/commit/0bf7d9438c1d0ff90cd2b28bc4cceb4f807afbca) by beachball)
|
|
37
|
+
- Bump @fluentui/react-utilities to v9.11.0 ([commit](https://github.com/microsoft/fluentui/commit/0bf7d9438c1d0ff90cd2b28bc4cceb4f807afbca) by beachball)
|
|
38
|
+
|
|
7
39
|
## [9.2.0](https://github.com/microsoft/fluentui/tree/@fluentui/react-accordion_v9.2.0)
|
|
8
40
|
|
|
9
|
-
Tue, 01 Aug 2023 10:
|
|
41
|
+
Tue, 01 Aug 2023 10:17:19 GMT
|
|
10
42
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-accordion_v9.1.25..@fluentui/react-accordion_v9.2.0)
|
|
11
43
|
|
|
12
44
|
### Minor changes
|
package/dist/index.d.ts
CHANGED
|
@@ -15,11 +15,11 @@ import type { SlotClassNames } from '@fluentui/react-utilities';
|
|
|
15
15
|
/**
|
|
16
16
|
* Define a styled Accordion, using the `useAccordion_unstable` and `useAccordionStyles_unstable` hooks.
|
|
17
17
|
*/
|
|
18
|
-
export declare const Accordion: ForwardRefComponent<AccordionProps
|
|
18
|
+
export declare const Accordion: ForwardRefComponent<AccordionProps> & (<TItem>(props: AccordionProps<TItem>) => JSX.Element);
|
|
19
19
|
|
|
20
20
|
export declare const accordionClassNames: SlotClassNames<AccordionSlots>;
|
|
21
21
|
|
|
22
|
-
export declare type AccordionContextValue =
|
|
22
|
+
export declare type AccordionContextValue<Value = AccordionItemValue> = {
|
|
23
23
|
/**
|
|
24
24
|
* The list of opened panels by index
|
|
25
25
|
*/
|
|
@@ -28,7 +28,10 @@ export declare type AccordionContextValue = Required<Pick<AccordionProps, 'colla
|
|
|
28
28
|
* Callback used by AccordionItem to request a change on it's own opened state
|
|
29
29
|
* Should be used to toggle AccordionItem
|
|
30
30
|
*/
|
|
31
|
-
requestToggle: (
|
|
31
|
+
requestToggle: (data: AccordionRequestToggleData<Value>) => void;
|
|
32
|
+
collapsible: boolean;
|
|
33
|
+
multiple: boolean;
|
|
34
|
+
navigation: 'linear' | 'circular' | undefined;
|
|
32
35
|
};
|
|
33
36
|
|
|
34
37
|
export declare type AccordionContextValues = {
|
|
@@ -43,11 +46,11 @@ export declare const AccordionHeader: ForwardRefComponent<AccordionHeaderProps>;
|
|
|
43
46
|
|
|
44
47
|
export declare const accordionHeaderClassNames: SlotClassNames<AccordionHeaderSlots>;
|
|
45
48
|
|
|
46
|
-
export declare
|
|
47
|
-
|
|
48
|
-
export declare type AccordionHeaderContextValue = Required<Pick<AccordionHeaderProps, 'expandIconPosition' | 'size'>> & {
|
|
49
|
+
export declare type AccordionHeaderContextValue = {
|
|
49
50
|
disabled: boolean;
|
|
50
51
|
open: boolean;
|
|
52
|
+
expandIconPosition: AccordionHeaderExpandIconPosition;
|
|
53
|
+
size: AccordionHeaderSize;
|
|
51
54
|
};
|
|
52
55
|
|
|
53
56
|
export declare type AccordionHeaderContextValues = {
|
|
@@ -71,6 +74,8 @@ export declare type AccordionHeaderProps = ComponentProps<Partial<AccordionHeade
|
|
|
71
74
|
size?: AccordionHeaderSize;
|
|
72
75
|
};
|
|
73
76
|
|
|
77
|
+
export declare const AccordionHeaderProvider: React_2.Provider<AccordionHeaderContextValue>;
|
|
78
|
+
|
|
74
79
|
export declare type AccordionHeaderSize = 'small' | 'medium' | 'large' | 'extra-large';
|
|
75
80
|
|
|
76
81
|
export declare type AccordionHeaderSlots = {
|
|
@@ -103,16 +108,21 @@ export declare const AccordionItem: ForwardRefComponent<AccordionItemProps>;
|
|
|
103
108
|
|
|
104
109
|
export declare const accordionItemClassNames: SlotClassNames<AccordionItemSlots>;
|
|
105
110
|
|
|
106
|
-
export declare type AccordionItemContextValue =
|
|
107
|
-
onHeaderClick(ev: React_2.MouseEvent | React_2.KeyboardEvent): void;
|
|
111
|
+
export declare type AccordionItemContextValue<Value = AccordionItemValue> = {
|
|
108
112
|
open: boolean;
|
|
113
|
+
disabled: boolean;
|
|
114
|
+
value: Value;
|
|
115
|
+
/**
|
|
116
|
+
* @deprecated - use `requestToggle` from AccordionContent instead
|
|
117
|
+
*/
|
|
118
|
+
onHeaderClick(event: AccordionToggleEvent): void;
|
|
109
119
|
};
|
|
110
120
|
|
|
111
|
-
export declare type AccordionItemContextValues = {
|
|
112
|
-
accordionItem: AccordionItemContextValue
|
|
121
|
+
export declare type AccordionItemContextValues<Value = AccordionItemValue> = {
|
|
122
|
+
accordionItem: AccordionItemContextValue<Value>;
|
|
113
123
|
};
|
|
114
124
|
|
|
115
|
-
export declare type AccordionItemProps = ComponentProps<AccordionItemSlots> & {
|
|
125
|
+
export declare type AccordionItemProps<Value = AccordionItemValue> = ComponentProps<AccordionItemSlots> & {
|
|
116
126
|
/**
|
|
117
127
|
* Disables opening/closing of panel.
|
|
118
128
|
*/
|
|
@@ -120,16 +130,16 @@ export declare type AccordionItemProps = ComponentProps<AccordionItemSlots> & {
|
|
|
120
130
|
/**
|
|
121
131
|
* Required value that identifies this item inside an Accordion component.
|
|
122
132
|
*/
|
|
123
|
-
value:
|
|
133
|
+
value: Value;
|
|
124
134
|
};
|
|
125
135
|
|
|
126
|
-
export declare const AccordionItemProvider: React_2.Provider<AccordionItemContextValue
|
|
136
|
+
export declare const AccordionItemProvider: React_2.Provider<AccordionItemContextValue<unknown>>;
|
|
127
137
|
|
|
128
138
|
export declare type AccordionItemSlots = {
|
|
129
139
|
root: NonNullable<Slot<'div'>>;
|
|
130
140
|
};
|
|
131
141
|
|
|
132
|
-
export declare type AccordionItemState = ComponentState<AccordionItemSlots> & AccordionItemContextValue
|
|
142
|
+
export declare type AccordionItemState<Value = AccordionItemValue> = ComponentState<AccordionItemSlots> & AccordionItemContextValue<Value>;
|
|
133
143
|
|
|
134
144
|
export declare type AccordionItemValue = unknown;
|
|
135
145
|
|
|
@@ -153,11 +163,11 @@ export declare type AccordionPanelState = ComponentState<AccordionPanelSlots> &
|
|
|
153
163
|
open: boolean;
|
|
154
164
|
};
|
|
155
165
|
|
|
156
|
-
export declare type AccordionProps = ComponentProps<AccordionSlots> & {
|
|
166
|
+
export declare type AccordionProps<Value = AccordionItemValue> = ComponentProps<AccordionSlots> & {
|
|
157
167
|
/**
|
|
158
168
|
* Default value for the uncontrolled state of the panel.
|
|
159
169
|
*/
|
|
160
|
-
defaultOpenItems?:
|
|
170
|
+
defaultOpenItems?: Value | Value[];
|
|
161
171
|
/**
|
|
162
172
|
* Indicates if Accordion support multiple Panels closed at the same time.
|
|
163
173
|
*/
|
|
@@ -173,28 +183,33 @@ export declare type AccordionProps = ComponentProps<AccordionSlots> & {
|
|
|
173
183
|
/**
|
|
174
184
|
* Callback to be called when the opened items change.
|
|
175
185
|
*/
|
|
176
|
-
onToggle?: AccordionToggleEventHandler
|
|
186
|
+
onToggle?: AccordionToggleEventHandler<Value>;
|
|
177
187
|
/**
|
|
178
188
|
* Controls the state of the panel.
|
|
179
189
|
*/
|
|
180
|
-
openItems?:
|
|
190
|
+
openItems?: Value | Value[];
|
|
181
191
|
};
|
|
182
192
|
|
|
183
|
-
export declare const AccordionProvider: Provider<AccordionContextValue
|
|
193
|
+
export declare const AccordionProvider: Provider<AccordionContextValue<unknown>> & FC<ProviderProps<AccordionContextValue<unknown>>>;
|
|
194
|
+
|
|
195
|
+
declare type AccordionRequestToggleData<Value = AccordionItemValue> = {
|
|
196
|
+
event: AccordionToggleEvent;
|
|
197
|
+
} & Pick<AccordionToggleData<Value>, 'value'>;
|
|
184
198
|
|
|
185
199
|
export declare type AccordionSlots = {
|
|
186
200
|
root: NonNullable<Slot<'div'>>;
|
|
187
201
|
};
|
|
188
202
|
|
|
189
|
-
export declare type AccordionState = ComponentState<AccordionSlots> & AccordionContextValue
|
|
203
|
+
export declare type AccordionState<Value = AccordionItemValue> = ComponentState<AccordionSlots> & AccordionContextValue<Value>;
|
|
190
204
|
|
|
191
|
-
export declare type AccordionToggleData = {
|
|
192
|
-
value:
|
|
205
|
+
export declare type AccordionToggleData<Value = AccordionItemValue> = {
|
|
206
|
+
value: Value;
|
|
207
|
+
openItems: Value[];
|
|
193
208
|
};
|
|
194
209
|
|
|
195
210
|
export declare type AccordionToggleEvent<E = HTMLElement> = React_2.MouseEvent<E> | React_2.KeyboardEvent<E>;
|
|
196
211
|
|
|
197
|
-
export declare type AccordionToggleEventHandler = (event: AccordionToggleEvent, data: AccordionToggleData) => void;
|
|
212
|
+
export declare type AccordionToggleEventHandler<Value = AccordionItemValue> = (event: AccordionToggleEvent, data: AccordionToggleData<Value>) => void;
|
|
198
213
|
|
|
199
214
|
/**
|
|
200
215
|
* Function that renders the final JSX of the component
|
|
@@ -221,9 +236,9 @@ export declare const renderAccordionPanel_unstable: (state: AccordionPanelState)
|
|
|
221
236
|
* @param props - Accordion properties
|
|
222
237
|
* @param ref - reference to root HTMLElement of Accordion
|
|
223
238
|
*/
|
|
224
|
-
export declare const useAccordion_unstable: (props: AccordionProps
|
|
239
|
+
export declare const useAccordion_unstable: <Value = unknown>(props: AccordionProps<Value>, ref: React_2.Ref<HTMLElement>) => AccordionState<Value>;
|
|
225
240
|
|
|
226
|
-
export declare const useAccordionContext_unstable: <T>(selector: ContextSelector<AccordionContextValue
|
|
241
|
+
export declare const useAccordionContext_unstable: <T>(selector: ContextSelector<AccordionContextValue<unknown>, T>) => T;
|
|
227
242
|
|
|
228
243
|
export declare function useAccordionContextValues_unstable(state: AccordionState): AccordionContextValues;
|
|
229
244
|
|
|
@@ -234,12 +249,7 @@ export declare function useAccordionContextValues_unstable(state: AccordionState
|
|
|
234
249
|
*/
|
|
235
250
|
export declare const useAccordionHeader_unstable: (props: AccordionHeaderProps, ref: React_2.Ref<HTMLElement>) => AccordionHeaderState;
|
|
236
251
|
|
|
237
|
-
export declare const useAccordionHeaderContext_unstable: () =>
|
|
238
|
-
open: boolean;
|
|
239
|
-
disabled: boolean;
|
|
240
|
-
size: string;
|
|
241
|
-
expandIconPosition: string;
|
|
242
|
-
};
|
|
252
|
+
export declare const useAccordionHeaderContext_unstable: () => AccordionHeaderContextValue;
|
|
243
253
|
|
|
244
254
|
export declare function useAccordionHeaderContextValues_unstable(state: AccordionHeaderState): AccordionHeaderContextValues;
|
|
245
255
|
|
|
@@ -253,11 +263,11 @@ export declare const useAccordionHeaderStyles_unstable: (state: AccordionHeaderS
|
|
|
253
263
|
*/
|
|
254
264
|
export declare const useAccordionItem_unstable: (props: AccordionItemProps, ref: React_2.Ref<HTMLElement>) => AccordionItemState;
|
|
255
265
|
|
|
256
|
-
export declare const useAccordionItemContext_unstable: () => AccordionItemContextValue
|
|
266
|
+
export declare const useAccordionItemContext_unstable: () => AccordionItemContextValue<unknown>;
|
|
257
267
|
|
|
258
268
|
export declare function useAccordionItemContextValues_unstable(state: AccordionItemState): AccordionItemContextValues;
|
|
259
269
|
|
|
260
|
-
export declare const useAccordionItemStyles_unstable: (state: AccordionItemState) => AccordionItemState
|
|
270
|
+
export declare const useAccordionItemStyles_unstable: (state: AccordionItemState) => AccordionItemState<unknown>;
|
|
261
271
|
|
|
262
272
|
/**
|
|
263
273
|
* Returns the props and state required to render the component
|
|
@@ -269,6 +279,6 @@ export declare const useAccordionPanel_unstable: (props: AccordionPanelProps, re
|
|
|
269
279
|
/** Applies style classnames to slots */
|
|
270
280
|
export declare const useAccordionPanelStyles_unstable: (state: AccordionPanelState) => AccordionPanelState;
|
|
271
281
|
|
|
272
|
-
export declare const useAccordionStyles_unstable: (state: AccordionState) => AccordionState
|
|
282
|
+
export declare const useAccordionStyles_unstable: (state: AccordionState) => AccordionState<unknown>;
|
|
273
283
|
|
|
274
284
|
export { }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Accordion.tsx"],"sourcesContent":["import * as React from 'react';\nimport { renderAccordion_unstable } from './renderAccordion';\nimport { useAccordion_unstable } from './useAccordion';\nimport { useAccordionContextValues_unstable } from './useAccordionContextValues';\nimport { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\nimport { useAccordionStyles_unstable } from './useAccordionStyles.styles';\nimport type { AccordionProps } from './Accordion.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\n\n/**\n * Define a styled Accordion, using the `useAccordion_unstable` and `useAccordionStyles_unstable` hooks.\n */\nexport const Accordion: ForwardRefComponent<AccordionProps>
|
|
1
|
+
{"version":3,"sources":["Accordion.tsx"],"sourcesContent":["import * as React from 'react';\nimport { renderAccordion_unstable } from './renderAccordion';\nimport { useAccordion_unstable } from './useAccordion';\nimport { useAccordionContextValues_unstable } from './useAccordionContextValues';\nimport { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\nimport { useAccordionStyles_unstable } from './useAccordionStyles.styles';\nimport type { AccordionProps } from './Accordion.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\n\n/**\n * Define a styled Accordion, using the `useAccordion_unstable` and `useAccordionStyles_unstable` hooks.\n */\nexport const Accordion: ForwardRefComponent<AccordionProps> & (<TItem>(props: AccordionProps<TItem>) => JSX.Element) =\n React.forwardRef<HTMLDivElement, AccordionProps>((props, ref) => {\n const state = useAccordion_unstable(props, ref);\n const contextValues = useAccordionContextValues_unstable(state);\n\n useAccordionStyles_unstable(state);\n\n useCustomStyleHook_unstable('useAccordionStyles_unstable')(state);\n\n return renderAccordion_unstable(state, contextValues);\n }) as ForwardRefComponent<AccordionProps> & (<TItem>(props: AccordionProps<TItem>) => JSX.Element);\n\nAccordion.displayName = 'Accordion';\n"],"names":["React","renderAccordion_unstable","useAccordion_unstable","useAccordionContextValues_unstable","useCustomStyleHook_unstable","useAccordionStyles_unstable","Accordion","forwardRef","props","ref","state","contextValues","displayName"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,wBAAwB,QAAQ,oBAAoB;AAC7D,SAASC,qBAAqB,QAAQ,iBAAiB;AACvD,SAASC,kCAAkC,QAAQ,8BAA8B;AACjF,SAASC,2BAA2B,QAAQ,kCAAkC;AAC9E,SAASC,2BAA2B,QAAQ,8BAA8B;AAI1E;;CAEC,GACD,OAAO,MAAMC,0BACXN,MAAMO,UAAU,CAAiC,CAACC,OAAOC,MAAQ;IAC/D,MAAMC,QAAQR,sBAAsBM,OAAOC;IAC3C,MAAME,gBAAgBR,mCAAmCO;IAEzDL,4BAA4BK;IAE5BN,4BAA4B,+BAA+BM;IAE3D,OAAOT,yBAAyBS,OAAOC;AACzC,GAAmG;AAErGL,UAAUM,WAAW,GAAG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["Accordion.types.ts"],"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 =
|
|
1
|
+
{"version":3,"sources":["Accordion.types.ts"],"sourcesContent":["import * as React from 'react';\nimport type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\nimport { AccordionContextValue } from '../../contexts/accordion';\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<Value = AccordionItemValue> = (\n event: AccordionToggleEvent,\n data: AccordionToggleData<Value>,\n) => void;\n\nexport type AccordionContextValues = {\n accordion: AccordionContextValue;\n};\n\nexport type AccordionSlots = {\n root: NonNullable<Slot<'div'>>;\n};\n\nexport type AccordionToggleData<Value = AccordionItemValue> = {\n value: Value;\n openItems: Value[];\n};\n\nexport type AccordionProps<Value = AccordionItemValue> = ComponentProps<AccordionSlots> & {\n /**\n * Default value for the uncontrolled state of the panel.\n */\n defaultOpenItems?: Value | Value[];\n\n /**\n * Indicates if Accordion support multiple Panels closed at the same time.\n */\n collapsible?: boolean;\n\n /**\n * Indicates if Accordion support multiple Panels opened at the same time.\n */\n multiple?: boolean;\n\n /**\n * Indicates if keyboard navigation is available and gives two options, linear or circular navigation.\n */\n navigation?: 'linear' | 'circular';\n\n /**\n * Callback to be called when the opened items change.\n */\n onToggle?: AccordionToggleEventHandler<Value>;\n\n /**\n * Controls the state of the panel.\n */\n openItems?: Value | Value[];\n};\n\nexport type AccordionState<Value = AccordionItemValue> = ComponentState<AccordionSlots> & AccordionContextValue<Value>;\n"],"names":["React"],"mappings":"AAAA,YAAYA,WAAW,QAAQ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["index.ts"],"sourcesContent":["export * from './Accordion';\nexport * from './Accordion.types';\nexport * from './renderAccordion';\nexport * from './useAccordion';\nexport * from './useAccordionStyles.styles';\nexport * from './useAccordionContextValues';\
|
|
1
|
+
{"version":3,"sources":["index.ts"],"sourcesContent":["export * from './Accordion';\nexport * from './Accordion.types';\nexport * from './renderAccordion';\nexport * from './useAccordion';\nexport * from './useAccordionStyles.styles';\nexport * from './useAccordionContextValues';\n"],"names":[],"mappings":"AAAA,cAAc,cAAc;AAC5B,cAAc,oBAAoB;AAClC,cAAc,oBAAoB;AAClC,cAAc,iBAAiB;AAC/B,cAAc,8BAA8B;AAC5C,cAAc,8BAA8B"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/** @jsxRuntime classic */ /** @jsx createElement */ import { createElement } from '@fluentui/react-jsx-runtime';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { assertSlots } from '@fluentui/react-utilities';
|
|
3
|
+
import { AccordionProvider } from '../../contexts/accordion';
|
|
4
4
|
/**
|
|
5
5
|
* Function that renders the final JSX of the component
|
|
6
6
|
*/ export const renderAccordion_unstable = (state, contextValues)=>{
|
|
7
|
-
|
|
8
|
-
return /*#__PURE__*/ createElement(
|
|
7
|
+
assertSlots(state);
|
|
8
|
+
return /*#__PURE__*/ createElement(state.root, null, /*#__PURE__*/ createElement(AccordionProvider, {
|
|
9
9
|
value: contextValues.accordion
|
|
10
|
-
},
|
|
10
|
+
}, state.root.children));
|
|
11
11
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["renderAccordion.tsx"],"sourcesContent":["/** @jsxRuntime classic */\n/** @jsx createElement */\n\nimport { createElement } from '@fluentui/react-jsx-runtime';\n\nimport {
|
|
1
|
+
{"version":3,"sources":["renderAccordion.tsx"],"sourcesContent":["/** @jsxRuntime classic */\n/** @jsx createElement */\n\nimport { createElement } from '@fluentui/react-jsx-runtime';\n\nimport { assertSlots } from '@fluentui/react-utilities';\n\nimport type { AccordionState, AccordionSlots, AccordionContextValues } from './Accordion.types';\nimport { AccordionProvider } from '../../contexts/accordion';\n\n/**\n * Function that renders the final JSX of the component\n */\nexport const renderAccordion_unstable = (state: AccordionState, contextValues: AccordionContextValues) => {\n assertSlots<AccordionSlots>(state);\n\n return (\n <state.root>\n <AccordionProvider value={contextValues.accordion}>{state.root.children}</AccordionProvider>\n </state.root>\n );\n};\n"],"names":["createElement","assertSlots","AccordionProvider","renderAccordion_unstable","state","contextValues","root","value","accordion","children"],"mappings":"AAAA,wBAAwB,GACxB,uBAAuB,GAEvB,SAASA,aAAa,QAAQ,8BAA8B;AAE5D,SAASC,WAAW,QAAQ,4BAA4B;AAGxD,SAASC,iBAAiB,QAAQ,2BAA2B;AAE7D;;CAEC,GACD,OAAO,MAAMC,2BAA2B,CAACC,OAAuBC,gBAA0C;IACxGJ,YAA4BG;IAE5B,qBACE,AAhBJ,cAgBKA,MAAME,IAAI,sBACT,AAjBN,cAiBOJ;QAAkBK,OAAOF,cAAcG,SAAS;OAAGJ,MAAME,IAAI,CAACG,QAAQ;AAG7E,EAAE"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { getNativeElementProps, useControllableState, useEventCallback } from '@fluentui/react-utilities';
|
|
2
|
+
import { getNativeElementProps, useControllableState, useEventCallback, slot } 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
|
|
@@ -21,22 +21,29 @@ import { useArrowNavigationGroup } from '@fluentui/react-tabster';
|
|
|
21
21
|
circular: navigation === 'circular',
|
|
22
22
|
tabbable: true
|
|
23
23
|
});
|
|
24
|
-
const requestToggle = useEventCallback((
|
|
25
|
-
|
|
26
|
-
|
|
24
|
+
const requestToggle = useEventCallback((data)=>{
|
|
25
|
+
const nextOpenItems = updateOpenItems(data.value, openItems, multiple, collapsible);
|
|
26
|
+
onToggle === null || onToggle === void 0 ? void 0 : onToggle(data.event, {
|
|
27
|
+
value: data.value,
|
|
28
|
+
openItems: nextOpenItems
|
|
29
|
+
});
|
|
30
|
+
setOpenItems(nextOpenItems);
|
|
27
31
|
});
|
|
28
32
|
return {
|
|
29
33
|
collapsible,
|
|
34
|
+
multiple,
|
|
30
35
|
navigation,
|
|
31
36
|
openItems,
|
|
32
37
|
requestToggle,
|
|
33
38
|
components: {
|
|
34
39
|
root: 'div'
|
|
35
40
|
},
|
|
36
|
-
root: getNativeElementProps('div', {
|
|
41
|
+
root: slot.always(getNativeElementProps('div', {
|
|
37
42
|
...props,
|
|
38
|
-
...navigation ? arrowNavigationProps :
|
|
43
|
+
...navigation ? arrowNavigationProps : undefined,
|
|
39
44
|
ref
|
|
45
|
+
}), {
|
|
46
|
+
elementType: 'div'
|
|
40
47
|
})
|
|
41
48
|
};
|
|
42
49
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["useAccordion.ts"],"sourcesContent":["import * as React from 'react';\nimport { getNativeElementProps, useControllableState, useEventCallback } from '@fluentui/react-utilities';\nimport type { AccordionProps, AccordionState
|
|
1
|
+
{"version":3,"sources":["useAccordion.ts"],"sourcesContent":["import * as React from 'react';\nimport { getNativeElementProps, useControllableState, useEventCallback, slot } from '@fluentui/react-utilities';\nimport type { AccordionProps, AccordionState } from './Accordion.types';\nimport type { AccordionItemValue } from '../AccordionItem/AccordionItem.types';\nimport { useArrowNavigationGroup } from '@fluentui/react-tabster';\nimport { AccordionRequestToggleData } from '../../contexts/accordion';\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 = <Value = AccordionItemValue>(\n props: AccordionProps<Value>,\n ref: React.Ref<HTMLElement>,\n): AccordionState<Value> => {\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 tabbable: true,\n });\n\n const requestToggle = useEventCallback((data: AccordionRequestToggleData<Value>) => {\n const nextOpenItems = updateOpenItems(data.value, openItems, multiple, collapsible);\n onToggle?.(data.event, { value: data.value, openItems: nextOpenItems });\n setOpenItems(nextOpenItems);\n });\n\n return {\n collapsible,\n multiple,\n navigation,\n openItems,\n requestToggle,\n components: {\n root: 'div',\n },\n root: slot.always(\n getNativeElementProps('div', {\n ...props,\n ...(navigation ? arrowNavigationProps : undefined),\n ref,\n }),\n { elementType: 'div' },\n ),\n };\n};\n\n/**\n * Initial value for the uncontrolled case of the list of open indexes\n */\nfunction initializeUncontrolledOpenItems<Value = AccordionItemValue>({\n defaultOpenItems,\n multiple,\n}: Pick<AccordionProps<Value>, 'defaultOpenItems' | 'multiple'>): Value[] {\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 multiple - if Accordion support multiple Panels opened at the same time\n * @param collapsible - if Accordion support multiple Panels closed at the same time\n */\nfunction updateOpenItems<Value = AccordionItemValue>(\n value: Value,\n previousOpenItems: Value[],\n multiple: boolean,\n collapsible: boolean,\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<Value = AccordionItemValue>(index?: Value | Value[]): Value[] | undefined {\n if (index === undefined) {\n return undefined;\n }\n return Array.isArray(index) ? index : [index];\n}\n"],"names":["React","getNativeElementProps","useControllableState","useEventCallback","slot","useArrowNavigationGroup","useAccordion_unstable","props","ref","openItems","controlledOpenItems","defaultOpenItems","multiple","collapsible","onToggle","navigation","setOpenItems","state","useMemo","normalizeValues","defaultState","initializeUncontrolledOpenItems","initialState","arrowNavigationProps","circular","tabbable","requestToggle","data","nextOpenItems","updateOpenItems","value","event","components","root","always","undefined","elementType","Array","isArray","previousOpenItems","includes","length","filter","i","sort","index"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,qBAAqB,EAAEC,oBAAoB,EAAEC,gBAAgB,EAAEC,IAAI,QAAQ,4BAA4B;AAGhH,SAASC,uBAAuB,QAAQ,0BAA0B;AAGlE;;;;CAIC,GACD,OAAO,MAAMC,wBAAwB,CACnCC,OACAC,MAC0B;IAC1B,MAAM,EACJC,WAAWC,oBAAmB,EAC9BC,iBAAgB,EAChBC,UAAW,KAAK,CAAA,EAChBC,aAAc,KAAK,CAAA,EACnBC,SAAQ,EACRC,WAAU,EACX,GAAGR;IACJ,MAAM,CAACE,WAAWO,aAAa,GAAGd,qBAAqB;QACrDe,OAAOjB,MAAMkB,OAAO,CAAC,IAAMC,gBAAgBT,sBAAsB;YAACA;SAAoB;QACtFU,cAAc,IAAMC,gCAAgC;gBAAEV;gBAAkBC;YAAS;QACjFU,cAAc,EAAE;IAClB;IAEA,MAAMC,uBAAuBlB,wBAAwB;QACnDmB,UAAUT,eAAe;QACzBU,UAAU,IAAI;IAChB;IAEA,MAAMC,gBAAgBvB,iBAAiB,CAACwB,OAA4C;QAClF,MAAMC,gBAAgBC,gBAAgBF,KAAKG,KAAK,EAAErB,WAAWG,UAAUC;QACvEC,qBAAAA,sBAAAA,KAAAA,IAAAA,SAAWa,KAAKI,KAAK,EAAE;YAAED,OAAOH,KAAKG,KAAK;YAAErB,WAAWmB;QAAc;QACrEZ,aAAaY;IACf;IAEA,OAAO;QACLf;QACAD;QACAG;QACAN;QACAiB;QACAM,YAAY;YACVC,MAAM;QACR;QACAA,MAAM7B,KAAK8B,MAAM,CACfjC,sBAAsB,OAAO;YAC3B,GAAGM,KAAK;YACR,GAAIQ,aAAaQ,uBAAuBY,SAAS;YACjD3B;QACF,IACA;YAAE4B,aAAa;QAAM;IAEzB;AACF,EAAE;AAEF;;CAEC,GACD,SAASf,gCAA4D,EACnEV,iBAAgB,EAChBC,SAAQ,EACqD,EAAW;IACxE,IAAID,qBAAqBwB,WAAW;QAClC,IAAIE,MAAMC,OAAO,CAAC3B,mBAAmB;YACnC,OAAOC,WAAWD,mBAAmB;gBAACA,gBAAgB,CAAC,EAAE;aAAC;QAC5D,CAAC;QACD,OAAO;YAACA;SAAiB;IAC3B,CAAC;IACD,OAAO,EAAE;AACX;AAEA;;;;;;CAMC,GACD,SAASkB,gBACPC,KAAY,EACZS,iBAA0B,EAC1B3B,QAAiB,EACjBC,WAAoB,EACpB;IACA,IAAID,UAAU;QACZ,IAAI2B,kBAAkBC,QAAQ,CAACV,QAAQ;YACrC,IAAIS,kBAAkBE,MAAM,GAAG,KAAK5B,aAAa;gBAC/C,OAAO0B,kBAAkBG,MAAM,CAACC,CAAAA,IAAKA,MAAMb;YAC7C,CAAC;QACH,OAAO;YACL,OAAO;mBAAIS;gBAAmBT;aAAM,CAACc,IAAI;QAC3C,CAAC;IACH,OAAO;QACL,OAAOL,iBAAiB,CAAC,EAAE,KAAKT,SAASjB,cAAc,EAAE,GAAG;YAACiB;SAAM;IACrE,CAAC;IACD,OAAOS;AACT;AAEA;;CAEC,GACD,SAASpB,gBAA4C0B,KAAuB,EAAuB;IACjG,IAAIA,UAAUV,WAAW;QACvB,OAAOA;IACT,CAAC;IACD,OAAOE,MAAMC,OAAO,CAACO,SAASA,QAAQ;QAACA;KAAM;AAC/C"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
export function useAccordionContextValues_unstable(state) {
|
|
2
|
-
const { navigation , openItems , requestToggle , collapsible } = state;
|
|
2
|
+
const { navigation , openItems , requestToggle , multiple , collapsible } = state;
|
|
3
3
|
// This context is created with "@fluentui/react-context-selector", these is no sense to memoize it
|
|
4
4
|
const accordion = {
|
|
5
5
|
navigation,
|
|
6
6
|
openItems,
|
|
7
7
|
requestToggle,
|
|
8
|
-
collapsible
|
|
8
|
+
collapsible,
|
|
9
|
+
multiple
|
|
9
10
|
};
|
|
10
11
|
return {
|
|
11
12
|
accordion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["useAccordionContextValues.ts"],"sourcesContent":["import type { AccordionContextValue
|
|
1
|
+
{"version":3,"sources":["useAccordionContextValues.ts"],"sourcesContent":["import type { AccordionContextValue } from '../../contexts/accordion';\nimport type { AccordionContextValues, AccordionState } from './Accordion.types';\n\nexport function useAccordionContextValues_unstable(state: AccordionState): AccordionContextValues {\n const { navigation, openItems, requestToggle, multiple, 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 multiple,\n };\n\n return { accordion };\n}\n"],"names":["useAccordionContextValues_unstable","state","navigation","openItems","requestToggle","multiple","collapsible","accordion"],"mappings":"AAGA,OAAO,SAASA,mCAAmCC,KAAqB,EAA0B;IAChG,MAAM,EAAEC,WAAU,EAAEC,UAAS,EAAEC,cAAa,EAAEC,SAAQ,EAAEC,YAAW,EAAE,GAAGL;IAExE,mGAAmG;IACnG,MAAMM,YAAmC;QACvCL;QACAC;QACAC;QACAE;QACAD;IACF;IAEA,OAAO;QAAEE;IAAU;AACrB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["AccordionHeader.types.ts"],"sourcesContent":["import type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\nimport type { ARIAButtonSlotProps } from '@fluentui/react-aria';\n\nexport type AccordionHeaderSize = 'small' | 'medium' | 'large' | 'extra-large';\nexport type AccordionHeaderExpandIconPosition = 'start' | 'end';\n\nexport type
|
|
1
|
+
{"version":3,"sources":["AccordionHeader.types.ts"],"sourcesContent":["import type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\nimport type { ARIAButtonSlotProps } from '@fluentui/react-aria';\nimport type { AccordionHeaderContextValue } from '../../contexts/accordionHeader';\n\nexport type AccordionHeaderSize = 'small' | 'medium' | 'large' | 'extra-large';\nexport type AccordionHeaderExpandIconPosition = 'start' | 'end';\n\nexport type AccordionHeaderContextValues = {\n accordionHeader: AccordionHeaderContextValue;\n};\n\nexport type AccordionHeaderSlots = {\n /**\n * The element wrapping the button. By default this is a div, but can be a heading.\n */\n root: NonNullable<Slot<'div', 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6'>>;\n /**\n * The component to be used as button in heading\n */\n button: NonNullable<Slot<ARIAButtonSlotProps<'a'>>>;\n /**\n * Expand icon slot rendered before (or after) children content in heading.\n */\n expandIcon?: Slot<'span'>;\n /**\n * Expand icon slot rendered before (or after) children content in heading.\n */\n icon?: Slot<'div'>;\n};\n\nexport type AccordionHeaderProps = ComponentProps<Partial<AccordionHeaderSlots>> & {\n /**\n * The position of the expand icon slot in heading.\n */\n expandIconPosition?: AccordionHeaderExpandIconPosition;\n\n /**\n * Indicates if the AccordionHeader should be rendered inline.\n */\n inline?: boolean;\n\n /**\n * Size of spacing in the heading.\n */\n size?: AccordionHeaderSize;\n};\n\nexport type AccordionHeaderState = ComponentState<AccordionHeaderSlots> &\n Required<Pick<AccordionHeaderProps, 'inline'>> &\n AccordionHeaderContextValue;\n"],"names":[],"mappings":"AAAA,WAiD8B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["index.ts"],"sourcesContent":["export * from './AccordionHeader';\nexport * from './AccordionHeader.types';\nexport * from './renderAccordionHeader';\nexport * from './useAccordionHeader';\nexport * from './useAccordionHeaderContextValues';\nexport * from './useAccordionHeaderStyles.styles';\
|
|
1
|
+
{"version":3,"sources":["index.ts"],"sourcesContent":["export * from './AccordionHeader';\nexport * from './AccordionHeader.types';\nexport * from './renderAccordionHeader';\nexport * from './useAccordionHeader';\nexport * from './useAccordionHeaderContextValues';\nexport * from './useAccordionHeaderStyles.styles';\n"],"names":[],"mappings":"AAAA,cAAc,oBAAoB;AAClC,cAAc,0BAA0B;AACxC,cAAc,0BAA0B;AACxC,cAAc,uBAAuB;AACrC,cAAc,oCAAoC;AAClD,cAAc,oCAAoC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/** @jsxRuntime classic */ /** @jsx createElement */ import { createElement } from '@fluentui/react-jsx-runtime';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { assertSlots } from '@fluentui/react-utilities';
|
|
3
|
+
import { AccordionHeaderProvider } from '../../contexts/accordionHeader';
|
|
4
4
|
/**
|
|
5
5
|
* Function that renders the final JSX of the component
|
|
6
6
|
*/ export const renderAccordionHeader_unstable = (state, contextValues)=>{
|
|
7
|
-
|
|
8
|
-
return /*#__PURE__*/ createElement(
|
|
7
|
+
assertSlots(state);
|
|
8
|
+
return /*#__PURE__*/ createElement(AccordionHeaderProvider, {
|
|
9
9
|
value: contextValues.accordionHeader
|
|
10
|
-
}, /*#__PURE__*/ createElement(
|
|
10
|
+
}, /*#__PURE__*/ createElement(state.root, null, /*#__PURE__*/ createElement(state.button, null, state.expandIconPosition === 'start' && state.expandIcon && /*#__PURE__*/ createElement(state.expandIcon, null), state.icon && /*#__PURE__*/ createElement(state.icon, null), state.root.children, state.expandIconPosition === 'end' && state.expandIcon && /*#__PURE__*/ createElement(state.expandIcon, null))));
|
|
11
11
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["renderAccordionHeader.tsx"],"sourcesContent":["/** @jsxRuntime classic */\n/** @jsx createElement */\n\nimport { createElement } from '@fluentui/react-jsx-runtime';\n\nimport {
|
|
1
|
+
{"version":3,"sources":["renderAccordionHeader.tsx"],"sourcesContent":["/** @jsxRuntime classic */\n/** @jsx createElement */\n\nimport { createElement } from '@fluentui/react-jsx-runtime';\n\nimport { assertSlots } from '@fluentui/react-utilities';\nimport type { AccordionHeaderState, AccordionHeaderSlots, AccordionHeaderContextValues } from './AccordionHeader.types';\nimport { AccordionHeaderProvider } from '../../contexts/accordionHeader';\n\n/**\n * Function that renders the final JSX of the component\n */\nexport const renderAccordionHeader_unstable = (\n state: AccordionHeaderState,\n contextValues: AccordionHeaderContextValues,\n) => {\n assertSlots<AccordionHeaderSlots>(state);\n\n return (\n <AccordionHeaderProvider value={contextValues.accordionHeader}>\n <state.root>\n <state.button>\n {state.expandIconPosition === 'start' && state.expandIcon && <state.expandIcon />}\n {state.icon && <state.icon />}\n {state.root.children}\n {state.expandIconPosition === 'end' && state.expandIcon && <state.expandIcon />}\n </state.button>\n </state.root>\n </AccordionHeaderProvider>\n );\n};\n"],"names":["createElement","assertSlots","AccordionHeaderProvider","renderAccordionHeader_unstable","state","contextValues","value","accordionHeader","root","button","expandIconPosition","expandIcon","icon","children"],"mappings":"AAAA,wBAAwB,GACxB,uBAAuB,GAEvB,SAASA,aAAa,QAAQ,8BAA8B;AAE5D,SAASC,WAAW,QAAQ,4BAA4B;AAExD,SAASC,uBAAuB,QAAQ,iCAAiC;AAEzE;;CAEC,GACD,OAAO,MAAMC,iCAAiC,CAC5CC,OACAC,gBACG;IACHJ,YAAkCG;IAElC,qBACE,AAlBJ,cAkBKF;QAAwBI,OAAOD,cAAcE,eAAe;qBAC3D,AAnBN,cAmBOH,MAAMI,IAAI,sBACT,AApBR,cAoBSJ,MAAMK,MAAM,QACVL,MAAMM,kBAAkB,KAAK,WAAWN,MAAMO,UAAU,kBAAI,AArBvE,cAqBwEP,MAAMO,UAAU,SAC7EP,MAAMQ,IAAI,kBAAI,AAtBzB,cAsB0BR,MAAMQ,IAAI,SACzBR,MAAMI,IAAI,CAACK,QAAQ,EACnBT,MAAMM,kBAAkB,KAAK,SAASN,MAAMO,UAAU,kBAAI,AAxBrE,cAwBsEP,MAAMO,UAAU;AAKtF,EAAE"}
|