@fluentui/react-menu-grid-preview 0.5.9 → 0.5.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +10 -2
- package/lib/components/MenuGrid/MenuGrid.js.map +1 -1
- package/lib/components/MenuGrid/MenuGrid.types.js.map +1 -1
- package/lib/components/MenuGrid/index.js.map +1 -1
- package/lib/components/MenuGrid/renderMenuGrid.js +2 -2
- package/lib/components/MenuGrid/renderMenuGrid.js.map +1 -1
- package/lib/components/MenuGrid/useMenuGrid.js.map +1 -1
- package/lib/components/MenuGrid/useMenuGridContextValues.js.map +1 -1
- package/lib/components/MenuGrid/useMenuGridStyles.styles.raw.js.map +1 -1
- package/lib/components/MenuGridCell/MenuGridCell.js.map +1 -1
- package/lib/components/MenuGridCell/MenuGridCell.types.js.map +1 -1
- package/lib/components/MenuGridCell/index.js.map +1 -1
- package/lib/components/MenuGridCell/renderMenuGridCell.js +2 -2
- package/lib/components/MenuGridCell/renderMenuGridCell.js.map +1 -1
- package/lib/components/MenuGridCell/useMenuGridCell.js.map +1 -1
- package/lib/components/MenuGridCell/useMenuGridCellStyles.styles.raw.js.map +1 -1
- package/lib/components/MenuGridGroup/MenuGridGroup.js.map +1 -1
- package/lib/components/MenuGridGroup/MenuGridGroup.types.js.map +1 -1
- package/lib/components/MenuGridGroup/index.js.map +1 -1
- package/lib/components/MenuGridGroup/renderMenuGridGroup.js +2 -2
- package/lib/components/MenuGridGroup/renderMenuGridGroup.js.map +1 -1
- package/lib/components/MenuGridGroup/useMenuGridGroup.js.map +1 -1
- package/lib/components/MenuGridGroup/useMenuGridGroupContextValues.js.map +1 -1
- package/lib/components/MenuGridGroup/useMenuGridGroupStyles.styles.raw.js.map +1 -1
- package/lib/components/MenuGridGroupHeader/MenuGridGroupHeader.js.map +1 -1
- package/lib/components/MenuGridGroupHeader/MenuGridGroupHeader.types.js.map +1 -1
- package/lib/components/MenuGridGroupHeader/index.js.map +1 -1
- package/lib/components/MenuGridGroupHeader/renderMenuGridGroupHeader.js +2 -2
- package/lib/components/MenuGridGroupHeader/renderMenuGridGroupHeader.js.map +1 -1
- package/lib/components/MenuGridGroupHeader/useMenuGridGroupHeader.js.map +1 -1
- package/lib/components/MenuGridGroupHeader/useMenuGridGroupHeaderStyles.styles.raw.js.map +1 -1
- package/lib/components/MenuGridItem/MenuGridItem.js.map +1 -1
- package/lib/components/MenuGridItem/MenuGridItem.types.js.map +1 -1
- package/lib/components/MenuGridItem/index.js.map +1 -1
- package/lib/components/MenuGridItem/renderMenuGridItem.js +2 -2
- package/lib/components/MenuGridItem/renderMenuGridItem.js.map +1 -1
- package/lib/components/MenuGridItem/useMenuGridItem.js.map +1 -1
- package/lib/components/MenuGridItem/useMenuGridItemStyles.styles.raw.js.map +1 -1
- package/lib/components/MenuGridRow/MenuGridRow.js.map +1 -1
- package/lib/components/MenuGridRow/MenuGridRow.types.js.map +1 -1
- package/lib/components/MenuGridRow/index.js.map +1 -1
- package/lib/components/MenuGridRow/renderMenuGridRow.js +2 -2
- package/lib/components/MenuGridRow/renderMenuGridRow.js.map +1 -1
- package/lib/components/MenuGridRow/useCharacterSearch.js.map +1 -1
- package/lib/components/MenuGridRow/useMenuGridRow.js.map +1 -1
- package/lib/components/MenuGridRow/useMenuGridRowStyles.styles.raw.js.map +1 -1
- package/lib/components/index.js.map +1 -1
- package/lib/contexts/menuGridContext.js.map +1 -1
- package/lib/contexts/menuGridGroupContext.js.map +1 -1
- package/lib/utils/index.js.map +1 -1
- package/lib/utils/useValidateNesting.js +4 -4
- package/lib/utils/useValidateNesting.js.map +1 -1
- package/lib-commonjs/MenuGrid.cjs +7 -7
- package/lib-commonjs/MenuGridCell.cjs +6 -6
- package/lib-commonjs/MenuGridGroup.cjs +7 -7
- package/lib-commonjs/MenuGridGroupHeader.cjs +6 -6
- package/lib-commonjs/MenuGridItem.cjs +6 -6
- package/lib-commonjs/MenuGridRow.cjs +6 -6
- package/lib-commonjs/components/MenuGrid/MenuGrid.cjs.map +1 -1
- package/lib-commonjs/components/MenuGrid/MenuGrid.types.cjs.map +1 -1
- package/lib-commonjs/components/MenuGrid/index.cjs +7 -7
- package/lib-commonjs/components/MenuGrid/index.cjs.map +1 -1
- package/lib-commonjs/components/MenuGrid/renderMenuGrid.cjs.map +1 -1
- package/lib-commonjs/components/MenuGrid/useMenuGrid.cjs.map +1 -1
- package/lib-commonjs/components/MenuGrid/useMenuGridContextValues.cjs.map +1 -1
- package/lib-commonjs/components/MenuGrid/useMenuGridStyles.styles.cjs +3 -3
- package/lib-commonjs/components/MenuGrid/useMenuGridStyles.styles.cjs.map +1 -1
- package/lib-commonjs/components/MenuGrid/useMenuGridStyles.styles.raw.cjs +3 -3
- package/lib-commonjs/components/MenuGrid/useMenuGridStyles.styles.raw.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridCell/MenuGridCell.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridCell/MenuGridCell.types.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridCell/index.cjs +6 -6
- package/lib-commonjs/components/MenuGridCell/index.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridCell/renderMenuGridCell.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridCell/useMenuGridCell.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridCell/useMenuGridCellStyles.styles.cjs +3 -3
- package/lib-commonjs/components/MenuGridCell/useMenuGridCellStyles.styles.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridCell/useMenuGridCellStyles.styles.raw.cjs +3 -3
- package/lib-commonjs/components/MenuGridCell/useMenuGridCellStyles.styles.raw.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridGroup/MenuGridGroup.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridGroup/MenuGridGroup.types.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridGroup/index.cjs +7 -7
- package/lib-commonjs/components/MenuGridGroup/index.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridGroup/renderMenuGridGroup.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridGroup/useMenuGridGroup.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridGroup/useMenuGridGroupContextValues.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridGroup/useMenuGridGroupStyles.styles.cjs +3 -3
- package/lib-commonjs/components/MenuGridGroup/useMenuGridGroupStyles.styles.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridGroup/useMenuGridGroupStyles.styles.raw.cjs +3 -3
- package/lib-commonjs/components/MenuGridGroup/useMenuGridGroupStyles.styles.raw.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridGroupHeader/MenuGridGroupHeader.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridGroupHeader/MenuGridGroupHeader.types.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridGroupHeader/index.cjs +6 -6
- package/lib-commonjs/components/MenuGridGroupHeader/index.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridGroupHeader/renderMenuGridGroupHeader.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridGroupHeader/useMenuGridGroupHeader.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridGroupHeader/useMenuGridGroupHeaderStyles.styles.cjs +3 -3
- package/lib-commonjs/components/MenuGridGroupHeader/useMenuGridGroupHeaderStyles.styles.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridGroupHeader/useMenuGridGroupHeaderStyles.styles.raw.cjs +3 -3
- package/lib-commonjs/components/MenuGridGroupHeader/useMenuGridGroupHeaderStyles.styles.raw.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridItem/MenuGridItem.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridItem/MenuGridItem.types.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridItem/index.cjs +6 -6
- package/lib-commonjs/components/MenuGridItem/index.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridItem/renderMenuGridItem.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridItem/useMenuGridItem.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridItem/useMenuGridItemStyles.styles.cjs +3 -3
- package/lib-commonjs/components/MenuGridItem/useMenuGridItemStyles.styles.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridItem/useMenuGridItemStyles.styles.raw.cjs +3 -3
- package/lib-commonjs/components/MenuGridItem/useMenuGridItemStyles.styles.raw.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridRow/MenuGridRow.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridRow/MenuGridRow.types.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridRow/index.cjs +6 -6
- package/lib-commonjs/components/MenuGridRow/index.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridRow/renderMenuGridRow.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridRow/useCharacterSearch.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridRow/useMenuGridRow.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridRow/useMenuGridRowStyles.styles.cjs +3 -3
- package/lib-commonjs/components/MenuGridRow/useMenuGridRowStyles.styles.cjs.map +1 -1
- package/lib-commonjs/components/MenuGridRow/useMenuGridRowStyles.styles.raw.cjs +3 -3
- package/lib-commonjs/components/MenuGridRow/useMenuGridRowStyles.styles.raw.cjs.map +1 -1
- package/lib-commonjs/components/index.cjs +7 -7
- package/lib-commonjs/components/index.cjs.map +1 -1
- package/lib-commonjs/contexts/menuGridContext.cjs +4 -4
- package/lib-commonjs/contexts/menuGridContext.cjs.map +1 -1
- package/lib-commonjs/contexts/menuGridGroupContext.cjs +3 -3
- package/lib-commonjs/contexts/menuGridGroupContext.cjs.map +1 -1
- package/lib-commonjs/index.cjs +37 -37
- package/lib-commonjs/index.cjs.map +1 -1
- package/lib-commonjs/utils/index.cjs.map +1 -1
- package/lib-commonjs/utils/useValidateNesting.cjs +4 -4
- package/lib-commonjs/utils/useValidateNesting.cjs.map +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,12 +1,20 @@
|
|
|
1
1
|
# Change Log - @fluentui/react-menu-grid-preview
|
|
2
2
|
|
|
3
|
-
<!-- This log was last generated on
|
|
3
|
+
<!-- This log was last generated on Tue, 27 Oct 2026 16:42:32 GMT and should not be manually modified. -->
|
|
4
4
|
|
|
5
5
|
<!-- Start content -->
|
|
6
6
|
|
|
7
|
+
## [0.5.10](https://github.com/microsoft/fluentui/tree/@fluentui/react-menu-grid-preview_v0.5.10)
|
|
8
|
+
|
|
9
|
+
Tue, 27 Oct 2026 16:42:32 GMT
|
|
10
|
+
|
|
11
|
+
### Patches
|
|
12
|
+
|
|
13
|
+
- Bump @fluentui/react-menu to v9.25.8 ([commit](https://github.com/microsoft/fluentui/commit/undefined) by beachball)
|
|
14
|
+
|
|
7
15
|
## [0.5.9](https://github.com/microsoft/fluentui/tree/@fluentui/react-menu-grid-preview_v0.5.9)
|
|
8
16
|
|
|
9
|
-
Mon, 19 Oct 2026
|
|
17
|
+
Mon, 19 Oct 2026 16:49:01 GMT
|
|
10
18
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-menu-grid-preview_v0.5.8..@fluentui/react-menu-grid-preview_v0.5.9)
|
|
11
19
|
|
|
12
20
|
### Patches
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGrid/MenuGrid.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { useMenuGrid_unstable } from './useMenuGrid';\nimport { renderMenuGrid_unstable } from './renderMenuGrid';\nimport { useMenuGridContextValues_unstable } from './useMenuGridContextValues';\nimport { useMenuGridStyles_unstable } from './useMenuGridStyles.styles';\nimport type { MenuGridProps } from './MenuGrid.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\n// import { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\n\n/**\n * Define a styled MenuGrid, using the `useMenuGrid_unstable` hook.\n */\nexport const MenuGrid: ForwardRefComponent<MenuGridProps> = React.forwardRef((props, ref) => {\n const state = useMenuGrid_unstable(props, ref);\n const contextValues = useMenuGridContextValues_unstable(state);\n\n useMenuGridStyles_unstable(state);\n\n // useCustomStyleHook_unstable('useMenuGridStyles_unstable')(state);\n\n return renderMenuGrid_unstable(state, contextValues);\n});\n\nMenuGrid.displayName = 'MenuGrid';\n"],"names":["React","useMenuGrid_unstable","renderMenuGrid_unstable","useMenuGridContextValues_unstable","useMenuGridStyles_unstable","MenuGrid","forwardRef","props","ref","state","contextValues","displayName"],"mappings":"AAAA;AAEA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,oBAAoB,QAAQ,mBAAgB;AACrD,SAASC,uBAAuB,QAAQ,sBAAmB;AAC3D,SAASC,iCAAiC,QAAQ,gCAA6B;AAC/E,SAASC,0BAA0B,QAAQ,gCAA6B;AAGxE,iFAAiF;AAEjF;;CAEC,GACD,OAAO,MAAMC,yBAA+CL,MAAMM,UAAU,CAAC,CAACC,OAAOC;IACnF,MAAMC,QAAQR,qBAAqBM,OAAOC;IAC1C,MAAME,gBAAgBP,kCAAkCM;IAExDL,2BAA2BK;IAE3B,oEAAoE;IAEpE,OAAOP,wBAAwBO,OAAOC;AACxC,GAAG;AAEHL,SAASM,WAAW,GAAG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGrid/MenuGrid.types.ts"],"sourcesContent":["import type * as React from 'react';\nimport type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\nimport type { TabsterDOMAttribute } from '@fluentui/react-tabster';\nimport type { MenuListContextValue } from '@fluentui/react-menu';\n\nimport type { MenuGridContextValue } from '../../contexts/menuGridContext';\n\nexport type MenuGridSlots = {\n root: Slot<'div'>;\n};\n\nexport type MenuGridProps = ComponentProps<MenuGridSlots> & {\n /**\n * Whether keyboard navigation wraps from the last row to the first and vice versa.\n *\n * @default true\n */\n circular?: boolean;\n};\n\nexport type MenuGridState = ComponentState<MenuGridSlots> & {\n /**\n * Tabster row attributes applied to the `MenuGridRow` components\n */\n tableRowTabsterAttribute: TabsterDOMAttribute | null;\n\n /**\n * Callback to focus the first row in the grid whose text content starts with the given character.\n */\n setFocusByFirstCharacter?: (e: React.KeyboardEvent<HTMLElement>, itemEl: HTMLElement) => void;\n};\n\nexport type MenuGridContextValues = {\n menuGrid: MenuGridContextValue;\n menuList: MenuListContextValue;\n};\n"],"names":[],"mappings":"AAgCA,WAGE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGrid/index.ts"],"sourcesContent":["export { MenuGrid } from './MenuGrid';\nexport type { MenuGridContextValues, MenuGridProps, MenuGridSlots, MenuGridState } from './MenuGrid.types';\nexport { renderMenuGrid_unstable } from './renderMenuGrid';\nexport { useMenuGrid_unstable } from './useMenuGrid';\nexport { menuGridClassNames, useMenuGridStyles_unstable } from './useMenuGridStyles.styles';\nexport { useMenuGridContextValues_unstable } from './useMenuGridContextValues';\n"],"names":["MenuGrid","renderMenuGrid_unstable","useMenuGrid_unstable","menuGridClassNames","useMenuGridStyles_unstable","useMenuGridContextValues_unstable"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,gBAAa;AAEtC,SAASC,uBAAuB,QAAQ,sBAAmB;AAC3D,SAASC,oBAAoB,QAAQ,mBAAgB;AACrD,SAASC,kBAAkB,EAAEC,0BAA0B,QAAQ,gCAA6B;AAC5F,SAASC,iCAAiC,QAAQ,gCAA6B"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
import { assertSlots } from "@fluentui/react-utilities";
|
|
1
|
+
import { jsx as _jsx } from "@fluentui/react-jsx-runtime/jsx-runtime";
|
|
2
|
+
import { assertSlots } from "@fluentui/react-utilities";
|
|
3
3
|
import { MenuListProvider } from "@fluentui/react-menu";
|
|
4
4
|
import { MenuGridContextProvider } from "../../contexts/menuGridContext.js";
|
|
5
5
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGrid/renderMenuGrid.tsx"],"sourcesContent":["/** @jsxRuntime automatic */\n/** @jsxImportSource @fluentui/react-jsx-runtime */\nimport { assertSlots } from '@fluentui/react-utilities';\nimport type { JSXElement } from '@fluentui/react-utilities';\nimport { MenuListProvider } from '@fluentui/react-menu';\nimport type { MenuGridContextValues, MenuGridSlots, MenuGridState } from './MenuGrid.types';\nimport { MenuGridContextProvider } from '../../contexts/menuGridContext';\n\n/**\n * Function that renders the final JSX of the component\n */\nexport const renderMenuGrid_unstable = (state: MenuGridState, contextValues: MenuGridContextValues): JSXElement => {\n assertSlots<MenuGridSlots>(state);\n\n return (\n <MenuListProvider value={contextValues.menuList}>\n <MenuGridContextProvider value={contextValues.menuGrid}>\n <state.root />\n </MenuGridContextProvider>\n </MenuListProvider>\n );\n};\n"],"names":["assertSlots","MenuListProvider","MenuGridContextProvider","renderMenuGrid_unstable","state","contextValues","value","menuList","menuGrid","root"],"mappings":";AAAA,0BAA0B,GAC1B,iDAAiD,GACjD,SAASA,WAAW,QAAQ,4BAA4B;AAExD,SAASC,gBAAgB,QAAQ,uBAAuB;AAExD,SAASC,uBAAuB,QAAQ,oCAAiC;AAEzE;;CAEC,GACD,OAAO,MAAMC,0BAA0B,CAACC,OAAsBC;IAC5DL,YAA2BI;IAE3B,qBACE,KAACH;QAAiBK,OAAOD,cAAcE,QAAQ;kBAC7C,cAAA,KAACL;YAAwBI,OAAOD,cAAcG,QAAQ;sBACpD,cAAA,KAACJ,MAAMK,IAAI;;;AAInB,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGrid/useMenuGrid.ts"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport {\n useMergedRefs,\n useEventCallback,\n mergeCallbacks,\n getIntrinsicElementProps,\n slot,\n} from '@fluentui/react-utilities';\n\nimport { useTableCompositeNavigation } from '@fluentui/react-table';\nimport {\n useArrowNavigationGroup,\n useFocusFinders,\n useMergedTabsterAttributes_unstable,\n useTabsterAttributes,\n} from '@fluentui/react-tabster';\nimport type { MenuGridProps, MenuGridState } from './MenuGrid.types';\nimport { useMenuContext_unstable } from '@fluentui/react-menu';\nimport { useValidateNesting } from '../../utils/useValidateNesting';\n\n/**\n * Returns the props and state required to render the component\n */\nexport const useMenuGrid_unstable = (props: MenuGridProps, ref: React.Ref<HTMLDivElement>): MenuGridState => {\n const { circular = true, ...restProps } = props;\n const validateNestingRef = useValidateNesting('MenuGrid');\n const innerRef = React.useRef<HTMLDivElement>(null);\n const { findAllFocusable } = useFocusFinders();\n const triggerId = useMenuContext_unstable(context => context.triggerId);\n\n const { tableRowTabsterAttribute, tableTabsterAttribute, onTableKeyDown } = useTableCompositeNavigation();\n\n const circularGridAttribute = useArrowNavigationGroup({ circular });\n const mergedTabsterAttribute = useMergedTabsterAttributes_unstable(tableTabsterAttribute, circularGridAttribute);\n\n const ignoreEnterKeyAttribute = useTabsterAttributes({\n focusable: {\n ignoreKeydown: { Enter: true },\n },\n });\n const mergedRowTabsterAttribute = useMergedTabsterAttributes_unstable(\n tableRowTabsterAttribute,\n ignoreEnterKeyAttribute,\n );\n\n const onKeyDown = useEventCallback(mergeCallbacks(props.onKeyDown, onTableKeyDown));\n\n const setFocusByFirstCharacter = React.useCallback(\n (e: React.KeyboardEvent<HTMLElement>, itemEl: HTMLElement) => {\n if (!innerRef.current) {\n return;\n }\n\n const target = e.target as HTMLElement;\n\n // Only apply first-letter navigation when event target is a grid row, otherwise it may conflict with other components inside the grid row\n if (target.role !== 'row') {\n return;\n }\n\n const rows = findAllFocusable(innerRef.current, (el: HTMLElement) => el.role === 'row');\n\n let startIndex = rows.indexOf(itemEl) + 1;\n if (startIndex === rows.length) {\n startIndex = 0;\n }\n\n const firstChars = rows.map(row => row.textContent?.charAt(0).toLowerCase());\n const char = e.key.toLowerCase();\n\n const getIndexFirstChars = (start: number) => {\n for (let i = start; i < firstChars.length; i++) {\n if (char === firstChars[i]) {\n return i;\n }\n }\n return -1;\n };\n\n // Check remaining rows in the grid\n let index = getIndexFirstChars(startIndex);\n\n // If not found in remaining rows, check from beginning\n if (index === -1) {\n index = getIndexFirstChars(0);\n }\n\n // If match was found, focus it\n if (index > -1) {\n rows[index].focus();\n }\n },\n [findAllFocusable],\n );\n\n return {\n components: {\n root: 'div',\n },\n root: slot.always(\n getIntrinsicElementProps('div', {\n ref: useMergedRefs(ref, validateNestingRef, innerRef),\n role: 'grid',\n 'aria-labelledby': triggerId,\n ...mergedTabsterAttribute,\n ...restProps,\n onKeyDown,\n }),\n { elementType: 'div' },\n ),\n tableRowTabsterAttribute: mergedRowTabsterAttribute,\n setFocusByFirstCharacter,\n };\n};\n"],"names":["React","useMergedRefs","useEventCallback","mergeCallbacks","getIntrinsicElementProps","slot","useTableCompositeNavigation","useArrowNavigationGroup","useFocusFinders","useMergedTabsterAttributes_unstable","useTabsterAttributes","useMenuContext_unstable","useValidateNesting","useMenuGrid_unstable","props","ref","circular","restProps","validateNestingRef","innerRef","useRef","findAllFocusable","triggerId","context","tableRowTabsterAttribute","tableTabsterAttribute","onTableKeyDown","circularGridAttribute","mergedTabsterAttribute","ignoreEnterKeyAttribute","focusable","ignoreKeydown","Enter","mergedRowTabsterAttribute","onKeyDown","setFocusByFirstCharacter","useCallback","e","itemEl","current","target","role","rows","el","startIndex","indexOf","length","firstChars","map","row","textContent","charAt","toLowerCase","char","key","getIndexFirstChars","start","i","index","focus","components","root","always","elementType"],"mappings":"AAAA;AAEA,YAAYA,WAAW,QAAQ;AAC/B,SACEC,aAAa,EACbC,gBAAgB,EAChBC,cAAc,EACdC,wBAAwB,EACxBC,IAAI,QACC,4BAA4B;AAEnC,SAASC,2BAA2B,QAAQ,wBAAwB;AACpE,SACEC,uBAAuB,EACvBC,eAAe,EACfC,mCAAmC,EACnCC,oBAAoB,QACf,0BAA0B;AAEjC,SAASC,uBAAuB,QAAQ,uBAAuB;AAC/D,SAASC,kBAAkB,QAAQ,oCAAiC;AAEpE;;CAEC,GACD,OAAO,MAAMC,uBAAuB,CAACC,OAAsBC;IACzD,MAAM,EAAEC,WAAW,IAAI,EAAE,GAAGC,WAAW,GAAGH;IAC1C,MAAMI,qBAAqBN,mBAAmB;IAC9C,MAAMO,WAAWnB,MAAMoB,MAAM,CAAiB;IAC9C,MAAM,EAAEC,gBAAgB,EAAE,GAAGb;IAC7B,MAAMc,YAAYX,wBAAwBY,CAAAA,UAAWA,QAAQD,SAAS;IAEtE,MAAM,EAAEE,wBAAwB,EAAEC,qBAAqB,EAAEC,cAAc,EAAE,GAAGpB;IAE5E,MAAMqB,wBAAwBpB,wBAAwB;QAAES;IAAS;IACjE,MAAMY,yBAAyBnB,oCAAoCgB,uBAAuBE;IAE1F,MAAME,0BAA0BnB,qBAAqB;QACnDoB,WAAW;YACTC,eAAe;gBAAEC,OAAO;YAAK;QAC/B;IACF;IACA,MAAMC,4BAA4BxB,oCAChCe,0BACAK;IAGF,MAAMK,YAAYhC,iBAAiBC,eAAeW,MAAMoB,SAAS,EAAER;IAEnE,MAAMS,2BAA2BnC,MAAMoC,WAAW,CAChD,CAACC,GAAqCC;QACpC,IAAI,CAACnB,SAASoB,OAAO,EAAE;YACrB;QACF;QAEA,MAAMC,SAASH,EAAEG,MAAM;QAEvB,0IAA0I;QAC1I,IAAIA,OAAOC,IAAI,KAAK,OAAO;YACzB;QACF;QAEA,MAAMC,OAAOrB,iBAAiBF,SAASoB,OAAO,EAAE,CAACI,KAAoBA,GAAGF,IAAI,KAAK;QAEjF,IAAIG,aAAaF,KAAKG,OAAO,CAACP,UAAU;QACxC,IAAIM,eAAeF,KAAKI,MAAM,EAAE;YAC9BF,aAAa;QACf;QAEA,MAAMG,aAAaL,KAAKM,GAAG,CAACC,CAAAA;gBAAOA;oBAAAA,mBAAAA,IAAIC,WAAW,cAAfD,uCAAAA,iBAAiBE,MAAM,CAAC,GAAGC,WAAW;;QACzE,MAAMC,OAAOhB,EAAEiB,GAAG,CAACF,WAAW;QAE9B,MAAMG,qBAAqB,CAACC;YAC1B,IAAK,IAAIC,IAAID,OAAOC,IAAIV,WAAWD,MAAM,EAAEW,IAAK;gBAC9C,IAAIJ,SAASN,UAAU,CAACU,EAAE,EAAE;oBAC1B,OAAOA;gBACT;YACF;YACA,OAAO,CAAC;QACV;QAEA,mCAAmC;QACnC,IAAIC,QAAQH,mBAAmBX;QAE/B,uDAAuD;QACvD,IAAIc,UAAU,CAAC,GAAG;YAChBA,QAAQH,mBAAmB;QAC7B;QAEA,+BAA+B;QAC/B,IAAIG,QAAQ,CAAC,GAAG;YACdhB,IAAI,CAACgB,MAAM,CAACC,KAAK;QACnB;IACF,GACA;QAACtC;KAAiB;IAGpB,OAAO;QACLuC,YAAY;YACVC,MAAM;QACR;QACAA,MAAMxD,KAAKyD,MAAM,CACf1D,yBAAyB,OAAO;YAC9BW,KAAKd,cAAcc,KAAKG,oBAAoBC;YAC5CsB,MAAM;YACN,mBAAmBnB;YACnB,GAAGM,sBAAsB;YACzB,GAAGX,SAAS;YACZiB;QACF,IACA;YAAE6B,aAAa;QAAM;QAEvBvC,0BAA0BS;QAC1BE;IACF;AACF,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGrid/useMenuGridContextValues.ts"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport type { MenuGridContextValues, MenuGridState } from './MenuGrid.types';\n\nconst menuList = {\n checkedValues: {},\n hasIcons: false,\n hasCheckmarks: false,\n shouldOpenOnArrowRight: false,\n shouldCloseOnArrowLeft: false,\n};\n\nexport function useMenuGridContextValues_unstable(state: MenuGridState): MenuGridContextValues {\n const { tableRowTabsterAttribute, setFocusByFirstCharacter } = state;\n const menuGrid = React.useMemo(\n () => ({ tableRowTabsterAttribute, setFocusByFirstCharacter }),\n [tableRowTabsterAttribute, setFocusByFirstCharacter],\n );\n\n return { menuGrid, menuList };\n}\n"],"names":["React","menuList","checkedValues","hasIcons","hasCheckmarks","shouldOpenOnArrowRight","shouldCloseOnArrowLeft","useMenuGridContextValues_unstable","state","tableRowTabsterAttribute","setFocusByFirstCharacter","menuGrid","useMemo"],"mappings":"AAAA;AAEA,YAAYA,WAAW,QAAQ;AAG/B,MAAMC,WAAW;IACfC,eAAe,CAAC;IAChBC,UAAU;IACVC,eAAe;IACfC,wBAAwB;IACxBC,wBAAwB;AAC1B;AAEA,OAAO,SAASC,kCAAkCC,KAAoB;IACpE,MAAM,EAAEC,wBAAwB,EAAEC,wBAAwB,EAAE,GAAGF;IAC/D,MAAMG,WAAWX,MAAMY,OAAO,CAC5B,IAAO,CAAA;YAAEH;YAA0BC;QAAyB,CAAA,GAC5D;QAACD;QAA0BC;KAAyB;IAGtD,OAAO;QAAEC;QAAUV;IAAS;AAC9B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGrid/useMenuGridStyles.styles.ts"],"sourcesContent":["'use client';\n\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport { mergeClasses, makeStyles } from '@griffel/react';\nimport type { MenuGridSlots, MenuGridState } from './MenuGrid.types';\n\nexport const menuGridClassNames: SlotClassNames<MenuGridSlots> = {\n root: 'fui-MenuGrid',\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 useMenuGridStyles_unstable = (state: MenuGridState): MenuGridState => {\n const styles = useStyles();\n // eslint-disable-next-line react-hooks/immutability\n state.root.className = mergeClasses(menuGridClassNames.root, styles.root, state.root.className);\n return state;\n};\n"],"names":["mergeClasses","makeStyles","menuGridClassNames","root","useStyles","display","flexDirection","gap","hasMenuContext","height","useMenuGridStyles_unstable","state","styles","className"],"mappings":"AAAA;AAGA,SAASA,YAAY,EAAEC,UAAU,QAAQ,iBAAiB;AAG1D,OAAO,MAAMC,qBAAoD;IAC/DC,MAAM;AACR,EAAE;AAEF,MAAMC,YAAYH,WAAW;IAC3BE,MAAM;QACJE,SAAS;QACTC,eAAe;QACfC,KAAK;IACP;IACAC,gBAAgB;QACdC,QAAQ;IACV;AACF;AAEA;;CAEC,GACD,OAAO,MAAMC,6BAA6B,CAACC;IACzC,MAAMC,SAASR;IACf,oDAAoD;IACpDO,MAAMR,IAAI,CAACU,SAAS,GAAGb,aAAaE,mBAAmBC,IAAI,EAAES,OAAOT,IAAI,EAAEQ,MAAMR,IAAI,CAACU,SAAS;IAC9F,OAAOF;AACT,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridCell/MenuGridCell.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { useMenuGridCell_unstable } from './useMenuGridCell';\nimport { renderMenuGridCell_unstable } from './renderMenuGridCell';\nimport type { MenuGridCellProps } from './MenuGridCell.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\nimport { useMenuGridCellStyles_unstable } from './useMenuGridCellStyles.styles';\n// import { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\n\n/**\n * Define a MenuGridCell, using the `useMenuGridCell_unstable` hook.\n */\nexport const MenuGridCell: ForwardRefComponent<MenuGridCellProps> = React.forwardRef((props, ref) => {\n const state = useMenuGridCell_unstable(props, ref);\n\n useMenuGridCellStyles_unstable(state);\n\n // useCustomStyleHook_unstable('useMenuGridCellStyles_unstable')(state);\n\n return renderMenuGridCell_unstable(state);\n});\n\nMenuGridCell.displayName = 'MenuGridCell';\n"],"names":["React","useMenuGridCell_unstable","renderMenuGridCell_unstable","useMenuGridCellStyles_unstable","MenuGridCell","forwardRef","props","ref","state","displayName"],"mappings":"AAAA;AAEA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,wBAAwB,QAAQ,uBAAoB;AAC7D,SAASC,2BAA2B,QAAQ,0BAAuB;AAGnE,SAASC,8BAA8B,QAAQ,oCAAiC;AAChF,iFAAiF;AAEjF;;CAEC,GACD,OAAO,MAAMC,6BAAuDJ,MAAMK,UAAU,CAAC,CAACC,OAAOC;IAC3F,MAAMC,QAAQP,yBAAyBK,OAAOC;IAE9CJ,+BAA+BK;IAE/B,wEAAwE;IAExE,OAAON,4BAA4BM;AACrC,GAAG;AAEHJ,aAAaK,WAAW,GAAG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridCell/MenuGridCell.types.ts"],"sourcesContent":["import type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\n\nexport type MenuGridCellSlots = {\n root: Slot<'div'>;\n};\n\nexport type MenuGridCellProps = ComponentProps<MenuGridCellSlots> & {\n /**\n * A MenuGridCell can be visually hidden, which is used for asymmetric grids\n * @defaultvalue false\n */\n visuallyHidden?: boolean;\n};\n\nexport type MenuGridCellState = ComponentState<MenuGridCellSlots> & Pick<MenuGridCellProps, 'visuallyHidden'>;\n"],"names":[],"mappings":"AAcA,WAA8G"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridCell/index.ts"],"sourcesContent":["export type { MenuGridCellProps, MenuGridCellSlots, MenuGridCellState } from './MenuGridCell.types';\nexport { MenuGridCell } from './MenuGridCell';\nexport { renderMenuGridCell_unstable } from './renderMenuGridCell';\nexport { useMenuGridCell_unstable } from './useMenuGridCell';\nexport { menuGridCellClassNames, useMenuGridCellStyles_unstable } from './useMenuGridCellStyles.styles';\n"],"names":["MenuGridCell","renderMenuGridCell_unstable","useMenuGridCell_unstable","menuGridCellClassNames","useMenuGridCellStyles_unstable"],"mappings":"AACA,SAASA,YAAY,QAAQ,oBAAiB;AAC9C,SAASC,2BAA2B,QAAQ,0BAAuB;AACnE,SAASC,wBAAwB,QAAQ,uBAAoB;AAC7D,SAASC,sBAAsB,EAAEC,8BAA8B,QAAQ,oCAAiC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
import { assertSlots } from "@fluentui/react-utilities";
|
|
1
|
+
import { jsx as _jsx } from "@fluentui/react-jsx-runtime/jsx-runtime";
|
|
2
|
+
import { assertSlots } from "@fluentui/react-utilities";
|
|
3
3
|
/**
|
|
4
4
|
* Function that renders the final JSX of the component
|
|
5
5
|
*/ export const renderMenuGridCell_unstable = (state)=>{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridCell/renderMenuGridCell.tsx"],"sourcesContent":["/** @jsxRuntime automatic */\n/** @jsxImportSource @fluentui/react-jsx-runtime */\nimport { assertSlots } from '@fluentui/react-utilities';\nimport type { JSXElement } from '@fluentui/react-utilities';\nimport type { MenuGridCellSlots, MenuGridCellState } from './MenuGridCell.types';\n\n/**\n * Function that renders the final JSX of the component\n */\nexport const renderMenuGridCell_unstable = (state: MenuGridCellState): JSXElement => {\n assertSlots<MenuGridCellSlots>(state);\n\n return <state.root />;\n};\n"],"names":["assertSlots","renderMenuGridCell_unstable","state","root"],"mappings":";AAAA,0BAA0B,GAC1B,iDAAiD,GACjD,SAASA,WAAW,QAAQ,4BAA4B;AAIxD;;CAEC,GACD,OAAO,MAAMC,8BAA8B,CAACC;IAC1CF,YAA+BE;IAE/B,qBAAO,KAACA,MAAMC,IAAI;AACpB,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridCell/useMenuGridCell.ts"],"sourcesContent":["'use client';\n\nimport type * as React from 'react';\nimport { useFluent_unstable as useFluent } from '@fluentui/react-shared-contexts';\nimport { ArrowLeft, ArrowRight } from '@fluentui/keyboard-keys';\nimport {\n useMergedRefs,\n useEventCallback,\n mergeCallbacks,\n getIntrinsicElementProps,\n slot,\n} from '@fluentui/react-utilities';\nimport type { MenuGridCellProps, MenuGridCellState } from './MenuGridCell.types';\nimport { useValidateNesting } from '../../utils/useValidateNesting';\n\n/**\n * Given user props, returns state and render function for a MenuGridCell.\n */\nexport function useMenuGridCell_unstable(props: MenuGridCellProps, ref: React.Ref<HTMLDivElement>): MenuGridCellState {\n const { visuallyHidden } = props;\n\n const { dir } = useFluent();\n const validateNestingRef = useValidateNesting('MenuGridCell');\n\n const onKeyDownWithPrevent = useEventCallback((event: React.KeyboardEvent<HTMLElement>) => {\n const CloseArrowKey = dir === 'ltr' ? ArrowLeft : ArrowRight;\n\n if (event.key === CloseArrowKey) {\n event.preventDefault();\n }\n });\n const onKeyDown = useEventCallback(mergeCallbacks(props.onKeyDown, onKeyDownWithPrevent));\n\n return {\n visuallyHidden,\n components: {\n root: 'div',\n },\n root: slot.always(\n getIntrinsicElementProps('div', {\n ref: useMergedRefs(ref, validateNestingRef),\n role: 'gridcell',\n ...props,\n onKeyDown,\n }),\n { elementType: 'div' },\n ),\n };\n}\n"],"names":["useFluent_unstable","useFluent","ArrowLeft","ArrowRight","useMergedRefs","useEventCallback","mergeCallbacks","getIntrinsicElementProps","slot","useValidateNesting","useMenuGridCell_unstable","props","ref","visuallyHidden","dir","validateNestingRef","onKeyDownWithPrevent","event","CloseArrowKey","key","preventDefault","onKeyDown","components","root","always","role","elementType"],"mappings":"AAAA;AAGA,SAASA,sBAAsBC,SAAS,QAAQ,kCAAkC;AAClF,SAASC,SAAS,EAAEC,UAAU,QAAQ,0BAA0B;AAChE,SACEC,aAAa,EACbC,gBAAgB,EAChBC,cAAc,EACdC,wBAAwB,EACxBC,IAAI,QACC,4BAA4B;AAEnC,SAASC,kBAAkB,QAAQ,oCAAiC;AAEpE;;CAEC,GACD,OAAO,SAASC,yBAAyBC,KAAwB,EAAEC,GAA8B;IAC/F,MAAM,EAAEC,cAAc,EAAE,GAAGF;IAE3B,MAAM,EAAEG,GAAG,EAAE,GAAGb;IAChB,MAAMc,qBAAqBN,mBAAmB;IAE9C,MAAMO,uBAAuBX,iBAAiB,CAACY;QAC7C,MAAMC,gBAAgBJ,QAAQ,QAAQZ,YAAYC;QAElD,IAAIc,MAAME,GAAG,KAAKD,eAAe;YAC/BD,MAAMG,cAAc;QACtB;IACF;IACA,MAAMC,YAAYhB,iBAAiBC,eAAeK,MAAMU,SAAS,EAAEL;IAEnE,OAAO;QACLH;QACAS,YAAY;YACVC,MAAM;QACR;QACAA,MAAMf,KAAKgB,MAAM,CACfjB,yBAAyB,OAAO;YAC9BK,KAAKR,cAAcQ,KAAKG;YACxBU,MAAM;YACN,GAAGd,KAAK;YACRU;QACF,IACA;YAAEK,aAAa;QAAM;IAEzB;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridCell/useMenuGridCellStyles.styles.ts"],"sourcesContent":["'use client';\n\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport { makeStyles, mergeClasses } from '@griffel/react';\nimport type { MenuGridCellSlots, MenuGridCellState } from './MenuGridCell.types';\n\nexport const menuGridCellClassNames: SlotClassNames<MenuGridCellSlots> = {\n root: 'fui-MenuGridCell',\n};\n\nconst useRootStyles = makeStyles({\n root: {\n display: 'flex',\n alignItems: 'center',\n\n boxSizing: 'border-box',\n minHeight: '24px', // To match small button size\n },\n visuallyHidden: {\n position: 'absolute',\n },\n});\n\nexport const useMenuGridCellStyles_unstable = (state: MenuGridCellState): MenuGridCellState => {\n const rootStyles = useRootStyles();\n // eslint-disable-next-line react-hooks/immutability\n state.root.className = mergeClasses(\n menuGridCellClassNames.root,\n rootStyles.root,\n state.visuallyHidden && rootStyles.visuallyHidden,\n state.root.className,\n );\n\n return state;\n};\n"],"names":["makeStyles","mergeClasses","menuGridCellClassNames","root","useRootStyles","display","alignItems","boxSizing","minHeight","visuallyHidden","position","useMenuGridCellStyles_unstable","state","rootStyles","className"],"mappings":"AAAA;AAGA,SAASA,UAAU,EAAEC,YAAY,QAAQ,iBAAiB;AAG1D,OAAO,MAAMC,yBAA4D;IACvEC,MAAM;AACR,EAAE;AAEF,MAAMC,gBAAgBJ,WAAW;IAC/BG,MAAM;QACJE,SAAS;QACTC,YAAY;QAEZC,WAAW;QACXC,WAAW;IACb;IACAC,gBAAgB;QACdC,UAAU;IACZ;AACF;AAEA,OAAO,MAAMC,iCAAiC,CAACC;IAC7C,MAAMC,aAAaT;IACnB,oDAAoD;IACpDQ,MAAMT,IAAI,CAACW,SAAS,GAAGb,aACrBC,uBAAuBC,IAAI,EAC3BU,WAAWV,IAAI,EACfS,MAAMH,cAAc,IAAII,WAAWJ,cAAc,EACjDG,MAAMT,IAAI,CAACW,SAAS;IAGtB,OAAOF;AACT,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridGroup/MenuGridGroup.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { useMenuGridGroup_unstable } from './useMenuGridGroup';\nimport { renderMenuGridGroup_unstable } from './renderMenuGridGroup';\nimport { useMenuGridGroupContextValues_unstable } from './useMenuGridGroupContextValues';\nimport type { MenuGridGroupProps } from './MenuGridGroup.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\nimport { useMenuGridGroupStyles_unstable } from './useMenuGridGroupStyles.styles';\n// import { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\n\n/**\n * Define a MenuGridGroup, using the `useMenuGridGroup_unstable` hook.\n */\nexport const MenuGridGroup: ForwardRefComponent<MenuGridGroupProps> = React.forwardRef((props, ref) => {\n const state = useMenuGridGroup_unstable(props, ref);\n const contextValues = useMenuGridGroupContextValues_unstable(state);\n\n useMenuGridGroupStyles_unstable(state);\n\n // useCustomStyleHook_unstable('useMenuGridGroupStyles_unstable')(state);\n\n return renderMenuGridGroup_unstable(state, contextValues);\n});\n\nMenuGridGroup.displayName = 'MenuGridGroup';\n"],"names":["React","useMenuGridGroup_unstable","renderMenuGridGroup_unstable","useMenuGridGroupContextValues_unstable","useMenuGridGroupStyles_unstable","MenuGridGroup","forwardRef","props","ref","state","contextValues","displayName"],"mappings":"AAAA;AAEA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,yBAAyB,QAAQ,wBAAqB;AAC/D,SAASC,4BAA4B,QAAQ,2BAAwB;AACrE,SAASC,sCAAsC,QAAQ,qCAAkC;AAGzF,SAASC,+BAA+B,QAAQ,qCAAkC;AAClF,iFAAiF;AAEjF;;CAEC,GACD,OAAO,MAAMC,8BAAyDL,MAAMM,UAAU,CAAC,CAACC,OAAOC;IAC7F,MAAMC,QAAQR,0BAA0BM,OAAOC;IAC/C,MAAME,gBAAgBP,uCAAuCM;IAE7DL,gCAAgCK;IAEhC,yEAAyE;IAEzE,OAAOP,6BAA6BO,OAAOC;AAC7C,GAAG;AAEHL,cAAcM,WAAW,GAAG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridGroup/MenuGridGroup.types.ts"],"sourcesContent":["import type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\nimport type { MenuGridGroupContextValue } from '../../contexts/menuGridGroupContext';\n\nexport type MenuGridGroupSlots = {\n root: Slot<'div'>;\n};\n\nexport type MenuGridGroupProps = ComponentProps<MenuGridGroupSlots>;\n\nexport type MenuGridGroupState = ComponentState<MenuGridGroupSlots> & {\n /**\n * id applied to the DOM element of `MenuGridGroupHeader`\n */\n headerId: string;\n};\n\nexport type MenuGridGroupContextValues = {\n menuGridGroup: MenuGridGroupContextValue;\n};\n"],"names":[],"mappings":"AAgBA,WAEE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridGroup/index.ts"],"sourcesContent":["export type {\n MenuGridGroupContextValues,\n MenuGridGroupProps,\n MenuGridGroupSlots,\n MenuGridGroupState,\n} from './MenuGridGroup.types';\nexport { MenuGridGroup } from './MenuGridGroup';\nexport { renderMenuGridGroup_unstable } from './renderMenuGridGroup';\nexport { useMenuGridGroup_unstable } from './useMenuGridGroup';\nexport { useMenuGridGroupContextValues_unstable } from './useMenuGridGroupContextValues';\nexport { menuGridGroupClassNames, useMenuGridGroupStyles_unstable } from './useMenuGridGroupStyles.styles';\n"],"names":["MenuGridGroup","renderMenuGridGroup_unstable","useMenuGridGroup_unstable","useMenuGridGroupContextValues_unstable","menuGridGroupClassNames","useMenuGridGroupStyles_unstable"],"mappings":"AAMA,SAASA,aAAa,QAAQ,qBAAkB;AAChD,SAASC,4BAA4B,QAAQ,2BAAwB;AACrE,SAASC,yBAAyB,QAAQ,wBAAqB;AAC/D,SAASC,sCAAsC,QAAQ,qCAAkC;AACzF,SAASC,uBAAuB,EAAEC,+BAA+B,QAAQ,qCAAkC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
import { assertSlots } from "@fluentui/react-utilities";
|
|
1
|
+
import { jsx as _jsx } from "@fluentui/react-jsx-runtime/jsx-runtime";
|
|
2
|
+
import { assertSlots } from "@fluentui/react-utilities";
|
|
3
3
|
import { MenuGridGroupContextProvider } from "../../contexts/menuGridGroupContext.js";
|
|
4
4
|
/**
|
|
5
5
|
* Function that renders the final JSX of the component
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridGroup/renderMenuGridGroup.tsx"],"sourcesContent":["/** @jsxRuntime automatic */\n/** @jsxImportSource @fluentui/react-jsx-runtime */\nimport { assertSlots } from '@fluentui/react-utilities';\nimport type { JSXElement } from '@fluentui/react-utilities';\nimport type { MenuGridGroupContextValues, MenuGridGroupSlots, MenuGridGroupState } from './MenuGridGroup.types';\nimport { MenuGridGroupContextProvider } from '../../contexts/menuGridGroupContext';\n\n/**\n * Function that renders the final JSX of the component\n */\nexport const renderMenuGridGroup_unstable = (\n state: MenuGridGroupState,\n contextValues: MenuGridGroupContextValues,\n): JSXElement => {\n assertSlots<MenuGridGroupSlots>(state);\n\n return (\n <MenuGridGroupContextProvider value={contextValues.menuGridGroup}>\n <state.root />\n </MenuGridGroupContextProvider>\n );\n};\n"],"names":["assertSlots","MenuGridGroupContextProvider","renderMenuGridGroup_unstable","state","contextValues","value","menuGridGroup","root"],"mappings":";AAAA,0BAA0B,GAC1B,iDAAiD,GACjD,SAASA,WAAW,QAAQ,4BAA4B;AAGxD,SAASC,4BAA4B,QAAQ,yCAAsC;AAEnF;;CAEC,GACD,OAAO,MAAMC,+BAA+B,CAC1CC,OACAC;IAEAJ,YAAgCG;IAEhC,qBACE,KAACF;QAA6BI,OAAOD,cAAcE,aAAa;kBAC9D,cAAA,KAACH,MAAMI,IAAI;;AAGjB,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridGroup/useMenuGridGroup.ts"],"sourcesContent":["import type * as React from 'react';\nimport { getIntrinsicElementProps, useId, slot } from '@fluentui/react-utilities';\nimport type { MenuGridGroupProps, MenuGridGroupState } from './MenuGridGroup.types';\n\n/**\n * Given user props, returns state and render function for a MenuGridGroup.\n */\nexport function useMenuGridGroup_unstable(\n props: MenuGridGroupProps,\n ref: React.Ref<HTMLDivElement>,\n): MenuGridGroupState {\n const headerId = useId('menu-grid-group-header');\n\n return {\n components: {\n root: 'div',\n },\n root: slot.always(\n getIntrinsicElementProps('div', {\n ref,\n role: 'rowgroup',\n 'aria-labelledby': headerId,\n ...props,\n }),\n { elementType: 'div' },\n ),\n headerId,\n };\n}\n"],"names":["getIntrinsicElementProps","useId","slot","useMenuGridGroup_unstable","props","ref","headerId","components","root","always","role","elementType"],"mappings":"AACA,SAASA,wBAAwB,EAAEC,KAAK,EAAEC,IAAI,QAAQ,4BAA4B;AAGlF;;CAEC,GACD,OAAO,SAASC,0BACdC,KAAyB,EACzBC,GAA8B;IAE9B,MAAMC,WAAWL,MAAM;IAEvB,OAAO;QACLM,YAAY;YACVC,MAAM;QACR;QACAA,MAAMN,KAAKO,MAAM,CACfT,yBAAyB,OAAO;YAC9BK;YACAK,MAAM;YACN,mBAAmBJ;YACnB,GAAGF,KAAK;QACV,IACA;YAAEO,aAAa;QAAM;QAEvBL;IACF;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridGroup/useMenuGridGroupContextValues.ts"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport type { MenuGridGroupContextValues, MenuGridGroupState } from './MenuGridGroup.types';\n\nexport function useMenuGridGroupContextValues_unstable(state: MenuGridGroupState): MenuGridGroupContextValues {\n const { headerId } = state;\n const menuGridGroup = React.useMemo(() => ({ headerId }), [headerId]);\n\n return { menuGridGroup };\n}\n"],"names":["React","useMenuGridGroupContextValues_unstable","state","headerId","menuGridGroup","useMemo"],"mappings":"AAAA;AAEA,YAAYA,WAAW,QAAQ;AAG/B,OAAO,SAASC,uCAAuCC,KAAyB;IAC9E,MAAM,EAAEC,QAAQ,EAAE,GAAGD;IACrB,MAAME,gBAAgBJ,MAAMK,OAAO,CAAC,IAAO,CAAA;YAAEF;QAAS,CAAA,GAAI;QAACA;KAAS;IAEpE,OAAO;QAAEC;IAAc;AACzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridGroup/useMenuGridGroupStyles.styles.ts"],"sourcesContent":["import type { SlotClassNames } from '@fluentui/react-utilities';\nimport { mergeClasses } from '@griffel/react';\nimport type { MenuGridGroupSlots, MenuGridGroupState } from './MenuGridGroup.types';\n\nexport const menuGridGroupClassNames: SlotClassNames<MenuGridGroupSlots> = {\n root: 'fui-MenuGridGroup',\n};\n\nexport const useMenuGridGroupStyles_unstable = (state: MenuGridGroupState): MenuGridGroupState => {\n state.root.className = mergeClasses(menuGridGroupClassNames.root, state.root.className);\n\n return state;\n};\n"],"names":["mergeClasses","menuGridGroupClassNames","root","useMenuGridGroupStyles_unstable","state","className"],"mappings":"AACA,SAASA,YAAY,QAAQ,iBAAiB;AAG9C,OAAO,MAAMC,0BAA8D;IACzEC,MAAM;AACR,EAAE;AAEF,OAAO,MAAMC,kCAAkC,CAACC;IAC9CA,MAAMF,IAAI,CAACG,SAAS,GAAGL,aAAaC,wBAAwBC,IAAI,EAAEE,MAAMF,IAAI,CAACG,SAAS;IAEtF,OAAOD;AACT,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridGroupHeader/MenuGridGroupHeader.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { useMenuGridGroupHeader_unstable } from './useMenuGridGroupHeader';\nimport { renderMenuGridGroupHeader_unstable } from './renderMenuGridGroupHeader';\nimport type { MenuGridGroupHeaderProps } from './MenuGridGroupHeader.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\nimport { useMenuGridGroupHeaderStyles_unstable } from './useMenuGridGroupHeaderStyles.styles';\n// import { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\n\n/**\n * Define a MenuGridGroupHeader, using the `useMenuGridGroupHeader_unstable` hook.\n */\nexport const MenuGridGroupHeader: ForwardRefComponent<MenuGridGroupHeaderProps> = React.forwardRef((props, ref) => {\n const state = useMenuGridGroupHeader_unstable(props, ref);\n\n useMenuGridGroupHeaderStyles_unstable(state);\n\n // useCustomStyleHook_unstable('useMenuGridGroupHeaderStyles_unstable')(state);\n\n return renderMenuGridGroupHeader_unstable(state);\n});\n\nMenuGridGroupHeader.displayName = 'MenuGridGroupHeader';\n"],"names":["React","useMenuGridGroupHeader_unstable","renderMenuGridGroupHeader_unstable","useMenuGridGroupHeaderStyles_unstable","MenuGridGroupHeader","forwardRef","props","ref","state","displayName"],"mappings":"AAAA;AAEA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,+BAA+B,QAAQ,8BAA2B;AAC3E,SAASC,kCAAkC,QAAQ,iCAA8B;AAGjF,SAASC,qCAAqC,QAAQ,2CAAwC;AAC9F,iFAAiF;AAEjF;;CAEC,GACD,OAAO,MAAMC,oCAAqEJ,MAAMK,UAAU,CAAC,CAACC,OAAOC;IACzG,MAAMC,QAAQP,gCAAgCK,OAAOC;IAErDJ,sCAAsCK;IAEtC,+EAA+E;IAE/E,OAAON,mCAAmCM;AAC5C,GAAG;AAEHJ,oBAAoBK,WAAW,GAAG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridGroupHeader/MenuGridGroupHeader.types.ts"],"sourcesContent":["import type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\n\nexport type MenuGridGroupHeaderSlots = {\n root: Slot<'div'>;\n};\n\nexport type MenuGridGroupHeaderProps = ComponentProps<MenuGridGroupHeaderSlots>;\n\nexport type MenuGridGroupHeaderState = ComponentState<MenuGridGroupHeaderSlots>;\n"],"names":[],"mappings":"AAQA,WAAgF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridGroupHeader/index.ts"],"sourcesContent":["export type {\n MenuGridGroupHeaderProps,\n MenuGridGroupHeaderSlots,\n MenuGridGroupHeaderState,\n} from './MenuGridGroupHeader.types';\nexport { MenuGridGroupHeader } from './MenuGridGroupHeader';\nexport { renderMenuGridGroupHeader_unstable } from './renderMenuGridGroupHeader';\nexport { useMenuGridGroupHeader_unstable } from './useMenuGridGroupHeader';\nexport {\n menuGridGroupHeaderClassNames,\n useMenuGridGroupHeaderStyles_unstable,\n} from './useMenuGridGroupHeaderStyles.styles';\n"],"names":["MenuGridGroupHeader","renderMenuGridGroupHeader_unstable","useMenuGridGroupHeader_unstable","menuGridGroupHeaderClassNames","useMenuGridGroupHeaderStyles_unstable"],"mappings":"AAKA,SAASA,mBAAmB,QAAQ,2BAAwB;AAC5D,SAASC,kCAAkC,QAAQ,iCAA8B;AACjF,SAASC,+BAA+B,QAAQ,8BAA2B;AAC3E,SACEC,6BAA6B,EAC7BC,qCAAqC,QAChC,2CAAwC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
import { assertSlots } from "@fluentui/react-utilities";
|
|
1
|
+
import { jsx as _jsx } from "@fluentui/react-jsx-runtime/jsx-runtime";
|
|
2
|
+
import { assertSlots } from "@fluentui/react-utilities";
|
|
3
3
|
/**
|
|
4
4
|
* Function that renders the final JSX of the component
|
|
5
5
|
*/ export const renderMenuGridGroupHeader_unstable = (state)=>{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridGroupHeader/renderMenuGridGroupHeader.tsx"],"sourcesContent":["/** @jsxRuntime automatic */\n/** @jsxImportSource @fluentui/react-jsx-runtime */\nimport { assertSlots } from '@fluentui/react-utilities';\nimport type { JSXElement } from '@fluentui/react-utilities';\nimport type { MenuGridGroupHeaderSlots, MenuGridGroupHeaderState } from './MenuGridGroupHeader.types';\n\n/**\n * Function that renders the final JSX of the component\n */\nexport const renderMenuGridGroupHeader_unstable = (state: MenuGridGroupHeaderState): JSXElement => {\n assertSlots<MenuGridGroupHeaderSlots>(state);\n\n return <state.root />;\n};\n"],"names":["assertSlots","renderMenuGridGroupHeader_unstable","state","root"],"mappings":";AAAA,0BAA0B,GAC1B,iDAAiD,GACjD,SAASA,WAAW,QAAQ,4BAA4B;AAIxD;;CAEC,GACD,OAAO,MAAMC,qCAAqC,CAACC;IACjDF,YAAsCE;IAEtC,qBAAO,KAACA,MAAMC,IAAI;AACpB,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridGroupHeader/useMenuGridGroupHeader.ts"],"sourcesContent":["'use client';\n\nimport type * as React from 'react';\nimport { getIntrinsicElementProps, slot } from '@fluentui/react-utilities';\n\nimport { useMenuGridGroupContext_unstable } from '../../contexts/menuGridGroupContext';\nimport type { MenuGridGroupHeaderProps, MenuGridGroupHeaderState } from './MenuGridGroupHeader.types';\n\n/**\n * Given user props, returns state and render function for a MenuGridGroupHeader.\n */\nexport function useMenuGridGroupHeader_unstable(\n props: MenuGridGroupHeaderProps,\n ref: React.Ref<HTMLDivElement>,\n): MenuGridGroupHeaderState {\n const { headerId: id } = useMenuGridGroupContext_unstable();\n\n return {\n components: {\n root: 'div',\n },\n root: slot.always(\n getIntrinsicElementProps('div', {\n ref,\n role: 'presentation',\n id,\n 'aria-hidden': true,\n ...props,\n }),\n { elementType: 'div' },\n ),\n };\n}\n"],"names":["getIntrinsicElementProps","slot","useMenuGridGroupContext_unstable","useMenuGridGroupHeader_unstable","props","ref","headerId","id","components","root","always","role","elementType"],"mappings":"AAAA;AAGA,SAASA,wBAAwB,EAAEC,IAAI,QAAQ,4BAA4B;AAE3E,SAASC,gCAAgC,QAAQ,yCAAsC;AAGvF;;CAEC,GACD,OAAO,SAASC,gCACdC,KAA+B,EAC/BC,GAA8B;IAE9B,MAAM,EAAEC,UAAUC,EAAE,EAAE,GAAGL;IAEzB,OAAO;QACLM,YAAY;YACVC,MAAM;QACR;QACAA,MAAMR,KAAKS,MAAM,CACfV,yBAAyB,OAAO;YAC9BK;YACAM,MAAM;YACNJ;YACA,eAAe;YACf,GAAGH,KAAK;QACV,IACA;YAAEQ,aAAa;QAAM;IAEzB;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridGroupHeader/useMenuGridGroupHeaderStyles.styles.ts"],"sourcesContent":["'use client';\n\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport { makeStyles, mergeClasses } from '@griffel/react';\nimport type { MenuGridGroupHeaderSlots, MenuGridGroupHeaderState } from './MenuGridGroupHeader.types';\nimport { tokens } from '@fluentui/react-theme';\n\nexport const menuGridGroupHeaderClassNames: SlotClassNames<MenuGridGroupHeaderSlots> = {\n root: 'fui-MenuGridGroupHeader',\n};\n\nconst useStyles = makeStyles({\n root: {\n fontSize: tokens.fontSizeBase200,\n color: tokens.colorNeutralForeground3,\n paddingLeft: '8px',\n paddingRight: '8px',\n fontWeight: tokens.fontWeightSemibold,\n height: '32px',\n display: 'flex',\n alignItems: 'center',\n },\n});\n\nexport const useMenuGridGroupHeaderStyles_unstable = (state: MenuGridGroupHeaderState): MenuGridGroupHeaderState => {\n const styles = useStyles();\n // eslint-disable-next-line react-hooks/immutability\n state.root.className = mergeClasses(menuGridGroupHeaderClassNames.root, styles.root, state.root.className);\n\n return state;\n};\n"],"names":["makeStyles","mergeClasses","tokens","menuGridGroupHeaderClassNames","root","useStyles","fontSize","fontSizeBase200","color","colorNeutralForeground3","paddingLeft","paddingRight","fontWeight","fontWeightSemibold","height","display","alignItems","useMenuGridGroupHeaderStyles_unstable","state","styles","className"],"mappings":"AAAA;AAGA,SAASA,UAAU,EAAEC,YAAY,QAAQ,iBAAiB;AAE1D,SAASC,MAAM,QAAQ,wBAAwB;AAE/C,OAAO,MAAMC,gCAA0E;IACrFC,MAAM;AACR,EAAE;AAEF,MAAMC,YAAYL,WAAW;IAC3BI,MAAM;QACJE,UAAUJ,OAAOK,eAAe;QAChCC,OAAON,OAAOO,uBAAuB;QACrCC,aAAa;QACbC,cAAc;QACdC,YAAYV,OAAOW,kBAAkB;QACrCC,QAAQ;QACRC,SAAS;QACTC,YAAY;IACd;AACF;AAEA,OAAO,MAAMC,wCAAwC,CAACC;IACpD,MAAMC,SAASd;IACf,oDAAoD;IACpDa,MAAMd,IAAI,CAACgB,SAAS,GAAGnB,aAAaE,8BAA8BC,IAAI,EAAEe,OAAOf,IAAI,EAAEc,MAAMd,IAAI,CAACgB,SAAS;IAEzG,OAAOF;AACT,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridItem/MenuGridItem.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { useMenuGridItem_unstable } from './useMenuGridItem';\nimport { renderMenuGridItem_unstable } from './renderMenuGridItem';\nimport type { MenuGridItemProps } from './MenuGridItem.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\nimport { useMenuGridItemStyles_unstable } from './useMenuGridItemStyles.styles';\n// import { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\n\n/**\n * Define a MenuGridItem, using the `useMenuGridItem_unstable` hook.\n */\nexport const MenuGridItem: ForwardRefComponent<MenuGridItemProps> = React.forwardRef((props, ref) => {\n const state = useMenuGridItem_unstable(props, ref);\n\n useMenuGridItemStyles_unstable(state);\n\n // useCustomStyleHook_unstable('useMenuGridItemStyles_unstable')(state);\n\n return renderMenuGridItem_unstable(state);\n});\n\nMenuGridItem.displayName = 'MenuGridItem';\n"],"names":["React","useMenuGridItem_unstable","renderMenuGridItem_unstable","useMenuGridItemStyles_unstable","MenuGridItem","forwardRef","props","ref","state","displayName"],"mappings":"AAAA;AAEA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,wBAAwB,QAAQ,uBAAoB;AAC7D,SAASC,2BAA2B,QAAQ,0BAAuB;AAGnE,SAASC,8BAA8B,QAAQ,oCAAiC;AAChF,iFAAiF;AAEjF;;CAEC,GACD,OAAO,MAAMC,6BAAuDJ,MAAMK,UAAU,CAAC,CAACC,OAAOC;IAC3F,MAAMC,QAAQP,yBAAyBK,OAAOC;IAE9CJ,+BAA+BK;IAE/B,wEAAwE;IAExE,OAAON,4BAA4BM;AACrC,GAAG;AAEHJ,aAAaK,WAAW,GAAG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridItem/MenuGridItem.types.ts"],"sourcesContent":["import type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\nimport type { MenuGridCellProps } from './../MenuGridCell/MenuGridCell.types';\nimport type { MenuGridRowProps } from './../MenuGridRow/MenuGridRow.types';\n\nexport type MenuGridItemSlots = {\n root: Slot<MenuGridRowProps>;\n\n /**\n * Icon slot rendered as cell before content cell\n */\n icon?: Slot<MenuGridCellProps>;\n\n /**\n * Component children are placed in this slot\n * Avoid using the `children` property in this slot in favour of Component children whenever possible\n */\n content?: Slot<MenuGridCellProps>;\n\n /**\n * Additional descriptor to main content that creates a multiline layout\n */\n subText?: Slot<'span'>;\n\n /**\n * Firstd sub-action slot rendered as cell after content cell\n */\n firstSubAction?: Slot<MenuGridCellProps>;\n\n /**\n * Second sub-action slot rendered as cell after first sub-action cell\n */\n secondSubAction?: Slot<MenuGridCellProps>;\n};\n\nexport type MenuGridItemProps = Omit<ComponentProps<Partial<MenuGridItemSlots>>, 'content'> &\n Pick<Partial<MenuGridItemSlots>, 'content'>;\n\nexport type MenuGridItemState = ComponentState<MenuGridItemSlots>;\n"],"names":[],"mappings":"AAqCA,WAAkE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridItem/index.ts"],"sourcesContent":["export type { MenuGridItemProps, MenuGridItemSlots, MenuGridItemState } from './MenuGridItem.types';\nexport { MenuGridItem } from './MenuGridItem';\nexport { renderMenuGridItem_unstable } from './renderMenuGridItem';\nexport { useMenuGridItem_unstable } from './useMenuGridItem';\nexport { menuGridItemClassNames, useMenuGridItemStyles_unstable } from './useMenuGridItemStyles.styles';\n"],"names":["MenuGridItem","renderMenuGridItem_unstable","useMenuGridItem_unstable","menuGridItemClassNames","useMenuGridItemStyles_unstable"],"mappings":"AACA,SAASA,YAAY,QAAQ,oBAAiB;AAC9C,SAASC,2BAA2B,QAAQ,0BAAuB;AACnE,SAASC,wBAAwB,QAAQ,uBAAoB;AAC7D,SAASC,sBAAsB,EAAEC,8BAA8B,QAAQ,oCAAiC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
import { assertSlots } from "@fluentui/react-utilities";
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "@fluentui/react-jsx-runtime/jsx-runtime";
|
|
2
|
+
import { assertSlots } from "@fluentui/react-utilities";
|
|
3
3
|
/**
|
|
4
4
|
* Function that renders the final JSX of the component
|
|
5
5
|
*/ export const renderMenuGridItem_unstable = (state)=>{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridItem/renderMenuGridItem.tsx"],"sourcesContent":["/** @jsxRuntime automatic */\n/** @jsxImportSource @fluentui/react-jsx-runtime */\nimport { assertSlots } from '@fluentui/react-utilities';\nimport type { JSXElement } from '@fluentui/react-utilities';\nimport type { MenuGridItemSlots, MenuGridItemState } from './MenuGridItem.types';\n\n/**\n * Function that renders the final JSX of the component\n */\nexport const renderMenuGridItem_unstable = (state: MenuGridItemState): JSXElement => {\n assertSlots<MenuGridItemSlots>(state);\n\n return (\n <state.root>\n {state.icon && <state.icon />}\n {state.content && (\n <state.content>\n {state.content.children}\n {state.subText && <state.subText />}\n </state.content>\n )}\n {state.firstSubAction && <state.firstSubAction />}\n {state.secondSubAction && <state.secondSubAction />}\n </state.root>\n );\n};\n"],"names":["assertSlots","renderMenuGridItem_unstable","state","root","icon","content","children","subText","firstSubAction","secondSubAction"],"mappings":";AAAA,0BAA0B,GAC1B,iDAAiD,GACjD,SAASA,WAAW,QAAQ,4BAA4B;AAIxD;;CAEC,GACD,OAAO,MAAMC,8BAA8B,CAACC;IAC1CF,YAA+BE;IAE/B,qBACE,MAACA,MAAMC,IAAI;;YACRD,MAAME,IAAI,kBAAI,KAACF,MAAME,IAAI;YACzBF,MAAMG,OAAO,kBACZ,MAACH,MAAMG,OAAO;;oBACXH,MAAMG,OAAO,CAACC,QAAQ;oBACtBJ,MAAMK,OAAO,kBAAI,KAACL,MAAMK,OAAO;;;YAGnCL,MAAMM,cAAc,kBAAI,KAACN,MAAMM,cAAc;YAC7CN,MAAMO,eAAe,kBAAI,KAACP,MAAMO,eAAe;;;AAGtD,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridItem/useMenuGridItem.ts"],"sourcesContent":["'use client';\n\nimport type * as React from 'react';\nimport { useMergedRefs, slot } from '@fluentui/react-utilities';\n\nimport type { MenuGridItemProps, MenuGridItemState } from './MenuGridItem.types';\nimport { MenuGridCell } from './../MenuGridCell/MenuGridCell';\nimport { MenuGridRow } from './../MenuGridRow/MenuGridRow';\nimport { useValidateNesting } from '../../utils/useValidateNesting';\n\n/**\n * Given user props, returns state and render function for a MenuGridItem.\n */\nexport function useMenuGridItem_unstable(props: MenuGridItemProps, ref: React.Ref<HTMLDivElement>): MenuGridItemState {\n const {\n icon,\n content: _content, // `content` is a slot and it's type clashes with the HTMLElement `content` attribute\n subText,\n firstSubAction,\n secondSubAction,\n ...rest\n } = props;\n const validateNestingRef = useValidateNesting('MenuGridItem');\n\n return {\n components: {\n root: MenuGridRow,\n icon: MenuGridCell,\n content: MenuGridCell,\n subText: 'span',\n firstSubAction: MenuGridCell,\n secondSubAction: MenuGridCell,\n },\n root: slot.always(\n {\n ref: useMergedRefs(ref, validateNestingRef),\n ...rest,\n },\n { elementType: MenuGridRow },\n ),\n icon: slot.optional(props.icon, { elementType: MenuGridCell }),\n content: slot.optional(props.content, {\n renderByDefault: !!props.children,\n defaultProps: { children: props.children },\n elementType: MenuGridCell,\n }),\n subText: slot.optional(props.subText, { elementType: 'span' }),\n firstSubAction: slot.optional(props.firstSubAction, { elementType: MenuGridCell }),\n secondSubAction: slot.optional(props.secondSubAction, { elementType: MenuGridCell }),\n };\n}\n"],"names":["useMergedRefs","slot","MenuGridCell","MenuGridRow","useValidateNesting","useMenuGridItem_unstable","props","ref","icon","content","_content","subText","firstSubAction","secondSubAction","rest","validateNestingRef","components","root","always","elementType","optional","renderByDefault","children","defaultProps"],"mappings":"AAAA;AAGA,SAASA,aAAa,EAAEC,IAAI,QAAQ,4BAA4B;AAGhE,SAASC,YAAY,QAAQ,kCAAiC;AAC9D,SAASC,WAAW,QAAQ,gCAA+B;AAC3D,SAASC,kBAAkB,QAAQ,oCAAiC;AAEpE;;CAEC,GACD,OAAO,SAASC,yBAAyBC,KAAwB,EAAEC,GAA8B;IAC/F,MAAM,EACJC,IAAI,EACJC,SAASC,QAAQ,EACjBC,OAAO,EACPC,cAAc,EACdC,eAAe,EACf,GAAGC,MACJ,GAAGR;IACJ,MAAMS,qBAAqBX,mBAAmB;IAE9C,OAAO;QACLY,YAAY;YACVC,MAAMd;YACNK,MAAMN;YACNO,SAASP;YACTS,SAAS;YACTC,gBAAgBV;YAChBW,iBAAiBX;QACnB;QACAe,MAAMhB,KAAKiB,MAAM,CACf;YACEX,KAAKP,cAAcO,KAAKQ;YACxB,GAAGD,IAAI;QACT,GACA;YAAEK,aAAahB;QAAY;QAE7BK,MAAMP,KAAKmB,QAAQ,CAACd,MAAME,IAAI,EAAE;YAAEW,aAAajB;QAAa;QAC5DO,SAASR,KAAKmB,QAAQ,CAACd,MAAMG,OAAO,EAAE;YACpCY,iBAAiB,CAAC,CAACf,MAAMgB,QAAQ;YACjCC,cAAc;gBAAED,UAAUhB,MAAMgB,QAAQ;YAAC;YACzCH,aAAajB;QACf;QACAS,SAASV,KAAKmB,QAAQ,CAACd,MAAMK,OAAO,EAAE;YAAEQ,aAAa;QAAO;QAC5DP,gBAAgBX,KAAKmB,QAAQ,CAACd,MAAMM,cAAc,EAAE;YAAEO,aAAajB;QAAa;QAChFW,iBAAiBZ,KAAKmB,QAAQ,CAACd,MAAMO,eAAe,EAAE;YAAEM,aAAajB;QAAa;IACpF;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridItem/useMenuGridItemStyles.styles.ts"],"sourcesContent":["'use client';\n\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport { makeStyles, mergeClasses } from '@griffel/react';\nimport type { MenuGridItemSlots, MenuGridItemState } from './MenuGridItem.types';\n\nexport const menuGridItemClassNames: SlotClassNames<MenuGridItemSlots> = {\n root: 'fui-MenuGridItem',\n icon: 'fui-MenuGridItem__icon',\n content: 'fui-MenuGridItem__content',\n subText: 'fui-MenuGridItem__subText',\n firstSubAction: 'fui-MenuGridItem__firstSubAction',\n secondSubAction: 'fui-MenuGridItem__secondSubAction',\n};\n\nconst useStyles = makeStyles({\n content: {\n flexGrow: 1,\n height: '100%', // ensures content stay centered vertically when menu item's height is overridden\n minWidth: 0,\n },\n icon: {\n height: '100%',\n },\n firstSubAction: {\n height: '100%',\n },\n secondSubAction: {\n height: '100%',\n },\n});\n\nexport const useMenuGridItemStyles_unstable = (state: MenuGridItemState): MenuGridItemState => {\n const styles = useStyles();\n\n // eslint-disable-next-line react-hooks/immutability\n state.root.className = mergeClasses(menuGridItemClassNames.root, state.root.className);\n\n if (state.icon) {\n // eslint-disable-next-line react-hooks/immutability\n state.icon.className = mergeClasses(menuGridItemClassNames.icon, styles.icon, state.icon.className);\n }\n\n if (state.content) {\n // eslint-disable-next-line react-hooks/immutability\n state.content.className = mergeClasses(menuGridItemClassNames.content, styles.content, state.content.className);\n }\n\n if (state.subText) {\n // eslint-disable-next-line react-hooks/immutability\n state.subText.className = mergeClasses(menuGridItemClassNames.subText, state.subText.className);\n }\n\n if (state.firstSubAction) {\n // eslint-disable-next-line react-hooks/immutability\n state.firstSubAction.className = mergeClasses(\n menuGridItemClassNames.firstSubAction,\n styles.firstSubAction,\n state.firstSubAction.className,\n );\n }\n if (state.secondSubAction) {\n // eslint-disable-next-line react-hooks/immutability\n state.secondSubAction.className = mergeClasses(\n menuGridItemClassNames.secondSubAction,\n styles.secondSubAction,\n state.secondSubAction.className,\n );\n }\n\n return state;\n};\n"],"names":["makeStyles","mergeClasses","menuGridItemClassNames","root","icon","content","subText","firstSubAction","secondSubAction","useStyles","flexGrow","height","minWidth","useMenuGridItemStyles_unstable","state","styles","className"],"mappings":"AAAA;AAGA,SAASA,UAAU,EAAEC,YAAY,QAAQ,iBAAiB;AAG1D,OAAO,MAAMC,yBAA4D;IACvEC,MAAM;IACNC,MAAM;IACNC,SAAS;IACTC,SAAS;IACTC,gBAAgB;IAChBC,iBAAiB;AACnB,EAAE;AAEF,MAAMC,YAAYT,WAAW;IAC3BK,SAAS;QACPK,UAAU;QACVC,QAAQ;QACRC,UAAU;IACZ;IACAR,MAAM;QACJO,QAAQ;IACV;IACAJ,gBAAgB;QACdI,QAAQ;IACV;IACAH,iBAAiB;QACfG,QAAQ;IACV;AACF;AAEA,OAAO,MAAME,iCAAiC,CAACC;IAC7C,MAAMC,SAASN;IAEf,oDAAoD;IACpDK,MAAMX,IAAI,CAACa,SAAS,GAAGf,aAAaC,uBAAuBC,IAAI,EAAEW,MAAMX,IAAI,CAACa,SAAS;IAErF,IAAIF,MAAMV,IAAI,EAAE;QACd,oDAAoD;QACpDU,MAAMV,IAAI,CAACY,SAAS,GAAGf,aAAaC,uBAAuBE,IAAI,EAAEW,OAAOX,IAAI,EAAEU,MAAMV,IAAI,CAACY,SAAS;IACpG;IAEA,IAAIF,MAAMT,OAAO,EAAE;QACjB,oDAAoD;QACpDS,MAAMT,OAAO,CAACW,SAAS,GAAGf,aAAaC,uBAAuBG,OAAO,EAAEU,OAAOV,OAAO,EAAES,MAAMT,OAAO,CAACW,SAAS;IAChH;IAEA,IAAIF,MAAMR,OAAO,EAAE;QACjB,oDAAoD;QACpDQ,MAAMR,OAAO,CAACU,SAAS,GAAGf,aAAaC,uBAAuBI,OAAO,EAAEQ,MAAMR,OAAO,CAACU,SAAS;IAChG;IAEA,IAAIF,MAAMP,cAAc,EAAE;QACxB,oDAAoD;QACpDO,MAAMP,cAAc,CAACS,SAAS,GAAGf,aAC/BC,uBAAuBK,cAAc,EACrCQ,OAAOR,cAAc,EACrBO,MAAMP,cAAc,CAACS,SAAS;IAElC;IACA,IAAIF,MAAMN,eAAe,EAAE;QACzB,oDAAoD;QACpDM,MAAMN,eAAe,CAACQ,SAAS,GAAGf,aAChCC,uBAAuBM,eAAe,EACtCO,OAAOP,eAAe,EACtBM,MAAMN,eAAe,CAACQ,SAAS;IAEnC;IAEA,OAAOF;AACT,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridRow/MenuGridRow.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { useMenuGridRow_unstable } from './useMenuGridRow';\nimport { renderMenuGridRow_unstable } from './renderMenuGridRow';\nimport type { MenuGridRowProps } from './MenuGridRow.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\nimport { useMenuGridRowStyles_unstable } from './useMenuGridRowStyles.styles';\n// import { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\n\n/**\n * Define a MenuGridRow, using the `useMenuGridRow_unstable` hook.\n */\nexport const MenuGridRow: ForwardRefComponent<MenuGridRowProps> = React.forwardRef((props, ref) => {\n const state = useMenuGridRow_unstable(props, ref);\n\n useMenuGridRowStyles_unstable(state);\n\n // useCustomStyleHook_unstable('useMenuGridRowStyles_unstable')(state);\n\n return renderMenuGridRow_unstable(state);\n});\n\nMenuGridRow.displayName = 'MenuGridRow';\n"],"names":["React","useMenuGridRow_unstable","renderMenuGridRow_unstable","useMenuGridRowStyles_unstable","MenuGridRow","forwardRef","props","ref","state","displayName"],"mappings":"AAAA;AAEA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,uBAAuB,QAAQ,sBAAmB;AAC3D,SAASC,0BAA0B,QAAQ,yBAAsB;AAGjE,SAASC,6BAA6B,QAAQ,mCAAgC;AAC9E,iFAAiF;AAEjF;;CAEC,GACD,OAAO,MAAMC,4BAAqDJ,MAAMK,UAAU,CAAC,CAACC,OAAOC;IACzF,MAAMC,QAAQP,wBAAwBK,OAAOC;IAE7CJ,8BAA8BK;IAE9B,uEAAuE;IAEvE,OAAON,2BAA2BM;AACpC,GAAG;AAEHJ,YAAYK,WAAW,GAAG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridRow/MenuGridRow.types.ts"],"sourcesContent":["import type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\n\nexport type MenuGridRowSlots = {\n root: Slot<'div'>;\n};\n\nexport type MenuGridRowProps = ComponentProps<Partial<MenuGridRowSlots>>;\n\nexport type MenuGridRowState = ComponentState<MenuGridRowSlots>;\n"],"names":[],"mappings":"AAQA,WAAgE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridRow/index.ts"],"sourcesContent":["export type { MenuGridRowProps, MenuGridRowSlots, MenuGridRowState } from './MenuGridRow.types';\nexport { MenuGridRow } from './MenuGridRow';\nexport { renderMenuGridRow_unstable } from './renderMenuGridRow';\nexport { useMenuGridRow_unstable } from './useMenuGridRow';\nexport { menuGridRowClassNames, useMenuGridRowStyles_unstable } from './useMenuGridRowStyles.styles';\n"],"names":["MenuGridRow","renderMenuGridRow_unstable","useMenuGridRow_unstable","menuGridRowClassNames","useMenuGridRowStyles_unstable"],"mappings":"AACA,SAASA,WAAW,QAAQ,mBAAgB;AAC5C,SAASC,0BAA0B,QAAQ,yBAAsB;AACjE,SAASC,uBAAuB,QAAQ,sBAAmB;AAC3D,SAASC,qBAAqB,EAAEC,6BAA6B,QAAQ,mCAAgC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
import { assertSlots } from "@fluentui/react-utilities";
|
|
1
|
+
import { jsx as _jsx } from "@fluentui/react-jsx-runtime/jsx-runtime";
|
|
2
|
+
import { assertSlots } from "@fluentui/react-utilities";
|
|
3
3
|
/**
|
|
4
4
|
* Function that renders the final JSX of the component
|
|
5
5
|
*/ export const renderMenuGridRow_unstable = (state)=>{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridRow/renderMenuGridRow.tsx"],"sourcesContent":["/** @jsxRuntime automatic */\n/** @jsxImportSource @fluentui/react-jsx-runtime */\nimport { assertSlots } from '@fluentui/react-utilities';\nimport type { JSXElement } from '@fluentui/react-utilities';\nimport type { MenuGridRowSlots, MenuGridRowState } from './MenuGridRow.types';\n\n/**\n * Function that renders the final JSX of the component\n */\nexport const renderMenuGridRow_unstable = (state: MenuGridRowState): JSXElement => {\n assertSlots<MenuGridRowSlots>(state);\n\n return <state.root />;\n};\n"],"names":["assertSlots","renderMenuGridRow_unstable","state","root"],"mappings":";AAAA,0BAA0B,GAC1B,iDAAiD,GACjD,SAASA,WAAW,QAAQ,4BAA4B;AAIxD;;CAEC,GACD,OAAO,MAAMC,6BAA6B,CAACC;IACzCF,YAA8BE;IAE9B,qBAAO,KAACA,MAAMC,IAAI;AACpB,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridRow/useCharacterSearch.ts"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { useMenuGridContext_unstable } from '../../contexts/menuGridContext';\n\n/**\n * Returns the MenuGridRow's `onKeyDown` handler to support first-letter navigation.\n * When a single character key is pressed, it delegates to the grid-level `setFocusByFirstCharacter`\n * callback which finds and focuses the next row starting with that character.\n */\nexport const useCharacterSearch = (): {\n characterSearchOnKeyDown: React.KeyboardEventHandler<HTMLElement>;\n characterSearchRef: React.RefObject<HTMLElement | null>;\n} => {\n 'use no memo'; // justified: compiler would optimize useCharacterSearch — manual opt-out to preserve runtime behavior\n\n const characterSearchRef = React.useRef<HTMLDivElement>(null);\n\n const { setFocusByFirstCharacter } = useMenuGridContext_unstable();\n\n const characterSearchOnKeyDown = (e: React.KeyboardEvent<HTMLDivElement>) => {\n if (e.key?.length > 1) {\n return;\n }\n\n if (characterSearchRef.current) {\n setFocusByFirstCharacter?.(e, characterSearchRef.current);\n }\n };\n\n return { characterSearchOnKeyDown, characterSearchRef };\n};\n"],"names":["React","useMenuGridContext_unstable","useCharacterSearch","characterSearchRef","useRef","setFocusByFirstCharacter","characterSearchOnKeyDown","e","key","length","current"],"mappings":"AAAA;AAEA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,2BAA2B,QAAQ,oCAAiC;AAE7E;;;;CAIC,GACD,OAAO,MAAMC,qBAAqB;IAIhC,eAAe,sGAAsG;IAErH,MAAMC,qBAAqBH,MAAMI,MAAM,CAAiB;IAExD,MAAM,EAAEC,wBAAwB,EAAE,GAAGJ;IAErC,MAAMK,2BAA2B,CAACC;YAC5BA;QAAJ,IAAIA,EAAAA,SAAAA,EAAEC,GAAG,cAALD,6BAAAA,OAAOE,MAAM,IAAG,GAAG;YACrB;QACF;QAEA,IAAIN,mBAAmBO,OAAO,EAAE;YAC9BL,qCAAAA,+CAAAA,yBAA2BE,GAAGJ,mBAAmBO,OAAO;QAC1D;IACF;IAEA,OAAO;QAAEJ;QAA0BH;IAAmB;AACxD,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/MenuGridRow/useMenuGridRow.ts"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { Enter, Space } from '@fluentui/keyboard-keys';\nimport {\n useMergedRefs,\n useEventCallback,\n mergeCallbacks,\n getIntrinsicElementProps,\n slot,\n} from '@fluentui/react-utilities';\n\nimport { useMenuGridContext_unstable } from '../../contexts/menuGridContext';\nimport type { MenuGridRowProps, MenuGridRowState } from './MenuGridRow.types';\nimport { useValidateNesting } from '../../utils/useValidateNesting';\nimport { useCharacterSearch } from './useCharacterSearch';\n\n/**\n * Given user props, returns state and render function for a MenuGridRow.\n */\nexport function useMenuGridRow_unstable(props: MenuGridRowProps, ref: React.Ref<HTMLDivElement>): MenuGridRowState {\n const validateNestingRef = useValidateNesting('MenuGridRow');\n const innerRef = React.useRef<HTMLDivElement>(null);\n const { tableRowTabsterAttribute } = useMenuGridContext_unstable();\n\n const { characterSearchOnKeyDown, characterSearchRef } = useCharacterSearch();\n\n const onKeyDownToClick = useEventCallback((event: React.KeyboardEvent<HTMLDivElement>) => {\n if (\n !event.isDefaultPrevented() &&\n (event.key === Enter || event.key === Space) &&\n event.target === event.currentTarget\n ) {\n event.currentTarget.click();\n }\n });\n\n const onKeyDown = useEventCallback(\n mergeCallbacks(props.onKeyDown, mergeCallbacks(onKeyDownToClick, characterSearchOnKeyDown)),\n );\n\n const onClick = useEventCallback((event: React.MouseEvent<HTMLDivElement>) => {\n let element = event.target as HTMLElement | null;\n while (element && element !== event.currentTarget) {\n if (element.tabIndex >= 0) {\n return;\n }\n element = element.parentElement;\n }\n props.onClick?.(event);\n });\n\n const state: MenuGridRowState = {\n components: {\n root: 'div',\n },\n root: slot.always(\n getIntrinsicElementProps('div', {\n ref: useMergedRefs(ref, validateNestingRef, innerRef, characterSearchRef),\n role: 'row',\n tabIndex: 0,\n ...tableRowTabsterAttribute,\n ...props,\n onKeyDown,\n onClick,\n }),\n { elementType: 'div' },\n ),\n };\n\n return state;\n}\n"],"names":["React","Enter","Space","useMergedRefs","useEventCallback","mergeCallbacks","getIntrinsicElementProps","slot","useMenuGridContext_unstable","useValidateNesting","useCharacterSearch","useMenuGridRow_unstable","props","ref","validateNestingRef","innerRef","useRef","tableRowTabsterAttribute","characterSearchOnKeyDown","characterSearchRef","onKeyDownToClick","event","isDefaultPrevented","key","target","currentTarget","click","onKeyDown","onClick","element","tabIndex","parentElement","state","components","root","always","role","elementType"],"mappings":"AAAA;AAEA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,KAAK,EAAEC,KAAK,QAAQ,0BAA0B;AACvD,SACEC,aAAa,EACbC,gBAAgB,EAChBC,cAAc,EACdC,wBAAwB,EACxBC,IAAI,QACC,4BAA4B;AAEnC,SAASC,2BAA2B,QAAQ,oCAAiC;AAE7E,SAASC,kBAAkB,QAAQ,oCAAiC;AACpE,SAASC,kBAAkB,QAAQ,0BAAuB;AAE1D;;CAEC,GACD,OAAO,SAASC,wBAAwBC,KAAuB,EAAEC,GAA8B;IAC7F,MAAMC,qBAAqBL,mBAAmB;IAC9C,MAAMM,WAAWf,MAAMgB,MAAM,CAAiB;IAC9C,MAAM,EAAEC,wBAAwB,EAAE,GAAGT;IAErC,MAAM,EAAEU,wBAAwB,EAAEC,kBAAkB,EAAE,GAAGT;IAEzD,MAAMU,mBAAmBhB,iBAAiB,CAACiB;QACzC,IACE,CAACA,MAAMC,kBAAkB,MACxBD,CAAAA,MAAME,GAAG,KAAKtB,SAASoB,MAAME,GAAG,KAAKrB,KAAI,KAC1CmB,MAAMG,MAAM,KAAKH,MAAMI,aAAa,EACpC;YACAJ,MAAMI,aAAa,CAACC,KAAK;QAC3B;IACF;IAEA,MAAMC,YAAYvB,iBAChBC,eAAeO,MAAMe,SAAS,EAAEtB,eAAee,kBAAkBF;IAGnE,MAAMU,UAAUxB,iBAAiB,CAACiB;YAQhCT;QAPA,IAAIiB,UAAUR,MAAMG,MAAM;QAC1B,MAAOK,WAAWA,YAAYR,MAAMI,aAAa,CAAE;YACjD,IAAII,QAAQC,QAAQ,IAAI,GAAG;gBACzB;YACF;YACAD,UAAUA,QAAQE,aAAa;QACjC;SACAnB,iBAAAA,MAAMgB,OAAO,cAAbhB,qCAAAA,oBAAAA,OAAgBS;IAClB;IAEA,MAAMW,QAA0B;QAC9BC,YAAY;YACVC,MAAM;QACR;QACAA,MAAM3B,KAAK4B,MAAM,CACf7B,yBAAyB,OAAO;YAC9BO,KAAKV,cAAcU,KAAKC,oBAAoBC,UAAUI;YACtDiB,MAAM;YACNN,UAAU;YACV,GAAGb,wBAAwB;YAC3B,GAAGL,KAAK;YACRe;YACAC;QACF,IACA;YAAES,aAAa;QAAM;IAEzB;IAEA,OAAOL;AACT"}
|