Files
prod/frontend/dist/assets/ScenarioView-DstP9wgR.js
T
2026-10-04 23:08:13 +07:00

1 line
3.0 KiB
JavaScript

import{Ct as e,D as t,E as n,M as r,N as i,O as a,Q as o,T as s,Vt as c,X as l,j as u,l as d,st as f,vt as p,y as m}from"./client-CmW03vy2.js";import{t as h}from"./Tag-SzWVk8n9.js";import{n as g,r as _}from"./es-BkmQwXAV.js";import{t as v}from"./Rate-CFmIFwP5.js";import{t as y}from"./HeaderMenu-CYpYLGGt.js";import{t as b}from"./_plugin-vue_export-helper-BDNMzG2s.js";var x={class:`center-block-custom`},S={class:`width700`},C={class:`scenario-card`},w={class:`scenario-heading`},T={class:`scenario-title`},E={class:`scenario-image-frame`},D=[`src`,`alt`],O={class:`scenario-details`},k={class:`scenario-description`},A={class:`scenario-rating`},j={key:1},M={key:2},N={key:0,class:`scenario-difficulty`},P={class:`scenario-author`},F={key:1,class:`reviews-section`},I={class:`review-heading`},L={class:`review-game`},R={class:`review-text`},z=b(i({__name:`ScenarioPage`,setup(i){let b=_(),z=g(),B=d().params.id,V=p([]),H=p({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});async function U(e){try{let t=await z.GetScenario({ID:e});H.value=t.scenario}catch(e){b.error(e instanceof Error?e.message:`Не удалось загрузить сценарий`)}}U(Number(B));async function W(e){try{let t=await z.GetScenarioReviews({scenarioID:e});V.value=t.reviews||[]}catch(e){b.error(e instanceof Error?e.message:`Не удалось загрузить отзывы`)}}return W(Number(B)),(i,d)=>(l(),a(m,null,[s(`div`,x,[s(`div`,S,[s(`section`,C,[s(`div`,w,[d[0]||=s(`p`,{class:`scenario-kicker`},`ДЕЛО ИЗ КАТАЛОГА`,-1),s(`h1`,T,c(H.value.name),1)]),s(`div`,E,[s(`img`,{class:`scenario-image`,src:H.value.image,alt:H.value.name},null,8,D)]),s(`div`,O,[s(`p`,k,c(H.value.description),1),s(`div`,A,[H.value.reviewsCount?(l(),n(e(v),{key:0,value:H.value.averageRating,readonly:``,"allow-half":``,size:`small`},null,8,[`value`])):t(``,!0),H.value.reviewsCount?(l(),a(`span`,j,c(H.value.averageRating?.toFixed(1))+` · `+c(H.value.reviewsCount)+` отзывов`,1)):(l(),a(`span`,M,`Пока нет оценок`))]),H.value.difficulty?(l(),a(`div`,N,`Сложность: `+c(H.value.difficulty),1)):t(``,!0),s(`div`,P,[r(e(h),{bordered:!1,type:`success`,class:`status-block`},{default:f(()=>[u(` Автор: `+c(H.value.author?.username),1)]),_:1})]),V.value.length?(l(),a(`section`,F,[d[1]||=s(`h2`,{class:`reviews-title`},`Отзывы команд`,-1),(l(!0),a(m,null,o(V.value,t=>(l(),a(`article`,{key:t.ID,class:`review-card`},[s(`div`,I,[s(`strong`,null,c(t.teamName),1),r(e(v),{value:t.rating,readonly:``,size:`small`},null,8,[`value`])]),s(`div`,null,`Сложность: `+c([``,`лёгкая`,`средняя`,`тяжёлая`][t.difficulty||0]),1),s(`div`,L,c(t.gameName),1),s(`p`,R,c(t.text),1)]))),128))])):t(``,!0)])])])]),r(y,{active:`catalog`})],64))}}),[[`__scopeId`,`data-v-fd1f9c93`]]),B=i({__name:`ScenarioView`,setup(e){return(e,t)=>(l(),n(z))}});export{B as default};