UNPKG

element-plus

Version:

A Component Library for Vue 3

43 lines (40 loc) 1.34 kB
import { buildProps, definePropType } from '../../../utils/vue/props/runtime.mjs'; import { mutable } from '../../../utils/typescript.mjs'; import { isNumber } from '../../../utils/types.mjs'; import { isString, isArray } from '@vue/shared'; import { CHANGE_EVENT, UPDATE_MODEL_EVENT } from '../../../constants/event.mjs'; const emitChangeFn = (value) => isNumber(value) || isString(value) || isArray(value); const collapseProps = buildProps({ /** * @description whether to activate accordion mode */ accordion: Boolean, /** * @description currently active panel, the type is `string` in accordion mode, otherwise it is `array` */ modelValue: { type: definePropType([Array, String, Number]), default: () => mutable([]) }, /** * @description set expand icon position */ expandIconPosition: { type: definePropType([String]), default: "right" }, /** * @description before-collapse hook before the collapse state changes. If `false` is returned or a `Promise` is returned and then is rejected, will stop collapsing */ beforeCollapse: { type: definePropType( Function ) } }); const collapseEmits = { [UPDATE_MODEL_EVENT]: emitChangeFn, [CHANGE_EVENT]: emitChangeFn }; export { collapseEmits, collapseProps, emitChangeFn }; //# sourceMappingURL=collapse.mjs.map