Checkbox.js 1.0 KB

1234567891011121314151617181920212223242526272829303132333435
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.default = Checkbox;
  6. var _vue = require("vue");
  7. var _context = require("../context");
  8. function Checkbox(_ref) {
  9. let {
  10. prefixCls,
  11. checked,
  12. halfChecked,
  13. disabled,
  14. onClick
  15. } = _ref;
  16. const {
  17. customSlots,
  18. checkable
  19. } = (0, _context.useInjectCascader)();
  20. const mergedCheckable = checkable.value !== false ? customSlots.value.checkable : checkable.value;
  21. const customCheckbox = typeof mergedCheckable === 'function' ? mergedCheckable() : typeof mergedCheckable === 'boolean' ? null : mergedCheckable;
  22. return (0, _vue.createVNode)("span", {
  23. "class": {
  24. [prefixCls]: true,
  25. [`${prefixCls}-checked`]: checked,
  26. [`${prefixCls}-indeterminate`]: !checked && halfChecked,
  27. [`${prefixCls}-disabled`]: disabled
  28. },
  29. "onClick": onClick
  30. }, [customCheckbox]);
  31. }
  32. Checkbox.props = ['prefixCls', 'checked', 'halfChecked', 'disabled', 'onClick'];
  33. Checkbox.displayName = 'Checkbox';
  34. Checkbox.inheritAttrs = false;