@utogether/udp-core 2.0.0-beta.26 → 2.0.0-beta.27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (161) hide show
  1. package/dist/403-gdcH0-Bo.js +65 -0
  2. package/dist/404-Se2SF97M.js +65 -0
  3. package/dist/500-B6j9AqLo.js +67 -0
  4. package/dist/AuthorityInfo-CQ8ydZvr.js +4 -0
  5. package/dist/AuthorityInfo.vue_vue_type_style_index_0_lang-C4NRvS8p.js +100 -0
  6. package/dist/AuthorityPanel-lVnZ5bce.js +4 -0
  7. package/dist/AuthorityPanel.vue_vue_type_style_index_0_lang-nsfhDlvV.js +113 -0
  8. package/dist/Company-BzSVBSC4.js +25 -0
  9. package/dist/CompanyPanel-DBjZB4aJ.js +204 -0
  10. package/dist/DataSet-iBHzs75s.js +147 -0
  11. package/dist/Department-BkgseHo8.js +25 -0
  12. package/dist/DepartmentPanel-Sen93_2M.js +249 -0
  13. package/dist/DesignPanel-pqDcwaFC.js +4 -0
  14. package/dist/DesignPanel.vue_vue_type_style_index_0_lang-BjtYyEw7.js +1013 -0
  15. package/dist/DictView-CJLG4LlE.js +110 -0
  16. package/dist/InvOrganization-D0Jq1IAa.js +74 -0
  17. package/dist/Org-CO_1WT39.js +39 -0
  18. package/dist/Preview-DLI4Bwel.js +48 -0
  19. package/dist/ReportDefine-Cw46OnJ_.js +10 -0
  20. package/dist/ReportDesign-D4sHTXT7.js +165 -0
  21. package/dist/ReportQuery-DtOCvQSN.js +74 -0
  22. package/dist/ReportQueryFrom-QjL-ETPq.js +4 -0
  23. package/dist/ReportQueryFrom.vue_vue_type_style_index_0_lang-Dj9ne87n.js +177 -0
  24. package/dist/ReportTemplate-BxAgc_Aj.js +161 -0
  25. package/dist/Role-Df77BBD-.js +25 -0
  26. package/dist/RoleAssign-BrunouML.js +26 -0
  27. package/dist/RolePanel-DSVwqhiD.js +4 -0
  28. package/dist/RolePanel-HLA7XBlN.js +4 -0
  29. package/dist/RolePanel.vue_vue_type_script_setup_true_lang-CKlbqRa5.js +132 -0
  30. package/dist/RolePanel.vue_vue_type_script_setup_true_lang-CN0rUxKz.js +152 -0
  31. package/dist/ScrollPanel.vue_vue_type_style_index_0_lang-D_FeSXKv.js +99 -0
  32. package/dist/Staff-BeL1xcRf.js +26 -0
  33. package/dist/StaffInfo-CIfnltyX.js +4 -0
  34. package/dist/StaffInfo.vue_vue_type_script_setup_true_lang-DbLFwWfG.js +107 -0
  35. package/dist/StaffPanel-BV2CHWac.js +4 -0
  36. package/dist/StaffPanel.vue_vue_type_script_setup_true_lang-CvT-Vp2G.js +153 -0
  37. package/dist/SysUser-DPfNvthk.js +15 -0
  38. package/dist/SysUserPanel-CoLKYlQE.js +4 -0
  39. package/dist/SysUserPanel.vue_vue_type_script_setup_true_lang-lcO3Cjbq.js +353 -0
  40. package/dist/SystemMenu-sdj1dRDA.js +156 -0
  41. package/dist/UserInfo-CTX4hhFl.js +4 -0
  42. package/dist/UserInfo.vue_vue_type_style_index_0_lang-ClhCd_8z.js +160 -0
  43. package/dist/await-to-js.es5-Bv3Eu4mi.js +10 -0
  44. package/dist/childView-BDmWwJO5.js +4 -0
  45. package/dist/childView-Dx3ACtHa.js +4 -0
  46. package/dist/childView.vue_vue_type_style_index_0_lang-CfKq_0FN.js +183 -0
  47. package/dist/childView.vue_vue_type_style_index_0_lang-DxZNtkhd.js +143 -0
  48. package/dist/code-rule-cvN4gYC_.js +148 -0
  49. package/dist/core.es.js +24 -6
  50. package/dist/cron-task-B0TkxFdp.js +135 -0
  51. package/dist/flow-task-PoDnE_kE.js +10 -0
  52. package/dist/frameView-5cy5BSgS.js +43 -0
  53. package/dist/img/minicolors.png +0 -0
  54. package/dist/index-C5WRTwvI.js +3006 -0
  55. package/dist/layout-home-DrARg-3o.js +232 -0
  56. package/dist/layoutView-25v_ngk5.js +3191 -0
  57. package/dist/log-in-Bmz5Uhbt.js +116 -0
  58. package/dist/log-out-B-8m3oNj.js +130 -0
  59. package/dist/login-Cmp2RvvW.js +217 -0
  60. package/dist/login-log-CVvRgZSu.js +70 -0
  61. package/dist/lov-view-BATtzw2X.js +99 -0
  62. package/dist/menuInfo-BIvrE7nm.js +4 -0
  63. package/dist/menuInfo.vue_vue_type_style_index_0_lang-B6USomit.js +360 -0
  64. package/dist/pda-app-CzHVyeEa.js +707 -0
  65. package/dist/redirect-DTz8GSnv.js +15 -0
  66. package/dist/resource-Y5lGB38n.js +97 -0
  67. package/dist/su-welcome-CXA6OzBw.js +878 -0
  68. package/dist/sys-config-CqO03LeC.js +385 -0
  69. package/dist/udp-core.css +1 -2
  70. package/dist/useNav-C-rCgubt.js +84 -0
  71. package/dist/utogether-MlnyYtNS.js +4 -0
  72. package/dist/wecom-push-B75FLee5.js +70 -0
  73. package/index.ts +3 -2
  74. package/package.json +1 -1
  75. package/src/App.vue +79 -78
  76. package/src/api/index.ts +1 -1
  77. package/src/components/SuQrcode/src/index.tsx +231 -236
  78. package/src/layout/components/lay-panel/index.vue +2 -6
  79. package/src/layout/components/lay-search/components/SearchModal.vue +7 -3
  80. package/src/main.ts +25 -23
  81. package/src/router/index.ts +156 -187
  82. package/src/store/modules/system.ts +7 -0
  83. package/src/style/vxetable.scss +372 -364
  84. package/src/utils/authority/index.ts +46 -29
  85. package/src/utils/udp/http/index.ts +115 -64
  86. package/src/utils/udp/http/types.d.ts +15 -14
  87. package/src/views/login/login-view.vue +4 -21
  88. package/src/views/organization/department/DepartmentPanel.vue +3 -4
  89. package/src/views/system/sys/sys-config.vue +344 -344
  90. package/src/views/uhome/components/home-todo.vue +179 -178
  91. package/src/views/ulogin/login.vue +5 -9
  92. package/tsconfig.json +2 -3
  93. package/types/global.d.ts +234 -234
  94. package/vite.config.ts +2 -1
  95. package/dist/403-D6Wb3JJh.js +0 -72
  96. package/dist/404-B_HNbPNV.js +0 -72
  97. package/dist/500-BMemTTy1.js +0 -77
  98. package/dist/AuthorityInfo-6wHxwiFM.js +0 -91
  99. package/dist/AuthorityPanel-OqF_DvXA.js +0 -98
  100. package/dist/Company-BLXSfow0.js +0 -21
  101. package/dist/CompanyPanel-B4kRZ5Cg.js +0 -199
  102. package/dist/DataSet-CuGZcKC-.js +0 -141
  103. package/dist/Department-oFhsa7cd.js +0 -21
  104. package/dist/DepartmentPanel-B1UGpu-r.js +0 -242
  105. package/dist/DepartmentPanel-BL58AdoT.js +0 -2
  106. package/dist/DesignPanel-DmkFVw1N.js +0 -1196
  107. package/dist/DictView-CC5yMzOq.js +0 -100
  108. package/dist/File-WJXjGYxr.js +0 -89
  109. package/dist/InvOrganization-BwMmD8Ua.js +0 -76
  110. package/dist/Org-HgnOWubi.js +0 -76
  111. package/dist/Preview-CAzWxLmP.js +0 -45
  112. package/dist/ReIcon-DecitXmg.js +0 -413
  113. package/dist/ReportDefine-BgLM-Rjk.js +0 -10
  114. package/dist/ReportDesign-DwchGG2P.js +0 -158
  115. package/dist/ReportQuery-D5jaRJEn.js +0 -101
  116. package/dist/ReportQueryFrom-CNlmtYey.js +0 -198
  117. package/dist/ReportTemplate-CNcTmccs.js +0 -162
  118. package/dist/Role-Be8WfdCA.js +0 -21
  119. package/dist/RoleAssign-CtehGAUf.js +0 -22
  120. package/dist/RolePanel-CAwITg_q.js +0 -131
  121. package/dist/RolePanel-SN0FGFZ7.js +0 -176
  122. package/dist/ScrollPanel-DW30pGz1.js +0 -88
  123. package/dist/Staff-V2YsNKcj.js +0 -22
  124. package/dist/StaffInfo-CKRPW0r4.js +0 -149
  125. package/dist/StaffPanel-BxcgMg7u.js +0 -143
  126. package/dist/SysUser-Dxyj5w5m.js +0 -12
  127. package/dist/SysUserPanel-DI6CWcZo.js +0 -365
  128. package/dist/SystemMenu-BBHREM8T.js +0 -154
  129. package/dist/UserInfo-BMVQ0xwE.js +0 -194
  130. package/dist/_plugin-vue_export-helper-C6QCLu9I.js +0 -8
  131. package/dist/api-BFNxcxSN.js +0 -30
  132. package/dist/authority-BJFEUdrh.js +0 -20
  133. package/dist/await-to-js.es5-DkWYmPXW.js +0 -10
  134. package/dist/childView-BBjPEraB.js +0 -184
  135. package/dist/childView-DNqG2UVm.js +0 -181
  136. package/dist/code-rule-QFrhqFrW.js +0 -151
  137. package/dist/contant-Q77dU_V3.js +0 -4
  138. package/dist/cron-task-BpUDKEAU.js +0 -131
  139. package/dist/flow-task-DAc2NrDU.js +0 -11
  140. package/dist/frameView-Di0zJZUR.js +0 -39
  141. package/dist/layout-home-BVp7vYLR.js +0 -239
  142. package/dist/layoutView-B6Mx2ERA.js +0 -2662
  143. package/dist/log-in-BrNB0mLz.js +0 -117
  144. package/dist/log-out-dYfqvzy6.js +0 -111
  145. package/dist/login-D_Hjy3Jd.js +0 -231
  146. package/dist/login-log-CJak-ANA.js +0 -79
  147. package/dist/lov-view-DM5Nm5tW.js +0 -95
  148. package/dist/menuInfo-BlOY1KZW.js +0 -346
  149. package/dist/mitt-CQgI7DYU.js +0 -27
  150. package/dist/pda-app-CA7YI37u.js +0 -589
  151. package/dist/redirect-N0k4tImU.js +0 -16
  152. package/dist/resource-CfQTHFcs.js +0 -94
  153. package/dist/su-welcome-DVD3S_du.js +0 -799
  154. package/dist/sys-config-Ddb3vBpK.js +0 -316
  155. package/dist/system-Cm3lyBas.js +0 -1528
  156. package/dist/udp-core-DaQd5CF1.js +0 -2028
  157. package/dist/useDataThemeChange-DJ4K3VGp.js +0 -226
  158. package/dist/useNav-BhOJIdrJ.js +0 -106
  159. package/dist/utogether-l7JXs4Lv.js +0 -4
  160. package/dist/water-mark-WDQZ9YqB.js +0 -119
  161. package/dist/wecom-push-kWkAVRCj.js +0 -77
@@ -0,0 +1,84 @@
1
+ import { computed as t } from "vue";
2
+ import { storeToRefs as M } from "pinia";
3
+ import { useRouter as N } from "vue-router";
4
+ import { useGlobal as O, storageLocal as q, cookies as u } from "@utogether/utils";
5
+ import { R as x, W as a, T as A, X as B, y as G, e as m, j as z, L as d, V as i, M as K, u as U, z as $, w as j, J as W, G as F, D as J, B as V } from "./index-C5WRTwvI.js";
6
+ const X = "当前路由配置不正确,请检查配置";
7
+ function te() {
8
+ const r = x(), g = N().options.routes, { wholeMenus: f } = M(a()), p = t(() => ({
9
+ width: "100%",
10
+ display: "flex",
11
+ alignItems: "center",
12
+ justifyContent: "space-between",
13
+ overflow: "hidden"
14
+ })), h = t(() => (e, o) => ({
15
+ background: e === o ? A().epThemeColor : "",
16
+ color: e === o ? "#f4f4f5" : "#000"
17
+ })), w = t(() => (e, o) => e === o ? "" : "dark:hover:text-primary!"), l = t(() => B().getUserInfo || {}), v = t(() => l.value ? { marginRight: "10px" } : ""), y = t(() => !r.getSidebarStatus), S = t(() => r.getDevice), { $storage: c } = O(), k = t(() => c?.layout?.layout), n = t(() => (q.getItem(G) || {})?.title || "U-DP");
18
+ function P() {
19
+ document.title = z().MODE !== "staging" ? n.value : `${n.value}•测试`;
20
+ }
21
+ function R() {
22
+ J(), i().handleTags("equal", [...K]), u.remove(U), u.remove($), u.remove(j), a().setWholeMenus([]), i().handleTags("splice", "", {
23
+ startIndex: 1,
24
+ length: i()?.multiTags?.length
25
+ }), a().clearAllCachePage(), W(), V(), d.push("/login");
26
+ }
27
+ function I() {
28
+ d.push("/welcome");
29
+ }
30
+ function T() {
31
+ m.emit("openPanel");
32
+ }
33
+ function C() {
34
+ r.toggleSideBar();
35
+ }
36
+ function D(e) {
37
+ e?.handleResize();
38
+ }
39
+ function H(e) {
40
+ if (!e.children) return console.error(X);
41
+ const o = /^http(s?):\/\//, s = e.children[0]?.path;
42
+ return o.test(s) ? e.path + "/" + s : s;
43
+ }
44
+ function E(e) {
45
+ f.value.length === 0 || L(e) || m.emit("changLayoutRoute", e);
46
+ }
47
+ function L(e) {
48
+ return F.includes(e);
49
+ }
50
+ function b() {
51
+ const e = { name: "$input", props: { type: "password" } };
52
+ return [
53
+ { field: "oldUserPwd", title: "message.udp.oldPwd", required: !0, itemRender: e },
54
+ { field: "userPwd", title: "message.udp.newPwd", required: !0, itemRender: e },
55
+ { field: "confirmPwd", title: "message.udp.confirmPwd", required: !0, itemRender: e }
56
+ ];
57
+ }
58
+ return {
59
+ title: n,
60
+ device: S,
61
+ layout: k,
62
+ logout: R,
63
+ routers: g,
64
+ $storage: c,
65
+ backHome: I,
66
+ onPanel: T,
67
+ getDivStyle: p,
68
+ setDocumentTitle: P,
69
+ toggleSideBar: C,
70
+ menuSelect: E,
71
+ handleResize: D,
72
+ resolvePath: H,
73
+ isCollapse: y,
74
+ appHook: r,
75
+ userInfo: l,
76
+ avatarsStyle: v,
77
+ getDropdownItemStyle: h,
78
+ getDropdownItemClass: w,
79
+ passwordItems: b
80
+ };
81
+ }
82
+ export {
83
+ te as u
84
+ };
@@ -0,0 +1,4 @@
1
+ const A = "data:image/png;base64,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";
2
+ export {
3
+ A as u
4
+ };
@@ -0,0 +1,70 @@
1
+ import { defineComponent as o, ref as u, resolveComponent as s, openBlock as c, createElementBlock as l, createVNode as p } from "vue";
2
+ import { useRender as m } from "@utogether/utils";
3
+ const f = "/upfm/v1/wechatConfig", h = /* @__PURE__ */ o({
4
+ name: "WecomPush",
5
+ __name: "wecom-push",
6
+ setup(a) {
7
+ const r = u(null), t = [{
8
+ field: "configCode",
9
+ title: "message.udp.configCode"
10
+ }], e = m(), d = [{
11
+ type: "checkbox",
12
+ width: 50,
13
+ align: "center"
14
+ }, {
15
+ field: "configCode",
16
+ required: !0,
17
+ title: "message.udp.configCode",
18
+ editRender: e.renderInput()
19
+ }, {
20
+ field: "corpId",
21
+ required: !0,
22
+ title: "message.udp.corpId",
23
+ editRender: e.renderInput()
24
+ }, {
25
+ field: "agentId",
26
+ required: !0,
27
+ title: "message.udp.agentId",
28
+ editRender: e.renderInput()
29
+ }, {
30
+ field: "corpSecret",
31
+ required: !0,
32
+ title: "message.udp.corpSecret",
33
+ editRender: e.renderInput()
34
+ }, {
35
+ field: "appUrl",
36
+ title: "message.udp.redirectUrl",
37
+ required: !0,
38
+ editRender: e.renderInput()
39
+ }, {
40
+ field: "title",
41
+ title: "message.udp.pushTitle",
42
+ required: !0,
43
+ editRender: e.renderInput()
44
+ }, {
45
+ field: "picUrl",
46
+ title: "message.udp.picUrl",
47
+ editRender: e.renderInput()
48
+ }, {
49
+ field: "remarks",
50
+ editRender: e.renderInput()
51
+ }], n = {
52
+ editActived() {
53
+ }
54
+ };
55
+ return (g, I) => {
56
+ const i = s("ut-grid");
57
+ return c(), l("div", null, [p(i, {
58
+ ref_key: "xgrid",
59
+ ref: r,
60
+ items: t,
61
+ columns: d,
62
+ url: f,
63
+ events: n
64
+ }, null, 512)]);
65
+ };
66
+ }
67
+ });
68
+ export {
69
+ h as default
70
+ };
package/index.ts CHANGED
@@ -2,7 +2,7 @@
2
2
  * @Author: levi7754 levi7754@163.com
3
3
  * @Date: 2024-04-14 19:10:28
4
4
  * @LastEditors: levi7754 levi7754@163.com
5
- * @LastEditTime: 2026-01-23 18:04:26
5
+ * @LastEditTime: 2026-07-01 13:56:21
6
6
  * @FilePath: /udp-front/packages/udp-core/index.ts
7
7
  * @Description:
8
8
  */
@@ -11,7 +11,7 @@ import UInit from './src/main';
11
11
  export default UInit;
12
12
 
13
13
  import { store } from './src/store';
14
- import hasAuthority from './src/utils/authority';
14
+ import { hasAuthority, isViewonly } from './src/utils/authority';
15
15
 
16
16
  import { useSystemStoreHook as useSystemStore } from './src/store/modules/system';
17
17
  import { useMultiTagsStoreHook as useMultiTagsStore } from './src/store/modules/multiTags';
@@ -30,6 +30,7 @@ import { lifeCycleEvent, getPlatform, getBrower } from './src/utils';
30
30
  export {
31
31
  store,
32
32
  hasAuthority,
33
+ isViewonly,
33
34
  useSystemStore,
34
35
  useMultiTagsStore,
35
36
  usePermissionStore,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@utogether/udp-core",
3
3
  "private": false,
4
- "version": "2.0.0-beta.26",
4
+ "version": "2.0.0-beta.27",
5
5
  "description": "",
6
6
  "type": "module",
7
7
  "main1": "index.ts",
package/src/App.vue CHANGED
@@ -1,78 +1,79 @@
1
- <!--
2
- * @Author: wei.li
3
- * @Date: 2021-12-23 17:33:19
4
- * @LastEditors: levi7754 levi7754@163.com
5
- * @LastEditTime: 2026-02-04 14:40:21
6
- * @Description: file content
7
- -->
8
- <template>
9
- <el-config-provider size="small" :z-index="5555" :locale="currentLocale">
10
- <router-view />
11
- </el-config-provider>
12
- </template>
13
-
14
- <script lang="ts">
15
- import { defineComponent } from 'vue';
16
- import { ElConfigProvider } from 'element-plus';
17
- import { checkVersion } from 'version-rocket';
18
- import en from 'element-plus/es/locale/lang/en';
19
- import zhCn from 'element-plus/es/locale/lang/zh-cn';
20
- import { storageLocal } from '@utogether/utils';
21
- import { getEnv } from './config';
22
- import { kSYSCONFIG } from './contant';
23
- import { getServiceApi, getBaseURL } from './api';
24
- import { initDict } from './api/user';
25
- import { useSystemStoreHook } from './store/modules/system';
26
-
27
- export default defineComponent({
28
- name: 'app',
29
- components: {
30
- [ElConfigProvider.name]: ElConfigProvider
31
- },
32
- computed: {
33
- currentLocale() {
34
- return this.$storage?.locale?.locale === 'zh' ? zhCn : en;
35
- }
36
- },
37
- async beforeCreate() {
38
- await getServiceApi()
39
- .get('/upfm/v1/sysConfig', {})
40
- .then(res => {
41
- const config = {};
42
- res.list?.forEach(item => {
43
- config[item.configCode] = item.configValue;
44
- if (item.fileName) {
45
- config[item.configCode] = getBaseURL() + '/ufil' + item.configValue;
46
- }
47
- });
48
- const title = res.list?.find(f => f.configCode === 'title')?.configValue;
49
- config['title'] = title || 'U-DP';
50
- storageLocal.setItem(kSYSCONFIG, config);
51
- this.pollingVersion(config['title']);
52
- });
53
- },
54
- mounted() {
55
- initDict().then(res => useSystemStoreHook().setDict(res));
56
- },
57
- methods: {
58
- // / 版本实时更新检测,只作用于线上环境
59
- pollingVersion(title) {
60
- const domain = getEnv().VITE_ROUTER_HISTORY;
61
- // 5分钟检测一次版本
62
- checkVersion(
63
- {
64
- pollingTime: 300000,
65
- checkOriginSpecifiedFilesUrl: [`${location.origin}${domain ? `/${domain}` : ''}/index.html`],
66
- enable: process.env.NODE_ENV !== 'development'
67
- },
68
- {
69
- title,
70
- description: this.$t('message.udp.newVersion'),
71
- buttonText: this.$t('message.udp.updatenow'),
72
- cancelButtonText: this.$t('message.udp.updateLater')
73
- }
74
- );
75
- }
76
- }
77
- });
78
- </script>
1
+ <!--
2
+ * @Author: wei.li
3
+ * @Date: 2021-12-23 17:33:19
4
+ * @LastEditors: levi7754 levi7754@163.com
5
+ * @LastEditTime: 2026-05-20 11:54:04
6
+ * @Description: file content
7
+ -->
8
+ <template>
9
+ <el-config-provider size="small" :z-index="5555" :locale="currentLocale">
10
+ <router-view />
11
+ </el-config-provider>
12
+ </template>
13
+
14
+ <script lang="ts">
15
+ import { defineComponent } from 'vue';
16
+ import { ElConfigProvider } from 'element-plus';
17
+ import { checkVersion } from 'version-rocket';
18
+ import en from 'element-plus/es/locale/lang/en';
19
+ import zhCn from 'element-plus/es/locale/lang/zh-cn';
20
+ import { storageLocal } from '@utogether/utils';
21
+ import { getEnv } from './config';
22
+ import { kSYSCONFIG } from './contant';
23
+ import { getServiceApi, getBaseURL } from './api';
24
+ import { initDict } from './api/user';
25
+ import { useSystemStoreHook } from './store/modules/system';
26
+
27
+ export default defineComponent({
28
+ name: 'app',
29
+ components: {
30
+ [ElConfigProvider.name]: ElConfigProvider
31
+ },
32
+ computed: {
33
+ currentLocale() {
34
+ return this.$storage?.locale?.locale === 'zh' ? zhCn : en;
35
+ }
36
+ },
37
+ async beforeCreate() {
38
+ await getServiceApi()
39
+ .get('/upfm/v1/sysConfig', {})
40
+ .then(res => {
41
+ const config = {};
42
+ res.list?.forEach(item => {
43
+ config[item.configCode] = item.configValue;
44
+ if (item.fileName) {
45
+ config[item.configCode] = getBaseURL() + '/ufil' + item.configValue;
46
+ }
47
+ });
48
+ const title = res.list?.find(f => f.configCode === 'title')?.configValue;
49
+ config['title'] = title || 'U-DP';
50
+ storageLocal.setItem(kSYSCONFIG, config);
51
+ // 是否开启版本发布提示
52
+ config['releaseNote'] !== false && this.pollingVersion(config['title']);
53
+ });
54
+ },
55
+ mounted() {
56
+ initDict().then(res => useSystemStoreHook().setDict(res));
57
+ },
58
+ methods: {
59
+ // / 版本实时更新检测,只作用于线上环境
60
+ pollingVersion(title) {
61
+ const domain = getEnv().VITE_ROUTER_HISTORY;
62
+ // 5分钟检测一次版本
63
+ checkVersion(
64
+ {
65
+ pollingTime: 300000,
66
+ checkOriginSpecifiedFilesUrl: [`${location.origin}${domain ? `/${domain}` : ''}/index.html`],
67
+ enable: process.env.NODE_ENV !== 'development'
68
+ },
69
+ {
70
+ title,
71
+ description: this.$t('message.udp.newVersion'),
72
+ buttonText: this.$t('message.udp.updatenow'),
73
+ cancelButtonText: this.$t('message.udp.updateLater')
74
+ }
75
+ );
76
+ }
77
+ }
78
+ });
79
+ </script>
package/src/api/index.ts CHANGED
@@ -2,7 +2,7 @@
2
2
  * @Author: wei.li
3
3
  * @Date: 2021-11-17 16:24:43
4
4
  * @LastEditors: levi7754 levi7754@163.com
5
- * @LastEditTime: 2026-03-31 10:11:22
5
+ * @LastEditTime: 2026-05-18 14:27:03
6
6
  * @Description: API封装
7
7
  */
8
8
  import { http } from '@utogether/utils';