define(["require", "exports", "tslib", "react", "@uifabric/example-app-base", "../../demo/ComponentStatus/ComponentStatus", "./examples/TextField.Basic.Example", "./examples/TextField.Borderless.Example", "./examples/TextField.CustomRender.Example", "./examples/TextField.ErrorMessage.Example", "./examples/TextField.Icon.Example", "./examples/TextField.Multiline.Example", "./examples/TextField.Placeholder.Example", "./examples/TextField.Prefix.Example", "./examples/TextField.PrefixAndSuffix.Example", "./TextField.checklist", "./examples/TextField.Suffix.Example", "./examples/TextField.Underlined.Example", "./examples/TextField.AutoComplete.Example"], function (require, exports, tslib_1, React, example_app_base_1, ComponentStatus_1, TextField_Basic_Example_1, TextField_Borderless_Example_1, TextField_CustomRender_Example_1, TextField_ErrorMessage_Example_1, TextField_Icon_Example_1, TextField_Multiline_Example_1, TextField_Placeholder_Example_1, TextField_Prefix_Example_1, TextField_PrefixAndSuffix_Example_1, TextField_checklist_1, TextField_Suffix_Example_1, TextField_Underlined_Example_1, TextField_AutoComplete_Example_1) {
    "use strict";
    Object.defineProperty(exports, "__esModule", { value: true });
    var TextFieldBasicExampleCode = require('!raw-loader!office-ui-fabric-react/src/components/TextField/examples/TextField.Basic.Example.tsx');
    var TextFieldBorderlessExampleCode = require('!raw-loader!office-ui-fabric-react/src/components/TextField/examples/TextField.Borderless.Example.tsx');
    var TextFieldCustomRenderExampleCode = require('!raw-loader!office-ui-fabric-react/src/components/TextField/examples/TextField.CustomRender.Example.tsx');
    var TextFieldErrorMessageExampleCode = require('!raw-loader!office-ui-fabric-react/src/components/TextField/examples/TextField.ErrorMessage.Example.tsx');
    var TextFieldIconExampleCode = require('!raw-loader!office-ui-fabric-react/src/components/TextField/examples/TextField.Icon.Example.tsx');
    var TextFieldMultilineExampleCode = require('!raw-loader!office-ui-fabric-react/src/components/TextField/examples/TextField.Multiline.Example.tsx');
    var TextFieldPlaceholderExampleCode = require('!raw-loader!office-ui-fabric-react/src/components/TextField/examples/TextField.Placeholder.Example.tsx');
    var TextFieldPrefixExampleCode = require('!raw-loader!office-ui-fabric-react/src/components/TextField/examples/TextField.Prefix.Example.tsx');
    var TextFieldPrefixAndSuffixExampleCode = require('!raw-loader!office-ui-fabric-react/src/components/TextField/examples/TextField.PrefixAndSuffix.Example.tsx');
    var TextFieldSuffixExampleCode = require('!raw-loader!office-ui-fabric-react/src/components/TextField/examples/TextField.Suffix.Example.tsx');
    var TextFieldUnderlinedExampleCode = require('!raw-loader!office-ui-fabric-react/src/components/TextField/examples/TextField.Underlined.Example.tsx');
    var TextFieldAutoCompleteExampleCode = require('!raw-loader!office-ui-fabric-react/src/components/TextField/examples/TextField.AutoComplete.Example.tsx');
    var TextFieldPage = /** @class */ (function (_super) {
        tslib_1.__extends(TextFieldPage, _super);
        function TextFieldPage() {
            return _super !== null && _super.apply(this, arguments) || this;
        }
        TextFieldPage.prototype.render = function () {
            return (React.createElement(example_app_base_1.ComponentPage, { title: 'TextField', componentName: 'TextFieldExample', exampleCards: React.createElement("div", null,
                    React.createElement(example_app_base_1.ExampleCard, { title: 'Default TextField with Label', code: TextFieldBasicExampleCode },
                        React.createElement(TextField_Basic_Example_1.TextFieldBasicExample, null)),
                    React.createElement(example_app_base_1.ExampleCard, { title: 'TextField with Placeholder', code: TextFieldPlaceholderExampleCode },
                        React.createElement(TextField_Placeholder_Example_1.TextFieldPlaceholderExample, null)),
                    React.createElement(example_app_base_1.ExampleCard, { title: 'Multiline TextField', code: TextFieldMultilineExampleCode },
                        React.createElement(TextField_Multiline_Example_1.TextFieldMultilineExample, null)),
                    React.createElement(example_app_base_1.ExampleCard, { title: 'Underlined TextField', code: TextFieldUnderlinedExampleCode },
                        React.createElement(TextField_Underlined_Example_1.TextFieldUnderlinedExample, null)),
                    React.createElement(example_app_base_1.ExampleCard, { title: 'Borderless TextField', code: TextFieldBorderlessExampleCode },
                        React.createElement(TextField_Borderless_Example_1.TextFieldBorderlessExample, null)),
                    React.createElement(example_app_base_1.ExampleCard, { title: 'TextField with browser AutoComplete', code: TextFieldAutoCompleteExampleCode },
                        React.createElement(TextField_AutoComplete_Example_1.TextFieldAutoCompleteExample, null))), implementationExampleCards: React.createElement("div", null,
                    React.createElement(example_app_base_1.ExampleCard, { title: 'Textfield with a prefix', code: TextFieldPrefixExampleCode },
                        React.createElement(TextField_Prefix_Example_1.TextFieldPrefixExample, null)),
                    React.createElement(example_app_base_1.ExampleCard, { title: 'Textfield with a suffix', code: TextFieldSuffixExampleCode },
                        React.createElement(TextField_Suffix_Example_1.TextFieldSuffixExample, null)),
                    React.createElement(example_app_base_1.ExampleCard, { title: 'Textfield with a prefix and a suffix', code: TextFieldPrefixAndSuffixExampleCode },
                        React.createElement(TextField_PrefixAndSuffix_Example_1.TextFieldPrefixAndSuffixExample, null)),
                    React.createElement(example_app_base_1.ExampleCard, { title: 'TextField with an icon', code: TextFieldIconExampleCode },
                        React.createElement(TextField_Icon_Example_1.TextFieldIconExample, null)),
                    React.createElement(example_app_base_1.ExampleCard, { title: 'TextField with custom Label', code: TextFieldCustomRenderExampleCode },
                        React.createElement(TextField_CustomRender_Example_1.TextFieldCustomRenderExample, null)),
                    React.createElement(example_app_base_1.ExampleCard, { title: 'TextField error message variations', code: TextFieldErrorMessageExampleCode },
                        React.createElement(TextField_ErrorMessage_Example_1.TextFieldErrorMessageExample, null))), allowNativeProps: true, nativePropsElement: ['input', 'textarea'], propertiesTables: React.createElement(example_app_base_1.PropertiesTableSet, { sources: [
                        require('!raw-loader!office-ui-fabric-react/src/components/TextField/TextField.types.ts')
                    ] }), overview: React.createElement("div", null,
                    React.createElement("p", null, "The TextField component enables a user to type text into an app. It's typically used to capture a single line of text, but can be configured to capture multiple lines of text. The text displays on the screen in a simple, uniform format.")), bestPractices: React.createElement("div", null), dos: React.createElement("div", null,
                    React.createElement("ul", null,
                        React.createElement("li", null, "Use the TextField to accept data input on a form or page."),
                        React.createElement("li", null, "Label the TextField with a helpful name. "),
                        React.createElement("li", null, "Provide concise helper text that specifies what content is expected to be entered."),
                        React.createElement("li", null, "Provide all appropriate states for the control (static, hover, focus, engaged, unavailable, error)."),
                        React.createElement("li", null, "When part of a form, provide clear designations for which fields are required vs. optional."),
                        React.createElement("li", null, "Provide all appropriate methods for submitting provided data (onEnter or a dedicated \u2018Submit\u2019 button)."),
                        React.createElement("li", null, "Provide all appropriate methods of clearing provided data (\u2018X\u2019 or something similar)."),
                        React.createElement("li", null, "Allow for selection, copy and paste of field data."),
                        React.createElement("li", null, "Whenever possible, format TextField relative to the expected entry (4-digit PIN, 10-digit phone number (3 separate fields), etc)."),
                        React.createElement("li", null, "When long entries are expected, provide a mechanism for overflow or expansion of the control itself."),
                        React.createElement("li", null, "Ensure that the TextField is functional through use of mouse/keyboard or touch when available."),
                        React.createElement("li", null, "Ensure that the TextField is accessible through screen reader and/or other accessibility tools."))), donts: React.createElement("div", null,
                    React.createElement("ul", null,
                        React.createElement("li", null, "Don\u2019t use a TextField to render basic copy as part of a body element of a page."),
                        React.createElement("li", null, "Don\u2019t provide an unlabeled TextField and expect that users will know what to do with it."),
                        React.createElement("li", null, "Don\u2019t place a TextField inline with body copy.  "),
                        React.createElement("li", null, "Don\u2019t be overly verbose with helper text."),
                        React.createElement("li", null, "Don\u2019t occlude the entry or allow entry when the active content is not visible."))), isHeaderVisible: this.props.isHeaderVisible, componentStatus: React.createElement(ComponentStatus_1.ComponentStatus, tslib_1.__assign({}, TextField_checklist_1.TextFieldStatus)) }));
        };
        return TextFieldPage;
    }(React.Component));
    exports.TextFieldPage = TextFieldPage;
});
//# sourceMappingURL=TextFieldPage.js.map