UNPKG

@extclp/vexip-ui

Version:

A Vue 3 UI library, Highly customizability, full TypeScript, performance pretty good

1 lines 3.42 kB
{"version":3,"file":"divider.vue2.mjs","sources":["../../../components/divider/divider.vue"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport { computed } from 'vue'\r\n\r\nimport { useNameHelper, useProps } from '@vexip-ui/config'\r\nimport { toCssSize } from '@vexip-ui/utils'\r\nimport { dividerProps } from './props'\r\n\r\ndefineOptions({ name: 'Divider' })\r\n\r\nconst _props = defineProps(dividerProps)\r\nconst props = useProps('divider', _props, {\r\n vertical: false,\r\n textPosition: {\r\n default: 'center',\r\n validator: value => ['center', 'left', 'right'].includes(value),\r\n },\r\n primary: false,\r\n dashed: false,\r\n margin: null,\r\n})\r\n\r\nconst slots = defineSlots<{ default: () => any }>()\r\n\r\nconst nh = useNameHelper('divider')\r\n\r\nconst hasText = computed(() => !!slots.default)\r\nconst className = computed(() => {\r\n return [\r\n nh.b(),\r\n nh.bs('vars'),\r\n nh.bm(props.vertical ? 'vertical' : 'horizontal'),\r\n {\r\n [nh.bm('inherit')]: props.inherit,\r\n [nh.bm('primary')]: !props.vertical && props.primary,\r\n [nh.bm('dashed')]: props.dashed,\r\n [nh.bm('with-text')]: !props.vertical && hasText.value,\r\n [nh.bm(`with-text-${props.textPosition}`)]:\r\n !props.vertical && hasText.value && props.textPosition !== 'center',\r\n },\r\n ]\r\n})\r\nconst margin = computed(() => toCssSize(props.margin))\r\nconst style = computed(() => {\r\n if (!margin.value) return {}\r\n\r\n return props.vertical\r\n ? {\r\n marginRight: margin.value,\r\n marginLeft: margin.value,\r\n }\r\n : {\r\n marginTop: margin.value,\r\n marginBottom: margin.value,\r\n }\r\n})\r\n</script>\r\n\r\n<template>\r\n <div :class=\"className\" role=\"separator\" :style=\"style\">\r\n <span v-if=\"!props.vertical && hasText\" :class=\"nh.be('text')\">\r\n <slot></slot>\r\n </span>\r\n </div>\r\n</template>\r\n"],"names":["props","useProps","__props","value","slots","_useSlots","nh","useNameHelper","hasText","computed","className","margin","toCssSize","style","_createElementBlock","_unref","_normalizeClass","_renderSlot","_ctx"],"mappings":";;;;;;;;;AAUM,UAAAA,IAAQC,EAAS,WADRC,GAC2B;AAAA,MACxC,UAAU;AAAA,MACV,cAAc;AAAA,QACZ,SAAS;AAAA,QACT,WAAW,OAAS,CAAC,UAAU,QAAQ,OAAO,EAAE,SAASC,CAAK;AAAA,MAChE;AAAA,MACA,SAAS;AAAA,MACT,QAAQ;AAAA,MACR,QAAQ;AAAA,IAAA,CACT,GAEKC,IAAQC,EAAqC,GAE7CC,IAAKC,EAAc,SAAS,GAE5BC,IAAUC,EAAS,MAAM,CAAC,CAACL,EAAM,OAAO,GACxCM,IAAYD,EAAS,MAClB;AAAA,MACLH,EAAG,EAAE;AAAA,MACLA,EAAG,GAAG,MAAM;AAAA,MACZA,EAAG,GAAGN,EAAM,WAAW,aAAa,YAAY;AAAA,MAChD;AAAA,QACE,CAACM,EAAG,GAAG,SAAS,CAAC,GAAGN,EAAM;AAAA,QAC1B,CAACM,EAAG,GAAG,SAAS,CAAC,GAAG,CAACN,EAAM,YAAYA,EAAM;AAAA,QAC7C,CAACM,EAAG,GAAG,QAAQ,CAAC,GAAGN,EAAM;AAAA,QACzB,CAACM,EAAG,GAAG,WAAW,CAAC,GAAG,CAACN,EAAM,YAAYQ,EAAQ;AAAA,QACjD,CAACF,EAAG,GAAG,aAAaN,EAAM,YAAY,EAAE,CAAC,GACvC,CAACA,EAAM,YAAYQ,EAAQ,SAASR,EAAM,iBAAiB;AAAA,MAAA;AAAA,IAEjE,CACD,GACKW,IAASF,EAAS,MAAMG,EAAUZ,EAAM,MAAM,CAAC,GAC/Ca,IAAQJ,EAAS,MAChBE,EAAO,QAELX,EAAM,WACT;AAAA,MACA,aAAaW,EAAO;AAAA,MACpB,YAAYA,EAAO;AAAA,IAAA,IAEnB;AAAA,MACA,WAAWA,EAAO;AAAA,MAClB,cAAcA,EAAO;AAAA,IACvB,IAVwB,CAAC,CAW5B;2BAICG,EAIM,OAAA;AAAA,MAJA,SAAOJ,EAAS,KAAA;AAAA,MAAE,MAAK;AAAA,MAAa,SAAOG,EAAK,KAAA;AAAA,IAAA;OACvCE,EAAKf,CAAA,EAAC,YAAYQ,EAAO,cAAtCM,EAEO,QAAA;AAAA;QAFkC,OAAKE,EAAED,EAAET,CAAA,EAAC,GAAE,MAAA,CAAA;AAAA,MAAA;QACnDW,EAAaC,EAAA,QAAA,SAAA;AAAA;;;;"}