select.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. 'use strict';
  2. Object.defineProperty(exports, '__esModule', { value: true });
  3. var vue = require('vue');
  4. var lodashUnified = require('lodash-unified');
  5. var index$1 = require('../../select/index.js');
  6. require('../../../hooks/index.js');
  7. var index = require('../../../hooks/use-namespace/index.js');
  8. const useSelect = (props, { attrs }, {
  9. tree,
  10. key
  11. }) => {
  12. const ns = index.useNamespace("tree-select");
  13. const result = {
  14. ...lodashUnified.pick(vue.toRefs(props), Object.keys(index$1.ElSelect.props)),
  15. ...attrs,
  16. valueKey: key,
  17. popperClass: vue.computed(() => {
  18. const classes = [ns.e("popper")];
  19. if (props.popperClass)
  20. classes.push(props.popperClass);
  21. return classes.join(" ");
  22. }),
  23. filterMethod: (keyword = "") => {
  24. if (props.filterMethod)
  25. props.filterMethod(keyword);
  26. vue.nextTick(() => {
  27. var _a;
  28. (_a = tree.value) == null ? void 0 : _a.filter(keyword);
  29. });
  30. },
  31. onVisibleChange: (visible) => {
  32. var _a;
  33. (_a = attrs.onVisibleChange) == null ? void 0 : _a.call(attrs, visible);
  34. if (props.filterable && visible) {
  35. result.filterMethod();
  36. }
  37. }
  38. };
  39. return result;
  40. };
  41. exports.useSelect = useSelect;
  42. //# sourceMappingURL=select.js.map