import { __extends } from "tslib";
import * as React from 'react';
import { Stack, Text } from 'office-ui-fabric-react';
import { ActionButton, CommandBarButton, CompoundButton, DefaultButton, IconButton, MessageBarButton, PrimaryButton, Actionable, MenuButton, SplitButton, } from '@uifabric/experiments';
var tokens = {
    sectionStack: {
        childrenGap: 32,
    },
    buttonStack: {
        childrenGap: 12,
    },
};
var ButtonStack = function (props) { return (React.createElement(Stack, { horizontal: true, disableShrink: true, tokens: tokens.buttonStack }, props.children)); };
var ButtonVariantsExample = /** @class */ (function (_super) {
    __extends(ButtonVariantsExample, _super);
    function ButtonVariantsExample() {
        return _super !== null && _super.apply(this, arguments) || this;
    }
    ButtonVariantsExample.prototype.render = function () {
        var menuProps = {
            items: [
                {
                    key: 'a',
                    name: 'Item a',
                },
                {
                    key: 'b',
                    name: 'Item b',
                },
            ],
        };
        return (React.createElement(Stack, { tokens: tokens.sectionStack },
            React.createElement(Stack, { tokens: tokens.buttonStack },
                React.createElement(ButtonStack, null,
                    React.createElement(Actionable, null, "Actionable"),
                    React.createElement(Actionable, { disabled: true }, "Disabled Actionable")),
                React.createElement(ButtonStack, null,
                    React.createElement(DefaultButton, { content: "Default button" }),
                    React.createElement(DefaultButton, { disabled: true, content: "Disabled default button" }),
                    React.createElement(PrimaryButton, { content: "Primary button" }),
                    React.createElement(PrimaryButton, { disabled: true, content: "Disabled primary button" })),
                React.createElement(ButtonStack, null,
                    React.createElement(ActionButton, { content: "Action button" }),
                    React.createElement(ActionButton, { disabled: true, content: "Disabled action button" })),
                React.createElement(ButtonStack, null,
                    React.createElement(CommandBarButton, { content: "Command bar button" }),
                    React.createElement(CommandBarButton, { disabled: true, content: "Disabled command bar button" })),
                React.createElement(ButtonStack, null,
                    React.createElement(CompoundButton, { content: "Compound button", secondaryText: "Enabled" }),
                    React.createElement(CompoundButton, { primary: true, content: "Compound button", secondaryText: "Primary Enabled" }),
                    React.createElement(CompoundButton, { disabled: true, content: "Compound button", secondaryText: "Disabled" }),
                    React.createElement(CompoundButton, { primary: true, disabled: true, content: "Compound button", secondaryText: "Primary Disabled" })),
                React.createElement(ButtonStack, null,
                    React.createElement(Stack, { horizontal: true, verticalAlign: "center" },
                        React.createElement(Text, null, "Icon Button:"),
                        React.createElement(IconButton, { icon: { iconName: 'Emoji2' } }),
                        React.createElement(IconButton, { disabled: true, icon: { iconName: 'Emoji2' } }))),
                React.createElement(ButtonStack, null,
                    React.createElement(MessageBarButton, { content: "Default" }),
                    React.createElement(MessageBarButton, { primary: true, content: "Primary" }),
                    React.createElement(MessageBarButton, { disabled: true, content: "Disabled" }),
                    React.createElement(MessageBarButton, { primary: true, disabled: true, content: "P Disabled" })),
                React.createElement(ButtonStack, null,
                    React.createElement(MenuButton, { content: "Button", menu: menuProps }),
                    React.createElement(MenuButton, { primary: true, content: "Button", menu: menuProps }),
                    React.createElement(MenuButton, { disabled: true, content: "Button", menu: menuProps }),
                    React.createElement(MenuButton, { primary: true, disabled: true, content: "Button", menu: menuProps })),
                React.createElement(ButtonStack, null,
                    React.createElement(SplitButton, { content: "Button", menu: menuProps }),
                    React.createElement(SplitButton, { disabled: true, content: "Button", menu: menuProps }),
                    React.createElement(SplitButton, { primary: true, content: "Button", menu: menuProps }),
                    React.createElement(SplitButton, { disabled: true, primary: true, content: "Button", menu: menuProps }),
                    React.createElement(SplitButton, { primaryActionDisabled: true, content: "Button", menu: menuProps }),
                    React.createElement(SplitButton, { primaryActionDisabled: true, primary: true, content: "Button", menu: menuProps })))));
    };
    return ButtonVariantsExample;
}(React.Component));
export { ButtonVariantsExample };
//# sourceMappingURL=Button.Variants.Example.js.map