var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
    if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
    return cooked;
};
var __extends = (this && this.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
import React from 'react';
import styled, { keyframes } from '@monstrosity/utilities/themed-components';
export var SpinnerContainer = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n\tdisplay: inline-block;\n\tfont-size: 0;\n\tpadding: 0;\n"], ["\n\tdisplay: inline-block;\n\tfont-size: 0;\n\tpadding: 0;\n"])));
var Animation = keyframes(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n    from {transform: scale(0, 0);}\n    to {transform: scale(1, 1);}\n"], ["\n    from {transform: scale(0, 0);}\n    to {transform: scale(1, 1);}\n"])));
export var Dot = styled.span(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n\tvertical-align: middle;\n\tborder-radius: 100%;\n\tbackground: ", ";\n\tdisplay: inline-block;\n\twidth: 0.625rem;\n\theight: 0.625rem;\n\tmargin: 3px 2px;\n\tanimation: ", " 0.8s linear infinite alternate;\n\tanimation-delay: -", "s;\n"], ["\n\tvertical-align: middle;\n\tborder-radius: 100%;\n\tbackground: ", ";\n\tdisplay: inline-block;\n\twidth: 0.625rem;\n\theight: 0.625rem;\n\tmargin: 3px 2px;\n\tanimation: ", " 0.8s linear infinite alternate;\n\tanimation-delay: -", "s;\n"])), function (_a) {
    var theme = _a.theme;
    return theme.style.colour.highlight;
}, Animation, function (_a) {
    var delay = _a.delay;
    return delay;
});
var Spinner = /** @class */ (function (_super) {
    __extends(Spinner, _super);
    function Spinner() {
        return _super !== null && _super.apply(this, arguments) || this;
    }
    Spinner.prototype.render = function () {
        return (React.createElement(SpinnerContainer, null,
            React.createElement(Dot, { delay: 0.8 }),
            React.createElement(Dot, { delay: 0.53333 }),
            React.createElement(Dot, { delay: 0.26666 })));
    };
    return Spinner;
}(React.Component));
export { Spinner };
var templateObject_1, templateObject_2, templateObject_3;
