giime 0.1.8 → 0.1.9
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.
- package/dist/index.css +39 -39
- package/es/components/src/composite/operateButton/OperateButton.vue.d.ts +15 -0
- package/es/components/src/composite/operateButton/OperateButton.vue2.mjs +4 -2
- package/es/components/src/composite/operateButton/OperateButton.vue2.mjs.map +1 -1
- package/es/components/src/composite/operateButton/index.d.ts +15 -0
- package/es/components/src/composite/operateButton/operateButton.d.ts +7 -1
- package/es/components/src/composite/operateButton/operateButton.mjs +7 -0
- package/es/components/src/composite/operateButton/operateButton.mjs.map +1 -1
- package/es/components/src/composite/tablePro/TableOperateVNodeRenderer.mjs +4 -2
- package/es/components/src/composite/tablePro/TableOperateVNodeRenderer.mjs.map +1 -1
- package/es/components/src/composite/tablePro/TablePro.vue.d.ts +30 -30
- package/es/components/src/composite/tablePro/TablePro.vue.mjs +1 -1
- package/es/components/src/composite/tablePro/TablePro.vue2.mjs +19 -38
- package/es/components/src/composite/tablePro/TablePro.vue2.mjs.map +1 -1
- package/es/components/src/composite/tablePro/TableProEditSlot.vue.d.ts +49 -0
- package/es/components/src/composite/tablePro/TableProEditSlot.vue.mjs +7 -0
- package/es/components/src/composite/tablePro/TableProEditSlot.vue.mjs.map +1 -0
- package/es/components/src/composite/tablePro/TableProEditSlot.vue2.mjs +61 -0
- package/es/components/src/composite/tablePro/TableProEditSlot.vue2.mjs.map +1 -0
- package/es/giime/version.d.ts +1 -1
- package/es/giime/version.mjs +1 -1
- package/es/giime/version.mjs.map +1 -1
- package/es/index.css +39 -39
- package/lib/components/src/composite/operateButton/OperateButton.vue.d.ts +15 -0
- package/lib/components/src/composite/operateButton/OperateButton.vue2.js +4 -2
- package/lib/components/src/composite/operateButton/OperateButton.vue2.js.map +1 -1
- package/lib/components/src/composite/operateButton/index.d.ts +15 -0
- package/lib/components/src/composite/operateButton/operateButton.d.ts +7 -1
- package/lib/components/src/composite/operateButton/operateButton.js +7 -0
- package/lib/components/src/composite/operateButton/operateButton.js.map +1 -1
- package/lib/components/src/composite/tablePro/TableOperateVNodeRenderer.js +4 -2
- package/lib/components/src/composite/tablePro/TableOperateVNodeRenderer.js.map +1 -1
- package/lib/components/src/composite/tablePro/TablePro.vue.d.ts +30 -30
- package/lib/components/src/composite/tablePro/TablePro.vue.js +1 -1
- package/lib/components/src/composite/tablePro/TablePro.vue2.js +19 -38
- package/lib/components/src/composite/tablePro/TablePro.vue2.js.map +1 -1
- package/lib/components/src/composite/tablePro/TableProEditSlot.vue.d.ts +49 -0
- package/lib/components/src/composite/tablePro/TableProEditSlot.vue.js +11 -0
- package/lib/components/src/composite/tablePro/TableProEditSlot.vue.js.map +1 -0
- package/lib/components/src/composite/tablePro/TableProEditSlot.vue2.js +65 -0
- package/lib/components/src/composite/tablePro/TableProEditSlot.vue2.js.map +1 -0
- package/lib/giime/version.d.ts +1 -1
- package/lib/giime/version.js +1 -1
- package/lib/giime/version.js.map +1 -1
- package/lib/index.css +39 -39
- package/package.json +1 -1
package/dist/index.css
CHANGED
|
@@ -1,3 +1,42 @@
|
|
|
1
|
+
|
|
2
|
+
.gm-range-number .el-form-item[data-v-11c39847] {
|
|
3
|
+
margin: 0;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
[data-v-512cf874] .gmSearchForm .el-form-item {
|
|
7
|
+
margin-right: 8px;
|
|
8
|
+
margin-bottom: 8px;
|
|
9
|
+
}
|
|
10
|
+
.gm-flex-center[data-v-d1c6dac0] {
|
|
11
|
+
align-items: center;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.gm-flex-justify-between[data-v-d1c6dac0] {
|
|
15
|
+
justify-content: space-between;
|
|
16
|
+
}
|
|
17
|
+
[data-v-0b3dd381] .gmTableNoBorder .el-table__body .el-table__cell {
|
|
18
|
+
border-right: none;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
[data-v-0b3dd381] .gmTableNoBorder .el-table__inner-wrapper:before {
|
|
22
|
+
height: 0;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
[data-v-0b3dd381] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
|
|
26
|
+
height: 0;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
[data-v-0b3dd381] .gmTableNoBorder.el-table--border:after {
|
|
30
|
+
height: 0;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
[data-v-0b3dd381] .gmTableNoBorder.el-table--border:before {
|
|
34
|
+
height: 0;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
[data-v-0b3dd381] .gmTableNoBorder .el-table__border-left-patch {
|
|
38
|
+
height: 0;
|
|
39
|
+
}
|
|
1
40
|
/*
|
|
2
41
|
! tailwindcss v3.4.1 | MIT License | https://tailwindcss.com
|
|
3
42
|
*//*
|
|
@@ -688,45 +727,6 @@ video {
|
|
|
688
727
|
display: block;
|
|
689
728
|
}
|
|
690
729
|
|
|
691
|
-
.gm-range-number .el-form-item[data-v-11c39847] {
|
|
692
|
-
margin: 0;
|
|
693
|
-
}
|
|
694
|
-
|
|
695
|
-
.gm-flex-center[data-v-d1c6dac0] {
|
|
696
|
-
align-items: center;
|
|
697
|
-
}
|
|
698
|
-
|
|
699
|
-
.gm-flex-justify-between[data-v-d1c6dac0] {
|
|
700
|
-
justify-content: space-between;
|
|
701
|
-
}
|
|
702
|
-
[data-v-512cf874] .gmSearchForm .el-form-item {
|
|
703
|
-
margin-right: 8px;
|
|
704
|
-
margin-bottom: 8px;
|
|
705
|
-
}
|
|
706
|
-
[data-v-e38c9d81] .gmTableNoBorder .el-table__body .el-table__cell {
|
|
707
|
-
border-right: none;
|
|
708
|
-
}
|
|
709
|
-
|
|
710
|
-
[data-v-e38c9d81] .gmTableNoBorder .el-table__inner-wrapper:before {
|
|
711
|
-
height: 0;
|
|
712
|
-
}
|
|
713
|
-
|
|
714
|
-
[data-v-e38c9d81] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
|
|
715
|
-
height: 0;
|
|
716
|
-
}
|
|
717
|
-
|
|
718
|
-
[data-v-e38c9d81] .gmTableNoBorder.el-table--border:after {
|
|
719
|
-
height: 0;
|
|
720
|
-
}
|
|
721
|
-
|
|
722
|
-
[data-v-e38c9d81] .gmTableNoBorder.el-table--border:before {
|
|
723
|
-
height: 0;
|
|
724
|
-
}
|
|
725
|
-
|
|
726
|
-
[data-v-e38c9d81] .gmTableNoBorder .el-table__border-left-patch {
|
|
727
|
-
height: 0;
|
|
728
|
-
}
|
|
729
|
-
|
|
730
730
|
.pagination-container[data-v-8a95ba6d] {
|
|
731
731
|
background: #fff;
|
|
732
732
|
padding: 32px 16px;
|
|
@@ -12,6 +12,12 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
12
12
|
type: BooleanConstructor;
|
|
13
13
|
default: true;
|
|
14
14
|
};
|
|
15
|
+
disabled: BooleanConstructor;
|
|
16
|
+
loading: BooleanConstructor;
|
|
17
|
+
size: {
|
|
18
|
+
type: import("vue").PropType<"" | "default" | "small" | "large">;
|
|
19
|
+
default: "small";
|
|
20
|
+
};
|
|
15
21
|
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
16
22
|
label: {
|
|
17
23
|
type: StringConstructor;
|
|
@@ -26,9 +32,18 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
26
32
|
type: BooleanConstructor;
|
|
27
33
|
default: true;
|
|
28
34
|
};
|
|
35
|
+
disabled: BooleanConstructor;
|
|
36
|
+
loading: BooleanConstructor;
|
|
37
|
+
size: {
|
|
38
|
+
type: import("vue").PropType<"" | "default" | "small" | "large">;
|
|
39
|
+
default: "small";
|
|
40
|
+
};
|
|
29
41
|
}>>, {
|
|
30
42
|
type: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "default" | "success" | "warning" | "info" | "text" | "primary" | "danger", unknown>;
|
|
43
|
+
size: "" | "default" | "small" | "large";
|
|
31
44
|
label: string;
|
|
45
|
+
disabled: boolean;
|
|
46
|
+
loading: boolean;
|
|
32
47
|
isShow: boolean;
|
|
33
48
|
}, {}>;
|
|
34
49
|
export default _default;
|
|
@@ -12,7 +12,9 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
12
12
|
const _component_gm_button = resolveComponent("gm-button");
|
|
13
13
|
return openBlock(), createBlock(_component_gm_button, {
|
|
14
14
|
type: _ctx.type,
|
|
15
|
-
size:
|
|
15
|
+
size: _ctx.size,
|
|
16
|
+
loading: _ctx.loading,
|
|
17
|
+
disabled: _ctx.disabled,
|
|
16
18
|
link: "",
|
|
17
19
|
style: { "margin-left": "0" }
|
|
18
20
|
}, {
|
|
@@ -25,7 +27,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
25
27
|
]),
|
|
26
28
|
_: 1
|
|
27
29
|
/* STABLE */
|
|
28
|
-
}, 8, ["type"]);
|
|
30
|
+
}, 8, ["type", "size", "loading", "disabled"]);
|
|
29
31
|
};
|
|
30
32
|
}
|
|
31
33
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OperateButton.vue2.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"OperateButton.vue2.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -13,6 +13,12 @@ export declare const GmOperateButton: import("../../../../utils").SFCWithInstall
|
|
|
13
13
|
type: BooleanConstructor;
|
|
14
14
|
default: true;
|
|
15
15
|
};
|
|
16
|
+
disabled: BooleanConstructor;
|
|
17
|
+
loading: BooleanConstructor;
|
|
18
|
+
size: {
|
|
19
|
+
type: import("vue").PropType<"" | "default" | "small" | "large">;
|
|
20
|
+
default: "small";
|
|
21
|
+
};
|
|
16
22
|
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
17
23
|
label: {
|
|
18
24
|
type: StringConstructor;
|
|
@@ -27,9 +33,18 @@ export declare const GmOperateButton: import("../../../../utils").SFCWithInstall
|
|
|
27
33
|
type: BooleanConstructor;
|
|
28
34
|
default: true;
|
|
29
35
|
};
|
|
36
|
+
disabled: BooleanConstructor;
|
|
37
|
+
loading: BooleanConstructor;
|
|
38
|
+
size: {
|
|
39
|
+
type: import("vue").PropType<"" | "default" | "small" | "large">;
|
|
40
|
+
default: "small";
|
|
41
|
+
};
|
|
30
42
|
}>>, {
|
|
31
43
|
type: import("element-plus/es/utils/index.js").EpPropMergeType<StringConstructor, "" | "default" | "success" | "warning" | "info" | "text" | "primary" | "danger", unknown>;
|
|
44
|
+
size: "" | "default" | "small" | "large";
|
|
32
45
|
label: string;
|
|
46
|
+
disabled: boolean;
|
|
47
|
+
loading: boolean;
|
|
33
48
|
isShow: boolean;
|
|
34
49
|
}, {}>> & Record<string, any>;
|
|
35
50
|
export type OperateButtonInstance = InstanceType<typeof OperateButton>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ExtractPropTypes } from 'vue';
|
|
1
|
+
import type { ExtractPropTypes, PropType } from 'vue';
|
|
2
2
|
export declare const operateButtonProps: {
|
|
3
3
|
label: {
|
|
4
4
|
type: StringConstructor;
|
|
@@ -16,5 +16,11 @@ export declare const operateButtonProps: {
|
|
|
16
16
|
type: BooleanConstructor;
|
|
17
17
|
default: true;
|
|
18
18
|
};
|
|
19
|
+
disabled: BooleanConstructor;
|
|
20
|
+
loading: BooleanConstructor;
|
|
21
|
+
size: {
|
|
22
|
+
type: PropType<"" | "default" | "small" | "large">;
|
|
23
|
+
default: "small";
|
|
24
|
+
};
|
|
19
25
|
};
|
|
20
26
|
export type OperateButtonProps = ExtractPropTypes<typeof operateButtonProps>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operateButton.mjs","sources":["../../../../../../../packages/components/src/composite/operateButton/operateButton.ts"],"sourcesContent":["import { buttonProps as gmButtonProps } from '@giime/components/src/base/button/button';\r\nimport type { ExtractPropTypes } from 'vue';\r\nexport const operateButtonProps = {\r\n label: {\r\n type: String,\r\n default: '',\r\n },\r\n /**\r\n * 按钮唯一标识\r\n */\r\n prop: {\r\n type: String,\r\n required: true as const,\r\n },\r\n type: gmButtonProps['type'],\r\n // 是否显示\r\n isShow: {\r\n type: Boolean,\r\n default: true as const,\r\n },\r\n};\r\n\r\nexport type OperateButtonProps = ExtractPropTypes<typeof operateButtonProps>;\r\n"],"names":["gmButtonProps"],"mappings":";;
|
|
1
|
+
{"version":3,"file":"operateButton.mjs","sources":["../../../../../../../packages/components/src/composite/operateButton/operateButton.ts"],"sourcesContent":["import { buttonProps as gmButtonProps } from '@giime/components/src/base/button/button';\r\nimport type { ComponentSize } from 'element-plus';\r\nimport type { ExtractPropTypes, PropType } from 'vue';\r\nexport const operateButtonProps = {\r\n label: {\r\n type: String,\r\n default: '',\r\n },\r\n /**\r\n * 按钮唯一标识\r\n */\r\n prop: {\r\n type: String,\r\n required: true as const,\r\n },\r\n type: gmButtonProps['type'],\r\n // 是否显示\r\n isShow: {\r\n type: Boolean,\r\n default: true as const,\r\n },\r\n // 是否禁用\r\n disabled: gmButtonProps['disabled'],\r\n loading: gmButtonProps['loading'],\r\n size: {\r\n type: String as PropType<ComponentSize>,\r\n default: 'small' as const,\r\n },\r\n};\r\n\r\nexport type OperateButtonProps = ExtractPropTypes<typeof operateButtonProps>;\r\n"],"names":["gmButtonProps"],"mappings":";;AAGO,MAAM,kBAAqB,GAAA;AAAA,EAChC,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,MAAA;AAAA,IACN,QAAU,EAAA,IAAA;AAAA,GACZ;AAAA,EACA,IAAA,EAAMA,YAAc,MAAM,CAAA;AAAA;AAAA,EAE1B,MAAQ,EAAA;AAAA,IACN,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA;AAAA,EAEA,QAAA,EAAUA,YAAc,UAAU,CAAA;AAAA,EAClC,OAAA,EAASA,YAAc,SAAS,CAAA;AAAA,EAChC,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,OAAA;AAAA,GACX;AACF;;;;"}
|
|
@@ -16,11 +16,13 @@ var TableOperateVNodeRenderer = /* @__PURE__ */ defineComponent({
|
|
|
16
16
|
}
|
|
17
17
|
},
|
|
18
18
|
setup(props) {
|
|
19
|
-
const vnodes = computed(() =>
|
|
19
|
+
const vnodes = computed(() => {
|
|
20
|
+
return getVnodesByGmName(Array.isArray(props.vnode) ? props.vnode : [props.vnode], "GmOperateButton");
|
|
21
|
+
});
|
|
20
22
|
const res = computed(() => props.customPropsList.filter((props2) => props2.isShow).map((props2) => {
|
|
21
23
|
const findVnode = vnodes.value.find((it) => it.props.prop === props2.prop);
|
|
22
24
|
findVnode.props = {
|
|
23
|
-
...findVnode.props,
|
|
25
|
+
...findVnode.props ?? {},
|
|
24
26
|
label: props2.label,
|
|
25
27
|
type: props2.type
|
|
26
28
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableOperateVNodeRenderer.mjs","sources":["../../../../../../../packages/components/src/composite/tablePro/TableOperateVNodeRenderer.tsx"],"sourcesContent":["// MyVNodeRenderer.js\r\nimport { computed, defineComponent, h } from 'vue';\r\nimport { getVnodesByGmName } from './tableHelper';\r\nimport type { OperateButtonProps } from '../operateButton/operateButton';\r\nimport type { PropType } from 'vue';\r\nexport default defineComponent({\r\n functional: true,\r\n props: {\r\n // 当前原始vnode vue模板中的attribute\r\n vnode: {\r\n type: [Object, Array],\r\n required: true,\r\n },\r\n // 当前要重新覆盖掉的 props\r\n customPropsList: {\r\n type: Array as PropType<OperateButtonProps[]>,\r\n default: () => [],\r\n },\r\n },\r\n setup(props) {\r\n const vnodes = computed(() => getVnodesByGmName(Array.isArray(props.vnode) ? props.vnode : [props.vnode], 'GmOperateButton'));\r\n const res = computed(() =>\r\n props.customPropsList\r\n .filter(props => props.isShow)\r\n .map(props => {\r\n const findVnode = vnodes.value.find(it => it.props.prop === props.prop);\r\n findVnode.props = {\r\n ...findVnode.props,\r\n label: props.label,\r\n type: props.type,\r\n };\r\n // findVnode.props.label = props.label;\r\n // findVnode.props.type = props.type;\r\n return findVnode;\r\n }),\r\n );\r\n const render = computed(() => {\r\n return res.value.map(it => h(it));\r\n });\r\n return () => render.value;\r\n },\r\n});\r\n"],"names":["functional","props","vnode","type","Object","Array","required","customPropsList","default","setup","vnodes","computed","getVnodesByGmName","isArray","res","filter","isShow","map","findVnode","value","find","it","prop","label","render","h"],"mappings":";;;AAKA,gDAA+B,eAAA,CAAA;AAAA,EAC7BA,UAAY,EAAA,IAAA;AAAA,EACZC,KAAO,EAAA;AAAA;AAAA,IAELC,KAAO,EAAA;AAAA,MACLC,IAAAA,EAAM,CAACC,MAAAA,EAAQC,KAAK,CAAA;AAAA,MACpBC,QAAU,EAAA,IAAA;AAAA,KACZ;AAAA;AAAA,IAEAC,eAAiB,EAAA;AAAA,MACfJ,IAAME,EAAAA,KAAAA;AAAAA,MACNG,OAAAA,EAASA,MAAM,EAAA;AAAA,KACjB;AAAA,GACF;AAAA,EACAC,MAAMR,KAAO,EAAA;AACX,
|
|
1
|
+
{"version":3,"file":"TableOperateVNodeRenderer.mjs","sources":["../../../../../../../packages/components/src/composite/tablePro/TableOperateVNodeRenderer.tsx"],"sourcesContent":["// MyVNodeRenderer.js\r\nimport { computed, defineComponent, h } from 'vue';\r\nimport { getVnodesByGmName } from './tableHelper';\r\nimport type { OperateButtonProps } from '../operateButton/operateButton';\r\nimport type { PropType } from 'vue';\r\nexport default defineComponent({\r\n functional: true,\r\n props: {\r\n // 当前原始vnode vue模板中的attribute\r\n vnode: {\r\n type: [Object, Array],\r\n required: true,\r\n },\r\n // 当前要重新覆盖掉的 props\r\n customPropsList: {\r\n type: Array as PropType<OperateButtonProps[]>,\r\n default: () => [],\r\n },\r\n },\r\n setup(props) {\r\n const vnodes = computed(() => {\r\n return getVnodesByGmName(Array.isArray(props.vnode) ? props.vnode : [props.vnode], 'GmOperateButton');\r\n });\r\n const res = computed(() =>\r\n props.customPropsList\r\n .filter(props => props.isShow)\r\n .map(props => {\r\n const findVnode = vnodes.value.find(it => it.props.prop === props.prop);\r\n findVnode.props = {\r\n ...(findVnode.props ?? {}),\r\n label: props.label,\r\n type: props.type,\r\n };\r\n // findVnode.props.label = props.label;\r\n // findVnode.props.type = props.type;\r\n return findVnode;\r\n }),\r\n );\r\n const render = computed(() => {\r\n return res.value.map(it => h(it));\r\n });\r\n return () => render.value;\r\n },\r\n});\r\n"],"names":["functional","props","vnode","type","Object","Array","required","customPropsList","default","setup","vnodes","computed","getVnodesByGmName","isArray","res","filter","isShow","map","findVnode","value","find","it","prop","label","render","h"],"mappings":";;;AAKA,gDAA+B,eAAA,CAAA;AAAA,EAC7BA,UAAY,EAAA,IAAA;AAAA,EACZC,KAAO,EAAA;AAAA;AAAA,IAELC,KAAO,EAAA;AAAA,MACLC,IAAAA,EAAM,CAACC,MAAAA,EAAQC,KAAK,CAAA;AAAA,MACpBC,QAAU,EAAA,IAAA;AAAA,KACZ;AAAA;AAAA,IAEAC,eAAiB,EAAA;AAAA,MACfJ,IAAME,EAAAA,KAAAA;AAAAA,MACNG,OAAAA,EAASA,MAAM,EAAA;AAAA,KACjB;AAAA,GACF;AAAA,EACAC,MAAMR,KAAO,EAAA;AACX,IAAMS,MAAAA,MAAAA,GAASC,SAAS,MAAM;AAC5B,MAAA,OAAOC,iBAAkBP,CAAAA,KAAAA,CAAMQ,OAAQZ,CAAAA,KAAAA,CAAMC,KAAK,CAAA,GAAID,KAAMC,CAAAA,KAAAA,GAAQ,CAACD,KAAAA,CAAMC,KAAK,CAAA,EAAG,iBAAiB,CAAA,CAAA;AAAA,KACrG,CAAA,CAAA;AACD,IAAA,MAAMY,GAAMH,GAAAA,QAAAA,CAAS,MACnBV,KAAAA,CAAMM,eACHQ,CAAAA,MAAAA,CAAOd,CAAAA,MAAAA,KAASA,MAAMe,CAAAA,MAAM,CAC5BC,CAAAA,GAAAA,CAAIhB,CAAAA,MAAS,KAAA;AACZ,MAAMiB,MAAAA,SAAAA,GAAYR,OAAOS,KAAMC,CAAAA,IAAAA,CAAKC,QAAMA,EAAGpB,CAAAA,KAAAA,CAAMqB,IAASrB,KAAAA,MAAAA,CAAMqB,IAAI,CAAA,CAAA;AACtEJ,MAAAA,SAAAA,CAAUjB,KAAQ,GAAA;AAAA,QAChB,GAAIiB,SAAUjB,CAAAA,KAAAA,IAAS,EAAC;AAAA,QACxBsB,OAAOtB,MAAMsB,CAAAA,KAAAA;AAAAA,QACbpB,MAAMF,MAAME,CAAAA,IAAAA;AAAAA,OACd,CAAA;AAGA,MAAOe,OAAAA,SAAAA,CAAAA;AAAAA,KACR,CACL,CAAA,CAAA;AACA,IAAMM,MAAAA,MAAAA,GAASb,SAAS,MAAM;AAC5B,MAAA,OAAOG,IAAIK,KAAMF,CAAAA,GAAAA,CAAII,CAAMI,EAAAA,KAAAA,CAAAA,CAAEJ,EAAE,CAAC,CAAA,CAAA;AAAA,KACjC,CAAA,CAAA;AACD,IAAA,OAAO,MAAMG,MAAOL,CAAAA,KAAAA,CAAAA;AAAAA,GACtB;AACF,CAAC,CAAA;;;;"}
|
|
@@ -40,7 +40,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
|
|
|
40
40
|
required: true;
|
|
41
41
|
};
|
|
42
42
|
size: {
|
|
43
|
-
readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
|
|
43
|
+
readonly type: import("vue").PropType<import("element-plus/es/utils/index.js").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
|
|
44
44
|
readonly required: false;
|
|
45
45
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
46
46
|
__epPropKey: true;
|
|
@@ -61,14 +61,14 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
|
|
|
61
61
|
};
|
|
62
62
|
showSummary: BooleanConstructor;
|
|
63
63
|
sumText: StringConstructor;
|
|
64
|
-
summaryMethod: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults").SummaryMethod<any> | undefined>;
|
|
65
|
-
rowClassName: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults").ColumnCls<any> | undefined>;
|
|
66
|
-
rowStyle: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults").ColumnStyle<any> | undefined>;
|
|
67
|
-
cellClassName: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults").CellCls<any> | undefined>;
|
|
68
|
-
cellStyle: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults").CellStyle<any> | undefined>;
|
|
69
|
-
headerRowClassName: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults").ColumnCls<any> | undefined>;
|
|
70
|
-
headerRowStyle: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults").ColumnStyle<any> | undefined>;
|
|
71
|
-
headerCellClassName: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults").CellCls<any> | undefined>;
|
|
64
|
+
summaryMethod: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults.js").SummaryMethod<any> | undefined>;
|
|
65
|
+
rowClassName: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults.js").ColumnCls<any> | undefined>;
|
|
66
|
+
rowStyle: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults.js").ColumnStyle<any> | undefined>;
|
|
67
|
+
cellClassName: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults.js").CellCls<any> | undefined>;
|
|
68
|
+
cellStyle: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults.js").CellStyle<any> | undefined>;
|
|
69
|
+
headerRowClassName: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults.js").ColumnCls<any> | undefined>;
|
|
70
|
+
headerRowStyle: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults.js").ColumnStyle<any> | undefined>;
|
|
71
|
+
headerCellClassName: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults.js").CellCls<any> | undefined>;
|
|
72
72
|
highlightCurrentRow: BooleanConstructor;
|
|
73
73
|
currentRowKey: (StringConstructor | NumberConstructor)[];
|
|
74
74
|
emptyText: StringConstructor;
|
|
@@ -80,7 +80,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
|
|
|
80
80
|
spanMethod: import("vue").PropType<((data: {
|
|
81
81
|
row: any;
|
|
82
82
|
rowIndex: number;
|
|
83
|
-
column: import("element-plus/es/components/table/src/table-column/defaults").TableColumnCtx<any>;
|
|
83
|
+
column: import("element-plus/es/components/table/src/table-column/defaults.js").TableColumnCtx<any>;
|
|
84
84
|
columnIndex: number;
|
|
85
85
|
}) => number[] | {
|
|
86
86
|
rowspan: number;
|
|
@@ -105,7 +105,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
|
|
|
105
105
|
};
|
|
106
106
|
};
|
|
107
107
|
lazy: BooleanConstructor;
|
|
108
|
-
load: import("vue").PropType<((row: any, treeNode: import("element-plus/es/components/table/src/table/defaults").TreeNode, resolve: (data: any[]) => void) => void) | undefined>;
|
|
108
|
+
load: import("vue").PropType<((row: any, treeNode: import("element-plus/es/components/table/src/table/defaults.js").TreeNode, resolve: (data: any[]) => void) => void) | undefined>;
|
|
109
109
|
style: {
|
|
110
110
|
type: import("vue").PropType<import("vue").CSSProperties>;
|
|
111
111
|
default: () => {};
|
|
@@ -136,20 +136,20 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
|
|
|
136
136
|
isSort: boolean;
|
|
137
137
|
isShow: boolean;
|
|
138
138
|
label?: string | undefined;
|
|
139
|
-
filterMethod?: import("element-plus/es/components/table/src/table-column/defaults").FilterMethods<any> | undefined;
|
|
139
|
+
filterMethod?: import("element-plus/es/components/table/src/table-column/defaults.js").FilterMethods<any> | undefined;
|
|
140
140
|
align?: string | undefined;
|
|
141
141
|
className?: string | undefined;
|
|
142
142
|
labelClassName?: string | undefined;
|
|
143
|
-
formatter?: ((row: any, column: import("element-plus/es/components/table/src/table-column/defaults").TableColumnCtx<any>, cellValue: any, index: number) => string | import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
143
|
+
formatter?: ((row: any, column: import("element-plus/es/components/table/src/table-column/defaults.js").TableColumnCtx<any>, cellValue: any, index: number) => string | import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
144
144
|
[key: string]: any;
|
|
145
145
|
}>) | undefined;
|
|
146
146
|
index?: number | ((index: number) => number) | undefined;
|
|
147
147
|
showOverflowTooltip?: boolean | {
|
|
148
148
|
offset?: number | undefined;
|
|
149
|
-
appendTo?: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement) | ((new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement))[], unknown, unknown> | undefined;
|
|
149
|
+
appendTo?: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement) | ((new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement))[], unknown, unknown> | undefined;
|
|
150
150
|
effect?: string | undefined;
|
|
151
|
-
placement?: import("element-plus/es/utils").EpPropMergeType<StringConstructor, import("element-plus").Placement, unknown> | undefined;
|
|
152
|
-
popperClass?: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => string | {
|
|
151
|
+
placement?: import("element-plus/es/utils/index.js").EpPropMergeType<StringConstructor, import("element-plus").Placement, unknown> | undefined;
|
|
152
|
+
popperClass?: import("element-plus/es/utils/index.js").EpPropMergeType<(new (...args: any[]) => string | {
|
|
153
153
|
[x: string]: boolean;
|
|
154
154
|
} | (string | {
|
|
155
155
|
[x: string]: boolean;
|
|
@@ -256,13 +256,13 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
|
|
|
256
256
|
} | undefined;
|
|
257
257
|
hideAfter?: number | undefined;
|
|
258
258
|
transition?: string | undefined;
|
|
259
|
-
enterable?: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown> | undefined;
|
|
259
|
+
enterable?: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown> | undefined;
|
|
260
260
|
showAfter?: number | undefined;
|
|
261
|
-
showArrow?: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown> | undefined;
|
|
261
|
+
showArrow?: import("element-plus/es/utils/index.js").EpPropMergeType<BooleanConstructor, unknown, unknown> | undefined;
|
|
262
262
|
} | undefined;
|
|
263
263
|
property?: string | undefined;
|
|
264
264
|
renderHeader?: ((data: {
|
|
265
|
-
column: import("element-plus/es/components/table/src/table-column/defaults").TableColumnCtx<any>;
|
|
265
|
+
column: import("element-plus/es/components/table/src/table-column/defaults.js").TableColumnCtx<any>;
|
|
266
266
|
$index: number;
|
|
267
267
|
}) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
268
268
|
[key: string]: any;
|
|
@@ -330,7 +330,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
|
|
|
330
330
|
required: true;
|
|
331
331
|
};
|
|
332
332
|
size: {
|
|
333
|
-
readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
|
|
333
|
+
readonly type: import("vue").PropType<import("element-plus/es/utils/index.js").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
|
|
334
334
|
readonly required: false;
|
|
335
335
|
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
336
336
|
__epPropKey: true;
|
|
@@ -351,14 +351,14 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
|
|
|
351
351
|
};
|
|
352
352
|
showSummary: BooleanConstructor;
|
|
353
353
|
sumText: StringConstructor;
|
|
354
|
-
summaryMethod: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults").SummaryMethod<any> | undefined>;
|
|
355
|
-
rowClassName: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults").ColumnCls<any> | undefined>;
|
|
356
|
-
rowStyle: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults").ColumnStyle<any> | undefined>;
|
|
357
|
-
cellClassName: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults").CellCls<any> | undefined>;
|
|
358
|
-
cellStyle: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults").CellStyle<any> | undefined>;
|
|
359
|
-
headerRowClassName: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults").ColumnCls<any> | undefined>;
|
|
360
|
-
headerRowStyle: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults").ColumnStyle<any> | undefined>;
|
|
361
|
-
headerCellClassName: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults").CellCls<any> | undefined>;
|
|
354
|
+
summaryMethod: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults.js").SummaryMethod<any> | undefined>;
|
|
355
|
+
rowClassName: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults.js").ColumnCls<any> | undefined>;
|
|
356
|
+
rowStyle: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults.js").ColumnStyle<any> | undefined>;
|
|
357
|
+
cellClassName: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults.js").CellCls<any> | undefined>;
|
|
358
|
+
cellStyle: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults.js").CellStyle<any> | undefined>;
|
|
359
|
+
headerRowClassName: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults.js").ColumnCls<any> | undefined>;
|
|
360
|
+
headerRowStyle: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults.js").ColumnStyle<any> | undefined>;
|
|
361
|
+
headerCellClassName: import("vue").PropType<import("element-plus/es/components/table/src/table/defaults.js").CellCls<any> | undefined>;
|
|
362
362
|
highlightCurrentRow: BooleanConstructor;
|
|
363
363
|
currentRowKey: (StringConstructor | NumberConstructor)[];
|
|
364
364
|
emptyText: StringConstructor;
|
|
@@ -370,7 +370,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
|
|
|
370
370
|
spanMethod: import("vue").PropType<((data: {
|
|
371
371
|
row: any;
|
|
372
372
|
rowIndex: number;
|
|
373
|
-
column: import("element-plus/es/components/table/src/table-column/defaults").TableColumnCtx<any>;
|
|
373
|
+
column: import("element-plus/es/components/table/src/table-column/defaults.js").TableColumnCtx<any>;
|
|
374
374
|
columnIndex: number;
|
|
375
375
|
}) => number[] | {
|
|
376
376
|
rowspan: number;
|
|
@@ -395,7 +395,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
|
|
|
395
395
|
};
|
|
396
396
|
};
|
|
397
397
|
lazy: BooleanConstructor;
|
|
398
|
-
load: import("vue").PropType<((row: any, treeNode: import("element-plus/es/components/table/src/table/defaults").TreeNode, resolve: (data: any[]) => void) => void) | undefined>;
|
|
398
|
+
load: import("vue").PropType<((row: any, treeNode: import("element-plus/es/components/table/src/table/defaults.js").TreeNode, resolve: (data: any[]) => void) => void) | undefined>;
|
|
399
399
|
style: {
|
|
400
400
|
type: import("vue").PropType<import("vue").CSSProperties>;
|
|
401
401
|
default: () => {};
|
|
@@ -2,7 +2,7 @@ import _sfc_main from './TablePro.vue2.mjs';
|
|
|
2
2
|
import './TablePro.vue3.mjs';
|
|
3
3
|
import _export_sfc from '../../../../_virtual/_plugin-vue_export-helper.mjs';
|
|
4
4
|
|
|
5
|
-
var TablePro = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
5
|
+
var TablePro = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-0b3dd381"], ["__file", "TablePro.vue"]]);
|
|
6
6
|
|
|
7
7
|
export { TablePro as default };
|
|
8
8
|
//# sourceMappingURL=TablePro.vue.mjs.map
|
|
@@ -1,18 +1,13 @@
|
|
|
1
1
|
import { pushScopeId, popScopeId, defineComponent, mergeModels, ref, useSlots, computed, nextTick, useModel, resolveComponent, openBlock, createElementBlock, Fragment, createElementVNode, createVNode, mergeProps, withCtx, createBlock, createCommentVNode, unref, createTextVNode } from 'vue';
|
|
2
2
|
import { hasOwn } from '../../../../utils/src/objects.mjs';
|
|
3
|
-
import
|
|
4
|
-
import TableOperateVNodeRenderer from './TableOperateVNodeRenderer.mjs';
|
|
3
|
+
import TableProEditSlot from './TableProEditSlot.vue.mjs';
|
|
5
4
|
import TableColumnVNodeRenderer from './TableColumnVNodeRenderer.mjs';
|
|
6
5
|
import { tableProProps, tableProEmits } from './tablePro.mjs';
|
|
7
6
|
import { getVnodesByGmName } from './tableHelper.mjs';
|
|
8
7
|
import { TableColumnProName, tableColumnProProps } from './tableColumnPro/tableColumnPro.mjs';
|
|
9
8
|
|
|
10
|
-
const _withScopeId = (n) => (pushScopeId("data-v-
|
|
9
|
+
const _withScopeId = (n) => (pushScopeId("data-v-0b3dd381"), n = n(), popScopeId(), n);
|
|
11
10
|
const _hoisted_1 = { class: "gm-text-center" };
|
|
12
|
-
const _hoisted_2 = {
|
|
13
|
-
key: 0,
|
|
14
|
-
class: "gm-flex gm-flex-wrap gm-justify-center"
|
|
15
|
-
};
|
|
16
11
|
var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
17
12
|
...{
|
|
18
13
|
name: "GmTablePro"
|
|
@@ -60,26 +55,8 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
60
55
|
const nodes = vNodes.find((vNode) => vNode.props && vNode.props.type === "edit");
|
|
61
56
|
return nodes;
|
|
62
57
|
});
|
|
63
|
-
const customDefaultPropsList =
|
|
64
|
-
|
|
65
|
-
const children = getVnodesByGmName(defaultVnodes, "GmOperateButton");
|
|
66
|
-
const btnProps = children.map((vNode) => vNode.props) ?? [];
|
|
67
|
-
btnProps.forEach((it) => {
|
|
68
|
-
for (const key in operateButtonProps) {
|
|
69
|
-
if (hasOwn(it, key)) {
|
|
70
|
-
continue;
|
|
71
|
-
}
|
|
72
|
-
if (hasOwn(operateButtonProps, key)) {
|
|
73
|
-
const element = operateButtonProps[key];
|
|
74
|
-
if (hasOwn(element, "default")) {
|
|
75
|
-
Reflect.set(it, key, Reflect.get(element, "default"));
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
});
|
|
80
|
-
return btnProps;
|
|
81
|
-
});
|
|
82
|
-
const customBtnPropsList = ref(customDefaultPropsList.value);
|
|
58
|
+
const customDefaultPropsList = ref([]);
|
|
59
|
+
const customBtnPropsList = ref([]);
|
|
83
60
|
const drawerHeaderVisible = ref(false);
|
|
84
61
|
const drawerOperateVisible = ref(false);
|
|
85
62
|
const setTable = (event) => {
|
|
@@ -141,7 +118,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
141
118
|
}, props, {
|
|
142
119
|
border: "",
|
|
143
120
|
class: ["gmTablePro", [props.border ? "" : "gmTableNoBorder"]],
|
|
144
|
-
onSelectionChange: _cache[
|
|
121
|
+
onSelectionChange: _cache[4] || (_cache[4] = (value) => _ctx.$emit("selectionChange", value)),
|
|
145
122
|
onSortChange: handleSortChange,
|
|
146
123
|
onHeaderDragend: headerDragend
|
|
147
124
|
}), {
|
|
@@ -195,13 +172,17 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
195
172
|
])
|
|
196
173
|
]),
|
|
197
174
|
default: withCtx((slotValue) => [
|
|
175
|
+
createVNode(TableProEditSlot, {
|
|
176
|
+
customBtnPropsList: customBtnPropsList.value,
|
|
177
|
+
"onUpdate:customBtnPropsList": _cache[2] || (_cache[2] = ($event) => customBtnPropsList.value = $event),
|
|
178
|
+
customDefaultPropsList: customDefaultPropsList.value,
|
|
179
|
+
"onUpdate:customDefaultPropsList": _cache[3] || (_cache[3] = ($event) => customDefaultPropsList.value = $event),
|
|
180
|
+
tableOperateVnode: tableOperateVnode.value,
|
|
181
|
+
isInited: gmCustomOperationsRef.value?.isInited,
|
|
182
|
+
slotValue
|
|
183
|
+
}, null, 8, ["customBtnPropsList", "customDefaultPropsList", "tableOperateVnode", "isInited", "slotValue"]),
|
|
198
184
|
createCommentVNode(' <VNodeRenderer :vnode="customVNodes" /> '),
|
|
199
|
-
tableOperateVnode.
|
|
200
|
-
createVNode(unref(TableOperateVNodeRenderer), {
|
|
201
|
-
vnode: tableOperateVnode.value.children?.default(slotValue),
|
|
202
|
-
customPropsList: customBtnPropsList.value
|
|
203
|
-
}, null, 8, ["vnode", "customPropsList"])
|
|
204
|
-
])) : createCommentVNode("v-if", true)
|
|
185
|
+
createCommentVNode(' <div\r\n v-if="\r\n tableOperateVnode &&\r\n tableOperateVnode.children &&\r\n gmCustomOperationsRef &&\r\n gmCustomOperationsRef.isInited &&\r\n slotValue &&\r\n slotValue.row &&\r\n tableOperateVnode.children?.default(slotValue) &&\r\n customBtnPropsList\r\n "\r\n class="gm-flex gm-flex-wrap gm-justify-center"\r\n >\r\n <TableOperateVNodeRenderer :vnode="tableOperateVnode.children?.default(slotValue)" :customPropsList="customBtnPropsList" />\r\n </div> ')
|
|
205
186
|
]),
|
|
206
187
|
_: 1
|
|
207
188
|
/* STABLE */
|
|
@@ -215,9 +196,9 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
215
196
|
ref_key: "gmTableHeaderRef",
|
|
216
197
|
ref: gmTableHeaderRef,
|
|
217
198
|
isShowDrawer: drawerHeaderVisible.value,
|
|
218
|
-
"onUpdate:isShowDrawer": _cache[
|
|
199
|
+
"onUpdate:isShowDrawer": _cache[5] || (_cache[5] = ($event) => drawerHeaderVisible.value = $event),
|
|
219
200
|
colPropsList: colPropsList.value,
|
|
220
|
-
"onUpdate:colPropsList": _cache[
|
|
201
|
+
"onUpdate:colPropsList": _cache[6] || (_cache[6] = ($event) => colPropsList.value = $event),
|
|
221
202
|
colDefaultPropsList: colDefaultPropsList.value,
|
|
222
203
|
keyWord: props.page,
|
|
223
204
|
type: "HeaderList"
|
|
@@ -226,9 +207,9 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
226
207
|
ref_key: "gmCustomOperationsRef",
|
|
227
208
|
ref: gmCustomOperationsRef,
|
|
228
209
|
isShowDrawer: drawerOperateVisible.value,
|
|
229
|
-
"onUpdate:isShowDrawer": _cache[
|
|
210
|
+
"onUpdate:isShowDrawer": _cache[7] || (_cache[7] = ($event) => drawerOperateVisible.value = $event),
|
|
230
211
|
customBtnPropsList: customBtnPropsList.value,
|
|
231
|
-
"onUpdate:customBtnPropsList": _cache[
|
|
212
|
+
"onUpdate:customBtnPropsList": _cache[8] || (_cache[8] = ($event) => customBtnPropsList.value = $event),
|
|
232
213
|
customDefaultPropsList: customDefaultPropsList.value,
|
|
233
214
|
keyWord: props.page,
|
|
234
215
|
type: "OperateList"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TablePro.vue2.mjs","sources":["../../../../../../../packages/components/src/composite/tablePro/TablePro.vue"],"sourcesContent":["<template>\r\n <div>\r\n <gm-table\r\n ref=\"GmTbaleRef\"\r\n v-bind=\"props\"\r\n border\r\n class=\"gmTablePro\"\r\n :class=\"[props.border ? '' : 'gmTableNoBorder']\"\r\n @selection-change=\"(value: TableColumnProProps[]) => $emit('selectionChange', value)\"\r\n @sort-change=\"handleSortChange\"\r\n @header-dragend=\"headerDragend\"\r\n >\r\n <template v-if=\"props.selection\">\r\n <gm-table-column :key=\"999999\" type=\"selection\" width=\"50\" />\r\n </template>\r\n <template v-if=\"gmTableHeaderRef?.isInited\">\r\n <TableColumnVNodeRenderer :vnode=\"tableColumnVnode\" :propsList=\"colPropsList\" />\r\n </template>\r\n <!-- 操作 -->\r\n <gm-table-column\r\n v-if=\"customHeader || customOperate\"\r\n prop=\"gmEdit\"\r\n min-width=\"100\"\r\n :width=\"editProps?.width\"\r\n :fixed=\"operateFixed ? 'right' : false\"\r\n >\r\n <template #header>\r\n <div class=\"gm-text-center\">\r\n <gm-button v-if=\"customHeader\" type=\"primary\" link size=\"small\" @click=\"setTable('header')\"> 表头 </gm-button>\r\n <gm-button v-if=\"customOperate\" type=\"primary\" link size=\"small\" @click=\"setTable('operate')\"> 操作 </gm-button>\r\n </div>\r\n </template>\r\n <template #default=\"slotValue\">\r\n <!-- <VNodeRenderer :vnode=\"customVNodes\" /> -->\r\n <div v-if=\"tableOperateVnode && gmCustomOperationsRef && gmCustomOperationsRef.isInited\" class=\"gm-flex gm-flex-wrap gm-justify-center\">\r\n <TableOperateVNodeRenderer :vnode=\"tableOperateVnode.children?.default(slotValue)\" :customPropsList=\"customBtnPropsList\" />\r\n </div>\r\n </template>\r\n </gm-table-column>\r\n </gm-table>\r\n </div>\r\n\r\n <gm-table-header-form\r\n ref=\"gmTableHeaderRef\"\r\n v-model:isShowDrawer=\"drawerHeaderVisible\"\r\n v-model:colPropsList=\"colPropsList\"\r\n :colDefaultPropsList=\"colDefaultPropsList\"\r\n :keyWord=\"props.page\"\r\n type=\"HeaderList\"\r\n />\r\n\r\n <gm-operate-button-form\r\n ref=\"gmCustomOperationsRef\"\r\n v-model:isShowDrawer=\"drawerOperateVisible\"\r\n v-model:customBtnPropsList=\"customBtnPropsList\"\r\n :customDefaultPropsList=\"customDefaultPropsList\"\r\n :keyWord=\"props.page\"\r\n type=\"OperateList\"\r\n />\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { computed, nextTick, ref } from 'vue';\r\nimport { hasOwn } from '@giime/utils/src/objects';\r\n// import { cloneDeep } from 'lodash-es';\r\nimport { operateButtonProps } from '../operateButton/operateButton';\r\nimport TableOperateVNodeRenderer from './TableOperateVNodeRenderer';\r\nimport TableColumnVNodeRenderer from './TableColumnVNodeRenderer';\r\nimport { tableProEmits, tableProProps } from './tablePro';\r\nimport { getVnodesByGmName } from './tableHelper';\r\nimport { TableColumnProName, type TableColumnProProps, tableColumnProProps } from './tableColumnPro/tableColumnPro';\r\nimport type { OperateButtonFormInstance } from '../operateButton/operateButtonForm';\r\nimport type { TableHeaderFormInstance } from './tableHeaderForm';\r\nimport type { OperateButtonProps } from '../operateButton/operateButton';\r\nimport type { Sort, TableInstance } from 'element-plus';\r\n\r\ndefineOptions({\r\n name: 'GmTablePro',\r\n});\r\nconst GmTbaleRef = ref<TableInstance>();\r\nconst gmCustomOperationsRef = ref<OperateButtonFormInstance>();\r\nconst gmTableHeaderRef = ref<TableHeaderFormInstance>();\r\n\r\nconst emit = defineEmits(tableProEmits);\r\nconst props = defineProps(tableProProps);\r\n\r\nconst slots = defineSlots<{\r\n default(data?: any): any[];\r\n}>();\r\n// 列 当前原始vnode\r\nconst tableColumnVnode = computed(() => {\r\n const vNodes = slots.default?.() || [];\r\n // const nodes = vNodes.filter(vNode => vNode.props && vNode.props.type !== 'edit');\r\n return vNodes;\r\n});\r\n// 默认表头Props列表\r\nconst colDefaultPropsList = computed(() => {\r\n const vNodes = slots.default?.() || [];\r\n const children = getVnodesByGmName(vNodes, TableColumnProName);\r\n // const result = children.filter(vNode => vNode.props && vNode.props.type !== 'edit');\r\n\r\n const colProps: TableColumnProProps[] = children.map((vNode: { props: any }) => vNode.props) ?? [];\r\n // 循环插入props所需的默认值\r\n colProps.forEach(it => {\r\n for (const key in tableColumnProProps) {\r\n // 如果当前props含有默认值\r\n if (hasOwn(it, key)) {\r\n continue;\r\n }\r\n if (hasOwn(tableColumnProProps, key)) {\r\n const element = tableColumnProProps[key as keyof TableColumnProProps];\r\n // 如果btn 定义中含有默认值 则赋值给props\r\n if (hasOwn(element, 'default')) {\r\n Reflect.set(it, key, Reflect.get(element, 'default'));\r\n }\r\n }\r\n }\r\n });\r\n return colProps;\r\n});\r\n// 已选中表头\r\nconst colPropsList = ref<TableColumnProProps[]>(colDefaultPropsList.value);\r\nconst editProps = computed(() => colPropsList.value.find(it => it.type === 'edit'));\r\n\r\n// 操作按钮组 当前原始vnode\r\nconst tableOperateVnode = computed(() => {\r\n const vNodes = slots.default?.() || [];\r\n const nodes = vNodes.find(vNode => vNode.props && vNode.props.type === 'edit');\r\n return nodes;\r\n});\r\n\r\nconst customDefaultPropsList = computed(() => {\r\n const defaultVnodes = tableOperateVnode.value?.children?.default?.(tableOperateVnode.value?.ctx.scope);\r\n const children = getVnodesByGmName(defaultVnodes, 'GmOperateButton');\r\n\r\n const btnProps: OperateButtonProps[] = children.map((vNode: { props: any }) => vNode.props) ?? [];\r\n // 循环插入props所需的默认值\r\n btnProps.forEach(it => {\r\n for (const key in operateButtonProps) {\r\n // 如果当前props含有默认值\r\n if (hasOwn(it, key)) {\r\n continue;\r\n }\r\n if (hasOwn(operateButtonProps, key)) {\r\n const element = operateButtonProps[key as keyof OperateButtonProps];\r\n // 如果btn 定义中含有默认值 则赋值给props\r\n if (hasOwn(element, 'default')) {\r\n Reflect.set(it, key, Reflect.get(element, 'default'));\r\n }\r\n }\r\n }\r\n });\r\n return btnProps;\r\n});\r\nconst customBtnPropsList = ref<OperateButtonProps[]>(customDefaultPropsList.value);\r\n\r\n// 表格头部弹层\r\nconst drawerHeaderVisible = ref(false); // 表头设置弹层\r\nconst drawerOperateVisible = ref(false); // 按钮设置弹层\r\nconst setTable = (event: string) => {\r\n if (event === 'header') {\r\n drawerHeaderVisible.value = true;\r\n }\r\n if (event === 'operate') {\r\n drawerOperateVisible.value = true;\r\n }\r\n};\r\n\r\n/**\r\n * 表头拖动,修改width\r\n */\r\nconst headerDragend = async (newWidth: number, oldWidth: number, column: any) => {\r\n const findItem = colPropsList.value.find(it => it.prop === column.property);\r\n const editItem = column.property === 'gmEdit' ? colPropsList.value.find(it => it.type === 'edit') : null;\r\n if (!findItem && !editItem) {\r\n return;\r\n }\r\n if (findItem) {\r\n findItem.width = newWidth;\r\n }\r\n if (editItem) {\r\n editItem.width = newWidth;\r\n }\r\n // 设置列宽\r\n await nextTick();\r\n gmTableHeaderRef.value?.submitSettings();\r\n};\r\n/**\r\n * 搜索模块\r\n */\r\nconst sortValue = defineModel<\r\n {\r\n field: string;\r\n order: 'asc' | 'desc';\r\n }[]\r\n>('sortValue');\r\n\r\nconst handleSortChange = (sort: Sort) => {\r\n if (sortValue.value) {\r\n sortValue.value = [];\r\n switch (sort.order) {\r\n case 'ascending':\r\n sortValue.value.push({ field: sort.prop, order: 'asc' });\r\n break;\r\n case 'descending':\r\n sortValue.value.push({ field: sort.prop, order: 'desc' });\r\n break;\r\n }\r\n }\r\n\r\n emit('sortChange', sort);\r\n};\r\ndefineExpose({\r\n colPropsList,\r\n clearSort: () => GmTbaleRef.value?.clearSort(),\r\n});\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n:deep(.gmTableNoBorder .el-table__body .el-table__cell) {\r\n border-right: none;\r\n}\r\n:deep(.gmTableNoBorder .el-table__inner-wrapper:before) {\r\n height: 0;\r\n}\r\n:deep(.gmTableNoBorder.el-table--border .el-table__inner-wrapper:after) {\r\n height: 0;\r\n}\r\n:deep(.gmTableNoBorder.el-table--border:after) {\r\n height: 0;\r\n}\r\n:deep(.gmTableNoBorder.el-table--border:before) {\r\n height: 0;\r\n}\r\n:deep(.gmTableNoBorder .el-table__border-left-patch) {\r\n height: 0;\r\n}\r\n</style>\r\n"],"names":["_useSlots","_useModel"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TablePro.vue2.mjs","sources":["../../../../../../../packages/components/src/composite/tablePro/TablePro.vue"],"sourcesContent":["<template>\r\n <div>\r\n <gm-table\r\n ref=\"GmTbaleRef\"\r\n v-bind=\"props\"\r\n border\r\n class=\"gmTablePro\"\r\n :class=\"[props.border ? '' : 'gmTableNoBorder']\"\r\n @selection-change=\"(value: TableColumnProProps[]) => $emit('selectionChange', value)\"\r\n @sort-change=\"handleSortChange\"\r\n @header-dragend=\"headerDragend\"\r\n >\r\n <template v-if=\"props.selection\">\r\n <gm-table-column :key=\"999999\" type=\"selection\" width=\"50\" />\r\n </template>\r\n <template v-if=\"gmTableHeaderRef?.isInited\">\r\n <TableColumnVNodeRenderer :vnode=\"tableColumnVnode\" :propsList=\"colPropsList\" />\r\n </template>\r\n <!-- 操作 -->\r\n <gm-table-column\r\n v-if=\"customHeader || customOperate\"\r\n prop=\"gmEdit\"\r\n min-width=\"100\"\r\n :width=\"editProps?.width\"\r\n :fixed=\"operateFixed ? 'right' : false\"\r\n >\r\n <template #header>\r\n <div class=\"gm-text-center\">\r\n <gm-button v-if=\"customHeader\" type=\"primary\" link size=\"small\" @click=\"setTable('header')\"> 表头 </gm-button>\r\n <gm-button v-if=\"customOperate\" type=\"primary\" link size=\"small\" @click=\"setTable('operate')\"> 操作 </gm-button>\r\n </div>\r\n </template>\r\n <template #default=\"slotValue\">\r\n <TableProEditSlot\r\n v-model:customBtnPropsList=\"customBtnPropsList\"\r\n v-model:customDefaultPropsList=\"customDefaultPropsList\"\r\n :tableOperateVnode=\"tableOperateVnode\"\r\n :isInited=\"gmCustomOperationsRef?.isInited\"\r\n :slotValue=\"slotValue\"\r\n />\r\n <!-- <VNodeRenderer :vnode=\"customVNodes\" /> -->\r\n <!-- <div\r\n v-if=\"\r\n tableOperateVnode &&\r\n tableOperateVnode.children &&\r\n gmCustomOperationsRef &&\r\n gmCustomOperationsRef.isInited &&\r\n slotValue &&\r\n slotValue.row &&\r\n tableOperateVnode.children?.default(slotValue) &&\r\n customBtnPropsList\r\n \"\r\n class=\"gm-flex gm-flex-wrap gm-justify-center\"\r\n >\r\n <TableOperateVNodeRenderer :vnode=\"tableOperateVnode.children?.default(slotValue)\" :customPropsList=\"customBtnPropsList\" />\r\n </div> -->\r\n </template>\r\n </gm-table-column>\r\n </gm-table>\r\n </div>\r\n\r\n <gm-table-header-form\r\n ref=\"gmTableHeaderRef\"\r\n v-model:isShowDrawer=\"drawerHeaderVisible\"\r\n v-model:colPropsList=\"colPropsList\"\r\n :colDefaultPropsList=\"colDefaultPropsList\"\r\n :keyWord=\"props.page\"\r\n type=\"HeaderList\"\r\n />\r\n\r\n <gm-operate-button-form\r\n ref=\"gmCustomOperationsRef\"\r\n v-model:isShowDrawer=\"drawerOperateVisible\"\r\n v-model:customBtnPropsList=\"customBtnPropsList\"\r\n :customDefaultPropsList=\"customDefaultPropsList\"\r\n :keyWord=\"props.page\"\r\n type=\"OperateList\"\r\n />\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { computed, nextTick, ref } from 'vue';\r\nimport { hasOwn } from '@giime/utils/src/objects';\r\nimport TableProEditSlot from './TableProEditSlot.vue';\r\n// import { cloneDeep } from 'lodash-es';\r\n// import { operateButtonProps } from '../operateButton/operateButton';\r\n// import TableOperateVNodeRenderer from './TableOperateVNodeRenderer';\r\nimport TableColumnVNodeRenderer from './TableColumnVNodeRenderer';\r\nimport { tableProEmits, tableProProps } from './tablePro';\r\nimport { getVnodesByGmName } from './tableHelper';\r\nimport { TableColumnProName, type TableColumnProProps, tableColumnProProps } from './tableColumnPro/tableColumnPro';\r\nimport type { OperateButtonFormInstance } from '../operateButton/operateButtonForm';\r\nimport type { TableHeaderFormInstance } from './tableHeaderForm';\r\nimport type { OperateButtonProps } from '../operateButton/operateButton';\r\nimport type { Sort, TableInstance } from 'element-plus';\r\n\r\ndefineOptions({\r\n name: 'GmTablePro',\r\n});\r\nconst GmTbaleRef = ref<TableInstance>();\r\nconst gmCustomOperationsRef = ref<OperateButtonFormInstance>();\r\nconst gmTableHeaderRef = ref<TableHeaderFormInstance>();\r\n\r\nconst emit = defineEmits(tableProEmits);\r\nconst props = defineProps(tableProProps);\r\n\r\nconst slots = defineSlots<{\r\n default(data?: any): any[];\r\n}>();\r\n// 列 当前原始vnode\r\nconst tableColumnVnode = computed(() => {\r\n const vNodes = slots.default?.() || [];\r\n // const nodes = vNodes.filter(vNode => vNode.props && vNode.props.type !== 'edit');\r\n return vNodes;\r\n});\r\n// 默认表头Props列表\r\nconst colDefaultPropsList = computed(() => {\r\n const vNodes = slots.default?.() || [];\r\n const children = getVnodesByGmName(vNodes, TableColumnProName);\r\n // const result = children.filter(vNode => vNode.props && vNode.props.type !== 'edit');\r\n\r\n const colProps: TableColumnProProps[] = children.map((vNode: { props: any }) => vNode.props) ?? [];\r\n // 循环插入props所需的默认值\r\n colProps.forEach(it => {\r\n for (const key in tableColumnProProps) {\r\n // 如果当前props含有默认值\r\n if (hasOwn(it, key)) {\r\n continue;\r\n }\r\n if (hasOwn(tableColumnProProps, key)) {\r\n const element = tableColumnProProps[key as keyof TableColumnProProps];\r\n // 如果btn 定义中含有默认值 则赋值给props\r\n if (hasOwn(element, 'default')) {\r\n Reflect.set(it, key, Reflect.get(element, 'default'));\r\n }\r\n }\r\n }\r\n });\r\n return colProps;\r\n});\r\n// 已选中表头\r\nconst colPropsList = ref<TableColumnProProps[]>(colDefaultPropsList.value);\r\nconst editProps = computed(() => colPropsList.value.find(it => it.type === 'edit'));\r\n\r\n// 操作按钮组 当前原始vnode\r\nconst tableOperateVnode = computed(() => {\r\n const vNodes = slots.default?.() || [];\r\n const nodes = vNodes.find(vNode => vNode.props && vNode.props.type === 'edit');\r\n return nodes;\r\n});\r\n\r\n// const customDefaultPropsList = computed(() => {\r\n// const defaultVnodes = tableOperateVnode.value?.children?.default?.(tableOperateVnode.value?.ctx.scope);\r\n// const children = getVnodesByGmName(defaultVnodes, 'GmOperateButton');\r\n\r\n// const btnProps: OperateButtonProps[] = children.map((vNode: { props: any }) => vNode.props) ?? [];\r\n// // console.log(btnProps);\r\n// // 循环插入props所需的默认值\r\n// btnProps.forEach(it => {\r\n// for (const key in operateButtonProps) {\r\n// // 如果当前props含有默认值\r\n// if (hasOwn(it, key)) {\r\n// continue;\r\n// }\r\n// if (hasOwn(operateButtonProps, key)) {\r\n// const element = operateButtonProps[key as keyof OperateButtonProps];\r\n// // 如果btn 定义中含有默认值 则赋值给props\r\n// if (hasOwn(element, 'default')) {\r\n// Reflect.set(it, key, Reflect.get(element, 'default'));\r\n// }\r\n// }\r\n// }\r\n// });\r\n// return btnProps;\r\n// });\r\n\r\nconst customDefaultPropsList = ref<OperateButtonProps[]>([]);\r\nconst customBtnPropsList = ref<OperateButtonProps[]>([]);\r\n\r\n// 表格头部弹层\r\nconst drawerHeaderVisible = ref(false); // 表头设置弹层\r\nconst drawerOperateVisible = ref(false); // 按钮设置弹层\r\nconst setTable = (event: string) => {\r\n if (event === 'header') {\r\n drawerHeaderVisible.value = true;\r\n }\r\n if (event === 'operate') {\r\n drawerOperateVisible.value = true;\r\n }\r\n};\r\n\r\n/**\r\n * 表头拖动,修改width\r\n */\r\nconst headerDragend = async (newWidth: number, oldWidth: number, column: any) => {\r\n const findItem = colPropsList.value.find(it => it.prop === column.property);\r\n const editItem = column.property === 'gmEdit' ? colPropsList.value.find(it => it.type === 'edit') : null;\r\n if (!findItem && !editItem) {\r\n return;\r\n }\r\n if (findItem) {\r\n findItem.width = newWidth;\r\n }\r\n if (editItem) {\r\n editItem.width = newWidth;\r\n }\r\n // 设置列宽\r\n await nextTick();\r\n gmTableHeaderRef.value?.submitSettings();\r\n};\r\n/**\r\n * 搜索模块\r\n */\r\nconst sortValue = defineModel<\r\n {\r\n field: string;\r\n order: 'asc' | 'desc';\r\n }[]\r\n>('sortValue');\r\n\r\nconst handleSortChange = (sort: Sort) => {\r\n if (sortValue.value) {\r\n sortValue.value = [];\r\n switch (sort.order) {\r\n case 'ascending':\r\n sortValue.value.push({ field: sort.prop, order: 'asc' });\r\n break;\r\n case 'descending':\r\n sortValue.value.push({ field: sort.prop, order: 'desc' });\r\n break;\r\n }\r\n }\r\n\r\n emit('sortChange', sort);\r\n};\r\ndefineExpose({\r\n colPropsList,\r\n clearSort: () => GmTbaleRef.value?.clearSort(),\r\n});\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n:deep(.gmTableNoBorder .el-table__body .el-table__cell) {\r\n border-right: none;\r\n}\r\n:deep(.gmTableNoBorder .el-table__inner-wrapper:before) {\r\n height: 0;\r\n}\r\n:deep(.gmTableNoBorder.el-table--border .el-table__inner-wrapper:after) {\r\n height: 0;\r\n}\r\n:deep(.gmTableNoBorder.el-table--border:after) {\r\n height: 0;\r\n}\r\n:deep(.gmTableNoBorder.el-table--border:before) {\r\n height: 0;\r\n}\r\n:deep(.gmTableNoBorder .el-table__border-left-patch) {\r\n height: 0;\r\n}\r\n</style>\r\n"],"names":["_useSlots","_useModel"],"mappings":"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"}
|