@dinert/element-plus 1.0.0 → 1.0.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 (142) hide show
  1. package/dist/element-plus.umd.js +2 -0
  2. package/dist/element-plus.umd.js.map +1 -0
  3. package/dist/style.css +1 -0
  4. package/es/node_modules/@element-plus/icons-vue/dist/index.mjs +95 -0
  5. package/es/node_modules/@element-plus/icons-vue/dist/index.mjs.map +1 -0
  6. package/es/packages/assets/scss/dinert-form.scss.mjs +5 -0
  7. package/es/packages/assets/scss/dinert-form.scss.mjs.map +1 -0
  8. package/es/packages/assets/scss/dinert-table-page.scss.mjs +5 -0
  9. package/es/packages/assets/scss/dinert-table-page.scss.mjs.map +1 -0
  10. package/es/packages/assets/scss/dinert-table.scss.mjs +5 -0
  11. package/es/packages/assets/scss/dinert-table.scss.mjs.map +1 -0
  12. package/es/packages/assets/scss/dinert-tooltip.scss.mjs +5 -0
  13. package/es/packages/assets/scss/dinert-tooltip.scss.mjs.map +1 -0
  14. package/es/packages/components/form/index.mjs +10 -0
  15. package/es/packages/components/form/index.mjs.map +1 -0
  16. package/es/packages/components/form/src/cascader.mjs +49 -0
  17. package/es/packages/components/form/src/cascader.mjs.map +1 -0
  18. package/es/packages/components/form/src/checkbox.mjs +44 -0
  19. package/es/packages/components/form/src/checkbox.mjs.map +1 -0
  20. package/es/packages/components/form/src/date.mjs +46 -0
  21. package/es/packages/components/form/src/date.mjs.map +1 -0
  22. package/es/packages/components/form/src/index.mjs +229 -0
  23. package/es/packages/components/form/src/index.mjs.map +1 -0
  24. package/es/packages/components/form/src/input-autocomplete.mjs +35 -0
  25. package/es/packages/components/form/src/input-autocomplete.mjs.map +1 -0
  26. package/es/packages/components/form/src/input-number.mjs +39 -0
  27. package/es/packages/components/form/src/input-number.mjs.map +1 -0
  28. package/es/packages/components/form/src/input.mjs +43 -0
  29. package/es/packages/components/form/src/input.mjs.map +1 -0
  30. package/es/packages/components/form/src/radio.mjs +43 -0
  31. package/es/packages/components/form/src/radio.mjs.map +1 -0
  32. package/es/packages/components/form/src/rate.mjs +35 -0
  33. package/es/packages/components/form/src/rate.mjs.map +1 -0
  34. package/es/packages/components/form/src/select.mjs +45 -0
  35. package/es/packages/components/form/src/select.mjs.map +1 -0
  36. package/es/packages/components/form/src/switch.mjs +36 -0
  37. package/es/packages/components/form/src/switch.mjs.map +1 -0
  38. package/es/packages/components/form/src/tree-select.mjs +43 -0
  39. package/es/packages/components/form/src/tree-select.mjs.map +1 -0
  40. package/es/packages/components/form/utils/index.mjs +44 -0
  41. package/es/packages/components/form/utils/index.mjs.map +1 -0
  42. package/es/packages/components/index.mjs +11 -0
  43. package/es/packages/components/index.mjs.map +1 -0
  44. package/es/packages/components/table/hooks/index.mjs +30 -0
  45. package/es/packages/components/table/hooks/index.mjs.map +1 -0
  46. package/es/packages/components/table/index.mjs +10 -0
  47. package/es/packages/components/table/index.mjs.map +1 -0
  48. package/es/packages/components/table/src/index.mjs +177 -0
  49. package/es/packages/components/table/src/index.mjs.map +1 -0
  50. package/es/packages/components/table/src/recuve-table-column.mjs +235 -0
  51. package/es/packages/components/table/src/recuve-table-column.mjs.map +1 -0
  52. package/es/packages/components/table-page/index.mjs +10 -0
  53. package/es/packages/components/table-page/index.mjs.map +1 -0
  54. package/es/packages/components/table-page/src/index.mjs +76 -0
  55. package/es/packages/components/table-page/src/index.mjs.map +1 -0
  56. package/es/packages/components/tooltip/index.mjs +10 -0
  57. package/es/packages/components/tooltip/index.mjs.map +1 -0
  58. package/es/packages/components/tooltip/src/index.mjs +56 -0
  59. package/es/packages/components/tooltip/src/index.mjs.map +1 -0
  60. package/es/packages/hooks/useTablePage/index.mjs +111 -0
  61. package/es/packages/hooks/useTablePage/index.mjs.map +1 -0
  62. package/es/packages/hooks/useWindowResize.mjs +16 -0
  63. package/es/packages/hooks/useWindowResize.mjs.map +1 -0
  64. package/es/packages/index.mjs +21 -0
  65. package/es/packages/index.mjs.map +1 -0
  66. package/es/packages/utils/tools.mjs +54 -0
  67. package/es/packages/utils/tools.mjs.map +1 -0
  68. package/es/src/components/form/index.d.ts +32 -0
  69. package/es/src/components/form/src/checkbox.d.ts +28 -0
  70. package/es/src/components/form/src/date.d.ts +28 -0
  71. package/es/src/components/form/src/index.d.ts +32 -0
  72. package/es/src/components/form/src/input-autocomplete.d.ts +28 -0
  73. package/es/src/components/form/src/input-number.d.ts +28 -0
  74. package/es/src/components/form/src/input.d.ts +28 -0
  75. package/es/src/components/form/src/radio.d.ts +28 -0
  76. package/es/src/components/form/src/rate.d.ts +28 -0
  77. package/es/src/components/form/src/switch.d.ts +28 -0
  78. package/es/src/components/form/src/tree-select.d.ts +39 -0
  79. package/es/src/components/form/types/index.d.ts +41 -0
  80. package/es/src/components/form/utils/index.d.ts +5 -0
  81. package/es/src/components/index.d.ts +7 -0
  82. package/es/src/components/table/hooks/index.d.ts +14 -0
  83. package/es/src/components/table/index.d.ts +709 -0
  84. package/es/src/components/table/src/index.d.ts +711 -0
  85. package/es/src/components/table/src/recuve-table-column.d.ts +43 -0
  86. package/es/src/components/table/types/index.d.ts +81 -0
  87. package/es/src/components/table-page/index.d.ts +1604 -0
  88. package/es/src/components/table-page/src/index.d.ts +1605 -0
  89. package/es/src/components/tooltip/index.d.ts +60 -0
  90. package/es/src/components/tooltip/src/index.d.ts +59 -0
  91. package/es/src/components/tooltip/types/index.d.ts +10 -0
  92. package/es/src/hooks/useTablePage/index.d.ts +47 -0
  93. package/es/src/hooks/useTablePage/types/index.d.ts +29 -0
  94. package/es/src/hooks/useWindowResize.d.ts +2 -0
  95. package/es/src/index.d.ts +6 -0
  96. package/es/src/utils/tools.d.ts +19 -0
  97. package/es/src/views/test-table/data.d.ts +21 -0
  98. package/es/src/views/test-table/tableColumns.d.ts +9 -0
  99. package/es/src/views/test-table-page/data.d.ts +2 -0
  100. package/es/src/views/test-table-page/formItem.d.ts +1 -0
  101. package/es/src/views/test-table-page/tableColumns.d.ts +27 -0
  102. package/es/src/views/test-table-page/types/index.d.ts +23 -0
  103. package/es/style.css +1 -0
  104. package/lib/index.js +2 -0
  105. package/lib/index.js.map +1 -0
  106. package/lib/src/components/form/index.d.ts +32 -0
  107. package/lib/src/components/form/src/checkbox.d.ts +28 -0
  108. package/lib/src/components/form/src/date.d.ts +28 -0
  109. package/lib/src/components/form/src/index.d.ts +32 -0
  110. package/lib/src/components/form/src/input-autocomplete.d.ts +28 -0
  111. package/lib/src/components/form/src/input-number.d.ts +28 -0
  112. package/lib/src/components/form/src/input.d.ts +28 -0
  113. package/lib/src/components/form/src/radio.d.ts +28 -0
  114. package/lib/src/components/form/src/rate.d.ts +28 -0
  115. package/lib/src/components/form/src/switch.d.ts +28 -0
  116. package/lib/src/components/form/src/tree-select.d.ts +39 -0
  117. package/lib/src/components/form/types/index.d.ts +41 -0
  118. package/lib/src/components/form/utils/index.d.ts +5 -0
  119. package/lib/src/components/index.d.ts +7 -0
  120. package/lib/src/components/table/hooks/index.d.ts +14 -0
  121. package/lib/src/components/table/index.d.ts +709 -0
  122. package/lib/src/components/table/src/index.d.ts +711 -0
  123. package/lib/src/components/table/src/recuve-table-column.d.ts +43 -0
  124. package/lib/src/components/table/types/index.d.ts +81 -0
  125. package/lib/src/components/table-page/index.d.ts +1604 -0
  126. package/lib/src/components/table-page/src/index.d.ts +1605 -0
  127. package/lib/src/components/tooltip/index.d.ts +60 -0
  128. package/lib/src/components/tooltip/src/index.d.ts +59 -0
  129. package/lib/src/components/tooltip/types/index.d.ts +10 -0
  130. package/lib/src/hooks/useTablePage/index.d.ts +47 -0
  131. package/lib/src/hooks/useTablePage/types/index.d.ts +29 -0
  132. package/lib/src/hooks/useWindowResize.d.ts +2 -0
  133. package/lib/src/index.d.ts +6 -0
  134. package/lib/src/utils/tools.d.ts +19 -0
  135. package/lib/src/views/test-table/data.d.ts +21 -0
  136. package/lib/src/views/test-table/tableColumns.d.ts +9 -0
  137. package/lib/src/views/test-table-page/data.d.ts +2 -0
  138. package/lib/src/views/test-table-page/formItem.d.ts +1 -0
  139. package/lib/src/views/test-table-page/tableColumns.d.ts +27 -0
  140. package/lib/src/views/test-table-page/types/index.d.ts +23 -0
  141. package/lib/style.css +1 -0
  142. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/table/src/index.tsx"],"sourcesContent":["import {defineComponent, ref, computed, nextTick, watch, onMounted} from 'vue'\r\nimport type {RewriteTableColumnCtx, RewriteTableProps} from '@/components/table/types/index'\r\nimport {getUuid, convertToFlat, columnProp, getTreeNode} from '@/utils/tools'\r\nimport {resizeTaleHeight, allowDrop, nodeDragEnd, treeProps, treeNode} from '@/components/table/hooks'\r\n\r\nimport DinertRecuveTableColumn from './recuve-table-column'\r\nimport useWindowResize from '@/hooks/useWindowResize'\r\nimport {ArrowDown} from '@element-plus/icons-vue'\r\n\r\n\r\nimport type {ElTable, ElSelect} from 'element-plus'\r\nimport type {PropType} from 'vue'\r\nimport type Node from 'element-plus/es/components/tree/src/model/node'\r\n\r\nimport '@/assets/scss/dinert-table.scss'\r\n\r\nconst popoverValue = ref(false)\r\nconst onlyClass = ref('table_' + getUuid())\r\nconst selectTable = ref<InstanceType<typeof ElSelect>>()\r\nconst isAllData = ref(true)\r\nconst tableRef = ref<InstanceType<typeof ElTable>>()\r\nconst headerRef = ref<HTMLElement | null>(null)\r\nconst bodyRef = ref<HTMLElement | null>(null)\r\nconst footerRef = ref<HTMLElement | null>(null)\r\nconst headerFooterRef = ref<HTMLElement | null>(null)\r\n\r\n\r\nexport default defineComponent({\r\n name: 'dinert-table',\r\n props: {\r\n table: {\r\n type: Object as PropType<RewriteTableProps>,\r\n },\r\n header: {\r\n type: Boolean,\r\n default: true\r\n },\r\n footer: {\r\n type: Boolean,\r\n default: true\r\n },\r\n tableSlot: {\r\n type: Boolean,\r\n default: false\r\n },\r\n },\r\n emits: ['SizeChange', 'CurrentChange'],\r\n setup(props) {\r\n\r\n const resizeTaleHeightFn = () => {\r\n resizeTaleHeight(\r\n tableRef.value,\r\n headerRef.value,\r\n bodyRef.value,\r\n footerRef.value,\r\n headerFooterRef.value,\r\n (props.table as RewriteTableProps)\r\n )\r\n }\r\n\r\n onMounted(() => {\r\n setTimeout(() => {\r\n resizeTaleHeightFn()\r\n })\r\n })\r\n\r\n\r\n const tableColumns = computed<RewriteTableColumnCtx[]>(() => {\r\n let tableColumns = props.table?.tableColumns || []\r\n tableColumns = tableColumns.map((item, index) => {\r\n item.sort = typeof item.sort === 'undefined' ? index : item.sort\r\n return item\r\n })\r\n\r\n tableColumns.sort((a: any, b: any) => {\r\n return a.sort - b.sort\r\n })\r\n\r\n return tableColumns\r\n })\r\n\r\n const getSetting = computed(() => {\r\n return getTreeNode(tableColumns.value, 'setting', [true], 'setting').length === 0\r\n && props.table?.setting !== false\r\n })\r\n\r\n const defaultCheckedKeys = getTreeNode(tableColumns.value, 'checked', [true, undefined], 'prop')\r\n\r\n const checkTree = (data: Node, checked: boolean, childChecked: boolean) => {\r\n data.checked = childChecked || checked\r\n nextTick(() => {\r\n resizeTaleHeightFn()\r\n })\r\n }\r\n\r\n useWindowResize(() => {\r\n resizeTaleHeightFn()\r\n }, 100)\r\n\r\n\r\n watch(() => props.table?.key, () => {\r\n nextTick(async () => {\r\n await treeNode(selectTable.value, props.table?.tableColumns)\r\n\r\n setTimeout(() => {\r\n resizeTaleHeightFn()\r\n })\r\n })\r\n }, {\r\n immediate: true\r\n })\r\n\r\n watch(() => tableColumns.value, () => {\r\n nextTick(() => {\r\n const tableColumnsData = convertToFlat(tableColumns.value)\r\n const selectData: any = selectTable.value && (selectTable.value as any).getCheckedKeys()\r\n isAllData.value = tableColumnsData.length === (selectData && selectData.length)\r\n })\r\n\r\n }, {\r\n deep: true,\r\n })\r\n\r\n\r\n return {\r\n getSetting,\r\n tableColumns,\r\n checkTree,\r\n defaultCheckedKeys,\r\n resizeTaleHeightFn,\r\n tableRef\r\n }\r\n },\r\n render() {\r\n const slots = this.tableSlot ? this.$slots : {default: (scope: any) => this.$slots[scope.prop && columnProp(scope.prop)]?.(scope)}\r\n\r\n\r\n return (\r\n <section class={'dinert-table'}>\r\n {\r\n this.header\r\n && <header class={'dinert-table-header'} ref={headerRef}>\r\n {\r\n this.$slots['header-left']\r\n && <div class=\"dinert-table-header-left\">\r\n {this.$slots['header-left']?.()}\r\n </div>\r\n }\r\n {\r\n this.getSetting\r\n && <div class={'dinert-table-header-right'}>\r\n <el-button-group>\r\n <el-button type={isAllData.value ? 'primary' : 'default'}\r\n >全部显示\r\n </el-button>\r\n <el-popover teleported={false}\r\n v-slots={\r\n {\r\n default: () => (\r\n <ul class=\"el-popover-classify\">\r\n <el-tree\r\n ref={selectTable}\r\n draggable\r\n data={this.tableColumns}\r\n default-expand-all\r\n default-checked-keys={this.defaultCheckedKeys}\r\n show-checkbox\r\n node-key={'prop'}\r\n props={treeProps}\r\n allow-drop={allowDrop}\r\n onCheckChange={this.checkTree}\r\n nodeDragEnd={(e: Node) => nodeDragEnd(e, (selectTable.value as any))}\r\n v-slots={\r\n {\r\n default: ({data}: {data: Node}) => (\r\n <div class=\"text-dot tree-item\">\r\n <el-tooltip content={data.label}\r\n placement={'top'}\r\n disabled={data.label && data.label.length < 8}\r\n v-slots={\r\n {\r\n default: () => (<span>{ data.label }</span>)\r\n }\r\n }\r\n >\r\n </el-tooltip>\r\n </div>\r\n )\r\n }\r\n }\r\n >\r\n </el-tree>\r\n </ul>\r\n ),\r\n reference: () => (\r\n <el-button type={!isAllData.value ? 'primary' : ''}>\r\n 分类显示<el-icon><ArrowDown/></el-icon>\r\n </el-button>\r\n )\r\n }\r\n\r\n }\r\n >\r\n </el-popover>\r\n </el-button-group>\r\n </div>\r\n }\r\n </header>\r\n }\r\n\r\n {\r\n this.$slots['header-footer']\r\n && <header class={'dinert-table-headerFooter'} ref={headerFooterRef}>\r\n {this.$slots['header-footer']?.()}\r\n </header>\r\n }\r\n\r\n <div ref={bodyRef} class=\"dinert-table-body\">\r\n <el-table\r\n height={'100%'}\r\n border={true}\r\n {...this.table}\r\n ref={tableRef}\r\n row-key={this.table?.rowKey}\r\n {...this.table?.on}\r\n >\r\n <DinertRecuveTableColumn table={this.table}\r\n table-columns={this.tableColumns}\r\n only-class={onlyClass.value}\r\n v-slots={slots}\r\n popover-value={popoverValue.value}\r\n >\r\n </DinertRecuveTableColumn>\r\n\r\n </el-table>\r\n </div>\r\n\r\n <div class=\"dinert-table-footer\" ref={footerRef}>\r\n <el-pagination\r\n model:current-page={1}\r\n model:page-size={15}\r\n pageSizes={[15, 30, 50, 70, 100]}\r\n default-page-size={15}\r\n layout={'total, sizes, prev, pager, next, jumper'}\r\n total={100}\r\n {...this.table?.pagination}\r\n onSizeChange={(val: number) => this.$emit('SizeChange', val)}\r\n onCurrentChange={(val: number) => this.$emit('CurrentChange', val)}\r\n {...this.table?.pagination.on}\r\n >\r\n\r\n </el-pagination>\r\n </div>\r\n\r\n </section>\r\n )\r\n }\r\n})\r\n"],"names":["popoverValue","ref","onlyClass","getUuid","selectTable","isAllData","tableRef","headerRef","bodyRef","footerRef","headerFooterRef","defineComponent","name","props","table","type","Object","header","Boolean","default","footer","tableSlot","emits","setup","resizeTaleHeightFn","resizeTaleHeight","value","onMounted","setTimeout","tableColumns","computed","map","item","index","sort","a","b","getSetting","getTreeNode","length","setting","defaultCheckedKeys","undefined","checkTree","data","checked","childChecked","nextTick","useWindowResize","watch","key","treeNode","immediate","tableColumnsData","convertToFlat","selectData","getCheckedKeys","deep","render","slots","$slots","scope","_b","_a","prop","columnProp","_createVNode","_resolveComponent","_createTextVNode","treeProps","allowDrop","e","nodeDragEnd","label","reference","ArrowDown","_d","_c","_mergeProps","_e","rowKey","_f","on","DinertRecuveTableColumn","_g","pagination","val","$emit","_h"],"mappings":"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"}
@@ -0,0 +1,235 @@
1
+ import { ref as R, defineComponent as _, watch as j, nextTick as E, createVNode as l, Fragment as g, resolveComponent as r, mergeProps as T, createTextVNode as m, computed as V, isVNode as F } from "vue";
2
+ import { getPropByPath as B, dataTransformRod as L, escapeHTML as P } from "../../../utils/tools.mjs";
3
+ import { treeNode as N, allShow as S, treeProps as $, allowDrop as A, checkTree as H, nodeDragEnd as I } from "../hooks/index.mjs";
4
+ import { Setting as M, ArrowDown as W } from "../../../../node_modules/@element-plus/icons-vue/dist/index.mjs";
5
+ function q(t) {
6
+ return typeof t == "function" || Object.prototype.toString.call(t) === "[object Object]" && !F(t);
7
+ }
8
+ const v = R(), O = R(0), z = (t) => {
9
+ const e = {};
10
+ for (const p in t)
11
+ p !== "children" && (e[p] = t[p]);
12
+ return e;
13
+ }, G = (t) => {
14
+ O.value++, O.value === 1 && v.value && N(v.value, t.table.tableColumns);
15
+ }, J = {
16
+ index: 60,
17
+ selection: 40,
18
+ expand: 40
19
+ }, Y = /* @__PURE__ */ _({
20
+ name: "dinert-recuve-table-column",
21
+ props: {
22
+ onlyClass: {
23
+ type: String,
24
+ default: ""
25
+ },
26
+ popoverValue: {
27
+ type: Boolean,
28
+ default: !1
29
+ },
30
+ table: {
31
+ type: Object
32
+ },
33
+ tableColumns: {
34
+ type: Array,
35
+ default: () => []
36
+ }
37
+ },
38
+ setup(t) {
39
+ return j(() => {
40
+ var o;
41
+ return (o = t.table) == null ? void 0 : o.key;
42
+ }, () => {
43
+ E(() => {
44
+ var o;
45
+ v.value && N(v.value, (o = t.table) == null ? void 0 : o.tableColumns);
46
+ });
47
+ }, {
48
+ immediate: !0
49
+ }), {
50
+ settingRender: (o) => l(r("el-popover"), {
51
+ value: o.popoverValue,
52
+ onBeforeEnter: () => G(o)
53
+ }, {
54
+ default: () => {
55
+ var y;
56
+ return l("ul", {
57
+ class: "el-popover-classify"
58
+ }, [l("li", null, [l(r("el-link"), {
59
+ class: "allSelect",
60
+ underline: !1,
61
+ type: "primary",
62
+ onClick: () => {
63
+ var a;
64
+ return S(v.value, ((a = o.table) == null ? void 0 : a.tableColumns) || []);
65
+ }
66
+ }, {
67
+ default: () => [m("全选")]
68
+ })]), l(r("el-tree"), {
69
+ ref: v,
70
+ draggable: !0,
71
+ data: (y = o.table) == null ? void 0 : y.tableColumns,
72
+ "default-expand-all": !0,
73
+ "show-checkbox": !0,
74
+ "node-key": "prop",
75
+ props: $,
76
+ allowDrop: A,
77
+ onCheckChange: H,
78
+ onNodeDragEnd: (a) => I(a, v.value)
79
+ }, {
80
+ default: ({
81
+ data: a
82
+ }) => l("div", {
83
+ class: "text-dot tree-item"
84
+ }, [l(r("el-tooltip"), {
85
+ content: a.label,
86
+ placement: "top",
87
+ disabled: a.label && a.label.length < 8
88
+ }, {
89
+ default: () => l("span", null, [a.label])
90
+ })])
91
+ })]);
92
+ },
93
+ reference: () => l(r("el-icon"), {
94
+ class: "setting-icon"
95
+ }, {
96
+ default: () => [l(M, null, null)]
97
+ })
98
+ }),
99
+ moreRender: (o, y, {
100
+ value: a,
101
+ scope: w,
102
+ isSlotValue: C,
103
+ slotValue: x
104
+ }) => {
105
+ const k = o.functions || {}, d = V(() => {
106
+ const n = [];
107
+ let c = 0;
108
+ return Object.keys(k).forEach((f) => {
109
+ const h = k[f];
110
+ n.push({
111
+ key: f,
112
+ ...h,
113
+ sort: typeof h.sort > "u" ? c : h.sort
114
+ }), c++;
115
+ }), n.sort((f, h) => f.sort - h.sort), n;
116
+ });
117
+ let i = o.maxOperations || 3;
118
+ i = d.value.length > i ? i - 1 : i;
119
+ const u = V(() => d.value.slice(0, i)), b = V(() => d.value.slice(i, d.value.length));
120
+ return d.value && d.value.length ? l(g, null, [u.value.map((n) => l(r("el-link"), {
121
+ type: n.type || "primary",
122
+ onClick: () => n.click && n.click(w, o, n),
123
+ key: n.key
124
+ }, {
125
+ default: () => [n.message]
126
+ })), b.value.length && d.value.length > i && l(r("el-dropdown"), {
127
+ teleported: !0,
128
+ onCommand: (n) => n.click && n.click(w, o, n)
129
+ }, {
130
+ default: () => l(r("el-link"), {
131
+ type: "primary",
132
+ underline: !1
133
+ }, {
134
+ default: () => [m("更多"), l(r("el-icon"), null, {
135
+ default: () => [l(W, null, null)]
136
+ })]
137
+ }),
138
+ dropdown: () => {
139
+ let n;
140
+ return l(r("el-dropdown-menu"), null, q(n = b.value.map((c) => l(r("el-dropdown-item"), {
141
+ command: c
142
+ }, {
143
+ default: () => [c.message]
144
+ }))) ? n : {
145
+ default: () => [n]
146
+ });
147
+ }
148
+ }) || null]) : l("div", {
149
+ class: "cell-item"
150
+ }, [C && x || a]);
151
+ }
152
+ };
153
+ },
154
+ render() {
155
+ const t = this.$slots.default;
156
+ return l(g, null, [
157
+ // eslint-disable-next-line array-callback-return, consistent-return
158
+ this.tableColumns && this.tableColumns.map((e) => {
159
+ const p = e.show === void 0 || e.show === !0, o = e.checked === void 0 || e.checked === !0, y = !["index", "selection", "expand"].includes(e.type) || e.custom, a = e.prop === "operations" && e.fixed === void 0 ? "right" : e.fixed, w = e.showOverflowTooltip === void 0 && e.prop !== "operations" ? !0 : e.showOverflowTooltip, C = `${e.prop || ""} ${e.className || ""}`, x = e.prop === "operations" && e.align === void 0 ? "center" : e.align, k = e.prop === "operations" && e.width === void 0 ? 200 : e.width, d = e.formatter && typeof e.formatter == "function", i = z(e);
160
+ if (p && o && y)
161
+ return l(r("el-table-column"), T(i, {
162
+ key: e.prop,
163
+ fixed: a,
164
+ "show-overflow-tooltip": w,
165
+ className: C,
166
+ width: k,
167
+ align: x
168
+ }), {
169
+ default: (s) => {
170
+ var f;
171
+ const u = B(s.row, e.prop || ""), b = L(u, (f = this.table) == null ? void 0 : f.errData), n = t == null ? void 0 : t({
172
+ ...s,
173
+ prop: e.prop
174
+ }), c = n && n[0] && n[0].children;
175
+ if (d) {
176
+ const h = e.formatter && e.formatter(s, e, u, s.$index), D = P(h);
177
+ return l(g, null, [c ? l("div", {
178
+ class: "cell-item"
179
+ }, [t == null ? void 0 : t({
180
+ ...s,
181
+ prop: e.prop
182
+ })]) : l("div", {
183
+ class: "cell-item",
184
+ innerHTML: D
185
+ }, null), l(r("dinert-recuve-table-column"), {
186
+ table: this.table,
187
+ key: e.prop,
188
+ tableColumns: e.children,
189
+ "popover-value": this.popoverValue,
190
+ "only-class": this.onlyClass
191
+ }, t)]);
192
+ } else
193
+ return l(g, null, [l("div", {
194
+ class: "cell-item"
195
+ }, [this.moreRender(e, this, {
196
+ value: b,
197
+ scope: s,
198
+ isSlotValue: c,
199
+ slotValue: n
200
+ })]), l(r("dinert-recuve-table-column"), {
201
+ table: this.table,
202
+ key: e.prop,
203
+ tableColumns: e.children,
204
+ "popover-value": this.popoverValue,
205
+ "only-class": this.onlyClass
206
+ }, t)]);
207
+ },
208
+ header: (s) => {
209
+ var n, c;
210
+ const u = t == null ? void 0 : t({
211
+ header: "header_" + e.prop,
212
+ data: e,
213
+ ...s
214
+ }), b = u && u[0] && u[0].children;
215
+ return t ? l(g, null, [m(" "), b && u || l("span", null, [s.column.label]), e.setting && ((n = this.table) == null ? void 0 : n.setting) !== !1 && this.settingRender(this)]) : l(g, null, [l("span", null, [s.column.label]), e.setting && ((c = this.table) == null ? void 0 : c.setting) !== !1 && this.settingRender(this)]);
216
+ }
217
+ });
218
+ if (p && o) {
219
+ const s = e.align === void 0 ? "center" : "left", u = e.width === void 0 ? J[e.type || ""] || 60 : e.width;
220
+ return l(r("el-table-column"), T(e, {
221
+ key: e.prop,
222
+ fixed: a,
223
+ align: s,
224
+ "reserve-selection": e.reserveSelection,
225
+ width: u
226
+ }), null);
227
+ }
228
+ })
229
+ ]);
230
+ }
231
+ });
232
+ export {
233
+ Y as default
234
+ };
235
+ //# sourceMappingURL=recuve-table-column.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recuve-table-column.mjs","sources":["../../../../../packages/components/table/src/recuve-table-column.tsx"],"sourcesContent":["import {defineComponent, watch, ref, nextTick, computed} from 'vue'\r\n\r\nimport {getPropByPath, dataTransformRod, escapeHTML} from '@/utils/tools'\r\nimport {treeNode, allowDrop, checkTree, nodeDragEnd, allShow, treeProps} from '@/components/table/hooks'\r\nimport {Setting, ArrowDown} from '@element-plus/icons-vue'\r\nimport type {TableColumnCtx} from 'element-plus'\r\n\r\n\r\nimport type Node from 'element-plus/es/components/tree/src/model/node'\r\nimport type {\r\n RecuveTableColumnProps,\r\n RewriteTableProps,\r\n TablePageProps,\r\n RewriteTableColumnCtx\r\n} from '@/components/table/types/index'\r\n\r\nimport type {PropType} from 'vue'\r\n\r\nimport type {ElSelect} from 'element-plus'\r\n\r\nconst selectTable = ref<InstanceType<typeof ElSelect>>()\r\n\r\nconst popoverIndex = ref(0)\r\n\r\nconst filterColumn = (column: any) => {\r\n const obj: any = {}\r\n for (const prop in column) {\r\n if (prop !== 'children') {\r\n obj[prop] = column[prop]\r\n }\r\n }\r\n return obj\r\n}\r\n\r\nconst treeBeforeEnter = (props: TablePageProps) => {\r\n popoverIndex.value++\r\n if (popoverIndex.value === 1 && selectTable.value) {\r\n treeNode(selectTable.value, props.table.tableColumns)\r\n }\r\n}\r\n\r\nconst mapWidth: Record<string, any> = {\r\n index: 60,\r\n selection: 40,\r\n expand: 40\r\n}\r\n\r\n\r\nexport default defineComponent({\r\n name: 'dinert-recuve-table-column',\r\n props: {\r\n onlyClass: {\r\n type: String,\r\n default: ''\r\n },\r\n popoverValue: {\r\n type: Boolean,\r\n default: false\r\n },\r\n table: {\r\n type: Object as PropType<RewriteTableProps>,\r\n },\r\n tableColumns: {\r\n type: Array as PropType<RewriteTableColumnCtx[]>,\r\n default: () => ([])\r\n }\r\n },\r\n setup(props) {\r\n\r\n watch(() => props.table?.key, () => {\r\n nextTick(() => {\r\n selectTable.value && treeNode(selectTable.value, props.table?.tableColumns)\r\n })\r\n }, {\r\n immediate: true\r\n })\r\n\r\n\r\n const settingRender = (props: RecuveTableColumnProps) => {\r\n return (\r\n <el-popover\r\n value={props.popoverValue}\r\n onBeforeEnter={() => treeBeforeEnter((props as TablePageProps))}\r\n v-slots={\r\n {\r\n default: () => (\r\n <ul class=\"el-popover-classify\">\r\n <li>\r\n <el-link class=\"allSelect\" underline={false}\r\n type={'primary'} onClick={() => allShow(selectTable.value, props.table?.tableColumns || [])}\r\n >全选</el-link>\r\n </li>\r\n <el-tree\r\n ref={selectTable}\r\n draggable\r\n data={props.table?.tableColumns}\r\n default-expand-all\r\n show-checkbox\r\n node-key={'prop'}\r\n props={treeProps}\r\n allowDrop={allowDrop}\r\n onCheckChange={checkTree}\r\n onNodeDragEnd={(e: Node) => nodeDragEnd(e, (selectTable.value as any))}\r\n v-slots={\r\n {\r\n default: ({data}: {data: Node}) => (\r\n <div class=\"text-dot tree-item\">\r\n <el-tooltip content={data.label}\r\n placement={'top'}\r\n disabled={data.label && data.label.length < 8}\r\n v-slots={\r\n {\r\n default: () => (<span>{ data.label }</span>)\r\n }\r\n }\r\n >\r\n </el-tooltip>\r\n </div>\r\n )\r\n }\r\n }\r\n >\r\n\r\n </el-tree>\r\n </ul>\r\n ),\r\n reference: () => (\r\n <el-icon class=\"setting-icon\">\r\n <Setting/>\r\n </el-icon>\r\n )\r\n\r\n }\r\n }\r\n >\r\n </el-popover>)\r\n }\r\n\r\n const moreRender = (column: RewriteTableColumnCtx, _this: any, {\r\n value,\r\n scope,\r\n isSlotValue,\r\n slotValue\r\n }: any) => {\r\n const itemFunc = column.functions || {}\r\n const functions = computed(() => {\r\n const result: any = []\r\n let index = 0\r\n Object.keys((itemFunc)).forEach(key => {\r\n const value = itemFunc[key]\r\n result.push({\r\n key: key,\r\n ...value,\r\n sort: typeof value.sort === 'undefined' ? index : value.sort,\r\n })\r\n index++\r\n })\r\n\r\n result.sort((a: any, b: any) => {\r\n return a.sort - b.sort\r\n })\r\n return result\r\n })\r\n let maxOperations = column.maxOperations || 3\r\n const functionsLen = functions.value.length\r\n maxOperations = functionsLen > maxOperations ? maxOperations - 1 : maxOperations\r\n\r\n const defaultFunctions = computed(() => {\r\n const list = functions.value.slice(0, maxOperations)\r\n return list\r\n })\r\n\r\n const seniorFunctions = computed(() => {\r\n const list = functions.value.slice(maxOperations, functions.value.length)\r\n return list\r\n })\r\n\r\n\r\n if (functions.value && functions.value.length) {\r\n return (\r\n <>\r\n {defaultFunctions.value.map((item2: any) => {\r\n return (\r\n <el-link type={item2.type || 'primary'} onClick={() => item2.click && item2.click(scope, column, item2)} key={item2.key}>{item2.message}</el-link>\r\n )\r\n })}\r\n {(seniorFunctions.value.length && functions.value.length > maxOperations\r\n && <el-dropdown teleported={true}\r\n onCommand={(item: any) => (item.click && item.click(scope, column, item))}\r\n v-slots= {{\r\n default: () => {\r\n return (\r\n <el-link type=\"primary\" underline={false}>\r\n 更多<el-icon><ArrowDown /></el-icon>\r\n </el-link>\r\n )\r\n },\r\n dropdown: () => {\r\n return (\r\n <el-dropdown-menu>\r\n {\r\n seniorFunctions.value.map((item: any) => {\r\n return (\r\n <el-dropdown-item command={item}>{item.message}</el-dropdown-item>\r\n )\r\n })\r\n }\r\n </el-dropdown-menu>\r\n )\r\n }\r\n }}>\r\n\r\n </el-dropdown>) || null\r\n\r\n }\r\n </>\r\n )\r\n }\r\n\r\n return <div class=\"cell-item\">{ (isSlotValue && slotValue) || value}</div>\r\n }\r\n\r\n return {\r\n settingRender,\r\n moreRender\r\n }\r\n },\r\n render() {\r\n const defaultSlot = this.$slots.default\r\n\r\n return (\r\n <>\r\n {\r\n // eslint-disable-next-line array-callback-return, consistent-return\r\n this.tableColumns && this.tableColumns.map(item => {\r\n const show = item.show === undefined || item.show === true\r\n const checked = item.checked === undefined || item.checked === true\r\n const custom = !['index', 'selection', 'expand'].includes((item.type as string)) || item.custom\r\n const fixed = item.prop === 'operations' && item.fixed === undefined ? 'right' : item.fixed\r\n const showOverflowTooltip = item.showOverflowTooltip === undefined && item.prop !== 'operations' ? true : item.showOverflowTooltip\r\n const className = `${item.prop || ''} ${item.className || ''}`\r\n const align = item.prop === 'operations' && item.align === undefined ? 'center' : item.align\r\n const width = item.prop === 'operations' && item.width === undefined ? 200 : item.width\r\n const formatter = item.formatter && typeof item.formatter === 'function'\r\n const noChildItem = filterColumn(item)\r\n\r\n\r\n if (show && checked && custom) {\r\n return (\r\n <el-table-column\r\n {...noChildItem}\r\n key={item.prop}\r\n fixed={fixed}\r\n show-overflow-tooltip={showOverflowTooltip}\r\n className={className}\r\n width={width}\r\n align={align}\r\n v-slots= {{\r\n default: (scope: any) => {\r\n const deepValue = getPropByPath(scope.row, item.prop || '')\r\n const value = dataTransformRod(deepValue, this.table?.errData)\r\n\r\n const slotValue = defaultSlot?.({...scope, prop: item.prop})\r\n const isSlotValue = slotValue && slotValue[0] && slotValue[0].children\r\n\r\n if (formatter) {\r\n const htmlValue = item.formatter && item.formatter(scope, (item as TableColumnCtx<any>), deepValue, scope.$index)\r\n const escapeValue = escapeHTML(htmlValue)\r\n\r\n return (\r\n <>\r\n {isSlotValue\r\n ? <div class=\"cell-item\">{ defaultSlot?.({...scope, prop: item.prop})}</div>\r\n : <div class=\"cell-item\" v-html={escapeValue}></div>}\r\n\r\n <dinert-recuve-table-column table={this.table}\r\n key={item.prop}\r\n tableColumns={item.children}\r\n popover-value={this.popoverValue}\r\n only-class={this.onlyClass}\r\n v-slots={defaultSlot}\r\n >\r\n </dinert-recuve-table-column>\r\n </>\r\n )\r\n } else {\r\n\r\n return (\r\n <>\r\n <div class=\"cell-item\">\r\n {this.moreRender(item, this, {\r\n value,\r\n scope,\r\n isSlotValue,\r\n slotValue\r\n })}\r\n </div>\r\n <dinert-recuve-table-column table={this.table}\r\n key={item.prop}\r\n tableColumns={item.children}\r\n popover-value={this.popoverValue}\r\n only-class={this.onlyClass}\r\n v-slots={defaultSlot}\r\n >\r\n </dinert-recuve-table-column>\r\n </>\r\n )\r\n }\r\n },\r\n header: (scope: any) => {\r\n\r\n const slotValue = defaultSlot?.({header: 'header_' + item.prop, data: item, ...scope})\r\n const isSlotValue = slotValue && slotValue[0] && slotValue[0].children\r\n if (defaultSlot) {\r\n return (\r\n <> {(isSlotValue && slotValue) || <span>{scope.column.label}</span>}\r\n {item.setting && this.table?.setting !== false && this.settingRender((this as RecuveTableColumnProps))}\r\n </>\r\n )\r\n } else {\r\n return (\r\n <>\r\n <span>{scope.column.label}</span>\r\n {item.setting && this.table?.setting !== false && this.settingRender(this as RecuveTableColumnProps)}\r\n </>\r\n )\r\n }\r\n }\r\n }}\r\n >\r\n\r\n\r\n </el-table-column>\r\n )\r\n } else if (show && checked) {\r\n const align = item.align === undefined ? 'center' : 'left'\r\n const width = item.width === undefined ? mapWidth[item.type || ''] || 60 : item.width\r\n\r\n return (<el-table-column\r\n {...item}\r\n key={item.prop}\r\n fixed={fixed}\r\n align={align}\r\n reserve-selection={item.reserveSelection}\r\n width={width}\r\n >\r\n </el-table-column>)\r\n }\r\n\r\n })\r\n }\r\n\r\n </>\r\n )\r\n }\r\n})\r\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","selectTable","ref","popoverIndex","filterColumn","column","obj","prop","treeBeforeEnter","props","value","treeNode","table","tableColumns","mapWidth","index","selection","expand","defineComponent","name","onlyClass","type","String","default","popoverValue","Boolean","Array","setup","watch","key","nextTick","immediate","settingRender","_createVNode","_resolveComponent","onBeforeEnter","onClick","allShow","_createTextVNode","treeProps","allowDrop","checkTree","e","nodeDragEnd","data","label","length","reference","Setting","moreRender","_this","scope","isSlotValue","slotValue","itemFunc","functions","computed","result","keys","forEach","push","sort","a","b","maxOperations","defaultFunctions","slice","seniorFunctions","_Fragment","map","item2","click","message","item","ArrowDown","dropdown","_slot","render","defaultSlot","$slots","show","undefined","checked","custom","includes","fixed","showOverflowTooltip","className","align","width","formatter","noChildItem","_mergeProps","deepValue","getPropByPath","row","dataTransformRod","_a","errData","children","htmlValue","$index","escapeValue","escapeHTML","header","setting","_b","reserveSelection"],"mappings":";;;;AAI0D,SAAAA,EAAAC,GAAA;AAAA,SAAA,OAAAA,KAAA,cAAAC,OAAAC,UAAAC,SAAAC,KAAAJ,CAAA,MAAAK,qBAAAA,CAAAA,EAAAL,CAAA;AAAA;AAgB1D,MAAMM,IAAcC,EAAG,GAEjBC,IAAeD,EAAI,CAAC,GAEpBE,IAAgBC,CAAAA,MAAgB;AAClC,QAAMC,IAAW,CAAA;AACjB,aAAWC,KAAQF;AACf,IAAIE,MAAS,eACTD,EAAIC,CAAI,IAAIF,EAAOE,CAAI;AAG/B,SAAOD;AACX,GAEME,IAAmBC,CAAAA,MAA0B;AAC/CN,EAAAA,EAAaO,SACTP,EAAaO,UAAU,KAAKT,EAAYS,SACxCC,EAASV,EAAYS,OAAOD,EAAMG,MAAMC,YAAY;AAE5D,GAEMC,IAAgC;AAAA,EAClCC,OAAO;AAAA,EACPC,WAAW;AAAA,EACXC,QAAQ;AACZ,GAGeC,sBAAgB;AAAA,EAC3BC,MAAM;AAAA,EACNV,OAAO;AAAA,IACHW,WAAW;AAAA,MACPC,MAAMC;AAAAA,MACNC,SAAS;AAAA,IACZ;AAAA,IACDC,cAAc;AAAA,MACVH,MAAMI;AAAAA,MACNF,SAAS;AAAA,IACZ;AAAA,IACDX,OAAO;AAAA,MACHS,MAAMzB;AAAAA,IACT;AAAA,IACDiB,cAAc;AAAA,MACVQ,MAAMK;AAAAA,MACNH,SAASA,MAAO,CAAA;AAAA,IACpB;AAAA,EACH;AAAA,EACDI,MAAMlB,GAAO;AAETmB,WAAAA,EAAM,MAAMnB;;AAAAA,cAAAA,IAAAA,EAAMG,UAANH,gBAAAA,EAAaoB;AAAAA,OAAK,MAAM;AAChCC,MAAAA,EAAS,MAAM;;AACX7B,QAAAA,EAAYS,SAASC,EAASV,EAAYS,QAAOD,IAAAA,EAAMG,UAANH,gBAAAA,EAAaI,YAAY;AAAA,MAC9E,CAAC;AAAA,IACL,GAAG;AAAA,MACCkB,WAAW;AAAA,IACf,CAAC,GAmJM;AAAA,MACHC,eAjJmBvB,CAAAA,MACnBwB,EAAAC,EAAA,YAAA,GAAA;AAAA,QAAA,OAEezB,EAAMe;AAAAA,QAAY,eACVW,MAAM3B,EAAiBC,CAAwB;AAAA,SAE1D;AAAA,QACIc,SAASA,MAAAA;;AAAAU,iBAAAA,EAAA,MAAA;AAAA,YAAA,OAAA;AAAA,UAAA,GAAA,CAAAA,EAAA,MAAA,MAAA,CAAAA,EAAAC,EAAA,SAAA,GAAA;AAAA,YAAA,OAAA;AAAA,YAAA,WAGyC;AAAA,YAAK,MACjC;AAAA,YAAS,SAAWE,MAAAA;;AAAMC,qBAAAA,EAAQpC,EAAYS,SAAOD,IAAAA,EAAMG,UAANH,gBAAAA,EAAaI,iBAAgB,EAAE;AAAA;AAAA,UAAC,GAAA;AAAA,YAAAU,SAAAA,MAAA,CAAAe,EAAA,IAAA,CAAA;AAAA,UAAAL,CAAAA,CAAAA,CAAAA,GAAAA,EAAAC,EAAA,SAAA,GAAA;AAAA,YAAA,KAI1FjC;AAAAA,YAAW,WAAA;AAAA,YAAA,OAEVQ,IAAAA,EAAMG,UAANH,gBAAAA,EAAaI;AAAAA,YAAY,sBAAA;AAAA,YAAA,iBAAA;AAAA,YAAA,YAGrB;AAAA,YAAM,OACT0B;AAAAA,YAAS,WACLC;AAAAA,YAAS,eACLC;AAAAA,YAAS,eACRC,CAAAA,MAAYC,EAAYD,GAAIzC,EAAYS,KAAa;AAAA,aAEjE;AAAA,YACIa,SAASA,CAAC;AAAA,cAACqB,MAAAA;AAAAA,YAAkB,MAACX,EAAA,OAAA;AAAA,cAAA,OAAA;AAAA,YAAAA,GAAAA,CAAAA,EAAAC,EAAA,YAAA,GAAA;AAAA,cAAA,SAEDU,EAAKC;AAAAA,cAAK,WAChB;AAAA,cAAK,UACND,EAAKC,SAASD,EAAKC,MAAMC,SAAS;AAAA,eAExC;AAAA,cACIvB,SAASA,MAAAU,EAAeW,QAAAA,MAAAA,CAAAA,EAAKC,KAAK,CAAA;AAAA,YACrC,CAAA,CAAA,CAAA;AAAA,UAMpB,CAAA,CAMhB,CAAA;AAAA;AAAA,QACDE,WAAWA,MAAAd,EAAAC,EAAA,SAAA,GAAA;AAAA,UAAA,OAAA;AAAA,QAAA,GAAA;AAAA,UAAAX,SAAAA,MAAAU,CAAAA,EAAAe,GAAA,MAAA,IAAA,CAAA;AAAA,QAAA,CAAA;AAAA,OAMd;AAAA,MA4FbC,YAtFeA,CAAC5C,GAA+B6C,GAAY;AAAA,QAC3DxC,OAAAA;AAAAA,QACAyC,OAAAA;AAAAA,QACAC,aAAAA;AAAAA,QACAC,WAAAA;AAAAA,MACC,MAAM;AACP,cAAMC,IAAWjD,EAAOkD,aAAa,IAC/BA,IAAYC,EAAS,MAAM;AAC7B,gBAAMC,IAAc,CAAA;AACpB,cAAI1C,IAAQ;AACZnB,wBAAO8D,KAAMJ,CAAS,EAAEK,QAAQ9B,CAAAA,MAAO;AACnC,kBAAMnB,IAAQ4C,EAASzB,CAAG;AAC1B4B,YAAAA,EAAOG,KAAK;AAAA,cACR/B,KAAKA;AAAAA,cACL,GAAGnB;AAAAA,cACHmD,MAAM,OAAOnD,EAAMmD,OAAS,MAAc9C,IAAQL,EAAMmD;AAAAA,YAC5D,CAAC,GACD9C;AAAAA,UACJ,CAAC,GAED0C,EAAOI,KAAK,CAACC,GAAQC,MACVD,EAAED,OAAOE,EAAEF,IACrB,GACMJ;AAAAA,QACX,CAAC;AACD,YAAIO,IAAgB3D,EAAO2D,iBAAiB;AAE5CA,QAAAA,IADqBT,EAAU7C,MAAMoC,SACNkB,IAAgBA,IAAgB,IAAIA;AAEnE,cAAMC,IAAmBT,EAAS,MACjBD,EAAU7C,MAAMwD,MAAM,GAAGF,CAAa,CAEtD,GAEKG,IAAkBX,EAAS,MAChBD,EAAU7C,MAAMwD,MAAMF,GAAeT,EAAU7C,MAAMoC,MAAM,CAE3E;AAGD,eAAIS,EAAU7C,SAAS6C,EAAU7C,MAAMoC,SACnCb,EAAAmC,GAESH,MAAAA,CAAAA,EAAiBvD,MAAM2D,IAAKC,CAAAA,MACzBrC,EAAAC,EAAA,SAAA,GAAA;AAAA,UAAA,MACmBoC,EAAMjD,QAAQ;AAAA,UAAS,SAAWe,MAAMkC,EAAMC,SAASD,EAAMC,MAAMpB,GAAO9C,GAAQiE,CAAK;AAAA,UAAC,KAAOA,EAAMzC;AAAAA,QAAG,GAAA;AAAA,UAAAN,SAAAA,MAAG+C,CAAAA,EAAME,OAAO;AAAA,QAAA,CAAA,CAE9I,GACCL,EAAgBzD,MAAMoC,UAAUS,EAAU7C,MAAMoC,SAASkB,KAAa/B,EAAAC,EAAA,aAAA,GAAA;AAAA,UAAA,YAC5C;AAAA,UAAI,WAChBuC,CAAAA,MAAeA,EAAKF,SAASE,EAAKF,MAAMpB,GAAO9C,GAAQoE,CAAI;AAAA,WAC7D;AAAA,UACNlD,SAASA,MACLU,EAAAC,EAAA,SAAA,GAAA;AAAA,YAAA,MAAA;AAAA,YAAA,WACuC;AAAA,UAAK,GAAA;AAAA,YAAAX,SAAAA,MAAA,CAAAe,EAAAL,IAAAA,GAAAA,EAAAC,EAAA,SAAA,GAAA,MAAA;AAAA,cAAAX,SAAAA,MAAAU,CAAAA,EAAAyC,GAAA,MAAA,IAAA,CAAA;AAAA,YAAA,CAAA,CAAA;AAAA,UAAA,CAAA;AAAA,UAKhDC,UAAUA,MAAM;AAAA,gBAAAC;AACZ,mBAAA3C,EAAAC,EAAA,kBAAA,GAAA,MAAAxC,EAAAkF,IAGYT,EAAgBzD,MAAM2D,IAAKI,CAAAA,MACvBxC,EAAAC,EAAA,kBAAA,GAAA;AAAA,cAAA,SAC+BuC;AAAAA,YAAI,GAAA;AAAA,cAAAlD,SAAAA,MAAGkD,CAAAA,EAAKD,OAAO;AAAA,YAAA,CAAA,CAErD,CAAC,IAAAI,IAAA;AAAA,cAAArD,SAAAA,MAAA,CAAAqD,CAAA;AAAA,YAAA,CAAA;AAAA,UAIlB;AAAA,SACH,KAEc,IAAI,CAAA,IAOnC3C,EAAA,OAAA;AAAA,UAAA,OAAA;AAAA,QAAA,GAAA,CAAiCmB,KAAeC,KAAc3C,CAAK,CAAA;AAAA;;EAO1E;AAAA,EACDmE,SAAS;AACL,UAAMC,IAAc,KAAKC,OAAOxD;AAEhC,WAAAU,EAAAmC,GAAA,MAAA;AAAA;AAAA,MAIY,KAAKvD,gBAAgB,KAAKA,aAAawD,IAAII,CAAAA,MAAQ;AAC/C,cAAMO,IAAOP,EAAKO,SAASC,UAAaR,EAAKO,SAAS,IAChDE,IAAUT,EAAKS,YAAYD,UAAaR,EAAKS,YAAY,IACzDC,IAAS,CAAC,CAAC,SAAS,aAAa,QAAQ,EAAEC,SAAUX,EAAKpD,IAAe,KAAKoD,EAAKU,QACnFE,IAAQZ,EAAKlE,SAAS,gBAAgBkE,EAAKY,UAAUJ,SAAY,UAAUR,EAAKY,OAChFC,IAAsBb,EAAKa,wBAAwBL,UAAaR,EAAKlE,SAAS,eAAe,KAAOkE,EAAKa,qBACzGC,IAAa,GAAEd,EAAKlE,QAAQ,EAAG,IAAGkE,EAAKc,aAAa,EAAG,IACvDC,IAAQf,EAAKlE,SAAS,gBAAgBkE,EAAKe,UAAUP,SAAY,WAAWR,EAAKe,OACjFC,IAAQhB,EAAKlE,SAAS,gBAAgBkE,EAAKgB,UAAUR,SAAY,MAAMR,EAAKgB,OAC5EC,IAAYjB,EAAKiB,aAAa,OAAOjB,EAAKiB,aAAc,YACxDC,IAAcvF,EAAaqE,CAAI;AAGrC,YAAIO,KAAQE,KAAWC;AACnB,iBAAAlD,EAAAC,EAAA0D,iBAAAA,GAAAA,EAEYD,GAAW;AAAA,YAAA,KACVlB,EAAKlE;AAAAA,YAAI,OACP8E;AAAAA,YAAK,yBACWC;AAAAA,YAAmB,WAC/BC;AAAAA,YAAS,OACbE;AAAAA,YAAK,OACLD;AAAAA,WACG,GAAA;AAAA,YACNjE,SAAU4B,CAAAA,MAAe;;AACrB,oBAAM0C,IAAYC,EAAc3C,EAAM4C,KAAKtB,EAAKlE,QAAQ,EAAE,GACpDG,IAAQsF,EAAiBH,IAAWI,IAAA,KAAKrF,UAAL,gBAAAqF,EAAYC,OAAO,GAEvD7C,IAAYyB,KAAAA,gBAAAA,EAAc;AAAA,gBAAC,GAAG3B;AAAAA,gBAAO5C,MAAMkE,EAAKlE;AAAAA,cAAI,IACpD6C,IAAcC,KAAaA,EAAU,CAAC,KAAKA,EAAU,CAAC,EAAE8C;AAE9D,kBAAIT,GAAW;AACX,sBAAMU,IAAY3B,EAAKiB,aAAajB,EAAKiB,UAAUvC,GAAQsB,GAA8BoB,GAAW1C,EAAMkD,MAAM,GAC1GC,IAAcC,EAAWH,CAAS;AAExC,uBAAAnE,EAAAmC,GAEShB,MAAAA,CAAAA,IAAWnB,EAAA,OAAA;AAAA,kBAAA,OAAA;AAAA,gBAAA,GAAA,CACmB6C,KAAAA,gBAAAA,EAAc;AAAA,kBAAC,GAAG3B;AAAAA,kBAAO5C,MAAMkE,EAAKlE;AAAAA,kBAAM,KAAA0B,EAAA,OAAA;AAAA,kBAAA,OAAA;AAAA,kBAAA,WACpCqE;AAAAA,gBAAmB,GAAA,IAAA,GAAArE,EAAAC,EAAA,4BAAA,GAAA;AAAA,kBAAA,OAErB,KAAKtB;AAAAA,kBAAK,KACpC6D,EAAKlE;AAAAA,kBAAI,cACAkE,EAAK0B;AAAAA,kBAAQ,iBACZ,KAAK3E;AAAAA,kBAAY,cACpB,KAAKJ;AAAAA,gBAAS,GACjB0D,CAAW,CAAA,CAAA;AAAA,cAKpC;AAEI,uBAAA7C,EAAAmC,GAAA,MAAA,CAAAnC,EAAA,OAAA;AAAA,kBAAA,OAAA;AAAA,gBAAA,GAAA,CAGa,KAAKgB,WAAWwB,GAAM,MAAM;AAAA,kBACzB/D,OAAAA;AAAAA,kBACAyC,OAAAA;AAAAA,kBACAC,aAAAA;AAAAA,kBACAC,WAAAA;AAAAA,gBACH,CAAA,CAAC,CAAA,GAAApB,EAAAC,EAAA,4BAAA,GAAA;AAAA,kBAAA,OAE6B,KAAKtB;AAAAA,kBAAK,KACpC6D,EAAKlE;AAAAA,kBAAI,cACAkE,EAAK0B;AAAAA,kBAAQ,iBACZ,KAAK3E;AAAAA,kBAAY,cACpB,KAAKJ;AAAAA,gBAAS,GACjB0D,CAAW,CAAA,CAAA;AAAA,YAMvC;AAAA,YACD0B,QAASrD,CAAAA,MAAe;;AAEpB,oBAAME,IAAYyB,KAAAA,gBAAAA,EAAc;AAAA,gBAAC0B,QAAQ,YAAY/B,EAAKlE;AAAAA,gBAAMqC,MAAM6B;AAAAA,gBAAM,GAAGtB;AAAAA,cAAK,IAC9EC,IAAcC,KAAaA,EAAU,CAAC,KAAKA,EAAU,CAAC,EAAE8C;AAC9D,qBAAIrB,IACA7C,EAAAmC,GAAA9B,MAAAA,CAAAA,SACUc,KAAeC,KAASpB,EAAYkB,QAAAA,MAAAA,CAAAA,EAAM9C,OAAOwC,KAAK,CAAA,GACvD4B,EAAKgC,aAAWR,IAAA,KAAKrF,UAAL,gBAAAqF,EAAYQ,aAAY,MAAS,KAAKzE,cAAe,IAA+B,CAAC,CAAA,IAI9GC,EAAAmC,GAAA,MAAA,CAAAnC,EAAA,QAAA,MAAA,CAEekB,EAAM9C,OAAOwC,KAAK,CAAA,GACxB4B,EAAKgC,aAAWC,IAAA,KAAK9F,UAAL,gBAAA8F,EAAYD,aAAY,MAAS,KAAKzE,cAAc,IAA8B,CAAC,CAAA;AAAA,YAIpH;AAAA,WACH;AAMN,YAAIgD,KAAQE,GAAS;AACxB,gBAAMM,IAAQf,EAAKe,UAAUP,SAAY,WAAW,QAC9CQ,IAAQhB,EAAKgB,UAAUR,SAAYnE,EAAS2D,EAAKpD,QAAQ,EAAE,KAAK,KAAKoD,EAAKgB;AAEhF,iBAAAxD,EAAAC,EAAA0D,iBAAAA,GAAAA,EACQnB,GAAI;AAAA,YAAA,KACHA,EAAKlE;AAAAA,YAAI,OACP8E;AAAAA,YAAK,OACLG;AAAAA,YAAK,qBACOf,EAAKkC;AAAAA,YAAgB,OACjClB;AAAAA,UAAK,CAAA,GAAA,IAAA;AAAA,QAGpB;AAAA,MAEH,CAAA;AAAA,IAAC,CAAA;AAAA,EAKlB;AACJ,CAAC;"}
@@ -0,0 +1,10 @@
1
+ import n from "./src/index.mjs";
2
+ const l = (t) => (t.install = (a) => {
3
+ const e = t.name;
4
+ a.component(e, t);
5
+ }, t), o = l(n);
6
+ export {
7
+ o as TablePage,
8
+ o as default
9
+ };
10
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../../../../packages/components/table-page/index.ts"],"sourcesContent":["import _TablePage from './src'\r\n\r\nimport type {App, Plugin} from 'vue'\r\ntype SFCWithInstall<T> = T & Plugin\r\nconst withInstall = <T>(comp: T) => {\r\n (comp as SFCWithInstall<T>).install = (app: App) => {\r\n const name = (comp as any).name\r\n // 注册组件\r\n app.component(name, comp as SFCWithInstall<T>)\r\n }\r\n return comp as SFCWithInstall<T>\r\n}\r\nexport const TablePage = withInstall(_TablePage)\r\nexport default TablePage\r\n"],"names":["withInstall","comp","app","name","TablePage","_TablePage"],"mappings":";AAIA,MAAMA,IAAc,CAAIC,OACnBA,EAA2B,UAAU,CAACC,MAAa;AAChD,QAAMC,IAAQF,EAAa;AAEvB,EAAAC,EAAA,UAAUC,GAAMF,CAAyB;AAAA,GAE1CA,IAEEG,IAAYJ,EAAYK,CAAU;"}
@@ -0,0 +1,76 @@
1
+ import { ref as a, defineComponent as h, createVNode as o } from "vue";
2
+ import { Table as f } from "../../table/index.mjs";
3
+ import { Form as u } from "../../form/index.mjs";
4
+ import "../../../assets/scss/dinert-table-page.scss.mjs";
5
+ const n = a(), r = a(), i = a(), m = () => {
6
+ const t = setTimeout(() => {
7
+ var e;
8
+ (e = r.value) == null || e.resizeTaleHeightFn(), clearTimeout(t);
9
+ }, 300);
10
+ }, g = /* @__PURE__ */ h({
11
+ name: "dinert-table-page",
12
+ props: {
13
+ form: {
14
+ type: Object,
15
+ default: () => ({})
16
+ },
17
+ table: {
18
+ type: Object,
19
+ default: () => ({})
20
+ },
21
+ search: {
22
+ type: Boolean,
23
+ default: !0
24
+ },
25
+ footer: {
26
+ type: Boolean,
27
+ default: !0
28
+ },
29
+ header: {
30
+ type: Boolean,
31
+ default: !0
32
+ },
33
+ tableSlot: {
34
+ type: Boolean,
35
+ default: !0
36
+ }
37
+ },
38
+ emits: ["SizeChange", "CurrentChange", "search", "reset"],
39
+ setup() {
40
+ return {
41
+ tablePageDom: n,
42
+ tableRef: r,
43
+ formRef: i
44
+ };
45
+ },
46
+ render() {
47
+ const t = this.tableSlot ? this.$slots : {
48
+ ...this.$slots,
49
+ default: (e) => {
50
+ var s, l;
51
+ return (l = (s = this.$slots)[e.prop]) == null ? void 0 : l.call(s, e);
52
+ }
53
+ };
54
+ return o("section", {
55
+ class: "dinert-table-page",
56
+ ref: n
57
+ }, [o(u, {
58
+ search: this.search,
59
+ form: this.form,
60
+ onUnFold: m,
61
+ ref: i
62
+ }, this.$slots), o(f, {
63
+ ref: r,
64
+ table: this.table,
65
+ header: this.header,
66
+ footer: this.footer,
67
+ tableSlot: !0,
68
+ onSizeChange: (e) => this.$emit("SizeChange", e),
69
+ onCurrentChange: (e) => this.$emit("CurrentChange", e)
70
+ }, t)]);
71
+ }
72
+ });
73
+ export {
74
+ g as default
75
+ };
76
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/table-page/src/index.tsx"],"sourcesContent":["import {defineComponent, ref} from 'vue'\r\n\r\nimport DinertTable from '@/components/table'\r\nimport DinertForm from '@/components/form'\r\n\r\nimport type {RewriteTableProps} from '@/components/table/types/index'\r\nimport type {PropType} from 'vue'\r\nimport type {RewriteFormProps} from '@/components/form/types'\r\n\r\nimport '@/assets/scss/dinert-table-page.scss'\r\n\r\n\r\nconst tablePageDom = ref<HTMLElement>()\r\nconst tableRef = ref<InstanceType<typeof DinertTable>>()\r\nconst formRef = ref<InstanceType<typeof DinertForm>>()\r\n\r\nconst onUnFold = () => {\r\n const timer = setTimeout(() => {\r\n tableRef.value?.resizeTaleHeightFn()\r\n clearTimeout(timer)\r\n }, 300)\r\n}\r\n\r\nexport default defineComponent({\r\n name: 'dinert-table-page',\r\n props: {\r\n form: {\r\n type: Object as PropType<RewriteFormProps>,\r\n default: () => ({})\r\n },\r\n table: {\r\n type: Object as PropType<RewriteTableProps>,\r\n default: () => ({})\r\n },\r\n search: {\r\n type: Boolean,\r\n default: true\r\n },\r\n footer: {\r\n type: Boolean,\r\n default: true\r\n },\r\n header: {\r\n type: Boolean,\r\n default: true\r\n },\r\n tableSlot: {\r\n type: Boolean,\r\n default: true\r\n }\r\n },\r\n emits: ['SizeChange', 'CurrentChange', 'search', 'reset'],\r\n setup() {\r\n\r\n return {\r\n tablePageDom,\r\n tableRef,\r\n formRef\r\n }\r\n },\r\n render() {\r\n\r\n const slots = this.tableSlot ? this.$slots : {...this.$slots, default: (scope: any) => this.$slots[(scope.prop)]?.(scope)}\r\n\r\n return (\r\n <section class=\"dinert-table-page\" ref={tablePageDom}>\r\n <DinertForm search={this.search} form={this.form} v-slots={this.$slots} onUnFold={onUnFold} ref={formRef}></DinertForm>\r\n <DinertTable\r\n ref={tableRef}\r\n table={this.table}\r\n header={this.header}\r\n footer={this.footer}\r\n tableSlot={true}\r\n v-slots={slots}\r\n onSizeChange={(val: number) => this.$emit('SizeChange', val)}\r\n onCurrentChange={(val: number) => this.$emit('CurrentChange', val)}\r\n >\r\n </DinertTable>\r\n </section>\r\n )\r\n }\r\n})\r\n"],"names":["tablePageDom","ref","tableRef","formRef","onUnFold","timer","setTimeout","value","resizeTaleHeightFn","clearTimeout","defineComponent","name","props","form","type","Object","default","table","search","Boolean","footer","header","tableSlot","emits","setup","render","slots","$slots","scope","_b","_a","prop","_createVNode","DinertForm","DinertTable","val","$emit"],"mappings":";;;;AAYA,MAAMA,IAAeC,EAAG,GAClBC,IAAWD,EAAG,GACdE,IAAUF,EAAG,GAEbG,IAAWA,MAAM;AACnB,QAAMC,IAAQC,WAAW,MAAM;;AAC3BJ,KAAAA,IAAAA,EAASK,UAATL,QAAAA,EAAgBM,sBAChBC,aAAaJ,CAAK;AAAA,EACrB,GAAE,GAAG;AACV,GAEeK,sBAAgB;AAAA,EAC3BC,MAAM;AAAA,EACNC,OAAO;AAAA,IACHC,MAAM;AAAA,MACFC,MAAMC;AAAAA,MACNC,SAASA,OAAO,CAAA;AAAA,IACnB;AAAA,IACDC,OAAO;AAAA,MACHH,MAAMC;AAAAA,MACNC,SAASA,OAAO,CAAA;AAAA,IACnB;AAAA,IACDE,QAAQ;AAAA,MACJJ,MAAMK;AAAAA,MACNH,SAAS;AAAA,IACZ;AAAA,IACDI,QAAQ;AAAA,MACJN,MAAMK;AAAAA,MACNH,SAAS;AAAA,IACZ;AAAA,IACDK,QAAQ;AAAA,MACJP,MAAMK;AAAAA,MACNH,SAAS;AAAA,IACZ;AAAA,IACDM,WAAW;AAAA,MACPR,MAAMK;AAAAA,MACNH,SAAS;AAAA,IACb;AAAA,EACH;AAAA,EACDO,OAAO,CAAC,cAAc,iBAAiB,UAAU,OAAO;AAAA,EACxDC,QAAQ;AAEJ,WAAO;AAAA,MACHxB,cAAAA;AAAAA,MACAE,UAAAA;AAAAA,MACAC,SAAAA;AAAAA;EAEP;AAAA,EACDsB,SAAS;AAEL,UAAMC,IAAQ,KAAKJ,YAAY,KAAKK,SAAS;AAAA,MAAC,GAAG,KAAKA;AAAAA,MAAQX,SAAUY,CAAAA,MAAU;;AAAK,gBAAAC,KAAAC,IAAA,KAAKH,QAAQC,EAAMG,UAAnB,gBAAAF,EAAA,KAAAC,GAA4BF;AAAAA;AAAAA;AAEnH,WAAAI,EAAA,WAAA;AAAA,MAAA,OAAA;AAAA,MAAA,KAC4ChC;AAAAA,OAAYgC,CAAAA,EAAAC,GAAA;AAAA,MAAA,QAC5B,KAAKf;AAAAA,MAAM,MAAQ,KAAKL;AAAAA,MAAI,UAAkCT;AAAAA,MAAQ,KAAOD;AAAAA,IAAO,GAA7C,KAAKwB,MAAM,GAAAK,EAAAE,GAAA;AAAA,MAAA,KAE7DhC;AAAAA,MAAQ,OACN,KAAKe;AAAAA,MAAK,QACT,KAAKI;AAAAA,MAAM,QACX,KAAKD;AAAAA,MAAM,WACR;AAAA,MAAI,cAEAe,CAAAA,MAAgB,KAAKC,MAAM,cAAcD,CAAG;AAAA,MAAC,iBAC1CA,CAAAA,MAAgB,KAAKC,MAAM,iBAAiBD,CAAG;AAAA,IAAC,GAFzDT,CAAK,CAAA,CAAA;AAAA,EAO9B;AACJ,CAAC;"}
@@ -0,0 +1,10 @@
1
+ import l from "./src/index.mjs";
2
+ const a = (t) => (t.install = (n) => {
3
+ const o = t.name;
4
+ n.component(o, t);
5
+ }, t), s = a(l);
6
+ export {
7
+ s as Tooltip,
8
+ s as default
9
+ };
10
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../../../../packages/components/tooltip/index.ts"],"sourcesContent":["import _Tooltip from './src'\r\n\r\nimport type {App, Plugin} from 'vue'\r\ntype SFCWithInstall<T> = T & Plugin\r\nconst withInstall = <T>(comp: T) => {\r\n (comp as SFCWithInstall<T>).install = (app: App) => {\r\n const name = (comp as any).name\r\n // 注册组件\r\n app.component(name, comp as SFCWithInstall<T>)\r\n }\r\n return comp as SFCWithInstall<T>\r\n}\r\nexport const Tooltip = withInstall(_Tooltip)\r\nexport default Tooltip\r\n"],"names":["withInstall","comp","app","name","Tooltip","_Tooltip"],"mappings":";AAIA,MAAMA,IAAc,CAAIC,OACnBA,EAA2B,UAAU,CAACC,MAAa;AAChD,QAAMC,IAAQF,EAAa;AAEvB,EAAAC,EAAA,UAAUC,GAAMF,CAAyB;AAAA,GAE1CA,IAEEG,IAAUJ,EAAYK,CAAQ;"}
@@ -0,0 +1,56 @@
1
+ import { defineComponent as p, createVNode as n, resolveComponent as a, mergeProps as r } from "vue";
2
+ import "../../../assets/scss/dinert-tooltip.scss.mjs";
3
+ const i = (t, e) => {
4
+ if (e.item && e.item.options && e.item.type === "select") {
5
+ const o = e.item.options.options;
6
+ if (o && o.length) {
7
+ const s = o.findIndex((l) => l.value === t);
8
+ if (s !== -1)
9
+ return o[s].label;
10
+ }
11
+ }
12
+ return t;
13
+ }, c = /* @__PURE__ */ p({
14
+ name: "dinert-tooltip",
15
+ props: {
16
+ options: {
17
+ type: Object,
18
+ default: () => ({})
19
+ },
20
+ content: {
21
+ type: String,
22
+ default: ""
23
+ },
24
+ disabled: {
25
+ type: Boolean,
26
+ default: !0
27
+ },
28
+ item: {
29
+ type: Object,
30
+ default: () => ({})
31
+ }
32
+ },
33
+ emits: ["LabelMouseEnter"],
34
+ setup() {
35
+ return {};
36
+ },
37
+ render() {
38
+ const t = this.$slots.default;
39
+ return n(a("el-tooltip"), r({
40
+ key: this.disabled,
41
+ content: this.content,
42
+ disabled: this.disabled
43
+ }, this.options), {
44
+ default: () => n("span", null, [n("span", {
45
+ class: "text-tooltip"
46
+ }, [i(this.content, this)]), n("span", {
47
+ class: "label-text",
48
+ onMouseenter: (e) => this.$emit("LabelMouseEnter", e)
49
+ }, [(t == null ? void 0 : t()) || i(this.content, this)]), n("span", null, [this.disabled])])
50
+ });
51
+ }
52
+ });
53
+ export {
54
+ c as default
55
+ };
56
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/tooltip/src/index.tsx"],"sourcesContent":["import {defineComponent} from 'vue'\r\n\r\nimport type {PropType} from 'vue'\r\nimport type {DinertTooltipProps} from '@/components/tooltip/types'\r\n\r\nimport '@/assets/scss/dinert-tooltip.scss'\r\n\r\nconst getValue = (content?: string, _this?: any) => {\r\n if (_this.item && _this.item.options) {\r\n if (_this.item.type === 'select') {\r\n const options = _this.item.options.options\r\n if (options && options.length) {\r\n const index = options.findIndex((item: any) => item.value === content)\r\n if (index !== -1) {\r\n return (options[index]).label\r\n }\r\n }\r\n }\r\n }\r\n\r\n return content\r\n}\r\n\r\nexport default defineComponent({\r\n name: 'dinert-tooltip',\r\n props: {\r\n options: {\r\n type: Object,\r\n default: () => ({})\r\n },\r\n content: {\r\n type: String,\r\n default: ''\r\n },\r\n disabled: {\r\n type: Boolean,\r\n default: true\r\n },\r\n item: {\r\n type: Object as PropType<DinertTooltipProps['item']>,\r\n default: () => ({})\r\n }\r\n },\r\n emits: ['LabelMouseEnter'],\r\n setup() {\r\n\r\n return {}\r\n },\r\n render() {\r\n const defaultSlot = this.$slots.default\r\n\r\n return (\r\n <el-tooltip\r\n key={this.disabled}\r\n content={this.content}\r\n disabled={this.disabled}\r\n {...this.options}\r\n v-slots={{\r\n default: () => {\r\n return (\r\n <span>\r\n <span class=\"text-tooltip\">{ getValue(this.content, this) }</span>\r\n <span class=\"label-text\" onMouseenter={(e: MouseEvent) => this.$emit('LabelMouseEnter', e)}>\r\n {(defaultSlot?.()) || getValue(this.content, this) }\r\n </span>\r\n <span>{this.disabled}</span>\r\n </span>\r\n )\r\n }\r\n }}\r\n >\r\n\r\n </el-tooltip>\r\n )\r\n }\r\n})\r\n"],"names":["getValue","content","_this","item","options","type","length","index","findIndex","value","label","defineComponent","name","props","Object","default","String","disabled","Boolean","emits","setup","render","defaultSlot","$slots","_createVNode","_resolveComponent","_mergeProps","e","$emit"],"mappings":";;AAOA,MAAMA,IAAWA,CAACC,GAAkBC,MAAgB;AAChD,MAAIA,EAAMC,QAAQD,EAAMC,KAAKC,WACrBF,EAAMC,KAAKE,SAAS,UAAU;AAC9B,UAAMD,IAAUF,EAAMC,KAAKC,QAAQA;AACnC,QAAIA,KAAWA,EAAQE,QAAQ;AAC3B,YAAMC,IAAQH,EAAQI,UAAWL,CAAAA,MAAcA,EAAKM,UAAUR,CAAO;AACrE,UAAIM,MAAU;AACV,eAAQH,EAAQG,CAAK,EAAGG;AAAAA,IAEhC;AAAA,EACJ;AAGJ,SAAOT;AACX,GAEeU,sBAAgB;AAAA,EAC3BC,MAAM;AAAA,EACNC,OAAO;AAAA,IACHT,SAAS;AAAA,MACLC,MAAMS;AAAAA,MACNC,SAASA,OAAO,CAAA;AAAA,IACnB;AAAA,IACDd,SAAS;AAAA,MACLI,MAAMW;AAAAA,MACND,SAAS;AAAA,IACZ;AAAA,IACDE,UAAU;AAAA,MACNZ,MAAMa;AAAAA,MACNH,SAAS;AAAA,IACZ;AAAA,IACDZ,MAAM;AAAA,MACFE,MAAMS;AAAAA,MACNC,SAASA,OAAO,CAAA;AAAA,IACpB;AAAA,EACH;AAAA,EACDI,OAAO,CAAC,iBAAiB;AAAA,EACzBC,QAAQ;AAEJ,WAAO;EACV;AAAA,EACDC,SAAS;AACL,UAAMC,IAAc,KAAKC,OAAOR;AAEhC,WAAAS,EAAAC,EAAA,YAAA,GAAAC,EAAA;AAAA,MAAA,KAEa,KAAKT;AAAAA,MAAQ,SACT,KAAKhB;AAAAA,MAAO,UACX,KAAKgB;AAAAA,OACX,KAAKb,OAAO,GACP;AAAA,MACLW,SAASA,MACLS,iBAAAA,EAAA,QAAA;AAAA,QAAA,OAAA;AAAA,SAEqCxB,CAAAA,EAAS,KAAKC,SAAS,IAAI,CAAC,CAAA,GAAAuB,EAAA,QAAA;AAAA,QAAA,OAAA;AAAA,QAAA,cACjBG,OAAkB,KAAKC,MAAM,mBAAmBD,CAAC;AAAA,MAAC,GAAA,EACpFL,KAAAA,gBAAAA,QAAoBtB,EAAS,KAAKC,SAAS,IAAI,CAAC,CAAA,GAAAuB,EAE/C,QAAA,MAAA,CAAA,KAAKP,QAAQ,CAAA,CAAA,CAAA;AAAA,KAInC;AAAA,EAKb;AACJ,CAAC;"}
@@ -0,0 +1,111 @@
1
+ import { ref as i } from "vue";
2
+ import { getUuid as n } from "../../utils/tools.mjs";
3
+ import t from "lodash";
4
+ class f {
5
+ constructor(a) {
6
+ this.selecTableDatas = i([]), this.lastSelectDatas = i([]), this.ids = i([]), this.tablePageRef = i(null), this.defaultOptions = {
7
+ table: {
8
+ rowKey: "id",
9
+ className: "table_page" + n(),
10
+ tableColumns: [],
11
+ data: [],
12
+ key: !0,
13
+ border: !0,
14
+ tableSlot: !0,
15
+ pagination: {
16
+ total: 0,
17
+ currentPage: 1,
18
+ pageSize: 10,
19
+ pageSizes: [10, 20, 30, 50, 100]
20
+ },
21
+ on: {}
22
+ },
23
+ form: {
24
+ model: {},
25
+ formItem: {}
26
+ },
27
+ footer: !1,
28
+ search: !1
29
+ }, this.firstOptions = {
30
+ table: {
31
+ tableColumns: [],
32
+ data: [],
33
+ key: !0,
34
+ pagination: {}
35
+ },
36
+ form: { model: {}, formItem: {} }
37
+ }, this.getTableParams = () => ({}), this.ajaxTableDataAfter = () => ({}), this.lookOperations = () => ({}), this.editOperations = () => ({}), this.addOperations = () => ({}), this.deleteOperations = () => ({}), this.importOperations = () => ({}), this.options = t.defaultsDeep(t.cloneDeep(a), this.defaultOptions), this.firstOptions = t.cloneDeep(this.options), this.table = i(this.options.table), this.form = i(this.options.form), this.footer = i(this.options.footer), this.showSearch = i(this.options.search), this.params = {}, this.oldParams = {};
38
+ }
39
+ // 导入
40
+ sizeChange(a) {
41
+ const e = this.table.value.pagination.pageSize;
42
+ this.table.value.pagination.pageSize = a;
43
+ const s = this.table.value.pagination;
44
+ (e > a || s.currentPage <= Math.ceil(s.total / s.pageSize)) && this.search({ name: "size", pageSize: a });
45
+ }
46
+ currentChange(a) {
47
+ this.table.value.pagination.currentPage = a, this.search({ name: "current", currentPage: a });
48
+ }
49
+ async getTableData(a) {
50
+ const e = await this.ajaxTableData(a);
51
+ return this.changeTableData(e.data), typeof this.ajaxTableDataAfter == "function" && this.ajaxTableDataAfter(e), this.table.value.key = !this.table.value.key, e;
52
+ }
53
+ changeTableData(a) {
54
+ if (a && a.data && a.data.length)
55
+ for (let e = 0; e < a.data.length; e++)
56
+ a.data[e].index = e + 1 + a.pageNum * a.pageSize;
57
+ this.table.value.data = a.data, this.table.value.pagination.total = a.total;
58
+ }
59
+ getAjaxTableDataParams(a) {
60
+ this.params = this.getTableParams(a);
61
+ const e = t.isEqual(this.params, this.oldParams);
62
+ return a.name === "search" ? (e || (this.table.value.pagination.currentPage = 1, this.params = this.getTableParams(a)), this.oldParams = t.cloneDeep(this.params)) : a.name === "reset" ? (this.resetPagination(), this.params = this.getTableParams(a), this.oldParams = t.cloneDeep(this.params)) : a.name === "delete" ? this.table.value.data && this.table.value.data.length && this.table.value.data.length === 1 && this.table.value.pagination.currentPage > 1 && (this.table.value.pagination.currentPage = 2, this.params = this.getTableParams(a)) : a.name === "current" ? (this.oldParams.data && this.oldParams.data.pageNum ? this.oldParams.data.pageNum = a.currentPage : this.oldParams.data && this.oldParams.data.page ? this.oldParams.data.page = a.currentPage : this.oldParams.params && this.oldParams.params.page ? this.oldParams.params.page = a.currentPage : this.oldParams.params && this.oldParams.params.pageNum && (this.oldParams.params.pageNum = a.currentPage), this.oldParams.data && this.oldParams.data.pageSize ? this.oldParams.data.pageSize = this.table.value.pagination.pageSize : this.oldParams.params && this.oldParams.params.pageSize && (this.oldParams.params.pageSize = this.table.value.pagination.pageSize), this.params = t.cloneDeep(this.oldParams)) : a.name === "size" && (this.oldParams.data && this.oldParams.data.pageSize ? this.oldParams.data.pageSize = a.pageSize : this.oldParams.params && this.oldParams.params.pageSize && (this.oldParams.params.pageSize = a.pageSize), this.params = t.cloneDeep(this.oldParams)), (!["size", "current"].includes(a.name || "") || !this.table.value.rowKey) && (this.selecTableDatas.value = []), this.params;
63
+ }
64
+ ajaxTableData(a) {
65
+ return new Promise((e) => {
66
+ e(this.getAjaxTableDataParams(a));
67
+ });
68
+ }
69
+ // 查询
70
+ search(a = { name: "search" }) {
71
+ var e, s;
72
+ for (const r in (e = this.form.value) == null ? void 0 : e.model)
73
+ [null, void 0, ""].includes(this.form.value.model[r]) && ((s = this.form.value) == null || delete s.model[r]);
74
+ return this.getTableData(a);
75
+ }
76
+ // 重置查询
77
+ resetSearch(a = { name: "reset" }) {
78
+ this.resetParams(), this.search(a);
79
+ }
80
+ // 重置分页参数
81
+ resetPagination() {
82
+ this.table.value.pagination = this.defaultOptions.table.pagination;
83
+ }
84
+ // 重置表格请求参数
85
+ resetParams() {
86
+ var a, e, s, r, h, o, m;
87
+ if (t.isEmpty((a = this.firstOptions.form) == null ? void 0 : a.model))
88
+ for (const l in (e = this.form.value) == null ? void 0 : e.model)
89
+ (s = this.form.value) == null || delete s.model[l];
90
+ else {
91
+ for (const l in (r = this.form.value) == null ? void 0 : r.model)
92
+ (h = this.form.value) == null || delete h.model[l];
93
+ for (const l in (o = this.firstOptions.form) == null ? void 0 : o.model)
94
+ this.form.value.model[l] = (m = this.firstOptions.form) == null ? void 0 : m.model[l];
95
+ }
96
+ }
97
+ // 清空参数
98
+ clearParams() {
99
+ var a;
100
+ for (const e in (a = this.form.value) == null ? void 0 : a.model)
101
+ delete this.form.value.model[e];
102
+ }
103
+ // 根据key获取表格中的数据
104
+ getTableDataKeys(a = "id") {
105
+ this.ids.value = t.map(this.table.value.data || [], a);
106
+ }
107
+ }
108
+ export {
109
+ f as default
110
+ };
111
+ //# sourceMappingURL=index.mjs.map