define(["require", "exports", "react", "./Button.checklist", "./examples/Button.Default.Example", "./examples/Button.ContextualMenu.Example", "./examples/Button.Compound.Example", "./examples/Button.Action.Example", "./examples/Button.CommandBar.Example", "./examples/Button.Icon.Example", "./examples/Button.Anchor.Example", "./examples/Button.ScreenReader.Example", "./examples/Button.Swap.Example", "./examples/Button.Split.Example", "../../common/DocPage.types"], function (require, exports, React, Button_checklist_1, Button_Default_Example_1, Button_ContextualMenu_Example_1, Button_Compound_Example_1, Button_Action_Example_1, Button_CommandBar_Example_1, Button_Icon_Example_1, Button_Anchor_Example_1, Button_ScreenReader_Example_1, Button_Swap_Example_1, Button_Split_Example_1, DocPage_types_1) {
    "use strict";
    Object.defineProperty(exports, "__esModule", { value: true });
    exports.ChecklistStatus = DocPage_types_1.ChecklistStatus;
    var ButtonDefaultExampleCode = require('!raw-loader!office-ui-fabric-react/src/components/Button/examples/Button.Default.Example.tsx');
    var ButtonCompoundExampleCode = require('!raw-loader!office-ui-fabric-react/src/components/Button/examples/Button.Compound.Example.tsx');
    var ButtonActionExampleCode = require('!raw-loader!office-ui-fabric-react/src/components/Button/examples/Button.Action.Example.tsx');
    var ButtonCommandBarExampleCode = require('!raw-loader!office-ui-fabric-react/src/components/Button/examples/Button.CommandBar.Example.tsx');
    var ButtonIconExampleCode = require('!raw-loader!office-ui-fabric-react/src/components/Button/examples/Button.Icon.Example.tsx');
    var ButtonAnchorExampleCode = require('!raw-loader!office-ui-fabric-react/src/components/Button/examples/Button.Anchor.Example.tsx');
    var ButtonScreenReaderExampleCode = require('!raw-loader!office-ui-fabric-react/src/components/Button/examples/Button.ScreenReader.Example.tsx');
    var ButtonContextualMenuExampleCode = require('!raw-loader!office-ui-fabric-react/src/components/Button/examples/Button.ContextualMenu.Example.tsx');
    var ButtonSwapExampleCode = require('!raw-loader!office-ui-fabric-react/src/components/Button/examples/Button.Swap.Example.tsx');
    var ButtonSplitExampleCode = require('!raw-loader!office-ui-fabric-react/src/components/Button/examples/Button.Split.Example.tsx');
    /**
     * Exports a function because the documentation of this page requires some interactivity that is passed in here as a prop
     * @param props Props that are specific to generating page props for ButtonPage
     */
    exports.ButtonPageProps = function (props) { return ({
        title: 'Button',
        componentName: 'ButtonExample',
        componentUrl: 'https://github.com/OfficeDev/office-ui-fabric-react/tree/master/packages/office-ui-fabric-react/src/components/Button',
        examples: [
            {
                title: 'Default Button',
                code: ButtonDefaultExampleCode,
                view: React.createElement(Button_Default_Example_1.ButtonDefaultExample, { disabled: props.areButtonsDisabled, checked: props.areButtonsChecked })
            },
            {
                title: 'Compound Button',
                code: ButtonCompoundExampleCode,
                view: React.createElement(Button_Compound_Example_1.ButtonCompoundExample, { disabled: props.areButtonsDisabled, checked: props.areButtonsChecked })
            },
            {
                title: 'Command Bar Button',
                code: ButtonCommandBarExampleCode,
                view: React.createElement(Button_CommandBar_Example_1.ButtonCommandBarExample, { disabled: props.areButtonsDisabled, checked: props.areButtonsChecked })
            },
            {
                title: 'Split Button',
                code: ButtonSplitExampleCode,
                view: React.createElement(Button_Split_Example_1.ButtonSplitExample, { disabled: props.areButtonsDisabled, checked: props.areButtonsChecked })
            },
            {
                title: 'Icon Button',
                code: ButtonIconExampleCode,
                view: React.createElement(Button_Icon_Example_1.ButtonIconExample, { disabled: props.areButtonsDisabled, checked: props.areButtonsChecked })
            },
            {
                title: 'Contextual Menu Button',
                code: ButtonContextualMenuExampleCode,
                view: React.createElement(Button_ContextualMenu_Example_1.ButtonContextualMenuExample, { disabled: props.areButtonsDisabled, checked: props.areButtonsChecked })
            },
            {
                title: 'Action Button',
                code: ButtonActionExampleCode,
                view: React.createElement(Button_Action_Example_1.ButtonActionExample, { disabled: props.areButtonsDisabled, checked: props.areButtonsChecked })
            }
        ],
        implementationExamples: [
            {
                title: 'Button Like Anchor',
                code: ButtonAnchorExampleCode,
                view: React.createElement(Button_Anchor_Example_1.ButtonAnchorExample, { disabled: props.areButtonsDisabled, checked: props.areButtonsChecked })
            },
            {
                title: 'Button with Aria Description for Screen Reader',
                code: ButtonScreenReaderExampleCode,
                view: React.createElement(Button_ScreenReader_Example_1.ButtonScreenReaderExample, { disabled: props.areButtonsDisabled, checked: props.areButtonsChecked })
            },
            {
                title: 'Button Swap with Focus State',
                code: ButtonSwapExampleCode,
                view: React.createElement(Button_Swap_Example_1.ButtonSwapExample, { disabled: props.areButtonsDisabled, checked: props.areButtonsChecked })
            },
            {
                title: 'Custom Split Button',
                code: ButtonSplitExampleCode,
                view: React.createElement(Button_Split_Example_1.ButtonSplitCustomExample, { disabled: props.areButtonsDisabled, checked: props.areButtonsChecked })
            }
        ],
        allowNativeProps: true,
        nativePropsElement: ['a', 'button'],
        propertiesTablesSources: [
            require('!raw-loader!office-ui-fabric-react/src/components/Button/Button.types.ts')
        ],
        overview: require('!raw-loader!office-ui-fabric-react/src/components/Button/docs/ButtonOverview.md'),
        dos: require('!raw-loader!office-ui-fabric-react/src/components/Button/docs/ButtonDos.md'),
        donts: require('!raw-loader!office-ui-fabric-react/src/components/Button/docs/ButtonDonts.md'),
        isHeaderVisible: true,
        componentStatus: Button_checklist_1.ButtonStatus
    }); };
});
//# sourceMappingURL=Button.doc.js.map