element-plus
Version:
A Component Library for Vue 3
1 lines • 6.25 kB
Source Map (JSON)
{"version":3,"file":"checkbox.vue2.mjs","sources":["../../../../../../packages/components/checkbox/src/checkbox.vue"],"sourcesContent":["<template>\n <component\n :is=\"!hasOwnLabel && isLabeledByFormItem ? 'span' : 'label'\"\n :for=\"!hasOwnLabel && isLabeledByFormItem ? null : inputId\"\n :class=\"compKls\"\n :aria-controls=\"indeterminate ? ariaControls : null\"\n :aria-checked=\"indeterminate ? 'mixed' : undefined\"\n :aria-label=\"ariaLabel\"\n @click=\"onClickRoot\"\n >\n <span :class=\"spanKls\">\n <input\n :id=\"inputId\"\n v-model=\"model\"\n :class=\"ns.e('original')\"\n type=\"checkbox\"\n :indeterminate=\"indeterminate\"\n :name=\"name\"\n :tabindex=\"tabindex\"\n :disabled=\"isDisabled\"\n v-bind=\"inputBindings\"\n @change=\"handleChange\"\n @focus=\"isFocused = true\"\n @blur=\"isFocused = false\"\n @click.stop\n />\n <span :class=\"ns.e('inner')\" />\n </span>\n <span v-if=\"hasOwnLabel\" :class=\"ns.e('label')\">\n <slot />\n <template v-if=\"!$slots.default\">{{ label }}</template>\n </span>\n </component>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, useSlots } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\nimport { checkboxEmits, checkboxPropsDefaults } from './checkbox'\nimport { useCheckbox } from './composables'\n\nimport type { CheckboxProps } from './checkbox'\n\ndefineOptions({\n name: 'ElCheckbox',\n})\n\nconst props = withDefaults(defineProps<CheckboxProps>(), checkboxPropsDefaults)\ndefineEmits(checkboxEmits)\nconst slots = useSlots()\n\nconst {\n inputId,\n isLabeledByFormItem,\n isChecked,\n isDisabled,\n isFocused,\n checkboxSize,\n hasOwnLabel,\n model,\n actualValue,\n handleChange,\n onClickRoot,\n} = useCheckbox(props, slots)\n\nconst inputBindings = computed(() => {\n if (\n props.trueValue ||\n props.falseValue ||\n props.trueLabel ||\n props.falseLabel\n ) {\n return {\n 'true-value': props.trueValue ?? props.trueLabel ?? true,\n 'false-value': props.falseValue ?? props.falseLabel ?? false,\n }\n }\n return {\n value: actualValue.value,\n }\n})\n\nconst ns = useNamespace('checkbox')\n\nconst compKls = computed(() => {\n return [\n ns.b(),\n ns.m(checkboxSize.value),\n ns.is('disabled', isDisabled.value),\n ns.is('bordered', props.border),\n ns.is('checked', isChecked.value),\n ]\n})\n\nconst spanKls = computed(() => {\n return [\n ns.e('input'),\n ns.is('disabled', isDisabled.value),\n ns.is('checked', isChecked.value),\n ns.is('indeterminate', props.indeterminate),\n ns.is('focus', isFocused.value),\n ]\n})\n</script>\n"],"names":["_createBlock","_resolveDynamicComponent","_unref","_createElementVNode","_withDirectives","_mergeProps","_normalizeClass","_createElementBlock","_renderSlot","$slots","_Fragment"],"mappings":";;;;;;;;;;;;;;AA+CA,IAAA,MAAM,KAAA,GAAQ,OAAA;AAEd,IAAA,MAAM,QAAQ,QAAA,EAAS;AAEvB,IAAA,MAAM;AAAA,MACJ,OAAA;AAAA,MACA,mBAAA;AAAA,MACA,SAAA;AAAA,MACA,UAAA;AAAA,MACA,SAAA;AAAA,MACA,YAAA;AAAA,MACA,WAAA;AAAA,MACA,KAAA;AAAA,MACA,WAAA;AAAA,MACA,YAAA;AAAA,MACA;AAAA,KACF,GAAI,WAAA,CAAY,KAAA,EAAO,KAAK,CAAA;AAE5B,IAAA,MAAM,aAAA,GAAgB,SAAS,MAAM;;AACnC,MAAA,IACE,MAAM,SAAA,IACN,KAAA,CAAM,cACN,KAAA,CAAM,SAAA,IACN,MAAM,UAAA,EACN;AACA,QAAA,OAAO;AAAA,UACL,eAAc,EAAA,GAAA,CAAA,EAAA,GAAA,KAAA,CAAM,SAAA,KAAN,IAAA,GAAA,EAAA,GAAmB,KAAA,CAAM,cAAzB,IAAA,GAAA,EAAA,GAAsC,IAAA;AAAA,UACpD,gBAAe,EAAA,GAAA,CAAA,EAAA,GAAA,KAAA,CAAM,UAAA,KAAN,IAAA,GAAA,EAAA,GAAoB,KAAA,CAAM,eAA1B,IAAA,GAAA,EAAA,GAAwC;AAAA,SACzD;AAAA,MACF;AACA,MAAA,OAAO;AAAA,QACL,OAAO,WAAA,CAAY;AAAA,OACrB;AAAA,IACF,CAAC,CAAA;AAED,IAAA,MAAM,EAAA,GAAK,aAAa,UAAU,CAAA;AAElC,IAAA,MAAM,OAAA,GAAU,SAAS,MAAM;AAC7B,MAAA,OAAO;AAAA,QACL,GAAG,CAAA,EAAE;AAAA,QACL,EAAA,CAAG,CAAA,CAAE,YAAA,CAAa,KAAK,CAAA;AAAA,QACvB,EAAA,CAAG,EAAA,CAAG,UAAA,EAAY,UAAA,CAAW,KAAK,CAAA;AAAA,QAClC,EAAA,CAAG,EAAA,CAAG,UAAA,EAAY,KAAA,CAAM,MAAM,CAAA;AAAA,QAC9B,EAAA,CAAG,EAAA,CAAG,SAAA,EAAW,SAAA,CAAU,KAAK;AAAA,OAClC;AAAA,IACF,CAAC,CAAA;AAED,IAAA,MAAM,OAAA,GAAU,SAAS,MAAM;AAC7B,MAAA,OAAO;AAAA,QACL,EAAA,CAAG,EAAE,OAAO,CAAA;AAAA,QACZ,EAAA,CAAG,EAAA,CAAG,UAAA,EAAY,UAAA,CAAW,KAAK,CAAA;AAAA,QAClC,EAAA,CAAG,EAAA,CAAG,SAAA,EAAW,SAAA,CAAU,KAAK,CAAA;AAAA,QAChC,EAAA,CAAG,EAAA,CAAG,eAAA,EAAiB,KAAA,CAAM,aAAa,CAAA;AAAA,QAC1C,EAAA,CAAG,EAAA,CAAG,OAAA,EAAS,SAAA,CAAU,KAAK;AAAA,OAChC;AAAA,IACF,CAAC,CAAA;;0BArGCA,WAAA,CA+BYC,uBAAA,CAAA,CA9BJC,KAAA,CAAA,WAAA,CAAA,IAAeA,KAAA,CAAA,mBAAA,CAAA,GAAmB,MAAA,GAAA,OAAA,CAAA,EAAA;AAAA,QACvC,GAAA,EAAG,CAAGA,KAAA,CAAA,WAAA,CAAA,IAAeA,MAAA,mBAAA,CAAA,UAA6BA,KAAA,CAAA,OAAA,CAAA;AAAA,QAClD,KAAA,iBAAO,OAAA,CAAA,KAAO,CAAA;AAAA,QACd,eAAA,EAAe,OAAA,CAAA,aAAA,GAAgB,OAAA,CAAA,YAAA,GAAY,IAAA;AAAA,QAC3C,cAAA,EAAc,OAAA,CAAA,aAAA,GAAa,OAAA,GAAa,MAAA;AAAA,QACxC,cAAY,OAAA,CAAA,SAAA;AAAA,QACZ,OAAA,EAAOA,MAAA,WAAA;AAAA;yBAER,MAiBO;AAAA,UAjBPC,kBAAA;AAAA,YAiBO,MAAA;AAAA,YAAA;AAAA,cAjBA,KAAA,iBAAO,OAAA,CAAA,KAAO;AAAA;;cACnBC,cAAA,CAAAD,kBAAA,CAcE,OAAA,EAdFE,UAAA,CAcE;AAAA,gBAbC,EAAA,EAAIH,MAAA,OAAA,CAAA;AAAA,4FACI,KAAA,CAAK,QAAA,MAAA,GAAA,IAAA,CAAA;AAAA,gBACb,KAAA,EAAOA,KAAA,CAAA,EAAA,CAAA,CAAG,EAAC,UAAA,CAAA;AAAA,gBACZ,IAAA,EAAK,UAAA;AAAA,gBACJ,eAAe,OAAA,CAAA,aAAA;AAAA,gBACf,MAAM,OAAA,CAAA,IAAA;AAAA,gBACN,UAAU,OAAA,CAAA,QAAA;AAAA,gBACV,QAAA,EAAUA,MAAA,UAAA;AAAA,iBACH,cAAA,KAAA,EAAa;AAAA,gBACpB,QAAA,EAAM,MAAA,CAAA,CAAA,CAAA,KAAA,OAAA,CAAA,CAAA;AAAA,6BAAEA,KAAA,CAAA,YAAA,KAAAA,KAAA,CAAA,YAAA,CAAA,CAAA,GAAA,IAAA,CAAA,CAAA;AAAA,gBACR,OAAA,wCAAO,SAAA,CAAA,KAAA,GAAS,IAAA,CAAA;AAAA,gBAChB,MAAA,wCAAM,SAAA,CAAA,KAAA,GAAS,KAAA,CAAA;AAAA,gBACf,OAAA,0CAAD,MAAA;AAAA,gBAAA,CAAA,EAAW,CAAA,MAAA,CAAA,CAAA;AAAA;iCAXFA,KAAA,CAAA,KAAA,CAAK;AAAA;cAahBC,kBAAA;AAAA,gBAA+B,MAAA;AAAA,gBAAA;AAAA,kBAAxB,OAAKG,cAAA,CAAEJ,KAAA,CAAA,EAAA,CAAA,CAAG,CAAA,CAAC,OAAA,CAAA;AAAA;;;;;;;;;UAERA,KAAA,CAAA,WAAA,CAAA,iBAAZK,kBAAA;AAAA,YAGO,MAAA;AAAA,YAAA;AAAA;cAHmB,OAAKD,cAAA,CAAEJ,KAAA,CAAA,EAAA,CAAA,CAAG,CAAA,CAAC,OAAA,CAAA;AAAA;;cACnCM,UAAA,CAAQ,IAAA,CAAA,MAAA,EAAA,SAAA,CAAA;AAAA,cACSC,CAAAA,IAAAA,CAAAA,MAAAA,CAAO,OAAA,iBAAxBF,kBAAA;AAAA,gBAAuDG,QAAA;AAAA,gBAAA,EAAA,KAAA,CAAA,EAAA;AAAA,gBAAA;AAAA;oCAAnB,QAAA,KAAK,CAAA;AAAA,oBAAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;;;;;;"}