@fluentui/react-nav 9.3.24 → 9.4.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.
Files changed (235) hide show
  1. package/CHANGELOG.md +53 -13
  2. package/dist/index.d.ts +93 -1
  3. package/lib/AppItem.js +1 -1
  4. package/lib/AppItem.js.map +1 -1
  5. package/lib/AppItemStatic.js +1 -1
  6. package/lib/AppItemStatic.js.map +1 -1
  7. package/lib/Nav.js +2 -2
  8. package/lib/Nav.js.map +1 -1
  9. package/lib/NavItem.js +1 -1
  10. package/lib/NavItem.js.map +1 -1
  11. package/lib/NavSubItem.js +1 -1
  12. package/lib/NavSubItem.js.map +1 -1
  13. package/lib/NavSubItemGroup.js +1 -1
  14. package/lib/NavSubItemGroup.js.map +1 -1
  15. package/lib/components/AppItem/AppItem.types.js +1 -3
  16. package/lib/components/AppItem/AppItem.types.js.map +1 -1
  17. package/lib/components/AppItem/index.js +1 -1
  18. package/lib/components/AppItem/index.js.map +1 -1
  19. package/lib/components/AppItem/useAppItem.js +18 -3
  20. package/lib/components/AppItem/useAppItem.js.map +1 -1
  21. package/lib/components/AppItem/useAppItemStyles.styles.js +2 -2
  22. package/lib/components/AppItem/useAppItemStyles.styles.js.map +1 -1
  23. package/lib/components/AppItem/useAppItemStyles.styles.raw.js +2 -1
  24. package/lib/components/AppItem/useAppItemStyles.styles.raw.js.map +1 -1
  25. package/lib/components/AppItemStatic/AppItemStatic.types.js +1 -3
  26. package/lib/components/AppItemStatic/AppItemStatic.types.js.map +1 -1
  27. package/lib/components/AppItemStatic/index.js +1 -1
  28. package/lib/components/AppItemStatic/index.js.map +1 -1
  29. package/lib/components/AppItemStatic/useAppItemStatic.js +9 -3
  30. package/lib/components/AppItemStatic/useAppItemStatic.js.map +1 -1
  31. package/lib/components/AppItemStatic/useAppItemStaticStyles.styles.js +2 -2
  32. package/lib/components/AppItemStatic/useAppItemStaticStyles.styles.js.map +1 -1
  33. package/lib/components/AppItemStatic/useAppItemStaticStyles.styles.raw.js +2 -1
  34. package/lib/components/AppItemStatic/useAppItemStaticStyles.styles.raw.js.map +1 -1
  35. package/lib/components/Hamburger/useHamburgerStyles.styles.js +2 -2
  36. package/lib/components/Hamburger/useHamburgerStyles.styles.js.map +1 -1
  37. package/lib/components/Hamburger/useHamburgerStyles.styles.raw.js +2 -1
  38. package/lib/components/Hamburger/useHamburgerStyles.styles.raw.js.map +1 -1
  39. package/lib/components/Nav/Nav.types.js +1 -3
  40. package/lib/components/Nav/Nav.types.js.map +1 -1
  41. package/lib/components/Nav/index.js +1 -1
  42. package/lib/components/Nav/index.js.map +1 -1
  43. package/lib/components/Nav/useNav.js +17 -4
  44. package/lib/components/Nav/useNav.js.map +1 -1
  45. package/lib/components/Nav/useNavStyles.styles.js +1 -2
  46. package/lib/components/Nav/useNavStyles.styles.js.map +1 -1
  47. package/lib/components/Nav/useNavStyles.styles.raw.js +1 -1
  48. package/lib/components/Nav/useNavStyles.styles.raw.js.map +1 -1
  49. package/lib/components/NavCategoryItem/NavCategoryItem.types.js +1 -1
  50. package/lib/components/NavCategoryItem/NavCategoryItem.types.js.map +1 -1
  51. package/lib/components/NavCategoryItem/index.js +1 -1
  52. package/lib/components/NavCategoryItem/index.js.map +1 -1
  53. package/lib/components/NavCategoryItem/useNavCategoryItem.js +34 -12
  54. package/lib/components/NavCategoryItem/useNavCategoryItem.js.map +1 -1
  55. package/lib/components/NavCategoryItem/useNavCategoryItem.styles.js +3 -2
  56. package/lib/components/NavCategoryItem/useNavCategoryItem.styles.js.map +1 -1
  57. package/lib/components/NavCategoryItem/useNavCategoryItem.styles.raw.js +3 -1
  58. package/lib/components/NavCategoryItem/useNavCategoryItem.styles.raw.js.map +1 -1
  59. package/lib/components/NavDivider/useNavDividerStyles.styles.js +2 -2
  60. package/lib/components/NavDivider/useNavDividerStyles.styles.js.map +1 -1
  61. package/lib/components/NavDivider/useNavDividerStyles.styles.raw.js +2 -1
  62. package/lib/components/NavDivider/useNavDividerStyles.styles.raw.js.map +1 -1
  63. package/lib/components/NavDrawer/useNavDrawerStyles.styles.js +1 -2
  64. package/lib/components/NavDrawer/useNavDrawerStyles.styles.js.map +1 -1
  65. package/lib/components/NavDrawer/useNavDrawerStyles.styles.raw.js +1 -1
  66. package/lib/components/NavDrawer/useNavDrawerStyles.styles.raw.js.map +1 -1
  67. package/lib/components/NavDrawerBody/useNavDrawerBodyStyles.styles.js +1 -2
  68. package/lib/components/NavDrawerBody/useNavDrawerBodyStyles.styles.js.map +1 -1
  69. package/lib/components/NavDrawerBody/useNavDrawerBodyStyles.styles.raw.js +1 -1
  70. package/lib/components/NavDrawerBody/useNavDrawerBodyStyles.styles.raw.js.map +1 -1
  71. package/lib/components/NavDrawerFooter/useNavDrawerFooterStyles.styles.js +1 -2
  72. package/lib/components/NavDrawerFooter/useNavDrawerFooterStyles.styles.js.map +1 -1
  73. package/lib/components/NavDrawerFooter/useNavDrawerFooterStyles.styles.raw.js +1 -1
  74. package/lib/components/NavDrawerFooter/useNavDrawerFooterStyles.styles.raw.js.map +1 -1
  75. package/lib/components/NavDrawerHeader/useNavDrawerHeaderStyles.styles.js +1 -2
  76. package/lib/components/NavDrawerHeader/useNavDrawerHeaderStyles.styles.js.map +1 -1
  77. package/lib/components/NavDrawerHeader/useNavDrawerHeaderStyles.styles.raw.js +1 -1
  78. package/lib/components/NavDrawerHeader/useNavDrawerHeaderStyles.styles.raw.js.map +1 -1
  79. package/lib/components/NavItem/NavItem.types.js +1 -3
  80. package/lib/components/NavItem/NavItem.types.js.map +1 -1
  81. package/lib/components/NavItem/index.js +1 -1
  82. package/lib/components/NavItem/index.js.map +1 -1
  83. package/lib/components/NavItem/useNavItem.js +16 -3
  84. package/lib/components/NavItem/useNavItem.js.map +1 -1
  85. package/lib/components/NavItem/useNavItemStyles.styles.js +2 -2
  86. package/lib/components/NavItem/useNavItemStyles.styles.js.map +1 -1
  87. package/lib/components/NavItem/useNavItemStyles.styles.raw.js +2 -1
  88. package/lib/components/NavItem/useNavItemStyles.styles.raw.js.map +1 -1
  89. package/lib/components/NavSectionHeader/useNavSectionHeaderStyles.styles.js +1 -2
  90. package/lib/components/NavSectionHeader/useNavSectionHeaderStyles.styles.js.map +1 -1
  91. package/lib/components/NavSectionHeader/useNavSectionHeaderStyles.styles.raw.js +1 -1
  92. package/lib/components/NavSectionHeader/useNavSectionHeaderStyles.styles.raw.js.map +1 -1
  93. package/lib/components/NavSubItem/NavSubItem.types.js +1 -3
  94. package/lib/components/NavSubItem/NavSubItem.types.js.map +1 -1
  95. package/lib/components/NavSubItem/index.js +1 -1
  96. package/lib/components/NavSubItem/index.js.map +1 -1
  97. package/lib/components/NavSubItem/useNavSubItem.js +16 -3
  98. package/lib/components/NavSubItem/useNavSubItem.js.map +1 -1
  99. package/lib/components/NavSubItem/useNavSubItemStyles.styles.js +1 -2
  100. package/lib/components/NavSubItem/useNavSubItemStyles.styles.js.map +1 -1
  101. package/lib/components/NavSubItem/useNavSubItemStyles.styles.raw.js +1 -1
  102. package/lib/components/NavSubItem/useNavSubItemStyles.styles.raw.js.map +1 -1
  103. package/lib/components/NavSubItemGroup/NavSubItemGroup.types.js +1 -3
  104. package/lib/components/NavSubItemGroup/NavSubItemGroup.types.js.map +1 -1
  105. package/lib/components/NavSubItemGroup/index.js +1 -1
  106. package/lib/components/NavSubItemGroup/index.js.map +1 -1
  107. package/lib/components/NavSubItemGroup/useNavSubItemGroup.js +25 -9
  108. package/lib/components/NavSubItemGroup/useNavSubItemGroup.js.map +1 -1
  109. package/lib/components/NavSubItemGroup/useNavSubItemGroupStyles.styles.js +1 -2
  110. package/lib/components/NavSubItemGroup/useNavSubItemGroupStyles.styles.js.map +1 -1
  111. package/lib/components/NavSubItemGroup/useNavSubItemGroupStyles.styles.raw.js +1 -1
  112. package/lib/components/NavSubItemGroup/useNavSubItemGroupStyles.styles.raw.js.map +1 -1
  113. package/lib/components/SplitNavItem/useSplitNavItemStyles.styles.js +5 -2
  114. package/lib/components/SplitNavItem/useSplitNavItemStyles.styles.js.map +1 -1
  115. package/lib/components/SplitNavItem/useSplitNavItemStyles.styles.raw.js +5 -1
  116. package/lib/components/SplitNavItem/useSplitNavItemStyles.styles.raw.js.map +1 -1
  117. package/lib/index.js +7 -7
  118. package/lib/index.js.map +1 -1
  119. package/lib-commonjs/AppItem.js +3 -0
  120. package/lib-commonjs/AppItem.js.map +1 -1
  121. package/lib-commonjs/AppItemStatic.js +3 -0
  122. package/lib-commonjs/AppItemStatic.js.map +1 -1
  123. package/lib-commonjs/Nav.js +6 -0
  124. package/lib-commonjs/Nav.js.map +1 -1
  125. package/lib-commonjs/NavItem.js +3 -0
  126. package/lib-commonjs/NavItem.js.map +1 -1
  127. package/lib-commonjs/NavSubItem.js +3 -0
  128. package/lib-commonjs/NavSubItem.js.map +1 -1
  129. package/lib-commonjs/NavSubItemGroup.js +3 -0
  130. package/lib-commonjs/NavSubItemGroup.js.map +1 -1
  131. package/lib-commonjs/components/AppItem/AppItem.types.js +1 -3
  132. package/lib-commonjs/components/AppItem/AppItem.types.js.map +1 -1
  133. package/lib-commonjs/components/AppItem/index.js +3 -0
  134. package/lib-commonjs/components/AppItem/index.js.map +1 -1
  135. package/lib-commonjs/components/AppItem/useAppItem.js +20 -6
  136. package/lib-commonjs/components/AppItem/useAppItem.js.map +1 -1
  137. package/lib-commonjs/components/AppItem/useAppItemStyles.styles.js +2 -1
  138. package/lib-commonjs/components/AppItem/useAppItemStyles.styles.js.map +1 -1
  139. package/lib-commonjs/components/AppItem/useAppItemStyles.styles.raw.js +2 -1
  140. package/lib-commonjs/components/AppItem/useAppItemStyles.styles.raw.js.map +1 -1
  141. package/lib-commonjs/components/AppItemStatic/AppItemStatic.types.js +1 -3
  142. package/lib-commonjs/components/AppItemStatic/AppItemStatic.types.js.map +1 -1
  143. package/lib-commonjs/components/AppItemStatic/index.js +3 -0
  144. package/lib-commonjs/components/AppItemStatic/index.js.map +1 -1
  145. package/lib-commonjs/components/AppItemStatic/useAppItemStatic.js +20 -6
  146. package/lib-commonjs/components/AppItemStatic/useAppItemStatic.js.map +1 -1
  147. package/lib-commonjs/components/AppItemStatic/useAppItemStaticStyles.styles.js +2 -1
  148. package/lib-commonjs/components/AppItemStatic/useAppItemStaticStyles.styles.js.map +1 -1
  149. package/lib-commonjs/components/AppItemStatic/useAppItemStaticStyles.styles.raw.js +2 -1
  150. package/lib-commonjs/components/AppItemStatic/useAppItemStaticStyles.styles.raw.js.map +1 -1
  151. package/lib-commonjs/components/Hamburger/useHamburgerStyles.styles.js +2 -1
  152. package/lib-commonjs/components/Hamburger/useHamburgerStyles.styles.js.map +1 -1
  153. package/lib-commonjs/components/Hamburger/useHamburgerStyles.styles.raw.js +2 -1
  154. package/lib-commonjs/components/Hamburger/useHamburgerStyles.styles.raw.js.map +1 -1
  155. package/lib-commonjs/components/Nav/Nav.types.js +1 -3
  156. package/lib-commonjs/components/Nav/Nav.types.js.map +1 -1
  157. package/lib-commonjs/components/Nav/index.js +3 -0
  158. package/lib-commonjs/components/Nav/index.js.map +1 -1
  159. package/lib-commonjs/components/Nav/useNav.js +28 -7
  160. package/lib-commonjs/components/Nav/useNav.js.map +1 -1
  161. package/lib-commonjs/components/Nav/useNavStyles.styles.js +1 -1
  162. package/lib-commonjs/components/Nav/useNavStyles.styles.js.map +1 -1
  163. package/lib-commonjs/components/Nav/useNavStyles.styles.raw.js +1 -1
  164. package/lib-commonjs/components/Nav/useNavStyles.styles.raw.js.map +1 -1
  165. package/lib-commonjs/components/NavCategoryItem/NavCategoryItem.types.js +1 -1
  166. package/lib-commonjs/components/NavCategoryItem/NavCategoryItem.types.js.map +1 -1
  167. package/lib-commonjs/components/NavCategoryItem/index.js +3 -0
  168. package/lib-commonjs/components/NavCategoryItem/index.js.map +1 -1
  169. package/lib-commonjs/components/NavCategoryItem/useNavCategoryItem.js +40 -15
  170. package/lib-commonjs/components/NavCategoryItem/useNavCategoryItem.js.map +1 -1
  171. package/lib-commonjs/components/NavCategoryItem/useNavCategoryItem.styles.js +3 -1
  172. package/lib-commonjs/components/NavCategoryItem/useNavCategoryItem.styles.js.map +1 -1
  173. package/lib-commonjs/components/NavCategoryItem/useNavCategoryItem.styles.raw.js +3 -1
  174. package/lib-commonjs/components/NavCategoryItem/useNavCategoryItem.styles.raw.js.map +1 -1
  175. package/lib-commonjs/components/NavDivider/useNavDividerStyles.styles.js +2 -1
  176. package/lib-commonjs/components/NavDivider/useNavDividerStyles.styles.js.map +1 -1
  177. package/lib-commonjs/components/NavDivider/useNavDividerStyles.styles.raw.js +2 -1
  178. package/lib-commonjs/components/NavDivider/useNavDividerStyles.styles.raw.js.map +1 -1
  179. package/lib-commonjs/components/NavDrawer/useNavDrawerStyles.styles.js +1 -1
  180. package/lib-commonjs/components/NavDrawer/useNavDrawerStyles.styles.js.map +1 -1
  181. package/lib-commonjs/components/NavDrawer/useNavDrawerStyles.styles.raw.js +1 -1
  182. package/lib-commonjs/components/NavDrawer/useNavDrawerStyles.styles.raw.js.map +1 -1
  183. package/lib-commonjs/components/NavDrawerBody/useNavDrawerBodyStyles.styles.js +1 -1
  184. package/lib-commonjs/components/NavDrawerBody/useNavDrawerBodyStyles.styles.js.map +1 -1
  185. package/lib-commonjs/components/NavDrawerBody/useNavDrawerBodyStyles.styles.raw.js +1 -1
  186. package/lib-commonjs/components/NavDrawerBody/useNavDrawerBodyStyles.styles.raw.js.map +1 -1
  187. package/lib-commonjs/components/NavDrawerFooter/useNavDrawerFooterStyles.styles.js +1 -1
  188. package/lib-commonjs/components/NavDrawerFooter/useNavDrawerFooterStyles.styles.js.map +1 -1
  189. package/lib-commonjs/components/NavDrawerFooter/useNavDrawerFooterStyles.styles.raw.js +1 -1
  190. package/lib-commonjs/components/NavDrawerFooter/useNavDrawerFooterStyles.styles.raw.js.map +1 -1
  191. package/lib-commonjs/components/NavDrawerHeader/useNavDrawerHeaderStyles.styles.js +1 -1
  192. package/lib-commonjs/components/NavDrawerHeader/useNavDrawerHeaderStyles.styles.js.map +1 -1
  193. package/lib-commonjs/components/NavDrawerHeader/useNavDrawerHeaderStyles.styles.raw.js +1 -1
  194. package/lib-commonjs/components/NavDrawerHeader/useNavDrawerHeaderStyles.styles.raw.js.map +1 -1
  195. package/lib-commonjs/components/NavItem/NavItem.types.js +1 -3
  196. package/lib-commonjs/components/NavItem/NavItem.types.js.map +1 -1
  197. package/lib-commonjs/components/NavItem/index.js +3 -0
  198. package/lib-commonjs/components/NavItem/index.js.map +1 -1
  199. package/lib-commonjs/components/NavItem/useNavItem.js +21 -6
  200. package/lib-commonjs/components/NavItem/useNavItem.js.map +1 -1
  201. package/lib-commonjs/components/NavItem/useNavItemStyles.styles.js +2 -1
  202. package/lib-commonjs/components/NavItem/useNavItemStyles.styles.js.map +1 -1
  203. package/lib-commonjs/components/NavItem/useNavItemStyles.styles.raw.js +2 -1
  204. package/lib-commonjs/components/NavItem/useNavItemStyles.styles.raw.js.map +1 -1
  205. package/lib-commonjs/components/NavSectionHeader/useNavSectionHeaderStyles.styles.js +1 -1
  206. package/lib-commonjs/components/NavSectionHeader/useNavSectionHeaderStyles.styles.js.map +1 -1
  207. package/lib-commonjs/components/NavSectionHeader/useNavSectionHeaderStyles.styles.raw.js +1 -1
  208. package/lib-commonjs/components/NavSectionHeader/useNavSectionHeaderStyles.styles.raw.js.map +1 -1
  209. package/lib-commonjs/components/NavSubItem/NavSubItem.types.js +1 -3
  210. package/lib-commonjs/components/NavSubItem/NavSubItem.types.js.map +1 -1
  211. package/lib-commonjs/components/NavSubItem/index.js +3 -0
  212. package/lib-commonjs/components/NavSubItem/index.js.map +1 -1
  213. package/lib-commonjs/components/NavSubItem/useNavSubItem.js +21 -6
  214. package/lib-commonjs/components/NavSubItem/useNavSubItem.js.map +1 -1
  215. package/lib-commonjs/components/NavSubItem/useNavSubItemStyles.styles.js +1 -1
  216. package/lib-commonjs/components/NavSubItem/useNavSubItemStyles.styles.js.map +1 -1
  217. package/lib-commonjs/components/NavSubItem/useNavSubItemStyles.styles.raw.js +1 -1
  218. package/lib-commonjs/components/NavSubItem/useNavSubItemStyles.styles.raw.js.map +1 -1
  219. package/lib-commonjs/components/NavSubItemGroup/NavSubItemGroup.types.js +1 -3
  220. package/lib-commonjs/components/NavSubItemGroup/NavSubItemGroup.types.js.map +1 -1
  221. package/lib-commonjs/components/NavSubItemGroup/index.js +3 -0
  222. package/lib-commonjs/components/NavSubItemGroup/index.js.map +1 -1
  223. package/lib-commonjs/components/NavSubItemGroup/useNavSubItemGroup.js +30 -12
  224. package/lib-commonjs/components/NavSubItemGroup/useNavSubItemGroup.js.map +1 -1
  225. package/lib-commonjs/components/NavSubItemGroup/useNavSubItemGroupStyles.styles.js +1 -1
  226. package/lib-commonjs/components/NavSubItemGroup/useNavSubItemGroupStyles.styles.js.map +1 -1
  227. package/lib-commonjs/components/NavSubItemGroup/useNavSubItemGroupStyles.styles.raw.js +1 -1
  228. package/lib-commonjs/components/NavSubItemGroup/useNavSubItemGroupStyles.styles.raw.js.map +1 -1
  229. package/lib-commonjs/components/SplitNavItem/useSplitNavItemStyles.styles.js +5 -1
  230. package/lib-commonjs/components/SplitNavItem/useSplitNavItemStyles.styles.js.map +1 -1
  231. package/lib-commonjs/components/SplitNavItem/useSplitNavItemStyles.styles.raw.js +5 -1
  232. package/lib-commonjs/components/SplitNavItem/useSplitNavItemStyles.styles.raw.js.map +1 -1
  233. package/lib-commonjs/index.js +21 -0
  234. package/lib-commonjs/index.js.map +1 -1
  235. package/package.json +12 -12
@@ -3,9 +3,17 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- Object.defineProperty(exports, "useNavItem_unstable", {
7
- enumerable: true,
8
- get: function() {
6
+ function _export(target, all) {
7
+ for(var name in all)Object.defineProperty(target, name, {
8
+ enumerable: true,
9
+ get: all[name]
10
+ });
11
+ }
12
+ _export(exports, {
13
+ useNavItemBase_unstable: function() {
14
+ return useNavItemBase_unstable;
15
+ },
16
+ useNavItem_unstable: function() {
9
17
  return useNavItem_unstable;
10
18
  }
11
19
  });
@@ -15,8 +23,16 @@ const _reactutilities = require("@fluentui/react-utilities");
15
23
  const _reactaria = require("@fluentui/react-aria");
16
24
  const _NavContext = require("../NavContext");
17
25
  const useNavItem_unstable = (props, ref)=>{
26
+ const { density = 'medium' } = (0, _NavContext.useNavContext_unstable)();
27
+ const state = useNavItemBase_unstable(props, ref);
28
+ return {
29
+ ...state,
30
+ density
31
+ };
32
+ };
33
+ const useNavItemBase_unstable = (props, ref)=>{
18
34
  const { onClick, value, icon, as, href } = props;
19
- const { selectedValue, onRegister, onUnregister, onSelect, density = 'medium' } = (0, _NavContext.useNavContext_unstable)();
35
+ const { selectedValue, onRegister, onUnregister, onSelect } = (0, _NavContext.useNavContext_unstable)();
20
36
  const rootElementType = as || (href ? 'a' : 'button');
21
37
  const selected = selectedValue === value;
22
38
  const innerRef = _react.useRef(null);
@@ -68,7 +84,6 @@ const useNavItem_unstable = (props, ref)=>{
68
84
  elementType: 'span'
69
85
  }),
70
86
  selected,
71
- value,
72
- density
87
+ value
73
88
  };
74
89
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/NavItem/useNavItem.ts"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { getIntrinsicElementProps, slot, useEventCallback, isHTMLElement } from '@fluentui/react-utilities';\nimport { useARIAButtonProps } from '@fluentui/react-aria';\nimport { useNavContext_unstable } from '../NavContext';\n\nimport type { ARIAButtonSlotProps } from '@fluentui/react-aria';\nimport type { NavItemProps, NavItemState } from './NavItem.types';\n\n/**\n * Create the state required to render NavItem.\n *\n * The returned state can be modified with hooks such as useNavItemStyles_unstable,\n * before being passed to renderNavItem_unstable.\n *\n * @param props - props from this instance of NavItem\n * @param ref - reference to root HTMLAnchorElement of NavItem\n */\nexport const useNavItem_unstable = (\n props: NavItemProps,\n ref: React.Ref<HTMLButtonElement | HTMLAnchorElement>,\n): NavItemState => {\n const { onClick, value, icon, as, href } = props;\n\n const { selectedValue, onRegister, onUnregister, onSelect, density = 'medium' } = useNavContext_unstable();\n\n const rootElementType = as || (href ? 'a' : 'button');\n\n const selected = selectedValue === value;\n\n const innerRef = React.useRef<HTMLElement>(null);\n\n const onNavItemClick: ARIAButtonSlotProps<'a'>['onClick'] = useEventCallback(event => {\n onClick?.(event);\n\n if (!event.defaultPrevented && isHTMLElement(event.target)) {\n onSelect(event, { type: 'click', event, value });\n }\n });\n\n const root = slot.always<ARIAButtonSlotProps<'a'>>(\n getIntrinsicElementProps(\n rootElementType,\n useARIAButtonProps(rootElementType, {\n 'aria-current': selected ? 'page' : 'false',\n ...props,\n }),\n ),\n {\n elementType: rootElementType,\n defaultProps: {\n ref: ref as React.Ref<HTMLButtonElement & HTMLAnchorElement>,\n type: rootElementType,\n },\n },\n );\n\n root.onClick = onNavItemClick;\n\n React.useEffect(() => {\n onRegister({\n value,\n ref: innerRef,\n });\n\n return () => {\n onUnregister({ value, ref: innerRef });\n };\n }, [onRegister, onUnregister, innerRef, value]);\n\n return {\n components: { root: rootElementType, icon: 'span' },\n root,\n icon: slot.optional(icon, {\n elementType: 'span',\n }),\n selected,\n value,\n density,\n };\n};\n"],"names":["React","getIntrinsicElementProps","slot","useEventCallback","isHTMLElement","useARIAButtonProps","useNavContext_unstable","useNavItem_unstable","props","ref","onClick","value","icon","as","href","selectedValue","onRegister","onUnregister","onSelect","density","rootElementType","selected","innerRef","useRef","onNavItemClick","event","defaultPrevented","target","type","root","always","elementType","defaultProps","useEffect","components","optional"],"mappings":"AAAA;;;;;+BAmBaO;;;;;;;iEAjBU,QAAQ;gCACiD,4BAA4B;2BACzE,uBAAuB;4BACnB,gBAAgB;AAchD,4BAA4B,CACjCC,OACAC;IAEA,MAAM,EAAEC,OAAO,EAAEC,KAAK,EAAEC,IAAI,EAAEC,EAAE,EAAEC,IAAI,EAAE,GAAGN;IAE3C,MAAM,EAAEO,aAAa,EAAEC,UAAU,EAAEC,YAAY,EAAEC,QAAQ,EAAEC,UAAU,QAAQ,EAAE,OAAGb,kCAAAA;IAElF,MAAMc,kBAAkBP,MAAOC,CAAAA,OAAO,MAAM,QAAA,CAAO;IAEnD,MAAMO,WAAWN,kBAAkBJ;IAEnC,MAAMW,WAAWtB,OAAMuB,MAAM,CAAc;IAE3C,MAAMC,qBAAsDrB,gCAAAA,EAAiBsB,CAAAA;QAC3Ef,YAAAA,QAAAA,YAAAA,KAAAA,IAAAA,KAAAA,IAAAA,QAAUe;QAEV,IAAI,CAACA,MAAMC,gBAAgB,QAAItB,6BAAAA,EAAcqB,MAAME,MAAM,GAAG;YAC1DT,SAASO,OAAO;gBAAEG,MAAM;gBAASH;gBAAOd;YAAM;QAChD;IACF;IAEA,MAAMkB,OAAO3B,oBAAAA,CAAK4B,MAAM,KACtB7B,wCAAAA,EACEmB,qBACAf,6BAAAA,EAAmBe,iBAAiB;QAClC,gBAAgBC,WAAW,SAAS;QACpC,GAAGb,KAAK;IACV,KAEF;QACEuB,aAAaX;QACbY,cAAc;YACZvB,KAAKA;YACLmB,MAAMR;QACR;IACF;IAGFS,KAAKnB,OAAO,GAAGc;IAEfxB,OAAMiC,SAAS,CAAC;QACdjB,WAAW;YACTL;YACAF,KAAKa;QACP;QAEA,OAAO;YACLL,aAAa;gBAAEN;gBAAOF,KAAKa;YAAS;QACtC;IACF,GAAG;QAACN;QAAYC;QAAcK;QAAUX;KAAM;IAE9C,OAAO;QACLuB,YAAY;YAAEL,MAAMT;YAAiBR,MAAM;QAAO;QAClDiB;QACAjB,MAAMV,oBAAAA,CAAKiC,QAAQ,CAACvB,MAAM;YACxBmB,aAAa;QACf;QACAV;QACAV;QACAQ;IACF;AACF,EAAE"}
1
+ {"version":3,"sources":["../src/components/NavItem/useNavItem.ts"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { getIntrinsicElementProps, slot, useEventCallback, isHTMLElement } from '@fluentui/react-utilities';\nimport { useARIAButtonProps } from '@fluentui/react-aria';\nimport { useNavContext_unstable } from '../NavContext';\n\nimport type { ARIAButtonSlotProps } from '@fluentui/react-aria';\nimport type { NavItemBaseState, NavItemProps, NavItemState } from './NavItem.types';\n\n/**\n * Create the state required to render NavItem.\n *\n * The returned state can be modified with hooks such as useNavItemStyles_unstable,\n * before being passed to renderNavItem_unstable.\n *\n * @param props - props from this instance of NavItem\n * @param ref - reference to root HTMLAnchorElement of NavItem\n */\nexport const useNavItem_unstable = (\n props: NavItemProps,\n ref: React.Ref<HTMLButtonElement | HTMLAnchorElement>,\n): NavItemState => {\n const { density = 'medium' } = useNavContext_unstable();\n const state = useNavItemBase_unstable(props, ref);\n\n return {\n ...state,\n density,\n };\n};\n\n/**\n * NavItemBaseState is the base state used in rendering NavItem,\n * excluding any design-related properties such as `density`.\n *\n * @param props - props from this instance of NavItem\n * @param ref - reference to root HTMLAnchorElement of NavItem\n */\nexport const useNavItemBase_unstable = (\n props: NavItemProps,\n ref: React.Ref<HTMLButtonElement | HTMLAnchorElement>,\n): NavItemBaseState => {\n const { onClick, value, icon, as, href } = props;\n\n const { selectedValue, onRegister, onUnregister, onSelect } = useNavContext_unstable();\n\n const rootElementType = as || (href ? 'a' : 'button');\n\n const selected = selectedValue === value;\n\n const innerRef = React.useRef<HTMLElement>(null);\n\n const onNavItemClick: ARIAButtonSlotProps<'a'>['onClick'] = useEventCallback(event => {\n onClick?.(event);\n\n if (!event.defaultPrevented && isHTMLElement(event.target)) {\n onSelect(event, { type: 'click', event, value });\n }\n });\n\n const root = slot.always<ARIAButtonSlotProps<'a'>>(\n getIntrinsicElementProps(\n rootElementType,\n useARIAButtonProps(rootElementType, {\n 'aria-current': selected ? 'page' : 'false',\n ...props,\n }),\n ),\n {\n elementType: rootElementType,\n defaultProps: {\n ref: ref as React.Ref<HTMLButtonElement & HTMLAnchorElement>,\n type: rootElementType,\n },\n },\n );\n\n root.onClick = onNavItemClick;\n\n React.useEffect(() => {\n onRegister({\n value,\n ref: innerRef,\n });\n\n return () => {\n onUnregister({ value, ref: innerRef });\n };\n }, [onRegister, onUnregister, innerRef, value]);\n\n return {\n components: { root: rootElementType, icon: 'span' },\n root,\n icon: slot.optional(icon, {\n elementType: 'span',\n }),\n selected,\n value,\n };\n};\n"],"names":["React","getIntrinsicElementProps","slot","useEventCallback","isHTMLElement","useARIAButtonProps","useNavContext_unstable","useNavItem_unstable","props","ref","density","state","useNavItemBase_unstable","onClick","value","icon","as","href","selectedValue","onRegister","onUnregister","onSelect","rootElementType","selected","innerRef","useRef","onNavItemClick","event","defaultPrevented","target","type","root","always","elementType","defaultProps","useEffect","components","optional"],"mappings":"AAAA;;;;;;;;;;;;2BAuCaY;eAAAA;;uBApBAL;;;;;iEAjBU,QAAQ;gCACiD,4BAA4B;2BACzE,uBAAuB;4BACnB,gBAAgB;AAchD,MAAMA,sBAAsB,CACjCC,OACAC;IAEA,MAAM,EAAEC,UAAU,QAAQ,EAAE,OAAGJ,kCAAAA;IAC/B,MAAMK,QAAQC,wBAAwBJ,OAAOC;IAE7C,OAAO;QACL,GAAGE,KAAK;QACRD;IACF;AACF,EAAE;AASK,gCAAgC,CACrCF,OACAC;IAEA,MAAM,EAAEI,OAAO,EAAEC,KAAK,EAAEC,IAAI,EAAEC,EAAE,EAAEC,IAAI,EAAE,GAAGT;IAE3C,MAAM,EAAEU,aAAa,EAAEC,UAAU,EAAEC,YAAY,EAAEC,QAAQ,EAAE,OAAGf,kCAAAA;IAE9D,MAAMgB,kBAAkBN,MAAOC,CAAAA,OAAO,MAAM,QAAA,CAAO;IAEnD,MAAMM,WAAWL,kBAAkBJ;IAEnC,MAAMU,WAAWxB,OAAMyB,MAAM,CAAc;IAE3C,MAAMC,qBAAsDvB,gCAAAA,EAAiBwB,CAAAA;QAC3Ed,YAAAA,QAAAA,YAAAA,KAAAA,IAAAA,KAAAA,IAAAA,QAAUc;QAEV,IAAI,CAACA,MAAMC,gBAAgB,QAAIxB,6BAAAA,EAAcuB,MAAME,MAAM,GAAG;YAC1DR,SAASM,OAAO;gBAAEG,MAAM;gBAASH;gBAAOb;YAAM;QAChD;IACF;IAEA,MAAMiB,OAAO7B,oBAAAA,CAAK8B,MAAM,KACtB/B,wCAAAA,EACEqB,qBACAjB,6BAAAA,EAAmBiB,iBAAiB;QAClC,gBAAgBC,WAAW,SAAS;QACpC,GAAGf,KAAK;IACV,KAEF;QACEyB,aAAaX;QACbY,cAAc;YACZzB,KAAKA;YACLqB,MAAMR;QACR;IACF;IAGFS,KAAKlB,OAAO,GAAGa;IAEf1B,OAAMmC,SAAS,CAAC;QACdhB,WAAW;YACTL;YACAL,KAAKe;QACP;QAEA,OAAO;YACLJ,aAAa;gBAAEN;gBAAOL,KAAKe;YAAS;QACtC;IACF,GAAG;QAACL;QAAYC;QAAcI;QAAUV;KAAM;IAE9C,OAAO;QACLsB,YAAY;YAAEL,MAAMT;YAAiBP,MAAM;QAAO;QAClDgB;QACAhB,MAAMb,oBAAAA,CAAKmC,QAAQ,CAACtB,MAAM;YACxBkB,aAAa;QACf;QACAV;QACAT;IACF;AACF,EAAE"}
@@ -24,15 +24,16 @@ const navItemClassNames = {
24
24
  icon: 'fui-NavItem__icon'
25
25
  };
26
26
  const useNavItemStyles_unstable = (state)=>{
27
- 'use no memo';
28
27
  const rootDefaultClassName = (0, _sharedNavStylesstyles.useRootDefaultClassName)();
29
28
  const smallStyles = (0, _sharedNavStylesstyles.useSmallStyles)();
30
29
  const contentStyles = (0, _sharedNavStylesstyles.useContentStyles)();
31
30
  const indicatorStyles = (0, _sharedNavStylesstyles.useIndicatorStyles)();
32
31
  const iconStyles = (0, _sharedNavStylesstyles.useIconStyles)();
33
32
  const { selected, density } = state;
33
+ // eslint-disable-next-line react-hooks/immutability
34
34
  state.root.className = (0, _react.mergeClasses)(navItemClassNames.root, rootDefaultClassName, density === 'small' && smallStyles.root, selected && indicatorStyles.base, selected && contentStyles.selected, state.root.className);
35
35
  if (state.icon) {
36
+ // eslint-disable-next-line react-hooks/immutability
36
37
  state.icon.className = (0, _react.mergeClasses)(navItemClassNames.icon, iconStyles.base, selected && iconStyles.selected, state.icon.className);
37
38
  }
38
39
  return state;
@@ -1 +1 @@
1
- {"version":3,"sources":["useNavItemStyles.styles.js"],"sourcesContent":["'use client';\nimport { mergeClasses } from '@griffel/react';\nimport { useContentStyles, useIconStyles, useIndicatorStyles, useRootDefaultClassName, useSmallStyles } from '../sharedNavStyles.styles';\nexport const navItemClassNames = {\n root: 'fui-NavItem',\n icon: 'fui-NavItem__icon'\n};\n/**\n * Apply styling to the NavItem slots based on the state\n */ export const useNavItemStyles_unstable = (state)=>{\n 'use no memo';\n const rootDefaultClassName = useRootDefaultClassName();\n const smallStyles = useSmallStyles();\n const contentStyles = useContentStyles();\n const indicatorStyles = useIndicatorStyles();\n const iconStyles = useIconStyles();\n const { selected, density } = state;\n state.root.className = mergeClasses(navItemClassNames.root, rootDefaultClassName, density === 'small' && smallStyles.root, selected && indicatorStyles.base, selected && contentStyles.selected, state.root.className);\n if (state.icon) {\n state.icon.className = mergeClasses(navItemClassNames.icon, iconStyles.base, selected && iconStyles.selected, state.icon.className);\n }\n return state;\n};\n"],"names":["mergeClasses","useContentStyles","useIconStyles","useIndicatorStyles","useRootDefaultClassName","useSmallStyles","navItemClassNames","root","icon","useNavItemStyles_unstable","state","rootDefaultClassName","smallStyles","contentStyles","indicatorStyles","iconStyles","selected","density","className","base"],"mappings":"AAAA,YAAY;;;;;;;;;;;;IAGCM,iBAAiB;;;6BAMY;;;;uBARb,gBAAgB;uCACgE,2BAA2B;AACjI,0BAA0B;IAC7BC,IAAI,EAAE,aAAa;IACnBC,IAAI,EAAE;AACV,CAAC;AAGU,MAAMC,6BAA6BC,KAAK,IAAG;IAClD,aAAa;IACb,MAAMC,oBAAoB,OAAGP,8CAAuB,CAAC,CAAC;IACtD,MAAMQ,WAAW,OAAGP,qCAAc,CAAC,CAAC;IACpC,MAAMQ,aAAa,OAAGZ,uCAAgB,CAAC,CAAC;IACxC,MAAMa,eAAe,OAAGX,yCAAkB,CAAC,CAAC;IAC5C,MAAMY,UAAU,OAAGb,oCAAa,CAAC,CAAC;IAClC,MAAM,EAAEc,QAAQ,EAAEC,OAAAA,EAAS,GAAGP,KAAK;IACnCA,KAAK,CAACH,IAAI,CAACW,SAAS,OAAGlB,mBAAY,EAACM,iBAAiB,CAACC,IAAI,EAAEI,oBAAoB,EAAEM,OAAO,KAAK,OAAO,IAAIL,WAAW,CAACL,IAAI,EAAES,QAAQ,IAAIF,eAAe,CAACK,IAAI,EAAEH,QAAQ,IAAIH,aAAa,CAACG,QAAQ,EAAEN,KAAK,CAACH,IAAI,CAACW,SAAS,CAAC;IACtN,IAAIR,KAAK,CAACF,IAAI,EAAE;QACZE,KAAK,CAACF,IAAI,CAACU,SAAS,OAAGlB,mBAAY,EAACM,iBAAiB,CAACE,IAAI,EAAEO,UAAU,CAACI,IAAI,EAAEH,QAAQ,IAAID,UAAU,CAACC,QAAQ,EAAEN,KAAK,CAACF,IAAI,CAACU,SAAS,CAAC;IACvI;IACA,OAAOR,KAAK;AAChB,CAAC"}
1
+ {"version":3,"sources":["useNavItemStyles.styles.js"],"sourcesContent":["'use client';\nimport { mergeClasses } from '@griffel/react';\nimport { useContentStyles, useIconStyles, useIndicatorStyles, useRootDefaultClassName, useSmallStyles } from '../sharedNavStyles.styles';\nexport const navItemClassNames = {\n root: 'fui-NavItem',\n icon: 'fui-NavItem__icon'\n};\n/**\n * Apply styling to the NavItem slots based on the state\n */ export const useNavItemStyles_unstable = (state)=>{\n const rootDefaultClassName = useRootDefaultClassName();\n const smallStyles = useSmallStyles();\n const contentStyles = useContentStyles();\n const indicatorStyles = useIndicatorStyles();\n const iconStyles = useIconStyles();\n const { selected, density } = state;\n // eslint-disable-next-line react-hooks/immutability\n state.root.className = mergeClasses(navItemClassNames.root, rootDefaultClassName, density === 'small' && smallStyles.root, selected && indicatorStyles.base, selected && contentStyles.selected, state.root.className);\n if (state.icon) {\n // eslint-disable-next-line react-hooks/immutability\n state.icon.className = mergeClasses(navItemClassNames.icon, iconStyles.base, selected && iconStyles.selected, state.icon.className);\n }\n return state;\n};\n"],"names":["mergeClasses","useContentStyles","useIconStyles","useIndicatorStyles","useRootDefaultClassName","useSmallStyles","navItemClassNames","root","icon","useNavItemStyles_unstable","state","rootDefaultClassName","smallStyles","contentStyles","indicatorStyles","iconStyles","selected","density","className","base"],"mappings":"AAAA,YAAY;;;;;;;;;;;;IAGCM,iBAAiB;;;IAMbG,yBAAyB;;;;uBARb,gBAAgB;uCACgE,2BAA2B;AACjI,0BAA0B;IAC7BF,IAAI,EAAE,aAAa;IACnBC,IAAI,EAAE;AACV,CAAC;AAGU,mCAAmCE,KAAK,IAAG;IAClD,MAAMC,oBAAoB,OAAGP,8CAAuB,CAAC,CAAC;IACtD,MAAMQ,WAAW,OAAGP,qCAAc,CAAC,CAAC;IACpC,MAAMQ,aAAa,OAAGZ,uCAAgB,CAAC,CAAC;IACxC,MAAMa,eAAe,GAAGX,6CAAkB,CAAC,CAAC;IAC5C,MAAMY,UAAU,OAAGb,oCAAa,CAAC,CAAC;IAClC,MAAM,EAAEc,QAAQ,EAAEC,OAAAA,EAAS,GAAGP,KAAK;IACnC,oDAAA;IACAA,KAAK,CAACH,IAAI,CAACW,SAAS,OAAGlB,mBAAY,EAACM,iBAAiB,CAACC,IAAI,EAAEI,oBAAoB,EAAEM,OAAO,KAAK,OAAO,IAAIL,WAAW,CAACL,IAAI,EAAES,QAAQ,IAAIF,eAAe,CAACK,IAAI,EAAEH,QAAQ,IAAIH,aAAa,CAACG,QAAQ,EAAEN,KAAK,CAACH,IAAI,CAACW,SAAS,CAAC;IACtN,IAAIR,KAAK,CAACF,IAAI,EAAE;QACZ,oDAAA;QACAE,KAAK,CAACF,IAAI,CAACU,SAAS,OAAGlB,mBAAY,EAACM,iBAAiB,CAACE,IAAI,EAAEO,UAAU,CAACI,IAAI,EAAEH,QAAQ,IAAID,UAAU,CAACC,QAAQ,EAAEN,KAAK,CAACF,IAAI,CAACU,SAAS,CAAC;IACvI;IACA,OAAOR,KAAK;AAChB,CAAC"}
@@ -24,15 +24,16 @@ const navItemClassNames = {
24
24
  icon: 'fui-NavItem__icon'
25
25
  };
26
26
  const useNavItemStyles_unstable = (state)=>{
27
- 'use no memo';
28
27
  const rootDefaultClassName = (0, _sharedNavStylesstyles.useRootDefaultClassName)();
29
28
  const smallStyles = (0, _sharedNavStylesstyles.useSmallStyles)();
30
29
  const contentStyles = (0, _sharedNavStylesstyles.useContentStyles)();
31
30
  const indicatorStyles = (0, _sharedNavStylesstyles.useIndicatorStyles)();
32
31
  const iconStyles = (0, _sharedNavStylesstyles.useIconStyles)();
33
32
  const { selected, density } = state;
33
+ // eslint-disable-next-line react-hooks/immutability
34
34
  state.root.className = (0, _react.mergeClasses)(navItemClassNames.root, rootDefaultClassName, density === 'small' && smallStyles.root, selected && indicatorStyles.base, selected && contentStyles.selected, state.root.className);
35
35
  if (state.icon) {
36
+ // eslint-disable-next-line react-hooks/immutability
36
37
  state.icon.className = (0, _react.mergeClasses)(navItemClassNames.icon, iconStyles.base, selected && iconStyles.selected, state.icon.className);
37
38
  }
38
39
  return state;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/NavItem/useNavItemStyles.styles.ts"],"sourcesContent":["'use client';\n\nimport { mergeClasses } from '@griffel/react';\nimport {\n useContentStyles,\n useIconStyles,\n useIndicatorStyles,\n useRootDefaultClassName,\n useSmallStyles,\n} from '../sharedNavStyles.styles';\n\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport type { NavItemSlots, NavItemState } from './NavItem.types';\nexport const navItemClassNames: SlotClassNames<NavItemSlots> = {\n root: 'fui-NavItem',\n icon: 'fui-NavItem__icon',\n};\n\n/**\n * Apply styling to the NavItem slots based on the state\n */\nexport const useNavItemStyles_unstable = (state: NavItemState): NavItemState => {\n 'use no memo';\n\n const rootDefaultClassName = useRootDefaultClassName();\n const smallStyles = useSmallStyles();\n const contentStyles = useContentStyles();\n const indicatorStyles = useIndicatorStyles();\n const iconStyles = useIconStyles();\n\n const { selected, density } = state;\n\n state.root.className = mergeClasses(\n navItemClassNames.root,\n rootDefaultClassName,\n density === 'small' && smallStyles.root,\n selected && indicatorStyles.base,\n selected && contentStyles.selected,\n state.root.className,\n );\n\n if (state.icon) {\n state.icon.className = mergeClasses(\n navItemClassNames.icon,\n iconStyles.base,\n selected && iconStyles.selected,\n state.icon.className,\n );\n }\n\n return state;\n};\n"],"names":["mergeClasses","useContentStyles","useIconStyles","useIndicatorStyles","useRootDefaultClassName","useSmallStyles","navItemClassNames","root","icon","useNavItemStyles_unstable","state","rootDefaultClassName","smallStyles","contentStyles","indicatorStyles","iconStyles","selected","density","className","base"],"mappings":"AAAA;;;;;;;;;;;;IAaaM,iBAAAA;;;6BAQAG;;;;uBAnBgB,iBAAiB;uCAOvC,4BAA4B;AAI5B,0BAAwD;IAC7DF,MAAM;IACNC,MAAM;AACR,EAAE;AAKK,MAAMC,4BAA4B,CAACC;IACxC;IAEA,MAAMC,2BAAuBP,8CAAAA;IAC7B,MAAMQ,kBAAcP,qCAAAA;IACpB,MAAMQ,oBAAgBZ,uCAAAA;IACtB,MAAMa,sBAAkBX,yCAAAA;IACxB,MAAMY,iBAAab,oCAAAA;IAEnB,MAAM,EAAEc,QAAQ,EAAEC,OAAO,EAAE,GAAGP;IAE9BA,MAAMH,IAAI,CAACW,SAAS,OAAGlB,mBAAAA,EACrBM,kBAAkBC,IAAI,EACtBI,sBACAM,YAAY,WAAWL,YAAYL,IAAI,EACvCS,YAAYF,gBAAgBK,IAAI,EAChCH,YAAYH,cAAcG,QAAQ,EAClCN,MAAMH,IAAI,CAACW,SAAS;IAGtB,IAAIR,MAAMF,IAAI,EAAE;QACdE,MAAMF,IAAI,CAACU,SAAS,OAAGlB,mBAAAA,EACrBM,kBAAkBE,IAAI,EACtBO,WAAWI,IAAI,EACfH,YAAYD,WAAWC,QAAQ,EAC/BN,MAAMF,IAAI,CAACU,SAAS;IAExB;IAEA,OAAOR;AACT,EAAE"}
1
+ {"version":3,"sources":["../src/components/NavItem/useNavItemStyles.styles.ts"],"sourcesContent":["'use client';\n\nimport { mergeClasses } from '@griffel/react';\nimport {\n useContentStyles,\n useIconStyles,\n useIndicatorStyles,\n useRootDefaultClassName,\n useSmallStyles,\n} from '../sharedNavStyles.styles';\n\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport type { NavItemSlots, NavItemState } from './NavItem.types';\nexport const navItemClassNames: SlotClassNames<NavItemSlots> = {\n root: 'fui-NavItem',\n icon: 'fui-NavItem__icon',\n};\n\n/**\n * Apply styling to the NavItem slots based on the state\n */\nexport const useNavItemStyles_unstable = (state: NavItemState): NavItemState => {\n const rootDefaultClassName = useRootDefaultClassName();\n const smallStyles = useSmallStyles();\n const contentStyles = useContentStyles();\n const indicatorStyles = useIndicatorStyles();\n const iconStyles = useIconStyles();\n\n const { selected, density } = state;\n\n // eslint-disable-next-line react-hooks/immutability\n state.root.className = mergeClasses(\n navItemClassNames.root,\n rootDefaultClassName,\n density === 'small' && smallStyles.root,\n selected && indicatorStyles.base,\n selected && contentStyles.selected,\n state.root.className,\n );\n\n if (state.icon) {\n // eslint-disable-next-line react-hooks/immutability\n state.icon.className = mergeClasses(\n navItemClassNames.icon,\n iconStyles.base,\n selected && iconStyles.selected,\n state.icon.className,\n );\n }\n\n return state;\n};\n"],"names":["mergeClasses","useContentStyles","useIconStyles","useIndicatorStyles","useRootDefaultClassName","useSmallStyles","navItemClassNames","root","icon","useNavItemStyles_unstable","state","rootDefaultClassName","smallStyles","contentStyles","indicatorStyles","iconStyles","selected","density","className","base"],"mappings":"AAAA;;;;;;;;;;;;IAaaM,iBAAAA;;;IAQAG,yBAAAA;;;;uBAnBgB,iBAAiB;uCAOvC,4BAA4B;AAI5B,0BAAwD;IAC7DF,MAAM;IACNC,MAAM;AACR,EAAE;AAKK,kCAAkC,CAACE;IACxC,MAAMC,2BAAuBP,8CAAAA;IAC7B,MAAMQ,kBAAcP,qCAAAA;IACpB,MAAMQ,oBAAgBZ,uCAAAA;IACtB,MAAMa,kBAAkBX,6CAAAA;IACxB,MAAMY,iBAAab,oCAAAA;IAEnB,MAAM,EAAEc,QAAQ,EAAEC,OAAO,EAAE,GAAGP;IAE9B,oDAAoD;IACpDA,MAAMH,IAAI,CAACW,SAAS,OAAGlB,mBAAAA,EACrBM,kBAAkBC,IAAI,EACtBI,sBACAM,YAAY,WAAWL,YAAYL,IAAI,EACvCS,YAAYF,gBAAgBK,IAAI,EAChCH,YAAYH,cAAcG,QAAQ,EAClCN,MAAMH,IAAI,CAACW,SAAS;IAGtB,IAAIR,MAAMF,IAAI,EAAE;QACd,oDAAoD;QACpDE,MAAMF,IAAI,CAACU,SAAS,OAAGlB,mBAAAA,EACrBM,kBAAkBE,IAAI,EACtBO,WAAWI,IAAI,EACfH,YAAYD,WAAWC,QAAQ,EAC/BN,MAAMF,IAAI,CAACU,SAAS;IAExB;IAEA,OAAOR;AACT,EAAE"}
@@ -50,8 +50,8 @@ const navSectionHeaderClassNames = {
50
50
  ]
51
51
  });
52
52
  const useNavSectionHeaderStyles_unstable = (state)=>{
53
- 'use no memo';
54
53
  const styles = useStyles();
54
+ // eslint-disable-next-line react-hooks/immutability
55
55
  state.root.className = (0, _react.mergeClasses)(navSectionHeaderClassNames.root, styles.root, state.root.className);
56
56
  return state;
57
57
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["useNavSectionHeaderStyles.styles.js"],"sourcesContent":["'use client';\nimport { makeStyles, mergeClasses } from '@griffel/react';\nimport { typographyStyles } from '@fluentui/react-theme';\nexport const navSectionHeaderClassNames = {\n root: 'fui-NavSectionHeader'\n};\n/**\n * Styles for the root slot\n */ const useStyles = makeStyles({\n root: {\n marginInlineStart: `10px`,\n marginBlock: '8px',\n ...typographyStyles.caption1Strong\n }\n});\n/**\n * Apply styling to the NavSectionHeader slots based on the state\n */ export const useNavSectionHeaderStyles_unstable = (state)=>{\n 'use no memo';\n const styles = useStyles();\n state.root.className = mergeClasses(navSectionHeaderClassNames.root, styles.root, state.root.className);\n return state;\n};\n"],"names":["__styles","mergeClasses","typographyStyles","navSectionHeaderClassNames","root","useStyles","Jyy4pa","Bo78w4l","Cgygva","yil37a","Bahqtrf","Be2twd7","Bhrd7zp","Bg96gwp","d","p","useNavSectionHeaderStyles_unstable","state","styles","className"],"mappings":"AAAA,YAAY;;;;;;;;;;;;IAGCG,0BAA0B;;;IActBa,kCAAkC;;;;uBAhBV,gBAAgB;AAElD,mCAAmC;IACtCZ,IAAI,EAAE;AACV,CAAC;AACD;;CAEA,GAAI,MAAMC,SAAS,GAAA,WAAA,OAAGL,eAAA,EAAA;IAAAI,IAAA,EAAA;QAAAE,MAAA,EAAA;QAAAC,OAAA,EAAA;QAAAC,MAAA,EAAA;QAAAC,MAAA,EAAA;QAAAC,OAAA,EAAA;QAAAC,OAAA,EAAA;QAAAC,OAAA,EAAA;QAAAC,OAAA,EAAA;IAAA;AAAA,GAAA;IAAAC,CAAA,EAAA;QAAA;QAAA;YAAA;YAAA;gBAAAC,CAAA,EAAA,CAAA;YAAA;SAAA;QAAA;QAAA;QAAA;QAAA;KAAA;AAAA,CAMrB,CAAC;AAGS,4CAA4CE,KAAK,IAAG;IAC3D,aAAa;IACb,MAAMC,MAAM,GAAGb,SAAS,CAAC,CAAC;IAC1BY,KAAK,CAACb,IAAI,CAACe,SAAS,OAAGlB,mBAAY,EAACE,0BAA0B,CAACC,IAAI,EAAEc,MAAM,CAACd,IAAI,EAAEa,KAAK,CAACb,IAAI,CAACe,SAAS,CAAC;IACvG,OAAOF,KAAK;AAChB,CAAC"}
1
+ {"version":3,"sources":["useNavSectionHeaderStyles.styles.js"],"sourcesContent":["'use client';\nimport { makeStyles, mergeClasses } from '@griffel/react';\nimport { typographyStyles } from '@fluentui/react-theme';\nexport const navSectionHeaderClassNames = {\n root: 'fui-NavSectionHeader'\n};\n/**\n * Styles for the root slot\n */ const useStyles = makeStyles({\n root: {\n marginInlineStart: `10px`,\n marginBlock: '8px',\n ...typographyStyles.caption1Strong\n }\n});\n/**\n * Apply styling to the NavSectionHeader slots based on the state\n */ export const useNavSectionHeaderStyles_unstable = (state)=>{\n const styles = useStyles();\n // eslint-disable-next-line react-hooks/immutability\n state.root.className = mergeClasses(navSectionHeaderClassNames.root, styles.root, state.root.className);\n return state;\n};\n"],"names":["__styles","mergeClasses","typographyStyles","navSectionHeaderClassNames","root","useStyles","Jyy4pa","Bo78w4l","Cgygva","yil37a","Bahqtrf","Be2twd7","Bhrd7zp","Bg96gwp","d","p","useNavSectionHeaderStyles_unstable","state","styles","className"],"mappings":"AAAA,YAAY;;;;;;;;;;;;IAGCG,0BAA0B;;;IActBa,kCAAkC;;;;uBAhBV,gBAAgB;AAElD,mCAAmC;IACtCZ,IAAI,EAAE;AACV,CAAC;AACD;;CAEA,GAAI,MAAMC,SAAS,GAAA,WAAA,OAAGL,eAAA,EAAA;IAAAI,IAAA,EAAA;QAAAE,MAAA,EAAA;QAAAC,OAAA,EAAA;QAAAC,MAAA,EAAA;QAAAC,MAAA,EAAA;QAAAC,OAAA,EAAA;QAAAC,OAAA,EAAA;QAAAC,OAAA,EAAA;QAAAC,OAAA,EAAA;IAAA;AAAA,GAAA;IAAAC,CAAA,EAAA;QAAA;QAAA;YAAA;YAAA;gBAAAC,CAAA,EAAA,CAAA;YAAA;SAAA;QAAA;QAAA;QAAA;QAAA;KAAA;AAAA,CAMrB,CAAC;AAGS,4CAA4CE,KAAK,IAAG;IAC3D,MAAMC,MAAM,GAAGb,SAAS,CAAC,CAAC;IAC1B,oDAAA;IACAY,KAAK,CAACb,IAAI,CAACe,SAAS,OAAGlB,mBAAY,EAACE,0BAA0B,CAACC,IAAI,EAAEc,MAAM,CAACd,IAAI,EAAEa,KAAK,CAACb,IAAI,CAACe,SAAS,CAAC;IACvG,OAAOF,KAAK;AAChB,CAAC"}
@@ -32,8 +32,8 @@ const navSectionHeaderClassNames = {
32
32
  }
33
33
  });
34
34
  const useNavSectionHeaderStyles_unstable = (state)=>{
35
- 'use no memo';
36
35
  const styles = useStyles();
36
+ // eslint-disable-next-line react-hooks/immutability
37
37
  state.root.className = (0, _react.mergeClasses)(navSectionHeaderClassNames.root, styles.root, state.root.className);
38
38
  return state;
39
39
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/NavSectionHeader/useNavSectionHeaderStyles.styles.ts"],"sourcesContent":["'use client';\n\nimport { makeStyles, mergeClasses } from '@griffel/react';\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport type { NavSectionHeaderSlots, NavSectionHeaderState } from './NavSectionHeader.types';\nimport { typographyStyles } from '@fluentui/react-theme';\n\nexport const navSectionHeaderClassNames: SlotClassNames<NavSectionHeaderSlots> = {\n root: 'fui-NavSectionHeader',\n};\n\n/**\n * Styles for the root slot\n */\nconst useStyles = makeStyles({\n root: {\n marginInlineStart: `10px`,\n marginBlock: '8px',\n ...typographyStyles.caption1Strong,\n },\n});\n\n/**\n * Apply styling to the NavSectionHeader slots based on the state\n */\nexport const useNavSectionHeaderStyles_unstable = (state: NavSectionHeaderState): NavSectionHeaderState => {\n 'use no memo';\n\n const styles = useStyles();\n state.root.className = mergeClasses(navSectionHeaderClassNames.root, styles.root, state.root.className);\n\n return state;\n};\n"],"names":["makeStyles","mergeClasses","typographyStyles","navSectionHeaderClassNames","root","useStyles","marginInlineStart","marginBlock","caption1Strong","useNavSectionHeaderStyles_unstable","state","styles","className"],"mappings":"AAAA;;;;;;;;;;;;IAOaG,0BAAAA;;;IAkBAM,kCAAAA;;;;uBAvB4B,iBAAiB;4BAGzB,wBAAwB;AAElD,mCAA0E;IAC/EL,MAAM;AACR,EAAE;AAEF;;CAEC,GACD,MAAMC,YAAYL,qBAAAA,EAAW;IAC3BI,MAAM;QACJE,mBAAmB,CAAC,IAAI,CAAC;QACzBC,aAAa;QACb,GAAGL,4BAAAA,CAAiBM,cAAc;IACpC;AACF;AAKO,2CAA2C,CAACE;IACjD;IAEA,MAAMC,SAASN;IACfK,MAAMN,IAAI,CAACQ,SAAS,OAAGX,mBAAAA,EAAaE,2BAA2BC,IAAI,EAAEO,OAAOP,IAAI,EAAEM,MAAMN,IAAI,CAACQ,SAAS;IAEtG,OAAOF;AACT,EAAE"}
1
+ {"version":3,"sources":["../src/components/NavSectionHeader/useNavSectionHeaderStyles.styles.ts"],"sourcesContent":["'use client';\n\nimport { makeStyles, mergeClasses } from '@griffel/react';\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport type { NavSectionHeaderSlots, NavSectionHeaderState } from './NavSectionHeader.types';\nimport { typographyStyles } from '@fluentui/react-theme';\n\nexport const navSectionHeaderClassNames: SlotClassNames<NavSectionHeaderSlots> = {\n root: 'fui-NavSectionHeader',\n};\n\n/**\n * Styles for the root slot\n */\nconst useStyles = makeStyles({\n root: {\n marginInlineStart: `10px`,\n marginBlock: '8px',\n ...typographyStyles.caption1Strong,\n },\n});\n\n/**\n * Apply styling to the NavSectionHeader slots based on the state\n */\nexport const useNavSectionHeaderStyles_unstable = (state: NavSectionHeaderState): NavSectionHeaderState => {\n const styles = useStyles();\n // eslint-disable-next-line react-hooks/immutability\n state.root.className = mergeClasses(navSectionHeaderClassNames.root, styles.root, state.root.className);\n\n return state;\n};\n"],"names":["makeStyles","mergeClasses","typographyStyles","navSectionHeaderClassNames","root","useStyles","marginInlineStart","marginBlock","caption1Strong","useNavSectionHeaderStyles_unstable","state","styles","className"],"mappings":"AAAA;;;;;;;;;;;;IAOaG,0BAAAA;;;IAkBAM,kCAAAA;;;;uBAvB4B,iBAAiB;4BAGzB,wBAAwB;AAElD,mCAA0E;IAC/EL,MAAM;AACR,EAAE;AAEF;;CAEC,GACD,MAAMC,YAAYL,qBAAAA,EAAW;IAC3BI,MAAM;QACJE,mBAAmB,CAAC,IAAI,CAAC;QACzBC,aAAa;QACb,GAAGL,4BAAAA,CAAiBM,cAAc;IACpC;AACF;AAKO,2CAA2C,CAACE;IACjD,MAAMC,SAASN;IACf,oDAAoD;IACpDK,MAAMN,IAAI,CAACQ,SAAS,OAAGX,mBAAAA,EAAaE,2BAA2BC,IAAI,EAAEO,OAAOP,IAAI,EAAEM,MAAMN,IAAI,CAACQ,SAAS;IAEtG,OAAOF;AACT,EAAE"}
@@ -1,6 +1,4 @@
1
- /**
2
- * State used in rendering NavSubItem
3
- */ "use strict";
1
+ "use strict";
4
2
  Object.defineProperty(exports, "__esModule", {
5
3
  value: true
6
4
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/NavSubItem/NavSubItem.types.ts"],"sourcesContent":["import type { NavItemValue } from '../NavContext.types';\n\nimport type { ARIAButtonSlotProps } from '@fluentui/react-aria';\nimport type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\nimport type { NavDensity } from '../Nav/Nav.types';\n\nexport type NavSubItemSlots = {\n root: NonNullable<Slot<ARIAButtonSlotProps<'a'>>>;\n};\n\n/**\n * NavSubItem Props\n */\nexport type NavSubItemProps = ComponentProps<NavSubItemSlots> & {\n href?: string;\n /**\n * The value that identifies this NavSubItem when selected.\n */\n value: NavItemValue;\n};\n\n/**\n * State used in rendering NavSubItem\n */\nexport type NavSubItemState = ComponentState<NavSubItemSlots> &\n Pick<NavSubItemProps, 'value'> & {\n /**\n * If this NavSubItem is selected\n */\n selected: boolean;\n /**\n * The density of the NavItem\n *\n * @default 'medium'\n */\n density: NavDensity;\n };\n"],"names":[],"mappings":"AAqBA;;CAEC,GACD,WAYI"}
1
+ {"version":3,"sources":["../src/components/NavSubItem/NavSubItem.types.ts"],"sourcesContent":["import type { NavItemValue } from '../NavContext.types';\n\nimport type { ARIAButtonSlotProps } from '@fluentui/react-aria';\nimport type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\nimport type { NavDensity } from '../Nav/Nav.types';\n\nexport type NavSubItemSlots = {\n root: NonNullable<Slot<ARIAButtonSlotProps<'a'>>>;\n};\n\n/**\n * NavSubItem Props\n */\nexport type NavSubItemProps = ComponentProps<NavSubItemSlots> & {\n href?: string;\n /**\n * The value that identifies this NavSubItem when selected.\n */\n value: NavItemValue;\n};\n\nexport type NavSubItemBaseProps = NavSubItemProps;\n\n/**\n * State used in rendering NavSubItem\n */\nexport type NavSubItemState = ComponentState<NavSubItemSlots> &\n Pick<NavSubItemProps, 'value'> & {\n /**\n * If this NavSubItem is selected\n */\n selected: boolean;\n /**\n * The density of the NavItem\n *\n * @default 'medium'\n */\n density: NavDensity;\n };\n\nexport type NavSubItemBaseState = Omit<NavSubItemState, 'density'>;\n"],"names":[],"mappings":""}
@@ -18,6 +18,9 @@ _export(exports, {
18
18
  renderNavSubItem_unstable: function() {
19
19
  return _renderNavSubItem.renderNavSubItem_unstable;
20
20
  },
21
+ useNavSubItemBase_unstable: function() {
22
+ return _useNavSubItem.useNavSubItemBase_unstable;
23
+ },
21
24
  useNavSubItemStyles_unstable: function() {
22
25
  return _useNavSubItemStylesstyles.useNavSubItemStyles_unstable;
23
26
  },
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/NavSubItem/index.ts"],"sourcesContent":["export { NavSubItem } from './NavSubItem';\nexport type { NavSubItemSlots, NavSubItemProps, NavSubItemState } from './NavSubItem.types';\nexport { renderNavSubItem_unstable } from './renderNavSubItem';\nexport { useNavSubItem_unstable } from './useNavSubItem';\nexport { useNavSubItemStyles_unstable, navSubItemClassNames } from './useNavSubItemStyles.styles';\n"],"names":["NavSubItem","renderNavSubItem_unstable","useNavSubItem_unstable","useNavSubItemStyles_unstable","navSubItemClassNames"],"mappings":";;;;;;;;;;;;eAASA,sBAAU;;;eAIoBI,+CAAoB;;;eAFlDH,2CAAyB;;;eAEzBE,uDAA4B;;;eAD5BD,qCAAsB;;;4BAHJ,eAAe;kCAEA,qBAAqB;+BACxB,kBAAkB;2CACU,+BAA+B"}
1
+ {"version":3,"sources":["../src/components/NavSubItem/index.ts"],"sourcesContent":["export { NavSubItem } from './NavSubItem';\nexport type {\n NavSubItemSlots,\n NavSubItemProps,\n NavSubItemState,\n NavSubItemBaseProps,\n NavSubItemBaseState,\n} from './NavSubItem.types';\nexport { renderNavSubItem_unstable } from './renderNavSubItem';\nexport { useNavSubItem_unstable, useNavSubItemBase_unstable } from './useNavSubItem';\nexport { useNavSubItemStyles_unstable, navSubItemClassNames } from './useNavSubItemStyles.styles';\n"],"names":["NavSubItem","renderNavSubItem_unstable","useNavSubItem_unstable","useNavSubItemBase_unstable","useNavSubItemStyles_unstable","navSubItemClassNames"],"mappings":";;;;;;;;;;;;eAASA,sBAAU;;;eAUoBK,+CAAoB;;;eAFlDJ,2CAAyB;;;eACDE,yCAA0B;;;eAClDC,uDAA4B;;;eAD5BF,qCAAsB;;;4BATJ,eAAe;kCAQA,qBAAqB;+BACI,kBAAkB;2CAClB,+BAA+B"}
@@ -3,9 +3,17 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- Object.defineProperty(exports, "useNavSubItem_unstable", {
7
- enumerable: true,
8
- get: function() {
6
+ function _export(target, all) {
7
+ for(var name in all)Object.defineProperty(target, name, {
8
+ enumerable: true,
9
+ get: all[name]
10
+ });
11
+ }
12
+ _export(exports, {
13
+ useNavSubItemBase_unstable: function() {
14
+ return useNavSubItemBase_unstable;
15
+ },
16
+ useNavSubItem_unstable: function() {
9
17
  return useNavSubItem_unstable;
10
18
  }
11
19
  });
@@ -16,8 +24,16 @@ const _reactaria = require("@fluentui/react-aria");
16
24
  const _NavContext = require("../NavContext");
17
25
  const _NavCategoryContext = require("../NavCategoryContext");
18
26
  const useNavSubItem_unstable = (props, ref)=>{
27
+ const { density = 'medium' } = (0, _NavContext.useNavContext_unstable)();
28
+ const state = useNavSubItemBase_unstable(props, ref);
29
+ return {
30
+ ...state,
31
+ density
32
+ };
33
+ };
34
+ const useNavSubItemBase_unstable = (props, ref)=>{
19
35
  const { onClick, value: subItemValue, as, href } = props;
20
- const { selectedValue, onRegister, onUnregister, onSelect, density = 'medium' } = (0, _NavContext.useNavContext_unstable)();
36
+ const { selectedValue, onRegister, onUnregister, onSelect } = (0, _NavContext.useNavContext_unstable)();
21
37
  const { value: parentCategoryValue } = (0, _NavCategoryContext.useNavCategoryContext_unstable)();
22
38
  const rootElementType = as || (href ? 'a' : 'button');
23
39
  const selected = selectedValue === subItemValue;
@@ -67,7 +83,6 @@ const useNavSubItem_unstable = (props, ref)=>{
67
83
  },
68
84
  root,
69
85
  selected,
70
- value: subItemValue,
71
- density
86
+ value: subItemValue
72
87
  };
73
88
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/NavSubItem/useNavSubItem.ts"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { getIntrinsicElementProps, slot, useEventCallback, isHTMLElement } from '@fluentui/react-utilities';\nimport { useARIAButtonProps } from '@fluentui/react-aria';\nimport { useNavContext_unstable } from '../NavContext';\nimport { useNavCategoryContext_unstable } from '../NavCategoryContext';\n\nimport type { ARIAButtonSlotProps } from '@fluentui/react-aria';\nimport type { NavSubItemProps, NavSubItemState } from './NavSubItem.types';\n\n/**\n * Create the state required to render NavSubItem.\n *\n * The returned state can be modified with hooks such as useNavSubItemStyles_unstable,\n * before being passed to renderNavSubItem_unstable.\n *\n * @param props - props from this instance of NavSubItem\n * @param ref - reference to root HTMLButtonElement of NavSubItem\n */\nexport const useNavSubItem_unstable = (\n props: NavSubItemProps,\n ref: React.Ref<HTMLButtonElement | HTMLAnchorElement>,\n): NavSubItemState => {\n const { onClick, value: subItemValue, as, href } = props;\n\n const { selectedValue, onRegister, onUnregister, onSelect, density = 'medium' } = useNavContext_unstable();\n\n const { value: parentCategoryValue } = useNavCategoryContext_unstable();\n\n const rootElementType = as || (href ? 'a' : 'button');\n\n const selected = selectedValue === subItemValue;\n\n const innerRef = React.useRef<HTMLElement>(null);\n\n const onNavSubItemClick: ARIAButtonSlotProps<'a'>['onClick'] = useEventCallback(event => {\n onClick?.(event);\n\n if (!event.defaultPrevented && isHTMLElement(event.target)) {\n onSelect(event, { type: 'click', event, value: subItemValue, categoryValue: parentCategoryValue });\n }\n });\n\n const root = slot.always<ARIAButtonSlotProps<'a'>>(\n getIntrinsicElementProps(\n rootElementType,\n useARIAButtonProps(rootElementType, {\n 'aria-current': selected ? 'page' : 'false',\n ...props,\n }),\n ),\n {\n elementType: rootElementType,\n defaultProps: {\n ref: ref as React.Ref<HTMLButtonElement & HTMLAnchorElement>,\n type: rootElementType,\n },\n },\n );\n\n root.onClick = onNavSubItemClick;\n\n React.useEffect(() => {\n onRegister({\n value: subItemValue,\n ref: innerRef,\n });\n\n return () => {\n onUnregister({ value: subItemValue, ref: innerRef });\n };\n }, [onRegister, onUnregister, innerRef, subItemValue]);\n\n return {\n components: {\n root: rootElementType,\n },\n root,\n selected,\n value: subItemValue,\n density,\n };\n};\n"],"names":["React","getIntrinsicElementProps","slot","useEventCallback","isHTMLElement","useARIAButtonProps","useNavContext_unstable","useNavCategoryContext_unstable","useNavSubItem_unstable","props","ref","onClick","value","subItemValue","as","href","selectedValue","onRegister","onUnregister","onSelect","density","parentCategoryValue","rootElementType","selected","innerRef","useRef","onNavSubItemClick","event","defaultPrevented","target","type","categoryValue","root","always","elementType","defaultProps","useEffect","components"],"mappings":"AAAA;;;;;+BAoBaQ;;;;;;;iEAlBU,QAAQ;gCACiD,4BAA4B;2BACzE,uBAAuB;4BACnB,gBAAgB;oCACR,wBAAwB;AAchE,+BAA+B,CACpCC,OACAC;IAEA,MAAM,EAAEC,OAAO,EAAEC,OAAOC,YAAY,EAAEC,EAAE,EAAEC,IAAI,EAAE,GAAGN;IAEnD,MAAM,EAAEO,aAAa,EAAEC,UAAU,EAAEC,YAAY,EAAEC,QAAQ,EAAEC,UAAU,QAAQ,EAAE,OAAGd,kCAAAA;IAElF,MAAM,EAAEM,OAAOS,mBAAmB,EAAE,OAAGd,kDAAAA;IAEvC,MAAMe,kBAAkBR,MAAOC,QAAO,MAAM,QAAA,CAAO;IAEnD,MAAMQ,WAAWP,kBAAkBH;IAEnC,MAAMW,WAAWxB,OAAMyB,MAAM,CAAc;IAE3C,MAAMC,wBAAyDvB,gCAAAA,EAAiBwB,CAAAA;QAC9EhB,YAAAA,QAAAA,YAAAA,KAAAA,IAAAA,KAAAA,IAAAA,QAAUgB;QAEV,IAAI,CAACA,MAAMC,gBAAgB,QAAIxB,6BAAAA,EAAcuB,MAAME,MAAM,GAAG;YAC1DV,SAASQ,OAAO;gBAAEG,MAAM;gBAASH;gBAAOf,OAAOC;gBAAckB,eAAeV;YAAoB;QAClG;IACF;IAEA,MAAMW,OAAO9B,oBAAAA,CAAK+B,MAAM,KACtBhC,wCAAAA,EACEqB,qBACAjB,6BAAAA,EAAmBiB,iBAAiB;QAClC,gBAAgBC,WAAW,SAAS;QACpC,GAAGd,KAAK;IACV,KAEF;QACEyB,aAAaZ;QACba,cAAc;YACZzB,KAAKA;YACLoB,MAAMR;QACR;IACF;IAGFU,KAAKrB,OAAO,GAAGe;IAEf1B,OAAMoC,SAAS,CAAC;QACdnB,WAAW;YACTL,OAAOC;YACPH,KAAKc;QACP;QAEA,OAAO;YACLN,aAAa;gBAAEN,OAAOC;gBAAcH,KAAKc;YAAS;QACpD;IACF,GAAG;QAACP;QAAYC;QAAcM;QAAUX;KAAa;IAErD,OAAO;QACLwB,YAAY;YACVL,MAAMV;QACR;QACAU;QACAT;QACAX,OAAOC;QACPO;IACF;AACF,EAAE"}
1
+ {"version":3,"sources":["../src/components/NavSubItem/useNavSubItem.ts"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { getIntrinsicElementProps, slot, useEventCallback, isHTMLElement } from '@fluentui/react-utilities';\nimport { useARIAButtonProps } from '@fluentui/react-aria';\nimport { useNavContext_unstable } from '../NavContext';\nimport { useNavCategoryContext_unstable } from '../NavCategoryContext';\n\nimport type { ARIAButtonSlotProps } from '@fluentui/react-aria';\nimport type { NavSubItemBaseProps, NavSubItemBaseState, NavSubItemProps, NavSubItemState } from './NavSubItem.types';\n\n/**\n * Create the state required to render NavSubItem.\n *\n * The returned state can be modified with hooks such as useNavSubItemStyles_unstable,\n * before being passed to renderNavSubItem_unstable.\n *\n * @param props - props from this instance of NavSubItem\n * @param ref - reference to root HTMLButtonElement of NavSubItem\n */\nexport const useNavSubItem_unstable = (\n props: NavSubItemProps,\n ref: React.Ref<HTMLButtonElement | HTMLAnchorElement>,\n): NavSubItemState => {\n const { density = 'medium' } = useNavContext_unstable();\n const state = useNavSubItemBase_unstable(props, ref);\n\n return {\n ...state,\n density,\n };\n};\n\n/**\n * Base state used in rendering NavSubItem, excluding any design-related properties such as `density`.\n *\n * @param props - props from this instance of NavSubItem\n * @param ref - reference to root HTMLButtonElement of NavSubItem\n * @returns - The base state of NavSubItem\n */\nexport const useNavSubItemBase_unstable = (\n props: NavSubItemBaseProps,\n ref: React.Ref<HTMLButtonElement | HTMLAnchorElement>,\n): NavSubItemBaseState => {\n const { onClick, value: subItemValue, as, href } = props;\n\n const { selectedValue, onRegister, onUnregister, onSelect } = useNavContext_unstable();\n\n const { value: parentCategoryValue } = useNavCategoryContext_unstable();\n\n const rootElementType = as || (href ? 'a' : 'button');\n\n const selected = selectedValue === subItemValue;\n\n const innerRef = React.useRef<HTMLElement>(null);\n\n const onNavSubItemClick: ARIAButtonSlotProps<'a'>['onClick'] = useEventCallback(event => {\n onClick?.(event);\n\n if (!event.defaultPrevented && isHTMLElement(event.target)) {\n onSelect(event, { type: 'click', event, value: subItemValue, categoryValue: parentCategoryValue });\n }\n });\n\n const root = slot.always<ARIAButtonSlotProps<'a'>>(\n getIntrinsicElementProps(\n rootElementType,\n useARIAButtonProps(rootElementType, {\n 'aria-current': selected ? 'page' : 'false',\n ...props,\n }),\n ),\n {\n elementType: rootElementType,\n defaultProps: {\n ref: ref as React.Ref<HTMLButtonElement & HTMLAnchorElement>,\n type: rootElementType,\n },\n },\n );\n\n root.onClick = onNavSubItemClick;\n\n React.useEffect(() => {\n onRegister({\n value: subItemValue,\n ref: innerRef,\n });\n\n return () => {\n onUnregister({ value: subItemValue, ref: innerRef });\n };\n }, [onRegister, onUnregister, innerRef, subItemValue]);\n\n return {\n components: {\n root: rootElementType,\n },\n root,\n selected,\n value: subItemValue,\n };\n};\n"],"names":["React","getIntrinsicElementProps","slot","useEventCallback","isHTMLElement","useARIAButtonProps","useNavContext_unstable","useNavCategoryContext_unstable","useNavSubItem_unstable","props","ref","density","state","useNavSubItemBase_unstable","onClick","value","subItemValue","as","href","selectedValue","onRegister","onUnregister","onSelect","parentCategoryValue","rootElementType","selected","innerRef","useRef","onNavSubItemClick","event","defaultPrevented","target","type","categoryValue","root","always","elementType","defaultProps","useEffect","components"],"mappings":"AAAA;;;;;;;;;;;;8BAwCaa;eAAAA;;IApBAL,sBAAAA;;;;;iEAlBU,QAAQ;gCACiD,4BAA4B;2BACzE,uBAAuB;4BACnB,gBAAgB;oCACR,wBAAwB;AAchE,+BAA+B,CACpCC,OACAC;IAEA,MAAM,EAAEC,UAAU,QAAQ,EAAE,OAAGL,kCAAAA;IAC/B,MAAMM,QAAQC,2BAA2BJ,OAAOC;IAEhD,OAAO;QACL,GAAGE,KAAK;QACRD;IACF;AACF,EAAE;AASK,mCAAmC,CACxCF,OACAC;IAEA,MAAM,EAAEI,OAAO,EAAEC,OAAOC,YAAY,EAAEC,EAAE,EAAEC,IAAI,EAAE,GAAGT;IAEnD,MAAM,EAAEU,aAAa,EAAEC,UAAU,EAAEC,YAAY,EAAEC,QAAQ,EAAE,OAAGhB,kCAAAA;IAE9D,MAAM,EAAES,OAAOQ,mBAAmB,EAAE,OAAGhB,kDAAAA;IAEvC,MAAMiB,kBAAkBP,MAAOC,CAAAA,OAAO,MAAM,QAAA,CAAO;IAEnD,MAAMO,WAAWN,kBAAkBH;IAEnC,MAAMU,WAAW1B,OAAM2B,MAAM,CAAc;IAE3C,MAAMC,wBAAyDzB,gCAAAA,EAAiB0B,CAAAA;QAC9Ef,YAAAA,QAAAA,YAAAA,KAAAA,IAAAA,KAAAA,IAAAA,QAAUe;QAEV,IAAI,CAACA,MAAMC,gBAAgB,IAAI1B,iCAAAA,EAAcyB,MAAME,MAAM,GAAG;YAC1DT,SAASO,OAAO;gBAAEG,MAAM;gBAASH;gBAAOd,OAAOC;gBAAciB,eAAeV;YAAoB;QAClG;IACF;IAEA,MAAMW,OAAOhC,oBAAAA,CAAKiC,MAAM,KACtBlC,wCAAAA,EACEuB,qBACAnB,6BAAAA,EAAmBmB,iBAAiB;QAClC,gBAAgBC,WAAW,SAAS;QACpC,GAAGhB,KAAK;IACV,KAEF;QACE2B,aAAaZ;QACba,cAAc;YACZ3B,KAAKA;YACLsB,MAAMR;QACR;IACF;IAGFU,KAAKpB,OAAO,GAAGc;IAEf5B,OAAMsC,SAAS,CAAC;QACdlB,WAAW;YACTL,OAAOC;YACPN,KAAKgB;QACP;QAEA,OAAO;YACLL,aAAa;gBAAEN,OAAOC;gBAAcN,KAAKgB;YAAS;QACpD;IACF,GAAG;QAACN;QAAYC;QAAcK;QAAUV;KAAa;IAErD,OAAO;QACLuB,YAAY;YACVL,MAAMV;QACR;QACAU;QACAT;QACAV,OAAOC;IACT;AACF,EAAE"}
@@ -42,7 +42,6 @@ const navSubItemClassNames = {
42
42
  ]
43
43
  });
44
44
  const useNavSubItemStyles_unstable = (state)=>{
45
- 'use no memo';
46
45
  const rootDefaultClassName = (0, _sharedNavStylesstyles.useRootDefaultClassName)();
47
46
  const smallStyles = (0, _sharedNavStylesstyles.useSmallStyles)();
48
47
  const contentStyles = (0, _sharedNavStylesstyles.useContentStyles)();
@@ -50,6 +49,7 @@ const useNavSubItemStyles_unstable = (state)=>{
50
49
  const navSubItemSpecificStyles = useNavSubItemSpecificStyles();
51
50
  const { selected, density } = state;
52
51
  const isSmallDensity = density === 'small';
52
+ // eslint-disable-next-line react-hooks/immutability
53
53
  state.root.className = (0, _react.mergeClasses)(navSubItemClassNames.root, rootDefaultClassName, isSmallDensity && smallStyles.root, isSmallDensity && navSubItemSpecificStyles.smallBase, navSubItemSpecificStyles.base, selected && indicatorStyles.base, selected && contentStyles.selected, selected && navSubItemSpecificStyles.selectedIndicator, state.root.className);
54
54
  return state;
55
55
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["useNavSubItemStyles.styles.js"],"sourcesContent":["'use client';\nimport { makeStyles, mergeClasses } from '@griffel/react';\nimport { navItemTokens, useContentStyles, useIndicatorStyles, useRootDefaultClassName, useSmallStyles } from '../sharedNavStyles.styles';\nexport const navSubItemClassNames = {\n root: 'fui-NavSubItem'\n};\n/**\n * Styles for the content slot (children)\n */ const useNavSubItemSpecificStyles = makeStyles({\n base: {\n paddingInlineStart: '46px'\n },\n smallBase: {\n paddingInlineStart: '40px'\n },\n selectedIndicator: {\n '::after': {\n marginInlineStart: `-${navItemTokens.indicatorOffset + 36}px`\n }\n }\n});\n/**\n * Apply styling to the NavSubItem slots based on the state\n */ export const useNavSubItemStyles_unstable = (state)=>{\n 'use no memo';\n const rootDefaultClassName = useRootDefaultClassName();\n const smallStyles = useSmallStyles();\n const contentStyles = useContentStyles();\n const indicatorStyles = useIndicatorStyles();\n const navSubItemSpecificStyles = useNavSubItemSpecificStyles();\n const { selected, density } = state;\n const isSmallDensity = density === 'small';\n state.root.className = mergeClasses(navSubItemClassNames.root, rootDefaultClassName, isSmallDensity && smallStyles.root, isSmallDensity && navSubItemSpecificStyles.smallBase, navSubItemSpecificStyles.base, selected && indicatorStyles.base, selected && contentStyles.selected, selected && navSubItemSpecificStyles.selectedIndicator, state.root.className);\n return state;\n};\n"],"names":["__styles","mergeClasses","navItemTokens","useContentStyles","useIndicatorStyles","useRootDefaultClassName","useSmallStyles","navSubItemClassNames","root","useNavSubItemSpecificStyles","base","B1hrpyx","smallBase","selectedIndicator","rjyhj6","d","useNavSubItemStyles_unstable","state","rootDefaultClassName","smallStyles","contentStyles","indicatorStyles","navSubItemSpecificStyles","selected","density","isSmallDensity","className"],"mappings":"AAAA,YAAY;;;;;;;;;;;;IAGCO,oBAAoB;;;gCAoBY;eAA5BS;;;uBAtBwB,gBAAgB;uCACoD,2BAA2B;AACjI,6BAA6B;IAChCR,IAAI,EAAE;AACV,CAAC;AACD;;CAEA,GAAI,MAAMC,2BAA2B,GAAA,WAAA,OAAGT,eAAA,EAAA;IAAAU,IAAA,EAAA;QAAAC,OAAA,EAAA;IAAA;IAAAC,SAAA,EAAA;QAAAD,OAAA,EAAA;IAAA;IAAAE,iBAAA,EAAA;QAAAC,MAAA,EAAA;IAAA;AAAA,GAAA;IAAAC,CAAA,EAAA;QAAA;QAAA;QAAA;KAAA;AAAA,CAYvC,CAAC;AAGS,qCAAsCE,KAAK,IAAG;IACrD,aAAa;IACb,MAAMC,oBAAoB,OAAGb,8CAAuB,CAAC,CAAC;IACtD,MAAMc,WAAW,OAAGb,qCAAc,CAAC,CAAC;IACpC,MAAMc,aAAa,OAAGjB,uCAAgB,CAAC,CAAC;IACxC,MAAMkB,eAAe,GAAGjB,6CAAkB,CAAC,CAAC;IAC5C,MAAMkB,wBAAwB,GAAGb,2BAA2B,CAAC,CAAC;IAC9D,MAAM,EAAEc,QAAQ,EAAEC,OAAAA,EAAS,GAAGP,KAAK;IACnC,MAAMQ,cAAc,GAAGD,OAAO,KAAK,OAAO;IAC1CP,KAAK,CAACT,IAAI,CAACkB,SAAS,OAAGzB,mBAAY,EAACM,oBAAoB,CAACC,IAAI,EAAEU,oBAAoB,EAAEO,cAAc,IAAIN,WAAW,CAACX,IAAI,EAAEiB,cAAc,IAAIH,wBAAwB,CAACV,SAAS,EAAEU,wBAAwB,CAACZ,IAAI,EAAEa,QAAQ,IAAIF,eAAe,CAACX,IAAI,EAAEa,QAAQ,IAAIH,aAAa,CAACG,QAAQ,EAAEA,QAAQ,IAAID,wBAAwB,CAACT,iBAAiB,EAAEI,KAAK,CAACT,IAAI,CAACkB,SAAS,CAAC;IACjW,OAAOT,KAAK;AAChB,CAAC"}
1
+ {"version":3,"sources":["useNavSubItemStyles.styles.js"],"sourcesContent":["'use client';\nimport { makeStyles, mergeClasses } from '@griffel/react';\nimport { navItemTokens, useContentStyles, useIndicatorStyles, useRootDefaultClassName, useSmallStyles } from '../sharedNavStyles.styles';\nexport const navSubItemClassNames = {\n root: 'fui-NavSubItem'\n};\n/**\n * Styles for the content slot (children)\n */ const useNavSubItemSpecificStyles = makeStyles({\n base: {\n paddingInlineStart: '46px'\n },\n smallBase: {\n paddingInlineStart: '40px'\n },\n selectedIndicator: {\n '::after': {\n marginInlineStart: `-${navItemTokens.indicatorOffset + 36}px`\n }\n }\n});\n/**\n * Apply styling to the NavSubItem slots based on the state\n */ export const useNavSubItemStyles_unstable = (state)=>{\n const rootDefaultClassName = useRootDefaultClassName();\n const smallStyles = useSmallStyles();\n const contentStyles = useContentStyles();\n const indicatorStyles = useIndicatorStyles();\n const navSubItemSpecificStyles = useNavSubItemSpecificStyles();\n const { selected, density } = state;\n const isSmallDensity = density === 'small';\n // eslint-disable-next-line react-hooks/immutability\n state.root.className = mergeClasses(navSubItemClassNames.root, rootDefaultClassName, isSmallDensity && smallStyles.root, isSmallDensity && navSubItemSpecificStyles.smallBase, navSubItemSpecificStyles.base, selected && indicatorStyles.base, selected && contentStyles.selected, selected && navSubItemSpecificStyles.selectedIndicator, state.root.className);\n return state;\n};\n"],"names":["__styles","mergeClasses","navItemTokens","useContentStyles","useIndicatorStyles","useRootDefaultClassName","useSmallStyles","navSubItemClassNames","root","useNavSubItemSpecificStyles","base","B1hrpyx","smallBase","selectedIndicator","rjyhj6","d","useNavSubItemStyles_unstable","state","rootDefaultClassName","smallStyles","contentStyles","indicatorStyles","navSubItemSpecificStyles","selected","density","isSmallDensity","className"],"mappings":"AAAA,YAAY;;;;;;;;;;;;IAGCO,oBAAoB;;;gCAoBY;eAA5BS;;;uBAtBwB,gBAAgB;uCACoD,2BAA2B;AACjI,6BAA6B;IAChCR,IAAI,EAAE;AACV,CAAC;AACD;;CAEA,GAAI,MAAMC,2BAA2B,GAAA,WAAA,OAAGT,eAAA,EAAA;IAAAU,IAAA,EAAA;QAAAC,OAAA,EAAA;IAAA;IAAAC,SAAA,EAAA;QAAAD,OAAA,EAAA;IAAA;IAAAE,iBAAA,EAAA;QAAAC,MAAA,EAAA;IAAA;AAAA,GAAA;IAAAC,CAAA,EAAA;QAAA;QAAA;QAAA;KAAA;AAAA,CAYvC,CAAC;AAGS,sCAAsCE,KAAK,IAAG;IACrD,MAAMC,oBAAoB,GAAGb,kDAAuB,CAAC,CAAC;IACtD,MAAMc,WAAW,OAAGb,qCAAc,CAAC,CAAC;IACpC,MAAMc,aAAa,OAAGjB,uCAAgB,CAAC,CAAC;IACxC,MAAMkB,eAAe,OAAGjB,yCAAkB,CAAC,CAAC;IAC5C,MAAMkB,wBAAwB,GAAGb,2BAA2B,CAAC,CAAC;IAC9D,MAAM,EAAEc,QAAQ,EAAEC,OAAAA,EAAS,GAAGP,KAAK;IACnC,MAAMQ,cAAc,GAAGD,OAAO,KAAK,OAAO;IAC1C,oDAAA;IACAP,KAAK,CAACT,IAAI,CAACkB,SAAS,OAAGzB,mBAAY,EAACM,oBAAoB,CAACC,IAAI,EAAEU,oBAAoB,EAAEO,cAAc,IAAIN,WAAW,CAACX,IAAI,EAAEiB,cAAc,IAAIH,wBAAwB,CAACV,SAAS,EAAEU,wBAAwB,CAACZ,IAAI,EAAEa,QAAQ,IAAIF,eAAe,CAACX,IAAI,EAAEa,QAAQ,IAAIH,aAAa,CAACG,QAAQ,EAAEA,QAAQ,IAAID,wBAAwB,CAACT,iBAAiB,EAAEI,KAAK,CAACT,IAAI,CAACkB,SAAS,CAAC;IACjW,OAAOT,KAAK;AAChB,CAAC"}
@@ -38,7 +38,6 @@ const navSubItemClassNames = {
38
38
  }
39
39
  });
40
40
  const useNavSubItemStyles_unstable = (state)=>{
41
- 'use no memo';
42
41
  const rootDefaultClassName = (0, _sharedNavStylesstyles.useRootDefaultClassName)();
43
42
  const smallStyles = (0, _sharedNavStylesstyles.useSmallStyles)();
44
43
  const contentStyles = (0, _sharedNavStylesstyles.useContentStyles)();
@@ -46,6 +45,7 @@ const useNavSubItemStyles_unstable = (state)=>{
46
45
  const navSubItemSpecificStyles = useNavSubItemSpecificStyles();
47
46
  const { selected, density } = state;
48
47
  const isSmallDensity = density === 'small';
48
+ // eslint-disable-next-line react-hooks/immutability
49
49
  state.root.className = (0, _react.mergeClasses)(navSubItemClassNames.root, rootDefaultClassName, isSmallDensity && smallStyles.root, isSmallDensity && navSubItemSpecificStyles.smallBase, navSubItemSpecificStyles.base, selected && indicatorStyles.base, selected && contentStyles.selected, selected && navSubItemSpecificStyles.selectedIndicator, state.root.className);
50
50
  return state;
51
51
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/NavSubItem/useNavSubItemStyles.styles.ts"],"sourcesContent":["'use client';\n\nimport { makeStyles, mergeClasses } from '@griffel/react';\nimport {\n navItemTokens,\n useContentStyles,\n useIndicatorStyles,\n useRootDefaultClassName,\n useSmallStyles,\n} from '../sharedNavStyles.styles';\n\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport type { NavSubItemSlots, NavSubItemState } from './NavSubItem.types';\n\nexport const navSubItemClassNames: SlotClassNames<NavSubItemSlots> = {\n root: 'fui-NavSubItem',\n};\n/**\n * Styles for the content slot (children)\n */\nconst useNavSubItemSpecificStyles = makeStyles({\n base: {\n paddingInlineStart: '46px',\n },\n smallBase: {\n paddingInlineStart: '40px',\n },\n selectedIndicator: {\n '::after': {\n marginInlineStart: `-${navItemTokens.indicatorOffset + 36}px`,\n },\n },\n});\n\n/**\n * Apply styling to the NavSubItem slots based on the state\n */\nexport const useNavSubItemStyles_unstable = (state: NavSubItemState): NavSubItemState => {\n 'use no memo';\n\n const rootDefaultClassName = useRootDefaultClassName();\n const smallStyles = useSmallStyles();\n const contentStyles = useContentStyles();\n const indicatorStyles = useIndicatorStyles();\n const navSubItemSpecificStyles = useNavSubItemSpecificStyles();\n\n const { selected, density } = state;\n const isSmallDensity = density === 'small';\n\n state.root.className = mergeClasses(\n navSubItemClassNames.root,\n rootDefaultClassName,\n isSmallDensity && smallStyles.root,\n isSmallDensity && navSubItemSpecificStyles.smallBase,\n navSubItemSpecificStyles.base,\n selected && indicatorStyles.base,\n selected && contentStyles.selected,\n selected && navSubItemSpecificStyles.selectedIndicator,\n state.root.className,\n );\n\n return state;\n};\n"],"names":["makeStyles","mergeClasses","navItemTokens","useContentStyles","useIndicatorStyles","useRootDefaultClassName","useSmallStyles","navSubItemClassNames","root","useNavSubItemSpecificStyles","base","paddingInlineStart","smallBase","selectedIndicator","marginInlineStart","indicatorOffset","useNavSubItemStyles_unstable","state","rootDefaultClassName","smallStyles","contentStyles","indicatorStyles","navSubItemSpecificStyles","selected","density","isSmallDensity","className"],"mappings":"AAAA;;;;;;;;;;;;IAcaO,oBAAAA;;;gCAuBAS;eAAAA;;;uBAnC4B,iBAAiB;uCAOnD,4BAA4B;AAK5B,6BAA8D;IACnER,MAAM;AACR,EAAE;AACF;;CAEC,GACD,MAAMC,kCAA8BT,iBAAAA,EAAW;IAC7CU,MAAM;QACJC,oBAAoB;IACtB;IACAC,WAAW;QACTD,oBAAoB;IACtB;IACAE,mBAAmB;QACjB,WAAW;YACTC,mBAAmB,CAAC,CAAC,EAAEZ,oCAAAA,CAAca,eAAe,GAAG,GAAG,EAAE,CAAC;QAC/D;IACF;AACF;AAKO,qCAAqC,CAACE;IAC3C;IAEA,MAAMC,2BAAuBb,8CAAAA;IAC7B,MAAMc,kBAAcb,qCAAAA;IACpB,MAAMc,oBAAgBjB,uCAAAA;IACtB,MAAMkB,sBAAkBjB,yCAAAA;IACxB,MAAMkB,2BAA2Bb;IAEjC,MAAM,EAAEc,QAAQ,EAAEC,OAAO,EAAE,GAAGP;IAC9B,MAAMQ,iBAAiBD,YAAY;IAEnCP,MAAMT,IAAI,CAACkB,SAAS,OAAGzB,mBAAAA,EACrBM,qBAAqBC,IAAI,EACzBU,sBACAO,kBAAkBN,YAAYX,IAAI,EAClCiB,kBAAkBH,yBAAyBV,SAAS,EACpDU,yBAAyBZ,IAAI,EAC7Ba,YAAYF,gBAAgBX,IAAI,EAChCa,YAAYH,cAAcG,QAAQ,EAClCA,YAAYD,yBAAyBT,iBAAiB,EACtDI,MAAMT,IAAI,CAACkB,SAAS;IAGtB,OAAOT;AACT,EAAE"}
1
+ {"version":3,"sources":["../src/components/NavSubItem/useNavSubItemStyles.styles.ts"],"sourcesContent":["'use client';\n\nimport { makeStyles, mergeClasses } from '@griffel/react';\nimport {\n navItemTokens,\n useContentStyles,\n useIndicatorStyles,\n useRootDefaultClassName,\n useSmallStyles,\n} from '../sharedNavStyles.styles';\n\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport type { NavSubItemSlots, NavSubItemState } from './NavSubItem.types';\n\nexport const navSubItemClassNames: SlotClassNames<NavSubItemSlots> = {\n root: 'fui-NavSubItem',\n};\n/**\n * Styles for the content slot (children)\n */\nconst useNavSubItemSpecificStyles = makeStyles({\n base: {\n paddingInlineStart: '46px',\n },\n smallBase: {\n paddingInlineStart: '40px',\n },\n selectedIndicator: {\n '::after': {\n marginInlineStart: `-${navItemTokens.indicatorOffset + 36}px`,\n },\n },\n});\n\n/**\n * Apply styling to the NavSubItem slots based on the state\n */\nexport const useNavSubItemStyles_unstable = (state: NavSubItemState): NavSubItemState => {\n const rootDefaultClassName = useRootDefaultClassName();\n const smallStyles = useSmallStyles();\n const contentStyles = useContentStyles();\n const indicatorStyles = useIndicatorStyles();\n const navSubItemSpecificStyles = useNavSubItemSpecificStyles();\n\n const { selected, density } = state;\n const isSmallDensity = density === 'small';\n\n // eslint-disable-next-line react-hooks/immutability\n state.root.className = mergeClasses(\n navSubItemClassNames.root,\n rootDefaultClassName,\n isSmallDensity && smallStyles.root,\n isSmallDensity && navSubItemSpecificStyles.smallBase,\n navSubItemSpecificStyles.base,\n selected && indicatorStyles.base,\n selected && contentStyles.selected,\n selected && navSubItemSpecificStyles.selectedIndicator,\n state.root.className,\n );\n\n return state;\n};\n"],"names":["makeStyles","mergeClasses","navItemTokens","useContentStyles","useIndicatorStyles","useRootDefaultClassName","useSmallStyles","navSubItemClassNames","root","useNavSubItemSpecificStyles","base","paddingInlineStart","smallBase","selectedIndicator","marginInlineStart","indicatorOffset","useNavSubItemStyles_unstable","state","rootDefaultClassName","smallStyles","contentStyles","indicatorStyles","navSubItemSpecificStyles","selected","density","isSmallDensity","className"],"mappings":"AAAA;;;;;;;;;;;;IAcaO,oBAAAA;;;gCAuBAS;eAAAA;;;uBAnC4B,iBAAiB;uCAOnD,4BAA4B;AAK5B,6BAA8D;IACnER,MAAM;AACR,EAAE;AACF;;CAEC,GACD,MAAMC,kCAA8BT,iBAAAA,EAAW;IAC7CU,MAAM;QACJC,oBAAoB;IACtB;IACAC,WAAW;QACTD,oBAAoB;IACtB;IACAE,mBAAmB;QACjB,WAAW;YACTC,mBAAmB,CAAC,CAAC,EAAEZ,oCAAAA,CAAca,eAAe,GAAG,GAAG,EAAE,CAAC;QAC/D;IACF;AACF;AAKO,qCAAqC,CAACE;IAC3C,MAAMC,2BAAuBb,8CAAAA;IAC7B,MAAMc,kBAAcb,qCAAAA;IACpB,MAAMc,oBAAgBjB,uCAAAA;IACtB,MAAMkB,sBAAkBjB,yCAAAA;IACxB,MAAMkB,2BAA2Bb;IAEjC,MAAM,EAAEc,QAAQ,EAAEC,OAAO,EAAE,GAAGP;IAC9B,MAAMQ,iBAAiBD,YAAY;IAEnC,oDAAoD;IACpDP,MAAMT,IAAI,CAACkB,SAAS,OAAGzB,mBAAAA,EACrBM,qBAAqBC,IAAI,EACzBU,sBACAO,kBAAkBN,YAAYX,IAAI,EAClCiB,kBAAkBH,yBAAyBV,SAAS,EACpDU,yBAAyBZ,IAAI,EAC7Ba,YAAYF,gBAAgBX,IAAI,EAChCa,YAAYH,cAAcG,QAAQ,EAClCA,YAAYD,yBAAyBT,iBAAiB,EACtDI,MAAMT,IAAI,CAACkB,SAAS;IAGtB,OAAOT;AACT,EAAE"}
@@ -1,6 +1,4 @@
1
- /**
2
- * State used in rendering NavSubItemGroup
3
- */ "use strict";
1
+ "use strict";
4
2
  Object.defineProperty(exports, "__esModule", {
5
3
  value: true
6
4
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/NavSubItemGroup/NavSubItemGroup.types.ts"],"sourcesContent":["import type { PresenceMotionSlotProps } from '@fluentui/react-motion';\nimport type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\nimport type { NavDensity } from '../Nav/Nav.types';\n\n/**\n * Context value for NavSubItemGroup\n */\nexport type NavSubItemGroupCollapseMotionParams = {\n /**\n * The number of items in the NavSubItemGroup\n */\n items?: number;\n\n /**\n * The density of the NavItem\n */\n density?: NavDensity;\n};\n\nexport type NavSubItemGroupSlots = {\n /**\n * The root element\n */\n root: NonNullable<Slot<'div'>>;\n\n /**\n * Collapse motion slot\n */\n collapseMotion?: Slot<PresenceMotionSlotProps<NavSubItemGroupCollapseMotionParams>>;\n};\n\n/**\n * NavSubItemGroup Props\n */\nexport type NavSubItemGroupProps = ComponentProps<NavSubItemGroupSlots>;\n\n/**\n * State used in rendering NavSubItemGroup\n */\nexport type NavSubItemGroupState = ComponentState<NavSubItemGroupSlots> & {\n /**\n * Internal open state, provided by context.\n */\n open: boolean;\n};\n"],"names":[],"mappings":"AAoCA;;CAEC,GACD,WAKE"}
1
+ {"version":3,"sources":["../src/components/NavSubItemGroup/NavSubItemGroup.types.ts"],"sourcesContent":["import type { PresenceMotionSlotProps } from '@fluentui/react-motion';\nimport type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\nimport type { NavDensity } from '../Nav/Nav.types';\n\n/**\n * Context value for NavSubItemGroup\n */\nexport type NavSubItemGroupCollapseMotionParams = {\n /**\n * The number of items in the NavSubItemGroup\n */\n items?: number;\n\n /**\n * The density of the NavItem\n */\n density?: NavDensity;\n};\n\nexport type NavSubItemGroupSlots = {\n /**\n * The root element\n */\n root: NonNullable<Slot<'div'>>;\n\n /**\n * Collapse motion slot\n */\n collapseMotion?: Slot<PresenceMotionSlotProps<NavSubItemGroupCollapseMotionParams>>;\n};\n\nexport type NavSubItemGroupBaseSlots = Omit<NavSubItemGroupSlots, 'collapseMotion'>;\n\n/**\n * NavSubItemGroup Props\n */\nexport type NavSubItemGroupProps = ComponentProps<NavSubItemGroupSlots>;\n\nexport type NavSubItemGroupBaseProps = ComponentProps<NavSubItemGroupBaseSlots>;\n\n/**\n * State used in rendering NavSubItemGroup\n */\nexport type NavSubItemGroupState = ComponentState<NavSubItemGroupSlots> & {\n /**\n * Internal open state, provided by context.\n */\n open: boolean;\n};\n\nexport type NavSubItemGroupBaseState = ComponentState<NavSubItemGroupBaseSlots> & Pick<NavSubItemGroupState, 'open'>;\n"],"names":[],"mappings":""}
@@ -18,6 +18,9 @@ _export(exports, {
18
18
  renderNavSubItemGroup_unstable: function() {
19
19
  return _renderNavSubItemGroup.renderNavSubItemGroup_unstable;
20
20
  },
21
+ useNavSubItemGroupBase_unstable: function() {
22
+ return _useNavSubItemGroup.useNavSubItemGroupBase_unstable;
23
+ },
21
24
  useNavSubItemGroupStyles_unstable: function() {
22
25
  return _useNavSubItemGroupStylesstyles.useNavSubItemGroupStyles_unstable;
23
26
  },
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/NavSubItemGroup/index.ts"],"sourcesContent":["export { NavSubItemGroup } from './NavSubItemGroup';\nexport type { NavSubItemGroupSlots, NavSubItemGroupProps, NavSubItemGroupState } from './NavSubItemGroup.types';\nexport { renderNavSubItemGroup_unstable } from './renderNavSubItemGroup';\nexport { useNavSubItemGroup_unstable } from './useNavSubItemGroup';\nexport { useNavSubItemGroupStyles_unstable, navSubItemGroupClassNames } from './useNavSubItemGroupStyles.styles';\n"],"names":["NavSubItemGroup","renderNavSubItemGroup_unstable","useNavSubItemGroup_unstable","useNavSubItemGroupStyles_unstable","navSubItemGroupClassNames"],"mappings":";;;;;;;;;;;;eAASA,gCAAe;;;eAIoBI,yDAAyB;;;eAF5DH,qDAA8B;;;eAE9BE,iEAAiC;;;eADjCD,+CAA2B;;;iCAHJ,oBAAoB;uCAEL,0BAA0B;oCAC7B,uBAAuB;gDACU,oCAAoC"}
1
+ {"version":3,"sources":["../src/components/NavSubItemGroup/index.ts"],"sourcesContent":["export { NavSubItemGroup } from './NavSubItemGroup';\nexport type {\n NavSubItemGroupSlots,\n NavSubItemGroupProps,\n NavSubItemGroupState,\n NavSubItemGroupBaseSlots,\n NavSubItemGroupBaseProps,\n NavSubItemGroupBaseState,\n} from './NavSubItemGroup.types';\nexport { renderNavSubItemGroup_unstable } from './renderNavSubItemGroup';\nexport { useNavSubItemGroup_unstable, useNavSubItemGroupBase_unstable } from './useNavSubItemGroup';\nexport { useNavSubItemGroupStyles_unstable, navSubItemGroupClassNames } from './useNavSubItemGroupStyles.styles';\n"],"names":["NavSubItemGroup","renderNavSubItemGroup_unstable","useNavSubItemGroup_unstable","useNavSubItemGroupBase_unstable","useNavSubItemGroupStyles_unstable","navSubItemGroupClassNames"],"mappings":";;;;;;;;;;;;eAASA,gCAAe;;;eAWoBK,yDAAyB;;;eAF5DJ,qDAA8B;;;eACDE,mDAA+B;;;eAC5DC,iEAAiC;;;eADjCF,+CAA2B;;;iCAVJ,oBAAoB;uCASL,0BAA0B;oCACI,uBAAuB;gDACvB,oCAAoC"}
@@ -3,9 +3,17 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- Object.defineProperty(exports, "useNavSubItemGroup_unstable", {
7
- enumerable: true,
8
- get: function() {
6
+ function _export(target, all) {
7
+ for(var name in all)Object.defineProperty(target, name, {
8
+ enumerable: true,
9
+ get: all[name]
10
+ });
11
+ }
12
+ _export(exports, {
13
+ useNavSubItemGroupBase_unstable: function() {
14
+ return useNavSubItemGroupBase_unstable;
15
+ },
16
+ useNavSubItemGroup_unstable: function() {
9
17
  return useNavSubItemGroup_unstable;
10
18
  }
11
19
  });
@@ -14,25 +22,35 @@ const _reactmotion = require("@fluentui/react-motion");
14
22
  const _reactmotioncomponentspreview = require("@fluentui/react-motion-components-preview");
15
23
  const _NavCategoryContext = require("../NavCategoryContext");
16
24
  const useNavSubItemGroup_unstable = (props, ref)=>{
25
+ const state = useNavSubItemGroupBase_unstable(props, ref);
26
+ return {
27
+ ...state,
28
+ components: {
29
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
30
+ ...state.components,
31
+ collapseMotion: _reactmotioncomponentspreview.Collapse
32
+ },
33
+ collapseMotion: (0, _reactmotion.presenceMotionSlot)(props.collapseMotion, {
34
+ elementType: _reactmotioncomponentspreview.Collapse,
35
+ defaultProps: {
36
+ visible: state.open,
37
+ unmountOnExit: true
38
+ }
39
+ })
40
+ };
41
+ };
42
+ const useNavSubItemGroupBase_unstable = (props, ref)=>{
17
43
  const { open } = (0, _NavCategoryContext.useNavCategoryContext_unstable)();
18
44
  return {
19
45
  open,
20
46
  components: {
21
- root: 'div',
22
- collapseMotion: _reactmotioncomponentspreview.Collapse
47
+ root: 'div'
23
48
  },
24
49
  root: _reactutilities.slot.always((0, _reactutilities.getIntrinsicElementProps)('div', {
25
50
  ...props,
26
51
  ref
27
52
  }), {
28
53
  elementType: 'div'
29
- }),
30
- collapseMotion: (0, _reactmotion.presenceMotionSlot)(props.collapseMotion, {
31
- elementType: _reactmotioncomponentspreview.Collapse,
32
- defaultProps: {
33
- visible: open,
34
- unmountOnExit: true
35
- }
36
54
  })
37
55
  };
38
56
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/NavSubItemGroup/useNavSubItemGroup.ts"],"sourcesContent":["'use client';\n\nimport type * as React from 'react';\nimport { getIntrinsicElementProps, slot } from '@fluentui/react-utilities';\nimport { presenceMotionSlot } from '@fluentui/react-motion';\nimport { Collapse } from '@fluentui/react-motion-components-preview';\n\nimport type { NavSubItemGroupProps, NavSubItemGroupState } from './NavSubItemGroup.types';\nimport { useNavCategoryContext_unstable } from '../NavCategoryContext';\n\n/**\n * Create the state required to render NavSubItemGroup.\n *\n * The returned state can be modified with hooks such as useNavSubItemGroupStyles_unstable,\n * before being passed to renderNavSubItemGroup_unstable.\n *\n * @param props - props from this instance of NavSubItemGroup\n * @param ref - reference to root HTMLDivElement of NavSubItemGroup\n */\nexport const useNavSubItemGroup_unstable = (\n props: NavSubItemGroupProps,\n ref: React.Ref<HTMLDivElement>,\n): NavSubItemGroupState => {\n const { open } = useNavCategoryContext_unstable();\n\n return {\n open,\n components: {\n root: 'div',\n collapseMotion: Collapse,\n },\n\n root: slot.always(\n getIntrinsicElementProps('div', {\n ...props,\n ref,\n }),\n { elementType: 'div' },\n ),\n\n collapseMotion: presenceMotionSlot(props.collapseMotion, {\n elementType: Collapse,\n defaultProps: {\n visible: open,\n unmountOnExit: true,\n },\n }),\n };\n};\n"],"names":["getIntrinsicElementProps","slot","presenceMotionSlot","Collapse","useNavCategoryContext_unstable","useNavSubItemGroup_unstable","props","ref","open","components","root","collapseMotion","always","elementType","defaultProps","visible","unmountOnExit"],"mappings":"AAAA;;;;;+BAmBaK;;;;;;gCAhBkC,4BAA4B;6BACxC,yBAAyB;8CACnC,4CAA4C;oCAGtB,wBAAwB;AAWhE,oCAAoC,CACzCC,OACAC;IAEA,MAAM,EAAEC,IAAI,EAAE,OAAGJ,kDAAAA;IAEjB,OAAO;QACLI;QACAC,YAAY;YACVC,MAAM;YACNC,gBAAgBR,sCAAAA;QAClB;QAEAO,MAAMT,oBAAAA,CAAKW,MAAM,KACfZ,wCAAAA,EAAyB,OAAO;YAC9B,GAAGM,KAAK;YACRC;QACF,IACA;YAAEM,aAAa;QAAM;QAGvBF,oBAAgBT,+BAAAA,EAAmBI,MAAMK,cAAc,EAAE;YACvDE,aAAaV,sCAAAA;YACbW,cAAc;gBACZC,SAASP;gBACTQ,eAAe;YACjB;QACF;IACF;AACF,EAAE"}
1
+ {"version":3,"sources":["../src/components/NavSubItemGroup/useNavSubItemGroup.ts"],"sourcesContent":["'use client';\n\nimport type * as React from 'react';\nimport { getIntrinsicElementProps, slot } from '@fluentui/react-utilities';\nimport { presenceMotionSlot } from '@fluentui/react-motion';\nimport { Collapse } from '@fluentui/react-motion-components-preview';\n\nimport type {\n NavSubItemGroupBaseProps,\n NavSubItemGroupBaseState,\n NavSubItemGroupProps,\n NavSubItemGroupState,\n} from './NavSubItemGroup.types';\nimport { useNavCategoryContext_unstable } from '../NavCategoryContext';\n\n/**\n * Create the state required to render NavSubItemGroup.\n *\n * The returned state can be modified with hooks such as useNavSubItemGroupStyles_unstable,\n * before being passed to renderNavSubItemGroup_unstable.\n *\n * @param props - props from this instance of NavSubItemGroup\n * @param ref - reference to root HTMLDivElement of NavSubItemGroup\n */\nexport const useNavSubItemGroup_unstable = (\n props: NavSubItemGroupProps,\n ref: React.Ref<HTMLDivElement>,\n): NavSubItemGroupState => {\n const state = useNavSubItemGroupBase_unstable(props, ref);\n\n return {\n ...state,\n components: {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n ...state.components,\n collapseMotion: Collapse,\n },\n collapseMotion: presenceMotionSlot(props.collapseMotion, {\n elementType: Collapse,\n defaultProps: {\n visible: state.open,\n unmountOnExit: true,\n },\n }),\n };\n};\n\n/**\n * The base state used in rendering NavSubItemGroup, excluding any design-related properties such as motion props.\n *\n * @param props - props from this instance of NavSubItemGroup\n * @param ref - reference to root HTMLDivElement of NavSubItemGroup\n * @returns - The base state of NavSubItemGroup\n */\nexport const useNavSubItemGroupBase_unstable = (\n props: NavSubItemGroupBaseProps,\n ref: React.Ref<HTMLDivElement>,\n): NavSubItemGroupBaseState => {\n const { open } = useNavCategoryContext_unstable();\n\n return {\n open,\n components: {\n root: 'div',\n },\n\n root: slot.always(\n getIntrinsicElementProps('div', {\n ...props,\n ref,\n }),\n { elementType: 'div' },\n ),\n };\n};\n"],"names":["getIntrinsicElementProps","slot","presenceMotionSlot","Collapse","useNavCategoryContext_unstable","useNavSubItemGroup_unstable","props","ref","state","useNavSubItemGroupBase_unstable","components","collapseMotion","elementType","defaultProps","visible","open","unmountOnExit","root","always"],"mappings":"AAAA;;;;;;;;;;;;IAsDaS,+BAAAA;;;+BA9BAJ;;;;gCArBkC,4BAA4B;6BACxC,yBAAyB;8CACnC,4CAA4C;oCAQtB,wBAAwB;AAWhE,MAAMA,8BAA8B,CACzCC,OACAC;IAEA,MAAMC,QAAQC,gCAAgCH,OAAOC;IAErD,OAAO;QACL,GAAGC,KAAK;QACRE,YAAY;YACV,4DAA4D;YAC5D,GAAGF,MAAME,UAAU;YACnBC,gBAAgBR,sCAAAA;QAClB;QACAQ,oBAAgBT,+BAAAA,EAAmBI,MAAMK,cAAc,EAAE;YACvDC,aAAaT,sCAAAA;YACbU,cAAc;gBACZC,SAASN,MAAMO,IAAI;gBACnBC,eAAe;YACjB;QACF;IACF;AACF,EAAE;AASK,wCAAwC,CAC7CV,OACAC;IAEA,MAAM,EAAEQ,IAAI,EAAE,OAAGX,kDAAAA;IAEjB,OAAO;QACLW;QACAL,YAAY;YACVO,MAAM;QACR;QAEAA,MAAMhB,oBAAAA,CAAKiB,MAAM,KACflB,wCAAAA,EAAyB,OAAO;YAC9B,GAAGM,KAAK;YACRC;QACF,IACA;YAAEK,aAAa;QAAM;IAEzB;AACF,EAAE"}
@@ -44,8 +44,8 @@ const navSubItemGroupClassNames = {
44
44
  ]
45
45
  });
46
46
  const useNavSubItemGroupStyles_unstable = (state)=>{
47
- 'use no memo';
48
47
  const styles = useStyles();
48
+ // eslint-disable-next-line react-hooks/immutability
49
49
  state.root.className = (0, _react.mergeClasses)(navSubItemGroupClassNames.root, styles.root, state.root.className);
50
50
  return state;
51
51
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["useNavSubItemGroupStyles.styles.js"],"sourcesContent":["'use client';\nimport { makeStyles, mergeClasses } from '@griffel/react';\nexport const navSubItemGroupClassNames = {\n root: 'fui-NavSubItemGroup'\n};\n/**\n * Styles for the root slot\n */ const useStyles = makeStyles({\n root: {\n flexShrink: 0,\n transform: 'translateZ(0)',\n overflow: 'hidden'\n }\n});\n/**\n * Apply styling to the NavSubItemGroup slots based on the state\n */ export const useNavSubItemGroupStyles_unstable = (state)=>{\n 'use no memo';\n const styles = useStyles();\n state.root.className = mergeClasses(navSubItemGroupClassNames.root, styles.root, state.root.className);\n return state;\n};\n"],"names":["__styles","mergeClasses","navSubItemGroupClassNames","root","useStyles","Bnnss6s","Bz10aip","B68tc82","Bmxbyg5","Bpg54ce","d","p","useNavSubItemGroupStyles_unstable","state","styles","className"],"mappings":"AAAA,YAAY;;;;;;;;;;;;IAECE,yBAAyB;;;qCAcY;eAAjCU;;;uBAfwB,gBAAgB;AAClD,kCAAkC;IACrCT,IAAI,EAAE;AACV,CAAC;AACD;;CAEA,GAAI,MAAMC,SAAS,GAAA,WAAA,OAAGJ,eAAA,EAAA;IAAAG,IAAA,EAAA;QAAAE,OAAA,EAAA;QAAAC,OAAA,EAAA;QAAAC,OAAA,EAAA;QAAAC,OAAA,EAAA;QAAAC,OAAA,EAAA;IAAA;AAAA,GAAA;IAAAC,CAAA,EAAA;QAAA;QAAA;QAAA;YAAA;YAAA;gBAAAC,CAAA,EAAA,CAAA;YAAA;SAAA;KAAA;AAAA,CAMrB,CAAC;AAGS,2CAA2CE,KAAK,IAAG;IAC1D,aAAa;IACb,MAAMC,MAAM,GAAGV,SAAS,CAAC,CAAC;IAC1BS,KAAK,CAACV,IAAI,CAACY,SAAS,OAAGd,mBAAY,EAACC,yBAAyB,CAACC,IAAI,EAAEW,MAAM,CAACX,IAAI,EAAEU,KAAK,CAACV,IAAI,CAACY,SAAS,CAAC;IACtG,OAAOF,KAAK;AAChB,CAAC"}
1
+ {"version":3,"sources":["useNavSubItemGroupStyles.styles.js"],"sourcesContent":["'use client';\nimport { makeStyles, mergeClasses } from '@griffel/react';\nexport const navSubItemGroupClassNames = {\n root: 'fui-NavSubItemGroup'\n};\n/**\n * Styles for the root slot\n */ const useStyles = makeStyles({\n root: {\n flexShrink: 0,\n transform: 'translateZ(0)',\n overflow: 'hidden'\n }\n});\n/**\n * Apply styling to the NavSubItemGroup slots based on the state\n */ export const useNavSubItemGroupStyles_unstable = (state)=>{\n const styles = useStyles();\n // eslint-disable-next-line react-hooks/immutability\n state.root.className = mergeClasses(navSubItemGroupClassNames.root, styles.root, state.root.className);\n return state;\n};\n"],"names":["__styles","mergeClasses","navSubItemGroupClassNames","root","useStyles","Bnnss6s","Bz10aip","B68tc82","Bmxbyg5","Bpg54ce","d","p","useNavSubItemGroupStyles_unstable","state","styles","className"],"mappings":"AAAA,YAAY;;;;;;;;;;;;IAECE,yBAAyB;;;qCAcY;eAAjCU;;;uBAfwB,gBAAgB;AAClD,kCAAkC;IACrCT,IAAI,EAAE;AACV,CAAC;AACD;;CAEA,GAAI,MAAMC,SAAS,GAAA,WAAA,OAAGJ,eAAA,EAAA;IAAAG,IAAA,EAAA;QAAAE,OAAA,EAAA;QAAAC,OAAA,EAAA;QAAAC,OAAA,EAAA;QAAAC,OAAA,EAAA;QAAAC,OAAA,EAAA;IAAA;AAAA,GAAA;IAAAC,CAAA,EAAA;QAAA;QAAA;QAAA;YAAA;YAAA;gBAAAC,CAAA,EAAA,CAAA;YAAA;SAAA;KAAA;AAAA,CAMrB,CAAC;AAGS,2CAA2CE,KAAK,IAAG;IAC1D,MAAMC,MAAM,GAAGV,SAAS,CAAC,CAAC;IAC1B,oDAAA;IACAS,KAAK,CAACV,IAAI,CAACY,SAAS,OAAGd,mBAAY,EAACC,yBAAyB,CAACC,IAAI,EAAEW,MAAM,CAACX,IAAI,EAAEU,KAAK,CAACV,IAAI,CAACY,SAAS,CAAC;IACtG,OAAOF,KAAK;AAChB,CAAC"}
@@ -31,8 +31,8 @@ const navSubItemGroupClassNames = {
31
31
  }
32
32
  });
33
33
  const useNavSubItemGroupStyles_unstable = (state)=>{
34
- 'use no memo';
35
34
  const styles = useStyles();
35
+ // eslint-disable-next-line react-hooks/immutability
36
36
  state.root.className = (0, _react.mergeClasses)(navSubItemGroupClassNames.root, styles.root, state.root.className);
37
37
  return state;
38
38
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/NavSubItemGroup/useNavSubItemGroupStyles.styles.ts"],"sourcesContent":["'use client';\n\nimport { makeStyles, mergeClasses } from '@griffel/react';\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport type { NavSubItemGroupSlots, NavSubItemGroupState } from './NavSubItemGroup.types';\n\nexport const navSubItemGroupClassNames: SlotClassNames<Omit<NavSubItemGroupSlots, 'collapseMotion'>> = {\n root: 'fui-NavSubItemGroup',\n};\n\n/**\n * Styles for the root slot\n */\nconst useStyles = makeStyles({\n root: {\n flexShrink: 0,\n transform: 'translateZ(0)',\n overflow: 'hidden',\n },\n});\n\n/**\n * Apply styling to the NavSubItemGroup slots based on the state\n */\nexport const useNavSubItemGroupStyles_unstable = (state: NavSubItemGroupState): NavSubItemGroupState => {\n 'use no memo';\n\n const styles = useStyles();\n\n state.root.className = mergeClasses(navSubItemGroupClassNames.root, styles.root, state.root.className);\n\n return state;\n};\n"],"names":["makeStyles","mergeClasses","navSubItemGroupClassNames","root","useStyles","flexShrink","transform","overflow","useNavSubItemGroupStyles_unstable","state","styles","className"],"mappings":"AAAA;;;;;;;;;;;;6BAMaE;;;qCAkBAM;;;;uBAtB4B,iBAAiB;AAInD,MAAMN,4BAA0F;IACrGC,MAAM;AACR,EAAE;AAEF;;CAEC,GACD,MAAMC,gBAAYJ,iBAAAA,EAAW;IAC3BG,MAAM;QACJE,YAAY;QACZC,WAAW;QACXC,UAAU;IACZ;AACF;AAKO,MAAMC,oCAAoC,CAACC;IAChD;IAEA,MAAMC,SAASN;IAEfK,MAAMN,IAAI,CAACQ,SAAS,OAAGV,mBAAAA,EAAaC,0BAA0BC,IAAI,EAAEO,OAAOP,IAAI,EAAEM,MAAMN,IAAI,CAACQ,SAAS;IAErG,OAAOF;AACT,EAAE"}
1
+ {"version":3,"sources":["../src/components/NavSubItemGroup/useNavSubItemGroupStyles.styles.ts"],"sourcesContent":["'use client';\n\nimport { makeStyles, mergeClasses } from '@griffel/react';\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport type { NavSubItemGroupSlots, NavSubItemGroupState } from './NavSubItemGroup.types';\n\nexport const navSubItemGroupClassNames: SlotClassNames<Omit<NavSubItemGroupSlots, 'collapseMotion'>> = {\n root: 'fui-NavSubItemGroup',\n};\n\n/**\n * Styles for the root slot\n */\nconst useStyles = makeStyles({\n root: {\n flexShrink: 0,\n transform: 'translateZ(0)',\n overflow: 'hidden',\n },\n});\n\n/**\n * Apply styling to the NavSubItemGroup slots based on the state\n */\nexport const useNavSubItemGroupStyles_unstable = (state: NavSubItemGroupState): NavSubItemGroupState => {\n const styles = useStyles();\n\n // eslint-disable-next-line react-hooks/immutability\n state.root.className = mergeClasses(navSubItemGroupClassNames.root, styles.root, state.root.className);\n\n return state;\n};\n"],"names":["makeStyles","mergeClasses","navSubItemGroupClassNames","root","useStyles","flexShrink","transform","overflow","useNavSubItemGroupStyles_unstable","state","styles","className"],"mappings":"AAAA;;;;;;;;;;;;6BAMaE;;;qCAkBAM;;;;uBAtB4B,iBAAiB;AAInD,MAAMN,4BAA0F;IACrGC,MAAM;AACR,EAAE;AAEF;;CAEC,GACD,MAAMC,gBAAYJ,iBAAAA,EAAW;IAC3BG,MAAM;QACJE,YAAY;QACZC,WAAW;QACXC,UAAU;IACZ;AACF;AAKO,MAAMC,oCAAoC,CAACC;IAChD,MAAMC,SAASN;IAEf,oDAAoD;IACpDK,MAAMN,IAAI,CAACQ,SAAS,OAAGV,mBAAAA,EAAaC,0BAA0BC,IAAI,EAAEO,OAAOP,IAAI,EAAEM,MAAMN,IAAI,CAACQ,SAAS;IAErG,OAAOF;AACT,EAAE"}
@@ -180,20 +180,24 @@ const buttonHoverStyles = {
180
180
  ]
181
181
  });
182
182
  const useSplitNavItemStyles_unstable = (state)=>{
183
- 'use no memo';
184
183
  const splitNavItemStyles = useSplitNaveItemStyles();
185
184
  const sharedRootClassNames = (0, _sharedNavStylesstyles.useRootDefaultClassName)();
185
+ // eslint-disable-next-line react-hooks/immutability
186
186
  state.root.className = (0, _react.mergeClasses)(splitNavItemClassNames.root, sharedRootClassNames, splitNavItemStyles.baseRoot, state.root.className);
187
187
  if (state.navItem) {
188
+ // eslint-disable-next-line react-hooks/immutability
188
189
  state.navItem.className = (0, _react.mergeClasses)(splitNavItemClassNames.navItem, splitNavItemStyles.baseNavItem, state.navItem.className);
189
190
  }
190
191
  if (state.actionButton) {
192
+ // eslint-disable-next-line react-hooks/immutability
191
193
  state.actionButton.className = (0, _react.mergeClasses)(splitNavItemClassNames.actionButton, splitNavItemStyles.baseSecondary, splitNavItemStyles.hoverAction, state.density === 'medium' && splitNavItemStyles.baseMedium, state.actionButton.className);
192
194
  }
193
195
  if (state.toggleButton) {
196
+ // eslint-disable-next-line react-hooks/immutability
194
197
  state.toggleButton.className = (0, _react.mergeClasses)(splitNavItemClassNames.toggleButton, splitNavItemStyles.baseSecondary, splitNavItemStyles.hoverAction, state.density === 'medium' && splitNavItemStyles.baseMedium, state.toggleButton.className);
195
198
  }
196
199
  if (state.menuButton) {
200
+ // eslint-disable-next-line react-hooks/immutability
197
201
  state.menuButton.className = (0, _react.mergeClasses)(splitNavItemClassNames.menuButton, splitNavItemStyles.baseSecondary, splitNavItemStyles.hoverAction, state.density === 'medium' && splitNavItemStyles.baseMedium, state.menuButton.className);
198
202
  }
199
203
  return state;