@fmdeui/fmui 1.0.6 → 1.0.8

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 (52) hide show
  1. package/es/components/chart/index.d.ts +1 -1
  2. package/es/components/chart/src/index.vue.d.ts +1 -1
  3. package/es/components/index.d.ts +1 -0
  4. package/es/components/svgIcon/index.d.ts +26 -0
  5. package/es/components/svgIcon/index.vue.d.ts +27 -0
  6. package/es/hooks/commonFunction.d.ts +24 -0
  7. package/es/hooks/index.d.ts +5 -0
  8. package/es/index.d.ts +3 -0
  9. package/es/index.mjs +6 -1
  10. package/es/packages/hooks/commonFunction.mjs +182 -0
  11. package/es/packages/hooks/dateTimeShortCust.mjs +23 -0
  12. package/es/packages/hooks/idleTimeout.mjs +127 -0
  13. package/es/packages/hooks/index.mjs +4 -0
  14. package/es/packages/hooks/sysInfo.mjs +59 -0
  15. package/es/packages/hooks/useInfo.mjs +44 -0
  16. package/es/packages/theme-chalk/assets/logo.png.mjs +3 -0
  17. package/es/packages/utils/signalR.mjs +47 -0
  18. package/es/types/layout/index.d.ts +47 -1
  19. package/es/types/pinia/index.d.ts +1 -0
  20. package/index.js +329 -2
  21. package/index.min.js +4 -4
  22. package/index.min.mjs +4 -4
  23. package/index.mjs +307 -5
  24. package/lib/components/chart/index.d.ts +1 -1
  25. package/lib/components/chart/src/index.vue.d.ts +1 -1
  26. package/lib/components/index.d.ts +1 -0
  27. package/lib/components/svgIcon/index.d.ts +26 -0
  28. package/lib/components/svgIcon/index.vue.d.ts +27 -0
  29. package/lib/hooks/commonFunction.d.ts +24 -0
  30. package/lib/hooks/index.d.ts +5 -0
  31. package/lib/index.d.ts +3 -0
  32. package/lib/index.js +33 -3
  33. package/lib/packages/hooks/commonFunction.js +186 -0
  34. package/lib/packages/hooks/dateTimeShortCust.js +25 -0
  35. package/lib/packages/hooks/idleTimeout.js +131 -0
  36. package/lib/packages/hooks/index.js +27 -0
  37. package/lib/packages/hooks/sysInfo.js +62 -0
  38. package/lib/packages/hooks/useInfo.js +64 -0
  39. package/lib/packages/theme-chalk/assets/logo.png.js +7 -0
  40. package/lib/packages/utils/signalR.js +68 -0
  41. package/lib/types/layout/index.d.ts +47 -1
  42. package/lib/types/pinia/index.d.ts +1 -0
  43. package/locale/en.js +1 -1
  44. package/locale/en.min.js +1 -1
  45. package/locale/en.min.mjs +1 -1
  46. package/locale/en.mjs +1 -1
  47. package/locale/zh-cn.js +1 -1
  48. package/locale/zh-cn.min.js +1 -1
  49. package/locale/zh-cn.min.mjs +1 -1
  50. package/locale/zh-cn.mjs +1 -1
  51. package/package.json +1 -1
  52. /package/lib/{component.css → version.css} +0 -0
@@ -0,0 +1,47 @@
1
+ import * as SignalR from '@microsoft/signalr';
2
+ import { ElNotification } from 'element-plus';
3
+ import { getToken } from './request.mjs';
4
+
5
+ const connection = new SignalR.HubConnectionBuilder().configureLogging(SignalR.LogLevel.Warning).withUrl(`${window.__env__.VITE_API_URL}/hubs/onlineUser?token=${getToken()}`, { transport: SignalR.HttpTransportType.WebSockets, skipNegotiation: true }).withAutomaticReconnect({
6
+ nextRetryDelayInMilliseconds: () => {
7
+ return 5e3;
8
+ }
9
+ }).build();
10
+ connection.keepAliveIntervalInMilliseconds = 15 * 1e3;
11
+ connection.serverTimeoutInMilliseconds = 30 * 1e3;
12
+ connection.start().then(() => {
13
+ });
14
+ connection.onclose(async () => {
15
+ });
16
+ connection.onreconnecting(() => {
17
+ ElNotification({
18
+ title: "\u63D0\u793A",
19
+ message: "\u8FDE\u63A5\u5DF2\u65AD\u5F00 >>>>>",
20
+ type: "error",
21
+ position: "bottom-right"
22
+ });
23
+ });
24
+ connection.onreconnected(() => {
25
+ ElNotification({
26
+ title: "\u63D0\u793A",
27
+ message: "\u8FDE\u63A5\u5DF2\u6062\u590D >>>>>",
28
+ type: "success",
29
+ position: "bottom-right"
30
+ });
31
+ });
32
+ connection.on("OnlineUserList", () => {
33
+ });
34
+ connection.on("ReceiveMessage", (message) => {
35
+ var tmpMsg = `<div style="white-space: pre-wrap;">${message.message}<div><br/>`;
36
+ tmpMsg += `<p style="color:#808080; font-size:10px;float:right"> ${message.sendUserName} ${message.sendTime}<p>`;
37
+ ElNotification({
38
+ title: `${message.title}`,
39
+ message: tmpMsg,
40
+ type: message.messageType.toString().toLowerCase(),
41
+ position: "top-right",
42
+ dangerouslyUseHTMLString: true,
43
+ duration: 5e3
44
+ });
45
+ });
46
+
47
+ export { connection as signalR };
@@ -1 +1,47 @@
1
- export {};
1
+ import { RouteRecordRaw } from '../router';
2
+ export type AsideState = {
3
+ menuList: RouteRecordRaw[];
4
+ clientWidth: number;
5
+ };
6
+ export type ColumnsAsideState<T = any> = {
7
+ columnsAsideList: T[];
8
+ liIndex: number;
9
+ liOldIndex: null | number;
10
+ liHoverIndex: null | number;
11
+ liOldPath: null | string;
12
+ difference: number;
13
+ routeSplit: string[];
14
+ };
15
+ export type BreadcrumbState<T = any> = {
16
+ breadcrumbList: T[];
17
+ routeSplit: string[];
18
+ routeSplitFirst: string;
19
+ routeSplitIndex: number;
20
+ };
21
+ export type SearchState<T = any> = {
22
+ isShowSearch: boolean;
23
+ menuQuery: string;
24
+ tagsViewList: T[];
25
+ };
26
+ export type TagsViewState<T = any> = {
27
+ routeActive: string | T;
28
+ routePath: string | unknown;
29
+ dropdown: {
30
+ x: string | number;
31
+ y: string | number;
32
+ };
33
+ sortable: T;
34
+ tagsRefsIndex: number;
35
+ tagsViewList: T[];
36
+ tagsViewRoutesList: T[];
37
+ };
38
+ export type ParentViewState<T = any> = {
39
+ refreshRouterViewKey: string;
40
+ iframeRefreshKey: string;
41
+ keepAliveNameList: string[];
42
+ iframeList: T[];
43
+ };
44
+ export type LinkViewState = {
45
+ title: string;
46
+ isLink: string;
47
+ };
@@ -99,5 +99,6 @@ export interface ThemeConfigState {
99
99
  mobileLogin: boolean;
100
100
  scanLogin: boolean;
101
101
  signUp: boolean;
102
+ serverTime?: any;
102
103
  };
103
104
  }
package/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! fmdeui-fmui v1.0.6 */
1
+ /*! fmdeui-fmui v1.0.8 */
2
2
  (function (global, factory) {
3
3
  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('pinia'), require('crypto-js'), require('xlsx-js-style'), require('element-plus'), require('vue'), require('@element-plus/icons-vue'), require('mitt'), require('axios'), require('js-cookie'), require('vxe-table'), require('@vxe-ui/plugin-render-element'), require('@vxe-ui/plugin-export-xlsx'), require('vxe-pc-ui'), require('vue-i18n'), require('exceljs'), require('lodash-es'), require('@vueuse/core'), require('vue-router'), require('nprogress')) :
4
4
  typeof define === 'function' && define.amd ? define(['exports', 'pinia', 'crypto-js', 'xlsx-js-style', 'element-plus', 'vue', '@element-plus/icons-vue', 'mitt', 'axios', 'js-cookie', 'vxe-table', '@vxe-ui/plugin-render-element', '@vxe-ui/plugin-export-xlsx', 'vxe-pc-ui', 'vue-i18n', 'exceljs', 'lodash-es', '@vueuse/core', 'vue-router', 'nprogress'], factory) :
@@ -1163,7 +1163,7 @@
1163
1163
  }
1164
1164
  };
1165
1165
 
1166
- mitt();
1166
+ const emitter = mitt();
1167
1167
 
1168
1168
  const Local = {
1169
1169
  // 查看 v2.4.3版本更新日志
@@ -1469,6 +1469,16 @@
1469
1469
  document.body.appendChild(link);
1470
1470
  });
1471
1471
  }
1472
+ const setIntroduction = {
1473
+ // 设置css
1474
+ cssCdn: () => {
1475
+ setCssCdn();
1476
+ },
1477
+ // 设置js
1478
+ jsCdn: () => {
1479
+ setJsCdn();
1480
+ }
1481
+ };
1472
1482
 
1473
1483
  function useChangeColor() {
1474
1484
  const hexToRgb = (str) => {
@@ -18729,6 +18739,298 @@
18729
18739
  return extras ? lodashEs.merge(options, extras) : options;
18730
18740
  };
18731
18741
 
18742
+ var img = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEEAAABBCAYAAACO98lFAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFwmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDIgNzkuMTYwOTI0LCAyMDE3LzA3LzEzLTAxOjA2OjM5ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpIiB4bXA6Q3JlYXRlRGF0ZT0iMjAyNS0wNC0wNFQwMToyMzozMCswODowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyNS0wNC0wNFQwMToyMzozMCswODowMCIgeG1wOk1vZGlmeURhdGU9IjIwMjUtMDQtMDRUMDE6MjM6MzArMDg6MDAiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NDY0Mzc1NWEtZTM4ZC1hMzQxLWFmODgtNmFhY2FmYmI4ZDY0IiB4bXBNTTpEb2N1bWVudElEPSJhZG9iZTpkb2NpZDpwaG90b3Nob3A6MTdlYzEzMTgtNmY3Mi1mYjQ4LWI3YjUtMzg2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";
18743
+
18744
+ const { t } = useLocale();
18745
+ function updateIdleTimeout(timeout) {
18746
+ if (window.__IDLE_TIMEOUT__) {
18747
+ window.__IDLE_TIMEOUT__.updateIdleTimeout(timeout);
18748
+ }
18749
+ }
18750
+
18751
+ const storesThemeConfig$1 = useThemeConfig();
18752
+ const { themeConfig: themeConfig$1 } = pinia$1.storeToRefs(storesThemeConfig$1);
18753
+ async function loadSysInfo(tenantid) {
18754
+ var _a;
18755
+ const [err, res] = await feature(useBaseApi("sysTenant").gcomm(null, "sysInfo/" + Number(tenantid)));
18756
+ if (err) {
18757
+ themeConfig$1.value.logoUrl = img;
18758
+ Local.remove("themeConfig");
18759
+ Local.set("themeConfig", storesThemeConfig$1.themeConfig);
18760
+ return;
18761
+ } else {
18762
+ if (res.data.type != "success" || res.data.result == null) return;
18763
+ const data = res.data.result;
18764
+ themeConfig$1.value.logoUrl = data.logo;
18765
+ themeConfig$1.value.globalTitle = data.title;
18766
+ themeConfig$1.value.globalViceTitle = data.viceTitle;
18767
+ themeConfig$1.value.globalViceTitleMsg = data.viceDesc;
18768
+ themeConfig$1.value.icp = data.icp;
18769
+ themeConfig$1.value.icpUrl = data.icpUrl;
18770
+ themeConfig$1.value.isWatermark = data.watermark != null;
18771
+ themeConfig$1.value.watermarkText = data.watermark;
18772
+ themeConfig$1.value.copyright = data.copyright;
18773
+ themeConfig$1.value.version = data.version;
18774
+ themeConfig$1.value.carouselFiles = data.carouselFiles;
18775
+ themeConfig$1.value.primary = data.themeColor;
18776
+ themeConfig$1.value.layout = data.layout;
18777
+ themeConfig$1.value.animation = data.animation;
18778
+ themeConfig$1.value.secondVer = data.secondVer;
18779
+ themeConfig$1.value.captcha = data.captcha;
18780
+ themeConfig$1.value.forceChangePassword = data.forceChangePassword;
18781
+ themeConfig$1.value.passwordExpirationTime = data.passwordExpirationTime;
18782
+ themeConfig$1.value.i18NSwitch = data.i18NSwitch;
18783
+ themeConfig$1.value.idleTimeout = data.idleTimeout;
18784
+ themeConfig$1.value.onlineNotice = data.onlineNotice;
18785
+ themeConfig$1.value.mobileLogin = data.mobileLogin;
18786
+ themeConfig$1.value.scanLogin = data.scanLogin;
18787
+ themeConfig$1.value.signUp = data.signUp;
18788
+ window.__env__.VITE_SM_PUBLIC_KEY = data.publicKey;
18789
+ updateFavicon(data.logo);
18790
+ updateIdleTimeout((_a = themeConfig$1.value.idleTimeout) != null ? _a : 0);
18791
+ Local.remove("themeConfig");
18792
+ Local.set("themeConfig", storesThemeConfig$1.themeConfig);
18793
+ }
18794
+ }
18795
+ const updateFavicon = (url) => {
18796
+ const favicon = document.getElementById("favicon");
18797
+ favicon.href = url ? url : "data:;base64,=";
18798
+ };
18799
+
18800
+ const { userInfos } = useUserInfo();
18801
+ const isSupperAdmin = () => {
18802
+ return (userInfos == null ? void 0 : userInfos.accountType) === 999;
18803
+ };
18804
+ const isTenantAdmin = () => {
18805
+ return (userInfos == null ? void 0 : userInfos.accountType) === 888;
18806
+ };
18807
+ const isAdmin = () => {
18808
+ return isSupperAdmin() || isTenantAdmin();
18809
+ };
18810
+ const isNormalUser = () => {
18811
+ return (userInfos == null ? void 0 : userInfos.accountType) === 777;
18812
+ };
18813
+ const isMember = () => {
18814
+ return (userInfos == null ? void 0 : userInfos.accountType) === 666;
18815
+ };
18816
+ const userEmail = () => {
18817
+ return userInfos == null ? void 0 : userInfos.email;
18818
+ };
18819
+ const userName = () => {
18820
+ return userInfos == null ? void 0 : userInfos.userName;
18821
+ };
18822
+ const userFriendName = () => (userInfos == null ? void 0 : userInfos.realName) ? userInfos == null ? void 0 : userInfos.realName : (userInfos == null ? void 0 : userInfos.account) ? userInfos == null ? void 0 : userInfos.account : userInfos == null ? void 0 : userInfos.email;
18823
+ const tenantId = () => {
18824
+ return userInfos == null ? void 0 : userInfos.tenantId;
18825
+ };
18826
+ const userAccount = () => userInfos == null ? void 0 : userInfos.account;
18827
+ const userPhone = () => userInfos == null ? void 0 : userInfos.phone;
18828
+ const userId = () => userInfos == null ? void 0 : userInfos.id;
18829
+ const orgId = () => userInfos == null ? void 0 : userInfos.orgId;
18830
+ const orgName = () => userInfos == null ? void 0 : userInfos.orgName;
18831
+ const posId = () => userInfos == null ? void 0 : userInfos.posId;
18832
+ const posName = () => userInfos == null ? void 0 : userInfos.posName;
18833
+ const roles = () => userInfos == null ? void 0 : userInfos.roles;
18834
+ const hasRoleCode = (code) => {
18835
+ return userInfos.roles.find((u) => u.code === code) ? true : false;
18836
+ };
18837
+ const hasPrivilege = (privilege) => {
18838
+ return userInfos.authApiList.includes(privilege);
18839
+ };
18840
+
18841
+ const useDateTimeShortCust = () => {
18842
+ return [
18843
+ { text: "\u4ECA\u5929", value: /* @__PURE__ */ new Date() },
18844
+ {
18845
+ text: "\u6628\u5929",
18846
+ value: () => {
18847
+ const date = /* @__PURE__ */ new Date();
18848
+ date.setTime(date.getTime() - 3600 * 1e3 * 24);
18849
+ return date;
18850
+ }
18851
+ },
18852
+ {
18853
+ text: "\u4E0A\u5468",
18854
+ value: () => {
18855
+ const date = /* @__PURE__ */ new Date();
18856
+ date.setTime(date.getTime() - 3600 * 1e3 * 24 * 7);
18857
+ return date;
18858
+ }
18859
+ }
18860
+ ];
18861
+ };
18862
+
18863
+ const themeStore = useThemeConfig();
18864
+ function commonFunction() {
18865
+ const { t } = vueI18n.useI18n();
18866
+ const { copy, isSupported } = core.useClipboard();
18867
+ const percentFormat = (row, column, cellValue) => {
18868
+ return cellValue ? `${cellValue}%` : "-";
18869
+ };
18870
+ const dateFormatYMD = (row, column, cellValue) => {
18871
+ if (!cellValue) return "-";
18872
+ return formatDate(new Date(cellValue), "YYYY-mm-dd");
18873
+ };
18874
+ const dateFormatYMDHMS = (row, column, cellValue) => {
18875
+ if (!cellValue) return "-";
18876
+ return formatDate(new Date(cellValue), "YYYY-mm-dd HH:MM:SS");
18877
+ };
18878
+ const dateFormatHMS = (row, column, cellValue) => {
18879
+ if (!cellValue) return "-";
18880
+ let time = 0;
18881
+ if (typeof row === "number") time = row;
18882
+ if (typeof cellValue === "number") time = cellValue;
18883
+ return formatDate(new Date(time * 1e3), "HH:MM:SS");
18884
+ };
18885
+ const scaleFormat = (value = "0", scale = 4) => {
18886
+ return Number.parseFloat(value).toFixed(scale);
18887
+ };
18888
+ const scale2Format = (value = "0") => {
18889
+ return Number.parseFloat(value).toFixed(2);
18890
+ };
18891
+ const groupSeparator = (value, minimumFractionDigits = 2) => {
18892
+ return value.toLocaleString("en-US", {
18893
+ minimumFractionDigits,
18894
+ maximumFractionDigits: 2
18895
+ });
18896
+ };
18897
+ const copyText = (text) => {
18898
+ return new Promise((resolve, reject) => {
18899
+ try {
18900
+ if (!isSupported.value) {
18901
+ console.error("\u6D4F\u89C8\u5668\u4E0D\u652F\u6301\u526A\u8D34\u677F API");
18902
+ reject("\u6D4F\u89C8\u5668\u4E0D\u652F\u6301\u526A\u8D34\u677F API");
18903
+ } else {
18904
+ copy(text);
18905
+ elementPlus.ElMessage.success(t("message.layout.copyTextSuccess"));
18906
+ resolve(text);
18907
+ }
18908
+ } catch (e) {
18909
+ elementPlus.ElMessage.error(t("message.layout.copyTextError"));
18910
+ reject(e);
18911
+ }
18912
+ });
18913
+ };
18914
+ const removeHtmlSub = (value) => {
18915
+ var str = value.replace(/<[^>]+>/g, "");
18916
+ if (str.length > 50) return str.substring(0, 50) + "......";
18917
+ else return str;
18918
+ };
18919
+ const removeHtml = (value) => {
18920
+ return value.replace(/<[^>]+>/g, "");
18921
+ };
18922
+ const getEnumDesc = (key, lstEnum) => {
18923
+ var _a;
18924
+ return (_a = lstEnum.find((x) => x.value == key)) == null ? void 0 : _a.describe;
18925
+ };
18926
+ const appendQueryParams = (url, params) => {
18927
+ if (!params || Object.keys(params).length == 0) return url;
18928
+ const queryString = Object.keys(params).map((key) => `${encodeURIComponent(key)}=${encodeURIComponent(params[key])}`).join("&");
18929
+ return `${url}${url.includes("?") ? "&" : "?"}${queryString}`;
18930
+ };
18931
+ const getNameAbbr = (text, callback) => {
18932
+ if (!text) return elementPlus.ElMessage.error("\u83B7\u53D6\u7B80\u79F0\u6587\u672C\u4E0D\u80FD\u4E3A\u7A7A");
18933
+ try {
18934
+ return useBaseApi("sysCommon").post({ text }, "nameAbbr").then((res) => {
18935
+ if (callback) callback(res.data.result);
18936
+ return res.data.result;
18937
+ });
18938
+ } catch (e) {
18939
+ elementPlus.ElMessage.error("\u83B7\u53D6\u5931\u8D25");
18940
+ }
18941
+ };
18942
+ const handleConditionalClear = (condition, fieldValue, clearValue = void 0) => {
18943
+ if (condition) {
18944
+ return clearValue;
18945
+ }
18946
+ return fieldValue;
18947
+ };
18948
+ const getTimeRangePickerShortcuts = () => {
18949
+ return [
18950
+ {
18951
+ text: "\u8FD1\u4E00\u5468",
18952
+ value: () => {
18953
+ const now = new Date(themeStore.themeConfig.serverTime);
18954
+ const end = new Date(now.getFullYear(), now.getMonth(), now.getDate(), 23, 59, 59, 999);
18955
+ const start = new Date(now.getFullYear(), now.getMonth(), now.getDate() - 7);
18956
+ return [start, end];
18957
+ }
18958
+ },
18959
+ {
18960
+ text: "\u8FD1\u4E00\u6708",
18961
+ value: () => {
18962
+ const now = new Date(themeStore.themeConfig.serverTime);
18963
+ const end = new Date(now.getFullYear(), now.getMonth(), now.getDate(), 23, 59, 59, 999);
18964
+ const start = new Date(now.getFullYear(), now.getMonth() - 1, now.getDate());
18965
+ return [start, end];
18966
+ }
18967
+ },
18968
+ {
18969
+ text: "\u8FD1\u4E09\u6708",
18970
+ value: () => {
18971
+ const now = new Date(themeStore.themeConfig.serverTime);
18972
+ const end = new Date(now.getFullYear(), now.getMonth(), now.getDate(), 23, 59, 59, 999);
18973
+ const start = new Date(now.getFullYear(), now.getMonth() - 3, now.getDate());
18974
+ return [start, end];
18975
+ }
18976
+ },
18977
+ {
18978
+ text: "\u8FD1\u534A\u5E74",
18979
+ value: () => {
18980
+ const now = new Date(themeStore.themeConfig.serverTime);
18981
+ const end = new Date(now.getFullYear(), now.getMonth(), now.getDate(), 23, 59, 59, 999);
18982
+ const start = new Date(now.getFullYear(), now.getMonth() - 6, now.getDate());
18983
+ return [start, end];
18984
+ }
18985
+ },
18986
+ {
18987
+ text: "\u672C\u5E74",
18988
+ value: () => {
18989
+ const now = new Date(themeStore.themeConfig.serverTime);
18990
+ const end = new Date(now.getFullYear(), 11, 31, 23, 59, 59, 999);
18991
+ const start = new Date(now.getFullYear(), 0, 1);
18992
+ return [start, end];
18993
+ }
18994
+ },
18995
+ {
18996
+ text: "\u8FD1\u4E24\u5E74",
18997
+ value: () => {
18998
+ const now = new Date(themeStore.themeConfig.serverTime);
18999
+ const end = new Date(now.getFullYear(), 11, 31, 23, 59, 59, 999);
19000
+ const start = new Date(now.getFullYear() - 1, 0, 1);
19001
+ return [start, end];
19002
+ }
19003
+ },
19004
+ {
19005
+ text: "\u8FD1\u4E09\u5E74",
19006
+ value: () => {
19007
+ const now = new Date(themeStore.themeConfig.serverTime);
19008
+ const end = new Date(now.getFullYear(), 11, 31, 23, 59, 59, 999);
19009
+ const start = new Date(now.getFullYear() - 2, 0, 1);
19010
+ return [start, end];
19011
+ }
19012
+ }
19013
+ ];
19014
+ };
19015
+ return {
19016
+ percentFormat,
19017
+ dateFormatYMD,
19018
+ dateFormatYMDHMS,
19019
+ dateFormatHMS,
19020
+ scaleFormat,
19021
+ scale2Format,
19022
+ groupSeparator,
19023
+ copyText,
19024
+ removeHtmlSub,
19025
+ removeHtml,
19026
+ getEnumDesc,
19027
+ appendQueryParams,
19028
+ getNameAbbr,
19029
+ handleConditionalClear,
19030
+ getTimeRangePickerShortcuts
19031
+ };
19032
+ }
19033
+
18732
19034
  const _hoisted_1$6 = { key: 0 };
18733
19035
  const _hoisted_2$3 = { key: 0 };
18734
19036
  var _sfc_main$c = /* @__PURE__ */ vue.defineComponent({
@@ -22285,6 +22587,7 @@
22285
22587
  exports.clearAccessTokens = clearAccessTokens;
22286
22588
  exports.clearTokens = clearTokens;
22287
22589
  exports.clone = clone;
22590
+ exports.commonFunction = commonFunction;
22288
22591
  exports.configureRoutes = configureRoutes;
22289
22592
  exports.dataURLtoBlob = dataURLtoBlob;
22290
22593
  exports.decryptJWT = decryptJWT;
@@ -22312,37 +22615,55 @@
22312
22615
  exports.hAuth = hAuth;
22313
22616
  exports.hAuthAll = hAuthAll;
22314
22617
  exports.hAuths = hAuths;
22618
+ exports.hasPrivilege = hasPrivilege;
22619
+ exports.hasRoleCode = hasRoleCode;
22315
22620
  exports.i18n = i18n;
22316
22621
  exports.initBackEndControlRoutes = initBackEndControlRoutes;
22317
22622
  exports.initFrontEndControlRoutes = initFrontEndControlRoutes;
22318
22623
  exports.initRouter = initRouter;
22319
22624
  exports.install = install;
22625
+ exports.isAdmin = isAdmin;
22626
+ exports.isMember = isMember;
22627
+ exports.isNormalUser = isNormalUser;
22320
22628
  exports.isObjectValueEqual = isObjectValueEqual;
22629
+ exports.isSupperAdmin = isSupperAdmin;
22630
+ exports.isTenantAdmin = isTenantAdmin;
22321
22631
  exports.iso_3166_1_CountryList = iso_3166_1_CountryList;
22322
22632
  exports.judgementIdCard = judgementIdCard;
22323
22633
  exports.judgementSameArr = judgementSameArr;
22324
22634
  exports.languageList = languageList;
22635
+ exports.loadSysInfo = loadSysInfo;
22325
22636
  exports.mergMessage = mergMessage;
22637
+ exports.mittBus = emitter;
22326
22638
  exports.openWindow = openWindow;
22639
+ exports.orgId = orgId;
22640
+ exports.orgName = orgName;
22641
+ exports.posId = posId;
22642
+ exports.posName = posName;
22327
22643
  exports.reLoadLoginAccessToken = reLoadLoginAccessToken;
22328
22644
  exports.refreshAccessTokenKey = refreshAccessTokenKey;
22329
22645
  exports.removeDuplicate = removeDuplicate;
22330
22646
  exports.request2 = request2;
22647
+ exports.roles = roles;
22331
22648
  exports.saulVModel = saulVModel;
22332
22649
  exports.service = service;
22333
22650
  exports.setCssCdn = setCssCdn;
22334
22651
  exports.setDynamicViewsModules = setDynamicViewsModules;
22652
+ exports.setIntroduction = setIntroduction;
22335
22653
  exports.setJsCdn = setJsCdn;
22336
22654
  exports.setPathPrefix = setPathPrefix;
22337
22655
  exports.setupI18n = setupI18n;
22338
22656
  exports.signatureByKSort = signatureByKSort;
22339
22657
  exports.sleep = sleep;
22340
22658
  exports.tansParams = tansParams;
22659
+ exports.tenantId = tenantId;
22341
22660
  exports.translate = translate;
22661
+ exports.updateFavicon = updateFavicon;
22342
22662
  exports.urlToBase64 = urlToBase64;
22343
22663
  exports.useApi = useApi;
22344
22664
  exports.useBaseApi = useBaseApi;
22345
22665
  exports.useChangeColor = useChangeColor;
22666
+ exports.useDateTimeShortCust = useDateTimeShortCust;
22346
22667
  exports.useFormRulePresets = useFormRulePresets;
22347
22668
  exports.useKeepALiveNames = useKeepALiveNames;
22348
22669
  exports.useLocale = useLocale;
@@ -22353,6 +22674,12 @@
22353
22674
  exports.useThemeConfig = useThemeConfig;
22354
22675
  exports.useUserInfo = useUserInfo;
22355
22676
  exports.useVxeTable = useVxeTable;
22677
+ exports.userAccount = userAccount;
22678
+ exports.userEmail = userEmail;
22679
+ exports.userFriendName = userFriendName;
22680
+ exports.userId = userId;
22681
+ exports.userName = userName;
22682
+ exports.userPhone = userPhone;
22356
22683
  exports.validateFormWithScroll = validateFormWithScroll;
22357
22684
  exports.validateFormWithScrollCallback = validateFormWithScrollCallback;
22358
22685
  exports.verifiyNumberInteger = verifiyNumberInteger;