{"version":3,"file":"checkbox-button.mjs","sources":["../../../../../../packages/components/checkbox/src/checkbox-button.vue"],"sourcesContent":["<template>\n  <label\n    :class=\"[\n      ns.b('button'),\n      ns.bm('button', size),\n      ns.is('disabled', isDisabled),\n      ns.is('checked', isChecked),\n      ns.is('focus', focus),\n    ]\"\n    role=\"checkbox\"\n    :aria-checked=\"isChecked\"\n    :aria-disabled=\"isDisabled\"\n  >\n    <input\n      v-if=\"trueLabel || falseLabel\"\n      v-model=\"model\"\n      :class=\"ns.be('button', 'original')\"\n      type=\"checkbox\"\n      :name=\"name\"\n      :tabindex=\"tabindex\"\n      :disabled=\"isDisabled\"\n      :true-value=\"trueLabel\"\n      :false-value=\"falseLabel\"\n      @change=\"handleChange\"\n      @focus=\"focus = true\"\n      @blur=\"focus = false\"\n    />\n    <input\n      v-else\n      v-model=\"model\"\n      :class=\"ns.be('button', 'original')\"\n      type=\"checkbox\"\n      :name=\"name\"\n      :tabindex=\"tabindex\"\n      :disabled=\"isDisabled\"\n      :value=\"label\"\n      @change=\"handleChange\"\n      @focus=\"focus = true\"\n      @blur=\"focus = false\"\n    />\n\n    <span\n      v-if=\"$slots.default || label\"\n      :class=\"ns.be('button', 'inner')\"\n      :style=\"isChecked ? activeStyle : null\"\n    >\n      <slot>{{ label }}</slot>\n    </span>\n  </label>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, computed } from 'vue'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { useNamespace } from '@element-plus/hooks'\nimport { useCheckbox, useCheckboxGroup, useCheckboxProps } from './useCheckbox'\n\nexport default defineComponent({\n  name: 'ElCheckboxButton',\n  props: useCheckboxProps,\n  emits: [UPDATE_MODEL_EVENT, 'change'],\n  setup(props) {\n    const { focus, isChecked, isDisabled, size, model, handleChange } =\n      useCheckbox(props)\n    const { checkboxGroup } = useCheckboxGroup()\n    const ns = useNamespace('checkbox')\n\n    const activeStyle = computed(() => {\n      const fillValue = checkboxGroup?.fill?.value ?? ''\n      return {\n        backgroundColor: fillValue,\n        borderColor: fillValue,\n        color: checkboxGroup?.textColor?.value ?? '',\n        boxShadow: fillValue ? `-1px 0 0 0 ${fillValue}` : null,\n      }\n    })\n\n    return {\n      focus,\n      isChecked,\n      isDisabled,\n      model,\n      handleChange,\n      activeStyle,\n      size,\n      ns,\n    }\n  },\n})\n</script>\n"],"names":["_openBlock","_createElementBlock","_withDirectives","_normalizeClass","_vModelCheckbox","_normalizeStyle","_renderSlot","_createTextVNode","_toDisplayString"],"mappings":"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"}