@fluentui/react-accordion 9.0.0-nightly.b5b7401007.0 → 9.0.0-rc.3

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.
Files changed (197) hide show
  1. package/CHANGELOG.json +439 -29
  2. package/CHANGELOG.md +99 -15
  3. package/Spec.md +36 -4
  4. package/dist/react-accordion.d.ts +50 -56
  5. package/lib/Accordion.js.map +1 -1
  6. package/lib/AccordionHeader.js.map +1 -1
  7. package/lib/AccordionItem.js.map +1 -1
  8. package/lib/AccordionPanel.js.map +1 -1
  9. package/lib/components/Accordion/Accordion.d.ts +1 -1
  10. package/lib/components/Accordion/Accordion.js +10 -8
  11. package/lib/components/Accordion/Accordion.js.map +1 -1
  12. package/lib/components/Accordion/Accordion.types.d.ts +7 -5
  13. package/lib/components/Accordion/Accordion.types.js.map +1 -1
  14. package/lib/components/Accordion/AccordionContext.js +4 -3
  15. package/lib/components/Accordion/AccordionContext.js.map +1 -1
  16. package/lib/components/Accordion/index.d.ts +1 -0
  17. package/lib/components/Accordion/index.js +1 -0
  18. package/lib/components/Accordion/index.js.map +1 -1
  19. package/lib/components/Accordion/renderAccordion.d.ts +1 -1
  20. package/lib/components/Accordion/renderAccordion.js +7 -7
  21. package/lib/components/Accordion/renderAccordion.js.map +1 -1
  22. package/lib/components/Accordion/useAccordion.d.ts +2 -3
  23. package/lib/components/Accordion/useAccordion.js +48 -63
  24. package/lib/components/Accordion/useAccordion.js.map +1 -1
  25. package/lib/components/Accordion/useAccordionContextValues.d.ts +1 -1
  26. package/lib/components/Accordion/useAccordionContextValues.js +13 -11
  27. package/lib/components/Accordion/useAccordionContextValues.js.map +1 -1
  28. package/lib/components/Accordion/useAccordionStyles.d.ts +3 -0
  29. package/lib/components/Accordion/useAccordionStyles.js +7 -0
  30. package/lib/components/Accordion/useAccordionStyles.js.map +1 -0
  31. package/lib/components/AccordionHeader/AccordionHeader.d.ts +2 -1
  32. package/lib/components/AccordionHeader/AccordionHeader.js +11 -10
  33. package/lib/components/AccordionHeader/AccordionHeader.js.map +1 -1
  34. package/lib/components/AccordionHeader/AccordionHeader.types.d.ts +12 -11
  35. package/lib/components/AccordionHeader/AccordionHeader.types.js.map +1 -1
  36. package/lib/components/AccordionHeader/AccordionHeaderContext.js +2 -4
  37. package/lib/components/AccordionHeader/AccordionHeaderContext.js.map +1 -1
  38. package/lib/components/AccordionHeader/index.d.ts +0 -1
  39. package/lib/components/AccordionHeader/index.js +0 -1
  40. package/lib/components/AccordionHeader/index.js.map +1 -1
  41. package/lib/components/AccordionHeader/renderAccordionHeader.d.ts +1 -1
  42. package/lib/components/AccordionHeader/renderAccordionHeader.js +11 -8
  43. package/lib/components/AccordionHeader/renderAccordionHeader.js.map +1 -1
  44. package/lib/components/AccordionHeader/useAccordionHeader.d.ts +2 -6
  45. package/lib/components/AccordionHeader/useAccordionHeader.js +53 -48
  46. package/lib/components/AccordionHeader/useAccordionHeader.js.map +1 -1
  47. package/lib/components/AccordionHeader/useAccordionHeaderContextValues.d.ts +1 -1
  48. package/lib/components/AccordionHeader/useAccordionHeaderContextValues.js +14 -14
  49. package/lib/components/AccordionHeader/useAccordionHeaderContextValues.js.map +1 -1
  50. package/lib/components/AccordionHeader/useAccordionHeaderStyles.d.ts +2 -1
  51. package/lib/components/AccordionHeader/useAccordionHeaderStyles.js +43 -52
  52. package/lib/components/AccordionHeader/useAccordionHeaderStyles.js.map +1 -1
  53. package/lib/components/AccordionItem/AccordionItem.d.ts +1 -1
  54. package/lib/components/AccordionItem/AccordionItem.js +10 -8
  55. package/lib/components/AccordionItem/AccordionItem.js.map +1 -1
  56. package/lib/components/AccordionItem/AccordionItem.types.d.ts +4 -3
  57. package/lib/components/AccordionItem/AccordionItem.types.js.map +1 -1
  58. package/lib/components/AccordionItem/AccordionItemContext.d.ts +1 -1
  59. package/lib/components/AccordionItem/AccordionItemContext.js +4 -5
  60. package/lib/components/AccordionItem/AccordionItemContext.js.map +1 -1
  61. package/lib/components/AccordionItem/index.d.ts +1 -0
  62. package/lib/components/AccordionItem/index.js +1 -0
  63. package/lib/components/AccordionItem/index.js.map +1 -1
  64. package/lib/components/AccordionItem/renderAccordionItem.d.ts +1 -1
  65. package/lib/components/AccordionItem/renderAccordionItem.js +7 -8
  66. package/lib/components/AccordionItem/renderAccordionItem.js.map +1 -1
  67. package/lib/components/AccordionItem/useAccordionItem.d.ts +2 -6
  68. package/lib/components/AccordionItem/useAccordionItem.js +24 -34
  69. package/lib/components/AccordionItem/useAccordionItem.js.map +1 -1
  70. package/lib/components/AccordionItem/useAccordionItemContextValues.d.ts +1 -1
  71. package/lib/components/AccordionItem/useAccordionItemContextValues.js +12 -12
  72. package/lib/components/AccordionItem/useAccordionItemContextValues.js.map +1 -1
  73. package/lib/components/AccordionItem/useAccordionItemStyles.d.ts +3 -0
  74. package/lib/components/AccordionItem/useAccordionItemStyles.js +7 -0
  75. package/lib/components/AccordionItem/useAccordionItemStyles.js.map +1 -0
  76. package/lib/components/AccordionPanel/AccordionPanel.d.ts +1 -1
  77. package/lib/components/AccordionPanel/AccordionPanel.js +8 -8
  78. package/lib/components/AccordionPanel/AccordionPanel.js.map +1 -1
  79. package/lib/components/AccordionPanel/AccordionPanel.types.d.ts +2 -2
  80. package/lib/components/AccordionPanel/AccordionPanel.types.js.map +1 -1
  81. package/lib/components/AccordionPanel/index.js.map +1 -1
  82. package/lib/components/AccordionPanel/renderAccordionPanel.d.ts +1 -1
  83. package/lib/components/AccordionPanel/renderAccordionPanel.js +7 -8
  84. package/lib/components/AccordionPanel/renderAccordionPanel.js.map +1 -1
  85. package/lib/components/AccordionPanel/useAccordionPanel.d.ts +2 -6
  86. package/lib/components/AccordionPanel/useAccordionPanel.js +13 -14
  87. package/lib/components/AccordionPanel/useAccordionPanel.js.map +1 -1
  88. package/lib/components/AccordionPanel/useAccordionPanelStyles.d.ts +2 -1
  89. package/lib/components/AccordionPanel/useAccordionPanelStyles.js +6 -5
  90. package/lib/components/AccordionPanel/useAccordionPanelStyles.js.map +1 -1
  91. package/lib/index.js.map +1 -1
  92. package/lib-commonjs/Accordion.js +1 -1
  93. package/lib-commonjs/Accordion.js.map +1 -1
  94. package/lib-commonjs/AccordionHeader.js +1 -1
  95. package/lib-commonjs/AccordionHeader.js.map +1 -1
  96. package/lib-commonjs/AccordionItem.js +1 -1
  97. package/lib-commonjs/AccordionItem.js.map +1 -1
  98. package/lib-commonjs/AccordionPanel.js +1 -1
  99. package/lib-commonjs/AccordionPanel.js.map +1 -1
  100. package/lib-commonjs/components/Accordion/Accordion.d.ts +1 -1
  101. package/lib-commonjs/components/Accordion/Accordion.js +12 -9
  102. package/lib-commonjs/components/Accordion/Accordion.js.map +1 -1
  103. package/lib-commonjs/components/Accordion/Accordion.types.d.ts +7 -5
  104. package/lib-commonjs/components/Accordion/Accordion.types.js.map +1 -1
  105. package/lib-commonjs/components/Accordion/AccordionContext.js +4 -3
  106. package/lib-commonjs/components/Accordion/AccordionContext.js.map +1 -1
  107. package/lib-commonjs/components/Accordion/index.d.ts +1 -0
  108. package/lib-commonjs/components/Accordion/index.js +3 -1
  109. package/lib-commonjs/components/Accordion/index.js.map +1 -1
  110. package/lib-commonjs/components/Accordion/renderAccordion.d.ts +1 -1
  111. package/lib-commonjs/components/Accordion/renderAccordion.js +12 -13
  112. package/lib-commonjs/components/Accordion/renderAccordion.js.map +1 -1
  113. package/lib-commonjs/components/Accordion/useAccordion.d.ts +2 -3
  114. package/lib-commonjs/components/Accordion/useAccordion.js +53 -68
  115. package/lib-commonjs/components/Accordion/useAccordion.js.map +1 -1
  116. package/lib-commonjs/components/Accordion/useAccordionContextValues.d.ts +1 -1
  117. package/lib-commonjs/components/Accordion/useAccordionContextValues.js +15 -13
  118. package/lib-commonjs/components/Accordion/useAccordionContextValues.js.map +1 -1
  119. package/lib-commonjs/components/Accordion/useAccordionStyles.d.ts +3 -0
  120. package/lib-commonjs/components/Accordion/useAccordionStyles.js +18 -0
  121. package/lib-commonjs/components/Accordion/useAccordionStyles.js.map +1 -0
  122. package/lib-commonjs/components/AccordionHeader/AccordionHeader.d.ts +2 -1
  123. package/lib-commonjs/components/AccordionHeader/AccordionHeader.js +12 -11
  124. package/lib-commonjs/components/AccordionHeader/AccordionHeader.js.map +1 -1
  125. package/lib-commonjs/components/AccordionHeader/AccordionHeader.types.d.ts +12 -11
  126. package/lib-commonjs/components/AccordionHeader/AccordionHeader.types.js.map +1 -1
  127. package/lib-commonjs/components/AccordionHeader/AccordionHeaderContext.js +2 -4
  128. package/lib-commonjs/components/AccordionHeader/AccordionHeaderContext.js.map +1 -1
  129. package/lib-commonjs/components/AccordionHeader/index.d.ts +0 -1
  130. package/lib-commonjs/components/AccordionHeader/index.js +1 -3
  131. package/lib-commonjs/components/AccordionHeader/index.js.map +1 -1
  132. package/lib-commonjs/components/AccordionHeader/renderAccordionHeader.d.ts +1 -1
  133. package/lib-commonjs/components/AccordionHeader/renderAccordionHeader.js +16 -15
  134. package/lib-commonjs/components/AccordionHeader/renderAccordionHeader.js.map +1 -1
  135. package/lib-commonjs/components/AccordionHeader/useAccordionHeader.d.ts +2 -6
  136. package/lib-commonjs/components/AccordionHeader/useAccordionHeader.js +60 -54
  137. package/lib-commonjs/components/AccordionHeader/useAccordionHeader.js.map +1 -1
  138. package/lib-commonjs/components/AccordionHeader/useAccordionHeaderContextValues.d.ts +1 -1
  139. package/lib-commonjs/components/AccordionHeader/useAccordionHeaderContextValues.js +17 -17
  140. package/lib-commonjs/components/AccordionHeader/useAccordionHeaderContextValues.js.map +1 -1
  141. package/lib-commonjs/components/AccordionHeader/useAccordionHeaderStyles.d.ts +2 -1
  142. package/lib-commonjs/components/AccordionHeader/useAccordionHeaderStyles.js +50 -57
  143. package/lib-commonjs/components/AccordionHeader/useAccordionHeaderStyles.js.map +1 -1
  144. package/lib-commonjs/components/AccordionItem/AccordionItem.d.ts +1 -1
  145. package/lib-commonjs/components/AccordionItem/AccordionItem.js +12 -9
  146. package/lib-commonjs/components/AccordionItem/AccordionItem.js.map +1 -1
  147. package/lib-commonjs/components/AccordionItem/AccordionItem.types.d.ts +4 -3
  148. package/lib-commonjs/components/AccordionItem/AccordionItem.types.js.map +1 -1
  149. package/lib-commonjs/components/AccordionItem/AccordionItemContext.d.ts +1 -1
  150. package/lib-commonjs/components/AccordionItem/AccordionItemContext.js +6 -7
  151. package/lib-commonjs/components/AccordionItem/AccordionItemContext.js.map +1 -1
  152. package/lib-commonjs/components/AccordionItem/index.d.ts +1 -0
  153. package/lib-commonjs/components/AccordionItem/index.js +3 -1
  154. package/lib-commonjs/components/AccordionItem/index.js.map +1 -1
  155. package/lib-commonjs/components/AccordionItem/renderAccordionItem.d.ts +1 -1
  156. package/lib-commonjs/components/AccordionItem/renderAccordionItem.js +12 -15
  157. package/lib-commonjs/components/AccordionItem/renderAccordionItem.js.map +1 -1
  158. package/lib-commonjs/components/AccordionItem/useAccordionItem.d.ts +2 -6
  159. package/lib-commonjs/components/AccordionItem/useAccordionItem.js +31 -42
  160. package/lib-commonjs/components/AccordionItem/useAccordionItem.js.map +1 -1
  161. package/lib-commonjs/components/AccordionItem/useAccordionItemContextValues.d.ts +1 -1
  162. package/lib-commonjs/components/AccordionItem/useAccordionItemContextValues.js +15 -15
  163. package/lib-commonjs/components/AccordionItem/useAccordionItemContextValues.js.map +1 -1
  164. package/lib-commonjs/components/AccordionItem/useAccordionItemStyles.d.ts +3 -0
  165. package/lib-commonjs/components/AccordionItem/useAccordionItemStyles.js +18 -0
  166. package/lib-commonjs/components/AccordionItem/useAccordionItemStyles.js.map +1 -0
  167. package/lib-commonjs/components/AccordionPanel/AccordionPanel.d.ts +1 -1
  168. package/lib-commonjs/components/AccordionPanel/AccordionPanel.js +9 -9
  169. package/lib-commonjs/components/AccordionPanel/AccordionPanel.js.map +1 -1
  170. package/lib-commonjs/components/AccordionPanel/AccordionPanel.types.d.ts +2 -2
  171. package/lib-commonjs/components/AccordionPanel/AccordionPanel.types.js.map +1 -1
  172. package/lib-commonjs/components/AccordionPanel/index.js +1 -1
  173. package/lib-commonjs/components/AccordionPanel/index.js.map +1 -1
  174. package/lib-commonjs/components/AccordionPanel/renderAccordionPanel.d.ts +1 -1
  175. package/lib-commonjs/components/AccordionPanel/renderAccordionPanel.js +11 -14
  176. package/lib-commonjs/components/AccordionPanel/renderAccordionPanel.js.map +1 -1
  177. package/lib-commonjs/components/AccordionPanel/useAccordionPanel.d.ts +2 -6
  178. package/lib-commonjs/components/AccordionPanel/useAccordionPanel.js +17 -19
  179. package/lib-commonjs/components/AccordionPanel/useAccordionPanel.js.map +1 -1
  180. package/lib-commonjs/components/AccordionPanel/useAccordionPanelStyles.d.ts +2 -1
  181. package/lib-commonjs/components/AccordionPanel/useAccordionPanelStyles.js +9 -8
  182. package/lib-commonjs/components/AccordionPanel/useAccordionPanelStyles.js.map +1 -1
  183. package/lib-commonjs/index.js +1 -1
  184. package/lib-commonjs/index.js.map +1 -1
  185. package/package.json +17 -19
  186. package/lib/common/isConformant.d.ts +0 -4
  187. package/lib/common/isConformant.js +0 -12
  188. package/lib/common/isConformant.js.map +0 -1
  189. package/lib/components/AccordionHeader/AccordionHeaderExpandIcon.d.ts +0 -3
  190. package/lib/components/AccordionHeader/AccordionHeaderExpandIcon.js +0 -42
  191. package/lib/components/AccordionHeader/AccordionHeaderExpandIcon.js.map +0 -1
  192. package/lib-commonjs/common/isConformant.d.ts +0 -4
  193. package/lib-commonjs/common/isConformant.js +0 -23
  194. package/lib-commonjs/common/isConformant.js.map +0 -1
  195. package/lib-commonjs/components/AccordionHeader/AccordionHeaderExpandIcon.d.ts +0 -3
  196. package/lib-commonjs/components/AccordionHeader/AccordionHeaderExpandIcon.js +0 -52
  197. package/lib-commonjs/components/AccordionHeader/AccordionHeaderExpandIcon.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/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,IAAM,eAAe,GAAG,UAAC,KAAD,EAAwB,aAAxB,EAA6D;AACpF,MAAA,EAAA,GAAuB,QAAQ,CAAiB,KAAjB,CAA/B;AAAA,MAAE,KAAK,GAAA,EAAA,CAAA,KAAP;AAAA,MAAS,SAAS,GAAA,EAAA,CAAA,SAAlB;;AAEN,sBACE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,IAAP,EAAW,QAAA,CAAA,EAAA,EAAK,SAAS,CAAC,IAAf,CAAX,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","sourceRoot":""}
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, AccordionSlots, AccordionState } from './Accordion.types';
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 useAccordion: (props: AccordionProps, ref: React.Ref<HTMLElement>) => AccordionState;
8
+ export declare const useAccordion_unstable: (props: AccordionProps, ref: React.Ref<HTMLElement>) => AccordionState;
@@ -1,69 +1,62 @@
1
- import { __assign, __spreadArrays } from "tslib";
2
1
  import * as React from 'react';
3
2
  import { getNativeElementProps, useControllableState, useEventCallback } from '@fluentui/react-utilities';
4
- export var accordionShorthandProps = ['root'];
3
+ import { useArrowNavigationGroup } from '@fluentui/react-tabster';
5
4
  /**
6
5
  * Returns the props and state required to render the component
7
6
  * @param props - Accordion properties
8
7
  * @param ref - reference to root HTMLElement of Accordion
9
8
  */
10
9
 
11
- export var useAccordion = function (props, ref) {
12
- var controlledOpenItems = props.openItems,
13
- defaultOpenItems = props.defaultOpenItems,
14
- _a = props.multiple,
15
- multiple = _a === void 0 ? false : _a,
16
- _b = props.collapsible,
17
- collapsible = _b === void 0 ? false : _b,
18
- onToggle = props.onToggle,
19
- _c = props.navigable,
20
- navigable = _c === void 0 ? false : _c;
21
-
22
- var _d = useControllableState({
23
- state: React.useMemo(function () {
24
- return normalizeValues(controlledOpenItems);
25
- }, [controlledOpenItems]),
26
- defaultState: function () {
27
- return initializeUncontrolledOpenItems({
28
- collapsible: collapsible,
29
- defaultOpenItems: defaultOpenItems,
30
- multiple: multiple
31
- });
32
- },
10
+ export const useAccordion_unstable = (props, ref) => {
11
+ const {
12
+ openItems: controlledOpenItems,
13
+ defaultOpenItems,
14
+ multiple = false,
15
+ collapsible = false,
16
+ onToggle,
17
+ navigation
18
+ } = props;
19
+ const [openItems, setOpenItems] = useControllableState({
20
+ state: React.useMemo(() => normalizeValues(controlledOpenItems), [controlledOpenItems]),
21
+ defaultState: () => initializeUncontrolledOpenItems({
22
+ defaultOpenItems,
23
+ multiple
24
+ }),
33
25
  initialState: []
34
- }),
35
- openItems = _d[0],
36
- setOpenItems = _d[1];
37
-
38
- var requestToggle = useEventCallback(function (event, data) {
26
+ });
27
+ const arrowNavigationProps = useArrowNavigationGroup({
28
+ circular: navigation === 'circular'
29
+ });
30
+ const requestToggle = useEventCallback((event, data) => {
39
31
  onToggle === null || onToggle === void 0 ? void 0 : onToggle(event, data);
40
- setOpenItems(function (previousOpenItems) {
41
- return updateOpenItems(data.value, previousOpenItems, {
42
- collapsible: collapsible,
43
- multiple: multiple
44
- });
45
- });
32
+ setOpenItems(previousOpenItems => updateOpenItems(data.value, previousOpenItems, {
33
+ collapsible,
34
+ multiple
35
+ }));
46
36
  });
47
37
  return {
48
- multiple: multiple,
49
- collapsible: collapsible,
50
- navigable: navigable,
51
- openItems: openItems,
52
- requestToggle: requestToggle,
53
- root: getNativeElementProps('div', __assign(__assign({}, props), {
54
- ref: ref
55
- }))
38
+ multiple,
39
+ collapsible,
40
+ navigation,
41
+ openItems,
42
+ requestToggle,
43
+ components: {
44
+ root: 'div'
45
+ },
46
+ root: getNativeElementProps('div', { ...props,
47
+ ...(navigation ? arrowNavigationProps : {}),
48
+ ref
49
+ })
56
50
  };
57
51
  };
58
52
  /**
59
53
  * Initial value for the uncontrolled case of the list of open indexes
60
54
  */
61
55
 
62
- function initializeUncontrolledOpenItems(_a) {
63
- var defaultOpenItems = _a.defaultOpenItems,
64
- multiple = _a.multiple,
65
- collapsible = _a.collapsible;
66
-
56
+ function initializeUncontrolledOpenItems({
57
+ defaultOpenItems,
58
+ multiple
59
+ }) {
67
60
  if (defaultOpenItems !== undefined) {
68
61
  if (Array.isArray(defaultOpenItems)) {
69
62
  return multiple ? defaultOpenItems : [defaultOpenItems[0]];
@@ -71,14 +64,8 @@ function initializeUncontrolledOpenItems(_a) {
71
64
 
72
65
  return [defaultOpenItems];
73
66
  }
74
- /**
75
- * TODO: since the dropping of descendants API due to performance issues,
76
- * the default behavior of Accordion has been compromised and [0] makes no sense
77
- * indexes are not used anymore to ensure the position of the element which should be opened by default
78
- */
79
67
 
80
-
81
- return collapsible ? [] : [0];
68
+ return [];
82
69
  }
83
70
  /**
84
71
  * Updates the list of open indexes based on an index that changes
@@ -88,19 +75,17 @@ function initializeUncontrolledOpenItems(_a) {
88
75
  */
89
76
 
90
77
 
91
- function updateOpenItems(value, previousOpenItems, _a) {
92
- var multiple = _a.multiple,
93
- collapsible = _a.collapsible;
94
-
78
+ function updateOpenItems(value, previousOpenItems, {
79
+ multiple,
80
+ collapsible
81
+ }) {
95
82
  if (multiple) {
96
83
  if (previousOpenItems.includes(value)) {
97
84
  if (previousOpenItems.length > 1 || collapsible) {
98
- return previousOpenItems.filter(function (i) {
99
- return i !== value;
100
- });
85
+ return previousOpenItems.filter(i => i !== value);
101
86
  }
102
87
  } else {
103
- return __spreadArrays(previousOpenItems, [value]).sort();
88
+ return [...previousOpenItems, value].sort();
104
89
  }
105
90
  } else {
106
91
  return previousOpenItems[0] === value && collapsible ? [] : [value];
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/Accordion/useAccordion.ts"],"names":[],"mappings":"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","sourceRoot":""}
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 useAccordionContextValues(state: AccordionState): AccordionContextValues;
2
+ export declare function useAccordionContextValues_unstable(state: AccordionState): AccordionContextValues;
@@ -1,17 +1,19 @@
1
- export function useAccordionContextValues(state) {
2
- var navigable = state.navigable,
3
- openItems = state.openItems,
4
- requestToggle = state.requestToggle,
5
- collapsible = state.collapsible; // This context is created with "@fluentui/react-context-selector", these is no sense to memoize it
1
+ export function useAccordionContextValues_unstable(state) {
2
+ const {
3
+ navigation,
4
+ openItems,
5
+ requestToggle,
6
+ collapsible
7
+ } = state; // This context is created with "@fluentui/react-context-selector", these is no sense to memoize it
6
8
 
7
- var accordion = {
8
- navigable: navigable,
9
- openItems: openItems,
10
- requestToggle: requestToggle,
11
- collapsible: collapsible
9
+ const accordion = {
10
+ navigation,
11
+ openItems,
12
+ requestToggle,
13
+ collapsible
12
14
  };
13
15
  return {
14
- accordion: accordion
16
+ accordion
15
17
  };
16
18
  }
17
19
  //# sourceMappingURL=useAccordionContextValues.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/Accordion/useAccordionContextValues.ts"],"names":[],"mappings":"AAEA,OAAM,SAAU,yBAAV,CAAoC,KAApC,EAAyD;AACrD,MAAA,SAAS,GAA4C,KAAK,CAAjD,SAAT;AAAA,MAAW,SAAS,GAAiC,KAAK,CAAtC,SAApB;AAAA,MAAsB,aAAa,GAAkB,KAAK,CAAvB,aAAnC;AAAA,MAAqC,WAAW,GAAK,KAAK,CAAV,WAAhD,CADqD,CAG7D;;AACA,MAAM,SAAS,GAA0B;AACvC,IAAA,SAAS,EAAA,SAD8B;AAEvC,IAAA,SAAS,EAAA,SAF8B;AAGvC,IAAA,aAAa,EAAA,aAH0B;AAIvC,IAAA,WAAW,EAAA;AAJ4B,GAAzC;AAOA,SAAO;AAAE,IAAA,SAAS,EAAA;AAAX,GAAP;AACD","sourceRoot":""}
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/"}
@@ -0,0 +1,3 @@
1
+ import type { AccordionState } from './Accordion.types';
2
+ export declare const accordionClassName = "fui-Accordion";
3
+ export declare const useAccordionStyles_unstable: (state: AccordionState) => AccordionState;
@@ -0,0 +1,7 @@
1
+ import { mergeClasses } from '@griffel/react';
2
+ export const accordionClassName = 'fui-Accordion';
3
+ export const useAccordionStyles_unstable = state => {
4
+ state.root.className = mergeClasses(accordionClassName, state.root.className);
5
+ return state;
6
+ };
7
+ //# sourceMappingURL=useAccordionStyles.js.map
@@ -0,0 +1 @@
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 `useAccordionHeader` and `useAccordionHeaderStyles` hooks.
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 { useAccordionHeader } from './useAccordionHeader';
3
- import { renderAccordionHeader } from './renderAccordionHeader';
4
- import { useAccordionHeaderStyles } from './useAccordionHeaderStyles';
5
- import { useAccordionHeaderContextValues } from './useAccordionHeaderContextValues';
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 `useAccordionHeader` and `useAccordionHeaderStyles` hooks.
7
+ * Define a styled AccordionHeader, using the `useAccordionHeader_unstable` and `useAccordionHeaderStyles_unstable`
8
+ * hooks.
8
9
  */
9
10
 
10
- export var AccordionHeader = /*#__PURE__*/React.forwardRef(function (props, ref) {
11
- var state = useAccordionHeader(props, ref);
12
- var contextValues = useAccordionHeaderContextValues(state);
13
- useAccordionHeaderStyles(state);
14
- return renderAccordionHeader(state, contextValues);
11
+ export const AccordionHeader = /*#__PURE__*/React.forwardRef((props, ref) => {
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
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/AccordionHeader/AccordionHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,kBAAT,QAAmC,sBAAnC;AACA,SAAS,qBAAT,QAAsC,yBAAtC;AACA,SAAS,wBAAT,QAAyC,4BAAzC;AACA,SAAS,+BAAT,QAAgD,mCAAhD;AAIA;;AAEG;;AACH,OAAO,IAAM,eAAe,gBAA8C,KAAK,CAAC,UAAN,CAAiB,UAAC,KAAD,EAAQ,GAAR,EAAW;AACpG,MAAM,KAAK,GAAG,kBAAkB,CAAC,KAAD,EAAQ,GAAR,CAAhC;AACA,MAAM,aAAa,GAAG,+BAA+B,CAAC,KAAD,CAArD;AAEA,EAAA,wBAAwB,CAAC,KAAD,CAAxB;AAEA,SAAO,qBAAqB,CAAC,KAAD,EAAQ,aAAR,CAA5B;AACD,CAPyE,CAAnE;AASP,eAAe,CAAC,WAAhB,GAA8B,iBAA9B","sourceRoot":""}
1
+ {"version":3,"sources":["components/AccordionHeader/AccordionHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,2BAAT,QAA4C,sBAA5C;AACA,SAAS,8BAAT,QAA+C,yBAA/C;AACA,SAAS,iCAAT,QAAkD,4BAAlD;AACA,SAAS,wCAAT,QAAyD,mCAAzD;AAIA;;;AAGG;;AACH,OAAO,MAAM,eAAe,gBAA8C,KAAK,CAAC,UAAN,CAAiB,CAAC,KAAD,EAAQ,GAAR,KAAe;AACxG,QAAM,KAAK,GAAG,2BAA2B,CAAC,KAAD,EAAQ,GAAR,CAAzC;AACA,QAAM,aAAa,GAAG,wCAAwC,CAAC,KAAD,CAA9D;AAEA,EAAA,iCAAiC,CAAC,KAAD,CAAjC;AAEA,SAAO,8BAA8B,CAAC,KAAD,EAAQ,aAAR,CAArC;AACD,CAPyE,CAAnE;AASP,eAAe,CAAC,WAAhB,GAA8B,iBAA9B","sourcesContent":["import * as React from 'react';\nimport { useAccordionHeader_unstable } from './useAccordionHeader';\nimport { renderAccordionHeader_unstable } from './renderAccordionHeader';\nimport { useAccordionHeaderStyles_unstable } from './useAccordionHeaderStyles';\nimport { useAccordionHeaderContextValues_unstable } from './useAccordionHeaderContextValues';\nimport type { AccordionHeaderProps } from './AccordionHeader.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\n\n/**\n * Define a styled AccordionHeader, using the `useAccordionHeader_unstable` and `useAccordionHeaderStyles_unstable`\n * hooks.\n */\nexport const AccordionHeader: ForwardRefComponent<AccordionHeaderProps> = React.forwardRef((props, ref) => {\n const state = useAccordionHeader_unstable(props, ref);\n const contextValues = useAccordionHeaderContextValues_unstable(state);\n\n useAccordionHeaderStyles_unstable(state);\n\n return renderAccordionHeader_unstable(state, contextValues);\n});\n\nAccordionHeader.displayName = 'AccordionHeader';\n"],"sourceRoot":"../src/"}
@@ -1,7 +1,5 @@
1
- import * as React from 'react';
2
- import type { ComponentProps, ComponentState, IntrinsicShorthandProps, ObjectShorthandProps } from '@fluentui/react-utilities';
3
- import type { AccordionHeaderExpandIconProps } from './AccordionHeaderExpandIcon';
4
- import type { ARIAButtonShorthandProps } from '@fluentui/react-aria';
1
+ import type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';
2
+ import type { ARIAButtonSlotProps } from '@fluentui/react-aria';
5
3
  export declare type AccordionHeaderSize = 'small' | 'medium' | 'large' | 'extra-large';
6
4
  export declare type AccordionHeaderExpandIconPosition = 'start' | 'end';
7
5
  export declare type AccordionHeaderContextValue = {
@@ -14,22 +12,24 @@ export declare type AccordionHeaderContextValues = {
14
12
  accordionHeader: AccordionHeaderContextValue;
15
13
  };
16
14
  export declare type AccordionHeaderSlots = {
17
- root: IntrinsicShorthandProps<'div'>;
15
+ /**
16
+ * The element wrapping the button. By default this is a div, but can be a heading.
17
+ */
18
+ root: Slot<'div', 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6'>;
18
19
  /**
19
20
  * The component to be used as button in heading
20
21
  */
21
- button: ARIAButtonShorthandProps;
22
+ button: NonNullable<Slot<ARIAButtonSlotProps>>;
22
23
  /**
23
24
  * Expand icon slot rendered before (or after) children content in heading
24
25
  */
25
- expandIcon: AccordionHeaderExpandIconProps;
26
+ expandIcon: Slot<'span'>;
26
27
  /**
27
28
  * Expand icon slot rendered before (or after) children content in heading
28
29
  */
29
- icon?: IntrinsicShorthandProps<'div'>;
30
- children: ObjectShorthandProps<React.HTMLAttributes<HTMLElement>>;
30
+ icon?: Slot<'div'>;
31
31
  };
32
- export declare type AccordionHeaderCommons = {
32
+ declare type AccordionHeaderCommons = {
33
33
  /**
34
34
  * Size of spacing in the heading
35
35
  */
@@ -43,5 +43,6 @@ export declare type AccordionHeaderCommons = {
43
43
  */
44
44
  inline: boolean;
45
45
  };
46
- export declare type AccordionHeaderProps = ComponentProps<AccordionHeaderSlots> & Partial<AccordionHeaderCommons>;
46
+ export declare type AccordionHeaderProps = ComponentProps<Partial<AccordionHeaderSlots>> & Partial<AccordionHeaderCommons>;
47
47
  export declare type AccordionHeaderState = ComponentState<AccordionHeaderSlots> & AccordionHeaderCommons & AccordionHeaderContextValue;
48
+ export {};
@@ -1 +1 @@
1
- {"version":3,"file":"AccordionHeader.types.js","sourceRoot":"","sources":["../../../src/components/AccordionHeader/AccordionHeader.types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"AccordionHeader.types.js","sourceRoot":"../src/","sources":["components/AccordionHeader/AccordionHeader.types.ts"],"names":[],"mappings":"","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 AccordionHeaderContextValue = {\n disabled: boolean;\n open: boolean;\n expandIconPosition: AccordionHeaderExpandIconPosition;\n size: AccordionHeaderSize;\n};\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: 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>>;\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\ntype AccordionHeaderCommons = {\n /**\n * Size of spacing in the heading\n */\n size: AccordionHeaderSize;\n /**\n * The position of the expand icon slot in heading\n */\n expandIconPosition: AccordionHeaderExpandIconPosition;\n /**\n * Indicates if the AccordionHeader should be rendered inline\n */\n inline: boolean;\n};\n\nexport type AccordionHeaderProps = ComponentProps<Partial<AccordionHeaderSlots>> & Partial<AccordionHeaderCommons>;\n\nexport type AccordionHeaderState = ComponentState<AccordionHeaderSlots> &\n AccordionHeaderCommons &\n AccordionHeaderContextValue;\n"]}
@@ -1,11 +1,9 @@
1
1
  import * as React from 'react';
2
- export var AccordionHeaderContext = /*#__PURE__*/React.createContext({
2
+ export const AccordionHeaderContext = /*#__PURE__*/React.createContext({
3
3
  open: false,
4
4
  disabled: false,
5
5
  size: 'medium',
6
6
  expandIconPosition: 'start'
7
7
  });
8
- export var useAccordionHeaderContext = function () {
9
- return React.useContext(AccordionHeaderContext);
10
- };
8
+ export const useAccordionHeaderContext = () => React.useContext(AccordionHeaderContext);
11
9
  //# sourceMappingURL=AccordionHeaderContext.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/AccordionHeader/AccordionHeaderContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AAGA,OAAO,IAAM,sBAAsB,gBAAG,KAAK,CAAC,aAAN,CAAiD;AACrF,EAAA,IAAI,EAAE,KAD+E;AAErF,EAAA,QAAQ,EAAE,KAF2E;AAGrF,EAAA,IAAI,EAAE,QAH+E;AAIrF,EAAA,kBAAkB,EAAE;AAJiE,CAAjD,CAA/B;AAOP,OAAO,IAAM,yBAAyB,GAAG,YAAA;AAAM,SAAA,KAAK,CAAC,UAAN,CAAA,sBAAA,CAAA;AAAwC,CAAhF","sourceRoot":""}
1
+ {"version":3,"sources":["components/AccordionHeader/AccordionHeaderContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AAGA,OAAO,MAAM,sBAAsB,gBAAG,KAAK,CAAC,aAAN,CAAiD;AACrF,EAAA,IAAI,EAAE,KAD+E;AAErF,EAAA,QAAQ,EAAE,KAF2E;AAGrF,EAAA,IAAI,EAAE,QAH+E;AAIrF,EAAA,kBAAkB,EAAE;AAJiE,CAAjD,CAA/B;AAOP,OAAO,MAAM,yBAAyB,GAAG,MAAM,KAAK,CAAC,UAAN,CAAiB,sBAAjB,CAAxC","sourcesContent":["import * as React from 'react';\nimport type { AccordionHeaderContextValue } from './AccordionHeader.types';\n\nexport const AccordionHeaderContext = React.createContext<AccordionHeaderContextValue>({\n open: false,\n disabled: false,\n size: 'medium',\n expandIconPosition: 'start',\n});\n\nexport const useAccordionHeaderContext = () => React.useContext(AccordionHeaderContext);\n"],"sourceRoot":"../src/"}
@@ -1,5 +1,4 @@
1
1
  export * from './AccordionHeader';
2
- export * from './AccordionHeaderExpandIcon';
3
2
  export * from './AccordionHeader.types';
4
3
  export * from './renderAccordionHeader';
5
4
  export * from './useAccordionHeader';
@@ -1,5 +1,4 @@
1
1
  export * from './AccordionHeader';
2
- export * from './AccordionHeaderExpandIcon';
3
2
  export * from './AccordionHeader.types';
4
3
  export * from './renderAccordionHeader';
5
4
  export * from './useAccordionHeader';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/AccordionHeader/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mCAAmC,CAAC;AAClD,cAAc,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"../src/","sources":["components/AccordionHeader/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mCAAmC,CAAC;AAClD,cAAc,4BAA4B,CAAC","sourcesContent":["export * from './AccordionHeader';\nexport * from './AccordionHeader.types';\nexport * from './renderAccordionHeader';\nexport * from './useAccordionHeader';\nexport * from './useAccordionHeaderContextValues';\nexport * from './useAccordionHeaderStyles';\n"]}
@@ -2,4 +2,4 @@ import type { AccordionHeaderState, AccordionHeaderContextValues } from './Accor
2
2
  /**
3
3
  * Function that renders the final JSX of the component
4
4
  */
5
- export declare const renderAccordionHeader: (state: AccordionHeaderState, contextValues: AccordionHeaderContextValues) => JSX.Element;
5
+ export declare const renderAccordionHeader_unstable: (state: AccordionHeaderState, contextValues: AccordionHeaderContextValues) => JSX.Element;
@@ -1,19 +1,22 @@
1
- import { __assign } from "tslib";
2
1
  import * as React from 'react';
3
2
  import { getSlots } from '@fluentui/react-utilities';
4
- import { accordionHeaderShorthandProps } from './useAccordionHeader';
5
3
  import { AccordionHeaderContext } from './AccordionHeaderContext';
6
4
  /**
7
5
  * Function that renders the final JSX of the component
8
6
  */
9
7
 
10
- export var renderAccordionHeader = function (state, contextValues) {
11
- var _a = getSlots(state, accordionHeaderShorthandProps),
12
- slots = _a.slots,
13
- slotProps = _a.slotProps;
14
-
8
+ export const renderAccordionHeader_unstable = (state, contextValues) => {
9
+ const {
10
+ slots,
11
+ slotProps
12
+ } = getSlots(state);
15
13
  return /*#__PURE__*/React.createElement(AccordionHeaderContext.Provider, {
16
14
  value: contextValues.accordionHeader
17
- }, /*#__PURE__*/React.createElement(slots.root, __assign({}, slotProps.root), /*#__PURE__*/React.createElement(slots.button, __assign({}, slotProps.button), state.expandIconPosition === 'start' && /*#__PURE__*/React.createElement(slots.expandIcon, __assign({}, slotProps.expandIcon)), /*#__PURE__*/React.createElement(slots.icon, __assign({}, slotProps.icon)), /*#__PURE__*/React.createElement(slots.children, __assign({}, slotProps.children)), state.expandIconPosition === 'end' && /*#__PURE__*/React.createElement(slots.expandIcon, __assign({}, slotProps.expandIcon)))));
15
+ }, /*#__PURE__*/React.createElement(slots.root, { ...slotProps.root
16
+ }, /*#__PURE__*/React.createElement(slots.button, { ...slotProps.button
17
+ }, state.expandIconPosition === 'start' && /*#__PURE__*/React.createElement(slots.expandIcon, { ...slotProps.expandIcon
18
+ }), slots.icon && /*#__PURE__*/React.createElement(slots.icon, { ...slotProps.icon
19
+ }), slotProps.root.children, state.expandIconPosition === 'end' && /*#__PURE__*/React.createElement(slots.expandIcon, { ...slotProps.expandIcon
20
+ }))));
18
21
  };
19
22
  //# sourceMappingURL=renderAccordionHeader.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/AccordionHeader/renderAccordionHeader.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,QAAT,QAAyB,2BAAzB;AACA,SAAS,6BAAT,QAA8C,sBAA9C;AACA,SAAS,sBAAT,QAAuC,0BAAvC;AAGA;;AAEG;;AACH,OAAO,IAAM,qBAAqB,GAAG,UAAC,KAAD,EAA8B,aAA9B,EAAyE;AACtG,MAAA,EAAA,GAAuB,QAAQ,CAAuB,KAAvB,EAA8B,6BAA9B,CAA/B;AAAA,MAAE,KAAK,GAAA,EAAA,CAAA,KAAP;AAAA,MAAS,SAAS,GAAA,EAAA,CAAA,SAAlB;;AAEN,sBACE,KAAA,CAAA,aAAA,CAAC,sBAAsB,CAAC,QAAxB,EAAgC;AAAC,IAAA,KAAK,EAAE,aAAa,CAAC;AAAtB,GAAhC,eACE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,IAAP,EAAW,QAAA,CAAA,EAAA,EAAK,SAAS,CAAC,IAAf,CAAX,eACE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,MAAP,EAAa,QAAA,CAAA,EAAA,EAAK,SAAS,CAAC,MAAf,CAAb,EACG,KAAK,CAAC,kBAAN,KAA6B,OAA7B,iBAAwC,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,UAAP,EAAiB,QAAA,CAAA,EAAA,EAAK,SAAS,CAAC,UAAf,CAAjB,CAD3C,eAEE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,IAAP,EAAW,QAAA,CAAA,EAAA,EAAK,SAAS,CAAC,IAAf,CAAX,CAFF,eAGE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,QAAP,EAAe,QAAA,CAAA,EAAA,EAAK,SAAS,CAAC,QAAf,CAAf,CAHF,EAIG,KAAK,CAAC,kBAAN,KAA6B,KAA7B,iBAAsC,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,UAAP,EAAiB,QAAA,CAAA,EAAA,EAAK,SAAS,CAAC,UAAf,CAAjB,CAJzC,CADF,CADF,CADF;AAYD,CAfM","sourceRoot":""}
1
+ {"version":3,"sources":["components/AccordionHeader/renderAccordionHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AACA,SAAS,QAAT,QAAyB,2BAAzB;AACA,SAAS,sBAAT,QAAuC,0BAAvC;AAGA;;AAEG;;AACH,OAAO,MAAM,8BAA8B,GAAG,CAC5C,KAD4C,EAE5C,aAF4C,KAG1C;AACF,QAAM;AAAE,IAAA,KAAF;AAAS,IAAA;AAAT,MAAuB,QAAQ,CAAuB,KAAvB,CAArC;AAEA,sBACE,KAAA,CAAA,aAAA,CAAC,sBAAsB,CAAC,QAAxB,EAAgC;AAAC,IAAA,KAAK,EAAE,aAAa,CAAC;AAAtB,GAAhC,eACE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,IAAP,EAAW,EAAA,GAAK,SAAS,CAAC;AAAf,GAAX,eACE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,MAAP,EAAa,EAAA,GAAK,SAAS,CAAC;AAAf,GAAb,EACG,KAAK,CAAC,kBAAN,KAA6B,OAA7B,iBAAwC,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,UAAP,EAAiB,EAAA,GAAK,SAAS,CAAC;AAAf,GAAjB,CAD3C,EAEG,KAAK,CAAC,IAAN,iBAAc,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,IAAP,EAAW,EAAA,GAAK,SAAS,CAAC;AAAf,GAAX,CAFjB,EAGG,SAAS,CAAC,IAAV,CAAe,QAHlB,EAIG,KAAK,CAAC,kBAAN,KAA6B,KAA7B,iBAAsC,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,UAAP,EAAiB,EAAA,GAAK,SAAS,CAAC;AAAf,GAAjB,CAJzC,CADF,CADF,CADF;AAYD,CAlBM","sourcesContent":["import * as React from 'react';\nimport { getSlots } from '@fluentui/react-utilities';\nimport { AccordionHeaderContext } from './AccordionHeaderContext';\nimport type { AccordionHeaderState, AccordionHeaderSlots, AccordionHeaderContextValues } from './AccordionHeader.types';\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 const { slots, slotProps } = getSlots<AccordionHeaderSlots>(state);\n\n return (\n <AccordionHeaderContext.Provider value={contextValues.accordionHeader}>\n <slots.root {...slotProps.root}>\n <slots.button {...slotProps.button}>\n {state.expandIconPosition === 'start' && <slots.expandIcon {...slotProps.expandIcon} />}\n {slots.icon && <slots.icon {...slotProps.icon} />}\n {slotProps.root.children}\n {state.expandIconPosition === 'end' && <slots.expandIcon {...slotProps.expandIcon} />}\n </slots.button>\n </slots.root>\n </AccordionHeaderContext.Provider>\n );\n};\n"],"sourceRoot":"../src/"}
@@ -1,12 +1,8 @@
1
1
  import * as React from 'react';
2
- import type { AccordionHeaderProps, AccordionHeaderState, AccordionHeaderSlots } from './AccordionHeader.types';
3
- /**
4
- * Const listing which props are shorthand props.
5
- */
6
- export declare const accordionHeaderShorthandProps: Array<keyof AccordionHeaderSlots>;
2
+ import type { AccordionHeaderProps, AccordionHeaderState } from './AccordionHeader.types';
7
3
  /**
8
4
  * Returns the props and state required to render the component
9
5
  * @param props - AccordionHeader properties
10
6
  * @param ref - reference to root HTMLElement of AccordionHeader
11
7
  */
12
- export declare const useAccordionHeader: (props: AccordionHeaderProps, ref: React.Ref<HTMLElement>) => AccordionHeaderState;
8
+ export declare const useAccordionHeader_unstable: (props: AccordionHeaderProps, ref: React.Ref<HTMLElement>) => AccordionHeaderState;