@dinert/element-plus 1.0.8 → 1.1.1

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 (147) hide show
  1. package/dist/element-plus.umd.js +1 -1
  2. package/dist/element-plus.umd.js.map +1 -1
  3. package/dist/style.css +1 -1
  4. package/es/node_modules/@element-plus/icons-vue/dist/index.mjs +108 -18
  5. package/es/node_modules/@element-plus/icons-vue/dist/index.mjs.map +1 -1
  6. package/es/packages/assets/fonts/iconfont.mjs +40 -0
  7. package/es/packages/assets/fonts/iconfont.mjs.map +1 -0
  8. package/es/packages/assets/scss/dinert-dialog.scss.mjs +2 -0
  9. package/es/packages/assets/scss/dinert-dialog.scss.mjs.map +1 -0
  10. package/es/packages/assets/scss/dinert-form.scss.mjs +1 -4
  11. package/es/packages/assets/scss/dinert-form.scss.mjs.map +1 -1
  12. package/es/packages/assets/scss/dinert-table-page.scss.mjs +1 -4
  13. package/es/packages/assets/scss/dinert-table-page.scss.mjs.map +1 -1
  14. package/es/packages/assets/scss/dinert-table.scss.mjs +1 -4
  15. package/es/packages/assets/scss/dinert-table.scss.mjs.map +1 -1
  16. package/es/packages/assets/scss/dinert-tooltip.scss.mjs +1 -4
  17. package/es/packages/assets/scss/dinert-tooltip.scss.mjs.map +1 -1
  18. package/es/packages/components/dialog/index.mjs +10 -0
  19. package/es/packages/components/dialog/index.mjs.map +1 -0
  20. package/es/packages/components/dialog/src/index.mjs +87 -0
  21. package/es/packages/components/dialog/src/index.mjs.map +1 -0
  22. package/es/packages/components/form/src/cascader.mjs +10 -16
  23. package/es/packages/components/form/src/cascader.mjs.map +1 -1
  24. package/es/packages/components/form/src/checkbox.mjs +17 -15
  25. package/es/packages/components/form/src/checkbox.mjs.map +1 -1
  26. package/es/packages/components/form/src/date.mjs +6 -8
  27. package/es/packages/components/form/src/date.mjs.map +1 -1
  28. package/es/packages/components/form/src/index.mjs +155 -152
  29. package/es/packages/components/form/src/index.mjs.map +1 -1
  30. package/es/packages/components/form/src/input-autocomplete.mjs +5 -7
  31. package/es/packages/components/form/src/input-autocomplete.mjs.map +1 -1
  32. package/es/packages/components/form/src/input-number.mjs +9 -16
  33. package/es/packages/components/form/src/input-number.mjs.map +1 -1
  34. package/es/packages/components/form/src/input.mjs +12 -19
  35. package/es/packages/components/form/src/input.mjs.map +1 -1
  36. package/es/packages/components/form/src/radio.mjs +14 -16
  37. package/es/packages/components/form/src/radio.mjs.map +1 -1
  38. package/es/packages/components/form/src/rate.mjs +7 -13
  39. package/es/packages/components/form/src/rate.mjs.map +1 -1
  40. package/es/packages/components/form/src/select-v2.mjs +34 -0
  41. package/es/packages/components/form/src/select-v2.mjs.map +1 -0
  42. package/es/packages/components/form/src/select.mjs +7 -8
  43. package/es/packages/components/form/src/select.mjs.map +1 -1
  44. package/es/packages/components/form/src/switch.mjs +5 -12
  45. package/es/packages/components/form/src/switch.mjs.map +1 -1
  46. package/es/packages/components/form/src/tree-select.mjs +5 -6
  47. package/es/packages/components/form/src/tree-select.mjs.map +1 -1
  48. package/es/packages/components/form/utils/index.mjs +43 -41
  49. package/es/packages/components/form/utils/index.mjs.map +1 -1
  50. package/es/packages/components/index.mjs +6 -4
  51. package/es/packages/components/index.mjs.map +1 -1
  52. package/es/packages/components/table/hooks/index.mjs +14 -14
  53. package/es/packages/components/table/hooks/index.mjs.map +1 -1
  54. package/es/packages/components/table/src/index.mjs +151 -112
  55. package/es/packages/components/table/src/index.mjs.map +1 -1
  56. package/es/packages/components/table/src/recuve-table-column.mjs +170 -133
  57. package/es/packages/components/table/src/recuve-table-column.mjs.map +1 -1
  58. package/es/packages/components/table-page/src/index.mjs +19 -18
  59. package/es/packages/components/table-page/src/index.mjs.map +1 -1
  60. package/es/packages/components/tooltip/src/index.mjs +17 -15
  61. package/es/packages/components/tooltip/src/index.mjs.map +1 -1
  62. package/es/packages/hooks/{useTablePage → TablePage}/index.mjs +45 -33
  63. package/es/packages/hooks/TablePage/index.mjs.map +1 -0
  64. package/es/packages/index.mjs +14 -12
  65. package/es/packages/index.mjs.map +1 -1
  66. package/es/packages/utils/tools.mjs +38 -40
  67. package/es/packages/utils/tools.mjs.map +1 -1
  68. package/es/src/components/dialog/index.d.ts +4 -0
  69. package/es/src/components/dialog/src/drag.d.ts +5 -0
  70. package/es/src/components/dialog/src/index.d.ts +3 -0
  71. package/es/src/components/dialog/src/type.d.ts +15 -0
  72. package/es/src/components/dialog/types/index.d.ts +10 -0
  73. package/es/src/components/form/index.d.ts +4 -3
  74. package/es/src/components/form/src/cascader.d.ts +7 -9
  75. package/es/src/components/form/src/checkbox.d.ts +7 -8
  76. package/es/src/components/form/src/date.d.ts +7 -8
  77. package/es/src/components/form/src/index.d.ts +4 -3
  78. package/es/src/components/form/src/input-autocomplete.d.ts +7 -8
  79. package/es/src/components/form/src/input-number.d.ts +7 -8
  80. package/es/src/components/form/src/input.d.ts +7 -8
  81. package/es/src/components/form/src/radio.d.ts +7 -8
  82. package/es/src/components/form/src/rate.d.ts +6 -7
  83. package/es/src/components/form/src/select-v2.d.ts +27 -0
  84. package/es/src/components/form/src/select.d.ts +7 -9
  85. package/es/src/components/form/src/switch.d.ts +7 -8
  86. package/es/src/components/form/src/tree-select.d.ts +7 -19
  87. package/es/src/components/form/types/components.d.ts +40 -0
  88. package/es/src/components/form/types/index.d.ts +46 -21
  89. package/es/src/components/form/types/utils.d.ts +5 -0
  90. package/es/src/components/form/utils/index.d.ts +1 -0
  91. package/es/src/components/index.d.ts +2 -0
  92. package/es/src/components/table/hooks/index.d.ts +1 -1
  93. package/es/src/components/table/index.d.ts +13 -25270
  94. package/es/src/components/table/src/index.d.ts +14 -25272
  95. package/es/src/components/table/src/recuve-table-column.d.ts +14 -3
  96. package/es/src/components/table/types/index.d.ts +26 -39
  97. package/es/src/components/table-page/index.d.ts +815 -0
  98. package/es/src/components/table-page/src/index.d.ts +816 -0
  99. package/es/src/hooks/TablePage/index.d.ts +55 -0
  100. package/{lib/src/hooks/useTablePage → es/src/hooks/TablePage}/types/index.d.ts +1 -2
  101. package/es/src/index.d.ts +3 -3
  102. package/es/src/utils/tools.d.ts +1 -1
  103. package/es/src/views/test-table-page/types/index.d.ts +24 -0
  104. package/es/style.css +1 -1
  105. package/lib/index.js +1 -1
  106. package/lib/index.js.map +1 -1
  107. package/lib/src/components/dialog/index.d.ts +4 -0
  108. package/lib/src/components/dialog/src/drag.d.ts +5 -0
  109. package/lib/src/components/dialog/src/index.d.ts +3 -0
  110. package/lib/src/components/dialog/src/type.d.ts +15 -0
  111. package/lib/src/components/dialog/types/index.d.ts +10 -0
  112. package/lib/src/components/form/index.d.ts +4 -3
  113. package/lib/src/components/form/src/cascader.d.ts +7 -9
  114. package/lib/src/components/form/src/checkbox.d.ts +7 -8
  115. package/lib/src/components/form/src/date.d.ts +7 -8
  116. package/lib/src/components/form/src/index.d.ts +4 -3
  117. package/lib/src/components/form/src/input-autocomplete.d.ts +7 -8
  118. package/lib/src/components/form/src/input-number.d.ts +7 -8
  119. package/lib/src/components/form/src/input.d.ts +7 -8
  120. package/lib/src/components/form/src/radio.d.ts +7 -8
  121. package/lib/src/components/form/src/rate.d.ts +6 -7
  122. package/lib/src/components/form/src/select-v2.d.ts +27 -0
  123. package/lib/src/components/form/src/select.d.ts +7 -9
  124. package/lib/src/components/form/src/switch.d.ts +7 -8
  125. package/lib/src/components/form/src/tree-select.d.ts +7 -19
  126. package/lib/src/components/form/types/components.d.ts +40 -0
  127. package/lib/src/components/form/types/index.d.ts +46 -21
  128. package/lib/src/components/form/types/utils.d.ts +5 -0
  129. package/lib/src/components/form/utils/index.d.ts +1 -0
  130. package/lib/src/components/index.d.ts +2 -0
  131. package/lib/src/components/table/hooks/index.d.ts +1 -1
  132. package/lib/src/components/table/index.d.ts +13 -25270
  133. package/lib/src/components/table/src/index.d.ts +14 -25272
  134. package/lib/src/components/table/src/recuve-table-column.d.ts +14 -3
  135. package/lib/src/components/table/types/index.d.ts +26 -39
  136. package/lib/src/components/table-page/index.d.ts +815 -0
  137. package/lib/src/components/table-page/src/index.d.ts +816 -0
  138. package/lib/src/hooks/TablePage/index.d.ts +55 -0
  139. package/{es/src/hooks/useTablePage → lib/src/hooks/TablePage}/types/index.d.ts +1 -2
  140. package/lib/src/index.d.ts +3 -3
  141. package/lib/src/utils/tools.d.ts +1 -1
  142. package/lib/src/views/test-table-page/types/index.d.ts +24 -0
  143. package/lib/style.css +1 -1
  144. package/package.json +87 -89
  145. package/es/packages/hooks/useTablePage/index.mjs.map +0 -1
  146. package/es/src/hooks/useTablePage/index.d.ts +0 -49
  147. package/lib/src/hooks/useTablePage/index.d.ts +0 -49
@@ -1,22 +1,22 @@
1
- const _ = (n, t) => {
2
- n == null || n.setCheckedNodes(t);
3
- }, k = (n, t, e) => {
4
- n.checked = e || t;
5
- }, o = async (n, t) => {
6
- for (let e = 0; e < t.length; e++)
7
- t[e].checked === void 0 ? (t[e].checked = !0, await (n == null ? void 0 : n.setChecked(t[e].prop, !0))) : t[e].checked !== void 0 && await (n == null ? void 0 : n.setChecked(t[e].prop, t[e].checked)), t[e].children && t[e].children.length && o(n, t[e].children);
8
- }, C = (n, t, e) => n.level === t.level && n.parent === t.parent ? e === "prev" || e === "next" : !1, v = async (n, t) => {
9
- o(t, [n.data]);
10
- }, x = (n, t, e, r, H, l) => {
1
+ const _ = (t, n) => {
2
+ t == null || t.setCheckedNodes(n);
3
+ }, k = (t, n, e) => {
4
+ t.checked = e || n;
5
+ }, p = async (t, n) => {
6
+ for (let e = 0; e < n.length; e++)
7
+ n[e].checked === void 0 ? (n[e].checked = !0, await (t == null ? void 0 : t.setChecked(n[e].prop, !0))) : n[e].checked !== void 0 && await (t == null ? void 0 : t.setChecked(n[e].prop, n[e].checked)), n[e].children && n[e].children.length && p(t, n[e].children);
8
+ }, C = (t, n, e) => t.level === n.level && t.parent === n.parent ? e === "prev" || e === "next" : !1, v = async (t, n, e) => {
9
+ p(e, [t.data]);
10
+ }, x = (t, n, e, r, H, l) => {
11
11
  if (!l.height) {
12
12
  e && e.parentElement && e.parentElement.parentElement && (e.parentElement.parentElement.style.height = "100%");
13
- const h = e && parseInt(window.getComputedStyle(e.parentElement, null).paddingTop), c = e && parseInt(window.getComputedStyle(e.parentElement, null).paddingBottom), f = t && t.offsetHeight || 0, a = t && parseInt(window.getComputedStyle(t, null).marginTop) || 0, m = t && parseInt(window.getComputedStyle(t, null).marginBottom) || 0, i = n && n.headerFooter, g = i && i.offsetHeight || 0, u = r && r.offsetHeight || 0, w = r && parseInt(window.getComputedStyle(r, null).marginTop) || 0, d = e && e.parentElement && e.parentElement.offsetHeight - f - g - u - w - a - h - c, s = e && e.querySelector(".el-table__header-wrapper table").offsetHeight || 0, p = e && e.querySelector(".el-table__body-wrapper table").offsetHeight || 0, E = e && (e.querySelector(".el-table__body-wrapper.is-scrolling-left") || e.querySelector(".el-table__body-wrapper.is-scrolling-right") || e.querySelector(".el-table__body-wrapper.is-scrolling-middle")) ? 17 : 0;
14
- e && (s + p + m > d || l.data && l.data.length === 0 ? (e.style.height = "0px", e.style.flex = "1", e.parentElement && e.parentElement.parentElement && (e.parentElement.parentElement.style.height = "100%")) : (e.style.height = p + s + 1 + E + "px", e.style.flex = "unset", e.parentElement && e.parentElement.parentElement && (e.parentElement.parentElement.style.height = "auto")));
13
+ const h = e && parseInt(window.getComputedStyle(e.parentElement, null).paddingTop), c = e && parseInt(window.getComputedStyle(e.parentElement, null).paddingBottom), f = n && n.offsetHeight || 0, g = n && parseInt(window.getComputedStyle(n, null).marginTop) || 0, m = n && parseInt(window.getComputedStyle(n, null).marginBottom) || 0, i = t && t.headerFooter, u = i && i.offsetHeight || 0, a = r && r.offsetHeight || 0, w = r && parseInt(window.getComputedStyle(r, null).marginTop) || 0, E = e && e.parentElement && e.parentElement.offsetHeight - f - u - a - w - g - h - c, o = e && e.querySelector(".el-table__header-wrapper table").offsetHeight || 0, s = e && e.querySelector(".el-table__body-wrapper table").offsetHeight || 0, d = e && (e.querySelector(".el-table__body-wrapper.is-scrolling-left") || e.querySelector(".el-table__body-wrapper.is-scrolling-right") || e.querySelector(".el-table__body-wrapper.is-scrolling-middle")) ? 17 : 0;
14
+ e && (o + s + m > E || l.data && l.data.length === 0 ? (e.style.height = "0px", e.style.flex = "1", e.parentElement && e.parentElement.parentElement && (e.parentElement.parentElement.style.height = "100%")) : (e.style.height = s + o + 1 + d + "px", e.style.flex = "unset", e.parentElement && e.parentElement.parentElement && (e.parentElement.parentElement.style.height = "auto")));
15
15
  }
16
16
  }, q = {
17
17
  children: "children",
18
18
  label: "label",
19
- class: (n) => n.show === !1 || n.setting || ["index", "selection"].includes(n.type) || ["selection"].includes(n.prop) ? "hide" : ""
19
+ class: (t) => (typeof t.show == "function" ? t.show(t) === !1 : t.show === !1) || t.setting || ["index", "selection"].includes(t.type) || ["selection"].includes(t.prop) ? "hide" : ""
20
20
  };
21
21
  export {
22
22
  _ as allShow,
@@ -24,7 +24,7 @@ export {
24
24
  k as checkTree,
25
25
  v as nodeDragEnd,
26
26
  x as resizeTaleHeight,
27
- o as treeNode,
27
+ p as treeNode,
28
28
  q as treeProps
29
29
  };
30
30
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/table/hooks/index.ts"],"sourcesContent":["\n\nimport type {RewriteTableColumnCtx, SelectTable, RewriteTableProps} from '../types/index'\nimport type Node from 'element-plus/es/components/tree/src/model/node'\nimport type {\n AllowDropType,\n} from 'element-plus/es/components/tree/src/tree.type'\n\nexport const allShow = (selectTable: any, tableColumns: RewriteTableColumnCtx[]) => {\n selectTable?.setCheckedNodes(tableColumns)\n}\n\nexport const checkTree = (data: Node, checked: boolean, childChecked: boolean) => {\n data.checked = childChecked || checked\n}\n\nexport const treeNode = async (selectTable: any, treeData2: any) => {\n\n // eslint-disable-next-line @typescript-eslint/prefer-for-of\n for (let i = 0; i < treeData2.length; i++) {\n if (treeData2[i].checked === undefined) {\n treeData2[i].checked = true\n await selectTable?.setChecked(treeData2[i].prop, true)\n } else if (treeData2[i].checked !== undefined) {\n await selectTable?.setChecked(treeData2[i].prop, treeData2[i].checked)\n }\n if (treeData2[i].children && treeData2[i].children.length) {\n treeNode(selectTable, treeData2[i].children)\n }\n }\n}\n\nexport const allowDrop = (draggingNode: Node, dropNode: Node, type: AllowDropType) => {\n if (draggingNode.level === dropNode.level) {\n if (draggingNode.parent === dropNode.parent) {\n return type === 'prev' || type === 'next'\n } else {\n return false\n }\n } else {\n // 不同级进行处理\n return false\n }\n}\n\nexport const nodeDragEnd = async (node: Node, selectTable: SelectTable) => {\n treeNode(selectTable, [node.data])\n}\n\nexport const resizeTaleHeight = (table: any, header: any, body: any, footer: any, headerFooterRef: any, tableProps: RewriteTableProps) => {\n if (!tableProps.height) {\n\n if (body && body.parentElement && body.parentElement.parentElement) {\n body.parentElement.parentElement.style.height = '100%'\n }\n\n const bodyPPT = (body && parseInt(window.getComputedStyle(body.parentElement, null).paddingTop))\n const bodyPPB = (body && parseInt(window.getComputedStyle(body.parentElement, null).paddingBottom))\n\n const headerH = (header && header.offsetHeight) || 0\n const headerMT = (header && parseInt(window.getComputedStyle(header, null).marginTop)) || 0\n const headerBT = (header && parseInt(window.getComputedStyle(header, null).marginBottom)) || 0\n\n const headerFooter = table && table.headerFooter\n const headerFooterH = (headerFooter && headerFooter.offsetHeight) || 0\n\n const footerH = (footer && footer.offsetHeight) || 0\n const footerMT = (footer && parseInt(window.getComputedStyle(footer, null).marginTop)) || 0\n const bodyCurrentH = body && body.parentElement && (body.parentElement.offsetHeight - headerH - headerFooterH - footerH - footerMT - headerMT - bodyPPT - bodyPPB)\n\n const tableHeaderH = (body && body.querySelector('.el-table__header-wrapper table').offsetHeight) || 0\n const tableBodyH = (body && body.querySelector('.el-table__body-wrapper table').offsetHeight) || 0\n\n\n const isXOverflow = (body && (body.querySelector('.el-table__body-wrapper.is-scrolling-left') || body.querySelector('.el-table__body-wrapper.is-scrolling-right') || body.querySelector('.el-table__body-wrapper.is-scrolling-middle')))\n const xOverflowH = isXOverflow ? 17 : 0\n\n // 当表格头和表格内容大于\n if (body) {\n if ((tableHeaderH + tableBodyH + headerBT) > bodyCurrentH || (tableProps.data && tableProps.data.length === 0)) {\n body.style.height = '0px'\n body.style.flex = '1'\n\n if (body.parentElement && body.parentElement.parentElement) {\n body.parentElement.parentElement.style.height = '100%'\n }\n } else {\n body.style.height = (tableBodyH + tableHeaderH + 1 + xOverflowH) + 'px'\n body.style.flex = 'unset'\n\n if (body.parentElement && body.parentElement.parentElement) {\n body.parentElement.parentElement.style.height = 'auto'\n }\n\n }\n }\n }\n}\n\nexport const treeProps = {\n children: 'children',\n label: 'label',\n class: (data: any) => {\n const hide = data.show === false || data.setting || ['index', 'selection'].includes(data.type) || ['selection'].includes(data.prop) ? 'hide' : ''\n return hide\n }\n}\n"],"names":["allShow","selectTable","tableColumns","checkTree","data","checked","childChecked","treeNode","treeData2","i","allowDrop","draggingNode","dropNode","type","nodeDragEnd","node","resizeTaleHeight","table","header","body","footer","headerFooterRef","tableProps","bodyPPT","bodyPPB","headerH","headerMT","headerBT","headerFooter","headerFooterH","footerH","footerMT","bodyCurrentH","tableHeaderH","tableBodyH","xOverflowH","treeProps"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/table/hooks/index.ts"],"sourcesContent":["\n\nimport type {RewriteTableColumnCtx, SelectTable, RewriteTableProps} from '../types/index'\nimport type Node from 'element-plus/es/components/tree/src/model/node'\nimport type {\n AllowDropType,\n} from 'element-plus/es/components/tree/src/tree.type'\n\nexport const allShow = (selectTable: any, tableColumns: RewriteTableColumnCtx[]) => {\n selectTable?.setCheckedNodes(tableColumns)\n}\n\nexport const checkTree = (data: Node, checked: boolean, childChecked: boolean) => {\n data.checked = childChecked || checked\n}\n\nexport const treeNode = async (selectTable: any, treeData2: any) => {\n\n // eslint-disable-next-line @typescript-eslint/prefer-for-of\n for (let i = 0; i < treeData2.length; i++) {\n if (treeData2[i].checked === undefined) {\n treeData2[i].checked = true\n await selectTable?.setChecked(treeData2[i].prop, true)\n } else if (treeData2[i].checked !== undefined) {\n await selectTable?.setChecked(treeData2[i].prop, treeData2[i].checked)\n }\n if (treeData2[i].children && treeData2[i].children.length) {\n treeNode(selectTable, treeData2[i].children)\n }\n }\n}\n\n\nexport const allowDrop = (draggingNode: Node, dropNode: Node, type: AllowDropType) => {\n if (draggingNode.level === dropNode.level) {\n if (draggingNode.parent === dropNode.parent) {\n return type === 'prev' || type === 'next'\n } else {\n return false\n }\n } else {\n // 不同级进行处理\n return false\n }\n}\n\nexport const nodeDragEnd = async (currentNode: Node, targetNode: Node, selectTable: SelectTable) => {\n treeNode(selectTable, [currentNode.data])\n}\n\nexport const resizeTaleHeight = (table: any, header: any, body: any, footer: any, headerFooterRef: any, tableProps: RewriteTableProps) => {\n if (!tableProps.height) {\n\n if (body && body.parentElement && body.parentElement.parentElement) {\n body.parentElement.parentElement.style.height = '100%'\n }\n\n const bodyPPT = (body && parseInt(window.getComputedStyle(body.parentElement, null).paddingTop))\n const bodyPPB = (body && parseInt(window.getComputedStyle(body.parentElement, null).paddingBottom))\n\n const headerH = (header && header.offsetHeight) || 0\n const headerMT = (header && parseInt(window.getComputedStyle(header, null).marginTop)) || 0\n const headerBT = (header && parseInt(window.getComputedStyle(header, null).marginBottom)) || 0\n\n const headerFooter = table && table.headerFooter\n const headerFooterH = (headerFooter && headerFooter.offsetHeight) || 0\n\n const footerH = (footer && footer.offsetHeight) || 0\n const footerMT = (footer && parseInt(window.getComputedStyle(footer, null).marginTop)) || 0\n const bodyCurrentH = body && body.parentElement && (body.parentElement.offsetHeight - headerH - headerFooterH - footerH - footerMT - headerMT - bodyPPT - bodyPPB)\n\n const tableHeaderH = (body && body.querySelector('.el-table__header-wrapper table').offsetHeight) || 0\n const tableBodyH = (body && body.querySelector('.el-table__body-wrapper table').offsetHeight) || 0\n\n\n const isXOverflow = (body && (body.querySelector('.el-table__body-wrapper.is-scrolling-left') || body.querySelector('.el-table__body-wrapper.is-scrolling-right') || body.querySelector('.el-table__body-wrapper.is-scrolling-middle')))\n const xOverflowH = isXOverflow ? 17 : 0\n\n // 当表格头和表格内容大于\n if (body) {\n if ((tableHeaderH + tableBodyH + headerBT) > bodyCurrentH || (tableProps.data && tableProps.data.length === 0)) {\n body.style.height = '0px'\n body.style.flex = '1'\n\n if (body.parentElement && body.parentElement.parentElement) {\n body.parentElement.parentElement.style.height = '100%'\n }\n } else {\n body.style.height = (tableBodyH + tableHeaderH + 1 + xOverflowH) + 'px'\n body.style.flex = 'unset'\n\n if (body.parentElement && body.parentElement.parentElement) {\n body.parentElement.parentElement.style.height = 'auto'\n }\n\n }\n }\n }\n}\n\nexport const treeProps = {\n children: 'children',\n label: 'label',\n class: (data: any) => {\n const hide = (typeof data.show === 'function' ? data.show(data) === false : data.show === false) || data.setting || ['index', 'selection'].includes(data.type) || ['selection'].includes(data.prop) ? 'hide' : ''\n return hide\n }\n}\n"],"names":["allShow","selectTable","tableColumns","checkTree","data","checked","childChecked","treeNode","treeData2","i","allowDrop","draggingNode","dropNode","type","nodeDragEnd","currentNode","targetNode","resizeTaleHeight","table","header","body","footer","headerFooterRef","tableProps","bodyPPT","bodyPPB","headerH","headerMT","headerBT","headerFooter","headerFooterH","footerH","footerMT","bodyCurrentH","tableHeaderH","tableBodyH","xOverflowH","treeProps"],"mappings":"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"}
@@ -1,18 +1,18 @@
1
- import { defineComponent as A, ref as o, onMounted as C, toRefs as E, computed as N, watch as R, nextTick as v, createVNode as t, resolveComponent as r, createTextVNode as k, mergeProps as T } from "vue";
2
- import { getUuid as B, getTreeNode as w, columnProp as F } from "../../../utils/tools.mjs";
3
- import { treeNode as V, nodeDragEnd as z, treeProps as _, allowDrop as K, resizeTaleHeight as P } from "../hooks/index.mjs";
4
- import j from "./recuve-table-column.mjs";
5
- import H from "../../../hooks/useWindowResize.mjs";
6
- import { ArrowDown as M } from "../../../../node_modules/@element-plus/icons-vue/dist/index.mjs";
1
+ import { defineComponent as B, ref as u, toRefs as L, computed as R, shallowRef as p, onMounted as O, watch as z, nextTick as _, createVNode as l, resolveComponent as r, mergeProps as T, createTextVNode as D } from "vue";
2
+ import { getUuid as V, getTreeNode as S, columnProp as H, headerProp as U } from "../../../utils/tools.mjs";
3
+ import { treeNode as M, nodeDragEnd as x, treeProps as N, allowDrop as W, resizeTaleHeight as q } from "../hooks/index.mjs";
4
+ import G from "./recuve-table-column.mjs";
5
+ import I from "../../../hooks/useWindowResize.mjs";
6
+ import { Plus as J, Delete as Q, Download as X, Upload as Y, Check as Z, Close as ee, ArrowDown as A, ArrowUp as te } from "../../../../node_modules/@element-plus/icons-vue/dist/index.mjs";
7
7
  import "../../../assets/scss/dinert-table.scss.mjs";
8
- const L = /* @__PURE__ */ A({
8
+ const de = /* @__PURE__ */ B({
9
9
  name: "dinert-table",
10
10
  props: {
11
11
  table: {
12
12
  type: Object
13
13
  },
14
14
  header: {
15
- type: Boolean,
15
+ type: [Object, Boolean],
16
16
  default: !0
17
17
  },
18
18
  footer: {
@@ -24,178 +24,217 @@ const L = /* @__PURE__ */ A({
24
24
  default: !1
25
25
  }
26
26
  },
27
- emits: ["SizeChange", "CurrentChange"],
28
- setup(s) {
29
- var y;
30
- const n = o(), b = o(!1), g = o("table_" + B()), u = o(), i = o(!0), d = o(null), h = o(null), f = o(null), e = o(null);
31
- C(() => {
32
- console.log(n.value, "selectTable.value");
33
- });
34
- const {
35
- table: m
36
- } = E(s), a = o(((y = m.value) == null ? void 0 : y.tableColumns) || []);
37
- a.value.forEach((l, p) => (l.sort = typeof l.sort > "u" ? p : l.sort, l)), a.value.sort((l, p) => l.sort - p.sort);
38
- const c = () => {
39
- P(n.value, d.value, h.value, f.value, e.value, s.table);
27
+ emits: ["SizeChange", "CurrentChange", "CheckedChange"],
28
+ setup(f, {
29
+ emit: k
30
+ }) {
31
+ const y = u(), C = u(!1), v = u("table_" + V()), c = u(), g = u(!0), t = u(null), a = u(null), n = u(null), $ = u(null), {
32
+ table: E,
33
+ header: w
34
+ } = L(f), h = R(() => {
35
+ var s;
36
+ const o = ((s = E.value) == null ? void 0 : s.tableColumns) || [];
37
+ function d(e) {
38
+ for (let m = 0; m < e.length; m++) {
39
+ const i = e[m];
40
+ i.sort && m !== i.sort && (e.splice(m, 1), i.sort > e.length ? e.splice(e.length - 1, 0, i) : i.sort < 0 ? e.splice(0, 0, i) : e.splice(i.sort, 0, i)), i.children && i.children.length && d(i.children);
41
+ }
42
+ }
43
+ return d(o), o;
44
+ }), F = R(() => {
45
+ let o = 0;
46
+ if (typeof w.value == "boolean")
47
+ return w.value;
48
+ const d = [];
49
+ return Object.keys(w.value).forEach((s) => {
50
+ const e = w.value[s];
51
+ s === "add" ? (e.icon = e.icon || p(J), e.type = "primary", e.message = e.message || "新增") : s === "delete" ? (e.icon = e.icon || p(Q), e.plain = e.plain === void 0 ? "plain" : e.plain, e.type = e.type === void 0 ? "danger" : e.type, e.message = e.message || "删除") : s === "download" ? (e.icon = e.icon || p(X), e.plain = e.plain === void 0 ? "plain" : e.plain, e.type = "primary", e.message = e.message || "下载") : s === "upload" ? (e.icon = e.icon || p(Y), e.plain = e.plain === void 0 ? "plain" : e.plain, e.type = "primary", e.message = e.message || "上传") : s === "select" ? (e.icon = e.icon || p(Z), e.plain = e.plain === void 0 ? "plain" : e.plain, e.message = e.message || "全选") : s === "close" ? (e.icon = e.icon || p(ee), e.plain = e.plain === void 0 ? "plain" : e.plain, e.message = e.message || "取消全选") : s === "down" ? (e.icon = e.icon || p(A), e.plain = e.plain === void 0 ? "plain" : e.plain, e.message = e.message || "展开") : s === "up" && (e.icon = e.icon || p(te), e.plain = e.plain === void 0 ? "plain" : e.plain, e.message = e.message || "收起"), d.push({
52
+ key: s,
53
+ ...e,
54
+ type: e.type || "default",
55
+ sort: typeof e.sort > "u" ? o : e.sort
56
+ }), o += 10;
57
+ }), d.sort((s, e) => s.sort - e.sort), d;
58
+ }), b = () => {
59
+ q(y.value, t.value, a.value, n.value, $.value, f.table);
40
60
  };
41
- C(() => {
61
+ O(() => {
42
62
  setTimeout(() => {
43
- c();
63
+ b();
44
64
  });
45
65
  });
46
- const D = N(() => {
47
- var l;
48
- return w(a.value, "setting", [!0], "setting").length === 0 && ((l = s.table) == null ? void 0 : l.setting) !== !1;
49
- }), S = w(a.value, "checked", [!0, void 0], "prop"), $ = (l, p, x) => {
50
- l.checked = x || p, v(() => {
51
- c();
66
+ const j = R(() => {
67
+ var o;
68
+ return S(h.value, "setting", [!0], "setting").length === 0 && ((o = f.table) == null ? void 0 : o.setting) !== !1;
69
+ }), K = S(h.value, "checked", [!0, void 0], "prop"), P = (o, d, s) => {
70
+ o.checked = s || d, k("CheckedChange", o, d, s), _(() => {
71
+ b();
52
72
  });
53
73
  };
54
- return H(() => {
55
- c();
56
- }, 100), R(() => {
57
- var l;
58
- return (l = s.table) == null ? void 0 : l.key;
74
+ return I(() => {
75
+ b();
76
+ }, 100), z(() => {
77
+ var o;
78
+ return (o = f.table) == null ? void 0 : o.key;
59
79
  }, () => {
60
- v(async () => {
61
- await V(u.value, a.value), setTimeout(() => {
62
- c();
80
+ _(async () => {
81
+ await M(c.value, h.value), setTimeout(() => {
82
+ b();
63
83
  });
64
84
  });
65
85
  }, {
66
86
  immediate: !0
67
- }), R(() => a.value, () => {
68
- v(() => {
69
- i.value = a.value.every((l) => l.checked === !0);
87
+ }), z(h, () => {
88
+ _(() => {
89
+ g.value = h.value.every((o) => o.checked === !0);
70
90
  });
71
91
  }, {
72
92
  deep: !0
73
93
  }), {
74
- getSetting: D,
75
- tableColumns: a,
76
- checkTree: $,
77
- defaultCheckedKeys: S,
78
- resizeTaleHeightFn: c,
79
- nodeDragEnd: z,
80
- popoverValue: b,
81
- onlyClass: g,
82
- isAllData: i,
83
- tableRef: n,
84
- headerRef: d,
85
- headerFooterRef: e,
86
- bodyRef: h,
87
- footerRef: f,
88
- selectTableRef: u
94
+ getSetting: j,
95
+ tableColumns: h,
96
+ checkTree: P,
97
+ defaultCheckedKeys: K,
98
+ resizeTaleHeightFn: b,
99
+ nodeDragEnd: x,
100
+ popoverValue: C,
101
+ onlyClass: v,
102
+ isAllData: g,
103
+ isFooter: f.footer,
104
+ headerList: F,
105
+ tableRef: y,
106
+ headerRef: t,
107
+ headerFooterRef: $,
108
+ bodyRef: a,
109
+ footerRef: n,
110
+ selectTableRef: c
89
111
  };
90
112
  },
91
113
  render() {
92
- var n, b, g, u, i, d, h, f;
93
- const s = this.tableSlot ? this.$slots : {
94
- default: (e) => {
95
- var m, a;
96
- return (a = (m = this.$slots)[e.prop && F(e.prop)]) == null ? void 0 : a.call(m, e);
114
+ var C, v, c, g;
115
+ const f = this.tableSlot ? this.$slots : {
116
+ ...this.$slots,
117
+ default: (t) => {
118
+ var a, n;
119
+ return (n = (a = this.$slots)[t.prop && H(t.prop)]) == null ? void 0 : n.call(a, t);
120
+ },
121
+ header: (t) => {
122
+ var a, n;
123
+ return (n = (a = this.$slots)[t.prop && U(t.prop)]) == null ? void 0 : n.call(a, t);
97
124
  }
98
- };
99
- return t("section", {
125
+ }, k = this.header || this.getSetting && this.header, y = typeof this.headerList != "boolean" ? this.headerList : [];
126
+ return l("section", {
100
127
  class: "dinert-table"
101
- }, [this.header && t("header", {
128
+ }, [k && l("header", {
102
129
  class: "dinert-table-header",
103
- ref: (e) => {
104
- this.headerRef = e;
130
+ ref: (t) => {
131
+ this.headerRef = t;
105
132
  }
106
- }, [this.$slots["header-left"] && t("div", {
133
+ }, [l("div", {
107
134
  class: "dinert-table-header-left"
108
- }, [(b = (n = this.$slots)["header-left"]) == null ? void 0 : b.call(n)]), this.getSetting && t("div", {
135
+ }, [y.map((t) => {
136
+ var a, n;
137
+ return this.$slots["header_left_" + t.key] ? (n = (a = this.$slots)["header_left_" + t.key]) == null ? void 0 : n.call(a, t) : typeof t.show != "function" && [!0, void 0].includes(t.show) || typeof t.show == "function" && [!0, void 0].includes(t.show(t)) ? l(r("el-button"), T({
138
+ ...t,
139
+ type: t.type || "primary"
140
+ }, {
141
+ onClick: () => t.click && t.click(t)
142
+ }), {
143
+ default: () => [t.message]
144
+ }) : null;
145
+ })]), this.getSetting && l("div", {
109
146
  class: "dinert-table-header-right"
110
- }, [t(r("el-button-group"), null, {
111
- default: () => [t(r("el-button"), {
147
+ }, [l(r("el-button-group"), null, {
148
+ default: () => [l(r("el-button"), {
112
149
  type: this.isAllData ? "primary" : "default"
113
150
  }, {
114
- default: () => [k("全部显示")]
115
- }), t(r("el-popover"), {
151
+ default: () => [D("全部显示")]
152
+ }), l(r("el-popover"), {
116
153
  teleported: !1
117
154
  }, {
118
- default: () => t("ul", {
155
+ default: () => l("ul", {
119
156
  class: "el-popover-classify"
120
- }, [t(r("el-tree"), {
121
- ref: (e) => {
122
- this.selectTableRef = e;
123
- },
157
+ }, [l(r("el-tree"), {
158
+ ref: this.selectTableRef,
124
159
  draggable: !0,
125
160
  data: this.tableColumns,
126
161
  "default-expand-all": !0,
127
162
  "default-checked-keys": this.defaultCheckedKeys,
128
163
  "show-checkbox": !0,
129
164
  "node-key": "prop",
130
- props: _,
131
- "allow-drop": K,
132
- onCheckChange: this.checkTree,
133
- onNodeDragEnd: (e) => z(e, this.selectTableRef)
165
+ props: N,
166
+ "allow-drop": W,
167
+ onCheckChange: (t, a, n) => this.checkTree(t, a, n),
168
+ onNodeDragEnd: (t, a) => {
169
+ t.data.sort && delete t.data.sort, a.data.sort && delete a.data.sort, x(t, a, this.selectTableRef);
170
+ }
134
171
  }, {
135
172
  default: ({
136
- data: e
137
- }) => t("div", {
173
+ data: t
174
+ }) => l("div", {
138
175
  class: "text-dot tree-item"
139
- }, [t(r("el-tooltip"), {
140
- content: e.label,
176
+ }, [l(r("el-tooltip"), {
177
+ content: t.label,
141
178
  placement: "top",
142
- disabled: e.label && e.label.length < 8
179
+ disabled: t.label && t.label.length < 8
143
180
  }, {
144
- default: () => t("span", null, [e.label])
181
+ default: () => l("span", null, [t.label])
145
182
  })])
146
183
  })]),
147
- reference: () => t(r("el-button"), {
184
+ reference: () => l(r("el-button"), {
148
185
  type: this.isAllData ? "" : "primary"
149
186
  }, {
150
- default: () => [k("分类显示"), t(r("el-icon"), null, {
151
- default: () => [t(M, null, null)]
187
+ default: () => [D("分类显示"), l(r("el-icon"), null, {
188
+ default: () => [l(A, null, null)]
152
189
  })]
153
190
  })
154
191
  })]
155
- })])]), this.$slots["header-footer"] && t("header", {
192
+ })])]), this.$slots["header-footer"] && l("header", {
156
193
  class: "dinert-table-headerFooter",
157
- ref: (e) => {
158
- this.headerFooterRef = e;
194
+ ref: (t) => {
195
+ this.headerFooterRef = t;
159
196
  }
160
- }, [(u = (g = this.$slots)["header-footer"]) == null ? void 0 : u.call(g)]), t("div", {
161
- ref: (e) => {
162
- this.bodyRef = e;
197
+ }, [(v = (C = this.$slots)["header-footer"]) == null ? void 0 : v.call(C)]), l("div", {
198
+ ref: (t) => {
199
+ this.bodyRef = t;
163
200
  },
164
201
  class: "dinert-table-body"
165
- }, [t(r("el-table"), T({
202
+ }, [l(r("el-table"), T({
166
203
  height: "100%",
167
204
  border: !0
168
205
  }, this.table, {
169
- ref: (e) => {
170
- this.tableRef = e;
206
+ ref: (t) => {
207
+ this.tableRef = t;
171
208
  },
172
- "row-key": (i = this.table) == null ? void 0 : i.rowKey
173
- }, (d = this.table) == null ? void 0 : d.on), {
174
- default: () => [t(j, {
209
+ "row-key": (c = this.table) == null ? void 0 : c.rowKey
210
+ }), {
211
+ default: () => [l(G, {
175
212
  table: this.table,
176
213
  "table-columns": this.tableColumns,
177
214
  "only-class": this.onlyClass,
178
- "popover-value": this.popoverValue
179
- }, s)]
180
- })]), t("div", {
215
+ "popover-value": this.popoverValue,
216
+ defaultCheckedKeys: this.defaultCheckedKeys,
217
+ onCheckedChange: (t, a, n) => this.$emit("CheckedChange", t, a, n)
218
+ }, f)]
219
+ })]), this.isFooter && l("div", {
181
220
  class: "dinert-table-footer",
182
- ref: (e) => {
183
- this.footerRef = e;
221
+ ref: (t) => {
222
+ this.footerRef = t;
184
223
  }
185
- }, [t(r("el-pagination"), T({
224
+ }, [l(r("el-pagination"), T({
186
225
  "model:current-page": 1,
187
226
  "model:page-size": 15,
188
227
  pageSizes: [15, 30, 50, 70, 100],
189
228
  "default-page-size": 15,
190
229
  layout: "total, sizes, prev, pager, next, jumper",
191
230
  total: 100
192
- }, (h = this.table) == null ? void 0 : h.pagination, {
193
- onSizeChange: (e) => this.$emit("SizeChange", e),
194
- onCurrentChange: (e) => this.$emit("CurrentChange", e)
195
- }, (f = this.table) == null ? void 0 : f.pagination.on), null)])]);
231
+ }, (g = this.table) == null ? void 0 : g.pagination, {
232
+ onSizeChange: (t) => this.$emit("SizeChange", t),
233
+ onCurrentChange: (t) => this.$emit("CurrentChange", t)
234
+ }), null)])]);
196
235
  }
197
236
  });
198
237
  export {
199
- L as default
238
+ de as default
200
239
  };
201
240
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/table/src/index.tsx"],"sourcesContent":["import {defineComponent, ref, computed, nextTick, watch, onMounted, toRefs} from 'vue'\nimport type {RewriteTableProps} from '@packages/components/table/types/index'\nimport {getUuid, columnProp, getTreeNode} from '@packages/utils/tools'\nimport {resizeTaleHeight, allowDrop, nodeDragEnd, treeProps, treeNode} from '@packages/components/table/hooks'\n\nimport DinertRecuveTableColumn from './recuve-table-column'\nimport useWindowResize from '@packages/hooks/useWindowResize'\nimport {ArrowDown} from '@element-plus/icons-vue'\n\n\nimport type {ElTable, ElSelect} from 'element-plus'\nimport type {PropType} from 'vue'\nimport type Node from 'element-plus/es/components/tree/src/model/node'\n\nimport '@packages/assets/scss/dinert-table.scss'\n\n\nexport default defineComponent({\n name: 'dinert-table',\n props: {\n table: {\n type: Object as PropType<RewriteTableProps>,\n },\n header: {\n type: Boolean,\n default: true\n },\n footer: {\n type: Boolean,\n default: true\n },\n tableSlot: {\n type: Boolean,\n default: false\n },\n },\n emits: ['SizeChange', 'CurrentChange'],\n setup(props) {\n const tableRef = ref<InstanceType<typeof ElTable>>()\n const popoverValue = ref(false)\n const onlyClass = ref('table_' + getUuid())\n const selectTableRef = ref<InstanceType<typeof ElSelect>>()\n const isAllData = ref(true)\n const headerRef = ref<HTMLElement | null>(null)\n const bodyRef = ref<HTMLElement | null>(null)\n const footerRef = ref<HTMLElement | null>(null)\n const headerFooterRef = ref<HTMLElement | null>(null)\n\n onMounted(() => {\n console.log(tableRef.value, 'selectTable.value')\n })\n\n\n const {table} = toRefs(props)\n const tableColumns = ref(table.value?.tableColumns || [])\n\n tableColumns.value.forEach((item, index) => {\n item.sort = typeof item.sort === 'undefined' ? index : item.sort\n return item\n })\n\n tableColumns.value.sort((a: any, b: any) => {\n return a.sort - b.sort\n })\n\n const resizeTaleHeightFn = () => {\n resizeTaleHeight(\n tableRef.value,\n headerRef.value,\n bodyRef.value,\n footerRef.value,\n headerFooterRef.value,\n (props.table as RewriteTableProps)\n )\n }\n\n onMounted(() => {\n setTimeout(() => {\n resizeTaleHeightFn()\n })\n })\n\n\n const getSetting = computed(() => {\n return getTreeNode(tableColumns.value, 'setting', [true], 'setting').length === 0\n && props.table?.setting !== false\n })\n\n const defaultCheckedKeys = getTreeNode(tableColumns.value, 'checked', [true, undefined], 'prop')\n\n const checkTree = (data: Node, checked: boolean, childChecked: boolean) => {\n data.checked = childChecked || checked\n nextTick(() => {\n resizeTaleHeightFn()\n })\n }\n\n useWindowResize(() => {\n resizeTaleHeightFn()\n }, 100)\n\n\n watch(() => props.table?.key, () => {\n nextTick(async () => {\n await treeNode(selectTableRef.value, tableColumns.value)\n\n setTimeout(() => {\n resizeTaleHeightFn()\n })\n })\n }, {\n immediate: true\n })\n\n watch(() => tableColumns.value, () => {\n nextTick(() => {\n isAllData.value = tableColumns.value.every(item => item.checked === true)\n })\n\n }, {\n deep: true,\n })\n\n\n return {\n getSetting,\n tableColumns,\n checkTree,\n defaultCheckedKeys,\n resizeTaleHeightFn,\n nodeDragEnd,\n popoverValue,\n onlyClass,\n isAllData,\n\n tableRef,\n headerRef,\n headerFooterRef,\n bodyRef,\n footerRef,\n selectTableRef\n }\n },\n render() {\n const slots = this.tableSlot ? this.$slots : {default: (scope: any) => this.$slots[scope.prop && columnProp(scope.prop)]?.(scope)}\n\n\n return (\n <section class={'dinert-table'}>\n {\n this.header\n && <header class={'dinert-table-header'} ref={el => {this.headerRef = el}}>\n {\n this.$slots['header-left']\n && <div class=\"dinert-table-header-left\">\n {this.$slots['header-left']?.()}\n </div>\n }\n {\n this.getSetting\n && <div class={'dinert-table-header-right'}>\n <el-button-group>\n <el-button type={this.isAllData ? 'primary' : 'default'}\n >全部显示\n </el-button>\n <el-popover teleported={false}\n v-slots={\n {\n default: () => (\n <ul class=\"el-popover-classify\">\n <el-tree\n ref={el => {this.selectTableRef = el}}\n draggable\n data={this.tableColumns}\n default-expand-all\n default-checked-keys={this.defaultCheckedKeys}\n show-checkbox\n node-key={'prop'}\n props={treeProps}\n allow-drop={allowDrop}\n onCheckChange={this.checkTree}\n onNodeDragEnd={(node: Node) => nodeDragEnd(node, (this.selectTableRef as any))}\n v-slots={\n {\n default: ({data}: {data: Node}) => (\n <div class=\"text-dot tree-item\">\n <el-tooltip content={data.label}\n placement={'top'}\n disabled={data.label && data.label.length < 8}\n v-slots={\n {\n default: () => (<span>{ data.label }</span>)\n }\n }\n >\n </el-tooltip>\n </div>\n )\n }\n }\n >\n </el-tree>\n </ul>\n ),\n reference: () => (\n <el-button type={!this.isAllData ? 'primary' : ''}>\n 分类显示<el-icon><ArrowDown/></el-icon>\n </el-button>\n )\n }\n\n }\n >\n </el-popover>\n </el-button-group>\n </div>\n }\n </header>\n }\n\n {\n this.$slots['header-footer']\n && <header class={'dinert-table-headerFooter'} ref={el => {this.headerFooterRef = el}}>\n {this.$slots['header-footer']?.()}\n </header>\n }\n\n <div ref={el => {this.bodyRef = el}} class=\"dinert-table-body\">\n <el-table\n height={'100%'}\n border={true}\n {...this.table}\n ref={el => {this.tableRef = el}}\n row-key={this.table?.rowKey}\n {...this.table?.on}\n >\n <DinertRecuveTableColumn table={this.table}\n table-columns={this.tableColumns}\n only-class={this.onlyClass}\n v-slots={slots}\n popover-value={this.popoverValue}\n >\n </DinertRecuveTableColumn>\n\n </el-table>\n </div>\n\n <div class=\"dinert-table-footer\" ref={el => {this.footerRef = el}}>\n <el-pagination\n model:current-page={1}\n model:page-size={15}\n pageSizes={[15, 30, 50, 70, 100]}\n default-page-size={15}\n layout={'total, sizes, prev, pager, next, jumper'}\n total={100}\n {...this.table?.pagination}\n onSizeChange={(val: number) => this.$emit('SizeChange', val)}\n onCurrentChange={(val: number) => this.$emit('CurrentChange', val)}\n {...this.table?.pagination.on}\n >\n\n </el-pagination>\n </div>\n\n </section>\n )\n }\n})\n"],"names":["defineComponent","name","props","table","type","Object","header","Boolean","default","footer","tableSlot","emits","setup","tableRef","ref","popoverValue","onlyClass","getUuid","selectTableRef","isAllData","headerRef","bodyRef","footerRef","headerFooterRef","onMounted","console","log","value","toRefs","tableColumns","forEach","item","index","sort","a","b","resizeTaleHeightFn","resizeTaleHeight","setTimeout","getSetting","computed","getTreeNode","length","setting","defaultCheckedKeys","undefined","checkTree","data","checked","childChecked","nextTick","useWindowResize","watch","key","treeNode","immediate","every","deep","nodeDragEnd","render","slots","$slots","scope","_b","_a","prop","columnProp","_createVNode","el","_resolveComponent","_createTextVNode","treeProps","allowDrop","node","label","reference","ArrowDown","_d","_c","_mergeProps","_e","rowKey","_f","on","DinertRecuveTableColumn","_g","pagination","val","$emit","_h"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/table/src/index.tsx"],"sourcesContent":["import {defineComponent, ref, computed, nextTick, watch, onMounted, toRefs, shallowRef} from 'vue'\nimport type {HeaderListProps, RewriteTableProps, TablePageProps} from '@packages/components/table/types/index'\nimport {getUuid, columnProp, getTreeNode, headerProp} from '@packages/utils/tools'\nimport {resizeTaleHeight, allowDrop, nodeDragEnd, treeProps, treeNode} from '@packages/components/table/hooks'\n\nimport DinertRecuveTableColumn from './recuve-table-column'\nimport useWindowResize from '@packages/hooks/useWindowResize'\nimport {ArrowDown, Plus, Delete, Download, Upload, Check, Close, ArrowUp} from '@element-plus/icons-vue'\n\nimport type {PropType} from 'vue'\nimport type Node from 'element-plus/es/components/tree/src/model/node'\n\nimport '@packages/assets/scss/dinert-table.scss'\n\n\nexport default defineComponent({\n name: 'dinert-table',\n props: {\n table: {\n type: Object as PropType<RewriteTableProps>,\n },\n header: {\n type: [Object, Boolean] as PropType<HeaderListProps | boolean>,\n default: true\n },\n footer: {\n type: Boolean,\n default: true\n },\n tableSlot: {\n type: Boolean,\n default: false\n },\n },\n emits: ['SizeChange', 'CurrentChange', 'CheckedChange'],\n setup(props, {emit}) {\n const tableRef = ref<any>()\n const popoverValue = ref(false)\n const onlyClass = ref('table_' + getUuid())\n const selectTableRef = ref<any>()\n const isAllData = ref(true)\n const headerRef = ref<HTMLElement | null>(null)\n const bodyRef = ref<HTMLElement | null>(null)\n const footerRef = ref<HTMLElement | null>(null)\n const headerFooterRef = ref<HTMLElement | null>(null)\n\n const {table, header} = toRefs(props)\n\n\n const tableColumns = computed(() => {\n const result = table.value?.tableColumns || []\n\n function sortRecuve(columns) {\n // eslint-disable-next-line @typescript-eslint/prefer-for-of\n for (let i = 0; i < columns.length; i++) {\n const item = columns[i]\n if (item.sort && i !== item.sort) {\n columns.splice(i, 1)\n if (item.sort > columns.length) {\n columns.splice(columns.length - 1, 0, item)\n } else if (item.sort < 0) {\n columns.splice(0, 0, item)\n } else {\n columns.splice(item.sort, 0, item)\n }\n }\n\n if (item.children && item.children.length) {\n sortRecuve(item.children)\n }\n }\n }\n sortRecuve(result)\n return result\n })\n\n const headerList = computed(() => {\n let index = 0\n\n if (typeof header.value === 'boolean') {\n return header.value\n }\n const result: Array<TablePageProps['header']> = []\n // eslint-disable-next-line max-statements\n Object.keys(header.value).forEach(key => {\n const tempObj = header.value[key]\n if (key === 'add') {\n tempObj.icon = tempObj.icon || shallowRef(Plus)\n tempObj.type = 'primary'\n tempObj.message = tempObj.message || '新增'\n } else if (key === 'delete') {\n tempObj.icon = tempObj.icon || shallowRef(Delete)\n tempObj.plain = tempObj.plain === undefined ? 'plain' : tempObj.plain\n tempObj.type = tempObj.type === undefined ? 'danger' : tempObj.type\n tempObj.message = tempObj.message || '删除'\n } else if (key === 'download') {\n tempObj.icon = tempObj.icon || shallowRef(Download)\n tempObj.plain = tempObj.plain === undefined ? 'plain' : tempObj.plain\n tempObj.type = 'primary'\n tempObj.message = tempObj.message || '下载'\n } else if (key === 'upload') {\n tempObj.icon = tempObj.icon || shallowRef(Upload)\n tempObj.plain = tempObj.plain === undefined ? 'plain' : tempObj.plain\n tempObj.type = 'primary'\n tempObj.message = tempObj.message || '上传'\n } else if (key === 'select') {\n tempObj.icon = tempObj.icon || shallowRef(Check)\n tempObj.plain = tempObj.plain === undefined ? 'plain' : tempObj.plain\n tempObj.message = tempObj.message || '全选'\n\n } else if (key === 'close') {\n tempObj.icon = tempObj.icon || shallowRef(Close)\n tempObj.plain = tempObj.plain === undefined ? 'plain' : tempObj.plain\n tempObj.message = tempObj.message || '取消全选'\n\n } else if (key === 'down') {\n tempObj.icon = tempObj.icon || shallowRef(ArrowDown)\n tempObj.plain = tempObj.plain === undefined ? 'plain' : tempObj.plain\n tempObj.message = tempObj.message || '展开'\n\n } else if (key === 'up') {\n tempObj.icon = tempObj.icon || shallowRef(ArrowUp)\n tempObj.plain = tempObj.plain === undefined ? 'plain' : tempObj.plain\n tempObj.message = tempObj.message || '收起'\n }\n\n result.push({\n key: key,\n ...tempObj,\n type: tempObj.type || 'default',\n sort: typeof tempObj.sort === 'undefined' ? index : tempObj.sort,\n })\n index += 10\n })\n\n result.sort((a: any, b: any) => {\n return a.sort - b.sort\n })\n return result\n })\n\n const resizeTaleHeightFn = () => {\n resizeTaleHeight(\n tableRef.value,\n headerRef.value,\n bodyRef.value,\n footerRef.value,\n headerFooterRef.value,\n (props.table as RewriteTableProps)\n )\n }\n\n onMounted(() => {\n setTimeout(() => {\n resizeTaleHeightFn()\n })\n })\n\n\n const getSetting = computed(() => {\n return getTreeNode(tableColumns.value, 'setting', [true], 'setting').length === 0\n && props.table?.setting !== false\n })\n\n const defaultCheckedKeys = getTreeNode(tableColumns.value, 'checked', [true, undefined], 'prop')\n\n const checkTree = (data: Node, checked: boolean, childChecked: boolean) => {\n data.checked = childChecked || checked\n emit('CheckedChange', data, checked, childChecked)\n nextTick(() => {\n resizeTaleHeightFn()\n })\n }\n\n useWindowResize(() => {\n resizeTaleHeightFn()\n }, 100)\n\n\n watch(() => props.table?.key, () => {\n nextTick(async () => {\n await treeNode(selectTableRef.value, tableColumns.value)\n setTimeout(() => {\n resizeTaleHeightFn()\n })\n })\n }, {\n immediate: true\n })\n\n watch(tableColumns, () => {\n nextTick(() => {\n isAllData.value = tableColumns.value.every(item => item.checked === true)\n })\n\n }, {\n deep: true,\n })\n\n\n return {\n getSetting,\n tableColumns,\n checkTree,\n defaultCheckedKeys,\n resizeTaleHeightFn,\n nodeDragEnd,\n popoverValue,\n onlyClass,\n isAllData,\n isFooter: props.footer,\n headerList,\n\n tableRef,\n headerRef,\n headerFooterRef,\n bodyRef,\n footerRef,\n selectTableRef\n }\n },\n render() {\n const slots = this.tableSlot ? this.$slots : {\n ...this.$slots,\n default: (scope: any) => this.$slots[scope.prop && columnProp(scope.prop)]?.(scope),\n header: (scope: any) => this.$slots[scope.prop && headerProp(scope.prop)]?.(scope)\n }\n const isHeader = this.header || (this.getSetting && this.header)\n\n const headerList = typeof this.headerList !== 'boolean' ? this.headerList as HeaderListProps[] : []\n return (\n <section class={'dinert-table'}>\n {\n isHeader\n && <header class={'dinert-table-header'} ref={el => {this.headerRef = el}}>\n {\n <div class=\"dinert-table-header-left\">\n {\n headerList.map((item: HeaderListProps) => {\n if (this.$slots['header_left_' + (item as any).key]) {\n return this.$slots['header_left_' + (item as any).key]?.(item)\n }\n\n\n if ((typeof item.show !== 'function' && [true, undefined].includes(item.show))\n || (typeof item.show === 'function' && [true, undefined].includes(item.show(item)))\n ) {\n return <el-button {...{\n ...item,\n type: item.type || 'primary',\n }} onClick={() => item.click && item.click(item)}>{item.message}</el-button>\n }\n return null\n })\n }\n </div>\n }\n {\n this.getSetting\n && <div class={'dinert-table-header-right'}>\n <el-button-group>\n <el-button type={this.isAllData ? 'primary' : 'default'}\n >全部显示\n </el-button>\n <el-popover teleported={false}\n v-slots={\n {\n default: () => (\n <ul class=\"el-popover-classify\">\n <el-tree\n ref={this.selectTableRef}\n draggable\n data={this.tableColumns}\n default-expand-all\n default-checked-keys={this.defaultCheckedKeys}\n show-checkbox\n node-key={'prop'}\n props={treeProps}\n allow-drop={allowDrop}\n onCheckChange={(data: Node, checked: boolean, childChecked: boolean) => this.checkTree(data, checked, childChecked)}\n onNodeDragEnd={(currentNode: Node, targetNode: Node) => {\n currentNode.data.sort && delete currentNode.data.sort\n targetNode.data.sort && delete targetNode.data.sort\n nodeDragEnd(currentNode, targetNode, this.selectTableRef)\n }\n }\n v-slots={\n {\n default: ({data}: {data: Node}) => (\n <div class=\"text-dot tree-item\">\n <el-tooltip content={data.label}\n placement={'top'}\n disabled={data.label && data.label.length < 8}\n v-slots={\n {\n default: () => (<span>{ data.label }</span>)\n }\n }\n >\n </el-tooltip>\n </div>\n )\n }\n }\n >\n </el-tree>\n </ul>\n ),\n reference: () => (\n <el-button type={!this.isAllData ? 'primary' : ''}>\n 分类显示<el-icon><ArrowDown/></el-icon>\n </el-button>\n )\n }\n\n }\n >\n </el-popover>\n </el-button-group>\n </div>\n }\n </header>\n }\n\n {\n this.$slots['header-footer']\n && <header class={'dinert-table-headerFooter'} ref={el => {this.headerFooterRef = el}}>\n {this.$slots['header-footer']?.()}\n </header>\n }\n\n <div ref={el => {this.bodyRef = el}} class=\"dinert-table-body\">\n\n <el-table\n height={'100%'}\n border={true}\n {...this.table}\n ref={el => {this.tableRef = el}}\n row-key={this.table?.rowKey}\n >\n <DinertRecuveTableColumn table={this.table}\n table-columns={this.tableColumns}\n only-class={this.onlyClass}\n v-slots={slots}\n popover-value={this.popoverValue}\n defaultCheckedKeys={this.defaultCheckedKeys}\n onCheckedChange={(data: Node, checked: boolean, childChecked: boolean) => this.$emit('CheckedChange', data, checked, childChecked)}\n\n >\n </DinertRecuveTableColumn>\n\n </el-table>\n </div>\n\n {this.isFooter && <div class=\"dinert-table-footer\" ref={el => {this.footerRef = el}} >\n <el-pagination\n model:current-page={1}\n model:page-size={15}\n pageSizes={[15, 30, 50, 70, 100]}\n default-page-size={15}\n layout={'total, sizes, prev, pager, next, jumper'}\n total={100}\n {...this.table?.pagination}\n onSizeChange={(val: number) => this.$emit('SizeChange', val)}\n onCurrentChange={(val: number) => this.$emit('CurrentChange', val)}\n >\n\n </el-pagination>\n </div>\n }\n </section>\n )\n }\n})\n"],"names":["defineComponent","name","props","table","type","Object","header","Boolean","default","footer","tableSlot","emits","setup","emit","tableRef","ref","popoverValue","onlyClass","getUuid","selectTableRef","isAllData","headerRef","bodyRef","footerRef","headerFooterRef","toRefs","tableColumns","computed","result","value","sortRecuve","columns","i","length","item","sort","splice","children","headerList","index","keys","forEach","key","tempObj","icon","shallowRef","Plus","message","Delete","plain","undefined","Download","Upload","Check","Close","ArrowDown","ArrowUp","push","a","b","resizeTaleHeightFn","resizeTaleHeight","onMounted","setTimeout","getSetting","getTreeNode","setting","defaultCheckedKeys","checkTree","data","checked","childChecked","nextTick","useWindowResize","watch","treeNode","immediate","every","deep","nodeDragEnd","isFooter","render","slots","$slots","scope","_b","_a","prop","columnProp","headerProp","isHeader","_createVNode","el","map","show","includes","_resolveComponent","_mergeProps","onClick","click","_createTextVNode","treeProps","allowDrop","onCheckChange","onNodeDragEnd","currentNode","targetNode","label","reference","_c","rowKey","DinertRecuveTableColumn","onCheckedChange","$emit","_d","pagination","val"],"mappings":"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"}