zzz-pc-view 0.0.50 → 0.0.52
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/package.json
CHANGED
package/src/index.es.js
CHANGED
|
@@ -2152,20 +2152,20 @@ class WebSocketManager {
|
|
|
2152
2152
|
}
|
|
2153
2153
|
}
|
|
2154
2154
|
var ZNavTypeEnum = /* @__PURE__ */ ((ZNavTypeEnum2) => {
|
|
2155
|
-
ZNavTypeEnum2[ZNavTypeEnum2["
|
|
2155
|
+
ZNavTypeEnum2[ZNavTypeEnum2["FOLDER"] = 1] = "FOLDER";
|
|
2156
2156
|
ZNavTypeEnum2[ZNavTypeEnum2["MENU"] = 2] = "MENU";
|
|
2157
2157
|
ZNavTypeEnum2[ZNavTypeEnum2["BUTTON"] = 3] = "BUTTON";
|
|
2158
2158
|
return ZNavTypeEnum2;
|
|
2159
2159
|
})(ZNavTypeEnum || {});
|
|
2160
2160
|
class ZBaseNav extends WithPrototype {
|
|
2161
2161
|
}
|
|
2162
|
-
class
|
|
2162
|
+
class ZNavFolder extends ZBaseNav {
|
|
2163
2163
|
constructor() {
|
|
2164
2164
|
super(...arguments);
|
|
2165
2165
|
/**
|
|
2166
|
-
* 导航目录的类型,固定为 ZNavTypeEnum.
|
|
2166
|
+
* 导航目录的类型,固定为 ZNavTypeEnum.FOLDER
|
|
2167
2167
|
* @readonly
|
|
2168
|
-
* @type {ZNavTypeEnum.
|
|
2168
|
+
* @type {ZNavTypeEnum.FOLDER}
|
|
2169
2169
|
*/
|
|
2170
2170
|
__publicField(this, "type", 1);
|
|
2171
2171
|
}
|
|
@@ -2204,7 +2204,7 @@ class ZNavButton extends ZBaseNav {
|
|
|
2204
2204
|
}
|
|
2205
2205
|
}
|
|
2206
2206
|
const getNavsCategory = (navs, pageViewMap) => {
|
|
2207
|
-
const
|
|
2207
|
+
const navFolders = [];
|
|
2208
2208
|
const navMenus = [];
|
|
2209
2209
|
const navLinks = [];
|
|
2210
2210
|
const navButtons = [];
|
|
@@ -2213,7 +2213,7 @@ const getNavsCategory = (navs, pageViewMap) => {
|
|
|
2213
2213
|
const nav = navs[i];
|
|
2214
2214
|
switch (nav.type) {
|
|
2215
2215
|
case 1:
|
|
2216
|
-
|
|
2216
|
+
navFolders.push(ZNavFolder.bindObject(nav));
|
|
2217
2217
|
break;
|
|
2218
2218
|
case 2:
|
|
2219
2219
|
const { name } = nav;
|
|
@@ -2231,7 +2231,7 @@ const getNavsCategory = (navs, pageViewMap) => {
|
|
|
2231
2231
|
}
|
|
2232
2232
|
}
|
|
2233
2233
|
return {
|
|
2234
|
-
|
|
2234
|
+
navFolders,
|
|
2235
2235
|
navMenus: sort(navMenus, "orderNo"),
|
|
2236
2236
|
navLinks,
|
|
2237
2237
|
navButtons: sort(navButtons, "orderNo")
|
|
@@ -2390,10 +2390,10 @@ const setRoutes = (option) => {
|
|
|
2390
2390
|
};
|
|
2391
2391
|
const navTreeRef = shallowRef(list$1);
|
|
2392
2392
|
const navChildrenMapRef = shallowRef(object);
|
|
2393
|
-
const setNavTree = (
|
|
2393
|
+
const setNavTree = (navFolders, navMenus, navLinks) => {
|
|
2394
2394
|
const buildList = navMenus.filter((navMenu) => !navMenu.isHide);
|
|
2395
2395
|
buildList.push(...navLinks);
|
|
2396
|
-
const
|
|
2396
|
+
const navFolderMap = toKeyValue(navFolders, "id");
|
|
2397
2397
|
const childrenMap = {};
|
|
2398
2398
|
const roots = [];
|
|
2399
2399
|
for (let nav; nav = buildList.shift(); ) {
|
|
@@ -2402,7 +2402,7 @@ const setNavTree = (navDirs, navMenus, navLinks) => {
|
|
|
2402
2402
|
roots.push(nav);
|
|
2403
2403
|
continue;
|
|
2404
2404
|
}
|
|
2405
|
-
const parent =
|
|
2405
|
+
const parent = navFolderMap[parentId];
|
|
2406
2406
|
if (!parent) {
|
|
2407
2407
|
continue;
|
|
2408
2408
|
}
|
|
@@ -2423,6 +2423,18 @@ const menuButtonMapRef = shallowRef({});
|
|
|
2423
2423
|
const setMenuButtonMap = (navButtons) => {
|
|
2424
2424
|
menuButtonMapRef.value = toKeyValues(navButtons, "parentId");
|
|
2425
2425
|
};
|
|
2426
|
+
const navsRef = shallowRef(list$1);
|
|
2427
|
+
const navMapComputed = computed(() => toKeyValue(navsRef.value, "id"));
|
|
2428
|
+
const navFoldersRef = shallowRef(list$1);
|
|
2429
|
+
const navMenusRef = shallowRef(list$1);
|
|
2430
|
+
const navButtonsRef = shallowRef(list$1);
|
|
2431
|
+
const setNavsCategory = (navsCategory) => {
|
|
2432
|
+
const { navFolders, navMenus, navLinks, navButtons } = navsCategory;
|
|
2433
|
+
navsRef.value = [...navFolders, ...navMenus, ...navLinks, ...navButtons];
|
|
2434
|
+
navFoldersRef.value = navFolders;
|
|
2435
|
+
navMenusRef.value = [...navMenus, ...navLinks];
|
|
2436
|
+
navButtonsRef.value = navButtons;
|
|
2437
|
+
};
|
|
2426
2438
|
const setNavs = (option) => {
|
|
2427
2439
|
const pageViewMap = getComponentViewMap(option.pageViewMap);
|
|
2428
2440
|
const navsCategory = getNavsCategory(option.navs, pageViewMap);
|
|
@@ -2439,11 +2451,17 @@ const setNavs = (option) => {
|
|
|
2439
2451
|
NotFoundPageView: option.NotFoundPageView
|
|
2440
2452
|
// 404页面视图
|
|
2441
2453
|
});
|
|
2442
|
-
setNavTree(navsCategory.
|
|
2454
|
+
setNavTree(navsCategory.navFolders, navsCategory.navMenus, navsCategory.navLinks);
|
|
2443
2455
|
setMenuButtonMap(navButtons);
|
|
2456
|
+
setNavsCategory(navsCategory);
|
|
2444
2457
|
};
|
|
2445
2458
|
const clear = (option) => {
|
|
2446
2459
|
navTreeRef.value = list$1;
|
|
2460
|
+
navsRef.value = list$1;
|
|
2461
|
+
navFoldersRef.value = list$1;
|
|
2462
|
+
navMenusRef.value = list$1;
|
|
2463
|
+
navButtonsRef.value = list$1;
|
|
2464
|
+
menuButtonMapRef.value = object;
|
|
2447
2465
|
navChildrenMapRef.value = object;
|
|
2448
2466
|
if (option) {
|
|
2449
2467
|
const { path } = option;
|
|
@@ -2467,7 +2485,7 @@ const currentRootNavComputed = computed(() => {
|
|
|
2467
2485
|
if (raw instanceof ZNavMenu && navTree.includes(raw)) {
|
|
2468
2486
|
return;
|
|
2469
2487
|
}
|
|
2470
|
-
let
|
|
2488
|
+
let navFolder = void 0;
|
|
2471
2489
|
const navTreeLen = navTree.length;
|
|
2472
2490
|
for (let i = 0; i < navTreeLen; i++) {
|
|
2473
2491
|
const nav = navTree[i];
|
|
@@ -2478,12 +2496,12 @@ const currentRootNavComputed = computed(() => {
|
|
|
2478
2496
|
(nav2) => nav2 === raw
|
|
2479
2497
|
);
|
|
2480
2498
|
if (navMenu) {
|
|
2481
|
-
|
|
2499
|
+
navFolder = nav;
|
|
2482
2500
|
break;
|
|
2483
2501
|
}
|
|
2484
2502
|
}
|
|
2485
2503
|
}
|
|
2486
|
-
return
|
|
2504
|
+
return navFolder;
|
|
2487
2505
|
});
|
|
2488
2506
|
const response = {
|
|
2489
2507
|
/**
|
|
@@ -2517,6 +2535,47 @@ const response = {
|
|
|
2517
2535
|
get navTree() {
|
|
2518
2536
|
return navTreeRef.value;
|
|
2519
2537
|
},
|
|
2538
|
+
/**
|
|
2539
|
+
* 获取所有导航项的 getter 方法。
|
|
2540
|
+
* 返回一个包含所有导航项的数组,这些导航项存储在 navsRef 引用中。
|
|
2541
|
+
* @returns {ZNav[]} - 所有导航项的数组
|
|
2542
|
+
*/
|
|
2543
|
+
get navs() {
|
|
2544
|
+
return navsRef.value;
|
|
2545
|
+
},
|
|
2546
|
+
/**
|
|
2547
|
+
* 获取导航项 ID 到导航项对象的映射的 getter 方法。
|
|
2548
|
+
* 该方法返回 `navMapComputed` 计算属性的值,此值是一个映射,
|
|
2549
|
+
* 可以通过导航项的 ID 快速查找对应的导航项对象。
|
|
2550
|
+
* @returns {Record<ZNav['id'], ZNav>} - 导航项 ID 到导航项对象的映射
|
|
2551
|
+
*/
|
|
2552
|
+
get navMap() {
|
|
2553
|
+
return navMapComputed.value;
|
|
2554
|
+
},
|
|
2555
|
+
/**
|
|
2556
|
+
* 获取导航目录项的 getter 方法。
|
|
2557
|
+
* 返回一个包含所有导航目录项的数组,这些导航目录项存储在 navFoldersRef 引用中。
|
|
2558
|
+
* @returns {ZNavFolder[]} - 导航目录项的数组
|
|
2559
|
+
*/
|
|
2560
|
+
get navFolders() {
|
|
2561
|
+
return navFoldersRef.value;
|
|
2562
|
+
},
|
|
2563
|
+
/**
|
|
2564
|
+
* 获取导航菜单和导航链接项的 getter 方法。
|
|
2565
|
+
* 返回一个包含所有导航菜单和导航链接项的数组,这些项存储在 navMenusRef 引用中。
|
|
2566
|
+
* @returns {(ZNavMenu | ZNavLink)[]} - 导航菜单和导航链接项的数组
|
|
2567
|
+
*/
|
|
2568
|
+
get navMenus() {
|
|
2569
|
+
return navMenusRef.value;
|
|
2570
|
+
},
|
|
2571
|
+
/**
|
|
2572
|
+
* 获取导航按钮项的 getter 方法。
|
|
2573
|
+
* 返回一个包含所有导航按钮项的数组,这些导航按钮项存储在 navButtonsRef 引用中。
|
|
2574
|
+
* @returns {ZNavButton[]} - 导航按钮项的数组
|
|
2575
|
+
*/
|
|
2576
|
+
get navButtons() {
|
|
2577
|
+
return navButtonsRef.value;
|
|
2578
|
+
},
|
|
2520
2579
|
/**
|
|
2521
2580
|
* 获取菜单按钮映射的 getter 方法。
|
|
2522
2581
|
* 返回一个包含所有菜单按钮的映射对象,其中键为父级导航项的 ID,值为该父级导航项下的按钮数组。
|
|
@@ -2528,7 +2587,7 @@ const response = {
|
|
|
2528
2587
|
/**
|
|
2529
2588
|
* 获取导航目录的子导航项映射的 getter 方法。
|
|
2530
2589
|
* @type {Function}
|
|
2531
|
-
* @returns {Record<
|
|
2590
|
+
* @returns {Record<ZNavFolder['id'], ZNavWithoutButton[]>} - 导航目录的子导航项映射。
|
|
2532
2591
|
*/
|
|
2533
2592
|
get navChildrenMap() {
|
|
2534
2593
|
return navChildrenMapRef.value;
|
|
@@ -2536,7 +2595,7 @@ const response = {
|
|
|
2536
2595
|
/**
|
|
2537
2596
|
* 获取当前路由对应的根导航目录的 getter 方法。
|
|
2538
2597
|
* 该属性返回一个计算属性 currentRootNavComputed 的值,用于获取与当前路由关联的根导航目录。
|
|
2539
|
-
* @returns {
|
|
2598
|
+
* @returns {ZNavFolder | undefined} - 当前路由对应的根导航目录对象,如果找不到则返回 undefined。
|
|
2540
2599
|
*/
|
|
2541
2600
|
get currentRouteNav() {
|
|
2542
2601
|
return currentRootNavComputed.value;
|
|
@@ -2544,14 +2603,14 @@ const response = {
|
|
|
2544
2603
|
/**
|
|
2545
2604
|
* 设置当前路由到指定根导航目录的第一个菜单项。
|
|
2546
2605
|
* 如果指定的根导航目录已经是当前根导航目录,则不进行任何操作。
|
|
2547
|
-
* @param {
|
|
2606
|
+
* @param {ZNavFolder} rootNavFolder - 要设置的根导航目录对象。
|
|
2548
2607
|
*/
|
|
2549
|
-
setRoute: (
|
|
2550
|
-
if (currentRootNavComputed.value ===
|
|
2608
|
+
setRoute: (rootNavFolder) => {
|
|
2609
|
+
if (currentRootNavComputed.value === rootNavFolder) {
|
|
2551
2610
|
return;
|
|
2552
2611
|
}
|
|
2553
2612
|
const firstNav = findLeafNode(
|
|
2554
|
-
|
|
2613
|
+
rootNavFolder.children || [],
|
|
2555
2614
|
"children",
|
|
2556
2615
|
(nav) => nav instanceof ZNavMenu
|
|
2557
2616
|
);
|
|
@@ -2686,7 +2745,7 @@ const ZWebUtils = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.definePro
|
|
|
2686
2745
|
ZBaseNav,
|
|
2687
2746
|
ZBaseNavMenu,
|
|
2688
2747
|
ZNavButton,
|
|
2689
|
-
|
|
2748
|
+
ZNavFolder,
|
|
2690
2749
|
ZNavLink,
|
|
2691
2750
|
ZNavMenu,
|
|
2692
2751
|
ZNavTypeEnum,
|
|
@@ -11511,8 +11570,8 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
|
|
|
11511
11570
|
return openBlock(), createElementBlock(Fragment, {
|
|
11512
11571
|
key: nav.id
|
|
11513
11572
|
}, [
|
|
11514
|
-
nav.type === unref(ZWebUtils).ZNavTypeEnum.
|
|
11515
|
-
nav.type === unref(ZWebUtils).ZNavTypeEnum.
|
|
11573
|
+
nav.type === unref(ZWebUtils).ZNavTypeEnum.FOLDER ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
|
|
11574
|
+
nav.type === unref(ZWebUtils).ZNavTypeEnum.FOLDER && _ctx.onlyShowRoot ? (openBlock(), createElementBlock("li", {
|
|
11516
11575
|
key: 0,
|
|
11517
11576
|
tabindex: "0",
|
|
11518
11577
|
class: normalizeClass(["flex center layout-nav-link el-menu-item", {
|