{"version":3,"file":"card.vue2.cjs","sources":["../../../components/card/card.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { Renderer } from '@/components/renderer'\n\nimport { computed } from 'vue'\n\nimport { useNameHelper, useProps } from '@vexip-ui/config'\nimport { cardProps } from './props'\n\nimport type { CardShadowType, CardSlots } from './symbol'\n\ndefineOptions({ name: 'Card' })\n\nconst _props = defineProps(cardProps)\nconst props = useProps('card', _props, {\n  title: '',\n  shadow: {\n    default: 'always' as CardShadowType,\n    validator: (value: CardShadowType) => ['always', 'hover', 'never'].includes(value),\n  },\n  contentStyle: () => ({}),\n  slots: () => ({}),\n})\n\nconst slots = defineSlots<CardSlots>()\n\nconst nh = useNameHelper('card')\n\nconst className = computed(() => {\n  return [\n    nh.b(),\n    nh.bs('vars'),\n    nh.bm(`shadow-${props.shadow}`),\n    {\n      [nh.bm('inherit')]: props.inherit,\n    },\n  ]\n})\nconst hasTitle = computed(() => !!(slots.title || props.title || props.slots.title))\nconst hasExtra = computed(() => !!(slots.extra || props.slots.extra))\nconst hasHeader = computed(() => !!slots.header || hasTitle.value || hasExtra.value)\n</script>\n\n<template>\n  <article :class=\"className\">\n    <div v-if=\"hasHeader\" :class=\"nh.be('header')\">\n      <slot name=\"header\">\n        <Renderer :renderer=\"props.slots.header\">\n          <div v-if=\"hasTitle\" :class=\"nh.be('title')\">\n            <slot name=\"title\">\n              <Renderer :renderer=\"props.slots.title\">\n                {{ props.title }}\n              </Renderer>\n            </slot>\n          </div>\n          <div v-if=\"hasExtra\" :class=\"nh.be('extra')\">\n            <slot name=\"extra\">\n              <Renderer :renderer=\"props.slots.extra\"></Renderer>\n            </slot>\n          </div>\n        </Renderer>\n      </slot>\n    </div>\n    <div :class=\"nh.be('content')\" :style=\"props.contentStyle\">\n      <slot>\n        <Renderer :renderer=\"props.slots.default\"></Renderer>\n      </slot>\n    </div>\n  </article>\n</template>\n"],"names":["_props","__props","props","useProps","value","slots","_useSlots","nh","useNameHelper","className","computed","hasTitle","hasExtra","hasHeader","_createElementBlock","_normalizeClass","_unref","_renderSlot","_ctx","_createVNode","Renderer","_createTextVNode","_toDisplayString","_createElementVNode","_normalizeStyle"],"mappings":"kPAYA,MAAMA,EAASC,EACTC,EAAQC,EAAAA,SAAS,OAAQH,EAAQ,CACrC,MAAO,GACP,OAAQ,CACN,QAAS,SACT,UAAYI,GAA0B,CAAC,SAAU,QAAS,OAAO,EAAE,SAASA,CAAK,CACnF,EACA,aAAc,KAAO,CAAA,GACrB,MAAO,KAAO,CAAC,EAAA,CAChB,EAEKC,EAAQC,EAAAA,SAAA,EAERC,EAAKC,gBAAc,MAAM,EAEzBC,EAAYC,EAAAA,SAAS,IAClB,CACLH,EAAG,EAAE,EACLA,EAAG,GAAG,MAAM,EACZA,EAAG,GAAG,UAAUL,EAAM,MAAM,EAAE,EAC9B,CACE,CAACK,EAAG,GAAG,SAAS,CAAC,EAAGL,EAAM,OAAA,CAE9B,CACD,EACKS,EAAWD,EAAAA,SAAS,IAAM,CAAC,EAAEL,EAAM,OAASH,EAAM,OAASA,EAAM,MAAM,MAAM,EAC7EU,EAAWF,WAAS,IAAM,CAAC,EAAEL,EAAM,OAASH,EAAM,MAAM,MAAM,EAC9DW,EAAYH,WAAS,IAAM,CAAC,CAACL,EAAM,QAAUM,EAAS,OAASC,EAAS,KAAK,8BAIjFE,EAAA,mBAwBU,UAAA,CAxBA,uBAAOL,EAAS,KAAA,CAAA,GACbI,EAAS,qBAApBC,EAAAA,mBAiBM,MAAA,OAjBiB,MAAKC,EAAE,eAAAC,EAAA,MAAET,CAAA,EAAC,GAAE,QAAA,CAAA,CAAA,GACjCU,EAAAA,WAeOC,qBAfP,IAeO,CAdLC,cAaWH,EAAAA,MAAAI,CAAA,EAAA,CAbA,SAAUJ,EAAA,MAAAd,CAAA,EAAM,MAAM,MAAA,qBAC/B,IAMM,CANKS,EAAQ,qBAAnBG,EAAAA,mBAMM,MAAA,OANgB,MAAKC,EAAE,eAAAC,EAAA,MAAET,CAAA,EAAC,GAAE,OAAA,CAAA,CAAA,GAChCU,EAAAA,WAIOC,oBAJP,IAIO,CAHLC,cAEWH,EAAAA,MAAAI,CAAA,EAAA,CAFA,SAAUJ,EAAA,MAAAd,CAAA,EAAM,MAAM,KAAA,qBAC/B,IAAiB,CAAdmB,kBAAAC,EAAA,gBAAAN,EAAA,MAAAd,CAAA,EAAM,KAAK,EAAA,CAAA,CAAA,2DAITU,EAAQ,qBAAnBE,EAAAA,mBAIM,MAAA,OAJgB,MAAKC,EAAE,eAAAC,EAAA,MAAET,CAAA,EAAC,GAAE,OAAA,CAAA,CAAA,GAChCU,EAAAA,WAEOC,oBAFP,IAEO,CADLC,cAAmDH,EAAAA,MAAAI,CAAA,EAAA,CAAxC,SAAUJ,EAAA,MAAAd,CAAA,EAAM,MAAM,KAAA,oHAM3CqB,EAAAA,mBAIM,MAAA,CAJA,MAAKR,EAAE,eAAAC,EAAA,MAAET,CAAA,EAAC,GAAE,SAAA,CAAA,EAAc,MAAKiB,EAAA,eAAER,QAAKd,CAAA,EAAC,YAAY,CAAA,GACvDe,EAAAA,WAEOC,sBAFP,IAEO,CADLC,cAAqDH,EAAAA,MAAAI,CAAA,EAAA,CAA1C,SAAUJ,EAAA,MAAAd,CAAA,EAAM,MAAM,OAAA"}