58 lines
2.4 KiB
JavaScript
58 lines
2.4 KiB
JavaScript
'use client';
|
|
import { makeStyles, mergeClasses, shorthands } from '@griffel/react';
|
|
import { createCustomFocusIndicatorStyle } from '@fluentui/react-tabster';
|
|
import { tokens, typographyStyles } from '@fluentui/react-theme';
|
|
export const teachingPopoverTitleClassNames = {
|
|
root: 'fui-TeachingPopoverTitle',
|
|
dismissButton: 'fui-TeachingPopoverTitle__dismissButton'
|
|
};
|
|
const useStyles = makeStyles({
|
|
root: {
|
|
display: 'flex',
|
|
flexDirection: 'row',
|
|
justifyContent: 'space-between',
|
|
fontSize: tokens.fontSizeBase400,
|
|
fontWeight: tokens.fontWeightSemibold,
|
|
color: tokens.colorNeutralForeground1,
|
|
lineHeight: tokens.lineHeightBase400,
|
|
paddingBottom: tokens.spacingVerticalS,
|
|
marginTop: tokens.spacingHorizontalNone,
|
|
marginBottom: tokens.spacingHorizontalNone
|
|
},
|
|
rootBrand: {
|
|
color: tokens.colorNeutralForegroundOnBrand
|
|
},
|
|
dismissButton: {
|
|
position: 'relative',
|
|
border: `${tokens.strokeWidthThin} solid ${tokens.colorTransparentStroke}`,
|
|
display: 'flex',
|
|
alignItems: 'center',
|
|
cursor: 'pointer',
|
|
...typographyStyles.body1,
|
|
backgroundColor: tokens.colorTransparentBackground,
|
|
boxSizing: 'border-box',
|
|
borderTopRightRadius: tokens.borderRadiusNone,
|
|
borderBottomRightRadius: tokens.borderRadiusNone,
|
|
borderRightStyle: 'none',
|
|
...createCustomFocusIndicatorStyle({
|
|
outline: `${tokens.strokeWidthThick} solid ${tokens.colorStrokeFocus2}`,
|
|
borderRadius: tokens.borderRadiusMedium,
|
|
...shorthands.borderColor('transparent')
|
|
}),
|
|
marginInlineStart: 'auto'
|
|
},
|
|
dismissBrand: {
|
|
color: tokens.colorNeutralForegroundOnBrand
|
|
}
|
|
});
|
|
/** Applies style classnames to slots */ export const useTeachingPopoverTitleStyles_unstable = (state)=>{
|
|
'use no memo';
|
|
const styles = useStyles();
|
|
const { appearance } = state;
|
|
state.root.className = mergeClasses(teachingPopoverTitleClassNames.root, styles.root, appearance === 'brand' && styles.rootBrand, state.root.className);
|
|
if (state.dismissButton) {
|
|
state.dismissButton.className = mergeClasses(teachingPopoverTitleClassNames.dismissButton, styles.dismissButton, appearance === 'brand' ? styles.dismissBrand : undefined, state.dismissButton.className);
|
|
}
|
|
return state;
|
|
};
|