{"version":3,"file":"wheel-item.vue2.cjs","sources":["../../../components/wheel/wheel-item.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, inject, onBeforeUnmount, onMounted, reactive, ref, toRef } from 'vue'\n\nimport { useNameHelper } from '@vexip-ui/config'\nimport { WHEEL_STATE } from './symbol'\n\ndefineOptions({ name: 'WheelItem' })\n\nconst props = defineProps({\n  value: {\n    type: [Number, String],\n    default: null,\n  },\n  disabled: {\n    type: Boolean,\n    default: false,\n  },\n  active: {\n    type: Boolean,\n    default: false,\n  },\n  meta: {\n    type: [String, Number, Object],\n    default: null,\n  },\n})\n\nconst nh = useNameHelper('wheel')\n\nconst wheelState = inject(WHEEL_STATE, null)\n\nconst width = ref(0)\nconst height = ref(0)\n\nconst wrapper = ref<HTMLElement>()\n\nconst state = reactive({\n  width,\n  height,\n  el: wrapper,\n  value: toRef(props, 'value'),\n  disabled: toRef(props, 'disabled'),\n  meta: toRef(props, 'meta'),\n})\n\nconst style = computed(() => {\n  return {\n    width: width.value ? `${width.value}px` : undefined,\n    height: height.value ? `${height.value}px` : undefined,\n  }\n})\n\nif (wheelState) {\n  onMounted(() => {\n    wheelState.increaseItem(state)\n  })\n\n  onBeforeUnmount(() => {\n    wheelState.decreaseItem(state)\n  })\n}\n\ndefineExpose({ wrapper })\n</script>\n\n<template>\n  <li\n    ref=\"wrapper\"\n    :class=\"[\n      nh.be('item'),\n      disabled && nh.bem('item', 'disabled'),\n      active && nh.bem('item', 'active')\n    ]\"\n    role=\"option\"\n    :aria-disabled=\"disabled ? 'true' : undefined\"\n    :aria-selected=\"active\"\n    :style=\"style\"\n  >\n    <slot>\n      {{ value }}\n    </slot>\n  </li>\n</template>\n"],"names":["props","__props","nh","useNameHelper","wheelState","inject","WHEEL_STATE","width","ref","height","wrapper","state","reactive","toRef","style","computed","onMounted","onBeforeUnmount","__expose","_createElementBlock","_normalizeClass","_unref","_renderSlot","_ctx"],"mappings":"oXAQA,MAAMA,EAAQC,EAmBRC,EAAKC,gBAAc,OAAO,EAE1BC,EAAaC,EAAAA,OAAOC,EAAA,YAAa,IAAI,EAErCC,EAAQC,MAAI,CAAC,EACbC,EAASD,MAAI,CAAC,EAEdE,EAAUF,EAAAA,IAAiB,EAE3BG,EAAQC,EAAAA,SAAS,CACrB,MAAAL,EACA,OAAAE,EACA,GAAIC,EACJ,MAAOG,EAAAA,MAAMb,EAAO,OAAO,EAC3B,SAAUa,EAAAA,MAAMb,EAAO,UAAU,EACjC,KAAMa,EAAAA,MAAMb,EAAO,MAAM,CAAA,CAC1B,EAEKc,EAAQC,EAAAA,SAAS,KACd,CACL,MAAOR,EAAM,MAAQ,GAAGA,EAAM,KAAK,KAAO,OAC1C,OAAQE,EAAO,MAAQ,GAAGA,EAAO,KAAK,KAAO,MAC/C,EACD,EAED,OAAIL,IACFY,EAAAA,UAAU,IAAM,CACdZ,EAAW,aAAaO,CAAK,CAAA,CAC9B,EAEDM,EAAAA,gBAAgB,IAAM,CACpBb,EAAW,aAAaO,CAAK,CAAA,CAC9B,GAGUO,EAAA,CAAE,QAAAR,EAAS,wBAItBS,EAAA,mBAeK,KAAA,SAdC,UAAJ,IAAIT,EACH,MAAKU,EAAAA,eAAA,CAAUC,EAAAA,MAAAnB,CAAA,EAAG,GAAE,MAAA,EAAgBD,EAAQ,UAAIoB,QAAEnB,CAAA,EAAC,IAAG,OAAA,UAAA,EAA4BD,EAAM,QAAIoB,EAAA,MAAEnB,CAAA,EAAC,IAAG,OAAA,QAAA,CAAA,GAKnG,KAAK,SACJ,gBAAeD,EAAQ,SAAA,OAAY,OACnC,gBAAeA,EAAM,OACrB,uBAAOa,EAAK,KAAA,CAAA,GAEbQ,EAAAA,WAEOC,sBAFP,IAEO,qCADFtB,EAAK,KAAA,EAAA,CAAA"}