f466c10991b4c4a7a58b466fea84782e4ad1688833e8b1605df9b85a6904b4acd396397b69475b33694cdfcac11b061c3007e66e88195e39f0259f31f6e657 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. import { computed } from 'vue';
  2. import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs';
  3. import { NOOP } from '@vue/shared';
  4. import { UPDATE_MODEL_EVENT, CHANGE_EVENT } from '../../../constants/event.mjs';
  5. const CommonProps = buildProps({
  6. modelValue: {
  7. type: definePropType([Number, String, Array, Object])
  8. },
  9. options: {
  10. type: definePropType(Array),
  11. default: () => []
  12. },
  13. props: {
  14. type: definePropType(Object),
  15. default: () => ({})
  16. }
  17. });
  18. const DefaultProps = {
  19. expandTrigger: "click",
  20. multiple: false,
  21. checkStrictly: false,
  22. emitPath: true,
  23. lazy: false,
  24. lazyLoad: NOOP,
  25. value: "value",
  26. label: "label",
  27. children: "children",
  28. leaf: "leaf",
  29. disabled: "disabled",
  30. hoverThreshold: 500,
  31. checkOnClickNode: false,
  32. checkOnClickLeaf: true,
  33. showPrefix: true
  34. };
  35. const cascaderPanelProps = buildProps({
  36. ...CommonProps,
  37. border: {
  38. type: Boolean,
  39. default: true
  40. },
  41. renderLabel: {
  42. type: Function
  43. }
  44. });
  45. const emitChangeFn = (value) => true;
  46. const cascaderPanelEmits = {
  47. [UPDATE_MODEL_EVENT]: emitChangeFn,
  48. [CHANGE_EVENT]: emitChangeFn,
  49. close: () => true,
  50. "expand-change": (value) => value
  51. };
  52. const useCascaderConfig = (props) => {
  53. return computed(() => ({
  54. ...DefaultProps,
  55. ...props.props
  56. }));
  57. };
  58. export { CommonProps, DefaultProps, cascaderPanelEmits, cascaderPanelProps, useCascaderConfig };
  59. //# sourceMappingURL=config.mjs.map