Files
prod/frontend/dist/assets/HeaderMenu-DDKHYZjb.js
T
2026-10-08 02:08:08 +07:00

1 line
3.3 KiB
JavaScript

import{Bt as e,D as t,M as n,N as r,O as i,T as a,X as o,ct as s,ot as c,u as l,wt as u,yt as d}from"./client-BfLkiLXr.js";import{n as f,t as p}from"./es-Cl6F7gM1.js";import{n as m,t as h}from"./index-CHmzhHGh.js";import{t as g}from"./_plugin-vue_export-helper-BDNMzG2s.js";var _={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 24 24`},v=r({name:`MenuOutlined`,render:function(e,t){return o(),i(`svg`,_,t[0]||=[a(`path`,{d:`M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z`,fill:`currentColor`},null,-1)])}}),y={class:`menu-block`},b=[`aria-expanded`,`aria-label`],x={class:`right-group`},S=g(r({__name:`HeaderMenu`,props:{active:{}},setup(r){let g=r,_=h(),S=l(),C=m(),w=f(),T=d([]);async function E(){if(T.value=[],!_.user)return;let e=_.getToken();try{let t=await C.GetPermissions({});e===_.getToken()&&(T.value=t.permissions||[])}catch(e){w.error(`Не удалось загрузить права доступа`),console.error(`Failed to load permissions:`,e)}}c(()=>_.user,E,{immediate:!0});function D(e){return T.value.includes(e)}let O=()=>{S.push(`/login`)},k=()=>{_.logout(),S.push(`/login`)},A=d(!1);return(r,c)=>(o(),i(`div`,y,[a(`button`,{type:`button`,class:`burger-button`,"aria-expanded":A.value,"aria-label":A.value?`Закрыть меню`:`Открыть меню`,onClick:c[0]||=e=>A.value=!A.value},[n(u(p),{class:`burger-icon`,size:`28`},{default:s(()=>[n(u(v))]),_:1})],8,b),a(`div`,{class:e([`left-group menu-buttons-block`,A.value?``:`menu-buttons-block-active`])},[a(`button`,{type:`button`,class:e([`menu-item-block`,{active:g.active==`main`}]),onClick:c[1]||=e=>u(S).push(`/`)},` Главная `,2),u(_).hasRole(`user`)?(o(),i(`button`,{key:0,type:`button`,class:e([`menu-item-block`,{active:g.active==`office`}]),onClick:c[2]||=e=>u(S).push(`/office`)},` Кабинет `,2)):t(``,!0),D(`games_page`)?(o(),i(`button`,{key:1,type:`button`,class:e([`menu-item-block`,{active:g.active==`games`}]),onClick:c[3]||=e=>u(S).push(`/games`)},` Игры `,2)):t(``,!0),a(`button`,{type:`button`,class:`menu-item-block`,onClick:c[4]||=e=>u(S).push(`/screen`)},` Экран `),a(`button`,{type:`button`,class:e([`menu-item-block`,{active:g.active==`catalog`}]),onClick:c[5]||=e=>u(S).push(`/catalog`)},` Каталог `,2),D(`scenarios_page`)?(o(),i(`button`,{key:2,type:`button`,class:e([`menu-item-block`,{active:g.active==`scenarios`}]),onClick:c[6]||=e=>u(S).push(`/scenarios`)},` Сценарии `,2)):t(``,!0),D(`tasks_page`)?(o(),i(`button`,{key:3,type:`button`,class:e([`menu-item-block`,{active:g.active==`tasks`}]),onClick:c[7]||=e=>u(S).push(`/tasks`)},` Задачи `,2)):t(``,!0),D(`users_page`)?(o(),i(`button`,{key:4,type:`button`,class:e([`menu-item-block`,{active:g.active==`users`}]),onClick:c[8]||=e=>u(S).push(`/users`)},` Пользователи `,2)):t(``,!0),D(`reviews_page`)?(o(),i(`button`,{key:5,type:`button`,class:e([`menu-item-block`,{active:g.active==`reviews`}]),onClick:c[9]||=e=>u(S).push(`/reviews`)},` Отзывы `,2)):t(``,!0)],2),a(`div`,x,[u(_).isAuthenticated?t(``,!0):(o(),i(`button`,{key:0,type:`button`,class:`menu-item-block right`,onClick:O},` Войти `)),u(_).isAuthenticated?(o(),i(`button`,{key:1,type:`button`,class:`menu-item-block right`,onClick:k},` Выйти `)):t(``,!0)])]))}}),[[`__scopeId`,`data-v-cceeb3e7`]]);export{S as t};