giime 0.7.16 → 0.7.17
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 +115 -115
- package/es/components/src/composite/tablePro/tableToolbar/TableToolbar.vue.d.ts +11 -1
- package/es/components/src/composite/tablePro/tableToolbar/TableToolbar.vue2.mjs +3 -1
- package/es/components/src/composite/tablePro/tableToolbar/TableToolbar.vue2.mjs.map +1 -1
- package/es/components/src/composite/tablePro/tableToolbar/index.d.ts +25 -3
- package/es/components/src/composite/tablePro/tableToolbar/tableToolbar.d.ts +7 -0
- package/es/components/src/composite/tablePro/tableToolbar/tableToolbar.mjs +7 -0
- package/es/components/src/composite/tablePro/tableToolbar/tableToolbar.mjs.map +1 -1
- 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/hooks/base/useDictionary/index.mjs +4 -2
- package/es/hooks/base/useDictionary/index.mjs.map +1 -1
- package/es/hooks/store/useCustomSettings/index.mjs +2 -1
- package/es/hooks/store/useCustomSettings/index.mjs.map +1 -1
- package/es/index.css +115 -115
- package/lib/components/src/composite/tablePro/tableToolbar/TableToolbar.vue.d.ts +11 -1
- package/lib/components/src/composite/tablePro/tableToolbar/TableToolbar.vue2.js +3 -1
- package/lib/components/src/composite/tablePro/tableToolbar/TableToolbar.vue2.js.map +1 -1
- package/lib/components/src/composite/tablePro/tableToolbar/index.d.ts +25 -3
- package/lib/components/src/composite/tablePro/tableToolbar/tableToolbar.d.ts +7 -0
- package/lib/components/src/composite/tablePro/tableToolbar/tableToolbar.js +7 -0
- package/lib/components/src/composite/tablePro/tableToolbar/tableToolbar.js.map +1 -1
- 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/hooks/base/useDictionary/index.js +3 -1
- package/lib/hooks/base/useDictionary/index.js.map +1 -1
- package/lib/hooks/store/useCustomSettings/index.js +2 -1
- package/lib/hooks/store/useCustomSettings/index.js.map +1 -1
- package/lib/index.css +115 -115
- package/package.json +1 -1
package/dist/index.css
CHANGED
|
@@ -873,12 +873,56 @@ video {
|
|
|
873
873
|
.gm-group:hover .group-hover\:gm-block {
|
|
874
874
|
display: block;
|
|
875
875
|
}
|
|
876
|
-
|
|
877
|
-
|
|
876
|
+
|
|
877
|
+
.gm-range-number .el-form-item[data-v-1ae16d96] {
|
|
878
|
+
margin: 0;
|
|
878
879
|
}
|
|
879
880
|
|
|
880
|
-
.gm-
|
|
881
|
-
|
|
881
|
+
.gm-upload-pro-preview-dialog[data-v-80b383d8] [data-v-80b383d8] .el-dialog__body {
|
|
882
|
+
padding: 0;
|
|
883
|
+
}
|
|
884
|
+
|
|
885
|
+
.gm-upload-pro-file-picture-card[data-v-80b383d8] [data-v-80b383d8] .el-upload-list__item, .gm-upload-pro-file-picture-card[data-v-80b383d8] [data-v-80b383d8] .el-upload--picture-card {
|
|
886
|
+
width: auto;
|
|
887
|
+
height: auto;
|
|
888
|
+
}
|
|
889
|
+
.gm-upload-pro-file {
|
|
890
|
+
line-height: normal;
|
|
891
|
+
}
|
|
892
|
+
.gm-upload-pro-file .el-checkbox-group {
|
|
893
|
+
font-size: unset;
|
|
894
|
+
}
|
|
895
|
+
.gm-upload-pro-file .el-checkbox {
|
|
896
|
+
position: absolute;
|
|
897
|
+
left: 10px;
|
|
898
|
+
top: 0;
|
|
899
|
+
z-index: 9;
|
|
900
|
+
}
|
|
901
|
+
.gm-upload-pro-file .el-upload-list--picture-card {
|
|
902
|
+
gap: 10px;
|
|
903
|
+
}
|
|
904
|
+
.gm-upload-pro-file .el-upload-list__item {
|
|
905
|
+
margin: 0;
|
|
906
|
+
}
|
|
907
|
+
.gm-upload-pro-file .el-upload-list__item-file-name {
|
|
908
|
+
line-height: 1.7;
|
|
909
|
+
}
|
|
910
|
+
.gm-upload-pro-file .el-upload-dragger {
|
|
911
|
+
padding: 0;
|
|
912
|
+
border: none;
|
|
913
|
+
width: 100%;
|
|
914
|
+
height: 100%;
|
|
915
|
+
display: flex;
|
|
916
|
+
}
|
|
917
|
+
.gm-upload-pro-file .el-upload--picture-card {
|
|
918
|
+
border: none;
|
|
919
|
+
}
|
|
920
|
+
|
|
921
|
+
.gm-upload-pro-file-disabled .el-upload--picture-card {
|
|
922
|
+
display: none;
|
|
923
|
+
}
|
|
924
|
+
.gm-upload-pro-file-disabled .el-upload-list__item-status-label {
|
|
925
|
+
display: none;
|
|
882
926
|
}
|
|
883
927
|
.circular[data-v-d7b04fae] {
|
|
884
928
|
animation: loading-rotate-d7b04fae 2s linear infinite;
|
|
@@ -911,82 +955,122 @@ video {
|
|
|
911
955
|
stroke-dashoffset: -120px;
|
|
912
956
|
}
|
|
913
957
|
}
|
|
958
|
+
[data-v-488ca110] .gmSearchForm .el-form-item {
|
|
959
|
+
margin-right: 0;
|
|
960
|
+
margin-bottom: 4px;
|
|
961
|
+
}
|
|
962
|
+
.gm-flex-center[data-v-c17deec9] {
|
|
963
|
+
align-items: center;
|
|
964
|
+
}
|
|
914
965
|
|
|
915
|
-
.gm-
|
|
916
|
-
|
|
966
|
+
.gm-flex-justify-between[data-v-c17deec9] {
|
|
967
|
+
justify-content: space-between;
|
|
968
|
+
}
|
|
969
|
+
.gm-number-interval-single[data-v-4e6f4d6f] {
|
|
970
|
+
border-radius: var(--el-input-border-radius, var(--el-border-radius-base));
|
|
971
|
+
box-shadow: 0 0 0 1px var(--el-input-border-color, var(--el-border-color)) inset;
|
|
972
|
+
background-color: var(--el-input-bg-color, var(--el-fill-color-blank));
|
|
973
|
+
}
|
|
974
|
+
.gm-number-interval-single[data-v-4e6f4d6f] [data-v-4e6f4d6f] .el-input__wrapper {
|
|
975
|
+
box-shadow: none;
|
|
976
|
+
background: none;
|
|
917
977
|
}
|
|
918
978
|
|
|
919
|
-
.gm-
|
|
979
|
+
.gm-number-interval-close[data-v-4e6f4d6f] {
|
|
980
|
+
display: none;
|
|
981
|
+
color: var(--el-input-icon-color, var(--el-text-color-placeholder));
|
|
982
|
+
}
|
|
983
|
+
|
|
984
|
+
.gm-number-interval-single[data-v-4e6f4d6f]:hover .gm-number-interval-close[data-v-4e6f4d6f] {
|
|
985
|
+
display: flex;
|
|
986
|
+
}
|
|
987
|
+
[data-v-2c351ff8] .gmTableNoBorder .el-table__body .el-table__cell {
|
|
988
|
+
border-right: none;
|
|
989
|
+
}
|
|
990
|
+
|
|
991
|
+
[data-v-2c351ff8] .gmTableNoBorder .el-table__inner-wrapper:before {
|
|
992
|
+
height: 0;
|
|
993
|
+
}
|
|
994
|
+
|
|
995
|
+
[data-v-2c351ff8] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
|
|
996
|
+
height: 0;
|
|
997
|
+
}
|
|
998
|
+
|
|
999
|
+
[data-v-2c351ff8] .gmTableNoBorder.el-table--border:after {
|
|
1000
|
+
height: 0;
|
|
1001
|
+
}
|
|
1002
|
+
|
|
1003
|
+
[data-v-2c351ff8] .gmTableNoBorder.el-table--border:before {
|
|
1004
|
+
height: 0;
|
|
1005
|
+
}
|
|
1006
|
+
|
|
1007
|
+
[data-v-2c351ff8] .gmTableNoBorder .el-table__border-left-patch {
|
|
1008
|
+
height: 0;
|
|
1009
|
+
}
|
|
1010
|
+
.gm-upload-preview-dialog[data-v-312f9322] [data-v-312f9322] .el-dialog__body {
|
|
920
1011
|
padding: 0;
|
|
921
1012
|
}
|
|
922
1013
|
|
|
923
|
-
.gm-upload-
|
|
1014
|
+
.gm-upload-file-picture-card[data-v-312f9322] [data-v-312f9322] .el-upload-list__item, .gm-upload-file-picture-card[data-v-312f9322] [data-v-312f9322] .el-upload--picture-card {
|
|
924
1015
|
width: auto;
|
|
925
1016
|
height: auto;
|
|
926
1017
|
}
|
|
927
|
-
.gm-upload-
|
|
1018
|
+
.gm-upload-file {
|
|
928
1019
|
line-height: normal;
|
|
929
1020
|
}
|
|
930
|
-
.gm-upload-
|
|
931
|
-
font-size: unset;
|
|
932
|
-
}
|
|
933
|
-
.gm-upload-pro-file .el-checkbox {
|
|
1021
|
+
.gm-upload-file .el-checkbox {
|
|
934
1022
|
position: absolute;
|
|
935
1023
|
left: 10px;
|
|
936
1024
|
top: 0;
|
|
937
1025
|
z-index: 9;
|
|
938
1026
|
}
|
|
939
|
-
.gm-upload-
|
|
1027
|
+
.gm-upload-file .el-upload-list--picture-card {
|
|
940
1028
|
gap: 10px;
|
|
941
1029
|
}
|
|
942
|
-
.gm-upload-
|
|
1030
|
+
.gm-upload-file .el-upload-list__item {
|
|
943
1031
|
margin: 0;
|
|
944
1032
|
}
|
|
945
|
-
.gm-upload-
|
|
946
|
-
line-height:
|
|
1033
|
+
.gm-upload-file .el-upload-list__item-file-name {
|
|
1034
|
+
line-height: normal;
|
|
947
1035
|
}
|
|
948
|
-
.gm-upload-
|
|
1036
|
+
.gm-upload-file .el-upload-dragger {
|
|
949
1037
|
padding: 0;
|
|
950
1038
|
border: none;
|
|
951
1039
|
width: 100%;
|
|
952
1040
|
height: 100%;
|
|
953
1041
|
display: flex;
|
|
954
1042
|
}
|
|
955
|
-
.gm-upload-
|
|
1043
|
+
.gm-upload-file .el-upload--picture-card {
|
|
956
1044
|
border: none;
|
|
957
1045
|
}
|
|
958
1046
|
|
|
959
|
-
.gm-upload-
|
|
1047
|
+
.gm-upload-file-disabled .el-upload--picture-card {
|
|
960
1048
|
display: none;
|
|
961
1049
|
}
|
|
962
|
-
.gm-upload-
|
|
1050
|
+
.gm-upload-file-disabled .el-upload-list__item-status-label {
|
|
963
1051
|
display: none;
|
|
964
1052
|
}
|
|
965
|
-
[data-v-
|
|
966
|
-
margin-right: 0;
|
|
967
|
-
margin-bottom: 4px;
|
|
968
|
-
}
|
|
969
|
-
[data-v-2c351ff8] .gmTableNoBorder .el-table__body .el-table__cell {
|
|
1053
|
+
[data-v-98c2e804] .gmTableNoBorder .el-table__body .el-table__cell {
|
|
970
1054
|
border-right: none;
|
|
971
1055
|
}
|
|
972
1056
|
|
|
973
|
-
[data-v-
|
|
1057
|
+
[data-v-98c2e804] .gmTableNoBorder .el-table__inner-wrapper:before {
|
|
974
1058
|
height: 0;
|
|
975
1059
|
}
|
|
976
1060
|
|
|
977
|
-
[data-v-
|
|
1061
|
+
[data-v-98c2e804] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
|
|
978
1062
|
height: 0;
|
|
979
1063
|
}
|
|
980
1064
|
|
|
981
|
-
[data-v-
|
|
1065
|
+
[data-v-98c2e804] .gmTableNoBorder.el-table--border:after {
|
|
982
1066
|
height: 0;
|
|
983
1067
|
}
|
|
984
1068
|
|
|
985
|
-
[data-v-
|
|
1069
|
+
[data-v-98c2e804] .gmTableNoBorder.el-table--border:before {
|
|
986
1070
|
height: 0;
|
|
987
1071
|
}
|
|
988
1072
|
|
|
989
|
-
[data-v-
|
|
1073
|
+
[data-v-98c2e804] .gmTableNoBorder .el-table__border-left-patch {
|
|
990
1074
|
height: 0;
|
|
991
1075
|
}
|
|
992
1076
|
|
|
@@ -998,24 +1082,6 @@ video {
|
|
|
998
1082
|
display: none;
|
|
999
1083
|
}
|
|
1000
1084
|
|
|
1001
|
-
.gm-number-interval-single[data-v-4e6f4d6f] {
|
|
1002
|
-
border-radius: var(--el-input-border-radius, var(--el-border-radius-base));
|
|
1003
|
-
box-shadow: 0 0 0 1px var(--el-input-border-color, var(--el-border-color)) inset;
|
|
1004
|
-
background-color: var(--el-input-bg-color, var(--el-fill-color-blank));
|
|
1005
|
-
}
|
|
1006
|
-
.gm-number-interval-single[data-v-4e6f4d6f] [data-v-4e6f4d6f] .el-input__wrapper {
|
|
1007
|
-
box-shadow: none;
|
|
1008
|
-
background: none;
|
|
1009
|
-
}
|
|
1010
|
-
|
|
1011
|
-
.gm-number-interval-close[data-v-4e6f4d6f] {
|
|
1012
|
-
display: none;
|
|
1013
|
-
color: var(--el-input-icon-color, var(--el-text-color-placeholder));
|
|
1014
|
-
}
|
|
1015
|
-
|
|
1016
|
-
.gm-number-interval-single[data-v-4e6f4d6f]:hover .gm-number-interval-close[data-v-4e6f4d6f] {
|
|
1017
|
-
display: flex;
|
|
1018
|
-
}
|
|
1019
1085
|
@charset "UTF-8";
|
|
1020
1086
|
.custom-operate-drawer .el-drawer__header {
|
|
1021
1087
|
padding: 10px 15px;
|
|
@@ -1072,29 +1138,6 @@ video {
|
|
|
1072
1138
|
border-radius: 10px;
|
|
1073
1139
|
background: #eee;
|
|
1074
1140
|
}
|
|
1075
|
-
[data-v-98c2e804] .gmTableNoBorder .el-table__body .el-table__cell {
|
|
1076
|
-
border-right: none;
|
|
1077
|
-
}
|
|
1078
|
-
|
|
1079
|
-
[data-v-98c2e804] .gmTableNoBorder .el-table__inner-wrapper:before {
|
|
1080
|
-
height: 0;
|
|
1081
|
-
}
|
|
1082
|
-
|
|
1083
|
-
[data-v-98c2e804] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
|
|
1084
|
-
height: 0;
|
|
1085
|
-
}
|
|
1086
|
-
|
|
1087
|
-
[data-v-98c2e804] .gmTableNoBorder.el-table--border:after {
|
|
1088
|
-
height: 0;
|
|
1089
|
-
}
|
|
1090
|
-
|
|
1091
|
-
[data-v-98c2e804] .gmTableNoBorder.el-table--border:before {
|
|
1092
|
-
height: 0;
|
|
1093
|
-
}
|
|
1094
|
-
|
|
1095
|
-
[data-v-98c2e804] .gmTableNoBorder .el-table__border-left-patch {
|
|
1096
|
-
height: 0;
|
|
1097
|
-
}
|
|
1098
1141
|
@charset "UTF-8";
|
|
1099
1142
|
.table-custom-header-drawer .el-drawer__header {
|
|
1100
1143
|
padding: 10px 15px;
|
|
@@ -1150,47 +1193,4 @@ video {
|
|
|
1150
1193
|
box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.1);
|
|
1151
1194
|
border-radius: 10px;
|
|
1152
1195
|
background: #eee;
|
|
1153
|
-
}
|
|
1154
|
-
.gm-upload-preview-dialog[data-v-312f9322] [data-v-312f9322] .el-dialog__body {
|
|
1155
|
-
padding: 0;
|
|
1156
|
-
}
|
|
1157
|
-
|
|
1158
|
-
.gm-upload-file-picture-card[data-v-312f9322] [data-v-312f9322] .el-upload-list__item, .gm-upload-file-picture-card[data-v-312f9322] [data-v-312f9322] .el-upload--picture-card {
|
|
1159
|
-
width: auto;
|
|
1160
|
-
height: auto;
|
|
1161
|
-
}
|
|
1162
|
-
.gm-upload-file {
|
|
1163
|
-
line-height: normal;
|
|
1164
|
-
}
|
|
1165
|
-
.gm-upload-file .el-checkbox {
|
|
1166
|
-
position: absolute;
|
|
1167
|
-
left: 10px;
|
|
1168
|
-
top: 0;
|
|
1169
|
-
z-index: 9;
|
|
1170
|
-
}
|
|
1171
|
-
.gm-upload-file .el-upload-list--picture-card {
|
|
1172
|
-
gap: 10px;
|
|
1173
|
-
}
|
|
1174
|
-
.gm-upload-file .el-upload-list__item {
|
|
1175
|
-
margin: 0;
|
|
1176
|
-
}
|
|
1177
|
-
.gm-upload-file .el-upload-list__item-file-name {
|
|
1178
|
-
line-height: normal;
|
|
1179
|
-
}
|
|
1180
|
-
.gm-upload-file .el-upload-dragger {
|
|
1181
|
-
padding: 0;
|
|
1182
|
-
border: none;
|
|
1183
|
-
width: 100%;
|
|
1184
|
-
height: 100%;
|
|
1185
|
-
display: flex;
|
|
1186
|
-
}
|
|
1187
|
-
.gm-upload-file .el-upload--picture-card {
|
|
1188
|
-
border: none;
|
|
1189
|
-
}
|
|
1190
|
-
|
|
1191
|
-
.gm-upload-file-disabled .el-upload--picture-card {
|
|
1192
|
-
display: none;
|
|
1193
|
-
}
|
|
1194
|
-
.gm-upload-file-disabled .el-upload-list__item-status-label {
|
|
1195
|
-
display: none;
|
|
1196
1196
|
}
|
|
@@ -11,6 +11,10 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
|
|
|
11
11
|
total: {
|
|
12
12
|
type: NumberConstructor;
|
|
13
13
|
};
|
|
14
|
+
immediate: {
|
|
15
|
+
type: BooleanConstructor;
|
|
16
|
+
default: boolean;
|
|
17
|
+
};
|
|
14
18
|
selectedCount: {
|
|
15
19
|
type: NumberConstructor;
|
|
16
20
|
};
|
|
@@ -31,6 +35,10 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
|
|
|
31
35
|
total: {
|
|
32
36
|
type: NumberConstructor;
|
|
33
37
|
};
|
|
38
|
+
immediate: {
|
|
39
|
+
type: BooleanConstructor;
|
|
40
|
+
default: boolean;
|
|
41
|
+
};
|
|
34
42
|
selectedCount: {
|
|
35
43
|
type: NumberConstructor;
|
|
36
44
|
};
|
|
@@ -38,7 +46,9 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
|
|
|
38
46
|
"onUpdate:showSearch"?: ((showSearch: boolean) => any) | undefined;
|
|
39
47
|
"onUpdate:queryParams"?: ((queryParams: any) => any) | undefined;
|
|
40
48
|
onGetList?: (() => any) | undefined;
|
|
41
|
-
}, {
|
|
49
|
+
}, {
|
|
50
|
+
immediate: boolean;
|
|
51
|
+
}, {}>, {
|
|
42
52
|
default?(_: {}): any;
|
|
43
53
|
}>;
|
|
44
54
|
export default _default;
|
|
@@ -110,7 +110,9 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
110
110
|
emit("getList");
|
|
111
111
|
}
|
|
112
112
|
onMounted(async () => {
|
|
113
|
-
|
|
113
|
+
if (props.immediate) {
|
|
114
|
+
await customSettingsStore.getCustomSettings({ key_word: props.tableId, type: customSettingType }, { defaultValue: [] });
|
|
115
|
+
}
|
|
114
116
|
});
|
|
115
117
|
return (_ctx, _cache) => {
|
|
116
118
|
const _component_gm_col = resolveComponent("gm-col");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableToolbar.vue2.mjs","sources":["../../../../../../../../packages/components/src/composite/tablePro/tableToolbar/TableToolbar.vue"],"sourcesContent":["<script lang=\"ts\">\nconst customSettingType = 'quickQueryList'\n</script>\n<template>\n <div>\n <gm-row :gutter=\"10\" style=\"margin-right: 0\">\n <gm-col v-if=\"isNumber(total)\" :span=\"1.5\" class=\"gm-text-[14px] gm-leading-[32px]\">\n <span>共 {{ total }} 条</span>\n </gm-col>\n <gm-col v-if=\"isNumber(selectedCount)\" :span=\"2.5\" class=\"gm-mr-2 gm-text-[14px] gm-leading-[32px]\">\n <span\n >已选择<span class=\"gm-inline-block gm-min-w-[20px] gm-text-center\">{{ selectedCount }}</span\n >项</span\n >\n </gm-col>\n <slot />\n <!-- <right-toolbar v-model:showSearch=\"showSearch\" @queryTable=\"emits('getList')\" /> -->\n <div class=\"gm-ml-auto\">\n <div class=\"gm-flex\">\n <gm-button plain class=\"gm-mr-2 gm-block\" @click.stop=\"openSaveSearchDialog()\">保存查询</gm-button>\n <gm-dropdown trigger=\"click\" class=\"gm-mr-3 hover:gm-outline-none\">\n <gm-button plain type=\"\">\n 快捷查询<gm-icon class=\"el-icon--right\"><ArrowDown /></gm-icon>\n </gm-button>\n <template #dropdown>\n <gm-dropdown-menu class=\"gm-min-w-[200px]\">\n <div v-if=\"customSettingsValue.length === 0\" class=\"gm-my-5 gm-text-center gm-text-base gm-font-bold gm-text-gray-700\">暂无数据</div>\n <gm-dropdown-item\n v-for=\"item in customSettingsValue\"\n :key=\"item.uuid\"\n class=\"gm-group gm-flex gm-justify-between\"\n @click=\"applySettings(item)\"\n >\n <span> {{ item.name }} </span>\n <gm-icon class=\"gm-hidden hover:gm-text-red-500 group-hover:gm-block\" @click.stop=\"deleteSettins(item)\"> <Delete /> </gm-icon>\n </gm-dropdown-item>\n <div class=\"gm-m-2\">\n <!-- <gm-button :loading=\"submitLoading\" size=\"small\" type=\"\" @click=\"onClear\">清空</gm-button> -->\n <gm-button :loading=\"syncLoading\" size=\"small\" type=\"success\" @click=\"onSyncRemote\">同步</gm-button>\n </div>\n </gm-dropdown-menu>\n </template>\n </gm-dropdown>\n <gm-tooltip class=\"item\" effect=\"dark\" :content=\"showSearch ? '隐藏搜索' : '显示搜索'\" placement=\"top\">\n <gm-button circle plain :icon=\"Search\" @click=\"toggleSearch()\" />\n </gm-tooltip>\n <gm-tooltip class=\"item\" effect=\"dark\" content=\"刷新\" placement=\"top\">\n <gm-button circle plain :icon=\"Refresh\" @click=\"refresh()\" />\n </gm-tooltip>\n </div>\n <GmDialogForm\n v-model=\"saveSearchVisible\"\n :formData=\"searchform\"\n :loading=\"submitLoading\"\n :rules=\"rules\"\n title=\"保存当前查询\"\n labelWidth=\"auto\"\n @submit=\"addSettings\"\n >\n <gm-form-item-module\n v-model=\"searchform.name\"\n field=\"name\"\n label=\"查询名称\"\n type=\"GmInput\"\n :props=\"{ placeholder: '请输入', maxlength: '15', showWordLimit: true }\"\n />\n </GmDialogForm>\n </div>\n </gm-row>\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { computed, inject, onMounted, ref } from 'vue';\nimport { v4 as uuidv4 } from 'uuid';\nimport { useCustomSettingsStore } from '@giime/hooks/store/useCustomSettings';\nimport { GmMessage } from '@giime/components/src/plugins/message';\nimport { hasOwn } from '@giime/utils/src/objects';\nimport { remove } from '@giime/utils/src/general';\nimport { isNumber } from '@giime/utils/src/is';\nimport { TableCtxKey } from '@giime/constants/table';\nimport { ArrowDown, Delete, Refresh, Search } from '@element-plus/icons-vue';\nimport { tableToolbarEmits, tableToolbarProps } from './tableToolbar';\n\ndefineOptions({\n name: 'GmTableToolbar',\n});\nconst tableCtx = inject(TableCtxKey, {});\n\nconst props = defineProps(tableToolbarProps);\nconst emit = defineEmits(tableToolbarEmits);\n\nconst showSearch = defineModel<boolean>('showSearch', { required: true });\nconst queryParams = defineModel<any>('queryParams');\n\nconst customSettingsStore = useCustomSettingsStore();\ninterface TableToolbarSettings {\n uuid: string;\n name: string;\n value: Record<string, any>;\n}\nconst customSettingsValue = computed<TableToolbarSettings[]>(() => customSettingsStore.customSettings[props.tableId]?.[customSettingType] || []);\n\nconst saveSearchVisible = ref(false);\nconst searchform = ref({\n name: '',\n});\nconst rules = {\n name: [{ required: true, message: '查询名称不能为空', trigger: 'blur' }],\n};\n// 打开保存dialog\nconst openSaveSearchDialog = () => {\n saveSearchVisible.value = true;\n searchform.value.name = '';\n};\n// 应用设置\nconst applySettings = (item: TableToolbarSettings) => {\n tableCtx.queryRef?.value?.resetFields?.();\n for (const key in item.value) {\n if (hasOwn(item.value, key) && hasOwn(queryParams.value, key)) {\n queryParams.value[key] = item.value[key];\n }\n }\n emit('getList');\n tableCtx?.tableRef?.value?.scrollTo({ top: 0, behavior: 'smooth' });\n tableCtx.tableV2Ref?.value?.scrollTo({ scrollLeft: 0, scrollTop: 0 });\n};\nconst submitLoading = ref(false);\n// 添加设置\nconst addSettings = () => {\n const params = JSON.stringify([{ uuid: uuidv4(), name: searchform.value.name, value: queryParams.value }, ...customSettingsValue.value]);\n return submitSettings(params);\n};\n// 删除设置\nconst deleteSettins = (item: TableToolbarSettings) => {\n remove(customSettingsValue.value, item);\n return submitSettings(JSON.stringify(customSettingsValue.value));\n};\n\n// const onClear = () => {\n// return submitSettings(JSON.stringify([]));\n// };\nconst syncLoading = ref(false);\n/**同步远程设置 */\nconst onSyncRemote = async () => {\n try {\n syncLoading.value = true;\n await customSettingsStore.syncRemoteSetting({\n key_word: props.tableId,\n type: customSettingType,\n });\n syncLoading.value = false;\n GmMessage.success('同步成功');\n } catch (e) {\n console.error(e);\n syncLoading.value = false;\n }\n};\n// 保存\nconst submitSettings = async (value: string) => {\n try {\n submitLoading.value = true;\n const { data } = await customSettingsStore.addCustomSettings({\n key_word: props.tableId,\n value,\n type: customSettingType,\n });\n submitLoading.value = false;\n if (data.code !== 200) {\n return;\n }\n GmMessage.success('操作成功');\n saveSearchVisible.value = false;\n } catch (e) {\n console.error(e);\n submitLoading.value = false;\n }\n};\n// 搜索\nfunction toggleSearch() {\n showSearch.value = !showSearch.value;\n}\n// 刷新\nfunction refresh() {\n emit('getList');\n}\nonMounted(async () => {\n await customSettingsStore.getCustomSettings({ key_word: props.tableId, type: customSettingType }, { defaultValue: [] });\n});\n</script>\n"],"names":["_useModel","uuidv4"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TableToolbar.vue2.mjs","sources":["../../../../../../../../packages/components/src/composite/tablePro/tableToolbar/TableToolbar.vue"],"sourcesContent":["<script lang=\"ts\">\nconst customSettingType = 'quickQueryList'\n</script>\n<template>\n <div>\n <gm-row :gutter=\"10\" style=\"margin-right: 0\">\n <gm-col v-if=\"isNumber(total)\" :span=\"1.5\" class=\"gm-text-[14px] gm-leading-[32px]\">\n <span>共 {{ total }} 条</span>\n </gm-col>\n <gm-col v-if=\"isNumber(selectedCount)\" :span=\"2.5\" class=\"gm-mr-2 gm-text-[14px] gm-leading-[32px]\">\n <span\n >已选择<span class=\"gm-inline-block gm-min-w-[20px] gm-text-center\">{{ selectedCount }}</span\n >项</span\n >\n </gm-col>\n <slot />\n <!-- <right-toolbar v-model:showSearch=\"showSearch\" @queryTable=\"emits('getList')\" /> -->\n <div class=\"gm-ml-auto\">\n <div class=\"gm-flex\">\n <gm-button plain class=\"gm-mr-2 gm-block\" @click.stop=\"openSaveSearchDialog()\">保存查询</gm-button>\n <gm-dropdown trigger=\"click\" class=\"gm-mr-3 hover:gm-outline-none\">\n <gm-button plain type=\"\">\n 快捷查询<gm-icon class=\"el-icon--right\"><ArrowDown /></gm-icon>\n </gm-button>\n <template #dropdown>\n <gm-dropdown-menu class=\"gm-min-w-[200px]\">\n <div v-if=\"customSettingsValue.length === 0\" class=\"gm-my-5 gm-text-center gm-text-base gm-font-bold gm-text-gray-700\">暂无数据</div>\n <gm-dropdown-item\n v-for=\"item in customSettingsValue\"\n :key=\"item.uuid\"\n class=\"gm-group gm-flex gm-justify-between\"\n @click=\"applySettings(item)\"\n >\n <span> {{ item.name }} </span>\n <gm-icon class=\"gm-hidden hover:gm-text-red-500 group-hover:gm-block\" @click.stop=\"deleteSettins(item)\"> <Delete /> </gm-icon>\n </gm-dropdown-item>\n <div class=\"gm-m-2\">\n <!-- <gm-button :loading=\"submitLoading\" size=\"small\" type=\"\" @click=\"onClear\">清空</gm-button> -->\n <gm-button :loading=\"syncLoading\" size=\"small\" type=\"success\" @click=\"onSyncRemote\">同步</gm-button>\n </div>\n </gm-dropdown-menu>\n </template>\n </gm-dropdown>\n <gm-tooltip class=\"item\" effect=\"dark\" :content=\"showSearch ? '隐藏搜索' : '显示搜索'\" placement=\"top\">\n <gm-button circle plain :icon=\"Search\" @click=\"toggleSearch()\" />\n </gm-tooltip>\n <gm-tooltip class=\"item\" effect=\"dark\" content=\"刷新\" placement=\"top\">\n <gm-button circle plain :icon=\"Refresh\" @click=\"refresh()\" />\n </gm-tooltip>\n </div>\n <GmDialogForm\n v-model=\"saveSearchVisible\"\n :formData=\"searchform\"\n :loading=\"submitLoading\"\n :rules=\"rules\"\n title=\"保存当前查询\"\n labelWidth=\"auto\"\n @submit=\"addSettings\"\n >\n <gm-form-item-module\n v-model=\"searchform.name\"\n field=\"name\"\n label=\"查询名称\"\n type=\"GmInput\"\n :props=\"{ placeholder: '请输入', maxlength: '15', showWordLimit: true }\"\n />\n </GmDialogForm>\n </div>\n </gm-row>\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { computed, inject, onMounted, ref } from 'vue';\nimport { v4 as uuidv4 } from 'uuid';\nimport { useCustomSettingsStore } from '@giime/hooks/store/useCustomSettings';\nimport { GmMessage } from '@giime/components/src/plugins/message';\nimport { hasOwn } from '@giime/utils/src/objects';\nimport { remove } from '@giime/utils/src/general';\nimport { isNumber } from '@giime/utils/src/is';\nimport { TableCtxKey } from '@giime/constants/table';\nimport { ArrowDown, Delete, Refresh, Search } from '@element-plus/icons-vue';\nimport { tableToolbarEmits, tableToolbarProps } from './tableToolbar';\n\ndefineOptions({\n name: 'GmTableToolbar',\n});\nconst tableCtx = inject(TableCtxKey, {});\n\nconst props = defineProps(tableToolbarProps);\nconst emit = defineEmits(tableToolbarEmits);\n\nconst showSearch = defineModel<boolean>('showSearch', { required: true });\nconst queryParams = defineModel<any>('queryParams');\n\nconst customSettingsStore = useCustomSettingsStore();\ninterface TableToolbarSettings {\n uuid: string;\n name: string;\n value: Record<string, any>;\n}\nconst customSettingsValue = computed<TableToolbarSettings[]>(() => customSettingsStore.customSettings[props.tableId]?.[customSettingType] || []);\n\nconst saveSearchVisible = ref(false);\nconst searchform = ref({\n name: '',\n});\nconst rules = {\n name: [{ required: true, message: '查询名称不能为空', trigger: 'blur' }],\n};\n// 打开保存dialog\nconst openSaveSearchDialog = () => {\n saveSearchVisible.value = true;\n searchform.value.name = '';\n};\n// 应用设置\nconst applySettings = (item: TableToolbarSettings) => {\n tableCtx.queryRef?.value?.resetFields?.();\n for (const key in item.value) {\n if (hasOwn(item.value, key) && hasOwn(queryParams.value, key)) {\n queryParams.value[key] = item.value[key];\n }\n }\n emit('getList');\n tableCtx?.tableRef?.value?.scrollTo({ top: 0, behavior: 'smooth' });\n tableCtx.tableV2Ref?.value?.scrollTo({ scrollLeft: 0, scrollTop: 0 });\n};\nconst submitLoading = ref(false);\n// 添加设置\nconst addSettings = () => {\n const params = JSON.stringify([{ uuid: uuidv4(), name: searchform.value.name, value: queryParams.value }, ...customSettingsValue.value]);\n return submitSettings(params);\n};\n// 删除设置\nconst deleteSettins = (item: TableToolbarSettings) => {\n remove(customSettingsValue.value, item);\n return submitSettings(JSON.stringify(customSettingsValue.value));\n};\n\n// const onClear = () => {\n// return submitSettings(JSON.stringify([]));\n// };\nconst syncLoading = ref(false);\n/**同步远程设置 */\nconst onSyncRemote = async () => {\n try {\n syncLoading.value = true;\n await customSettingsStore.syncRemoteSetting({\n key_word: props.tableId,\n type: customSettingType,\n });\n syncLoading.value = false;\n GmMessage.success('同步成功');\n } catch (e) {\n console.error(e);\n syncLoading.value = false;\n }\n};\n// 保存\nconst submitSettings = async (value: string) => {\n try {\n submitLoading.value = true;\n const { data } = await customSettingsStore.addCustomSettings({\n key_word: props.tableId,\n value,\n type: customSettingType,\n });\n submitLoading.value = false;\n if (data.code !== 200) {\n return;\n }\n GmMessage.success('操作成功');\n saveSearchVisible.value = false;\n } catch (e) {\n console.error(e);\n submitLoading.value = false;\n }\n};\n// 搜索\nfunction toggleSearch() {\n showSearch.value = !showSearch.value;\n}\n// 刷新\nfunction refresh() {\n emit('getList');\n}\nonMounted(async () => {\n if (props.immediate) {\n await customSettingsStore.getCustomSettings({ key_word: props.tableId, type: customSettingType }, { defaultValue: [] });\n }\n});\n</script>\n"],"names":["_useModel","uuidv4"],"mappings":"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"}
|
|
@@ -13,6 +13,10 @@ export declare const GmTableToolbar: import("../../../../../utils").SFCWithInsta
|
|
|
13
13
|
total: {
|
|
14
14
|
type: NumberConstructor;
|
|
15
15
|
};
|
|
16
|
+
immediate: {
|
|
17
|
+
type: BooleanConstructor;
|
|
18
|
+
default: boolean;
|
|
19
|
+
};
|
|
16
20
|
selectedCount: {
|
|
17
21
|
type: NumberConstructor;
|
|
18
22
|
};
|
|
@@ -37,6 +41,10 @@ export declare const GmTableToolbar: import("../../../../../utils").SFCWithInsta
|
|
|
37
41
|
total: {
|
|
38
42
|
type: NumberConstructor;
|
|
39
43
|
};
|
|
44
|
+
immediate: {
|
|
45
|
+
type: BooleanConstructor;
|
|
46
|
+
default: boolean;
|
|
47
|
+
};
|
|
40
48
|
selectedCount: {
|
|
41
49
|
type: NumberConstructor;
|
|
42
50
|
};
|
|
@@ -44,7 +52,9 @@ export declare const GmTableToolbar: import("../../../../../utils").SFCWithInsta
|
|
|
44
52
|
"onUpdate:showSearch"?: ((showSearch: boolean) => any) | undefined;
|
|
45
53
|
"onUpdate:queryParams"?: ((queryParams: any) => any) | undefined;
|
|
46
54
|
onGetList?: (() => any) | undefined;
|
|
47
|
-
}, {
|
|
55
|
+
}, {
|
|
56
|
+
immediate: boolean;
|
|
57
|
+
}, true, {}, {}, {
|
|
48
58
|
P: {};
|
|
49
59
|
B: {};
|
|
50
60
|
D: {};
|
|
@@ -64,6 +74,10 @@ export declare const GmTableToolbar: import("../../../../../utils").SFCWithInsta
|
|
|
64
74
|
total: {
|
|
65
75
|
type: NumberConstructor;
|
|
66
76
|
};
|
|
77
|
+
immediate: {
|
|
78
|
+
type: BooleanConstructor;
|
|
79
|
+
default: boolean;
|
|
80
|
+
};
|
|
67
81
|
selectedCount: {
|
|
68
82
|
type: NumberConstructor;
|
|
69
83
|
};
|
|
@@ -71,7 +85,9 @@ export declare const GmTableToolbar: import("../../../../../utils").SFCWithInsta
|
|
|
71
85
|
"onUpdate:showSearch"?: ((showSearch: boolean) => any) | undefined;
|
|
72
86
|
"onUpdate:queryParams"?: ((queryParams: any) => any) | undefined;
|
|
73
87
|
onGetList?: (() => any) | undefined;
|
|
74
|
-
}, {}, {}, {}, {}, {
|
|
88
|
+
}, {}, {}, {}, {}, {
|
|
89
|
+
immediate: boolean;
|
|
90
|
+
}>;
|
|
75
91
|
__isFragment?: undefined;
|
|
76
92
|
__isTeleport?: undefined;
|
|
77
93
|
__isSuspense?: undefined;
|
|
@@ -88,6 +104,10 @@ export declare const GmTableToolbar: import("../../../../../utils").SFCWithInsta
|
|
|
88
104
|
total: {
|
|
89
105
|
type: NumberConstructor;
|
|
90
106
|
};
|
|
107
|
+
immediate: {
|
|
108
|
+
type: BooleanConstructor;
|
|
109
|
+
default: boolean;
|
|
110
|
+
};
|
|
91
111
|
selectedCount: {
|
|
92
112
|
type: NumberConstructor;
|
|
93
113
|
};
|
|
@@ -99,7 +119,9 @@ export declare const GmTableToolbar: import("../../../../../utils").SFCWithInsta
|
|
|
99
119
|
"update:showSearch": (showSearch: boolean) => void;
|
|
100
120
|
"update:queryParams": (queryParams: any) => void;
|
|
101
121
|
getList: () => void;
|
|
102
|
-
}, string, {
|
|
122
|
+
}, string, {
|
|
123
|
+
immediate: boolean;
|
|
124
|
+
}, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
|
|
103
125
|
$slots: {
|
|
104
126
|
default?(_: {}): any;
|
|
105
127
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tableToolbar.mjs","sources":["../../../../../../../../packages/components/src/composite/tablePro/tableToolbar/tableToolbar.ts"],"sourcesContent":["// import { tableColumnEmits as elTableColumnEmits, tableColumnProps as elTableColumnProps } from 'element-plus';\n// import type { ExtractPropTypes } from 'vue';\n// import elTableProps from 'element-plus/es/components/table/src/table-column/defaults';\nimport type { ExtractPropTypes } from 'vue';\n\nexport const tableToolbarProps = {\n tableId: {\n type: String,\n required: true as const,\n },\n /**\n * 总数\n */\n total: {\n type: Number,\n },\n /**\n * 已选择个数\n */\n selectedCount: {\n type: Number,\n },\n};\nexport const tableToolbarEmits = {\n getList: async (): Promise<any> => {},\n};\nexport type TableToolbarProps = ExtractPropTypes<typeof tableToolbarProps>;\n"],"names":[],"mappings":"AAKO,MAAM,iBAAoB,GAAA;AAAA,EAC/B,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,MAAA;AAAA,IACN,QAAU,EAAA,IAAA;AAAA,GACZ;AAAA;AAAA;AAAA;AAAA,EAIA,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,aAAe,EAAA;AAAA,IACb,IAAM,EAAA,MAAA;AAAA,GACR;AACF,EAAA;AACO,MAAM,iBAAoB,GAAA;AAAA,EAC/B,SAAS,YAA0B;AAAA,GAAC;AACtC;;;;"}
|
|
1
|
+
{"version":3,"file":"tableToolbar.mjs","sources":["../../../../../../../../packages/components/src/composite/tablePro/tableToolbar/tableToolbar.ts"],"sourcesContent":["// import { tableColumnEmits as elTableColumnEmits, tableColumnProps as elTableColumnProps } from 'element-plus';\n// import type { ExtractPropTypes } from 'vue';\n// import elTableProps from 'element-plus/es/components/table/src/table-column/defaults';\nimport type { ExtractPropTypes } from 'vue';\n\nexport const tableToolbarProps = {\n tableId: {\n type: String,\n required: true as const,\n },\n /**\n * 总数\n */\n total: {\n type: Number,\n },\n /**\n * 是否立即获取远程 快速筛选列表\n */\n immediate: {\n type: Boolean,\n default: true,\n },\n /**\n * 已选择个数\n */\n selectedCount: {\n type: Number,\n },\n};\nexport const tableToolbarEmits = {\n getList: async (): Promise<any> => {},\n};\nexport type TableToolbarProps = ExtractPropTypes<typeof tableToolbarProps>;\n"],"names":[],"mappings":"AAKO,MAAM,iBAAoB,GAAA;AAAA,EAC/B,OAAS,EAAA;AAAA,IACP,IAAM,EAAA,MAAA;AAAA,IACN,QAAU,EAAA,IAAA;AAAA,GACZ;AAAA;AAAA;AAAA;AAAA,EAIA,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,SAAW,EAAA;AAAA,IACT,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,aAAe,EAAA;AAAA,IACb,IAAM,EAAA,MAAA;AAAA,GACR;AACF,EAAA;AACO,MAAM,iBAAoB,GAAA;AAAA,EAC/B,SAAS,YAA0B;AAAA,GAAC;AACtC;;;;"}
|
package/es/giime/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const version = "0.7.
|
|
1
|
+
export declare const version = "0.7.17";
|
package/es/giime/version.mjs
CHANGED
package/es/giime/version.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.mjs","sources":["../../../../packages/giime/version.ts"],"sourcesContent":["export const version = '0.7.
|
|
1
|
+
{"version":3,"file":"version.mjs","sources":["../../../../packages/giime/version.ts"],"sourcesContent":["export const version = '0.7.16';\n"],"names":[],"mappings":"AAAO,MAAM,OAAU,GAAA;;;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import '../../../api/guardBasic/controller/index.mjs';
|
|
2
|
-
import { ref, computed } from 'vue';
|
|
2
|
+
import { ref, computed, nextTick } from 'vue';
|
|
3
3
|
import { usePostBasicV1DataDictionaryBatchDetailByCode } from '../../../api/guardBasic/controller/JiChuFuWu/ShuJuZiDianGuanLi/usePostBasicV1DataDictionaryBatchDetailByCode.mjs';
|
|
4
4
|
|
|
5
5
|
const useDictionary = (fieldCodes, options) => {
|
|
@@ -30,7 +30,9 @@ const useDictionary = (fieldCodes, options) => {
|
|
|
30
30
|
};
|
|
31
31
|
const immediate = options?.immediate ?? true;
|
|
32
32
|
if (immediate) {
|
|
33
|
-
|
|
33
|
+
nextTick(() => {
|
|
34
|
+
getDictionary();
|
|
35
|
+
});
|
|
34
36
|
}
|
|
35
37
|
return {
|
|
36
38
|
dictionaryList,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../../../packages/hooks/base/useDictionary/index.ts"],"sourcesContent":["import type { DataDictVo } from '@giime/api/guardBasic/interface';\nimport { usePostBasicV1DataDictionaryBatchDetailByCode } from '@giime/api/guardBasic/controller';\nimport { ref, computed } from 'vue';\n\nexport interface DictionaryOption {\n label: string;\n value: any;\n tagType?: 'success' | 'warning' | 'info' | 'primary' | 'danger';\n}\n/**字典 */\nexport const useDictionary = <T extends string>(fieldCodes: T[], options?: { immediate?: boolean }) => {\n const { exec: getDictionaryExec } = usePostBasicV1DataDictionaryBatchDetailByCode();\n const isLoading = ref(false);\n const dictionaryList = ref<DataDictVo[]>([]);\n const dictionary = computed(() => {\n return dictionaryList.value.reduce(\n (acc, item) => {\n acc[item.fieldCode as T] =\n item?.values?.map(it => ({\n label: it.valueName,\n value: it.valueCode,\n tagType: it.tagType as DictionaryOption['tagType'],\n })) || [];\n\n return acc;\n },\n {} as Record<T, DictionaryOption[]>,\n );\n });\n const getDictionary = async () => {\n isLoading.value = true;\n try {\n const { data } = await getDictionaryExec({ fieldCodes });\n\n dictionaryList.value = data.value?.data || [];\n } finally {\n isLoading.value = false;\n }\n };\n const immediate = options?.immediate ?? true;\n if (immediate) {\n getDictionary();\n }\n\n return {\n dictionaryList,\n dictionary,\n isLoading,\n getDictionary,\n };\n};\n"],"names":[],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../../packages/hooks/base/useDictionary/index.ts"],"sourcesContent":["import type { DataDictVo } from '@giime/api/guardBasic/interface';\nimport { usePostBasicV1DataDictionaryBatchDetailByCode } from '@giime/api/guardBasic/controller';\nimport { ref, computed, nextTick } from 'vue';\nimport { tryOnMounted } from '@vueuse/core';\n\nexport interface DictionaryOption {\n label: string;\n value: any;\n tagType?: 'success' | 'warning' | 'info' | 'primary' | 'danger';\n}\n/**字典 */\nexport const useDictionary = <T extends string>(fieldCodes: T[], options?: { immediate?: boolean }) => {\n const { exec: getDictionaryExec } = usePostBasicV1DataDictionaryBatchDetailByCode();\n const isLoading = ref(false);\n const dictionaryList = ref<DataDictVo[]>([]);\n const dictionary = computed(() => {\n return dictionaryList.value.reduce(\n (acc, item) => {\n acc[item.fieldCode as T] =\n item?.values?.map(it => ({\n label: it.valueName,\n value: it.valueCode,\n tagType: it.tagType as DictionaryOption['tagType'],\n })) || [];\n\n return acc;\n },\n {} as Record<T, DictionaryOption[]>,\n );\n });\n const getDictionary = async () => {\n isLoading.value = true;\n try {\n const { data } = await getDictionaryExec({ fieldCodes });\n\n dictionaryList.value = data.value?.data || [];\n } finally {\n isLoading.value = false;\n }\n };\n const immediate = options?.immediate ?? true;\n if (immediate) {\n nextTick(() => {\n getDictionary();\n });\n }\n\n return {\n dictionaryList,\n dictionary,\n isLoading,\n getDictionary,\n };\n};\n"],"names":[],"mappings":";;;;AAWa,MAAA,aAAA,GAAgB,CAAmB,UAAA,EAAiB,OAAsC,KAAA;AACrG,EAAA,MAAM,EAAE,IAAA,EAAM,iBAAkB,EAAA,GAAI,6CAA8C,EAAA,CAAA;AAClF,EAAM,MAAA,SAAA,GAAY,IAAI,KAAK,CAAA,CAAA;AAC3B,EAAM,MAAA,cAAA,GAAiB,GAAkB,CAAA,EAAE,CAAA,CAAA;AAC3C,EAAM,MAAA,UAAA,GAAa,SAAS,MAAM;AAChC,IAAA,OAAO,eAAe,KAAM,CAAA,MAAA;AAAA,MAC1B,CAAC,KAAK,IAAS,KAAA;AACb,QAAA,GAAA,CAAI,KAAK,SAAc,CAAA,GACrB,IAAM,EAAA,MAAA,EAAQ,IAAI,CAAO,EAAA,MAAA;AAAA,UACvB,OAAO,EAAG,CAAA,SAAA;AAAA,UACV,OAAO,EAAG,CAAA,SAAA;AAAA,UACV,SAAS,EAAG,CAAA,OAAA;AAAA,SACd,CAAE,KAAK,EAAC,CAAA;AAEV,QAAO,OAAA,GAAA,CAAA;AAAA,OACT;AAAA,MACA,EAAC;AAAA,KACH,CAAA;AAAA,GACD,CAAA,CAAA;AACD,EAAA,MAAM,gBAAgB,YAAY;AAChC,IAAA,SAAA,CAAU,KAAQ,GAAA,IAAA,CAAA;AAClB,IAAI,IAAA;AACF,MAAA,MAAM,EAAE,IAAK,EAAA,GAAI,MAAM,iBAAkB,CAAA,EAAE,YAAY,CAAA,CAAA;AAEvD,MAAA,cAAA,CAAe,KAAQ,GAAA,IAAA,CAAK,KAAO,EAAA,IAAA,IAAQ,EAAC,CAAA;AAAA,KAC5C,SAAA;AACA,MAAA,SAAA,CAAU,KAAQ,GAAA,KAAA,CAAA;AAAA,KACpB;AAAA,GACF,CAAA;AACA,EAAM,MAAA,SAAA,GAAY,SAAS,SAAa,IAAA,IAAA,CAAA;AACxC,EAAA,IAAI,SAAW,EAAA;AACb,IAAA,QAAA,CAAS,MAAM;AACb,MAAc,aAAA,EAAA,CAAA;AAAA,KACf,CAAA,CAAA;AAAA,GACH;AAEA,EAAO,OAAA;AAAA,IACL,cAAA;AAAA,IACA,UAAA;AAAA,IACA,SAAA;AAAA,IACA,aAAA;AAAA,GACF,CAAA;AACF;;;;"}
|
|
@@ -49,9 +49,10 @@ const useCustomSettingsStore = defineStore("gmCustomSettings", () => {
|
|
|
49
49
|
customSettings.value[key_word] = Array.isArray(data.data) ? {} : data.data;
|
|
50
50
|
isLoadingKeyWords.value.delete(key_word);
|
|
51
51
|
customResult.trigger({ key_word, type });
|
|
52
|
-
} catch {
|
|
52
|
+
} catch (e) {
|
|
53
53
|
isLoadingKeyWords.value.delete(key_word);
|
|
54
54
|
customResult.trigger({ key_word, type });
|
|
55
|
+
throw e;
|
|
55
56
|
}
|
|
56
57
|
};
|
|
57
58
|
const getCustomList = async (params) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../../../packages/hooks/store/useCustomSettings/index.ts"],"sourcesContent":["import { ref } from 'vue';\nimport { defineStore } from 'pinia';\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport { type EventHookOn, type EventHookTrigger, createEventHook } from '@vueuse/core';\nimport { useIDBKeyval } from '@giime/hooks/base/useIDBKeyval';\nimport { hasOwn } from '@giime/utils/src/objects';\nimport { getBasicV1ConfigFrontListCustom, postBasicV1ConfigFrontListCustom } from '@giime/api/guardBasic/controller';\nimport type { AddListCustomReq } from '@giime/api/guardBasic/interface';\n\ninterface CustomSettings {\n [key_word: string]: {\n [type: string]: any;\n };\n}\n\nexport interface GetCustomSettingsParams {\n key_word: string;\n type: string;\n}\n\nexport const useCustomSettingsStore = defineStore('gmCustomSettings', () => {\n // const customSettings = ref<CustomSettings>({});\n const { data: customSettings, initIndexedDBComplete } = useIDBKeyval<CustomSettings>('gmCustomSettingsStore', {}, { deep: true });\n const customResult = createEventHook<GetCustomSettingsParams>();\n /**\n * 正在loading的key_word\n */\n const isLoadingKeyWords = ref(new Set<string>());\n\n // 添加自定义设置\n const addCustomSettings = async (params: AddListCustomReq) => {\n const res = await postBasicV1ConfigFrontListCustom(params);\n if (res.data.code === 200) {\n if (!customSettings.value[params.key_word]) {\n customSettings.value[params.key_word] = {};\n }\n let value = params.value;\n try {\n value = JSON.parse(params.value);\n } catch {}\n customSettings.value[params.key_word][params.type] = value;\n }\n return res;\n };\n /**\n * 同步远程数据到本地\n */\n const syncRemoteSetting = async (params: GetCustomSettingsParams) => {\n const { key_word, type } = params;\n isLoadingKeyWords.value.add(key_word);\n try {\n const { data } = await getBasicV1ConfigFrontListCustom({ key_word });\n if (data.code !== 200) {\n isLoadingKeyWords.value.delete(key_word);\n customResult.trigger({ key_word, type });\n return;\n }\n // 将json字符串转成对象\n for (const key in data.data) {\n if (hasOwn(data.data, key)) {\n const value = data.data[key];\n try {\n data.data[key] = JSON.parse(value);\n } catch {\n data.data[key] = value;\n }\n }\n }\n customSettings.value[key_word] = Array.isArray(data.data) ? {} : data.data;\n isLoadingKeyWords.value.delete(key_word);\n customResult.trigger({ key_word, type });\n } catch {\n isLoadingKeyWords.value.delete(key_word);\n customResult.trigger({ key_word, type });\n }\n };\n // 获取自定义设置\n const getCustomList = async (params: GetCustomSettingsParams) => {\n const { key_word, type } = params;\n // 等待indexedDB 初始化完成\n await initIndexedDBComplete();\n // 如果已存在\n if (customSettings.value[key_word] && hasOwn(customSettings.value[key_word], type)) {\n customResult.trigger({ key_word, type });\n return;\n }\n // 如果正在loading,则 等待之前请求的结果\n if (isLoadingKeyWords.value.has(key_word)) {\n await onCustomResultPromise({ key_word, type });\n return;\n }\n await syncRemoteSetting(params);\n };\n /**监听 已请求列表 promise版 */\n const onCustomResultPromise = (params: GetCustomSettingsParams) =>\n new Promise<GetCustomSettingsParams>(resolve => {\n customResult.on(value => {\n if (params.key_word === value.key_word) {\n resolve(value);\n }\n });\n });\n const getCustomSettings = async (params: GetCustomSettingsParams, options: { defaultValue: any }) => {\n await getCustomList(params);\n if (!customSettings.value[params.key_word]) {\n return;\n }\n if (!hasOwn(customSettings.value[params.key_word], params.type)) {\n customSettings.value[params.key_word][params.type] = options.defaultValue;\n }\n return customSettings.value[params.key_word][params.type];\n };\n\n return {\n addCustomSettings,\n getCustomSettings,\n syncRemoteSetting,\n customSettings,\n };\n});\n"],"names":[],"mappings":";;;;;;;;;AAoBa,MAAA,sBAAA,GAAyB,WAAY,CAAA,kBAAA,EAAoB,MAAM;AAE1E,EAAA,MAAM,EAAE,IAAA,EAAM,cAAgB,EAAA,qBAAA,EAA0B,GAAA,YAAA,CAA6B,uBAAyB,EAAA,EAAI,EAAA,EAAE,IAAM,EAAA,IAAA,EAAM,CAAA,CAAA;AAChI,EAAA,MAAM,eAAe,eAAyC,EAAA,CAAA;AAI9D,EAAA,MAAM,iBAAoB,GAAA,GAAA,iBAAQ,IAAA,GAAA,EAAa,CAAA,CAAA;AAG/C,EAAM,MAAA,iBAAA,GAAoB,OAAO,MAA6B,KAAA;AAC5D,IAAM,MAAA,GAAA,GAAM,MAAM,gCAAA,CAAiC,MAAM,CAAA,CAAA;AACzD,IAAI,IAAA,GAAA,CAAI,IAAK,CAAA,IAAA,KAAS,GAAK,EAAA;AACzB,MAAA,IAAI,CAAC,cAAA,CAAe,KAAM,CAAA,MAAA,CAAO,QAAQ,CAAG,EAAA;AAC1C,QAAA,cAAA,CAAe,KAAM,CAAA,MAAA,CAAO,QAAQ,CAAA,GAAI,EAAC,CAAA;AAAA,OAC3C;AACA,MAAA,IAAI,QAAQ,MAAO,CAAA,KAAA,CAAA;AACnB,MAAI,IAAA;AACF,QAAQ,KAAA,GAAA,IAAA,CAAK,KAAM,CAAA,MAAA,CAAO,KAAK,CAAA,CAAA;AAAA,OACzB,CAAA,MAAA;AAAA,OAAC;AACT,MAAA,cAAA,CAAe,MAAM,MAAO,CAAA,QAAQ,CAAE,CAAA,MAAA,CAAO,IAAI,CAAI,GAAA,KAAA,CAAA;AAAA,KACvD;AACA,IAAO,OAAA,GAAA,CAAA;AAAA,GACT,CAAA;AAIA,EAAM,MAAA,iBAAA,GAAoB,OAAO,MAAoC,KAAA;AACnE,IAAM,MAAA,EAAE,QAAU,EAAA,IAAA,EAAS,GAAA,MAAA,CAAA;AAC3B,IAAkB,iBAAA,CAAA,KAAA,CAAM,IAAI,QAAQ,CAAA,CAAA;AACpC,IAAI,IAAA;AACF,MAAA,MAAM,EAAE,IAAK,EAAA,GAAI,MAAM,+BAAgC,CAAA,EAAE,UAAU,CAAA,CAAA;AACnE,MAAI,IAAA,IAAA,CAAK,SAAS,GAAK,EAAA;AACrB,QAAkB,iBAAA,CAAA,KAAA,CAAM,OAAO,QAAQ,CAAA,CAAA;AACvC,QAAA,YAAA,CAAa,OAAQ,CAAA,EAAE,QAAU,EAAA,IAAA,EAAM,CAAA,CAAA;AACvC,QAAA,OAAA;AAAA,OACF;AAEA,MAAW,KAAA,MAAA,GAAA,IAAO,KAAK,IAAM,EAAA;AAC3B,QAAA,IAAI,MAAO,CAAA,IAAA,CAAK,IAAM,EAAA,GAAG,CAAG,EAAA;AAC1B,UAAM,MAAA,KAAA,GAAQ,IAAK,CAAA,IAAA,CAAK,GAAG,CAAA,CAAA;AAC3B,UAAI,IAAA;AACF,YAAA,IAAA,CAAK,IAAK,CAAA,GAAG,CAAI,GAAA,IAAA,CAAK,MAAM,KAAK,CAAA,CAAA;AAAA,WAC3B,CAAA,MAAA;AACN,YAAK,IAAA,CAAA,IAAA,CAAK,GAAG,CAAI,GAAA,KAAA,CAAA;AAAA,WACnB;AAAA,SACF;AAAA,OACF;AACA,MAAe,cAAA,CAAA,KAAA,CAAM,QAAQ,CAAA,GAAI,KAAM,CAAA,OAAA,CAAQ,KAAK,IAAI,CAAA,GAAI,EAAC,GAAI,IAAK,CAAA,IAAA,CAAA;AACtE,MAAkB,iBAAA,CAAA,KAAA,CAAM,OAAO,QAAQ,CAAA,CAAA;AACvC,MAAA,YAAA,CAAa,OAAQ,CAAA,EAAE,QAAU,EAAA,IAAA,EAAM,CAAA,CAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../../packages/hooks/store/useCustomSettings/index.ts"],"sourcesContent":["import { ref } from 'vue';\nimport { defineStore } from 'pinia';\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport { type EventHookOn, type EventHookTrigger, createEventHook } from '@vueuse/core';\nimport { useIDBKeyval } from '@giime/hooks/base/useIDBKeyval';\nimport { hasOwn } from '@giime/utils/src/objects';\nimport { getBasicV1ConfigFrontListCustom, postBasicV1ConfigFrontListCustom } from '@giime/api/guardBasic/controller';\nimport type { AddListCustomReq } from '@giime/api/guardBasic/interface';\n\ninterface CustomSettings {\n [key_word: string]: {\n [type: string]: any;\n };\n}\n\nexport interface GetCustomSettingsParams {\n key_word: string;\n type: string;\n}\n\nexport const useCustomSettingsStore = defineStore('gmCustomSettings', () => {\n // const customSettings = ref<CustomSettings>({});\n const { data: customSettings, initIndexedDBComplete } = useIDBKeyval<CustomSettings>('gmCustomSettingsStore', {}, { deep: true });\n const customResult = createEventHook<GetCustomSettingsParams>();\n /**\n * 正在loading的key_word\n */\n const isLoadingKeyWords = ref(new Set<string>());\n\n // 添加自定义设置\n const addCustomSettings = async (params: AddListCustomReq) => {\n const res = await postBasicV1ConfigFrontListCustom(params);\n if (res.data.code === 200) {\n if (!customSettings.value[params.key_word]) {\n customSettings.value[params.key_word] = {};\n }\n let value = params.value;\n try {\n value = JSON.parse(params.value);\n } catch {}\n customSettings.value[params.key_word][params.type] = value;\n }\n return res;\n };\n /**\n * 同步远程数据到本地\n */\n const syncRemoteSetting = async (params: GetCustomSettingsParams) => {\n const { key_word, type } = params;\n isLoadingKeyWords.value.add(key_word);\n try {\n const { data } = await getBasicV1ConfigFrontListCustom({ key_word });\n if (data.code !== 200) {\n isLoadingKeyWords.value.delete(key_word);\n customResult.trigger({ key_word, type });\n return;\n }\n // 将json字符串转成对象\n for (const key in data.data) {\n if (hasOwn(data.data, key)) {\n const value = data.data[key];\n try {\n data.data[key] = JSON.parse(value);\n } catch {\n data.data[key] = value;\n }\n }\n }\n customSettings.value[key_word] = Array.isArray(data.data) ? {} : data.data;\n isLoadingKeyWords.value.delete(key_word);\n customResult.trigger({ key_word, type });\n } catch (e) {\n isLoadingKeyWords.value.delete(key_word);\n customResult.trigger({ key_word, type });\n throw e;\n }\n };\n // 获取自定义设置\n const getCustomList = async (params: GetCustomSettingsParams) => {\n const { key_word, type } = params;\n // 等待indexedDB 初始化完成\n await initIndexedDBComplete();\n // 如果已存在\n if (customSettings.value[key_word] && hasOwn(customSettings.value[key_word], type)) {\n customResult.trigger({ key_word, type });\n return;\n }\n // 如果正在loading,则 等待之前请求的结果\n if (isLoadingKeyWords.value.has(key_word)) {\n await onCustomResultPromise({ key_word, type });\n return;\n }\n await syncRemoteSetting(params);\n };\n /**监听 已请求列表 promise版 */\n const onCustomResultPromise = (params: GetCustomSettingsParams) =>\n new Promise<GetCustomSettingsParams>(resolve => {\n customResult.on(value => {\n if (params.key_word === value.key_word) {\n resolve(value);\n }\n });\n });\n const getCustomSettings = async (params: GetCustomSettingsParams, options: { defaultValue: any }) => {\n await getCustomList(params);\n if (!customSettings.value[params.key_word]) {\n return;\n }\n if (!hasOwn(customSettings.value[params.key_word], params.type)) {\n customSettings.value[params.key_word][params.type] = options.defaultValue;\n }\n return customSettings.value[params.key_word][params.type];\n };\n\n return {\n addCustomSettings,\n getCustomSettings,\n syncRemoteSetting,\n customSettings,\n };\n});\n"],"names":[],"mappings":";;;;;;;;;AAoBa,MAAA,sBAAA,GAAyB,WAAY,CAAA,kBAAA,EAAoB,MAAM;AAE1E,EAAA,MAAM,EAAE,IAAA,EAAM,cAAgB,EAAA,qBAAA,EAA0B,GAAA,YAAA,CAA6B,uBAAyB,EAAA,EAAI,EAAA,EAAE,IAAM,EAAA,IAAA,EAAM,CAAA,CAAA;AAChI,EAAA,MAAM,eAAe,eAAyC,EAAA,CAAA;AAI9D,EAAA,MAAM,iBAAoB,GAAA,GAAA,iBAAQ,IAAA,GAAA,EAAa,CAAA,CAAA;AAG/C,EAAM,MAAA,iBAAA,GAAoB,OAAO,MAA6B,KAAA;AAC5D,IAAM,MAAA,GAAA,GAAM,MAAM,gCAAA,CAAiC,MAAM,CAAA,CAAA;AACzD,IAAI,IAAA,GAAA,CAAI,IAAK,CAAA,IAAA,KAAS,GAAK,EAAA;AACzB,MAAA,IAAI,CAAC,cAAA,CAAe,KAAM,CAAA,MAAA,CAAO,QAAQ,CAAG,EAAA;AAC1C,QAAA,cAAA,CAAe,KAAM,CAAA,MAAA,CAAO,QAAQ,CAAA,GAAI,EAAC,CAAA;AAAA,OAC3C;AACA,MAAA,IAAI,QAAQ,MAAO,CAAA,KAAA,CAAA;AACnB,MAAI,IAAA;AACF,QAAQ,KAAA,GAAA,IAAA,CAAK,KAAM,CAAA,MAAA,CAAO,KAAK,CAAA,CAAA;AAAA,OACzB,CAAA,MAAA;AAAA,OAAC;AACT,MAAA,cAAA,CAAe,MAAM,MAAO,CAAA,QAAQ,CAAE,CAAA,MAAA,CAAO,IAAI,CAAI,GAAA,KAAA,CAAA;AAAA,KACvD;AACA,IAAO,OAAA,GAAA,CAAA;AAAA,GACT,CAAA;AAIA,EAAM,MAAA,iBAAA,GAAoB,OAAO,MAAoC,KAAA;AACnE,IAAM,MAAA,EAAE,QAAU,EAAA,IAAA,EAAS,GAAA,MAAA,CAAA;AAC3B,IAAkB,iBAAA,CAAA,KAAA,CAAM,IAAI,QAAQ,CAAA,CAAA;AACpC,IAAI,IAAA;AACF,MAAA,MAAM,EAAE,IAAK,EAAA,GAAI,MAAM,+BAAgC,CAAA,EAAE,UAAU,CAAA,CAAA;AACnE,MAAI,IAAA,IAAA,CAAK,SAAS,GAAK,EAAA;AACrB,QAAkB,iBAAA,CAAA,KAAA,CAAM,OAAO,QAAQ,CAAA,CAAA;AACvC,QAAA,YAAA,CAAa,OAAQ,CAAA,EAAE,QAAU,EAAA,IAAA,EAAM,CAAA,CAAA;AACvC,QAAA,OAAA;AAAA,OACF;AAEA,MAAW,KAAA,MAAA,GAAA,IAAO,KAAK,IAAM,EAAA;AAC3B,QAAA,IAAI,MAAO,CAAA,IAAA,CAAK,IAAM,EAAA,GAAG,CAAG,EAAA;AAC1B,UAAM,MAAA,KAAA,GAAQ,IAAK,CAAA,IAAA,CAAK,GAAG,CAAA,CAAA;AAC3B,UAAI,IAAA;AACF,YAAA,IAAA,CAAK,IAAK,CAAA,GAAG,CAAI,GAAA,IAAA,CAAK,MAAM,KAAK,CAAA,CAAA;AAAA,WAC3B,CAAA,MAAA;AACN,YAAK,IAAA,CAAA,IAAA,CAAK,GAAG,CAAI,GAAA,KAAA,CAAA;AAAA,WACnB;AAAA,SACF;AAAA,OACF;AACA,MAAe,cAAA,CAAA,KAAA,CAAM,QAAQ,CAAA,GAAI,KAAM,CAAA,OAAA,CAAQ,KAAK,IAAI,CAAA,GAAI,EAAC,GAAI,IAAK,CAAA,IAAA,CAAA;AACtE,MAAkB,iBAAA,CAAA,KAAA,CAAM,OAAO,QAAQ,CAAA,CAAA;AACvC,MAAA,YAAA,CAAa,OAAQ,CAAA,EAAE,QAAU,EAAA,IAAA,EAAM,CAAA,CAAA;AAAA,aAChC,CAAG,EAAA;AACV,MAAkB,iBAAA,CAAA,KAAA,CAAM,OAAO,QAAQ,CAAA,CAAA;AACvC,MAAA,YAAA,CAAa,OAAQ,CAAA,EAAE,QAAU,EAAA,IAAA,EAAM,CAAA,CAAA;AACvC,MAAM,MAAA,CAAA,CAAA;AAAA,KACR;AAAA,GACF,CAAA;AAEA,EAAM,MAAA,aAAA,GAAgB,OAAO,MAAoC,KAAA;AAC/D,IAAM,MAAA,EAAE,QAAU,EAAA,IAAA,EAAS,GAAA,MAAA,CAAA;AAE3B,IAAA,MAAM,qBAAsB,EAAA,CAAA;AAE5B,IAAI,IAAA,cAAA,CAAe,KAAM,CAAA,QAAQ,CAAK,IAAA,MAAA,CAAO,eAAe,KAAM,CAAA,QAAQ,CAAG,EAAA,IAAI,CAAG,EAAA;AAClF,MAAA,YAAA,CAAa,OAAQ,CAAA,EAAE,QAAU,EAAA,IAAA,EAAM,CAAA,CAAA;AACvC,MAAA,OAAA;AAAA,KACF;AAEA,IAAA,IAAI,iBAAkB,CAAA,KAAA,CAAM,GAAI,CAAA,QAAQ,CAAG,EAAA;AACzC,MAAA,MAAM,qBAAsB,CAAA,EAAE,QAAU,EAAA,IAAA,EAAM,CAAA,CAAA;AAC9C,MAAA,OAAA;AAAA,KACF;AACA,IAAA,MAAM,kBAAkB,MAAM,CAAA,CAAA;AAAA,GAChC,CAAA;AAEA,EAAA,MAAM,qBAAwB,GAAA,CAAC,MAC7B,KAAA,IAAI,QAAiC,CAAW,OAAA,KAAA;AAC9C,IAAA,YAAA,CAAa,GAAG,CAAS,KAAA,KAAA;AACvB,MAAI,IAAA,MAAA,CAAO,QAAa,KAAA,KAAA,CAAM,QAAU,EAAA;AACtC,QAAA,OAAA,CAAQ,KAAK,CAAA,CAAA;AAAA,OACf;AAAA,KACD,CAAA,CAAA;AAAA,GACF,CAAA,CAAA;AACH,EAAM,MAAA,iBAAA,GAAoB,OAAO,MAAA,EAAiC,OAAmC,KAAA;AACnG,IAAA,MAAM,cAAc,MAAM,CAAA,CAAA;AAC1B,IAAA,IAAI,CAAC,cAAA,CAAe,KAAM,CAAA,MAAA,CAAO,QAAQ,CAAG,EAAA;AAC1C,MAAA,OAAA;AAAA,KACF;AACA,IAAI,IAAA,CAAC,OAAO,cAAe,CAAA,KAAA,CAAM,OAAO,QAAQ,CAAA,EAAG,MAAO,CAAA,IAAI,CAAG,EAAA;AAC/D,MAAA,cAAA,CAAe,MAAM,MAAO,CAAA,QAAQ,EAAE,MAAO,CAAA,IAAI,IAAI,OAAQ,CAAA,YAAA,CAAA;AAAA,KAC/D;AACA,IAAA,OAAO,eAAe,KAAM,CAAA,MAAA,CAAO,QAAQ,CAAA,CAAE,OAAO,IAAI,CAAA,CAAA;AAAA,GAC1D,CAAA;AAEA,EAAO,OAAA;AAAA,IACL,iBAAA;AAAA,IACA,iBAAA;AAAA,IACA,iBAAA;AAAA,IACA,cAAA;AAAA,GACF,CAAA;AACF,CAAC;;;;"}
|