{"version":3,"file":"cascader.mjs","sources":["../../../../../../packages/components/cascader/src/cascader.ts"],"sourcesContent":["import { CommonProps } from '@sgui-plus/components/cascader-panel'\r\nimport { buildProps, definePropType } from '@sgui-plus/utils/props'\r\nimport { useSizeProp } from '@sgui-plus/hooks/use-size'\r\nimport { UPDATE_MODEL_EVENT, CHANGE_EVENT } from '@sgui-plus/utils/constants'\r\nimport { isBool } from '@sgui-plus/utils/util'\r\nimport type { CascaderNode, CascaderValue, Tag } from '@sgui-plus/components/cascader-panel'\r\n\r\nexport const cascaderProps = buildProps({\r\n  ...CommonProps,\r\n  placement: {\r\n    type: String,\r\n    default: 'bottom-start',\r\n  },\r\n  size: useSizeProp,\r\n  placeholder: String,\r\n  disabled: Boolean,\r\n  clearable: Boolean,\r\n  filterable: Boolean,\r\n  filterMethod: {\r\n    type: definePropType<(node: CascaderNode, keyword: string) => boolean>(\r\n      Function\r\n    ),\r\n    default: (node: CascaderNode, keyword: string) =>\r\n      node.text.includes(keyword),\r\n  },\r\n  separator: {\r\n    type: String,\r\n    default: ' / ',\r\n  },\r\n  showAllLevels: {\r\n    type: Boolean,\r\n    default: true,\r\n  },\r\n  fixedHeight : {\r\n    type: Boolean,\r\n    default: false,\r\n  },\r\n  collapseTags: Boolean,\r\n  ellipsisTag:Boolean,\r\n  collapseTagsTooltip: {\r\n    type: Boolean,\r\n    default: false,\r\n  },\r\n  tooltipPlacement: {\r\n    type: String,\r\n    default: 'bottom',\r\n  },\r\n  tooltipEffect : {\r\n    type: String,\r\n    default: 'light',\r\n  },\r\n  tooltipOffset : {\r\n    type: Number,\r\n    default: 0,\r\n  },\r\n  tooltipPopperClass : {\r\n    type: String,\r\n  },\r\n  debounce: {\r\n    type: Number,\r\n    default: 300,\r\n  },\r\n  beforeFilter: {\r\n    type: definePropType<(value: string) => boolean | Promise<any>>(Function),\r\n    default: () => true,\r\n  },\r\n  popperClass: {\r\n    type: String,\r\n    default: '',\r\n  },\r\n  transfer: {\r\n    type: Boolean,\r\n    default: true,\r\n  },\r\n  contentFormat: Function,\r\n  readonly: {\r\n    type: Boolean,\r\n    default: false\r\n  },\r\n  tagsSeparator: {\r\n    type: String,\r\n    default: ' , ',\r\n  },\r\n  validateEvent: {\r\n    type: Boolean,\r\n    default: true,\r\n  }\r\n})\r\n\r\nexport const cascaderEmits = {\r\n  [UPDATE_MODEL_EVENT]: (val: CascaderValue) => !!val || val === null,\r\n  [CHANGE_EVENT]: (val: CascaderValue) => !!val || val === null,\r\n  focus: (evt: FocusEvent) => evt instanceof FocusEvent,\r\n  blur: (evt: FocusEvent) => evt instanceof FocusEvent,\r\n  visibleChange: (val: boolean) => isBool(val),\r\n  expandChange: (val: CascaderValue) => !!val,\r\n  removeTag: (val: CascaderNode['valueByOption']) => !!val,\r\n  multipleTagRest: (val: Tag[]) => !!val\r\n}\r\n"],"names":[],"mappings":"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"}