{"version":3,"file":"checkbox.mjs","sources":["../../src/checkbox/checkbox.tsx"],"sourcesContent":["import { defineComponent, h, computed, inject, toRefs } from 'vue';\nimport {\n  CheckIcon,\n  MinusIcon,\n  CheckCircleFilledIcon,\n  CircleIcon,\n  MinusCircleFilledIcon,\n  MinusRectangleFilledIcon,\n  CheckRectangleFilledIcon,\n} from 'tdesign-icons-vue-next';\nimport CheckboxProps from './props';\nimport { TNode } from '../shared';\nimport useVModel from '../hooks/useVModel';\nimport { TdCheckboxProps } from '../checkbox/type';\nimport { useTNodeJSX, useContent } from '../hooks/tnode';\nimport { useFormDisabled, useReadonly } from '../form/hooks';\nimport { usePrefixClass } from '../hooks/useClass';\n\nexport default defineComponent({\n  name: 'TCheckbox',\n  components: { TNode },\n  props: CheckboxProps,\n  emits: ['update:checked', 'update:modelValue', 'change'],\n  setup(props, context) {\n    const checkboxClass = usePrefixClass('checkbox');\n    const renderTNodeJSX = useTNodeJSX();\n    const renderContent = useContent();\n\n    const { checked, modelValue } = toRefs(props);\n    const [innerChecked, setInnerChecked] = useVModel(\n      checked,\n      modelValue,\n      props.defaultChecked,\n      props.onChange,\n      'checked',\n    );\n\n    const checkboxGroup: any = inject('checkboxGroup', undefined);\n    const direction = computed(() => checkboxGroup?.direction?.value);\n    const disabled = useFormDisabled(checkboxGroup?.disabled);\n    const isReadonly = useReadonly(checkboxGroup?.readonly);\n    const indeterminate = computed<boolean>(() => {\n      if (props.checkAll && checkboxGroup != null) return checkboxGroup.checkAllStatus.value === 'indeterminate';\n      return props.indeterminate;\n    });\n\n    const isIconArray = Array.isArray(props.icon);\n    const defaultCheckIcons = [h(CheckCircleFilledIcon), h(CircleIcon)];\n    const checkIcons = computed(() => {\n      if (isIconArray && props.icon.length > 1) {\n        return props.icon.map((icon) =>\n          typeof icon === 'string' ? h('img', { class: `${checkboxClass.value}__icon-image`, src: icon }) : icon,\n        );\n      }\n      return defaultCheckIcons;\n    });\n\n    const checkedIcon = computed(() => {\n      if (props.icon === 'circle' || props.icon === true)\n        return indeterminate.value ? h(MinusCircleFilledIcon) : h(CheckCircleFilledIcon);\n      if (props.icon === 'rectangle')\n        return indeterminate.value ? h(MinusRectangleFilledIcon) : h(CheckRectangleFilledIcon);\n      if (props.icon === 'line') return indeterminate.value ? h(MinusIcon) : h(CheckIcon);\n      return null;\n    });\n\n    const isChecked = computed(() => {\n      if (props.checkAll) {\n        const checkAllStatus = checkboxGroup?.checkAllStatus.value;\n        return checkAllStatus === 'checked' || checkAllStatus === 'indeterminate';\n      }\n      if (checkboxGroup != null && props.value != null) {\n        return !!checkboxGroup.checkedSet.value?.has(props.value);\n      }\n      return innerChecked.value;\n    });\n\n    const isDisabled = computed(() => {\n      if (!props.checkAll && !isChecked.value && checkboxGroup?.maxExceeded.value) {\n        return true;\n      }\n      return disabled.value;\n    });\n\n    const handleChange = (e: Event, source?: string) => {\n      if (isDisabled.value || isReadonly.value) return;\n      if (source === 'text' && props.contentDisabled) return;\n\n      const value = !isChecked.value;\n      setInnerChecked(value, { e });\n      e.stopPropagation();\n      if (checkboxGroup && checkboxGroup?.onCheckedChange) {\n        checkboxGroup.onCheckedChange({ checked: value, checkAll: props.checkAll, e, option: props });\n      }\n    };\n    return () => {\n      const { placement, block, icon, maxLabelRow, maxContentRow } = props;\n      const borderless = props.borderless || checkboxGroup?.borderless.value;\n\n      const renderIconArray = () => {\n        if (isIconArray) {\n          return (\n            <t-node\n              content={checkIcons.value[isChecked.value ? 0 : 1]}\n              class={`${checkboxClass.value}__icon-wrapper`}\n            />\n          );\n        }\n        if (isChecked.value) {\n          return <t-node content={checkedIcon.value} class={`${checkboxClass.value}__icon-wrapper`} />;\n        }\n        return (\n          <>\n            {(icon === 'circle' || icon === true || icon === 'rectangle') && (\n              <div\n                class={{\n                  [`${checkboxClass.value}__icon-circle`]: icon === true,\n                  [`${checkboxClass.value}__icon-${icon}`]: typeof icon === 'string',\n                  [`${checkboxClass.value}__icon-${icon}--disabled`]: isDisabled.value,\n                }}\n              ></div>\n            )}\n            {icon === 'line' && <div class=\"placeholder\"></div>}\n          </>\n        );\n      };\n\n      const renderIconNode = () => {\n        if (!icon) {\n          return null;\n        }\n        return (\n          <div\n            class={{\n              [`${checkboxClass.value}__icon`]: true,\n              [`${checkboxClass.value}__icon--${placement}`]: true,\n              [`${checkboxClass.value}__icon--checked`]: isChecked.value,\n              [`${checkboxClass.value}__icon--disabled`]: isDisabled.value,\n            }}\n          >\n            {renderIconArray()}\n          </div>\n        );\n      };\n\n      const renderCheckBoxContent = () => {\n        const labelContent = renderContent('default', 'label');\n        const checkboxContent = renderTNodeJSX('content');\n        return (\n          <div\n            class={`${checkboxClass.value}__content`}\n            onClick={(event) => {\n              event.stopPropagation();\n              handleChange(event, 'text');\n            }}\n          >\n            <div\n              class={{\n                [`${checkboxClass.value}__title`]: true,\n                [`${checkboxClass.value}__title--checked`]: isChecked.value,\n                [`${checkboxClass.value}__title--disabled`]: isDisabled.value,\n              }}\n              style={{ '-webkit-line-clamp': maxLabelRow }}\n            >\n              {labelContent}\n            </div>\n            <div\n              class={{\n                [`${checkboxClass.value}__description`]: true,\n                [`${checkboxClass.value}__description--disabled`]: isDisabled.value,\n              }}\n              style={{ '-webkit-line-clamp': maxContentRow }}\n            >\n              {checkboxContent}\n            </div>\n          </div>\n        );\n      };\n      return (\n        <div\n          class={{\n            [`${checkboxClass.value}`]: true,\n            [`${checkboxClass.value}--${placement}`]: true,\n            [`${checkboxClass.value}--checked`]: isChecked.value,\n            [`${checkboxClass.value}--block`]: block,\n            [`${checkboxClass.value}--${direction.value}`]: !!direction.value,\n          }}\n          onClick={handleChange}\n        >\n          {renderIconNode()}\n          {renderCheckBoxContent()}\n          {!borderless && <div class={`${checkboxClass.value}__border ${checkboxClass.value}__border--${placement}`} />}\n        </div>\n      );\n    };\n  },\n});\n"],"names":["defineComponent","name","components","TNode","props","CheckboxProps","emits","setup","context","checkboxClass","usePrefixClass","renderTNodeJSX","useTNodeJSX","renderContent","useContent","_toRefs","toRefs","checked","modelValue","_useVModel","useVModel","defaultChecked","onChange","_useVModel2","_slicedToArray","innerChecked","setInnerChecked","checkboxGroup","inject","direction","computed","_checkboxGroup$direct","value","disabled","useFormDisabled","isReadonly","useReadonly","readonly","indeterminate","checkAll","checkAllStatus","isIconArray","Array","isArray","icon","defaultCheckIcons","h","CheckCircleFilledIcon","CircleIcon","checkIcons","length","map","class","concat","src","checkedIcon","MinusCircleFilledIcon","MinusRectangleFilledIcon","CheckRectangleFilledIcon","MinusIcon","CheckIcon","isChecked","_checkboxGroup$checke","checkedSet","has","isDisabled","maxExceeded","handleChange","e","source","contentDisabled","stopPropagation","onCheckedChange","option","placement","block","maxLabelRow","maxContentRow","borderless","renderIconArray","_createVNode","_resolveComponent","_Fragment","_defineProperty","renderIconNode","renderCheckBoxContent","labelContent","checkboxContent","onClick","event"],"mappings":"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"}