hongluan-ui
Version:
Hongluan Component Library for Vue 3
1 lines • 2.75 kB
Source Map (JSON)
{"version":3,"file":"index.mjs","sources":["../../../../../../packages/components/list/src/index.vue"],"sourcesContent":["<template>\n <hl-group\n ref=\"hlGroupRef\"\n dir=\"vertical\"\n :class=\"[\n namespace,\n border,\n {\n hover: hover,\n indent: indent,\n merge: merge,\n },\n ]\"\n :style=\"[\n gap ? `--list-gap: ${gap}` : '',\n itemGap ? `--list-item-gap: ${itemGap}` : '',\n ]\"\n >\n <slot></slot>\n </hl-group>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, provide, ref } from 'vue'\nimport { useNamespace } from '@hongluan-ui/hooks'\nimport HlGroup from '@hongluan-ui/components/group'\n\nimport type { ComponentPublicInstance } from 'vue'\n\nexport default defineComponent({\n name: 'List',\n components: { HlGroup },\n props: {\n hover: Boolean,\n indent: Boolean,\n merge: Boolean,\n gap: String,\n itemGap: String,\n border: {\n type: String,\n default: '',\n validator: (val: string) => ['', 'bordered', 'border-x'].includes(val),\n },\n },\n setup() {\n const { namespace } = useNamespace('list')\n const hlGroupRef = ref<ComponentPublicInstance>(null)\n\n const selectItem = (evt: Event) => {\n Array.prototype.slice.call(hlGroupRef.value.$el.querySelectorAll(`.${namespace.value}-item`))\n .forEach((item: HTMLElement) => {\n if (item.classList.contains('is-active')) {\n item.classList.remove('is-active')\n }\n })\n ;(evt.currentTarget as HTMLElement).classList.add('is-active')\n }\n\n provide('ListComponnetContext', {\n selectItem,\n })\n\n return {\n namespace,\n hlGroupRef,\n }\n },\n})\n</script>\n"],"names":["_createBlock","_normalizeClass","_normalizeStyle","_renderSlot"],"mappings":";;;;;;AA4BA,MAAK,YAAa,gBAAa;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY,EAAE;AAAQ,EACtB,OAAO;AAAA,IACL,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,OAAO;AAAA,IACP,KAAK;AAAA,IACL,SAAS;AAAA,IACT,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA,MACT,WAAW,CAAC,QAAgB,CAAC,IAAI,YAAY,UAAU,EAAE,SAAS,GAAG;AAAA;AACvE;AACF,EACA,QAAQ;AACN,UAAM,EAAE,cAAc,aAAa,MAAM;AACzC,UAAM,aAAa,IAA6B,IAAI;AAEpD,UAAM,aAAa,CAAC,QAAe;AACjC,YAAM,UAAU,MAAM,KAAK,WAAW,MAAM,IAAI,iBAAiB,IAAI,UAAU,YAAY,CAAC,EACzF,QAAQ,CAAC,SAAsB;AAC9B,YAAI,KAAK,UAAU,SAAS,WAAW,GAAG;AACxC,eAAK,UAAU,OAAO,WAAW;AAAA;AACnC,OACD;AACF,MAAC,IAAI,cAA8B,UAAU,IAAI,WAAW;AAAA;AAG/D,YAAQ,wBAAwB;AAAA,MAC9B;AAAA,KACD;AAED,WAAO;AAAA,MACL;AAAA,MACA;AAAA;AACF;AAEJ,CAAC;;;sBAjECA,YAkBW;AAAA,IAjBT,KAAI;AAAA,IACJ,KAAI;AAAA,IACH,OAAKC;AAAA,MAAU;AAAA,MAAiB;AAAA;eAA+B;AAAA,gBAAuB;AAAA,eAAuB;AAAA;;IAS7G,OAAKC;AAAA,MAAU,WAAG,eAAkB,aAAG;AAAA,MAAe,eAAO,oBAAuB,iBAAO;AAAA;;qBAK5F,MAAa;AAAA,MAAbC,WAAa;AAAA;;;;;;;;"}