1 line
5.5 KiB
JavaScript
1 line
5.5 KiB
JavaScript
import{Bt as e,Ct as t,D as n,E as r,M as i,N as a,O as o,Q as s,T as c,Vt as l,X as u,j as d,st as f,u as p,vt as m,y as h}from"./client-CmW03vy2.js";import{t as g}from"./Card-CY_8K3Ow.js";import{t as _}from"./Modal-DR2dl3w4.js";import{t as v}from"./Button-i2daEBlU.js";import{n as y,t as b}from"./Upload-BOpnfKnv.js";import{t as x}from"./Input-t75CoEL6.js";import{t as S}from"./Tag-B9_nlHUt.js";import{n as C,r as w,t as T}from"./es-C1uQzVbW.js";import{t as E}from"./Flex-CqRGAO4h.js";import{t as D}from"./text-BMaErnj9.js";import{t as O}from"./HeaderMenu-C6UqgsUb.js";import{t as k}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as A}from"./binary_client-DzxwzYNZ.js";var j={xmlns:`http://www.w3.org/2000/svg`,"xmlns:xlink":`http://www.w3.org/1999/xlink`,viewBox:`0 0 32 32`},M=a({name:`Archive`,render:function(e,t){return u(),o(`svg`,j,t[0]||=[c(`path`,{d:`M14 19h4v2h-4z`,fill:`currentColor`},null,-1),c(`path`,{d:`M6 2v26a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V2zm18 26H8V16h16zm0-14H8v-4h16zM8 8V4h16v4z`,fill:`currentColor`},null,-1)])}}),N={class:`center-block-custom`},P={class:`width1200 display-table catalog-grid`},F={class:`scenario-image-block scenario-image-plus import-icon`},I=[`onClick`],L={class:`scenario-content-block`},R={class:`scenario-title`},z={class:`scenario-label`},B=k(a({__name:`ScenariosPage`,setup(a){let k=C(),j=A(),B=m([]),V=p(),H=w(),U=m(!1),W=m(``),G=m(!1),K=m([]),q=m(!1);async function J(){try{B.value=[];let e=await k.GetMyScenarios({});B.value=e.scenarios}catch(e){H.error(e instanceof Error?e.message:`Не удалось загрузить сценарии`)}}async function Y(e){try{await X((await k.AddScenario({name:e})).ID)}catch(e){H.error(e instanceof Error?e.message:`Не удалось создать сценарий`)}}async function X(e){V.push(`/scenarios/`+e+`/editor`)}function Z(){K.value=[],G.value=!1}async function Q(){let e=K.value[0]?.file;if(e){q.value=!0;try{let t=await j.uploadScenarioArchive(e);H.success(`Сценарий импортирован из архива`),Z(),await X(t.ID)}catch(e){H.error(e instanceof Error?e.message:`Не удалось импортировать архив`)}finally{q.value=!1}}}return J(),(a,p)=>(u(),o(h,null,[c(`div`,N,[c(`div`,P,[c(`div`,{class:`scenario-block`,onClick:p[0]||=e=>U.value=!0},[...p[11]||=[c(`div`,{class:`scenario-image-block scenario-image-plus`},`+`,-1),c(`div`,{class:`scenario-content-block`},[c(`p`,{class:`scenario-title`},`Создать новый сценарий`)],-1)]]),c(`div`,{class:`scenario-block`,onClick:p[1]||=e=>G.value=!0},[c(`div`,F,[i(t(T),null,{default:f(()=>[i(t(M))]),_:1})]),p[12]||=c(`div`,{class:`scenario-content-block`},[c(`p`,{class:`scenario-title`},`Импортировать из архива`)],-1)]),(u(!0),o(h,null,s(B.value,i=>(u(),o(`div`,{class:`scenario-block`,onClick:e=>X(i.ID),key:i.ID},[c(`div`,{class:`scenario-image-block scenario-image`,style:e({backgroundImage:`url(${i.image})`})},null,4),c(`div`,L,[c(`p`,R,l(i.name),1),c(`p`,z,[i.status==`public`?(u(),r(t(S),{key:0,bordered:!1,type:`success`,class:`status-block`},{default:f(()=>[...p[13]||=[d(`Опубликовано`,-1)]]),_:1})):n(``,!0),i.status==`draft`?(u(),r(t(S),{key:1,bordered:!1,type:`warning`,class:`status-block`},{default:f(()=>[...p[14]||=[d(`В разработке`,-1)]]),_:1})):n(``,!0)])])],8,I))),128))])]),i(t(_),{show:U.value,"onUpdate:show":p[5]||=e=>U.value=e},{default:f(()=>[i(t(g),{style:{width:`600px`},title:`Создание сценария`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":f(()=>[i(t(v),{onClick:p[2]||=e=>U.value=!1},{default:f(()=>[...p[15]||=[d(` x `,-1)]]),_:1})]),footer:f(()=>[i(t(E),{justify:`end`},{default:f(()=>[i(t(v),{onClick:p[4]||=e=>Y(W.value),disabled:W.value.length==0},{default:f(()=>[...p[16]||=[d(` Создать `,-1)]]),_:1},8,[`disabled`])]),_:1})]),default:f(()=>[i(t(x),{value:W.value,"onUpdate:value":p[3]||=e=>W.value=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`])]),_:1})]),_:1},8,[`show`]),i(t(_),{show:G.value,"onUpdate:show":p[10]||=e=>G.value=e},{default:f(()=>[i(t(g),{style:{width:`600px`},title:`Импорт сценария из архива`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":f(()=>[i(t(v),{onClick:p[6]||=e=>Z()},{default:f(()=>[...p[17]||=[d(` x `,-1)]]),_:1})]),footer:f(()=>[i(t(E),{justify:`end`},{default:f(()=>[i(t(v),{onClick:p[8]||=e=>Z()},{default:f(()=>[...p[19]||=[d(`Отмена`,-1)]]),_:1}),i(t(v),{type:`primary`,loading:q.value,disabled:K.value.length==0,onClick:p[9]||=e=>Q()},{default:f(()=>[...p[20]||=[d(` Импортировать `,-1)]]),_:1},8,[`loading`,`disabled`])]),_:1})]),default:f(()=>[p[21]||=c(`p`,{class:`import-hint`},` Выберите ZIP-архив сценария (файл scenario.json + папка images). Архив можно получить через «Скачать архив» в настройках сценария. `,-1),i(t(b),{max:1,"file-list":K.value,"onUpdate:fileList":p[7]||=e=>K.value=e,accept:`.zip,application/zip,application/x-zip-compressed,application/octet-stream`},{default:f(()=>[i(t(y),null,{default:f(()=>[i(t(D),{style:{"font-size":`16px`}},{default:f(()=>[...p[18]||=[d(` Щелкните или перетащите ZIP-архив в эту область `,-1)]]),_:1})]),_:1})]),_:1},8,[`file-list`])]),_:1})]),_:1},8,[`show`]),i(O,{active:`scenarios`})],64))}}),[[`__scopeId`,`data-v-05f24200`]]),V=a({__name:`ScenariosView`,setup(e){return(e,t)=>(u(),r(B))}});export{V as default}; |