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