{"version":3,"file":"emoticon.mjs","sources":["../../../../../../packages/components/emoji/src/emoticon.vue"],"sourcesContent":["<template>\n  <div :class=\"ns.b()\">\n    <a\n      v-for=\"(item, index) in list\"\n      :key=\"index\"\n      :title=\"item.describe\"\n      :class=\"[item.className]\"\n      @click=\"handleClick(item)\"\n    >\n      {{ item.describe }}\n    </a>\n  </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed } from 'vue'\nimport { useNamespace } from 'element-plus'\nimport { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { emoticonEmits, emoticonProps } from './emoji'\nimport { WX_TYPE, emoticonList } from './helper'\nimport type { EmoticonListItem } from './helper'\n\ndefineOptions({\n  name: 'ElEmoticon',\n})\n\nconst props = defineProps(emoticonProps)\nconst emit = defineEmits(emoticonEmits)\n\nconst model = computed({\n  get: () => props.modelValue,\n  set: (val: string) => {\n    emit(UPDATE_MODEL_EVENT, val)\n  },\n})\n\nconst ns = useNamespace('emoji-face')\n\nconst list = computed(() => [...emoticonList])\n\nconst handleClick = (item: EmoticonListItem) => {\n  model.value = item[props.type] ?? ''\n  emit(CHANGE_EVENT, item, WX_TYPE)\n}\n</script>\n"],"names":[],"mappings":";;;;;;;mCAsBc,CAAA;AAAA,EACZ,IAAM,EAAA,YAAA;AACR,CAAA,CAAA,CAAA;;;;;;AAEA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,IAAO,GAAA,MAAA,CAAA;AAEb,IAAA,MAAM,QAAQ,QAAS,CAAA;AAAA,MACrB,GAAA,EAAK,MAAM,KAAM,CAAA,UAAA;AAAA,MACjB,GAAA,EAAK,CAAC,GAAgB,KAAA;AACpB,QAAA,IAAA,CAAK,oBAAoB,GAAG,CAAA,CAAA;AAAA,OAC9B;AAAA,KACD,CAAA,CAAA;AAEK,IAAA,MAAA,EAAA,GAAK,aAAa,YAAY,CAAA,CAAA;AAEpC,IAAA,MAAM,OAAO,QAAS,CAAA,MAAM,CAAC,GAAG,YAAY,CAAC,CAAA,CAAA;AAEvC,IAAA,MAAA,WAAA,GAAc,CAAC,IAA2B,KAAA;;AAC9C,MAAA,KAAA,CAAM,KAAQ,GAAA,CAAA,EAAA,GAAA,IAAA,CAAK,KAAM,CAAA,IAAA,CAAA,KAAX,IAAoB,GAAA,EAAA,GAAA,EAAA,CAAA;AAC7B,MAAA,IAAA,CAAA,YAAA,EAAc,MAAM,OAAO,CAAA,CAAA;AAAA,KAClC,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}