PageSourceSearch

https://vc.ru/assets/AssistantAnswer-B2oosqRw.js

js vc.ru collected 2026-10-01 07:57:51 UTC 10,242 bytes, 1 lines download raw bytes

1import{d as K,aq as q,a as x,b as N,e as E,fl as de,r as I,bN as y,av as fe,ba as ie,f as T,af as ve,S as re,p as oe,t as le,v as M,bf as me,W as ge,bH as ne,fm as he,c as Y,fn as be,s as H,aa as pe,w as _e,cF as xe}from"./index-BXQnu0Fm.js";import{u as Z}from"./useRafInterval-UOqXV7by.js";const ye={class:"assistant-streaming-blocks"},ke=28,we=4,Ae=22,Le=K({__name:"StreamingBlocks",props:{blocks:{}},emits:["complete"],setup(v,{emit:i}){const c=v,h=i,a=I([]);let d=!1;function b(e){return y(e)}function u(e){return f(e)||_(e)}function f(e){return(e==null?void 0:e.type)==="text"||(e==null?void 0:e.type)==="header"}function _(e){return(e==null?void 0:e.type)==="list"}function k(e,t){const n=y(e);return n.data.text=t,n}function z(e,t){const n=y(e);return n.data.items=t,n}function j(e){var t,n;return(n=(t=/^<\/?\s*([a-z0-9-]+)/i.exec(e))==null?void 0:t[1])==null?void 0:n.toLowerCase()}function $(e){return/^<\s*\//.test(e)}function D(e,t){return t==="br"||t===void 0||/\/\s*>$/.test(e)}function J(e,t){const n=j(t);if(!(t.startsWith("<!--")||t.startsWith("<!")||t.startsWith("<?"))){if($(t)){const s=n!==void 0?e.lastIndexOf(n):-1;s!==-1&&e.splice(s,e.length-s);return}!D(t,n)&&n!==void 0&&e.push(n)}}function R(e){const t=[];let n=0;for(;n<e.length;){if(e[n]==="<"){const r=e.indexOf(">",n);if(r===-1)break;n=r+1;continue}if(e[n]==="&"){const r=e.indexOf(";",n);if(r!==-1){t.push(e.slice(n,r+1)),n=r+1;continue}}const s=String.fromCodePoint(e.codePointAt(n)??0);t.push(s),n+=s.length}return t}function w(e){return R(e).join("")}function A(e){return R(e).length}function G(e){return/^\s$/.test(e)||/^[,.;:!?)]$/.test(e)||e==="&nbsp;"}function U(e,t){const n=R(e),s=n.length,r=Math.min(s,t+we),o=Math.min(s,t+Ae);let l=r;
1for(;l<o&&!G(n[l-1]??"");)++l;return l}function L(e,t){if(t<=0)return"";const n=[];let s="",r=0,o=0;for(;o<e.length&&r<t;){if(e[o]==="<"){const m=e.indexOf(">",o);if(m===-1)break;const B=e.slice(o,m+1);s+=B,J(n,B),o=m+1;continue}if(e[o]==="&"){const m=e.indexOf(";",o);if(m!==-1){s+=e.slice(o,m+1),o=m+1,++r;continue}}const l=String.fromCodePoint(e.codePointAt(o)??0);s+=l,o+=l.length,++r}for(let l=n.length-1;l>=0;--l)s+=`</${n[l]}>`;return s}function S(e,t){return e===void 0||t===void 0?e===t:JSON.stringify(e)===JSON.stringify(t)}function X(e,t){return e.length!==t.length?!1:e.every((n,s)=>S(n,t[s]))}function F(e,t){const n=Math.max(e.length,t.length);for(let s=0;s<n;++s)if(!S(e[s],t[s]))return s;return-1}function p(e,t){const n=Math.max(e.length,t.length);for(let s=0;s<n;++s)if(e[s]!==t[s])return s;return-1}const{start:g,stop:O}=Z(W,ke);function V(){X(a.value,c.blocks)&&(O(),!d&&(d=!0,fe(()=>{h("complete")})))}function C(e,t,n){const s=t.data.text,r=f(e)?e.data.text:"",o=w(r),l=w(s),m=A(r);if(A(s)<=m||!l.startsWith(o)){a.value=[...n,y(t)],g();return}a.value=[...n,k(t,L(s,U(s,m)))],g()}function P(e,t,n){const s=_(e)?e.data.items:[],r=t.data.items,o=p(s,r);if(o===-1){a.value=[...n,y(t)],g();return}const l=r[o];if(l===void 0){a.value=[...n,y(t)],g();return}const m=s[o]??"",B=w(m),ce=w(l),ee=A(m),ue=A(l);let te=l;ee<ue&&ce.startsWith(B)&&(te=L(l,U(l,ee))),a.value=[...n,z(t,[...r.slice(0,o),te])],g()}function W(){const e=c.blocks;if(e.length===0){a.value=[],V();return}const t=F(a.value,e);if(t===-1){V();return}const n=e[t];if(n===void 0){a.value=b(e),g();return}const s=a.value.slice(0,t),r=a.value[t];if(!u(n)){a.value=[...s,y(n)],g();return}if(_(n)){P(r,n,s);return}C(r,n,s)}function Q(){O(),d=!1,W()}return q(()=>c.blocks,Q,{immediate:!0}),(e,t)=>(x(),N("div",ye,[E(de,{blocks:a.value},null,8,["blocks"])]))}}),Se={class:"assistant-answer-label"},Ce=2e3,Te=42,se=10,ae="абвгдежзиклмнопрстуфхцчшэюя",Ie=K({__name:"AssistantAnswerLabel",props:{isAnswerUnavailable:{type:Boolean},isLoading:{type:Boolean}},setup(v){const i=["Выполняю","Действую","Воплощаю","Проектирую","Выпекаю","Думаю","Сияю","Задумываюсь","Разглагольствую","Играюсь","Генерирую","Самозапускаюсь","Завариваю","Зарываюсь","Отвлекаюсь","Читаю","Гуглю","Вычисляю","Комментирую","Каскадирую","Катапультирую","Обмозговываю","Направляю","Хореографирую","Перемалываю","Сливаю воедино","Размышляю","Сужаю","Упорядочиваю","Удаляю","Сочиняю","Считаю","Стряпаю","Редактирую","Очищаю","Обдумываю","Убираю","Созерцаю","Готовлю","Собираю","Мастерю","Создаю","Пережёвываю данные","Кристаллизую","Выращиваю","Расшифровываю","Взвешиваю","Определяю","Запутываю","Делаю","Агрегирую","Осуществляю","Проясняю","Открываю","Приукрашиваю","Зачаровываю","Представляю","Ферментирую","Валяю дурака","Выкручиваюсь","Пустословлю","Сортирую","Озадачиваю","Выковываю","Формирую","Резвлюсь","Глазирую","Украшаю","Жестикулирую","Прорастаю","Гармонизирую","Хеширую","Придумываю","Воображаю","Импровизирую","Вынашиваю","Насыщаю","Ионизирую","Замешиваю","Бездельничаю","Проявляю","Мариную","Блуждаю","Преображаюсь","Туманю","Раздумываю","Собираю мысли","Вкладываю","Наигрываю","Вращаюсь","Оркестрирую","Просматриваю","Философствую","Фотосинтезирую","Набрасываю","Фокусничаю","Обрабатываю","Проверяю","Распространяю","Ковыряюсь","Квантую","Пингую","Пережёвываю","Суетюсь","Приправляю","Проказничаю","Томлюсь","Сплющиваю","Сжимаю","Кручусь","Сублимирую","Закручиваюсь","Пикирую","Синтезирую","Громыхаю","Дурачусь","Преображаю","Скручиваю","Разворачиваю","Распутываю","Вайбкодю","Странствую","Искривляю","Бубубу","Взбиваю","Работаю","Укрощаю","Просачиваюсь","Сворачиваю","Осмосирую","Газетничаю"],c=v,{t:h,tm:a,rt:d}=ie(),b=I(""),u=I("");let f="",_="",k=0;const z=M(()=>c.isLoading?`${u.value}...`:u.value),j=M(()=>c.isAnswerUnavailable?h("discovery.aiNoAnswer"):h("discovery.aiAnswer"));function $(){const p=i.filter(g=>g!==b.value);return p[Math.floor(Math.random()*p.length)]??i[0]??""}function D(){return ae[Math.floor(Math.random()*ae.length)]??""}function J(p,g,O){const V=Array.from(p),C=Array.from(g),P=O/se,W=Math.max(1,Math.round(V.length+(C.length-V.length)*P)),Q=Math.floor(C.length*P);let e="";for(let t=0;t<W;++t)e+=t<Q&&C[t]!==void 0?C[t]:D();return e}function R(){if(++k,k>=se){L(),b.value=_,u.value=_;return}u.value=J(f,_,k)}const{start:w,stop:A}=Z(R,Te),{start:G,stop:U}=Z(()=>{S($())},Ce);function L(){A()}function S(p){L(),f=u.value,_=p,k=0,w()}function X(){F(),S($()),G()}function F(){U(),L()}return q(()=>[c.isLoading,c.isAnswerUnavailable],([p])=>{if(p){X();return}F(),S(j.value)},{immediate:!0}),(p,g)=>(x(),N("div",Se,[E(T(ve),{class:re(["assistant-answer-label__icon",c.isLoading&&"assistant-answer-label__icon--loading"]),name:"ai_assistant_static",width:16,height:16},null,8,["class"]),oe("span",null,le(z.value),1)]))}});
1function Re(v,i){const{discovery:c}=me(),{recallAfterAuth:h}=ge(),a=I(null),d=I(!1);async function b(u){if(d.value||u===a.value)return;const f=a.value;a.value=u,d.value=!0;try{await h(async()=>{await c.sendAssistantFeedback({ratingKey:ne(v),vote:u})})}catch{a.value=f}finally{d.value=!1}}return q([v,i],()=>{a.value=ne(i),d.value=!1},{immediate:!0}),{selectedVote:a,isLoading:d,send:b}}const Ve={class:"assistant-feedback"},Be={class:"assistant-feedback__title"},Ee=K({__name:"AssistantFeedback",props:{ratingKey:{},userVote:{}},setup(v){const{t:i}=ie(),c=v,{selectedVote:h,send:a}=Re(()=>c.ratingKey,()=>c.userVote),{state:d}=he([{type:"feedback",id:"up",count:0,text:i("common.yes")},{type:"feedback",id:"down",count:0,text:i("common.no")}],{feedback:{assets:[{type:"",id:"up",staticUuid:"94a5d2f1-e8a9-5da6-9fc8-723cc33a6a48",animatedUuid:null},{type:"",id:"down",staticUuid:"b276a846-1236-5f00-84b5-b1f254602997",animatedUuid:null}],defaults:["up","down"],active:()=>h.value??void 0,handlers:{onSelect:(b,{isActive:u})=>{if(!u)return a(b),{animate:!0}}}}});return(b,u)=>{var f;return x(),N("div",Ve,[oe("div",Be,le(T(i)("discovery.rateAnswer")),1),(f=T(d))!=null&&f.nodes?(x(),Y(T(be),{key:0,items:T(d).nodes},null,8,["items"])):H("",!0)])}}}),Me={key:0,class:"assistant-answer"},Ne={key:0,class:"assistant-answer__blocks-skeleton"},Fe=K({__name:"AssistantAnswer",props:{isLoading:{type:Boolean},blocks:{},isAnswerUnavailable:{type:Boolean},ratingKey:{},userVote:{}},setup(v){const i=v,c=M(()=>i.blocks.length>0),h=M(()=>i.isLoading&&!c.value&&!i.isAnswerUnavailable),a=M(()=>i.isLoading||c.value||i.isAnswerUnavailable),d=I(!1),b=({bar:u,gapY:f})=>[[u("50%","10px")],[f("12px")],[u("65%","10px")]];return q(()=>[i.blocks,i.isLoading],()=>{d.value=!1},{immediate:!0}),(u,f)=>a.value?(x(),N("div",Me,[E(Ie,{class:re(i.isAnswerUnavailable&&"assistant-answer__label--answer-unavailable"),"is-answer-unavailable":i.isAnswerUnavailable,"is-loading":h.value},null,8,["class","is-answer-unavailable","is-loading"]),h.value?(x(),N("div",Ne,[E(T(pe),{schema:b})])):c.value?(x(),Y(Le,{key:1,class:"assistant-answer__blocks",blocks:i.blocks,onComplete:f[0]||(f[0]=_=>d.value=!0)},null,8,["blocks"])):H("",!0),E(xe,{name:"assistant-answer-feedback-fade"},{default:_e(()=>[d.value&&v.ratingKey!==null?(x(),Y(Ee,{key:0,class:"assistant-answer__feedback","rating-key":v.ratingKey,"user-vote":v.userVote},null,8,["rating-key","user-vote"])):H("",!0)]),_:1})])):H("",!0)}});export{Fe as default};

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.