{"version":3,"file":"index.mjs","sources":["../../../../../../../packages/components/visualized/panel/src/index.vue"],"sourcesContent":["<template>\n  <div class=\"fx-v-panel\" @mouseenter=\"enter()\" @mouseleave=\"leave()\">\n    <hl-panel\n      class=\"panel-card\"\n      padding=\"calc(var(--xxs) * 5)\"\n      borderless\n      :collapsed=\"collapse\"\n      :style=\"bodyHeight ? `--panel-body-height: ${bodyHeight}` : ''\"\n    >\n      <template #header>\n        <div class=\"panel-header-left\">\n          <hl-icon size=\"lg\">\n            <svg viewBox=\"0 0 27 16\" xmlns=\"http://www.w3.org/2000/svg\">\n              <g stroke=\"none\" stroke-width=\"1\" fill=\"#71F8FC\" fill-rule=\"evenodd\">\n                <polygon points=\"23.6666667 0 27 0 19.3333333 16 16 16\" />\n                <polygon fill-opacity=\"0.7\" points=\"15.6666667 0 19 0 11.3333333 16 8 16\" />\n                <polygon fill-opacity=\"0.4\" points=\"7.66666667 0 11 0 3.33333333 16 5.69405634e-14 16\" />\n              </g>\n            </svg>\n          </hl-icon>\n        </div>\n        <h2 class=\"panel-title\">\n          <slot name=\"title\">\n            {{ title }}\n          </slot>\n        </h2>\n        <div class=\"panel-header-right\">\n          <slot name=\"action\"></slot>\n        </div>\n      </template>\n      <slot></slot>\n    </hl-panel>\n    <hl-group\n      v-if=\"isHovering() && (collapsable || sizes?.length)\"\n      dir=\"vertical\"\n      gap-y=\"var(--xxs)\"\n      :class=\"['action-bar', actionBarDir]\"\n      @mouseenter=\"enter()\"\n      @mouseleave=\"leave()\"\n    >\n      <div class=\"icon-wrapper\">\n        <hl-icon v-if=\"collapsable\" size=\"sm\" class=\"cursor-pointer\" @click=\"changeStatus\">\n          <fill-maximize2 v-if=\"!collapse\" />\n          <fill-minimize2 v-else />\n        </hl-icon>\n      </div>\n      <hl-group\n        v-if=\"sizes?.length && !collapse\"\n        class=\"size-options font-lg\"\n        dir=\"vertical\"\n        gap-y=\"var(--xxs)\"\n        align=\"items-middle\"\n      >\n        <span\n          v-for=\"s in sizes\"\n          :key=\"s\"\n          :class=\"{'active': currentSize === s}\"\n          @click=\"changeSize(s)\"\n        >\n          {{ s }}\n        </span>\n      </hl-group>\n    </hl-group>\n  </div>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, ref, watch } from 'vue'\nimport { HlPanel, HlIcon, HlGroup } from 'hongluan-ui'\nimport { FillMaximize2, FillMinimize2 } from '@hongluan-ui/icons'\nimport { useHovering } from 'hongluan-hooks'\nimport type { PropType } from 'vue'\n\nexport default defineComponent({\n  name: 'VPanel',\n  components: { HlPanel, HlIcon, HlGroup, FillMaximize2, FillMinimize2 },\n  props: {\n    title: {\n      type: String,\n      default: '',\n    },\n    bodyHeight: {\n      type: String,\n      default: '',\n    },\n    actionBarDir: {\n      type: String as PropType<'left' | 'right'>,\n      default: 'right',\n    },\n    collapsable: Boolean,\n    sizes: Array,\n    defaultSize: String,\n  },\n  emits: ['size-change', 'collapse-change'],\n  setup(props, { emit }) {\n    const collapse = ref(false)\n    const currentSize = ref(props.defaultSize ?? (props.sizes?.[0] ?? ''))\n\n    const { enter, leave, isHovering } = useHovering()\n\n    const changeStatus = () => {\n      collapse.value = !collapse.value\n      emit('collapse-change', collapse.value)\n    }\n    const changeSize = (size: string) => {\n      currentSize.value = size\n      emit('size-change', size)\n    }\n\n    watch(() => props.defaultSize, val => {\n      currentSize.value = val\n    })\n\n    return {\n      collapse,\n      currentSize,\n      changeStatus,\n      changeSize,\n      enter,\n      leave,\n      isHovering,\n    }\n  },\n})\n</script>\n"],"names":["_createElementVNode","_createElementBlock","_createVNode","_normalizeStyle","_withCtx","_renderSlot","_createTextVNode","_toDisplayString","_openBlock","_createBlock","_normalizeClass","_Fragment","_renderList"],"mappings":"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"}