@fluentui/react-tabs 9.9.0 → 9.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +15 -2
- package/lib/Tab.js.map +1 -1
- package/lib/TabList.js.map +1 -1
- package/lib/components/Tab/Tab.js.map +1 -1
- package/lib/components/Tab/Tab.types.js.map +1 -1
- package/lib/components/Tab/index.js.map +1 -1
- package/lib/components/Tab/renderTab.js.map +1 -1
- package/lib/components/Tab/useTab.js.map +1 -1
- package/lib/components/Tab/useTabAnimatedIndicator.styles.raw.js.map +1 -1
- package/lib/components/Tab/useTabStyles.styles.js +17 -3
- package/lib/components/Tab/useTabStyles.styles.js.map +1 -1
- package/lib/components/Tab/useTabStyles.styles.raw.js +9 -1
- package/lib/components/Tab/useTabStyles.styles.raw.js.map +1 -1
- package/lib/components/TabList/TabList.js.map +1 -1
- package/lib/components/TabList/TabList.types.js.map +1 -1
- package/lib/components/TabList/TabListContext.js.map +1 -1
- package/lib/components/TabList/index.js.map +1 -1
- package/lib/components/TabList/renderTabList.js.map +1 -1
- package/lib/components/TabList/useTabList.js.map +1 -1
- package/lib/components/TabList/useTabListContextValues.js.map +1 -1
- package/lib/components/TabList/useTabListStyles.styles.raw.js.map +1 -1
- package/lib/index.js.map +1 -1
- package/lib-commonjs/Tab.js.map +1 -1
- package/lib-commonjs/TabList.js.map +1 -1
- package/lib-commonjs/components/Tab/Tab.js.map +1 -1
- package/lib-commonjs/components/Tab/Tab.types.js.map +1 -1
- package/lib-commonjs/components/Tab/index.js.map +1 -1
- package/lib-commonjs/components/Tab/renderTab.js.map +1 -1
- package/lib-commonjs/components/Tab/useTab.js.map +1 -1
- package/lib-commonjs/components/Tab/useTabAnimatedIndicator.styles.js.map +1 -1
- package/lib-commonjs/components/Tab/useTabAnimatedIndicator.styles.raw.js.map +1 -1
- package/lib-commonjs/components/Tab/useTabStyles.styles.js +26 -2
- package/lib-commonjs/components/Tab/useTabStyles.styles.js.map +1 -1
- package/lib-commonjs/components/Tab/useTabStyles.styles.raw.js +9 -1
- package/lib-commonjs/components/Tab/useTabStyles.styles.raw.js.map +1 -1
- package/lib-commonjs/components/TabList/TabList.js.map +1 -1
- package/lib-commonjs/components/TabList/TabList.types.js.map +1 -1
- package/lib-commonjs/components/TabList/TabListContext.js.map +1 -1
- package/lib-commonjs/components/TabList/index.js.map +1 -1
- package/lib-commonjs/components/TabList/renderTabList.js.map +1 -1
- package/lib-commonjs/components/TabList/useTabList.js.map +1 -1
- package/lib-commonjs/components/TabList/useTabListContextValues.js.map +1 -1
- package/lib-commonjs/components/TabList/useTabListStyles.styles.js.map +1 -1
- package/lib-commonjs/components/TabList/useTabListStyles.styles.raw.js.map +1 -1
- package/lib-commonjs/index.js.map +1 -1
- package/package.json +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Tab/useTabAnimatedIndicator.styles.ts"],"sourcesContent":["import * as React from 'react';\nimport type { TabState, TabValue } from './Tab.types';\n\nimport { makeStyles, mergeClasses } from '@griffel/react';\nimport { useTabListContext_unstable } from '../TabList/TabListContext';\nimport { TabRegisterData } from '../TabList/TabList.types';\nimport { tokens } from '@fluentui/react-theme';\nimport { useAnimationFrame } from '@fluentui/react-utilities';\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nconst tabIndicatorCssVars_unstable = {\n offsetVar: '--fui-Tab__indicator--offset',\n scaleVar: '--fui-Tab__indicator--scale',\n};\n\nconst useActiveIndicatorStyles = makeStyles({\n base: {\n // overflow is required to allow the selection indicator to animate outside the tab area.\n overflow: 'visible',\n },\n animated: {\n '::after': {\n transitionProperty: 'transform',\n transitionDuration: `${tokens.durationSlow}`,\n transitionTimingFunction: `${tokens.curveDecelerateMax}`,\n },\n '@media (prefers-reduced-motion: reduce)': {\n '::after': {\n transitionProperty: 'none',\n transitionDuration: '0.01ms',\n },\n },\n },\n horizontal: {\n '::after': {\n transformOrigin: 'left',\n transform: `translateX(var(${tabIndicatorCssVars_unstable.offsetVar}))\n scaleX(var(${tabIndicatorCssVars_unstable.scaleVar}))`,\n },\n },\n vertical: {\n '::after': {\n transformOrigin: 'top',\n transform: `translateY(var(${tabIndicatorCssVars_unstable.offsetVar}))\n scaleY(var(${tabIndicatorCssVars_unstable.scaleVar}))`,\n },\n },\n});\n\nconst calculateTabRect = (element: HTMLElement) => {\n if (element) {\n const parentRect = element.parentElement?.getBoundingClientRect() || { x: 0, y: 0, width: 0, height: 0 };\n const tabRect = element.getBoundingClientRect();\n\n return {\n x: tabRect.x - parentRect.x,\n y: tabRect.y - parentRect.y,\n width: tabRect.width,\n height: tabRect.height,\n };\n }\n return undefined;\n};\n\nconst getRegisteredTabRect = (registeredTabs: Record<string, TabRegisterData>, value?: TabValue) => {\n const element = isValueDefined(value) ? registeredTabs[JSON.stringify(value)]?.ref.current : undefined;\n return element ? calculateTabRect(element) : undefined;\n};\n\n// eslint-disable-next-line eqeqeq\nconst isValueDefined = (value: TabValue) => value != null;\n\n/**\n * Adds additional styling to the active tab selection indicator to create a sliding animation.\n */\nexport const useTabAnimatedIndicatorStyles_unstable = (state: TabState): TabState => {\n const { disabled, selected, vertical } = state;\n\n const activeIndicatorStyles = useActiveIndicatorStyles();\n const [lastAnimatedFrom, setLastAnimatedFrom] = React.useState<TabValue>();\n const [animationValues, setAnimationValues] = React.useState({ offset: 0, scale: 1 });\n const getRegisteredTabs = useTabListContext_unstable(ctx => ctx.getRegisteredTabs);\n\n const [requestAnimationFrame] = useAnimationFrame();\n\n if (selected) {\n const { previousSelectedValue, selectedValue, registeredTabs } = getRegisteredTabs();\n\n if (isValueDefined(previousSelectedValue) && lastAnimatedFrom !== previousSelectedValue) {\n const previousSelectedTabRect = getRegisteredTabRect(registeredTabs, previousSelectedValue);\n const selectedTabRect = getRegisteredTabRect(registeredTabs, selectedValue);\n\n if (selectedTabRect && previousSelectedTabRect) {\n const offset = vertical\n ? previousSelectedTabRect.y - selectedTabRect.y\n : previousSelectedTabRect.x - selectedTabRect.x;\n\n const scale = vertical\n ? previousSelectedTabRect.height / selectedTabRect.height\n : previousSelectedTabRect.width / selectedTabRect.width;\n\n setAnimationValues({ offset, scale });\n setLastAnimatedFrom(previousSelectedValue);\n\n // Reset the animation values after the animation is complete\n requestAnimationFrame(() => setAnimationValues({ offset: 0, scale: 1 }));\n }\n }\n } else if (isValueDefined(lastAnimatedFrom)) {\n // need to clear the last animated from so that if this tab is selected again\n // from the same previous tab as last time, that animation still happens.\n setLastAnimatedFrom(undefined);\n }\n\n // do not apply any animation if the tab is disabled\n if (disabled) {\n return state;\n }\n\n // the animation should only happen as the selection indicator returns to its\n // original position and not when set at the previous tabs position.\n const animating = animationValues.offset === 0 && animationValues.scale === 1;\n\n state.root.className = mergeClasses(\n state.root.className,\n selected && activeIndicatorStyles.base,\n selected && animating && activeIndicatorStyles.animated,\n selected && (vertical ? activeIndicatorStyles.vertical : activeIndicatorStyles.horizontal),\n );\n\n const rootCssVars = {\n [tabIndicatorCssVars_unstable.offsetVar]: `${animationValues.offset}px`,\n [tabIndicatorCssVars_unstable.scaleVar]: `${animationValues.scale}`,\n };\n\n state.root.style = {\n ...rootCssVars,\n ...state.root.style,\n };\n\n return state;\n};\n"],"names":["
|
|
1
|
+
{"version":3,"sources":["../src/components/Tab/useTabAnimatedIndicator.styles.ts"],"sourcesContent":["import * as React from 'react';\nimport type { TabState, TabValue } from './Tab.types';\n\nimport { makeStyles, mergeClasses } from '@griffel/react';\nimport { useTabListContext_unstable } from '../TabList/TabListContext';\nimport { TabRegisterData } from '../TabList/TabList.types';\nimport { tokens } from '@fluentui/react-theme';\nimport { useAnimationFrame } from '@fluentui/react-utilities';\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nconst tabIndicatorCssVars_unstable = {\n offsetVar: '--fui-Tab__indicator--offset',\n scaleVar: '--fui-Tab__indicator--scale',\n};\n\nconst useActiveIndicatorStyles = makeStyles({\n base: {\n // overflow is required to allow the selection indicator to animate outside the tab area.\n overflow: 'visible',\n },\n animated: {\n '::after': {\n transitionProperty: 'transform',\n transitionDuration: `${tokens.durationSlow}`,\n transitionTimingFunction: `${tokens.curveDecelerateMax}`,\n },\n '@media (prefers-reduced-motion: reduce)': {\n '::after': {\n transitionProperty: 'none',\n transitionDuration: '0.01ms',\n },\n },\n },\n horizontal: {\n '::after': {\n transformOrigin: 'left',\n transform: `translateX(var(${tabIndicatorCssVars_unstable.offsetVar}))\n scaleX(var(${tabIndicatorCssVars_unstable.scaleVar}))`,\n },\n },\n vertical: {\n '::after': {\n transformOrigin: 'top',\n transform: `translateY(var(${tabIndicatorCssVars_unstable.offsetVar}))\n scaleY(var(${tabIndicatorCssVars_unstable.scaleVar}))`,\n },\n },\n});\n\nconst calculateTabRect = (element: HTMLElement) => {\n if (element) {\n const parentRect = element.parentElement?.getBoundingClientRect() || { x: 0, y: 0, width: 0, height: 0 };\n const tabRect = element.getBoundingClientRect();\n\n return {\n x: tabRect.x - parentRect.x,\n y: tabRect.y - parentRect.y,\n width: tabRect.width,\n height: tabRect.height,\n };\n }\n return undefined;\n};\n\nconst getRegisteredTabRect = (registeredTabs: Record<string, TabRegisterData>, value?: TabValue) => {\n const element = isValueDefined(value) ? registeredTabs[JSON.stringify(value)]?.ref.current : undefined;\n return element ? calculateTabRect(element) : undefined;\n};\n\n// eslint-disable-next-line eqeqeq\nconst isValueDefined = (value: TabValue) => value != null;\n\n/**\n * Adds additional styling to the active tab selection indicator to create a sliding animation.\n */\nexport const useTabAnimatedIndicatorStyles_unstable = (state: TabState): TabState => {\n const { disabled, selected, vertical } = state;\n\n const activeIndicatorStyles = useActiveIndicatorStyles();\n const [lastAnimatedFrom, setLastAnimatedFrom] = React.useState<TabValue>();\n const [animationValues, setAnimationValues] = React.useState({ offset: 0, scale: 1 });\n const getRegisteredTabs = useTabListContext_unstable(ctx => ctx.getRegisteredTabs);\n\n const [requestAnimationFrame] = useAnimationFrame();\n\n if (selected) {\n const { previousSelectedValue, selectedValue, registeredTabs } = getRegisteredTabs();\n\n if (isValueDefined(previousSelectedValue) && lastAnimatedFrom !== previousSelectedValue) {\n const previousSelectedTabRect = getRegisteredTabRect(registeredTabs, previousSelectedValue);\n const selectedTabRect = getRegisteredTabRect(registeredTabs, selectedValue);\n\n if (selectedTabRect && previousSelectedTabRect) {\n const offset = vertical\n ? previousSelectedTabRect.y - selectedTabRect.y\n : previousSelectedTabRect.x - selectedTabRect.x;\n\n const scale = vertical\n ? previousSelectedTabRect.height / selectedTabRect.height\n : previousSelectedTabRect.width / selectedTabRect.width;\n\n setAnimationValues({ offset, scale });\n setLastAnimatedFrom(previousSelectedValue);\n\n // Reset the animation values after the animation is complete\n requestAnimationFrame(() => setAnimationValues({ offset: 0, scale: 1 }));\n }\n }\n } else if (isValueDefined(lastAnimatedFrom)) {\n // need to clear the last animated from so that if this tab is selected again\n // from the same previous tab as last time, that animation still happens.\n setLastAnimatedFrom(undefined);\n }\n\n // do not apply any animation if the tab is disabled\n if (disabled) {\n return state;\n }\n\n // the animation should only happen as the selection indicator returns to its\n // original position and not when set at the previous tabs position.\n const animating = animationValues.offset === 0 && animationValues.scale === 1;\n\n state.root.className = mergeClasses(\n state.root.className,\n selected && activeIndicatorStyles.base,\n selected && animating && activeIndicatorStyles.animated,\n selected && (vertical ? activeIndicatorStyles.vertical : activeIndicatorStyles.horizontal),\n );\n\n const rootCssVars = {\n [tabIndicatorCssVars_unstable.offsetVar]: `${animationValues.offset}px`,\n [tabIndicatorCssVars_unstable.scaleVar]: `${animationValues.scale}`,\n };\n\n state.root.style = {\n ...rootCssVars,\n ...state.root.style,\n };\n\n return state;\n};\n"],"names":["React","makeStyles","mergeClasses","useTabListContext_unstable","tokens","useAnimationFrame","tabIndicatorCssVars_unstable","offsetVar","scaleVar","useActiveIndicatorStyles","base","overflow","animated","transitionProperty","transitionDuration","durationSlow","transitionTimingFunction","curveDecelerateMax","horizontal","transformOrigin","transform","vertical","calculateTabRect","element","parentRect","parentElement","getBoundingClientRect","x","y","width","height","tabRect","undefined","getRegisteredTabRect","registeredTabs","value","isValueDefined","JSON","stringify","ref","current","useTabAnimatedIndicatorStyles_unstable","state","disabled","selected","activeIndicatorStyles","lastAnimatedFrom","setLastAnimatedFrom","useState","animationValues","setAnimationValues","offset","scale","getRegisteredTabs","ctx","requestAnimationFrame","previousSelectedValue","selectedValue","previousSelectedTabRect","selectedTabRect","animating","root","className","rootCssVars","style"],"mappings":"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"}
|
|
@@ -307,10 +307,20 @@ const useCircularAppearanceStyles = /*#__PURE__*/ (0, _react.__styles)({
|
|
|
307
307
|
Bptxc3x: "ftorr8m",
|
|
308
308
|
cl4aha: "f16lqpmv"
|
|
309
309
|
},
|
|
310
|
+
small: {
|
|
311
|
+
Dbcxam: 0,
|
|
312
|
+
rjzwhg: 0,
|
|
313
|
+
Bblux5w: "fzklhed"
|
|
314
|
+
},
|
|
310
315
|
medium: {
|
|
311
316
|
Dbcxam: 0,
|
|
312
317
|
rjzwhg: 0,
|
|
313
|
-
Bblux5w: "
|
|
318
|
+
Bblux5w: "f1j721cc"
|
|
319
|
+
},
|
|
320
|
+
large: {
|
|
321
|
+
Dbcxam: 0,
|
|
322
|
+
rjzwhg: 0,
|
|
323
|
+
Bblux5w: "frx9knr"
|
|
314
324
|
},
|
|
315
325
|
subtle: {
|
|
316
326
|
De3pzq: "fhovq9v",
|
|
@@ -539,7 +549,19 @@ const useCircularAppearanceStyles = /*#__PURE__*/ (0, _react.__styles)({
|
|
|
539
549
|
".ftorr8m .fui-Tab__icon{color:inherit;}",
|
|
540
550
|
".f16lqpmv .fui-Tab__content{color:inherit;}",
|
|
541
551
|
[
|
|
542
|
-
".
|
|
552
|
+
".fzklhed{padding-block:calc(var(--spacingVerticalXXS) - var(--strokeWidthThin));}",
|
|
553
|
+
{
|
|
554
|
+
p: -1
|
|
555
|
+
}
|
|
556
|
+
],
|
|
557
|
+
[
|
|
558
|
+
".f1j721cc{padding-block:calc(var(--spacingVerticalSNudge) - var(--strokeWidthThin));}",
|
|
559
|
+
{
|
|
560
|
+
p: -1
|
|
561
|
+
}
|
|
562
|
+
],
|
|
563
|
+
[
|
|
564
|
+
".frx9knr{padding-block:calc(var(--spacingVerticalS) - var(--strokeWidthThin));}",
|
|
543
565
|
{
|
|
544
566
|
p: -1
|
|
545
567
|
}
|
|
@@ -1208,7 +1230,9 @@ const useTabButtonStyles_unstable = (state, slot)=>{
|
|
|
1208
1230
|
circularStyles.base,
|
|
1209
1231
|
focusStyles.circular,
|
|
1210
1232
|
// sizes
|
|
1233
|
+
size === 'small' && circularStyles.small,
|
|
1211
1234
|
size === 'medium' && circularStyles.medium,
|
|
1235
|
+
size === 'large' && circularStyles.large,
|
|
1212
1236
|
// subtle-circular appearance
|
|
1213
1237
|
isSubtleCircular && circularStyles.subtle,
|
|
1214
1238
|
selected && isSubtleCircular && circularStyles.subtleSelected,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["useTabStyles.styles.js"],"sourcesContent":["import { makeStyles, mergeClasses, shorthands } from '@griffel/react';\nimport { createCustomFocusIndicatorStyle } from '@fluentui/react-tabster';\nimport { tokens, typographyStyles } from '@fluentui/react-theme';\nimport { useTabAnimatedIndicatorStyles_unstable } from './useTabAnimatedIndicator.styles';\nexport const tabClassNames = {\n root: 'fui-Tab',\n icon: 'fui-Tab__icon',\n content: 'fui-Tab__content'\n};\nconst reservedSpaceClassNames = {\n content: 'fui-Tab__content--reserved-space'\n};\n// These should match the constants defined in @fluentui/react-icons\n// This package avoids taking a dependency on the icons package for only the constants.\nconst iconClassNames = {\n filled: 'fui-Icon-filled',\n regular: 'fui-Icon-regular'\n};\n/**\n * Styles for the root slot\n */ const useRootStyles = makeStyles({\n root: {\n alignItems: 'center',\n display: 'grid',\n flexShrink: 0,\n gridAutoFlow: 'column',\n gridTemplateColumns: 'auto',\n gridTemplateRows: 'auto',\n outlineStyle: 'none',\n position: 'relative'\n },\n button: {\n alignItems: 'center',\n border: 'none',\n borderRadius: tokens.borderRadiusMedium,\n cursor: 'pointer',\n display: 'grid',\n flexShrink: 0,\n gridAutoFlow: 'column',\n gridTemplateColumns: 'auto',\n gridTemplateRows: 'auto',\n fontFamily: tokens.fontFamilyBase,\n lineHeight: tokens.lineHeightBase300,\n outlineStyle: 'none',\n position: 'relative',\n overflow: 'hidden',\n textTransform: 'none'\n },\n horizontal: {\n justifyContent: 'center'\n },\n vertical: {\n justifyContent: 'start'\n },\n smallHorizontal: {\n columnGap: tokens.spacingHorizontalXXS,\n padding: `${tokens.spacingVerticalSNudge} ${tokens.spacingHorizontalSNudge}`\n },\n smallVertical: {\n // horizontal spacing is deliberate. This is the gap between icon and content.\n columnGap: tokens.spacingHorizontalXXS,\n padding: `${tokens.spacingVerticalXXS} ${tokens.spacingHorizontalSNudge}`\n },\n mediumHorizontal: {\n columnGap: tokens.spacingHorizontalSNudge,\n padding: `${tokens.spacingVerticalM} ${tokens.spacingHorizontalMNudge}`\n },\n mediumVertical: {\n // horizontal spacing is deliberate. This is the gap between icon and content.\n columnGap: tokens.spacingHorizontalSNudge,\n padding: `${tokens.spacingVerticalSNudge} ${tokens.spacingHorizontalMNudge}`\n },\n largeHorizontal: {\n columnGap: tokens.spacingHorizontalSNudge,\n padding: `${tokens.spacingVerticalL} ${tokens.spacingHorizontalMNudge}`\n },\n largeVertical: {\n // horizontal spacing is deliberate. This is the gap between icon and content.\n columnGap: tokens.spacingHorizontalSNudge,\n padding: `${tokens.spacingVerticalS} ${tokens.spacingHorizontalMNudge}`\n },\n transparent: {\n backgroundColor: tokens.colorTransparentBackground,\n ':enabled:hover': {\n backgroundColor: tokens.colorTransparentBackgroundHover\n },\n ':enabled:active': {\n backgroundColor: tokens.colorTransparentBackgroundPressed\n },\n [`& .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2\n },\n [`:enabled:hover .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2Hover\n },\n [`:enabled:active .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2Pressed\n },\n [`& .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground2\n },\n [`:enabled:hover .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground2Hover\n },\n [`:enabled:active .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground2Pressed\n }\n },\n subtle: {\n backgroundColor: tokens.colorSubtleBackground,\n ':enabled:hover': {\n backgroundColor: tokens.colorSubtleBackgroundHover\n },\n ':enabled:active': {\n backgroundColor: tokens.colorSubtleBackgroundPressed\n },\n [`& .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2\n },\n [`:enabled:hover .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2Hover\n },\n [`:enabled:active .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2Pressed\n },\n [`& .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground2\n },\n [`:enabled:hover .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground2Hover\n },\n [`:enabled:active .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground2Pressed\n }\n },\n disabledCursor: {\n cursor: 'not-allowed'\n },\n disabled: {\n backgroundColor: tokens.colorTransparentBackground,\n [`& .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForegroundDisabled\n },\n [`& .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForegroundDisabled\n }\n },\n selected: {\n [`& .${tabClassNames.icon}`]: {\n color: tokens.colorCompoundBrandForeground1\n },\n [`:enabled:hover .${tabClassNames.icon}`]: {\n color: tokens.colorCompoundBrandForeground1Hover\n },\n [`:enabled:active .${tabClassNames.icon}`]: {\n color: tokens.colorCompoundBrandForeground1Pressed\n },\n [`& .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground1\n },\n [`:enabled:hover .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground1Hover\n },\n [`:enabled:active .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground1Pressed\n }\n }\n});\nconst useCircularAppearanceStyles = makeStyles({\n base: {\n borderRadius: tokens.borderRadiusCircular,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorTransparentStroke}`,\n [`& .${tabClassNames.icon}`]: {\n color: 'inherit'\n },\n [`& .${tabClassNames.content}`]: {\n color: 'inherit'\n }\n },\n medium: {\n paddingBlock: `${tokens.spacingVerticalSNudge}`\n },\n subtle: {\n backgroundColor: tokens.colorSubtleBackground,\n color: tokens.colorNeutralForeground2,\n ':enabled:hover': {\n backgroundColor: tokens.colorSubtleBackgroundHover,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorNeutralStroke1Hover}`,\n color: tokens.colorNeutralForeground2Hover\n },\n ':enabled:active': {\n backgroundColor: tokens.colorSubtleBackgroundPressed,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorNeutralStroke1Pressed}`,\n color: tokens.colorNeutralForeground2Pressed\n },\n '@media (forced-colors: active)': {\n border: `solid ${tokens.strokeWidthThin} Canvas`\n }\n },\n subtleSelected: {\n backgroundColor: tokens.colorBrandBackground2,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorCompoundBrandStroke}`,\n color: tokens.colorBrandForeground2,\n ':enabled:hover': {\n backgroundColor: tokens.colorBrandBackground2Hover,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorCompoundBrandStrokeHover}`,\n color: tokens.colorBrandForeground2Hover\n },\n ':enabled:active': {\n backgroundColor: tokens.colorBrandBackground2Pressed,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorCompoundBrandStrokePressed}`,\n color: tokens.colorBrandForeground2Pressed\n },\n '@media (forced-colors: active)': {\n border: `solid ${tokens.strokeWidthThin} Highlight`\n }\n },\n subtleDisabled: {\n backgroundColor: tokens.colorSubtleBackground,\n color: tokens.colorNeutralForegroundDisabled\n },\n subtleDisabledSelected: {\n backgroundColor: tokens.colorNeutralBackgroundDisabled,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorNeutralStrokeDisabled}`,\n color: tokens.colorNeutralForegroundDisabled\n },\n filled: {\n backgroundColor: tokens.colorNeutralBackground3,\n color: tokens.colorNeutralForeground2,\n ':enabled:hover': {\n backgroundColor: tokens.colorNeutralBackground3Hover,\n color: tokens.colorNeutralForeground2Hover\n },\n ':enabled:active': {\n backgroundColor: tokens.colorNeutralBackground3Pressed,\n color: tokens.colorNeutralForeground2Pressed\n },\n '@media (forced-colors: active)': {\n ':enabled:hover': {\n backgroundColor: 'Highlight',\n forcedColorAdjust: 'none',\n [`& .${tabClassNames.content}`]: {\n color: 'HighlightText'\n },\n [`& .${iconClassNames.filled}`]: {\n color: 'HighlightText'\n },\n [`& .${iconClassNames.regular}`]: {\n color: 'HighlightText'\n }\n }\n }\n },\n filledSelected: {\n backgroundColor: tokens.colorBrandBackground,\n color: tokens.colorNeutralForegroundOnBrand,\n ':enabled:hover': {\n backgroundColor: tokens.colorBrandBackgroundHover,\n color: tokens.colorNeutralForegroundOnBrand\n },\n ':enabled:active': {\n backgroundColor: tokens.colorBrandBackgroundPressed,\n color: tokens.colorNeutralForegroundOnBrand\n },\n '@media (forced-colors: active)': {\n ':enabled': {\n backgroundColor: 'ButtonText',\n [`& .${tabClassNames.content}`]: {\n color: 'ButtonFace',\n forcedColorAdjust: 'none'\n }\n },\n [`:enabled .${tabClassNames.icon}`]: {\n color: 'ButtonFace'\n }\n }\n },\n filledDisabled: {\n backgroundColor: tokens.colorNeutralBackgroundDisabled,\n color: tokens.colorNeutralForegroundDisabled\n },\n filledDisabledSelected: {\n backgroundColor: tokens.colorNeutralBackgroundDisabled,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorNeutralStrokeDisabled}`,\n color: tokens.colorNeutralForegroundDisabled\n }\n});\n/**\n * Focus styles for the root slot\n */ const useFocusStyles = makeStyles({\n // Tab creates a custom focus indicator because the default focus indicator\n // is applied using an ::after pseudo-element on the root. Since the selection\n // indicator uses an ::after pseudo-element on the root, there is a conflict.\n base: createCustomFocusIndicatorStyle({\n ...shorthands.borderColor('transparent'),\n outlineWidth: tokens.strokeWidthThick,\n outlineColor: 'transparent',\n outlineStyle: 'solid',\n boxShadow: `\n ${tokens.shadow4},\n 0 0 0 ${tokens.strokeWidthThick} ${tokens.colorStrokeFocus2}\n `,\n zIndex: 1\n }, {\n enableOutline: true\n }),\n circular: createCustomFocusIndicatorStyle({\n ...shorthands.borderColor('transparent'),\n outlineWidth: tokens.strokeWidthThick,\n outlineColor: 'transparent',\n outlineStyle: 'solid',\n boxShadow: `\n ${tokens.shadow4},\n 0 0 0 ${tokens.strokeWidthThick} ${tokens.colorStrokeFocus2},\n 0 0 0 ${tokens.strokeWidthThin} ${tokens.colorNeutralStrokeOnBrand} inset\n `,\n zIndex: 1\n }, {\n enableOutline: true\n })\n});\n/** Indicator styles for when pending selection */ const usePendingIndicatorStyles = makeStyles({\n base: {\n ':hover::before': {\n backgroundColor: tokens.colorNeutralStroke1Hover,\n borderRadius: tokens.borderRadiusCircular,\n content: '\"\"',\n position: 'absolute'\n },\n ':active::before': {\n backgroundColor: tokens.colorNeutralStroke1Pressed,\n borderRadius: tokens.borderRadiusCircular,\n content: '\"\"',\n position: 'absolute'\n },\n '@media (forced-colors: active)': {\n ':hover::before': {\n backgroundColor: 'Highlight'\n },\n ':active::before': {\n backgroundColor: 'Highlight'\n }\n }\n },\n disabled: {\n ':hover::before': {\n backgroundColor: tokens.colorTransparentStroke\n },\n ':active::before': {\n backgroundColor: tokens.colorTransparentStroke\n },\n '@media (forced-colors: active)': {\n ':hover::before': {\n backgroundColor: 'transparent'\n },\n ':active::before': {\n backgroundColor: 'transparent'\n }\n }\n },\n smallHorizontal: {\n '::before': {\n bottom: 0,\n height: tokens.strokeWidthThick,\n left: tokens.spacingHorizontalSNudge,\n right: tokens.spacingHorizontalSNudge\n }\n },\n smallVertical: {\n '::before': {\n bottom: tokens.spacingVerticalXS,\n left: 0,\n top: tokens.spacingVerticalXS,\n width: tokens.strokeWidthThicker\n }\n },\n mediumHorizontal: {\n '::before': {\n bottom: 0,\n height: tokens.strokeWidthThicker,\n left: tokens.spacingHorizontalM,\n right: tokens.spacingHorizontalM\n }\n },\n mediumVertical: {\n '::before': {\n bottom: tokens.spacingVerticalS,\n left: 0,\n top: tokens.spacingVerticalS,\n width: tokens.strokeWidthThicker\n }\n },\n largeHorizontal: {\n '::before': {\n bottom: 0,\n height: tokens.strokeWidthThicker,\n left: tokens.spacingHorizontalM,\n right: tokens.spacingHorizontalM\n }\n },\n largeVertical: {\n '::before': {\n bottom: tokens.spacingVerticalMNudge,\n left: 0,\n top: tokens.spacingVerticalMNudge,\n width: tokens.strokeWidthThicker\n }\n }\n});\nconst useActiveIndicatorStyles = makeStyles({\n base: {\n '::after': {\n backgroundColor: tokens.colorTransparentStroke,\n borderRadius: tokens.borderRadiusCircular,\n content: '\"\"',\n position: 'absolute'\n }\n },\n selected: {\n '::after': {\n backgroundColor: tokens.colorCompoundBrandStroke\n },\n ':enabled:hover::after': {\n backgroundColor: tokens.colorCompoundBrandStrokeHover\n },\n ':enabled:active::after': {\n backgroundColor: tokens.colorCompoundBrandStrokePressed\n },\n '@media (forced-colors: active)': {\n '::after': {\n backgroundColor: 'ButtonText'\n },\n ':enabled:hover::after': {\n backgroundColor: 'ButtonText'\n },\n ':enabled:active::after': {\n backgroundColor: 'ButtonText'\n }\n }\n },\n disabled: {\n '::after': {\n backgroundColor: tokens.colorNeutralForegroundDisabled\n }\n },\n smallHorizontal: {\n '::after': {\n bottom: 0,\n height: tokens.strokeWidthThick,\n left: tokens.spacingHorizontalSNudge,\n right: tokens.spacingHorizontalSNudge\n }\n },\n smallVertical: {\n '::after': {\n bottom: tokens.spacingVerticalXS,\n left: '0',\n top: tokens.spacingVerticalXS,\n width: tokens.strokeWidthThicker\n }\n },\n mediumHorizontal: {\n '::after': {\n bottom: '0',\n height: tokens.strokeWidthThicker,\n left: tokens.spacingHorizontalM,\n right: tokens.spacingHorizontalM\n }\n },\n mediumVertical: {\n '::after': {\n bottom: tokens.spacingVerticalS,\n left: 0,\n top: tokens.spacingVerticalS,\n width: tokens.strokeWidthThicker\n }\n },\n largeHorizontal: {\n '::after': {\n bottom: 0,\n height: tokens.strokeWidthThicker,\n left: tokens.spacingHorizontalM,\n right: tokens.spacingHorizontalM\n }\n },\n largeVertical: {\n '::after': {\n bottom: tokens.spacingVerticalMNudge,\n left: 0,\n top: tokens.spacingVerticalMNudge,\n width: tokens.strokeWidthThicker\n }\n }\n});\n/**\n * Styles for the icon slot.\n */ const useIconStyles = makeStyles({\n base: {\n gridColumnStart: 1,\n gridRowStart: 1,\n alignItems: 'center',\n display: 'inline-flex',\n justifyContent: 'center',\n overflow: 'hidden',\n [`& .${iconClassNames.filled}`]: {\n display: 'none'\n },\n [`& .${iconClassNames.regular}`]: {\n display: 'inline'\n }\n },\n // per design, the small and medium font sizes are the same.\n // the size prop only affects spacing.\n small: {\n fontSize: '20px',\n height: '20px',\n width: '20px'\n },\n medium: {\n fontSize: '20px',\n height: '20px',\n width: '20px'\n },\n large: {\n fontSize: '24px',\n height: '24px',\n width: '24px'\n },\n selected: {\n [`& .${iconClassNames.filled}`]: {\n display: 'inline'\n },\n [`& .${iconClassNames.regular}`]: {\n display: 'none'\n }\n }\n});\n/**\n * Styles for the content slot (children)\n */ const useContentStyles = makeStyles({\n base: {\n ...typographyStyles.body1,\n overflow: 'hidden',\n // content padding is the same for medium & small, horizontal & vertical\n padding: `${tokens.spacingVerticalNone} ${tokens.spacingHorizontalXXS}`\n },\n selected: {\n ...typographyStyles.body1Strong\n },\n large: {\n ...typographyStyles.body2\n },\n largeSelected: {\n ...typographyStyles.subtitle2\n },\n noIconBefore: {\n gridColumnStart: 1,\n gridRowStart: 1\n },\n iconBefore: {\n gridColumnStart: 2,\n gridRowStart: 1\n },\n placeholder: {\n visibility: 'hidden'\n }\n});\n/**\n * Apply styling to the Tab slots based on the state\n */ export const useTabStyles_unstable = (state)=>{\n 'use no memo';\n useTabIndicatorStyles_unstable(state);\n useTabButtonStyles_unstable(state, state.root);\n useTabContentStyles_unstable(state);\n return state;\n};\n/**\n * Applies styles for the Tab indicator based on its current state.\n *\n * This hook is typically used internally by `useTabStyles_unstable`. You should\n * only use it directly if you're creating a custom `Tab` component.\n *\n * @param state - The `Tab` component's current state\n * @returns The state object with updated button styles\n */ export const useTabIndicatorStyles_unstable = (state)=>{\n 'use no memo';\n const rootStyles = useRootStyles();\n const pendingIndicatorStyles = usePendingIndicatorStyles();\n const activeIndicatorStyles = useActiveIndicatorStyles();\n const { appearance, disabled, selected, size, vertical } = state;\n const classes = [\n tabClassNames.root,\n rootStyles.root\n ];\n if (appearance !== 'subtle-circular' && appearance !== 'filled-circular') {\n classes.push(// pending indicator (before pseudo element)\n pendingIndicatorStyles.base, size === 'small' && (vertical ? pendingIndicatorStyles.smallVertical : pendingIndicatorStyles.smallHorizontal), size === 'medium' && (vertical ? pendingIndicatorStyles.mediumVertical : pendingIndicatorStyles.mediumHorizontal), size === 'large' && (vertical ? pendingIndicatorStyles.largeVertical : pendingIndicatorStyles.largeHorizontal), disabled && pendingIndicatorStyles.disabled, // active indicator (after pseudo element)\n selected && activeIndicatorStyles.base, selected && !disabled && activeIndicatorStyles.selected, selected && size === 'small' && (vertical ? activeIndicatorStyles.smallVertical : activeIndicatorStyles.smallHorizontal), selected && size === 'medium' && (vertical ? activeIndicatorStyles.mediumVertical : activeIndicatorStyles.mediumHorizontal), selected && size === 'large' && (vertical ? activeIndicatorStyles.largeVertical : activeIndicatorStyles.largeHorizontal), selected && disabled && activeIndicatorStyles.disabled);\n }\n state.root.className = mergeClasses(...classes, state.root.className);\n useTabAnimatedIndicatorStyles_unstable(state);\n return state;\n};\n/**\n * Applies styles to the Tab button slot based on its current state.\n *\n * This hook is typically used internally by `useTabStyles_unstable`. You should\n * only use it directly if you're creating a custom `Tab` component.\n *\n * @param state - The Tab component's current state\n * @param slot - The button slot of the Tab component\n * @returns The state object with updated button styles\n */ export const useTabButtonStyles_unstable = (state, slot)=>{\n 'use no memo';\n const rootStyles = useRootStyles();\n const focusStyles = useFocusStyles();\n const circularStyles = useCircularAppearanceStyles();\n const { appearance, disabled, selected, size, vertical } = state;\n const isSubtleCircular = appearance === 'subtle-circular';\n const isFilledCircular = appearance === 'filled-circular';\n const isCircular = isSubtleCircular || isFilledCircular;\n const circularAppearance = [\n circularStyles.base,\n focusStyles.circular,\n // sizes\n size === 'medium' && circularStyles.medium,\n // subtle-circular appearance\n isSubtleCircular && circularStyles.subtle,\n selected && isSubtleCircular && circularStyles.subtleSelected,\n disabled && isSubtleCircular && circularStyles.subtleDisabled,\n selected && disabled && isSubtleCircular && circularStyles.subtleDisabledSelected,\n // filled-circular appearance\n isFilledCircular && circularStyles.filled,\n selected && isFilledCircular && circularStyles.filledSelected,\n disabled && isFilledCircular && circularStyles.filledDisabled,\n selected && disabled && isFilledCircular && circularStyles.filledDisabledSelected\n ];\n const regularAppearance = [\n focusStyles.base,\n !disabled && appearance === 'subtle' && rootStyles.subtle,\n !disabled && appearance === 'transparent' && rootStyles.transparent,\n !disabled && selected && rootStyles.selected,\n disabled && rootStyles.disabled\n ];\n slot.className = mergeClasses(rootStyles.button, // orientation\n vertical ? rootStyles.vertical : rootStyles.horizontal, // size\n size === 'small' && (vertical ? rootStyles.smallVertical : rootStyles.smallHorizontal), size === 'medium' && (vertical ? rootStyles.mediumVertical : rootStyles.mediumHorizontal), size === 'large' && (vertical ? rootStyles.largeVertical : rootStyles.largeHorizontal), ...isCircular ? circularAppearance : regularAppearance, disabled && rootStyles.disabledCursor, slot.className);\n return state;\n};\n/**\n * Applies styles to the Tab content slot based on its current state.\n *\n * This hook is typically used internally by `useTabStyles_unstable`. You should\n * only use it directly if you're creating a custom `Tab` component.\n *\n * @param state - The Tab component's current state\n * @returns The state object with updated content styles\n */ export const useTabContentStyles_unstable = (state)=>{\n 'use no memo';\n const iconStyles = useIconStyles();\n const contentStyles = useContentStyles();\n const { selected, size } = state;\n if (state.icon) {\n state.icon.className = mergeClasses(tabClassNames.icon, iconStyles.base, iconStyles[size], selected && iconStyles.selected, state.icon.className);\n }\n // This needs to be before state.content.className is updated\n if (state.contentReservedSpace) {\n state.contentReservedSpace.className = mergeClasses(reservedSpaceClassNames.content, contentStyles.base, size === 'large' ? contentStyles.largeSelected : contentStyles.selected, state.icon ? contentStyles.iconBefore : contentStyles.noIconBefore, contentStyles.placeholder, state.content.className);\n // FIXME: this is a deprecated API\n // should be removed in the next major version\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n state.contentReservedSpaceClassName = state.contentReservedSpace.className;\n }\n state.content.className = mergeClasses(tabClassNames.content, contentStyles.base, size === 'large' && contentStyles.large, selected && (size === 'large' ? contentStyles.largeSelected : contentStyles.selected), state.icon ? contentStyles.iconBefore : contentStyles.noIconBefore, state.content.className);\n return state;\n};\n"],"names":["tabClassNames","useTabButtonStyles_unstable","useTabContentStyles_unstable","useTabIndicatorStyles_unstable","useTabStyles_unstable","root","icon","content","reservedSpaceClassNames","iconClassNames","filled","regular","useRootStyles","__styles","Bt984gj","mc9l5x","Bnnss6s","Bxotwcr","Budl1dq","wkccdc","oeaueh","qhf8xq","button","Bgfg5da","B9xav0g","oivjwe","Bn0qgzm","B4g9neb","zhjwy3","wvpqe5","ibv6hh","u1mtju","h3c5rm","vrafjx","Bekrc4i","i8vvqc","g2u3we","icvyot","B4j52fo","irswps","Beyfa6y","Bbmb7ep","Btl43ni","B7oj6ja","Dimara","Bceei9c","Bahqtrf","Bg96gwp","B68tc82","Bmxbyg5","Bpg54ce","B9bfxx9","horizontal","Brf1p80","vertical","smallHorizontal","i8kkvl","Byoj8tv","uwmqm3","z189sj","z8tnut","B0ocmuz","smallVertical","mediumHorizontal","mediumVertical","largeHorizontal","largeVertical","transparent","De3pzq","B95qlz1","B7xitij","Bptxc3x","Bwqhzpy","iyk698","cl4aha","B0q3jbp","Be9ayug","subtle","disabledCursor","disabled","selected","d","p","useCircularAppearanceStyles","base","medium","Dbcxam","rjzwhg","Bblux5w","sj55zd","Eo63ln","r9osk6","Itrz8y","zeg6vx","l65xgk","Bw4olcx","Folb0i","I2h8y4","Bgxgoyi","Bvlkotb","Fwyncl","Byh5edv","Becqvjq","uumbiq","B73q3dg","Bblwbaf","B0ezav","r4wkhp","d3wsvi","Hdqn7s","zu5y1p","owqphb","g9c53k","Btmu08z","Bthxvy6","gluvuq","tb88gp","wns6jk","kdfdk4","Bbw008l","Bayi1ib","B1kkfu3","J1oqyp","kem6az","goa3yj","p743kt","uu68id","Bxeuatn","felo30","Bc736ss","Bhz882k","n51gp8","Eshu5l","Bk6ri7n","v49c4f","Bn1d65q","c4eypz","v3aym","hft9gk","Bjwas2f","Bk5ld8o","gwxt9v","B6k8go","subtleSelected","subtleDisabled","subtleDisabledSelected","Bw5j0gk","Baikq8m","B2ndh17","w0x64w","Bdzpij4","filledSelected","bml8oc","qew46a","B84x17g","Jetwu1","filledDisabled","filledDisabledSelected","m","useFocusStyles","B8q5s1w","Bci5o5g","n8qw10","Bdrgwmp","Bn4voq9","Bfpq7zp","g9k6zt","j6ew2k","Bhxq17a","circular","usePendingIndicatorStyles","az7l2e","vqofr","Bv4n3vi","Bgqb9hq","B0uxbk8","Bf3jju6","amg5m6","zkfqfm","Bkydozb","Bka2azo","vzq8l0","csmgbd","Br4ovkg","aelrif","y36c18","B1ctymy","Bgvrrv0","ddr6p5","lawp4y","Baz25je","Fbdkly","mdwyqc","Bciustq","Ccq8qp","h","a","useActiveIndicatorStyles","Bjyk6c5","d9w3h3","B3778ie","B4j8arr","Bl18szs","Blrzh8d","Bsft5z2","E3zdtr","Bej4dhw","B7wqxwa","f7digc","Bvuzv5k","k4sdgo","By385i5","Dlnsje","Eqx8gd","B1piin3","bn5sak","a2br6o","useIconStyles","Br312pm","Ijaq50","D0sxk3","t6yez3","small","Be2twd7","Bqenvij","a9b677","large","useContentStyles","Bhrd7zp","largeSelected","noIconBefore","iconBefore","placeholder","Bcdw1i0","state","rootStyles","pendingIndicatorStyles","activeIndicatorStyles","appearance","size","classes","push","className","mergeClasses","useTabAnimatedIndicatorStyles_unstable","slot","focusStyles","circularStyles","isSubtleCircular","isFilledCircular","isCircular","circularAppearance","regularAppearance","iconStyles","contentStyles","contentReservedSpace","contentReservedSpaceClassName"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["useTabStyles.styles.js"],"sourcesContent":["import { makeStyles, mergeClasses, shorthands } from '@griffel/react';\nimport { createCustomFocusIndicatorStyle } from '@fluentui/react-tabster';\nimport { tokens, typographyStyles } from '@fluentui/react-theme';\nimport { useTabAnimatedIndicatorStyles_unstable } from './useTabAnimatedIndicator.styles';\nexport const tabClassNames = {\n root: 'fui-Tab',\n icon: 'fui-Tab__icon',\n content: 'fui-Tab__content'\n};\nconst reservedSpaceClassNames = {\n content: 'fui-Tab__content--reserved-space'\n};\n// These should match the constants defined in @fluentui/react-icons\n// This package avoids taking a dependency on the icons package for only the constants.\nconst iconClassNames = {\n filled: 'fui-Icon-filled',\n regular: 'fui-Icon-regular'\n};\n/**\n * Styles for the root slot\n */ const useRootStyles = makeStyles({\n root: {\n alignItems: 'center',\n display: 'grid',\n flexShrink: 0,\n gridAutoFlow: 'column',\n gridTemplateColumns: 'auto',\n gridTemplateRows: 'auto',\n outlineStyle: 'none',\n position: 'relative'\n },\n button: {\n alignItems: 'center',\n border: 'none',\n borderRadius: tokens.borderRadiusMedium,\n cursor: 'pointer',\n display: 'grid',\n flexShrink: 0,\n gridAutoFlow: 'column',\n gridTemplateColumns: 'auto',\n gridTemplateRows: 'auto',\n fontFamily: tokens.fontFamilyBase,\n lineHeight: tokens.lineHeightBase300,\n outlineStyle: 'none',\n position: 'relative',\n overflow: 'hidden',\n textTransform: 'none'\n },\n horizontal: {\n justifyContent: 'center'\n },\n vertical: {\n justifyContent: 'start'\n },\n smallHorizontal: {\n columnGap: tokens.spacingHorizontalXXS,\n padding: `${tokens.spacingVerticalSNudge} ${tokens.spacingHorizontalSNudge}`\n },\n smallVertical: {\n // horizontal spacing is deliberate. This is the gap between icon and content.\n columnGap: tokens.spacingHorizontalXXS,\n padding: `${tokens.spacingVerticalXXS} ${tokens.spacingHorizontalSNudge}`\n },\n mediumHorizontal: {\n columnGap: tokens.spacingHorizontalSNudge,\n padding: `${tokens.spacingVerticalM} ${tokens.spacingHorizontalMNudge}`\n },\n mediumVertical: {\n // horizontal spacing is deliberate. This is the gap between icon and content.\n columnGap: tokens.spacingHorizontalSNudge,\n padding: `${tokens.spacingVerticalSNudge} ${tokens.spacingHorizontalMNudge}`\n },\n largeHorizontal: {\n columnGap: tokens.spacingHorizontalSNudge,\n padding: `${tokens.spacingVerticalL} ${tokens.spacingHorizontalMNudge}`\n },\n largeVertical: {\n // horizontal spacing is deliberate. This is the gap between icon and content.\n columnGap: tokens.spacingHorizontalSNudge,\n padding: `${tokens.spacingVerticalS} ${tokens.spacingHorizontalMNudge}`\n },\n transparent: {\n backgroundColor: tokens.colorTransparentBackground,\n ':enabled:hover': {\n backgroundColor: tokens.colorTransparentBackgroundHover\n },\n ':enabled:active': {\n backgroundColor: tokens.colorTransparentBackgroundPressed\n },\n [`& .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2\n },\n [`:enabled:hover .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2Hover\n },\n [`:enabled:active .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2Pressed\n },\n [`& .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground2\n },\n [`:enabled:hover .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground2Hover\n },\n [`:enabled:active .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground2Pressed\n }\n },\n subtle: {\n backgroundColor: tokens.colorSubtleBackground,\n ':enabled:hover': {\n backgroundColor: tokens.colorSubtleBackgroundHover\n },\n ':enabled:active': {\n backgroundColor: tokens.colorSubtleBackgroundPressed\n },\n [`& .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2\n },\n [`:enabled:hover .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2Hover\n },\n [`:enabled:active .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2Pressed\n },\n [`& .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground2\n },\n [`:enabled:hover .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground2Hover\n },\n [`:enabled:active .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground2Pressed\n }\n },\n disabledCursor: {\n cursor: 'not-allowed'\n },\n disabled: {\n backgroundColor: tokens.colorTransparentBackground,\n [`& .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForegroundDisabled\n },\n [`& .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForegroundDisabled\n }\n },\n selected: {\n [`& .${tabClassNames.icon}`]: {\n color: tokens.colorCompoundBrandForeground1\n },\n [`:enabled:hover .${tabClassNames.icon}`]: {\n color: tokens.colorCompoundBrandForeground1Hover\n },\n [`:enabled:active .${tabClassNames.icon}`]: {\n color: tokens.colorCompoundBrandForeground1Pressed\n },\n [`& .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground1\n },\n [`:enabled:hover .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground1Hover\n },\n [`:enabled:active .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground1Pressed\n }\n }\n});\nconst useCircularAppearanceStyles = makeStyles({\n base: {\n borderRadius: tokens.borderRadiusCircular,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorTransparentStroke}`,\n [`& .${tabClassNames.icon}`]: {\n color: 'inherit'\n },\n [`& .${tabClassNames.content}`]: {\n color: 'inherit'\n }\n },\n small: {\n paddingBlock: `calc(${tokens.spacingVerticalXXS} - ${tokens.strokeWidthThin})`\n },\n medium: {\n paddingBlock: `calc(${tokens.spacingVerticalSNudge} - ${tokens.strokeWidthThin})`\n },\n large: {\n paddingBlock: `calc(${tokens.spacingVerticalS} - ${tokens.strokeWidthThin})`\n },\n subtle: {\n backgroundColor: tokens.colorSubtleBackground,\n color: tokens.colorNeutralForeground2,\n ':enabled:hover': {\n backgroundColor: tokens.colorSubtleBackgroundHover,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorNeutralStroke1Hover}`,\n color: tokens.colorNeutralForeground2Hover\n },\n ':enabled:active': {\n backgroundColor: tokens.colorSubtleBackgroundPressed,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorNeutralStroke1Pressed}`,\n color: tokens.colorNeutralForeground2Pressed\n },\n '@media (forced-colors: active)': {\n border: `solid ${tokens.strokeWidthThin} Canvas`\n }\n },\n subtleSelected: {\n backgroundColor: tokens.colorBrandBackground2,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorCompoundBrandStroke}`,\n color: tokens.colorBrandForeground2,\n ':enabled:hover': {\n backgroundColor: tokens.colorBrandBackground2Hover,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorCompoundBrandStrokeHover}`,\n color: tokens.colorBrandForeground2Hover\n },\n ':enabled:active': {\n backgroundColor: tokens.colorBrandBackground2Pressed,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorCompoundBrandStrokePressed}`,\n color: tokens.colorBrandForeground2Pressed\n },\n '@media (forced-colors: active)': {\n border: `solid ${tokens.strokeWidthThin} Highlight`\n }\n },\n subtleDisabled: {\n backgroundColor: tokens.colorSubtleBackground,\n color: tokens.colorNeutralForegroundDisabled\n },\n subtleDisabledSelected: {\n backgroundColor: tokens.colorNeutralBackgroundDisabled,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorNeutralStrokeDisabled}`,\n color: tokens.colorNeutralForegroundDisabled\n },\n filled: {\n backgroundColor: tokens.colorNeutralBackground3,\n color: tokens.colorNeutralForeground2,\n ':enabled:hover': {\n backgroundColor: tokens.colorNeutralBackground3Hover,\n color: tokens.colorNeutralForeground2Hover\n },\n ':enabled:active': {\n backgroundColor: tokens.colorNeutralBackground3Pressed,\n color: tokens.colorNeutralForeground2Pressed\n },\n '@media (forced-colors: active)': {\n ':enabled:hover': {\n backgroundColor: 'Highlight',\n forcedColorAdjust: 'none',\n [`& .${tabClassNames.content}`]: {\n color: 'HighlightText'\n },\n [`& .${iconClassNames.filled}`]: {\n color: 'HighlightText'\n },\n [`& .${iconClassNames.regular}`]: {\n color: 'HighlightText'\n }\n }\n }\n },\n filledSelected: {\n backgroundColor: tokens.colorBrandBackground,\n color: tokens.colorNeutralForegroundOnBrand,\n ':enabled:hover': {\n backgroundColor: tokens.colorBrandBackgroundHover,\n color: tokens.colorNeutralForegroundOnBrand\n },\n ':enabled:active': {\n backgroundColor: tokens.colorBrandBackgroundPressed,\n color: tokens.colorNeutralForegroundOnBrand\n },\n '@media (forced-colors: active)': {\n ':enabled': {\n backgroundColor: 'ButtonText',\n [`& .${tabClassNames.content}`]: {\n color: 'ButtonFace',\n forcedColorAdjust: 'none'\n }\n },\n [`:enabled .${tabClassNames.icon}`]: {\n color: 'ButtonFace'\n }\n }\n },\n filledDisabled: {\n backgroundColor: tokens.colorNeutralBackgroundDisabled,\n color: tokens.colorNeutralForegroundDisabled\n },\n filledDisabledSelected: {\n backgroundColor: tokens.colorNeutralBackgroundDisabled,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorNeutralStrokeDisabled}`,\n color: tokens.colorNeutralForegroundDisabled\n }\n});\n/**\n * Focus styles for the root slot\n */ const useFocusStyles = makeStyles({\n // Tab creates a custom focus indicator because the default focus indicator\n // is applied using an ::after pseudo-element on the root. Since the selection\n // indicator uses an ::after pseudo-element on the root, there is a conflict.\n base: createCustomFocusIndicatorStyle({\n ...shorthands.borderColor('transparent'),\n outlineWidth: tokens.strokeWidthThick,\n outlineColor: 'transparent',\n outlineStyle: 'solid',\n boxShadow: `\n ${tokens.shadow4},\n 0 0 0 ${tokens.strokeWidthThick} ${tokens.colorStrokeFocus2}\n `,\n zIndex: 1\n }, {\n enableOutline: true\n }),\n circular: createCustomFocusIndicatorStyle({\n ...shorthands.borderColor('transparent'),\n outlineWidth: tokens.strokeWidthThick,\n outlineColor: 'transparent',\n outlineStyle: 'solid',\n boxShadow: `\n ${tokens.shadow4},\n 0 0 0 ${tokens.strokeWidthThick} ${tokens.colorStrokeFocus2},\n 0 0 0 ${tokens.strokeWidthThin} ${tokens.colorNeutralStrokeOnBrand} inset\n `,\n zIndex: 1\n }, {\n enableOutline: true\n })\n});\n/** Indicator styles for when pending selection */ const usePendingIndicatorStyles = makeStyles({\n base: {\n ':hover::before': {\n backgroundColor: tokens.colorNeutralStroke1Hover,\n borderRadius: tokens.borderRadiusCircular,\n content: '\"\"',\n position: 'absolute'\n },\n ':active::before': {\n backgroundColor: tokens.colorNeutralStroke1Pressed,\n borderRadius: tokens.borderRadiusCircular,\n content: '\"\"',\n position: 'absolute'\n },\n '@media (forced-colors: active)': {\n ':hover::before': {\n backgroundColor: 'Highlight'\n },\n ':active::before': {\n backgroundColor: 'Highlight'\n }\n }\n },\n disabled: {\n ':hover::before': {\n backgroundColor: tokens.colorTransparentStroke\n },\n ':active::before': {\n backgroundColor: tokens.colorTransparentStroke\n },\n '@media (forced-colors: active)': {\n ':hover::before': {\n backgroundColor: 'transparent'\n },\n ':active::before': {\n backgroundColor: 'transparent'\n }\n }\n },\n smallHorizontal: {\n '::before': {\n bottom: 0,\n height: tokens.strokeWidthThick,\n left: tokens.spacingHorizontalSNudge,\n right: tokens.spacingHorizontalSNudge\n }\n },\n smallVertical: {\n '::before': {\n bottom: tokens.spacingVerticalXS,\n left: 0,\n top: tokens.spacingVerticalXS,\n width: tokens.strokeWidthThicker\n }\n },\n mediumHorizontal: {\n '::before': {\n bottom: 0,\n height: tokens.strokeWidthThicker,\n left: tokens.spacingHorizontalM,\n right: tokens.spacingHorizontalM\n }\n },\n mediumVertical: {\n '::before': {\n bottom: tokens.spacingVerticalS,\n left: 0,\n top: tokens.spacingVerticalS,\n width: tokens.strokeWidthThicker\n }\n },\n largeHorizontal: {\n '::before': {\n bottom: 0,\n height: tokens.strokeWidthThicker,\n left: tokens.spacingHorizontalM,\n right: tokens.spacingHorizontalM\n }\n },\n largeVertical: {\n '::before': {\n bottom: tokens.spacingVerticalMNudge,\n left: 0,\n top: tokens.spacingVerticalMNudge,\n width: tokens.strokeWidthThicker\n }\n }\n});\nconst useActiveIndicatorStyles = makeStyles({\n base: {\n '::after': {\n backgroundColor: tokens.colorTransparentStroke,\n borderRadius: tokens.borderRadiusCircular,\n content: '\"\"',\n position: 'absolute'\n }\n },\n selected: {\n '::after': {\n backgroundColor: tokens.colorCompoundBrandStroke\n },\n ':enabled:hover::after': {\n backgroundColor: tokens.colorCompoundBrandStrokeHover\n },\n ':enabled:active::after': {\n backgroundColor: tokens.colorCompoundBrandStrokePressed\n },\n '@media (forced-colors: active)': {\n '::after': {\n backgroundColor: 'ButtonText'\n },\n ':enabled:hover::after': {\n backgroundColor: 'ButtonText'\n },\n ':enabled:active::after': {\n backgroundColor: 'ButtonText'\n }\n }\n },\n disabled: {\n '::after': {\n backgroundColor: tokens.colorNeutralForegroundDisabled\n }\n },\n smallHorizontal: {\n '::after': {\n bottom: 0,\n height: tokens.strokeWidthThick,\n left: tokens.spacingHorizontalSNudge,\n right: tokens.spacingHorizontalSNudge\n }\n },\n smallVertical: {\n '::after': {\n bottom: tokens.spacingVerticalXS,\n left: '0',\n top: tokens.spacingVerticalXS,\n width: tokens.strokeWidthThicker\n }\n },\n mediumHorizontal: {\n '::after': {\n bottom: '0',\n height: tokens.strokeWidthThicker,\n left: tokens.spacingHorizontalM,\n right: tokens.spacingHorizontalM\n }\n },\n mediumVertical: {\n '::after': {\n bottom: tokens.spacingVerticalS,\n left: 0,\n top: tokens.spacingVerticalS,\n width: tokens.strokeWidthThicker\n }\n },\n largeHorizontal: {\n '::after': {\n bottom: 0,\n height: tokens.strokeWidthThicker,\n left: tokens.spacingHorizontalM,\n right: tokens.spacingHorizontalM\n }\n },\n largeVertical: {\n '::after': {\n bottom: tokens.spacingVerticalMNudge,\n left: 0,\n top: tokens.spacingVerticalMNudge,\n width: tokens.strokeWidthThicker\n }\n }\n});\n/**\n * Styles for the icon slot.\n */ const useIconStyles = makeStyles({\n base: {\n gridColumnStart: 1,\n gridRowStart: 1,\n alignItems: 'center',\n display: 'inline-flex',\n justifyContent: 'center',\n overflow: 'hidden',\n [`& .${iconClassNames.filled}`]: {\n display: 'none'\n },\n [`& .${iconClassNames.regular}`]: {\n display: 'inline'\n }\n },\n // per design, the small and medium font sizes are the same.\n // the size prop only affects spacing.\n small: {\n fontSize: '20px',\n height: '20px',\n width: '20px'\n },\n medium: {\n fontSize: '20px',\n height: '20px',\n width: '20px'\n },\n large: {\n fontSize: '24px',\n height: '24px',\n width: '24px'\n },\n selected: {\n [`& .${iconClassNames.filled}`]: {\n display: 'inline'\n },\n [`& .${iconClassNames.regular}`]: {\n display: 'none'\n }\n }\n});\n/**\n * Styles for the content slot (children)\n */ const useContentStyles = makeStyles({\n base: {\n ...typographyStyles.body1,\n overflow: 'hidden',\n // content padding is the same for medium & small, horizontal & vertical\n padding: `${tokens.spacingVerticalNone} ${tokens.spacingHorizontalXXS}`\n },\n selected: {\n ...typographyStyles.body1Strong\n },\n large: {\n ...typographyStyles.body2\n },\n largeSelected: {\n ...typographyStyles.subtitle2\n },\n noIconBefore: {\n gridColumnStart: 1,\n gridRowStart: 1\n },\n iconBefore: {\n gridColumnStart: 2,\n gridRowStart: 1\n },\n placeholder: {\n visibility: 'hidden'\n }\n});\n/**\n * Apply styling to the Tab slots based on the state\n */ export const useTabStyles_unstable = (state)=>{\n 'use no memo';\n useTabIndicatorStyles_unstable(state);\n useTabButtonStyles_unstable(state, state.root);\n useTabContentStyles_unstable(state);\n return state;\n};\n/**\n * Applies styles for the Tab indicator based on its current state.\n *\n * This hook is typically used internally by `useTabStyles_unstable`. You should\n * only use it directly if you're creating a custom `Tab` component.\n *\n * @param state - The `Tab` component's current state\n * @returns The state object with updated button styles\n */ export const useTabIndicatorStyles_unstable = (state)=>{\n 'use no memo';\n const rootStyles = useRootStyles();\n const pendingIndicatorStyles = usePendingIndicatorStyles();\n const activeIndicatorStyles = useActiveIndicatorStyles();\n const { appearance, disabled, selected, size, vertical } = state;\n const classes = [\n tabClassNames.root,\n rootStyles.root\n ];\n if (appearance !== 'subtle-circular' && appearance !== 'filled-circular') {\n classes.push(// pending indicator (before pseudo element)\n pendingIndicatorStyles.base, size === 'small' && (vertical ? pendingIndicatorStyles.smallVertical : pendingIndicatorStyles.smallHorizontal), size === 'medium' && (vertical ? pendingIndicatorStyles.mediumVertical : pendingIndicatorStyles.mediumHorizontal), size === 'large' && (vertical ? pendingIndicatorStyles.largeVertical : pendingIndicatorStyles.largeHorizontal), disabled && pendingIndicatorStyles.disabled, // active indicator (after pseudo element)\n selected && activeIndicatorStyles.base, selected && !disabled && activeIndicatorStyles.selected, selected && size === 'small' && (vertical ? activeIndicatorStyles.smallVertical : activeIndicatorStyles.smallHorizontal), selected && size === 'medium' && (vertical ? activeIndicatorStyles.mediumVertical : activeIndicatorStyles.mediumHorizontal), selected && size === 'large' && (vertical ? activeIndicatorStyles.largeVertical : activeIndicatorStyles.largeHorizontal), selected && disabled && activeIndicatorStyles.disabled);\n }\n state.root.className = mergeClasses(...classes, state.root.className);\n useTabAnimatedIndicatorStyles_unstable(state);\n return state;\n};\n/**\n * Applies styles to the Tab button slot based on its current state.\n *\n * This hook is typically used internally by `useTabStyles_unstable`. You should\n * only use it directly if you're creating a custom `Tab` component.\n *\n * @param state - The Tab component's current state\n * @param slot - The button slot of the Tab component\n * @returns The state object with updated button styles\n */ export const useTabButtonStyles_unstable = (state, slot)=>{\n 'use no memo';\n const rootStyles = useRootStyles();\n const focusStyles = useFocusStyles();\n const circularStyles = useCircularAppearanceStyles();\n const { appearance, disabled, selected, size, vertical } = state;\n const isSubtleCircular = appearance === 'subtle-circular';\n const isFilledCircular = appearance === 'filled-circular';\n const isCircular = isSubtleCircular || isFilledCircular;\n const circularAppearance = [\n circularStyles.base,\n focusStyles.circular,\n // sizes\n size === 'small' && circularStyles.small,\n size === 'medium' && circularStyles.medium,\n size === 'large' && circularStyles.large,\n // subtle-circular appearance\n isSubtleCircular && circularStyles.subtle,\n selected && isSubtleCircular && circularStyles.subtleSelected,\n disabled && isSubtleCircular && circularStyles.subtleDisabled,\n selected && disabled && isSubtleCircular && circularStyles.subtleDisabledSelected,\n // filled-circular appearance\n isFilledCircular && circularStyles.filled,\n selected && isFilledCircular && circularStyles.filledSelected,\n disabled && isFilledCircular && circularStyles.filledDisabled,\n selected && disabled && isFilledCircular && circularStyles.filledDisabledSelected\n ];\n const regularAppearance = [\n focusStyles.base,\n !disabled && appearance === 'subtle' && rootStyles.subtle,\n !disabled && appearance === 'transparent' && rootStyles.transparent,\n !disabled && selected && rootStyles.selected,\n disabled && rootStyles.disabled\n ];\n slot.className = mergeClasses(rootStyles.button, // orientation\n vertical ? rootStyles.vertical : rootStyles.horizontal, // size\n size === 'small' && (vertical ? rootStyles.smallVertical : rootStyles.smallHorizontal), size === 'medium' && (vertical ? rootStyles.mediumVertical : rootStyles.mediumHorizontal), size === 'large' && (vertical ? rootStyles.largeVertical : rootStyles.largeHorizontal), ...isCircular ? circularAppearance : regularAppearance, disabled && rootStyles.disabledCursor, slot.className);\n return state;\n};\n/**\n * Applies styles to the Tab content slot based on its current state.\n *\n * This hook is typically used internally by `useTabStyles_unstable`. You should\n * only use it directly if you're creating a custom `Tab` component.\n *\n * @param state - The Tab component's current state\n * @returns The state object with updated content styles\n */ export const useTabContentStyles_unstable = (state)=>{\n 'use no memo';\n const iconStyles = useIconStyles();\n const contentStyles = useContentStyles();\n const { selected, size } = state;\n if (state.icon) {\n state.icon.className = mergeClasses(tabClassNames.icon, iconStyles.base, iconStyles[size], selected && iconStyles.selected, state.icon.className);\n }\n // This needs to be before state.content.className is updated\n if (state.contentReservedSpace) {\n state.contentReservedSpace.className = mergeClasses(reservedSpaceClassNames.content, contentStyles.base, size === 'large' ? contentStyles.largeSelected : contentStyles.selected, state.icon ? contentStyles.iconBefore : contentStyles.noIconBefore, contentStyles.placeholder, state.content.className);\n // FIXME: this is a deprecated API\n // should be removed in the next major version\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n state.contentReservedSpaceClassName = state.contentReservedSpace.className;\n }\n state.content.className = mergeClasses(tabClassNames.content, contentStyles.base, size === 'large' && contentStyles.large, selected && (size === 'large' ? contentStyles.largeSelected : contentStyles.selected), state.icon ? contentStyles.iconBefore : contentStyles.noIconBefore, state.content.className);\n return state;\n};\n"],"names":["__styles","mergeClasses","shorthands","createCustomFocusIndicatorStyle","tokens","typographyStyles","useTabAnimatedIndicatorStyles_unstable","tabClassNames","root","icon","content","reservedSpaceClassNames","iconClassNames","filled","regular","useRootStyles","Bt984gj","mc9l5x","Bnnss6s","Bxotwcr","Budl1dq","wkccdc","oeaueh","qhf8xq","button","Bgfg5da","B9xav0g","oivjwe","Bn0qgzm","B4g9neb","zhjwy3","wvpqe5","ibv6hh","u1mtju","h3c5rm","vrafjx","Bekrc4i","i8vvqc","g2u3we","icvyot","B4j52fo","irswps","Beyfa6y","Bbmb7ep","Btl43ni","B7oj6ja","Dimara","Bceei9c","Bahqtrf","Bg96gwp","B68tc82","Bmxbyg5","Bpg54ce","B9bfxx9","horizontal","Brf1p80","vertical","smallHorizontal","i8kkvl","Byoj8tv","uwmqm3","z189sj","z8tnut","B0ocmuz","smallVertical","mediumHorizontal","mediumVertical","largeHorizontal","largeVertical","transparent","De3pzq","B95qlz1","B7xitij","Bptxc3x","Bwqhzpy","iyk698","cl4aha","B0q3jbp","Be9ayug","subtle","disabledCursor","disabled","selected","d","p","useCircularAppearanceStyles","base","small","Dbcxam","rjzwhg","Bblux5w","medium","large","sj55zd","Eo63ln","r9osk6","Itrz8y","zeg6vx","l65xgk","Bw4olcx","Folb0i","I2h8y4","Bgxgoyi","Bvlkotb","Fwyncl","Byh5edv","Becqvjq","uumbiq","B73q3dg","Bblwbaf","B0ezav","r4wkhp","d3wsvi","Hdqn7s","zu5y1p","owqphb","g9c53k","Btmu08z","Bthxvy6","gluvuq","tb88gp","wns6jk","kdfdk4","Bbw008l","Bayi1ib","B1kkfu3","J1oqyp","kem6az","goa3yj","p743kt","uu68id","Bxeuatn","felo30","Bc736ss","Bhz882k","n51gp8","Eshu5l","Bk6ri7n","v49c4f","Bn1d65q","c4eypz","v3aym","hft9gk","Bjwas2f","Bk5ld8o","gwxt9v","B6k8go","subtleSelected","subtleDisabled","subtleDisabledSelected","Bw5j0gk","Baikq8m","B2ndh17","w0x64w","Bdzpij4","filledSelected","bml8oc","qew46a","B84x17g","Jetwu1","filledDisabled","filledDisabledSelected","m","useFocusStyles","B8q5s1w","Bci5o5g","n8qw10","Bdrgwmp","Bn4voq9","Bfpq7zp","g9k6zt","j6ew2k","Bhxq17a","circular","usePendingIndicatorStyles","az7l2e","vqofr","Bv4n3vi","Bgqb9hq","B0uxbk8","Bf3jju6","amg5m6","zkfqfm","Bkydozb","Bka2azo","vzq8l0","csmgbd","Br4ovkg","aelrif","y36c18","B1ctymy","Bgvrrv0","ddr6p5","lawp4y","Baz25je","Fbdkly","mdwyqc","Bciustq","Ccq8qp","h","a","useActiveIndicatorStyles","Bjyk6c5","d9w3h3","B3778ie","B4j8arr","Bl18szs","Blrzh8d","Bsft5z2","E3zdtr","Bej4dhw","B7wqxwa","f7digc","Bvuzv5k","k4sdgo","By385i5","Dlnsje","Eqx8gd","B1piin3","bn5sak","a2br6o","useIconStyles","Br312pm","Ijaq50","D0sxk3","t6yez3","Be2twd7","Bqenvij","a9b677","useContentStyles","Bhrd7zp","largeSelected","noIconBefore","iconBefore","placeholder","Bcdw1i0","useTabStyles_unstable","state","useTabIndicatorStyles_unstable","useTabButtonStyles_unstable","useTabContentStyles_unstable","rootStyles","pendingIndicatorStyles","activeIndicatorStyles","appearance","size","classes","push","className","slot","focusStyles","circularStyles","isSubtleCircular","isFilledCircular","isCircular","circularAppearance","regularAppearance","iconStyles","contentStyles","contentReservedSpace","contentReservedSpaceClassName"],"mappings":"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"}
|
|
@@ -204,8 +204,14 @@ const useCircularAppearanceStyles = (0, _react.makeStyles)({
|
|
|
204
204
|
color: 'inherit'
|
|
205
205
|
}
|
|
206
206
|
},
|
|
207
|
+
small: {
|
|
208
|
+
paddingBlock: `calc(${_reacttheme.tokens.spacingVerticalXXS} - ${_reacttheme.tokens.strokeWidthThin})`
|
|
209
|
+
},
|
|
207
210
|
medium: {
|
|
208
|
-
paddingBlock:
|
|
211
|
+
paddingBlock: `calc(${_reacttheme.tokens.spacingVerticalSNudge} - ${_reacttheme.tokens.strokeWidthThin})`
|
|
212
|
+
},
|
|
213
|
+
large: {
|
|
214
|
+
paddingBlock: `calc(${_reacttheme.tokens.spacingVerticalS} - ${_reacttheme.tokens.strokeWidthThin})`
|
|
209
215
|
},
|
|
210
216
|
subtle: {
|
|
211
217
|
backgroundColor: _reacttheme.tokens.colorSubtleBackground,
|
|
@@ -629,7 +635,9 @@ const useTabButtonStyles_unstable = (state, slot)=>{
|
|
|
629
635
|
circularStyles.base,
|
|
630
636
|
focusStyles.circular,
|
|
631
637
|
// sizes
|
|
638
|
+
size === 'small' && circularStyles.small,
|
|
632
639
|
size === 'medium' && circularStyles.medium,
|
|
640
|
+
size === 'large' && circularStyles.large,
|
|
633
641
|
// subtle-circular appearance
|
|
634
642
|
isSubtleCircular && circularStyles.subtle,
|
|
635
643
|
selected && isSubtleCircular && circularStyles.subtleSelected,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Tab/useTabStyles.styles.ts"],"sourcesContent":["import { makeStyles, mergeClasses, shorthands } from '@griffel/react';\nimport { createCustomFocusIndicatorStyle } from '@fluentui/react-tabster';\nimport { tokens, typographyStyles } from '@fluentui/react-theme';\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport type { TabSlots, TabState } from './Tab.types';\nimport { useTabAnimatedIndicatorStyles_unstable } from './useTabAnimatedIndicator.styles';\n\nexport const tabClassNames: SlotClassNames<TabSlots> = {\n root: 'fui-Tab',\n icon: 'fui-Tab__icon',\n content: 'fui-Tab__content',\n};\n\nconst reservedSpaceClassNames = {\n content: 'fui-Tab__content--reserved-space',\n};\n\n// These should match the constants defined in @fluentui/react-icons\n// This package avoids taking a dependency on the icons package for only the constants.\nconst iconClassNames = {\n filled: 'fui-Icon-filled',\n regular: 'fui-Icon-regular',\n};\n\n/**\n * Styles for the root slot\n */\nconst useRootStyles = makeStyles({\n root: {\n alignItems: 'center',\n display: 'grid',\n flexShrink: 0,\n gridAutoFlow: 'column',\n gridTemplateColumns: 'auto',\n gridTemplateRows: 'auto',\n outlineStyle: 'none',\n position: 'relative',\n },\n button: {\n alignItems: 'center',\n border: 'none',\n borderRadius: tokens.borderRadiusMedium,\n cursor: 'pointer',\n display: 'grid',\n flexShrink: 0,\n gridAutoFlow: 'column',\n gridTemplateColumns: 'auto',\n gridTemplateRows: 'auto',\n fontFamily: tokens.fontFamilyBase,\n lineHeight: tokens.lineHeightBase300,\n outlineStyle: 'none',\n position: 'relative',\n overflow: 'hidden',\n textTransform: 'none',\n },\n horizontal: {\n justifyContent: 'center',\n },\n vertical: {\n justifyContent: 'start',\n },\n smallHorizontal: {\n columnGap: tokens.spacingHorizontalXXS,\n padding: `${tokens.spacingVerticalSNudge} ${tokens.spacingHorizontalSNudge}`,\n },\n smallVertical: {\n // horizontal spacing is deliberate. This is the gap between icon and content.\n columnGap: tokens.spacingHorizontalXXS,\n padding: `${tokens.spacingVerticalXXS} ${tokens.spacingHorizontalSNudge}`,\n },\n mediumHorizontal: {\n columnGap: tokens.spacingHorizontalSNudge,\n padding: `${tokens.spacingVerticalM} ${tokens.spacingHorizontalMNudge}`,\n },\n mediumVertical: {\n // horizontal spacing is deliberate. This is the gap between icon and content.\n columnGap: tokens.spacingHorizontalSNudge,\n padding: `${tokens.spacingVerticalSNudge} ${tokens.spacingHorizontalMNudge}`,\n },\n largeHorizontal: {\n columnGap: tokens.spacingHorizontalSNudge,\n padding: `${tokens.spacingVerticalL} ${tokens.spacingHorizontalMNudge}`,\n },\n largeVertical: {\n // horizontal spacing is deliberate. This is the gap between icon and content.\n columnGap: tokens.spacingHorizontalSNudge,\n padding: `${tokens.spacingVerticalS} ${tokens.spacingHorizontalMNudge}`,\n },\n transparent: {\n backgroundColor: tokens.colorTransparentBackground,\n ':enabled:hover': {\n backgroundColor: tokens.colorTransparentBackgroundHover,\n },\n ':enabled:active': {\n backgroundColor: tokens.colorTransparentBackgroundPressed,\n },\n [`& .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2,\n },\n [`:enabled:hover .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2Hover,\n },\n [`:enabled:active .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2Pressed,\n },\n [`& .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground2,\n },\n [`:enabled:hover .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground2Hover,\n },\n [`:enabled:active .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground2Pressed,\n },\n },\n subtle: {\n backgroundColor: tokens.colorSubtleBackground,\n ':enabled:hover': {\n backgroundColor: tokens.colorSubtleBackgroundHover,\n },\n ':enabled:active': {\n backgroundColor: tokens.colorSubtleBackgroundPressed,\n },\n [`& .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2,\n },\n [`:enabled:hover .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2Hover,\n },\n [`:enabled:active .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2Pressed,\n },\n [`& .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground2,\n },\n [`:enabled:hover .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground2Hover,\n },\n [`:enabled:active .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground2Pressed,\n },\n },\n disabledCursor: {\n cursor: 'not-allowed',\n },\n disabled: {\n backgroundColor: tokens.colorTransparentBackground,\n\n [`& .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForegroundDisabled,\n },\n [`& .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForegroundDisabled,\n },\n },\n selected: {\n [`& .${tabClassNames.icon}`]: {\n color: tokens.colorCompoundBrandForeground1,\n },\n [`:enabled:hover .${tabClassNames.icon}`]: {\n color: tokens.colorCompoundBrandForeground1Hover,\n },\n [`:enabled:active .${tabClassNames.icon}`]: {\n color: tokens.colorCompoundBrandForeground1Pressed,\n },\n [`& .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground1,\n },\n [`:enabled:hover .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground1Hover,\n },\n [`:enabled:active .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground1Pressed,\n },\n },\n});\n\nconst useCircularAppearanceStyles = makeStyles({\n base: {\n borderRadius: tokens.borderRadiusCircular,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorTransparentStroke}`,\n [`& .${tabClassNames.icon}`]: {\n color: 'inherit',\n },\n [`& .${tabClassNames.content}`]: {\n color: 'inherit',\n },\n },\n medium: {\n paddingBlock: `${tokens.spacingVerticalSNudge}`,\n },\n subtle: {\n backgroundColor: tokens.colorSubtleBackground,\n color: tokens.colorNeutralForeground2,\n ':enabled:hover': {\n backgroundColor: tokens.colorSubtleBackgroundHover,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorNeutralStroke1Hover}`,\n color: tokens.colorNeutralForeground2Hover,\n },\n ':enabled:active': {\n backgroundColor: tokens.colorSubtleBackgroundPressed,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorNeutralStroke1Pressed}`,\n color: tokens.colorNeutralForeground2Pressed,\n },\n '@media (forced-colors: active)': {\n border: `solid ${tokens.strokeWidthThin} Canvas`,\n },\n },\n subtleSelected: {\n backgroundColor: tokens.colorBrandBackground2,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorCompoundBrandStroke}`,\n color: tokens.colorBrandForeground2,\n ':enabled:hover': {\n backgroundColor: tokens.colorBrandBackground2Hover,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorCompoundBrandStrokeHover}`,\n color: tokens.colorBrandForeground2Hover,\n },\n ':enabled:active': {\n backgroundColor: tokens.colorBrandBackground2Pressed,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorCompoundBrandStrokePressed}`,\n color: tokens.colorBrandForeground2Pressed,\n },\n '@media (forced-colors: active)': {\n border: `solid ${tokens.strokeWidthThin} Highlight`,\n },\n },\n subtleDisabled: {\n backgroundColor: tokens.colorSubtleBackground,\n color: tokens.colorNeutralForegroundDisabled,\n },\n subtleDisabledSelected: {\n backgroundColor: tokens.colorNeutralBackgroundDisabled,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorNeutralStrokeDisabled}`,\n color: tokens.colorNeutralForegroundDisabled,\n },\n filled: {\n backgroundColor: tokens.colorNeutralBackground3,\n color: tokens.colorNeutralForeground2,\n ':enabled:hover': {\n backgroundColor: tokens.colorNeutralBackground3Hover,\n color: tokens.colorNeutralForeground2Hover,\n },\n ':enabled:active': {\n backgroundColor: tokens.colorNeutralBackground3Pressed,\n color: tokens.colorNeutralForeground2Pressed,\n },\n '@media (forced-colors: active)': {\n ':enabled:hover': {\n backgroundColor: 'Highlight',\n forcedColorAdjust: 'none',\n [`& .${tabClassNames.content}`]: {\n color: 'HighlightText',\n },\n [`& .${iconClassNames.filled}`]: {\n color: 'HighlightText',\n },\n [`& .${iconClassNames.regular}`]: {\n color: 'HighlightText',\n },\n },\n },\n },\n filledSelected: {\n backgroundColor: tokens.colorBrandBackground,\n color: tokens.colorNeutralForegroundOnBrand,\n ':enabled:hover': {\n backgroundColor: tokens.colorBrandBackgroundHover,\n color: tokens.colorNeutralForegroundOnBrand,\n },\n ':enabled:active': {\n backgroundColor: tokens.colorBrandBackgroundPressed,\n color: tokens.colorNeutralForegroundOnBrand,\n },\n '@media (forced-colors: active)': {\n ':enabled': {\n backgroundColor: 'ButtonText',\n [`& .${tabClassNames.content}`]: {\n color: 'ButtonFace',\n forcedColorAdjust: 'none',\n },\n },\n [`:enabled .${tabClassNames.icon}`]: {\n color: 'ButtonFace',\n },\n },\n },\n filledDisabled: {\n backgroundColor: tokens.colorNeutralBackgroundDisabled,\n color: tokens.colorNeutralForegroundDisabled,\n },\n filledDisabledSelected: {\n backgroundColor: tokens.colorNeutralBackgroundDisabled,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorNeutralStrokeDisabled}`,\n color: tokens.colorNeutralForegroundDisabled,\n },\n});\n\n/**\n * Focus styles for the root slot\n */\nconst useFocusStyles = makeStyles({\n // Tab creates a custom focus indicator because the default focus indicator\n // is applied using an ::after pseudo-element on the root. Since the selection\n // indicator uses an ::after pseudo-element on the root, there is a conflict.\n base: createCustomFocusIndicatorStyle(\n {\n ...shorthands.borderColor('transparent'),\n outlineWidth: tokens.strokeWidthThick,\n outlineColor: 'transparent',\n outlineStyle: 'solid',\n boxShadow: `\n ${tokens.shadow4},\n 0 0 0 ${tokens.strokeWidthThick} ${tokens.colorStrokeFocus2}\n `,\n zIndex: 1,\n },\n { enableOutline: true },\n ),\n circular: createCustomFocusIndicatorStyle(\n {\n ...shorthands.borderColor('transparent'),\n outlineWidth: tokens.strokeWidthThick,\n outlineColor: 'transparent',\n outlineStyle: 'solid',\n boxShadow: `\n ${tokens.shadow4},\n 0 0 0 ${tokens.strokeWidthThick} ${tokens.colorStrokeFocus2},\n 0 0 0 ${tokens.strokeWidthThin} ${tokens.colorNeutralStrokeOnBrand} inset\n `,\n zIndex: 1,\n },\n { enableOutline: true },\n ),\n});\n\n/** Indicator styles for when pending selection */\nconst usePendingIndicatorStyles = makeStyles({\n base: {\n ':hover::before': {\n backgroundColor: tokens.colorNeutralStroke1Hover,\n borderRadius: tokens.borderRadiusCircular,\n content: '\"\"',\n position: 'absolute',\n },\n ':active::before': {\n backgroundColor: tokens.colorNeutralStroke1Pressed,\n borderRadius: tokens.borderRadiusCircular,\n content: '\"\"',\n position: 'absolute',\n },\n '@media (forced-colors: active)': {\n ':hover::before': {\n backgroundColor: 'Highlight',\n },\n ':active::before': {\n backgroundColor: 'Highlight',\n },\n },\n },\n disabled: {\n ':hover::before': {\n backgroundColor: tokens.colorTransparentStroke,\n },\n ':active::before': {\n backgroundColor: tokens.colorTransparentStroke,\n },\n '@media (forced-colors: active)': {\n ':hover::before': {\n backgroundColor: 'transparent',\n },\n ':active::before': {\n backgroundColor: 'transparent',\n },\n },\n },\n smallHorizontal: {\n '::before': {\n bottom: 0,\n height: tokens.strokeWidthThick,\n left: tokens.spacingHorizontalSNudge,\n right: tokens.spacingHorizontalSNudge,\n },\n },\n smallVertical: {\n '::before': {\n bottom: tokens.spacingVerticalXS,\n left: 0,\n top: tokens.spacingVerticalXS,\n width: tokens.strokeWidthThicker,\n },\n },\n mediumHorizontal: {\n '::before': {\n bottom: 0,\n height: tokens.strokeWidthThicker,\n left: tokens.spacingHorizontalM,\n right: tokens.spacingHorizontalM,\n },\n },\n mediumVertical: {\n '::before': {\n bottom: tokens.spacingVerticalS,\n left: 0,\n top: tokens.spacingVerticalS,\n width: tokens.strokeWidthThicker,\n },\n },\n largeHorizontal: {\n '::before': {\n bottom: 0,\n height: tokens.strokeWidthThicker,\n left: tokens.spacingHorizontalM,\n right: tokens.spacingHorizontalM,\n },\n },\n largeVertical: {\n '::before': {\n bottom: tokens.spacingVerticalMNudge,\n left: 0,\n top: tokens.spacingVerticalMNudge,\n width: tokens.strokeWidthThicker,\n },\n },\n});\n\nconst useActiveIndicatorStyles = makeStyles({\n base: {\n '::after': {\n backgroundColor: tokens.colorTransparentStroke,\n borderRadius: tokens.borderRadiusCircular,\n content: '\"\"',\n position: 'absolute',\n },\n },\n selected: {\n '::after': {\n backgroundColor: tokens.colorCompoundBrandStroke,\n },\n ':enabled:hover::after': {\n backgroundColor: tokens.colorCompoundBrandStrokeHover,\n },\n ':enabled:active::after': {\n backgroundColor: tokens.colorCompoundBrandStrokePressed,\n },\n '@media (forced-colors: active)': {\n '::after': {\n backgroundColor: 'ButtonText',\n },\n ':enabled:hover::after': {\n backgroundColor: 'ButtonText',\n },\n ':enabled:active::after': {\n backgroundColor: 'ButtonText',\n },\n },\n },\n disabled: {\n '::after': {\n backgroundColor: tokens.colorNeutralForegroundDisabled,\n },\n },\n smallHorizontal: {\n '::after': {\n bottom: 0,\n height: tokens.strokeWidthThick,\n left: tokens.spacingHorizontalSNudge,\n right: tokens.spacingHorizontalSNudge,\n },\n },\n smallVertical: {\n '::after': {\n bottom: tokens.spacingVerticalXS,\n left: '0',\n top: tokens.spacingVerticalXS,\n width: tokens.strokeWidthThicker,\n },\n },\n mediumHorizontal: {\n '::after': {\n bottom: '0',\n height: tokens.strokeWidthThicker,\n left: tokens.spacingHorizontalM,\n right: tokens.spacingHorizontalM,\n },\n },\n mediumVertical: {\n '::after': {\n bottom: tokens.spacingVerticalS,\n left: 0,\n top: tokens.spacingVerticalS,\n width: tokens.strokeWidthThicker,\n },\n },\n largeHorizontal: {\n '::after': {\n bottom: 0,\n height: tokens.strokeWidthThicker,\n left: tokens.spacingHorizontalM,\n right: tokens.spacingHorizontalM,\n },\n },\n largeVertical: {\n '::after': {\n bottom: tokens.spacingVerticalMNudge,\n left: 0,\n top: tokens.spacingVerticalMNudge,\n width: tokens.strokeWidthThicker,\n },\n },\n});\n\n/**\n * Styles for the icon slot.\n */\nconst useIconStyles = makeStyles({\n base: {\n gridColumnStart: 1,\n gridRowStart: 1,\n alignItems: 'center',\n display: 'inline-flex',\n justifyContent: 'center',\n overflow: 'hidden',\n [`& .${iconClassNames.filled}`]: {\n display: 'none',\n },\n [`& .${iconClassNames.regular}`]: {\n display: 'inline',\n },\n },\n // per design, the small and medium font sizes are the same.\n // the size prop only affects spacing.\n small: {\n fontSize: '20px',\n height: '20px',\n width: '20px',\n },\n medium: {\n fontSize: '20px',\n height: '20px',\n width: '20px',\n },\n large: {\n fontSize: '24px',\n height: '24px',\n width: '24px',\n },\n selected: {\n [`& .${iconClassNames.filled}`]: {\n display: 'inline',\n },\n [`& .${iconClassNames.regular}`]: {\n display: 'none',\n },\n },\n});\n\n/**\n * Styles for the content slot (children)\n */\nconst useContentStyles = makeStyles({\n base: {\n ...typographyStyles.body1,\n overflow: 'hidden',\n // content padding is the same for medium & small, horizontal & vertical\n padding: `${tokens.spacingVerticalNone} ${tokens.spacingHorizontalXXS}`,\n },\n selected: {\n ...typographyStyles.body1Strong,\n },\n large: {\n ...typographyStyles.body2,\n },\n largeSelected: {\n ...typographyStyles.subtitle2,\n },\n noIconBefore: {\n gridColumnStart: 1,\n gridRowStart: 1,\n },\n iconBefore: {\n gridColumnStart: 2,\n gridRowStart: 1,\n },\n placeholder: {\n visibility: 'hidden',\n },\n});\n\n/**\n * Apply styling to the Tab slots based on the state\n */\nexport const useTabStyles_unstable = (state: TabState): TabState => {\n 'use no memo';\n\n useTabIndicatorStyles_unstable(state);\n\n useTabButtonStyles_unstable(state, state.root);\n\n useTabContentStyles_unstable(state);\n\n return state;\n};\n\n/**\n * Applies styles for the Tab indicator based on its current state.\n *\n * This hook is typically used internally by `useTabStyles_unstable`. You should\n * only use it directly if you're creating a custom `Tab` component.\n *\n * @param state - The `Tab` component's current state\n * @returns The state object with updated button styles\n */\nexport const useTabIndicatorStyles_unstable = (state: TabState): TabState => {\n 'use no memo';\n\n const rootStyles = useRootStyles();\n const pendingIndicatorStyles = usePendingIndicatorStyles();\n const activeIndicatorStyles = useActiveIndicatorStyles();\n\n const { appearance, disabled, selected, size, vertical } = state;\n\n const classes: Parameters<typeof mergeClasses> = [tabClassNames.root, rootStyles.root];\n\n if (appearance !== 'subtle-circular' && appearance !== 'filled-circular') {\n classes.push(\n // pending indicator (before pseudo element)\n pendingIndicatorStyles.base,\n size === 'small' && (vertical ? pendingIndicatorStyles.smallVertical : pendingIndicatorStyles.smallHorizontal),\n size === 'medium' && (vertical ? pendingIndicatorStyles.mediumVertical : pendingIndicatorStyles.mediumHorizontal),\n size === 'large' && (vertical ? pendingIndicatorStyles.largeVertical : pendingIndicatorStyles.largeHorizontal),\n disabled && pendingIndicatorStyles.disabled,\n\n // active indicator (after pseudo element)\n selected && activeIndicatorStyles.base,\n selected && !disabled && activeIndicatorStyles.selected,\n selected &&\n size === 'small' &&\n (vertical ? activeIndicatorStyles.smallVertical : activeIndicatorStyles.smallHorizontal),\n selected &&\n size === 'medium' &&\n (vertical ? activeIndicatorStyles.mediumVertical : activeIndicatorStyles.mediumHorizontal),\n selected &&\n size === 'large' &&\n (vertical ? activeIndicatorStyles.largeVertical : activeIndicatorStyles.largeHorizontal),\n selected && disabled && activeIndicatorStyles.disabled,\n );\n }\n\n state.root.className = mergeClasses(...classes, state.root.className);\n\n useTabAnimatedIndicatorStyles_unstable(state);\n\n return state;\n};\n\n/**\n * Applies styles to the Tab button slot based on its current state.\n *\n * This hook is typically used internally by `useTabStyles_unstable`. You should\n * only use it directly if you're creating a custom `Tab` component.\n *\n * @param state - The Tab component's current state\n * @param slot - The button slot of the Tab component\n * @returns The state object with updated button styles\n */\nexport const useTabButtonStyles_unstable = (state: TabState, slot: TabState['root']): TabState => {\n 'use no memo';\n\n const rootStyles = useRootStyles();\n const focusStyles = useFocusStyles();\n const circularStyles = useCircularAppearanceStyles();\n\n const { appearance, disabled, selected, size, vertical } = state;\n\n const isSubtleCircular = appearance === 'subtle-circular';\n const isFilledCircular = appearance === 'filled-circular';\n const isCircular = isSubtleCircular || isFilledCircular;\n\n const circularAppearance = [\n circularStyles.base,\n focusStyles.circular,\n // sizes\n size === 'medium' && circularStyles.medium,\n // subtle-circular appearance\n isSubtleCircular && circularStyles.subtle,\n selected && isSubtleCircular && circularStyles.subtleSelected,\n disabled && isSubtleCircular && circularStyles.subtleDisabled,\n selected && disabled && isSubtleCircular && circularStyles.subtleDisabledSelected,\n // filled-circular appearance\n isFilledCircular && circularStyles.filled,\n selected && isFilledCircular && circularStyles.filledSelected,\n disabled && isFilledCircular && circularStyles.filledDisabled,\n selected && disabled && isFilledCircular && circularStyles.filledDisabledSelected,\n ];\n\n const regularAppearance = [\n focusStyles.base,\n !disabled && appearance === 'subtle' && rootStyles.subtle,\n !disabled && appearance === 'transparent' && rootStyles.transparent,\n !disabled && selected && rootStyles.selected,\n disabled && rootStyles.disabled,\n ];\n\n slot.className = mergeClasses(\n rootStyles.button,\n // orientation\n vertical ? rootStyles.vertical : rootStyles.horizontal,\n // size\n size === 'small' && (vertical ? rootStyles.smallVertical : rootStyles.smallHorizontal),\n size === 'medium' && (vertical ? rootStyles.mediumVertical : rootStyles.mediumHorizontal),\n size === 'large' && (vertical ? rootStyles.largeVertical : rootStyles.largeHorizontal),\n ...(isCircular ? circularAppearance : regularAppearance),\n disabled && rootStyles.disabledCursor,\n slot.className,\n );\n\n return state;\n};\n\n/**\n * Applies styles to the Tab content slot based on its current state.\n *\n * This hook is typically used internally by `useTabStyles_unstable`. You should\n * only use it directly if you're creating a custom `Tab` component.\n *\n * @param state - The Tab component's current state\n * @returns The state object with updated content styles\n */\nexport const useTabContentStyles_unstable = (state: TabState): TabState => {\n 'use no memo';\n\n const iconStyles = useIconStyles();\n const contentStyles = useContentStyles();\n\n const { selected, size } = state;\n\n if (state.icon) {\n state.icon.className = mergeClasses(\n tabClassNames.icon,\n iconStyles.base,\n iconStyles[size],\n selected && iconStyles.selected,\n state.icon.className,\n );\n }\n\n // This needs to be before state.content.className is updated\n if (state.contentReservedSpace) {\n state.contentReservedSpace.className = mergeClasses(\n reservedSpaceClassNames.content,\n contentStyles.base,\n size === 'large' ? contentStyles.largeSelected : contentStyles.selected,\n state.icon ? contentStyles.iconBefore : contentStyles.noIconBefore,\n contentStyles.placeholder,\n state.content.className,\n );\n // FIXME: this is a deprecated API\n // should be removed in the next major version\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n state.contentReservedSpaceClassName = state.contentReservedSpace.className;\n }\n\n state.content.className = mergeClasses(\n tabClassNames.content,\n contentStyles.base,\n size === 'large' && contentStyles.large,\n selected && (size === 'large' ? contentStyles.largeSelected : contentStyles.selected),\n state.icon ? contentStyles.iconBefore : contentStyles.noIconBefore,\n state.content.className,\n );\n\n return state;\n};\n"],"names":["tabClassNames","useTabButtonStyles_unstable","useTabContentStyles_unstable","useTabIndicatorStyles_unstable","useTabStyles_unstable","root","icon","content","reservedSpaceClassNames","iconClassNames","filled","regular","useRootStyles","makeStyles","alignItems","display","flexShrink","gridAutoFlow","gridTemplateColumns","gridTemplateRows","outlineStyle","position","button","border","borderRadius","tokens","borderRadiusMedium","cursor","fontFamily","fontFamilyBase","lineHeight","lineHeightBase300","overflow","textTransform","horizontal","justifyContent","vertical","smallHorizontal","columnGap","spacingHorizontalXXS","padding","spacingVerticalSNudge","spacingHorizontalSNudge","smallVertical","spacingVerticalXXS","mediumHorizontal","spacingVerticalM","spacingHorizontalMNudge","mediumVertical","largeHorizontal","spacingVerticalL","largeVertical","spacingVerticalS","transparent","backgroundColor","colorTransparentBackground","colorTransparentBackgroundHover","colorTransparentBackgroundPressed","color","colorNeutralForeground2","colorNeutralForeground2Hover","colorNeutralForeground2Pressed","subtle","colorSubtleBackground","colorSubtleBackgroundHover","colorSubtleBackgroundPressed","disabledCursor","disabled","colorNeutralForegroundDisabled","selected","colorCompoundBrandForeground1","colorCompoundBrandForeground1Hover","colorCompoundBrandForeground1Pressed","colorNeutralForeground1","colorNeutralForeground1Hover","colorNeutralForeground1Pressed","useCircularAppearanceStyles","base","borderRadiusCircular","strokeWidthThin","colorTransparentStroke","medium","paddingBlock","colorNeutralStroke1Hover","colorNeutralStroke1Pressed","subtleSelected","colorBrandBackground2","colorCompoundBrandStroke","colorBrandForeground2","colorBrandBackground2Hover","colorCompoundBrandStrokeHover","colorBrandForeground2Hover","colorBrandBackground2Pressed","colorCompoundBrandStrokePressed","colorBrandForeground2Pressed","subtleDisabled","subtleDisabledSelected","colorNeutralBackgroundDisabled","colorNeutralStrokeDisabled","colorNeutralBackground3","colorNeutralBackground3Hover","colorNeutralBackground3Pressed","forcedColorAdjust","filledSelected","colorBrandBackground","colorNeutralForegroundOnBrand","colorBrandBackgroundHover","colorBrandBackgroundPressed","filledDisabled","filledDisabledSelected","useFocusStyles","createCustomFocusIndicatorStyle","shorthands","borderColor","outlineWidth","strokeWidthThick","outlineColor","boxShadow","shadow4","colorStrokeFocus2","zIndex","enableOutline","circular","colorNeutralStrokeOnBrand","usePendingIndicatorStyles","bottom","height","left","right","spacingVerticalXS","top","width","strokeWidthThicker","spacingHorizontalM","spacingVerticalMNudge","useActiveIndicatorStyles","useIconStyles","gridColumnStart","gridRowStart","small","fontSize","large","useContentStyles","typographyStyles","body1","spacingVerticalNone","body1Strong","body2","largeSelected","subtitle2","noIconBefore","iconBefore","placeholder","visibility","state","rootStyles","pendingIndicatorStyles","activeIndicatorStyles","appearance","size","classes","push","className","mergeClasses","useTabAnimatedIndicatorStyles_unstable","slot","focusStyles","circularStyles","isSubtleCircular","isFilledCircular","isCircular","circularAppearance","regularAppearance","iconStyles","contentStyles","contentReservedSpace","contentReservedSpaceClassName"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../src/components/Tab/useTabStyles.styles.ts"],"sourcesContent":["import { makeStyles, mergeClasses, shorthands } from '@griffel/react';\nimport { createCustomFocusIndicatorStyle } from '@fluentui/react-tabster';\nimport { tokens, typographyStyles } from '@fluentui/react-theme';\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport type { TabSlots, TabState } from './Tab.types';\nimport { useTabAnimatedIndicatorStyles_unstable } from './useTabAnimatedIndicator.styles';\n\nexport const tabClassNames: SlotClassNames<TabSlots> = {\n root: 'fui-Tab',\n icon: 'fui-Tab__icon',\n content: 'fui-Tab__content',\n};\n\nconst reservedSpaceClassNames = {\n content: 'fui-Tab__content--reserved-space',\n};\n\n// These should match the constants defined in @fluentui/react-icons\n// This package avoids taking a dependency on the icons package for only the constants.\nconst iconClassNames = {\n filled: 'fui-Icon-filled',\n regular: 'fui-Icon-regular',\n};\n\n/**\n * Styles for the root slot\n */\nconst useRootStyles = makeStyles({\n root: {\n alignItems: 'center',\n display: 'grid',\n flexShrink: 0,\n gridAutoFlow: 'column',\n gridTemplateColumns: 'auto',\n gridTemplateRows: 'auto',\n outlineStyle: 'none',\n position: 'relative',\n },\n button: {\n alignItems: 'center',\n border: 'none',\n borderRadius: tokens.borderRadiusMedium,\n cursor: 'pointer',\n display: 'grid',\n flexShrink: 0,\n gridAutoFlow: 'column',\n gridTemplateColumns: 'auto',\n gridTemplateRows: 'auto',\n fontFamily: tokens.fontFamilyBase,\n lineHeight: tokens.lineHeightBase300,\n outlineStyle: 'none',\n position: 'relative',\n overflow: 'hidden',\n textTransform: 'none',\n },\n horizontal: {\n justifyContent: 'center',\n },\n vertical: {\n justifyContent: 'start',\n },\n smallHorizontal: {\n columnGap: tokens.spacingHorizontalXXS,\n padding: `${tokens.spacingVerticalSNudge} ${tokens.spacingHorizontalSNudge}`,\n },\n smallVertical: {\n // horizontal spacing is deliberate. This is the gap between icon and content.\n columnGap: tokens.spacingHorizontalXXS,\n padding: `${tokens.spacingVerticalXXS} ${tokens.spacingHorizontalSNudge}`,\n },\n mediumHorizontal: {\n columnGap: tokens.spacingHorizontalSNudge,\n padding: `${tokens.spacingVerticalM} ${tokens.spacingHorizontalMNudge}`,\n },\n mediumVertical: {\n // horizontal spacing is deliberate. This is the gap between icon and content.\n columnGap: tokens.spacingHorizontalSNudge,\n padding: `${tokens.spacingVerticalSNudge} ${tokens.spacingHorizontalMNudge}`,\n },\n largeHorizontal: {\n columnGap: tokens.spacingHorizontalSNudge,\n padding: `${tokens.spacingVerticalL} ${tokens.spacingHorizontalMNudge}`,\n },\n largeVertical: {\n // horizontal spacing is deliberate. This is the gap between icon and content.\n columnGap: tokens.spacingHorizontalSNudge,\n padding: `${tokens.spacingVerticalS} ${tokens.spacingHorizontalMNudge}`,\n },\n transparent: {\n backgroundColor: tokens.colorTransparentBackground,\n ':enabled:hover': {\n backgroundColor: tokens.colorTransparentBackgroundHover,\n },\n ':enabled:active': {\n backgroundColor: tokens.colorTransparentBackgroundPressed,\n },\n [`& .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2,\n },\n [`:enabled:hover .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2Hover,\n },\n [`:enabled:active .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2Pressed,\n },\n [`& .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground2,\n },\n [`:enabled:hover .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground2Hover,\n },\n [`:enabled:active .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground2Pressed,\n },\n },\n subtle: {\n backgroundColor: tokens.colorSubtleBackground,\n ':enabled:hover': {\n backgroundColor: tokens.colorSubtleBackgroundHover,\n },\n ':enabled:active': {\n backgroundColor: tokens.colorSubtleBackgroundPressed,\n },\n [`& .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2,\n },\n [`:enabled:hover .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2Hover,\n },\n [`:enabled:active .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2Pressed,\n },\n [`& .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground2,\n },\n [`:enabled:hover .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground2Hover,\n },\n [`:enabled:active .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground2Pressed,\n },\n },\n disabledCursor: {\n cursor: 'not-allowed',\n },\n disabled: {\n backgroundColor: tokens.colorTransparentBackground,\n\n [`& .${tabClassNames.icon}`]: {\n color: tokens.colorNeutralForegroundDisabled,\n },\n [`& .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForegroundDisabled,\n },\n },\n selected: {\n [`& .${tabClassNames.icon}`]: {\n color: tokens.colorCompoundBrandForeground1,\n },\n [`:enabled:hover .${tabClassNames.icon}`]: {\n color: tokens.colorCompoundBrandForeground1Hover,\n },\n [`:enabled:active .${tabClassNames.icon}`]: {\n color: tokens.colorCompoundBrandForeground1Pressed,\n },\n [`& .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground1,\n },\n [`:enabled:hover .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground1Hover,\n },\n [`:enabled:active .${tabClassNames.content}`]: {\n color: tokens.colorNeutralForeground1Pressed,\n },\n },\n});\n\nconst useCircularAppearanceStyles = makeStyles({\n base: {\n borderRadius: tokens.borderRadiusCircular,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorTransparentStroke}`,\n [`& .${tabClassNames.icon}`]: {\n color: 'inherit',\n },\n [`& .${tabClassNames.content}`]: {\n color: 'inherit',\n },\n },\n small: {\n paddingBlock: `calc(${tokens.spacingVerticalXXS} - ${tokens.strokeWidthThin})`,\n },\n medium: {\n paddingBlock: `calc(${tokens.spacingVerticalSNudge} - ${tokens.strokeWidthThin})`,\n },\n large: {\n paddingBlock: `calc(${tokens.spacingVerticalS} - ${tokens.strokeWidthThin})`,\n },\n subtle: {\n backgroundColor: tokens.colorSubtleBackground,\n color: tokens.colorNeutralForeground2,\n ':enabled:hover': {\n backgroundColor: tokens.colorSubtleBackgroundHover,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorNeutralStroke1Hover}`,\n color: tokens.colorNeutralForeground2Hover,\n },\n ':enabled:active': {\n backgroundColor: tokens.colorSubtleBackgroundPressed,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorNeutralStroke1Pressed}`,\n color: tokens.colorNeutralForeground2Pressed,\n },\n '@media (forced-colors: active)': {\n border: `solid ${tokens.strokeWidthThin} Canvas`,\n },\n },\n subtleSelected: {\n backgroundColor: tokens.colorBrandBackground2,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorCompoundBrandStroke}`,\n color: tokens.colorBrandForeground2,\n ':enabled:hover': {\n backgroundColor: tokens.colorBrandBackground2Hover,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorCompoundBrandStrokeHover}`,\n color: tokens.colorBrandForeground2Hover,\n },\n ':enabled:active': {\n backgroundColor: tokens.colorBrandBackground2Pressed,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorCompoundBrandStrokePressed}`,\n color: tokens.colorBrandForeground2Pressed,\n },\n '@media (forced-colors: active)': {\n border: `solid ${tokens.strokeWidthThin} Highlight`,\n },\n },\n subtleDisabled: {\n backgroundColor: tokens.colorSubtleBackground,\n color: tokens.colorNeutralForegroundDisabled,\n },\n subtleDisabledSelected: {\n backgroundColor: tokens.colorNeutralBackgroundDisabled,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorNeutralStrokeDisabled}`,\n color: tokens.colorNeutralForegroundDisabled,\n },\n filled: {\n backgroundColor: tokens.colorNeutralBackground3,\n color: tokens.colorNeutralForeground2,\n ':enabled:hover': {\n backgroundColor: tokens.colorNeutralBackground3Hover,\n color: tokens.colorNeutralForeground2Hover,\n },\n ':enabled:active': {\n backgroundColor: tokens.colorNeutralBackground3Pressed,\n color: tokens.colorNeutralForeground2Pressed,\n },\n '@media (forced-colors: active)': {\n ':enabled:hover': {\n backgroundColor: 'Highlight',\n forcedColorAdjust: 'none',\n [`& .${tabClassNames.content}`]: {\n color: 'HighlightText',\n },\n [`& .${iconClassNames.filled}`]: {\n color: 'HighlightText',\n },\n [`& .${iconClassNames.regular}`]: {\n color: 'HighlightText',\n },\n },\n },\n },\n filledSelected: {\n backgroundColor: tokens.colorBrandBackground,\n color: tokens.colorNeutralForegroundOnBrand,\n ':enabled:hover': {\n backgroundColor: tokens.colorBrandBackgroundHover,\n color: tokens.colorNeutralForegroundOnBrand,\n },\n ':enabled:active': {\n backgroundColor: tokens.colorBrandBackgroundPressed,\n color: tokens.colorNeutralForegroundOnBrand,\n },\n '@media (forced-colors: active)': {\n ':enabled': {\n backgroundColor: 'ButtonText',\n [`& .${tabClassNames.content}`]: {\n color: 'ButtonFace',\n forcedColorAdjust: 'none',\n },\n },\n [`:enabled .${tabClassNames.icon}`]: {\n color: 'ButtonFace',\n },\n },\n },\n filledDisabled: {\n backgroundColor: tokens.colorNeutralBackgroundDisabled,\n color: tokens.colorNeutralForegroundDisabled,\n },\n filledDisabledSelected: {\n backgroundColor: tokens.colorNeutralBackgroundDisabled,\n border: `solid ${tokens.strokeWidthThin} ${tokens.colorNeutralStrokeDisabled}`,\n color: tokens.colorNeutralForegroundDisabled,\n },\n});\n\n/**\n * Focus styles for the root slot\n */\nconst useFocusStyles = makeStyles({\n // Tab creates a custom focus indicator because the default focus indicator\n // is applied using an ::after pseudo-element on the root. Since the selection\n // indicator uses an ::after pseudo-element on the root, there is a conflict.\n base: createCustomFocusIndicatorStyle(\n {\n ...shorthands.borderColor('transparent'),\n outlineWidth: tokens.strokeWidthThick,\n outlineColor: 'transparent',\n outlineStyle: 'solid',\n boxShadow: `\n ${tokens.shadow4},\n 0 0 0 ${tokens.strokeWidthThick} ${tokens.colorStrokeFocus2}\n `,\n zIndex: 1,\n },\n { enableOutline: true },\n ),\n circular: createCustomFocusIndicatorStyle(\n {\n ...shorthands.borderColor('transparent'),\n outlineWidth: tokens.strokeWidthThick,\n outlineColor: 'transparent',\n outlineStyle: 'solid',\n boxShadow: `\n ${tokens.shadow4},\n 0 0 0 ${tokens.strokeWidthThick} ${tokens.colorStrokeFocus2},\n 0 0 0 ${tokens.strokeWidthThin} ${tokens.colorNeutralStrokeOnBrand} inset\n `,\n zIndex: 1,\n },\n { enableOutline: true },\n ),\n});\n\n/** Indicator styles for when pending selection */\nconst usePendingIndicatorStyles = makeStyles({\n base: {\n ':hover::before': {\n backgroundColor: tokens.colorNeutralStroke1Hover,\n borderRadius: tokens.borderRadiusCircular,\n content: '\"\"',\n position: 'absolute',\n },\n ':active::before': {\n backgroundColor: tokens.colorNeutralStroke1Pressed,\n borderRadius: tokens.borderRadiusCircular,\n content: '\"\"',\n position: 'absolute',\n },\n '@media (forced-colors: active)': {\n ':hover::before': {\n backgroundColor: 'Highlight',\n },\n ':active::before': {\n backgroundColor: 'Highlight',\n },\n },\n },\n disabled: {\n ':hover::before': {\n backgroundColor: tokens.colorTransparentStroke,\n },\n ':active::before': {\n backgroundColor: tokens.colorTransparentStroke,\n },\n '@media (forced-colors: active)': {\n ':hover::before': {\n backgroundColor: 'transparent',\n },\n ':active::before': {\n backgroundColor: 'transparent',\n },\n },\n },\n smallHorizontal: {\n '::before': {\n bottom: 0,\n height: tokens.strokeWidthThick,\n left: tokens.spacingHorizontalSNudge,\n right: tokens.spacingHorizontalSNudge,\n },\n },\n smallVertical: {\n '::before': {\n bottom: tokens.spacingVerticalXS,\n left: 0,\n top: tokens.spacingVerticalXS,\n width: tokens.strokeWidthThicker,\n },\n },\n mediumHorizontal: {\n '::before': {\n bottom: 0,\n height: tokens.strokeWidthThicker,\n left: tokens.spacingHorizontalM,\n right: tokens.spacingHorizontalM,\n },\n },\n mediumVertical: {\n '::before': {\n bottom: tokens.spacingVerticalS,\n left: 0,\n top: tokens.spacingVerticalS,\n width: tokens.strokeWidthThicker,\n },\n },\n largeHorizontal: {\n '::before': {\n bottom: 0,\n height: tokens.strokeWidthThicker,\n left: tokens.spacingHorizontalM,\n right: tokens.spacingHorizontalM,\n },\n },\n largeVertical: {\n '::before': {\n bottom: tokens.spacingVerticalMNudge,\n left: 0,\n top: tokens.spacingVerticalMNudge,\n width: tokens.strokeWidthThicker,\n },\n },\n});\n\nconst useActiveIndicatorStyles = makeStyles({\n base: {\n '::after': {\n backgroundColor: tokens.colorTransparentStroke,\n borderRadius: tokens.borderRadiusCircular,\n content: '\"\"',\n position: 'absolute',\n },\n },\n selected: {\n '::after': {\n backgroundColor: tokens.colorCompoundBrandStroke,\n },\n ':enabled:hover::after': {\n backgroundColor: tokens.colorCompoundBrandStrokeHover,\n },\n ':enabled:active::after': {\n backgroundColor: tokens.colorCompoundBrandStrokePressed,\n },\n '@media (forced-colors: active)': {\n '::after': {\n backgroundColor: 'ButtonText',\n },\n ':enabled:hover::after': {\n backgroundColor: 'ButtonText',\n },\n ':enabled:active::after': {\n backgroundColor: 'ButtonText',\n },\n },\n },\n disabled: {\n '::after': {\n backgroundColor: tokens.colorNeutralForegroundDisabled,\n },\n },\n smallHorizontal: {\n '::after': {\n bottom: 0,\n height: tokens.strokeWidthThick,\n left: tokens.spacingHorizontalSNudge,\n right: tokens.spacingHorizontalSNudge,\n },\n },\n smallVertical: {\n '::after': {\n bottom: tokens.spacingVerticalXS,\n left: '0',\n top: tokens.spacingVerticalXS,\n width: tokens.strokeWidthThicker,\n },\n },\n mediumHorizontal: {\n '::after': {\n bottom: '0',\n height: tokens.strokeWidthThicker,\n left: tokens.spacingHorizontalM,\n right: tokens.spacingHorizontalM,\n },\n },\n mediumVertical: {\n '::after': {\n bottom: tokens.spacingVerticalS,\n left: 0,\n top: tokens.spacingVerticalS,\n width: tokens.strokeWidthThicker,\n },\n },\n largeHorizontal: {\n '::after': {\n bottom: 0,\n height: tokens.strokeWidthThicker,\n left: tokens.spacingHorizontalM,\n right: tokens.spacingHorizontalM,\n },\n },\n largeVertical: {\n '::after': {\n bottom: tokens.spacingVerticalMNudge,\n left: 0,\n top: tokens.spacingVerticalMNudge,\n width: tokens.strokeWidthThicker,\n },\n },\n});\n\n/**\n * Styles for the icon slot.\n */\nconst useIconStyles = makeStyles({\n base: {\n gridColumnStart: 1,\n gridRowStart: 1,\n alignItems: 'center',\n display: 'inline-flex',\n justifyContent: 'center',\n overflow: 'hidden',\n [`& .${iconClassNames.filled}`]: {\n display: 'none',\n },\n [`& .${iconClassNames.regular}`]: {\n display: 'inline',\n },\n },\n // per design, the small and medium font sizes are the same.\n // the size prop only affects spacing.\n small: {\n fontSize: '20px',\n height: '20px',\n width: '20px',\n },\n medium: {\n fontSize: '20px',\n height: '20px',\n width: '20px',\n },\n large: {\n fontSize: '24px',\n height: '24px',\n width: '24px',\n },\n selected: {\n [`& .${iconClassNames.filled}`]: {\n display: 'inline',\n },\n [`& .${iconClassNames.regular}`]: {\n display: 'none',\n },\n },\n});\n\n/**\n * Styles for the content slot (children)\n */\nconst useContentStyles = makeStyles({\n base: {\n ...typographyStyles.body1,\n overflow: 'hidden',\n // content padding is the same for medium & small, horizontal & vertical\n padding: `${tokens.spacingVerticalNone} ${tokens.spacingHorizontalXXS}`,\n },\n selected: {\n ...typographyStyles.body1Strong,\n },\n large: {\n ...typographyStyles.body2,\n },\n largeSelected: {\n ...typographyStyles.subtitle2,\n },\n noIconBefore: {\n gridColumnStart: 1,\n gridRowStart: 1,\n },\n iconBefore: {\n gridColumnStart: 2,\n gridRowStart: 1,\n },\n placeholder: {\n visibility: 'hidden',\n },\n});\n\n/**\n * Apply styling to the Tab slots based on the state\n */\nexport const useTabStyles_unstable = (state: TabState): TabState => {\n 'use no memo';\n\n useTabIndicatorStyles_unstable(state);\n\n useTabButtonStyles_unstable(state, state.root);\n\n useTabContentStyles_unstable(state);\n\n return state;\n};\n\n/**\n * Applies styles for the Tab indicator based on its current state.\n *\n * This hook is typically used internally by `useTabStyles_unstable`. You should\n * only use it directly if you're creating a custom `Tab` component.\n *\n * @param state - The `Tab` component's current state\n * @returns The state object with updated button styles\n */\nexport const useTabIndicatorStyles_unstable = (state: TabState): TabState => {\n 'use no memo';\n\n const rootStyles = useRootStyles();\n const pendingIndicatorStyles = usePendingIndicatorStyles();\n const activeIndicatorStyles = useActiveIndicatorStyles();\n\n const { appearance, disabled, selected, size, vertical } = state;\n\n const classes: Parameters<typeof mergeClasses> = [tabClassNames.root, rootStyles.root];\n\n if (appearance !== 'subtle-circular' && appearance !== 'filled-circular') {\n classes.push(\n // pending indicator (before pseudo element)\n pendingIndicatorStyles.base,\n size === 'small' && (vertical ? pendingIndicatorStyles.smallVertical : pendingIndicatorStyles.smallHorizontal),\n size === 'medium' && (vertical ? pendingIndicatorStyles.mediumVertical : pendingIndicatorStyles.mediumHorizontal),\n size === 'large' && (vertical ? pendingIndicatorStyles.largeVertical : pendingIndicatorStyles.largeHorizontal),\n disabled && pendingIndicatorStyles.disabled,\n\n // active indicator (after pseudo element)\n selected && activeIndicatorStyles.base,\n selected && !disabled && activeIndicatorStyles.selected,\n selected &&\n size === 'small' &&\n (vertical ? activeIndicatorStyles.smallVertical : activeIndicatorStyles.smallHorizontal),\n selected &&\n size === 'medium' &&\n (vertical ? activeIndicatorStyles.mediumVertical : activeIndicatorStyles.mediumHorizontal),\n selected &&\n size === 'large' &&\n (vertical ? activeIndicatorStyles.largeVertical : activeIndicatorStyles.largeHorizontal),\n selected && disabled && activeIndicatorStyles.disabled,\n );\n }\n\n state.root.className = mergeClasses(...classes, state.root.className);\n\n useTabAnimatedIndicatorStyles_unstable(state);\n\n return state;\n};\n\n/**\n * Applies styles to the Tab button slot based on its current state.\n *\n * This hook is typically used internally by `useTabStyles_unstable`. You should\n * only use it directly if you're creating a custom `Tab` component.\n *\n * @param state - The Tab component's current state\n * @param slot - The button slot of the Tab component\n * @returns The state object with updated button styles\n */\nexport const useTabButtonStyles_unstable = (state: TabState, slot: TabState['root']): TabState => {\n 'use no memo';\n\n const rootStyles = useRootStyles();\n const focusStyles = useFocusStyles();\n const circularStyles = useCircularAppearanceStyles();\n\n const { appearance, disabled, selected, size, vertical } = state;\n\n const isSubtleCircular = appearance === 'subtle-circular';\n const isFilledCircular = appearance === 'filled-circular';\n const isCircular = isSubtleCircular || isFilledCircular;\n\n const circularAppearance = [\n circularStyles.base,\n focusStyles.circular,\n // sizes\n size === 'small' && circularStyles.small,\n size === 'medium' && circularStyles.medium,\n size === 'large' && circularStyles.large,\n // subtle-circular appearance\n isSubtleCircular && circularStyles.subtle,\n selected && isSubtleCircular && circularStyles.subtleSelected,\n disabled && isSubtleCircular && circularStyles.subtleDisabled,\n selected && disabled && isSubtleCircular && circularStyles.subtleDisabledSelected,\n // filled-circular appearance\n isFilledCircular && circularStyles.filled,\n selected && isFilledCircular && circularStyles.filledSelected,\n disabled && isFilledCircular && circularStyles.filledDisabled,\n selected && disabled && isFilledCircular && circularStyles.filledDisabledSelected,\n ];\n\n const regularAppearance = [\n focusStyles.base,\n !disabled && appearance === 'subtle' && rootStyles.subtle,\n !disabled && appearance === 'transparent' && rootStyles.transparent,\n !disabled && selected && rootStyles.selected,\n disabled && rootStyles.disabled,\n ];\n\n slot.className = mergeClasses(\n rootStyles.button,\n // orientation\n vertical ? rootStyles.vertical : rootStyles.horizontal,\n // size\n size === 'small' && (vertical ? rootStyles.smallVertical : rootStyles.smallHorizontal),\n size === 'medium' && (vertical ? rootStyles.mediumVertical : rootStyles.mediumHorizontal),\n size === 'large' && (vertical ? rootStyles.largeVertical : rootStyles.largeHorizontal),\n ...(isCircular ? circularAppearance : regularAppearance),\n disabled && rootStyles.disabledCursor,\n slot.className,\n );\n\n return state;\n};\n\n/**\n * Applies styles to the Tab content slot based on its current state.\n *\n * This hook is typically used internally by `useTabStyles_unstable`. You should\n * only use it directly if you're creating a custom `Tab` component.\n *\n * @param state - The Tab component's current state\n * @returns The state object with updated content styles\n */\nexport const useTabContentStyles_unstable = (state: TabState): TabState => {\n 'use no memo';\n\n const iconStyles = useIconStyles();\n const contentStyles = useContentStyles();\n\n const { selected, size } = state;\n\n if (state.icon) {\n state.icon.className = mergeClasses(\n tabClassNames.icon,\n iconStyles.base,\n iconStyles[size],\n selected && iconStyles.selected,\n state.icon.className,\n );\n }\n\n // This needs to be before state.content.className is updated\n if (state.contentReservedSpace) {\n state.contentReservedSpace.className = mergeClasses(\n reservedSpaceClassNames.content,\n contentStyles.base,\n size === 'large' ? contentStyles.largeSelected : contentStyles.selected,\n state.icon ? contentStyles.iconBefore : contentStyles.noIconBefore,\n contentStyles.placeholder,\n state.content.className,\n );\n // FIXME: this is a deprecated API\n // should be removed in the next major version\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n state.contentReservedSpaceClassName = state.contentReservedSpace.className;\n }\n\n state.content.className = mergeClasses(\n tabClassNames.content,\n contentStyles.base,\n size === 'large' && contentStyles.large,\n selected && (size === 'large' ? contentStyles.largeSelected : contentStyles.selected),\n state.icon ? contentStyles.iconBefore : contentStyles.noIconBefore,\n state.content.className,\n );\n\n return state;\n};\n"],"names":["makeStyles","mergeClasses","shorthands","createCustomFocusIndicatorStyle","tokens","typographyStyles","useTabAnimatedIndicatorStyles_unstable","tabClassNames","root","icon","content","reservedSpaceClassNames","iconClassNames","filled","regular","useRootStyles","alignItems","display","flexShrink","gridAutoFlow","gridTemplateColumns","gridTemplateRows","outlineStyle","position","button","border","borderRadius","borderRadiusMedium","cursor","fontFamily","fontFamilyBase","lineHeight","lineHeightBase300","overflow","textTransform","horizontal","justifyContent","vertical","smallHorizontal","columnGap","spacingHorizontalXXS","padding","spacingVerticalSNudge","spacingHorizontalSNudge","smallVertical","spacingVerticalXXS","mediumHorizontal","spacingVerticalM","spacingHorizontalMNudge","mediumVertical","largeHorizontal","spacingVerticalL","largeVertical","spacingVerticalS","transparent","backgroundColor","colorTransparentBackground","colorTransparentBackgroundHover","colorTransparentBackgroundPressed","color","colorNeutralForeground2","colorNeutralForeground2Hover","colorNeutralForeground2Pressed","subtle","colorSubtleBackground","colorSubtleBackgroundHover","colorSubtleBackgroundPressed","disabledCursor","disabled","colorNeutralForegroundDisabled","selected","colorCompoundBrandForeground1","colorCompoundBrandForeground1Hover","colorCompoundBrandForeground1Pressed","colorNeutralForeground1","colorNeutralForeground1Hover","colorNeutralForeground1Pressed","useCircularAppearanceStyles","base","borderRadiusCircular","strokeWidthThin","colorTransparentStroke","small","paddingBlock","medium","large","colorNeutralStroke1Hover","colorNeutralStroke1Pressed","subtleSelected","colorBrandBackground2","colorCompoundBrandStroke","colorBrandForeground2","colorBrandBackground2Hover","colorCompoundBrandStrokeHover","colorBrandForeground2Hover","colorBrandBackground2Pressed","colorCompoundBrandStrokePressed","colorBrandForeground2Pressed","subtleDisabled","subtleDisabledSelected","colorNeutralBackgroundDisabled","colorNeutralStrokeDisabled","colorNeutralBackground3","colorNeutralBackground3Hover","colorNeutralBackground3Pressed","forcedColorAdjust","filledSelected","colorBrandBackground","colorNeutralForegroundOnBrand","colorBrandBackgroundHover","colorBrandBackgroundPressed","filledDisabled","filledDisabledSelected","useFocusStyles","borderColor","outlineWidth","strokeWidthThick","outlineColor","boxShadow","shadow4","colorStrokeFocus2","zIndex","enableOutline","circular","colorNeutralStrokeOnBrand","usePendingIndicatorStyles","bottom","height","left","right","spacingVerticalXS","top","width","strokeWidthThicker","spacingHorizontalM","spacingVerticalMNudge","useActiveIndicatorStyles","useIconStyles","gridColumnStart","gridRowStart","fontSize","useContentStyles","body1","spacingVerticalNone","body1Strong","body2","largeSelected","subtitle2","noIconBefore","iconBefore","placeholder","visibility","useTabStyles_unstable","state","useTabIndicatorStyles_unstable","useTabButtonStyles_unstable","useTabContentStyles_unstable","rootStyles","pendingIndicatorStyles","activeIndicatorStyles","appearance","size","classes","push","className","slot","focusStyles","circularStyles","isSubtleCircular","isFilledCircular","isCircular","circularAppearance","regularAppearance","iconStyles","contentStyles","contentReservedSpace","contentReservedSpaceClassName"],"mappings":"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"}
|