{"version":3,"file":"select.mjs","sources":["../../../../../../packages/components/tree-select/src/select.ts"],"sourcesContent":["// @ts-nocheck\nimport { computed, nextTick, toRefs } from 'vue'\nimport { pick } from 'lodash-unified'\nimport BSelect from '@bigin/components/select'\nimport { useNamespace } from '@bigin/hooks'\nimport type { Ref } from 'vue'\nimport type BTree from '@bigin/components/tree'\n\nexport const useSelect = (\n  props,\n  { attrs },\n  {\n    tree,\n    key,\n  }: {\n    select: Ref<InstanceType<typeof BSelect> | undefined>\n    tree: Ref<InstanceType<typeof BTree> | undefined>\n    key: Ref<string>\n  }\n) => {\n  const ns = useNamespace('tree-select')\n\n  const result = {\n    ...pick(toRefs(props), Object.keys(BSelect.props)),\n    ...attrs,\n    valueKey: key,\n    popperClass: computed(() => {\n      const classes = [ns.e('popper')]\n      if (props.popperClass) classes.push(props.popperClass)\n      return classes.join(' ')\n    }),\n    filterMethod: (keyword = '') => {\n      if (props.filterMethod) props.filterMethod(keyword)\n\n      nextTick(() => {\n        // let tree node expand only, same with tree filter\n        tree.value?.filter(keyword)\n      })\n    },\n    // clear filter text when visible change\n    onVisibleChange: (visible: boolean) => {\n      attrs.onVisibleChange?.(visible)\n\n      if (props.filterable && visible) {\n        result.filterMethod()\n      }\n    },\n  }\n\n  return result\n}\n"],"names":[],"mappings":";;;;;;AAQO,MAAM,SAAY,GAAA,CACvB,KACA,EAAA,EAAE,OACF,EAAA;AAAA,EACE,IAAA;AAAA,EACA,GAAA;AACF,CAKG,KAAA;AACH,EAAM,MAAA,EAAA,GAAK,aAAa,aAAa,CAAA,CAAA;AAErC,EAAA,MAAM,MAAS,GAAA;AAAA,IACb,GAAG,KAAK,MAAO,CAAA,KAAK,GAAG,MAAO,CAAA,IAAA,CAAK,OAAQ,CAAA,KAAK,CAAC,CAAA;AAAA,IACjD,GAAG,KAAA;AAAA,IACH,QAAU,EAAA,GAAA;AAAA,IACV,WAAA,EAAa,SAAS,MAAM;AAC1B,MAAA,MAAM,OAAU,GAAA,CAAC,EAAG,CAAA,CAAA,CAAE,QAAQ,CAAC,CAAA,CAAA;AAC/B,MAAA,IAAI,KAAM,CAAA,WAAA;AAAa,QAAQ,OAAA,CAAA,IAAA,CAAK,MAAM,WAAW,CAAA,CAAA;AACrD,MAAO,OAAA,OAAA,CAAQ,KAAK,GAAG,CAAA,CAAA;AAAA,KACxB,CAAA;AAAA,IACD,YAAA,EAAc,CAAC,OAAA,GAAU,EAAO,KAAA;AAC9B,MAAA,IAAI,KAAM,CAAA,YAAA;AAAc,QAAA,KAAA,CAAM,aAAa,OAAO,CAAA,CAAA;AAElD,MAAA,QAAA,CAAS,MAAM;AAEb,QAAK,IAAA,CAAA,KAAA,EAAO,OAAO,OAAO,CAAA,CAAA;AAAA,OAC3B,CAAA,CAAA;AAAA,KACH;AAAA,IAEA,eAAA,EAAiB,CAAC,OAAqB,KAAA;AACrC,MAAA,KAAA,CAAM,kBAAkB,OAAO,CAAA,CAAA;AAE/B,MAAI,IAAA,KAAA,CAAM,cAAc,OAAS,EAAA;AAC/B,QAAA,MAAA,CAAO,YAAa,EAAA,CAAA;AAAA,OACtB;AAAA,KACF;AAAA,GACF,CAAA;AAEA,EAAO,OAAA,MAAA,CAAA;AACT;;;;"}