1import { q as __mf_45, r as __mf_4, t as __mf_16, ut as __mf_80 } from "./_virtual_mf___mfe_internal__host_app__mf_owner__218477920178234__loadShare__pinia__loadShare__.js-B7Iw98aP.js"; 2import { n as useProductSettingsStore } from "./userpilot-DFo69PQ3.js"; 3import { a as useAuthStore, c as n } from "./user.store-DDsp0BQM.js"; 4import { n as getMainCoreConfig } from "./coreHelper-BqEkzPUV.js"; 5import "./constants-CwJ3Io9O.js"; 6//#region src/stores/menu.store.ts 7var icons = { 8 PhCalendarBlank: "ti-ph-calendar-blank", 9 PhGauge: "ti-ph-gauge", 10 PhUsersThree: "ti-ph-users-three", 11 PhTrendUp: "ti-ph-trend-up", 12 PhBookBookmark: "ti-ph-book-bookmark", 13 PhGear: "ti-ph-gear", 14 PhUpload: "ti-ph-upload", 15 PhSignOut: "ti-ph-sign-out" 16}; 17var ORDER = { 18 first: 1, 19 second: 2, 20 third: 3 21}; 22var defaultMenu = [{ 23 order: ORDER.first, 24 align: "left", 25 color: "#0000", 26 have_icon: true, 27 icon_url: "ti-ph-calendar-blank", 28 name: "Today", 29 route: "/today", 30 title: "Today", 31 tooltip: "Today", 32 dataCy: "home-drawer-today_button", 33 visible_left_sidebar: true 34}, { 35 order: ORDER.third, 36 name: "Sign-out", 37 title: "Sign-out", 38 have_icon: true, 39 icon_url: "ti-ph-sign-out", 40 align: "left", 41 color: "#0000", 42 tooltip: "Sign out", 43 route: "/signout", 44 dataCy: "home-drawer-signout", 45 visible_left_sidebar: true 46}]; 47var defaultMenuNames = new Set(defaultMenu.map((menu) => menu.name)); 48function getIconUrl(iconUrl) { 49 if (iconUrl.includes("-ph-")) return iconUrl; 50 return icons[iconUrl] ?? "ti-ph-calendar-blank"; 51} 52var useMenuStore = __mf_4("Host_MF.Menu", () => { 53 const menuRequest = __mf_45({ 54 idle: true, 55 fetching: false 56 }); 57 const menu = __mf_45([]); 58 const isExpanded = __mf_45(false); 59 const isFixed = __mf_45(false); 60 const { isSAMSEnabled, isDigitalPLLEnabled } = __mf_16(useProductSettingsStore()); 61 const getMenu = async () => { 62 if ("student" === localStorage.getItem("role_name")) return; 63 const { EndpointEnvs, restClient } = await getMainCoreConfig(); 64 if (!menuRequest.value.idle) return; 65 menuRequest.value = { 66 idle: false, 67 fetching: true 68 }; 69 try { 70 const response = await restClient(EndpointEnvs.MENU, "getMenu"); 71 const hiddenMenuItems = []; 72 if (!isDigitalPLLEnabled.value && !isSAMSEnabled.value) hiddenMenuItems.push("Activities"); 73 if (response) { 74 const availableMenus = response.filter((menuItem) => !hiddenMenuItems.includes(menuItem.name)).map((menuItem) => { 75 console.warn("Menu item fetched:", menuItem); 76 return { 77 ...menuItem, 78 icon_url: getIconUrl(menuItem.icon_url) 79 }; 80 }).sort((a, b) => a.order - b.order).filter((menuItem) => !defaultMenuNames.has(menuItem.name)); 81 const menuItems = [ 82 defaultMenu[0], 83 ...availableMenus, 84 defaultMenu[1] 85 ]; 86 const account = await useAuthStore().checkAuth(); 87 localStorage.setItem(`menu${account?.homeAccountId}`, JSON.stringify(menuItems)); 88 localStorage.setItem(`menu_db${account?.homeAccountId}`, JSON.stringify(menuItems)); 89 const leftSidebarMenu = menuItems.filter((item) => item.visible_left_sidebar); 90 const { set } = n("menu_left_sidebar", { defaultValue: leftSidebarMenu }); 91 set(leftSidebarMenu); 92 menu.value = menuItems; 93 } 94 } catch (error) { 95 console.error("Error trying to get the menu", error); 96 } finally { 97 menuRequest.value = { 98 idle: false, 99 fetching: false 100 }; 101 } 102 }; 103 const menuLeftSidebar = __mf_80(() => menu.value.filter((item) => item.visible_left_sidebar)); 104 const resetCache = () => { 105 menu.value = []; 106 menuRequest.value = { 107 idle: true, 108 fetching: false 109 }; 110 }; 111 return { 112 menu, 113 menuLeftSidebar, 114 getMenu, 115 resetCache, 116 menuRequest, 117 isExpanded, 118 isFixed 119 }; 120}); 121//#endregion 122export { useMenuStore as t };
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.