var __extends = (this && this.__extends) || function (d, b) {
    for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
    function __() { this.constructor = d; }
    d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
define(["require", "exports", "react", "../../Utilities", "./Spinner.Props", "./Spinner.scss"], function (require, exports, React, Utilities_1, Spinner_Props_1, Spinner_scss_1) {
    "use strict";
    var Spinner = (function (_super) {
        __extends(Spinner, _super);
        function Spinner() {
            return _super !== null && _super.apply(this, arguments) || this;
        }
        Spinner.prototype.render = function () {
            var _a = this.props, type = _a.type, size = _a.size, label = _a.label, className = _a.className; // TODO remove deprecated type property at >= 2.0.0
            return (React.createElement("div", { className: Utilities_1.css('ms-Spinner', Spinner_scss_1.default.root, className) },
                React.createElement("div", { className: Utilities_1.css('ms-Spinner-circle', Spinner_scss_1.default.circle, (_b = {},
                        _b['ms-Spinner--xSmall ' + Spinner_scss_1.default.circleIsXSmall] = size === Spinner_Props_1.SpinnerSize.xSmall,
                        _b['ms-Spinner--small ' + Spinner_scss_1.default.circleIsSmall] = size === Spinner_Props_1.SpinnerSize.small,
                        _b['ms-Spinner--medium ' + Spinner_scss_1.default.circleIsMedium] = size === Spinner_Props_1.SpinnerSize.medium,
                        _b['ms-Spinner--large ' + Spinner_scss_1.default.circleIsLarge] = size === Spinner_Props_1.SpinnerSize.large,
                        _b['ms-Spinner--normal ' + Spinner_scss_1.default.circleIsTypeMedium] = type === Spinner_Props_1.SpinnerType.normal,
                        _b['ms-Spinner--large ' + Spinner_scss_1.default.circleIsTypeLarge] = type === Spinner_Props_1.SpinnerType.large // TODO remove deprecated value at >= 2.0.0
                    ,
                        _b)) }),
                label && (React.createElement("div", { className: Utilities_1.css('ms-Spinner-label', Spinner_scss_1.default.label) }, label))));
            var _b;
        };
        return Spinner;
    }(React.Component));
    Spinner.defaultProps = {
        size: Spinner_Props_1.SpinnerSize.medium
    };
    exports.Spinner = Spinner;
});

//# sourceMappingURL=Spinner.js.map
