UNPKG

xdesign-vue-next

Version:

XDesign Component for vue-next

1 lines 2.54 kB
{"version":3,"file":"highlight-option.mjs","sources":["../../src/auto-complete/highlight-option.tsx"],"sourcesContent":["import { computed, defineComponent } from 'vue';\nimport { usePrefixClass } from '../hooks/useConfig';\nimport isString from 'lodash/isString';\n\nexport default defineComponent({\n name: 'XHighlightOption',\n\n props: {\n /** 联想词 */\n content: String,\n /** 搜索词 */\n keyword: String,\n },\n\n setup(props) {\n const classPrefix = usePrefixClass();\n const words = computed<{ list: string[]; keyword?: string }>(() => {\n const { content, keyword } = props;\n if (!content) return { list: [] };\n if (!isString(content) || !keyword) return { list: [content] };\n const regExp = new RegExp(keyword, 'i');\n const splitKeyword = content.match(regExp)?.[0];\n return {\n list: content.split(splitKeyword),\n keyword: splitKeyword,\n };\n });\n\n return () => {\n const { list, keyword } = words.value;\n return (\n <div class={`${classPrefix.value}-select-option__highlight-item`}>\n {list.map((item, index) => {\n if (!index) return item;\n return [\n <b class={`${classPrefix.value}-is-highlight`} key={item + keyword}>\n {keyword}\n </b>,\n item,\n ];\n })}\n </div>\n );\n };\n },\n});\n"],"names":["name","props","content","keyword","list","_createVNode"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,uBAAA,eAAA,CAAA;AACEA,EAAAA,IAAAA,EAAAA,kBAAAA;AAEAC,EAAAA,KAAAA,EAAAA;AAEEC,IAAAA,OAAAA,EAAAA,MAAAA;AAEAC,IAAAA,OAAAA,EAAAA,MAAAA;;;AAIA,IAAA,IAAA,WAAA,GAAA,cAAA,EAAA,CAAA;AACM,IAAA,IAAA,KAAA,GAAA,QAAA,CAAA,YAAA;AAA6D,MAAA,IAAA,cAAA,CAAA;AAC3D,MAAA,IAAA,OAAA,GAAA,KAAA,CAAA,OAAA;;;AACiBC,QAAAA,IAAAA,EAAAA,EAAAA;;;;;;AAGvB,MAAA,IAAA,YAAA,GAAA,CAAA,cAAA,GAAA,OAAA,CAAA,KAAA,CAAA,MAAA,CAAA,MAAA,IAAA,IAAA,cAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,cAAA,CAAA,CAAA,CAAA,CAAA;;AAEEA,QAAAA,IAAAA,EAAAA,OAAAA,CAAAA,KAAAA,CAAAA,YAAAA,CAAAA;AACAD,QAAAA,OAAAA,EAAAA,YAAAA;;AAEJ,KAAA,CAAA,CAAA;AAEA,IAAA,OAAA,YAAA;AACE,MAAA,IAAA,YAAA,GAAA,KAAA,CAAA,KAAA;;;AAEE,MAAA,OAAAE,WAAA,CAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,EAAA,CAAA,MAAA,CAAA,WAAA,CAAA,KAAA,EAAA,gCAAA,CAAA;;AAEI,QAAA,IAAA,CAAA,KAAA,EAAA,OAAA,IAAA,CAAA;AACO,QAAA,OAAA,CAAAA,WAAA,CAAA,GAAA,EAAA;AAAA,UAAA,OAAA,EAAA,EAAA,CAAA,MAAA,CAAA,WAAA,CAAA,KAAA,EAAA,eAAA,CAAA;;;AAMT,OAAA,CAAA,CAAA,CAAA,CAAA;;AAIR,GAAA;AACF,CAAA,CAAA;;;;"}