1 line
3.9 KiB
JavaScript
1 line
3.9 KiB
JavaScript
import{At as e,Cn as t,Ct as n,Jt as r,Ot as i,St as a,Tt as o,Vn as s,d as c,in as l,kt as u,sn as d,vn as f,wt as p,xt as m,zn as h}from"./client-DrrW410h.js";import{i as g,n as _,r as v,t as y}from"./ui-CXICC9ah.js";import{t as b}from"./_plugin-vue_export-helper-2ZWAS1ss.js";import{ct as x,o as S}from"./index-cNEa5D1b.js";var C={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 24 24`},w=e({name:`MenuOutlined`,render:function(e,t){return r(),o(`svg`,C,t[0]||=[a(`path`,{d:`M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z`,fill:`currentColor`},null,-1)])}}),T={class:`menu-block`},E=[`aria-expanded`,`aria-label`],D={class:`right-group`},O=b(e({__name:`HeaderMenu`,props:{active:{}},setup(e){let b=e,C=S(),O=c(),k=y(),A=v(),{permissions:j,environment:M,isLoadingEnvironment:N}=x(k),P=m(()=>N.value?`Среда: …`:M.value===`prod`?`Сервер`:M.value===`venue`?`Локальная сеть`:`Среда: ?`);l(()=>C.user,async()=>{try{await k.load()}catch(e){A.error(`Не удалось загрузить сведения сервера`),console.error(`Failed to load server information:`,e)}},{immediate:!0});function F(e){return j.value.includes(e)}let I=()=>{O.push(`/login`)},L=()=>{C.logout(),O.push(`/login`)},R=f(!1);return(e,c)=>(r(),o(`div`,T,[a(`button`,{type:`button`,class:`burger-button`,"aria-expanded":R.value,"aria-label":R.value?`Закрыть меню`:`Открыть меню`,onClick:c[0]||=e=>R.value=!R.value},[u(t(_),{class:`burger-icon`,size:`28`},{default:d(()=>[u(t(w))]),_:1})],8,E),a(`div`,{class:h([`left-group menu-buttons-block`,R.value?``:`menu-buttons-block-active`])},[a(`button`,{type:`button`,class:h([`menu-item-block`,{active:b.active==`main`}]),onClick:c[1]||=e=>t(O).push(`/`)},` Главная `,2),t(C).hasRole(`user`)?(r(),o(`button`,{key:0,type:`button`,class:h([`menu-item-block`,{active:b.active==`office`}]),onClick:c[2]||=e=>t(O).push(`/office`)},` Кабинет `,2)):p(``,!0),F(`games_page`)?(r(),o(`button`,{key:1,type:`button`,class:h([`menu-item-block`,{active:b.active==`games`}]),onClick:c[3]||=e=>t(O).push(`/games`)},` Игры `,2)):p(``,!0),t(C).isAuthenticated?(r(),o(`button`,{key:2,type:`button`,class:`menu-item-block`,onClick:c[4]||=e=>t(O).push(`/screen`)},` Экран `)):p(``,!0),t(C).hasAnyRole([`author`,`organizer`])?(r(),o(`button`,{key:3,type:`button`,class:h([`menu-item-block`,{active:b.active==`playlists`}]),onClick:c[5]||=e=>t(O).push(`/playlists`)},` Плейлисты `,2)):p(``,!0),a(`button`,{type:`button`,class:h([`menu-item-block`,{active:b.active==`catalog`}]),onClick:c[6]||=e=>t(O).push(`/catalog`)},` Каталог `,2),F(`scenarios_page`)?(r(),o(`button`,{key:4,type:`button`,class:h([`menu-item-block`,{active:b.active==`scenarios`}]),onClick:c[7]||=e=>t(O).push(`/scenarios`)},` Сценарии `,2)):p(``,!0),F(`tasks_page`)?(r(),o(`button`,{key:5,type:`button`,class:h([`menu-item-block`,{active:b.active==`tasks`}]),onClick:c[8]||=e=>t(O).push(`/tasks`)},` Задачи `,2)):p(``,!0),F(`users_page`)?(r(),o(`button`,{key:6,type:`button`,class:h([`menu-item-block`,{active:b.active==`users`}]),onClick:c[9]||=e=>t(O).push(`/users`)},` Пользователи `,2)):p(``,!0),F(`reviews_page`)?(r(),o(`button`,{key:7,type:`button`,class:h([`menu-item-block`,{active:b.active==`reviews`}]),onClick:c[10]||=e=>t(O).push(`/reviews`)},` Отзывы `,2)):p(``,!0)],2),a(`div`,D,[t(C).isAuthenticated?(r(),n(t(g),{key:0,size:`small`,type:t(M)===`venue`?`warning`:`default`,title:t(M)?`Среда подключённого сервера`:`Среда сервера не определена`,role:`status`},{default:d(()=>[i(s(P.value),1)]),_:1},8,[`type`,`title`])):p(``,!0),t(C).isAuthenticated?p(``,!0):(r(),o(`button`,{key:1,type:`button`,class:`menu-item-block right`,onClick:I},` Войти `)),t(C).isAuthenticated?(r(),o(`button`,{key:2,type:`button`,class:`menu-item-block right`,onClick:L},` Выйти `)):p(``,!0)])]))}}),[[`__scopeId`,`data-v-e44a1008`]]);export{O as t}; |