generated from VLADIMIR/template_frontend
1 line
24 KiB
JavaScript
1 line
24 KiB
JavaScript
import{C as e,D as t,Ft as n,G as r,J as i,O as a,S as o,_t as s,b as c,ft as l,h as u,k as d,l as f,q as p,tt as m,w as h,x as g}from"./client-Cpk7Zqeq.js";import{t as _}from"./Card-C3qoUF8q.js";import{t as v}from"./Modal-wv6NvzAh.js";import{t as y}from"./Button-So9RkBwP.js";import{n as ee,t as b}from"./Upload-U5d6C-na.js";import{n as te,r as x,t as ne}from"./PlaceBlock-DIsHNhxS.js";import{t as S}from"./Input-B-BGqKBA.js";import{t as re}from"./Tag-DBNhFMiS.js";import{t as ie}from"./Alert-BcUKnssM.js";import{t as ae}from"./use-message-CUjJ01YL.js";import{t as C}from"./Space-CRuh_NvC.js";import{t as w}from"./Flex-Dj_HKfC5.js";import{t as T}from"./text-ddaSQACi.js";import{n as oe,t as se}from"./index-CGsLOuAb.js";import{n as ce,t as le}from"./es-DPDNoR0w.js";import{t as ue}from"./HeaderMenu-C9xMHJBS.js";import{t as E}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as de}from"./Settings-C1bFEHCM.js";import{t as fe}from"./binary_client-RNADXS9X.js";import{r as pe}from"./application-BfN6qBcR.js";var D={key:1,class:`place-block`},O={class:`message-header`},k={class:`message-content`},A={key:0},j={class:`correct-answer`},M={key:1,class:`intro-empty`},N={key:3,class:`place-block`},P={class:`slot-block`},me=E(d({__name:`QuestionBlock`,props:{newQuestionCode:{type:String},newQuestionText:{type:String},newQuestionAnswer:{type:String},question:{type:Object},mode:{type:String,required:!0}},emits:[`update:newQuestionCode`,`update:newQuestionText`,`update:newQuestionAnswer`,`update:mode`],setup(o,{emit:c}){let l=o,d=c,f=e=>{d(`update:newQuestionCode`,e)},p=e=>{d(`update:newQuestionText`,e)},_=e=>{d(`update:newQuestionAnswer`,e)},v=e=>{d(`update:mode`,e)};return(c,d)=>(r(),h(u,null,[o.mode==`mini-add`?(r(),h(`div`,{key:0,class:`place-block-hover show-editor-block`,onClick:d[0]||=e=>v(`add`)},[...d[5]||=[g(`p`,{class:`place-image-plus`},`+`,-1)]])):e(``,!0),o.mode==`add`?(r(),h(`div`,D,[a(s(C),{vertical:``},{default:m(()=>[a(s(x),null,{default:m(()=>[a(s(S),{style:{width:`25%`},value:o.newQuestionCode,"onUpdate:value":f,type:`text`,placeholder:`В-1`},null,8,[`value`]),a(s(S),{style:{width:`75%`},value:o.newQuestionText,"onUpdate:value":p,type:`text`,placeholder:`Кто украл пастуха?`},null,8,[`value`])]),_:1}),a(s(S),{value:o.newQuestionAnswer,"onUpdate:value":_,type:`textarea`,autosize:{minRows:2},placeholder:`Правильный ответ (виден только автору и организаторам)`},null,8,[`value`]),i(c.$slots,`default`,{},void 0,!0)]),_:3})])):e(``,!0),o.mode==`show-editor`?(r(),h(`div`,{key:2,class:`place-block-hover show-editor-block`,onClick:d[1]||=e=>v(`edit`)},[g(`div`,O,n(l.question?.code)+`: `+n(l.question?.text),1),d[8]||=g(`hr`,{class:`hr`},null,-1),g(`div`,k,[l.question?.answer?(r(),h(`span`,A,[d[6]||=t(` Ответ:`,-1),d[7]||=g(`br`,null,null,-1),g(`span`,j,n(l.question.answer),1)])):(r(),h(`span`,M,`Ответ не задан`))])])):e(``,!0),o.mode==`edit`?(r(),h(`div`,N,[a(s(C),{vertical:``},{default:m(()=>[a(s(x),null,{default:m(()=>[a(s(S),{style:{width:`25%`},value:l.question.code,"onUpdate:value":d[2]||=e=>l.question.code=e,type:`text`,placeholder:`В-1`},null,8,[`value`]),a(s(S),{style:{width:`75%`},value:l.question.text,"onUpdate:value":d[3]||=e=>l.question.text=e,type:`text`,placeholder:`Кто украл пастуха?`},null,8,[`value`])]),_:1}),d[10]||=g(`p`,{class:`settings-header`},`Правильный ответ`,-1),a(s(S),{value:l.question.answer,"onUpdate:value":d[4]||=e=>l.question.answer=e,type:`textarea`,autosize:{minRows:2},placeholder:`Правильный ответ (виден только автору и организаторам)`},null,8,[`value`]),a(s(T),{class:`hint`,depth:`3`},{default:m(()=>[...d[9]||=[t(` Смена кода вопроса не переносит ответы команд, отправленные под старым кодом. `,-1)]]),_:1}),g(`div`,P,[i(c.$slots,`default`,{},void 0,!0)])]),_:3})])):e(``,!0)],64))}}),[[`__scopeId`,`data-v-7bd7e4c0`]]),he={class:`width700`},ge={class:`places-container`},_e={class:`settings-block`},ve=[`src`],ye=[`src`],be=[`aria-label`],F=E(d({__name:`ScenariosEditorPage`,setup(i){let d=se(),x=ce(),E=fe(),D=f().params.id,O=l(!1),k=l(``),A=l(``),j=l(!1),M=ae(),N=l([]),P=l({id:void 0,name:void 0,story:void 0,author:void 0,status:void 0,updatedAt:void 0,createdAt:void 0,publishedAt:void 0,averageRating:void 0,reviewsCount:void 0}),F=l([]),I=l(!1),L=l({text:``,audio:``}),R=l(`show-editor`),z=l({text:``,video:``}),B=l([]),V=l(!1),xe=c(()=>pe(z.value.video));function H(){z.value={text:``,video:``,...P.value.story?.conclusion},B.value=[]}function Se(){z.value.video=``,B.value=[]}async function Ce(e=!1){V.value=!0;try{let t=qe(z.value.video);if(!e&&B.value.length){let e=B.value[0].file;if(!e)return;let n=await G(e,`scenarios_`+P.value.id+`_conclusion_`+e.name);if(!n.filename)return;if(n.fileType!==`video`){M.error(`Закрывашка должна содержать видео MP4 или WebM`);return}t=n.filename}let n=e?{text:``,video:``}:{text:z.value.text,video:t},r=await x.UpdateScenarioConclusion({id:P.value.id,conclusion:n});if(r.error){M.error(r.error);return}P.value.story.conclusion=n,H(),M.success(e?`Закрывашка удалена`:`Закрывашка сохранена`)}catch{M.error(`Не удалось сохранить закрывашку`)}finally{V.value=!1}}let we=c(()=>P.value.story?.places||[]),Te=l(null),U=new Map;function Ee(e){let t=e?we.value.find(t=>(t.oldCode??t.code)===e):void 0,n=t&&U.get(t),r=Te.value;if(!n||!r){M.error(e?`Точка «${e}» не найдена`:`У действия не указан код точки`);return}n.focus({preventScroll:!0}),r.scrollTo({top:r.scrollTop+n.getBoundingClientRect().top-r.getBoundingClientRect().top-10,behavior:`smooth`})}let De=c(()=>P.value.story?.questions||[]);async function W(e){let t=await x.GetFullScenario({id:e});if(t.error!=``){M.error(t.error);return}P.value=t.scenario,H(),P.value.story?.places?.forEach(e=>{let t=e;t.oldCode=t.code,t.mode=`show-editor`}),P.value.story?.questions?.forEach(e=>{let t=e;t.oldCode=t.code,t.mode=`show-editor`}),L.value=P.value.story?.introduction||{text:``,audio:``},R.value=`show-editor`}W(Number(D));async function Oe(e){let t=await x.DeleteScenario({id:e});if(t.error!=``){M.error(t.error);return}oe.push(`/scenarios`)}async function ke(e){let t=await x.PublicScenario({id:e});if(t.error!=``){M.error(t.error);return}await W(Number(D)),k.value=``,O.value=!1}async function Ae(e,t){let n=new Date().toISOString(),r=await x.AddGame({name:(`Тестовая игра: `+e).trim(),description:`Тестовая игра`,location:``,format:`online`,startAt:n,scenarioId:t});if(r.error!=``){M.error(r.error);return}let i=await x.AddTeam({name:`Тестовая команда`,captainEmail:``,gameId:r.id});if(i.error!=``){M.error(i.error);return}oe.push(`/team-story/`+i.id+`?password=`+i.password)}async function je(e){let t=await x.DraftScenario({id:e});if(t.error!=``){M.error(t.error);return}await W(Number(D)),k.value=``,O.value=!1}async function Me(){j.value=!0;try{let{blob:e,filename:t}=await E.downloadScenarioArchive(P.value.id),n=URL.createObjectURL(e),r=document.createElement(`a`);r.href=n,r.download=t,document.body.appendChild(r),r.click(),r.remove(),setTimeout(()=>URL.revokeObjectURL(n),1e3),M.success(`Архив сценария скачан`)}catch(e){M.error(e instanceof Error?e.message:`Не удалось скачать архив`)}finally{j.value=!1}}async function G(e,t){if(!e)return{filename:``,fileType:``};let n=await e.arrayBuffer(),r=new Uint8Array(n),i=await x.UploadFile({filename:t,data:Pe(r)});return i.error==``?{filename:i.filename||``,fileType:i.file_type||``}:(M.error(i.error),{filename:``,fileType:``})}async function Ne(){let e=``;if(N.value&&N.value.length>0){let t=N.value[0].file||null;if(t==null)return;let n=await G(t,`scenarios_`+P.value.id+`_`+t.name);if(n.filename===``)return;e=n.filename}let t=await x.UpdateScenario({id:P.value.id,name:P.value.name,description:P.value.description,image:e});if(t.error!=``){M.error(t.error);return}await W(Number(D)),O.value=!1}function Pe(e){let t=Fe(e);return btoa(t)}function Fe(e){let t=``;for(let n=0;n<e.length;n+=5e4){let r=e.slice(n,n+5e4);t+=String.fromCharCode(...r)}return t}let K=l(``),q=l(``),J=l(``),Y=l(`mini-add`);async function Ie(){let e=await x.AddScenarioPlace({id:P.value.id,place:{code:K.value,name:q.value,text:J.value,image:void 0,hidden:void 0,applications:void 0,doors:void 0,keys:void 0}});if(e.error!=``){M.error(e.error);return}await W(Number(D)),K.value=``,q.value=``,J.value=``,Y.value=`add`}async function Le(){K.value=``,q.value=``,J.value=``,Y.value=`mini-add`}async function Re(e,t){for(let n of t.doors||[])if(e.story?.places?.find(e=>e.code==n.code)==null){let t=await x.AddScenarioPlace({id:e.id,place:{code:n.code,name:n.name,text:void 0,image:void 0,hidden:!0,applications:void 0,doors:void 0,keys:void 0}});if(t.error!=``){M.error(t.error);return}}}async function ze(e){await W(Number(D)),e.mode=`show-editor`}async function Be(e){if(e.fileList&&e.fileList.length>0){let t=e.fileList[0].file||null;if(t==null)return;let n=await G(t,`scenarios_`+P.value.id+`_place_`+e.code+`_`+t.name);if(n.filename===``)return;e.image=n.filename}let t=e.applications||[];for(let n of t){if(!n.fileList||n.fileList.length==0)continue;let t=n.fileList[0].file||null;if(t==null)continue;let r=await G(t,`scenarios_`+P.value.id+`_place_`+e.code+`_app_`+t.name);if(r.filename===``)return;n.image=r.filename,n.file_type=r.fileType}await Re(P.value,e);let n=await x.UpdateScenarioPlace({id:P.value.id,code:e.oldCode,place:e});if(n.error!=``){M.error(n.error);return}await W(Number(D)),e.mode=`show-editor`}async function Ve(e){let t=await x.DeleteScenarioPlace({id:P.value.id,code:e.oldCode});if(t.error!=``){M.error(t.error);return}await W(Number(D))}let X=l(``),Z=l(``),Q=l(``),$=l(`mini-add`);async function He(){let e=await x.AddScenarioQuestion({id:P.value.id,question:{code:X.value,text:Z.value,answer:Q.value}});if(e.error!=``){M.error(e.error);return}await W(Number(D)),X.value=``,Z.value=``,Q.value=``,$.value=`add`}async function Ue(){X.value=``,Z.value=``,Q.value=``,$.value=`mini-add`}async function We(e){let t=await x.UpdateScenarioQuestion({id:P.value.id,code:e.oldCode,question:{code:e.code,text:e.text,answer:e.answer}});if(t.error!=``){M.error(t.error);return}await W(Number(D)),e.mode=`show-editor`}async function Ge(e){await W(Number(D)),e.mode=`show-editor`}async function Ke(e){let t=await x.DeleteScenarioQuestion({id:P.value.id,code:e.oldCode});if(t.error!=``){M.error(t.error);return}await W(Number(D))}function qe(e){return e&&e.split(`/`).pop()||``}async function Je(){let e=``;if(L.value.fileList&&L.value.fileList.length>0){let t=L.value.fileList[0].file||null;if(t==null||(e=(await G(t,`scenarios_`+P.value.id+`_intro_`+t.name)).filename,e===``))return}else e=qe(L.value.audio);let t=await x.UpdateScenarioIntro({id:P.value.id,introduction:{text:L.value.text,audio:e}});if(t.error!=``){M.error(t.error);return}await W(Number(D))}async function Ye(e=!1){I.value=!0;try{let t=``;if(!e){let e=F.value[0]?.file;if(!e)return;let n=await G(e,`scenarios_`+P.value.id+`_background_`+e.name);if(!n.filename)return;if(n.fileType!==`image`){M.error(`Фон дела должен быть изображением`);return}t=n.filename}let n=await x.UpdateScenarioBackground({id:P.value.id,background:t});if(n.error){M.error(n.error);return}await W(Number(D)),F.value=[]}catch{M.error(`Не удалось сохранить фон дела`)}finally{I.value=!1}}async function Xe(){await W(Number(D))}function Ze(){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(i,c)=>(r(),h(u,null,[g(`div`,{ref_key:`scrollContainer`,ref:Te,class:`center-block-custom`},[g(`div`,he,[g(`div`,ge,[P.value.status==`public`?(r(),o(s(ie),{key:0,title:`Сценарий опубликован`,type:`warning`,style:{"margin-bottom":`20px`}},{default:m(()=>[...c[39]||=[t(` Не рекомендуется редактировать сценарий когда он опубликован. `,-1)]]),_:1})):e(``,!0),s(d).user?.id==2?(r(),o(s(ie),{key:1,title:Ze(),type:`info`,style:{"margin-bottom":`20px`}},null,8,[`title`])):e(``,!0),g(`div`,_e,[t(` Точек: `+n(P.value.story?.places?.length)+`, Вопросов: `+n(P.value.story?.questions?.length)+` `,1),a(s(y),{quaternary:``,onClick:c[0]||=e=>O.value=!0,class:`settings-button`},{default:m(()=>[a(s(le),{class:`settings-icon`},{default:m(()=>[a(s(de))]),_:1}),c[40]||=t(` Настройки `,-1)]),_:1})]),a(s(_),{title:`Фон дела`},{default:m(()=>[a(s(C),{vertical:``},{default:m(()=>[P.value.story?.background?(r(),h(`img`,{key:0,src:P.value.story.background,alt:`Фон дела`,class:`background-preview`},null,8,ve)):e(``,!0),a(s(b),{"file-list":F.value,"onUpdate:fileList":c[1]||=e=>F.value=e,accept:`.jpg,.jpeg,.png,.gif,.webp`,max:1,"default-upload":!1,disabled:I.value},{default:m(()=>[a(s(y),{disabled:I.value},{default:m(()=>[...c[41]||=[t(`Выбрать фон`,-1)]]),_:1},8,[`disabled`])]),_:1},8,[`file-list`,`disabled`]),a(s(w),null,{default:m(()=>[a(s(y),{loading:I.value,disabled:!F.value.length||I.value,onClick:c[2]||=e=>Ye()},{default:m(()=>[...c[42]||=[t(`Сохранить фон`,-1)]]),_:1},8,[`loading`,`disabled`]),P.value.story?.background?(r(),o(s(y),{key:0,disabled:I.value,onClick:c[3]||=e=>Ye(!0)},{default:m(()=>[...c[43]||=[t(`Удалить фон`,-1)]]),_:1},8,[`disabled`])):e(``,!0)]),_:1})]),_:1})]),_:1}),a(te,{introduction:L.value,mode:R.value,"onUpdate:mode":c[6]||=e=>R.value=e},{default:m(()=>[a(s(w),{justify:`end`},{default:m(()=>[a(s(y),{onClick:c[4]||=e=>Xe()},{default:m(()=>[...c[44]||=[t(`Отмена`,-1)]]),_:1}),a(s(y),{onClick:c[5]||=e=>Je()},{default:m(()=>[...c[45]||=[t(`Сохранить вступление`,-1)]]),_:1})]),_:1})]),_:1},8,[`introduction`,`mode`]),a(s(_),{title:`Закрывашка сценария`},{default:m(()=>[a(s(C),{vertical:``},{default:m(()=>[a(s(T),{depth:`3`},{default:m(()=>[...c[46]||=[t(`Разгадка дела для автора. Игрокам не показывается.`,-1)]]),_:1}),a(s(S),{value:z.value.text,"onUpdate:value":c[7]||=e=>z.value.text=e,type:`textarea`,autosize:{minRows:4,maxRows:12},placeholder:`Текст закрывашки`,"aria-label":`Текст закрывашки`,disabled:V.value},null,8,[`value`,`disabled`]),xe.value?(r(),h(`video`,{key:0,src:xe.value,controls:``,preload:`none`,class:`conclusion-video`,"aria-label":`Видео закрывашки`},null,8,ye)):e(``,!0),z.value.video?(r(),o(s(y),{key:1,disabled:V.value,onClick:c[8]||=e=>Se()},{default:m(()=>[...c[47]||=[t(`Убрать видео`,-1)]]),_:1},8,[`disabled`])):e(``,!0),a(s(b),{"file-list":B.value,"onUpdate:fileList":c[9]||=e=>B.value=e,accept:`.mp4,.webm`,max:1,"default-upload":!1,disabled:V.value},{default:m(()=>[a(s(y),{disabled:V.value},{default:m(()=>[...c[48]||=[t(`Выбрать видео MP4/WebM`,-1)]]),_:1},8,[`disabled`])]),_:1},8,[`file-list`,`disabled`]),a(s(w),{justify:`end`},{default:m(()=>[P.value.story?.conclusion?.text||P.value.story?.conclusion?.video?(r(),o(s(y),{key:0,disabled:V.value,onClick:c[10]||=e=>Ce(!0)},{default:m(()=>[...c[49]||=[t(`Удалить закрывашку`,-1)]]),_:1},8,[`disabled`])):e(``,!0),a(s(y),{disabled:V.value,onClick:c[11]||=e=>H()},{default:m(()=>[...c[50]||=[t(`Отмена`,-1)]]),_:1},8,[`disabled`]),a(s(y),{loading:V.value,disabled:V.value||!P.value.story,onClick:c[12]||=e=>Ce()},{default:m(()=>[...c[51]||=[t(`Сохранить закрывашку`,-1)]]),_:1},8,[`loading`,`disabled`])]),_:1})]),_:1})]),_:1}),c[62]||=g(`div`,{class:`questions-header`},`Вопросы дела`,-1),a(me,{mode:$.value,"onUpdate:mode":c[15]||=e=>$.value=e,newQuestionCode:X.value,"onUpdate:newQuestionCode":c[16]||=e=>X.value=e,newQuestionText:Z.value,"onUpdate:newQuestionText":c[17]||=e=>Z.value=e,newQuestionAnswer:Q.value,"onUpdate:newQuestionAnswer":c[18]||=e=>Q.value=e},{default:m(()=>[a(s(w),{justify:`end`},{default:m(()=>[a(s(y),{onClick:c[13]||=e=>Ue()},{default:m(()=>[...c[52]||=[t(`Отмена`,-1)]]),_:1}),a(s(y),{onClick:c[14]||=e=>He(),disabled:!X.value},{default:m(()=>[...c[53]||=[t(`Добавить вопрос`,-1)]]),_:1},8,[`disabled`])]),_:1})]),_:1},8,[`mode`,`newQuestionCode`,`newQuestionText`,`newQuestionAnswer`]),(r(!0),h(u,null,p(De.value,e=>(r(),o(me,{question:e,mode:e.mode,"onUpdate:mode":t=>e.mode=t,key:e.oldCode??e.code??``},{default:m(()=>[a(s(w),{justify:`end`},{default:m(()=>[a(s(y),{onClick:t=>Ke(e),type:`error`,ghost:``},{default:m(()=>[...c[54]||=[t(`Удалить`,-1)]]),_:1},8,[`onClick`]),a(s(y),{onClick:t=>Ge(e)},{default:m(()=>[...c[55]||=[t(`Отмена`,-1)]]),_:1},8,[`onClick`]),a(s(y),{onClick:t=>We(e),disabled:e.code==``},{default:m(()=>[...c[56]||=[t(`Сохранить`,-1)]]),_:1},8,[`onClick`,`disabled`])]),_:2},1024)]),_:2},1032,[`question`,`mode`,`onUpdate:mode`]))),128)),a(ne,{mode:Y.value,"onUpdate:mode":c[21]||=e=>Y.value=e,newPlaceCode:K.value,"onUpdate:newPlaceCode":c[22]||=e=>K.value=e,newPlaceName:q.value,"onUpdate:newPlaceName":c[23]||=e=>q.value=e,newPlaceText:J.value,"onUpdate:newPlaceText":c[24]||=e=>J.value=e},{default:m(()=>[a(s(w),{justify:`end`},{default:m(()=>[a(s(y),{onClick:c[19]||=e=>Le()},{default:m(()=>[...c[57]||=[t(`Отмена`,-1)]]),_:1}),a(s(y),{onClick:c[20]||=e=>Ie(),disabled:!K.value},{default:m(()=>[...c[58]||=[t(`Добавить точку`,-1)]]),_:1},8,[`disabled`])]),_:1})]),_:1},8,[`mode`,`newPlaceCode`,`newPlaceName`,`newPlaceText`]),(r(!0),h(u,null,p(we.value,e=>(r(),h(`div`,{key:e.oldCode??e.code??``,ref_for:!0,ref:t=>t?s(U).set(e,t):s(U).delete(e),class:`place-card`,tabindex:`-1`,role:`group`,"aria-label":`${e.code}: ${e.name}`},[a(ne,{place:e,mode:e.mode,"onUpdate:mode":t=>e.mode=t,onNavigate:Ee},{default:m(()=>[a(s(w),{justify:`end`},{default:m(()=>[a(s(y),{onClick:t=>Ve(e),type:`error`,ghost:``},{default:m(()=>[...c[59]||=[t(`Удалить`,-1)]]),_:1},8,[`onClick`]),a(s(y),{onClick:t=>ze(e)},{default:m(()=>[...c[60]||=[t(`Отмена`,-1)]]),_:1},8,[`onClick`]),a(s(y),{onClick:t=>Be(e),disabled:e.code==``},{default:m(()=>[...c[61]||=[t(`Сохранить`,-1)]]),_:1},8,[`onClick`,`disabled`])]),_:2},1024)]),_:2},1032,[`place`,`mode`,`onUpdate:mode`])],8,be))),128))])])],512),a(s(v),{show:O.value,"onUpdate:show":c[38]||=e=>O.value=e},{default:m(()=>[a(s(_),{style:{width:`600px`},title:`Настройки сценария`,bordered:!1,size:`huge`,role:`dialog`,"aria-modal":`true`},{"header-extra":m(()=>[a(s(y),{onClick:c[25]||=e=>O.value=!1},{default:m(()=>[...c[63]||=[t(` x `,-1)]]),_:1})]),footer:m(()=>[...c[87]||=[]]),default:m(()=>[a(s(C),{vertical:``},{default:m(()=>[c[76]||=g(`p`,null,`Название`,-1),a(s(S),{value:P.value.name,"onUpdate:value":c[26]||=e=>P.value.name=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`]),c[77]||=g(`p`,{class:`settings-header`},`Описание`,-1),a(s(S),{value:P.value.description,"onUpdate:value":c[27]||=e=>P.value.description=e,type:`textarea`,placeholder:`Убийство пастуха...`},null,8,[`value`]),c[78]||=g(`p`,{class:`settings-header`},`Картинка`,-1),a(s(S),{value:P.value.image,"onUpdate:value":c[28]||=e=>P.value.image=e,type:`text`,placeholder:`default_scenario.png`,disabled:``},null,8,[`value`]),a(s(b),{"directory-dnd":``,max:1,"file-list":N.value,"onUpdate:fileList":c[29]||=e=>N.value=e},{default:m(()=>[a(s(ee),null,{default:m(()=>[a(s(T),{style:{"font-size":`16px`}},{default:m(()=>[...c[64]||=[t(` Щелкните или перетащите файл в эту область для загрузки `,-1)]]),_:1})]),_:1})]),_:1},8,[`file-list`]),a(s(y),{onClick:c[30]||=e=>Ne(),ghost:``},{default:m(()=>[...c[65]||=[t(` Сохранить изменения `,-1)]]),_:1}),c[79]||=g(`hr`,{class:`settings-hr`},null,-1),c[80]||=g(`p`,{class:`settings-header`},`Архив сценария`,-1),c[81]||=g(`p`,{class:`settings-hint`},` Скачайте сценарий ZIP-архивом (scenario.json + изображения) и импортируйте его в другом аккаунте. `,-1),a(s(y),{loading:j.value,disabled:!P.value.id,ghost:``,onClick:c[31]||=e=>Me()},{default:m(()=>[...c[66]||=[t(` Скачать архив (.zip) `,-1)]]),_:1},8,[`loading`,`disabled`]),c[82]||=g(`hr`,{class:`settings-hr`},null,-1),c[83]||=g(`p`,null,`Создать тестовую игру`,-1),a(s(y),{onClick:c[32]||=e=>Ae(P.value.name||``,P.value.id),ghost:``},{default:m(()=>[...c[67]||=[t(` Создать игру `,-1)]]),_:1}),c[84]||=g(`hr`,{class:`settings-hr`},null,-1),c[85]||=g(`p`,null,`Публикация`,-1),g(`p`,null,[P.value.status==`public`?(r(),o(s(re),{key:0,bordered:!1,type:`success`,class:`status-block`},{default:m(()=>[...c[68]||=[t(` Опубликовано `,-1)]]),_:1})):e(``,!0),P.value.status==`draft`?(r(),o(s(re),{key:1,bordered:!1,type:`warning`,class:`status-block`},{default:m(()=>[...c[69]||=[t(` В разработке `,-1)]]),_:1})):e(``,!0)]),g(`p`,null,[c[70]||=t(` Введите название сценария `,-1),a(s(T),{class:`name-text`,strong:``},{default:m(()=>[t(n(P.value.name),1)]),_:1})]),a(s(S),{value:k.value,"onUpdate:value":c[33]||=e=>k.value=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`]),P.value.status==`public`?e(``,!0):(r(),o(s(y),{key:0,onClick:c[34]||=e=>ke(P.value.id),ghost:``,disabled:k.value!=P.value.name},{default:m(()=>[...c[71]||=[t(` Опубликовать сценарий `,-1)]]),_:1},8,[`disabled`])),P.value.status==`draft`?e(``,!0):(r(),o(s(y),{key:1,onClick:c[35]||=e=>je(P.value.id),ghost:``,disabled:k.value!=P.value.name},{default:m(()=>[...c[72]||=[t(` Снять сценарий с публикации `,-1)]]),_:1},8,[`disabled`])),c[86]||=g(`hr`,{class:`settings-hr`},null,-1),g(`p`,null,[c[73]||=t(` Введите название сценария `,-1),a(s(T),{class:`name-text`,strong:``},{default:m(()=>[t(n(P.value.name),1)]),_:1}),c[74]||=t(` чтобы удалить его `,-1)]),a(s(S),{value:A.value,"onUpdate:value":c[36]||=e=>A.value=e,type:`text`,placeholder:`Дело №0 "Следствие ведут овечки"`},null,8,[`value`]),a(s(y),{onClick:c[37]||=e=>Oe(P.value.id),type:`error`,ghost:``,disabled:A.value!=P.value.name},{default:m(()=>[...c[75]||=[t(` Удалить сценарий `,-1)]]),_:1},8,[`disabled`])]),_:1})]),_:1})]),_:1},8,[`show`]),a(ue,{active:`scenarios`})],64))}}),[[`__scopeId`,`data-v-79f033d7`]]),I=d({__name:`ScenariosEditorView`,setup(e){return(e,t)=>(r(),o(F))}});export{I as default}; |