pro-design-vue 1.3.21 → 1.3.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (127) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.full.js +1181 -1585
  3. package/dist/index.full.min.js +7 -9
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +7 -9
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +1182 -1586
  8. package/es/components/config-provider/src/typing.d.ts +1 -0
  9. package/es/components/table/src/components/Body/Body.vue.d.ts +261 -15
  10. package/es/components/table/src/components/Body/BodyCell.vue.d.ts +255 -0
  11. package/es/components/table/src/components/Body/BodyEditCell.d.ts +60 -0
  12. package/es/components/table/src/components/Body/BodyRow.vue.d.ts +261 -15
  13. package/es/components/table/src/components/Body/BodyRows.vue.d.ts +261 -15
  14. package/es/components/table/src/components/Body/{BodyCell.d.ts → BodyTextCell.d.ts} +1 -7
  15. package/es/components/table/src/components/InteralTable.vue.d.ts +314 -19
  16. package/es/components/table/src/components/Table.d.ts +51 -0
  17. package/es/components/table/src/components/context/TableContext.d.ts +4 -0
  18. package/es/components/table/src/components/interface.d.ts +295 -23
  19. package/es/components/table/src/hooks/useCellProps.d.ts +5 -1
  20. package/es/components/table/src/hooks/useEdit.d.ts +24 -7
  21. package/es/components/table/src/utils/form-model.d.ts +25 -0
  22. package/es/components/table/src/utils/util.d.ts +1 -0
  23. package/es/index.d.ts +276 -5
  24. package/es/packages/components/table/src/components/Body/BodyCell.vue.mjs +35 -0
  25. package/es/packages/components/table/src/components/Body/BodyCell.vue.mjs.map +1 -0
  26. package/es/packages/components/table/src/components/Body/BodyCell.vue2.mjs +129 -0
  27. package/es/packages/components/table/src/components/Body/BodyCell.vue2.mjs.map +1 -0
  28. package/es/packages/components/table/src/components/Body/BodyEditCell.mjs +256 -0
  29. package/es/packages/components/table/src/components/Body/BodyEditCell.mjs.map +1 -0
  30. package/es/packages/components/table/src/components/Body/BodyRow.vue.mjs +63 -8
  31. package/es/packages/components/table/src/components/Body/BodyRow.vue.mjs.map +1 -1
  32. package/es/packages/components/table/src/components/Body/BodyRow.vue2.mjs +24 -18
  33. package/es/packages/components/table/src/components/Body/BodyRow.vue2.mjs.map +1 -1
  34. package/es/packages/components/table/src/components/Body/{BodyCell.mjs → BodyTextCell.mjs} +25 -155
  35. package/es/packages/components/table/src/components/Body/BodyTextCell.mjs.map +1 -0
  36. package/es/packages/components/table/src/components/InteralTable.vue.mjs +24 -25
  37. package/es/packages/components/table/src/components/InteralTable.vue.mjs.map +1 -1
  38. package/es/packages/components/table/src/components/InteralTable.vue2.mjs +36 -97
  39. package/es/packages/components/table/src/components/InteralTable.vue2.mjs.map +1 -1
  40. package/es/packages/components/table/src/components/Table.mjs +24 -20
  41. package/es/packages/components/table/src/components/Table.mjs.map +1 -1
  42. package/es/packages/components/table/src/components/context/TableContext.mjs.map +1 -1
  43. package/es/packages/components/table/src/components/interface.mjs +24 -0
  44. package/es/packages/components/table/src/components/interface.mjs.map +1 -1
  45. package/es/packages/components/table/src/hooks/useCellProps.mjs +8 -0
  46. package/es/packages/components/table/src/hooks/useCellProps.mjs.map +1 -1
  47. package/es/packages/components/table/src/hooks/useEdit.mjs +293 -18
  48. package/es/packages/components/table/src/hooks/useEdit.mjs.map +1 -1
  49. package/es/packages/components/table/src/utils/form-model.mjs +98 -0
  50. package/es/packages/components/table/src/utils/form-model.mjs.map +1 -0
  51. package/es/packages/components/table/src/utils/util.mjs +4 -1
  52. package/es/packages/components/table/src/utils/util.mjs.map +1 -1
  53. package/es/packages/utils/dom.mjs +15 -1
  54. package/es/packages/utils/dom.mjs.map +1 -1
  55. package/es/packages/utils/index.mjs +1 -1
  56. package/es/utils/dom.d.ts +2 -0
  57. package/es/version.d.ts +1 -1
  58. package/es/version.mjs +1 -1
  59. package/es/version.mjs.map +1 -1
  60. package/lib/components/config-provider/src/typing.d.ts +1 -0
  61. package/lib/components/table/src/components/Body/Body.vue.d.ts +261 -15
  62. package/lib/components/table/src/components/Body/BodyCell.vue.d.ts +255 -0
  63. package/lib/components/table/src/components/Body/BodyEditCell.d.ts +60 -0
  64. package/lib/components/table/src/components/Body/BodyRow.vue.d.ts +261 -15
  65. package/lib/components/table/src/components/Body/BodyRows.vue.d.ts +261 -15
  66. package/lib/components/table/src/components/Body/{BodyCell.d.ts → BodyTextCell.d.ts} +1 -7
  67. package/lib/components/table/src/components/InteralTable.vue.d.ts +314 -19
  68. package/lib/components/table/src/components/Table.d.ts +51 -0
  69. package/lib/components/table/src/components/context/TableContext.d.ts +4 -0
  70. package/lib/components/table/src/components/interface.d.ts +295 -23
  71. package/lib/components/table/src/hooks/useCellProps.d.ts +5 -1
  72. package/lib/components/table/src/hooks/useEdit.d.ts +24 -7
  73. package/lib/components/table/src/utils/form-model.d.ts +25 -0
  74. package/lib/components/table/src/utils/util.d.ts +1 -0
  75. package/lib/index.d.ts +276 -5
  76. package/lib/packages/components/table/src/components/Body/BodyCell.vue.js +39 -0
  77. package/lib/packages/components/table/src/components/Body/BodyCell.vue.js.map +1 -0
  78. package/lib/packages/components/table/src/components/Body/BodyCell.vue2.js +133 -0
  79. package/lib/packages/components/table/src/components/Body/BodyCell.vue2.js.map +1 -0
  80. package/lib/packages/components/table/src/components/Body/BodyEditCell.js +260 -0
  81. package/lib/packages/components/table/src/components/Body/BodyEditCell.js.map +1 -0
  82. package/lib/packages/components/table/src/components/Body/BodyRow.vue.js +63 -8
  83. package/lib/packages/components/table/src/components/Body/BodyRow.vue.js.map +1 -1
  84. package/lib/packages/components/table/src/components/Body/BodyRow.vue2.js +22 -16
  85. package/lib/packages/components/table/src/components/Body/BodyRow.vue2.js.map +1 -1
  86. package/lib/packages/components/table/src/components/Body/{BodyCell.js → BodyTextCell.js} +24 -154
  87. package/lib/packages/components/table/src/components/Body/BodyTextCell.js.map +1 -0
  88. package/lib/packages/components/table/src/components/InteralTable.vue.js +24 -25
  89. package/lib/packages/components/table/src/components/InteralTable.vue.js.map +1 -1
  90. package/lib/packages/components/table/src/components/InteralTable.vue2.js +36 -97
  91. package/lib/packages/components/table/src/components/InteralTable.vue2.js.map +1 -1
  92. package/lib/packages/components/table/src/components/Table.js +24 -20
  93. package/lib/packages/components/table/src/components/Table.js.map +1 -1
  94. package/lib/packages/components/table/src/components/context/TableContext.js.map +1 -1
  95. package/lib/packages/components/table/src/components/interface.js +24 -0
  96. package/lib/packages/components/table/src/components/interface.js.map +1 -1
  97. package/lib/packages/components/table/src/hooks/useCellProps.js +8 -0
  98. package/lib/packages/components/table/src/hooks/useCellProps.js.map +1 -1
  99. package/lib/packages/components/table/src/hooks/useEdit.js +292 -17
  100. package/lib/packages/components/table/src/hooks/useEdit.js.map +1 -1
  101. package/lib/packages/components/table/src/utils/form-model.js +102 -0
  102. package/lib/packages/components/table/src/utils/form-model.js.map +1 -0
  103. package/lib/packages/components/table/src/utils/util.js +4 -0
  104. package/lib/packages/components/table/src/utils/util.js.map +1 -1
  105. package/lib/packages/utils/dom.js +16 -0
  106. package/lib/packages/utils/dom.js.map +1 -1
  107. package/lib/packages/utils/index.js +2 -0
  108. package/lib/packages/utils/index.js.map +1 -1
  109. package/lib/utils/dom.d.ts +2 -0
  110. package/lib/version.d.ts +1 -1
  111. package/lib/version.js +1 -1
  112. package/lib/version.js.map +1 -1
  113. package/package.json +1 -1
  114. package/theme-chalk/index.css +1 -1
  115. package/theme-chalk/src/table/table.less +29 -2
  116. package/es/components/table/src/components/Body/EditInput.vue.d.ts +0 -102
  117. package/es/packages/components/table/src/components/Body/BodyCell.mjs.map +0 -1
  118. package/es/packages/components/table/src/components/Body/EditInput.vue.mjs +0 -48
  119. package/es/packages/components/table/src/components/Body/EditInput.vue.mjs.map +0 -1
  120. package/es/packages/components/table/src/components/Body/EditInput.vue2.mjs +0 -151
  121. package/es/packages/components/table/src/components/Body/EditInput.vue2.mjs.map +0 -1
  122. package/lib/components/table/src/components/Body/EditInput.vue.d.ts +0 -102
  123. package/lib/packages/components/table/src/components/Body/BodyCell.js.map +0 -1
  124. package/lib/packages/components/table/src/components/Body/EditInput.vue.js +0 -52
  125. package/lib/packages/components/table/src/components/Body/EditInput.vue.js.map +0 -1
  126. package/lib/packages/components/table/src/components/Body/EditInput.vue2.js +0 -155
  127. package/lib/packages/components/table/src/components/Body/EditInput.vue2.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"util.mjs","sources":["../../../../../../../../packages/components/table/src/utils/util.ts"],"sourcesContent":["import { isVNode, camelize, Fragment, Comment } from 'vue'\n\nimport type { CSSProperties, VNodeChild, VNodeNormalizedChildren, VNode } from 'vue'\nimport type {\n Bordered,\n BorderedType,\n ColumnsType,\n ColumnType,\n DataIndex,\n Key,\n} from '../components/interface'\n\nexport function is(val: unknown, type: string) {\n return toString.call(val) === `[object ${type}]`\n}\n\nexport function isFunction(val: unknown): val is Function {\n return typeof val === 'function'\n}\n\nexport function isArray(val: any): val is Array<any> {\n return val && Array.isArray(val)\n}\n\nexport function isString(val: unknown): val is string {\n return is(val, 'String')\n}\n\nexport declare const isSymbol: (val: any) => boolean\n\nexport function isObject(val: any): val is Record<any, any> {\n return val !== null && is(val, 'Object')\n}\n\nexport declare function getColumnKey<RecordType>(\n column: ColumnType<RecordType>,\n defaultKey: string,\n): Key\n\n/**\n * 根据 key 和 dataIndex 生成唯一 id\n *\n * @param key 用户设置的 key\n * @param dataIndex 在对象中的数据\n * @param index 序列号,理论上唯一\n */\nexport const genColumnKey = (key?: string | number, index?: number | string): string => {\n if (key) {\n return Array.isArray(key) ? key.join('-') : key.toString()\n }\n return `${index}`\n}\n\nexport function getColumnPos(index: number, pos?: string) {\n return pos ? `${pos}-${index}` : `${index}`\n}\nexport declare function getNewColumnsByWidth<RecordType>(\n columns: ColumnsType<RecordType>,\n newWidths: Record<string, number>,\n pos?: string,\n): ColumnsType<RecordType>\nexport declare type SortOrder = 'desc' | 'asc' | null\nexport interface ColumnTitleProps<RecordType> {\n /** @deprecated Please use `sorterColumns` instead. */\n sortOrder?: SortOrder\n /** @deprecated Please use `sorterColumns` instead. */\n sortColumn?: ColumnType<RecordType>\n sortColumns?: {\n column: ColumnType<RecordType>\n order: SortOrder\n }[]\n filters?: Record<string, string[]>\n}\nexport declare function renderColumnTitle<RecordType>(\n title: any,\n props: ColumnTitleProps<RecordType>,\n): any\nexport function objectToEmpty(obj: Record<string, any>): void {\n for (const key in obj) Object.prototype.hasOwnProperty.call(obj, key) && delete obj[key]\n}\n\nfunction toArray<T>(arr: T | readonly T[]): T[] {\n if (arr === undefined || arr === null) {\n return []\n }\n return (Array.isArray(arr) ? arr : [arr]) as T[]\n}\n\nexport function getPathValue<ValueType, ObjectType extends object>(\n record: ObjectType,\n path: DataIndex,\n): ValueType | null {\n // Skip if path is empty\n if (!path && typeof path !== 'number') {\n return record as unknown as ValueType\n }\n\n const pathList = toArray(path)\n\n let current: ValueType | ObjectType = record\n\n for (let i = 0; i < pathList.length; i += 1) {\n if (!current) {\n return null\n }\n\n const prop = pathList[i]!\n current = current[prop]\n }\n\n return current as ValueType\n}\n\nexport declare function setPathValue<ValueType, ObjectType extends object>(\n record: ObjectType,\n path: DataIndex,\n value: ValueType,\n): ValueType\n\nexport function isValidElement(element: VNode | VNode[]) {\n if (Array.isArray(element) && element.length === 1) {\n element = element[0]!\n }\n return element && isVNode(element) && typeof element.type !== 'symbol' // remove text node\n}\n\nexport const parseStyleText = (cssText: string | CSSProperties, camel?: boolean) => {\n const res = {}\n const listDelimiter = /;(?![^(]*\\))/g\n const propertyDelimiter = /:(.+)/\n if (typeof cssText === 'object') return cssText\n cssText.split(listDelimiter).forEach(function (item) {\n if (item) {\n const tmp = item.split(propertyDelimiter)\n if (tmp.length > 1) {\n const k = camel ? camelize(tmp[0]!.trim()) : tmp[0]!.trim()\n res[k] = tmp[1]!.trim()\n }\n }\n })\n return res\n}\n\nexport function setPromise(fn: any): {\n promise: Promise<void>\n cancel: () => void\n} {\n let rejectFn: (reason?: any) => void\n let isCancel = false\n return {\n promise: new Promise((resolve, reject) => {\n rejectFn = reject\n Promise.resolve().then(() => {\n resolve('')\n })\n })\n .then(() => {\n if (!isCancel) {\n fn()\n }\n })\n .catch(() => {}),\n cancel: () => {\n isCancel = true\n rejectFn && rejectFn()\n },\n }\n}\n\nexport function arrDel(list: Key[], value: Key) {\n if (!list) return []\n const clone = list.slice()\n const index = clone.indexOf(value)\n if (index >= 0) {\n clone.splice(index, 1)\n }\n return clone\n}\n\nexport function arrAdd(list: Key[], value: Key) {\n const clone = (list || []).slice()\n if (clone.indexOf(value) === -1) {\n clone.push(value)\n }\n return clone\n}\nexport declare function isEmptyElement(c: any): boolean\n\nconst isValid = (value: any): boolean => {\n return value !== undefined && value !== null && value !== ''\n}\nexport default isValid\n\nexport type VNodeChildAtom = Exclude<VNodeChild, Array<any>>\nexport type RawSlots = Exclude<VNodeNormalizedChildren, Array<any> | null | string>\n\nexport type FlattenVNodes = Array<VNodeChildAtom | RawSlots>\nconst flattenChildren = (\n children: FlattenVNodes | VNode | VNodeNormalizedChildren,\n filterEmpty = true,\n): FlattenVNodes => {\n const vNodes = isArray(children) ? children : [children]\n const result: FlattenVNodes = []\n vNodes.forEach((child: any) => {\n if (isArray(child)) {\n result.push(...flattenChildren(child, filterEmpty))\n } else if (child && child.type === Fragment) {\n result.push(...flattenChildren(child.children, filterEmpty))\n } else if (child && isVNode(child)) {\n if (filterEmpty && !isEmptyElement(child)) {\n result.push(child)\n } else if (!filterEmpty) {\n result.push(child)\n }\n } else if (isValid(child)) {\n result.push(child)\n }\n })\n return result\n}\nexport function convertChildrenToColumns<RecordType>(\n elements: any[] = [],\n): ColumnsType<RecordType> {\n const flattenElements = flattenChildren(elements)\n const columns: any[] = []\n flattenElements.forEach((element: any) => {\n if (!element) {\n return\n }\n const key = element.key\n const style = element.props?.style || {}\n const cls = element.props?.class || ''\n const props = element.props || {}\n for (const [k, v] of Object.entries(props)) {\n props[camelize(k)] = v\n }\n const { default: children, ...restSlots } = element.children || {}\n const column = { ...restSlots, ...props, style, class: cls }\n if (key) {\n column.key = key\n }\n if (element.type?.__S_TABLE_COLUMN_GROUP) {\n column.children = convertChildrenToColumns(\n typeof children === 'function' ? children() : children,\n )\n } else {\n const customRender = element.children?.default\n column.customRender = column.customRender || customRender\n }\n columns.push(column)\n })\n return columns\n}\n\nexport const eventsClose = (e1: MouseEvent | Touch, e2: MouseEvent | Touch, diff: number) => {\n return (\n diff !== 0 &&\n Math.max(Math.abs(e1.clientX - e2.clientX), Math.abs(e1.clientY - e2.clientY)) <= diff\n )\n}\nexport declare function getNestItemData<T>(\n data: T[],\n indexs: number[],\n childrenColumnName: string,\n): T\nexport function addNestItemData<T>(\n data: T[],\n indexs: number[],\n childrenColumnName: string,\n itemData: T,\n): any[] {\n let item: T\n let copyData: T[] = data\n let currentData: T[] = []\n const indexsLen = indexs.length\n if (indexsLen === 0) {\n data.splice(0, 0, itemData)\n return data\n }\n for (let i = 0; i < indexsLen; i++) {\n item = copyData[indexs[i]!]!\n if (i === indexsLen - 1) {\n currentData = copyData\n }\n copyData = item?.[childrenColumnName] || []\n }\n currentData.splice(indexs[indexsLen - 1]! + 1, 0, itemData)\n return currentData\n}\n\nexport function deleteNestItemData<T>(\n data: T[],\n indexs: number[],\n childrenColumnName: string,\n): any[] {\n let item: T\n let copyData: T[] = data\n let currentData: T[] = []\n const indexsLen = indexs.length\n for (let i = 0; i < indexsLen; i++) {\n item = copyData[indexs[i]!]!\n if (i === indexsLen - 1) {\n currentData = copyData\n }\n copyData = item?.[childrenColumnName] || []\n }\n currentData.splice(indexs[indexsLen - 1]!, 1)\n return currentData\n}\n\nexport function isPromise<T = any>(val: any): val is Promise<T> {\n return is(val, 'Promise') && isFunction(val.then) && isFunction(val.catch)\n}\n\nexport function ensureValidVNode(vnodes: any): any {\n return vnodes.some(\n (vnode: any) =>\n !isVNode(vnode) ||\n (vnode.type !== Comment && !(vnode.type === Fragment && !ensureValidVNode(vnode.children))),\n )\n ? vnodes\n : null\n}\n\nexport const isBordered = (borderType: BorderedType, border?: Bordered) => {\n if (border === undefined) {\n return false\n }\n if (typeof border === 'boolean') {\n return border\n }\n return border[borderType]\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.mjs","sources":["../../../../../../../../packages/components/table/src/utils/util.ts"],"sourcesContent":["import { isVNode, camelize, Fragment, Comment } from 'vue'\n\nimport type { CSSProperties, VNodeChild, VNodeNormalizedChildren, VNode } from 'vue'\nimport type {\n Bordered,\n BorderedType,\n ColumnsType,\n ColumnType,\n DataIndex,\n Key,\n} from '../components/interface'\n\nexport function is(val: unknown, type: string) {\n return toString.call(val) === `[object ${type}]`\n}\n\nexport function isFunction(val: unknown): val is Function {\n return typeof val === 'function'\n}\n\nexport function isArray(val: any): val is Array<any> {\n return val && Array.isArray(val)\n}\n\nexport function isString(val: unknown): val is string {\n return is(val, 'String')\n}\n\nexport declare const isSymbol: (val: any) => boolean\n\nexport function isObject(val: any): val is Record<any, any> {\n return val !== null && is(val, 'Object')\n}\n\nexport declare function getColumnKey<RecordType>(\n column: ColumnType<RecordType>,\n defaultKey: string,\n): Key\n\n/**\n * 根据 key 和 dataIndex 生成唯一 id\n *\n * @param key 用户设置的 key\n * @param dataIndex 在对象中的数据\n * @param index 序列号,理论上唯一\n */\nexport const genColumnKey = (key?: string | number, index?: number | string): string => {\n if (key) {\n return Array.isArray(key) ? key.join('-') : key.toString()\n }\n return `${index}`\n}\n\nexport function getColumnPos(index: number, pos?: string) {\n return pos ? `${pos}-${index}` : `${index}`\n}\n\nexport function getCellKey(rowKey: Key, colKey: Key) {\n return [rowKey, colKey].join('_')\n}\n\nexport declare function getNewColumnsByWidth<RecordType>(\n columns: ColumnsType<RecordType>,\n newWidths: Record<string, number>,\n pos?: string,\n): ColumnsType<RecordType>\nexport declare type SortOrder = 'desc' | 'asc' | null\nexport interface ColumnTitleProps<RecordType> {\n /** @deprecated Please use `sorterColumns` instead. */\n sortOrder?: SortOrder\n /** @deprecated Please use `sorterColumns` instead. */\n sortColumn?: ColumnType<RecordType>\n sortColumns?: {\n column: ColumnType<RecordType>\n order: SortOrder\n }[]\n filters?: Record<string, string[]>\n}\nexport declare function renderColumnTitle<RecordType>(\n title: any,\n props: ColumnTitleProps<RecordType>,\n): any\nexport function objectToEmpty(obj: Record<string, any>): void {\n for (const key in obj) Object.prototype.hasOwnProperty.call(obj, key) && delete obj[key]\n}\n\nfunction toArray<T>(arr: T | readonly T[]): T[] {\n if (arr === undefined || arr === null) {\n return []\n }\n return (Array.isArray(arr) ? arr : [arr]) as T[]\n}\n\nexport function getPathValue<ValueType, ObjectType extends object>(\n record: ObjectType,\n path: DataIndex,\n): ValueType | null {\n // Skip if path is empty\n if (!path && typeof path !== 'number') {\n return record as unknown as ValueType\n }\n\n const pathList = toArray(path)\n\n let current: ValueType | ObjectType = record\n\n for (let i = 0; i < pathList.length; i += 1) {\n if (!current) {\n return null\n }\n\n const prop = pathList[i]!\n current = current[prop]\n }\n\n return current as ValueType\n}\n\nexport declare function setPathValue<ValueType, ObjectType extends object>(\n record: ObjectType,\n path: DataIndex,\n value: ValueType,\n): ValueType\n\nexport function isValidElement(element: VNode | VNode[]) {\n if (Array.isArray(element) && element.length === 1) {\n element = element[0]!\n }\n return element && isVNode(element) && typeof element.type !== 'symbol' // remove text node\n}\n\nexport const parseStyleText = (cssText: string | CSSProperties, camel?: boolean) => {\n const res = {}\n const listDelimiter = /;(?![^(]*\\))/g\n const propertyDelimiter = /:(.+)/\n if (typeof cssText === 'object') return cssText\n cssText.split(listDelimiter).forEach(function (item) {\n if (item) {\n const tmp = item.split(propertyDelimiter)\n if (tmp.length > 1) {\n const k = camel ? camelize(tmp[0]!.trim()) : tmp[0]!.trim()\n res[k] = tmp[1]!.trim()\n }\n }\n })\n return res\n}\n\nexport function setPromise(fn: any): {\n promise: Promise<void>\n cancel: () => void\n} {\n let rejectFn: (reason?: any) => void\n let isCancel = false\n return {\n promise: new Promise((resolve, reject) => {\n rejectFn = reject\n Promise.resolve().then(() => {\n resolve('')\n })\n })\n .then(() => {\n if (!isCancel) {\n fn()\n }\n })\n .catch(() => {}),\n cancel: () => {\n isCancel = true\n rejectFn && rejectFn()\n },\n }\n}\n\nexport function arrDel(list: Key[], value: Key) {\n if (!list) return []\n const clone = list.slice()\n const index = clone.indexOf(value)\n if (index >= 0) {\n clone.splice(index, 1)\n }\n return clone\n}\n\nexport function arrAdd(list: Key[], value: Key) {\n const clone = (list || []).slice()\n if (clone.indexOf(value) === -1) {\n clone.push(value)\n }\n return clone\n}\nexport declare function isEmptyElement(c: any): boolean\n\nconst isValid = (value: any): boolean => {\n return value !== undefined && value !== null && value !== ''\n}\nexport default isValid\n\nexport type VNodeChildAtom = Exclude<VNodeChild, Array<any>>\nexport type RawSlots = Exclude<VNodeNormalizedChildren, Array<any> | null | string>\n\nexport type FlattenVNodes = Array<VNodeChildAtom | RawSlots>\nconst flattenChildren = (\n children: FlattenVNodes | VNode | VNodeNormalizedChildren,\n filterEmpty = true,\n): FlattenVNodes => {\n const vNodes = isArray(children) ? children : [children]\n const result: FlattenVNodes = []\n vNodes.forEach((child: any) => {\n if (isArray(child)) {\n result.push(...flattenChildren(child, filterEmpty))\n } else if (child && child.type === Fragment) {\n result.push(...flattenChildren(child.children, filterEmpty))\n } else if (child && isVNode(child)) {\n if (filterEmpty && !isEmptyElement(child)) {\n result.push(child)\n } else if (!filterEmpty) {\n result.push(child)\n }\n } else if (isValid(child)) {\n result.push(child)\n }\n })\n return result\n}\nexport function convertChildrenToColumns<RecordType>(\n elements: any[] = [],\n): ColumnsType<RecordType> {\n const flattenElements = flattenChildren(elements)\n const columns: any[] = []\n flattenElements.forEach((element: any) => {\n if (!element) {\n return\n }\n const key = element.key\n const style = element.props?.style || {}\n const cls = element.props?.class || ''\n const props = element.props || {}\n for (const [k, v] of Object.entries(props)) {\n props[camelize(k)] = v\n }\n const { default: children, ...restSlots } = element.children || {}\n const column = { ...restSlots, ...props, style, class: cls }\n if (key) {\n column.key = key\n }\n if (element.type?.__S_TABLE_COLUMN_GROUP) {\n column.children = convertChildrenToColumns(\n typeof children === 'function' ? children() : children,\n )\n } else {\n const customRender = element.children?.default\n column.customRender = column.customRender || customRender\n }\n columns.push(column)\n })\n return columns\n}\n\nexport const eventsClose = (e1: MouseEvent | Touch, e2: MouseEvent | Touch, diff: number) => {\n return (\n diff !== 0 &&\n Math.max(Math.abs(e1.clientX - e2.clientX), Math.abs(e1.clientY - e2.clientY)) <= diff\n )\n}\nexport declare function getNestItemData<T>(\n data: T[],\n indexs: number[],\n childrenColumnName: string,\n): T\nexport function addNestItemData<T>(\n data: T[],\n indexs: number[],\n childrenColumnName: string,\n itemData: T,\n): any[] {\n let item: T\n let copyData: T[] = data\n let currentData: T[] = []\n const indexsLen = indexs.length\n if (indexsLen === 0) {\n data.splice(0, 0, itemData)\n return data\n }\n for (let i = 0; i < indexsLen; i++) {\n item = copyData[indexs[i]!]!\n if (i === indexsLen - 1) {\n currentData = copyData\n }\n copyData = item?.[childrenColumnName] || []\n }\n currentData.splice(indexs[indexsLen - 1]! + 1, 0, itemData)\n return currentData\n}\n\nexport function deleteNestItemData<T>(\n data: T[],\n indexs: number[],\n childrenColumnName: string,\n): any[] {\n let item: T\n let copyData: T[] = data\n let currentData: T[] = []\n const indexsLen = indexs.length\n for (let i = 0; i < indexsLen; i++) {\n item = copyData[indexs[i]!]!\n if (i === indexsLen - 1) {\n currentData = copyData\n }\n copyData = item?.[childrenColumnName] || []\n }\n currentData.splice(indexs[indexsLen - 1]!, 1)\n return currentData\n}\n\nexport function isPromise<T = any>(val: any): val is Promise<T> {\n return is(val, 'Promise') && isFunction(val.then) && isFunction(val.catch)\n}\n\nexport function ensureValidVNode(vnodes: any): any {\n return vnodes.some(\n (vnode: any) =>\n !isVNode(vnode) ||\n (vnode.type !== Comment && !(vnode.type === Fragment && !ensureValidVNode(vnode.children))),\n )\n ? vnodes\n : null\n}\n\nexport const isBordered = (borderType: BorderedType, border?: Bordered) => {\n if (border === undefined) {\n return false\n }\n if (typeof border === 'boolean') {\n return border\n }\n return border[borderType]\n}\n"],"names":[],"mappings":"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"}
@@ -51,6 +51,20 @@ function triggerWindowResize() {
51
51
  const resizeEvent = new Event("resize");
52
52
  window.dispatchEvent(resizeEvent);
53
53
  }
54
+ const on = /* @__PURE__ */ (() => {
55
+ return (element, event, handler, options) => {
56
+ if (element && event && handler) {
57
+ element.addEventListener(event, handler, options);
58
+ }
59
+ };
60
+ })();
61
+ const off = /* @__PURE__ */ (() => {
62
+ return (element, event, handler, options) => {
63
+ if (element && event) {
64
+ element.removeEventListener(event, handler, options);
65
+ }
66
+ };
67
+ })();
54
68
 
55
- export { getElementVisibleRect, getScrollbarWidth, needsScrollbar, triggerWindowResize };
69
+ export { getElementVisibleRect, getScrollbarWidth, needsScrollbar, off, on, triggerWindowResize };
56
70
  //# sourceMappingURL=dom.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"dom.mjs","sources":["../../../../../packages/utils/dom.ts"],"sourcesContent":["export interface VisibleDomRect {\n bottom: number\n height: number\n left: number\n right: number\n top: number\n width: number\n}\n\n/**\n * 获取元素可见信息\n * @param element\n */\nexport function getElementVisibleRect(element?: HTMLElement | null | undefined): VisibleDomRect {\n if (!element) {\n return {\n bottom: 0,\n height: 0,\n left: 0,\n right: 0,\n top: 0,\n width: 0,\n }\n }\n const rect = element.getBoundingClientRect()\n const viewHeight = Math.max(document.documentElement.clientHeight, window.innerHeight)\n\n const top = Math.max(rect.top, 0)\n const bottom = Math.min(rect.bottom, viewHeight)\n\n const viewWidth = Math.max(document.documentElement.clientWidth, window.innerWidth)\n\n const left = Math.max(rect.left, 0)\n const right = Math.min(rect.right, viewWidth)\n\n return {\n bottom,\n height: Math.max(0, bottom - top),\n left,\n right,\n top,\n width: Math.max(0, right - left),\n }\n}\n\nexport function getScrollbarWidth() {\n const scrollDiv = document.createElement('div')\n\n scrollDiv.style.visibility = 'hidden'\n scrollDiv.style.overflow = 'scroll'\n scrollDiv.style.position = 'absolute'\n scrollDiv.style.top = '-9999px'\n\n document.body.append(scrollDiv)\n\n const innerDiv = document.createElement('div')\n scrollDiv.append(innerDiv)\n\n const scrollbarWidth = scrollDiv.offsetWidth - innerDiv.offsetWidth\n\n scrollDiv.remove()\n return scrollbarWidth\n}\n\nexport function needsScrollbar() {\n const doc = document.documentElement\n const body = document.body\n\n // 检查 body 的 overflow-y 样式\n const overflowY = window.getComputedStyle(body).overflowY\n\n // 如果明确设置了需要滚动条的样式\n if (overflowY === 'scroll' || overflowY === 'auto') {\n return doc.scrollHeight > window.innerHeight\n }\n\n // 在其他情况下,根据 scrollHeight 和 innerHeight 比较判断\n return doc.scrollHeight > window.innerHeight\n}\n\nexport function triggerWindowResize(): void {\n // 创建一个新的 resize 事件\n const resizeEvent = new Event('resize')\n\n // 触发 window 的 resize 事件\n window.dispatchEvent(resizeEvent)\n}\n"],"names":[],"mappings":"AAaO,SAAS,sBAAsB,OAAA,EAA0D;AAC9F,EAAA,IAAI,CAAC,OAAA,EAAS;AACZ,IAAA,OAAO;AAAA,MACL,MAAA,EAAQ,CAAA;AAAA,MACR,MAAA,EAAQ,CAAA;AAAA,MACR,IAAA,EAAM,CAAA;AAAA,MACN,KAAA,EAAO,CAAA;AAAA,MACP,GAAA,EAAK,CAAA;AAAA,MACL,KAAA,EAAO;AAAA,KACT;AAAA,EACF;AACA,EAAA,MAAM,IAAA,GAAO,QAAQ,qBAAA,EAAsB;AAC3C,EAAA,MAAM,aAAa,IAAA,CAAK,GAAA,CAAI,SAAS,eAAA,CAAgB,YAAA,EAAc,OAAO,WAAW,CAAA;AAErF,EAAA,MAAM,GAAA,GAAM,IAAA,CAAK,GAAA,CAAI,IAAA,CAAK,KAAK,CAAC,CAAA;AAChC,EAAA,MAAM,MAAA,GAAS,IAAA,CAAK,GAAA,CAAI,IAAA,CAAK,QAAQ,UAAU,CAAA;AAE/C,EAAA,MAAM,YAAY,IAAA,CAAK,GAAA,CAAI,SAAS,eAAA,CAAgB,WAAA,EAAa,OAAO,UAAU,CAAA;AAElF,EAAA,MAAM,IAAA,GAAO,IAAA,CAAK,GAAA,CAAI,IAAA,CAAK,MAAM,CAAC,CAAA;AAClC,EAAA,MAAM,KAAA,GAAQ,IAAA,CAAK,GAAA,CAAI,IAAA,CAAK,OAAO,SAAS,CAAA;AAE5C,EAAA,OAAO;AAAA,IACL,MAAA;AAAA,IACA,MAAA,EAAQ,IAAA,CAAK,GAAA,CAAI,CAAA,EAAG,SAAS,GAAG,CAAA;AAAA,IAChC,IAAA;AAAA,IACA,KAAA;AAAA,IACA,GAAA;AAAA,IACA,KAAA,EAAO,IAAA,CAAK,GAAA,CAAI,CAAA,EAAG,QAAQ,IAAI;AAAA,GACjC;AACF;AAEO,SAAS,iBAAA,GAAoB;AAClC,EAAA,MAAM,SAAA,GAAY,QAAA,CAAS,aAAA,CAAc,KAAK,CAAA;AAE9C,EAAA,SAAA,CAAU,MAAM,UAAA,GAAa,QAAA;AAC7B,EAAA,SAAA,CAAU,MAAM,QAAA,GAAW,QAAA;AAC3B,EAAA,SAAA,CAAU,MAAM,QAAA,GAAW,UAAA;AAC3B,EAAA,SAAA,CAAU,MAAM,GAAA,GAAM,SAAA;AAEtB,EAAA,QAAA,CAAS,IAAA,CAAK,OAAO,SAAS,CAAA;AAE9B,EAAA,MAAM,QAAA,GAAW,QAAA,CAAS,aAAA,CAAc,KAAK,CAAA;AAC7C,EAAA,SAAA,CAAU,OAAO,QAAQ,CAAA;AAEzB,EAAA,MAAM,cAAA,GAAiB,SAAA,CAAU,WAAA,GAAc,QAAA,CAAS,WAAA;AAExD,EAAA,SAAA,CAAU,MAAA,EAAO;AACjB,EAAA,OAAO,cAAA;AACT;AAEO,SAAS,cAAA,GAAiB;AAC/B,EAAA,MAAM,MAAM,QAAA,CAAS,eAAA;AACrB,EAAA,MAAM,OAAO,QAAA,CAAS,IAAA;AAGtB,EAAA,MAAM,SAAA,GAAY,MAAA,CAAO,gBAAA,CAAiB,IAAI,CAAA,CAAE,SAAA;AAGhD,EAAA,IAAI,SAAA,KAAc,QAAA,IAAY,SAAA,KAAc,MAAA,EAAQ;AAClD,IAAA,OAAO,GAAA,CAAI,eAAe,MAAA,CAAO,WAAA;AAAA,EACnC;AAGA,EAAA,OAAO,GAAA,CAAI,eAAe,MAAA,CAAO,WAAA;AACnC;AAEO,SAAS,mBAAA,GAA4B;AAE1C,EAAA,MAAM,WAAA,GAAc,IAAI,KAAA,CAAM,QAAQ,CAAA;AAGtC,EAAA,MAAA,CAAO,cAAc,WAAW,CAAA;AAClC;;;;"}
1
+ {"version":3,"file":"dom.mjs","sources":["../../../../../packages/utils/dom.ts"],"sourcesContent":["export interface VisibleDomRect {\n bottom: number\n height: number\n left: number\n right: number\n top: number\n width: number\n}\n\n/**\n * 获取元素可见信息\n * @param element\n */\nexport function getElementVisibleRect(element?: HTMLElement | null | undefined): VisibleDomRect {\n if (!element) {\n return {\n bottom: 0,\n height: 0,\n left: 0,\n right: 0,\n top: 0,\n width: 0,\n }\n }\n const rect = element.getBoundingClientRect()\n const viewHeight = Math.max(document.documentElement.clientHeight, window.innerHeight)\n\n const top = Math.max(rect.top, 0)\n const bottom = Math.min(rect.bottom, viewHeight)\n\n const viewWidth = Math.max(document.documentElement.clientWidth, window.innerWidth)\n\n const left = Math.max(rect.left, 0)\n const right = Math.min(rect.right, viewWidth)\n\n return {\n bottom,\n height: Math.max(0, bottom - top),\n left,\n right,\n top,\n width: Math.max(0, right - left),\n }\n}\n\nexport function getScrollbarWidth() {\n const scrollDiv = document.createElement('div')\n\n scrollDiv.style.visibility = 'hidden'\n scrollDiv.style.overflow = 'scroll'\n scrollDiv.style.position = 'absolute'\n scrollDiv.style.top = '-9999px'\n\n document.body.append(scrollDiv)\n\n const innerDiv = document.createElement('div')\n scrollDiv.append(innerDiv)\n\n const scrollbarWidth = scrollDiv.offsetWidth - innerDiv.offsetWidth\n\n scrollDiv.remove()\n return scrollbarWidth\n}\n\nexport function needsScrollbar() {\n const doc = document.documentElement\n const body = document.body\n\n // 检查 body 的 overflow-y 样式\n const overflowY = window.getComputedStyle(body).overflowY\n\n // 如果明确设置了需要滚动条的样式\n if (overflowY === 'scroll' || overflowY === 'auto') {\n return doc.scrollHeight > window.innerHeight\n }\n\n // 在其他情况下,根据 scrollHeight 和 innerHeight 比较判断\n return doc.scrollHeight > window.innerHeight\n}\n\nexport function triggerWindowResize(): void {\n // 创建一个新的 resize 事件\n const resizeEvent = new Event('resize')\n\n // 触发 window 的 resize 事件\n window.dispatchEvent(resizeEvent)\n}\n\nexport const on = ((): any => {\n return (\n element: Node,\n event: string,\n handler: EventListenerOrEventListenerObject,\n options?: boolean | AddEventListenerOptions,\n ): any => {\n if (element && event && handler) {\n element.addEventListener(event, handler, options)\n }\n }\n})()\n\nexport const off = ((): any => {\n return (\n element: Node,\n event: string,\n handler: EventListenerOrEventListenerObject,\n options?: boolean | AddEventListenerOptions,\n ): any => {\n if (element && event) {\n element.removeEventListener(event, handler, options)\n }\n }\n})()\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  export { omit, omitKeysAndUndefined, omitUndefined } from './omit.mjs';
2
2
  export { randomString } from './random.mjs';
3
- export { getElementVisibleRect, getScrollbarWidth, needsScrollbar, triggerWindowResize } from './dom.mjs';
3
+ export { getElementVisibleRect, getScrollbarWidth, needsScrollbar, off, on, triggerWindowResize } from './dom.mjs';
4
4
  export { hasOwn, is, isArray, isBoolean, isBrowser, isClient, isDate, isDef, isElement, isEmpty, isFunction, isHttpUrl, isMacOs, isMap, isNil, isNull, isNullAndUnDef, isNullOrUnDef, isNumber, isObject, isPromise, isRegExp, isServer, isString, isUnDef, isUrl, isWindow, isWindowsOs } from './validate.mjs';
5
5
  export { withInstall, withInstallDirective, withInstallFunction, withNoopInstall } from './install.mjs';
6
6
  export { NOOP } from './functions.mjs';
package/es/utils/dom.d.ts CHANGED
@@ -14,3 +14,5 @@ export declare function getElementVisibleRect(element?: HTMLElement | null | und
14
14
  export declare function getScrollbarWidth(): number;
15
15
  export declare function needsScrollbar(): boolean;
16
16
  export declare function triggerWindowResize(): void;
17
+ export declare const on: any;
18
+ export declare const off: any;
package/es/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "1.3.21";
1
+ export declare const version = "1.3.22";
package/es/version.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const version = "1.3.21";
1
+ const version = "1.3.22";
2
2
 
3
3
  export { version };
4
4
  //# sourceMappingURL=version.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.mjs","sources":["../../../packages/pro-design-vue/version.ts"],"sourcesContent":["export const version = '1.3.21'\n"],"names":[],"mappings":"AAAO,MAAM,OAAA,GAAU;;;;"}
1
+ {"version":3,"file":"version.mjs","sources":["../../../packages/pro-design-vue/version.ts"],"sourcesContent":["export const version = '1.3.22'\n"],"names":[],"mappings":"AAAO,MAAM,OAAA,GAAU;;;;"}
@@ -17,6 +17,7 @@ interface ProConfigProviderProps extends Omit<ConfigProviderProps, 'form'> {
17
17
  cardBordered?: Bordered;
18
18
  childrenColumnName?: string;
19
19
  expandRowByClick?: boolean;
20
+ selectRowByClick?: boolean;
20
21
  rowKey?: string;
21
22
  size?: DensitySize;
22
23
  expandIconType?: ExpandIconType;
@@ -201,6 +201,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
201
201
  [x: string]: boolean;
202
202
  }>;
203
203
  tableContext: import("../context/TableContext").TableContextProps;
204
+ isCurrentEditRow: import("vue").ComputedRef<boolean | undefined>;
204
205
  mergedRowHeights: import("vue").ComputedRef<Record<import("pro-design-vue").ProTableKey, number>>;
205
206
  handleCellBlur: () => void;
206
207
  handleCellHover: (rowKey: import("pro-design-vue").ProTableKey, columnKey: import("pro-design-vue").ProTableKey, draggingRowKey: import("pro-design-vue").ProTableKey) => void;
@@ -226,18 +227,17 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
226
227
  resizeObserver: import("resize-observer-polyfill").default;
227
228
  calMaxHeight: () => void;
228
229
  bodyRow: import("vue").Ref<any, any>;
230
+ editCellKeys: import("vue").Ref<string[], string[]>;
231
+ isRowEdit: import("vue").ComputedRef<boolean>;
232
+ editRow: import("vue").ComputedRef<Record<string, any> | undefined>;
233
+ mergedEditableKeys: import("vue").Ref<import("pro-design-vue").ProTableKey[] | undefined, import("pro-design-vue").ProTableKey[] | undefined>;
234
+ openEditor: (key: string | string[]) => void;
235
+ closeEditor: (key: string) => void;
229
236
  hoverRowKey: import("vue").Ref<import("pro-design-vue").ProTableKey, import("pro-design-vue").ProTableKey>;
230
237
  hoverColumnKey: import("vue").Ref<import("pro-design-vue").ProTableKey, import("pro-design-vue").ProTableKey>;
231
238
  xVirtual: import("vue").ComputedRef<boolean>;
232
239
  getPopupContainer: () => HTMLDivElement;
233
- editCellKeys: import("vue").Ref<string[], string[]>;
234
- closeEditor: (key?: string | string[]) => void;
235
- openEditor: (key: string | string[], values?: Record<string, any>) => void;
236
240
  mergedTooltipOpen: import("vue").ComputedRef<boolean>;
237
- onCellMousedown: (mouseEvent: import("../../hooks/RangeInterface.ts").CustomMouseEvent, cellPosition: import("../../hooks/RangeInterface.ts").RangeCell) => void;
238
- onCellKeydown: (event: KeyboardEvent, payload: import("../../hooks/RangeInterface.ts").InnerKeydownPayload) => void;
239
- onCellMousemove: (mouseEvent: import("../../hooks/RangeInterface.ts").CustomMouseEvent, cellPosition: import("../../hooks/RangeInterface.ts").RangeCell) => void;
240
- onCellClick: (mouseEvent: MouseEvent, cellPosition: import("../../hooks/RangeInterface.ts").RangeCell) => void;
241
241
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
242
242
  prefixCls: PropType<string>;
243
243
  isExpandRow: PropType<boolean>;
@@ -308,15 +308,15 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
308
308
  expanded: boolean;
309
309
  expandable: boolean;
310
310
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
311
- BodyCell: import("vue").FunctionalComponent<Partial<import("vue").ExtractPropTypes<{
311
+ BodyCell: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
312
312
  prefixCls: PropType<string>;
313
313
  rowIndex: {
314
314
  type: PropType<number>;
315
- required: boolean;
315
+ required: true;
316
316
  };
317
317
  flattenRowIndex: {
318
318
  type: NumberConstructor;
319
- required: boolean;
319
+ required: true;
320
320
  };
321
321
  rowKey: {
322
322
  type: (StringConstructor | NumberConstructor)[];
@@ -341,18 +341,225 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
341
341
  resizeObserver: {
342
342
  type: PropType<ResizeObserver>;
343
343
  };
344
+ editRow: {
345
+ type: PropType<any>;
346
+ };
344
347
  calMaxHeight: FunctionConstructor;
348
+ editCellKeys: PropType<string[]>;
349
+ editableKeys: PropType<import("pro-design-vue").ProTableKey[]>;
350
+ isRowEdit: PropType<boolean>;
345
351
  tooltipOpen: PropType<boolean>;
346
352
  getPopupContainer: PropType<() => HTMLElement>;
353
+ onOpenEditor: FunctionConstructor;
354
+ onCloseEditor: FunctionConstructor;
347
355
  onCellLeave: FunctionConstructor;
356
+ onMouseenter: FunctionConstructor;
357
+ }>, {
358
+ props: import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
359
+ prefixCls: PropType<string>;
360
+ rowIndex: {
361
+ type: PropType<number>;
362
+ required: true;
363
+ };
364
+ flattenRowIndex: {
365
+ type: NumberConstructor;
366
+ required: true;
367
+ };
368
+ rowKey: {
369
+ type: (StringConstructor | NumberConstructor)[];
370
+ };
371
+ column: {
372
+ type: PropType<import("../interface").FinallyColumnType>;
373
+ default: () => {};
374
+ };
375
+ item: {
376
+ type: PropType<any>;
377
+ default: () => {};
378
+ };
379
+ wrapText: {
380
+ type: PropType<boolean>;
381
+ default: boolean;
382
+ };
383
+ type: {
384
+ type: PropType<import("../interface").RowType>;
385
+ };
386
+ height: PropType<number>;
387
+ hasAppendNode: PropType<boolean>;
388
+ resizeObserver: {
389
+ type: PropType<ResizeObserver>;
390
+ };
391
+ editRow: {
392
+ type: PropType<any>;
393
+ };
394
+ calMaxHeight: FunctionConstructor;
395
+ editCellKeys: PropType<string[]>;
396
+ editableKeys: PropType<import("pro-design-vue").ProTableKey[]>;
397
+ isRowEdit: PropType<boolean>;
398
+ tooltipOpen: PropType<boolean>;
399
+ getPopupContainer: PropType<() => HTMLElement>;
400
+ onOpenEditor: FunctionConstructor;
401
+ onCloseEditor: FunctionConstructor;
402
+ onCellLeave: FunctionConstructor;
403
+ onMouseenter: FunctionConstructor;
404
+ }>> & Readonly<{
405
+ onMouseenter?: ((...args: any[]) => any) | undefined;
406
+ onCellLeave?: ((...args: any[]) => any) | undefined;
407
+ }> & {}>;
408
+ key: import("vue").ComputedRef<string>;
409
+ isEditing: import("vue").ComputedRef<boolean | undefined>;
410
+ editable: import("vue").ComputedRef<boolean>;
411
+ onCellEvent: (e: MouseEvent, trigger: import("../interface").EditableTrigger) => void;
412
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("mouseenter" | "cellLeave")[], "mouseenter" | "cellLeave", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
413
+ prefixCls: PropType<string>;
414
+ rowIndex: {
415
+ type: PropType<number>;
416
+ required: true;
417
+ };
418
+ flattenRowIndex: {
419
+ type: NumberConstructor;
420
+ required: true;
421
+ };
422
+ rowKey: {
423
+ type: (StringConstructor | NumberConstructor)[];
424
+ };
425
+ column: {
426
+ type: PropType<import("../interface").FinallyColumnType>;
427
+ default: () => {};
428
+ };
429
+ item: {
430
+ type: PropType<any>;
431
+ default: () => {};
432
+ };
433
+ wrapText: {
434
+ type: PropType<boolean>;
435
+ default: boolean;
436
+ };
437
+ type: {
438
+ type: PropType<import("../interface").RowType>;
439
+ };
440
+ height: PropType<number>;
441
+ hasAppendNode: PropType<boolean>;
442
+ resizeObserver: {
443
+ type: PropType<ResizeObserver>;
444
+ };
445
+ editRow: {
446
+ type: PropType<any>;
447
+ };
448
+ calMaxHeight: FunctionConstructor;
348
449
  editCellKeys: PropType<string[]>;
450
+ editableKeys: PropType<import("pro-design-vue").ProTableKey[]>;
451
+ isRowEdit: PropType<boolean>;
452
+ tooltipOpen: PropType<boolean>;
453
+ getPopupContainer: PropType<() => HTMLElement>;
349
454
  onOpenEditor: FunctionConstructor;
350
455
  onCloseEditor: FunctionConstructor;
351
- onMousedown: PropType<(e: any, cellPosition: import("../../hooks/RangeInterface.ts").RangeCell) => void>;
352
- onMousemove: PropType<(e: any, cellPosition: import("../../hooks/RangeInterface.ts").RangeCell) => void>;
353
- onKeydown: PropType<(e: KeyboardEvent, payload: import("../../hooks/RangeInterface.ts").InnerKeydownPayload) => void>;
354
- onClick: PropType<(e: MouseEvent, cellPosition: import("../../hooks/RangeInterface.ts").RangeCell) => void>;
355
- }>>, {}, any, {}>;
456
+ onCellLeave: FunctionConstructor;
457
+ onMouseenter: FunctionConstructor;
458
+ }>> & Readonly<{
459
+ onMouseenter?: ((...args: any[]) => any) | undefined;
460
+ onCellLeave?: ((...args: any[]) => any) | undefined;
461
+ }>, {
462
+ item: any;
463
+ wrapText: boolean;
464
+ column: import("../interface").FinallyColumnType<import("../interface").DefaultRecordType>;
465
+ }, {}, {
466
+ BodyTextCell: import("vue").FunctionalComponent<Partial<import("vue").ExtractPropTypes<{
467
+ prefixCls: PropType<string>;
468
+ rowIndex: {
469
+ type: PropType<number>;
470
+ required: boolean;
471
+ };
472
+ flattenRowIndex: {
473
+ type: NumberConstructor;
474
+ required: boolean;
475
+ };
476
+ rowKey: {
477
+ type: (StringConstructor | NumberConstructor)[];
478
+ };
479
+ column: {
480
+ type: PropType<import("../interface").FinallyColumnType>;
481
+ default: () => {};
482
+ };
483
+ item: {
484
+ type: PropType<any>;
485
+ default: () => {};
486
+ };
487
+ wrapText: {
488
+ type: PropType<boolean>;
489
+ default: boolean;
490
+ };
491
+ type: {
492
+ type: PropType<import("../interface").RowType>;
493
+ };
494
+ height: PropType<number>;
495
+ hasAppendNode: PropType<boolean>;
496
+ resizeObserver: {
497
+ type: PropType<ResizeObserver>;
498
+ };
499
+ calMaxHeight: FunctionConstructor;
500
+ tooltipOpen: PropType<boolean>;
501
+ getPopupContainer: PropType<() => HTMLElement>;
502
+ onCellLeave: FunctionConstructor;
503
+ onClick: PropType<(e: MouseEvent, cellPosition: import("../../hooks/RangeInterface.ts").RangeCell) => void>;
504
+ }>>, {}, any, {}>;
505
+ BodyEditCell: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
506
+ prefixCls: PropType<string>;
507
+ rowIndex: {
508
+ type: PropType<number>;
509
+ required: true;
510
+ };
511
+ flattenRowIndex: {
512
+ type: NumberConstructor;
513
+ required: true;
514
+ };
515
+ rowKey: {
516
+ type: PropType<import("pro-design-vue").ProTableKey>;
517
+ };
518
+ column: {
519
+ type: PropType<import("../interface").FinallyColumnType>;
520
+ default: () => {};
521
+ };
522
+ item: {
523
+ type: PropType<any>;
524
+ default: () => {};
525
+ };
526
+ isRowEdit: PropType<boolean>;
527
+ editRow: {
528
+ type: PropType<any>;
529
+ };
530
+ }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("keydown" | "closeEditor")[], "keydown" | "closeEditor", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
531
+ prefixCls: PropType<string>;
532
+ rowIndex: {
533
+ type: PropType<number>;
534
+ required: true;
535
+ };
536
+ flattenRowIndex: {
537
+ type: NumberConstructor;
538
+ required: true;
539
+ };
540
+ rowKey: {
541
+ type: PropType<import("pro-design-vue").ProTableKey>;
542
+ };
543
+ column: {
544
+ type: PropType<import("../interface").FinallyColumnType>;
545
+ default: () => {};
546
+ };
547
+ item: {
548
+ type: PropType<any>;
549
+ default: () => {};
550
+ };
551
+ isRowEdit: PropType<boolean>;
552
+ editRow: {
553
+ type: PropType<any>;
554
+ };
555
+ }>> & Readonly<{
556
+ onKeydown?: ((...args: any[]) => any) | undefined;
557
+ onCloseEditor?: ((...args: any[]) => any) | undefined;
558
+ }>, {
559
+ item: any;
560
+ column: import("../interface").FinallyColumnType<import("../interface").DefaultRecordType>;
561
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
562
+ }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
356
563
  ExpandedRow: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
357
564
  prefixCls: StringConstructor;
358
565
  rowKey: {
@@ -2098,6 +2305,45 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
2098
2305
  MenuOutlined: import("@ant-design/icons-vue/lib/icons/MenuOutlined").MenuOutlinedIconType;
2099
2306
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
2100
2307
  RenderSlot: import("vue").FunctionalComponent<any, {}, any, {}>;
2308
+ BodyTextCell: import("vue").FunctionalComponent<Partial<import("vue").ExtractPropTypes<{
2309
+ prefixCls: PropType<string>;
2310
+ rowIndex: {
2311
+ type: PropType<number>;
2312
+ required: boolean;
2313
+ };
2314
+ flattenRowIndex: {
2315
+ type: NumberConstructor;
2316
+ required: boolean;
2317
+ };
2318
+ rowKey: {
2319
+ type: (StringConstructor | NumberConstructor)[];
2320
+ };
2321
+ column: {
2322
+ type: PropType<import("../interface").FinallyColumnType>;
2323
+ default: () => {};
2324
+ };
2325
+ item: {
2326
+ type: PropType<any>;
2327
+ default: () => {};
2328
+ };
2329
+ wrapText: {
2330
+ type: PropType<boolean>;
2331
+ default: boolean;
2332
+ };
2333
+ type: {
2334
+ type: PropType<import("../interface").RowType>;
2335
+ };
2336
+ height: PropType<number>;
2337
+ hasAppendNode: PropType<boolean>;
2338
+ resizeObserver: {
2339
+ type: PropType<ResizeObserver>;
2340
+ };
2341
+ calMaxHeight: FunctionConstructor;
2342
+ tooltipOpen: PropType<boolean>;
2343
+ getPopupContainer: PropType<() => HTMLElement>;
2344
+ onCellLeave: FunctionConstructor;
2345
+ onClick: PropType<(e: MouseEvent, cellPosition: import("../../hooks/RangeInterface.ts").RangeCell) => void>;
2346
+ }>>, {}, any, {}>;
2101
2347
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
2102
2348
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
2103
2349
  Empty: {