carbon-react
Version:
A library of reusable React components for easily building user interfaces.
2 lines (1 loc) • 2.95 kB
JavaScript
import{jsx as e,jsxs as r,Fragment as t}from"react/jsx-runtime";import"react";import n from"../../__internal__/utils/helpers/tags/tags.js";import{StyledLabel as i,StyledSpinnerWrapper as o,StyledSpinnerCircleSvg as a}from"./loader-spinner.style.js";import"../../style/utils/filter-styled-system-padding-props.js";import s from"../../style/utils/filter-styled-system-margin-props.js";import l from"../../hooks/__internal__/useLocale/useLocale.js";import c from"../../hooks/useMediaQuery/useMediaQuery.js";import{Typography as p}from"../typography/typography.component.js";function u(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}const d=d=>{var{spinnerLabel:f,size:y="medium",showSpinnerLabel:m=!0,variant:b="action",isTracked:g=!1,hasMotion:O=!0,animationTime:j}=d,h=function(e,r){if(null==e)return{};var t,n,i=function(e,r){if(null==e)return{};var t,n,i={},o=Object.keys(e);for(n=0;n<o.length;n++)t=o[n],r.indexOf(t)>=0||(i[t]=e[t]);return i}(e,r);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n<o.length;n++)t=o[n],r.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(i[t]=e[t])}return i}(d,["spinnerLabel","size","showSpinnerLabel","variant","isTracked","hasMotion","animationTime"]);const v=l(),w=c("screen and (prefers-reduced-motion: no-preference)");if(void 0===w)return null;const P=e(i,{"data-role":"visible-label",variant:"span",fontWeight:"400",size:y,color:"inverse"!==b&&"gradient-white"!==b?"var(--colorsUtilityYin090);":"var(--colorsActionMajorYang100);",fontSize:"extra-large"===y?"var(--sizing200)":"var(--sizing175)",lineHeight:"extra-large"===y?"var(--sizing300)":"var(--sizing250)",children:f||v.loaderSpinner.loading()}),S="gradient-white"===b||"gradient-grey"===b;return e(o,(z=function(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{},n=Object.keys(t);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(t).filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})))),n.forEach((function(r){u(e,r,t[r])}))}return e}({size:y,role:"status"},n("loader-spinner",h),s(h)),k=null!=(k={children:w?r(t,{children:[r(a,{role:"presentation",size:y,variant:b,hasMotion:O,isTracked:g,isGradientVariant:S,animationTime:j||(S?2:1),viewBox:"0 0 24 24",children:[e("circle",{"data-role":"outer-arc"}),e("circle",{"data-role":"inner-arc"})]}),m?P:e(p,{"data-role":"hidden-label",variant:"span",screenReaderOnly:!0,children:f||v.loaderSpinner.loading()})]}):P})?k:{},Object.getOwnPropertyDescriptors?Object.defineProperties(z,Object.getOwnPropertyDescriptors(k)):function(e){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(e);r.push.apply(r,t)}return r}(Object(k)).forEach((function(e){Object.defineProperty(z,e,Object.getOwnPropertyDescriptor(k,e))})),z));var z,k};export{d as LoaderSpinner,d as default};