@fmdeui/fmui 1.0.10 → 1.0.13
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/es/components/svgIcon/index.d.ts +7 -26
- package/es/hooks/index.d.ts +2 -0
- package/es/hooks/other.d.ts +0 -8
- package/es/index.d.ts +3 -1
- package/es/index.mjs +4 -0
- package/es/make-installer.mjs +8 -3
- package/es/packages/components/index.mjs +10 -0
- package/es/packages/components/svgIcon/index.mjs +17 -0
- package/es/packages/components/svgIcon/svgicon.vue.mjs +5 -0
- package/es/packages/components/svgIcon/svgicon.vue2.mjs +94 -0
- package/es/packages/hooks/index.mjs +1 -0
- package/es/packages/hooks/other.mjs +137 -0
- package/es/packages/utils/index.mjs +1 -1
- package/es/utils/index.d.ts +1 -1
- package/index.js +582 -163
- package/index.min.js +4 -4
- package/index.min.mjs +4 -4
- package/index.mjs +559 -164
- package/lib/components/svgIcon/index.d.ts +7 -26
- package/lib/hooks/index.d.ts +2 -0
- package/lib/hooks/other.d.ts +0 -8
- package/lib/{defaults.css → index.css} +2 -2
- package/lib/index.d.ts +3 -1
- package/lib/index.js +10 -0
- package/lib/make-installer.js +9 -4
- package/lib/packages/components/index.js +25 -0
- package/lib/packages/components/svgIcon/index.js +38 -0
- package/lib/packages/components/svgIcon/svgicon.vue.js +9 -0
- package/lib/packages/components/svgIcon/svgicon.vue2.js +98 -0
- package/lib/packages/hooks/index.js +4 -0
- package/lib/packages/hooks/other.js +149 -0
- package/lib/packages/utils/index.js +2 -1
- package/lib/utils/index.d.ts +1 -1
- package/locale/en.js +1 -1
- package/locale/en.min.js +1 -1
- package/locale/en.min.mjs +1 -1
- package/locale/en.mjs +1 -1
- package/locale/zh-cn.js +1 -1
- package/locale/zh-cn.min.js +1 -1
- package/locale/zh-cn.min.mjs +1 -1
- package/locale/zh-cn.mjs +1 -1
- package/package.json +1 -1
- /package/es/{make-installer.css → component.css} +0 -0
- /package/es/components/svgIcon/{index.vue.d.ts → svgicon.vue.d.ts} +0 -0
- /package/lib/components/svgIcon/{index.vue.d.ts → svgicon.vue.d.ts} +0 -0
package/index.js
CHANGED
|
@@ -1,9 +1,29 @@
|
|
|
1
|
-
/*! fmdeui-fmui v1.0.
|
|
1
|
+
/*! fmdeui-fmui v1.0.13 */
|
|
2
2
|
(function (global, factory) {
|
|
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('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('mitt'), require('vue-router'), require('nprogress')) :
|
|
4
|
-
typeof define === 'function' && define.amd ? define(['exports', 'pinia', 'crypto-js', 'xlsx-js-style', 'element-plus', 'vue', '@element-plus/icons-vue', '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', 'mitt', 'vue-router', 'nprogress'], factory) :
|
|
5
|
-
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.fmdeuifmui = {}, global.Pinia, global.CryptoJS, global.XLSX, global.ElementPlus, global.Vue, global.ElementPlusIconsVue, global.axios, global.Cookies, global.VxeUITable, global.VxeUIPluginRenderElement, global.VxeUIPluginExportXLSX, global.VxeUIExport, global.vueI18n, global.ExcelJS, global._, global.VueUse, global.mitt, global.vueRouter, global.NProgress));
|
|
6
|
-
})(this, (function (exports, pinia$1, CryptoJS, XLSXS, elementPlus, vue, svg, axios, Cookies, VxeUITable, VxeUIPluginRenderElement, VxeUIPluginExportXLSX, VxeUI, vueI18n, ExcelJS, lodashEs, core, mitt, vueRouter, NProgress) { 'use strict';
|
|
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('axios'), require('js-cookie'), require('@microsoft/signalr'), 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('mitt'), require('vue-router'), require('nprogress')) :
|
|
4
|
+
typeof define === 'function' && define.amd ? define(['exports', 'pinia', 'crypto-js', 'xlsx-js-style', 'element-plus', 'vue', '@element-plus/icons-vue', 'axios', 'js-cookie', '@microsoft/signalr', 'vxe-table', '@vxe-ui/plugin-render-element', '@vxe-ui/plugin-export-xlsx', 'vxe-pc-ui', 'vue-i18n', 'exceljs', 'lodash-es', '@vueuse/core', 'mitt', 'vue-router', 'nprogress'], factory) :
|
|
5
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.fmdeuifmui = {}, global.Pinia, global.CryptoJS, global.XLSX, global.ElementPlus, global.Vue, global.ElementPlusIconsVue, global.axios, global.Cookies, global.SignalR, global.VxeUITable, global.VxeUIPluginRenderElement, global.VxeUIPluginExportXLSX, global.VxeUIExport, global.vueI18n, global.ExcelJS, global._, global.VueUse, global.mitt, global.vueRouter, global.NProgress));
|
|
6
|
+
})(this, (function (exports, pinia$1, CryptoJS, XLSXS, elementPlus, vue, svg, axios, Cookies, SignalR, VxeUITable, VxeUIPluginRenderElement, VxeUIPluginExportXLSX, VxeUI, vueI18n, ExcelJS, lodashEs, core, mitt, vueRouter, NProgress) { 'use strict';
|
|
7
|
+
|
|
8
|
+
function _interopNamespaceDefault(e) {
|
|
9
|
+
var n = Object.create(null);
|
|
10
|
+
if (e) {
|
|
11
|
+
Object.keys(e).forEach(function (k) {
|
|
12
|
+
if (k !== 'default') {
|
|
13
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
14
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
15
|
+
enumerable: true,
|
|
16
|
+
get: function () { return e[k]; }
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
n.default = e;
|
|
22
|
+
return Object.freeze(n);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
var svg__namespace = /*#__PURE__*/_interopNamespaceDefault(svg);
|
|
26
|
+
var SignalR__namespace = /*#__PURE__*/_interopNamespaceDefault(SignalR);
|
|
7
27
|
|
|
8
28
|
const pinia = pinia$1.createPinia();
|
|
9
29
|
|
|
@@ -491,9 +511,9 @@
|
|
|
491
511
|
return value;
|
|
492
512
|
};
|
|
493
513
|
|
|
494
|
-
var __defProp = Object.defineProperty;
|
|
495
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
496
|
-
var __publicField = (obj, key, value) => __defNormalProp(obj, key + "" , value);
|
|
514
|
+
var __defProp$1 = Object.defineProperty;
|
|
515
|
+
var __defNormalProp$1 = (obj, key, value) => key in obj ? __defProp$1(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
516
|
+
var __publicField$1 = (obj, key, value) => __defNormalProp$1(obj, key + "" , value);
|
|
497
517
|
const DEFAULT_CONFIG = {
|
|
498
518
|
lock: true,
|
|
499
519
|
text: "",
|
|
@@ -506,7 +526,7 @@
|
|
|
506
526
|
};
|
|
507
527
|
class FlowLoadingManager {
|
|
508
528
|
constructor() {
|
|
509
|
-
__publicField(this, "instance", null);
|
|
529
|
+
__publicField$1(this, "instance", null);
|
|
510
530
|
}
|
|
511
531
|
// 2. 统一返回类型
|
|
512
532
|
start(options) {
|
|
@@ -1632,6 +1652,53 @@
|
|
|
1632
1652
|
return entity;
|
|
1633
1653
|
}
|
|
1634
1654
|
|
|
1655
|
+
const connection = new SignalR__namespace.HubConnectionBuilder().configureLogging(SignalR__namespace.LogLevel.Warning).withUrl(`${window.__env__.VITE_API_URL}/hubs/onlineUser?token=${getToken()}`, { transport: SignalR__namespace.HttpTransportType.WebSockets, skipNegotiation: true }).withAutomaticReconnect({
|
|
1656
|
+
nextRetryDelayInMilliseconds: () => {
|
|
1657
|
+
return 5e3;
|
|
1658
|
+
}
|
|
1659
|
+
}).build();
|
|
1660
|
+
connection.keepAliveIntervalInMilliseconds = 15 * 1e3;
|
|
1661
|
+
connection.serverTimeoutInMilliseconds = 30 * 1e3;
|
|
1662
|
+
connection.start().then(() => {
|
|
1663
|
+
});
|
|
1664
|
+
connection.onclose(async () => {
|
|
1665
|
+
});
|
|
1666
|
+
connection.onreconnecting(() => {
|
|
1667
|
+
elementPlus.ElNotification({
|
|
1668
|
+
title: "\u63D0\u793A",
|
|
1669
|
+
message: "\u8FDE\u63A5\u5DF2\u65AD\u5F00 >>>>>",
|
|
1670
|
+
type: "error",
|
|
1671
|
+
position: "bottom-right"
|
|
1672
|
+
});
|
|
1673
|
+
});
|
|
1674
|
+
connection.onreconnected(() => {
|
|
1675
|
+
elementPlus.ElNotification({
|
|
1676
|
+
title: "\u63D0\u793A",
|
|
1677
|
+
message: "\u8FDE\u63A5\u5DF2\u6062\u590D >>>>>",
|
|
1678
|
+
type: "success",
|
|
1679
|
+
position: "bottom-right"
|
|
1680
|
+
});
|
|
1681
|
+
});
|
|
1682
|
+
connection.on("OnlineUserList", () => {
|
|
1683
|
+
});
|
|
1684
|
+
connection.on("ReceiveMessage", (message) => {
|
|
1685
|
+
var tmpMsg = `<div style="white-space: pre-wrap;">${message.message}<div><br/>`;
|
|
1686
|
+
tmpMsg += `<p style="color:#808080; font-size:10px;float:right"> ${message.sendUserName} ${message.sendTime}<p>`;
|
|
1687
|
+
elementPlus.ElNotification({
|
|
1688
|
+
title: `${message.title}`,
|
|
1689
|
+
message: tmpMsg,
|
|
1690
|
+
type: message.messageType.toString().toLowerCase(),
|
|
1691
|
+
position: "top-right",
|
|
1692
|
+
dangerouslyUseHTMLString: true,
|
|
1693
|
+
duration: 5e3
|
|
1694
|
+
});
|
|
1695
|
+
});
|
|
1696
|
+
|
|
1697
|
+
var signalR$1 = /*#__PURE__*/Object.freeze({
|
|
1698
|
+
__proto__: null,
|
|
1699
|
+
signalR: connection
|
|
1700
|
+
});
|
|
1701
|
+
|
|
1635
1702
|
const setWatermark = (str) => {
|
|
1636
1703
|
const id = "1.23452384164.123412416";
|
|
1637
1704
|
if (document.getElementById(id) !== null) document.body.removeChild(document.getElementById(id));
|
|
@@ -18328,25 +18395,7 @@
|
|
|
18328
18395
|
app.use(VxeUITable);
|
|
18329
18396
|
};
|
|
18330
18397
|
|
|
18331
|
-
|
|
18332
|
-
const install = (app) => {
|
|
18333
|
-
components.forEach(
|
|
18334
|
-
(component) => {
|
|
18335
|
-
if (!app._context.components[component.name]) {
|
|
18336
|
-
app.component(component.name, component);
|
|
18337
|
-
}
|
|
18338
|
-
}
|
|
18339
|
-
);
|
|
18340
|
-
app.use(pinia);
|
|
18341
|
-
directive(app);
|
|
18342
|
-
app.use(setupVXETable);
|
|
18343
|
-
};
|
|
18344
|
-
return {
|
|
18345
|
-
install
|
|
18346
|
-
};
|
|
18347
|
-
};
|
|
18348
|
-
|
|
18349
|
-
var _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
|
|
18398
|
+
var _sfc_main$e = /* @__PURE__ */ vue.defineComponent({
|
|
18350
18399
|
...{
|
|
18351
18400
|
name: "FButton"
|
|
18352
18401
|
},
|
|
@@ -18416,7 +18465,7 @@
|
|
|
18416
18465
|
}
|
|
18417
18466
|
});
|
|
18418
18467
|
|
|
18419
|
-
const FButton = _sfc_main$
|
|
18468
|
+
const FButton = _sfc_main$e;
|
|
18420
18469
|
|
|
18421
18470
|
const buildTranslator = (locale) => (path, option) => translate(path, option, vue.unref(locale));
|
|
18422
18471
|
const translate = (path, option, locale) => lodashEs.get(locale, path, path).replace(
|
|
@@ -18704,7 +18753,120 @@
|
|
|
18704
18753
|
|
|
18705
18754
|
var img = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEEAAABBCAYAAACO98lFAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFwmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDIgNzkuMTYwOTI0LCAyMDE3LzA3LzEzLTAxOjA2OjM5ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpIiB4bXA6Q3JlYXRlRGF0ZT0iMjAyNS0wNC0wNFQwMToyMzozMCswODowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyNS0wNC0wNFQwMToyMzozMCswODowMCIgeG1wOk1vZGlmeURhdGU9IjIwMjUtMDQtMDRUMDE6MjM6MzArMDg6MDAiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NDY0Mzc1NWEtZTM4ZC1hMzQxLWFmODgtNmFhY2FmYmI4ZDY0IiB4bXBNTTpEb2N1bWVudElEPSJhZG9iZTpkb2NpZDpwaG90b3Nob3A6MTdlYzEzMTgtNmY3Mi1mYjQ4LWI3YjUtMzg2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";
|
|
18706
18755
|
|
|
18756
|
+
var __defProp = Object.defineProperty;
|
|
18757
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
18758
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
18759
|
+
let signalR;
|
|
18760
|
+
async function loadSignalR() {
|
|
18761
|
+
if (!signalR) {
|
|
18762
|
+
const module = await Promise.resolve().then(function () { return signalR$1; });
|
|
18763
|
+
signalR = module.signalR;
|
|
18764
|
+
}
|
|
18765
|
+
return signalR;
|
|
18766
|
+
}
|
|
18707
18767
|
const { t } = useLocale();
|
|
18768
|
+
class IdleTimeoutManager {
|
|
18769
|
+
constructor(config = {}) {
|
|
18770
|
+
__publicField(this, "timerId", null);
|
|
18771
|
+
__publicField(this, "config");
|
|
18772
|
+
__publicField(this, "debouncedReset");
|
|
18773
|
+
/** 检查闲置超时时间间隔 */
|
|
18774
|
+
__publicField(this, "checkTimeoutInterval", 2 * 1e3);
|
|
18775
|
+
__publicField(this, "handleVisibilityChange", () => {
|
|
18776
|
+
if (document.visibilityState === "visible") {
|
|
18777
|
+
this.setLastActivityTime();
|
|
18778
|
+
}
|
|
18779
|
+
});
|
|
18780
|
+
this.config = {
|
|
18781
|
+
timeout: 30 * 60,
|
|
18782
|
+
events: ["mousewheel", "keydown", "click"],
|
|
18783
|
+
onTimeout: this.timeOutExec.bind(this),
|
|
18784
|
+
debounceInterval: 200,
|
|
18785
|
+
...config
|
|
18786
|
+
};
|
|
18787
|
+
this.debouncedReset = this.config.debounceInterval > 0 ? lodashEs.debounce(this.setLastActivityTime.bind(this), this.config.debounceInterval) : this.setLastActivityTime.bind(this);
|
|
18788
|
+
this.init();
|
|
18789
|
+
}
|
|
18790
|
+
init() {
|
|
18791
|
+
this.config.events.forEach((event) => {
|
|
18792
|
+
window.addEventListener(event, this.debouncedReset);
|
|
18793
|
+
});
|
|
18794
|
+
document.addEventListener("visibilitychange", this.handleVisibilityChange);
|
|
18795
|
+
this.setLastActivityTime();
|
|
18796
|
+
this.updateIdleTimeout(this.config.timeout);
|
|
18797
|
+
}
|
|
18798
|
+
/** 设置最后活动时间 */
|
|
18799
|
+
setLastActivityTime() {
|
|
18800
|
+
Local.set("lastActivityTime", (/* @__PURE__ */ new Date()).getTime());
|
|
18801
|
+
}
|
|
18802
|
+
/**
|
|
18803
|
+
* 更新空闲超时时间
|
|
18804
|
+
* @param timeout - 新的超时时间(毫秒)
|
|
18805
|
+
*/
|
|
18806
|
+
updateIdleTimeout(timeout) {
|
|
18807
|
+
this.config.timeout = timeout;
|
|
18808
|
+
if (this.config.timeout > 0 && this.timerId == null) {
|
|
18809
|
+
this.timerId = window.setInterval(this.checkTimeout.bind(this), this.checkTimeoutInterval);
|
|
18810
|
+
} else if (this.config.timeout == 0 && this.timerId != null) {
|
|
18811
|
+
window.clearInterval(this.timerId);
|
|
18812
|
+
this.timerId = null;
|
|
18813
|
+
}
|
|
18814
|
+
}
|
|
18815
|
+
/** 检查是否超时 */
|
|
18816
|
+
checkTimeout() {
|
|
18817
|
+
const currentTime = (/* @__PURE__ */ new Date()).getTime();
|
|
18818
|
+
const lastActivityTime = Number(Local.get("lastActivityTime"));
|
|
18819
|
+
if (lastActivityTime == 0) return;
|
|
18820
|
+
const accessToken = Local.get(accessTokenKey);
|
|
18821
|
+
if (!accessToken || accessToken == "invalid_token") return;
|
|
18822
|
+
const timeout = this.config.timeout * 1e3;
|
|
18823
|
+
if (currentTime - lastActivityTime > timeout) {
|
|
18824
|
+
this.destroy();
|
|
18825
|
+
this.config.onTimeout();
|
|
18826
|
+
}
|
|
18827
|
+
}
|
|
18828
|
+
/** 销毁实例 */
|
|
18829
|
+
destroy() {
|
|
18830
|
+
this.config.events.forEach((event) => {
|
|
18831
|
+
window.removeEventListener(event, this.debouncedReset);
|
|
18832
|
+
});
|
|
18833
|
+
document.removeEventListener("visibilitychange", this.handleVisibilityChange);
|
|
18834
|
+
if (this.timerId !== null) {
|
|
18835
|
+
window.clearInterval(this.timerId);
|
|
18836
|
+
this.timerId = null;
|
|
18837
|
+
}
|
|
18838
|
+
}
|
|
18839
|
+
/** 超时时执行 */
|
|
18840
|
+
timeOutExec() {
|
|
18841
|
+
const appEl = document.getElementById("app");
|
|
18842
|
+
appEl == null ? void 0 : appEl.remove();
|
|
18843
|
+
loadSignalR().then((signalR2) => {
|
|
18844
|
+
signalR2.stop();
|
|
18845
|
+
});
|
|
18846
|
+
Local.remove(accessTokenKey);
|
|
18847
|
+
Local.remove(refreshAccessTokenKey);
|
|
18848
|
+
Session.clear();
|
|
18849
|
+
elementPlus.ElMessageBox.alert(t("plus.list.idleTimeoutMessage"), t("plus.list.sysMessage"), {
|
|
18850
|
+
type: "warning",
|
|
18851
|
+
draggable: true,
|
|
18852
|
+
callback: () => {
|
|
18853
|
+
window.location.reload();
|
|
18854
|
+
}
|
|
18855
|
+
});
|
|
18856
|
+
}
|
|
18857
|
+
}
|
|
18858
|
+
function initIdleTimeout(config) {
|
|
18859
|
+
if (!window.__IDLE_TIMEOUT__) {
|
|
18860
|
+
window.__IDLE_TIMEOUT__ = new IdleTimeoutManager(config);
|
|
18861
|
+
}
|
|
18862
|
+
return window.__IDLE_TIMEOUT__;
|
|
18863
|
+
}
|
|
18864
|
+
function destroyIdleTimeout() {
|
|
18865
|
+
if (window.__IDLE_TIMEOUT__) {
|
|
18866
|
+
window.__IDLE_TIMEOUT__.destroy();
|
|
18867
|
+
window.__IDLE_TIMEOUT__ = void 0;
|
|
18868
|
+
}
|
|
18869
|
+
}
|
|
18708
18870
|
function updateIdleTimeout(timeout) {
|
|
18709
18871
|
if (window.__IDLE_TIMEOUT__) {
|
|
18710
18872
|
window.__IDLE_TIMEOUT__.updateIdleTimeout(timeout);
|
|
@@ -18823,9 +18985,9 @@
|
|
|
18823
18985
|
];
|
|
18824
18986
|
};
|
|
18825
18987
|
|
|
18826
|
-
const _hoisted_1$
|
|
18988
|
+
const _hoisted_1$7 = { key: 0 };
|
|
18827
18989
|
const _hoisted_2$3 = { key: 0 };
|
|
18828
|
-
var _sfc_main$
|
|
18990
|
+
var _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
|
|
18829
18991
|
...{
|
|
18830
18992
|
name: "FInput"
|
|
18831
18993
|
},
|
|
@@ -19029,7 +19191,7 @@
|
|
|
19029
19191
|
fn: vue.withCtx(() => [
|
|
19030
19192
|
__props.inputType === "amount" ? (vue.openBlock(), vue.createElementBlock(
|
|
19031
19193
|
"span",
|
|
19032
|
-
_hoisted_1$
|
|
19194
|
+
_hoisted_1$7,
|
|
19033
19195
|
vue.toDisplayString(appendTitleText.value),
|
|
19034
19196
|
1
|
|
19035
19197
|
/* TEXT */
|
|
@@ -19075,13 +19237,13 @@
|
|
|
19075
19237
|
}
|
|
19076
19238
|
});
|
|
19077
19239
|
|
|
19078
|
-
const FInput = _sfc_main$
|
|
19240
|
+
const FInput = _sfc_main$d;
|
|
19079
19241
|
|
|
19080
|
-
const _hoisted_1$
|
|
19242
|
+
const _hoisted_1$6 = {
|
|
19081
19243
|
key: 0,
|
|
19082
19244
|
class: "back_to_top"
|
|
19083
19245
|
};
|
|
19084
|
-
var _sfc_main$
|
|
19246
|
+
var _sfc_main$c = /* @__PURE__ */ vue.defineComponent({
|
|
19085
19247
|
...{
|
|
19086
19248
|
name: "FLayoutPage"
|
|
19087
19249
|
},
|
|
@@ -19143,7 +19305,7 @@
|
|
|
19143
19305
|
},
|
|
19144
19306
|
[
|
|
19145
19307
|
vue.renderSlot(_ctx.$slots, "default"),
|
|
19146
|
-
__props.showGoTopButton ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
19308
|
+
__props.showGoTopButton ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$6, [
|
|
19147
19309
|
isShowGoTopButton.value ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
19148
19310
|
key: 0,
|
|
19149
19311
|
onClick: backToTop
|
|
@@ -19171,9 +19333,9 @@
|
|
|
19171
19333
|
}
|
|
19172
19334
|
});
|
|
19173
19335
|
|
|
19174
|
-
const FLayoutPage = _sfc_main$
|
|
19336
|
+
const FLayoutPage = _sfc_main$c;
|
|
19175
19337
|
|
|
19176
|
-
var _sfc_main$
|
|
19338
|
+
var _sfc_main$b = /* @__PURE__ */ vue.defineComponent({
|
|
19177
19339
|
...{
|
|
19178
19340
|
name: "FLayoutPageItem"
|
|
19179
19341
|
},
|
|
@@ -19201,7 +19363,150 @@
|
|
|
19201
19363
|
}
|
|
19202
19364
|
});
|
|
19203
19365
|
|
|
19204
|
-
const FLayoutPageItem = _sfc_main$
|
|
19366
|
+
const FLayoutPageItem = _sfc_main$b;
|
|
19367
|
+
|
|
19368
|
+
function debounce(func, delay = 500, immediate, resultCallback) {
|
|
19369
|
+
let timer = null;
|
|
19370
|
+
let isInvoke = false;
|
|
19371
|
+
const _debounce = function(...args) {
|
|
19372
|
+
return new Promise((resolve, reject) => {
|
|
19373
|
+
if (timer) clearTimeout(timer);
|
|
19374
|
+
if (!isInvoke) {
|
|
19375
|
+
try {
|
|
19376
|
+
const result = func.apply(this, args);
|
|
19377
|
+
if (resultCallback) ;
|
|
19378
|
+
resolve(result);
|
|
19379
|
+
} catch (e) {
|
|
19380
|
+
reject(e);
|
|
19381
|
+
}
|
|
19382
|
+
isInvoke = true;
|
|
19383
|
+
} else {
|
|
19384
|
+
timer = setTimeout(() => {
|
|
19385
|
+
try {
|
|
19386
|
+
const result = func.apply(this, args);
|
|
19387
|
+
if (resultCallback) ;
|
|
19388
|
+
resolve(result);
|
|
19389
|
+
} catch (e) {
|
|
19390
|
+
reject(e);
|
|
19391
|
+
}
|
|
19392
|
+
isInvoke = false;
|
|
19393
|
+
timer = null;
|
|
19394
|
+
}, delay);
|
|
19395
|
+
}
|
|
19396
|
+
});
|
|
19397
|
+
};
|
|
19398
|
+
_debounce.cancel = function() {
|
|
19399
|
+
if (timer) clearTimeout(timer);
|
|
19400
|
+
isInvoke = false;
|
|
19401
|
+
timer = null;
|
|
19402
|
+
};
|
|
19403
|
+
return _debounce;
|
|
19404
|
+
}
|
|
19405
|
+
function toLine(name) {
|
|
19406
|
+
return name.replace(/([A-Z])/g, "_$1").toLowerCase();
|
|
19407
|
+
}
|
|
19408
|
+
|
|
19409
|
+
const _hoisted_1$5 = ["id"];
|
|
19410
|
+
var _sfc_main$a = /* @__PURE__ */ vue.defineComponent({
|
|
19411
|
+
...{
|
|
19412
|
+
name: "FChart"
|
|
19413
|
+
},
|
|
19414
|
+
__name: "index",
|
|
19415
|
+
props: {
|
|
19416
|
+
options: { default: () => ({}) },
|
|
19417
|
+
id: { default: () => Math.random().toString(36).substring(2, 8) },
|
|
19418
|
+
theme: { default: "" },
|
|
19419
|
+
isEmpty: { type: [Boolean, Function], default: false },
|
|
19420
|
+
description: { default: "\u6682\u65E0\u6570\u636E" }
|
|
19421
|
+
},
|
|
19422
|
+
setup(__props, { emit: __emit }) {
|
|
19423
|
+
const { proxy } = vue.getCurrentInstance();
|
|
19424
|
+
const props = __props;
|
|
19425
|
+
const echartRef = vue.ref();
|
|
19426
|
+
const chart = vue.ref();
|
|
19427
|
+
const emits = __emit;
|
|
19428
|
+
const events = Object.entries(vue.useAttrs());
|
|
19429
|
+
const renderChart = () => {
|
|
19430
|
+
chart.value = vue.markRaw(proxy.$echarts.init(echartRef.value, props.theme));
|
|
19431
|
+
setOption(props.options);
|
|
19432
|
+
emits("chart", chart.value);
|
|
19433
|
+
events.forEach(([key, value]) => {
|
|
19434
|
+
if (key.startsWith("on") && !key.startsWith("onChart")) {
|
|
19435
|
+
const on = toLine(key).substring(3);
|
|
19436
|
+
chart.value.on(on, (...args) => emits(on, ...args));
|
|
19437
|
+
}
|
|
19438
|
+
});
|
|
19439
|
+
core.useResizeObserver(echartRef.value, resizeChart);
|
|
19440
|
+
};
|
|
19441
|
+
const resizeChart = debounce(
|
|
19442
|
+
() => {
|
|
19443
|
+
var _a;
|
|
19444
|
+
(_a = chart.value) == null ? void 0 : _a.resize();
|
|
19445
|
+
},
|
|
19446
|
+
300);
|
|
19447
|
+
const setOption = debounce(
|
|
19448
|
+
async (data) => {
|
|
19449
|
+
if (!chart.value) return;
|
|
19450
|
+
chart.value.setOption(data, true, true);
|
|
19451
|
+
await vue.nextTick();
|
|
19452
|
+
resizeChart();
|
|
19453
|
+
},
|
|
19454
|
+
300);
|
|
19455
|
+
const formatEmpty = vue.computed(() => {
|
|
19456
|
+
if (typeof props.isEmpty === "function") {
|
|
19457
|
+
return props.isEmpty(props.options);
|
|
19458
|
+
}
|
|
19459
|
+
return props.isEmpty;
|
|
19460
|
+
});
|
|
19461
|
+
vue.watch(
|
|
19462
|
+
() => props.options,
|
|
19463
|
+
async (nw) => {
|
|
19464
|
+
await vue.nextTick();
|
|
19465
|
+
setOption(nw);
|
|
19466
|
+
},
|
|
19467
|
+
{ deep: true }
|
|
19468
|
+
);
|
|
19469
|
+
vue.watch(
|
|
19470
|
+
() => props.theme,
|
|
19471
|
+
async () => {
|
|
19472
|
+
chart.value.dispose();
|
|
19473
|
+
renderChart();
|
|
19474
|
+
}
|
|
19475
|
+
);
|
|
19476
|
+
vue.onMounted(() => {
|
|
19477
|
+
renderChart();
|
|
19478
|
+
});
|
|
19479
|
+
vue.onBeforeUnmount(() => {
|
|
19480
|
+
chart.value.dispose();
|
|
19481
|
+
chart.value = null;
|
|
19482
|
+
});
|
|
19483
|
+
return (_ctx, _cache) => {
|
|
19484
|
+
const _component_el_empty = vue.resolveComponent("el-empty");
|
|
19485
|
+
return vue.openBlock(), vue.createElementBlock(
|
|
19486
|
+
"div",
|
|
19487
|
+
vue.mergeProps({ class: "f-chart" }, _ctx.$attrs),
|
|
19488
|
+
[
|
|
19489
|
+
vue.withDirectives(vue.createElementVNode("div", {
|
|
19490
|
+
class: "f-chart-container",
|
|
19491
|
+
id: __props.id,
|
|
19492
|
+
ref_key: "echartRef",
|
|
19493
|
+
ref: echartRef
|
|
19494
|
+
}, null, 8, _hoisted_1$5), [
|
|
19495
|
+
[vue.vShow, !formatEmpty.value]
|
|
19496
|
+
]),
|
|
19497
|
+
formatEmpty.value ? vue.renderSlot(_ctx.$slots, "empty", { key: 0 }, () => [
|
|
19498
|
+
vue.createVNode(_component_el_empty, vue.mergeProps(_ctx.$attrs, { description: __props.description }), null, 16, ["description"])
|
|
19499
|
+
]) : vue.createCommentVNode("v-if", true),
|
|
19500
|
+
vue.renderSlot(_ctx.$slots, "default")
|
|
19501
|
+
],
|
|
19502
|
+
16
|
|
19503
|
+
/* FULL_PROPS */
|
|
19504
|
+
);
|
|
19505
|
+
};
|
|
19506
|
+
}
|
|
19507
|
+
});
|
|
19508
|
+
|
|
19509
|
+
const FChart = _sfc_main$a;
|
|
19205
19510
|
|
|
19206
19511
|
const _hoisted_1$4 = {
|
|
19207
19512
|
key: 1,
|
|
@@ -21821,148 +22126,129 @@
|
|
|
21821
22126
|
|
|
21822
22127
|
const FForm = _sfc_main$1;
|
|
21823
22128
|
|
|
21824
|
-
|
|
21825
|
-
let timer = null;
|
|
21826
|
-
let isInvoke = false;
|
|
21827
|
-
const _debounce = function(...args) {
|
|
21828
|
-
return new Promise((resolve, reject) => {
|
|
21829
|
-
if (timer) clearTimeout(timer);
|
|
21830
|
-
if (!isInvoke) {
|
|
21831
|
-
try {
|
|
21832
|
-
const result = func.apply(this, args);
|
|
21833
|
-
if (resultCallback) ;
|
|
21834
|
-
resolve(result);
|
|
21835
|
-
} catch (e) {
|
|
21836
|
-
reject(e);
|
|
21837
|
-
}
|
|
21838
|
-
isInvoke = true;
|
|
21839
|
-
} else {
|
|
21840
|
-
timer = setTimeout(() => {
|
|
21841
|
-
try {
|
|
21842
|
-
const result = func.apply(this, args);
|
|
21843
|
-
if (resultCallback) ;
|
|
21844
|
-
resolve(result);
|
|
21845
|
-
} catch (e) {
|
|
21846
|
-
reject(e);
|
|
21847
|
-
}
|
|
21848
|
-
isInvoke = false;
|
|
21849
|
-
timer = null;
|
|
21850
|
-
}, delay);
|
|
21851
|
-
}
|
|
21852
|
-
});
|
|
21853
|
-
};
|
|
21854
|
-
_debounce.cancel = function() {
|
|
21855
|
-
if (timer) clearTimeout(timer);
|
|
21856
|
-
isInvoke = false;
|
|
21857
|
-
timer = null;
|
|
21858
|
-
};
|
|
21859
|
-
return _debounce;
|
|
21860
|
-
}
|
|
21861
|
-
function toLine(name) {
|
|
21862
|
-
return name.replace(/([A-Z])/g, "_$1").toLowerCase();
|
|
21863
|
-
}
|
|
21864
|
-
|
|
21865
|
-
const _hoisted_1 = ["id"];
|
|
22129
|
+
const _hoisted_1 = ["src"];
|
|
21866
22130
|
var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
21867
22131
|
...{
|
|
21868
|
-
name: "
|
|
22132
|
+
name: "svgIcon"
|
|
21869
22133
|
},
|
|
21870
|
-
__name: "
|
|
22134
|
+
__name: "svgicon",
|
|
21871
22135
|
props: {
|
|
21872
|
-
|
|
21873
|
-
|
|
21874
|
-
|
|
21875
|
-
|
|
21876
|
-
|
|
22136
|
+
// svg 图标组件名字
|
|
22137
|
+
name: {
|
|
22138
|
+
type: String
|
|
22139
|
+
},
|
|
22140
|
+
// svg 大小
|
|
22141
|
+
size: {
|
|
22142
|
+
type: Number,
|
|
22143
|
+
default: () => 14
|
|
22144
|
+
},
|
|
22145
|
+
// svg 颜色
|
|
22146
|
+
color: {
|
|
22147
|
+
type: String
|
|
22148
|
+
}
|
|
21877
22149
|
},
|
|
21878
|
-
setup(__props
|
|
21879
|
-
const { proxy } = vue.getCurrentInstance();
|
|
22150
|
+
setup(__props) {
|
|
21880
22151
|
const props = __props;
|
|
21881
|
-
const
|
|
21882
|
-
const
|
|
21883
|
-
|
|
21884
|
-
|
|
21885
|
-
const
|
|
21886
|
-
|
|
21887
|
-
|
|
21888
|
-
|
|
21889
|
-
|
|
21890
|
-
|
|
21891
|
-
const on = toLine(key).substring(3);
|
|
21892
|
-
chart.value.on(on, (...args) => emits(on, ...args));
|
|
21893
|
-
}
|
|
21894
|
-
});
|
|
21895
|
-
core.useResizeObserver(echartRef.value, resizeChart);
|
|
21896
|
-
};
|
|
21897
|
-
const resizeChart = debounce(
|
|
21898
|
-
() => {
|
|
22152
|
+
const linesString = ["https", "http", "/src", "/assets", "data:image", window.__env__.VITE_PUBLIC_PATH];
|
|
22153
|
+
const getIconName = vue.computed(() => {
|
|
22154
|
+
return props == null ? void 0 : props.name;
|
|
22155
|
+
});
|
|
22156
|
+
const isShowIconSvg = vue.computed(() => {
|
|
22157
|
+
var _a;
|
|
22158
|
+
return (_a = props == null ? void 0 : props.name) == null ? void 0 : _a.startsWith("ele-");
|
|
22159
|
+
});
|
|
22160
|
+
const isShowIconImg = vue.computed(() => {
|
|
22161
|
+
return linesString.find((str) => {
|
|
21899
22162
|
var _a;
|
|
21900
|
-
(_a =
|
|
21901
|
-
}
|
|
21902
|
-
300);
|
|
21903
|
-
const setOption = debounce(
|
|
21904
|
-
async (data) => {
|
|
21905
|
-
if (!chart.value) return;
|
|
21906
|
-
chart.value.setOption(data, true, true);
|
|
21907
|
-
await vue.nextTick();
|
|
21908
|
-
resizeChart();
|
|
21909
|
-
},
|
|
21910
|
-
300);
|
|
21911
|
-
const formatEmpty = vue.computed(() => {
|
|
21912
|
-
if (typeof props.isEmpty === "function") {
|
|
21913
|
-
return props.isEmpty(props.options);
|
|
21914
|
-
}
|
|
21915
|
-
return props.isEmpty;
|
|
22163
|
+
return (_a = props.name) == null ? void 0 : _a.startsWith(str);
|
|
22164
|
+
});
|
|
21916
22165
|
});
|
|
21917
|
-
vue.
|
|
21918
|
-
|
|
21919
|
-
async (nw) => {
|
|
21920
|
-
await vue.nextTick();
|
|
21921
|
-
setOption(nw);
|
|
21922
|
-
},
|
|
21923
|
-
{ deep: true }
|
|
21924
|
-
);
|
|
21925
|
-
vue.watch(
|
|
21926
|
-
() => props.theme,
|
|
21927
|
-
async () => {
|
|
21928
|
-
chart.value.dispose();
|
|
21929
|
-
renderChart();
|
|
21930
|
-
}
|
|
21931
|
-
);
|
|
21932
|
-
vue.onMounted(() => {
|
|
21933
|
-
renderChart();
|
|
22166
|
+
const setIconSvgStyle = vue.computed(() => {
|
|
22167
|
+
return `font-size: ${props.size}px;color: ${props.color};`;
|
|
21934
22168
|
});
|
|
21935
|
-
vue.
|
|
21936
|
-
|
|
21937
|
-
|
|
22169
|
+
const setIconImgOutStyle = vue.computed(() => {
|
|
22170
|
+
return `width: ${props.size}px;height: ${props.size}px;display: inline-block;overflow: hidden;`;
|
|
22171
|
+
});
|
|
22172
|
+
const setIconSvgInsStyle = vue.computed(() => {
|
|
22173
|
+
const filterStyle = [];
|
|
22174
|
+
const compatibles = ["-webkit", "-ms", "-o", "-moz"];
|
|
22175
|
+
compatibles.forEach((j) => filterStyle.push(`${j}-filter: drop-shadow(${props.color} ${props.size}px 0);`));
|
|
22176
|
+
return `width: ${props.size}px;height: ${props.size}px;position: relative;left: -${props.size}px;${filterStyle.join("")}`;
|
|
21938
22177
|
});
|
|
21939
22178
|
return (_ctx, _cache) => {
|
|
21940
|
-
|
|
21941
|
-
|
|
22179
|
+
return isShowIconSvg.value ? (vue.openBlock(), vue.createElementBlock(
|
|
22180
|
+
"i",
|
|
22181
|
+
{
|
|
22182
|
+
key: 0,
|
|
22183
|
+
class: "el-icon",
|
|
22184
|
+
style: vue.normalizeStyle(setIconSvgStyle.value)
|
|
22185
|
+
},
|
|
22186
|
+
[
|
|
22187
|
+
(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(getIconName.value)))
|
|
22188
|
+
],
|
|
22189
|
+
4
|
|
22190
|
+
/* STYLE */
|
|
22191
|
+
)) : isShowIconImg.value ? (vue.openBlock(), vue.createElementBlock(
|
|
21942
22192
|
"div",
|
|
21943
|
-
|
|
22193
|
+
{
|
|
22194
|
+
key: 1,
|
|
22195
|
+
style: vue.normalizeStyle(setIconImgOutStyle.value)
|
|
22196
|
+
},
|
|
21944
22197
|
[
|
|
21945
|
-
vue.
|
|
21946
|
-
|
|
21947
|
-
|
|
21948
|
-
|
|
21949
|
-
ref: echartRef
|
|
21950
|
-
}, null, 8, _hoisted_1), [
|
|
21951
|
-
[vue.vShow, !formatEmpty.value]
|
|
21952
|
-
]),
|
|
21953
|
-
formatEmpty.value ? vue.renderSlot(_ctx.$slots, "empty", { key: 0 }, () => [
|
|
21954
|
-
vue.createVNode(_component_el_empty, vue.mergeProps(_ctx.$attrs, { description: __props.description }), null, 16, ["description"])
|
|
21955
|
-
]) : vue.createCommentVNode("v-if", true),
|
|
21956
|
-
vue.renderSlot(_ctx.$slots, "default")
|
|
22198
|
+
vue.createElementVNode("img", {
|
|
22199
|
+
src: getIconName.value,
|
|
22200
|
+
style: vue.normalizeStyle(setIconSvgInsStyle.value)
|
|
22201
|
+
}, null, 12, _hoisted_1)
|
|
21957
22202
|
],
|
|
21958
|
-
|
|
21959
|
-
/*
|
|
21960
|
-
)
|
|
22203
|
+
4
|
|
22204
|
+
/* STYLE */
|
|
22205
|
+
)) : (vue.openBlock(), vue.createElementBlock(
|
|
22206
|
+
"i",
|
|
22207
|
+
{
|
|
22208
|
+
key: 2,
|
|
22209
|
+
class: vue.normalizeClass(getIconName.value),
|
|
22210
|
+
style: vue.normalizeStyle(setIconSvgStyle.value)
|
|
22211
|
+
},
|
|
22212
|
+
null,
|
|
22213
|
+
6
|
|
22214
|
+
/* CLASS, STYLE */
|
|
22215
|
+
));
|
|
21961
22216
|
};
|
|
21962
22217
|
}
|
|
21963
22218
|
});
|
|
21964
22219
|
|
|
21965
|
-
|
|
22220
|
+
function elSvg(app) {
|
|
22221
|
+
const icons = svg__namespace;
|
|
22222
|
+
for (const i in icons) {
|
|
22223
|
+
if (!app._context.components[`ele-${icons[i].name}`]) {
|
|
22224
|
+
app.component(`ele-${icons[i].name}`, icons[i]);
|
|
22225
|
+
}
|
|
22226
|
+
}
|
|
22227
|
+
if (!app._context.components[`SvgIcon`]) {
|
|
22228
|
+
app.component("SvgIcon", _sfc_main);
|
|
22229
|
+
}
|
|
22230
|
+
}
|
|
22231
|
+
|
|
22232
|
+
const makeInstaller = (components = []) => {
|
|
22233
|
+
const install = (app) => {
|
|
22234
|
+
components.forEach(
|
|
22235
|
+
(component) => {
|
|
22236
|
+
if (!app._context.components[component.name]) {
|
|
22237
|
+
app.component(component.name, component);
|
|
22238
|
+
}
|
|
22239
|
+
}
|
|
22240
|
+
);
|
|
22241
|
+
if (app) {
|
|
22242
|
+
app.use(pinia);
|
|
22243
|
+
elSvg(app);
|
|
22244
|
+
directive(app);
|
|
22245
|
+
app.use(setupVXETable);
|
|
22246
|
+
}
|
|
22247
|
+
};
|
|
22248
|
+
return {
|
|
22249
|
+
install
|
|
22250
|
+
};
|
|
22251
|
+
};
|
|
21966
22252
|
|
|
21967
22253
|
const plugins = [
|
|
21968
22254
|
FButton,
|
|
@@ -22562,6 +22848,133 @@
|
|
|
22562
22848
|
return router;
|
|
22563
22849
|
}
|
|
22564
22850
|
|
|
22851
|
+
function useTitle() {
|
|
22852
|
+
const stores = useThemeConfig(pinia);
|
|
22853
|
+
const { themeConfig } = pinia$1.storeToRefs(stores);
|
|
22854
|
+
vue.nextTick(() => {
|
|
22855
|
+
let webTitle = "";
|
|
22856
|
+
let globalTitle = themeConfig.value.globalTitle;
|
|
22857
|
+
const { path, meta } = router.currentRoute.value;
|
|
22858
|
+
if (path === "/login") {
|
|
22859
|
+
webTitle = meta.title;
|
|
22860
|
+
} else {
|
|
22861
|
+
webTitle = setTagsViewNameI18n(router.currentRoute.value);
|
|
22862
|
+
}
|
|
22863
|
+
document.title = `${webTitle} - ${globalTitle}` || globalTitle;
|
|
22864
|
+
});
|
|
22865
|
+
}
|
|
22866
|
+
function setTagsViewNameI18n(item) {
|
|
22867
|
+
let tagsViewName = "";
|
|
22868
|
+
const { query, params, meta } = item;
|
|
22869
|
+
const pattern = /^\{("(zh-CN|en|zh-TW)":"[^,]+",?){1,3}}$/;
|
|
22870
|
+
if ((query == null ? void 0 : query.tagsViewName) || (params == null ? void 0 : params.tagsViewName)) {
|
|
22871
|
+
if (pattern.test(query == null ? void 0 : query.tagsViewName) || pattern.test(params == null ? void 0 : params.tagsViewName)) {
|
|
22872
|
+
const urlTagsParams = (query == null ? void 0 : query.tagsViewName) && JSON.parse(query == null ? void 0 : query.tagsViewName) || (params == null ? void 0 : params.tagsViewName) && JSON.parse(params == null ? void 0 : params.tagsViewName);
|
|
22873
|
+
tagsViewName = urlTagsParams[i18n.global.locale.value];
|
|
22874
|
+
} else {
|
|
22875
|
+
tagsViewName = (query == null ? void 0 : query.tagsViewName) || (params == null ? void 0 : params.tagsViewName);
|
|
22876
|
+
}
|
|
22877
|
+
} else {
|
|
22878
|
+
tagsViewName = i18n.global.t(`message.menu.${meta.title}`);
|
|
22879
|
+
}
|
|
22880
|
+
return tagsViewName;
|
|
22881
|
+
}
|
|
22882
|
+
const lazyImg = (el, arr) => {
|
|
22883
|
+
const io = new IntersectionObserver((res) => {
|
|
22884
|
+
res.forEach((v) => {
|
|
22885
|
+
if (v.isIntersecting) {
|
|
22886
|
+
const { img, key } = v.target.dataset;
|
|
22887
|
+
v.target.src = img;
|
|
22888
|
+
v.target.onload = () => {
|
|
22889
|
+
io.unobserve(v.target);
|
|
22890
|
+
arr[key]["loading"] = false;
|
|
22891
|
+
};
|
|
22892
|
+
}
|
|
22893
|
+
});
|
|
22894
|
+
});
|
|
22895
|
+
vue.nextTick(() => {
|
|
22896
|
+
document.querySelectorAll(el).forEach((img) => io.observe(img));
|
|
22897
|
+
});
|
|
22898
|
+
};
|
|
22899
|
+
const globalComponentSize = () => {
|
|
22900
|
+
const stores = useThemeConfig(pinia);
|
|
22901
|
+
const { themeConfig } = pinia$1.storeToRefs(stores);
|
|
22902
|
+
return themeConfig.value.globalComponentSize;
|
|
22903
|
+
};
|
|
22904
|
+
function deepClone(obj) {
|
|
22905
|
+
let newObj;
|
|
22906
|
+
try {
|
|
22907
|
+
newObj = obj.push ? [] : {};
|
|
22908
|
+
} catch (error) {
|
|
22909
|
+
newObj = {};
|
|
22910
|
+
}
|
|
22911
|
+
for (let attr in obj) {
|
|
22912
|
+
if (obj[attr] && typeof obj[attr] === "object") {
|
|
22913
|
+
newObj[attr] = deepClone(obj[attr]);
|
|
22914
|
+
} else {
|
|
22915
|
+
newObj[attr] = obj[attr];
|
|
22916
|
+
}
|
|
22917
|
+
}
|
|
22918
|
+
return newObj;
|
|
22919
|
+
}
|
|
22920
|
+
function isMobile() {
|
|
22921
|
+
if (navigator.userAgent.match(/('phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone')/i)) {
|
|
22922
|
+
return true;
|
|
22923
|
+
} else {
|
|
22924
|
+
return false;
|
|
22925
|
+
}
|
|
22926
|
+
}
|
|
22927
|
+
function handleEmpty(list) {
|
|
22928
|
+
const arr = [];
|
|
22929
|
+
for (const i in list) {
|
|
22930
|
+
const d = [];
|
|
22931
|
+
for (const j in list[i]) {
|
|
22932
|
+
d.push(list[i][j]);
|
|
22933
|
+
}
|
|
22934
|
+
const leng = d.filter((item) => item === "").length;
|
|
22935
|
+
if (leng !== d.length) {
|
|
22936
|
+
arr.push(list[i]);
|
|
22937
|
+
}
|
|
22938
|
+
}
|
|
22939
|
+
return arr;
|
|
22940
|
+
}
|
|
22941
|
+
function handleOpenLink(val) {
|
|
22942
|
+
var _a, _b, _c;
|
|
22943
|
+
const { origin, pathname } = window.location;
|
|
22944
|
+
router.push(val.path);
|
|
22945
|
+
if (verifyUrl((_a = val.meta) == null ? void 0 : _a.isLink)) window.open((_b = val.meta) == null ? void 0 : _b.isLink);
|
|
22946
|
+
else window.open(`${origin}${pathname}#${(_c = val.meta) == null ? void 0 : _c.isLink}`);
|
|
22947
|
+
}
|
|
22948
|
+
const other = {
|
|
22949
|
+
// elSvg: (app: App) => {
|
|
22950
|
+
// elSvg(app);
|
|
22951
|
+
// },
|
|
22952
|
+
useTitle: () => {
|
|
22953
|
+
useTitle();
|
|
22954
|
+
},
|
|
22955
|
+
setTagsViewNameI18n(route) {
|
|
22956
|
+
return setTagsViewNameI18n(route);
|
|
22957
|
+
},
|
|
22958
|
+
lazyImg: (el, arr) => {
|
|
22959
|
+
lazyImg(el, arr);
|
|
22960
|
+
},
|
|
22961
|
+
globalComponentSize: () => {
|
|
22962
|
+
return globalComponentSize();
|
|
22963
|
+
},
|
|
22964
|
+
deepClone: (obj) => {
|
|
22965
|
+
return deepClone(obj);
|
|
22966
|
+
},
|
|
22967
|
+
isMobile: () => {
|
|
22968
|
+
return isMobile();
|
|
22969
|
+
},
|
|
22970
|
+
handleEmpty: (list) => {
|
|
22971
|
+
return handleEmpty(list);
|
|
22972
|
+
},
|
|
22973
|
+
handleOpenLink: (val) => {
|
|
22974
|
+
handleOpenLink(val);
|
|
22975
|
+
}
|
|
22976
|
+
};
|
|
22977
|
+
|
|
22565
22978
|
const version = "1.0.0";
|
|
22566
22979
|
|
|
22567
22980
|
const commonFun = commonFunction();
|
|
@@ -22574,6 +22987,7 @@
|
|
|
22574
22987
|
exports.NextLoading = NextLoading;
|
|
22575
22988
|
exports.Session = Session;
|
|
22576
22989
|
exports.StringToObj = StringToObj;
|
|
22990
|
+
exports.Watermark = watermark;
|
|
22577
22991
|
exports.accessTokenKey = accessTokenKey;
|
|
22578
22992
|
exports.auth = auth;
|
|
22579
22993
|
exports.authAll = authAll;
|
|
@@ -22594,6 +23008,7 @@
|
|
|
22594
23008
|
exports.dataURLtoBlob = dataURLtoBlob;
|
|
22595
23009
|
exports.decryptJWT = decryptJWT;
|
|
22596
23010
|
exports.default = installer;
|
|
23011
|
+
exports.destroyIdleTimeout = destroyIdleTimeout;
|
|
22597
23012
|
exports.downloadByBase64 = downloadByBase64;
|
|
22598
23013
|
exports.downloadByData = downloadByData;
|
|
22599
23014
|
exports.downloadByOnlineUrl = downloadByOnlineUrl;
|
|
@@ -22622,6 +23037,7 @@
|
|
|
22622
23037
|
exports.i18n = i18n;
|
|
22623
23038
|
exports.initBackEndControlRoutes = initBackEndControlRoutes;
|
|
22624
23039
|
exports.initFrontEndControlRoutes = initFrontEndControlRoutes;
|
|
23040
|
+
exports.initIdleTimeout = initIdleTimeout;
|
|
22625
23041
|
exports.initRouter = initRouter;
|
|
22626
23042
|
exports.install = install;
|
|
22627
23043
|
exports.isAdmin = isAdmin;
|
|
@@ -22640,6 +23056,7 @@
|
|
|
22640
23056
|
exports.openWindow = openWindow;
|
|
22641
23057
|
exports.orgId = orgId;
|
|
22642
23058
|
exports.orgName = orgName;
|
|
23059
|
+
exports.other = other;
|
|
22643
23060
|
exports.posId = posId;
|
|
22644
23061
|
exports.posName = posName;
|
|
22645
23062
|
exports.reLoadLoginAccessToken = reLoadLoginAccessToken;
|
|
@@ -22655,12 +23072,14 @@
|
|
|
22655
23072
|
exports.setJsCdn = setJsCdn;
|
|
22656
23073
|
exports.setPathPrefix = setPathPrefix;
|
|
22657
23074
|
exports.setupI18n = setupI18n;
|
|
23075
|
+
exports.signalR = connection;
|
|
22658
23076
|
exports.signatureByKSort = signatureByKSort;
|
|
22659
23077
|
exports.sleep = sleep;
|
|
22660
23078
|
exports.tansParams = tansParams;
|
|
22661
23079
|
exports.tenantId = tenantId;
|
|
22662
23080
|
exports.translate = translate;
|
|
22663
23081
|
exports.updateFavicon = updateFavicon;
|
|
23082
|
+
exports.updateIdleTimeout = updateIdleTimeout;
|
|
22664
23083
|
exports.urlToBase64 = urlToBase64;
|
|
22665
23084
|
exports.useApi = useApi;
|
|
22666
23085
|
exports.useBaseApi = useBaseApi;
|