first commit

This commit is contained in:
Stefan Hacker
2026-04-03 09:38:48 +02:00
commit 37ad745546
47450 changed files with 3120798 additions and 0 deletions
@@ -0,0 +1,9 @@
import * as React from 'react';
import type { IButtonProps } from '../Button.types';
import type { JSXElement } from '@fluentui/utilities';
/**
* {@docCategory Button}
*/
export declare class IconButton extends React.Component<IButtonProps, {}> {
render(): JSXElement;
}
@@ -0,0 +1,27 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.IconButton = void 0;
var tslib_1 = require("tslib");
var React = require("react");
var BaseButton_1 = require("../BaseButton");
var Utilities_1 = require("../../../Utilities");
var IconButton_styles_1 = require("./IconButton.styles");
/**
* {@docCategory Button}
*/
var IconButton = /** @class */ (function (_super) {
tslib_1.__extends(IconButton, _super);
function IconButton() {
return _super !== null && _super.apply(this, arguments) || this;
}
IconButton.prototype.render = function () {
var _a = this.props, styles = _a.styles, theme = _a.theme;
return (React.createElement(BaseButton_1.BaseButton, tslib_1.__assign({}, this.props, { variantClassName: "ms-Button--icon", styles: (0, IconButton_styles_1.getStyles)(theme, styles), onRenderText: Utilities_1.nullRender, onRenderDescription: Utilities_1.nullRender })));
};
IconButton = tslib_1.__decorate([
(0, Utilities_1.customizable)('IconButton', ['theme', 'styles'], true)
], IconButton);
return IconButton;
}(React.Component));
exports.IconButton = IconButton;
//# sourceMappingURL=IconButton.js.map
@@ -0,0 +1 @@
{"version":3,"file":"IconButton.js","sourceRoot":"../src/","sources":["components/Button/IconButton/IconButton.tsx"],"names":[],"mappings":";;;;AAAA,6BAA+B;AAC/B,4CAA2C;AAC3C,gDAA8D;AAC9D,yDAAgD;AAKhD;;GAEG;AAEH;IAAgC,sCAAiC;IAAjE;;IAcA,CAAC;IAbQ,2BAAM,GAAb;QACQ,IAAA,KAAoB,IAAI,CAAC,KAAK,EAA5B,MAAM,YAAA,EAAE,KAAK,WAAe,CAAC;QAErC,OAAO,CACL,oBAAC,uBAAU,uBACL,IAAI,CAAC,KAAK,IACd,gBAAgB,EAAC,iBAAiB,EAClC,MAAM,EAAE,IAAA,6BAAS,EAAC,KAAM,EAAE,MAAM,CAAC,EACjC,YAAY,EAAE,sBAAU,EACxB,mBAAmB,EAAE,sBAAU,IAC/B,CACH,CAAC;IACJ,CAAC;IAbU,UAAU;QADtB,IAAA,wBAAY,EAAC,YAAY,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC;OACzC,UAAU,CActB;IAAD,iBAAC;CAAA,AAdD,CAAgC,KAAK,CAAC,SAAS,GAc9C;AAdY,gCAAU","sourcesContent":["import * as React from 'react';\nimport { BaseButton } from '../BaseButton';\nimport { customizable, nullRender } from '../../../Utilities';\nimport { getStyles } from './IconButton.styles';\nimport type { IButtonProps } from '../Button.types';\n\nimport type { JSXElement } from '@fluentui/utilities';\n\n/**\n * {@docCategory Button}\n */\n@customizable('IconButton', ['theme', 'styles'], true)\nexport class IconButton extends React.Component<IButtonProps, {}> {\n public render(): JSXElement {\n const { styles, theme } = this.props;\n\n return (\n <BaseButton\n {...this.props}\n variantClassName=\"ms-Button--icon\"\n styles={getStyles(theme!, styles)}\n onRenderText={nullRender}\n onRenderDescription={nullRender}\n />\n );\n }\n}\n"]}
@@ -0,0 +1,3 @@
import type { IButtonStyles } from '../Button.types';
import type { ITheme } from '../../../Styling';
export declare const getStyles: (theme: ITheme, customStyles?: IButtonStyles) => IButtonStyles;
@@ -0,0 +1,56 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getStyles = void 0;
var Styling_1 = require("../../../Styling");
var Utilities_1 = require("../../../Utilities");
var BaseButton_styles_1 = require("../BaseButton.styles");
var SplitButton_styles_1 = require("../SplitButton/SplitButton.styles");
exports.getStyles = (0, Utilities_1.memoizeFunction)(function (theme, customStyles) {
var _a;
var baseButtonStyles = (0, BaseButton_styles_1.getStyles)(theme);
var splitButtonStyles = (0, SplitButton_styles_1.getStyles)(theme);
var palette = theme.palette, semanticColors = theme.semanticColors;
var iconButtonStyles = {
root: {
padding: '0 4px',
width: '32px',
height: '32px',
backgroundColor: 'transparent',
border: 'none',
color: semanticColors.link,
},
rootHovered: (_a = {
color: palette.themeDarkAlt,
backgroundColor: palette.neutralLighter
},
_a[Styling_1.HighContrastSelector] = {
borderColor: 'Highlight',
color: 'Highlight',
},
_a),
rootHasMenu: {
width: 'auto',
},
rootPressed: {
color: palette.themeDark,
backgroundColor: palette.neutralLight,
},
rootExpanded: {
color: palette.themeDark,
backgroundColor: palette.neutralLight,
},
rootChecked: {
color: palette.themeDark,
backgroundColor: palette.neutralLight,
},
rootCheckedHovered: {
color: palette.themeDark,
backgroundColor: palette.neutralQuaternaryAlt,
},
rootDisabled: {
color: palette.neutralTertiaryAlt,
},
};
return (0, Styling_1.concatStyleSets)(baseButtonStyles, iconButtonStyles, splitButtonStyles, customStyles);
});
//# sourceMappingURL=IconButton.styles.js.map
@@ -0,0 +1 @@
{"version":3,"file":"IconButton.styles.js","sourceRoot":"../src/","sources":["components/Button/IconButton/IconButton.styles.ts"],"names":[],"mappings":";;;AAAA,4CAAyE;AACzE,gDAAqD;AACrD,0DAAwE;AACxE,wEAAsF;AAIzE,QAAA,SAAS,GAAG,IAAA,2BAAe,EAAC,UAAC,KAAa,EAAE,YAA4B;;IACnF,IAAM,gBAAgB,GAAkB,IAAA,6BAAmB,EAAC,KAAK,CAAC,CAAC;IACnE,IAAM,iBAAiB,GAAkB,IAAA,8BAAoB,EAAC,KAAK,CAAC,CAAC;IAC7D,IAAA,OAAO,GAAqB,KAAK,QAA1B,EAAE,cAAc,GAAK,KAAK,eAAV,CAAW;IAC1C,IAAM,gBAAgB,GAAkB;QACtC,IAAI,EAAE;YACJ,OAAO,EAAE,OAAO;YAChB,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,MAAM;YACd,eAAe,EAAE,aAAa;YAC9B,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,cAAc,CAAC,IAAI;SAC3B;QAED,WAAW;gBACT,KAAK,EAAE,OAAO,CAAC,YAAY;gBAC3B,eAAe,EAAE,OAAO,CAAC,cAAc;;YACvC,GAAC,8BAAoB,IAAG;gBACtB,WAAW,EAAE,WAAW;gBACxB,KAAK,EAAE,WAAW;aACnB;eACF;QAED,WAAW,EAAE;YACX,KAAK,EAAE,MAAM;SACd;QAED,WAAW,EAAE;YACX,KAAK,EAAE,OAAO,CAAC,SAAS;YACxB,eAAe,EAAE,OAAO,CAAC,YAAY;SACtC;QAED,YAAY,EAAE;YACZ,KAAK,EAAE,OAAO,CAAC,SAAS;YACxB,eAAe,EAAE,OAAO,CAAC,YAAY;SACtC;QAED,WAAW,EAAE;YACX,KAAK,EAAE,OAAO,CAAC,SAAS;YACxB,eAAe,EAAE,OAAO,CAAC,YAAY;SACtC;QAED,kBAAkB,EAAE;YAClB,KAAK,EAAE,OAAO,CAAC,SAAS;YACxB,eAAe,EAAE,OAAO,CAAC,oBAAoB;SAC9C;QAED,YAAY,EAAE;YACZ,KAAK,EAAE,OAAO,CAAC,kBAAkB;SAClC;KACF,CAAC;IAEF,OAAO,IAAA,yBAAe,EAAC,gBAAgB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,YAAY,CAAE,CAAC;AAC/F,CAAC,CAAC,CAAC","sourcesContent":["import { concatStyleSets, HighContrastSelector } from '../../../Styling';\nimport { memoizeFunction } from '../../../Utilities';\nimport { getStyles as getBaseButtonStyles } from '../BaseButton.styles';\nimport { getStyles as getSplitButtonStyles } from '../SplitButton/SplitButton.styles';\nimport type { IButtonStyles } from '../Button.types';\nimport type { ITheme } from '../../../Styling';\n\nexport const getStyles = memoizeFunction((theme: ITheme, customStyles?: IButtonStyles): IButtonStyles => {\n const baseButtonStyles: IButtonStyles = getBaseButtonStyles(theme);\n const splitButtonStyles: IButtonStyles = getSplitButtonStyles(theme);\n const { palette, semanticColors } = theme;\n const iconButtonStyles: IButtonStyles = {\n root: {\n padding: '0 4px',\n width: '32px',\n height: '32px',\n backgroundColor: 'transparent',\n border: 'none',\n color: semanticColors.link,\n },\n\n rootHovered: {\n color: palette.themeDarkAlt,\n backgroundColor: palette.neutralLighter,\n [HighContrastSelector]: {\n borderColor: 'Highlight',\n color: 'Highlight',\n },\n },\n\n rootHasMenu: {\n width: 'auto',\n },\n\n rootPressed: {\n color: palette.themeDark,\n backgroundColor: palette.neutralLight,\n },\n\n rootExpanded: {\n color: palette.themeDark,\n backgroundColor: palette.neutralLight,\n },\n\n rootChecked: {\n color: palette.themeDark,\n backgroundColor: palette.neutralLight,\n },\n\n rootCheckedHovered: {\n color: palette.themeDark,\n backgroundColor: palette.neutralQuaternaryAlt,\n },\n\n rootDisabled: {\n color: palette.neutralTertiaryAlt,\n },\n };\n\n return concatStyleSets(baseButtonStyles, iconButtonStyles, splitButtonStyles, customStyles)!;\n});\n"]}