giime 0.9.8-beta.1 → 0.9.8-beta.2

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 CHANGED
@@ -894,42 +894,44 @@ video {
894
894
  .gm-flex-justify-between[data-v-c17deec9] {
895
895
  justify-content: space-between;
896
896
  }
897
- .circular[data-v-d7b04fae] {
898
- animation: loading-rotate-d7b04fae 2s linear infinite;
897
+ .gm-upload-pro-file {
898
+ line-height: normal;
899
899
  }
900
-
901
- .path[data-v-d7b04fae] {
902
- animation: loading-dash-d7b04fae 1.5s ease-in-out infinite;
903
- stroke-dasharray: 90, 150;
904
- stroke-dashoffset: 0;
905
- stroke: var(--el-color-primary);
906
- stroke-linecap: round;
900
+ .gm-upload-pro-file .el-checkbox-group {
901
+ font-size: unset;
907
902
  }
908
-
909
- @keyframes loading-rotate-d7b04fae {
910
- to {
911
- transform: rotate(360deg);
912
- }
903
+ .gm-upload-pro-file .el-checkbox {
904
+ position: absolute;
905
+ left: 10px;
906
+ top: 0;
907
+ z-index: 9;
913
908
  }
914
- @keyframes loading-dash-d7b04fae {
915
- 0% {
916
- stroke-dasharray: 1, 200;
917
- stroke-dashoffset: 0;
918
- }
919
- 50% {
920
- stroke-dasharray: 90, 150;
921
- stroke-dashoffset: -40px;
922
- }
923
- 100% {
924
- stroke-dasharray: 90, 150;
925
- stroke-dashoffset: -120px;
926
- }
909
+ .gm-upload-pro-file .el-upload-list--picture-card {
910
+ gap: 10px;
927
911
  }
928
-
929
- .gm-range-number .el-form-item[data-v-1ae16d96] {
912
+ .gm-upload-pro-file .el-upload-list__item {
930
913
  margin: 0;
931
914
  }
915
+ .gm-upload-pro-file .el-upload-list__item-file-name {
916
+ line-height: 1.7;
917
+ }
918
+ .gm-upload-pro-file .el-upload-dragger {
919
+ padding: 0;
920
+ border: none;
921
+ width: 100%;
922
+ height: 100%;
923
+ display: flex;
924
+ }
925
+ .gm-upload-pro-file .el-upload--picture-card {
926
+ border: none;
927
+ }
932
928
 
929
+ .gm-upload-pro-file-disabled .el-upload--picture-card {
930
+ display: none;
931
+ }
932
+ .gm-upload-pro-file-disabled .el-upload-list__item-status-label {
933
+ display: none;
934
+ }
933
935
  .gm-upload-pro-preview-dialog[data-v-80b383d8] [data-v-80b383d8] .el-dialog__body {
934
936
  padding: 0;
935
937
  }
@@ -938,42 +940,75 @@ video {
938
940
  width: auto;
939
941
  height: auto;
940
942
  }
941
- .gm-upload-pro-file {
942
- line-height: normal;
943
+ [data-v-79615afd] .gmSearchForm .el-form-item {
944
+ margin-right: 0;
945
+ margin-bottom: 4px;
943
946
  }
944
- .gm-upload-pro-file .el-checkbox-group {
945
- font-size: unset;
947
+ [data-v-050a4f74] .gmTableNoBorder .el-table__body .el-table__cell {
948
+ border-right: none;
946
949
  }
947
- .gm-upload-pro-file .el-checkbox {
950
+
951
+ [data-v-050a4f74] .gmTableNoBorder .el-table__inner-wrapper:before {
952
+ height: 0;
953
+ }
954
+
955
+ [data-v-050a4f74] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
956
+ height: 0;
957
+ }
958
+
959
+ [data-v-050a4f74] .gmTableNoBorder.el-table--border:after {
960
+ height: 0;
961
+ }
962
+
963
+ [data-v-050a4f74] .gmTableNoBorder.el-table--border:before {
964
+ height: 0;
965
+ }
966
+
967
+ [data-v-050a4f74] .gmTableNoBorder .el-table__border-left-patch {
968
+ height: 0;
969
+ }
970
+ .gm-upload-preview-dialog[data-v-c615121c] [data-v-c615121c] .el-dialog__body {
971
+ padding: 0;
972
+ }
973
+
974
+ .gm-upload-file-picture-card[data-v-c615121c] [data-v-c615121c] .el-upload-list__item, .gm-upload-file-picture-card[data-v-c615121c] [data-v-c615121c] .el-upload--picture-card {
975
+ width: auto;
976
+ height: auto;
977
+ }
978
+ .gm-upload-file {
979
+ line-height: normal;
980
+ }
981
+ .gm-upload-file li > .el-checkbox {
948
982
  position: absolute;
949
983
  left: 10px;
950
984
  top: 0;
951
985
  z-index: 9;
952
986
  }
953
- .gm-upload-pro-file .el-upload-list--picture-card {
987
+ .gm-upload-file .el-upload-list--picture-card {
954
988
  gap: 10px;
955
989
  }
956
- .gm-upload-pro-file .el-upload-list__item {
990
+ .gm-upload-file .el-upload-list__item {
957
991
  margin: 0;
992
+ border: none;
958
993
  }
959
- .gm-upload-pro-file .el-upload-list__item-file-name {
960
- line-height: 1.7;
994
+ .gm-upload-file .el-upload-list__item-file-name {
995
+ line-height: normal;
961
996
  }
962
- .gm-upload-pro-file .el-upload-dragger {
997
+ .gm-upload-file .el-upload-dragger {
963
998
  padding: 0;
964
999
  border: none;
965
1000
  width: 100%;
966
1001
  height: 100%;
967
1002
  display: flex;
968
1003
  }
969
- .gm-upload-pro-file .el-upload--picture-card {
1004
+ .gm-upload-file .el-upload--picture-card {
970
1005
  border: none;
971
1006
  }
972
1007
 
973
- .gm-upload-pro-file-disabled .el-upload--picture-card {
1008
+ .gm-upload-file-disabled .el-upload--picture-card {
974
1009
  display: none;
975
1010
  }
976
- .gm-upload-pro-file-disabled .el-upload-list__item-status-label {
1011
+ .gm-upload-file-disabled .el-upload-list__item-status-label {
977
1012
  display: none;
978
1013
  }
979
1014
  .gm-number-interval-single[data-v-4e6f4d6f] {
@@ -994,42 +1029,65 @@ video {
994
1029
  .gm-number-interval-single[data-v-4e6f4d6f]:hover .gm-number-interval-close[data-v-4e6f4d6f] {
995
1030
  display: flex;
996
1031
  }
997
- [data-v-79615afd] .gmSearchForm .el-form-item {
998
- margin-right: 0;
999
- margin-bottom: 4px;
1000
- }
1001
- [data-v-050a4f74] .gmTableNoBorder .el-table__body .el-table__cell {
1032
+ [data-v-3f2c8504] .gmTableNoBorder .el-table__body .el-table__cell {
1002
1033
  border-right: none;
1003
1034
  }
1004
1035
 
1005
- [data-v-050a4f74] .gmTableNoBorder .el-table__inner-wrapper:before {
1036
+ [data-v-3f2c8504] .gmTableNoBorder .el-table__inner-wrapper:before {
1006
1037
  height: 0;
1007
1038
  }
1008
1039
 
1009
- [data-v-050a4f74] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
1040
+ [data-v-3f2c8504] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
1010
1041
  height: 0;
1011
1042
  }
1012
1043
 
1013
- [data-v-050a4f74] .gmTableNoBorder.el-table--border:after {
1044
+ [data-v-3f2c8504] .gmTableNoBorder.el-table--border:after {
1014
1045
  height: 0;
1015
1046
  }
1016
1047
 
1017
- [data-v-050a4f74] .gmTableNoBorder.el-table--border:before {
1048
+ [data-v-3f2c8504] .gmTableNoBorder.el-table--border:before {
1018
1049
  height: 0;
1019
1050
  }
1020
1051
 
1021
- [data-v-050a4f74] .gmTableNoBorder .el-table__border-left-patch {
1052
+ [data-v-3f2c8504] .gmTableNoBorder .el-table__border-left-patch {
1022
1053
  height: 0;
1023
1054
  }
1024
1055
 
1025
- .pagination-container[data-v-47d35e7b] {
1026
- background: #fff;
1027
- padding-top: 12px;
1056
+ .gm-range-number .el-form-item[data-v-1ae16d96] {
1057
+ margin: 0;
1028
1058
  }
1029
- .pagination-container.hidden[data-v-47d35e7b] {
1030
- display: none;
1059
+
1060
+ .circular[data-v-d7b04fae] {
1061
+ animation: loading-rotate-d7b04fae 2s linear infinite;
1062
+ }
1063
+
1064
+ .path[data-v-d7b04fae] {
1065
+ animation: loading-dash-d7b04fae 1.5s ease-in-out infinite;
1066
+ stroke-dasharray: 90, 150;
1067
+ stroke-dashoffset: 0;
1068
+ stroke: var(--el-color-primary);
1069
+ stroke-linecap: round;
1031
1070
  }
1032
1071
 
1072
+ @keyframes loading-rotate-d7b04fae {
1073
+ to {
1074
+ transform: rotate(360deg);
1075
+ }
1076
+ }
1077
+ @keyframes loading-dash-d7b04fae {
1078
+ 0% {
1079
+ stroke-dasharray: 1, 200;
1080
+ stroke-dashoffset: 0;
1081
+ }
1082
+ 50% {
1083
+ stroke-dasharray: 90, 150;
1084
+ stroke-dashoffset: -40px;
1085
+ }
1086
+ 100% {
1087
+ stroke-dasharray: 90, 150;
1088
+ stroke-dashoffset: -120px;
1089
+ }
1090
+ }
1033
1091
  @charset "UTF-8";
1034
1092
  .custom-operate-drawer .el-drawer__header {
1035
1093
  padding: 10px 15px;
@@ -1086,29 +1144,6 @@ video {
1086
1144
  border-radius: 10px;
1087
1145
  background: #eee;
1088
1146
  }
1089
- [data-v-3f2c8504] .gmTableNoBorder .el-table__body .el-table__cell {
1090
- border-right: none;
1091
- }
1092
-
1093
- [data-v-3f2c8504] .gmTableNoBorder .el-table__inner-wrapper:before {
1094
- height: 0;
1095
- }
1096
-
1097
- [data-v-3f2c8504] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
1098
- height: 0;
1099
- }
1100
-
1101
- [data-v-3f2c8504] .gmTableNoBorder.el-table--border:after {
1102
- height: 0;
1103
- }
1104
-
1105
- [data-v-3f2c8504] .gmTableNoBorder.el-table--border:before {
1106
- height: 0;
1107
- }
1108
-
1109
- [data-v-3f2c8504] .gmTableNoBorder .el-table__border-left-patch {
1110
- height: 0;
1111
- }
1112
1147
  @charset "UTF-8";
1113
1148
  .table-custom-header-drawer .el-drawer__header {
1114
1149
  padding: 10px 15px;
@@ -1165,47 +1200,11 @@ video {
1165
1200
  border-radius: 10px;
1166
1201
  background: #eee;
1167
1202
  }
1168
- .gm-upload-preview-dialog[data-v-c615121c] [data-v-c615121c] .el-dialog__body {
1169
- padding: 0;
1170
- }
1171
1203
 
1172
- .gm-upload-file-picture-card[data-v-c615121c] [data-v-c615121c] .el-upload-list__item, .gm-upload-file-picture-card[data-v-c615121c] [data-v-c615121c] .el-upload--picture-card {
1173
- width: auto;
1174
- height: auto;
1175
- }
1176
- .gm-upload-file {
1177
- line-height: normal;
1178
- }
1179
- .gm-upload-file li > .el-checkbox {
1180
- position: absolute;
1181
- left: 10px;
1182
- top: 0;
1183
- z-index: 9;
1184
- }
1185
- .gm-upload-file .el-upload-list--picture-card {
1186
- gap: 10px;
1187
- }
1188
- .gm-upload-file .el-upload-list__item {
1189
- margin: 0;
1190
- border: none;
1191
- }
1192
- .gm-upload-file .el-upload-list__item-file-name {
1193
- line-height: normal;
1194
- }
1195
- .gm-upload-file .el-upload-dragger {
1196
- padding: 0;
1197
- border: none;
1198
- width: 100%;
1199
- height: 100%;
1200
- display: flex;
1201
- }
1202
- .gm-upload-file .el-upload--picture-card {
1203
- border: none;
1204
+ .pagination-container[data-v-47d35e7b] {
1205
+ background: #fff;
1206
+ padding-top: 12px;
1204
1207
  }
1205
-
1206
- .gm-upload-file-disabled .el-upload--picture-card {
1208
+ .pagination-container.hidden[data-v-47d35e7b] {
1207
1209
  display: none;
1208
1210
  }
1209
- .gm-upload-file-disabled .el-upload-list__item-status-label {
1210
- display: none;
1211
- }
@@ -1,4 +1,4 @@
1
- import { defineComponent, computed, ref, watch, onMounted, onUnmounted, createElementBlock, createCommentVNode, openBlock, createVNode, unref, withCtx, Fragment, createElementVNode, createTextVNode } from 'vue';
1
+ import { defineComponent, computed, unref, ref, watch, onMounted, onUnmounted, createElementBlock, createCommentVNode, openBlock, createVNode, withCtx, Fragment, createElementVNode, createTextVNode } from 'vue';
2
2
  import { ElMessage, ElDialog, ElResult, ElButton } from 'element-plus';
3
3
  import Cookies from 'js-cookie';
4
4
  import '../../../../hooks/index.mjs';
@@ -22,7 +22,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
22
22
  setup(__props) {
23
23
  const props = __props;
24
24
  const router = useGlobalConfig("router");
25
- const route = computed(() => router.value ? router.value.currentRoute.value : void 0);
25
+ const route = computed(() => router.value ? unref(router.value.currentRoute) : void 0);
26
26
  const loginStore = useLoginStore();
27
27
  const loginUrl = ref("");
28
28
  const importMetaEnv = useGlobalConfig("env");
@@ -1 +1 @@
1
- {"version":3,"file":"LoginDialog.vue2.mjs","sources":["../../../../../../../packages/components/src/business/loginDialog/LoginDialog.vue"],"sourcesContent":["<script lang=\"ts\">\nconst loginEnvKey = 'VITE_GIIME_LOGIN_URL'\n</script>\n<template>\n <div v-if=\"isSSRShowDialog\">\n <el-dialog v-model=\"loginStore.showLogin\" width=\"80%\" append-to-body>\n <!-- 正常登录状态:显示iframe -->\n <iframe v-if=\"loginStore.showLogin && !loginStore.isLoginBlocked\" class=\"gm-h-[600px] gm-w-full\" :src=\"loginUrl\" />\n <!-- 异常状态:显示错误提示 -->\n <div v-else-if=\"loginStore.isLoginBlocked\" class=\"gm-py-10\" :src=\"loginUrl\">\n <el-result icon=\"warning\" title=\"登录异常\" sub-title=\"短时间内多次登录失败,请稍后重试\">\n <template #extra>\n <el-button type=\"primary\" @click=\"handleRetryLogin\">重新登录</el-button>\n <el-button type=\"warning\" @click=\"handleClearCache\">清空缓存</el-button>\n <el-button @click=\"loginStore.showLogin = false\">关闭</el-button>\n </template>\n </el-result>\n </div>\n </el-dialog>\n </div>\n</template>\n<script setup lang=\"ts\">\nimport { computed, onMounted, onUnmounted, ref, watch } from 'vue';\n// import { isObject } from '@vue/shared';\nimport { ElButton, ElDialog, ElMessage, ElResult } from 'element-plus';\nimport Cookies from 'js-cookie';\n// import router from 'vue-router';\nimport { useLoginStore } from '@giime/hooks';\nimport { useGlobalConfig } from '@giime/hooks/base/useGlobalConfig';\nimport { isDingTalk, isMobile, isString } from '@giime/utils';\nimport { getDomain, urlJoin } from '@giime/utils/src/http/url';\nimport { getTenantType, isGiikin } from '@giime/utils/src/tenant';\nimport { envConfigs } from '@giime/utils/src/http/createModes';\nimport { loginDialogProps } from './loginDialog';\nimport { resetEnvMode } from '@giime/constants/key';\n\nconst props = defineProps(loginDialogProps);\nconst router = useGlobalConfig('router');\n\n// const router = useRouter();\nconst route = computed(() => (router.value ? router.value.currentRoute.value : undefined));\nconst loginStore = useLoginStore();\nconst loginUrl = ref('');\n\n\nconst importMetaEnv = useGlobalConfig('env');\nconst isSSRShowDialog = ref(importMetaEnv.value.SSR === false);\n\n/**\n * 获取登录URL\n * 优先级:环境变量 > resetEnvMode > 租户类型判断 > 默认值\n */\nlet originLoginUrl = '';\n// 1. 优先使用环境变量配置的 loginUrl\nif (isString(importMetaEnv.value[loginEnvKey])) {\n originLoginUrl = importMetaEnv.value[loginEnvKey];\n} else {\n // 2. 根据租户类型获取登录路径\n const loginPath = isGiikin() ? '/guard/sso/public/auth' : '/fe/basic/login';\n\n // 3. 根据 resetEnvMode 获取环境配置并拼接完整URL\n const resetMode = importMetaEnv.value[resetEnvMode];\n const hostname = window.location.hostname;\n // 获取域名对应的环境配置\n const findEnvConfig = Object.values(envConfigs).find(config => config.domain === hostname);\n if (resetMode && envConfigs[resetMode]) {\n originLoginUrl = urlJoin(envConfigs[resetMode].url, loginPath);\n } else if (findEnvConfig) {\n // 4. 根据域名获取环境配置并拼接完整URL\n originLoginUrl = urlJoin(findEnvConfig.url, loginPath);\n } else {\n // 5. 默认使用开发环境登录路径\n originLoginUrl = urlJoin(envConfigs.develop.url, loginPath);\n }\n}\nconst handleLogin = () => {\n const protocol = window.location.protocol;\n const host = window.location.host;\n const myPath = window.location.pathname;\n loginUrl.value = `${originLoginUrl}?_system=${props.system}`;\n if (route.value && props.needScanningRouteNames.includes(route.value?.name?.toString() ?? '')) {\n loginUrl.value += '&is_dashboard=1';\n }\n\n // 公司id\n const guard_company = Cookies.get('guard_company');\n if (guard_company) {\n loginUrl.value += `&companyId=${guard_company}`;\n }\n\n loginUrl.value += `&${props.redirectUrlField}=${protocol}//${host}${myPath}`;\n\n // eslint-disable-next-line no-console\n console.log(loginUrl.value);\n if (isMobile() || isDingTalk()) {\n window.location.href = loginUrl.value;\n }\n};\n\n/** 重试登录:重置循环保护计数器并重新加载登录页 */\nconst handleRetryLogin = () => {\n loginStore.resetLoginBlock();\n handleLogin();\n};\n\n/** 清空缓存:清除 Cookies、localStorage 和 sessionStorage */\nconst handleClearCache = () => {\n // 清除所有 Cookies\n const cookies = document.cookie.split(';');\n const curDomain = getDomain();\n cookies.forEach(cookie => {\n const name = cookie.split('=')[0].trim();\n if (name) {\n // 尝试多种方式删除 cookie\n Cookies.remove(name);\n Cookies.remove(name, { domain: curDomain });\n Cookies.remove(name, { domain: `.${curDomain}` });\n }\n });\n\n // 提示操作成功\n ElMessage.success('清除cookie缓存成功');\n};\nwatch(\n () => loginStore.showLogin,\n value => {\n if (value) {\n handleLogin();\n }\n },\n);\n// 超过5分钟没扫码 会不能扫码 定时没登录的话3分钟刷新次\nconst reloadTimer = ref<number>();\nif (route.value) {\n watch(route, (newValue, oldValue) => {\n if (!oldValue || !newValue) {\n return;\n }\n if (oldValue.name && props.needScanningRouteNames.includes(oldValue.name.toString())) {\n window.clearInterval(reloadTimer.value);\n }\n if (newValue.name && props.needScanningRouteNames.includes(newValue.name.toString())) {\n reloadTimer.value = window.setInterval(\n () => {\n if (!loginStore.showLogin) {\n return;\n }\n // 登录超时后 3分钟刷新次页面\n window.location.reload();\n },\n 3 * 60 * 1000,\n );\n }\n });\n}\n\ninterface GiikinLogged {\n type: string;\n data: {\n token: string;\n userId: string;\n /**token 或者 loginSuccess 控制当前登录是否成功*/\n loginSuccess?: boolean;\n /**禁止写入cookie */\n disabledWrite?: boolean;\n disabledClose?: boolean;\n tokens: { key: string; value: string }[];\n };\n cookies?: string[];\n}\n\nonMounted(() => {\n isSSRShowDialog.value = true;\n if (loginStore.showLogin) {\n handleLogin();\n }\n // iframe事件监听\n window.addEventListener('message', async e => {\n // 刷新登陆状态\n if (e.data.type == 'giikin-Logged') {\n const data: GiikinLogged = e.data;\n // eslint-disable-next-line no-console\n console.log(e.data);\n const token = Cookies.get('token');\n // const isProduction = importMetaEnv.value.MODE === 'production' || importMetaEnv.value.MODE === 'giiktok.production';\n const isProduction = importMetaEnv.value.MODE.includes('production');\n if (\n // 测试环境 但是需要登陆的情况\n (!isProduction && data?.data?.token) ||\n // 正式环境 登录成功 但是服务器token设置失败\n (isProduction && !token && data?.data?.token)\n ) {\n // loginStore.userToken = data.data.token;\n loginStore.userId = data.data.userId;\n const now = new Date();\n let time = now.getTime();\n time += 8 * 60 * 60 * 1000; // 8 小时之后的时间(单位:毫秒)\n now.setTime(time);\n const curDomain = getDomain();\n // 不禁用 则写入cookie\n if (!data.data.disabledWrite) {\n // cookieMap\n if (data.cookies && Array.isArray(data.cookies)) {\n data.cookies.forEach((cookie: string) => {\n document.cookie = cookie;\n });\n }\n // 可能出现测试环境调正式,需要写入token\n Cookies.set('token', data.data.token, { expires: now, domain: isProduction ? curDomain : undefined });\n // 本地开发时 写入token\n if (importMetaEnv.value.DEV && data.data.tokens) {\n data.data.tokens.forEach((token: { key: string; value: string }) => {\n Cookies.set(token.key, token.value, { expires: now, domain: curDomain });\n });\n }\n\n if (!Cookies.get('sso_user_id') && data.data.userId) {\n Cookies.set('sso_user_id', data.data.userId, {\n expires: now,\n domain: isProduction ? curDomain : undefined,\n });\n }\n }\n }\n if (!data.data.disabledClose) {\n // 触发登录成功监听\n if (data?.data?.token || data?.data?.loginSuccess) {\n await loginStore.triggerLoginResult(true);\n }\n // ElMessage.success('登录成功,请关闭弹窗');\n loginStore.showLogin = false;\n if (route.value && props.needRealodRouteNames.includes(route.value.name?.toString() ?? '')) {\n window.location.reload();\n }\n }\n }\n });\n});\nonUnmounted(() => {\n window.clearInterval(reloadTimer.value);\n});\n</script>\n"],"names":["token"],"mappings":"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"}
1
+ {"version":3,"file":"LoginDialog.vue2.mjs","sources":["../../../../../../../packages/components/src/business/loginDialog/LoginDialog.vue"],"sourcesContent":["<script lang=\"ts\">\nconst loginEnvKey = 'VITE_GIIME_LOGIN_URL'\n</script>\n<template>\n <div v-if=\"isSSRShowDialog\">\n <el-dialog v-model=\"loginStore.showLogin\" width=\"80%\" append-to-body>\n <!-- 正常登录状态:显示iframe -->\n <iframe v-if=\"loginStore.showLogin && !loginStore.isLoginBlocked\" class=\"gm-h-[600px] gm-w-full\" :src=\"loginUrl\" />\n <!-- 异常状态:显示错误提示 -->\n <div v-else-if=\"loginStore.isLoginBlocked\" class=\"gm-py-10\" :src=\"loginUrl\">\n <el-result icon=\"warning\" title=\"登录异常\" sub-title=\"短时间内多次登录失败,请稍后重试\">\n <template #extra>\n <el-button type=\"primary\" @click=\"handleRetryLogin\">重新登录</el-button>\n <el-button type=\"warning\" @click=\"handleClearCache\">清空缓存</el-button>\n <el-button @click=\"loginStore.showLogin = false\">关闭</el-button>\n </template>\n </el-result>\n </div>\n </el-dialog>\n </div>\n</template>\n<script setup lang=\"ts\">\nimport { computed, onMounted, onUnmounted, ref, unref, watch } from 'vue';\n// import { isObject } from '@vue/shared';\nimport { ElButton, ElDialog, ElMessage, ElResult } from 'element-plus';\nimport Cookies from 'js-cookie';\n// import router from 'vue-router';\nimport { useLoginStore } from '@giime/hooks';\nimport { useGlobalConfig } from '@giime/hooks/base/useGlobalConfig';\nimport { isDingTalk, isMobile, isString } from '@giime/utils';\nimport { getDomain, urlJoin } from '@giime/utils/src/http/url';\nimport { getTenantType, isGiikin } from '@giime/utils/src/tenant';\nimport { envConfigs } from '@giime/utils/src/http/createModes';\nimport { loginDialogProps } from './loginDialog';\nimport { resetEnvMode } from '@giime/constants/key';\n\nconst props = defineProps(loginDialogProps);\nconst router = useGlobalConfig('router');\n// const router = useRouter();\nconst route = computed(() => (router.value ? unref(router.value.currentRoute) : undefined));\nconst loginStore = useLoginStore();\nconst loginUrl = ref('');\n\n\nconst importMetaEnv = useGlobalConfig('env');\nconst isSSRShowDialog = ref(importMetaEnv.value.SSR === false);\n\n/**\n * 获取登录URL\n * 优先级:环境变量 > resetEnvMode > 租户类型判断 > 默认值\n */\nlet originLoginUrl = '';\n// 1. 优先使用环境变量配置的 loginUrl\nif (isString(importMetaEnv.value[loginEnvKey])) {\n originLoginUrl = importMetaEnv.value[loginEnvKey];\n} else {\n // 2. 根据租户类型获取登录路径\n const loginPath = isGiikin() ? '/guard/sso/public/auth' : '/fe/basic/login';\n\n // 3. 根据 resetEnvMode 获取环境配置并拼接完整URL\n const resetMode = importMetaEnv.value[resetEnvMode];\n const hostname = window.location.hostname;\n // 获取域名对应的环境配置\n const findEnvConfig = Object.values(envConfigs).find(config => config.domain === hostname);\n if (resetMode && envConfigs[resetMode]) {\n originLoginUrl = urlJoin(envConfigs[resetMode].url, loginPath);\n } else if (findEnvConfig) {\n // 4. 根据域名获取环境配置并拼接完整URL\n originLoginUrl = urlJoin(findEnvConfig.url, loginPath);\n } else {\n // 5. 默认使用开发环境登录路径\n originLoginUrl = urlJoin(envConfigs.develop.url, loginPath);\n }\n}\nconst handleLogin = () => {\n const protocol = window.location.protocol;\n const host = window.location.host;\n const myPath = window.location.pathname;\n loginUrl.value = `${originLoginUrl}?_system=${props.system}`;\n if (route.value && props.needScanningRouteNames.includes(route.value?.name?.toString() ?? '')) {\n loginUrl.value += '&is_dashboard=1';\n }\n\n // 公司id\n const guard_company = Cookies.get('guard_company');\n if (guard_company) {\n loginUrl.value += `&companyId=${guard_company}`;\n }\n\n loginUrl.value += `&${props.redirectUrlField}=${protocol}//${host}${myPath}`;\n\n // eslint-disable-next-line no-console\n console.log(loginUrl.value);\n if (isMobile() || isDingTalk()) {\n window.location.href = loginUrl.value;\n }\n};\n\n/** 重试登录:重置循环保护计数器并重新加载登录页 */\nconst handleRetryLogin = () => {\n loginStore.resetLoginBlock();\n handleLogin();\n};\n\n/** 清空缓存:清除 Cookies、localStorage 和 sessionStorage */\nconst handleClearCache = () => {\n // 清除所有 Cookies\n const cookies = document.cookie.split(';');\n const curDomain = getDomain();\n cookies.forEach(cookie => {\n const name = cookie.split('=')[0].trim();\n if (name) {\n // 尝试多种方式删除 cookie\n Cookies.remove(name);\n Cookies.remove(name, { domain: curDomain });\n Cookies.remove(name, { domain: `.${curDomain}` });\n }\n });\n\n // 提示操作成功\n ElMessage.success('清除cookie缓存成功');\n};\nwatch(\n () => loginStore.showLogin,\n value => {\n if (value) {\n handleLogin();\n }\n },\n);\n// 超过5分钟没扫码 会不能扫码 定时没登录的话3分钟刷新次\nconst reloadTimer = ref<number>();\nif (route.value) {\n watch(route, (newValue, oldValue) => {\n if (!oldValue || !newValue) {\n return;\n }\n if (oldValue.name && props.needScanningRouteNames.includes(oldValue.name.toString())) {\n window.clearInterval(reloadTimer.value);\n }\n if (newValue.name && props.needScanningRouteNames.includes(newValue.name.toString())) {\n reloadTimer.value = window.setInterval(\n () => {\n if (!loginStore.showLogin) {\n return;\n }\n // 登录超时后 3分钟刷新次页面\n window.location.reload();\n },\n 3 * 60 * 1000,\n );\n }\n });\n}\n\ninterface GiikinLogged {\n type: string;\n data: {\n token: string;\n userId: string;\n /**token 或者 loginSuccess 控制当前登录是否成功*/\n loginSuccess?: boolean;\n /**禁止写入cookie */\n disabledWrite?: boolean;\n disabledClose?: boolean;\n tokens: { key: string; value: string }[];\n };\n cookies?: string[];\n}\n\nonMounted(() => {\n isSSRShowDialog.value = true;\n if (loginStore.showLogin) {\n handleLogin();\n }\n // iframe事件监听\n window.addEventListener('message', async e => {\n // 刷新登陆状态\n if (e.data.type == 'giikin-Logged') {\n const data: GiikinLogged = e.data;\n // eslint-disable-next-line no-console\n console.log(e.data);\n const token = Cookies.get('token');\n // const isProduction = importMetaEnv.value.MODE === 'production' || importMetaEnv.value.MODE === 'giiktok.production';\n const isProduction = importMetaEnv.value.MODE.includes('production');\n if (\n // 测试环境 但是需要登陆的情况\n (!isProduction && data?.data?.token) ||\n // 正式环境 登录成功 但是服务器token设置失败\n (isProduction && !token && data?.data?.token)\n ) {\n // loginStore.userToken = data.data.token;\n loginStore.userId = data.data.userId;\n const now = new Date();\n let time = now.getTime();\n time += 8 * 60 * 60 * 1000; // 8 小时之后的时间(单位:毫秒)\n now.setTime(time);\n const curDomain = getDomain();\n // 不禁用 则写入cookie\n if (!data.data.disabledWrite) {\n // cookieMap\n if (data.cookies && Array.isArray(data.cookies)) {\n data.cookies.forEach((cookie: string) => {\n document.cookie = cookie;\n });\n }\n // 可能出现测试环境调正式,需要写入token\n Cookies.set('token', data.data.token, { expires: now, domain: isProduction ? curDomain : undefined });\n // 本地开发时 写入token\n if (importMetaEnv.value.DEV && data.data.tokens) {\n data.data.tokens.forEach((token: { key: string; value: string }) => {\n Cookies.set(token.key, token.value, { expires: now, domain: curDomain });\n });\n }\n\n if (!Cookies.get('sso_user_id') && data.data.userId) {\n Cookies.set('sso_user_id', data.data.userId, {\n expires: now,\n domain: isProduction ? curDomain : undefined,\n });\n }\n }\n }\n if (!data.data.disabledClose) {\n // 触发登录成功监听\n if (data?.data?.token || data?.data?.loginSuccess) {\n await loginStore.triggerLoginResult(true);\n }\n // ElMessage.success('登录成功,请关闭弹窗');\n loginStore.showLogin = false;\n if (route.value && props.needRealodRouteNames.includes(route.value.name?.toString() ?? '')) {\n window.location.reload();\n }\n }\n }\n });\n});\nonUnmounted(() => {\n window.clearInterval(reloadTimer.value);\n});\n</script>\n"],"names":["token"],"mappings":"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"}
@@ -1 +1 @@
1
- export declare const version = "0.9.8-beta.1";
1
+ export declare const version = "0.9.8-beta.2";
package/es/index.css CHANGED
@@ -894,42 +894,44 @@ video {
894
894
  .gm-flex-justify-between[data-v-c17deec9] {
895
895
  justify-content: space-between;
896
896
  }
897
- .circular[data-v-d7b04fae] {
898
- animation: loading-rotate-d7b04fae 2s linear infinite;
897
+ .gm-upload-pro-file {
898
+ line-height: normal;
899
899
  }
900
-
901
- .path[data-v-d7b04fae] {
902
- animation: loading-dash-d7b04fae 1.5s ease-in-out infinite;
903
- stroke-dasharray: 90, 150;
904
- stroke-dashoffset: 0;
905
- stroke: var(--el-color-primary);
906
- stroke-linecap: round;
900
+ .gm-upload-pro-file .el-checkbox-group {
901
+ font-size: unset;
907
902
  }
908
-
909
- @keyframes loading-rotate-d7b04fae {
910
- to {
911
- transform: rotate(360deg);
912
- }
903
+ .gm-upload-pro-file .el-checkbox {
904
+ position: absolute;
905
+ left: 10px;
906
+ top: 0;
907
+ z-index: 9;
913
908
  }
914
- @keyframes loading-dash-d7b04fae {
915
- 0% {
916
- stroke-dasharray: 1, 200;
917
- stroke-dashoffset: 0;
918
- }
919
- 50% {
920
- stroke-dasharray: 90, 150;
921
- stroke-dashoffset: -40px;
922
- }
923
- 100% {
924
- stroke-dasharray: 90, 150;
925
- stroke-dashoffset: -120px;
926
- }
909
+ .gm-upload-pro-file .el-upload-list--picture-card {
910
+ gap: 10px;
927
911
  }
928
-
929
- .gm-range-number .el-form-item[data-v-1ae16d96] {
912
+ .gm-upload-pro-file .el-upload-list__item {
930
913
  margin: 0;
931
914
  }
915
+ .gm-upload-pro-file .el-upload-list__item-file-name {
916
+ line-height: 1.7;
917
+ }
918
+ .gm-upload-pro-file .el-upload-dragger {
919
+ padding: 0;
920
+ border: none;
921
+ width: 100%;
922
+ height: 100%;
923
+ display: flex;
924
+ }
925
+ .gm-upload-pro-file .el-upload--picture-card {
926
+ border: none;
927
+ }
932
928
 
929
+ .gm-upload-pro-file-disabled .el-upload--picture-card {
930
+ display: none;
931
+ }
932
+ .gm-upload-pro-file-disabled .el-upload-list__item-status-label {
933
+ display: none;
934
+ }
933
935
  .gm-upload-pro-preview-dialog[data-v-80b383d8] [data-v-80b383d8] .el-dialog__body {
934
936
  padding: 0;
935
937
  }
@@ -938,42 +940,75 @@ video {
938
940
  width: auto;
939
941
  height: auto;
940
942
  }
941
- .gm-upload-pro-file {
942
- line-height: normal;
943
+ [data-v-79615afd] .gmSearchForm .el-form-item {
944
+ margin-right: 0;
945
+ margin-bottom: 4px;
943
946
  }
944
- .gm-upload-pro-file .el-checkbox-group {
945
- font-size: unset;
947
+ [data-v-050a4f74] .gmTableNoBorder .el-table__body .el-table__cell {
948
+ border-right: none;
946
949
  }
947
- .gm-upload-pro-file .el-checkbox {
950
+
951
+ [data-v-050a4f74] .gmTableNoBorder .el-table__inner-wrapper:before {
952
+ height: 0;
953
+ }
954
+
955
+ [data-v-050a4f74] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
956
+ height: 0;
957
+ }
958
+
959
+ [data-v-050a4f74] .gmTableNoBorder.el-table--border:after {
960
+ height: 0;
961
+ }
962
+
963
+ [data-v-050a4f74] .gmTableNoBorder.el-table--border:before {
964
+ height: 0;
965
+ }
966
+
967
+ [data-v-050a4f74] .gmTableNoBorder .el-table__border-left-patch {
968
+ height: 0;
969
+ }
970
+ .gm-upload-preview-dialog[data-v-c615121c] [data-v-c615121c] .el-dialog__body {
971
+ padding: 0;
972
+ }
973
+
974
+ .gm-upload-file-picture-card[data-v-c615121c] [data-v-c615121c] .el-upload-list__item, .gm-upload-file-picture-card[data-v-c615121c] [data-v-c615121c] .el-upload--picture-card {
975
+ width: auto;
976
+ height: auto;
977
+ }
978
+ .gm-upload-file {
979
+ line-height: normal;
980
+ }
981
+ .gm-upload-file li > .el-checkbox {
948
982
  position: absolute;
949
983
  left: 10px;
950
984
  top: 0;
951
985
  z-index: 9;
952
986
  }
953
- .gm-upload-pro-file .el-upload-list--picture-card {
987
+ .gm-upload-file .el-upload-list--picture-card {
954
988
  gap: 10px;
955
989
  }
956
- .gm-upload-pro-file .el-upload-list__item {
990
+ .gm-upload-file .el-upload-list__item {
957
991
  margin: 0;
992
+ border: none;
958
993
  }
959
- .gm-upload-pro-file .el-upload-list__item-file-name {
960
- line-height: 1.7;
994
+ .gm-upload-file .el-upload-list__item-file-name {
995
+ line-height: normal;
961
996
  }
962
- .gm-upload-pro-file .el-upload-dragger {
997
+ .gm-upload-file .el-upload-dragger {
963
998
  padding: 0;
964
999
  border: none;
965
1000
  width: 100%;
966
1001
  height: 100%;
967
1002
  display: flex;
968
1003
  }
969
- .gm-upload-pro-file .el-upload--picture-card {
1004
+ .gm-upload-file .el-upload--picture-card {
970
1005
  border: none;
971
1006
  }
972
1007
 
973
- .gm-upload-pro-file-disabled .el-upload--picture-card {
1008
+ .gm-upload-file-disabled .el-upload--picture-card {
974
1009
  display: none;
975
1010
  }
976
- .gm-upload-pro-file-disabled .el-upload-list__item-status-label {
1011
+ .gm-upload-file-disabled .el-upload-list__item-status-label {
977
1012
  display: none;
978
1013
  }
979
1014
  .gm-number-interval-single[data-v-4e6f4d6f] {
@@ -994,42 +1029,65 @@ video {
994
1029
  .gm-number-interval-single[data-v-4e6f4d6f]:hover .gm-number-interval-close[data-v-4e6f4d6f] {
995
1030
  display: flex;
996
1031
  }
997
- [data-v-79615afd] .gmSearchForm .el-form-item {
998
- margin-right: 0;
999
- margin-bottom: 4px;
1000
- }
1001
- [data-v-050a4f74] .gmTableNoBorder .el-table__body .el-table__cell {
1032
+ [data-v-3f2c8504] .gmTableNoBorder .el-table__body .el-table__cell {
1002
1033
  border-right: none;
1003
1034
  }
1004
1035
 
1005
- [data-v-050a4f74] .gmTableNoBorder .el-table__inner-wrapper:before {
1036
+ [data-v-3f2c8504] .gmTableNoBorder .el-table__inner-wrapper:before {
1006
1037
  height: 0;
1007
1038
  }
1008
1039
 
1009
- [data-v-050a4f74] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
1040
+ [data-v-3f2c8504] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
1010
1041
  height: 0;
1011
1042
  }
1012
1043
 
1013
- [data-v-050a4f74] .gmTableNoBorder.el-table--border:after {
1044
+ [data-v-3f2c8504] .gmTableNoBorder.el-table--border:after {
1014
1045
  height: 0;
1015
1046
  }
1016
1047
 
1017
- [data-v-050a4f74] .gmTableNoBorder.el-table--border:before {
1048
+ [data-v-3f2c8504] .gmTableNoBorder.el-table--border:before {
1018
1049
  height: 0;
1019
1050
  }
1020
1051
 
1021
- [data-v-050a4f74] .gmTableNoBorder .el-table__border-left-patch {
1052
+ [data-v-3f2c8504] .gmTableNoBorder .el-table__border-left-patch {
1022
1053
  height: 0;
1023
1054
  }
1024
1055
 
1025
- .pagination-container[data-v-47d35e7b] {
1026
- background: #fff;
1027
- padding-top: 12px;
1056
+ .gm-range-number .el-form-item[data-v-1ae16d96] {
1057
+ margin: 0;
1028
1058
  }
1029
- .pagination-container.hidden[data-v-47d35e7b] {
1030
- display: none;
1059
+
1060
+ .circular[data-v-d7b04fae] {
1061
+ animation: loading-rotate-d7b04fae 2s linear infinite;
1062
+ }
1063
+
1064
+ .path[data-v-d7b04fae] {
1065
+ animation: loading-dash-d7b04fae 1.5s ease-in-out infinite;
1066
+ stroke-dasharray: 90, 150;
1067
+ stroke-dashoffset: 0;
1068
+ stroke: var(--el-color-primary);
1069
+ stroke-linecap: round;
1031
1070
  }
1032
1071
 
1072
+ @keyframes loading-rotate-d7b04fae {
1073
+ to {
1074
+ transform: rotate(360deg);
1075
+ }
1076
+ }
1077
+ @keyframes loading-dash-d7b04fae {
1078
+ 0% {
1079
+ stroke-dasharray: 1, 200;
1080
+ stroke-dashoffset: 0;
1081
+ }
1082
+ 50% {
1083
+ stroke-dasharray: 90, 150;
1084
+ stroke-dashoffset: -40px;
1085
+ }
1086
+ 100% {
1087
+ stroke-dasharray: 90, 150;
1088
+ stroke-dashoffset: -120px;
1089
+ }
1090
+ }
1033
1091
  @charset "UTF-8";
1034
1092
  .custom-operate-drawer .el-drawer__header {
1035
1093
  padding: 10px 15px;
@@ -1086,29 +1144,6 @@ video {
1086
1144
  border-radius: 10px;
1087
1145
  background: #eee;
1088
1146
  }
1089
- [data-v-3f2c8504] .gmTableNoBorder .el-table__body .el-table__cell {
1090
- border-right: none;
1091
- }
1092
-
1093
- [data-v-3f2c8504] .gmTableNoBorder .el-table__inner-wrapper:before {
1094
- height: 0;
1095
- }
1096
-
1097
- [data-v-3f2c8504] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
1098
- height: 0;
1099
- }
1100
-
1101
- [data-v-3f2c8504] .gmTableNoBorder.el-table--border:after {
1102
- height: 0;
1103
- }
1104
-
1105
- [data-v-3f2c8504] .gmTableNoBorder.el-table--border:before {
1106
- height: 0;
1107
- }
1108
-
1109
- [data-v-3f2c8504] .gmTableNoBorder .el-table__border-left-patch {
1110
- height: 0;
1111
- }
1112
1147
  @charset "UTF-8";
1113
1148
  .table-custom-header-drawer .el-drawer__header {
1114
1149
  padding: 10px 15px;
@@ -1165,47 +1200,11 @@ video {
1165
1200
  border-radius: 10px;
1166
1201
  background: #eee;
1167
1202
  }
1168
- .gm-upload-preview-dialog[data-v-c615121c] [data-v-c615121c] .el-dialog__body {
1169
- padding: 0;
1170
- }
1171
1203
 
1172
- .gm-upload-file-picture-card[data-v-c615121c] [data-v-c615121c] .el-upload-list__item, .gm-upload-file-picture-card[data-v-c615121c] [data-v-c615121c] .el-upload--picture-card {
1173
- width: auto;
1174
- height: auto;
1175
- }
1176
- .gm-upload-file {
1177
- line-height: normal;
1178
- }
1179
- .gm-upload-file li > .el-checkbox {
1180
- position: absolute;
1181
- left: 10px;
1182
- top: 0;
1183
- z-index: 9;
1184
- }
1185
- .gm-upload-file .el-upload-list--picture-card {
1186
- gap: 10px;
1187
- }
1188
- .gm-upload-file .el-upload-list__item {
1189
- margin: 0;
1190
- border: none;
1191
- }
1192
- .gm-upload-file .el-upload-list__item-file-name {
1193
- line-height: normal;
1194
- }
1195
- .gm-upload-file .el-upload-dragger {
1196
- padding: 0;
1197
- border: none;
1198
- width: 100%;
1199
- height: 100%;
1200
- display: flex;
1201
- }
1202
- .gm-upload-file .el-upload--picture-card {
1203
- border: none;
1204
+ .pagination-container[data-v-47d35e7b] {
1205
+ background: #fff;
1206
+ padding-top: 12px;
1204
1207
  }
1205
-
1206
- .gm-upload-file-disabled .el-upload--picture-card {
1208
+ .pagination-container.hidden[data-v-47d35e7b] {
1207
1209
  display: none;
1208
1210
  }
1209
- .gm-upload-file-disabled .el-upload-list__item-status-label {
1210
- display: none;
1211
- }
@@ -1,4 +1,5 @@
1
1
  import { useGlobalConfig } from '../../../hooks/base/useGlobalConfig/index.mjs';
2
+ import { unref } from 'vue';
2
3
  import { useRoute } from 'vue-router';
3
4
 
4
5
  function transformRouteValue(value, defaultValue, transform) {
@@ -16,13 +17,15 @@ function transformRouteValue(value, defaultValue, transform) {
16
17
  }
17
18
  function getRouteQuery(name, options) {
18
19
  const router = useGlobalConfig("router");
19
- const { route = router.value?.currentRoute.value || useRoute(), transform, defaultValue } = options || {};
20
+ const currentRoute = unref(router.value?.currentRoute);
21
+ const { route = currentRoute || useRoute(), transform, defaultValue } = options || {};
20
22
  const queryValue = route.query[name];
21
23
  return transformRouteValue(queryValue, defaultValue, transform);
22
24
  }
23
25
  function getRouteParams(name, options) {
24
26
  const router = useGlobalConfig("router");
25
- const { route = router.value?.currentRoute.value || useRoute(), transform, defaultValue } = options || {};
27
+ const currentRoute = unref(router.value?.currentRoute);
28
+ const { route = currentRoute || useRoute(), transform, defaultValue } = options || {};
26
29
  const paramsValue = route.params[name];
27
30
  return transformRouteValue(paramsValue, defaultValue, transform);
28
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"router.mjs","sources":["../../../../../../packages/utils/src/vue/router.ts"],"sourcesContent":["import { useGlobalConfig } from '@giime/hooks/base/useGlobalConfig';\nimport { useRoute } from 'vue-router';\nimport type { RouteParamValueRaw } from 'vue-router';\n\nexport type RouteQueryValueRaw = RouteParamValueRaw | string[];\nexport type RouteParamsValueRaw = RouteParamValueRaw;\n\n/** 转换函数类型,可以是函数或包含 get 方法的对象 */\nexport type TransformFunction<V, R> =\n | ((val: V) => R)\n | {\n get?: (value: V) => R;\n };\n\nexport interface GetRouteValueOptions<V, R> {\n /** 默认值 */\n defaultValue?: V;\n /** 路由实例,不传则使用 useRoute() */\n route?: ReturnType<typeof useRoute>;\n /** 转换函数,可以是函数或包含 get 方法的对象 */\n transform?: TransformFunction<V, R>;\n}\n\n/**\n * 通用的路由值获取和转换逻辑\n * @param value - 原始值\n * @param defaultValue - 默认值\n * @param transform - 转换函数\n * @returns 转换后的值\n */\nfunction transformRouteValue<T, K>(value: T | undefined, defaultValue: T | undefined, transform?: TransformFunction<T, K>): K {\n // 确定最终值\n const finalValue = value !== undefined ? value : defaultValue;\n\n // 如果没有 transform,直接返回\n if (!transform) {\n return finalValue as unknown as K;\n }\n\n // 如果 transform 是函数,直接调用\n if (typeof transform === 'function') {\n return transform(finalValue as T);\n }\n\n // 如果 transform 是对象,使用 get 方法\n if (transform.get) {\n return transform.get(finalValue as T);\n }\n\n return finalValue as unknown as K;\n}\n\n/**\n * 获取路由 query 参数的值(非响应式)\n * @param name - query 参数名称\n * @param options - 配置选项\n * @returns 转换后的 query 值\n */\nexport function getRouteQuery<T extends RouteQueryValueRaw = RouteQueryValueRaw, K = T>(name: string, options?: GetRouteValueOptions<T, K>): K {\n const router = useGlobalConfig('router');\n const { route = router.value?.currentRoute.value || useRoute(), transform, defaultValue } = options || {};\n\n // 获取原始 query 值\n const queryValue = route.query[name] as T | undefined;\n\n return transformRouteValue(queryValue, defaultValue, transform);\n}\n\n/**\n * 获取路由 params 参数的值(非响应式)\n * @param name - params 参数名称\n * @param options - 配置选项\n * @returns 转换后的 params 值\n */\nexport function getRouteParams<T extends RouteParamsValueRaw = RouteParamsValueRaw, K = T>(name: string, options?: GetRouteValueOptions<T, K>): K {\n const router = useGlobalConfig('router');\n const { route = router.value?.currentRoute.value || useRoute(), transform, defaultValue } = options || {};\n\n // 获取原始 params 值\n const paramsValue = route.params[name] as T | undefined;\n\n return transformRouteValue(paramsValue, defaultValue, transform);\n}\n"],"names":[],"mappings":";;;AA8BA,SAAS,mBAAA,CAA0B,KAAA,EAAsB,YAAA,EAA6B,SAAA,EAAwC;AAE5H,EAAA,MAAM,UAAA,GAAa,KAAA,KAAU,KAAA,CAAA,GAAY,KAAA,GAAQ,YAAA;AAGjD,EAAA,IAAI,CAAC,SAAA,EAAW;AACd,IAAA,OAAO,UAAA;AAAA,EACT;AAGA,EAAA,IAAI,OAAO,cAAc,UAAA,EAAY;AACnC,IAAA,OAAO,UAAU,UAAe,CAAA;AAAA,EAClC;AAGA,EAAA,IAAI,UAAU,GAAA,EAAK;AACjB,IAAA,OAAO,SAAA,CAAU,IAAI,UAAe,CAAA;AAAA,EACtC;AAEA,EAAA,OAAO,UAAA;AACT;AAQO,SAAS,aAAA,CAAwE,MAAc,OAAA,EAAyC;AAC7I,EAAA,MAAM,MAAA,GAAS,gBAAgB,QAAQ,CAAA;AACvC,EAAA,MAAM,EAAE,KAAA,GAAQ,MAAA,CAAO,KAAA,EAAO,YAAA,CAAa,KAAA,IAAS,QAAA,EAAS,EAAG,SAAA,EAAW,YAAA,EAAa,GAAI,OAAA,IAAW,EAAC;AAGxG,EAAA,MAAM,UAAA,GAAa,KAAA,CAAM,KAAA,CAAM,IAAI,CAAA;AAEnC,EAAA,OAAO,mBAAA,CAAoB,UAAA,EAAY,YAAA,EAAc,SAAS,CAAA;AAChE;AAQO,SAAS,cAAA,CAA2E,MAAc,OAAA,EAAyC;AAChJ,EAAA,MAAM,MAAA,GAAS,gBAAgB,QAAQ,CAAA;AACvC,EAAA,MAAM,EAAE,KAAA,GAAQ,MAAA,CAAO,KAAA,EAAO,YAAA,CAAa,KAAA,IAAS,QAAA,EAAS,EAAG,SAAA,EAAW,YAAA,EAAa,GAAI,OAAA,IAAW,EAAC;AAGxG,EAAA,MAAM,WAAA,GAAc,KAAA,CAAM,MAAA,CAAO,IAAI,CAAA;AAErC,EAAA,OAAO,mBAAA,CAAoB,WAAA,EAAa,YAAA,EAAc,SAAS,CAAA;AACjE;;;;"}
1
+ {"version":3,"file":"router.mjs","sources":["../../../../../../packages/utils/src/vue/router.ts"],"sourcesContent":["import { useGlobalConfig } from '@giime/hooks/base/useGlobalConfig';\nimport { unref } from 'vue';\nimport { useRoute } from 'vue-router';\nimport type { RouteLocationNormalizedLoaded, RouteParamValueRaw } from 'vue-router';\n\nexport type RouteQueryValueRaw = RouteParamValueRaw | string[];\nexport type RouteParamsValueRaw = RouteParamValueRaw;\n\n/** 转换函数类型,可以是函数或包含 get 方法的对象 */\nexport type TransformFunction<V, R> =\n | ((val: V) => R)\n | {\n get?: (value: V) => R;\n };\n\nexport interface GetRouteValueOptions<V, R> {\n /** 默认值 */\n defaultValue?: V;\n /** 路由实例,不传则使用 useRoute() */\n route?: ReturnType<typeof useRoute>;\n /** 转换函数,可以是函数或包含 get 方法的对象 */\n transform?: TransformFunction<V, R>;\n}\n\n/**\n * 通用的路由值获取和转换逻辑\n * @param value - 原始值\n * @param defaultValue - 默认值\n * @param transform - 转换函数\n * @returns 转换后的值\n */\nfunction transformRouteValue<T, K>(value: T | undefined, defaultValue: T | undefined, transform?: TransformFunction<T, K>): K {\n // 确定最终值\n const finalValue = value !== undefined ? value : defaultValue;\n\n // 如果没有 transform,直接返回\n if (!transform) {\n return finalValue as unknown as K;\n }\n\n // 如果 transform 是函数,直接调用\n if (typeof transform === 'function') {\n return transform(finalValue as T);\n }\n\n // 如果 transform 是对象,使用 get 方法\n if (transform.get) {\n return transform.get(finalValue as T);\n }\n\n return finalValue as unknown as K;\n}\n\n/**\n * 获取路由 query 参数的值(非响应式)\n * @param name - query 参数名称\n * @param options - 配置选项\n * @returns 转换后的 query 值\n */\nexport function getRouteQuery<T extends RouteQueryValueRaw = RouteQueryValueRaw, K = T>(name: string, options?: GetRouteValueOptions<T, K>): K {\n const router = useGlobalConfig('router');\n const currentRoute = unref(router.value?.currentRoute);\n const { route = currentRoute || useRoute(), transform, defaultValue } = options || {};\n\n // 获取原始 query 值\n const queryValue = route.query[name] as T | undefined;\n\n return transformRouteValue(queryValue, defaultValue, transform);\n}\n\n/**\n * 获取路由 params 参数的值(非响应式)\n * @param name - params 参数名称\n * @param options - 配置选项\n * @returns 转换后的 params 值\n */\nexport function getRouteParams<T extends RouteParamsValueRaw = RouteParamsValueRaw, K = T>(name: string, options?: GetRouteValueOptions<T, K>): K {\n const router = useGlobalConfig('router');\n const currentRoute = unref(router.value?.currentRoute);\n const { route = currentRoute || useRoute(), transform, defaultValue } = options || {};\n\n // 获取原始 params 值\n const paramsValue = route.params[name] as T | undefined;\n\n return transformRouteValue(paramsValue, defaultValue, transform);\n}\n"],"names":[],"mappings":";;;;AA+BA,SAAS,mBAAA,CAA0B,KAAA,EAAsB,YAAA,EAA6B,SAAA,EAAwC;AAE5H,EAAA,MAAM,UAAA,GAAa,KAAA,KAAU,KAAA,CAAA,GAAY,KAAA,GAAQ,YAAA;AAGjD,EAAA,IAAI,CAAC,SAAA,EAAW;AACd,IAAA,OAAO,UAAA;AAAA,EACT;AAGA,EAAA,IAAI,OAAO,cAAc,UAAA,EAAY;AACnC,IAAA,OAAO,UAAU,UAAe,CAAA;AAAA,EAClC;AAGA,EAAA,IAAI,UAAU,GAAA,EAAK;AACjB,IAAA,OAAO,SAAA,CAAU,IAAI,UAAe,CAAA;AAAA,EACtC;AAEA,EAAA,OAAO,UAAA;AACT;AAQO,SAAS,aAAA,CAAwE,MAAc,OAAA,EAAyC;AAC7I,EAAA,MAAM,MAAA,GAAS,gBAAgB,QAAQ,CAAA;AACvC,EAAA,MAAM,YAAA,GAAe,KAAA,CAAM,MAAA,CAAO,KAAA,EAAO,YAAY,CAAA;AACrD,EAAA,MAAM,EAAE,QAAQ,YAAA,IAAiB,QAAA,IAAY,SAAA,EAAW,YAAA,EAAa,GAAI,OAAA,IAAW,EAAC;AAGrF,EAAA,MAAM,UAAA,GAAa,KAAA,CAAM,KAAA,CAAM,IAAI,CAAA;AAEnC,EAAA,OAAO,mBAAA,CAAoB,UAAA,EAAY,YAAA,EAAc,SAAS,CAAA;AAChE;AAQO,SAAS,cAAA,CAA2E,MAAc,OAAA,EAAyC;AAChJ,EAAA,MAAM,MAAA,GAAS,gBAAgB,QAAQ,CAAA;AACvC,EAAA,MAAM,YAAA,GAAe,KAAA,CAAM,MAAA,CAAO,KAAA,EAAO,YAAY,CAAA;AACrD,EAAA,MAAM,EAAE,QAAQ,YAAA,IAAiB,QAAA,IAAY,SAAA,EAAW,YAAA,EAAa,GAAI,OAAA,IAAW,EAAC;AAGrF,EAAA,MAAM,WAAA,GAAc,KAAA,CAAM,MAAA,CAAO,IAAI,CAAA;AAErC,EAAA,OAAO,mBAAA,CAAoB,WAAA,EAAa,YAAA,EAAc,SAAS,CAAA;AACjE;;;;"}
@@ -26,7 +26,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
26
26
  setup(__props) {
27
27
  const props = __props;
28
28
  const router = index.useGlobalConfig("router");
29
- const route = vue.computed(() => router.value ? router.value.currentRoute.value : void 0);
29
+ const route = vue.computed(() => router.value ? vue.unref(router.value.currentRoute) : void 0);
30
30
  const loginStore = index$1.useLoginStore();
31
31
  const loginUrl = vue.ref("");
32
32
  const importMetaEnv = index.useGlobalConfig("env");
@@ -1 +1 @@
1
- {"version":3,"file":"LoginDialog.vue2.js","sources":["../../../../../../../packages/components/src/business/loginDialog/LoginDialog.vue"],"sourcesContent":["<script lang=\"ts\">\nconst loginEnvKey = 'VITE_GIIME_LOGIN_URL'\n</script>\n<template>\n <div v-if=\"isSSRShowDialog\">\n <el-dialog v-model=\"loginStore.showLogin\" width=\"80%\" append-to-body>\n <!-- 正常登录状态:显示iframe -->\n <iframe v-if=\"loginStore.showLogin && !loginStore.isLoginBlocked\" class=\"gm-h-[600px] gm-w-full\" :src=\"loginUrl\" />\n <!-- 异常状态:显示错误提示 -->\n <div v-else-if=\"loginStore.isLoginBlocked\" class=\"gm-py-10\" :src=\"loginUrl\">\n <el-result icon=\"warning\" title=\"登录异常\" sub-title=\"短时间内多次登录失败,请稍后重试\">\n <template #extra>\n <el-button type=\"primary\" @click=\"handleRetryLogin\">重新登录</el-button>\n <el-button type=\"warning\" @click=\"handleClearCache\">清空缓存</el-button>\n <el-button @click=\"loginStore.showLogin = false\">关闭</el-button>\n </template>\n </el-result>\n </div>\n </el-dialog>\n </div>\n</template>\n<script setup lang=\"ts\">\nimport { computed, onMounted, onUnmounted, ref, watch } from 'vue';\n// import { isObject } from '@vue/shared';\nimport { ElButton, ElDialog, ElMessage, ElResult } from 'element-plus';\nimport Cookies from 'js-cookie';\n// import router from 'vue-router';\nimport { useLoginStore } from '@giime/hooks';\nimport { useGlobalConfig } from '@giime/hooks/base/useGlobalConfig';\nimport { isDingTalk, isMobile, isString } from '@giime/utils';\nimport { getDomain, urlJoin } from '@giime/utils/src/http/url';\nimport { getTenantType, isGiikin } from '@giime/utils/src/tenant';\nimport { envConfigs } from '@giime/utils/src/http/createModes';\nimport { loginDialogProps } from './loginDialog';\nimport { resetEnvMode } from '@giime/constants/key';\n\nconst props = defineProps(loginDialogProps);\nconst router = useGlobalConfig('router');\n\n// const router = useRouter();\nconst route = computed(() => (router.value ? router.value.currentRoute.value : undefined));\nconst loginStore = useLoginStore();\nconst loginUrl = ref('');\n\n\nconst importMetaEnv = useGlobalConfig('env');\nconst isSSRShowDialog = ref(importMetaEnv.value.SSR === false);\n\n/**\n * 获取登录URL\n * 优先级:环境变量 > resetEnvMode > 租户类型判断 > 默认值\n */\nlet originLoginUrl = '';\n// 1. 优先使用环境变量配置的 loginUrl\nif (isString(importMetaEnv.value[loginEnvKey])) {\n originLoginUrl = importMetaEnv.value[loginEnvKey];\n} else {\n // 2. 根据租户类型获取登录路径\n const loginPath = isGiikin() ? '/guard/sso/public/auth' : '/fe/basic/login';\n\n // 3. 根据 resetEnvMode 获取环境配置并拼接完整URL\n const resetMode = importMetaEnv.value[resetEnvMode];\n const hostname = window.location.hostname;\n // 获取域名对应的环境配置\n const findEnvConfig = Object.values(envConfigs).find(config => config.domain === hostname);\n if (resetMode && envConfigs[resetMode]) {\n originLoginUrl = urlJoin(envConfigs[resetMode].url, loginPath);\n } else if (findEnvConfig) {\n // 4. 根据域名获取环境配置并拼接完整URL\n originLoginUrl = urlJoin(findEnvConfig.url, loginPath);\n } else {\n // 5. 默认使用开发环境登录路径\n originLoginUrl = urlJoin(envConfigs.develop.url, loginPath);\n }\n}\nconst handleLogin = () => {\n const protocol = window.location.protocol;\n const host = window.location.host;\n const myPath = window.location.pathname;\n loginUrl.value = `${originLoginUrl}?_system=${props.system}`;\n if (route.value && props.needScanningRouteNames.includes(route.value?.name?.toString() ?? '')) {\n loginUrl.value += '&is_dashboard=1';\n }\n\n // 公司id\n const guard_company = Cookies.get('guard_company');\n if (guard_company) {\n loginUrl.value += `&companyId=${guard_company}`;\n }\n\n loginUrl.value += `&${props.redirectUrlField}=${protocol}//${host}${myPath}`;\n\n // eslint-disable-next-line no-console\n console.log(loginUrl.value);\n if (isMobile() || isDingTalk()) {\n window.location.href = loginUrl.value;\n }\n};\n\n/** 重试登录:重置循环保护计数器并重新加载登录页 */\nconst handleRetryLogin = () => {\n loginStore.resetLoginBlock();\n handleLogin();\n};\n\n/** 清空缓存:清除 Cookies、localStorage 和 sessionStorage */\nconst handleClearCache = () => {\n // 清除所有 Cookies\n const cookies = document.cookie.split(';');\n const curDomain = getDomain();\n cookies.forEach(cookie => {\n const name = cookie.split('=')[0].trim();\n if (name) {\n // 尝试多种方式删除 cookie\n Cookies.remove(name);\n Cookies.remove(name, { domain: curDomain });\n Cookies.remove(name, { domain: `.${curDomain}` });\n }\n });\n\n // 提示操作成功\n ElMessage.success('清除cookie缓存成功');\n};\nwatch(\n () => loginStore.showLogin,\n value => {\n if (value) {\n handleLogin();\n }\n },\n);\n// 超过5分钟没扫码 会不能扫码 定时没登录的话3分钟刷新次\nconst reloadTimer = ref<number>();\nif (route.value) {\n watch(route, (newValue, oldValue) => {\n if (!oldValue || !newValue) {\n return;\n }\n if (oldValue.name && props.needScanningRouteNames.includes(oldValue.name.toString())) {\n window.clearInterval(reloadTimer.value);\n }\n if (newValue.name && props.needScanningRouteNames.includes(newValue.name.toString())) {\n reloadTimer.value = window.setInterval(\n () => {\n if (!loginStore.showLogin) {\n return;\n }\n // 登录超时后 3分钟刷新次页面\n window.location.reload();\n },\n 3 * 60 * 1000,\n );\n }\n });\n}\n\ninterface GiikinLogged {\n type: string;\n data: {\n token: string;\n userId: string;\n /**token 或者 loginSuccess 控制当前登录是否成功*/\n loginSuccess?: boolean;\n /**禁止写入cookie */\n disabledWrite?: boolean;\n disabledClose?: boolean;\n tokens: { key: string; value: string }[];\n };\n cookies?: string[];\n}\n\nonMounted(() => {\n isSSRShowDialog.value = true;\n if (loginStore.showLogin) {\n handleLogin();\n }\n // iframe事件监听\n window.addEventListener('message', async e => {\n // 刷新登陆状态\n if (e.data.type == 'giikin-Logged') {\n const data: GiikinLogged = e.data;\n // eslint-disable-next-line no-console\n console.log(e.data);\n const token = Cookies.get('token');\n // const isProduction = importMetaEnv.value.MODE === 'production' || importMetaEnv.value.MODE === 'giiktok.production';\n const isProduction = importMetaEnv.value.MODE.includes('production');\n if (\n // 测试环境 但是需要登陆的情况\n (!isProduction && data?.data?.token) ||\n // 正式环境 登录成功 但是服务器token设置失败\n (isProduction && !token && data?.data?.token)\n ) {\n // loginStore.userToken = data.data.token;\n loginStore.userId = data.data.userId;\n const now = new Date();\n let time = now.getTime();\n time += 8 * 60 * 60 * 1000; // 8 小时之后的时间(单位:毫秒)\n now.setTime(time);\n const curDomain = getDomain();\n // 不禁用 则写入cookie\n if (!data.data.disabledWrite) {\n // cookieMap\n if (data.cookies && Array.isArray(data.cookies)) {\n data.cookies.forEach((cookie: string) => {\n document.cookie = cookie;\n });\n }\n // 可能出现测试环境调正式,需要写入token\n Cookies.set('token', data.data.token, { expires: now, domain: isProduction ? curDomain : undefined });\n // 本地开发时 写入token\n if (importMetaEnv.value.DEV && data.data.tokens) {\n data.data.tokens.forEach((token: { key: string; value: string }) => {\n Cookies.set(token.key, token.value, { expires: now, domain: curDomain });\n });\n }\n\n if (!Cookies.get('sso_user_id') && data.data.userId) {\n Cookies.set('sso_user_id', data.data.userId, {\n expires: now,\n domain: isProduction ? curDomain : undefined,\n });\n }\n }\n }\n if (!data.data.disabledClose) {\n // 触发登录成功监听\n if (data?.data?.token || data?.data?.loginSuccess) {\n await loginStore.triggerLoginResult(true);\n }\n // ElMessage.success('登录成功,请关闭弹窗');\n loginStore.showLogin = false;\n if (route.value && props.needRealodRouteNames.includes(route.value.name?.toString() ?? '')) {\n window.location.reload();\n }\n }\n }\n });\n});\nonUnmounted(() => {\n window.clearInterval(reloadTimer.value);\n});\n</script>\n"],"names":["useGlobalConfig","computed","useLoginStore","ref","isString","isGiikin","resetEnvMode","envConfigs","urlJoin","isMobile","isDingTalk","getDomain","ElMessage","watch","onMounted","token","onUnmounted"],"mappings":";;;;;;;;;;;;;;;;;;;;;AACA,MAAM,WAAA,GAAc,sBAAA;;;;;AAmCpB,IAAA,MAAM,KAAA,GAAQ,OAAA;AACd,IAAA,MAAM,MAAA,GAASA,sBAAgB,QAAQ,CAAA;AAGvC,IAAA,MAAM,KAAA,GAAQC,aAAS,MAAO,MAAA,CAAO,QAAQ,MAAA,CAAO,KAAA,CAAM,YAAA,CAAa,KAAA,GAAQ,KAAA,CAAU,CAAA;AACzF,IAAA,MAAM,aAAaC,qBAAA,EAAc;AACjC,IAAA,MAAM,QAAA,GAAWC,QAAI,EAAE,CAAA;AAGvB,IAAA,MAAM,aAAA,GAAgBH,sBAAgB,KAAK,CAAA;AAC3C,IAAA,MAAM,eAAA,GAAkBG,OAAA,CAAI,aAAA,CAAc,KAAA,CAAM,QAAQ,KAAK,CAAA;AAM7D,IAAA,IAAI,cAAA,GAAiB,EAAA;AAErB,IAAA,IAAIC,WAAA,CAAS,aAAA,CAAc,KAAA,CAAM,WAAW,CAAC,CAAA,EAAG;AAC9C,MAAA,cAAA,GAAiB,aAAA,CAAc,MAAM,WAAW,CAAA;AAAA,IAClD,CAAA,MAAO;AAEL,MAAA,MAAM,SAAA,GAAYC,eAAA,EAAS,GAAI,wBAAA,GAA2B,iBAAA;AAG1D,MAAA,MAAM,SAAA,GAAY,aAAA,CAAc,KAAA,CAAMC,gBAAY,CAAA;AAClD,MAAA,MAAM,QAAA,GAAW,OAAO,QAAA,CAAS,QAAA;AAEjC,MAAA,MAAM,aAAA,GAAgB,OAAO,MAAA,CAAOC,sBAAU,EAAE,IAAA,CAAK,CAAA,MAAA,KAAU,MAAA,CAAO,MAAA,KAAW,QAAQ,CAAA;AACzF,MAAA,IAAI,SAAA,IAAaA,sBAAA,CAAW,SAAS,CAAA,EAAG;AACtC,QAAA,cAAA,GAAiBC,WAAA,CAAQD,sBAAA,CAAW,SAAS,CAAA,CAAE,KAAK,SAAS,CAAA;AAAA,MAC/D,WAAW,aAAA,EAAe;AAExB,QAAA,cAAA,GAAiBC,WAAA,CAAQ,aAAA,CAAc,GAAA,EAAK,SAAS,CAAA;AAAA,MACvD,CAAA,MAAO;AAEL,QAAA,cAAA,GAAiBA,WAAA,CAAQD,sBAAA,CAAW,OAAA,CAAQ,GAAA,EAAK,SAAS,CAAA;AAAA,MAC5D;AAAA,IACF;AACA,IAAA,MAAM,cAAc,MAAM;AACxB,MAAA,MAAM,QAAA,GAAW,OAAO,QAAA,CAAS,QAAA;AACjC,MAAA,MAAM,IAAA,GAAO,OAAO,QAAA,CAAS,IAAA;AAC7B,MAAA,MAAM,MAAA,GAAS,OAAO,QAAA,CAAS,QAAA;AAC/B,MAAA,QAAA,CAAS,KAAA,GAAQ,CAAA,EAAG,cAAc,CAAA,SAAA,EAAY,MAAM,MAAM,CAAA,CAAA;AAC1D,MAAA,IAAI,KAAA,CAAM,KAAA,IAAS,KAAA,CAAM,sBAAA,CAAuB,QAAA,CAAS,KAAA,CAAM,KAAA,EAAO,IAAA,EAAM,QAAA,EAAS,IAAK,EAAE,CAAA,EAAG;AAC7F,QAAA,QAAA,CAAS,KAAA,IAAS,iBAAA;AAAA,MACpB;AAGA,MAAA,MAAM,aAAA,GAAgB,OAAA,CAAQ,GAAA,CAAI,eAAe,CAAA;AACjD,MAAA,IAAI,aAAA,EAAe;AACjB,QAAA,QAAA,CAAS,KAAA,IAAS,cAAc,aAAa,CAAA,CAAA;AAAA,MAC/C;AAEA,MAAA,QAAA,CAAS,KAAA,IAAS,IAAI,KAAA,CAAM,gBAAgB,IAAI,QAAQ,CAAA,EAAA,EAAK,IAAI,CAAA,EAAG,MAAM,CAAA,CAAA;AAG1E,MAAA,OAAA,CAAQ,GAAA,CAAI,SAAS,KAAK,CAAA;AAC1B,MAAA,IAAIE,WAAA,EAAS,IAAKC,aAAA,EAAW,EAAG;AAC9B,QAAA,MAAA,CAAO,QAAA,CAAS,OAAO,QAAA,CAAS,KAAA;AAAA,MAClC;AAAA,IACF,CAAA;AAGA,IAAA,MAAM,mBAAmB,MAAM;AAC7B,MAAA,UAAA,CAAW,eAAA,EAAgB;AAC3B,MAAA,WAAA,EAAY;AAAA,IACd,CAAA;AAGA,IAAA,MAAM,mBAAmB,MAAM;AAE7B,MAAA,MAAM,OAAA,GAAU,QAAA,CAAS,MAAA,CAAO,KAAA,CAAM,GAAG,CAAA;AACzC,MAAA,MAAM,YAAYC,aAAA,EAAU;AAC5B,MAAA,OAAA,CAAQ,QAAQ,CAAA,MAAA,KAAU;AACxB,QAAA,MAAM,OAAO,MAAA,CAAO,KAAA,CAAM,GAAG,CAAA,CAAE,CAAC,EAAE,IAAA,EAAK;AACvC,QAAA,IAAI,IAAA,EAAM;AAER,UAAA,OAAA,CAAQ,OAAO,IAAI,CAAA;AACnB,UAAA,OAAA,CAAQ,MAAA,CAAO,IAAA,EAAM,EAAE,MAAA,EAAQ,WAAW,CAAA;AAC1C,UAAA,OAAA,CAAQ,OAAO,IAAA,EAAM,EAAE,QAAQ,CAAA,CAAA,EAAI,SAAS,IAAI,CAAA;AAAA,QAClD;AAAA,MACF,CAAC,CAAA;AAGD,MAAAC,qBAAA,CAAU,QAAQ,4CAAc,CAAA;AAAA,IAClC,CAAA;AACA,IAAAC,SAAA;AAAA,MACE,MAAM,UAAA,CAAW,SAAA;AAAA,MACjB,CAAA,KAAA,KAAS;AACP,QAAA,IAAI,KAAA,EAAO;AACT,UAAA,WAAA,EAAY;AAAA,QACd;AAAA,MACF;AAAA,KACF;AAEA,IAAA,MAAM,cAAcV,OAAA,EAAY;AAChC,IAAA,IAAI,MAAM,KAAA,EAAO;AACf,MAAAU,SAAA,CAAM,KAAA,EAAO,CAAC,QAAA,EAAU,QAAA,KAAa;AACnC,QAAA,IAAI,CAAC,QAAA,IAAY,CAAC,QAAA,EAAU;AAC1B,UAAA;AAAA,QACF;AACA,QAAA,IAAI,QAAA,CAAS,QAAQ,KAAA,CAAM,sBAAA,CAAuB,SAAS,QAAA,CAAS,IAAA,CAAK,QAAA,EAAU,CAAA,EAAG;AACpF,UAAA,MAAA,CAAO,aAAA,CAAc,YAAY,KAAK,CAAA;AAAA,QACxC;AACA,QAAA,IAAI,QAAA,CAAS,QAAQ,KAAA,CAAM,sBAAA,CAAuB,SAAS,QAAA,CAAS,IAAA,CAAK,QAAA,EAAU,CAAA,EAAG;AACpF,UAAA,WAAA,CAAY,QAAQ,MAAA,CAAO,WAAA;AAAA,YACzB,MAAM;AACJ,cAAA,IAAI,CAAC,WAAW,SAAA,EAAW;AACzB,gBAAA;AAAA,cACF;AAEA,cAAA,MAAA,CAAO,SAAS,MAAA,EAAO;AAAA,YACzB,CAAA;AAAA,YACA,IAAI,EAAA,GAAK;AAAA,WACX;AAAA,QACF;AAAA,MACF,CAAC,CAAA;AAAA,IACH;AAiBA,IAAAC,aAAA,CAAU,MAAM;AACd,MAAA,eAAA,CAAgB,KAAA,GAAQ,IAAA;AACxB,MAAA,IAAI,WAAW,SAAA,EAAW;AACxB,QAAA,WAAA,EAAY;AAAA,MACd;AAEA,MAAA,MAAA,CAAO,gBAAA,CAAiB,SAAA,EAAW,OAAM,CAAA,KAAK;AAE5C,QAAA,IAAI,CAAA,CAAE,IAAA,CAAK,IAAA,IAAQ,eAAA,EAAiB;AAClC,UAAA,MAAM,OAAqB,CAAA,CAAE,IAAA;AAE7B,UAAA,OAAA,CAAQ,GAAA,CAAI,EAAE,IAAI,CAAA;AAClB,UAAA,MAAM,KAAA,GAAQ,OAAA,CAAQ,GAAA,CAAI,OAAO,CAAA;AAEjC,UAAA,MAAM,YAAA,GAAe,aAAA,CAAc,KAAA,CAAM,IAAA,CAAK,SAAS,YAAY,CAAA;AACnE,UAAA;AAAA;AAAA,YAEG,CAAC,YAAA,IAAgB,IAAA,EAAM,IAAA,EAAM,KAAA;AAAA,YAE7B,YAAA,IAAgB,CAAC,KAAA,IAAS,IAAA,EAAM,IAAA,EAAM;AAAA,YACvC;AAEA,YAAA,UAAA,CAAW,MAAA,GAAS,KAAK,IAAA,CAAK,MAAA;AAC9B,YAAA,MAAM,GAAA,uBAAU,IAAA,EAAK;AACrB,YAAA,IAAI,IAAA,GAAO,IAAI,OAAA,EAAQ;AACvB,YAAA,IAAA,IAAQ,CAAA,GAAI,KAAK,EAAA,GAAK,GAAA;AACtB,YAAA,GAAA,CAAI,QAAQ,IAAI,CAAA;AAChB,YAAA,MAAM,YAAYH,aAAA,EAAU;AAE5B,YAAA,IAAI,CAAC,IAAA,CAAK,IAAA,CAAK,aAAA,EAAe;AAE5B,cAAA,IAAI,KAAK,OAAA,IAAW,KAAA,CAAM,OAAA,CAAQ,IAAA,CAAK,OAAO,CAAA,EAAG;AAC/C,gBAAA,IAAA,CAAK,OAAA,CAAQ,OAAA,CAAQ,CAAC,MAAA,KAAmB;AACvC,kBAAA,QAAA,CAAS,MAAA,GAAS,MAAA;AAAA,gBACpB,CAAC,CAAA;AAAA,cACH;AAEA,cAAA,OAAA,CAAQ,GAAA,CAAI,OAAA,EAAS,IAAA,CAAK,IAAA,CAAK,KAAA,EAAO,EAAE,OAAA,EAAS,GAAA,EAAK,MAAA,EAAQ,YAAA,GAAe,SAAA,GAAY,KAAA,CAAA,EAAW,CAAA;AAEpG,cAAA,IAAI,aAAA,CAAc,KAAA,CAAM,GAAA,IAAO,IAAA,CAAK,KAAK,MAAA,EAAQ;AAC/C,gBAAA,IAAA,CAAK,IAAA,CAAK,MAAA,CAAO,OAAA,CAAQ,CAACI,MAAAA,KAA0C;AAClE,kBAAA,OAAA,CAAQ,GAAA,CAAIA,MAAAA,CAAM,GAAA,EAAKA,MAAAA,CAAM,KAAA,EAAO,EAAE,OAAA,EAAS,GAAA,EAAK,MAAA,EAAQ,SAAA,EAAW,CAAA;AAAA,gBACzE,CAAC,CAAA;AAAA,cACH;AAEA,cAAA,IAAI,CAAC,OAAA,CAAQ,GAAA,CAAI,aAAa,CAAA,IAAK,IAAA,CAAK,KAAK,MAAA,EAAQ;AACnD,gBAAA,OAAA,CAAQ,GAAA,CAAI,aAAA,EAAe,IAAA,CAAK,IAAA,CAAK,MAAA,EAAQ;AAAA,kBAC3C,OAAA,EAAS,GAAA;AAAA,kBACT,MAAA,EAAQ,eAAe,SAAA,GAAY,KAAA;AAAA,iBACpC,CAAA;AAAA,cACH;AAAA,YACF;AAAA,UACF;AACA,UAAA,IAAI,CAAC,IAAA,CAAK,IAAA,CAAK,aAAA,EAAe;AAE5B,YAAA,IAAI,IAAA,EAAM,IAAA,EAAM,KAAA,IAAS,IAAA,EAAM,MAAM,YAAA,EAAc;AACjD,cAAA,MAAM,UAAA,CAAW,mBAAmB,IAAI,CAAA;AAAA,YAC1C;AAEA,YAAA,UAAA,CAAW,SAAA,GAAY,KAAA;AACvB,YAAA,IAAI,KAAA,CAAM,KAAA,IAAS,KAAA,CAAM,oBAAA,CAAqB,QAAA,CAAS,KAAA,CAAM,KAAA,CAAM,IAAA,EAAM,QAAA,EAAS,IAAK,EAAE,CAAA,EAAG;AAC1F,cAAA,MAAA,CAAO,SAAS,MAAA,EAAO;AAAA,YACzB;AAAA,UACF;AAAA,QACF;AAAA,MACF,CAAC,CAAA;AAAA,IACH,CAAC,CAAA;AACD,IAAAC,eAAA,CAAY,MAAM;AAChB,MAAA,MAAA,CAAO,aAAA,CAAc,YAAY,KAAK,CAAA;AAAA,IACxC,CAAC,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"LoginDialog.vue2.js","sources":["../../../../../../../packages/components/src/business/loginDialog/LoginDialog.vue"],"sourcesContent":["<script lang=\"ts\">\nconst loginEnvKey = 'VITE_GIIME_LOGIN_URL'\n</script>\n<template>\n <div v-if=\"isSSRShowDialog\">\n <el-dialog v-model=\"loginStore.showLogin\" width=\"80%\" append-to-body>\n <!-- 正常登录状态:显示iframe -->\n <iframe v-if=\"loginStore.showLogin && !loginStore.isLoginBlocked\" class=\"gm-h-[600px] gm-w-full\" :src=\"loginUrl\" />\n <!-- 异常状态:显示错误提示 -->\n <div v-else-if=\"loginStore.isLoginBlocked\" class=\"gm-py-10\" :src=\"loginUrl\">\n <el-result icon=\"warning\" title=\"登录异常\" sub-title=\"短时间内多次登录失败,请稍后重试\">\n <template #extra>\n <el-button type=\"primary\" @click=\"handleRetryLogin\">重新登录</el-button>\n <el-button type=\"warning\" @click=\"handleClearCache\">清空缓存</el-button>\n <el-button @click=\"loginStore.showLogin = false\">关闭</el-button>\n </template>\n </el-result>\n </div>\n </el-dialog>\n </div>\n</template>\n<script setup lang=\"ts\">\nimport { computed, onMounted, onUnmounted, ref, unref, watch } from 'vue';\n// import { isObject } from '@vue/shared';\nimport { ElButton, ElDialog, ElMessage, ElResult } from 'element-plus';\nimport Cookies from 'js-cookie';\n// import router from 'vue-router';\nimport { useLoginStore } from '@giime/hooks';\nimport { useGlobalConfig } from '@giime/hooks/base/useGlobalConfig';\nimport { isDingTalk, isMobile, isString } from '@giime/utils';\nimport { getDomain, urlJoin } from '@giime/utils/src/http/url';\nimport { getTenantType, isGiikin } from '@giime/utils/src/tenant';\nimport { envConfigs } from '@giime/utils/src/http/createModes';\nimport { loginDialogProps } from './loginDialog';\nimport { resetEnvMode } from '@giime/constants/key';\n\nconst props = defineProps(loginDialogProps);\nconst router = useGlobalConfig('router');\n// const router = useRouter();\nconst route = computed(() => (router.value ? unref(router.value.currentRoute) : undefined));\nconst loginStore = useLoginStore();\nconst loginUrl = ref('');\n\n\nconst importMetaEnv = useGlobalConfig('env');\nconst isSSRShowDialog = ref(importMetaEnv.value.SSR === false);\n\n/**\n * 获取登录URL\n * 优先级:环境变量 > resetEnvMode > 租户类型判断 > 默认值\n */\nlet originLoginUrl = '';\n// 1. 优先使用环境变量配置的 loginUrl\nif (isString(importMetaEnv.value[loginEnvKey])) {\n originLoginUrl = importMetaEnv.value[loginEnvKey];\n} else {\n // 2. 根据租户类型获取登录路径\n const loginPath = isGiikin() ? '/guard/sso/public/auth' : '/fe/basic/login';\n\n // 3. 根据 resetEnvMode 获取环境配置并拼接完整URL\n const resetMode = importMetaEnv.value[resetEnvMode];\n const hostname = window.location.hostname;\n // 获取域名对应的环境配置\n const findEnvConfig = Object.values(envConfigs).find(config => config.domain === hostname);\n if (resetMode && envConfigs[resetMode]) {\n originLoginUrl = urlJoin(envConfigs[resetMode].url, loginPath);\n } else if (findEnvConfig) {\n // 4. 根据域名获取环境配置并拼接完整URL\n originLoginUrl = urlJoin(findEnvConfig.url, loginPath);\n } else {\n // 5. 默认使用开发环境登录路径\n originLoginUrl = urlJoin(envConfigs.develop.url, loginPath);\n }\n}\nconst handleLogin = () => {\n const protocol = window.location.protocol;\n const host = window.location.host;\n const myPath = window.location.pathname;\n loginUrl.value = `${originLoginUrl}?_system=${props.system}`;\n if (route.value && props.needScanningRouteNames.includes(route.value?.name?.toString() ?? '')) {\n loginUrl.value += '&is_dashboard=1';\n }\n\n // 公司id\n const guard_company = Cookies.get('guard_company');\n if (guard_company) {\n loginUrl.value += `&companyId=${guard_company}`;\n }\n\n loginUrl.value += `&${props.redirectUrlField}=${protocol}//${host}${myPath}`;\n\n // eslint-disable-next-line no-console\n console.log(loginUrl.value);\n if (isMobile() || isDingTalk()) {\n window.location.href = loginUrl.value;\n }\n};\n\n/** 重试登录:重置循环保护计数器并重新加载登录页 */\nconst handleRetryLogin = () => {\n loginStore.resetLoginBlock();\n handleLogin();\n};\n\n/** 清空缓存:清除 Cookies、localStorage 和 sessionStorage */\nconst handleClearCache = () => {\n // 清除所有 Cookies\n const cookies = document.cookie.split(';');\n const curDomain = getDomain();\n cookies.forEach(cookie => {\n const name = cookie.split('=')[0].trim();\n if (name) {\n // 尝试多种方式删除 cookie\n Cookies.remove(name);\n Cookies.remove(name, { domain: curDomain });\n Cookies.remove(name, { domain: `.${curDomain}` });\n }\n });\n\n // 提示操作成功\n ElMessage.success('清除cookie缓存成功');\n};\nwatch(\n () => loginStore.showLogin,\n value => {\n if (value) {\n handleLogin();\n }\n },\n);\n// 超过5分钟没扫码 会不能扫码 定时没登录的话3分钟刷新次\nconst reloadTimer = ref<number>();\nif (route.value) {\n watch(route, (newValue, oldValue) => {\n if (!oldValue || !newValue) {\n return;\n }\n if (oldValue.name && props.needScanningRouteNames.includes(oldValue.name.toString())) {\n window.clearInterval(reloadTimer.value);\n }\n if (newValue.name && props.needScanningRouteNames.includes(newValue.name.toString())) {\n reloadTimer.value = window.setInterval(\n () => {\n if (!loginStore.showLogin) {\n return;\n }\n // 登录超时后 3分钟刷新次页面\n window.location.reload();\n },\n 3 * 60 * 1000,\n );\n }\n });\n}\n\ninterface GiikinLogged {\n type: string;\n data: {\n token: string;\n userId: string;\n /**token 或者 loginSuccess 控制当前登录是否成功*/\n loginSuccess?: boolean;\n /**禁止写入cookie */\n disabledWrite?: boolean;\n disabledClose?: boolean;\n tokens: { key: string; value: string }[];\n };\n cookies?: string[];\n}\n\nonMounted(() => {\n isSSRShowDialog.value = true;\n if (loginStore.showLogin) {\n handleLogin();\n }\n // iframe事件监听\n window.addEventListener('message', async e => {\n // 刷新登陆状态\n if (e.data.type == 'giikin-Logged') {\n const data: GiikinLogged = e.data;\n // eslint-disable-next-line no-console\n console.log(e.data);\n const token = Cookies.get('token');\n // const isProduction = importMetaEnv.value.MODE === 'production' || importMetaEnv.value.MODE === 'giiktok.production';\n const isProduction = importMetaEnv.value.MODE.includes('production');\n if (\n // 测试环境 但是需要登陆的情况\n (!isProduction && data?.data?.token) ||\n // 正式环境 登录成功 但是服务器token设置失败\n (isProduction && !token && data?.data?.token)\n ) {\n // loginStore.userToken = data.data.token;\n loginStore.userId = data.data.userId;\n const now = new Date();\n let time = now.getTime();\n time += 8 * 60 * 60 * 1000; // 8 小时之后的时间(单位:毫秒)\n now.setTime(time);\n const curDomain = getDomain();\n // 不禁用 则写入cookie\n if (!data.data.disabledWrite) {\n // cookieMap\n if (data.cookies && Array.isArray(data.cookies)) {\n data.cookies.forEach((cookie: string) => {\n document.cookie = cookie;\n });\n }\n // 可能出现测试环境调正式,需要写入token\n Cookies.set('token', data.data.token, { expires: now, domain: isProduction ? curDomain : undefined });\n // 本地开发时 写入token\n if (importMetaEnv.value.DEV && data.data.tokens) {\n data.data.tokens.forEach((token: { key: string; value: string }) => {\n Cookies.set(token.key, token.value, { expires: now, domain: curDomain });\n });\n }\n\n if (!Cookies.get('sso_user_id') && data.data.userId) {\n Cookies.set('sso_user_id', data.data.userId, {\n expires: now,\n domain: isProduction ? curDomain : undefined,\n });\n }\n }\n }\n if (!data.data.disabledClose) {\n // 触发登录成功监听\n if (data?.data?.token || data?.data?.loginSuccess) {\n await loginStore.triggerLoginResult(true);\n }\n // ElMessage.success('登录成功,请关闭弹窗');\n loginStore.showLogin = false;\n if (route.value && props.needRealodRouteNames.includes(route.value.name?.toString() ?? '')) {\n window.location.reload();\n }\n }\n }\n });\n});\nonUnmounted(() => {\n window.clearInterval(reloadTimer.value);\n});\n</script>\n"],"names":["useGlobalConfig","computed","unref","useLoginStore","ref","isString","isGiikin","resetEnvMode","envConfigs","urlJoin","isMobile","isDingTalk","getDomain","ElMessage","watch","onMounted","token","onUnmounted"],"mappings":"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"}
@@ -1 +1 @@
1
- export declare const version = "0.9.8-beta.1";
1
+ export declare const version = "0.9.8-beta.2";
package/lib/index.css CHANGED
@@ -894,42 +894,44 @@ video {
894
894
  .gm-flex-justify-between[data-v-c17deec9] {
895
895
  justify-content: space-between;
896
896
  }
897
- .circular[data-v-d7b04fae] {
898
- animation: loading-rotate-d7b04fae 2s linear infinite;
897
+ .gm-upload-pro-file {
898
+ line-height: normal;
899
899
  }
900
-
901
- .path[data-v-d7b04fae] {
902
- animation: loading-dash-d7b04fae 1.5s ease-in-out infinite;
903
- stroke-dasharray: 90, 150;
904
- stroke-dashoffset: 0;
905
- stroke: var(--el-color-primary);
906
- stroke-linecap: round;
900
+ .gm-upload-pro-file .el-checkbox-group {
901
+ font-size: unset;
907
902
  }
908
-
909
- @keyframes loading-rotate-d7b04fae {
910
- to {
911
- transform: rotate(360deg);
912
- }
903
+ .gm-upload-pro-file .el-checkbox {
904
+ position: absolute;
905
+ left: 10px;
906
+ top: 0;
907
+ z-index: 9;
913
908
  }
914
- @keyframes loading-dash-d7b04fae {
915
- 0% {
916
- stroke-dasharray: 1, 200;
917
- stroke-dashoffset: 0;
918
- }
919
- 50% {
920
- stroke-dasharray: 90, 150;
921
- stroke-dashoffset: -40px;
922
- }
923
- 100% {
924
- stroke-dasharray: 90, 150;
925
- stroke-dashoffset: -120px;
926
- }
909
+ .gm-upload-pro-file .el-upload-list--picture-card {
910
+ gap: 10px;
927
911
  }
928
-
929
- .gm-range-number .el-form-item[data-v-1ae16d96] {
912
+ .gm-upload-pro-file .el-upload-list__item {
930
913
  margin: 0;
931
914
  }
915
+ .gm-upload-pro-file .el-upload-list__item-file-name {
916
+ line-height: 1.7;
917
+ }
918
+ .gm-upload-pro-file .el-upload-dragger {
919
+ padding: 0;
920
+ border: none;
921
+ width: 100%;
922
+ height: 100%;
923
+ display: flex;
924
+ }
925
+ .gm-upload-pro-file .el-upload--picture-card {
926
+ border: none;
927
+ }
932
928
 
929
+ .gm-upload-pro-file-disabled .el-upload--picture-card {
930
+ display: none;
931
+ }
932
+ .gm-upload-pro-file-disabled .el-upload-list__item-status-label {
933
+ display: none;
934
+ }
933
935
  .gm-upload-pro-preview-dialog[data-v-80b383d8] [data-v-80b383d8] .el-dialog__body {
934
936
  padding: 0;
935
937
  }
@@ -938,42 +940,75 @@ video {
938
940
  width: auto;
939
941
  height: auto;
940
942
  }
941
- .gm-upload-pro-file {
942
- line-height: normal;
943
+ [data-v-79615afd] .gmSearchForm .el-form-item {
944
+ margin-right: 0;
945
+ margin-bottom: 4px;
943
946
  }
944
- .gm-upload-pro-file .el-checkbox-group {
945
- font-size: unset;
947
+ [data-v-050a4f74] .gmTableNoBorder .el-table__body .el-table__cell {
948
+ border-right: none;
946
949
  }
947
- .gm-upload-pro-file .el-checkbox {
950
+
951
+ [data-v-050a4f74] .gmTableNoBorder .el-table__inner-wrapper:before {
952
+ height: 0;
953
+ }
954
+
955
+ [data-v-050a4f74] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
956
+ height: 0;
957
+ }
958
+
959
+ [data-v-050a4f74] .gmTableNoBorder.el-table--border:after {
960
+ height: 0;
961
+ }
962
+
963
+ [data-v-050a4f74] .gmTableNoBorder.el-table--border:before {
964
+ height: 0;
965
+ }
966
+
967
+ [data-v-050a4f74] .gmTableNoBorder .el-table__border-left-patch {
968
+ height: 0;
969
+ }
970
+ .gm-upload-preview-dialog[data-v-c615121c] [data-v-c615121c] .el-dialog__body {
971
+ padding: 0;
972
+ }
973
+
974
+ .gm-upload-file-picture-card[data-v-c615121c] [data-v-c615121c] .el-upload-list__item, .gm-upload-file-picture-card[data-v-c615121c] [data-v-c615121c] .el-upload--picture-card {
975
+ width: auto;
976
+ height: auto;
977
+ }
978
+ .gm-upload-file {
979
+ line-height: normal;
980
+ }
981
+ .gm-upload-file li > .el-checkbox {
948
982
  position: absolute;
949
983
  left: 10px;
950
984
  top: 0;
951
985
  z-index: 9;
952
986
  }
953
- .gm-upload-pro-file .el-upload-list--picture-card {
987
+ .gm-upload-file .el-upload-list--picture-card {
954
988
  gap: 10px;
955
989
  }
956
- .gm-upload-pro-file .el-upload-list__item {
990
+ .gm-upload-file .el-upload-list__item {
957
991
  margin: 0;
992
+ border: none;
958
993
  }
959
- .gm-upload-pro-file .el-upload-list__item-file-name {
960
- line-height: 1.7;
994
+ .gm-upload-file .el-upload-list__item-file-name {
995
+ line-height: normal;
961
996
  }
962
- .gm-upload-pro-file .el-upload-dragger {
997
+ .gm-upload-file .el-upload-dragger {
963
998
  padding: 0;
964
999
  border: none;
965
1000
  width: 100%;
966
1001
  height: 100%;
967
1002
  display: flex;
968
1003
  }
969
- .gm-upload-pro-file .el-upload--picture-card {
1004
+ .gm-upload-file .el-upload--picture-card {
970
1005
  border: none;
971
1006
  }
972
1007
 
973
- .gm-upload-pro-file-disabled .el-upload--picture-card {
1008
+ .gm-upload-file-disabled .el-upload--picture-card {
974
1009
  display: none;
975
1010
  }
976
- .gm-upload-pro-file-disabled .el-upload-list__item-status-label {
1011
+ .gm-upload-file-disabled .el-upload-list__item-status-label {
977
1012
  display: none;
978
1013
  }
979
1014
  .gm-number-interval-single[data-v-4e6f4d6f] {
@@ -994,42 +1029,65 @@ video {
994
1029
  .gm-number-interval-single[data-v-4e6f4d6f]:hover .gm-number-interval-close[data-v-4e6f4d6f] {
995
1030
  display: flex;
996
1031
  }
997
- [data-v-79615afd] .gmSearchForm .el-form-item {
998
- margin-right: 0;
999
- margin-bottom: 4px;
1000
- }
1001
- [data-v-050a4f74] .gmTableNoBorder .el-table__body .el-table__cell {
1032
+ [data-v-3f2c8504] .gmTableNoBorder .el-table__body .el-table__cell {
1002
1033
  border-right: none;
1003
1034
  }
1004
1035
 
1005
- [data-v-050a4f74] .gmTableNoBorder .el-table__inner-wrapper:before {
1036
+ [data-v-3f2c8504] .gmTableNoBorder .el-table__inner-wrapper:before {
1006
1037
  height: 0;
1007
1038
  }
1008
1039
 
1009
- [data-v-050a4f74] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
1040
+ [data-v-3f2c8504] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
1010
1041
  height: 0;
1011
1042
  }
1012
1043
 
1013
- [data-v-050a4f74] .gmTableNoBorder.el-table--border:after {
1044
+ [data-v-3f2c8504] .gmTableNoBorder.el-table--border:after {
1014
1045
  height: 0;
1015
1046
  }
1016
1047
 
1017
- [data-v-050a4f74] .gmTableNoBorder.el-table--border:before {
1048
+ [data-v-3f2c8504] .gmTableNoBorder.el-table--border:before {
1018
1049
  height: 0;
1019
1050
  }
1020
1051
 
1021
- [data-v-050a4f74] .gmTableNoBorder .el-table__border-left-patch {
1052
+ [data-v-3f2c8504] .gmTableNoBorder .el-table__border-left-patch {
1022
1053
  height: 0;
1023
1054
  }
1024
1055
 
1025
- .pagination-container[data-v-47d35e7b] {
1026
- background: #fff;
1027
- padding-top: 12px;
1056
+ .gm-range-number .el-form-item[data-v-1ae16d96] {
1057
+ margin: 0;
1028
1058
  }
1029
- .pagination-container.hidden[data-v-47d35e7b] {
1030
- display: none;
1059
+
1060
+ .circular[data-v-d7b04fae] {
1061
+ animation: loading-rotate-d7b04fae 2s linear infinite;
1062
+ }
1063
+
1064
+ .path[data-v-d7b04fae] {
1065
+ animation: loading-dash-d7b04fae 1.5s ease-in-out infinite;
1066
+ stroke-dasharray: 90, 150;
1067
+ stroke-dashoffset: 0;
1068
+ stroke: var(--el-color-primary);
1069
+ stroke-linecap: round;
1031
1070
  }
1032
1071
 
1072
+ @keyframes loading-rotate-d7b04fae {
1073
+ to {
1074
+ transform: rotate(360deg);
1075
+ }
1076
+ }
1077
+ @keyframes loading-dash-d7b04fae {
1078
+ 0% {
1079
+ stroke-dasharray: 1, 200;
1080
+ stroke-dashoffset: 0;
1081
+ }
1082
+ 50% {
1083
+ stroke-dasharray: 90, 150;
1084
+ stroke-dashoffset: -40px;
1085
+ }
1086
+ 100% {
1087
+ stroke-dasharray: 90, 150;
1088
+ stroke-dashoffset: -120px;
1089
+ }
1090
+ }
1033
1091
  @charset "UTF-8";
1034
1092
  .custom-operate-drawer .el-drawer__header {
1035
1093
  padding: 10px 15px;
@@ -1086,29 +1144,6 @@ video {
1086
1144
  border-radius: 10px;
1087
1145
  background: #eee;
1088
1146
  }
1089
- [data-v-3f2c8504] .gmTableNoBorder .el-table__body .el-table__cell {
1090
- border-right: none;
1091
- }
1092
-
1093
- [data-v-3f2c8504] .gmTableNoBorder .el-table__inner-wrapper:before {
1094
- height: 0;
1095
- }
1096
-
1097
- [data-v-3f2c8504] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
1098
- height: 0;
1099
- }
1100
-
1101
- [data-v-3f2c8504] .gmTableNoBorder.el-table--border:after {
1102
- height: 0;
1103
- }
1104
-
1105
- [data-v-3f2c8504] .gmTableNoBorder.el-table--border:before {
1106
- height: 0;
1107
- }
1108
-
1109
- [data-v-3f2c8504] .gmTableNoBorder .el-table__border-left-patch {
1110
- height: 0;
1111
- }
1112
1147
  @charset "UTF-8";
1113
1148
  .table-custom-header-drawer .el-drawer__header {
1114
1149
  padding: 10px 15px;
@@ -1165,47 +1200,11 @@ video {
1165
1200
  border-radius: 10px;
1166
1201
  background: #eee;
1167
1202
  }
1168
- .gm-upload-preview-dialog[data-v-c615121c] [data-v-c615121c] .el-dialog__body {
1169
- padding: 0;
1170
- }
1171
1203
 
1172
- .gm-upload-file-picture-card[data-v-c615121c] [data-v-c615121c] .el-upload-list__item, .gm-upload-file-picture-card[data-v-c615121c] [data-v-c615121c] .el-upload--picture-card {
1173
- width: auto;
1174
- height: auto;
1175
- }
1176
- .gm-upload-file {
1177
- line-height: normal;
1178
- }
1179
- .gm-upload-file li > .el-checkbox {
1180
- position: absolute;
1181
- left: 10px;
1182
- top: 0;
1183
- z-index: 9;
1184
- }
1185
- .gm-upload-file .el-upload-list--picture-card {
1186
- gap: 10px;
1187
- }
1188
- .gm-upload-file .el-upload-list__item {
1189
- margin: 0;
1190
- border: none;
1191
- }
1192
- .gm-upload-file .el-upload-list__item-file-name {
1193
- line-height: normal;
1194
- }
1195
- .gm-upload-file .el-upload-dragger {
1196
- padding: 0;
1197
- border: none;
1198
- width: 100%;
1199
- height: 100%;
1200
- display: flex;
1201
- }
1202
- .gm-upload-file .el-upload--picture-card {
1203
- border: none;
1204
+ .pagination-container[data-v-47d35e7b] {
1205
+ background: #fff;
1206
+ padding-top: 12px;
1204
1207
  }
1205
-
1206
- .gm-upload-file-disabled .el-upload--picture-card {
1208
+ .pagination-container.hidden[data-v-47d35e7b] {
1207
1209
  display: none;
1208
1210
  }
1209
- .gm-upload-file-disabled .el-upload-list__item-status-label {
1210
- display: none;
1211
- }
@@ -1,6 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var index = require('../../../hooks/base/useGlobalConfig/index.js');
4
+ var vue = require('vue');
4
5
  var vueRouter = require('vue-router');
5
6
 
6
7
  function transformRouteValue(value, defaultValue, transform) {
@@ -18,13 +19,15 @@ function transformRouteValue(value, defaultValue, transform) {
18
19
  }
19
20
  function getRouteQuery(name, options) {
20
21
  const router = index.useGlobalConfig("router");
21
- const { route = router.value?.currentRoute.value || vueRouter.useRoute(), transform, defaultValue } = options || {};
22
+ const currentRoute = vue.unref(router.value?.currentRoute);
23
+ const { route = currentRoute || vueRouter.useRoute(), transform, defaultValue } = options || {};
22
24
  const queryValue = route.query[name];
23
25
  return transformRouteValue(queryValue, defaultValue, transform);
24
26
  }
25
27
  function getRouteParams(name, options) {
26
28
  const router = index.useGlobalConfig("router");
27
- const { route = router.value?.currentRoute.value || vueRouter.useRoute(), transform, defaultValue } = options || {};
29
+ const currentRoute = vue.unref(router.value?.currentRoute);
30
+ const { route = currentRoute || vueRouter.useRoute(), transform, defaultValue } = options || {};
28
31
  const paramsValue = route.params[name];
29
32
  return transformRouteValue(paramsValue, defaultValue, transform);
30
33
  }
@@ -1 +1 @@
1
- {"version":3,"file":"router.js","sources":["../../../../../../packages/utils/src/vue/router.ts"],"sourcesContent":["import { useGlobalConfig } from '@giime/hooks/base/useGlobalConfig';\nimport { useRoute } from 'vue-router';\nimport type { RouteParamValueRaw } from 'vue-router';\n\nexport type RouteQueryValueRaw = RouteParamValueRaw | string[];\nexport type RouteParamsValueRaw = RouteParamValueRaw;\n\n/** 转换函数类型,可以是函数或包含 get 方法的对象 */\nexport type TransformFunction<V, R> =\n | ((val: V) => R)\n | {\n get?: (value: V) => R;\n };\n\nexport interface GetRouteValueOptions<V, R> {\n /** 默认值 */\n defaultValue?: V;\n /** 路由实例,不传则使用 useRoute() */\n route?: ReturnType<typeof useRoute>;\n /** 转换函数,可以是函数或包含 get 方法的对象 */\n transform?: TransformFunction<V, R>;\n}\n\n/**\n * 通用的路由值获取和转换逻辑\n * @param value - 原始值\n * @param defaultValue - 默认值\n * @param transform - 转换函数\n * @returns 转换后的值\n */\nfunction transformRouteValue<T, K>(value: T | undefined, defaultValue: T | undefined, transform?: TransformFunction<T, K>): K {\n // 确定最终值\n const finalValue = value !== undefined ? value : defaultValue;\n\n // 如果没有 transform,直接返回\n if (!transform) {\n return finalValue as unknown as K;\n }\n\n // 如果 transform 是函数,直接调用\n if (typeof transform === 'function') {\n return transform(finalValue as T);\n }\n\n // 如果 transform 是对象,使用 get 方法\n if (transform.get) {\n return transform.get(finalValue as T);\n }\n\n return finalValue as unknown as K;\n}\n\n/**\n * 获取路由 query 参数的值(非响应式)\n * @param name - query 参数名称\n * @param options - 配置选项\n * @returns 转换后的 query 值\n */\nexport function getRouteQuery<T extends RouteQueryValueRaw = RouteQueryValueRaw, K = T>(name: string, options?: GetRouteValueOptions<T, K>): K {\n const router = useGlobalConfig('router');\n const { route = router.value?.currentRoute.value || useRoute(), transform, defaultValue } = options || {};\n\n // 获取原始 query 值\n const queryValue = route.query[name] as T | undefined;\n\n return transformRouteValue(queryValue, defaultValue, transform);\n}\n\n/**\n * 获取路由 params 参数的值(非响应式)\n * @param name - params 参数名称\n * @param options - 配置选项\n * @returns 转换后的 params 值\n */\nexport function getRouteParams<T extends RouteParamsValueRaw = RouteParamsValueRaw, K = T>(name: string, options?: GetRouteValueOptions<T, K>): K {\n const router = useGlobalConfig('router');\n const { route = router.value?.currentRoute.value || useRoute(), transform, defaultValue } = options || {};\n\n // 获取原始 params 值\n const paramsValue = route.params[name] as T | undefined;\n\n return transformRouteValue(paramsValue, defaultValue, transform);\n}\n"],"names":["useGlobalConfig","useRoute"],"mappings":";;;;;AA8BA,SAAS,mBAAA,CAA0B,KAAA,EAAsB,YAAA,EAA6B,SAAA,EAAwC;AAE5H,EAAA,MAAM,UAAA,GAAa,KAAA,KAAU,KAAA,CAAA,GAAY,KAAA,GAAQ,YAAA;AAGjD,EAAA,IAAI,CAAC,SAAA,EAAW;AACd,IAAA,OAAO,UAAA;AAAA,EACT;AAGA,EAAA,IAAI,OAAO,cAAc,UAAA,EAAY;AACnC,IAAA,OAAO,UAAU,UAAe,CAAA;AAAA,EAClC;AAGA,EAAA,IAAI,UAAU,GAAA,EAAK;AACjB,IAAA,OAAO,SAAA,CAAU,IAAI,UAAe,CAAA;AAAA,EACtC;AAEA,EAAA,OAAO,UAAA;AACT;AAQO,SAAS,aAAA,CAAwE,MAAc,OAAA,EAAyC;AAC7I,EAAA,MAAM,MAAA,GAASA,sBAAgB,QAAQ,CAAA;AACvC,EAAA,MAAM,EAAE,KAAA,GAAQ,MAAA,CAAO,KAAA,EAAO,YAAA,CAAa,KAAA,IAASC,kBAAA,EAAS,EAAG,SAAA,EAAW,YAAA,EAAa,GAAI,OAAA,IAAW,EAAC;AAGxG,EAAA,MAAM,UAAA,GAAa,KAAA,CAAM,KAAA,CAAM,IAAI,CAAA;AAEnC,EAAA,OAAO,mBAAA,CAAoB,UAAA,EAAY,YAAA,EAAc,SAAS,CAAA;AAChE;AAQO,SAAS,cAAA,CAA2E,MAAc,OAAA,EAAyC;AAChJ,EAAA,MAAM,MAAA,GAASD,sBAAgB,QAAQ,CAAA;AACvC,EAAA,MAAM,EAAE,KAAA,GAAQ,MAAA,CAAO,KAAA,EAAO,YAAA,CAAa,KAAA,IAASC,kBAAA,EAAS,EAAG,SAAA,EAAW,YAAA,EAAa,GAAI,OAAA,IAAW,EAAC;AAGxG,EAAA,MAAM,WAAA,GAAc,KAAA,CAAM,MAAA,CAAO,IAAI,CAAA;AAErC,EAAA,OAAO,mBAAA,CAAoB,WAAA,EAAa,YAAA,EAAc,SAAS,CAAA;AACjE;;;;;"}
1
+ {"version":3,"file":"router.js","sources":["../../../../../../packages/utils/src/vue/router.ts"],"sourcesContent":["import { useGlobalConfig } from '@giime/hooks/base/useGlobalConfig';\nimport { unref } from 'vue';\nimport { useRoute } from 'vue-router';\nimport type { RouteLocationNormalizedLoaded, RouteParamValueRaw } from 'vue-router';\n\nexport type RouteQueryValueRaw = RouteParamValueRaw | string[];\nexport type RouteParamsValueRaw = RouteParamValueRaw;\n\n/** 转换函数类型,可以是函数或包含 get 方法的对象 */\nexport type TransformFunction<V, R> =\n | ((val: V) => R)\n | {\n get?: (value: V) => R;\n };\n\nexport interface GetRouteValueOptions<V, R> {\n /** 默认值 */\n defaultValue?: V;\n /** 路由实例,不传则使用 useRoute() */\n route?: ReturnType<typeof useRoute>;\n /** 转换函数,可以是函数或包含 get 方法的对象 */\n transform?: TransformFunction<V, R>;\n}\n\n/**\n * 通用的路由值获取和转换逻辑\n * @param value - 原始值\n * @param defaultValue - 默认值\n * @param transform - 转换函数\n * @returns 转换后的值\n */\nfunction transformRouteValue<T, K>(value: T | undefined, defaultValue: T | undefined, transform?: TransformFunction<T, K>): K {\n // 确定最终值\n const finalValue = value !== undefined ? value : defaultValue;\n\n // 如果没有 transform,直接返回\n if (!transform) {\n return finalValue as unknown as K;\n }\n\n // 如果 transform 是函数,直接调用\n if (typeof transform === 'function') {\n return transform(finalValue as T);\n }\n\n // 如果 transform 是对象,使用 get 方法\n if (transform.get) {\n return transform.get(finalValue as T);\n }\n\n return finalValue as unknown as K;\n}\n\n/**\n * 获取路由 query 参数的值(非响应式)\n * @param name - query 参数名称\n * @param options - 配置选项\n * @returns 转换后的 query 值\n */\nexport function getRouteQuery<T extends RouteQueryValueRaw = RouteQueryValueRaw, K = T>(name: string, options?: GetRouteValueOptions<T, K>): K {\n const router = useGlobalConfig('router');\n const currentRoute = unref(router.value?.currentRoute);\n const { route = currentRoute || useRoute(), transform, defaultValue } = options || {};\n\n // 获取原始 query 值\n const queryValue = route.query[name] as T | undefined;\n\n return transformRouteValue(queryValue, defaultValue, transform);\n}\n\n/**\n * 获取路由 params 参数的值(非响应式)\n * @param name - params 参数名称\n * @param options - 配置选项\n * @returns 转换后的 params 值\n */\nexport function getRouteParams<T extends RouteParamsValueRaw = RouteParamsValueRaw, K = T>(name: string, options?: GetRouteValueOptions<T, K>): K {\n const router = useGlobalConfig('router');\n const currentRoute = unref(router.value?.currentRoute);\n const { route = currentRoute || useRoute(), transform, defaultValue } = options || {};\n\n // 获取原始 params 值\n const paramsValue = route.params[name] as T | undefined;\n\n return transformRouteValue(paramsValue, defaultValue, transform);\n}\n"],"names":["useGlobalConfig","unref","useRoute"],"mappings":";;;;;;AA+BA,SAAS,mBAAA,CAA0B,KAAA,EAAsB,YAAA,EAA6B,SAAA,EAAwC;AAE5H,EAAA,MAAM,UAAA,GAAa,KAAA,KAAU,KAAA,CAAA,GAAY,KAAA,GAAQ,YAAA;AAGjD,EAAA,IAAI,CAAC,SAAA,EAAW;AACd,IAAA,OAAO,UAAA;AAAA,EACT;AAGA,EAAA,IAAI,OAAO,cAAc,UAAA,EAAY;AACnC,IAAA,OAAO,UAAU,UAAe,CAAA;AAAA,EAClC;AAGA,EAAA,IAAI,UAAU,GAAA,EAAK;AACjB,IAAA,OAAO,SAAA,CAAU,IAAI,UAAe,CAAA;AAAA,EACtC;AAEA,EAAA,OAAO,UAAA;AACT;AAQO,SAAS,aAAA,CAAwE,MAAc,OAAA,EAAyC;AAC7I,EAAA,MAAM,MAAA,GAASA,sBAAgB,QAAQ,CAAA;AACvC,EAAA,MAAM,YAAA,GAAeC,SAAA,CAAM,MAAA,CAAO,KAAA,EAAO,YAAY,CAAA;AACrD,EAAA,MAAM,EAAE,QAAQ,YAAA,IAAiBC,kBAAA,IAAY,SAAA,EAAW,YAAA,EAAa,GAAI,OAAA,IAAW,EAAC;AAGrF,EAAA,MAAM,UAAA,GAAa,KAAA,CAAM,KAAA,CAAM,IAAI,CAAA;AAEnC,EAAA,OAAO,mBAAA,CAAoB,UAAA,EAAY,YAAA,EAAc,SAAS,CAAA;AAChE;AAQO,SAAS,cAAA,CAA2E,MAAc,OAAA,EAAyC;AAChJ,EAAA,MAAM,MAAA,GAASF,sBAAgB,QAAQ,CAAA;AACvC,EAAA,MAAM,YAAA,GAAeC,SAAA,CAAM,MAAA,CAAO,KAAA,EAAO,YAAY,CAAA;AACrD,EAAA,MAAM,EAAE,QAAQ,YAAA,IAAiBC,kBAAA,IAAY,SAAA,EAAW,YAAA,EAAa,GAAI,OAAA,IAAW,EAAC;AAGrF,EAAA,MAAM,WAAA,GAAc,KAAA,CAAM,MAAA,CAAO,IAAI,CAAA;AAErC,EAAA,OAAO,mBAAA,CAAoB,WAAA,EAAa,YAAA,EAAc,SAAS,CAAA;AACjE;;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "giime",
3
- "version": "0.9.8-beta.1",
3
+ "version": "0.9.8-beta.2",
4
4
  "description": "A Component Library for Vue 3",
5
5
  "keywords": [
6
6
  "giime",