{"version":3,"file":"use-checked-change.mjs","sources":["../../../../../../../packages/components/transfer/src/composables/use-checked-change.ts"],"sourcesContent":["import { nextTick } from 'vue'\nimport { LEFT_CHECK_CHANGE_EVENT, RIGHT_CHECK_CHANGE_EVENT } from '../transfer'\n\nimport type { SetupContext } from 'vue'\nimport type {\n  TransferCheckedState,\n  TransferEmits,\n  TransferKey,\n  TransferProps,\n} from '../transfer'\n\nexport const useCheckedChange = (\n  checkedState: TransferCheckedState,\n  emit: SetupContext<TransferEmits>['emit'],\n  props: TransferProps,\n  addToLeft: () => void,\n  addToRight: () => void,\n) => {\n  const onSourceCheckedChange = (\n    val: TransferKey[],\n    movedKeys?: TransferKey[],\n  ) => {\n    checkedState.leftChecked = val\n    if (!movedKeys) return\n    emit(LEFT_CHECK_CHANGE_EVENT, val, movedKeys)\n    nextTick(() => {\n      if (!props.showButtons) {\n        addToRight()\n      }\n    })\n  }\n\n  const onTargetCheckedChange = (\n    val: TransferKey[],\n    movedKeys?: TransferKey[],\n  ) => {\n    checkedState.rightChecked = val\n    if (!movedKeys) return\n    emit(RIGHT_CHECK_CHANGE_EVENT, val, movedKeys)\n    nextTick(() => {\n      if (!props.showButtons) {\n        addToLeft()\n      }\n    })\n  }\n\n  return {\n    onSourceCheckedChange,\n    onTargetCheckedChange,\n  }\n}\n"],"names":[],"mappings":";;;AAEY,MAAC,gBAAgB,GAAG,CAAC,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,KAAK;AACtF,EAAE,MAAM,qBAAqB,GAAG,CAAC,GAAG,EAAE,SAAS,KAAK;AACpD,IAAI,YAAY,CAAC,WAAW,GAAG,GAAG,CAAC;AACnC,IAAI,IAAI,CAAC,SAAS;AAClB,MAAM,OAAO;AACb,IAAI,IAAI,CAAC,uBAAuB,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;AAClD,IAAI,QAAQ,CAAC,MAAM;AACnB,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;AAC9B,QAAQ,UAAU,EAAE,CAAC;AACrB,OAAO;AACP,KAAK,CAAC,CAAC;AACP,GAAG,CAAC;AACJ,EAAE,MAAM,qBAAqB,GAAG,CAAC,GAAG,EAAE,SAAS,KAAK;AACpD,IAAI,YAAY,CAAC,YAAY,GAAG,GAAG,CAAC;AACpC,IAAI,IAAI,CAAC,SAAS;AAClB,MAAM,OAAO;AACb,IAAI,IAAI,CAAC,wBAAwB,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;AACnD,IAAI,QAAQ,CAAC,MAAM;AACnB,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;AAC9B,QAAQ,SAAS,EAAE,CAAC;AACpB,OAAO;AACP,KAAK,CAAC,CAAC;AACP,GAAG,CAAC;AACJ,EAAE,OAAO;AACT,IAAI,qBAAqB;AACzB,IAAI,qBAAqB;AACzB,GAAG,CAAC;AACJ;;;;"}