office-ui-fabric-react
Version:
Reusable React components for building experiences for Office 365.
41 lines • 2.52 kB
JavaScript
define(["require", "exports", "../../Utilities", "../../Styling"], function (require, exports, Utilities_1, Styling_1) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getClassNames = Utilities_1.memoizeFunction(function (styles, className, variantClassName, iconClassName, disabled, checked, expanded) {
return {
root: Styling_1.mergeStyles(className, 'ms-Button', variantClassName, styles.root, checked && [
'is-checked',
styles.rootChecked
], expanded && [
'is-expanded',
styles.rootExpanded,
{
':hover .ms-Button-icon': styles.iconExpandedHovered,
':hover': styles.rootExpandedHovered
}
], disabled && [
'is-disabled',
styles.rootDisabled
], !disabled && !expanded && {
':hover': styles.rootHovered,
':hover .ms-Button-icon': styles.iconHovered,
':hover .ms-Button-description': styles.descriptionHovered,
':focus': styles.rootFocused,
':active': styles.rootPressed,
':active .ms-Button-description': styles.descriptionPressed
}, disabled && checked && [
styles.rootCheckedDisabled
], !disabled && checked && {
':hover': styles.rootCheckedHovered,
':active': styles.rootCheckedPressed
}),
flexContainer: Styling_1.mergeStyles('ms-Button-flexContainer', styles.flexContainer),
icon: Styling_1.mergeStyles('ms-Button-icon', iconClassName, styles.icon, expanded && styles.iconExpanded, checked && styles.iconChecked, disabled && styles.iconDisabled),
label: Styling_1.mergeStyles('ms-Button-label', styles.label, checked && styles.labelChecked, disabled && styles.labelDisabled),
menuIcon: Styling_1.mergeStyles('ms-Button-menuIcon', styles.menuIcon, checked && styles.menuIconChecked, disabled && styles.menuIconDisabled),
description: Styling_1.mergeStyles('ms-Button-description', styles.description, checked && styles.descriptionChecked, disabled && styles.descriptionDisabled),
screenReaderText: Styling_1.mergeStyles('ms-Button-screenReaderText', styles.screenReaderText)
};
});
});
//# sourceMappingURL=BaseButton.classNames.js.map