PageSourceSearch

https://presentosha.ru/assets/zadachi-SjxrEeFC.js

js presentosha.ru collected 2026-10-07 21:57:22 UTC 29,514 bytes, 1 lines download raw bytes

1import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./react-CwJFpaho.js";import{t as n}from"./jsx-runtime-NZYk81nU.js";import{E as r,L as i,N as a,O as o,P as s,S as c,T as l,U as u,V as d,_ as f,a as p,c as m,d as ee,f as te,i as ne,l as re,m as h,o as ie,p as ae,x as g}from"./authConfig-BTeoRGhc.js";import{S as oe,b as se,c as ce}from"./api-BqhbkQKI.js";import{n as _,r as le}from"./useWorkOwner-BdnK-tKj.js";import{t as v}from"./createLucideIcon-_dfI7Arx.js";import{n as ue,t as de}from"./image-LvBxKBkn.js";import{n as fe,t as pe}from"./file-text-j3dvl5WO.js";import{t as me}from"./chevron-right-NVqQIoiO.js";import{t as he}from"./circle-question-mark-B6okNiCs.js";import{n as ge,t as _e}from"./wallet-B7ddRZMr.js";import{t as ve}from"./x-BGsDD848.js";import{a as ye,i as be,n as xe}from"./guest-t9AgmjW1.js";var Se=v(`arrow-up`,[[`path`,{d:`m5 12 7-7 7 7`,key:`hav0vg`}],[`path`,{d:`M12 19V5`,key:`x0mq9r`}]]),Ce=v(`brush`,[[`path`,{d:`m11 10 3 3`,key:`fzmg1i`}],[`path`,{d:`M6.5 21A3.5 3.5 0 1 0 3 17.5a2.62 2.62 0 0 1-.708 1.792A1 1 0 0 0 3 21z`,key:`p4q2r7`}],[`path`,{d:`M9.969 17.031 21.378 5.624a1 1 0 0 0-3.002-3.002L6.967 14.031`,key:`wy6l02`}]]),we=v(`calendar-days`,[[`path`,{d:`M8 2v3`,key:`1ioesn`}],[`path`,{d:`M16 2v3`,key:`otl347`}],[`rect`,{x:`3`,y:`3`,width:`18`,height:`18`,rx:`2`,key:`h1oib`}],[`path`,{d:`M3 9h18`,key:`1pudct`}],[`path`,{d:`M8 13h.01`,key:`1sbv64`}],[`path`,{d:`M12 13h.01`,key:`y0uutt`}],[`path`,{d:`M16 13h.01`,key:`wip0gl`}],[`path`,{d:`M8 17h.01`,key:`p3bg7i`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}],[`path`,{d:`M16 17h.01`,key:`ql8jdd`}]]),Te=v(`chevron-down`,[[`path`,{d:`m6 9 6 6 6-6`,key:`qrunsl`}]]),Ee=v(`clapperboard`,[[`path`,{d:`m12.296 3.464 3.02 3.956`,key:`qash78`}],[`path`,{d:`M20.2 6 3 11l-.9-2.4c-.3-1.1.3-2.2 1.3-2.5l13.5-4c1.1-.3 2.2.3 2.5 1.3z`,key:`1h7j8b`}],[`path`,{d:`M3 11h18v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z`,key:`4lm6w1`}],[`path`,{d:`m6.18 5.276 3.1 3.899`,key:`zjj9t3`}]]),y=v(`download`,[[`path`,{d:`M12 15V3`,key:`m9g1x1`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}],[`path`,{d:`m7 10 5 5 5-5`,key:`brsn70`}]]),De=v(`ellipsis`,[[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}],[`circle`,{cx:`19`,cy:`12`,r:`1`,key:`1wjl8i`}],[`circle`,{cx:`5`,cy:`12`,r:`1`,key:`1pcz8c`}]]),Oe=v(`external-link`,[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`M10 14 21 3`,key:`gplh6r`}],[`path`,{d:`M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6`,key:`a6xqqp`}]]),ke=v(`gift`,[[`path`,{d:`M12 7v14`,key:`1akyts`}],[`path`,{d:`M20 11v8a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-8`,key:`1sqzm4`}],[`path`,{d:`M7.5 7a1 1 0 0 1 0-5A4.8 8 0 0 1 12 7a4.8 8 0 0 1 4.5-5 1 1 0 0 1 0 5`,key:`kc0143`}],[`rect`,{x:`3`,y:`7`,width:`18`,height:`4`,rx:`1`,key:`1hberx`}]]),Ae=v(`graduation-cap`,[[`path`,{d:`M21.42 10.922a1 1 0 0 0-.019-1.838L12.83 5.18a2 2 0 0 0-1.66 0L2.6 9.08a1 1 0 0 0 0 1.832l8.57 3.908a2 2 0 0 0 1.66 0z`,key:`j76jl0`}],[`path`,{d:`M22 10v6`,key:`1lu8f3`}],[`path`,{d:`M6 12.5V16a6 3 0 0 0 12 0v-3.5`,key:`1r8lef`}]]),je=v(`image-play`,[[`path`,{d:`M15 15.003a1 1 0 0 1 1.517-.859l4.997 2.997a1 1 0 0 1 0 1.718l-4.997 2.997a1 1 0 0 1-1.517-.86z`,key:`nrt1m3`}],[`path`,{d:`M21 12.17V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h6`,key:`99hgts`}],[`path`,{d:`m6 21 5-5`,key:`1wyjai`}],[`circle`,{cx:`9`,cy:`9`,r:`2`,key:`af1f0g`}]]),Me=v(`languages`,[[`path`,{d:`m5 8 6 6`,key:`1wu5hv`}],[`path`,{d:`m4 14 6-6 2-3`,key:`1k1g8d`}],[`path`,{d:`M2 5h12`,key:`or177f`}],[`path`,{d:`M7 2h1`,key:`1t2jsx`}],[`path`,{d:`m22 22-5-10-5 10`,key:`don7ne`}],[`path`,{d:`M14 18h6`,key:`1m8k6r`}]]),b=v(`layout-grid`,[[`rect`,{width:`7`,height:`7`,x:`3`,y:`3`,rx:`1`,key:`1g98yp`}],[`rect`,{width:`7`,height:`7`,x:`14`,y:`3`,rx:`1`,key:`6d4xhi`}],[`rect`,{width:`7`,height:`7`,x:`14`,y:`14`,rx:`1`,key:`nxv5o0`}],[`rect`,{width:`7`,height:`7`,x:`3`,y:`14`,rx:`1`,key:`1bb6yr`}]]),x=v(`menu`,[[`path`,{d:`M4 5h16`,key:`1tepv9`}],[`path`,{d:`M4 12h16`,key:`1lakjw`}],[`path`,{d:`M4 19h16`,key:`1djgab`}]]),Ne=v(`message-square`,[[`path`,{d:`M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z`,key:`18887p`}]]),Pe=v(`mic`,[[`path`,{d:`M12 19v3`,key:`npa21l`}],[`path`,{d:`M19 10v2a7 7 0 0 1-14 0v-2`,key:`1vc78b`}
1],[`rect`,{x:`9`,y:`2`,width:`6`,height:`13`,rx:`3`,key:`s6n7sd`}]]),Fe=v(`music`,[[`path`,{d:`M9 18V5l12-2v13`,key:`1jmyc2`}],[`circle`,{cx:`6`,cy:`18`,r:`3`,key:`fqmcym`}],[`circle`,{cx:`18`,cy:`16`,r:`3`,key:`1hluhg`}]]),Ie=v(`panel-left`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}]]),S=v(`plus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]),C=v(`presentation`,[[`path`,{d:`M2 3h20`,key:`91anmk`}],[`path`,{d:`M21 3v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V3`,key:`2k9sn8`}],[`path`,{d:`m7 21 5-5 5 5`,key:`bip4we`}]]),Le=v(`qr-code`,[[`rect`,{width:`5`,height:`5`,x:`3`,y:`3`,rx:`1`,key:`1tu5fj`}],[`rect`,{width:`5`,height:`5`,x:`16`,y:`3`,rx:`1`,key:`1v8r4q`}],[`rect`,{width:`5`,height:`5`,x:`3`,y:`16`,rx:`1`,key:`1x03jg`}],[`path`,{d:`M21 16h-3a2 2 0 0 0-2 2v3`,key:`177gqh`}],[`path`,{d:`M21 21v.01`,key:`ents32`}],[`path`,{d:`M12 7v3a2 2 0 0 1-2 2H7`,key:`8crl2c`}],[`path`,{d:`M3 12h.01`,key:`nlz23k`}],[`path`,{d:`M12 3h.01`,key:`n36tog`}],[`path`,{d:`M12 16v.01`,key:`133mhm`}],[`path`,{d:`M16 12h1`,key:`1slzba`}],[`path`,{d:`M21 12v.01`,key:`1lwtk9`}],[`path`,{d:`M12 21v-1`,key:`1880an`}]]),Re=v(`scroll-text`,[[`path`,{d:`M15 12h-5`,key:`r7krc0`}],[`path`,{d:`M15 8h-5`,key:`1khuty`}],[`path`,{d:`M19 17V5a2 2 0 0 0-2-2H4`,key:`zz82l3`}],[`path`,{d:`M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3`,key:`1ph1d7`}]]),ze=v(`smartphone`,[[`rect`,{width:`14`,height:`20`,x:`5`,y:`2`,rx:`2`,ry:`2`,key:`1yt0o3`}],[`path`,{d:`M12 18h.01`,key:`mhygvu`}]]),w=v(`triangle-alert`,[[`path`,{d:`m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3`,key:`wmoenq`}],[`path`,{d:`M12 9v4`,key:`juzpu7`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),T=e(t(),1),E=n(),Be={deck:C,lesson:Ae,image:de,edit:Ce,animate:je,video:Ee,voice:Pe,song:Fe},Ve={doc:pe,notes:Re,panel:Ie,plus:S,wallet:_e,help:he,more:De,menu:x,chevD:Te,chevL:fe,chevR:me,download:y,x:ve,works:b,gift:ke,chat:Ne,calendar:we,card:ge,qr:Le,extern:Oe,phone:ze,languages:Me,check:ue,alert:w},He={...Be,...Ve};function Ue({вид:e,размер:t=14,толщина:n=1.8,className:r}){let i=Be[e];return(0,E.jsx)(i,{className:r,size:t,strokeWidth:n,"aria-hidden":`true`,focusable:`false`})}function We({размер:e=20}){return(0,E.jsx)(Se,{size:e,strokeWidth:2.4,"aria-hidden":`true`,focusable:`false`})}var Ge={presentation:`deck`,lesson:`lesson`,image:`image`,photo_edit:`edit`,animate:`animate`,video:`video`,voice:`voice`,song:`song`,speech:`notes`,document:`doc`};function Ke({имя:e,размер:t=16,толщина:n=1.8}){let r=He[e];return(0,E.jsx)(r,{size:t,strokeWidth:n,"aria-hidden":`true`,focusable:`false`})}var D=(e=null)=>({нить:e,сообщения:[],карточки:{},вещи:{},порядокВещей:[],открыта:null,печатает:!1,шаги:[],черновик:null,ошибка:null,перечитатьСчёт:!1,предел:null,цель:null,оборван:null}),qe=`На сегодня сообщения закончились — завтра снова. Кнопки на карточках работают.`;function O(e){let t=[...e.сообщения],n=t[t.length-1];return n?.role===`assistant`&&n.идёт||t.push({id:`идёт-${t.length}`,role:`assistant`,текст:``,части:[],идёт:!0}),{сообщения:t,i:t.length-1}}var k=(e,t)=>e.map(e=>e.идёт?{...e,идёт:!1,id:t||e.id}:e),A=e=>({type:`card`,...e}),Je=`(max-width: 767.98px), (max-width: 1023.98px) and (max-height: 500px)`;
1function Ye(e){return!e.narrow||typeof window>`u`||!window.matchMedia?e.text:window.matchMedia(Je).matches?e.narrow:e.text}function j(e,t){return e?{...t,title:t.title??e.title,preview:t.preview??e.preview,document:t.document??e.document,make:t.make?.length?t.make:e.make??t.make,kind:e.kind===`lesson`?`lesson`:t.kind,anchor_message_id:e.anchor_message_id??t.anchor_message_id}:t}function Xe(e,t){switch(t.type){case`delta`:{let{сообщения:n,i:r}=O(e);return n[r]={...n[r],текст:n[r].текст+t.text},{...e,сообщения:n,печатает:!0,шаги:[]}}case`status`:{let n=e.шаги[e.шаги.length-1]===t.text?e.шаги:[...e.шаги,t.text];return{...e,шаги:n,печатает:!0}}case`draft`:return{...e,черновик:t.draft,печатает:!0};case`part`:{let{сообщения:n,i:r}=O(e);return n[r]={...n[r],части:[...n[r].части,t.part]},{...e,сообщения:n}}case`card`:{let n=t.card.card_id,r=e=>e.type===`card`&&e.card_id===n,i=e.сообщения.findIndex(e=>e.части.some(r)),a;if(i>=0){a=[...e.сообщения];let n=a[i];a[i]={...n,части:n.части.map(e=>r(e)?A(t.card):e)}}else{let n=O(e);a=n.сообщения;let r=a[n.i];a[n.i]={...r,части:[...r.части,A(t.card)]}}return{...e,сообщения:a,карточки:{...e.карточки,[n]:t.card},шаги:[],черновик:null}}case`thing`:{let n=e.вещи[t.thing.id],r=j(n,t.thing);return{...e,вещи:{...e.вещи,[r.id]:r},порядокВещей:n?e.порядокВещей:[...e.порядокВещей,r.id],открыта:r.waits?e.открыта:!n||n.waits?r.id:e.открыта}}case`error`:{let n=t.trouble;return t.code===`revision_conflict`?{...e,сообщения:k(e.сообщения),печатает:!1,шаги:[],черновик:null}:{...e,сообщения:k(e.сообщения),печатает:!1,шаги:[],черновик:null,ошибка:n?.title?{code:t.code,title:n.title,subtitle:n.subtitle,action:n.action}:{code:t.code,title:t.message||`Не получилось`}}}case`done`:return{...e,сообщения:k(e.сообщения,t.message_id),печатает:!1,шаги:[],черновик:null,перечитатьСчёт:!0};case`topup_succeeded`:return{...e,перечитатьСчёт:!0};case`limit_reached`:{let n=e.сообщения[e.сообщения.length-1],r=n?.role===`user`&&n.id.startsWith(`я-`);return{...e,сообщения:r?e.сообщения.slice(0,-1):e.сообщения,печатает:!1,шаги:[],предел:{текст:t.message??qe,причина:t.reason??null,осталось:t.messages_left??0,всего:t.messages_limit??null,черновик:t.draft?.text??(r?n.текст:``)}}}default:return e}}function M(e){let t=e.messages.filter(e=>e.role!==`tool`),n={};for(let e of t)for(let t of e.parts)t.type===`card`&&(n[t.card_id]=t);let r=new Set,i=[];for(let e of t){let t=[];for(let i of e.parts)i.type===`card`?r.has(i.card_id)||(r.add(i.card_id),t.push(A(n[i.card_id]))):t.push(i);let a=t.flatMap(e=>e.type===`text`?[Ye(e)]:[]).join(``);e.role!==`user`&&!a&&t.length===0||i.push({id:e.id,role:e.role===`user`?`user`:`assistant`,текст:a,части:t,идёт:!1})}let a=e.things??[],o=a.map(e=>e.id);return{...D(e.thread_id),сообщения:i,карточки:n,вещи:Object.fromEntries(a.map(e=>[e.id,e])),порядокВещей:o,открыта:[...a].reverse().find(e=>!e.waits)?.id??null,печатает:e.reply_pending===!0,оборван:(e.reply_orphaned||e.reply_failed)&&i.at(-1)?.role===`user`?i.at(-1)?.текст||`последнее сообщение`:null}}var Ze=new Set([`create`,`approve`]);function Qe(e,t){let n=e??{},r=n.revision??t?.document?.revision,i=n.free_first??t?.next?.free?0:n.price_rub??t?.next?.price_rub,a=n.quote_token??t?.next?.quote_token,o=(n.kind??t?.source_kind)===`creative`;return{...r==null?{}:{expected_revision:r},...o&&r!=null?{revision:r}:{},...i==null?{}:{seen_price_rub:i},...o&&a?{quote_token:a}:{}}}var $e=3e3,N=null,P=0,F=new Set,I=null,L=0,et=24e4,R=new Map;function tt(e){let t=R.get(e)??Date.now();return R.set(e,t),Date.now()-t<et}var nt=9e4,z=new Map;function rt(e){let t=z.get(e)??Date.now();return z.set(e,t),Date.now()-t<nt}var it=36e4,B=new Map;function at(e){let t=B.get(e)??Date.now();return B.set(e,t),Date.now()-t<it}var ot=9e4,V=new Map;function st(e){let t=V.get(e)??Date.now();return V.set(e,t),Date.now()-t<ot}var ct=15e4,H=new Map;function lt(e){let t=H.get(e)??Date.now();return H.set(e,t),Date.now()-t<ct}var U=new AbortController,W=le((e,t)=>{let n=()=>{N&&clearTimeout(N),N=null},i=async n=>{let i=await r(n).catch(()=>null);!i||t().нить!==n||P>0||e(e=>{let t=M(i),n=e.открыта&&t.вещи[e.открыта]?e.открыта:t.открыта;return{...t,открыта:n,ошибка:e.ошибка,перечитатьСчёт:e.перечитатьСчёт,предел:e.предел,цель:e.цель}})},a=()=>{n();let{нить:e,вещи:r,печатает:o,карточки:s}=t();if(!e||P>0)return;let c=Object.values(s).some(e=>e.kind===`deck`&&(e.status===`building`||(e.redrawing_count??0)>0||e.slides?.some(e=>e.status===`generating`))),l=Object.values(s).some(e=>e.kind===`questions`&&!e.answered&&e.form?.complete===!1&&tt(e.card_id)),u=Object.values(s).some(e=>e.kind===`questions`&&!e.answered&&!(e.web_assets??[]).length&&rt(e.card_id)),d=Object.values(s).some(e=>e.kind===`plan`&&e.cover_status===`drawing`&&at(JSON.stringify([e.card_id,e.revision,e.style_key,e.signature]))
1),f=Object.values(s).some(e=>e.kind===`plan`&&e.labels_pending===!0&&st(e.card_id)),p=Object.values(s).some(e=>e.kind===`plan`&&e.style_pending===!0&&lt(e.card_id));!o&&!c&&!l&&!u&&!d&&!f&&!p&&!Object.values(r).some(e=>e.stage===`making`)||(N=setTimeout(async()=>{N=null,await i(e),t().нить===e&&a()},$e))},o=async(r,o=!1)=>{let s=t().нить;if(!s)return null;let c=U.signal,l=null,u=n=>{t().нить===s&&(n.type===`error`&&(l=n,o&&n.code===`reply_in_progress`)||e(e=>Xe(e,n)))};n(),P++;let d=!1;try{await r(s,u,c)}catch{d=!c.aborted}finally{P--}if(t().нить!==s)return l;let f=t().печатает||t().сообщения.some(e=>e.идёт);return(d||l||f)&&await i(s),a(),d&&!l?{type:`error`,code:`network_unknown`,message:`Связь оборвалась — не знаю, сохранилось ли. Проверь и нажми ещё раз.`}:l},s=n=>{let r=[...n.messages].reverse().find(e=>e.role!==`tool`),i=t().нить;!i||r?.role!==`user`||F.has(i)||(F.add(i),e({печатает:!0,оборван:null,шаги:[],черновик:null}),o((e,t,n)=>g(e,{text:``,attachments:[]},t,n),!0))};return{...D(),async открыть(i){let o=++L;U.abort(),U=new AbortController,n(),t().нить!==i&&e(D(i));let c=await r(i);if(o===L&&t().нить===i){if(e(M(c)),I?.нить===i){let{текст:e,вложения:n}=I;I=null,t().написать(e,n);return}s(c),a()}},закрыть(){L+=1,U.abort(),U=new AbortController,n(),e(D())},async написать(n,r=[],i){if(!t().нить||t().предел||!n.trim()&&r.length===0)return;let a=i??t().цель??void 0;t().цель&&e({цель:null});let s=[...n.trim()?[{type:`text`,text:n}]:[],...r.map(e=>({type:`attachment`,...e})),...a?[{type:`target`,...a}]:[]];e(e=>({ошибка:null,печатает:!0,шаги:[],черновик:null,сообщения:[...e.сообщения,{id:`я-${Date.now()}`,role:`user`,текст:n,части:s,идёт:!1}]})),await o((e,t,i)=>g(e,{text:n,attachments:r,...a?{target:a}:{}},t,i))},async нажать(n,r,a={}){let s=t();if(!s.нить)return null;let c=Object.values(s.вещи).find(e=>e.card_id===n),l=Ze.has(r)?{...Qe(s.карточки[n],c),...a}:a;e({ошибка:null});let u=s.карточки,d=await o((e,t,i)=>ae(e,n,r,l,t,i)),f=t();return Object.values(f.карточки).some(e=>{let t=e.thing_id;return!u[e.card_id]&&typeof t==`string`&&f.вещи[t]&&f.вещи[t].card_id!==e.card_id})&&f.нить===s.нить&&s.нить&&await i(s.нить),t().нить===s.нить&&e({перечитатьСчёт:!0}),d},async ответить(n,r,i,a=`answer`){return i&&e(e=>({сообщения:[...e.сообщения,{id:`я-${Date.now()}`,role:`user`,текст:i,части:[],идёт:!1}]})),t().нажать(n,a,r)},async создатьВещь(n,r,i=!1){let a=t().вещи[n];if(!a?.next)return null;if(r!==void 0){let t=a.next.free?0:a.next.price_rub??null;if(t!==r){let n=t==null?`Условия изменились — проверь и нажми ещё раз.`:`Цена изменилась: было ${r??`—`} ₽, теперь ${t} ₽. Проверь и нажми ещё раз.`;return e({ошибка:{code:`quote_changed`,title:`Цена изменилась`,subtitle:n}}),{type:`error`,code:`quote_changed`,message:n}}}return t().нажать(a.card_id,a.next.action===`rerecord`?`create`:a.next.action,a.source_kind===`plan`&&i?{keep_private:!0}:void 0)},открытьВещь(t){e({открыта:t})},async повторить(){!t().нить||t().печатает||(e({оборван:null,ошибка:null,печатает:!0,шаги:[],черновик:null}),await o((e,t,n)=>g(e,{text:``,attachments:[]},t,n)))},выбратьЦель(t){e({цель:t})},засеять(t,r){U.abort(),U=new AbortController,n(),e({...D(t),печатает:!0,сообщения:[{id:`я-${Date.now()}`,role:`user`,текст:r,части:[{type:`text`,text:r}],идёт:!1}]})},отложить(e,t,n){I={нить:e,текст:t,вложения:n}}}}),ut=ce();async function G(e,t){let n=await fetch(`${ut}${e}`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(t),credentials:`include`}),r=null;try{r=await n.json()}catch{}if(!n.ok)throw new o(r?.detail||r?.message||n.statusText);return r??{success:!1,message:`Нет ответа от сервера`}}async function K(e){return G(`/api/v1/auth/forgot-password`,{email:e})}async function q(e,t){let n=await G(`/api/v1/auth/reset-password`,{token:e,password:t});if(!n.success)throw new o(n.message||`Ссылка устарела или недействительна`);return n}function J(e){return{id:e.id,почта:e.email,имя:e.display_name||e.first_name||e.email||`Гость`,принятаяОферта:e.accepted_terms_version,баÐ
1»Ð°Ð½Ñ:typeof e.balance==`number`?e.balance:null}}function Y(e){return`${typeof location>`u`?``:location.origin}/auth/${e}/callback`}var X={async войти(e,t){return J(await a(e,t))},async создать(e,t){return{нуженПочтовыйШаг:!(await d({email:e,password:t})).email_verified}},async подтвердить(e){let t=await u(e);if(!t.success)throw Error(t.message||`Не вышло подтвердить почту`)},async повторитьПисьмо(){await oe()},async прислатьСсылку(e){await K(e)},async задатьПароль(e,t){await q(e,t)},async провайдеры(){let e={};try{e=await se(`GET`,`/api/v1/auth/providers`,void 0,!1,{noAuth:!0})}catch{return{yandex:null,vk:null,telegram:!1}}let t=typeof e.yandex==`string`?e.yandex:null,n=typeof e.vk==`string`?e.vk:null;return{yandex:t?te(Y(`yandex`),t):null,vk:n?await dt(n):null,telegram:!!e.telegram}},async забратьГостевое(){await h().catch(()=>null),xe()&&(await be().catch(()=>null),ye())},async кто(){let e=await i();return e?J(e):null},async выйти(){await s()}};async function dt(e){try{let t=re(),n=m(),r=await ie(t);return localStorage.setItem(p,t),localStorage.setItem(ne,n),ee(Y(`vk`),r,n,e)}catch{return null}}var Z=`pz-m26-login-thread`,ft=864e5,pt=65536,Q=(e,t)=>typeof e==`string`&&e.length<=t;function mt(e){if(!e||typeof e!=`object`)return!1;let t=e;return Q(t.owner,200)&&Q(t.id,100)&&t.id.length>0&&(t.диалог===null||Q(t.диалог,200))&&Q(t.текст,16e3)&&typeof t.at==`number`&&t.at<=Date.now()&&Date.now()-t.at<ft&&Array.isArray(t.вложения)&&t.вложения.length<=10&&t.вложения.every(e=>e&&[`document`,`image`,`audio`,`template`,`photo`,`plan_photo`].includes(e.kind)&&Q(e.ref,2048)&&/^[\w/.-]+$/.test(e.ref)&&Q(e.name,500))}function ht(){try{let e=sessionStorage.getItem(Z);if(!e||e.length>pt)return null;if(!e.startsWith(`{`))return/^[\w-]{1,200}$/.test(e)?{диалог:e===`home`?null:e,запись:e}:null;let t=JSON.parse(e);return mt(t)?{диалог:t.диалог,снимок:{owner:t.owner,id:t.id,диалог:t.диалог,текст:t.текст,at:t.at,вложения:t.вложения.map(({kind:e,ref:t,name:n})=>({kind:e,ref:t,name:n}))},запись:e}:null}catch{return null}}function gt(e){try{sessionStorage.getItem(Z)===e.запись&&sessionStorage.removeItem(Z)}catch{}}var _t={smile:`M40 60c3 3 13 3 16 0`,big:`M38 58c4 6 16 6 20 0`,think:`M40 62c3-3 13-3 16 0`,flat:`M40 61h16`,o:`M44 60a4 3 0 1 0 8 0a4 3 0 1 0-8 0`},vt={bob:`м26-bob 3.2s ease-in-out infinite`,"bob-быстро":`м26-bob .7s ease-in-out infinite`,hop:`м26-hop .6s ease-out both`,none:`none`};function yt({ширина:e=56,высота:t=64,рот:n=`smile`,цвет:r=`#1A1523`,толщина:i=4.5,движение:a=`bob`,смотритВниз:o=!1,моргает:s=!0}){let c=o?48:44;return(0,E.jsxs)(`svg`,{className:a===`none`?void 0:`м26-маскот-качается`,style:{animation:vt[a],transformOrigin:`50% 100%`,flex:`none`},width:e,height:t,viewBox:`0 0 96 112`,fill:`none`,stroke:r,strokeWidth:i,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,focusable:`false`,children:[(0,E.jsx)(`rect`,{x:`12`,y:`8`,width:`72`,height:`96`,rx:`12`,fill:`#fff`}),(0,E.jsxs)(`g`,{className:s?`м26-глаза-моргают`:void 0,style:{transformOrigin:`48px 44px`,animation:s?`м26-eyeBlink 4.2s ease-in-out infinite`:`none`},children:[(0,E.jsx)(`circle`,{cx:`38`,cy:c,r:`4`,fill:r,style:{transition:`cy .3s`}}),(0,E.jsx)(`circle`,{cx:`58`,cy:c,r:`4`,fill:r,style:{transition:`cy .3s`}})]}),(0,E.jsx)(`path`,{d:_t[n],style:{transition:`d .3s`}})]})}function $({вещь:e,наВерсию:t,наКнопку:n}){let r=e.versions??[],i=e.headBtns??[];return(0,E.jsxs)(`div`,{className:`м26в-шапка`,children:[(0,E.jsxs)(`div`,{className:`м26в-шапка__текст`,children:[(0,E.jsx)(`h2`,{className:`м26в-шапка__титул`,children:e.title}),e.sub&&(0,E.jsx)(`span`,{className:`м26в-шапка__под`,children:e.sub})]}),(0,E.jsxs)(`div`,{className:`м26в-шапка__право`,children:[r.length>0&&(0,E.jsx)(`div`,{className:`м26в-версии`,role:`group`,"aria-label":`Версии`,children:r.map(e=>(0,E.jsx)(`button`,{type:`button`,className:`м26в-версия${e.on?` м26в-версия--вкл`:``}`,"aria-pressed":!!e.on,onClick:()=>
1t?.(e.n),children:e.n},e.n))}),i.map(e=>(0,E.jsx)(`button`,{type:`button`,className:`м26в-мелкая`,onClick:()=>n?.(e),children:e},e))]})]})}var bt=e=>!!(e.foot||e.cta||e.ghostBtns&&e.ghostBtns.length||e.seg);function xt({вещь:e,наСегмент:t,наGhost:n,наДействие:r}){if(!bt(e))return null;let i=e.seg??[],a=e.ghostBtns??[];return(0,E.jsxs)(`div`,{className:`м26в-подвал`,children:[(0,E.jsxs)(`div`,{className:`м26в-подвал__лево`,children:[i.length>0&&(0,E.jsx)(`div`,{className:`м26в-сегмент`,role:`group`,"aria-label":`Длительность`,children:i.map(e=>(0,E.jsx)(`button`,{type:`button`,"aria-pressed":!!e.on,onClick:()=>t?.(e.label),children:e.label},e.label))}),e.foot&&(0,E.jsx)(`span`,{className:`м26в-подвал__текст`,children:e.foot})]}),(0,E.jsxs)(`div`,{className:`м26в-подвал__право`,children:[a.map(e=>(0,E.jsx)(`button`,{type:`button`,className:`м26в-ghost`,onClick:()=>n?.(e),children:e},e)),e.cta&&(0,E.jsx)(`button`,{type:`button`,className:`м26в-главная`,onClick:r,children:e.cta})]})]})}function St({вещь:e,наЗадачу:t,наМеню:n,наНовую:r}){return e.empty?(0,E.jsxs)(E.Fragment,{children:[(0,E.jsx)($,{вещь:e}),(0,E.jsxs)(`div`,{className:`м26в-пусто`,children:[(0,E.jsx)(yt,{ширина:72,высота:84,цвет:`#3B1F4E`,толщина:4.5,движение:`none`}),(0,E.jsx)(`span`,{className:`м26в-пусто__титул`,children:`Пока пусто`}),(0,E.jsx)(`span`,{className:`м26в-пусто__текст`,children:`Напиши первую фразу — соберу план или текст. Первая презентация — в подарок после входа.`}),(0,E.jsx)(`button`,{type:`button`,className:`м26в-главная`,onClick:r,children:`+ Новая задача`})]})]}):(0,E.jsxs)(E.Fragment,{children:[(0,E.jsx)($,{вещь:e,наКнопку:()=>r?.()}),(0,E.jsx)(`div`,{className:`м26в-задачи`,children:(e.tasks??[]).map(([e,r,i,a,o,s],c)=>(0,E.jsxs)(`div`,{className:`м26в-задача`,style:{borderColor:s?`#3B1F4E`:`#E6E1D8`},children:[(0,E.jsxs)(`button`,{type:`button`,className:`м26в-задача__кнопка`,onClick:()=>t?.(r,c),children:[(0,E.jsxs)(`span`,{className:`м26в-задача__превью`,style:{background:a},children:[(0,E.jsx)(`span`,{style:{color:`#fff`,display:`inline-flex`},children:(0,E.jsx)(Ue,{className:`м26в-задача__значок`,вид:e,размер:18})}),o===`plan`&&(0,E.jsx)(`span`,{className:`м26в-задача__бейдж`,children:`план · не создано`})]}),(0,E.jsxs)(`span`,{className:`м26в-задача__текст`,children:[(0,E.jsx)(`span`,{className:`м26в-задача__имя`,children:r}),(0,E.jsx)(`span`,{className:`м26в-задача__дата`,children:i})]})]}),s&&(0,E.jsx)(`div`,{className:`м26в-меню`,role:`menu`,"aria-label":`Что сделать с задачей`,children:[`Переименовать`,`Открыть`,`Удалить`].map(e=>(0,E.jsx)(`button`,{type:`button`,role:`menuitem`,className:`м26в-меню__пункт${e===`Удалить`?` м26в-меню__пункт--опасный`:``}`,onClick:()=>n?.(e),children:e},e))})]},`${r}-${c}`))})]})}function Ct({имя:e,почта:t,баланс:n,наПункт:r}){return(0,E.jsxs)(`div`,{className:`м26в-аватар-меню`,role:`menu`,"aria-label":`Профиль`,children:[(0,E.jsxs)(`div`,{className:`м26в-аватар-меню__шапка`,children:[(0,E.jsx)(`span`,{className:`м26в-аватар-меню__имя`,children:e}),(0,E.jsxs)(`span`,{className:`м26в-аватар-меню__почта`,children:[t?`${t} · `:``,n]})]}),[`Счёт и история`,`Помощь`,`Условия`,`Выйти`].map((e,t)=>(0,E.jsx)(`button`,{type:`button`,role:`menuitem`,className:`м26в-аватар-меню__пункт${t===0?` м26в-аватар-меню__пункт--вкл`:``}${e===`Выйти`?` м26в-аватар-меню__пункт--тихий`:``}`,onClick:()=>r?.(e),children:e},e))]})}function wt({вошёл:e,имя:t,баланс:n,наВход:r,наСчёт:i,класс:a,дети:o,подпись:s}){let[c,l]=(0,T.useState)(!1),[u,d]=(0,T.useState)(!1),f=(0,T.useRef)(null),p=_(e=>e.webUser?.email??``);(0,T.useEffect)(()=>
1{if(!c)return;let e=e=>{f.current?.contains(e.target)||l(!1)},t=e=>{e.key===`Escape`&&l(!1)};return document.addEventListener(`pointerdown`,e),document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`pointerdown`,e),document.removeEventListener(`keydown`,t)}},[c]);let m=async e=>{if(l(!1),e===`Счёт и история`){i?.();return}if(e===`Помощь`){window.location.assign(`/contact`);return}if(e===`Условия`){window.location.assign(`/terms`);return}if(!(e!==`Выйти`||u)){d(!0);try{await X.выйти()}catch{}finally{let e=ht();e&&gt(e),_.getState().setSession(null),d(!1),window.location.assign(`/masterskaya`)}}};return e?(0,E.jsxs)(`div`,{className:`м26-профиль`,ref:f,children:[(0,E.jsx)(`button`,{type:`button`,className:a,"aria-label":s,"aria-haspopup":`menu`,"aria-expanded":c,onClick:()=>l(!c),children:o}),c&&(0,E.jsx)(Ct,{имя:t,почта:p,баланс:`${n} ₽`,наПункт:e=>{m(e)}})]}):(0,E.jsx)(`button`,{type:`button`,className:a,onClick:r,"aria-label":s,children:o})}var Tt=e=>`/masterskaya/chat/${encodeURIComponent(e)}`,Et=()=>Promise.allSettled([be(),h()]);async function Dt(e,t){let n=()=>W.getState().открыть(e).then(()=>!0,()=>!1);return await n()?!0:t?(await Et(),n()):!1}function Ot(){let e=_(e=>e.hydrated),t=_(e=>e.sessionStatus),n=_(e=>e.webUser);return{статус:t,готова:e&&(t===`authenticated`||t===`guest`),вошёл:t===`authenticated`,имя:n?.first_name||n?.display_name||``}}function kt(e){let[t,n]=(0,T.useState)([]),r=(0,T.useCallback)(()=>{f(30).then(e=>n(e.threads)).catch(()=>{})},[]);return(0,T.useEffect)(()=>{if(!e)return;let t=!0;return f(30).then(e=>{t&&n(e.threads)}).catch(()=>{}),()=>{t=!1}},[e]),{список:t,переименовать:async(e,t)=>{let r=await c(e,t);n(t=>t.map(t=>t.id===e?{...t,title:r.title}:t))},удалить:async e=>{await l(e),n(t=>t.filter(t=>t.id!==e))},перечитать:r}}function At({вошёл:e,имя:t,остаток:n,адресСчёта:r,наВход:i}){return e?(0,E.jsx)(wt,{вошёл:!0,имя:t,баланс:n??0,наВход:()=>{},наСчёт:()=>window.location.assign(r),класс:`м26-чат__аватар`,подпись:`Профиль`,дети:(t.trim()[0]??`·`).toUpperCase()}):(0,E.jsx)(`button`,{type:`button`,className:`м26к-войти`,onClick:i,children:`Войти`})}export{b as C,x as S,Te as T,We as _,Et as a,C as b,xt as c,K as d,q as f,Ue as g,Ge as h,Tt as i,$ as l,j as m,kt as n,Dt as o,W as p,At as r,St as s,Ot as t,X as u,Ke as v,y as w,S as x,w as y};

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.