UNPKG

retro-react

Version:

A React component library for building retro-style websites

2 lines (1 loc) 1.11 kB
"use strict";var s=require("../../_virtual/_tslib.js"),e=require("react"),i=require("../../node_modules/@theme-ui/core/jsx-runtime/dist/theme-ui-core-jsx-runtime.esm.js"),r=require("../../utils/classNames.js"),a=require("../../constants/commonClassNames.js"),n=require("./Spinner.styled.js");const o=e.forwardRef(((e,o)=>{var{id:t,className:d,children:l,variant:j="hourglass",size:u="medium",sx:c}=e,x=s.__rest(e,["id","className","children","variant","size","sx"]);return i.jsxs(n.Wrapper,Object.assign({ref:o,className:r.classNames("spinner-root",d,a.default)},x,{sx:c,role:"status","aria-label":"Loading"},{children:["hourglass"===j&&i.jsx(n.HourglassSpinner,{$size:u},void 0),"dots"===j&&i.jsxs(n.DotsSpinner,Object.assign({$size:u},{children:[i.jsx(n.Dot,{},void 0),i.jsx(n.Dot,{},void 0),i.jsx(n.Dot,{},void 0)]}),void 0),"bars"===j&&i.jsxs(n.BarsSpinner,Object.assign({$size:u},{children:[i.jsx(n.Bar,{},void 0),i.jsx(n.Bar,{},void 0),i.jsx(n.Bar,{},void 0),i.jsx(n.Bar,{},void 0)]}),void 0),"rotating"===j&&i.jsx(n.RotatingSpinner,{$size:u},void 0)]}),void 0)}));o.displayName="Spinner",exports.Spinner=o;