{"version":3,"file":"index.mjs","sources":["../../../../../../packages/components/spinner/src/index.vue"],"sourcesContent":["<template>\n  <div\n    ref=\"iconRef\"\n    :class=\"[\n      namespace,\n      animation,\n      status ? `is-finish ${status}` : '',\n      definedSize && size ? size : '',\n    ]\"\n    :style=\"style\"\n  >\n    <div class=\"spinner-wrap\">\n      <slot>\n        <system-loading />\n      </slot>\n    </div>\n    <div class=\"show-result\">\n      <slot v-if=\"status === 'info'\" name=\"info\">\n        <hl-icon>\n          <system-info />\n        </hl-icon>\n      </slot>\n\n      <slot v-else-if=\"status === 'success'\" name=\"success\">\n        <hl-icon>\n          <system-success />\n        </hl-icon>\n      </slot>\n\n      <slot v-else-if=\"status === 'warning'\" name=\"warning\">\n        <hl-icon>\n          <system-warning />\n        </hl-icon>\n      </slot>\n\n      <slot v-else-if=\"status === 'error' || !status\" name=\"error\">\n        <hl-icon>\n          <system-error />\n        </hl-icon>\n      </slot>\n    </div>\n  </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref } from 'vue'\nimport { useNamespace } from '@hongluan-ui/hooks'\nimport { isValidComponentSize } from '@hongluan-ui/utils'\nimport HlIcon from '@hongluan-ui/components/icon'\nimport { SystemSuccess, SystemInfo, SystemWarning, SystemError, SystemLoading } from '@hongluan-ui/components/system-icon'\n\nexport default defineComponent({\n  name: 'Spinner',\n  components: {\n    HlIcon,\n    SystemSuccess,\n    SystemInfo,\n    SystemWarning,\n    SystemError,\n    SystemLoading,\n  },\n  props: {\n    status: {\n      type: String,\n      default: '',\n    },\n    animation: {\n      type: String,\n      default: 'around-right',\n    },\n    duration: {\n      type: String,\n      default: '',\n    },\n    color: {\n      type: String,\n    },\n    size: String,\n  },\n  setup(props) {\n    const { namespace } = useNamespace('spinner')\n    const definedSize = ref(false)\n    const style = ref<any>({\n      '--spinner-color': props.color,\n      '--spinner-duration': props.duration,\n    })\n\n    if (isValidComponentSize(props.size)) {\n      definedSize.value = true\n    } else {\n      Object.assign(style.value, { '--spinner-width': props.size, '--spinner-height': props.size })\n    }\n    return {\n      namespace,\n      style,\n      definedSize,\n    }\n  },\n})\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_normalizeStyle","_createElementVNode","_renderSlot","_createVNode"],"mappings":";;;;;;;;;;;;;;AAkDA,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AACF,EACA,OAAO;AAAA,IACL,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA;AACX,IACA,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS;AAAA;AACX,IACA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;AACX,IACA,OAAO;AAAA,MACL,MAAM;AAAA;AACR,IACA,MAAM;AAAA;AACR,EACA,MAAM,OAAO;AACX,UAAM,EAAE,cAAc,aAAa,SAAS;AAC5C,UAAM,cAAc,IAAI,KAAK;AAC7B,UAAM,QAAQ,IAAS;AAAA,MACrB,mBAAmB,MAAM;AAAA,MACzB,sBAAsB,MAAM;AAAA,KAC7B;AAED,QAAI,qBAAqB,MAAM,IAAI,GAAG;AACpC,kBAAY,QAAQ;AAAA,WACf;AACL,aAAO,OAAO,MAAM,OAAO,EAAE,mBAAmB,MAAM,MAAM,oBAAoB,MAAM,MAAM;AAAA;AAE9F,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA;AACF;AAEJ,CAAC;;;;;;;;sBAhGCA,mBAwCM;AAAA,IAvCJ,KAAI;AAAA,IACH,OAAKC;AAAA,MAAU;AAAA,MAAiB;AAAA,MAAiB,cAAM,aAAgB,gBAAM;AAAA,MAAe,oBAAe,YAAO,YAAI;AAAA;IAMtH,OAAKC,eAAE,UAAK;AAAA;IAEbC,mBAIM,SAJD,OAAM;AAAc,MACvBC,WAEO,4BAFP,MAEO;AAAA,QADLC,YAAkB;AAAA;;IAGtBF,mBAwBM,SAxBD,OAAM;AAAa,MACV,gBAAM,SAAlBC,WAIO,iCAJP,MAIO;AAAA,QAHLC,YAEU;AAAA,2BADR,MAAe;AAAA,YAAfA,YAAe;AAAA;;;WAIF,gBAAM,YAAvBD,WAIO,oCAJP,MAIO;AAAA,QAHLC,YAEU;AAAA,2BADR,MAAkB;AAAA,YAAlBA,YAAkB;AAAA;;;WAIL,gBAAM,YAAvBD,WAIO,oCAJP,MAIO;AAAA,QAHLC,YAEU;AAAA,2BADR,MAAkB;AAAA,YAAlBA,YAAkB;AAAA;;;WAIL,gBAAM,YAAiB,cAAxCD,WAIO,kCAJP,MAIO;AAAA,QAHLC,YAEU;AAAA,2BADR,MAAgB;AAAA,YAAhBA,YAAgB;AAAA;;;;;;;;;;;"}