@universal-material/web
Version: 
Material web components
75 lines (69 loc) • 1.54 kB
JavaScript
import { css } from 'lit';
export const styles = css `
  :host {
    position: relative;
    display: inline-block;
    width: var(--_size);
    height: var(--_size);
    margin-inline: auto;
    --_size: var(--u-circular-progress-size, 3rem);
  }
  .circular {
    width: 100%;
    height: 100%;
    transform: rotate(-90deg);
    transform-origin: center;
  }
  .circular.indeterminate {
    position: relative;
    animation: rotate 2s linear infinite;
  }
  .circular:not(.indeterminate) .path {
    transition: stroke-dashoffset 200ms linear;
  }
  .path {
    stroke-linecap: round;
    stroke: var(--u-circular-progress-color, var(--u-color-primary, rgb(103, 80, 164)));
  }
  .track {
    position: absolute;
    inset: 0;
  }
  .track .path {
    stroke: var(--u-circular-progress-track-color, var(--u-color-secondary-container, rgb(232, 222, 248)));
  }
  .indeterminate .path {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
    animation: dash 1.5s ease-in-out infinite;
  }
  .on-going {
    transform: rotate(-80deg);
  }
  .on-going.track {
    transform: rotate(-100deg);
  }
  @keyframes rotate {
    0% {
      transform: rotate(0);
    }
    100% {
      transform: rotate(360deg);
    }
  }
  @keyframes dash {
    0% {
      stroke-dasharray: 1, 200;
      stroke-dashoffset: 0;
    }
    50% {
      stroke-dasharray: 89, 200;
      stroke-dashoffset: -35;
    }
    100% {
      stroke-dasharray: 89, 200;
      stroke-dashoffset: -124;
    }
  }
`;
//# sourceMappingURL=circular-progress.styles.js.map