pro-design-vue 1.3.20 → 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 (145) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.full.js +1203 -1588
  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 +1204 -1589
  8. package/es/components/config-provider/src/typing.d.ts +3 -1
  9. package/es/components/table/src/components/Body/Body.vue.d.ts +270 -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/BodyExtraCell.vue.d.ts +6 -1
  13. package/es/components/table/src/components/Body/BodyRow.vue.d.ts +270 -15
  14. package/es/components/table/src/components/Body/BodyRows.vue.d.ts +270 -15
  15. package/es/components/table/src/components/Body/{BodyCell.d.ts → BodyTextCell.d.ts} +1 -7
  16. package/es/components/table/src/components/ExpandIcon.vue.d.ts +3 -0
  17. package/es/components/table/src/components/InteralTable.vue.d.ts +332 -19
  18. package/es/components/table/src/components/Table.d.ts +60 -0
  19. package/es/components/table/src/components/context/TableContext.d.ts +6 -1
  20. package/es/components/table/src/components/interface.d.ts +308 -23
  21. package/es/components/table/src/hooks/useCellProps.d.ts +5 -1
  22. package/es/components/table/src/hooks/useEdit.d.ts +24 -7
  23. package/es/components/table/src/utils/form-model.d.ts +25 -0
  24. package/es/components/table/src/utils/util.d.ts +1 -0
  25. package/es/index.d.ts +291 -5
  26. package/es/packages/components/table/src/components/Body/BodyCell.vue.mjs +35 -0
  27. package/es/packages/components/table/src/components/Body/BodyCell.vue.mjs.map +1 -0
  28. package/es/packages/components/table/src/components/Body/BodyCell.vue2.mjs +129 -0
  29. package/es/packages/components/table/src/components/Body/BodyCell.vue2.mjs.map +1 -0
  30. package/es/packages/components/table/src/components/Body/BodyEditCell.mjs +256 -0
  31. package/es/packages/components/table/src/components/Body/BodyEditCell.mjs.map +1 -0
  32. package/es/packages/components/table/src/components/Body/BodyExtraCell.vue.mjs +2 -1
  33. package/es/packages/components/table/src/components/Body/BodyExtraCell.vue.mjs.map +1 -1
  34. package/es/packages/components/table/src/components/Body/BodyExtraCell.vue2.mjs +1 -0
  35. package/es/packages/components/table/src/components/Body/BodyExtraCell.vue2.mjs.map +1 -1
  36. package/es/packages/components/table/src/components/Body/BodyRow.vue.mjs +66 -9
  37. package/es/packages/components/table/src/components/Body/BodyRow.vue.mjs.map +1 -1
  38. package/es/packages/components/table/src/components/Body/BodyRow.vue2.mjs +26 -18
  39. package/es/packages/components/table/src/components/Body/BodyRow.vue2.mjs.map +1 -1
  40. package/es/packages/components/table/src/components/Body/{BodyCell.mjs → BodyTextCell.mjs} +25 -155
  41. package/es/packages/components/table/src/components/Body/BodyTextCell.mjs.map +1 -0
  42. package/es/packages/components/table/src/components/ExpandIcon.vue.mjs.map +1 -1
  43. package/es/packages/components/table/src/components/ExpandIcon.vue2.mjs +4 -2
  44. package/es/packages/components/table/src/components/ExpandIcon.vue2.mjs.map +1 -1
  45. package/es/packages/components/table/src/components/InteralTable.vue.mjs +24 -25
  46. package/es/packages/components/table/src/components/InteralTable.vue.mjs.map +1 -1
  47. package/es/packages/components/table/src/components/InteralTable.vue2.mjs +43 -97
  48. package/es/packages/components/table/src/components/InteralTable.vue2.mjs.map +1 -1
  49. package/es/packages/components/table/src/components/Table.mjs +24 -20
  50. package/es/packages/components/table/src/components/Table.mjs.map +1 -1
  51. package/es/packages/components/table/src/components/context/TableContext.mjs.map +1 -1
  52. package/es/packages/components/table/src/components/interface.mjs +28 -0
  53. package/es/packages/components/table/src/components/interface.mjs.map +1 -1
  54. package/es/packages/components/table/src/hooks/useCellProps.mjs +8 -0
  55. package/es/packages/components/table/src/hooks/useCellProps.mjs.map +1 -1
  56. package/es/packages/components/table/src/hooks/useEdit.mjs +293 -18
  57. package/es/packages/components/table/src/hooks/useEdit.mjs.map +1 -1
  58. package/es/packages/components/table/src/utils/form-model.mjs +98 -0
  59. package/es/packages/components/table/src/utils/form-model.mjs.map +1 -0
  60. package/es/packages/components/table/src/utils/util.mjs +4 -1
  61. package/es/packages/components/table/src/utils/util.mjs.map +1 -1
  62. package/es/packages/utils/dom.mjs +15 -1
  63. package/es/packages/utils/dom.mjs.map +1 -1
  64. package/es/packages/utils/index.mjs +1 -1
  65. package/es/utils/dom.d.ts +2 -0
  66. package/es/version.d.ts +1 -1
  67. package/es/version.mjs +1 -1
  68. package/es/version.mjs.map +1 -1
  69. package/lib/components/config-provider/src/typing.d.ts +3 -1
  70. package/lib/components/table/src/components/Body/Body.vue.d.ts +270 -15
  71. package/lib/components/table/src/components/Body/BodyCell.vue.d.ts +255 -0
  72. package/lib/components/table/src/components/Body/BodyEditCell.d.ts +60 -0
  73. package/lib/components/table/src/components/Body/BodyExtraCell.vue.d.ts +6 -1
  74. package/lib/components/table/src/components/Body/BodyRow.vue.d.ts +270 -15
  75. package/lib/components/table/src/components/Body/BodyRows.vue.d.ts +270 -15
  76. package/lib/components/table/src/components/Body/{BodyCell.d.ts → BodyTextCell.d.ts} +1 -7
  77. package/lib/components/table/src/components/ExpandIcon.vue.d.ts +3 -0
  78. package/lib/components/table/src/components/InteralTable.vue.d.ts +332 -19
  79. package/lib/components/table/src/components/Table.d.ts +60 -0
  80. package/lib/components/table/src/components/context/TableContext.d.ts +6 -1
  81. package/lib/components/table/src/components/interface.d.ts +308 -23
  82. package/lib/components/table/src/hooks/useCellProps.d.ts +5 -1
  83. package/lib/components/table/src/hooks/useEdit.d.ts +24 -7
  84. package/lib/components/table/src/utils/form-model.d.ts +25 -0
  85. package/lib/components/table/src/utils/util.d.ts +1 -0
  86. package/lib/index.d.ts +291 -5
  87. package/lib/packages/components/table/src/components/Body/BodyCell.vue.js +39 -0
  88. package/lib/packages/components/table/src/components/Body/BodyCell.vue.js.map +1 -0
  89. package/lib/packages/components/table/src/components/Body/BodyCell.vue2.js +133 -0
  90. package/lib/packages/components/table/src/components/Body/BodyCell.vue2.js.map +1 -0
  91. package/lib/packages/components/table/src/components/Body/BodyEditCell.js +260 -0
  92. package/lib/packages/components/table/src/components/Body/BodyEditCell.js.map +1 -0
  93. package/lib/packages/components/table/src/components/Body/BodyExtraCell.vue.js +2 -1
  94. package/lib/packages/components/table/src/components/Body/BodyExtraCell.vue.js.map +1 -1
  95. package/lib/packages/components/table/src/components/Body/BodyExtraCell.vue2.js +1 -0
  96. package/lib/packages/components/table/src/components/Body/BodyExtraCell.vue2.js.map +1 -1
  97. package/lib/packages/components/table/src/components/Body/BodyRow.vue.js +66 -9
  98. package/lib/packages/components/table/src/components/Body/BodyRow.vue.js.map +1 -1
  99. package/lib/packages/components/table/src/components/Body/BodyRow.vue2.js +24 -16
  100. package/lib/packages/components/table/src/components/Body/BodyRow.vue2.js.map +1 -1
  101. package/lib/packages/components/table/src/components/Body/{BodyCell.js → BodyTextCell.js} +24 -154
  102. package/lib/packages/components/table/src/components/Body/BodyTextCell.js.map +1 -0
  103. package/lib/packages/components/table/src/components/ExpandIcon.vue.js.map +1 -1
  104. package/lib/packages/components/table/src/components/ExpandIcon.vue2.js +4 -2
  105. package/lib/packages/components/table/src/components/ExpandIcon.vue2.js.map +1 -1
  106. package/lib/packages/components/table/src/components/InteralTable.vue.js +24 -25
  107. package/lib/packages/components/table/src/components/InteralTable.vue.js.map +1 -1
  108. package/lib/packages/components/table/src/components/InteralTable.vue2.js +43 -97
  109. package/lib/packages/components/table/src/components/InteralTable.vue2.js.map +1 -1
  110. package/lib/packages/components/table/src/components/Table.js +24 -20
  111. package/lib/packages/components/table/src/components/Table.js.map +1 -1
  112. package/lib/packages/components/table/src/components/context/TableContext.js.map +1 -1
  113. package/lib/packages/components/table/src/components/interface.js +28 -0
  114. package/lib/packages/components/table/src/components/interface.js.map +1 -1
  115. package/lib/packages/components/table/src/hooks/useCellProps.js +8 -0
  116. package/lib/packages/components/table/src/hooks/useCellProps.js.map +1 -1
  117. package/lib/packages/components/table/src/hooks/useEdit.js +292 -17
  118. package/lib/packages/components/table/src/hooks/useEdit.js.map +1 -1
  119. package/lib/packages/components/table/src/utils/form-model.js +102 -0
  120. package/lib/packages/components/table/src/utils/form-model.js.map +1 -0
  121. package/lib/packages/components/table/src/utils/util.js +4 -0
  122. package/lib/packages/components/table/src/utils/util.js.map +1 -1
  123. package/lib/packages/utils/dom.js +16 -0
  124. package/lib/packages/utils/dom.js.map +1 -1
  125. package/lib/packages/utils/index.js +2 -0
  126. package/lib/packages/utils/index.js.map +1 -1
  127. package/lib/utils/dom.d.ts +2 -0
  128. package/lib/version.d.ts +1 -1
  129. package/lib/version.js +1 -1
  130. package/lib/version.js.map +1 -1
  131. package/package.json +1 -1
  132. package/theme-chalk/index.css +1 -1
  133. package/theme-chalk/src/table/table.less +78 -25
  134. package/es/components/table/src/components/Body/EditInput.vue.d.ts +0 -102
  135. package/es/packages/components/table/src/components/Body/BodyCell.mjs.map +0 -1
  136. package/es/packages/components/table/src/components/Body/EditInput.vue.mjs +0 -48
  137. package/es/packages/components/table/src/components/Body/EditInput.vue.mjs.map +0 -1
  138. package/es/packages/components/table/src/components/Body/EditInput.vue2.mjs +0 -151
  139. package/es/packages/components/table/src/components/Body/EditInput.vue2.mjs.map +0 -1
  140. package/lib/components/table/src/components/Body/EditInput.vue.d.ts +0 -102
  141. package/lib/packages/components/table/src/components/Body/BodyCell.js.map +0 -1
  142. package/lib/packages/components/table/src/components/Body/EditInput.vue.js +0 -52
  143. package/lib/packages/components/table/src/components/Body/EditInput.vue.js.map +0 -1
  144. package/lib/packages/components/table/src/components/Body/EditInput.vue2.js +0 -155
  145. 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":";;AAYO,SAAS,EAAA,CAAG,KAAc,IAAA,EAAc;AAC7C,EAAA,OAAO,QAAA,CAAS,IAAA,CAAK,GAAG,CAAA,KAAM,WAAW,IAAI,CAAA,CAAA,CAAA;AAC/C;AAEO,SAAS,WAAW,GAAA,EAA+B;AACxD,EAAA,OAAO,OAAO,GAAA,KAAQ,UAAA;AACxB;AAEO,SAAS,QAAQ,GAAA,EAA6B;AACnD,EAAA,OAAO,GAAA,IAAO,KAAA,CAAM,OAAA,CAAQ,GAAG,CAAA;AACjC;AAEO,SAAS,SAAS,GAAA,EAA6B;AACpD,EAAA,OAAO,EAAA,CAAG,KAAK,QAAQ,CAAA;AACzB;AAIO,SAAS,SAAS,GAAA,EAAmC;AAC1D,EAAA,OAAO,GAAA,KAAQ,IAAA,IAAQ,EAAA,CAAG,GAAA,EAAK,QAAQ,CAAA;AACzC;AAcO,MAAM,YAAA,GAAe,CAAC,GAAA,EAAuB,KAAA,KAAoC;AACtF,EAAA,IAAI,GAAA,EAAK;AACP,IAAA,OAAO,KAAA,CAAM,QAAQ,GAAG,CAAA,GAAI,IAAI,IAAA,CAAK,GAAG,CAAA,GAAI,GAAA,CAAI,QAAA,EAAS;AAAA,EAC3D;AACA,EAAA,OAAO,GAAG,KAAK,CAAA,CAAA;AACjB;AAEO,SAAS,YAAA,CAAa,OAAe,GAAA,EAAc;AACxD,EAAA,OAAO,MAAM,CAAA,EAAG,GAAG,IAAI,KAAK,CAAA,CAAA,GAAK,GAAG,KAAK,CAAA,CAAA;AAC3C;AAsBO,SAAS,cAAc,GAAA,EAAgC;AAC5D,EAAA,KAAA,MAAW,GAAA,IAAO,GAAA,EAAK,MAAA,CAAO,SAAA,CAAU,cAAA,CAAe,IAAA,CAAK,GAAA,EAAK,GAAG,CAAA,IAAK,OAAO,GAAA,CAAI,GAAG,CAAA;AACzF;AAEA,SAAS,QAAW,GAAA,EAA4B;AAC9C,EAAA,IAAI,GAAA,KAAQ,MAAA,IAAa,GAAA,KAAQ,IAAA,EAAM;AACrC,IAAA,OAAO,EAAC;AAAA,EACV;AACA,EAAA,OAAQ,MAAM,OAAA,CAAQ,GAAG,CAAA,GAAI,GAAA,GAAM,CAAC,GAAG,CAAA;AACzC;AAEO,SAAS,YAAA,CACd,QACA,IAAA,EACkB;AAElB,EAAA,IAAI,CAAC,IAAA,IAAQ,OAAO,IAAA,KAAS,QAAA,EAAU;AACrC,IAAA,OAAO,MAAA;AAAA,EACT;AAEA,EAAA,MAAM,QAAA,GAAW,QAAQ,IAAI,CAAA;AAE7B,EAAA,IAAI,OAAA,GAAkC,MAAA;AAEtC,EAAA,KAAA,IAAS,IAAI,CAAA,EAAG,CAAA,GAAI,QAAA,CAAS,MAAA,EAAQ,KAAK,CAAA,EAAG;AAC3C,IAAA,IAAI,CAAC,OAAA,EAAS;AACZ,MAAA,OAAO,IAAA;AAAA,IACT;AAEA,IAAA,MAAM,IAAA,GAAO,SAAS,CAAC,CAAA;AACvB,IAAA,OAAA,GAAU,QAAQ,IAAI,CAAA;AAAA,EACxB;AAEA,EAAA,OAAO,OAAA;AACT;AAQO,SAAS,eAAe,OAAA,EAA0B;AACvD,EAAA,IAAI,MAAM,OAAA,CAAQ,OAAO,CAAA,IAAK,OAAA,CAAQ,WAAW,CAAA,EAAG;AAClD,IAAA,OAAA,GAAU,QAAQ,CAAC,CAAA;AAAA,EACrB;AACA,EAAA,OAAO,WAAW,OAAA,CAAQ,OAAO,CAAA,IAAK,OAAO,QAAQ,IAAA,KAAS,QAAA;AAChE;AAEO,MAAM,cAAA,GAAiB,CAAC,OAAA,EAAiC,KAAA,KAAoB;AAClF,EAAA,MAAM,MAAM,EAAC;AACb,EAAA,MAAM,aAAA,GAAgB,eAAA;AACtB,EAAA,MAAM,iBAAA,GAAoB,OAAA;AAC1B,EAAA,IAAI,OAAO,OAAA,KAAY,QAAA,EAAU,OAAO,OAAA;AACxC,EAAA,OAAA,CAAQ,KAAA,CAAM,aAAa,CAAA,CAAE,OAAA,CAAQ,SAAU,IAAA,EAAM;AACnD,IAAA,IAAI,IAAA,EAAM;AACR,MAAA,MAAM,GAAA,GAAM,IAAA,CAAK,KAAA,CAAM,iBAAiB,CAAA;AACxC,MAAA,IAAI,GAAA,CAAI,SAAS,CAAA,EAAG;AAClB,QAAA,MAAM,CAAA,GAAI,KAAA,GAAQ,QAAA,CAAS,GAAA,CAAI,CAAC,CAAA,CAAG,IAAA,EAAM,CAAA,GAAI,GAAA,CAAI,CAAC,CAAA,CAAG,IAAA,EAAK;AAC1D,QAAA,GAAA,CAAI,CAAC,CAAA,GAAI,GAAA,CAAI,CAAC,EAAG,IAAA,EAAK;AAAA,MACxB;AAAA,IACF;AAAA,EACF,CAAC,CAAA;AACD,EAAA,OAAO,GAAA;AACT;AAEO,SAAS,WAAW,EAAA,EAGzB;AACA,EAAA,IAAI,QAAA;AACJ,EAAA,IAAI,QAAA,GAAW,KAAA;AACf,EAAA,OAAO;AAAA,IACL,OAAA,EAAS,IAAI,OAAA,CAAQ,CAAC,SAAS,MAAA,KAAW;AACxC,MAAA,QAAA,GAAW,MAAA;AACX,MAAA,OAAA,CAAQ,OAAA,EAAQ,CAAE,IAAA,CAAK,MAAM;AAC3B,QAAA,OAAA,CAAQ,EAAE,CAAA;AAAA,MACZ,CAAC,CAAA;AAAA,IACH,CAAC,CAAA,CACE,IAAA,CAAK,MAAM;AACV,MAAA,IAAI,CAAC,QAAA,EAAU;AACb,QAAA,EAAA,EAAG;AAAA,MACL;AAAA,IACF,CAAC,CAAA,CACA,KAAA,CAAM,MAAM;AAAA,IAAC,CAAC,CAAA;AAAA,IACjB,QAAQ,MAAM;AACZ,MAAA,QAAA,GAAW,IAAA;AACX,MAAA,QAAA,IAAY,QAAA,EAAS;AAAA,IACvB;AAAA,GACF;AACF;AAEO,SAAS,MAAA,CAAO,MAAa,KAAA,EAAY;AAC9C,EAAA,IAAI,CAAC,IAAA,EAAM,OAAO,EAAC;AACnB,EAAA,MAAM,KAAA,GAAQ,KAAK,KAAA,EAAM;AACzB,EAAA,MAAM,KAAA,GAAQ,KAAA,CAAM,OAAA,CAAQ,KAAK,CAAA;AACjC,EAAA,IAAI,SAAS,CAAA,EAAG;AACd,IAAA,KAAA,CAAM,MAAA,CAAO,OAAO,CAAC,CAAA;AAAA,EACvB;AACA,EAAA,OAAO,KAAA;AACT;AAEO,SAAS,MAAA,CAAO,MAAa,KAAA,EAAY;AAC9C,EAAA,MAAM,KAAA,GAAA,CAAS,IAAA,IAAQ,EAAC,EAAG,KAAA,EAAM;AACjC,EAAA,IAAI,KAAA,CAAM,OAAA,CAAQ,KAAK,CAAA,KAAM,EAAA,EAAI;AAC/B,IAAA,KAAA,CAAM,KAAK,KAAK,CAAA;AAAA,EAClB;AACA,EAAA,OAAO,KAAA;AACT;AAGA,MAAM,OAAA,GAAU,CAAC,KAAA,KAAwB;AACvC,EAAA,OAAO,KAAA,KAAU,MAAA,IAAa,KAAA,KAAU,IAAA,IAAQ,KAAA,KAAU,EAAA;AAC5D;AAOA,MAAM,eAAA,GAAkB,CACtB,QAAA,EACA,WAAA,GAAc,IAAA,KACI;AAClB,EAAA,MAAM,SAAS,OAAA,CAAQ,QAAQ,CAAA,GAAI,QAAA,GAAW,CAAC,QAAQ,CAAA;AACvD,EAAA,MAAM,SAAwB,EAAC;AAC/B,EAAA,MAAA,CAAO,OAAA,CAAQ,CAAC,KAAA,KAAe;AAC7B,IAAA,IAAI,OAAA,CAAQ,KAAK,CAAA,EAAG;AAClB,MAAA,MAAA,CAAO,IAAA,CAAK,GAAG,eAAA,CAAgB,KAAA,EAAO,WAAW,CAAC,CAAA;AAAA,IACpD,CAAA,MAAA,IAAW,KAAA,IAAS,KAAA,CAAM,IAAA,KAAS,QAAA,EAAU;AAC3C,MAAA,MAAA,CAAO,KAAK,GAAG,eAAA,CAAgB,KAAA,CAAM,QAAA,EAAU,WAAW,CAAC,CAAA;AAAA,IAC7D,CAAA,MAAA,IAAW,KAAA,IAAS,OAAA,CAAQ,KAAK,CAAA,EAAG;AAClC,MAAA,IAAI,WAAA,IAAe,CAAC,cAAA,CAAe,KAAK,CAAA,EAAG;AACzC,QAAA,MAAA,CAAO,KAAK,KAAK,CAAA;AAAA,MACnB,CAAA,MAAA,IAAW,CAAC,WAAA,EAAa;AACvB,QAAA,MAAA,CAAO,KAAK,KAAK,CAAA;AAAA,MACnB;AAAA,IACF,CAAA,MAAA,IAAW,OAAA,CAAQ,KAAK,CAAA,EAAG;AACzB,MAAA,MAAA,CAAO,KAAK,KAAK,CAAA;AAAA,IACnB;AAAA,EACF,CAAC,CAAA;AACD,EAAA,OAAO,MAAA;AACT,CAAA;AACO,SAAS,wBAAA,CACd,QAAA,GAAkB,EAAC,EACM;AACzB,EAAA,MAAM,eAAA,GAAkB,gBAAgB,QAAQ,CAAA;AAChD,EAAA,MAAM,UAAiB,EAAC;AACxB,EAAA,eAAA,CAAgB,OAAA,CAAQ,CAAC,OAAA,KAAiB;AAjO5C,IAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA;AAkOI,IAAA,IAAI,CAAC,OAAA,EAAS;AACZ,MAAA;AAAA,IACF;AACA,IAAA,MAAM,MAAM,OAAA,CAAQ,GAAA;AACpB,IAAA,MAAM,KAAA,GAAA,CAAA,CAAQ,EAAA,GAAA,OAAA,CAAQ,KAAA,KAAR,IAAA,GAAA,MAAA,GAAA,EAAA,CAAe,UAAS,EAAC;AACvC,IAAA,MAAM,GAAA,GAAA,CAAA,CAAM,EAAA,GAAA,OAAA,CAAQ,KAAA,KAAR,IAAA,GAAA,MAAA,GAAA,EAAA,CAAe,KAAA,KAAS,EAAA;AACpC,IAAA,MAAM,KAAA,GAAQ,OAAA,CAAQ,KAAA,IAAS,EAAC;AAChC,IAAA,KAAA,MAAW,CAAC,CAAA,EAAG,CAAC,KAAK,MAAA,CAAO,OAAA,CAAQ,KAAK,CAAA,EAAG;AAC1C,MAAA,KAAA,CAAM,QAAA,CAAS,CAAC,CAAC,CAAA,GAAI,CAAA;AAAA,IACvB;AACA,IAAA,MAAM,EAAE,SAAS,QAAA,EAAU,GAAG,WAAU,GAAI,OAAA,CAAQ,YAAY,EAAC;AACjE,IAAA,MAAM,MAAA,GAAS,EAAE,GAAG,SAAA,EAAW,GAAG,KAAA,EAAO,KAAA,EAAO,OAAO,GAAA,EAAI;AAC3D,IAAA,IAAI,GAAA,EAAK;AACP,MAAA,MAAA,CAAO,GAAA,GAAM,GAAA;AAAA,IACf;AACA,IAAA,IAAA,CAAI,EAAA,GAAA,OAAA,CAAQ,IAAA,KAAR,IAAA,GAAA,MAAA,GAAA,EAAA,CAAc,sBAAA,EAAwB;AACxC,MAAA,MAAA,CAAO,QAAA,GAAW,wBAAA;AAAA,QAChB,OAAO,QAAA,KAAa,UAAA,GAAa,QAAA,EAAS,GAAI;AAAA,OAChD;AAAA,IACF,CAAA,MAAO;AACL,MAAA,MAAM,YAAA,GAAA,CAAe,EAAA,GAAA,OAAA,CAAQ,QAAA,KAAR,IAAA,GAAA,MAAA,GAAA,EAAA,CAAkB,OAAA;AACvC,MAAA,MAAA,CAAO,YAAA,GAAe,OAAO,YAAA,IAAgB,YAAA;AAAA,IAC/C;AACA,IAAA,OAAA,CAAQ,KAAK,MAAM,CAAA;AAAA,EACrB,CAAC,CAAA;AACD,EAAA,OAAO,OAAA;AACT;AAEO,MAAM,WAAA,GAAc,CAAC,EAAA,EAAwB,EAAA,EAAwB,IAAA,KAAiB;AAC3F,EAAA,OACE,SAAS,CAAA,IACT,IAAA,CAAK,IAAI,IAAA,CAAK,GAAA,CAAI,GAAG,OAAA,GAAU,EAAA,CAAG,OAAO,CAAA,EAAG,KAAK,GAAA,CAAI,EAAA,CAAG,UAAU,EAAA,CAAG,OAAO,CAAC,CAAA,IAAK,IAAA;AAEtF;AAMO,SAAS,eAAA,CACd,IAAA,EACA,MAAA,EACA,kBAAA,EACA,QAAA,EACO;AACP,EAAA,IAAI,IAAA;AACJ,EAAA,IAAI,QAAA,GAAgB,IAAA;AACpB,EAAA,IAAI,cAAmB,EAAC;AACxB,EAAA,MAAM,YAAY,MAAA,CAAO,MAAA;AACzB,EAAA,IAAI,cAAc,CAAA,EAAG;AACnB,IAAA,IAAA,CAAK,MAAA,CAAO,CAAA,EAAG,CAAA,EAAG,QAAQ,CAAA;AAC1B,IAAA,OAAO,IAAA;AAAA,EACT;AACA,EAAA,KAAA,IAAS,CAAA,GAAI,CAAA,EAAG,CAAA,GAAI,SAAA,EAAW,CAAA,EAAA,EAAK;AAClC,IAAA,IAAA,GAAO,QAAA,CAAS,MAAA,CAAO,CAAC,CAAE,CAAA;AAC1B,IAAA,IAAI,CAAA,KAAM,YAAY,CAAA,EAAG;AACvB,MAAA,WAAA,GAAc,QAAA;AAAA,IAChB;AACA,IAAA,QAAA,GAAA,CAAW,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAO,wBAAuB,EAAC;AAAA,EAC5C;AACA,EAAA,WAAA,CAAY,OAAO,MAAA,CAAO,SAAA,GAAY,CAAC,CAAA,GAAK,CAAA,EAAG,GAAG,QAAQ,CAAA;AAC1D,EAAA,OAAO,WAAA;AACT;AAEO,SAAS,kBAAA,CACd,IAAA,EACA,MAAA,EACA,kBAAA,EACO;AACP,EAAA,IAAI,IAAA;AACJ,EAAA,IAAI,QAAA,GAAgB,IAAA;AACpB,EAAA,IAAI,cAAmB,EAAC;AACxB,EAAA,MAAM,YAAY,MAAA,CAAO,MAAA;AACzB,EAAA,KAAA,IAAS,CAAA,GAAI,CAAA,EAAG,CAAA,GAAI,SAAA,EAAW,CAAA,EAAA,EAAK;AAClC,IAAA,IAAA,GAAO,QAAA,CAAS,MAAA,CAAO,CAAC,CAAE,CAAA;AAC1B,IAAA,IAAI,CAAA,KAAM,YAAY,CAAA,EAAG;AACvB,MAAA,WAAA,GAAc,QAAA;AAAA,IAChB;AACA,IAAA,QAAA,GAAA,CAAW,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAO,wBAAuB,EAAC;AAAA,EAC5C;AACA,EAAA,WAAA,CAAY,MAAA,CAAO,MAAA,CAAO,SAAA,GAAY,CAAC,GAAI,CAAC,CAAA;AAC5C,EAAA,OAAO,WAAA;AACT;AAEO,SAAS,UAAmB,GAAA,EAA6B;AAC9D,EAAA,OAAO,EAAA,CAAG,GAAA,EAAK,SAAS,CAAA,IAAK,UAAA,CAAW,IAAI,IAAI,CAAA,IAAK,UAAA,CAAW,GAAA,CAAI,KAAK,CAAA;AAC3E;AAEO,SAAS,iBAAiB,MAAA,EAAkB;AACjD,EAAA,OAAO,MAAA,CAAO,IAAA;AAAA,IACZ,CAAC,KAAA,KACC,CAAC,OAAA,CAAQ,KAAK,KACb,KAAA,CAAM,IAAA,KAAS,OAAA,IAAW,EAAE,MAAM,IAAA,KAAS,QAAA,IAAY,CAAC,gBAAA,CAAiB,MAAM,QAAQ,CAAA;AAAA,MAExF,MAAA,GACA,IAAA;AACN;AAEO,MAAM,UAAA,GAAa,CAAC,UAAA,EAA0B,MAAA,KAAsB;AACzE,EAAA,IAAI,WAAW,MAAA,EAAW;AACxB,IAAA,OAAO,KAAA;AAAA,EACT;AACA,EAAA,IAAI,OAAO,WAAW,SAAA,EAAW;AAC/B,IAAA,OAAO,MAAA;AAAA,EACT;AACA,EAAA,OAAO,OAAO,UAAU,CAAA;AAC1B;;;;"}
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.20";
1
+ export declare const version = "1.3.22";
package/es/version.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const version = "1.3.20";
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.20'\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;;;;"}
@@ -2,7 +2,7 @@ import type { AliasToken } from 'ant-design-vue/es/theme/interface';
2
2
  import type { ColProps, ConfigProviderProps, NotificationPlacement } from 'ant-design-vue';
3
3
  import type { IntlType } from './intl';
4
4
  import type { ValidateMessages, FormLabelAlign } from 'ant-design-vue/es/form/interface';
5
- import type { Bordered, OptionConfig, TablePaginationConfig, DensitySize } from 'pro-design-vue/es/components/table/src/components/interface';
5
+ import type { Bordered, OptionConfig, TablePaginationConfig, DensitySize, ExpandIconType } from 'pro-design-vue/es/components/table/src/components/interface';
6
6
  interface ProConfigProviderProps extends Omit<ConfigProviderProps, 'form'> {
7
7
  intl?: IntlType;
8
8
  proPrefixCls?: string;
@@ -17,8 +17,10 @@ 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;
23
+ expandIconType?: ExpandIconType;
22
24
  rowHover?: boolean;
23
25
  summaryFixed?: boolean;
24
26
  columnEmptyText?: string;
@@ -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;
@@ -212,6 +213,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
212
213
  expandIconColumnIndex: import("vue").ComputedRef<number>;
213
214
  indentSize: import("vue").ComputedRef<number>;
214
215
  expanded: import("vue").ComputedRef<boolean>;
216
+ expandIconType: import("vue").ComputedRef<import("../interface").ExpandIconType>;
215
217
  onInternalTriggerExpand: (record: any, event: any) => void;
216
218
  customRowProps: import("vue").ComputedRef<(Omit<import("vue").HTMLAttributes, "style"> & {
217
219
  style?: CSSProperties;
@@ -225,18 +227,17 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
225
227
  resizeObserver: import("resize-observer-polyfill").default;
226
228
  calMaxHeight: () => void;
227
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;
228
236
  hoverRowKey: import("vue").Ref<import("pro-design-vue").ProTableKey, import("pro-design-vue").ProTableKey>;
229
237
  hoverColumnKey: import("vue").Ref<import("pro-design-vue").ProTableKey, import("pro-design-vue").ProTableKey>;
230
238
  xVirtual: import("vue").ComputedRef<boolean>;
231
239
  getPopupContainer: () => HTMLDivElement;
232
- editCellKeys: import("vue").Ref<string[], string[]>;
233
- closeEditor: (key?: string | string[]) => void;
234
- openEditor: (key: string | string[], values?: Record<string, any>) => void;
235
240
  mergedTooltipOpen: import("vue").ComputedRef<boolean>;
236
- onCellMousedown: (mouseEvent: import("../../hooks/RangeInterface.ts").CustomMouseEvent, cellPosition: import("../../hooks/RangeInterface.ts").RangeCell) => void;
237
- onCellKeydown: (event: KeyboardEvent, payload: import("../../hooks/RangeInterface.ts").InnerKeydownPayload) => void;
238
- onCellMousemove: (mouseEvent: import("../../hooks/RangeInterface.ts").CustomMouseEvent, cellPosition: import("../../hooks/RangeInterface.ts").RangeCell) => void;
239
- onCellClick: (mouseEvent: MouseEvent, cellPosition: import("../../hooks/RangeInterface.ts").RangeCell) => void;
240
241
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
241
242
  prefixCls: PropType<string>;
242
243
  isExpandRow: PropType<boolean>;
@@ -273,6 +274,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
273
274
  expandable: BooleanConstructor;
274
275
  disabled: BooleanConstructor;
275
276
  onExpand: FunctionConstructor;
277
+ expandIconType: StringConstructor;
276
278
  }>, {
277
279
  handleClick: () => void;
278
280
  className: import("vue").ComputedRef<{
@@ -287,6 +289,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
287
289
  expandable: BooleanConstructor;
288
290
  disabled: BooleanConstructor;
289
291
  onExpand: FunctionConstructor;
292
+ expandIconType: StringConstructor;
290
293
  }>> & Readonly<{
291
294
  onExpand?: ((...args: any[]) => any) | undefined;
292
295
  }> & {}>;
@@ -297,6 +300,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
297
300
  expandable: BooleanConstructor;
298
301
  disabled: BooleanConstructor;
299
302
  onExpand: FunctionConstructor;
303
+ expandIconType: StringConstructor;
300
304
  }>> & Readonly<{
301
305
  onExpand?: ((...args: any[]) => any) | undefined;
302
306
  }>, {
@@ -304,15 +308,15 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
304
308
  expanded: boolean;
305
309
  expandable: boolean;
306
310
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
307
- BodyCell: import("vue").FunctionalComponent<Partial<import("vue").ExtractPropTypes<{
311
+ BodyCell: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
308
312
  prefixCls: PropType<string>;
309
313
  rowIndex: {
310
314
  type: PropType<number>;
311
- required: boolean;
315
+ required: true;
312
316
  };
313
317
  flattenRowIndex: {
314
318
  type: NumberConstructor;
315
- required: boolean;
319
+ required: true;
316
320
  };
317
321
  rowKey: {
318
322
  type: (StringConstructor | NumberConstructor)[];
@@ -337,18 +341,225 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
337
341
  resizeObserver: {
338
342
  type: PropType<ResizeObserver>;
339
343
  };
344
+ editRow: {
345
+ type: PropType<any>;
346
+ };
340
347
  calMaxHeight: FunctionConstructor;
348
+ editCellKeys: PropType<string[]>;
349
+ editableKeys: PropType<import("pro-design-vue").ProTableKey[]>;
350
+ isRowEdit: PropType<boolean>;
341
351
  tooltipOpen: PropType<boolean>;
342
352
  getPopupContainer: PropType<() => HTMLElement>;
353
+ onOpenEditor: FunctionConstructor;
354
+ onCloseEditor: FunctionConstructor;
343
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;
344
449
  editCellKeys: PropType<string[]>;
450
+ editableKeys: PropType<import("pro-design-vue").ProTableKey[]>;
451
+ isRowEdit: PropType<boolean>;
452
+ tooltipOpen: PropType<boolean>;
453
+ getPopupContainer: PropType<() => HTMLElement>;
345
454
  onOpenEditor: FunctionConstructor;
346
455
  onCloseEditor: FunctionConstructor;
347
- onMousedown: PropType<(e: any, cellPosition: import("../../hooks/RangeInterface.ts").RangeCell) => void>;
348
- onMousemove: PropType<(e: any, cellPosition: import("../../hooks/RangeInterface.ts").RangeCell) => void>;
349
- onKeydown: PropType<(e: KeyboardEvent, payload: import("../../hooks/RangeInterface.ts").InnerKeydownPayload) => void>;
350
- onClick: PropType<(e: MouseEvent, cellPosition: import("../../hooks/RangeInterface.ts").RangeCell) => void>;
351
- }>>, {}, 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>;
352
563
  ExpandedRow: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
353
564
  prefixCls: StringConstructor;
354
565
  rowKey: {
@@ -1959,6 +2170,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
1959
2170
  type: (StringConstructor | NumberConstructor)[];
1960
2171
  };
1961
2172
  expanded: PropType<boolean>;
2173
+ expandIconType: PropType<import("../interface").ExpandIconType>;
1962
2174
  supportExpand: BooleanConstructor;
1963
2175
  }>, {
1964
2176
  handleRadioChange: (e: Event) => void;
@@ -2013,6 +2225,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
2013
2225
  type: (StringConstructor | NumberConstructor)[];
2014
2226
  };
2015
2227
  expanded: PropType<boolean>;
2228
+ expandIconType: PropType<import("../interface").ExpandIconType>;
2016
2229
  supportExpand: BooleanConstructor;
2017
2230
  }>> & Readonly<{}>, {
2018
2231
  column: import("../interface").FinallyColumnType<import("../interface").DefaultRecordType>;
@@ -2055,6 +2268,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
2055
2268
  expandable: BooleanConstructor;
2056
2269
  disabled: BooleanConstructor;
2057
2270
  onExpand: FunctionConstructor;
2271
+ expandIconType: StringConstructor;
2058
2272
  }>, {
2059
2273
  handleClick: () => void;
2060
2274
  className: import("vue").ComputedRef<{
@@ -2069,6 +2283,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
2069
2283
  expandable: BooleanConstructor;
2070
2284
  disabled: BooleanConstructor;
2071
2285
  onExpand: FunctionConstructor;
2286
+ expandIconType: StringConstructor;
2072
2287
  }>> & Readonly<{
2073
2288
  onExpand?: ((...args: any[]) => any) | undefined;
2074
2289
  }> & {}>;
@@ -2079,6 +2294,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
2079
2294
  expandable: BooleanConstructor;
2080
2295
  disabled: BooleanConstructor;
2081
2296
  onExpand: FunctionConstructor;
2297
+ expandIconType: StringConstructor;
2082
2298
  }>> & Readonly<{
2083
2299
  onExpand?: ((...args: any[]) => any) | undefined;
2084
2300
  }>, {
@@ -2089,6 +2305,45 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
2089
2305
  MenuOutlined: import("@ant-design/icons-vue/lib/icons/MenuOutlined").MenuOutlinedIconType;
2090
2306
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
2091
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, {}>;
2092
2347
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
2093
2348
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
2094
2349
  Empty: {