diff --git a/dist/assets/index-BkAqF7D7.js b/dist/assets/index-B54R2K0c.js similarity index 90% rename from dist/assets/index-BkAqF7D7.js rename to dist/assets/index-B54R2K0c.js index 8bbfc0d..c075b03 100644 --- a/dist/assets/index-BkAqF7D7.js +++ b/dist/assets/index-B54R2K0c.js @@ -2385,4 +2385,4 @@ `);return}e=iN(e),t!=null&&o.push(` ${e}${aN(t)}`)}),e&&o.push(`}`),o.join(` `)}function cN(e,t,n){e&&e.forEach(e=>{if(Array.isArray(e))cN(e,t,n);else if(typeof e==`function`){let r=e(t);Array.isArray(r)?cN(r,t,n):r&&n(r)}else e&&n(e)})}function lN(e,t,n,r,i,a){let o=e.$;!o||typeof o==`string`?t.push(o):typeof o==`function`?t.push(o({context:r.context,props:i})):(o.before&&o.before(r.context),!o.$||typeof o.$==`string`?t.push(o.$):o.$&&t.push(o.$({context:r.context,props:i})));let s=nN(t),c=sN(s,e.props,r,i);a&&c&&a.insertRule(c),!a&&c.length&&n.push(c),e.children&&cN(e.children,{context:r.context,props:i},e=>{if(typeof e==`string`){let t=sN(s,{raw:e},r,i);a?a.insertRule(t):n.push(t)}else lN(e,t,n,r,i,a)}),t.pop(),o&&o.after&&o.after(r.context)}function uN(e,t,n,r=!1){let i=[];return lN(e,[],i,t,n,r?e.instance.__styleSheet:void 0),r?``:i.join(` -`)}function dN(e){if(!e)return;let t=e.parentElement;t&&t.removeChild(e)}function fN(e){return document.querySelector(`style[cssr-id="${e}"]`)}function pN(e){let t=document.createElement(`style`);return t.setAttribute(`cssr-id`,e),t}window&&(window.__cssrContext={});function mN(e){let t=e.getAttribute(`mount-count`);return t===null?null:Number(t)}function hN(e,t){e.setAttribute(`mount-count`,String(t))}function gN(e,t,n,r){let{els:i}=t;if(n===void 0)i.forEach(dN),t.els=[];else{let e=fN(n);if(e&&i.includes(e)){let a=mN(e);r?a===null?console.error(`[css-render/unmount]: The style with target='${n}' is mounted in count mode.`):a<=1?(dN(e),t.els=i.filter(t=>t!==e)):hN(e,a-1):a===null?(dN(e),t.els=i.filter(t=>t!==e)):console.error(`[css-render/unmount]: The style with target='${n}' is mounted in no-count mode.`)}}}function _N(e,t){e.push(t)}function vN(e,t,n,r,i,a,o,s,c){if(o&&!c){if(n===void 0){console.error("[css-render/mount]: `id` is required in `boost` mode.");return}let i=window.__cssrContext;i[n]||(i[n]=!0,uN(t,e,r,o));return}let l,{els:u}=t,d;if(n===void 0&&(d=t.render(r),n=Ic(d)),c){c(n,d??t.render(r));return}let f=fN(n);if(s||f===null){if(l=f===null?pN(n):f,d===void 0&&(d=t.render(r)),l.textContent=d,f!==null)return;if(i){let e=document.head.getElementsByTagName(`style`)[0]||null;document.head.insertBefore(l,e)}else document.head.appendChild(l);a&&hN(l,1),_N(u,l)}else{let e=mN(f);a?e===null?console.error(`[css-render/mount]: The style with id='${n}' has been mounted in no-count mode.`):hN(f,e+1):e!==null&&console.error(`[css-render/mount]: The style with id='${n}' has been mounted in count mode.`)}return f??l}function yN(e){return uN(this,this.instance,e)}function bN(e={}){let{target:t,id:n,ssr:r,props:i,count:a=!1,head:o=!1,boost:s=!1,force:c=!1}=e;return vN(this.instance,this,n??t,i,o,a,s,c,r)}function xN(e={}){let{id:t,target:n,delay:r=0,count:i=!1}=e;r===0?gN(this.instance,this,t??n,i):setTimeout(()=>gN(this.instance,this,t??n,i),r)}var SN=function(e,t,n,r){return{instance:e,$:t,props:n,children:r,els:[],render:yN,mount:bN,unmount:xN}},CN=function(e,t,n,r){return Array.isArray(t)?SN(e,{$:null},null,t):Array.isArray(n)?SN(e,t,null,n):Array.isArray(r)?SN(e,t,n,r):SN(e,t,n,null)};function wN(e={}){let t=null,n={c:((...e)=>CN(n,...e)),use:(e,...t)=>e.install(n,...t),find:fN,context:{},config:e,get __styleSheet(){if(!t){let e=document.createElement(`style`);return document.head.appendChild(e),t=document.styleSheets[document.styleSheets.length-1],t}return t}};return n}var{c:TN}=wN(),EN=TN(`.xicon`,{width:`1em`,height:`1em`,display:`inline-flex`},[TN(`svg`,{width:`1em`,height:`1em`}),TN(`svg:not([fill])`,{fill:`currentColor`})]),DN=()=>{EN.mount({id:`xicons-icon`})},ON={size:[String,Number],color:String,tag:String},kN=Symbol(`IconConfigInjection`),AN=`span`,jN=P({name:`Icon`,props:ON,setup(e,{slots:t}){let n=N(kN,null),r=V(()=>{let t=e.size??n?.size;if(t!==void 0)return typeof t==`number`||/^\d+$/.test(t)?`${t}px`:t}),i=V(()=>{let{color:t}=e;return t===void 0?n?n.color:void 0:t}),a=V(()=>{let{tag:t}=e;return t===void 0?n?.tag??AN:t});return Br(()=>{DN()}),()=>H(a.value,{class:`xicon`,style:{color:i.value,fontSize:r.value}},[ni(t,`default`)])}}),MN={class:`menu-block`},NN={class:`right-group`},PN=P({__name:`HeaderMenu`,props:{active:{type:String,required:!1}},setup(e){let t=e,n=VM();n.initFromStorage();let r=QA(),i=HM(),a=k([]);async function o(){a.value=[];let e=await i.GetPermissions({});a.value=e.permissions}o();function s(e){return a.value.includes(e)}let c=()=>{r.push(`/login`)},l=()=>{n.logout(),r.push(`/login`)},u=k(!1);return(e,i)=>(I(),L(`div`,MN,[R(`div`,{onClick:i[0]||=e=>u.value=!u.value,class:`burger-button`},[z(A(jN),{class:`burger-icon`,size:`28`},{default:M(()=>[z(A(XM))]),_:1})]),R(`div`,{class:_e([`left-group menu-buttons-block`,u.value?``:`menu-buttons-block-active`])},[R(`div`,{class:_e([`menu-item-block`,{active:t.active==`main`}]),onClick:i[1]||=e=>A(r).push(`/`)},` Главная `,2),A(n).hasRole(`user`)?(I(),L(`div`,{key:0,class:_e([`menu-item-block`,{active:t.active==`office`}]),onClick:i[2]||=e=>A(r).push(`/office`)},` Кабинет `,2)):Pa(``,!0),s(`games_page`)?(I(),L(`div`,{key:1,class:_e([`menu-item-block`,{active:t.active==`games`}]),onClick:i[3]||=e=>A(r).push(`/games`)},` Игры `,2)):Pa(``,!0),R(`div`,{class:_e([`menu-item-block`,{active:t.active==`catalog`}]),onClick:i[4]||=e=>A(r).push(`/catalog`)},` Каталог `,2),s(`scenarios_page`)?(I(),L(`div`,{key:2,class:_e([`menu-item-block`,{active:t.active==`scenarios`}]),onClick:i[5]||=e=>A(r).push(`/scenarios`)},` Мои сценарии `,2)):Pa(``,!0),s(`users_page`)?(I(),L(`div`,{key:3,class:_e([`menu-item-block`,{active:t.active==`users`}]),onClick:i[6]||=e=>A(r).push(`/users`)},` Пользователи `,2)):Pa(``,!0)],2),R(`div`,NN,[A(n).isAuthenticated?Pa(``,!0):(I(),L(`div`,{key:0,class:`menu-item-block right`,onClick:c},` Войти `)),A(n).isAuthenticated?(I(),L(`div`,{key:1,class:`menu-item-block right`,onClick:l},`Выйти`)):Pa(``,!0)])]))}}),FN=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},IN=FN(PN,[[`__scopeId`,`data-v-5e423637`]]),LN={class:`center-block-custom`},RN={class:`width1200 display-table`},zN=[`onClick`],BN={class:`scenario-content-block`},VN={class:`scenario-title`},HN={class:`scenario-description`},UN={class:`scenario-label`},WN=FN(P({__name:`CatalogPage`,setup(e){let t=HM(),n=k([]),r=QA();async function i(){n.value=[];let e=await t.GetScenariosCatalog({});n.value=e.scenarios}async function a(e){r.push(`/scenarios/`+e)}return i(),(e,t)=>(I(),L(F,null,[R(`div`,LN,[R(`div`,RN,[(I(!0),L(F,null,ti(n.value,e=>(I(),L(`div`,{class:`scenario-block`,onClick:t=>a(e.id),key:e.id},[R(`div`,{class:`scenario-image-block scenario-image`,style:fe({backgroundImage:`url(${e.image})`})},null,4),R(`div`,BN,[R(`p`,VN,O(e.name),1),R(`p`,HN,O(e.description),1),R(`p`,UN,[z(A(WC),{bordered:!1,type:`success`,class:`status-block`},{default:M(()=>[B(`Автор: `+O(e.author?.username),1)]),_:2},1024)])])],8,zN))),128))])]),z(IN,{active:`catalog`})],64))}}),[[`__scopeId`,`data-v-d72c95c2`]]),GN=P({__name:`CatalogView`,setup(e){return(e,t)=>(I(),Ea(WN))}}),KN={class:`center-block-custom`},qN={class:`width1200`},JN=[`onClick`],YN={class:`game-title`},XN={class:`game-description`},ZN=FN(P({__name:`GamesPage`,setup(e){let t=HM(),n=iD(),r=QA(),i=k([]);async function a(){i.value=[];let e=await t.GetGames({});if(e.error!=``){n.error(e.error);return}i.value=e.games||[]}a();async function o(e){r.push(`/games/`+e)}return(e,t)=>(I(),L(F,null,[R(`div`,KN,[R(`div`,qN,[(I(!0),L(F,null,ti(i.value,e=>(I(),L(`div`,{key:e.id,class:`game-block`,onClick:t=>o(e.id)},[R(`div`,YN,O(e.name),1),R(`div`,XN,O(e.description),1)],8,JN))),128))])]),z(IN,{active:`games`})],64))}}),[[`__scopeId`,`data-v-45eae4d9`]]),QN=P({__name:`GamesView`,setup(e){return(e,t)=>(I(),Ea(ZN))}}),$N={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 32 32`},eP=P({name:`Flag`,render:function(e,t){return I(),L(`svg`,$N,t[0]||=[R(`path`,{d:`M6 30H4V2h24l-5.8 9l5.8 9H6zm0-12h18.33l-4.53-7l4.53-7H6z`,fill:`currentColor`},null,-1)])}}),tP={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 32 32`},nP=P({name:`Pause`,render:function(e,t){return I(),L(`svg`,tP,t[0]||=[R(`path`,{d:`M12 8v16H8V8h4m0-2H8a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2z`,fill:`currentColor`},null,-1),R(`path`,{d:`M24 8v16h-4V8h4m0-2h-4a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2z`,fill:`currentColor`},null,-1)])}}),rP={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 32 32`},iP=P({name:`Play`,render:function(e,t){return I(),L(`svg`,rP,t[0]||=[R(`path`,{d:`M7 28a1 1 0 0 1-1-1V5a1 1 0 0 1 1.482-.876l20 11a1 1 0 0 1 0 1.752l-20 11A1 1 0 0 1 7 28zM8 6.69V25.31L24.925 16z`,fill:`currentColor`},null,-1)])}}),aP={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 32 32`},oP=P({name:`Reset`,render:function(e,t){return I(),L(`svg`,aP,t[0]||=[R(`path`,{d:`M18 28A12 12 0 1 0 6 16v6.2l-3.6-3.6L1 20l6 6l6-6l-1.4-1.4L8 22.2V16a10 10 0 1 1 10 10z`,fill:`currentColor`},null,-1)])}}),sP={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 32 32`},cP=P({name:`Settings`,render:function(e,t){return I(),L(`svg`,sP,t[0]||=[R(`path`,{d:`M27 16.76V16v-.77l1.92-1.68A2 2 0 0 0 29.3 11l-2.36-4a2 2 0 0 0-1.73-1a2 2 0 0 0-.64.1l-2.43.82a11.35 11.35 0 0 0-1.31-.75l-.51-2.52a2 2 0 0 0-2-1.61h-4.68a2 2 0 0 0-2 1.61l-.51 2.52a11.48 11.48 0 0 0-1.32.75l-2.38-.86A2 2 0 0 0 6.79 6a2 2 0 0 0-1.73 1L2.7 11a2 2 0 0 0 .41 2.51L5 15.24v1.53l-1.89 1.68A2 2 0 0 0 2.7 21l2.36 4a2 2 0 0 0 1.73 1a2 2 0 0 0 .64-.1l2.43-.82a11.35 11.35 0 0 0 1.31.75l.51 2.52a2 2 0 0 0 2 1.61h4.72a2 2 0 0 0 2-1.61l.51-2.52a11.48 11.48 0 0 0 1.32-.75l2.42.82a2 2 0 0 0 .64.1a2 2 0 0 0 1.73-1l2.28-4a2 2 0 0 0-.41-2.51zM25.21 24l-3.43-1.16a8.86 8.86 0 0 1-2.71 1.57L18.36 28h-4.72l-.71-3.55a9.36 9.36 0 0 1-2.7-1.57L6.79 24l-2.36-4l2.72-2.4a8.9 8.9 0 0 1 0-3.13L4.43 12l2.36-4l3.43 1.16a8.86 8.86 0 0 1 2.71-1.57L13.64 4h4.72l.71 3.55a9.36 9.36 0 0 1 2.7 1.57L25.21 8l2.36 4l-2.72 2.4a8.9 8.9 0 0 1 0 3.13L27.57 20z`,fill:`currentColor`},null,-1),R(`path`,{d:`M16 22a6 6 0 1 1 6-6a5.94 5.94 0 0 1-6 6zm0-10a3.91 3.91 0 0 0-4 4a3.91 3.91 0 0 0 4 4a3.91 3.91 0 0 0 4-4a3.91 3.91 0 0 0-4-4z`,fill:`currentColor`},null,-1)])}});function lP(e,t=5e3){let n=k(!0),r=null,i=()=>{n.value=!0,e(),r=window.setInterval(e,t)},a=()=>{n.value=!1,r&&=(clearInterval(r),null)};return Vr(i),Gr(a),{isActive:n,start:i,stop:a}}var uP={class:`center-block-custom`},dP={class:`width1200`},fP={class:`settings-block`},pP={class:`team-block`},mP={class:`team-content-block`},hP={class:`title-block`},gP={class:`team-name-block`},_P={class:`qr-block`},vP=FN(P({__name:`GamePage`,setup(e){let t=HM(),n=QA(),r=$A().params.id,i=iD(),a=k(!1),o=k(!1),s=k(!1),c=k(!1),l=k(``),u=k(!1),d=k(``),f=k(``),p=k({id:void 0,name:void 0,description:void 0,startAt:void 0,status:void 0,scenario:void 0,teams:void 0});async function m(e){let n=await t.GetGame({id:e});if(n.error!=``){i.error(n.error);return}p.value=n.game,p.value.teams=p.value.teams?.sort((e,t)=>{let n=0;(e.applications?.length||0)>0&&(n=1);let r=0;if((t.applications?.length||0)>0&&(r=1),n>r)return-1;if(na?1:i{m(Number(r))},2e3);async function te(){let e=await t.ResetGame({id:p.value.id});if(e.error!=``){i.error(e.error);return}await m(p.value.id)}async function ne(){let e=await t.StartGame({id:p.value.id});if(e.error!=``){i.error(e.error);return}await m(p.value.id)}async function re(){let e=await t.PauseGame({id:p.value.id});if(e.error!=``){i.error(e.error);return}await m(p.value.id)}async function ie(){let e=await t.PlayGame({id:p.value.id});if(e.error!=``){i.error(e.error);return}await m(p.value.id)}async function ae(){let e=await t.FinishGame({id:p.value.id});if(e.error!=``){i.error(e.error);return}await m(p.value.id)}function oe(e){let[t,n]=e.split(`T`),[r,i,a]=t.split(`-`).map(Number),[o,s,c]=(n.split(`.`)[0]||`00:00:00`).split(`:`).map(Number);return new Date(Date.UTC(r,i-1,a,o,s,c||0))}function se(){let e=new Date;return new Date(e.getTime()-e.getTimezoneOffset()*6e4)}function ce(e,t){if(e==``)return`Игра ещё не началась`;let n=oe(e),r=se();t!=``&&(r=oe(t));let i=r.getTime()-n.getTime();if(i<0)return`Игра ещё не началась`;let a=Math.floor(i/1e3),o=Math.floor(a/60),s=Math.floor(o/60),c=Math.floor(s/24),l=Math.floor(c/30),u=Math.floor(c/365);return u>0?`${u}г ${c%365}д`:l>0?`${l}мес ${c%30}д`:c>0?`${c}д ${s%24}ч`:s>0?`${s}ч ${o%60}м`:o>0?`${o}м ${a%60}с`:`${a}с`}let le=k(``);return lP(()=>{le.value=ce(p.value.startedAt||``,p.value.endedAt||``)},1e3),(e,t)=>(I(),L(F,null,[R(`div`,uP,[R(`div`,dP,[R(`div`,fP,[z(A(FD),{justify:`space-between`},{default:M(()=>[z(A(OD),null,{default:M(()=>[z(A(WC),{bordered:!1,type:`info`},{default:M(()=>[B(` Команд: `+O(p.value.teams?.length),1)]),_:1}),z(A(WC),{type:`info`},{default:M(()=>[B(O(le.value),1)]),_:1})]),_:1}),R(`div`,null,[z(A($),{quaternary:``,class:`settings-button`,onClick:t[0]||=e=>D(A(x),`Админка`)},{default:M(()=>[...t[26]||=[B(` QR `,-1)]]),_:1}),z(A($),{quaternary:``,onClick:t[1]||=e=>a.value=!0,class:`settings-button`},{default:M(()=>[z(A(jN),{class:`settings-icon`},{default:M(()=>[z(A(cP))]),_:1}),t[27]||=B(` Настройки `,-1)]),_:1}),z(A(OD),null,{default:M(()=>[p.value.status==`draft`?Pa(``,!0):(I(),Ea(A($),{key:0,type:`info`,dashed:``,onClick:t[2]||=e=>te()},{default:M(()=>[z(A(jN),null,{default:M(()=>[z(A(oP))]),_:1})]),_:1})),p.value.status==`draft`?(I(),Ea(A($),{key:1,type:`info`,dashed:``,onClick:t[3]||=e=>ne()},{default:M(()=>[z(A(jN),null,{default:M(()=>[z(A(iP))]),_:1})]),_:1})):Pa(``,!0),p.value.status==`pause`?(I(),Ea(A($),{key:2,type:`info`,dashed:``,onClick:t[4]||=e=>ie()},{default:M(()=>[z(A(jN),null,{default:M(()=>[z(A(iP))]),_:1})]),_:1})):Pa(``,!0),p.value.status==`run`?(I(),Ea(A($),{key:3,type:`info`,dashed:``,onClick:t[5]||=e=>re()},{default:M(()=>[z(A(jN),null,{default:M(()=>[z(A(nP))]),_:1})]),_:1})):Pa(``,!0),p.value.status==`finish`?Pa(``,!0):(I(),Ea(A($),{key:4,type:`info`,dashed:``,onClick:t[6]||=e=>ae()},{default:M(()=>[z(A(jN),null,{default:M(()=>[z(A(eP))]),_:1})]),_:1}))]),_:1})])]),_:1})]),R(`div`,{class:`team-block team-block-hover`,onClick:t[7]||=e=>s.value=!0},[...t[28]||=[R(`p`,{class:`place-image-plus`},`+`,-1)]]),(I(!0),L(F,null,ti(p.value.teams,e=>(I(),L(`div`,pP,[R(`div`,mP,[z(A(FD),{justify:`space-between`},{default:M(()=>[R(`div`,hP,[R(`span`,gP,O(e.name),1),R(`div`,null,` Поездки: `+O(e.actionsCount),1)]),z(A(FD),{justify:`end`},{default:M(()=>[z(A($),{onClick:t=>D(E(e.id,e.password),`Подсмотреть игру`)},{default:M(()=>[...t[29]||=[B(` QR `,-1)]]),_:1},8,[`onClick`]),z(A($),{onClick:t=>h(e.id,e.password,!0)},{default:M(()=>[...t[30]||=[B(` Подсмотреть игру `,-1)]]),_:1},8,[`onClick`]),z(A($),{type:`error`,ghost:``,onClick:t=>T(e)},{default:M(()=>[...t[31]||=[B(` Удалить `,-1)]]),_:1},8,[`onClick`])]),_:2},1024)]),_:2},1024),(I(!0),L(F,null,ti(e.applications,t=>(I(),Ea(A($),{key:t.name,class:`link-button`,onClick:n=>S(e,t)},{default:M(()=>[B(` Выдать: `+O(t.name),1)]),_:2},1032,[`onClick`]))),128))])]))),256))])]),z(A(UE),{show:a.value,"onUpdate:show":t[12]||=e=>a.value=e},{default:M(()=>[z(A(TT),{style:{width:`600px`},title:`Настройки игры`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A($),{onClick:t[8]||=e=>a.value=!1},{default:M(()=>[...t[32]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[z(A(FD),{justify:`end`},{default:M(()=>[z(A($),{onClick:t[11]||=e=>g(),ghost:``},{default:M(()=>[...t[35]||=[B(` Сохранить изменения `,-1)]]),_:1})]),_:1})]),default:M(()=>[z(A(OD),{vertical:``},{default:M(()=>[t[33]||=R(`p`,null,`Название`,-1),z(A(Tw),{value:p.value.name,"onUpdate:value":t[9]||=e=>p.value.name=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`]),t[34]||=R(`p`,{class:`settings-header`},`Описание`,-1),z(A(Tw),{value:p.value.description,"onUpdate:value":t[10]||=e=>p.value.description=e,type:`textarea`,placeholder:`Убийство пастуха...`},null,8,[`value`])]),_:1})]),_:1})]),_:1},8,[`show`]),z(A(UE),{show:o.value,"onUpdate:show":t[15]||=e=>o.value=e},{default:M(()=>[z(A(TT),{style:{width:`600px`},title:`Настройки игры`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A($),{onClick:t[13]||=e=>o.value=!1},{default:M(()=>[...t[36]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[z(A(FD),{justify:`end`},{default:M(()=>[z(A($),{onClick:t[14]||=e=>w(),ghost:``},{default:M(()=>[...t[39]||=[B(` Выдать `,-1)]]),_:1})]),_:1})]),default:M(()=>[z(A(OD),{vertical:``},{default:M(()=>[t[37]||=R(`p`,null,`Команда`,-1),R(`h3`,null,O(_.value.name),1),t[38]||=R(`p`,null,`Улика`,-1),R(`h3`,null,O(b.value.name),1)]),_:1})]),_:1})]),_:1},8,[`show`]),z(A(UE),{show:s.value,"onUpdate:show":t[19]||=e=>s.value=e},{default:M(()=>[z(A(TT),{style:{width:`600px`},title:`Создание команды`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A($),{onClick:t[16]||=e=>s.value=!1},{default:M(()=>[...t[40]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[z(A(FD),{justify:`end`},{default:M(()=>[z(A($),{onClick:t[18]||=e=>C(),disabled:l.value.length==0},{default:M(()=>[...t[41]||=[B(` Создать `,-1)]]),_:1},8,[`disabled`])]),_:1})]),default:M(()=>[z(A(Tw),{value:l.value,"onUpdate:value":t[17]||=e=>l.value=e,type:`text`,placeholder:`Три дебила`},null,8,[`value`])]),_:1})]),_:1},8,[`show`]),z(A(UE),{show:c.value,"onUpdate:show":t[23]||=e=>c.value=e},{default:M(()=>[z(A(TT),{style:{width:`600px`},title:`Удаление команды`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A($),{onClick:t[20]||=e=>c.value=!1},{default:M(()=>[...t[42]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[z(A(FD),{justify:`end`},{default:M(()=>[z(A($),{onClick:t[22]||=e=>ee(),disabled:v.value!=y.value.name},{default:M(()=>[...t[45]||=[B(` Удалить `,-1)]]),_:1},8,[`disabled`])]),_:1})]),default:M(()=>[z(A(OD),{vertical:``},{default:M(()=>[R(`p`,null,[t[43]||=B(` Введите название команды `,-1),z(A(nA),{class:`name-text`,strong:``},{default:M(()=>[B(O(y.value.name),1)]),_:1}),t[44]||=B(` чтобы удалить его `,-1)]),z(A(Tw),{value:v.value,"onUpdate:value":t[21]||=e=>v.value=e,type:`text`,placeholder:`Три дебила`},null,8,[`value`])]),_:1})]),_:1})]),_:1},8,[`show`]),z(A(UE),{show:u.value,"onUpdate:show":t[25]||=e=>u.value=e},{default:M(()=>[z(A(TT),{style:{width:`600px`},title:f.value,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A($),{onClick:t[24]||=e=>u.value=!1},{default:M(()=>[...t[46]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[...t[47]||=[]]),default:M(()=>[z(A(OD),{vertical:``},{default:M(()=>[R(`div`,_P,[z(A(Lk),{value:d.value,size:300,padding:0},null,8,[`value`])])]),_:1})]),_:1},8,[`title`])]),_:1},8,[`show`]),z(IN,{active:`games`})],64))}}),[[`__scopeId`,`data-v-840aaeae`]]),yP=P({__name:`GameView`,setup(e){return(e,t)=>(I(),Ea(vP))}}),bP=P({__name:`HomeView`,setup(e){return(e,t)=>(I(),L(F,null,[t[0]||=R(`div`,{class:`center-block-custom content-block center-middle-block-custom height80`},[R(`div`,null,[R(`h1`,{class:`font-text`},`Вечерний детектив`),R(`h3`,{class:`font-text`},`Дело №0`),R(`p`,{class:`content-text`},` Поиграем? `)])],-1),z(IN,{active:`main`})],64))}}),xP={class:`center-block-custom content-block center-middle-block-custom height80`},SP={class:`form-button-wrapper`},CP={class:`form-label`},wP={key:0},TP={key:1},EP={class:`form-label`},DP={class:`form-button-wrapper`},OP={class:`form-label`},kP={key:0},AP={key:1},jP={class:`form-button-wrapper`},MP={class:`form-label`},NP={key:0},PP={key:1},FP=FN(P({__name:`LoginPage`,setup(e){let t=VM(),n=QA(),r=iD(),i=k(``),a=k(``),o=k(``),s=k(!1),c=V(()=>[`@mail.ru`,`@yandex.ru`,`@gmail.com`].map(e=>{let t=a.value.split(`@`)[0];return{label:t+e,value:t+e}}));async function l(){if(!await t.login(a.value,o.value)&&t.error!=null){r.error(t.error);return}n.push(`/office`)}async function u(){if(s.value){if(!await t.signup(i.value,a.value)&&t.error!=null){r.error(t.error);return}r.info(`Пароль отправлен на почту`)}}async function d(){if(!await t.refreshPassword(a.value)&&t.error!=null){r.error(t.error);return}r.info(`Пароль отправлен на почту`)}return(e,n)=>(I(),L(`div`,xP,[z(A(TT),{style:{"margin-bottom":`16px`},class:`sign-card`},{default:M(()=>[z(A(Xk),{type:`line`,animated:``},{default:M(()=>[z(A(Kk),{name:`signin`,tab:`Вход`},{default:M(()=>[z(A(OD),{vertical:``},{default:M(()=>[n[6]||=R(`div`,{class:`form-label`},`Почта`,-1),z(A(Lw),{value:a.value,"onUpdate:value":n[0]||=e=>a.value=e,"input-props":{autocomplete:`disabled`},options:c.value,placeholder:`detective@mail.ru`,clearable:``},null,8,[`value`,`options`]),n[7]||=R(`div`,{class:`form-label`},`Пароль`,-1),z(A(Tw),{value:o.value,"onUpdate:value":n[1]||=e=>o.value=e,type:`password`,placeholder:`********`},null,8,[`value`]),R(`div`,SP,[R(`div`,CP,[z(A($),{onClick:l,disabled:a.value.length==0||o.value.length==0},{default:M(()=>[A(t).isLoading?(I(),L(`span`,TP,` Подождите... `)):(I(),L(`span`,wP,` Вход `))]),_:1},8,[`disabled`])])])]),_:1})]),_:1}),z(A(Kk),{name:`signup`,tab:`Регистрация`},{default:M(()=>[z(A(OD),{vertical:``},{default:M(()=>[n[9]||=R(`div`,{class:`form-label`},`Позывной`,-1),z(A(Tw),{value:i.value,"onUpdate:value":n[2]||=e=>i.value=e,type:`text`,placeholder:`Шерлок`},null,8,[`value`]),n[10]||=R(`div`,{class:`form-label`},`Почта`,-1),z(A(Lw),{value:a.value,"onUpdate:value":n[3]||=e=>a.value=e,"input-props":{autocomplete:`disabled`},options:c.value,placeholder:`detective@mail.ru`,clearable:``},null,8,[`value`,`options`]),R(`div`,EP,[z(A(RT),{checked:s.value,"onUpdate:checked":n[4]||=e=>s.value=e},{default:M(()=>[...n[8]||=[B(` Я согласен с `,-1),R(`a`,{href:`/user-agreement`,target:`_blank`,class:`docs-link`},`пользовательским соглашением`,-1),R(`br`,null,null,-1),B(` и `,-1),R(`a`,{href:`/privacy-policy`,target:`_blank`,class:`docs-link`},`соглашением о персональных данных`,-1)]]),_:1},8,[`checked`])]),R(`div`,DP,[R(`div`,OP,[z(A($),{onClick:u,disabled:i.value.length==0||o.value.length==0||!s.value},{default:M(()=>[A(t).isLoading?(I(),L(`span`,AP,` Подождите... `)):(I(),L(`span`,kP,` Регистрация `))]),_:1},8,[`disabled`])])])]),_:1})]),_:1}),z(A(Kk),{name:`new-password`,tab:`Новый пароль`},{default:M(()=>[z(A(OD),{vertical:``},{default:M(()=>[n[11]||=R(`div`,{class:`form-label`},`Почта`,-1),z(A(Lw),{value:a.value,"onUpdate:value":n[5]||=e=>a.value=e,"input-props":{autocomplete:`disabled`},options:c.value,placeholder:`detective@mail.ru`,clearable:``},null,8,[`value`,`options`]),R(`div`,jP,[R(`div`,MP,[z(A($),{onClick:d,disabled:a.value.length==0},{default:M(()=>[A(t).isLoading?(I(),L(`span`,PP,` Подождите... `)):(I(),L(`span`,NP,` Прислать новый пароль `))]),_:1},8,[`disabled`])])])]),_:1})]),_:1})]),_:1})]),_:1})]))}}),[[`__scopeId`,`data-v-c1fd645b`]]),IP=P({__name:`LoginView`,setup(e){return(e,t)=>(I(),L(F,null,[z(FP),z(IN)],64))}}),LP={class:`center-block-custom`},RP={class:`width700`},zP=P({__name:`OfficePage`,setup(e){let t=VM(),n=HM(),r=k([]);async function i(){r.value=[];let e=await n.GetPermissions({});r.value=e.permissions}i();function a(){let e=new Date,t=e.getDay(),n=e.getDate(),r=e.getMonth()+1,i=t===1,a=t===5&&n===13,o=r===1&&n===1||r===12&&n===31,s=r>=6&&r<=8,c=r===12||r<=2,l=n%5==0,u=[`Всегда носи с собой запасную ручку — признания любят записывать в самый неподходящий момент.`,`Если подозреваемый слишком вежлив, он либо дипломат, либо прячет труп в гараже.`,`Кофе в участке — это не напиток, это яд для улик. Пей только свой.`,`Следы на месте преступления всегда ведут к тому, кто забыл закрыть дверь.`,`Лучший способ разговорить молчуна — предложить ему чай с тремя ложками сахара.`,`Если всё указывает на дворецкого, ищи того, кто нанимал дворецкого.`,`Записывай каждую мелочь. Особенно цвет носков убитого.`,`Не верь алиби, которое начинается со слов 'Я бы никогда...'`,`Преступник всегда возвращается на место преступления. Или за забытым телефоном.`,`Ищи того, кому есть что терять, кроме своего времени.`,`Если женщина плачет в кабинете — дай ей платок. Если мужчина — дай ему стакан воды.`,`Самое опасное оружие — не пистолет, а бухгалтерская книга.`,`Собака всегда знает убийцу. Но она не говорит, потому что у неё контракт.`,`Проверяй чеки, билеты и смс. Ложь не терпит документации.`,`Если у тела нет врагов — ты плохо искал врагов.`,`Лупа нужна не для увеличения улик, а для того, чтобы выглядеть умнее.`,`Интуиция — это когда ты уже знаешь ответ, но хочешь убедиться, что не ошибся.`,`Подозревай всех, даже самого себя. Иногда преступник — это ты в прошлом.`,`Хороший детектив видит улики. Великий — видит их отсутствие.`,`Никогда не допрашивай свидетеля на голодный желудок. И себя тоже.`,`Если дело зашло в тупик, переверни бумаги вверх ногами.`,`Самый ценный свидетель — это камера наблюдения, у которой сломана защита.`,`Не ищи мотив. Ищи возможность.`,`Преступник не оставляет следов. Он оставляет выбор.`,`Если дверь была закрыта изнутри — ищи люк, который открывается снаружи.`,`Лучший детектив — тот, кого не замечают в толпе.`,`Учись читать по губам. Пригодится на допросах с адвокатом.`,`Запах духов на месте преступления важнее запаха пороха.`,`Если ты нашел отпечаток пальца — проверь, не твой ли он.`,`Раскрыть дело — это искусство. Не раскрыть — тоже искусство, но другое.`,`Никогда не спорь с баллистикой. Она всегда права, даже если ты не согласен.`,`В каждом деле есть одна странная деталь. Найди её — и пазл сложится.`,`Если преступник умный — он оставит ложный след. Если глупый — он оставит следы в соцсетях.`,`Лучший друг детектива — тишина. Второй друг — кофе.`,`Если свидетель говорит слишком много, он врет. Если молчит — он тоже врет.`,`Преступление редко бывает идеальным. Идеальным бывает только алиби жены.`,`Всегда смотри на часы на трупе. Возможно, они показывают время, когда он перестал верить в людей.`,`Воры любят темноту. Детективы — свет. А маньяки — полную луну.`,`Если ты поймал преступника, не радуйся раньше времени — может, он просто лжец.`,`В каждом городе есть одно место, где собираются все сплетники. Начни оттуда.`,`Не верь в совпадения. Но верь в удачу.`,`Если у тебя нет улик — придумай их. Но только мысленно, чтобы знать, где искать.`,`Жертва всегда знала убийцу. Даже если она не знала, что знает.`,`Проверяй алиби на разрыв. Если оно выдерживает — ты ошибся.`,`Самый страшный враг детектива — не маньяк, а его собственная лень.`,`Если преступник оставил записку — прочитай её. И сожги, чтобы никто не узнал твой почерк.`,`Всегда носи с собой фонарик. Даже днём. Для эффекта.`,`В деле важно всё: от укуса комара до размера обуви.`,`Если ты думаешь, что дело простое — значит, ты не додумал.`,`Убийца всегда ищет внимания. Или наоборот, избегает его.`,`Стук в дверь в полночь — это либо полиция, либо заказчик.`,`Никогда не давай обещаний родственникам жертвы. Только факты.`,`Если у тебя есть три версии — выбирай четвёртую.`,`Лучшее оружие — это бумага. На ней можно написать что угодно.`,`Когда ты смотришь на улику, смотри на неё глазами преступника.`,`Все любят детективы, пока не становятся подозреваемыми.`,`Следы крови важны. Но важнее — следы лжи.`,`Если ты не спишь третьи сутки, значит, ты либо гений, либо дурак.`,`Проверяй каждого, кто говорит 'Я ничего не видел'.`,`В каждом деле есть один человек, который знает всё. И он не говорит.`,`Не суди преступника по одежде. Суди по тому, как он её снимал.`,`Дыра в алиби — это как дыра в лодке. Рано или поздно она утонет.`,`Если преступник использует перчатки — он профессионал. Если нет — он любитель.`,`Запомни: первая версия — всегда неверная.`,`Если у тебя кончились идеи, иди в бар. Там всегда есть кто-то, кто расскажет тебе дело.`,`Свидетель с фотороботом — это как слепой с компасом.`,`Никогда не смейся над уликами. Они могут обидеться и исчезнуть.`,`Если ты нашёл оружие — не трогай его. Иначе твои отпечатки будут на нём.`,`Преступник умён, но ты умнее. Потому что ты пьёшь правильный кофе.`,`Всегда пересматривай видеозаписи. Особенно в два раза медленнее.`,`Если на месте преступления есть кот — он видел всё. Но он не скажет.`,`Лучший способ поймать преступника — пригласить его на обед.`,`Если подозреваемый улыбается, он либо невиновен, либо психопат.`,`Проверяй мусор. В нём всегда есть что-то полезное.`,`Никогда не доверяй красивым историям. Только уродливым фактам.`,`Если ты нашёл улику слишком легко — это ловушка.`,`Убийца всегда оставляет послание. Даже если это просто тишина.`,`Если ты запнулся на допросе — делай вид, что так и задумано.`,`Помни: все врут. Даже я тебе советую.`,`Если ты боишься темноты — стань детективом. Страх пройдёт.`,`Самые лучшие признания случаются под утро, когда все устали.`,`Если преступник использовал компьютер, значит, он либо хакер, либо дурак.`,`Следы шин — это как подпись на дороге.`,`Никогда не забывай про запах. Он помнит дольше, чем люди.`,`Если ты не знаешь, что делать — съешь шоколадку.`,`В каждом деле есть одна минута слабости. Найди её.`,`Преступник всегда нервничает. Даже если он не нервничает.`,`Если у тебя есть подозреваемый и нет улик — подожди. Улики появятся.`,`Не верь в чудеса. Верь в логику.`,`Если ты устал — возьми отпуск. Преступление никуда не денется.`,`Запомни: самый опасный преступник — тот, кто читал детективы.`,`Если ты думаешь, что всё кончено — значит, ты пропустил поворот.`,`Следы на полу важнее следов в душе.`,`Если преступник оставил окурок — он курил. Или хотел, чтобы ты так думал.`,`Хороший детектив всегда голоден. Это помогает мыслить.`,`Не суди по первому впечатлению. Суди по второму, когда увидишь его в наручниках.`,`Если у тебя есть тайный агент — не доверяй ему.`,`В деле всегда есть тот, кто знает больше, чем говорит.`,`Если ты не можешь найти убийцу — стань им (в мыслях).`,`И последнее: всегда проверяй, закрыл ли ты дверь участка.`],d=[];i&&d.push(`☕ Понедельник: Сегодня даже преступники не хотят работать. Проверь тех, кто был слишком бодр.`),a&&d.push(`🔮 Пятница 13-е: Если улики ведут к чёрной кошке, ищи чёрного кота с алиби.`),o&&d.push(`🎄 Новый год: Свидетель в костюме Деда Мороза врёт. Настоящий Дед Мороз всегда в отпуске.`),s&&d.push(`☀️ Лето: В жару преступники забывают улики в карманах, потому что снимают пиджаки.`),c&&d.push(`❄️ Зима: Следы на снегу ведут к тому, у кого самые холодные руки.`),l&&d.push(`🌕 Полнолуние: Если подозреваемый воет на луну, он либо оборотень, либо фанат рока.`);let f=u.concat(d),p=f[Math.floor(Math.random()*f.length)],m=[`🔍 Заметки сыщика:`,`📓 Из дневника инспектора:`,`🕵️ Мудрость Шерлока:`,`🧠 Гениально и просто:`,`📌 Правило большого пальца:`,`☕ Кофейная истина:`];return{header:m[Math.floor(Math.random()*m.length)],text:p}}let o=a();return(e,n)=>(I(),L(F,null,[R(`div`,LP,[R(`div`,RP,[z(A(sw),{title:A(o).header,"show-icon":!1,type:`info`,style:{"margin-bottom":`20px`}},{default:M(()=>[B(O(A(o).text),1)]),_:1},8,[`title`]),R(`p`,null,`Доброго времени суток, `+O(A(t).username)+`.`,1)])]),z(IN,{active:`office`})],64))}}),BP=P({__name:`OfficeView`,setup(e){return(e,t)=>(I(),Ea(zP))}}),VP={};function HP(e,t){return`Соглашением о персональных данных`}var UP=FN(VP,[[`render`,HP]]),WP={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 24 24`},GP=P({name:`Key24Regular`,render:function(e,t){return I(),L(`svg`,WP,t[0]||=[R(`g`,{fill:`none`},[R(`path`,{d:`M18.25 7a1.25 1.25 0 1 1-2.5 0a1.25 1.25 0 0 1 2.5 0zM15.5 2.05A6.554 6.554 0 0 0 8.95 8.6c0 .387.05.76.11 1.104a.275.275 0 0 1-.07.244l-6.235 6.236a2.75 2.75 0 0 0-.806 1.944V20.3c0 .966.784 1.75 1.75 1.75h2.5a1.75 1.75 0 0 0 1.75-1.75v-1.25H9.7c.69 0 1.25-.56 1.25-1.25v-1.75h1.75a1.25 1.25 0 0 0 1.25-1.204c.496.128 1.02.204 1.55.204a6.554 6.554 0 0 0 6.55-6.55c0-3.631-2.953-6.45-6.55-6.45zM10.45 8.6a5.054 5.054 0 0 1 5.05-5.05c2.802 0 5.05 2.181 5.05 4.95a5.054 5.054 0 0 1-5.05 5.05c-.68 0-1.38-.171-2.005-.44a.75.75 0 0 0-1.046.69v.75H10.7c-.69 0-1.25.56-1.25 1.25v1.75H7.7c-.69 0-1.25.56-1.25 1.25v1.5a.25.25 0 0 1-.25.25H3.7a.25.25 0 0 1-.25-.25v-2.172c0-.331.132-.65.366-.884l6.236-6.235a1.774 1.774 0 0 0 .486-1.564a4.917 4.917 0 0 1-.088-.845z`,fill:`currentColor`})],-1)])}}),KP={class:`main`},qP={class:`message-cloud`},JP=FN(P({__name:`MessagePaper`,setup(e){return(e,t)=>(I(),L(`div`,KP,[t[0]||=R(`div`,{class:`message-cloud-3`},null,-1),t[1]||=R(`div`,{class:`message-cloud-2`},null,-1),R(`div`,qP,[ni(e.$slots,`default`,{},void 0,!0)])]))}}),[[`__scopeId`,`data-v-dfe3093b`]]),YP={key:1,class:`place-block`},XP={class:`message-header`},ZP={class:`message-content`},QP={key:0},$P={class:`message-image-border`},eF=[`src`],tF={key:0,class:`hr`},nF={class:`gray-block`},rF={key:0},iF={class:`key-block`},aF={key:3},oF={class:`message-show-header font`},sF={class:`message-show-content font`},cF={key:0},lF={class:`message-image-border`},uF=[`src`],dF={key:0,class:`show-hr`},fF=[`onClick`],pF={class:`button-dialog-text`},mF={key:1,class:`show-hr`},hF={key:4},gF={class:`message-header font`},_F={key:5,class:`place-block`},vF=[`src`],yF={style:{display:`flex`,"align-items":`center`,width:`100%`}},bF={style:{display:`flex`,"flex-direction":`column`}},xF={style:{display:`flex`,"flex-direction":`column`,width:`100%`}},SF={class:`door-add-block`},CF={class:`door-field`},wF={style:{display:`flex`,"align-items":`center`,width:`100%`}},TF={style:{display:`flex`,"align-items":`center`,width:`100%`}},EF={class:`slot-block`},DF=FN(P({__name:`PlaceBlock`,props:{newPlaceCode:{type:String},newPlaceName:{type:String},newPlaceText:{type:String},place:{type:Object},mode:{type:String,required:!0},addAction:{type:Function}},emits:[`update:newPlaceCode`,`update:newPlaceName`,`update:newPlaceText`,`update:mode`],setup(e,{emit:t}){let n=e,r=t,i=e=>{r(`update:newPlaceCode`,e)},a=e=>{r(`update:newPlaceName`,e)},o=e=>{r(`update:newPlaceText`,e)},s=e=>{r(`update:mode`,e)};function c(){return{name:void 0,image:void 0}}function l(){return{code:void 0,name:void 0,keys:void 0}}function u(){return{name:void 0}}return(t,r)=>(I(),L(F,null,[e.mode==`mini-add`?(I(),L(`div`,{key:0,class:`place-block-hover show-editor-block`,onClick:r[0]||=e=>s(`add`)},[...r[14]||=[R(`p`,{class:`place-image-plus`},`+`,-1)]])):Pa(``,!0),e.mode==`add`?(I(),L(`div`,YP,[z(A(OD),{vertical:``},{default:M(()=>[z(A(Dw),null,{default:M(()=>[z(A(Tw),{style:{width:`20%`},value:e.newPlaceCode,"onUpdate:value":i,type:`text`,placeholder:`Ы-1`},null,8,[`value`]),z(A(Tw),{style:{width:`80%`},value:e.newPlaceName,"onUpdate:value":a,type:`text`,placeholder:`Дом №Ы`},null,8,[`value`])]),_:1}),z(A(Tw),{value:e.newPlaceText,"onUpdate:value":o,type:`textarea`,autosize:{minRows:3},placeholder:`В начале было слово...`},null,8,[`value`]),ni(t.$slots,`default`,{},void 0,!0)]),_:3})])):Pa(``,!0),e.mode==`show-editor`?(I(),L(`div`,{key:2,class:`place-block-hover show-editor-block`,onClick:r[1]||=e=>s(`edit`)},[R(`div`,XP,O(n.place?.code)+`: `+O(n.place?.name),1),r[15]||=R(`hr`,{class:`hr`},null,-1),R(`div`,ZP,[n.place?.image?(I(),L(`div`,QP,[R(`div`,$P,[R(`img`,{src:n.place?.image,class:`message-image`},null,8,eF)])])):Pa(``,!0),B(` `+O(n.place?.text),1)]),(I(!0),L(F,null,ti(n.place?.doors,e=>(I(),L(`div`,{key:e.code,class:`door-block`},[B(O(e.name)+` `,1),(I(!0),L(F,null,ti(e.keys,e=>(I(),L(`span`,{key:e.name,class:`key-block`},[z(A(jN),{class:`lock-icon`},{default:M(()=>[z(A(JM))]),_:1}),B(` `+O(e.name),1)]))),128))]))),128)),n.place?.applications?.length?(I(),L(`hr`,tF)):Pa(``,!0),(I(!0),L(F,null,ti(n.place?.applications,e=>(I(),L(`div`,{class:`message-footer application-block`,key:e.name},` Приложение: `+O(e.name),1))),128)),R(`p`,nF,[n.place?.hidden?(I(),L(`span`,rF,` Скрытая точка `)):Pa(``,!0),(I(!0),L(F,null,ti(n.place?.keys,e=>(I(),L(`span`,iF,[z(A(jN),{class:`lock-icon`},{default:M(()=>[z(A(GP))]),_:1}),B(` `+O(e.name),1)]))),256))])])):Pa(``,!0),e.mode==`show`?(I(),L(`div`,aF,[z(JP,null,{default:M(()=>[R(`div`,oF,[B(O(e.place?.code)+`: `+O(e.place?.name)+` `,1),R(`span`,{class:`collapse-icon collapse-icon-up`,onClick:r[2]||=e=>s(`show-collapse`)})]),r[16]||=R(`hr`,{class:`show-hr`},null,-1),R(`div`,sF,[e.place?.image?.length?(I(),L(`div`,cF,[R(`div`,lF,[R(`img`,{src:e.place?.image,class:`message-image`},null,8,uF)])])):Pa(``,!0),B(` `+O(e.place?.text),1)]),n.place?.doors?.length?(I(),L(`hr`,dF)):Pa(``,!0),(I(!0),L(F,null,ti(n.place?.doors,t=>(I(),L(`div`,{key:t.code,class:`button-dialog font`,onClick:n=>e.addAction(t.code)},[R(`div`,pF,O(t.code)+` `+O(t.name),1)],8,fF))),128)),n.place?.applications?.length?(I(),L(`hr`,mF)):Pa(``,!0),(I(!0),L(F,null,ti(n.place?.applications,e=>(I(),L(`div`,{class:`message-show-footer font`,key:e.name},` Приложение: `+O(e.name),1))),128))]),_:1})])):Pa(``,!0),e.mode==`show-collapse`?(I(),L(`div`,hF,[z(JP,null,{default:M(()=>[R(`div`,gF,[B(O(e.place?.code)+`: `+O(e.place?.name)+` `,1),R(`span`,{class:`collapse-icon`,onClick:r[3]||=e=>s(`show`)})])]),_:1})])):Pa(``,!0),e.mode==`edit`?(I(),L(`div`,_F,[z(A(OD),{vertical:``},{default:M(()=>[z(A(Dw),null,{default:M(()=>[z(A(Tw),{style:{width:`20%`},value:n.place.code,"onUpdate:value":r[4]||=e=>n.place.code=e,type:`text`,placeholder:`Ы-1`},null,8,[`value`]),z(A(Tw),{style:{width:`80%`},value:n.place.name,"onUpdate:value":r[5]||=e=>n.place.name=e,type:`text`,placeholder:`Дом №Ы`},null,8,[`value`])]),_:1}),z(A(Tw),{value:n.place.text,"onUpdate:value":r[6]||=e=>n.place.text=e,type:`textarea`,autosize:{minRows:3},placeholder:`В начале было слово...`},null,8,[`value`]),r[28]||=R(`p`,{class:`settings-header`},`Картинка`,-1),R(`div`,null,[z(A(OD),null,{default:M(()=>[z(A(OD),{vertical:``},{default:M(()=>[R(`img`,{src:n.place.image,class:`message-edit-image`},null,8,vF),z(A($),{onClick:r[7]||=e=>(n.place.image=``,n.place.fileList=null)},{default:M(()=>[...r[17]||=[B(`Убрать картинку`,-1)]]),_:1})]),_:1}),z(A(OD),{vertical:``},{default:M(()=>[z(A(Tw),{value:n.place.image,"onUpdate:value":r[8]||=e=>n.place.image=e,type:`text`,placeholder:`Не задано`,disabled:``},null,8,[`value`]),z(A(PA),{"directory-dnd":``,max:1,"file-list":n.place.fileList,"onUpdate:fileList":r[9]||=e=>n.place.fileList=e},{default:M(()=>[z(A(aA),null,{default:M(()=>[z(A(nA),{style:{"font-size":`16px`}},{default:M(()=>[...r[18]||=[B(` Щелкните или перетащите файл в эту область для загрузки `,-1)]]),_:1})]),_:1})]),_:1},8,[`file-list`])]),_:1})]),_:1})]),r[29]||=R(`p`,{class:`settings-header`},`Видимость точки`,-1),z(A(Uk),{value:n.place.hidden,"onUpdate:value":r[10]||=e=>n.place.hidden=e},{checked:M(()=>[...r[19]||=[B(` Скрытая точка `,-1)]]),unchecked:M(()=>[...r[20]||=[B(` Обычная точка `,-1)]]),_:1},8,[`value`]),r[30]||=B(` Улики `,-1),z(A(xD),{value:n.place.applications,"onUpdate:value":r[11]||=e=>n.place.applications=e,"on-create":c},{"create-button-default":M(()=>[...r[21]||=[B(` Добавить улику `,-1)]]),default:M(({value:e})=>[R(`div`,yF,[z(A(Tw),{value:e.name,"onUpdate:value":t=>e.name=t,type:`text`,placeholder:`Название`},null,8,[`value`,`onUpdate:value`])])]),_:1},8,[`value`]),r[31]||=B(` Действия `,-1),z(A(xD),{value:n.place.doors,"onUpdate:value":r[12]||=e=>n.place.doors=e,"on-create":l},{"create-button-default":M(()=>[...r[22]||=[B(` Добавить действие `,-1)]]),action:M(({index:e,create:t,remove:n})=>[R(`div`,bF,[z(A($),{onClick:()=>t(e),class:`plus-minus-buttons`},{default:M(()=>[...r[23]||=[B(`+`,-1)]]),_:1},8,[`onClick`]),z(A($),{onClick:()=>n(e),class:`plus-minus-buttons`},{default:M(()=>[...r[24]||=[B(`-`,-1)]]),_:1},8,[`onClick`])])]),default:M(({value:e})=>[R(`div`,xF,[R(`div`,SF,[z(A(Dw),null,{default:M(()=>[z(A(Tw),{style:{width:`30%`},value:e.code,"onUpdate:value":t=>e.code=t,type:`text`,placeholder:`Код`},null,8,[`value`,`onUpdate:value`]),z(A(Tw),{style:{width:`70%`},value:e.name,"onUpdate:value":t=>e.name=t,type:`text`,placeholder:`Название`},null,8,[`value`,`onUpdate:value`])]),_:2},1024),r[26]||=R(`p`,{class:`need-keys-text`},`Требуемые ключи`,-1),R(`div`,CF,[z(A(xD),{value:e.keys,"onUpdate:value":t=>e.keys=t,"on-create":u},{"create-button-default":M(()=>[...r[25]||=[B(` Добавить ключ `,-1)]]),default:M(({value:e})=>[R(`div`,wF,[z(A(Tw),{value:e.name,"onUpdate:value":t=>e.name=t,type:`text`,placeholder:`Название`},null,8,[`value`,`onUpdate:value`])])]),_:1},8,[`value`,`onUpdate:value`])])])])]),_:1},8,[`value`]),r[32]||=B(` Получаемые ключи `,-1),z(A(xD),{value:n.place.keys,"onUpdate:value":r[13]||=e=>n.place.keys=e,"on-create":u},{"create-button-default":M(()=>[...r[27]||=[B(` Добавить ключ `,-1)]]),default:M(({value:e})=>[R(`div`,TF,[z(A(Tw),{value:e.name,"onUpdate:value":t=>e.name=t,type:`text`,placeholder:`Название`},null,8,[`value`,`onUpdate:value`])])]),_:1},8,[`value`]),R(`div`,EF,[ni(t.$slots,`default`,{},void 0,!0)])]),_:3})])):Pa(``,!0)],64))}}),[[`__scopeId`,`data-v-93891f39`]]),OF={class:`center-block-custom`},kF={class:`width700`},AF={class:`places-container`},jF={class:`settings-block`},MF=FN(P({__name:`ScenariosEditorPage`,setup(e){let t=VM(),n=HM(),r=$A().params.id,i=k(!1),a=k(``),o=k(``),s=iD(),c=k([]),l=k({id:void 0,name:void 0,story:void 0,author:void 0,status:void 0,updatedAt:void 0,createdAt:void 0,publishedAt:void 0});async function u(e){let t=await n.GetFullScenario({id:e});if(t.error!=``){s.error(t.error);return}l.value=t.scenario,l.value.story?.places?.forEach(e=>{e.oldCode=e.code,e.mode=`show-editor`})}u(Number(r));async function d(e){let t=await n.DeleteScenario({id:e});if(t.error!=``){s.error(t.error);return}BI.push(`/scenarios`)}async function f(e){let t=await n.PublicScenario({id:e});if(t.error!=``){s.error(t.error);return}await u(Number(r)),a.value=``,i.value=!1}async function p(e,t){let r=new Date().toISOString(),i=await n.AddGame({name:(`Тестовая игра: `+e).trim(),description:`Тестовая игра`,startAt:r,scenarioId:t});if(i.error!=``){s.error(i.error);return}let a=await n.AddTeam({name:`Тестовая команда`,gameId:i.id});if(a.error!=``){s.error(a.error);return}BI.push(`/team-story/`+a.id+`?password=`+a.password)}async function m(e){let t=await n.DraftScenario({id:e});if(t.error!=``){s.error(t.error);return}await u(Number(r)),a.value=``,i.value=!1}async function h(e,t){if(!e)return``;let r=await e.arrayBuffer(),i=new Uint8Array(r),a=await n.UploadFile({filename:t,data:_(i)});return a.error==``?a.filename||``:(s.error(a.error),``)}async function g(){let e=``;if(c.value&&c.value.length>0){let t=c.value[0].file||null;if(t==null||(e=await h(t,`scenarios_`+l.value.id+`_`+t.name),e===``))return}let t=await n.UpdateScenario({id:l.value.id,name:l.value.name,description:l.value.description,image:e});if(t.error!=``){s.error(t.error);return}await u(Number(r)),i.value=!1}function _(e){let t=v(e);return btoa(t)}function v(e){let t=``;for(let n=0;ne.code==r.code)==null){let t=await n.AddScenarioPlace({id:e.id,place:{code:r.code,name:r.name,text:void 0,image:void 0,hidden:!0,applications:void 0,doors:void 0,keys:void 0}});if(t.error!=``){s.error(t.error);return}}}async function ee(e){await u(Number(r)),e.mode=`show-editor`}async function E(e){if(e.fileList&&e.fileList.length>0){let t=e.fileList[0].file||null;if(t==null)return;let n=await h(t,`scenarios_`+l.value.id+`_place_`+e.code+`_`+t.name);if(n===``)return;e.image=n}await T(l.value,e);let t=await n.UpdateScenarioPlace({id:l.value.id,code:e.oldCode,place:e});if(t.error!=``){s.error(t.error);return}await u(Number(r)),e.mode=`show-editor`}async function D(e){let t=await n.DeleteScenarioPlace({id:l.value.id,code:e.oldCode});if(t.error!=``){s.error(t.error);return}await u(Number(r))}function te(){let e=[{text:`Настя, ты просто ослепительна сегодня!`,nameForm:`Настя`},{text:`У Насти невероятный вкус!`,nameForm:`Насти`},{text:`Настенька, твоя улыбка делает мир ярче.`,nameForm:`Настенька`},{text:`С Настей всегда интересно общаться.`,nameForm:`Настей`},{text:`Настя, ты — источник вдохновения для всех вокруг.`,nameForm:`Настя`},{text:`Мне нравится, как Настя смотрит на мир.`,nameForm:`Настя`},{text:`Настюха, ты супер!`,nameForm:`Настюха`},{text:`Талант Насти поражает!`,nameForm:`Насти`},{text:`Настя, твоя энергия заряжает батарейки!`,nameForm:`Настя`},{text:`С Настей хочется проводить каждую минуту.`,nameForm:`Настей`},{text:`Настенька, ты — самое красивое, что случилось в этом мире.`,nameForm:`Настенька`},{text:`У Насти золотое сердце.`,nameForm:`Насти`}];return e[Math.floor(Math.random()*e.length)].text}return(e,n)=>(I(),L(F,null,[R(`div`,OF,[R(`div`,kF,[R(`div`,AF,[l.value.status==`public`?(I(),Ea(A(sw),{key:0,title:`Сценарий опубликован`,type:`warning`,style:{"margin-bottom":`20px`}},{default:M(()=>[...n[20]||=[B(` Не рекомендуется редактировать сценарий когда он опубликован. `,-1)]]),_:1})):Pa(``,!0),A(t).user?.id==2?(I(),Ea(A(sw),{key:1,title:te(),type:`info`,style:{"margin-bottom":`20px`}},null,8,[`title`])):Pa(``,!0),R(`div`,jF,[B(` Точек: `+O(l.value.story?.places?.length)+` `,1),z(A($),{quaternary:``,onClick:n[0]||=e=>i.value=!0,class:`settings-button`},{default:M(()=>[z(A(jN),{class:`settings-icon`},{default:M(()=>[z(A(cP))]),_:1}),n[21]||=B(` Настройки `,-1)]),_:1})]),z(DF,{mode:S.value,"onUpdate:mode":n[3]||=e=>S.value=e,newPlaceCode:y.value,"onUpdate:newPlaceCode":n[4]||=e=>y.value=e,newPlaceName:b.value,"onUpdate:newPlaceName":n[5]||=e=>b.value=e,newPlaceText:x.value,"onUpdate:newPlaceText":n[6]||=e=>x.value=e},{default:M(()=>[z(A(FD),{justify:`end`},{default:M(()=>[z(A($),{onClick:n[1]||=e=>w()},{default:M(()=>[...n[22]||=[B(`Отмена`,-1)]]),_:1}),z(A($),{onClick:n[2]||=e=>C(),disabled:!y.value},{default:M(()=>[...n[23]||=[B(`Добавить точку`,-1)]]),_:1},8,[`disabled`])]),_:1})]),_:1},8,[`mode`,`newPlaceCode`,`newPlaceName`,`newPlaceText`]),(I(!0),L(F,null,ti(l.value.story?.places,e=>(I(),Ea(DF,{place:e,mode:e.mode,"onUpdate:mode":t=>e.mode=t,key:e.oldCode},{default:M(()=>[z(A(FD),{justify:`end`},{default:M(()=>[z(A($),{onClick:t=>D(e),type:`error`,ghost:``},{default:M(()=>[...n[24]||=[B(`Удалить`,-1)]]),_:1},8,[`onClick`]),z(A($),{onClick:t=>ee(e)},{default:M(()=>[...n[25]||=[B(`Отмена`,-1)]]),_:1},8,[`onClick`]),z(A($),{onClick:t=>E(e),disabled:e.code==``},{default:M(()=>[...n[26]||=[B(`Сохранить`,-1)]]),_:1},8,[`onClick`,`disabled`])]),_:2},1024)]),_:2},1032,[`place`,`mode`,`onUpdate:mode`]))),128))])])]),z(A(UE),{show:i.value,"onUpdate:show":n[19]||=e=>i.value=e},{default:M(()=>[z(A(TT),{style:{width:`600px`},title:`Настройки сценария`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A($),{onClick:n[7]||=e=>i.value=!1},{default:M(()=>[...n[27]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[...n[47]||=[]]),default:M(()=>[z(A(OD),{vertical:``},{default:M(()=>[n[39]||=R(`p`,null,`Название`,-1),z(A(Tw),{value:l.value.name,"onUpdate:value":n[8]||=e=>l.value.name=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`]),n[40]||=R(`p`,{class:`settings-header`},`Описание`,-1),z(A(Tw),{value:l.value.description,"onUpdate:value":n[9]||=e=>l.value.description=e,type:`textarea`,placeholder:`Убийство пастуха...`},null,8,[`value`]),n[41]||=R(`p`,{class:`settings-header`},`Картинка`,-1),z(A(Tw),{value:l.value.image,"onUpdate:value":n[10]||=e=>l.value.image=e,type:`text`,placeholder:`default_scenario.png`,disabled:``},null,8,[`value`]),z(A(PA),{"directory-dnd":``,max:1,"file-list":c.value,"onUpdate:fileList":n[11]||=e=>c.value=e},{default:M(()=>[z(A(aA),null,{default:M(()=>[z(A(nA),{style:{"font-size":`16px`}},{default:M(()=>[...n[28]||=[B(` Щелкните или перетащите файл в эту область для загрузки `,-1)]]),_:1})]),_:1})]),_:1},8,[`file-list`]),z(A($),{onClick:n[12]||=e=>g(),ghost:``},{default:M(()=>[...n[29]||=[B(` Сохранить изменения `,-1)]]),_:1}),n[42]||=R(`hr`,{class:`settings-hr`},null,-1),n[43]||=R(`p`,null,`Создать тестовую игру`,-1),z(A($),{onClick:n[13]||=e=>p(l.value.name||``,l.value.id),ghost:``},{default:M(()=>[...n[30]||=[B(` Создать игру `,-1)]]),_:1}),n[44]||=R(`hr`,{class:`settings-hr`},null,-1),n[45]||=R(`p`,null,`Публикация`,-1),R(`p`,null,[l.value.status==`public`?(I(),Ea(A(WC),{key:0,bordered:!1,type:`success`,class:`status-block`},{default:M(()=>[...n[31]||=[B(` Опубликовано `,-1)]]),_:1})):Pa(``,!0),l.value.status==`draft`?(I(),Ea(A(WC),{key:1,bordered:!1,type:`warning`,class:`status-block`},{default:M(()=>[...n[32]||=[B(` В разработке `,-1)]]),_:1})):Pa(``,!0)]),R(`p`,null,[n[33]||=B(` Введите название сценария `,-1),z(A(nA),{class:`name-text`,strong:``},{default:M(()=>[B(O(l.value.name),1)]),_:1})]),z(A(Tw),{value:a.value,"onUpdate:value":n[14]||=e=>a.value=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`]),l.value.status==`public`?Pa(``,!0):(I(),Ea(A($),{key:0,onClick:n[15]||=e=>f(l.value.id),ghost:``,disabled:a.value!=l.value.name},{default:M(()=>[...n[34]||=[B(` Опубликовать сценарий `,-1)]]),_:1},8,[`disabled`])),l.value.status==`draft`?Pa(``,!0):(I(),Ea(A($),{key:1,onClick:n[16]||=e=>m(l.value.id),ghost:``,disabled:a.value!=l.value.name},{default:M(()=>[...n[35]||=[B(` Снять сценарий с публикации `,-1)]]),_:1},8,[`disabled`])),n[46]||=R(`hr`,{class:`settings-hr`},null,-1),R(`p`,null,[n[36]||=B(` Введите название сценария `,-1),z(A(nA),{class:`name-text`,strong:``},{default:M(()=>[B(O(l.value.name),1)]),_:1}),n[37]||=B(` чтобы удалить его `,-1)]),z(A(Tw),{value:o.value,"onUpdate:value":n[17]||=e=>o.value=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`]),z(A($),{onClick:n[18]||=e=>d(l.value.id),type:`error`,ghost:``,disabled:o.value!=l.value.name},{default:M(()=>[...n[38]||=[B(` Удалить сценарий `,-1)]]),_:1},8,[`disabled`])]),_:1})]),_:1})]),_:1},8,[`show`]),z(IN,{active:`scenarios`})],64))}}),[[`__scopeId`,`data-v-56e050c6`]]),NF=P({__name:`ScenariosEditorView`,setup(e){return(e,t)=>(I(),Ea(MF))}}),PF={class:`center-block-custom`},FF={class:`width1200 display-table`},IF=[`onClick`],LF={class:`scenario-content-block`},RF={class:`scenario-title`},zF={class:`scenario-label`},BF=FN(P({__name:`ScenariosPage`,setup(e){let t=HM(),n=k([]),r=QA(),i=iD(),a=k(!1),o=k(``);async function s(){n.value=[];let e=await t.GetMyScenarios({});n.value=e.scenarios}async function c(e){let n=await t.AddScenario({name:e});if(n.error!=``){i.error(n.error);return}await l(n.id)}async function l(e){r.push(`/scenarios/`+e+`/editor`)}return s(),(e,t)=>(I(),L(F,null,[R(`div`,PF,[R(`div`,FF,[R(`div`,{class:`scenario-block`,onClick:t[0]||=e=>a.value=!0},[...t[5]||=[R(`div`,{class:`scenario-image-block scenario-image-plus`},`+`,-1),R(`div`,{class:`scenario-content-block`},[R(`p`,{class:`scenario-title`},`Создать новый сценарий`)],-1)]]),(I(!0),L(F,null,ti(n.value,e=>(I(),L(`div`,{class:`scenario-block`,onClick:t=>l(e.id),key:e.id},[R(`div`,{class:`scenario-image-block scenario-image`,style:fe({backgroundImage:`url(${e.image})`})},null,4),R(`div`,LF,[R(`p`,RF,O(e.name),1),R(`p`,zF,[e.status==`public`?(I(),Ea(A(WC),{key:0,bordered:!1,type:`success`,class:`status-block`},{default:M(()=>[...t[6]||=[B(`Опубликовано`,-1)]]),_:1})):Pa(``,!0),e.status==`draft`?(I(),Ea(A(WC),{key:1,bordered:!1,type:`warning`,class:`status-block`},{default:M(()=>[...t[7]||=[B(`В разработке`,-1)]]),_:1})):Pa(``,!0)])])],8,IF))),128))])]),z(A(UE),{show:a.value,"onUpdate:show":t[4]||=e=>a.value=e},{default:M(()=>[z(A(TT),{style:{width:`600px`},title:`Создание сценария`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A($),{onClick:t[1]||=e=>a.value=!1},{default:M(()=>[...t[8]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[z(A(FD),{justify:`end`},{default:M(()=>[z(A($),{onClick:t[3]||=e=>c(o.value),disabled:o.value.length==0},{default:M(()=>[...t[9]||=[B(` Создать `,-1)]]),_:1},8,[`disabled`])]),_:1})]),default:M(()=>[z(A(Tw),{value:o.value,"onUpdate:value":t[2]||=e=>o.value=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`])]),_:1})]),_:1},8,[`show`]),z(IN,{active:`scenarios`})],64))}}),[[`__scopeId`,`data-v-1a024fe4`]]),VF=P({__name:`ScenariosView`,setup(e){return(e,t)=>(I(),Ea(BF))}}),HF={class:`center-block-custom`},UF={class:`width700`},WF={class:`scenario-title`},GF=[`src`],KF={class:`scenario-description`},qF={class:`scenario-author`},JF=FN(P({__name:`ScenarioPage`,setup(e){let t=iD(),n=HM(),r=$A().params.id,i=k({id:void 0,name:void 0,story:void 0,author:void 0,status:void 0,updatedAt:void 0,createdAt:void 0,publishedAt:void 0});async function a(e){let r=await n.GetScenario({id:e});if(r.error!=``){t.error(r.error);return}i.value=r.scenario}return a(Number(r)),(e,t)=>(I(),L(F,null,[R(`div`,HF,[R(`div`,UF,[R(`div`,WF,O(i.value.name),1),R(`img`,{class:`scenario-image`,src:i.value.image},null,8,GF),R(`div`,KF,O(i.value.description),1),R(`div`,qF,[z(A(WC),{bordered:!1,type:`success`,class:`status-block`},{default:M(()=>[B(`Автор: `+O(i.value.author?.username),1)]),_:1})])])]),z(IN,{active:`catalog`})],64))}}),[[`__scopeId`,`data-v-2c9a6669`]]),YF=P({__name:`ScenarioView`,setup(e){return(e,t)=>(I(),Ea(JF))}}),XF={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 512 512`},ZF=P({name:`Footsteps`,render:function(e,t){return I(),L(`svg`,XF,t[0]||=[R(`path`,{d:`M133.83 361.27c-22.61 0-41-8.17-54.79-24.39s-22.84-40.29-28.11-75.31c-7.76-51.61-.06-95.11 21.68-122.48c12.8-16.12 29.6-25.44 48.58-26.94c16.25-1.3 40.54 5.29 64 44c14.69 24.24 25.86 56.44 30.65 88.34c5.79 38.51 1.48 66.86-13.18 86.65c-11.64 15.72-29.54 25.46-53.21 29a106.46 106.46 0 0 1-15.62 1.13z`,fill:`currentColor`},null,-1),R(`path`,{d:`M173 496c-13.21 0-26.6-4.23-38.66-12.36a79.79 79.79 0 0 1-33.52-50.6c-2.85-14.66-1.14-26.31 5.22-35.64c10.33-15.15 28.87-18.56 48.49-22.18c2.07-.38 4.17-.76 6.3-1.17c4.52-.86 9.14-2 13.62-3.11c16.78-4.14 34.14-8.43 48.47 1.75c9.59 6.8 15 18.36 16.62 35.32c1.84 19.57-2.36 39.1-11.83 55c-10.19 17.11-25.47 28.42-43 31.86A61 61 0 0 1 173 496z`,fill:`currentColor`},null,-1),R(`path`,{d:`M378.17 265.27a106.69 106.69 0 0 1-15.6-1.2c-23.66-3.5-41.56-13.25-53.2-29c-14.66-19.79-19-48.13-13.18-86.65c4.79-31.93 15.93-64.1 30.55-88.25c23.34-38.57 47.66-45.26 64-44.08c18.92 1.38 35.69 10.57 48.51 26.6c21.89 27.37 29.65 71 21.86 122.84c-5.27 35-14.2 58.95-28.11 75.31s-32.22 24.43-54.83 24.43z`,fill:`currentColor`},null,-1),R(`path`,{d:`M339 400a61 61 0 0 1-11.68-1.13c-17.56-3.44-32.84-14.75-43-31.86c-9.47-15.9-13.67-35.43-11.83-55c1.6-17 7-28.52 16.62-35.33c14.33-10.17 31.69-5.89 48.47-1.74c4.48 1.1 9.1 2.24 13.62 3.11l6.29 1.17c19.63 3.61 38.17 7 48.5 22.17c6.36 9.33 8.07 21 5.22 35.64a79.78 79.78 0 0 1-33.52 50.61C365.56 395.78 352.17 400 339 400z`,fill:`currentColor`},null,-1)])}}),QF={},$F={class:`belt-block`};function eI(e,t){return I(),L(`div`,null,[t[0]||=R(`div`,{class:`shadow shadow-top`},null,-1),t[1]||=R(`div`,{class:`shadow shadow-bottom`},null,-1),R(`div`,$F,[ni(e.$slots,`default`,{},void 0,!0)])])}var tI=FN(QF,[[`render`,eI],[`__scopeId`,`data-v-82aef99e`]]),nI={class:`text-with-font`},rI=FN(P({__name:`HeaderText`,setup(e){return(e,t)=>(I(),L(`span`,nI,[ni(e.$slots,`default`,{},void 0,!0)]))}}),[[`__scopeId`,`data-v-e13ee3bd`]]),iI={},aI={class:`plate-block`},oI={class:`metal-plate-block`};function sI(e,t){return I(),L(`div`,aI,[R(`div`,oI,[ni(e.$slots,`default`,{},void 0,!0)]),t[0]||=R(`div`,{class:`pin pin-top-left`},null,-1),t[1]||=R(`div`,{class:`pin pin-top-right`},null,-1),t[2]||=R(`div`,{class:`pin pin-bottom-right`},null,-1),t[3]||=R(`div`,{class:`pin pin-bottom-left`},null,-1)])}var cI=FN(iI,[[`render`,sI],[`__scopeId`,`data-v-35e450f5`]]),lI={class:`form-custom`},uI={class:`center-block-700`},dI={class:`controller`},fI={class:`counters-block`},pI={class:`counter-block`},mI={class:`places-text`},hI={class:`places-text places-text-number`},gI={class:`counter-block`},_I={class:`places-text`},vI={class:`places-text places-text-number`},yI={class:`game-input`},bI=[`placeholder`,`disabled`],xI=[`disabled`],SI=FN(P({__name:`GameInputForm`,props:{addAction:{type:Function,required:!0},allPlacesCount:{type:Number,required:!0},newPlacesCount:{type:Number,required:!0},gameStatus:{type:String,required:!0}},setup(e){let t=k(``),n=e;async function r(){await n.addAction(t.value),t.value=``}function i(e){e%=100;let t=Math.floor(e/10)%10,n=e%10,r=`–`,i=`–`;return t>0&&(r=String(t)),(n>0||t>0)&&(i=String(n)),[r,i]}return(a,o)=>(I(),L(`div`,lI,[z(tI,{class:`input-form`},{default:M(()=>[z(cI,{class:`controller-metal controller-metal-left`}),z(cI,{class:`controller-metal controller-metal-right`}),R(`div`,uI,[R(`div`,dI,[R(`div`,fI,[R(`div`,pI,[R(`div`,mI,[z(A(jN),{class:`icon-for-counter`},{default:M(()=>[z(A(ZF))]),_:1})]),(I(!0),L(F,null,ti(i(e.allPlacesCount),e=>(I(),L(`div`,hI,O(e),1))),256))]),R(`div`,gI,[R(`div`,_I,[z(A(jN),{class:`icon-for-counter`},{default:M(()=>[z(A(KM))]),_:1})]),(I(!0),L(F,null,ti(i(e.newPlacesCount),e=>(I(),L(`div`,vI,O(e),1))),256))])]),R(`div`,yI,[Vn(R(`input`,{id:`run`,class:`game-input-run`,"onUpdate:modelValue":o[0]||=e=>t.value=e,type:`text`,placeholder:n.gameStatus==`run`?`Место назначения`:`Ходы запрещены`,disabled:n.gameStatus!=`run`},null,8,bI),[[js,t.value]])]),o[4]||=R(`div`,{class:`game-button-run-shadow`},null,-1),R(`button`,{class:`game-button-run`,type:`submit`,disabled:t.value.length==0,onClick:r},[n.gameStatus==`run`?(I(),Ea(rI,{key:0},{default:M(()=>[...o[1]||=[B(`Поехали`,-1)]]),_:1})):Pa(``,!0),n.gameStatus==`pause`||n.gameStatus==`draft`?(I(),Ea(rI,{key:1},{default:M(()=>[...o[2]||=[B(`Ждём`,-1)]]),_:1})):Pa(``,!0),n.gameStatus==`finish`?(I(),Ea(rI,{key:2},{default:M(()=>[...o[3]||=[B(`Всё`,-1)]]),_:1})):Pa(``,!0)],8,xI)])])]),_:1})]))}}),[[`__scopeId`,`data-v-a21d8a4f`]]),CI={class:`width700`},wI={class:`qr-block`},TI={key:0,class:`qr-main-block-text`},EI={key:1,class:`qr-main-block-text`},DI={key:1,class:`edit-panel`},OI=FN(P({__name:`TeamStoryPage`,setup(e){let t=VM(),n=HM(),r=iD();QA();let i=$A(),a=i.params.id,o=i.query.password,s=k(0),c=k(),l=k({places:[]}),u=k({id:void 0,name:void 0,description:void 0,startAt:void 0,status:void 0,scenario:void 0,teams:void 0}),d=k(``),f=window.location.href,p=()=>{let e=c.value;return e?e.scrollHeight-e.scrollTop-e.clientHeight<1:!1};async function m(){let e=l.value,t=await n.GetTeamStory({id:Number(a),password:o});if(t.error!=``){r.error(t.error);return}u.value=t.game;let i=p();i&&(s.value=0);let d=l.value.places.length;l.value={places:t.story.places?.map((t,n)=>(console.log(e?.places[n]?.mode),{place:t,mode:e?.places[n]?.mode||`show`}))||[]};let f=l.value.places.length;if(f>d&&d!=0&&(s.value+=f-d),await kn(),i&&d!=0){let e=c.value;if(!e)return!1;e.scrollTop=e.scrollHeight}}m();async function h(e){let t=await n.AddTeamAction({id:Number(a),password:o,code:e});if(t.error!=``){r.error(t.error);return}await m(),d.value=``,await kn(),s.value=0}async function g(){let e=await n.DeleteLastTeamAction({id:Number(a)});if(e.error!=``){r.error(e.error);return}await m(),d.value=``}return lP(()=>{m()},2e3),(e,n)=>{let r=Zr(`n-space`);return I(),L(F,null,[R(`div`,{class:`center-block-custom bottom-margin smooth-scroll`,ref_key:`scrollContainer`,ref:c},[R(`div`,CI,[z(SI,{addAction:h,allPlacesCount:l.value.places.length,newPlacesCount:s.value,gameStatus:u.value?.status||``},null,8,[`allPlacesCount`,`newPlacesCount`,`gameStatus`]),(I(!0),L(F,null,ti(l.value.places,e=>(I(),Ea(DF,{place:e.place,mode:e.mode,"onUpdate:mode":t=>e.mode=t,key:e.place.code,addAction:h},null,8,[`place`,`mode`,`onUpdate:mode`]))),128)),l.value.places.length==0?(I(),Ea(JP,{key:0,class:`qr-main-block`},{default:M(()=>[z(r,{vertical:``},{default:M(()=>[n[0]||=R(`h2`,{class:`qr-main-block-text`},`Это код этого дела`,-1),n[1]||=R(`p`,{class:`qr-main-block-text`},`Поделись с командой`,-1),R(`div`,wI,[z(A(Lk),{value:A(f),size:300,padding:0},null,8,[`value`])]),u.value?.status==`draft`?(I(),L(`p`,TI,`Игра скоро начнется`)):Pa(``,!0),u.value?.status==`run`?(I(),L(`p`,EI,`Игра началась!!!`)):Pa(``,!0)]),_:1})]),_:1})):Pa(``,!0),A(t).hasRole(`author`)&&l.value.places.length>0?(I(),L(`div`,DI,[z(A(FD),{justify:`end`},{default:M(()=>[z(A($),{onClick:g},{default:M(()=>[...n[2]||=[B(`Удалить последний ход`,-1)]]),_:1})]),_:1})])):Pa(``,!0)])],512),z(IN,{active:`games`})],64)}}}),[[`__scopeId`,`data-v-374fdb93`]]),kI=P({__name:`TeamStoryView`,setup(e){return(e,t)=>(I(),Ea(OI))}}),AI={};function jI(e,t){return`Пользовательское соглашение`}var MI=FN(AI,[[`render`,jI]]),NI={class:`center-block-custom`},PI={class:`width700`},FI={class:`user-field`},II={class:`user-field`},LI={class:`user-field`},RI=FN(P({__name:`UsersPage`,setup(e){let t=HM(),n=iD(),r=k([]);async function i(){let e=await t.GetUsers({});if(e.error!=``){n.error(e.error);return}r.value=e.users}i();async function a(e,r){let a=await t.AddUserRole({id:e,role:r});if(a.error!=``){n.error(a.error);return}await i()}async function o(e,r){let a=await t.DeleteUserRole({id:e,role:r});if(a.error!=``){n.error(a.error);return}await i()}return(e,t)=>(I(),L(F,null,[R(`div`,NI,[R(`div`,PI,[(I(!0),L(F,null,ti(r.value,e=>(I(),L(`div`,{key:e.id,class:`user-block`},[R(`div`,FI,` Позывной: `+O(e.username),1),R(`div`,II,` Почта: `+O(e.email),1),R(`div`,LI,[z(A(OD),null,{default:M(()=>[t[0]||=B(` Роли: `,-1),(I(!0),L(F,null,ti(e.roles,e=>(I(),Ea(A(WC),{bordered:!1,key:e},{default:M(()=>[B(O(e),1)]),_:2},1024))),128))]),_:2},1024)]),z(A(FD),{justify:`end`,class:`roles-buttons-block`},{default:M(()=>[e.roles?.includes(`author`)?(I(),Ea(A($),{key:1,onClick:t=>o(e.id,`author`)},{default:M(()=>[...t[2]||=[B(`Забрать роль автора`,-1)]]),_:1},8,[`onClick`])):(I(),Ea(A($),{key:0,onClick:t=>a(e.id,`author`)},{default:M(()=>[...t[1]||=[B(`Сделать автором`,-1)]]),_:1},8,[`onClick`])),e.roles?.includes(`organizer`)?(I(),Ea(A($),{key:3,onClick:t=>o(e.id,`organizer`)},{default:M(()=>[...t[4]||=[B(`Забрать роль организатора`,-1)]]),_:1},8,[`onClick`])):(I(),Ea(A($),{key:2,onClick:t=>a(e.id,`organizer`)},{default:M(()=>[...t[3]||=[B(`Сделать организатором`,-1)]]),_:1},8,[`onClick`]))]),_:2},1024)]))),128))])]),z(IN,{active:`users`})],64))}}),[[`__scopeId`,`data-v-4af0a140`]]),zI=P({__name:`UsersView`,setup(e){return(e,t)=>(I(),Ea(RI))}}),BI=FM({history:rM(`/`),routes:[{path:`/`,name:`home`,component:bP},{path:`/login`,name:`login`,component:IP},{path:`/office`,name:`office`,component:BP},{path:`/user-agreement`,name:`user-agreement`,component:MI},{path:`/privacy-policy`,name:`privacy-policy`,component:UP},{path:`/games`,name:`games`,component:QN},{path:`/games/:id`,name:`game`,component:yP},{path:`/team-story/:id`,name:`team-story`,component:kI},{path:`/scenarios`,name:`scenarios`,component:VF},{path:`/catalog`,name:`catalog`,component:GN},{path:`/scenarios/:id/editor`,name:`scenario-editor`,component:NF},{path:`/scenarios/:id`,name:`scenario`,component:YF},{path:`/users`,name:`users`,component:zI}]}),VI=Fs(IM);VI.use(nc()),VI.use(BI),VI.mount(`#app`); \ No newline at end of file +`)}function dN(e){if(!e)return;let t=e.parentElement;t&&t.removeChild(e)}function fN(e){return document.querySelector(`style[cssr-id="${e}"]`)}function pN(e){let t=document.createElement(`style`);return t.setAttribute(`cssr-id`,e),t}window&&(window.__cssrContext={});function mN(e){let t=e.getAttribute(`mount-count`);return t===null?null:Number(t)}function hN(e,t){e.setAttribute(`mount-count`,String(t))}function gN(e,t,n,r){let{els:i}=t;if(n===void 0)i.forEach(dN),t.els=[];else{let e=fN(n);if(e&&i.includes(e)){let a=mN(e);r?a===null?console.error(`[css-render/unmount]: The style with target='${n}' is mounted in count mode.`):a<=1?(dN(e),t.els=i.filter(t=>t!==e)):hN(e,a-1):a===null?(dN(e),t.els=i.filter(t=>t!==e)):console.error(`[css-render/unmount]: The style with target='${n}' is mounted in no-count mode.`)}}}function _N(e,t){e.push(t)}function vN(e,t,n,r,i,a,o,s,c){if(o&&!c){if(n===void 0){console.error("[css-render/mount]: `id` is required in `boost` mode.");return}let i=window.__cssrContext;i[n]||(i[n]=!0,uN(t,e,r,o));return}let l,{els:u}=t,d;if(n===void 0&&(d=t.render(r),n=Ic(d)),c){c(n,d??t.render(r));return}let f=fN(n);if(s||f===null){if(l=f===null?pN(n):f,d===void 0&&(d=t.render(r)),l.textContent=d,f!==null)return;if(i){let e=document.head.getElementsByTagName(`style`)[0]||null;document.head.insertBefore(l,e)}else document.head.appendChild(l);a&&hN(l,1),_N(u,l)}else{let e=mN(f);a?e===null?console.error(`[css-render/mount]: The style with id='${n}' has been mounted in no-count mode.`):hN(f,e+1):e!==null&&console.error(`[css-render/mount]: The style with id='${n}' has been mounted in count mode.`)}return f??l}function yN(e){return uN(this,this.instance,e)}function bN(e={}){let{target:t,id:n,ssr:r,props:i,count:a=!1,head:o=!1,boost:s=!1,force:c=!1}=e;return vN(this.instance,this,n??t,i,o,a,s,c,r)}function xN(e={}){let{id:t,target:n,delay:r=0,count:i=!1}=e;r===0?gN(this.instance,this,t??n,i):setTimeout(()=>gN(this.instance,this,t??n,i),r)}var SN=function(e,t,n,r){return{instance:e,$:t,props:n,children:r,els:[],render:yN,mount:bN,unmount:xN}},CN=function(e,t,n,r){return Array.isArray(t)?SN(e,{$:null},null,t):Array.isArray(n)?SN(e,t,null,n):Array.isArray(r)?SN(e,t,n,r):SN(e,t,n,null)};function wN(e={}){let t=null,n={c:((...e)=>CN(n,...e)),use:(e,...t)=>e.install(n,...t),find:fN,context:{},config:e,get __styleSheet(){if(!t){let e=document.createElement(`style`);return document.head.appendChild(e),t=document.styleSheets[document.styleSheets.length-1],t}return t}};return n}var{c:TN}=wN(),EN=TN(`.xicon`,{width:`1em`,height:`1em`,display:`inline-flex`},[TN(`svg`,{width:`1em`,height:`1em`}),TN(`svg:not([fill])`,{fill:`currentColor`})]),DN=()=>{EN.mount({id:`xicons-icon`})},ON={size:[String,Number],color:String,tag:String},kN=Symbol(`IconConfigInjection`),AN=`span`,jN=P({name:`Icon`,props:ON,setup(e,{slots:t}){let n=N(kN,null),r=V(()=>{let t=e.size??n?.size;if(t!==void 0)return typeof t==`number`||/^\d+$/.test(t)?`${t}px`:t}),i=V(()=>{let{color:t}=e;return t===void 0?n?n.color:void 0:t}),a=V(()=>{let{tag:t}=e;return t===void 0?n?.tag??AN:t});return Br(()=>{DN()}),()=>H(a.value,{class:`xicon`,style:{color:i.value,fontSize:r.value}},[ni(t,`default`)])}}),MN={class:`menu-block`},NN={class:`right-group`},PN=P({__name:`HeaderMenu`,props:{active:{type:String,required:!1}},setup(e){let t=e,n=VM();n.initFromStorage();let r=QA(),i=HM(),a=k([]);async function o(){a.value=[];let e=await i.GetPermissions({});a.value=e.permissions}o();function s(e){return a.value.includes(e)}let c=()=>{r.push(`/login`)},l=()=>{n.logout(),r.push(`/login`)},u=k(!1);return(e,i)=>(I(),L(`div`,MN,[R(`div`,{onClick:i[0]||=e=>u.value=!u.value,class:`burger-button`},[z(A(jN),{class:`burger-icon`,size:`28`},{default:M(()=>[z(A(XM))]),_:1})]),R(`div`,{class:_e([`left-group menu-buttons-block`,u.value?``:`menu-buttons-block-active`])},[R(`div`,{class:_e([`menu-item-block`,{active:t.active==`main`}]),onClick:i[1]||=e=>A(r).push(`/`)},` Главная `,2),A(n).hasRole(`user`)?(I(),L(`div`,{key:0,class:_e([`menu-item-block`,{active:t.active==`office`}]),onClick:i[2]||=e=>A(r).push(`/office`)},` Кабинет `,2)):Pa(``,!0),s(`games_page`)?(I(),L(`div`,{key:1,class:_e([`menu-item-block`,{active:t.active==`games`}]),onClick:i[3]||=e=>A(r).push(`/games`)},` Игры `,2)):Pa(``,!0),R(`div`,{class:_e([`menu-item-block`,{active:t.active==`catalog`}]),onClick:i[4]||=e=>A(r).push(`/catalog`)},` Каталог `,2),s(`scenarios_page`)?(I(),L(`div`,{key:2,class:_e([`menu-item-block`,{active:t.active==`scenarios`}]),onClick:i[5]||=e=>A(r).push(`/scenarios`)},` Мои сценарии `,2)):Pa(``,!0),s(`users_page`)?(I(),L(`div`,{key:3,class:_e([`menu-item-block`,{active:t.active==`users`}]),onClick:i[6]||=e=>A(r).push(`/users`)},` Пользователи `,2)):Pa(``,!0)],2),R(`div`,NN,[A(n).isAuthenticated?Pa(``,!0):(I(),L(`div`,{key:0,class:`menu-item-block right`,onClick:c},` Войти `)),A(n).isAuthenticated?(I(),L(`div`,{key:1,class:`menu-item-block right`,onClick:l},`Выйти`)):Pa(``,!0)])]))}}),FN=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},IN=FN(PN,[[`__scopeId`,`data-v-5e423637`]]),LN={class:`center-block-custom`},RN={class:`width1200 display-table`},zN=[`onClick`],BN={class:`scenario-content-block`},VN={class:`scenario-title`},HN={class:`scenario-description`},UN={class:`scenario-label`},WN=FN(P({__name:`CatalogPage`,setup(e){let t=HM(),n=k([]),r=QA();async function i(){n.value=[];let e=await t.GetScenariosCatalog({});n.value=e.scenarios}async function a(e){r.push(`/scenarios/`+e)}return i(),(e,t)=>(I(),L(F,null,[R(`div`,LN,[R(`div`,RN,[(I(!0),L(F,null,ti(n.value,e=>(I(),L(`div`,{class:`scenario-block`,onClick:t=>a(e.id),key:e.id},[R(`div`,{class:`scenario-image-block scenario-image`,style:fe({backgroundImage:`url(${e.image})`})},null,4),R(`div`,BN,[R(`p`,VN,O(e.name),1),R(`p`,HN,O(e.description),1),R(`p`,UN,[z(A(WC),{bordered:!1,type:`success`,class:`status-block`},{default:M(()=>[B(`Автор: `+O(e.author?.username),1)]),_:2},1024)])])],8,zN))),128))])]),z(IN,{active:`catalog`})],64))}}),[[`__scopeId`,`data-v-d72c95c2`]]),GN=P({__name:`CatalogView`,setup(e){return(e,t)=>(I(),Ea(WN))}}),KN={class:`center-block-custom`},qN={class:`width1200`},JN=[`onClick`],YN={class:`game-title`},XN={class:`game-description`},ZN=FN(P({__name:`GamesPage`,setup(e){let t=HM(),n=iD(),r=QA(),i=k([]);async function a(){i.value=[];let e=await t.GetGames({});if(e.error!=``){n.error(e.error);return}i.value=e.games||[]}a();async function o(e){r.push(`/games/`+e)}return(e,t)=>(I(),L(F,null,[R(`div`,KN,[R(`div`,qN,[(I(!0),L(F,null,ti(i.value,e=>(I(),L(`div`,{key:e.id,class:`game-block`,onClick:t=>o(e.id)},[R(`div`,YN,O(e.name),1),R(`div`,XN,O(e.description),1)],8,JN))),128))])]),z(IN,{active:`games`})],64))}}),[[`__scopeId`,`data-v-45eae4d9`]]),QN=P({__name:`GamesView`,setup(e){return(e,t)=>(I(),Ea(ZN))}}),$N={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 32 32`},eP=P({name:`Flag`,render:function(e,t){return I(),L(`svg`,$N,t[0]||=[R(`path`,{d:`M6 30H4V2h24l-5.8 9l5.8 9H6zm0-12h18.33l-4.53-7l4.53-7H6z`,fill:`currentColor`},null,-1)])}}),tP={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 32 32`},nP=P({name:`Pause`,render:function(e,t){return I(),L(`svg`,tP,t[0]||=[R(`path`,{d:`M12 8v16H8V8h4m0-2H8a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2z`,fill:`currentColor`},null,-1),R(`path`,{d:`M24 8v16h-4V8h4m0-2h-4a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2z`,fill:`currentColor`},null,-1)])}}),rP={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 32 32`},iP=P({name:`Play`,render:function(e,t){return I(),L(`svg`,rP,t[0]||=[R(`path`,{d:`M7 28a1 1 0 0 1-1-1V5a1 1 0 0 1 1.482-.876l20 11a1 1 0 0 1 0 1.752l-20 11A1 1 0 0 1 7 28zM8 6.69V25.31L24.925 16z`,fill:`currentColor`},null,-1)])}}),aP={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 32 32`},oP=P({name:`Reset`,render:function(e,t){return I(),L(`svg`,aP,t[0]||=[R(`path`,{d:`M18 28A12 12 0 1 0 6 16v6.2l-3.6-3.6L1 20l6 6l6-6l-1.4-1.4L8 22.2V16a10 10 0 1 1 10 10z`,fill:`currentColor`},null,-1)])}}),sP={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 32 32`},cP=P({name:`Settings`,render:function(e,t){return I(),L(`svg`,sP,t[0]||=[R(`path`,{d:`M27 16.76V16v-.77l1.92-1.68A2 2 0 0 0 29.3 11l-2.36-4a2 2 0 0 0-1.73-1a2 2 0 0 0-.64.1l-2.43.82a11.35 11.35 0 0 0-1.31-.75l-.51-2.52a2 2 0 0 0-2-1.61h-4.68a2 2 0 0 0-2 1.61l-.51 2.52a11.48 11.48 0 0 0-1.32.75l-2.38-.86A2 2 0 0 0 6.79 6a2 2 0 0 0-1.73 1L2.7 11a2 2 0 0 0 .41 2.51L5 15.24v1.53l-1.89 1.68A2 2 0 0 0 2.7 21l2.36 4a2 2 0 0 0 1.73 1a2 2 0 0 0 .64-.1l2.43-.82a11.35 11.35 0 0 0 1.31.75l.51 2.52a2 2 0 0 0 2 1.61h4.72a2 2 0 0 0 2-1.61l.51-2.52a11.48 11.48 0 0 0 1.32-.75l2.42.82a2 2 0 0 0 .64.1a2 2 0 0 0 1.73-1l2.28-4a2 2 0 0 0-.41-2.51zM25.21 24l-3.43-1.16a8.86 8.86 0 0 1-2.71 1.57L18.36 28h-4.72l-.71-3.55a9.36 9.36 0 0 1-2.7-1.57L6.79 24l-2.36-4l2.72-2.4a8.9 8.9 0 0 1 0-3.13L4.43 12l2.36-4l3.43 1.16a8.86 8.86 0 0 1 2.71-1.57L13.64 4h4.72l.71 3.55a9.36 9.36 0 0 1 2.7 1.57L25.21 8l2.36 4l-2.72 2.4a8.9 8.9 0 0 1 0 3.13L27.57 20z`,fill:`currentColor`},null,-1),R(`path`,{d:`M16 22a6 6 0 1 1 6-6a5.94 5.94 0 0 1-6 6zm0-10a3.91 3.91 0 0 0-4 4a3.91 3.91 0 0 0 4 4a3.91 3.91 0 0 0 4-4a3.91 3.91 0 0 0-4-4z`,fill:`currentColor`},null,-1)])}});function lP(e,t=5e3){let n=k(!0),r=null,i=()=>{n.value=!0,e(),r=window.setInterval(e,t)},a=()=>{n.value=!1,r&&=(clearInterval(r),null)};return Vr(i),Gr(a),{isActive:n,start:i,stop:a}}var uP={class:`center-block-custom`},dP={class:`width1200`},fP={class:`settings-block`},pP={class:`team-block`},mP={class:`team-content-block`},hP={class:`title-block`},gP={class:`team-name-block`},_P={class:`qr-block`},vP=FN(P({__name:`GamePage`,setup(e){let t=HM(),n=QA(),r=$A().params.id,i=iD(),a=k(!1),o=k(!1),s=k(!1),c=k(!1),l=k(!1),u=k(``),d=k(``),f=k(!1),p=k(``),m=k(``),h=k({id:void 0,name:void 0,description:void 0,startAt:void 0,status:void 0,scenario:void 0,teams:void 0});async function g(e){let n=await t.GetGame({id:e});if(n.error!=``){i.error(n.error);return}h.value=n.game,h.value.teams=h.value.teams?.sort((e,t)=>{let n=0;(e.applications?.length||0)>0&&(n=1);let r=0;if((t.applications?.length||0)>0&&(r=1),n>r)return-1;if(na?1:i{g(Number(r))},2e3);async function ie(){let e=await t.ResetGame({id:h.value.id});if(e.error!=``){i.error(e.error);return}await g(h.value.id)}async function ae(){let e=await t.StartGame({id:h.value.id});if(e.error!=``){i.error(e.error);return}await g(h.value.id)}async function oe(){let e=await t.PauseGame({id:h.value.id});if(e.error!=``){i.error(e.error);return}await g(h.value.id)}async function se(){let e=await t.PlayGame({id:h.value.id});if(e.error!=``){i.error(e.error);return}await g(h.value.id)}async function ce(){let e=await t.FinishGame({id:h.value.id});if(e.error!=``){i.error(e.error);return}await g(h.value.id)}function le(e){let[t,n]=e.split(`T`),[r,i,a]=t.split(`-`).map(Number),[o,s,c]=(n.split(`.`)[0]||`00:00:00`).split(`:`).map(Number);return new Date(Date.UTC(r,i-1,a,o,s,c||0))}function ue(){let e=new Date;return new Date(e.getTime()-e.getTimezoneOffset()*6e4)}function de(e,t){if(e==``)return`Игра ещё не началась`;let n=le(e),r=ue();t!=``&&(r=le(t));let i=r.getTime()-n.getTime();if(i<0)return`Игра ещё не началась`;let a=Math.floor(i/1e3),o=Math.floor(a/60),s=Math.floor(o/60),c=Math.floor(s/24),l=Math.floor(c/30),u=Math.floor(c/365);return u>0?`${u}г ${c%365}д`:l>0?`${l}мес ${c%30}д`:c>0?`${c}д ${s%24}ч`:s>0?`${s}ч ${o%60}м`:o>0?`${o}м ${a%60}с`:`${a}с`}let fe=k(``);return lP(()=>{fe.value=de(h.value.startedAt||``,h.value.endedAt||``)},1e3),(e,t)=>(I(),L(F,null,[R(`div`,uP,[R(`div`,dP,[R(`div`,fP,[z(A(FD),{justify:`space-between`},{default:M(()=>[z(A(OD),null,{default:M(()=>[z(A(WC),{bordered:!1,type:`info`},{default:M(()=>[B(` Команд: `+O(h.value.teams?.length),1)]),_:1}),z(A(WC),{type:`info`},{default:M(()=>[B(O(fe.value),1)]),_:1})]),_:1}),R(`div`,null,[z(A($),{quaternary:``,class:`settings-button`,onClick:t[0]||=e=>re(A(C),`Админка`)},{default:M(()=>[...t[31]||=[B(` QR `,-1)]]),_:1}),z(A($),{quaternary:``,onClick:t[1]||=e=>a.value=!0,class:`settings-button`},{default:M(()=>[z(A(jN),{class:`settings-icon`},{default:M(()=>[z(A(cP))]),_:1}),t[32]||=B(` Настройки `,-1)]),_:1}),(h.value.teams?.length||0)==0?(I(),Ea(A($),{key:0,type:`error`,quaternary:``,onClick:t[2]||=e=>l.value=!0,class:`settings-button`},{default:M(()=>[...t[33]||=[B(` Удалить игру `,-1)]]),_:1})):Pa(``,!0),z(A(OD),null,{default:M(()=>[h.value.status==`draft`?Pa(``,!0):(I(),Ea(A($),{key:0,type:`info`,dashed:``,onClick:t[3]||=e=>ie()},{default:M(()=>[z(A(jN),null,{default:M(()=>[z(A(oP))]),_:1})]),_:1})),h.value.status==`draft`?(I(),Ea(A($),{key:1,type:`info`,dashed:``,onClick:t[4]||=e=>ae()},{default:M(()=>[z(A(jN),null,{default:M(()=>[z(A(iP))]),_:1})]),_:1})):Pa(``,!0),h.value.status==`pause`?(I(),Ea(A($),{key:2,type:`info`,dashed:``,onClick:t[5]||=e=>se()},{default:M(()=>[z(A(jN),null,{default:M(()=>[z(A(iP))]),_:1})]),_:1})):Pa(``,!0),h.value.status==`run`?(I(),Ea(A($),{key:3,type:`info`,dashed:``,onClick:t[6]||=e=>oe()},{default:M(()=>[z(A(jN),null,{default:M(()=>[z(A(nP))]),_:1})]),_:1})):Pa(``,!0),h.value.status==`finish`?Pa(``,!0):(I(),Ea(A($),{key:4,type:`info`,dashed:``,onClick:t[7]||=e=>ce()},{default:M(()=>[z(A(jN),null,{default:M(()=>[z(A(eP))]),_:1})]),_:1}))]),_:1})])]),_:1})]),R(`div`,{class:`team-block team-block-hover`,onClick:t[8]||=e=>s.value=!0},[...t[34]||=[R(`p`,{class:`place-image-plus`},`+`,-1)]]),(I(!0),L(F,null,ti(h.value.teams,e=>(I(),L(`div`,pP,[R(`div`,mP,[z(A(FD),{justify:`space-between`},{default:M(()=>[R(`div`,hP,[R(`span`,gP,O(e.name),1),R(`div`,null,` Поездки: `+O(e.actionsCount),1)]),z(A(FD),{justify:`end`},{default:M(()=>[z(A($),{onClick:t=>re(ne(e.id,e.password),`Подсмотреть игру`)},{default:M(()=>[...t[35]||=[B(` QR `,-1)]]),_:1},8,[`onClick`]),z(A($),{onClick:t=>_(e.id,e.password,!0)},{default:M(()=>[...t[36]||=[B(` Подсмотреть игру `,-1)]]),_:1},8,[`onClick`]),z(A($),{type:`error`,ghost:``,onClick:t=>E(e)},{default:M(()=>[...t[37]||=[B(` Удалить `,-1)]]),_:1},8,[`onClick`])]),_:2},1024)]),_:2},1024),(I(!0),L(F,null,ti(e.applications,t=>(I(),Ea(A($),{key:t.name,class:`link-button`,onClick:n=>w(e,t)},{default:M(()=>[B(` Выдать: `+O(t.name),1)]),_:2},1032,[`onClick`]))),128))])]))),256))])]),z(A(UE),{show:a.value,"onUpdate:show":t[13]||=e=>a.value=e},{default:M(()=>[z(A(TT),{style:{width:`600px`},title:`Настройки игры`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A($),{onClick:t[9]||=e=>a.value=!1},{default:M(()=>[...t[38]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[z(A(FD),{justify:`end`},{default:M(()=>[z(A($),{onClick:t[12]||=e=>v(),ghost:``},{default:M(()=>[...t[41]||=[B(` Сохранить изменения `,-1)]]),_:1})]),_:1})]),default:M(()=>[z(A(OD),{vertical:``},{default:M(()=>[t[39]||=R(`p`,null,`Название`,-1),z(A(Tw),{value:h.value.name,"onUpdate:value":t[10]||=e=>h.value.name=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`]),t[40]||=R(`p`,{class:`settings-header`},`Описание`,-1),z(A(Tw),{value:h.value.description,"onUpdate:value":t[11]||=e=>h.value.description=e,type:`textarea`,placeholder:`Убийство пастуха...`},null,8,[`value`])]),_:1})]),_:1})]),_:1},8,[`show`]),z(A(UE),{show:o.value,"onUpdate:show":t[16]||=e=>o.value=e},{default:M(()=>[z(A(TT),{style:{width:`600px`},title:`Настройки игры`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A($),{onClick:t[14]||=e=>o.value=!1},{default:M(()=>[...t[42]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[z(A(FD),{justify:`end`},{default:M(()=>[z(A($),{onClick:t[15]||=e=>ee(),ghost:``},{default:M(()=>[...t[45]||=[B(` Выдать `,-1)]]),_:1})]),_:1})]),default:M(()=>[z(A(OD),{vertical:``},{default:M(()=>[t[43]||=R(`p`,null,`Команда`,-1),R(`h3`,null,O(y.value.name),1),t[44]||=R(`p`,null,`Улика`,-1),R(`h3`,null,O(S.value.name),1)]),_:1})]),_:1})]),_:1},8,[`show`]),z(A(UE),{show:s.value,"onUpdate:show":t[20]||=e=>s.value=e},{default:M(()=>[z(A(TT),{style:{width:`600px`},title:`Создание команды`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A($),{onClick:t[17]||=e=>s.value=!1},{default:M(()=>[...t[46]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[z(A(FD),{justify:`end`},{default:M(()=>[z(A($),{onClick:t[19]||=e=>T(),disabled:u.value.length==0},{default:M(()=>[...t[47]||=[B(` Создать `,-1)]]),_:1},8,[`disabled`])]),_:1})]),default:M(()=>[z(A(Tw),{value:u.value,"onUpdate:value":t[18]||=e=>u.value=e,type:`text`,placeholder:`Три дебила`},null,8,[`value`])]),_:1})]),_:1},8,[`show`]),z(A(UE),{show:c.value,"onUpdate:show":t[24]||=e=>c.value=e},{default:M(()=>[z(A(TT),{style:{width:`600px`},title:`Удаление команды`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A($),{onClick:t[21]||=e=>c.value=!1},{default:M(()=>[...t[48]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[z(A(FD),{justify:`end`},{default:M(()=>[z(A($),{onClick:t[23]||=e=>D(),disabled:b.value!=x.value.name},{default:M(()=>[...t[51]||=[B(` Удалить `,-1)]]),_:1},8,[`disabled`])]),_:1})]),default:M(()=>[z(A(OD),{vertical:``},{default:M(()=>[R(`p`,null,[t[49]||=B(` Введите название команды `,-1),z(A(nA),{class:`name-text`,strong:``},{default:M(()=>[B(O(x.value.name),1)]),_:1}),t[50]||=B(` чтобы удалить его `,-1)]),z(A(Tw),{value:b.value,"onUpdate:value":t[22]||=e=>b.value=e,type:`text`,placeholder:`Три дебила`},null,8,[`value`])]),_:1})]),_:1})]),_:1},8,[`show`]),z(A(UE),{show:l.value,"onUpdate:show":t[28]||=e=>l.value=e},{default:M(()=>[z(A(TT),{style:{width:`600px`},title:`Удаление игры`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A($),{onClick:t[25]||=e=>l.value=!1},{default:M(()=>[...t[52]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[z(A(FD),{justify:`end`},{default:M(()=>[z(A($),{onClick:t[27]||=e=>te(),disabled:d.value!=h.value.name},{default:M(()=>[...t[55]||=[B(` Удалить `,-1)]]),_:1},8,[`disabled`])]),_:1})]),default:M(()=>[z(A(OD),{vertical:``},{default:M(()=>[R(`p`,null,[t[53]||=B(` Введите название игры `,-1),z(A(nA),{class:`name-text`,strong:``},{default:M(()=>[B(O(h.value.name),1)]),_:1}),t[54]||=B(` чтобы удалить её `,-1)]),z(A(Tw),{value:d.value,"onUpdate:value":t[26]||=e=>d.value=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`])]),_:1})]),_:1})]),_:1},8,[`show`]),z(A(UE),{show:f.value,"onUpdate:show":t[30]||=e=>f.value=e},{default:M(()=>[z(A(TT),{style:{width:`600px`},title:m.value,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A($),{onClick:t[29]||=e=>f.value=!1},{default:M(()=>[...t[56]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[...t[57]||=[]]),default:M(()=>[z(A(OD),{vertical:``},{default:M(()=>[R(`div`,_P,[z(A(Lk),{value:p.value,size:300,padding:0},null,8,[`value`])])]),_:1})]),_:1},8,[`title`])]),_:1},8,[`show`]),z(IN,{active:`games`})],64))}}),[[`__scopeId`,`data-v-d657389a`]]),yP=P({__name:`GameView`,setup(e){return(e,t)=>(I(),Ea(vP))}}),bP=P({__name:`HomeView`,setup(e){return(e,t)=>(I(),L(F,null,[t[0]||=R(`div`,{class:`center-block-custom content-block center-middle-block-custom height80`},[R(`div`,null,[R(`h1`,{class:`font-text`},`Вечерний детектив`),R(`h3`,{class:`font-text`},`Дело №0`),R(`p`,{class:`content-text`},` Поиграем? `)])],-1),z(IN,{active:`main`})],64))}}),xP={class:`center-block-custom content-block center-middle-block-custom height80`},SP={class:`form-button-wrapper`},CP={class:`form-label`},wP={key:0},TP={key:1},EP={class:`form-label`},DP={class:`form-button-wrapper`},OP={class:`form-label`},kP={key:0},AP={key:1},jP={class:`form-button-wrapper`},MP={class:`form-label`},NP={key:0},PP={key:1},FP=FN(P({__name:`LoginPage`,setup(e){let t=VM(),n=QA(),r=iD(),i=k(``),a=k(``),o=k(``),s=k(!1),c=V(()=>[`@mail.ru`,`@yandex.ru`,`@gmail.com`].map(e=>{let t=a.value.split(`@`)[0];return{label:t+e,value:t+e}}));async function l(){if(!await t.login(a.value,o.value)&&t.error!=null){r.error(t.error);return}n.push(`/office`)}async function u(){if(s.value){if(!await t.signup(i.value,a.value)&&t.error!=null){r.error(t.error);return}r.info(`Пароль отправлен на почту`)}}async function d(){if(!await t.refreshPassword(a.value)&&t.error!=null){r.error(t.error);return}r.info(`Пароль отправлен на почту`)}return(e,n)=>(I(),L(`div`,xP,[z(A(TT),{style:{"margin-bottom":`16px`},class:`sign-card`},{default:M(()=>[z(A(Xk),{type:`line`,animated:``},{default:M(()=>[z(A(Kk),{name:`signin`,tab:`Вход`},{default:M(()=>[z(A(OD),{vertical:``},{default:M(()=>[n[6]||=R(`div`,{class:`form-label`},`Почта`,-1),z(A(Lw),{value:a.value,"onUpdate:value":n[0]||=e=>a.value=e,"input-props":{autocomplete:`disabled`},options:c.value,placeholder:`detective@mail.ru`,clearable:``},null,8,[`value`,`options`]),n[7]||=R(`div`,{class:`form-label`},`Пароль`,-1),z(A(Tw),{value:o.value,"onUpdate:value":n[1]||=e=>o.value=e,type:`password`,placeholder:`********`},null,8,[`value`]),R(`div`,SP,[R(`div`,CP,[z(A($),{onClick:l,disabled:a.value.length==0||o.value.length==0},{default:M(()=>[A(t).isLoading?(I(),L(`span`,TP,` Подождите... `)):(I(),L(`span`,wP,` Вход `))]),_:1},8,[`disabled`])])])]),_:1})]),_:1}),z(A(Kk),{name:`signup`,tab:`Регистрация`},{default:M(()=>[z(A(OD),{vertical:``},{default:M(()=>[n[9]||=R(`div`,{class:`form-label`},`Позывной`,-1),z(A(Tw),{value:i.value,"onUpdate:value":n[2]||=e=>i.value=e,type:`text`,placeholder:`Шерлок`},null,8,[`value`]),n[10]||=R(`div`,{class:`form-label`},`Почта`,-1),z(A(Lw),{value:a.value,"onUpdate:value":n[3]||=e=>a.value=e,"input-props":{autocomplete:`disabled`},options:c.value,placeholder:`detective@mail.ru`,clearable:``},null,8,[`value`,`options`]),R(`div`,EP,[z(A(RT),{checked:s.value,"onUpdate:checked":n[4]||=e=>s.value=e},{default:M(()=>[...n[8]||=[B(` Я согласен с `,-1),R(`a`,{href:`/user-agreement`,target:`_blank`,class:`docs-link`},`пользовательским соглашением`,-1),R(`br`,null,null,-1),B(` и `,-1),R(`a`,{href:`/privacy-policy`,target:`_blank`,class:`docs-link`},`соглашением о персональных данных`,-1)]]),_:1},8,[`checked`])]),R(`div`,DP,[R(`div`,OP,[z(A($),{onClick:u,disabled:i.value.length==0||o.value.length==0||!s.value},{default:M(()=>[A(t).isLoading?(I(),L(`span`,AP,` Подождите... `)):(I(),L(`span`,kP,` Регистрация `))]),_:1},8,[`disabled`])])])]),_:1})]),_:1}),z(A(Kk),{name:`new-password`,tab:`Новый пароль`},{default:M(()=>[z(A(OD),{vertical:``},{default:M(()=>[n[11]||=R(`div`,{class:`form-label`},`Почта`,-1),z(A(Lw),{value:a.value,"onUpdate:value":n[5]||=e=>a.value=e,"input-props":{autocomplete:`disabled`},options:c.value,placeholder:`detective@mail.ru`,clearable:``},null,8,[`value`,`options`]),R(`div`,jP,[R(`div`,MP,[z(A($),{onClick:d,disabled:a.value.length==0},{default:M(()=>[A(t).isLoading?(I(),L(`span`,PP,` Подождите... `)):(I(),L(`span`,NP,` Прислать новый пароль `))]),_:1},8,[`disabled`])])])]),_:1})]),_:1})]),_:1})]),_:1})]))}}),[[`__scopeId`,`data-v-c1fd645b`]]),IP=P({__name:`LoginView`,setup(e){return(e,t)=>(I(),L(F,null,[z(FP),z(IN)],64))}}),LP={class:`center-block-custom`},RP={class:`width700`},zP=P({__name:`OfficePage`,setup(e){let t=VM(),n=HM(),r=k([]);async function i(){r.value=[];let e=await n.GetPermissions({});r.value=e.permissions}i();function a(){let e=new Date,t=e.getDay(),n=e.getDate(),r=e.getMonth()+1,i=t===1,a=t===5&&n===13,o=r===1&&n===1||r===12&&n===31,s=r>=6&&r<=8,c=r===12||r<=2,l=n%5==0,u=[`Всегда носи с собой запасную ручку — признания любят записывать в самый неподходящий момент.`,`Если подозреваемый слишком вежлив, он либо дипломат, либо прячет труп в гараже.`,`Кофе в участке — это не напиток, это яд для улик. Пей только свой.`,`Следы на месте преступления всегда ведут к тому, кто забыл закрыть дверь.`,`Лучший способ разговорить молчуна — предложить ему чай с тремя ложками сахара.`,`Если всё указывает на дворецкого, ищи того, кто нанимал дворецкого.`,`Записывай каждую мелочь. Особенно цвет носков убитого.`,`Не верь алиби, которое начинается со слов 'Я бы никогда...'`,`Преступник всегда возвращается на место преступления. Или за забытым телефоном.`,`Ищи того, кому есть что терять, кроме своего времени.`,`Если женщина плачет в кабинете — дай ей платок. Если мужчина — дай ему стакан воды.`,`Самое опасное оружие — не пистолет, а бухгалтерская книга.`,`Собака всегда знает убийцу. Но она не говорит, потому что у неё контракт.`,`Проверяй чеки, билеты и смс. Ложь не терпит документации.`,`Если у тела нет врагов — ты плохо искал врагов.`,`Лупа нужна не для увеличения улик, а для того, чтобы выглядеть умнее.`,`Интуиция — это когда ты уже знаешь ответ, но хочешь убедиться, что не ошибся.`,`Подозревай всех, даже самого себя. Иногда преступник — это ты в прошлом.`,`Хороший детектив видит улики. Великий — видит их отсутствие.`,`Никогда не допрашивай свидетеля на голодный желудок. И себя тоже.`,`Если дело зашло в тупик, переверни бумаги вверх ногами.`,`Самый ценный свидетель — это камера наблюдения, у которой сломана защита.`,`Не ищи мотив. Ищи возможность.`,`Преступник не оставляет следов. Он оставляет выбор.`,`Если дверь была закрыта изнутри — ищи люк, который открывается снаружи.`,`Лучший детектив — тот, кого не замечают в толпе.`,`Учись читать по губам. Пригодится на допросах с адвокатом.`,`Запах духов на месте преступления важнее запаха пороха.`,`Если ты нашел отпечаток пальца — проверь, не твой ли он.`,`Раскрыть дело — это искусство. Не раскрыть — тоже искусство, но другое.`,`Никогда не спорь с баллистикой. Она всегда права, даже если ты не согласен.`,`В каждом деле есть одна странная деталь. Найди её — и пазл сложится.`,`Если преступник умный — он оставит ложный след. Если глупый — он оставит следы в соцсетях.`,`Лучший друг детектива — тишина. Второй друг — кофе.`,`Если свидетель говорит слишком много, он врет. Если молчит — он тоже врет.`,`Преступление редко бывает идеальным. Идеальным бывает только алиби жены.`,`Всегда смотри на часы на трупе. Возможно, они показывают время, когда он перестал верить в людей.`,`Воры любят темноту. Детективы — свет. А маньяки — полную луну.`,`Если ты поймал преступника, не радуйся раньше времени — может, он просто лжец.`,`В каждом городе есть одно место, где собираются все сплетники. Начни оттуда.`,`Не верь в совпадения. Но верь в удачу.`,`Если у тебя нет улик — придумай их. Но только мысленно, чтобы знать, где искать.`,`Жертва всегда знала убийцу. Даже если она не знала, что знает.`,`Проверяй алиби на разрыв. Если оно выдерживает — ты ошибся.`,`Самый страшный враг детектива — не маньяк, а его собственная лень.`,`Если преступник оставил записку — прочитай её. И сожги, чтобы никто не узнал твой почерк.`,`Всегда носи с собой фонарик. Даже днём. Для эффекта.`,`В деле важно всё: от укуса комара до размера обуви.`,`Если ты думаешь, что дело простое — значит, ты не додумал.`,`Убийца всегда ищет внимания. Или наоборот, избегает его.`,`Стук в дверь в полночь — это либо полиция, либо заказчик.`,`Никогда не давай обещаний родственникам жертвы. Только факты.`,`Если у тебя есть три версии — выбирай четвёртую.`,`Лучшее оружие — это бумага. На ней можно написать что угодно.`,`Когда ты смотришь на улику, смотри на неё глазами преступника.`,`Все любят детективы, пока не становятся подозреваемыми.`,`Следы крови важны. Но важнее — следы лжи.`,`Если ты не спишь третьи сутки, значит, ты либо гений, либо дурак.`,`Проверяй каждого, кто говорит 'Я ничего не видел'.`,`В каждом деле есть один человек, который знает всё. И он не говорит.`,`Не суди преступника по одежде. Суди по тому, как он её снимал.`,`Дыра в алиби — это как дыра в лодке. Рано или поздно она утонет.`,`Если преступник использует перчатки — он профессионал. Если нет — он любитель.`,`Запомни: первая версия — всегда неверная.`,`Если у тебя кончились идеи, иди в бар. Там всегда есть кто-то, кто расскажет тебе дело.`,`Свидетель с фотороботом — это как слепой с компасом.`,`Никогда не смейся над уликами. Они могут обидеться и исчезнуть.`,`Если ты нашёл оружие — не трогай его. Иначе твои отпечатки будут на нём.`,`Преступник умён, но ты умнее. Потому что ты пьёшь правильный кофе.`,`Всегда пересматривай видеозаписи. Особенно в два раза медленнее.`,`Если на месте преступления есть кот — он видел всё. Но он не скажет.`,`Лучший способ поймать преступника — пригласить его на обед.`,`Если подозреваемый улыбается, он либо невиновен, либо психопат.`,`Проверяй мусор. В нём всегда есть что-то полезное.`,`Никогда не доверяй красивым историям. Только уродливым фактам.`,`Если ты нашёл улику слишком легко — это ловушка.`,`Убийца всегда оставляет послание. Даже если это просто тишина.`,`Если ты запнулся на допросе — делай вид, что так и задумано.`,`Помни: все врут. Даже я тебе советую.`,`Если ты боишься темноты — стань детективом. Страх пройдёт.`,`Самые лучшие признания случаются под утро, когда все устали.`,`Если преступник использовал компьютер, значит, он либо хакер, либо дурак.`,`Следы шин — это как подпись на дороге.`,`Никогда не забывай про запах. Он помнит дольше, чем люди.`,`Если ты не знаешь, что делать — съешь шоколадку.`,`В каждом деле есть одна минута слабости. Найди её.`,`Преступник всегда нервничает. Даже если он не нервничает.`,`Если у тебя есть подозреваемый и нет улик — подожди. Улики появятся.`,`Не верь в чудеса. Верь в логику.`,`Если ты устал — возьми отпуск. Преступление никуда не денется.`,`Запомни: самый опасный преступник — тот, кто читал детективы.`,`Если ты думаешь, что всё кончено — значит, ты пропустил поворот.`,`Следы на полу важнее следов в душе.`,`Если преступник оставил окурок — он курил. Или хотел, чтобы ты так думал.`,`Хороший детектив всегда голоден. Это помогает мыслить.`,`Не суди по первому впечатлению. Суди по второму, когда увидишь его в наручниках.`,`Если у тебя есть тайный агент — не доверяй ему.`,`В деле всегда есть тот, кто знает больше, чем говорит.`,`Если ты не можешь найти убийцу — стань им (в мыслях).`,`И последнее: всегда проверяй, закрыл ли ты дверь участка.`],d=[];i&&d.push(`☕ Понедельник: Сегодня даже преступники не хотят работать. Проверь тех, кто был слишком бодр.`),a&&d.push(`🔮 Пятница 13-е: Если улики ведут к чёрной кошке, ищи чёрного кота с алиби.`),o&&d.push(`🎄 Новый год: Свидетель в костюме Деда Мороза врёт. Настоящий Дед Мороз всегда в отпуске.`),s&&d.push(`☀️ Лето: В жару преступники забывают улики в карманах, потому что снимают пиджаки.`),c&&d.push(`❄️ Зима: Следы на снегу ведут к тому, у кого самые холодные руки.`),l&&d.push(`🌕 Полнолуние: Если подозреваемый воет на луну, он либо оборотень, либо фанат рока.`);let f=u.concat(d),p=f[Math.floor(Math.random()*f.length)],m=[`🔍 Заметки сыщика:`,`📓 Из дневника инспектора:`,`🕵️ Мудрость Шерлока:`,`🧠 Гениально и просто:`,`📌 Правило большого пальца:`,`☕ Кофейная истина:`];return{header:m[Math.floor(Math.random()*m.length)],text:p}}let o=a();return(e,n)=>(I(),L(F,null,[R(`div`,LP,[R(`div`,RP,[z(A(sw),{title:A(o).header,"show-icon":!1,type:`info`,style:{"margin-bottom":`20px`}},{default:M(()=>[B(O(A(o).text),1)]),_:1},8,[`title`]),R(`p`,null,`Доброго времени суток, `+O(A(t).username)+`.`,1)])]),z(IN,{active:`office`})],64))}}),BP=P({__name:`OfficeView`,setup(e){return(e,t)=>(I(),Ea(zP))}}),VP={};function HP(e,t){return`Соглашением о персональных данных`}var UP=FN(VP,[[`render`,HP]]),WP={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 24 24`},GP=P({name:`Key24Regular`,render:function(e,t){return I(),L(`svg`,WP,t[0]||=[R(`g`,{fill:`none`},[R(`path`,{d:`M18.25 7a1.25 1.25 0 1 1-2.5 0a1.25 1.25 0 0 1 2.5 0zM15.5 2.05A6.554 6.554 0 0 0 8.95 8.6c0 .387.05.76.11 1.104a.275.275 0 0 1-.07.244l-6.235 6.236a2.75 2.75 0 0 0-.806 1.944V20.3c0 .966.784 1.75 1.75 1.75h2.5a1.75 1.75 0 0 0 1.75-1.75v-1.25H9.7c.69 0 1.25-.56 1.25-1.25v-1.75h1.75a1.25 1.25 0 0 0 1.25-1.204c.496.128 1.02.204 1.55.204a6.554 6.554 0 0 0 6.55-6.55c0-3.631-2.953-6.45-6.55-6.45zM10.45 8.6a5.054 5.054 0 0 1 5.05-5.05c2.802 0 5.05 2.181 5.05 4.95a5.054 5.054 0 0 1-5.05 5.05c-.68 0-1.38-.171-2.005-.44a.75.75 0 0 0-1.046.69v.75H10.7c-.69 0-1.25.56-1.25 1.25v1.75H7.7c-.69 0-1.25.56-1.25 1.25v1.5a.25.25 0 0 1-.25.25H3.7a.25.25 0 0 1-.25-.25v-2.172c0-.331.132-.65.366-.884l6.236-6.235a1.774 1.774 0 0 0 .486-1.564a4.917 4.917 0 0 1-.088-.845z`,fill:`currentColor`})],-1)])}}),KP={class:`main`},qP={class:`message-cloud`},JP=FN(P({__name:`MessagePaper`,setup(e){return(e,t)=>(I(),L(`div`,KP,[t[0]||=R(`div`,{class:`message-cloud-3`},null,-1),t[1]||=R(`div`,{class:`message-cloud-2`},null,-1),R(`div`,qP,[ni(e.$slots,`default`,{},void 0,!0)])]))}}),[[`__scopeId`,`data-v-dfe3093b`]]),YP={key:1,class:`place-block`},XP={class:`message-header`},ZP={class:`message-content`},QP={key:0},$P={class:`message-image-border`},eF=[`src`],tF={key:0,class:`hr`},nF={class:`gray-block`},rF={key:0},iF={class:`key-block`},aF={key:3},oF={class:`message-show-header font`},sF={class:`message-show-content font`},cF={key:0},lF={class:`message-image-border`},uF=[`src`],dF={key:0,class:`show-hr`},fF=[`onClick`],pF={class:`button-dialog-text`},mF={key:1,class:`show-hr`},hF={key:4},gF={class:`message-header font`},_F={key:5,class:`place-block`},vF=[`src`],yF={style:{display:`flex`,"align-items":`center`,width:`100%`}},bF={style:{display:`flex`,"flex-direction":`column`}},xF={style:{display:`flex`,"flex-direction":`column`,width:`100%`}},SF={class:`door-add-block`},CF={class:`door-field`},wF={style:{display:`flex`,"align-items":`center`,width:`100%`}},TF={style:{display:`flex`,"align-items":`center`,width:`100%`}},EF={class:`slot-block`},DF=FN(P({__name:`PlaceBlock`,props:{newPlaceCode:{type:String},newPlaceName:{type:String},newPlaceText:{type:String},place:{type:Object},mode:{type:String,required:!0},addAction:{type:Function}},emits:[`update:newPlaceCode`,`update:newPlaceName`,`update:newPlaceText`,`update:mode`],setup(e,{emit:t}){let n=e,r=t,i=e=>{r(`update:newPlaceCode`,e)},a=e=>{r(`update:newPlaceName`,e)},o=e=>{r(`update:newPlaceText`,e)},s=e=>{r(`update:mode`,e)};function c(){return{name:void 0,image:void 0}}function l(){return{code:void 0,name:void 0,keys:void 0}}function u(){return{name:void 0}}return(t,r)=>(I(),L(F,null,[e.mode==`mini-add`?(I(),L(`div`,{key:0,class:`place-block-hover show-editor-block`,onClick:r[0]||=e=>s(`add`)},[...r[14]||=[R(`p`,{class:`place-image-plus`},`+`,-1)]])):Pa(``,!0),e.mode==`add`?(I(),L(`div`,YP,[z(A(OD),{vertical:``},{default:M(()=>[z(A(Dw),null,{default:M(()=>[z(A(Tw),{style:{width:`20%`},value:e.newPlaceCode,"onUpdate:value":i,type:`text`,placeholder:`Ы-1`},null,8,[`value`]),z(A(Tw),{style:{width:`80%`},value:e.newPlaceName,"onUpdate:value":a,type:`text`,placeholder:`Дом №Ы`},null,8,[`value`])]),_:1}),z(A(Tw),{value:e.newPlaceText,"onUpdate:value":o,type:`textarea`,autosize:{minRows:3},placeholder:`В начале было слово...`},null,8,[`value`]),ni(t.$slots,`default`,{},void 0,!0)]),_:3})])):Pa(``,!0),e.mode==`show-editor`?(I(),L(`div`,{key:2,class:`place-block-hover show-editor-block`,onClick:r[1]||=e=>s(`edit`)},[R(`div`,XP,O(n.place?.code)+`: `+O(n.place?.name),1),r[15]||=R(`hr`,{class:`hr`},null,-1),R(`div`,ZP,[n.place?.image?(I(),L(`div`,QP,[R(`div`,$P,[R(`img`,{src:n.place?.image,class:`message-image`},null,8,eF)])])):Pa(``,!0),B(` `+O(n.place?.text),1)]),(I(!0),L(F,null,ti(n.place?.doors,e=>(I(),L(`div`,{key:e.code,class:`door-block`},[B(O(e.name)+` `,1),(I(!0),L(F,null,ti(e.keys,e=>(I(),L(`span`,{key:e.name,class:`key-block`},[z(A(jN),{class:`lock-icon`},{default:M(()=>[z(A(JM))]),_:1}),B(` `+O(e.name),1)]))),128))]))),128)),n.place?.applications?.length?(I(),L(`hr`,tF)):Pa(``,!0),(I(!0),L(F,null,ti(n.place?.applications,e=>(I(),L(`div`,{class:`message-footer application-block`,key:e.name},` Приложение: `+O(e.name),1))),128)),R(`p`,nF,[n.place?.hidden?(I(),L(`span`,rF,` Скрытая точка `)):Pa(``,!0),(I(!0),L(F,null,ti(n.place?.keys,e=>(I(),L(`span`,iF,[z(A(jN),{class:`lock-icon`},{default:M(()=>[z(A(GP))]),_:1}),B(` `+O(e.name),1)]))),256))])])):Pa(``,!0),e.mode==`show`?(I(),L(`div`,aF,[z(JP,null,{default:M(()=>[R(`div`,oF,[B(O(e.place?.code)+`: `+O(e.place?.name)+` `,1),R(`span`,{class:`collapse-icon collapse-icon-up`,onClick:r[2]||=e=>s(`show-collapse`)})]),r[16]||=R(`hr`,{class:`show-hr`},null,-1),R(`div`,sF,[e.place?.image?.length?(I(),L(`div`,cF,[R(`div`,lF,[R(`img`,{src:e.place?.image,class:`message-image`},null,8,uF)])])):Pa(``,!0),B(` `+O(e.place?.text),1)]),n.place?.doors?.length?(I(),L(`hr`,dF)):Pa(``,!0),(I(!0),L(F,null,ti(n.place?.doors,t=>(I(),L(`div`,{key:t.code,class:`button-dialog font`,onClick:n=>e.addAction(t.code)},[R(`div`,pF,O(t.code)+` `+O(t.name),1)],8,fF))),128)),n.place?.applications?.length?(I(),L(`hr`,mF)):Pa(``,!0),(I(!0),L(F,null,ti(n.place?.applications,e=>(I(),L(`div`,{class:`message-show-footer font`,key:e.name},` Приложение: `+O(e.name),1))),128))]),_:1})])):Pa(``,!0),e.mode==`show-collapse`?(I(),L(`div`,hF,[z(JP,null,{default:M(()=>[R(`div`,gF,[B(O(e.place?.code)+`: `+O(e.place?.name)+` `,1),R(`span`,{class:`collapse-icon`,onClick:r[3]||=e=>s(`show`)})])]),_:1})])):Pa(``,!0),e.mode==`edit`?(I(),L(`div`,_F,[z(A(OD),{vertical:``},{default:M(()=>[z(A(Dw),null,{default:M(()=>[z(A(Tw),{style:{width:`20%`},value:n.place.code,"onUpdate:value":r[4]||=e=>n.place.code=e,type:`text`,placeholder:`Ы-1`},null,8,[`value`]),z(A(Tw),{style:{width:`80%`},value:n.place.name,"onUpdate:value":r[5]||=e=>n.place.name=e,type:`text`,placeholder:`Дом №Ы`},null,8,[`value`])]),_:1}),z(A(Tw),{value:n.place.text,"onUpdate:value":r[6]||=e=>n.place.text=e,type:`textarea`,autosize:{minRows:3},placeholder:`В начале было слово...`},null,8,[`value`]),r[28]||=R(`p`,{class:`settings-header`},`Картинка`,-1),R(`div`,null,[z(A(OD),null,{default:M(()=>[z(A(OD),{vertical:``},{default:M(()=>[R(`img`,{src:n.place.image,class:`message-edit-image`},null,8,vF),z(A($),{onClick:r[7]||=e=>(n.place.image=``,n.place.fileList=null)},{default:M(()=>[...r[17]||=[B(`Убрать картинку`,-1)]]),_:1})]),_:1}),z(A(OD),{vertical:``},{default:M(()=>[z(A(Tw),{value:n.place.image,"onUpdate:value":r[8]||=e=>n.place.image=e,type:`text`,placeholder:`Не задано`,disabled:``},null,8,[`value`]),z(A(PA),{"directory-dnd":``,max:1,"file-list":n.place.fileList,"onUpdate:fileList":r[9]||=e=>n.place.fileList=e},{default:M(()=>[z(A(aA),null,{default:M(()=>[z(A(nA),{style:{"font-size":`16px`}},{default:M(()=>[...r[18]||=[B(` Щелкните или перетащите файл в эту область для загрузки `,-1)]]),_:1})]),_:1})]),_:1},8,[`file-list`])]),_:1})]),_:1})]),r[29]||=R(`p`,{class:`settings-header`},`Видимость точки`,-1),z(A(Uk),{value:n.place.hidden,"onUpdate:value":r[10]||=e=>n.place.hidden=e},{checked:M(()=>[...r[19]||=[B(` Скрытая точка `,-1)]]),unchecked:M(()=>[...r[20]||=[B(` Обычная точка `,-1)]]),_:1},8,[`value`]),r[30]||=B(` Улики `,-1),z(A(xD),{value:n.place.applications,"onUpdate:value":r[11]||=e=>n.place.applications=e,"on-create":c},{"create-button-default":M(()=>[...r[21]||=[B(` Добавить улику `,-1)]]),default:M(({value:e})=>[R(`div`,yF,[z(A(Tw),{value:e.name,"onUpdate:value":t=>e.name=t,type:`text`,placeholder:`Название`},null,8,[`value`,`onUpdate:value`])])]),_:1},8,[`value`]),r[31]||=B(` Действия `,-1),z(A(xD),{value:n.place.doors,"onUpdate:value":r[12]||=e=>n.place.doors=e,"on-create":l},{"create-button-default":M(()=>[...r[22]||=[B(` Добавить действие `,-1)]]),action:M(({index:e,create:t,remove:n})=>[R(`div`,bF,[z(A($),{onClick:()=>t(e),class:`plus-minus-buttons`},{default:M(()=>[...r[23]||=[B(`+`,-1)]]),_:1},8,[`onClick`]),z(A($),{onClick:()=>n(e),class:`plus-minus-buttons`},{default:M(()=>[...r[24]||=[B(`-`,-1)]]),_:1},8,[`onClick`])])]),default:M(({value:e})=>[R(`div`,xF,[R(`div`,SF,[z(A(Dw),null,{default:M(()=>[z(A(Tw),{style:{width:`30%`},value:e.code,"onUpdate:value":t=>e.code=t,type:`text`,placeholder:`Код`},null,8,[`value`,`onUpdate:value`]),z(A(Tw),{style:{width:`70%`},value:e.name,"onUpdate:value":t=>e.name=t,type:`text`,placeholder:`Название`},null,8,[`value`,`onUpdate:value`])]),_:2},1024),r[26]||=R(`p`,{class:`need-keys-text`},`Требуемые ключи`,-1),R(`div`,CF,[z(A(xD),{value:e.keys,"onUpdate:value":t=>e.keys=t,"on-create":u},{"create-button-default":M(()=>[...r[25]||=[B(` Добавить ключ `,-1)]]),default:M(({value:e})=>[R(`div`,wF,[z(A(Tw),{value:e.name,"onUpdate:value":t=>e.name=t,type:`text`,placeholder:`Название`},null,8,[`value`,`onUpdate:value`])])]),_:1},8,[`value`,`onUpdate:value`])])])])]),_:1},8,[`value`]),r[32]||=B(` Получаемые ключи `,-1),z(A(xD),{value:n.place.keys,"onUpdate:value":r[13]||=e=>n.place.keys=e,"on-create":u},{"create-button-default":M(()=>[...r[27]||=[B(` Добавить ключ `,-1)]]),default:M(({value:e})=>[R(`div`,TF,[z(A(Tw),{value:e.name,"onUpdate:value":t=>e.name=t,type:`text`,placeholder:`Название`},null,8,[`value`,`onUpdate:value`])])]),_:1},8,[`value`]),R(`div`,EF,[ni(t.$slots,`default`,{},void 0,!0)])]),_:3})])):Pa(``,!0)],64))}}),[[`__scopeId`,`data-v-93891f39`]]),OF={class:`center-block-custom`},kF={class:`width700`},AF={class:`places-container`},jF={class:`settings-block`},MF=FN(P({__name:`ScenariosEditorPage`,setup(e){let t=VM(),n=HM(),r=$A().params.id,i=k(!1),a=k(``),o=k(``),s=iD(),c=k([]),l=k({id:void 0,name:void 0,story:void 0,author:void 0,status:void 0,updatedAt:void 0,createdAt:void 0,publishedAt:void 0});async function u(e){let t=await n.GetFullScenario({id:e});if(t.error!=``){s.error(t.error);return}l.value=t.scenario,l.value.story?.places?.forEach(e=>{e.oldCode=e.code,e.mode=`show-editor`})}u(Number(r));async function d(e){let t=await n.DeleteScenario({id:e});if(t.error!=``){s.error(t.error);return}BI.push(`/scenarios`)}async function f(e){let t=await n.PublicScenario({id:e});if(t.error!=``){s.error(t.error);return}await u(Number(r)),a.value=``,i.value=!1}async function p(e,t){let r=new Date().toISOString(),i=await n.AddGame({name:(`Тестовая игра: `+e).trim(),description:`Тестовая игра`,startAt:r,scenarioId:t});if(i.error!=``){s.error(i.error);return}let a=await n.AddTeam({name:`Тестовая команда`,gameId:i.id});if(a.error!=``){s.error(a.error);return}BI.push(`/team-story/`+a.id+`?password=`+a.password)}async function m(e){let t=await n.DraftScenario({id:e});if(t.error!=``){s.error(t.error);return}await u(Number(r)),a.value=``,i.value=!1}async function h(e,t){if(!e)return``;let r=await e.arrayBuffer(),i=new Uint8Array(r),a=await n.UploadFile({filename:t,data:_(i)});return a.error==``?a.filename||``:(s.error(a.error),``)}async function g(){let e=``;if(c.value&&c.value.length>0){let t=c.value[0].file||null;if(t==null||(e=await h(t,`scenarios_`+l.value.id+`_`+t.name),e===``))return}let t=await n.UpdateScenario({id:l.value.id,name:l.value.name,description:l.value.description,image:e});if(t.error!=``){s.error(t.error);return}await u(Number(r)),i.value=!1}function _(e){let t=v(e);return btoa(t)}function v(e){let t=``;for(let n=0;ne.code==r.code)==null){let t=await n.AddScenarioPlace({id:e.id,place:{code:r.code,name:r.name,text:void 0,image:void 0,hidden:!0,applications:void 0,doors:void 0,keys:void 0}});if(t.error!=``){s.error(t.error);return}}}async function ee(e){await u(Number(r)),e.mode=`show-editor`}async function E(e){if(e.fileList&&e.fileList.length>0){let t=e.fileList[0].file||null;if(t==null)return;let n=await h(t,`scenarios_`+l.value.id+`_place_`+e.code+`_`+t.name);if(n===``)return;e.image=n}await T(l.value,e);let t=await n.UpdateScenarioPlace({id:l.value.id,code:e.oldCode,place:e});if(t.error!=``){s.error(t.error);return}await u(Number(r)),e.mode=`show-editor`}async function D(e){let t=await n.DeleteScenarioPlace({id:l.value.id,code:e.oldCode});if(t.error!=``){s.error(t.error);return}await u(Number(r))}function te(){let e=[{text:`Настя, ты просто ослепительна сегодня!`,nameForm:`Настя`},{text:`У Насти невероятный вкус!`,nameForm:`Насти`},{text:`Настенька, твоя улыбка делает мир ярче.`,nameForm:`Настенька`},{text:`С Настей всегда интересно общаться.`,nameForm:`Настей`},{text:`Настя, ты — источник вдохновения для всех вокруг.`,nameForm:`Настя`},{text:`Мне нравится, как Настя смотрит на мир.`,nameForm:`Настя`},{text:`Настюха, ты супер!`,nameForm:`Настюха`},{text:`Талант Насти поражает!`,nameForm:`Насти`},{text:`Настя, твоя энергия заряжает батарейки!`,nameForm:`Настя`},{text:`С Настей хочется проводить каждую минуту.`,nameForm:`Настей`},{text:`Настенька, ты — самое красивое, что случилось в этом мире.`,nameForm:`Настенька`},{text:`У Насти золотое сердце.`,nameForm:`Насти`}];return e[Math.floor(Math.random()*e.length)].text}return(e,n)=>(I(),L(F,null,[R(`div`,OF,[R(`div`,kF,[R(`div`,AF,[l.value.status==`public`?(I(),Ea(A(sw),{key:0,title:`Сценарий опубликован`,type:`warning`,style:{"margin-bottom":`20px`}},{default:M(()=>[...n[20]||=[B(` Не рекомендуется редактировать сценарий когда он опубликован. `,-1)]]),_:1})):Pa(``,!0),A(t).user?.id==2?(I(),Ea(A(sw),{key:1,title:te(),type:`info`,style:{"margin-bottom":`20px`}},null,8,[`title`])):Pa(``,!0),R(`div`,jF,[B(` Точек: `+O(l.value.story?.places?.length)+` `,1),z(A($),{quaternary:``,onClick:n[0]||=e=>i.value=!0,class:`settings-button`},{default:M(()=>[z(A(jN),{class:`settings-icon`},{default:M(()=>[z(A(cP))]),_:1}),n[21]||=B(` Настройки `,-1)]),_:1})]),z(DF,{mode:S.value,"onUpdate:mode":n[3]||=e=>S.value=e,newPlaceCode:y.value,"onUpdate:newPlaceCode":n[4]||=e=>y.value=e,newPlaceName:b.value,"onUpdate:newPlaceName":n[5]||=e=>b.value=e,newPlaceText:x.value,"onUpdate:newPlaceText":n[6]||=e=>x.value=e},{default:M(()=>[z(A(FD),{justify:`end`},{default:M(()=>[z(A($),{onClick:n[1]||=e=>w()},{default:M(()=>[...n[22]||=[B(`Отмена`,-1)]]),_:1}),z(A($),{onClick:n[2]||=e=>C(),disabled:!y.value},{default:M(()=>[...n[23]||=[B(`Добавить точку`,-1)]]),_:1},8,[`disabled`])]),_:1})]),_:1},8,[`mode`,`newPlaceCode`,`newPlaceName`,`newPlaceText`]),(I(!0),L(F,null,ti(l.value.story?.places,e=>(I(),Ea(DF,{place:e,mode:e.mode,"onUpdate:mode":t=>e.mode=t,key:e.oldCode},{default:M(()=>[z(A(FD),{justify:`end`},{default:M(()=>[z(A($),{onClick:t=>D(e),type:`error`,ghost:``},{default:M(()=>[...n[24]||=[B(`Удалить`,-1)]]),_:1},8,[`onClick`]),z(A($),{onClick:t=>ee(e)},{default:M(()=>[...n[25]||=[B(`Отмена`,-1)]]),_:1},8,[`onClick`]),z(A($),{onClick:t=>E(e),disabled:e.code==``},{default:M(()=>[...n[26]||=[B(`Сохранить`,-1)]]),_:1},8,[`onClick`,`disabled`])]),_:2},1024)]),_:2},1032,[`place`,`mode`,`onUpdate:mode`]))),128))])])]),z(A(UE),{show:i.value,"onUpdate:show":n[19]||=e=>i.value=e},{default:M(()=>[z(A(TT),{style:{width:`600px`},title:`Настройки сценария`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A($),{onClick:n[7]||=e=>i.value=!1},{default:M(()=>[...n[27]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[...n[47]||=[]]),default:M(()=>[z(A(OD),{vertical:``},{default:M(()=>[n[39]||=R(`p`,null,`Название`,-1),z(A(Tw),{value:l.value.name,"onUpdate:value":n[8]||=e=>l.value.name=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`]),n[40]||=R(`p`,{class:`settings-header`},`Описание`,-1),z(A(Tw),{value:l.value.description,"onUpdate:value":n[9]||=e=>l.value.description=e,type:`textarea`,placeholder:`Убийство пастуха...`},null,8,[`value`]),n[41]||=R(`p`,{class:`settings-header`},`Картинка`,-1),z(A(Tw),{value:l.value.image,"onUpdate:value":n[10]||=e=>l.value.image=e,type:`text`,placeholder:`default_scenario.png`,disabled:``},null,8,[`value`]),z(A(PA),{"directory-dnd":``,max:1,"file-list":c.value,"onUpdate:fileList":n[11]||=e=>c.value=e},{default:M(()=>[z(A(aA),null,{default:M(()=>[z(A(nA),{style:{"font-size":`16px`}},{default:M(()=>[...n[28]||=[B(` Щелкните или перетащите файл в эту область для загрузки `,-1)]]),_:1})]),_:1})]),_:1},8,[`file-list`]),z(A($),{onClick:n[12]||=e=>g(),ghost:``},{default:M(()=>[...n[29]||=[B(` Сохранить изменения `,-1)]]),_:1}),n[42]||=R(`hr`,{class:`settings-hr`},null,-1),n[43]||=R(`p`,null,`Создать тестовую игру`,-1),z(A($),{onClick:n[13]||=e=>p(l.value.name||``,l.value.id),ghost:``},{default:M(()=>[...n[30]||=[B(` Создать игру `,-1)]]),_:1}),n[44]||=R(`hr`,{class:`settings-hr`},null,-1),n[45]||=R(`p`,null,`Публикация`,-1),R(`p`,null,[l.value.status==`public`?(I(),Ea(A(WC),{key:0,bordered:!1,type:`success`,class:`status-block`},{default:M(()=>[...n[31]||=[B(` Опубликовано `,-1)]]),_:1})):Pa(``,!0),l.value.status==`draft`?(I(),Ea(A(WC),{key:1,bordered:!1,type:`warning`,class:`status-block`},{default:M(()=>[...n[32]||=[B(` В разработке `,-1)]]),_:1})):Pa(``,!0)]),R(`p`,null,[n[33]||=B(` Введите название сценария `,-1),z(A(nA),{class:`name-text`,strong:``},{default:M(()=>[B(O(l.value.name),1)]),_:1})]),z(A(Tw),{value:a.value,"onUpdate:value":n[14]||=e=>a.value=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`]),l.value.status==`public`?Pa(``,!0):(I(),Ea(A($),{key:0,onClick:n[15]||=e=>f(l.value.id),ghost:``,disabled:a.value!=l.value.name},{default:M(()=>[...n[34]||=[B(` Опубликовать сценарий `,-1)]]),_:1},8,[`disabled`])),l.value.status==`draft`?Pa(``,!0):(I(),Ea(A($),{key:1,onClick:n[16]||=e=>m(l.value.id),ghost:``,disabled:a.value!=l.value.name},{default:M(()=>[...n[35]||=[B(` Снять сценарий с публикации `,-1)]]),_:1},8,[`disabled`])),n[46]||=R(`hr`,{class:`settings-hr`},null,-1),R(`p`,null,[n[36]||=B(` Введите название сценария `,-1),z(A(nA),{class:`name-text`,strong:``},{default:M(()=>[B(O(l.value.name),1)]),_:1}),n[37]||=B(` чтобы удалить его `,-1)]),z(A(Tw),{value:o.value,"onUpdate:value":n[17]||=e=>o.value=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`]),z(A($),{onClick:n[18]||=e=>d(l.value.id),type:`error`,ghost:``,disabled:o.value!=l.value.name},{default:M(()=>[...n[38]||=[B(` Удалить сценарий `,-1)]]),_:1},8,[`disabled`])]),_:1})]),_:1})]),_:1},8,[`show`]),z(IN,{active:`scenarios`})],64))}}),[[`__scopeId`,`data-v-56e050c6`]]),NF=P({__name:`ScenariosEditorView`,setup(e){return(e,t)=>(I(),Ea(MF))}}),PF={class:`center-block-custom`},FF={class:`width1200 display-table`},IF=[`onClick`],LF={class:`scenario-content-block`},RF={class:`scenario-title`},zF={class:`scenario-label`},BF=FN(P({__name:`ScenariosPage`,setup(e){let t=HM(),n=k([]),r=QA(),i=iD(),a=k(!1),o=k(``);async function s(){n.value=[];let e=await t.GetMyScenarios({});n.value=e.scenarios}async function c(e){let n=await t.AddScenario({name:e});if(n.error!=``){i.error(n.error);return}await l(n.id)}async function l(e){r.push(`/scenarios/`+e+`/editor`)}return s(),(e,t)=>(I(),L(F,null,[R(`div`,PF,[R(`div`,FF,[R(`div`,{class:`scenario-block`,onClick:t[0]||=e=>a.value=!0},[...t[5]||=[R(`div`,{class:`scenario-image-block scenario-image-plus`},`+`,-1),R(`div`,{class:`scenario-content-block`},[R(`p`,{class:`scenario-title`},`Создать новый сценарий`)],-1)]]),(I(!0),L(F,null,ti(n.value,e=>(I(),L(`div`,{class:`scenario-block`,onClick:t=>l(e.id),key:e.id},[R(`div`,{class:`scenario-image-block scenario-image`,style:fe({backgroundImage:`url(${e.image})`})},null,4),R(`div`,LF,[R(`p`,RF,O(e.name),1),R(`p`,zF,[e.status==`public`?(I(),Ea(A(WC),{key:0,bordered:!1,type:`success`,class:`status-block`},{default:M(()=>[...t[6]||=[B(`Опубликовано`,-1)]]),_:1})):Pa(``,!0),e.status==`draft`?(I(),Ea(A(WC),{key:1,bordered:!1,type:`warning`,class:`status-block`},{default:M(()=>[...t[7]||=[B(`В разработке`,-1)]]),_:1})):Pa(``,!0)])])],8,IF))),128))])]),z(A(UE),{show:a.value,"onUpdate:show":t[4]||=e=>a.value=e},{default:M(()=>[z(A(TT),{style:{width:`600px`},title:`Создание сценария`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":M(()=>[z(A($),{onClick:t[1]||=e=>a.value=!1},{default:M(()=>[...t[8]||=[B(` x `,-1)]]),_:1})]),footer:M(()=>[z(A(FD),{justify:`end`},{default:M(()=>[z(A($),{onClick:t[3]||=e=>c(o.value),disabled:o.value.length==0},{default:M(()=>[...t[9]||=[B(` Создать `,-1)]]),_:1},8,[`disabled`])]),_:1})]),default:M(()=>[z(A(Tw),{value:o.value,"onUpdate:value":t[2]||=e=>o.value=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`])]),_:1})]),_:1},8,[`show`]),z(IN,{active:`scenarios`})],64))}}),[[`__scopeId`,`data-v-1a024fe4`]]),VF=P({__name:`ScenariosView`,setup(e){return(e,t)=>(I(),Ea(BF))}}),HF={class:`center-block-custom`},UF={class:`width700`},WF={class:`scenario-title`},GF=[`src`],KF={class:`scenario-description`},qF={class:`scenario-author`},JF=FN(P({__name:`ScenarioPage`,setup(e){let t=iD(),n=HM(),r=$A().params.id,i=k({id:void 0,name:void 0,story:void 0,author:void 0,status:void 0,updatedAt:void 0,createdAt:void 0,publishedAt:void 0});async function a(e){let r=await n.GetScenario({id:e});if(r.error!=``){t.error(r.error);return}i.value=r.scenario}return a(Number(r)),(e,t)=>(I(),L(F,null,[R(`div`,HF,[R(`div`,UF,[R(`div`,WF,O(i.value.name),1),R(`img`,{class:`scenario-image`,src:i.value.image},null,8,GF),R(`div`,KF,O(i.value.description),1),R(`div`,qF,[z(A(WC),{bordered:!1,type:`success`,class:`status-block`},{default:M(()=>[B(`Автор: `+O(i.value.author?.username),1)]),_:1})])])]),z(IN,{active:`catalog`})],64))}}),[[`__scopeId`,`data-v-2c9a6669`]]),YF=P({__name:`ScenarioView`,setup(e){return(e,t)=>(I(),Ea(JF))}}),XF={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 512 512`},ZF=P({name:`Footsteps`,render:function(e,t){return I(),L(`svg`,XF,t[0]||=[R(`path`,{d:`M133.83 361.27c-22.61 0-41-8.17-54.79-24.39s-22.84-40.29-28.11-75.31c-7.76-51.61-.06-95.11 21.68-122.48c12.8-16.12 29.6-25.44 48.58-26.94c16.25-1.3 40.54 5.29 64 44c14.69 24.24 25.86 56.44 30.65 88.34c5.79 38.51 1.48 66.86-13.18 86.65c-11.64 15.72-29.54 25.46-53.21 29a106.46 106.46 0 0 1-15.62 1.13z`,fill:`currentColor`},null,-1),R(`path`,{d:`M173 496c-13.21 0-26.6-4.23-38.66-12.36a79.79 79.79 0 0 1-33.52-50.6c-2.85-14.66-1.14-26.31 5.22-35.64c10.33-15.15 28.87-18.56 48.49-22.18c2.07-.38 4.17-.76 6.3-1.17c4.52-.86 9.14-2 13.62-3.11c16.78-4.14 34.14-8.43 48.47 1.75c9.59 6.8 15 18.36 16.62 35.32c1.84 19.57-2.36 39.1-11.83 55c-10.19 17.11-25.47 28.42-43 31.86A61 61 0 0 1 173 496z`,fill:`currentColor`},null,-1),R(`path`,{d:`M378.17 265.27a106.69 106.69 0 0 1-15.6-1.2c-23.66-3.5-41.56-13.25-53.2-29c-14.66-19.79-19-48.13-13.18-86.65c4.79-31.93 15.93-64.1 30.55-88.25c23.34-38.57 47.66-45.26 64-44.08c18.92 1.38 35.69 10.57 48.51 26.6c21.89 27.37 29.65 71 21.86 122.84c-5.27 35-14.2 58.95-28.11 75.31s-32.22 24.43-54.83 24.43z`,fill:`currentColor`},null,-1),R(`path`,{d:`M339 400a61 61 0 0 1-11.68-1.13c-17.56-3.44-32.84-14.75-43-31.86c-9.47-15.9-13.67-35.43-11.83-55c1.6-17 7-28.52 16.62-35.33c14.33-10.17 31.69-5.89 48.47-1.74c4.48 1.1 9.1 2.24 13.62 3.11l6.29 1.17c19.63 3.61 38.17 7 48.5 22.17c6.36 9.33 8.07 21 5.22 35.64a79.78 79.78 0 0 1-33.52 50.61C365.56 395.78 352.17 400 339 400z`,fill:`currentColor`},null,-1)])}}),QF={},$F={class:`belt-block`};function eI(e,t){return I(),L(`div`,null,[t[0]||=R(`div`,{class:`shadow shadow-top`},null,-1),t[1]||=R(`div`,{class:`shadow shadow-bottom`},null,-1),R(`div`,$F,[ni(e.$slots,`default`,{},void 0,!0)])])}var tI=FN(QF,[[`render`,eI],[`__scopeId`,`data-v-82aef99e`]]),nI={class:`text-with-font`},rI=FN(P({__name:`HeaderText`,setup(e){return(e,t)=>(I(),L(`span`,nI,[ni(e.$slots,`default`,{},void 0,!0)]))}}),[[`__scopeId`,`data-v-e13ee3bd`]]),iI={},aI={class:`plate-block`},oI={class:`metal-plate-block`};function sI(e,t){return I(),L(`div`,aI,[R(`div`,oI,[ni(e.$slots,`default`,{},void 0,!0)]),t[0]||=R(`div`,{class:`pin pin-top-left`},null,-1),t[1]||=R(`div`,{class:`pin pin-top-right`},null,-1),t[2]||=R(`div`,{class:`pin pin-bottom-right`},null,-1),t[3]||=R(`div`,{class:`pin pin-bottom-left`},null,-1)])}var cI=FN(iI,[[`render`,sI],[`__scopeId`,`data-v-35e450f5`]]),lI={class:`form-custom`},uI={class:`center-block-700`},dI={class:`controller`},fI={class:`counters-block`},pI={class:`counter-block`},mI={class:`places-text`},hI={class:`places-text places-text-number`},gI={class:`counter-block`},_I={class:`places-text`},vI={class:`places-text places-text-number`},yI={class:`game-input`},bI=[`placeholder`,`disabled`],xI=[`disabled`],SI=FN(P({__name:`GameInputForm`,props:{addAction:{type:Function,required:!0},allPlacesCount:{type:Number,required:!0},newPlacesCount:{type:Number,required:!0},gameStatus:{type:String,required:!0}},setup(e){let t=k(``),n=e;async function r(){await n.addAction(t.value),t.value=``}function i(e){e%=100;let t=Math.floor(e/10)%10,n=e%10,r=`–`,i=`–`;return t>0&&(r=String(t)),(n>0||t>0)&&(i=String(n)),[r,i]}return(a,o)=>(I(),L(`div`,lI,[z(tI,{class:`input-form`},{default:M(()=>[z(cI,{class:`controller-metal controller-metal-left`}),z(cI,{class:`controller-metal controller-metal-right`}),R(`div`,uI,[R(`div`,dI,[R(`div`,fI,[R(`div`,pI,[R(`div`,mI,[z(A(jN),{class:`icon-for-counter`},{default:M(()=>[z(A(ZF))]),_:1})]),(I(!0),L(F,null,ti(i(e.allPlacesCount),e=>(I(),L(`div`,hI,O(e),1))),256))]),R(`div`,gI,[R(`div`,_I,[z(A(jN),{class:`icon-for-counter`},{default:M(()=>[z(A(KM))]),_:1})]),(I(!0),L(F,null,ti(i(e.newPlacesCount),e=>(I(),L(`div`,vI,O(e),1))),256))])]),R(`div`,yI,[Vn(R(`input`,{id:`run`,class:`game-input-run`,"onUpdate:modelValue":o[0]||=e=>t.value=e,type:`text`,placeholder:n.gameStatus==`run`?`Место назначения`:`Ходы запрещены`,disabled:n.gameStatus!=`run`},null,8,bI),[[js,t.value]])]),o[4]||=R(`div`,{class:`game-button-run-shadow`},null,-1),R(`button`,{class:`game-button-run`,type:`submit`,disabled:t.value.length==0,onClick:r},[n.gameStatus==`run`?(I(),Ea(rI,{key:0},{default:M(()=>[...o[1]||=[B(`Поехали`,-1)]]),_:1})):Pa(``,!0),n.gameStatus==`pause`||n.gameStatus==`draft`?(I(),Ea(rI,{key:1},{default:M(()=>[...o[2]||=[B(`Ждём`,-1)]]),_:1})):Pa(``,!0),n.gameStatus==`finish`?(I(),Ea(rI,{key:2},{default:M(()=>[...o[3]||=[B(`Всё`,-1)]]),_:1})):Pa(``,!0)],8,xI)])])]),_:1})]))}}),[[`__scopeId`,`data-v-a21d8a4f`]]),CI={class:`width700`},wI={class:`qr-block`},TI={key:0,class:`qr-main-block-text`},EI={key:1,class:`qr-main-block-text`},DI={key:1,class:`edit-panel`},OI=FN(P({__name:`TeamStoryPage`,setup(e){let t=VM(),n=HM(),r=iD();QA();let i=$A(),a=i.params.id,o=i.query.password,s=k(0),c=k(),l=k({places:[]}),u=k({id:void 0,name:void 0,description:void 0,startAt:void 0,status:void 0,scenario:void 0,teams:void 0}),d=k(``),f=window.location.href,p=()=>{let e=c.value;return e?e.scrollHeight-e.scrollTop-e.clientHeight<1:!1};async function m(){let e=l.value,t=await n.GetTeamStory({id:Number(a),password:o});if(t.error!=``){r.error(t.error);return}u.value=t.game;let i=p();i&&(s.value=0);let d=l.value.places.length;l.value={places:t.story.places?.map((t,n)=>(console.log(e?.places[n]?.mode),{place:t,mode:e?.places[n]?.mode||`show`}))||[]};let f=l.value.places.length;if(f>d&&d!=0&&(s.value+=f-d),await kn(),i&&d!=0){let e=c.value;if(!e)return!1;e.scrollTop=e.scrollHeight}}m();async function h(e){let t=await n.AddTeamAction({id:Number(a),password:o,code:e});if(t.error!=``){r.error(t.error);return}await m(),d.value=``,await kn(),s.value=0}async function g(){let e=await n.DeleteLastTeamAction({id:Number(a)});if(e.error!=``){r.error(e.error);return}await m(),d.value=``}return lP(()=>{m()},2e3),(e,n)=>{let r=Zr(`n-space`);return I(),L(F,null,[R(`div`,{class:`center-block-custom bottom-margin smooth-scroll`,ref_key:`scrollContainer`,ref:c},[R(`div`,CI,[z(SI,{addAction:h,allPlacesCount:l.value.places.length,newPlacesCount:s.value,gameStatus:u.value?.status||``},null,8,[`allPlacesCount`,`newPlacesCount`,`gameStatus`]),(I(!0),L(F,null,ti(l.value.places,e=>(I(),Ea(DF,{place:e.place,mode:e.mode,"onUpdate:mode":t=>e.mode=t,key:e.place.code,addAction:h},null,8,[`place`,`mode`,`onUpdate:mode`]))),128)),l.value.places.length==0?(I(),Ea(JP,{key:0,class:`qr-main-block`},{default:M(()=>[z(r,{vertical:``},{default:M(()=>[n[0]||=R(`h2`,{class:`qr-main-block-text`},`Это код этого дела`,-1),n[1]||=R(`p`,{class:`qr-main-block-text`},`Поделись с командой`,-1),R(`div`,wI,[z(A(Lk),{value:A(f),size:300,padding:0},null,8,[`value`])]),u.value?.status==`draft`?(I(),L(`p`,TI,`Игра скоро начнется`)):Pa(``,!0),u.value?.status==`run`?(I(),L(`p`,EI,`Игра началась!!!`)):Pa(``,!0)]),_:1})]),_:1})):Pa(``,!0),A(t).hasRole(`author`)&&l.value.places.length>0?(I(),L(`div`,DI,[z(A(FD),{justify:`end`},{default:M(()=>[z(A($),{onClick:g},{default:M(()=>[...n[2]||=[B(`Удалить последний ход`,-1)]]),_:1})]),_:1})])):Pa(``,!0)])],512),z(IN,{active:`games`})],64)}}}),[[`__scopeId`,`data-v-374fdb93`]]),kI=P({__name:`TeamStoryView`,setup(e){return(e,t)=>(I(),Ea(OI))}}),AI={};function jI(e,t){return`Пользовательское соглашение`}var MI=FN(AI,[[`render`,jI]]),NI={class:`center-block-custom`},PI={class:`width700`},FI={class:`user-field`},II={class:`user-field`},LI={class:`user-field`},RI=FN(P({__name:`UsersPage`,setup(e){let t=HM(),n=iD(),r=k([]);async function i(){let e=await t.GetUsers({});if(e.error!=``){n.error(e.error);return}r.value=e.users}i();async function a(e,r){let a=await t.AddUserRole({id:e,role:r});if(a.error!=``){n.error(a.error);return}await i()}async function o(e,r){let a=await t.DeleteUserRole({id:e,role:r});if(a.error!=``){n.error(a.error);return}await i()}return(e,t)=>(I(),L(F,null,[R(`div`,NI,[R(`div`,PI,[(I(!0),L(F,null,ti(r.value,e=>(I(),L(`div`,{key:e.id,class:`user-block`},[R(`div`,FI,` Позывной: `+O(e.username),1),R(`div`,II,` Почта: `+O(e.email),1),R(`div`,LI,[z(A(OD),null,{default:M(()=>[t[0]||=B(` Роли: `,-1),(I(!0),L(F,null,ti(e.roles,e=>(I(),Ea(A(WC),{bordered:!1,key:e},{default:M(()=>[B(O(e),1)]),_:2},1024))),128))]),_:2},1024)]),z(A(FD),{justify:`end`,class:`roles-buttons-block`},{default:M(()=>[e.roles?.includes(`author`)?(I(),Ea(A($),{key:1,onClick:t=>o(e.id,`author`)},{default:M(()=>[...t[2]||=[B(`Забрать роль автора`,-1)]]),_:1},8,[`onClick`])):(I(),Ea(A($),{key:0,onClick:t=>a(e.id,`author`)},{default:M(()=>[...t[1]||=[B(`Сделать автором`,-1)]]),_:1},8,[`onClick`])),e.roles?.includes(`organizer`)?(I(),Ea(A($),{key:3,onClick:t=>o(e.id,`organizer`)},{default:M(()=>[...t[4]||=[B(`Забрать роль организатора`,-1)]]),_:1},8,[`onClick`])):(I(),Ea(A($),{key:2,onClick:t=>a(e.id,`organizer`)},{default:M(()=>[...t[3]||=[B(`Сделать организатором`,-1)]]),_:1},8,[`onClick`]))]),_:2},1024)]))),128))])]),z(IN,{active:`users`})],64))}}),[[`__scopeId`,`data-v-4af0a140`]]),zI=P({__name:`UsersView`,setup(e){return(e,t)=>(I(),Ea(RI))}}),BI=FM({history:rM(`/`),routes:[{path:`/`,name:`home`,component:bP},{path:`/login`,name:`login`,component:IP},{path:`/office`,name:`office`,component:BP},{path:`/user-agreement`,name:`user-agreement`,component:MI},{path:`/privacy-policy`,name:`privacy-policy`,component:UP},{path:`/games`,name:`games`,component:QN},{path:`/games/:id`,name:`game`,component:yP},{path:`/team-story/:id`,name:`team-story`,component:kI},{path:`/scenarios`,name:`scenarios`,component:VF},{path:`/catalog`,name:`catalog`,component:GN},{path:`/scenarios/:id/editor`,name:`scenario-editor`,component:NF},{path:`/scenarios/:id`,name:`scenario`,component:YF},{path:`/users`,name:`users`,component:zI}]}),VI=Fs(IM);VI.use(nc()),VI.use(BI),VI.mount(`#app`); \ No newline at end of file diff --git a/dist/assets/index-daQ9uhul.css b/dist/assets/index-BdDl0UCc.css similarity index 95% rename from dist/assets/index-daQ9uhul.css rename to dist/assets/index-BdDl0UCc.css index 10925ec..6d57df9 100644 --- a/dist/assets/index-daQ9uhul.css +++ b/dist/assets/index-BdDl0UCc.css @@ -1 +1 @@ -:root{--vt-c-white:#fff;--vt-c-white-soft:#f8f8f8;--vt-c-white-mute:#f2f2f2;--vt-c-black:#181818;--vt-c-black-soft:#222;--vt-c-black-mute:#282828;--vt-c-indigo:#2c3e50;--vt-c-divider-light-1:#3c3c3c4a;--vt-c-divider-light-2:#3c3c3c1f;--vt-c-divider-dark-1:#545454a6;--vt-c-divider-dark-2:#5454547a;--vt-c-text-light-1:var(--vt-c-indigo);--vt-c-text-light-2:#3c3c3ca8;--vt-c-text-dark-1:var(--vt-c-white);--vt-c-text-dark-2:#ebebeba3;--main-color:#22323c;--second-color:#614a16;--main-back-color:#f0f0f0;--main-back-item-color:#fefefe;--color-background:var(--vt-c-white);--color-background-soft:var(--vt-c-white-soft);--color-background-mute:var(--vt-c-white-mute);--color-border:var(--vt-c-divider-light-2);--color-border-hover:var(--vt-c-divider-light-1);--color-heading:var(--vt-c-text-light-1);--color-text:var(--vt-c-text-light-1);--section-gap:160px}@media (prefers-color-scheme:dark){:root{--color-background:var(--vt-c-black);--color-background-soft:var(--vt-c-black-soft);--color-background-mute:var(--vt-c-black-mute);--color-border:var(--vt-c-divider-dark-2);--color-border-hover:var(--vt-c-divider-dark-1);--color-heading:var(--vt-c-text-dark-1);--color-text:var(--vt-c-text-dark-2)}}*,:before,:after{box-sizing:border-box;margin:0;font-weight:400}body{min-height:100vh;color:#eee;background:var(--color-background);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scrollbar-width:none;background-color:#111;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;line-height:1.6;transition:color .5s,background-color .5s;overflow:hidden}@font-face{font-family:font_old_typer;src:url(/assets/a_OldTyper-BsgRTrmO.ttf)}.height80{height:80vh}.content-block{margin-top:70px}.center-block-custom{scrollbar-width:none;height:calc(100vh - 150px);margin-top:70px;overflow-y:auto}.center-block-custom::-webkit-scrollbar{display:none}.width700,.width1200{margin:0 auto;padding:10px}.display-table{flex-flow:wrap;justify-content:center;display:flex}@media (width>=1024px){.center-block-custom{height:calc(100dvh - 70px);margin:70px auto 0}.width700{width:700px;margin:0 auto;padding:20px}.width1200{width:1200px;margin:0 auto;padding:20px}.center-middle-block-custom{place-items:center;display:grid}}.menu-block[data-v-5e423637]{background-color:#222;justify-content:space-between;align-items:center;width:100%;height:70px;padding:20px;display:flex;position:fixed;top:0;left:0}.menu-item-block[data-v-5e423637]{cursor:pointer;margin-left:10px;padding:5px;font-size:1.1em;display:inline-block}.menu-item-block[data-v-5e423637]:hover{color:#63e2b7;opacity:.8}.right[data-v-5e423637]{margin-left:auto}.active[data-v-5e423637]{color:#63e2b7}@media (width>=1024px){.burger-button[data-v-5e423637]{display:none}}@media (width<1024px){.menu-buttons-block[data-v-5e423637]{background-color:#222;flex-direction:column;width:100%;padding-bottom:5px;display:flex;position:fixed;top:70px;left:0}.menu-buttons-block div[data-v-5e423637]{padding:15px 5px}.menu-buttons-block-active[data-v-5e423637]{position:relative;top:-1000px}.burger-icon[data-v-5e423637]{position:relative;top:5px}}.scenario-block[data-v-d72c95c2]{cursor:pointer;background-color:#222;border:2px solid #222;border-radius:12px;width:160px;height:300px;margin:10px;position:relative}.scenario-content-block[data-v-d72c95c2]{padding:2px 10px}.scenario-block[data-v-d72c95c2]:hover{color:#63e2b7;border:2px solid #63e2b7}.scenario-image-block[data-v-d72c95c2]{background-color:#111;border-radius:10px;height:160px}.scenario-image[data-v-d72c95c2]{background-position:50%;background-size:cover}.scenario-title[data-v-d72c95c2]{padding:5px 0}.scenario-description[data-v-d72c95c2]{color:#aaa;display:none}.status-block[data-v-d72c95c2]{position:absolute;bottom:15px;right:15px}@media (width>=1024px){.scenario-block[data-v-d72c95c2]{width:250px;height:400px}.scenario-image-block[data-v-d72c95c2]{height:250px}.scenario-content-block[data-v-d72c95c2]{padding:4px 10px}.scenario-description[data-v-d72c95c2]{color:#aaa;display:block}}.game-block[data-v-45eae4d9]{background-color:#222;border-radius:10px;margin:10px 0;padding:20px}.game-block[data-v-45eae4d9]:hover{cursor:pointer;color:#63e2b7}.game-title[data-v-45eae4d9]{margin-bottom:10px;font-size:24px}.game-description[data-v-45eae4d9]{color:#aaa;margin-bottom:10px}.team-block[data-v-840aaeae]{background-color:#222;border:1px solid #222;border-radius:10px;margin:10px 0}.team-block-hover[data-v-840aaeae]:hover{color:#63e2b7;cursor:pointer;border:1px solid #63e2b7}.team-content-block[data-v-840aaeae]{padding:20px}.team-name-block[data-v-840aaeae]{font-size:20px;font-weight:600}.settings-button[data-v-840aaeae]{float:right;margin-left:10px}.settings-icon[data-v-840aaeae]{width:20px}.link-button[data-v-840aaeae]{width:100%;margin-top:20px}.place-image-plus[data-v-840aaeae]{justify-content:center;align-items:center;font-size:30px;display:flex}.name-text[data-v-840aaeae]{background-color:#ffffff1a;border-radius:3px;padding:3px}.qr-block[data-v-840aaeae]{background-color:#fff;padding:12px;display:inline-block}.font-text{font-family:font_old_typer}.content-text{float:right;position:relative;top:100px;right:0}@media (width>=1024px){.font-text{position:relative;left:-50px}.content-text{position:relative;top:100px;right:-50px}}.sign-card[data-v-c1fd645b]{background-color:#1d1d1d}.form-label[data-v-c1fd645b]{margin-top:10px}.form-button-wrapper[data-v-c1fd645b]{justify-content:center;display:flex}.docs-link[data-v-c1fd645b]{color:#45aa89}.docs-link[data-v-c1fd645b]:hover{color:#63e2b7}@media (width>=1024px){.sign-card[data-v-c1fd645b]{width:380px}}.main[data-v-dfe3093b]{position:relative}.message-cloud[data-v-dfe3093b],.message-cloud-2[data-v-dfe3093b],.message-cloud-3[data-v-dfe3093b]{background-color:bisque}.message-cloud[data-v-dfe3093b]{color:#000;margin:15px 0;padding:16px;font-family:main;font-size:18px;font-weight:900;line-height:20px;position:relative}.message-cloud[data-v-dfe3093b],.message-cloud-2[data-v-dfe3093b],.message-cloud-3[data-v-dfe3093b]{background-image:url(/assets/paper-CuqvoKhN.jpg);background-size:cover;border-radius:5px;display:flow-root;box-shadow:0 0 5px #000}.message-cloud-2[data-v-dfe3093b],.message-cloud-3[data-v-dfe3093b]{position:absolute;top:0;left:0}.message-cloud-2[data-v-dfe3093b]{filter:brightness(50%);width:100%;height:100%;transform:rotate(-3deg)}.message-cloud-3[data-v-dfe3093b]{filter:brightness(80%);width:100%;height:100%;transform:rotate(2deg)}.hr[data-v-93891f39]{border:1px dashed #eee;margin:10px 0}.place-block-hover[data-v-93891f39],.place-block[data-v-93891f39]{background-color:#222;border:1px solid #222;border-radius:10px;margin:10px 0;padding:20px}.place-block-hover[data-v-93891f39]:hover{color:#63e2b7;cursor:pointer;border:1px solid #63e2b7}.place-image-plus[data-v-93891f39]{justify-content:center;align-items:center;font-size:30px;display:flex}.show-editor-block[data-v-93891f39]{cursor:pointer}.message-content[data-v-93891f39]{white-space:pre-wrap;font-weight:500}.gray-block[data-v-93891f39]{color:#777;margin-top:5px}.application-block[data-v-93891f39]{color:#deb887;margin-right:5px}.door-block[data-v-93891f39]{color:#eee;background-color:#222;border-radius:5px;margin:10px 5px 10px 0;padding:5px 10px;display:inline-block}.door-add-block[data-v-93891f39]{color:#eee;background-color:#222;border-radius:5px;padding:10px}.key-block[data-v-93891f39]{color:gold;margin-left:10px}.lock-icon[data-v-93891f39]{position:relative;top:2px}.door-field[data-v-93891f39]{margin-top:10px}.need-keys-text[data-v-93891f39]{color:gold;margin:15px 0 0;padding:0}.slot-block[data-v-93891f39]{margin-top:10px}.plus-minus-buttons[data-v-93891f39]{text-align:center;color:#eee;border:1px solid #444;border-radius:40px;margin:0 0 10px 5px;padding:0 13px;font-size:25px}.plus-minus-buttons[data-v-93891f39]:hover{cursor:pointer;color:#63e2b7}.message-image-border[data-v-93891f39]{float:left;background-image:url(/assets/paper_white-ZSlTzOTx.jpg);background-size:cover;width:40%;max-width:200px;margin-right:15px;padding:7px;transform:rotate(-3deg);box-shadow:0 3px 15px #626262}.message-image[data-v-93891f39]{width:100%}.message-edit-image[data-v-93891f39]{width:135px;height:135px}.message-header[data-v-93891f39]{padding-right:50px;font-size:20px}.message-footer[data-v-93891f39]{color:#deb887;padding-right:50px;font-weight:400;position:relative}.message-show-header[data-v-93891f39]{padding-right:50px;font-size:20px}.collapse-icon[data-v-93891f39]{cursor:pointer;background-image:url(/assets/collapse-B6YzUtGl.png);background-position:50%;background-size:cover;width:45px;height:28px;position:absolute;top:12px;right:12px}.collapse-icon-up[data-v-93891f39]{transform:rotate(-180deg)}.show-hr[data-v-93891f39]{border:1px dashed #000;margin:10px 0}.font[data-v-93891f39]{font-family:font_old_typer;font-size:18px}.message-show-content[data-v-93891f39]{white-space:pre-wrap;font-weight:500}.message-show-footer[data-v-93891f39]{color:var(--second-color);padding-right:50px;font-weight:400;position:relative}.button-dialog[data-v-93891f39]{color:#bfa07d;cursor:pointer;background-image:url(/assets/belt-DVqk2_uL.png);background-size:cover;border-radius:5px;margin-top:10px;margin-right:10px;font-size:16px;font-weight:600;display:inline-block}.button-dialog-text[data-v-93891f39]{padding:5px 12px}.settings-block[data-v-56e050c6]{height:40px}.settings-button[data-v-56e050c6]{float:right}.settings-icon[data-v-56e050c6]{width:20px}.name-text[data-v-56e050c6]{background-color:#ffffff1a;border-radius:3px;padding:3px}.settings-header[data-v-56e050c6]{margin-top:20px}.settings-hr[data-v-56e050c6]{margin:20px 0}.places-container[data-v-56e050c6]{flex-flow:column;display:flex}.scenario-block[data-v-1a024fe4]{cursor:pointer;background-color:#222;border:2px solid #222;border-radius:12px;width:160px;height:300px;margin:10px;position:relative}.scenario-content-block[data-v-1a024fe4]{padding:2px 10px}.scenario-block[data-v-1a024fe4]:hover{color:#63e2b7;border:2px solid #63e2b7}.scenario-image-block[data-v-1a024fe4]{background-color:#111;border-radius:10px;height:160px}.scenario-image-plus[data-v-1a024fe4]{background-color:#111;justify-content:center;align-items:center;font-size:120px;display:flex}.scenario-image[data-v-1a024fe4]{background-position:50%;background-size:cover}.scenario-title[data-v-1a024fe4]{padding:5px 0}.status-block[data-v-1a024fe4]{position:absolute;bottom:15px;right:15px}@media (width>=1024px){.scenario-block[data-v-1a024fe4]{width:250px;height:400px}.scenario-image-block[data-v-1a024fe4]{height:250px}.scenario-content-block[data-v-1a024fe4]{padding:4px 10px}}.scenario-title[data-v-2c9a6669]{margin-bottom:10px;font-size:24px}.scenario-image[data-v-2c9a6669]{width:100%;max-width:400px;margin-bottom:10px}.scenario-description[data-v-2c9a6669]{color:#aaa;margin-bottom:10px}.belt-block[data-v-82aef99e]{background-color:#000;background-image:url(/assets/belt-DVqk2_uL.png);background-size:cover;height:100%;position:relative}.shadow[data-v-82aef99e]{background-color:#000;width:100%;height:10px;position:absolute}.shadow-top[data-v-82aef99e]{top:0;box-shadow:0 -5px 10px #000}.shadow-bottom[data-v-82aef99e]{bottom:0;box-shadow:0 5px 10px #000}.text-with-font[data-v-e13ee3bd]{color:#bfa07d;letter-spacing:2px;font-family:font_old_typer;font-size:22px;font-weight:600;line-height:20px}.plate-block[data-v-35e450f5]{position:relative;box-shadow:0 0 10px #000}.metal-plate-block[data-v-35e450f5]{background-image:url(/assets/metal-BiL2PH1r.png);background-size:cover;border-radius:4px;height:100%;position:relative}.pin[data-v-35e450f5]{background-image:url(/assets/pin-CJfldk-j.png);background-size:cover;width:7px;height:7px;position:absolute}.pin-top-left[data-v-35e450f5]{top:3px;left:3px}.pin-top-right[data-v-35e450f5]{top:3px;right:3px}.pin-bottom-right[data-v-35e450f5]{bottom:3px;right:3px}.pin-bottom-left[data-v-35e450f5]{bottom:3px;left:3px}.form-custom[data-v-a21d8a4f]{color:#fff;z-index:1000;width:100%;position:fixed;bottom:0;left:0}.input-form[data-v-a21d8a4f]{z-index:1000;max-width:1920px;height:76px;margin:0 auto;position:relative}.controller-metal[data-v-a21d8a4f]{width:30px;height:calc(100% + 2px);position:absolute;top:-1px}.controller-metal-left[data-v-a21d8a4f]{left:-30px}.controller-metal-right[data-v-a21d8a4f]{right:-30px}.controller[data-v-a21d8a4f]{display:flex;position:relative}.game-input[data-v-a21d8a4f]{width:calc(100% - 175px);height:50px;position:relative;top:14px;left:15px}.game-input-run[data-v-a21d8a4f]{background-color:#0000;background-image:url(/assets/input_center-DZZtEHaZ.png);background-size:cover;border:0;width:100%;height:100%;padding-left:27px;font-family:font_old_typer;font-size:18px}.game-input-run[data-v-a21d8a4f]::placeholder{color:#333}.game-input-run[data-v-a21d8a4f]:focus{border:0;outline:none}.game-button-run-shadow[data-v-a21d8a4f]{width:150px;height:80px;position:absolute;top:-5px;right:10px;box-shadow:-5px 5px 10px #000}.game-button-run[data-v-a21d8a4f]{cursor:pointer;background-color:#0000;background-image:url(/assets/button-DdziMEJE.png);background-size:cover;border:0;width:155px;height:80px;margin:0;padding:0;font-size:1.5em;position:absolute;top:-5px;right:10px}.new-places-label[data-v-a21d8a4f],.all-places-label[data-v-a21d8a4f]{height:48px;position:absolute}.new-places-label[data-v-a21d8a4f]{width:40px;top:14px;left:85px}.all-places-label[data-v-a21d8a4f]{width:60px;top:14px;left:15px}.places-text[data-v-a21d8a4f]{color:#111;text-align:center;background-color:#d1cebd;background-image:url(/assets/paper-CuqvoKhN.jpg);background-size:cover;border:1px solid #9e9982;border-radius:7px;margin:0 1px;font-family:font_old_typer;font-size:1.4em;display:inline-block;box-shadow:0 -2px 5px #000}.places-text-number[data-v-a21d8a4f]{width:18px}.counters-block[data-v-a21d8a4f]{margin:20px 10px 20px 5px;position:absolute;top:-40px;left:23px}.counter-block[data-v-a21d8a4f]{margin:5px;display:inline-block}.icon-for-counter[data-v-a21d8a4f]{margin:0 4px;position:relative;top:3px}@media (width>=1025px){.center-block-700[data-v-a21d8a4f]{width:700px;margin:0 auto}}.bottom-margin[data-v-374fdb93]{height:calc(100dvh - 146px)}.smooth-scroll[data-v-374fdb93]{scroll-behavior:smooth}.edit-panel[data-v-374fdb93]{background-color:#222;border-radius:10px;margin:30px 0;padding:20px}.qr-main-block[data-v-374fdb93]{justify-content:center;align-items:center;display:flex}.qr-main-block-text[data-v-374fdb93]{text-align:left;margin:10px 0}.qr-block[data-v-374fdb93]{background-color:#fff;padding:12px;display:inline-block}@media (width>=1024px){.bottom-margin[data-v-374fdb93]{height:calc(100dvh - 146px)}}.user-block[data-v-4af0a140]{background-color:#222;border-radius:10px;margin:0 0 20px;padding:20px}.user-field[data-v-4af0a140]{margin:10px}.roles-buttons-block[data-v-4af0a140]{margin-top:20px} +:root{--vt-c-white:#fff;--vt-c-white-soft:#f8f8f8;--vt-c-white-mute:#f2f2f2;--vt-c-black:#181818;--vt-c-black-soft:#222;--vt-c-black-mute:#282828;--vt-c-indigo:#2c3e50;--vt-c-divider-light-1:#3c3c3c4a;--vt-c-divider-light-2:#3c3c3c1f;--vt-c-divider-dark-1:#545454a6;--vt-c-divider-dark-2:#5454547a;--vt-c-text-light-1:var(--vt-c-indigo);--vt-c-text-light-2:#3c3c3ca8;--vt-c-text-dark-1:var(--vt-c-white);--vt-c-text-dark-2:#ebebeba3;--main-color:#22323c;--second-color:#614a16;--main-back-color:#f0f0f0;--main-back-item-color:#fefefe;--color-background:var(--vt-c-white);--color-background-soft:var(--vt-c-white-soft);--color-background-mute:var(--vt-c-white-mute);--color-border:var(--vt-c-divider-light-2);--color-border-hover:var(--vt-c-divider-light-1);--color-heading:var(--vt-c-text-light-1);--color-text:var(--vt-c-text-light-1);--section-gap:160px}@media (prefers-color-scheme:dark){:root{--color-background:var(--vt-c-black);--color-background-soft:var(--vt-c-black-soft);--color-background-mute:var(--vt-c-black-mute);--color-border:var(--vt-c-divider-dark-2);--color-border-hover:var(--vt-c-divider-dark-1);--color-heading:var(--vt-c-text-dark-1);--color-text:var(--vt-c-text-dark-2)}}*,:before,:after{box-sizing:border-box;margin:0;font-weight:400}body{min-height:100vh;color:#eee;background:var(--color-background);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scrollbar-width:none;background-color:#111;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;line-height:1.6;transition:color .5s,background-color .5s;overflow:hidden}@font-face{font-family:font_old_typer;src:url(/assets/a_OldTyper-BsgRTrmO.ttf)}.height80{height:80vh}.content-block{margin-top:70px}.center-block-custom{scrollbar-width:none;height:calc(100vh - 150px);margin-top:70px;overflow-y:auto}.center-block-custom::-webkit-scrollbar{display:none}.width700,.width1200{margin:0 auto;padding:10px}.display-table{flex-flow:wrap;justify-content:center;display:flex}@media (width>=1024px){.center-block-custom{height:calc(100dvh - 70px);margin:70px auto 0}.width700{width:700px;margin:0 auto;padding:20px}.width1200{width:1200px;margin:0 auto;padding:20px}.center-middle-block-custom{place-items:center;display:grid}}.menu-block[data-v-5e423637]{background-color:#222;justify-content:space-between;align-items:center;width:100%;height:70px;padding:20px;display:flex;position:fixed;top:0;left:0}.menu-item-block[data-v-5e423637]{cursor:pointer;margin-left:10px;padding:5px;font-size:1.1em;display:inline-block}.menu-item-block[data-v-5e423637]:hover{color:#63e2b7;opacity:.8}.right[data-v-5e423637]{margin-left:auto}.active[data-v-5e423637]{color:#63e2b7}@media (width>=1024px){.burger-button[data-v-5e423637]{display:none}}@media (width<1024px){.menu-buttons-block[data-v-5e423637]{background-color:#222;flex-direction:column;width:100%;padding-bottom:5px;display:flex;position:fixed;top:70px;left:0}.menu-buttons-block div[data-v-5e423637]{padding:15px 5px}.menu-buttons-block-active[data-v-5e423637]{position:relative;top:-1000px}.burger-icon[data-v-5e423637]{position:relative;top:5px}}.scenario-block[data-v-d72c95c2]{cursor:pointer;background-color:#222;border:2px solid #222;border-radius:12px;width:160px;height:300px;margin:10px;position:relative}.scenario-content-block[data-v-d72c95c2]{padding:2px 10px}.scenario-block[data-v-d72c95c2]:hover{color:#63e2b7;border:2px solid #63e2b7}.scenario-image-block[data-v-d72c95c2]{background-color:#111;border-radius:10px;height:160px}.scenario-image[data-v-d72c95c2]{background-position:50%;background-size:cover}.scenario-title[data-v-d72c95c2]{padding:5px 0}.scenario-description[data-v-d72c95c2]{color:#aaa;display:none}.status-block[data-v-d72c95c2]{position:absolute;bottom:15px;right:15px}@media (width>=1024px){.scenario-block[data-v-d72c95c2]{width:250px;height:400px}.scenario-image-block[data-v-d72c95c2]{height:250px}.scenario-content-block[data-v-d72c95c2]{padding:4px 10px}.scenario-description[data-v-d72c95c2]{color:#aaa;display:block}}.game-block[data-v-45eae4d9]{background-color:#222;border-radius:10px;margin:10px 0;padding:20px}.game-block[data-v-45eae4d9]:hover{cursor:pointer;color:#63e2b7}.game-title[data-v-45eae4d9]{margin-bottom:10px;font-size:24px}.game-description[data-v-45eae4d9]{color:#aaa;margin-bottom:10px}.team-block[data-v-d657389a]{background-color:#222;border:1px solid #222;border-radius:10px;margin:10px 0}.team-block-hover[data-v-d657389a]:hover{color:#63e2b7;cursor:pointer;border:1px solid #63e2b7}.team-content-block[data-v-d657389a]{padding:20px}.team-name-block[data-v-d657389a]{font-size:20px;font-weight:600}.settings-button[data-v-d657389a]{float:right;margin-left:10px}.settings-icon[data-v-d657389a]{width:20px}.link-button[data-v-d657389a]{width:100%;margin-top:20px}.place-image-plus[data-v-d657389a]{justify-content:center;align-items:center;font-size:30px;display:flex}.name-text[data-v-d657389a]{background-color:#ffffff1a;border-radius:3px;padding:3px}.qr-block[data-v-d657389a]{background-color:#fff;padding:12px;display:inline-block}.font-text{font-family:font_old_typer}.content-text{float:right;position:relative;top:100px;right:0}@media (width>=1024px){.font-text{position:relative;left:-50px}.content-text{position:relative;top:100px;right:-50px}}.sign-card[data-v-c1fd645b]{background-color:#1d1d1d}.form-label[data-v-c1fd645b]{margin-top:10px}.form-button-wrapper[data-v-c1fd645b]{justify-content:center;display:flex}.docs-link[data-v-c1fd645b]{color:#45aa89}.docs-link[data-v-c1fd645b]:hover{color:#63e2b7}@media (width>=1024px){.sign-card[data-v-c1fd645b]{width:380px}}.main[data-v-dfe3093b]{position:relative}.message-cloud[data-v-dfe3093b],.message-cloud-2[data-v-dfe3093b],.message-cloud-3[data-v-dfe3093b]{background-color:bisque}.message-cloud[data-v-dfe3093b]{color:#000;margin:15px 0;padding:16px;font-family:main;font-size:18px;font-weight:900;line-height:20px;position:relative}.message-cloud[data-v-dfe3093b],.message-cloud-2[data-v-dfe3093b],.message-cloud-3[data-v-dfe3093b]{background-image:url(/assets/paper-CuqvoKhN.jpg);background-size:cover;border-radius:5px;display:flow-root;box-shadow:0 0 5px #000}.message-cloud-2[data-v-dfe3093b],.message-cloud-3[data-v-dfe3093b]{position:absolute;top:0;left:0}.message-cloud-2[data-v-dfe3093b]{filter:brightness(50%);width:100%;height:100%;transform:rotate(-3deg)}.message-cloud-3[data-v-dfe3093b]{filter:brightness(80%);width:100%;height:100%;transform:rotate(2deg)}.hr[data-v-93891f39]{border:1px dashed #eee;margin:10px 0}.place-block-hover[data-v-93891f39],.place-block[data-v-93891f39]{background-color:#222;border:1px solid #222;border-radius:10px;margin:10px 0;padding:20px}.place-block-hover[data-v-93891f39]:hover{color:#63e2b7;cursor:pointer;border:1px solid #63e2b7}.place-image-plus[data-v-93891f39]{justify-content:center;align-items:center;font-size:30px;display:flex}.show-editor-block[data-v-93891f39]{cursor:pointer}.message-content[data-v-93891f39]{white-space:pre-wrap;font-weight:500}.gray-block[data-v-93891f39]{color:#777;margin-top:5px}.application-block[data-v-93891f39]{color:#deb887;margin-right:5px}.door-block[data-v-93891f39]{color:#eee;background-color:#222;border-radius:5px;margin:10px 5px 10px 0;padding:5px 10px;display:inline-block}.door-add-block[data-v-93891f39]{color:#eee;background-color:#222;border-radius:5px;padding:10px}.key-block[data-v-93891f39]{color:gold;margin-left:10px}.lock-icon[data-v-93891f39]{position:relative;top:2px}.door-field[data-v-93891f39]{margin-top:10px}.need-keys-text[data-v-93891f39]{color:gold;margin:15px 0 0;padding:0}.slot-block[data-v-93891f39]{margin-top:10px}.plus-minus-buttons[data-v-93891f39]{text-align:center;color:#eee;border:1px solid #444;border-radius:40px;margin:0 0 10px 5px;padding:0 13px;font-size:25px}.plus-minus-buttons[data-v-93891f39]:hover{cursor:pointer;color:#63e2b7}.message-image-border[data-v-93891f39]{float:left;background-image:url(/assets/paper_white-ZSlTzOTx.jpg);background-size:cover;width:40%;max-width:200px;margin-right:15px;padding:7px;transform:rotate(-3deg);box-shadow:0 3px 15px #626262}.message-image[data-v-93891f39]{width:100%}.message-edit-image[data-v-93891f39]{width:135px;height:135px}.message-header[data-v-93891f39]{padding-right:50px;font-size:20px}.message-footer[data-v-93891f39]{color:#deb887;padding-right:50px;font-weight:400;position:relative}.message-show-header[data-v-93891f39]{padding-right:50px;font-size:20px}.collapse-icon[data-v-93891f39]{cursor:pointer;background-image:url(/assets/collapse-B6YzUtGl.png);background-position:50%;background-size:cover;width:45px;height:28px;position:absolute;top:12px;right:12px}.collapse-icon-up[data-v-93891f39]{transform:rotate(-180deg)}.show-hr[data-v-93891f39]{border:1px dashed #000;margin:10px 0}.font[data-v-93891f39]{font-family:font_old_typer;font-size:18px}.message-show-content[data-v-93891f39]{white-space:pre-wrap;font-weight:500}.message-show-footer[data-v-93891f39]{color:var(--second-color);padding-right:50px;font-weight:400;position:relative}.button-dialog[data-v-93891f39]{color:#bfa07d;cursor:pointer;background-image:url(/assets/belt-DVqk2_uL.png);background-size:cover;border-radius:5px;margin-top:10px;margin-right:10px;font-size:16px;font-weight:600;display:inline-block}.button-dialog-text[data-v-93891f39]{padding:5px 12px}.settings-block[data-v-56e050c6]{height:40px}.settings-button[data-v-56e050c6]{float:right}.settings-icon[data-v-56e050c6]{width:20px}.name-text[data-v-56e050c6]{background-color:#ffffff1a;border-radius:3px;padding:3px}.settings-header[data-v-56e050c6]{margin-top:20px}.settings-hr[data-v-56e050c6]{margin:20px 0}.places-container[data-v-56e050c6]{flex-flow:column;display:flex}.scenario-block[data-v-1a024fe4]{cursor:pointer;background-color:#222;border:2px solid #222;border-radius:12px;width:160px;height:300px;margin:10px;position:relative}.scenario-content-block[data-v-1a024fe4]{padding:2px 10px}.scenario-block[data-v-1a024fe4]:hover{color:#63e2b7;border:2px solid #63e2b7}.scenario-image-block[data-v-1a024fe4]{background-color:#111;border-radius:10px;height:160px}.scenario-image-plus[data-v-1a024fe4]{background-color:#111;justify-content:center;align-items:center;font-size:120px;display:flex}.scenario-image[data-v-1a024fe4]{background-position:50%;background-size:cover}.scenario-title[data-v-1a024fe4]{padding:5px 0}.status-block[data-v-1a024fe4]{position:absolute;bottom:15px;right:15px}@media (width>=1024px){.scenario-block[data-v-1a024fe4]{width:250px;height:400px}.scenario-image-block[data-v-1a024fe4]{height:250px}.scenario-content-block[data-v-1a024fe4]{padding:4px 10px}}.scenario-title[data-v-2c9a6669]{margin-bottom:10px;font-size:24px}.scenario-image[data-v-2c9a6669]{width:100%;max-width:400px;margin-bottom:10px}.scenario-description[data-v-2c9a6669]{color:#aaa;margin-bottom:10px}.belt-block[data-v-82aef99e]{background-color:#000;background-image:url(/assets/belt-DVqk2_uL.png);background-size:cover;height:100%;position:relative}.shadow[data-v-82aef99e]{background-color:#000;width:100%;height:10px;position:absolute}.shadow-top[data-v-82aef99e]{top:0;box-shadow:0 -5px 10px #000}.shadow-bottom[data-v-82aef99e]{bottom:0;box-shadow:0 5px 10px #000}.text-with-font[data-v-e13ee3bd]{color:#bfa07d;letter-spacing:2px;font-family:font_old_typer;font-size:22px;font-weight:600;line-height:20px}.plate-block[data-v-35e450f5]{position:relative;box-shadow:0 0 10px #000}.metal-plate-block[data-v-35e450f5]{background-image:url(/assets/metal-BiL2PH1r.png);background-size:cover;border-radius:4px;height:100%;position:relative}.pin[data-v-35e450f5]{background-image:url(/assets/pin-CJfldk-j.png);background-size:cover;width:7px;height:7px;position:absolute}.pin-top-left[data-v-35e450f5]{top:3px;left:3px}.pin-top-right[data-v-35e450f5]{top:3px;right:3px}.pin-bottom-right[data-v-35e450f5]{bottom:3px;right:3px}.pin-bottom-left[data-v-35e450f5]{bottom:3px;left:3px}.form-custom[data-v-a21d8a4f]{color:#fff;z-index:1000;width:100%;position:fixed;bottom:0;left:0}.input-form[data-v-a21d8a4f]{z-index:1000;max-width:1920px;height:76px;margin:0 auto;position:relative}.controller-metal[data-v-a21d8a4f]{width:30px;height:calc(100% + 2px);position:absolute;top:-1px}.controller-metal-left[data-v-a21d8a4f]{left:-30px}.controller-metal-right[data-v-a21d8a4f]{right:-30px}.controller[data-v-a21d8a4f]{display:flex;position:relative}.game-input[data-v-a21d8a4f]{width:calc(100% - 175px);height:50px;position:relative;top:14px;left:15px}.game-input-run[data-v-a21d8a4f]{background-color:#0000;background-image:url(/assets/input_center-DZZtEHaZ.png);background-size:cover;border:0;width:100%;height:100%;padding-left:27px;font-family:font_old_typer;font-size:18px}.game-input-run[data-v-a21d8a4f]::placeholder{color:#333}.game-input-run[data-v-a21d8a4f]:focus{border:0;outline:none}.game-button-run-shadow[data-v-a21d8a4f]{width:150px;height:80px;position:absolute;top:-5px;right:10px;box-shadow:-5px 5px 10px #000}.game-button-run[data-v-a21d8a4f]{cursor:pointer;background-color:#0000;background-image:url(/assets/button-DdziMEJE.png);background-size:cover;border:0;width:155px;height:80px;margin:0;padding:0;font-size:1.5em;position:absolute;top:-5px;right:10px}.new-places-label[data-v-a21d8a4f],.all-places-label[data-v-a21d8a4f]{height:48px;position:absolute}.new-places-label[data-v-a21d8a4f]{width:40px;top:14px;left:85px}.all-places-label[data-v-a21d8a4f]{width:60px;top:14px;left:15px}.places-text[data-v-a21d8a4f]{color:#111;text-align:center;background-color:#d1cebd;background-image:url(/assets/paper-CuqvoKhN.jpg);background-size:cover;border:1px solid #9e9982;border-radius:7px;margin:0 1px;font-family:font_old_typer;font-size:1.4em;display:inline-block;box-shadow:0 -2px 5px #000}.places-text-number[data-v-a21d8a4f]{width:18px}.counters-block[data-v-a21d8a4f]{margin:20px 10px 20px 5px;position:absolute;top:-40px;left:23px}.counter-block[data-v-a21d8a4f]{margin:5px;display:inline-block}.icon-for-counter[data-v-a21d8a4f]{margin:0 4px;position:relative;top:3px}@media (width>=1025px){.center-block-700[data-v-a21d8a4f]{width:700px;margin:0 auto}}.bottom-margin[data-v-374fdb93]{height:calc(100dvh - 146px)}.smooth-scroll[data-v-374fdb93]{scroll-behavior:smooth}.edit-panel[data-v-374fdb93]{background-color:#222;border-radius:10px;margin:30px 0;padding:20px}.qr-main-block[data-v-374fdb93]{justify-content:center;align-items:center;display:flex}.qr-main-block-text[data-v-374fdb93]{text-align:left;margin:10px 0}.qr-block[data-v-374fdb93]{background-color:#fff;padding:12px;display:inline-block}@media (width>=1024px){.bottom-margin[data-v-374fdb93]{height:calc(100dvh - 146px)}}.user-block[data-v-4af0a140]{background-color:#222;border-radius:10px;margin:0 0 20px;padding:20px}.user-field[data-v-4af0a140]{margin:10px}.roles-buttons-block[data-v-4af0a140]{margin-top:20px} diff --git a/dist/index.html b/dist/index.html index 437f64e..f11405d 100644 --- a/dist/index.html +++ b/dist/index.html @@ -5,8 +5,8 @@ Вечерний детектив - - + +
diff --git a/src/components/GamePage.vue b/src/components/GamePage.vue index a36e5ff..d3895bb 100644 --- a/src/components/GamePage.vue +++ b/src/components/GamePage.vue @@ -25,7 +25,9 @@ const showSettingsModal = ref(false) const showGiveApplicationModal = ref(false) const showAddTeamModal = ref(false) const showDeleteTeamModal = ref(false) +const showDeleteGameModal = ref(false) const newTeamName = ref('') +const deletedGameName = ref('') const showQR = ref(false) const urlQR = ref('') const titleQR = ref('') @@ -176,6 +178,18 @@ async function confirmDeleteTeam() { showDeleteTeamModal.value = false } +async function deleteGame() { + const res = await client.DeleteGame({ + id: game.value.id, + }) + if (res.error != '') { + message.error(res.error!) + return + } + message.success('Игра удалена') + router.push('/games') +} + function getTeamStoryURL(id: number, password: string): string { return getURL() + '/team-story/' + id + '?password=' + password } @@ -323,6 +337,10 @@ useSimplePolling(() => { Настройки + + Удалить игру + @@ -485,6 +503,31 @@ useSimplePolling(() => { + + + + + +

+ Введите название игры + {{ game.name }} чтобы удалить её +

+ +
+ + +
+
+