@fluentui/react-menu 9.18.0 → 9.19.0

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 (50) hide show
  1. package/CHANGELOG.md +15 -2
  2. package/lib/components/MenuDivider/useMenuDividerStyles.styles.raw.js +18 -0
  3. package/lib/components/MenuDivider/useMenuDividerStyles.styles.raw.js.map +1 -0
  4. package/lib/components/MenuGroup/useMenuGroupStyles.styles.raw.js +9 -0
  5. package/lib/components/MenuGroup/useMenuGroupStyles.styles.raw.js.map +1 -0
  6. package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.styles.raw.js +23 -0
  7. package/lib/components/MenuGroupHeader/useMenuGroupHeaderStyles.styles.raw.js.map +1 -0
  8. package/lib/components/MenuItem/useMenuItemStyles.styles.raw.js +241 -0
  9. package/lib/components/MenuItem/useMenuItemStyles.styles.raw.js.map +1 -0
  10. package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.styles.raw.js +33 -0
  11. package/lib/components/MenuItemCheckbox/useMenuItemCheckboxStyles.styles.raw.js.map +1 -0
  12. package/lib/components/MenuItemLink/useMenuItemLinkStyles.styles.raw.js +40 -0
  13. package/lib/components/MenuItemLink/useMenuItemLinkStyles.styles.raw.js.map +1 -0
  14. package/lib/components/MenuItemRadio/useMenuItemRadioStyles.styles.raw.js +32 -0
  15. package/lib/components/MenuItemRadio/useMenuItemRadioStyles.styles.raw.js.map +1 -0
  16. package/lib/components/MenuItemSwitch/useMenuItemSwitchStyles.styles.raw.js +117 -0
  17. package/lib/components/MenuItemSwitch/useMenuItemSwitchStyles.styles.raw.js.map +1 -0
  18. package/lib/components/MenuList/useMenuListStyles.styles.raw.js +22 -0
  19. package/lib/components/MenuList/useMenuListStyles.styles.raw.js.map +1 -0
  20. package/lib/components/MenuPopover/useMenuPopoverStyles.styles.raw.js +31 -0
  21. package/lib/components/MenuPopover/useMenuPopoverStyles.styles.raw.js.map +1 -0
  22. package/lib/components/MenuSplitGroup/useMenuSplitGroupStyles.styles.raw.js +42 -0
  23. package/lib/components/MenuSplitGroup/useMenuSplitGroupStyles.styles.raw.js.map +1 -0
  24. package/lib/selectable/useCheckmarkStyles.styles.raw.js +24 -0
  25. package/lib/selectable/useCheckmarkStyles.styles.raw.js.map +1 -0
  26. package/lib-commonjs/components/MenuDivider/useMenuDividerStyles.styles.raw.js +36 -0
  27. package/lib-commonjs/components/MenuDivider/useMenuDividerStyles.styles.raw.js.map +1 -0
  28. package/lib-commonjs/components/MenuGroup/useMenuGroupStyles.styles.raw.js +27 -0
  29. package/lib-commonjs/components/MenuGroup/useMenuGroupStyles.styles.raw.js.map +1 -0
  30. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeaderStyles.styles.raw.js +41 -0
  31. package/lib-commonjs/components/MenuGroupHeader/useMenuGroupHeaderStyles.styles.raw.js.map +1 -0
  32. package/lib-commonjs/components/MenuItem/useMenuItemStyles.styles.raw.js +259 -0
  33. package/lib-commonjs/components/MenuItem/useMenuItemStyles.styles.raw.js.map +1 -0
  34. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckboxStyles.styles.raw.js +51 -0
  35. package/lib-commonjs/components/MenuItemCheckbox/useMenuItemCheckboxStyles.styles.raw.js.map +1 -0
  36. package/lib-commonjs/components/MenuItemLink/useMenuItemLinkStyles.styles.raw.js +56 -0
  37. package/lib-commonjs/components/MenuItemLink/useMenuItemLinkStyles.styles.raw.js.map +1 -0
  38. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadioStyles.styles.raw.js +50 -0
  39. package/lib-commonjs/components/MenuItemRadio/useMenuItemRadioStyles.styles.raw.js.map +1 -0
  40. package/lib-commonjs/components/MenuItemSwitch/useMenuItemSwitchStyles.styles.raw.js +136 -0
  41. package/lib-commonjs/components/MenuItemSwitch/useMenuItemSwitchStyles.styles.raw.js.map +1 -0
  42. package/lib-commonjs/components/MenuList/useMenuListStyles.styles.raw.js +38 -0
  43. package/lib-commonjs/components/MenuList/useMenuListStyles.styles.raw.js.map +1 -0
  44. package/lib-commonjs/components/MenuPopover/useMenuPopoverStyles.styles.raw.js +47 -0
  45. package/lib-commonjs/components/MenuPopover/useMenuPopoverStyles.styles.raw.js.map +1 -0
  46. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroupStyles.styles.raw.js +61 -0
  47. package/lib-commonjs/components/MenuSplitGroup/useMenuSplitGroupStyles.styles.raw.js.map +1 -0
  48. package/lib-commonjs/selectable/useCheckmarkStyles.styles.raw.js +30 -0
  49. package/lib-commonjs/selectable/useCheckmarkStyles.styles.raw.js.map +1 -0
  50. package/package.json +5 -5
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ menuItemCheckboxClassNames: function() {
13
+ return menuItemCheckboxClassNames;
14
+ },
15
+ useMenuItemCheckboxStyles_unstable: function() {
16
+ return useMenuItemCheckboxStyles_unstable;
17
+ }
18
+ });
19
+ const _react = require("@griffel/react");
20
+ const _index = require("../../selectable/index");
21
+ const _useMenuItemStylesstyles = require("../MenuItem/useMenuItemStyles.styles");
22
+ const menuItemCheckboxClassNames = {
23
+ root: 'fui-MenuItemCheckbox',
24
+ icon: 'fui-MenuItemCheckbox__icon',
25
+ checkmark: 'fui-MenuItemCheckbox__checkmark',
26
+ content: 'fui-MenuItemCheckbox__content',
27
+ secondaryContent: 'fui-MenuItemCheckbox__secondaryContent',
28
+ subText: 'fui-MenuItemCheckbox__subText'
29
+ };
30
+ const useMenuItemCheckboxStyles_unstable = (state)=>{
31
+ 'use no memo';
32
+ state.root.className = (0, _react.mergeClasses)(menuItemCheckboxClassNames.root, state.root.className);
33
+ if (state.content) {
34
+ state.content.className = (0, _react.mergeClasses)(menuItemCheckboxClassNames.content, state.content.className);
35
+ }
36
+ if (state.secondaryContent) {
37
+ state.secondaryContent.className = (0, _react.mergeClasses)(menuItemCheckboxClassNames.secondaryContent, state.secondaryContent.className);
38
+ }
39
+ if (state.icon) {
40
+ state.icon.className = (0, _react.mergeClasses)(menuItemCheckboxClassNames.icon, state.icon.className);
41
+ }
42
+ if (state.checkmark) {
43
+ state.checkmark.className = (0, _react.mergeClasses)(menuItemCheckboxClassNames.checkmark, state.checkmark.className);
44
+ }
45
+ if (state.subText) {
46
+ state.subText.className = (0, _react.mergeClasses)(menuItemCheckboxClassNames.subText, state.subText.className);
47
+ }
48
+ (0, _useMenuItemStylesstyles.useMenuItemStyles_unstable)(state);
49
+ (0, _index.useCheckmarkStyles_unstable)(state);
50
+ return state;
51
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/MenuItemCheckbox/useMenuItemCheckboxStyles.styles.ts"],"sourcesContent":["import { mergeClasses } from '@griffel/react';\nimport { useCheckmarkStyles_unstable } from '../../selectable/index';\nimport { useMenuItemStyles_unstable } from '../MenuItem/useMenuItemStyles.styles';\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport type { MenuItemSlots } from '../index';\nimport type { MenuItemCheckboxState } from './MenuItemCheckbox.types';\n\nexport const menuItemCheckboxClassNames: SlotClassNames<Omit<MenuItemSlots, 'submenuIndicator'>> = {\n root: 'fui-MenuItemCheckbox',\n icon: 'fui-MenuItemCheckbox__icon',\n checkmark: 'fui-MenuItemCheckbox__checkmark',\n content: 'fui-MenuItemCheckbox__content',\n secondaryContent: 'fui-MenuItemCheckbox__secondaryContent',\n subText: 'fui-MenuItemCheckbox__subText',\n};\n\nexport const useMenuItemCheckboxStyles_unstable = (state: MenuItemCheckboxState): MenuItemCheckboxState => {\n 'use no memo';\n\n state.root.className = mergeClasses(menuItemCheckboxClassNames.root, state.root.className);\n\n if (state.content) {\n state.content.className = mergeClasses(menuItemCheckboxClassNames.content, state.content.className);\n }\n\n if (state.secondaryContent) {\n state.secondaryContent.className = mergeClasses(\n menuItemCheckboxClassNames.secondaryContent,\n state.secondaryContent.className,\n );\n }\n\n if (state.icon) {\n state.icon.className = mergeClasses(menuItemCheckboxClassNames.icon, state.icon.className);\n }\n\n if (state.checkmark) {\n state.checkmark.className = mergeClasses(menuItemCheckboxClassNames.checkmark, state.checkmark.className);\n }\n\n if (state.subText) {\n state.subText.className = mergeClasses(menuItemCheckboxClassNames.subText, state.subText.className);\n }\n\n useMenuItemStyles_unstable(state);\n useCheckmarkStyles_unstable(state);\n\n return state;\n};\n"],"names":["menuItemCheckboxClassNames","useMenuItemCheckboxStyles_unstable","root","icon","checkmark","content","secondaryContent","subText","state","className","mergeClasses","useMenuItemStyles_unstable","useCheckmarkStyles_unstable"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;;;;;;;;IAOaA,0BAAAA;eAAAA;;IASAC,kCAAAA;eAAAA;;;uBAhBgB;uBACe;yCACD;AAKpC,MAAMD,6BAAsF;IACjGE,MAAM;IACNC,MAAM;IACNC,WAAW;IACXC,SAAS;IACTC,kBAAkB;IAClBC,SAAS;AACX;AAEO,MAAMN,qCAAqC,CAACO;IACjD;IAEAA,MAAMN,IAAI,CAACO,SAAS,GAAGC,IAAAA,mBAAAA,EAAaV,2BAA2BE,IAAI,EAAEM,MAAMN,IAAI,CAACO,SAAS;IAEzF,IAAID,MAAMH,OAAO,EAAE;QACjBG,MAAMH,OAAO,CAACI,SAAS,GAAGC,IAAAA,mBAAAA,EAAaV,2BAA2BK,OAAO,EAAEG,MAAMH,OAAO,CAACI,SAAS;IACpG;IAEA,IAAID,MAAMF,gBAAgB,EAAE;QAC1BE,MAAMF,gBAAgB,CAACG,SAAS,GAAGC,IAAAA,mBAAAA,EACjCV,2BAA2BM,gBAAgB,EAC3CE,MAAMF,gBAAgB,CAACG,SAAS;IAEpC;IAEA,IAAID,MAAML,IAAI,EAAE;QACdK,MAAML,IAAI,CAACM,SAAS,GAAGC,IAAAA,mBAAAA,EAAaV,2BAA2BG,IAAI,EAAEK,MAAML,IAAI,CAACM,SAAS;IAC3F;IAEA,IAAID,MAAMJ,SAAS,EAAE;QACnBI,MAAMJ,SAAS,CAACK,SAAS,GAAGC,IAAAA,mBAAAA,EAAaV,2BAA2BI,SAAS,EAAEI,MAAMJ,SAAS,CAACK,SAAS;IAC1G;IAEA,IAAID,MAAMD,OAAO,EAAE;QACjBC,MAAMD,OAAO,CAACE,SAAS,GAAGC,IAAAA,mBAAAA,EAAaV,2BAA2BO,OAAO,EAAEC,MAAMD,OAAO,CAACE,SAAS;IACpG;IAEAE,IAAAA,mDAAAA,EAA2BH;IAC3BI,IAAAA,kCAAAA,EAA4BJ;IAE5B,OAAOA;AACT"}
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ menuItemLinkClassNames: function() {
13
+ return menuItemLinkClassNames;
14
+ },
15
+ useMenuItemLinkStyles_unstable: function() {
16
+ return useMenuItemLinkStyles_unstable;
17
+ }
18
+ });
19
+ const _react = require("@griffel/react");
20
+ const _useMenuItemStylesstyles = require("../MenuItem/useMenuItemStyles.styles");
21
+ const menuItemLinkClassNames = {
22
+ root: 'fui-MenuItemLink',
23
+ icon: 'fui-MenuItemLink__icon',
24
+ checkmark: 'fui-MenuItemLink__checkmark',
25
+ content: 'fui-MenuItemLink__content',
26
+ secondaryContent: 'fui-MenuItemLink__secondaryContent'
27
+ };
28
+ /**
29
+ * Styles for the root slot
30
+ */ const useStyles = (0, _react.makeStyles)({
31
+ resetLink: {
32
+ textDecorationLine: 'none',
33
+ textDecorationThickness: 'initial',
34
+ textDecorationStyle: 'initial',
35
+ textDecorationColor: 'initial'
36
+ }
37
+ });
38
+ const useMenuItemLinkStyles_unstable = (state)=>{
39
+ 'use no memo';
40
+ (0, _useMenuItemStylesstyles.useMenuItemStyles_unstable)(state);
41
+ const styles = useStyles();
42
+ state.root.className = (0, _react.mergeClasses)(menuItemLinkClassNames.root, styles.resetLink, state.root.className);
43
+ if (state.icon) {
44
+ state.icon.className = (0, _react.mergeClasses)(menuItemLinkClassNames.icon, state.icon.className);
45
+ }
46
+ if (state.content) {
47
+ state.content.className = (0, _react.mergeClasses)(menuItemLinkClassNames.content, state.content.className);
48
+ }
49
+ if (state.secondaryContent) {
50
+ state.secondaryContent.className = (0, _react.mergeClasses)(menuItemLinkClassNames.secondaryContent, state.secondaryContent.className);
51
+ }
52
+ if (state.checkmark) {
53
+ state.checkmark.className = (0, _react.mergeClasses)(menuItemLinkClassNames.checkmark, state.checkmark.className);
54
+ }
55
+ return state;
56
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/MenuItemLink/useMenuItemLinkStyles.styles.ts"],"sourcesContent":["import { makeStyles, mergeClasses } from '@griffel/react';\nimport type { MenuItemLinkSlots, MenuItemLinkState } from './MenuItemLink.types';\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport { useMenuItemStyles_unstable } from '../MenuItem/useMenuItemStyles.styles';\nimport { MenuItemState } from '../MenuItem/MenuItem.types';\n\nexport const menuItemLinkClassNames: SlotClassNames<MenuItemLinkSlots> = {\n root: 'fui-MenuItemLink',\n icon: 'fui-MenuItemLink__icon',\n checkmark: 'fui-MenuItemLink__checkmark',\n content: 'fui-MenuItemLink__content',\n secondaryContent: 'fui-MenuItemLink__secondaryContent',\n};\n\n/**\n * Styles for the root slot\n */\nconst useStyles = makeStyles({\n resetLink: {\n textDecorationLine: 'none',\n textDecorationThickness: 'initial',\n textDecorationStyle: 'initial',\n textDecorationColor: 'initial',\n },\n});\n\n/**\n * Apply styling to the MenuItemLink slots based on the state\n */\nexport const useMenuItemLinkStyles_unstable = (state: MenuItemLinkState): MenuItemLinkState => {\n 'use no memo';\n\n useMenuItemStyles_unstable(state as MenuItemState);\n const styles = useStyles();\n state.root.className = mergeClasses(menuItemLinkClassNames.root, styles.resetLink, state.root.className);\n\n if (state.icon) {\n state.icon.className = mergeClasses(menuItemLinkClassNames.icon, state.icon.className);\n }\n\n if (state.content) {\n state.content.className = mergeClasses(menuItemLinkClassNames.content, state.content.className);\n }\n\n if (state.secondaryContent) {\n state.secondaryContent.className = mergeClasses(\n menuItemLinkClassNames.secondaryContent,\n state.secondaryContent.className,\n );\n }\n\n if (state.checkmark) {\n state.checkmark.className = mergeClasses(menuItemLinkClassNames.checkmark, state.checkmark.className);\n }\n\n return state;\n};\n"],"names":["menuItemLinkClassNames","useMenuItemLinkStyles_unstable","root","icon","checkmark","content","secondaryContent","useStyles","makeStyles","resetLink","textDecorationLine","textDecorationThickness","textDecorationStyle","textDecorationColor","state","useMenuItemStyles_unstable","styles","className","mergeClasses"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;;;;;;;;IAMaA,sBAAAA;eAAAA;;IAuBAC,8BAAAA;eAAAA;;;uBA7B4B;yCAGE;AAGpC,MAAMD,yBAA4D;IACvEE,MAAM;IACNC,MAAM;IACNC,WAAW;IACXC,SAAS;IACTC,kBAAkB;AACpB;AAEA;;CAEC,GACD,MAAMC,YAAYC,IAAAA,iBAAAA,EAAW;IAC3BC,WAAW;QACTC,oBAAoB;QACpBC,yBAAyB;QACzBC,qBAAqB;QACrBC,qBAAqB;IACvB;AACF;AAKO,MAAMZ,iCAAiC,CAACa;IAC7C;IAEAC,IAAAA,mDAAAA,EAA2BD;IAC3B,MAAME,SAAST;IACfO,MAAMZ,IAAI,CAACe,SAAS,GAAGC,IAAAA,mBAAAA,EAAalB,uBAAuBE,IAAI,EAAEc,OAAOP,SAAS,EAAEK,MAAMZ,IAAI,CAACe,SAAS;IAEvG,IAAIH,MAAMX,IAAI,EAAE;QACdW,MAAMX,IAAI,CAACc,SAAS,GAAGC,IAAAA,mBAAAA,EAAalB,uBAAuBG,IAAI,EAAEW,MAAMX,IAAI,CAACc,SAAS;IACvF;IAEA,IAAIH,MAAMT,OAAO,EAAE;QACjBS,MAAMT,OAAO,CAACY,SAAS,GAAGC,IAAAA,mBAAAA,EAAalB,uBAAuBK,OAAO,EAAES,MAAMT,OAAO,CAACY,SAAS;IAChG;IAEA,IAAIH,MAAMR,gBAAgB,EAAE;QAC1BQ,MAAMR,gBAAgB,CAACW,SAAS,GAAGC,IAAAA,mBAAAA,EACjClB,uBAAuBM,gBAAgB,EACvCQ,MAAMR,gBAAgB,CAACW,SAAS;IAEpC;IAEA,IAAIH,MAAMV,SAAS,EAAE;QACnBU,MAAMV,SAAS,CAACa,SAAS,GAAGC,IAAAA,mBAAAA,EAAalB,uBAAuBI,SAAS,EAAEU,MAAMV,SAAS,CAACa,SAAS;IACtG;IAEA,OAAOH;AACT"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ menuItemRadioClassNames: function() {
13
+ return menuItemRadioClassNames;
14
+ },
15
+ useMenuItemRadioStyles_unstable: function() {
16
+ return useMenuItemRadioStyles_unstable;
17
+ }
18
+ });
19
+ const _react = require("@griffel/react");
20
+ const _index = require("../../selectable/index");
21
+ const _useMenuItemStylesstyles = require("../MenuItem/useMenuItemStyles.styles");
22
+ const menuItemRadioClassNames = {
23
+ root: 'fui-MenuItemRadio',
24
+ icon: 'fui-MenuItemRadio__icon',
25
+ checkmark: 'fui-MenuItemRadio__checkmark',
26
+ content: 'fui-MenuItemRadio__content',
27
+ secondaryContent: 'fui-MenuItemRadio__secondaryContent',
28
+ subText: 'fui-MenuItemRadio__subText'
29
+ };
30
+ const useMenuItemRadioStyles_unstable = (state)=>{
31
+ 'use no memo';
32
+ state.root.className = (0, _react.mergeClasses)(menuItemRadioClassNames.root, state.root.className);
33
+ if (state.content) {
34
+ state.content.className = (0, _react.mergeClasses)(menuItemRadioClassNames.content, state.content.className);
35
+ }
36
+ if (state.secondaryContent) {
37
+ state.secondaryContent.className = (0, _react.mergeClasses)(menuItemRadioClassNames.secondaryContent, state.secondaryContent.className);
38
+ }
39
+ if (state.icon) {
40
+ state.icon.className = (0, _react.mergeClasses)(menuItemRadioClassNames.icon, state.icon.className);
41
+ }
42
+ if (state.checkmark) {
43
+ state.checkmark.className = (0, _react.mergeClasses)(menuItemRadioClassNames.checkmark, state.checkmark.className);
44
+ }
45
+ if (state.subText) {
46
+ state.subText.className = (0, _react.mergeClasses)(menuItemRadioClassNames.subText, state.subText.className);
47
+ }
48
+ (0, _useMenuItemStylesstyles.useMenuItemStyles_unstable)(state);
49
+ (0, _index.useCheckmarkStyles_unstable)(state);
50
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/MenuItemRadio/useMenuItemRadioStyles.styles.ts"],"sourcesContent":["import { mergeClasses } from '@griffel/react';\nimport { useCheckmarkStyles_unstable } from '../../selectable/index';\nimport { useMenuItemStyles_unstable } from '../MenuItem/useMenuItemStyles.styles';\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport type { MenuItemSlots } from '../index';\nimport type { MenuItemRadioState } from './MenuItemRadio.types';\n\nexport const menuItemRadioClassNames: SlotClassNames<Omit<MenuItemSlots, 'submenuIndicator'>> = {\n root: 'fui-MenuItemRadio',\n icon: 'fui-MenuItemRadio__icon',\n checkmark: 'fui-MenuItemRadio__checkmark',\n content: 'fui-MenuItemRadio__content',\n secondaryContent: 'fui-MenuItemRadio__secondaryContent',\n subText: 'fui-MenuItemRadio__subText',\n};\n\nexport const useMenuItemRadioStyles_unstable = (state: MenuItemRadioState) => {\n 'use no memo';\n\n state.root.className = mergeClasses(menuItemRadioClassNames.root, state.root.className);\n\n if (state.content) {\n state.content.className = mergeClasses(menuItemRadioClassNames.content, state.content.className);\n }\n\n if (state.secondaryContent) {\n state.secondaryContent.className = mergeClasses(\n menuItemRadioClassNames.secondaryContent,\n state.secondaryContent.className,\n );\n }\n\n if (state.icon) {\n state.icon.className = mergeClasses(menuItemRadioClassNames.icon, state.icon.className);\n }\n\n if (state.checkmark) {\n state.checkmark.className = mergeClasses(menuItemRadioClassNames.checkmark, state.checkmark.className);\n }\n\n if (state.subText) {\n state.subText.className = mergeClasses(menuItemRadioClassNames.subText, state.subText.className);\n }\n\n useMenuItemStyles_unstable(state);\n useCheckmarkStyles_unstable(state);\n};\n"],"names":["menuItemRadioClassNames","useMenuItemRadioStyles_unstable","root","icon","checkmark","content","secondaryContent","subText","state","className","mergeClasses","useMenuItemStyles_unstable","useCheckmarkStyles_unstable"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;;;;;;;;IAOaA,uBAAAA;eAAAA;;IASAC,+BAAAA;eAAAA;;;uBAhBgB;uBACe;yCACD;AAKpC,MAAMD,0BAAmF;IAC9FE,MAAM;IACNC,MAAM;IACNC,WAAW;IACXC,SAAS;IACTC,kBAAkB;IAClBC,SAAS;AACX;AAEO,MAAMN,kCAAkC,CAACO;IAC9C;IAEAA,MAAMN,IAAI,CAACO,SAAS,GAAGC,IAAAA,mBAAAA,EAAaV,wBAAwBE,IAAI,EAAEM,MAAMN,IAAI,CAACO,SAAS;IAEtF,IAAID,MAAMH,OAAO,EAAE;QACjBG,MAAMH,OAAO,CAACI,SAAS,GAAGC,IAAAA,mBAAAA,EAAaV,wBAAwBK,OAAO,EAAEG,MAAMH,OAAO,CAACI,SAAS;IACjG;IAEA,IAAID,MAAMF,gBAAgB,EAAE;QAC1BE,MAAMF,gBAAgB,CAACG,SAAS,GAAGC,IAAAA,mBAAAA,EACjCV,wBAAwBM,gBAAgB,EACxCE,MAAMF,gBAAgB,CAACG,SAAS;IAEpC;IAEA,IAAID,MAAML,IAAI,EAAE;QACdK,MAAML,IAAI,CAACM,SAAS,GAAGC,IAAAA,mBAAAA,EAAaV,wBAAwBG,IAAI,EAAEK,MAAML,IAAI,CAACM,SAAS;IACxF;IAEA,IAAID,MAAMJ,SAAS,EAAE;QACnBI,MAAMJ,SAAS,CAACK,SAAS,GAAGC,IAAAA,mBAAAA,EAAaV,wBAAwBI,SAAS,EAAEI,MAAMJ,SAAS,CAACK,SAAS;IACvG;IAEA,IAAID,MAAMD,OAAO,EAAE;QACjBC,MAAMD,OAAO,CAACE,SAAS,GAAGC,IAAAA,mBAAAA,EAAaV,wBAAwBO,OAAO,EAAEC,MAAMD,OAAO,CAACE,SAAS;IACjG;IAEAE,IAAAA,mDAAAA,EAA2BH;IAC3BI,IAAAA,kCAAAA,EAA4BJ;AAC9B"}
@@ -0,0 +1,136 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ circleFilledClassName: function() {
13
+ return circleFilledClassName;
14
+ },
15
+ menuItemSwitchClassNames: function() {
16
+ return menuItemSwitchClassNames;
17
+ },
18
+ useMenuItemSwitchStyles_unstable: function() {
19
+ return useMenuItemSwitchStyles_unstable;
20
+ }
21
+ });
22
+ const _react = require("@griffel/react");
23
+ const _reacttheme = require("@fluentui/react-theme");
24
+ const _useMenuItemStylesstyles = require("../MenuItem/useMenuItemStyles.styles");
25
+ const menuItemSwitchClassNames = {
26
+ root: 'fui-MenuItemSwitch',
27
+ icon: 'fui-MenuItemSwitch__icon',
28
+ content: 'fui-MenuItemSwitch__content',
29
+ secondaryContent: 'fui-MenuItemSwitch__secondaryContent',
30
+ switchIndicator: 'fui-MenuItemSwitch__switchIndicator',
31
+ subText: 'fui-MenuItemSwitch__subText'
32
+ };
33
+ const circleFilledClassName = 'fui-MenuItemSwitch__switchIndicator__circleFilled';
34
+ // Thumb and track sizes used by the component.
35
+ const spaceBetweenThumbAndTrack = 2;
36
+ const trackHeight = 20;
37
+ const trackWidth = 40;
38
+ const thumbSize = trackHeight - spaceBetweenThumbAndTrack;
39
+ const useSwitchIndicatorBaseClassName = (0, _react.makeResetStyles)({
40
+ borderRadius: _reacttheme.tokens.borderRadiusCircular,
41
+ border: `${_reacttheme.tokens.strokeWidthThin} solid ${_reacttheme.tokens.colorNeutralStrokeAccessible}`,
42
+ lineHeight: 0,
43
+ boxSizing: 'border-box',
44
+ fill: 'currentColor',
45
+ flexShrink: 0,
46
+ fontSize: `${thumbSize}px`,
47
+ height: `${trackHeight}px`,
48
+ transitionDuration: _reacttheme.tokens.durationNormal,
49
+ transitionTimingFunction: _reacttheme.tokens.curveEasyEase,
50
+ transitionProperty: 'background, border, color',
51
+ width: `${trackWidth}px`,
52
+ marginRight: _reacttheme.tokens.spacingHorizontalXS,
53
+ '@media screen and (prefers-reduced-motion: reduce)': {
54
+ transitionDuration: '0.01ms'
55
+ },
56
+ color: _reacttheme.tokens.colorNeutralStrokeAccessible,
57
+ ':hover': {
58
+ color: _reacttheme.tokens.colorNeutralStrokeAccessibleHover,
59
+ borderColor: _reacttheme.tokens.colorNeutralStrokeAccessibleHover
60
+ },
61
+ ':hover:active': {
62
+ color: _reacttheme.tokens.colorNeutralStrokeAccessiblePressed,
63
+ borderColor: _reacttheme.tokens.colorNeutralStrokeAccessiblePressed
64
+ },
65
+ [`& .${circleFilledClassName}`]: {
66
+ transitionDuration: _reacttheme.tokens.durationNormal,
67
+ transitionTimingFunction: _reacttheme.tokens.curveEasyEase,
68
+ transitionProperty: 'transform',
69
+ '@media screen and (prefers-reduced-motion: reduce)': {
70
+ transitionDuration: '0.01ms'
71
+ }
72
+ }
73
+ });
74
+ const useSwitchIndicatorStyles = (0, _react.makeStyles)({
75
+ checked: {
76
+ [`& .${circleFilledClassName}`]: {
77
+ transform: `translateX(${trackWidth - thumbSize - spaceBetweenThumbAndTrack}px)`
78
+ },
79
+ backgroundColor: _reacttheme.tokens.colorCompoundBrandBackground,
80
+ color: _reacttheme.tokens.colorNeutralForegroundInverted,
81
+ ..._react.shorthands.borderColor(_reacttheme.tokens.colorTransparentStroke),
82
+ ':hover': {
83
+ color: _reacttheme.tokens.colorNeutralForegroundInverted,
84
+ backgroundColor: _reacttheme.tokens.colorCompoundBrandBackgroundHover,
85
+ ..._react.shorthands.borderColor(_reacttheme.tokens.colorTransparentStrokeInteractive)
86
+ },
87
+ ':hover:active': {
88
+ color: _reacttheme.tokens.colorNeutralForegroundInverted,
89
+ backgroundColor: _reacttheme.tokens.colorCompoundBrandBackgroundPressed,
90
+ ..._react.shorthands.borderColor(_reacttheme.tokens.colorTransparentStrokeInteractive)
91
+ }
92
+ }
93
+ });
94
+ const useMultilineStyles = (0, _react.makeStyles)({
95
+ switch: {
96
+ alignSelf: 'center'
97
+ }
98
+ });
99
+ const useMenuItemSwitchStyles_unstable = (state)=>{
100
+ 'use no memo';
101
+ const { checked, subText } = state;
102
+ const multiline = !!subText;
103
+ const switchIndicatorStyles = useSwitchIndicatorStyles();
104
+ const switchIndicatorBaseStyles = useSwitchIndicatorBaseClassName();
105
+ const multilineStyles = useMultilineStyles();
106
+ state.root.className = (0, _react.mergeClasses)(menuItemSwitchClassNames.root, state.root.className);
107
+ if (state.content) {
108
+ state.content.className = (0, _react.mergeClasses)(menuItemSwitchClassNames.content, state.content.className);
109
+ }
110
+ if (state.secondaryContent) {
111
+ state.secondaryContent.className = (0, _react.mergeClasses)(menuItemSwitchClassNames.secondaryContent, state.secondaryContent.className);
112
+ }
113
+ if (state.icon) {
114
+ state.icon.className = (0, _react.mergeClasses)(menuItemSwitchClassNames.icon, state.icon.className);
115
+ }
116
+ if (state.subText) {
117
+ state.subText.className = (0, _react.mergeClasses)(menuItemSwitchClassNames.subText, state.subText.className);
118
+ }
119
+ if (state.switchIndicator) {
120
+ state.switchIndicator.className = (0, _react.mergeClasses)(menuItemSwitchClassNames.switchIndicator, switchIndicatorBaseStyles, checked && switchIndicatorStyles.checked, state.switchIndicator.className, multiline && multilineStyles.switch);
121
+ }
122
+ (0, _useMenuItemStylesstyles.useMenuItemStyles_unstable)({
123
+ ...state,
124
+ components: {
125
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
126
+ ...state.components,
127
+ checkmark: 'span',
128
+ submenuIndicator: 'span'
129
+ },
130
+ checkmark: undefined,
131
+ submenuIndicator: undefined,
132
+ hasSubmenu: false,
133
+ persistOnClick: true
134
+ });
135
+ return state;
136
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/MenuItemSwitch/useMenuItemSwitchStyles.styles.ts"],"sourcesContent":["import { makeStyles, makeResetStyles, mergeClasses, shorthands } from '@griffel/react';\nimport { tokens } from '@fluentui/react-theme';\nimport { type SlotClassNames } from '@fluentui/react-utilities';\nimport type { MenuItemSwitchSlots, MenuItemSwitchState } from './MenuItemSwitch.types';\nimport { useMenuItemStyles_unstable } from '../MenuItem/useMenuItemStyles.styles';\n\nexport const menuItemSwitchClassNames: SlotClassNames<MenuItemSwitchSlots> = {\n root: 'fui-MenuItemSwitch',\n icon: 'fui-MenuItemSwitch__icon',\n content: 'fui-MenuItemSwitch__content',\n secondaryContent: 'fui-MenuItemSwitch__secondaryContent',\n switchIndicator: 'fui-MenuItemSwitch__switchIndicator',\n subText: 'fui-MenuItemSwitch__subText',\n};\n\nexport const circleFilledClassName = 'fui-MenuItemSwitch__switchIndicator__circleFilled';\n\n// Thumb and track sizes used by the component.\nconst spaceBetweenThumbAndTrack = 2;\nconst trackHeight = 20;\nconst trackWidth = 40;\nconst thumbSize = trackHeight - spaceBetweenThumbAndTrack;\n\nconst useSwitchIndicatorBaseClassName = makeResetStyles({\n borderRadius: tokens.borderRadiusCircular,\n border: `${tokens.strokeWidthThin} solid ${tokens.colorNeutralStrokeAccessible}`,\n lineHeight: 0,\n boxSizing: 'border-box',\n fill: 'currentColor',\n flexShrink: 0,\n fontSize: `${thumbSize}px`,\n height: `${trackHeight}px`,\n transitionDuration: tokens.durationNormal,\n transitionTimingFunction: tokens.curveEasyEase,\n transitionProperty: 'background, border, color',\n width: `${trackWidth}px`,\n marginRight: tokens.spacingHorizontalXS,\n\n '@media screen and (prefers-reduced-motion: reduce)': {\n transitionDuration: '0.01ms',\n },\n\n color: tokens.colorNeutralStrokeAccessible,\n ':hover': {\n color: tokens.colorNeutralStrokeAccessibleHover,\n borderColor: tokens.colorNeutralStrokeAccessibleHover,\n },\n\n ':hover:active': {\n color: tokens.colorNeutralStrokeAccessiblePressed,\n borderColor: tokens.colorNeutralStrokeAccessiblePressed,\n },\n [`& .${circleFilledClassName}`]: {\n transitionDuration: tokens.durationNormal,\n transitionTimingFunction: tokens.curveEasyEase,\n transitionProperty: 'transform',\n\n '@media screen and (prefers-reduced-motion: reduce)': {\n transitionDuration: '0.01ms',\n },\n },\n});\n\nconst useSwitchIndicatorStyles = makeStyles({\n checked: {\n [`& .${circleFilledClassName}`]: {\n transform: `translateX(${trackWidth - thumbSize - spaceBetweenThumbAndTrack}px)`,\n },\n\n backgroundColor: tokens.colorCompoundBrandBackground,\n color: tokens.colorNeutralForegroundInverted,\n ...shorthands.borderColor(tokens.colorTransparentStroke),\n\n ':hover': {\n color: tokens.colorNeutralForegroundInverted,\n backgroundColor: tokens.colorCompoundBrandBackgroundHover,\n ...shorthands.borderColor(tokens.colorTransparentStrokeInteractive),\n },\n\n ':hover:active': {\n color: tokens.colorNeutralForegroundInverted,\n backgroundColor: tokens.colorCompoundBrandBackgroundPressed,\n ...shorthands.borderColor(tokens.colorTransparentStrokeInteractive),\n },\n },\n});\n\nconst useMultilineStyles = makeStyles({\n switch: {\n alignSelf: 'center',\n },\n});\n\n/**\n * Apply styling to the MenuItemSwitch slots based on the state\n */\nexport const useMenuItemSwitchStyles_unstable = (state: MenuItemSwitchState): MenuItemSwitchState => {\n 'use no memo';\n\n const { checked, subText } = state;\n const multiline = !!subText;\n const switchIndicatorStyles = useSwitchIndicatorStyles();\n const switchIndicatorBaseStyles = useSwitchIndicatorBaseClassName();\n const multilineStyles = useMultilineStyles();\n state.root.className = mergeClasses(menuItemSwitchClassNames.root, state.root.className);\n if (state.content) {\n state.content.className = mergeClasses(menuItemSwitchClassNames.content, state.content.className);\n }\n\n if (state.secondaryContent) {\n state.secondaryContent.className = mergeClasses(\n menuItemSwitchClassNames.secondaryContent,\n state.secondaryContent.className,\n );\n }\n\n if (state.icon) {\n state.icon.className = mergeClasses(menuItemSwitchClassNames.icon, state.icon.className);\n }\n\n if (state.subText) {\n state.subText.className = mergeClasses(menuItemSwitchClassNames.subText, state.subText.className);\n }\n\n if (state.switchIndicator) {\n state.switchIndicator.className = mergeClasses(\n menuItemSwitchClassNames.switchIndicator,\n switchIndicatorBaseStyles,\n checked && switchIndicatorStyles.checked,\n state.switchIndicator.className,\n multiline && multilineStyles.switch,\n );\n }\n\n useMenuItemStyles_unstable({\n ...state,\n components: {\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n ...state.components,\n checkmark: 'span',\n submenuIndicator: 'span',\n },\n checkmark: undefined,\n submenuIndicator: undefined,\n hasSubmenu: false,\n persistOnClick: true,\n });\n\n return state;\n};\n"],"names":["circleFilledClassName","menuItemSwitchClassNames","useMenuItemSwitchStyles_unstable","root","icon","content","secondaryContent","switchIndicator","subText","spaceBetweenThumbAndTrack","trackHeight","trackWidth","thumbSize","useSwitchIndicatorBaseClassName","makeResetStyles","borderRadius","tokens","borderRadiusCircular","border","strokeWidthThin","colorNeutralStrokeAccessible","lineHeight","boxSizing","fill","flexShrink","fontSize","height","transitionDuration","durationNormal","transitionTimingFunction","curveEasyEase","transitionProperty","width","marginRight","spacingHorizontalXS","color","colorNeutralStrokeAccessibleHover","borderColor","colorNeutralStrokeAccessiblePressed","useSwitchIndicatorStyles","makeStyles","checked","transform","backgroundColor","colorCompoundBrandBackground","colorNeutralForegroundInverted","shorthands","colorTransparentStroke","colorCompoundBrandBackgroundHover","colorTransparentStrokeInteractive","colorCompoundBrandBackgroundPressed","useMultilineStyles","switch","alignSelf","state","multiline","switchIndicatorStyles","switchIndicatorBaseStyles","multilineStyles","className","mergeClasses","useMenuItemStyles_unstable","components","checkmark","submenuIndicator","undefined","hasSubmenu","persistOnClick"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ menuListClassNames: function() {
13
+ return menuListClassNames;
14
+ },
15
+ useMenuListStyles_unstable: function() {
16
+ return useMenuListStyles_unstable;
17
+ }
18
+ });
19
+ const _react = require("@griffel/react");
20
+ const menuListClassNames = {
21
+ root: 'fui-MenuList'
22
+ };
23
+ const useStyles = (0, _react.makeStyles)({
24
+ root: {
25
+ display: 'flex',
26
+ flexDirection: 'column',
27
+ gap: '2px'
28
+ },
29
+ hasMenuContext: {
30
+ height: '100%'
31
+ }
32
+ });
33
+ const useMenuListStyles_unstable = (state)=>{
34
+ 'use no memo';
35
+ const styles = useStyles();
36
+ state.root.className = (0, _react.mergeClasses)(menuListClassNames.root, styles.root, state.hasMenuContext && styles.hasMenuContext, state.root.className);
37
+ return state;
38
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/MenuList/useMenuListStyles.styles.ts"],"sourcesContent":["import type { SlotClassNames } from '@fluentui/react-utilities';\nimport { mergeClasses, makeStyles } from '@griffel/react';\nimport type { MenuListSlots, MenuListState } from './MenuList.types';\n\nexport const menuListClassNames: SlotClassNames<MenuListSlots> = {\n root: 'fui-MenuList',\n};\n\nconst useStyles = makeStyles({\n root: {\n display: 'flex',\n flexDirection: 'column',\n gap: '2px',\n },\n hasMenuContext: {\n height: '100%',\n },\n});\n\n/**\n * Apply styling to the Menu slots based on the state\n */\nexport const useMenuListStyles_unstable = (state: MenuListState): MenuListState => {\n 'use no memo';\n\n const styles = useStyles();\n state.root.className = mergeClasses(\n menuListClassNames.root,\n styles.root,\n state.hasMenuContext && styles.hasMenuContext,\n state.root.className,\n );\n return state;\n};\n"],"names":["menuListClassNames","useMenuListStyles_unstable","root","useStyles","makeStyles","display","flexDirection","gap","hasMenuContext","height","state","styles","className","mergeClasses"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;;;;;;;;IAIaA,kBAAAA;eAAAA;;IAkBAC,0BAAAA;eAAAA;;;uBArB4B;AAGlC,MAAMD,qBAAoD;IAC/DE,MAAM;AACR;AAEA,MAAMC,YAAYC,IAAAA,iBAAAA,EAAW;IAC3BF,MAAM;QACJG,SAAS;QACTC,eAAe;QACfC,KAAK;IACP;IACAC,gBAAgB;QACdC,QAAQ;IACV;AACF;AAKO,MAAMR,6BAA6B,CAACS;IACzC;IAEA,MAAMC,SAASR;IACfO,MAAMR,IAAI,CAACU,SAAS,GAAGC,IAAAA,mBAAAA,EACrBb,mBAAmBE,IAAI,EACvBS,OAAOT,IAAI,EACXQ,MAAMF,cAAc,IAAIG,OAAOH,cAAc,EAC7CE,MAAMR,IAAI,CAACU,SAAS;IAEtB,OAAOF;AACT"}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ menuPopoverClassNames: function() {
13
+ return menuPopoverClassNames;
14
+ },
15
+ useMenuPopoverStyles_unstable: function() {
16
+ return useMenuPopoverStyles_unstable;
17
+ }
18
+ });
19
+ const _react = require("@griffel/react");
20
+ const _reacttheme = require("@fluentui/react-theme");
21
+ const _reactpositioning = require("@fluentui/react-positioning");
22
+ const menuPopoverClassNames = {
23
+ root: 'fui-MenuPopover'
24
+ };
25
+ const useStyles = (0, _react.makeStyles)({
26
+ root: {
27
+ borderRadius: _reacttheme.tokens.borderRadiusMedium,
28
+ backgroundColor: _reacttheme.tokens.colorNeutralBackground1,
29
+ color: _reacttheme.tokens.colorNeutralForeground1,
30
+ boxSizing: 'border-box',
31
+ minWidth: '138px',
32
+ maxWidth: '300px',
33
+ overflowX: 'hidden',
34
+ width: 'max-content',
35
+ boxShadow: `${_reacttheme.tokens.shadow16}`,
36
+ padding: '4px',
37
+ border: `1px solid ${_reacttheme.tokens.colorTransparentStroke}`,
38
+ ..._reacttheme.typographyStyles.body1,
39
+ ...(0, _reactpositioning.createSlideStyles)(10)
40
+ }
41
+ });
42
+ const useMenuPopoverStyles_unstable = (state)=>{
43
+ 'use no memo';
44
+ const styles = useStyles();
45
+ state.root.className = (0, _react.mergeClasses)(menuPopoverClassNames.root, styles.root, state.root.className);
46
+ return state;
47
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/MenuPopover/useMenuPopoverStyles.styles.ts"],"sourcesContent":["import { mergeClasses, makeStyles } from '@griffel/react';\nimport { tokens, typographyStyles } from '@fluentui/react-theme';\nimport type { MenuPopoverSlots, MenuPopoverState } from './MenuPopover.types';\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport { createSlideStyles } from '@fluentui/react-positioning';\n\nexport const menuPopoverClassNames: SlotClassNames<MenuPopoverSlots> = {\n root: 'fui-MenuPopover',\n};\n\nconst useStyles = makeStyles({\n root: {\n borderRadius: tokens.borderRadiusMedium,\n backgroundColor: tokens.colorNeutralBackground1,\n color: tokens.colorNeutralForeground1,\n boxSizing: 'border-box',\n minWidth: '138px',\n maxWidth: '300px',\n overflowX: 'hidden',\n width: 'max-content',\n boxShadow: `${tokens.shadow16}`,\n padding: '4px',\n border: `1px solid ${tokens.colorTransparentStroke}`,\n ...typographyStyles.body1,\n ...createSlideStyles(10),\n },\n});\n\n/**\n * Apply styling to the Menu slots based on the state\n */\nexport const useMenuPopoverStyles_unstable = (state: MenuPopoverState): MenuPopoverState => {\n 'use no memo';\n\n const styles = useStyles();\n state.root.className = mergeClasses(menuPopoverClassNames.root, styles.root, state.root.className);\n return state;\n};\n"],"names":["menuPopoverClassNames","useMenuPopoverStyles_unstable","root","useStyles","makeStyles","borderRadius","tokens","borderRadiusMedium","backgroundColor","colorNeutralBackground1","color","colorNeutralForeground1","boxSizing","minWidth","maxWidth","overflowX","width","boxShadow","shadow16","padding","border","colorTransparentStroke","typographyStyles","body1","createSlideStyles","state","styles","className","mergeClasses"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;;;;;;;;IAMaA,qBAAAA;eAAAA;;IAyBAC,6BAAAA;eAAAA;;;uBA/B4B;4BACA;kCAGP;AAE3B,MAAMD,wBAA0D;IACrEE,MAAM;AACR;AAEA,MAAMC,YAAYC,IAAAA,iBAAAA,EAAW;IAC3BF,MAAM;QACJG,cAAcC,kBAAAA,CAAOC,kBAAkB;QACvCC,iBAAiBF,kBAAAA,CAAOG,uBAAuB;QAC/CC,OAAOJ,kBAAAA,CAAOK,uBAAuB;QACrCC,WAAW;QACXC,UAAU;QACVC,UAAU;QACVC,WAAW;QACXC,OAAO;QACPC,WAAW,CAAC,EAAEX,kBAAAA,CAAOY,QAAQ,CAAC,CAAC;QAC/BC,SAAS;QACTC,QAAQ,CAAC,UAAU,EAAEd,kBAAAA,CAAOe,sBAAsB,CAAC,CAAC;QACpD,GAAGC,4BAAAA,CAAiBC,KAAK;QACzB,GAAGC,IAAAA,mCAAAA,EAAkB,GAAG;IAC1B;AACF;AAKO,MAAMvB,gCAAgC,CAACwB;IAC5C;IAEA,MAAMC,SAASvB;IACfsB,MAAMvB,IAAI,CAACyB,SAAS,GAAGC,IAAAA,mBAAAA,EAAa5B,sBAAsBE,IAAI,EAAEwB,OAAOxB,IAAI,EAAEuB,MAAMvB,IAAI,CAACyB,SAAS;IACjG,OAAOF;AACT"}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ menuSplitGroupClassNames: function() {
13
+ return menuSplitGroupClassNames;
14
+ },
15
+ menuSplitGroupMultilineAttr: function() {
16
+ return menuSplitGroupMultilineAttr;
17
+ },
18
+ useMenuSplitGroupStyles_unstable: function() {
19
+ return useMenuSplitGroupStyles_unstable;
20
+ }
21
+ });
22
+ const _react = require("@griffel/react");
23
+ const _reacttheme = require("@fluentui/react-theme");
24
+ const _useMenuItemStylesstyles = require("../MenuItem/useMenuItemStyles.styles");
25
+ const menuSplitGroupMultilineAttr = 'data-multiline';
26
+ const menuSplitGroupClassNames = {
27
+ root: 'fui-MenuSplitGroup'
28
+ };
29
+ /**
30
+ * Styles for the root slot
31
+ * TODO - remove the use of nested combinators to style child menu items
32
+ */ const useStyles = (0, _react.makeStyles)({
33
+ root: {
34
+ [`[${menuSplitGroupMultilineAttr}]`]: {
35
+ [`& > .${_useMenuItemStylesstyles.menuItemClassNames.root}:nth-of-type(2)`]: {
36
+ alignSelf: 'center'
37
+ }
38
+ },
39
+ display: 'flex',
40
+ [`& > .${_useMenuItemStylesstyles.menuItemClassNames.root}:nth-of-type(1)`]: {
41
+ flex: 1
42
+ },
43
+ [`& > .${_useMenuItemStylesstyles.menuItemClassNames.root}:nth-of-type(2)`]: {
44
+ borderTopLeftRadius: 0,
45
+ borderBottomLeftRadius: 0,
46
+ paddingLeft: 0,
47
+ '::before': {
48
+ content: '""',
49
+ width: _reacttheme.tokens.strokeWidthThin,
50
+ height: '20px',
51
+ backgroundColor: _reacttheme.tokens.colorNeutralStroke1
52
+ }
53
+ }
54
+ }
55
+ });
56
+ const useMenuSplitGroupStyles_unstable = (state)=>{
57
+ 'use no memo';
58
+ const styles = useStyles();
59
+ state.root.className = (0, _react.mergeClasses)(menuSplitGroupClassNames.root, styles.root, state.root.className);
60
+ return state;
61
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/MenuSplitGroup/useMenuSplitGroupStyles.styles.ts"],"sourcesContent":["import { makeStyles, mergeClasses } from '@griffel/react';\nimport { tokens } from '@fluentui/react-theme';\nimport { menuItemClassNames } from '../MenuItem/useMenuItemStyles.styles';\nimport type { MenuSplitGroupSlots, MenuSplitGroupState } from './MenuSplitGroup.types';\nimport type { SlotClassNames } from '@fluentui/react-utilities';\n\nexport const menuSplitGroupMultilineAttr = 'data-multiline';\n\nexport const menuSplitGroupClassNames: SlotClassNames<MenuSplitGroupSlots> = {\n root: 'fui-MenuSplitGroup',\n};\n/**\n * Styles for the root slot\n * TODO - remove the use of nested combinators to style child menu items\n */\nconst useStyles = makeStyles({\n root: {\n [`[${menuSplitGroupMultilineAttr}]`]: {\n [`& > .${menuItemClassNames.root}:nth-of-type(2)`]: {\n alignSelf: 'center',\n },\n },\n display: 'flex',\n [`& > .${menuItemClassNames.root}:nth-of-type(1)`]: {\n flex: 1,\n },\n [`& > .${menuItemClassNames.root}:nth-of-type(2)`]: {\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n paddingLeft: 0,\n '::before': {\n content: '\"\"',\n width: tokens.strokeWidthThin,\n height: '20px',\n backgroundColor: tokens.colorNeutralStroke1,\n },\n },\n },\n});\n\n/**\n * Apply styling to the MenuSplitGroup slots based on the state\n */\nexport const useMenuSplitGroupStyles_unstable = (state: MenuSplitGroupState): MenuSplitGroupState => {\n 'use no memo';\n\n const styles = useStyles();\n state.root.className = mergeClasses(menuSplitGroupClassNames.root, styles.root, state.root.className);\n return state;\n};\n"],"names":["menuSplitGroupClassNames","menuSplitGroupMultilineAttr","useMenuSplitGroupStyles_unstable","root","useStyles","makeStyles","menuItemClassNames","alignSelf","display","flex","borderTopLeftRadius","borderBottomLeftRadius","paddingLeft","content","width","tokens","strokeWidthThin","height","backgroundColor","colorNeutralStroke1","state","styles","className","mergeClasses"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;;;;;;;;IAQaA,wBAAAA;eAAAA;;IAFAC,2BAAAA;eAAAA;;IAqCAC,gCAAAA;eAAAA;;;uBA3C4B;4BAClB;yCACY;AAI5B,MAAMD,8BAA8B;AAEpC,MAAMD,2BAAgE;IAC3EG,MAAM;AACR;AACA;;;CAGC,GACD,MAAMC,YAAYC,IAAAA,iBAAAA,EAAW;IAC3BF,MAAM;QACJ,CAAC,CAAC,CAAC,EAAEF,4BAA4B,CAAC,CAAC,CAAC,EAAE;YACpC,CAAC,CAAC,KAAK,EAAEK,2CAAAA,CAAmBH,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE;gBAClDI,WAAW;YACb;QACF;QACAC,SAAS;QACT,CAAC,CAAC,KAAK,EAAEF,2CAAAA,CAAmBH,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE;YAClDM,MAAM;QACR;QACA,CAAC,CAAC,KAAK,EAAEH,2CAAAA,CAAmBH,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE;YAClDO,qBAAqB;YACrBC,wBAAwB;YACxBC,aAAa;YACb,YAAY;gBACVC,SAAS;gBACTC,OAAOC,kBAAAA,CAAOC,eAAe;gBAC7BC,QAAQ;gBACRC,iBAAiBH,kBAAAA,CAAOI,mBAAmB;YAC7C;QACF;IACF;AACF;AAKO,MAAMjB,mCAAmC,CAACkB;IAC/C;IAEA,MAAMC,SAASjB;IACfgB,MAAMjB,IAAI,CAACmB,SAAS,GAAGC,IAAAA,mBAAAA,EAAavB,yBAAyBG,IAAI,EAAEkB,OAAOlB,IAAI,EAAEiB,MAAMjB,IAAI,CAACmB,SAAS;IACpG,OAAOF;AACT"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "useCheckmarkStyles_unstable", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return useCheckmarkStyles_unstable;
9
+ }
10
+ });
11
+ const _react = require("@griffel/react");
12
+ const useStyles = (0, _react.makeStyles)({
13
+ root: {
14
+ width: '16px',
15
+ height: '16px',
16
+ visibility: 'hidden',
17
+ flexShrink: 0
18
+ },
19
+ rootChecked: {
20
+ visibility: 'visible',
21
+ flexShrink: 0
22
+ }
23
+ });
24
+ const useCheckmarkStyles_unstable = (state)=>{
25
+ 'use no memo';
26
+ const styles = useStyles();
27
+ if (state.checkmark) {
28
+ state.checkmark.className = (0, _react.mergeClasses)(styles.root, state.checked && styles.rootChecked, state.checkmark.className);
29
+ }
30
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/selectable/useCheckmarkStyles.styles.ts"],"sourcesContent":["import { mergeClasses, makeStyles } from '@griffel/react';\nimport type { MenuItemSelectableState } from './types';\nimport type { MenuItemState } from '../components/MenuItem/MenuItem.types';\n\nconst useStyles = makeStyles({\n root: {\n width: '16px',\n height: '16px',\n visibility: 'hidden',\n flexShrink: 0,\n },\n rootChecked: {\n visibility: 'visible',\n flexShrink: 0,\n },\n});\n\n/**\n * Applies styles to a checkmark slot for selectable menu items\n *\n * @param state - should contain a `checkmark` slot\n */\nexport const useCheckmarkStyles_unstable = (state: MenuItemSelectableState & Pick<MenuItemState, 'checkmark'>) => {\n 'use no memo';\n\n const styles = useStyles();\n if (state.checkmark) {\n state.checkmark.className = mergeClasses(\n styles.root,\n state.checked && styles.rootChecked,\n state.checkmark.className,\n );\n }\n};\n"],"names":["useCheckmarkStyles_unstable","useStyles","makeStyles","root","width","height","visibility","flexShrink","rootChecked","state","styles","checkmark","className","mergeClasses","checked"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;+BAsBaA;;;eAAAA;;;uBAtB4B;AAIzC,MAAMC,YAAYC,IAAAA,iBAAAA,EAAW;IAC3BC,MAAM;QACJC,OAAO;QACPC,QAAQ;QACRC,YAAY;QACZC,YAAY;IACd;IACAC,aAAa;QACXF,YAAY;QACZC,YAAY;IACd;AACF;AAOO,MAAMP,8BAA8B,CAACS;IAC1C;IAEA,MAAMC,SAAST;IACf,IAAIQ,MAAME,SAAS,EAAE;QACnBF,MAAME,SAAS,CAACC,SAAS,GAAGC,IAAAA,mBAAAA,EAC1BH,OAAOP,IAAI,EACXM,MAAMK,OAAO,IAAIJ,OAAOF,WAAW,EACnCC,MAAME,SAAS,CAACC,SAAS;IAE7B;AACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fluentui/react-menu",
3
- "version": "9.18.0",
3
+ "version": "9.19.0",
4
4
  "description": "Fluent UI menu component",
5
5
  "main": "lib-commonjs/index.js",
6
6
  "module": "lib/index.js",
@@ -21,13 +21,13 @@
21
21
  },
22
22
  "dependencies": {
23
23
  "@fluentui/keyboard-keys": "^9.0.8",
24
- "@fluentui/react-aria": "^9.15.3",
24
+ "@fluentui/react-aria": "^9.15.4",
25
25
  "@fluentui/react-context-selector": "^9.2.2",
26
26
  "@fluentui/react-icons": "^2.0.245",
27
- "@fluentui/react-portal": "^9.6.4",
28
- "@fluentui/react-positioning": "^9.19.0",
27
+ "@fluentui/react-portal": "^9.7.0",
28
+ "@fluentui/react-positioning": "^9.20.0",
29
29
  "@fluentui/react-shared-contexts": "^9.24.0",
30
- "@fluentui/react-tabster": "^9.25.3",
30
+ "@fluentui/react-tabster": "^9.26.0",
31
31
  "@fluentui/react-theme": "^9.1.24",
32
32
  "@fluentui/react-utilities": "^9.22.0",
33
33
  "@fluentui/react-jsx-runtime": "^9.1.2",