PageSourceSearch

https://tochno.st/_nuxt/Dl2H62YF.js

js tochno.st collected 2026-09-25 08:27:22 UTC 4,431 bytes, 1 lines download raw bytes

1import{_ as B}from"./Bg5nWhxQ.js";import{e as f,i as n,o as d,q as _,m as i,f as R,k as w,B as O,c as V,a as k,b as C,O as t}from"./DgttN8Q_.js";import{u as N}from"./jG_OYvwS.js";const A=f({__name:"ProblemSelector",props:{modelValue:{},problems:{},disabled:{type:Boolean}},emits:["update:modelValue"],setup(c,{emit:m}){const u=m,e=n(()=>[{slug:"all",title:"Все проблемы",isDisabled:!1},...c.problems]),o=r=>{u("update:modelValue",r)};return(r,g)=>(d(),_(B,{"model-value":r.modelValue,options:i(e),"is-big":"","option-label":"title","option-value":"slug","option-disabled":"isDisabled",disabled:r.disabled,placeholder:"Выберите проблему",filter:!0,"filter-placeholder":"Поиск проблем...","empty-filter-message":"Проблемы не найдены","onUpdate:modelValue":o},null,8,["model-value","options","disabled"]))}}),D=f({__name:"RegionSelector",props:{modelValue:{},regions:{},disabled:{type:Boolean}},emits:["update:modelValue"],setup(c,{emit:m}){const u=m,e=n(()=>[{slug:"russia",name:"России"},...c.regions]),o=r=>{u("update:modelValue",r)};return(r,g)=>(d(),_(B,{"model-value":r.modelValue,options:i(e),"option-label":"name","option-value":"slug",disabled:r.disabled,"is-big":"",placeholder:"Выберите регион",filter:!0,"filter-placeholder":"Поиск региона...","empty-filter-message":"Регионы не найдены","onUpdate:modelValue":o},null,8,["model-value","options","disabled"]))}}),U={class:"problems-selectors"},$={key:0,class:"problems-selectors__label"},L=f({__name:"ProblemsSelectors",async setup(c){let m,u;const e=R(),o=N(),r=n(()=>{const s=e.params.slug;return(Array.isArray(s)?s[0]:s)||""}),g=n(()=>{const s=o.problems.filter(p=>!p.isDisabled),l=r.value;if(!l||s.some(p=>p.slug===l))return s;const a=o.getProblemBySlug(l);return a?[...s,a]:s}),b=n(()=>o.regions),h=n(()=>{const s=e.name;if(s==="problems-detail"||s==="problems-detail-region"){const l=r.value;return l&&g.value.length>0&&!o.getProblemBySlug(l)?"all":l||"all"}return"all"}),y=n(()=>{const s=e.name;if(s==="problems-detail-region"||s==="regions-detail"){const l=e.params.slug_region,a=Array.isArray(l)?l[0]:l;return a&&b.value.length>0&&!o.getRegionBySlug(a)?"russia":a||"russia"}return"russia"}),P=n(()=>e.name==="problems"||e.name==="regions-detail");w([h,g],([s])=>{const l=e.name,a=e.params.slug;(l==="problems-detail"||l==="problems-detail-region")&&a&&s==="all"&&g.value.length>0&&(o.getProblemBySlug(a)||v("all"))}),w([y,b],([s])=>{const l=e.name,a=e.params.slug_region;(l==="problems-detail-region"||l==="regions-detail")&&a&&s==="russia"&&b.value.length>0&&(o.getRegionBySlug(a)||S("russia"))});const v=async s=>{if(s==="all"){if(e.name==="regions-detail")return;if(e.name==="problems-detail-region"){const l=e.params.slug_region;await t({name:"regions-detail",params:{slug_region:l}})}else{if(e.name==="problems")return;await t({name:"problems"})}}else{if(o.getProblemBySlug(s)?.isDisabled||e.params.slug===s)return;if(e.name==="regions-detail"){const a=e.params.slug_region;await t({name:"problems-detail-region",params:{slug:s,slug_region:a}})}else if(e.name==="problems-detail-region"){const a=e.params.slug_region;await t({name:"problems-detail-region",params:{slug:s,slug_region:a}})}else await t({name:"problems-detail",params:{slug:s}})}},S=async s=>{if(s==="russia")if(e.name==="problems-detail-region"){const l=e.params.slug;await t({name:"problems-detail",params:{slug:l}})}else if(e.name==="regions-detail")await t({name:"problems"});else{if(e.name==="problems")return;if(e.name==="problems-detail")return}else{if(e.params.slug_region===s)return;if(e.name==="problems-detail"){const l=e.params.slug;await t({name:"problems-detail-region",params:{slug:l,slug_region:s}})}else if(e.name==="problems-detail-region"){const l=e.params.slug;await t({name:"problems-detail-region",params:{slug:l,slug_region:s}})}else await t({name:"regions-detail",params:{slug_region:s}})}};return[m,u]=O(()=>Promise.all([o.loadProblems(),o.loadRegions()])),await m,u(),(s,l)=>(d(),V("div",U,[i(P)?(d(),V("span",$,"Проблемы ")):(d(),_(A,{key:1,class:"problems-selectors__item","model-value":i(h),problems:i(g),"onUpdate:modelValue":v},null,8,["model-value","problems"])),l[0]||(l[0]=k("span",null,"в ",-1)),C(D,{class:"problems-selectors__item","model-value":i(y),regions:i(b),"onUpdate:modelValue":S}
1,null,8,["model-value","regions"])]))}});export{L as _};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.