{"version":3,"file":"collapse-panel2.mjs","sources":["../../../../../../packages/components/collapse-panel/src/collapse-panel.vue"],"sourcesContent":["<template>\n  <div\n    :class=\"[\n      ns.b(),\n      disabled ? ns.m('disabled') : '',\n      visible && dashed ? ns.m('dashed') : '',\n      visible ? ns.m('active') : '',\n    ]\"\n  >\n    <div :class=\"[ns.e('header')]\">\n      <div :class=\"ns.e('trigger')\" @click=\"handleCollapse\">\n        <slot name=\"trigger\" v-bind=\"{ visible }\">\n          <slot name=\"arrow\" v-bind=\"{ visible }\">\n            <el-icon v-if=\"!disabled\" :class=\"[ns.e('arrow')]\">\n              <ArrowRight />\n            </el-icon>\n          </slot>\n          <slot name=\"title\" v-bind=\"{ visible }\">\n            <span :class=\"ns.e('title')\">{{ title }}</span>\n          </slot>\n        </slot>\n      </div>\n      <div :class=\"ns.e('action')\">\n        <slot name=\"action\" />\n      </div>\n    </div>\n    <component :is=\"ElCollapseTransition\">\n      <template v-if=\"lazy\">\n        <div v-if=\"visible\" :class=\"ns.e('content')\">\n          <slot />\n        </div>\n      </template>\n      <template v-else>\n        <div v-show=\"visible\" :class=\"ns.e('content')\">\n          <slot />\n        </div>\n      </template>\n    </component>\n  </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref, watch } from 'vue'\nimport { ElCollapseTransition, useNamespace } from 'element-plus'\nimport { ArrowRight } from '@element-plus/icons-vue'\n\nimport { collapsePanelEmits, collapsePanelProps } from './collapse-panel'\n\ndefineOptions({\n  name: 'ElCollapsePanel',\n})\n\nconst ns = useNamespace('collapse-panel')\n\nconst props = defineProps(collapsePanelProps)\nconst emit = defineEmits(collapsePanelEmits)\n\nconst visible = ref(false)\n\nconst setVisible = () => {\n  const { disabled, collapse } = props\n  if (disabled) {\n    visible.value = true\n    return\n  }\n  visible.value = !collapse\n}\n\nwatch(() => [props.disabled, props.collapse], setVisible, {\n  immediate: true,\n})\n\nconst handleCollapse = () => {\n  if (props.disabled) return\n  visible.value = !visible.value\n  emit('change', visible.value)\n}\n</script>\n"],"names":[],"mappings":";;;;;;mCAgDc,CAAA;AAAA,EACZ,IAAM,EAAA,iBAAA;AACR,CAAA,CAAA,CAAA;;;;;;AAEM,IAAA,MAAA,EAAA,GAAK,aAAa,gBAAgB,CAAA,CAAA;AAExC,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,IAAO,GAAA,MAAA,CAAA;AAEP,IAAA,MAAA,OAAA,GAAU,IAAI,KAAK,CAAA,CAAA;AAEzB,IAAA,MAAM,aAAa,MAAM;AACjB,MAAA,MAAA,EAAE,QAAU,EAAA,QAAA,EAAa,GAAA,KAAA,CAAA;AAC/B,MAAA,IAAI,QAAU,EAAA;AACZ,QAAA,OAAA,CAAQ,KAAQ,GAAA,IAAA,CAAA;AAChB,QAAA,OAAA;AAAA,OACF;AACA,MAAA,OAAA,CAAQ,QAAQ,CAAC,QAAA,CAAA;AAAA,KACnB,CAAA;AAEA,IAAA,KAAA,CAAM,MAAM,CAAC,KAAA,CAAM,UAAU,KAAM,CAAA,QAAQ,GAAG,UAAY,EAAA;AAAA,MACxD,SAAW,EAAA,IAAA;AAAA,KACZ,CAAA,CAAA;AAED,IAAA,MAAM,iBAAiB,MAAM;AAC3B,MAAA,IAAI,KAAM,CAAA,QAAA;AAAU,QAAA,OAAA;AACZ,MAAA,OAAA,CAAA,KAAA,GAAQ,CAAC,OAAQ,CAAA,KAAA,CAAA;AACpB,MAAA,IAAA,CAAA,QAAA,EAAU,QAAQ,KAAK,CAAA,CAAA;AAAA,KAC9B,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}