@nextclaw/ui 0.12.19 → 0.12.20-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +39 -0
- package/dist/assets/api-BcqDx0tm.js +15 -0
- package/dist/assets/app-manager-provider-DVYBjif-.js +1 -0
- package/dist/assets/app-navigation.config-CMoWvFEI.js +1 -0
- package/dist/assets/{book-open-CVEuA0y5.js → book-open-DgLqYpNY.js} +1 -1
- package/dist/assets/{channels-list-page-BqhqaBf1.js → channels-list-page-CsoI4OJm.js} +2 -2
- package/dist/assets/{chat-D4KecKjB.js → chat-CA3aRmhx.js} +13 -12
- package/dist/assets/chat-page-gdSN6Pr6.js +1 -0
- package/dist/assets/chunk-JZWAC4HX-u4uYphxM.js +3 -0
- package/dist/assets/{config-split-page-BGjVACdO.js → config-split-page-BMRGuCJQ.js} +1 -1
- package/dist/assets/{createLucideIcon-PPrXCGK8.js → createLucideIcon-BZkY6emz.js} +1 -1
- package/dist/assets/desktop-update-config-CD6-2PfI.js +1 -0
- package/dist/assets/{dialog-CTCX7oLf.js → dialog-csshWetU.js} +1 -1
- package/dist/assets/{dist-FL5e8mMi.js → dist-Bl94Ahwx.js} +1 -1
- package/dist/assets/{doc-browser-C02neCIE.js → doc-browser-BUlCkZo2.js} +1 -1
- package/dist/assets/doc-browser-CzCV73NJ.js +1 -0
- package/dist/assets/doc-browser-Doh2541x.js +1 -0
- package/dist/assets/{doc-browser-context-C-WPOji4.js → doc-browser-context-DfLHAWbG.js} +1 -1
- package/dist/assets/{es2015-BNy4R8AC.js → es2015-JCM5-KtW.js} +1 -1
- package/dist/assets/{external-link-BNtqJE01.js → external-link-Sw3ah_JD.js} +1 -1
- package/dist/assets/{folder-QyJHVUNz.js → folder-D7-VTnkz.js} +1 -1
- package/dist/assets/{hash-BGYUE-zr.js → hash-zajSTDXZ.js} +1 -1
- package/dist/assets/i18n-C5Mibli1.js +1 -0
- package/dist/assets/index-BTDFuKka.js +2 -0
- package/dist/assets/index-CUmk8xFK.css +1 -0
- package/dist/assets/{key-round-DenCfA2w.js → key-round-CnI1mc9F.js} +1 -1
- package/dist/assets/loader-circle-B5i8oMMY.js +1 -0
- package/dist/assets/{logo-badge-CKAxvQFc.js → logo-badge-BQgKnVtz.js} +1 -1
- package/dist/assets/{logos-CqXnaJIm.js → logos-CqVm0q0W.js} +1 -1
- package/dist/assets/marketplace-page-DJGDpTAo.js +1 -0
- package/dist/assets/{marketplace-page-XnDa2ulT.js → marketplace-page-DxlxHCFm.js} +2 -2
- package/dist/assets/mcp-marketplace-page-5UjYRWOR.js +40 -0
- package/dist/assets/mcp-marketplace-page-C1XaHZZO.js +1 -0
- package/dist/assets/message-square-D6Z4NwpG.js +1 -0
- package/dist/assets/{model-config-ByeL6Toe.js → model-config-PccJ9XyH.js} +1 -1
- package/dist/assets/{notice-card-D00-02yg.js → notice-card-CCgk6FvF.js} +1 -1
- package/dist/assets/play-D8WJLnJe.js +1 -0
- package/dist/assets/plus-Di0KAkiO.js +1 -0
- package/dist/assets/{popover-AmJkxio3.js → popover-YAsxDBhY.js} +1 -1
- package/dist/assets/{provider-scoped-model-input-CfFJsJp-.js → provider-scoped-model-input-CzpF7cug.js} +1 -1
- package/dist/assets/{providers-list-HMQzW2WV.js → providers-list-8qDMER8o.js} +1 -1
- package/dist/assets/{refresh-ccw-B-dhb3yS.js → refresh-ccw-Bii4w8aB.js} +1 -1
- package/dist/assets/refresh-cw-BxojR62w.js +1 -0
- package/dist/assets/remote-D4TtLPAp.js +1 -0
- package/dist/assets/{rotate-cw-BWqAG3Fv.js → rotate-cw-1Xqa7LZ8.js} +1 -1
- package/dist/assets/runtime-config-page-D-4c5H5z.js +1 -0
- package/dist/assets/{save-DpdkGieJ.js → save--BVI5wZX.js} +1 -1
- package/dist/assets/search-config-D3a65l3r.js +1 -0
- package/dist/assets/{search-CQUdr7j_.js → search-vChioOoe.js} +1 -1
- package/dist/assets/{secrets-config-YCsGd1am.js → secrets-config-CoMlR_7i.js} +2 -2
- package/dist/assets/{select-DVUtSFHZ.js → select-DIZrwsKU.js} +1 -1
- package/dist/assets/{sessions-config-page-BKN-XdKr.js → sessions-config-page-Cc0TJStn.js} +2 -2
- package/dist/assets/{setting-row-Cb5-lFs-.js → setting-row-DiQyrE81.js} +1 -1
- package/dist/assets/{settings-DgtZZlnF.js → settings-CiRChctQ.js} +1 -1
- package/dist/assets/skeleton-CFQRIUzt.js +1 -0
- package/dist/assets/{sparkles-DNSCyDhL.js → sparkles-D1ZKWdm4.js} +1 -1
- package/dist/assets/{status-dot-X_j51OfA.js → status-dot-Dv_hiUVa.js} +1 -1
- package/dist/assets/{tabs-custom-CcWmekaF.js → tabs-custom-CsACkVji.js} +1 -1
- package/dist/assets/{tag-chip-fdbK2wE6.js → tag-chip-C3wDBe_-.js} +1 -1
- package/dist/assets/theme-provider-aOmrJ9J6.js +1 -0
- package/dist/assets/{tooltip-BkZCQcKw.js → tooltip-Dq5Xehpk.js} +1 -1
- package/dist/assets/{trash-2-CqciSCsg.js → trash-2-rY9ZteZX.js} +1 -1
- package/dist/assets/use-config-BQJjq1mP.js +1 -0
- package/dist/assets/{use-confirm-dialog-DSrb9205.js → use-confirm-dialog-DBoV5n5P.js} +1 -1
- package/dist/assets/{use-infinite-scroll-loader-DmowtyTI.js → use-infinite-scroll-loader-JAicqVC5.js} +1 -1
- package/dist/assets/{use-viewport-layout-CaALCA51.js → use-viewport-layout-BX3XqzJ4.js} +1 -1
- package/dist/assets/x-DpTzXQcX.js +1 -0
- package/dist/index.html +40 -39
- package/package.json +9 -6
- package/src/app/hooks/use-realtime-query-bridge.ts +5 -5
- package/src/app/index.tsx +7 -1
- package/src/features/channels/components/config/channel-form.tsx +3 -3
- package/src/features/channels/components/config/weixin-channel-auth-section.tsx +1 -1
- package/src/features/chat/components/conversation/chat-conversation-panel.tsx +1 -0
- package/src/features/chat/components/conversation/chat-input-bar.container.tsx +9 -4
- package/src/features/chat/components/conversation/chat-message-list.container.test.tsx +64 -6
- package/src/features/chat/components/conversation/chat-message-list.container.tsx +185 -17
- package/src/features/chat/components/session/session-context-icon.tsx +1 -4
- package/src/features/chat/hooks/use-ncp-chat-derived-state.ts +3 -1
- package/src/features/chat/hooks/use-ncp-chat-page-data.ts +7 -6
- package/src/features/chat/hooks/use-ncp-session-conversation.test.tsx +74 -2
- package/src/features/chat/hooks/use-ncp-session-conversation.ts +32 -10
- package/src/features/chat/hooks/use-selected-session-context-window-indicator.ts +20 -0
- package/src/features/chat/managers/ncp-chat-input.manager.test.ts +25 -0
- package/src/features/chat/managers/ncp-chat-input.manager.ts +5 -1
- package/src/features/chat/pages/ncp-chat-page.test.ts +22 -8
- package/src/features/chat/pages/ncp-chat-page.tsx +15 -11
- package/src/features/chat/stores/chat-thread.store.ts +8 -2
- package/src/features/chat/utils/chat-context-window-indicator.utils.ts +50 -0
- package/src/features/chat/utils/chat-runtime.utils.ts +1 -1
- package/src/features/chat/utils/chat-session-preference-governance.utils.test.tsx +114 -0
- package/src/features/chat/utils/chat-session-preference-governance.utils.ts +30 -36
- package/src/features/chat/utils/ncp-chat-runtime-availability.utils.test.ts +165 -0
- package/src/features/chat/utils/ncp-chat-runtime-availability.utils.ts +50 -0
- package/src/features/chat/utils/ncp-session-adapter.utils.test.ts +27 -0
- package/src/features/chat/utils/ncp-session-adapter.utils.ts +6 -4
- package/src/features/chat/utils/ncp-session-context-metadata.utils.ts +121 -0
- package/src/features/chat/utils/session-context.utils.ts +1 -2
- package/src/features/system-status/components/config/runtime-config-editor.tsx +6 -0
- package/src/features/system-status/components/config/runtime-settings-card.tsx +12 -0
- package/src/features/system-status/components/desktop-update-config.test.tsx +17 -7
- package/src/features/system-status/components/desktop-update-config.tsx +75 -30
- package/src/features/system-status/hooks/use-system-status.ts +0 -11
- package/src/features/system-status/index.ts +4 -1
- package/src/features/system-status/managers/runtime-update.manager.ts +330 -0
- package/src/features/system-status/managers/system-status.manager.test.ts +0 -25
- package/src/features/system-status/managers/system-status.manager.ts +1 -30
- package/src/features/system-status/stores/runtime-update.store.ts +24 -0
- package/src/features/system-status/types/system-status.types.ts +0 -2
- package/src/features/system-status/utils/runtime-config-agent.utils.ts +6 -1
- package/src/features/system-status/utils/system-status.utils.test.ts +1 -85
- package/src/features/system-status/utils/system-status.utils.ts +1 -23
- package/src/platforms/desktop/managers/desktop-update.manager.ts +6 -0
- package/src/platforms/desktop/types/desktop-update.types.ts +21 -19
- package/src/shared/components/common/brand-header.test.tsx +142 -0
- package/src/shared/components/common/brand-header.tsx +93 -0
- package/src/shared/components/cron-config.tsx +1 -1
- package/src/shared/components/doc-browser/doc-browser-context.test.tsx +1 -1
- package/src/shared/components/doc-browser/doc-browser.tsx +1 -1
- package/src/shared/components/search-config.tsx +3 -3
- package/src/shared/lib/api/README.md +3 -0
- package/src/shared/lib/api/index.ts +13 -11
- package/src/shared/lib/api/ncp-session.test.ts +17 -18
- package/src/shared/lib/api/ncp-session.types.ts +92 -0
- package/src/shared/lib/api/raw-client.utils.ts +3 -126
- package/src/shared/lib/api/services/agents.service.ts +18 -0
- package/src/shared/lib/api/services/channel-auth.service.ts +21 -0
- package/src/shared/lib/api/{client.ts → services/client.service.ts} +45 -1
- package/src/shared/lib/api/services/config.service.ts +171 -0
- package/src/shared/lib/api/services/marketplace.service.ts +66 -0
- package/src/shared/lib/api/services/mcp-marketplace.service.ts +70 -0
- package/src/shared/lib/api/services/ncp-attachments.service.ts +14 -0
- package/src/shared/lib/api/services/ncp-session.service.ts +39 -0
- package/src/shared/lib/api/services/remote.service.ts +50 -0
- package/src/shared/lib/api/services/runtime-control.service.ts +18 -0
- package/src/shared/lib/api/services/runtime-update.service.ts +26 -0
- package/src/shared/lib/api/services/server-path.service.ts +16 -0
- package/src/shared/lib/api/types.ts +9 -74
- package/src/shared/lib/i18n/{chat.ts → chat-labels.utils.ts} +13 -1
- package/src/shared/lib/i18n/desktop-update-labels.utils.ts +65 -0
- package/src/shared/lib/i18n/index.ts +4 -5
- package/src/shared/lib/i18n/runtime/i18n-language-owner.ts +5 -5
- package/src/shared/lib/transport/index.ts +1 -0
- package/src/shared/lib/transport/local-transport.service.ts +24 -4
- package/src/shared/lib/transport/remote-transport.service.ts +2 -2
- package/src/shared/lib/transport/request-raw-api-response.utils.ts +133 -0
- package/src/shared/lib/transport/transport.types.ts +8 -2
- package/src/shared/lib/ui-document-title/index.ts +1 -1
- package/tsconfig.json +1 -0
- package/dist/assets/api-BurjmW4A.js +0 -15
- package/dist/assets/app-manager-provider-DhxUmyTv.js +0 -1
- package/dist/assets/app-navigation.config-Bpd16Pem.js +0 -1
- package/dist/assets/chat-page-Cc7n80lW.js +0 -1
- package/dist/assets/chunk-JZWAC4HX-24FLdHl7.js +0 -3
- package/dist/assets/desktop-update-config-fMLlSStv.js +0 -1
- package/dist/assets/doc-browser-COj7x090.js +0 -1
- package/dist/assets/doc-browser-fyn7eDTp.js +0 -1
- package/dist/assets/i18n-CM4y8Mw9.js +0 -1
- package/dist/assets/index-CtVSzMPM.js +0 -2
- package/dist/assets/index-N3hjuljD.css +0 -1
- package/dist/assets/loader-circle-R23uEPkM.js +0 -1
- package/dist/assets/marketplace-page-mF-M5mku.js +0 -1
- package/dist/assets/mcp-marketplace-page-BArKWcRZ.js +0 -40
- package/dist/assets/mcp-marketplace-page-DBUcIIHJ.js +0 -1
- package/dist/assets/message-square-Dm34zD6k.js +0 -1
- package/dist/assets/play-ul4L6MWm.js +0 -1
- package/dist/assets/plus-D14303DH.js +0 -1
- package/dist/assets/remote-B4ELSd3u.js +0 -1
- package/dist/assets/runtime-config-page-N4FP6H0M.js +0 -1
- package/dist/assets/search-config-B62TY-z2.js +0 -1
- package/dist/assets/skeleton-BCPi52jT.js +0 -1
- package/dist/assets/theme-provider-WTWq_jYq.js +0 -1
- package/dist/assets/use-config-CyvhbRhf.js +0 -1
- package/dist/assets/x-tYcSDsrY.js +0 -1
- package/src/shared/lib/api/agents.ts +0 -34
- package/src/shared/lib/api/channel-auth.ts +0 -35
- package/src/shared/lib/api/config.ts +0 -362
- package/src/shared/lib/api/marketplace.ts +0 -156
- package/src/shared/lib/api/mcp-marketplace.ts +0 -138
- package/src/shared/lib/api/ncp-attachments.ts +0 -41
- package/src/shared/lib/api/ncp-session.ts +0 -78
- package/src/shared/lib/api/remote.ts +0 -86
- package/src/shared/lib/api/runtime-control.ts +0 -34
- package/src/shared/lib/api/server-path.ts +0 -46
- /package/dist/assets/{config-hints-CPNzbMEp.js → config-hints-MogHYQ8G.js} +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{_ as e,a as t,d as n,f as r,g as i,h as a,i as o,m as s,n as c,p as l,t as u,u as d}from"./i18n-CM4y8Mw9.js";import{At as f,Ft as p,Gt as m,H as h,It as g,Mt as _,Ot as v,Pt as y,_t as b,at as x,b as S,bt as C,g as w,h as T,it as E,jt as D,kt as O,m as ee,mt as k,n as te,ot as A,p as ne,r as j,rt as re,st as ie,y as ae,yt as oe,zt as se}from"./api-BurjmW4A.js";import{a as ce,i as le,n as ue,o as de,r as fe,t as pe}from"./dialog-CTCX7oLf.js";import{t as M}from"./createLucideIcon-PPrXCGK8.js";import{b as me,c as he,d as ge,f as _e,g as ve,h as ye,l as be,m as xe,n as Se,s as Ce,u as we,v as Te,y as Ee}from"./theme-provider-WTWq_jYq.js";import{n as De,t as Oe}from"./search-CQUdr7j_.js";import{t as ke}from"./book-open-CVEuA0y5.js";import{D as Ae,O as je,_ as Me,b as Ne,c as Pe,d as Fe,f as Ie,g as Le,h as Re,i as ze,k as Be,l as Ve,m as He,n as Ue,o as We,p as Ge,r as Ke,s as qe,t as Je,u as Ye,v as Xe,y as Ze}from"./select-DVUtSFHZ.js";import{t as Qe}from"./external-link-BNtqJE01.js";import{t as $e}from"./folder-QyJHVUNz.js";import{n as et,t as tt}from"./logos-CqXnaJIm.js";import{t as nt}from"./loader-circle-R23uEPkM.js";import{t as rt}from"./plus-D14303DH.js";import{t as it}from"./refresh-ccw-B-dhb3yS.js";import{t as at}from"./settings-DgtZZlnF.js";import{t as ot}from"./sparkles-DNSCyDhL.js";import{t as st}from"./trash-2-CqciSCsg.js";import{t as ct}from"./x-tYcSDsrY.js";import{i as lt}from"./doc-browser-context-C-WPOji4.js";import{n as ut}from"./doc-browser-C02neCIE.js";import{n as dt,t as ft}from"./use-viewport-layout-CaALCA51.js";import{m as pt}from"./use-config-CyvhbRhf.js";import{a as mt,c as ht,i as gt,n as _t,o as vt,r as yt,s as bt,t as xt}from"./popover-AmJkxio3.js";import{t as St}from"./logo-badge-CKAxvQFc.js";import{a as Ct,c as wt,i as Tt,l as Et,n as Dt,o as Ot,r as kt,s as At,t as jt}from"./tooltip-BkZCQcKw.js";import{t as Mt}from"./skeleton-BCPi52jT.js";var Nt=M(`ArrowUpRight`,[[`path`,{d:`M7 7h10v10`,key:`1tivn9`}],[`path`,{d:`M7 17 17 7`,key:`1vkiza`}]]),Pt=M(`ArrowUp`,[[`path`,{d:`m5 12 7-7 7 7`,key:`hav0vg`}],[`path`,{d:`M12 19V5`,key:`x0mq9r`}]]),Ft=M(`Brain`,[[`path`,{d:`M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z`,key:`l5xja`}],[`path`,{d:`M12 5a3 3 0 1 1 5.997.125 4 4 0 0 1 2.526 5.77 4 4 0 0 1-.556 6.588A4 4 0 1 1 12 18Z`,key:`ep3f8r`}],[`path`,{d:`M15 13a4.5 4.5 0 0 1-3-4 4.5 4.5 0 0 1-3 4`,key:`1p4c4q`}],[`path`,{d:`M17.599 6.5a3 3 0 0 0 .399-1.375`,key:`tmeiqw`}],[`path`,{d:`M6.003 5.125A3 3 0 0 0 6.401 6.5`,key:`105sqy`}],[`path`,{d:`M3.477 10.896a4 4 0 0 1 .585-.396`,key:`ql3yin`}],[`path`,{d:`M19.938 10.5a4 4 0 0 1 .585.396`,key:`1qfode`}],[`path`,{d:`M6 18a4 4 0 0 1-1.967-.516`,key:`2e4loj`}],[`path`,{d:`M19.967 17.484A4 4 0 0 1 18 18`,key:`159ez6`}]]),It=M(`ChevronRight`,[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]),Lt=M(`CodeXml`,[[`path`,{d:`m18 16 4-4-4-4`,key:`1inbqp`}],[`path`,{d:`m6 8-4 4 4 4`,key:`15zrgr`}],[`path`,{d:`m14.5 4-5 16`,key:`e7oirm`}]]),Rt=M(`Copy`,[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),zt=M(`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`}]]),Bt=M(`FileArchive`,[[`path`,{d:`M10 12v-1`,key:`v7bkov`}],[`path`,{d:`M10 18v-2`,key:`1cjy8d`}],[`path`,{d:`M10 7V6`,key:`dljcrl`}],[`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`,key:`tnqrlb`}],[`path`,{d:`M15.5 22H18a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v16a2 2 0 0 0 .274 1.01`,key:`gkbcor`}],[`circle`,{cx:`10`,cy:`20`,r:`2`,key:`1xzdoj`}]]),Vt=M(`FileAudio2`,[[`path`,{d:`M4 22h14a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v2`,key:`17k7jt`}],[`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`,key:`tnqrlb`}],[`circle`,{cx:`3`,cy:`17`,r:`1`,key:`vo6nti`}],[`path`,{d:`M2 17v-3a4 4 0 0 1 8 0v3`,key:`1ggdre`}],[`circle`,{cx:`9`,cy:`17`,r:`1`,key:`bc1fq4`}]]),Ht=M(`FileCode2`,[[`path`,{d:`M4 22h14a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v4`,key:`1pf5j1`}],[`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`,key:`tnqrlb`}],[`path`,{d:`m5 12-3 3 3 3`,key:`oke12k`}],[`path`,{d:`m9 18 3-3-3-3`,key:`112psh`}]]),Ut=M(`FileImage`,[[`path`,{d:`M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z`,key:`1rqfz7`}],[`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`,key:`tnqrlb`}],[`circle`,{cx:`10`,cy:`12`,r:`2`,key:`737tya`}],[`path`,{d:`m20 17-1.296-1.296a2.41 2.41 0 0 0-3.408 0L9 22`,key:`wt3hpn`}]]),Wt=M(`FileJson2`,[[`path`,{d:`M4 22h14a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v4`,key:`1pf5j1`}],[`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`,key:`tnqrlb`}],[`path`,{d:`M4 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1`,key:`fq0c9t`}],[`path`,{d:`M8 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1`,key:`4gibmv`}]]),Gt=M(`FileSpreadsheet`,[[`path`,{d:`M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z`,key:`1rqfz7`}],[`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`,key:`tnqrlb`}],[`path`,{d:`M8 13h2`,key:`yr2amv`}],[`path`,{d:`M14 13h2`,key:`un5t4a`}],[`path`,{d:`M8 17h2`,key:`2yhykz`}],[`path`,{d:`M14 17h2`,key:`10kma7`}]]),Kt=M(`FileText`,[[`path`,{d:`M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z`,key:`1rqfz7`}],[`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`,key:`tnqrlb`}],[`path`,{d:`M10 9H8`,key:`b1mrlr`}],[`path`,{d:`M16 13H8`,key:`t4e002`}],[`path`,{d:`M16 17H8`,key:`z1uh3a`}]]),qt=M(`FileVideo2`,[[`path`,{d:`M4 22h14a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v4`,key:`1pf5j1`}],[`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`,key:`tnqrlb`}],[`rect`,{width:`8`,height:`6`,x:`2`,y:`12`,rx:`1`,key:`1a6c1e`}],[`path`,{d:`m10 15.5 4 2.5v-6l-4 2.5`,key:`t7cp39`}]]),Jt=M(`File`,[[`path`,{d:`M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z`,key:`1rqfz7`}],[`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`,key:`tnqrlb`}]]),Yt=M(`FolderGit2`,[[`path`,{d:`M9 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v5`,key:`1w6njk`}],[`circle`,{cx:`13`,cy:`12`,r:`2`,key:`1j92g6`}],[`path`,{d:`M18 19c-2.8 0-5-2.2-5-5v8`,key:`pkpw2h`}],[`circle`,{cx:`20`,cy:`19`,r:`2`,key:`1obnsp`}]]),Xt=M(`FolderOpen`,[[`path`,{d:`m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2`,key:`usdka0`}]]),Zt=M(`FolderTree`,[[`path`,{d:`M20 10a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-2.5a1 1 0 0 1-.8-.4l-.9-1.2A1 1 0 0 0 15 3h-2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z`,key:`hod4my`}],[`path`,{d:`M20 21a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1h-2.9a1 1 0 0 1-.88-.55l-.42-.85a1 1 0 0 0-.92-.6H13a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z`,key:`w4yl2u`}],[`path`,{d:`M3 5a2 2 0 0 0 2 2h3`,key:`f2jnh7`}],[`path`,{d:`M3 3v13a2 2 0 0 0 2 2h3`,key:`k8epm1`}]]),Qt=M(`FolderUp`,[[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}],[`path`,{d:`M12 10v6`,key:`1bos4e`}],[`path`,{d:`m9 13 3-3 3 3`,key:`1pxg3c`}]]),$t=M(`FolderX`,[[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}],[`path`,{d:`m9.5 10.5 5 5`,key:`ra9qjz`}],[`path`,{d:`m14.5 10.5-5 5`,key:`l2rkpq`}]]),en=M(`GitBranch`,[[`line`,{x1:`6`,x2:`6`,y1:`3`,y2:`15`,key:`17qcm7`}],[`circle`,{cx:`18`,cy:`6`,r:`3`,key:`1h7g24`}],[`circle`,{cx:`6`,cy:`18`,r:`3`,key:`fqmcym`}],[`path`,{d:`M18 9a9 9 0 0 1-9 9`,key:`n2h4wq`}]]),tn=M(`HeartPulse`,[[`path`,{d:`M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z`,key:`c3ymky`}],[`path`,{d:`M3.22 12H9.5l.5-1 2 4.5 2-7 1.5 3.5h5.27`,key:`1uw2ng`}]]),nn=M(`House`,[[`path`,{d:`M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8`,key:`5wwlr5`}],[`path`,{d:`M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z`,key:`1d0kgt`}]]),rn=M(`MessageSquareText`,[[`path`,{d:`M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z`,key:`1lielz`}],[`path`,{d:`M13 8H7`,key:`14i4kc`}],[`path`,{d:`M17 12H7`,key:`16if0g`}]]),an=M(`Minus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}]]),on=M(`Paperclip`,[[`path`,{d:`m21.44 11.05-9.19 9.19a6 6 0 0 1-8.49-8.49l8.57-8.57A4 4 0 1 1 18 8.84l-8.59 8.57a2 2 0 0 1-2.83-2.83l8.49-8.48`,key:`1u3ebp`}]]),sn=M(`Pencil`,[[`path`,{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`,key:`1a8usu`}],[`path`,{d:`m15 5 4 4`,key:`1mk7zo`}]]),cn=M(`Puzzle`,[[`path`,{d:`M15.39 4.39a1 1 0 0 0 1.68-.474 2.5 2.5 0 1 1 3.014 3.015 1 1 0 0 0-.474 1.68l1.683 1.682a2.414 2.414 0 0 1 0 3.414L19.61 15.39a1 1 0 0 1-1.68-.474 2.5 2.5 0 1 0-3.014 3.015 1 1 0 0 1 .474 1.68l-1.683 1.682a2.414 2.414 0 0 1-3.414 0L8.61 19.61a1 1 0 0 0-1.68.474 2.5 2.5 0 1 1-3.014-3.015 1 1 0 0 0 .474-1.68l-1.683-1.682a2.414 2.414 0 0 1 0-3.414L4.39 8.61a1 1 0 0 1 1.68.474 2.5 2.5 0 1 0 3.014-3.015 1 1 0 0 1-.474-1.68l1.683-1.682a2.414 2.414 0 0 1 3.414 0z`,key:`w46dr5`}]]),ln=M(`Terminal`,[[`polyline`,{points:`4 17 10 11 4 5`,key:`akl6gq`}],[`line`,{x1:`12`,x2:`20`,y1:`19`,y2:`19`,key:`q2wloq`}]]),un=M(`TriangleAlert`,[[`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`}]]),dn=M(`User`,[[`path`,{d:`M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2`,key:`975kel`}],[`circle`,{cx:`12`,cy:`7`,r:`4`,key:`17ys0d`}]]),N=l();function fn({isProjectFirstView:e,onSelectMode:t}){return(0,N.jsxs)(`div`,{className:`flex items-center gap-1.5 text-[11px]`,children:[(0,N.jsx)(`button`,{type:`button`,"aria-pressed":!e,onClick:()=>t(`time-first`),className:d(`transition-colors`,e?`text-gray-400 hover:text-gray-600`:`font-medium text-gray-600`),children:o(`chatSidebarViewTime`)}),(0,N.jsx)(`span`,{className:`text-gray-300`,children:`/`}),(0,N.jsx)(`button`,{type:`button`,"aria-pressed":e,onClick:()=>t(`project-first`),className:d(`transition-colors`,e?`font-medium text-gray-600`:`text-gray-400 hover:text-gray-600`),children:o(`chatSidebarViewProject`)})]})}var pn={wx:`weixin`,lark:`feishu`},mn={heartbeat:{icon:`heartbeat`},cron:{icon:`cron`}},hn={codex:`chatSessionTypeCodex`,claude:`chatSessionTypeClaude`};function gn(e){return e?.trim().toLowerCase()??``}function _n(e){return e.split(/[-_]+/g).filter(Boolean).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}function vn(e,t){let n=gn(e);if(!n||n===`native`)return null;let r=t.find(e=>gn(e.value)===n);return r?.label.trim()?r.label.trim():_n(n)}function yn(e,t){let n=gn(e);return!n||n===`native`?null:t.find(e=>gn(e.value)===n)??null}function bn(e){let t=gn(e);if(!t)return null;let n=pn[t]??t;return tt(n)?n:null}function xn(e,t){let n=bn(e.channel??``);if(n)return{icon:{kind:`channel-logo`,channel:n},label:null};let r=mn[gn(e.type)];if(r)return{icon:{kind:`symbol`,icon:r.icon},label:null};let i=gn(e.sessionType),a=yn(i,t);if(a?.icon?.src?.trim())return{icon:{kind:`runtime-image`,src:a.icon.src,alt:a.icon.alt??null,name:a.label},label:null};let s=hn[i];return s?{icon:null,label:o(s)}:{icon:null,label:a?.label?.trim()||vn(e.sessionType,t)}}var Sn=`app://`;function Cn(e){let t=e.trim().replace(/^\/+/,``);if(!t)return null;let n=t.split(`/`);return n.some(e=>e.trim().length===0||e===`.`||e===`..`)?null:n.join(`/`)}function wn(e){let t=e.trim();if(!t)return null;if(!t.startsWith(Sn))return t;let n=Cn(t.slice(6));return n?`/${n}`:null}function Tn({icon:e,className:t}){if(e.kind===`channel-logo`)return(0,N.jsx)(En,{channel:e.channel,className:t});if(e.kind===`runtime-image`){let n=wn(e.src);return(0,N.jsx)(St,{name:e.name?.trim()||e.alt?.trim()||`runtime`,src:n??void 0,className:d(`h-[1.125rem] w-[1.125rem]`,t),imgClassName:`h-full w-full object-contain`,fallback:(0,N.jsx)(Ee,{className:d(`h-3 w-3 text-gray-500`,t)})})}return e.icon===`heartbeat`?(0,N.jsx)(tn,{className:d(`h-3.5 w-3.5`,t)}):(0,N.jsx)(me,{className:d(`h-3.5 w-3.5`,t)})}function En({channel:e,className:t}){return(0,N.jsx)(St,{name:e,src:tt(e),className:d(`h-[1.125rem] w-[1.125rem]`,t),imgClassName:`h-full w-full object-contain`,fallback:(0,N.jsx)(Ee,{className:`h-3 w-3 text-gray-500`})})}function Dn(e){let{option:t,onSelect:n}=e,r=t.ready===!1?t.reasonMessage?.trim()||o(`statusSetup`):null;return(0,N.jsx)(`button`,{type:`button`,onClick:n,className:`w-full rounded-2xl px-3 py-2.5 text-left transition-colors hover:bg-gray-50`,children:(0,N.jsx)(`div`,{className:`flex items-start gap-3`,children:(0,N.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-start gap-2.5`,children:[t.icon?.src?(0,N.jsx)(`span`,{className:`inline-flex h-5 w-5 shrink-0 items-center justify-center pt-0.5`,children:(0,N.jsx)(Tn,{icon:{kind:`runtime-image`,src:t.icon.src,alt:t.icon.alt??null,name:t.label}})}):(0,N.jsx)(`span`,{className:`inline-flex h-5 w-5 shrink-0 items-center justify-center pt-0.5 text-gray-400`,children:(0,N.jsx)(Ee,{className:`h-4 w-4`})}),(0,N.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,N.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,N.jsx)(`div`,{className:`truncate text-[13px] font-semibold text-gray-900`,children:t.label}),(0,N.jsxs)(`span`,{className:d(`inline-flex shrink-0 items-center gap-1.5 text-[11px] font-medium`,t.ready===!1?`text-amber-700`:`text-emerald-600`),children:[(0,N.jsx)(`span`,{className:d(`h-1.5 w-1.5 rounded-full`,t.ready===!1?`bg-amber-500`:`bg-emerald-500`)}),t.ready===!1?o(`statusSetup`):o(`statusReady`)]})]}),r?(0,N.jsx)(`div`,{className:`mt-1 pr-4 text-[11px] leading-4 text-gray-500`,children:r}):null]})]})})})}var P=e(s(),1);function On(e,t){return t.some(t=>t.value===e)?e:t[0]?.value??e}function kn(e){let{groups:t,defaultSessionType:n,sessionTypeOptions:r,renderSessionItem:i,onCreateSession:a}=e,[s,c]=(0,P.useState)(null),l=(0,P.useMemo)(()=>On(n,r),[n,r]),u=r.length>1;return(0,N.jsx)(`div`,{className:`space-y-3`,children:t.map(e=>{let t=`${o(`chatSidebarNewTask`)} · ${e.projectName}`;return(0,N.jsxs)(`div`,{children:[(0,N.jsxs)(`div`,{className:`flex items-center justify-between gap-2 px-2 py-0.5`,children:[(0,N.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5`,children:[(0,N.jsx)(`div`,{className:`truncate text-[11px] font-medium uppercase tracking-wider text-gray-500`,title:e.projectRoot,children:e.projectName}),(0,N.jsx)(`span`,{className:`shrink-0 text-[10px] text-gray-400`,children:e.items.length})]}),u?(0,N.jsxs)(xt,{open:s===e.projectRoot,onOpenChange:t=>{c(t?e.projectRoot:null)},children:[(0,N.jsx)(yt,{asChild:!0,children:(0,N.jsx)(f,{type:`button`,variant:`ghost`,size:`icon`,className:`h-7 w-7 shrink-0 rounded-lg text-gray-400 hover:bg-white hover:text-gray-900`,"aria-label":t,title:t,children:(0,N.jsx)(rt,{className:`h-3.5 w-3.5`})})}),(0,N.jsxs)(_t,{align:`end`,className:`w-56 rounded-2xl border border-gray-200/80 bg-white p-1.5 shadow-[0_24px_60px_-28px_rgba(15,23,42,0.38)]`,children:[(0,N.jsx)(`div`,{className:`px-3 pb-1 pt-2 text-[10px] font-semibold uppercase tracking-[0.18em] text-gray-400`,children:o(`chatSessionTypeLabel`)}),(0,N.jsx)(`div`,{className:`space-y-1`,children:r.map(t=>(0,N.jsx)(Dn,{option:t,onSelect:()=>{a(t.value,e.projectRoot),c(null)}},`${e.projectRoot}:${t.value}`))})]})]}):(0,N.jsx)(f,{type:`button`,variant:`ghost`,size:`icon`,className:`h-7 w-7 shrink-0 rounded-lg text-gray-400 hover:bg-white hover:text-gray-900`,onClick:()=>a(l,e.projectRoot),"aria-label":t,title:t,children:(0,N.jsx)(rt,{className:`h-3.5 w-3.5`})})]}),(0,N.jsx)(`div`,{className:`space-y-0.5 pl-2`,children:e.items.map(i)})]},e.projectRoot)})})}var An=[[`bg-amber-100`,`text-amber-700`],[`bg-emerald-100`,`text-emerald-700`],[`bg-blue-100`,`text-blue-700`],[`bg-rose-100`,`text-rose-700`],[`bg-cyan-100`,`text-cyan-700`],[`bg-violet-100`,`text-violet-700`]];function jn(e){let t=0;for(let n=0;n<e.length;n+=1)t=(t<<5)-t+e.charCodeAt(n),t|=0;return Math.abs(t)}function Mn({agentId:e,displayName:t,avatarUrl:n,className:r}){let i=t?.trim()||e,[a,o]=An[jn(e)%An.length]??An[0];return n?.trim()?(0,N.jsx)(`img`,{src:n,alt:t?.trim()||e,className:d(`rounded-full object-cover`,r)}):(0,N.jsx)(`div`,{className:d(`rounded-full flex items-center justify-center font-semibold`,a,o,r),"aria-label":t?.trim()||e,children:e.trim().toLowerCase()===`main`?(0,N.jsx)(Ee,{className:`h-[55%] w-[55%]`,strokeWidth:2.4}):(i.trim()||`A`).slice(0,1).toUpperCase()})}function Nn({status:e,className:t}){let n=o(e===`running`?`sessionsRunStatusRunning`:`sessionsRunStatusQueued`);return(0,N.jsxs)(`span`,{className:d(`inline-flex h-3.5 w-3.5 items-center justify-center text-gray-400`,t),title:n,"aria-label":n,children:[(0,N.jsx)(nt,{className:`h-3 w-3 animate-spin`}),(0,N.jsx)(`span`,{className:`sr-only`,children:n})]})}function Pn({session:e,draftLabel:t,isSaving:n,onDraftLabelChange:r,onSave:i,onCancel:a}){return(0,N.jsxs)(`div`,{className:`space-y-2`,children:[(0,N.jsx)(O,{value:t,onChange:e=>r(e.target.value),onKeyDown:e=>{e.key===`Enter`?(e.preventDefault(),i()):e.key===`Escape`&&(e.preventDefault(),a())},placeholder:o(`sessionsLabelPlaceholder`),className:`h-8 rounded-lg border-gray-300 bg-white text-xs`,autoFocus:!0,disabled:n}),(0,N.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,N.jsx)(`div`,{className:`min-w-0 text-[11px] text-gray-400 truncate`,children:e.key}),(0,N.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,N.jsx)(f,{type:`button`,size:`icon`,variant:`ghost`,className:`h-7 w-7 rounded-lg text-gray-500 hover:bg-white hover:text-gray-900`,onClick:()=>void i(),disabled:n,"aria-label":o(`save`),children:(0,N.jsx)(Be,{className:`h-3.5 w-3.5`})}),(0,N.jsx)(f,{type:`button`,size:`icon`,variant:`ghost`,className:`h-7 w-7 rounded-lg text-gray-500 hover:bg-white hover:text-gray-900`,onClick:a,disabled:n,"aria-label":o(`cancel`),children:(0,N.jsx)(ct,{className:`h-3.5 w-3.5`})})]})]})]})}function Fn({session:e,active:t,showUnreadDot:n,runStatus:r,context:i,title:a,agentId:s,agentLabel:c,agentAvatarUrl:l,childSessionCount:f=0,onSelect:p,onOpenChildSessions:m,onStartEditing:h}){return(0,N.jsxs)(`div`,{className:`group/session relative`,children:[(0,N.jsxs)(`button`,{type:`button`,onClick:p,className:`w-full text-left`,children:[(0,N.jsxs)(`div`,{className:d(`grid grid-cols-[minmax(0,1fr)_auto] items-start gap-2`,f>0&&m?`pr-14`:`pr-6`),children:[(0,N.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1.5`,children:[s?.trim()&&s.trim().toLowerCase()!==`main`?(0,N.jsx)(Mn,{agentId:s,displayName:c,avatarUrl:l,className:`h-5 w-5 shrink-0`}):null,(0,N.jsx)(`span`,{className:`truncate font-medium`,children:a}),i.label?(0,N.jsx)(`span`,{className:d(`shrink-0 rounded-full border px-1.5 py-0.5 text-[10px] font-semibold leading-none`,t?`border-gray-300 bg-white/80 text-gray-700`:`border-gray-200 bg-gray-100 text-gray-500`),children:i.label}):null,i.icon?(0,N.jsx)(`span`,{className:`inline-flex h-[1.125rem] w-[1.125rem] shrink-0 items-center justify-center`,children:(0,N.jsx)(Tn,{icon:i.icon,className:t?`text-gray-700`:`text-gray-500`})}):null]}),r?(0,N.jsx)(`span`,{className:`inline-flex shrink-0 items-center justify-end gap-1.5 pt-0.5`,children:(0,N.jsx)(Nn,{status:r})}):null]}),(0,N.jsxs)(`div`,{className:`mt-1 flex items-center gap-2 text-[11px] text-gray-400`,children:[(0,N.jsxs)(`span`,{className:`min-w-0 truncate`,children:[c?.trim()?`${c} · `:``,e.messageCount]}),n?(0,N.jsx)(`span`,{"aria-label":o(`chatSessionUnread`),className:`ml-auto h-2 w-2 shrink-0 rounded-full bg-primary`}):(0,N.jsx)(`span`,{className:`ml-auto shrink-0`,children:u(e.updatedAt)})]})]}),f>0&&m?(0,N.jsxs)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),m()},className:d(`absolute right-6 top-0 inline-flex h-5 items-center gap-1 rounded-md px-1.5 text-[10px] font-medium text-gray-400 transition-all hover:bg-white hover:text-gray-900`,t?`opacity-100`:`opacity-0 group-hover/session:opacity-100 group-focus-within/session:opacity-100`),"aria-label":o(`chatSessionOpenChildSessions`),title:o(`chatSessionOpenChildSessions`),children:[(0,N.jsx)(en,{className:`h-3.5 w-3.5`}),(0,N.jsx)(`span`,{children:f})]}):null,(0,N.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),h()},className:d(`absolute right-0 top-0 inline-flex h-5 w-5 items-center justify-center rounded-md text-gray-400 transition-all hover:bg-white hover:text-gray-900`,t?`opacity-100`:`opacity-0 group-hover/session:opacity-100 group-focus-within/session:opacity-100`),"aria-label":o(`edit`),children:(0,N.jsx)(sn,{className:`h-3 w-3`})})]})}function In({session:e,active:t,showUnreadDot:n,runStatus:r,context:i,title:a,agentId:o,agentLabel:s,agentAvatarUrl:c,childSessionCount:l,isEditing:u,draftLabel:f,isSaving:p,onSelect:m,onOpenChildSessions:h,onStartEditing:g,onDraftLabelChange:_,onSave:v,onCancel:y}){return(0,N.jsx)(`div`,{className:d(`w-full rounded-xl px-3 py-2.5 text-left transition-all text-[13px]`,t?`bg-gray-200 text-gray-900 font-semibold shadow-sm`:`text-gray-700 hover:bg-gray-200/60 hover:text-gray-900`),children:u?(0,N.jsx)(Pn,{session:e,draftLabel:f,isSaving:p,onDraftLabelChange:_,onSave:v,onCancel:y}):(0,N.jsx)(Fn,{session:e,active:t,showUnreadDot:n,runStatus:r,context:i,title:a,agentId:o,agentLabel:s,agentAvatarUrl:c,onSelect:m,childSessionCount:l,onOpenChildSessions:h,onStartEditing:g})})}var Ln=[{icon:ye,titleKey:`chatWelcomeCapability1Title`,descKey:`chatWelcomeCapability1Desc`},{icon:Te,titleKey:`chatWelcomeCapability2Title`,descKey:`chatWelcomeCapability2Desc`},{icon:me,titleKey:`chatWelcomeCapability3Title`,descKey:`chatWelcomeCapability3Desc`}];function Rn({onCreateSession:e,agents:t,selectedAgentId:n,onSelectAgent:r}){let i=t.find(e=>e.id===n)??null;return(0,N.jsx)(`div`,{className:`h-full flex items-center justify-center p-8`,children:(0,N.jsxs)(`div`,{className:`max-w-lg w-full text-center`,children:[(0,N.jsx)(`div`,{className:`mx-auto mb-6 h-16 w-16 rounded-2xl bg-primary/10 flex items-center justify-center`,children:(0,N.jsx)(Ee,{className:`h-8 w-8 text-primary`})}),(0,N.jsx)(`h2`,{className:`text-xl font-semibold text-gray-900 mb-2`,children:o(`chatWelcomeTitle`)}),(0,N.jsx)(`p`,{className:`text-sm text-gray-500 mb-8`,children:o(`chatWelcomeSubtitle`)}),(0,N.jsxs)(`div`,{className:`mb-6 flex items-center justify-center gap-2.5`,children:[(0,N.jsx)(`span`,{className:`text-[13px] font-medium text-gray-500`,children:o(`chatDraftAgentTitle`)}),(0,N.jsxs)(Je,{value:n,onValueChange:r,children:[(0,N.jsxs)(ze,{"aria-label":o(`chatDraftAgentTitle`),className:`h-auto w-auto gap-1 rounded-full border-0 bg-transparent px-1.5 py-1 text-gray-500 shadow-none hover:bg-white/70 hover:text-gray-800 focus:ring-0`,children:[(0,N.jsx)(`span`,{className:`sr-only`,children:o(`chatDraftAgentTitle`)}),(0,N.jsx)(`div`,{className:`flex items-center gap-1.5`,children:i?(0,N.jsx)(Mn,{agentId:i.id,displayName:i.displayName,avatarUrl:i.avatarUrl,className:`h-7 w-7 shrink-0`}):null})]}),(0,N.jsx)(Ue,{className:`rounded-xl border-gray-200/80 shadow-lg`,children:t.map(e=>(0,N.jsx)(Ke,{value:e.id,className:`rounded-lg pr-10`,children:(0,N.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,N.jsx)(Mn,{agentId:e.id,displayName:e.displayName,avatarUrl:e.avatarUrl,className:`h-5 w-5 shrink-0`}),(0,N.jsx)(`span`,{className:`truncate text-sm font-medium text-gray-700`,children:e.displayName?.trim()||e.id})]})},e.id))})]})]}),(0,N.jsx)(`div`,{className:`grid grid-cols-3 gap-3`,children:Ln.map(t=>{let n=t.icon;return(0,N.jsxs)(`button`,{onClick:e,className:`rounded-2xl border border-gray-200 bg-white p-4 text-left shadow-card hover:shadow-card-hover transition-shadow cursor-pointer`,children:[(0,N.jsx)(`div`,{className:`h-9 w-9 rounded-xl bg-primary/8 flex items-center justify-center mb-3`,children:(0,N.jsx)(n,{className:`h-4.5 w-4.5 text-primary`})}),(0,N.jsx)(`div`,{className:`text-sm font-semibold text-gray-900 mb-1`,children:o(t.titleKey)}),(0,N.jsx)(`div`,{className:`text-[11px] text-gray-500 leading-relaxed`,children:o(t.descKey)})]},t.titleKey)})})]})})}var zn=e=>`[data-item-index="${e}"]`;function Bn(e){let{activeIndex:t,containerRef:n,getItemSelector:r,isEnabled:i,itemCount:a}=e,o=r??zn;(0,P.useEffect)(()=>{if(!i||a===0)return;let e=n.current;if(!e)return;let r=e.querySelector(o(t));typeof r?.scrollIntoView==`function`&&r.scrollIntoView({block:`nearest`,inline:`nearest`})},[t,n,o,i,a])}function Vn(){let e=(0,P.useRef)(null),[t,n]=(0,P.useState)(null);return(0,P.useEffect)(()=>{let t=e.current;if(!t||typeof ResizeObserver>`u`)return;let r=()=>{n(t.getBoundingClientRect().width)};r();let i=new ResizeObserver(()=>r());return i.observe(t),()=>i.disconnect()},[]),{elementRef:e,width:t}}function F(...e){return n(r(e))}var Hn=P.forwardRef(({className:e,type:t,...n},r)=>(0,N.jsx)(`input`,{type:t,className:F(`flex h-9 w-full rounded-xl border border-gray-200/80 bg-white px-3.5 py-2 text-sm text-gray-900 file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-gray-300 placeholder:font-normal focus:outline-none focus:ring-1 focus:ring-primary/40 focus:border-primary/40 transition-colors disabled:cursor-not-allowed disabled:opacity-50`,e),ref:r,...n}));Hn.displayName=`ChatInput`;var Un=bt,Wn=ht,Gn=gt,Kn=P.forwardRef(({className:e,sideOffset:t=8,align:n=`start`,...r},i)=>(0,N.jsx)(vt,{children:(0,N.jsx)(mt,{ref:i,sideOffset:t,align:n,className:F(`z-[var(--z-popover,50)] w-72 overflow-hidden rounded-2xl border border-gray-200/50 bg-white p-4 shadow-lg animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`,e),...r})}));Kn.displayName=mt.displayName;var qn=He,Jn=qe,Yn=Ze,Xn=P.forwardRef(({className:e,children:t,...n},r)=>(0,N.jsxs)(Xe,{ref:r,className:F(`flex h-9 w-full items-center justify-between whitespace-nowrap rounded-xl border border-gray-200/80 bg-white px-3 py-2 text-sm shadow-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-primary/40 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1`,e),...n,children:[t,(0,N.jsx)(Pe,{asChild:!0,children:(0,N.jsx)(je,{className:`h-4 w-4 opacity-50`})})]}));Xn.displayName=Xe.displayName;var Zn=P.forwardRef(({className:e,...t},n)=>(0,N.jsx)(Le,{ref:n,className:F(`flex cursor-default items-center justify-center py-1`,e),...t,children:(0,N.jsx)(Ae,{className:`h-4 w-4`})}));Zn.displayName=Le.displayName;var Qn=P.forwardRef(({className:e,...t},n)=>(0,N.jsx)(Re,{ref:n,className:F(`flex cursor-default items-center justify-center py-1`,e),...t,children:(0,N.jsx)(je,{className:`h-4 w-4`})}));Qn.displayName=Re.displayName;var $n=P.forwardRef(({className:e,children:t,position:n=`popper`,...r},i)=>(0,N.jsx)(Ge,{children:(0,N.jsxs)(We,{ref:i,className:F(`relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md bg-white text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`,n===`popper`&&`data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1`,e),position:n,...r,children:[(0,N.jsx)(Zn,{}),(0,N.jsx)(Ne,{className:F(`p-1`,n===`popper`&&`h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]`),children:t}),(0,N.jsx)(Qn,{})]})}));$n.displayName=We.displayName;var er=P.forwardRef(({className:e,...t},n)=>(0,N.jsx)(Ie,{ref:n,className:F(`px-2 py-1 text-[11px] font-semibold uppercase tracking-[0.08em] text-gray-500`,e),...t}));er.displayName=Ie.displayName;var tr=P.forwardRef(({className:e,children:t,...n},r)=>(0,N.jsxs)(Ve,{ref:r,className:F(`relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-2 pr-8 text-sm outline-none focus:bg-gray-100 data-[disabled]:pointer-events-none data-[disabled]:opacity-50 hover:bg-gray-100`,e),...n,children:[(0,N.jsx)(`span`,{className:`absolute right-2 flex h-3.5 w-3.5 items-center justify-center`,children:(0,N.jsx)(Ye,{children:(0,N.jsx)(Be,{className:`h-4 w-4`})})}),(0,N.jsx)(Fe,{children:t})]}));tr.displayName=Ve.displayName;var nr=P.forwardRef(({className:e,...t},n)=>(0,N.jsx)(Me,{ref:n,className:F(`-mx-1 my-1 h-px bg-gray-100`,e),...t}));nr.displayName=Me.displayName;var rr=At,ir=wt,ar=Et,or=P.forwardRef(({className:e,sideOffset:t=4,...n},r)=>(0,N.jsx)(Ot,{children:(0,N.jsx)(Ct,{ref:r,sideOffset:t,className:F(`z-[var(--z-tooltip)] overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`,e),...n})}));or.displayName=Ct.displayName;var sr={Popover:Un,PopoverAnchor:Gn,PopoverContent:Kn,PopoverTrigger:Wn,Input:Hn,Select:qn,SelectContent:$n,SelectGroup:Jn,SelectItem:tr,SelectLabel:er,SelectSeparator:nr,SelectTrigger:Xn,SelectValue:Yn,Tooltip:ir,TooltipContent:or,TooltipProvider:rr,TooltipTrigger:ar},cr=680,lr=.82,ur=560;function dr(e){let{Popover:t,PopoverAnchor:n,PopoverContent:r}=sr,{elementRef:i,width:a}=Vn(),o=(0,P.useRef)(null),{isOpen:s,isLoading:c,items:l,activeIndex:u,activeItem:d,texts:f,onSelectItem:p,onOpenChange:m,onSetActiveIndex:h}=e,g=(0,P.useMemo)(()=>{if(a)return Math.min(a>ur?a*lr:a,cr)},[a]);return Bn({containerRef:o,activeIndex:u,itemCount:l.length,isEnabled:s&&!c,getItemSelector:e=>`[data-slash-index="${e}"]`}),(0,N.jsxs)(t,{open:s,onOpenChange:m,children:[(0,N.jsx)(n,{asChild:!0,children:(0,N.jsx)(`div`,{ref:i,className:`pointer-events-none absolute bottom-full left-3 right-3 h-0`})}),(0,N.jsx)(r,{side:`top`,align:`start`,sideOffset:10,className:`z-[70] max-w-[calc(100vw-1.5rem)] overflow-hidden rounded-2xl border border-gray-200 bg-white/95 p-0 shadow-2xl backdrop-blur-md`,onOpenAutoFocus:e=>e.preventDefault(),style:g?{width:`${g}px`}:void 0,children:(0,N.jsxs)(`div`,{className:`grid min-h-[240px] grid-cols-[minmax(220px,300px)_minmax(0,1fr)]`,children:[(0,N.jsx)(`div`,{ref:o,role:`listbox`,"aria-label":f.slashSectionLabel,className:`custom-scrollbar max-h-[320px] overflow-y-auto border-r border-gray-200 p-2.5`,children:c?(0,N.jsx)(`div`,{className:`p-2 text-xs text-gray-500`,children:f.slashLoadingLabel}):(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`div`,{className:`mb-2 px-2 text-[11px] font-semibold uppercase tracking-wide text-gray-500`,children:f.slashSectionLabel}),l.length===0?(0,N.jsx)(`div`,{className:`px-2 text-xs text-gray-400`,children:f.slashEmptyLabel}):(0,N.jsx)(`div`,{className:`space-y-1`,children:l.map((e,t)=>{let n=t===u;return(0,N.jsxs)(`button`,{type:`button`,role:`option`,"aria-selected":n,"data-slash-index":t,onMouseEnter:()=>h(t),onClick:()=>p(e),className:`flex w-full items-start gap-2 rounded-lg px-2 py-1.5 text-left transition ${n?`bg-gray-100 text-gray-900`:`text-gray-700 hover:bg-gray-50`}`,children:[(0,N.jsx)(`span`,{className:`truncate text-xs font-semibold`,children:e.title}),(0,N.jsx)(`span`,{className:`truncate text-xs text-gray-500`,children:e.subtitle})]},e.key)})})]})}),(0,N.jsx)(`div`,{className:`min-w-0 p-2.5`,children:d?(0,N.jsxs)(`div`,{className:`space-y-3`,children:[(0,N.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,N.jsx)(`span`,{className:`inline-flex rounded-full bg-primary/10 px-2 py-0.5 text-[11px] font-semibold text-primary`,children:d.subtitle}),(0,N.jsx)(`span`,{className:`text-sm font-semibold text-gray-900`,children:d.title})]}),(0,N.jsx)(`p`,{className:`text-xs leading-5 text-gray-600`,children:d.description}),(0,N.jsx)(`div`,{className:`space-y-1`,children:d.detailLines.map(e=>(0,N.jsx)(`div`,{className:`min-w-0 break-all rounded-md bg-gray-50 px-2 py-1 text-[11px] leading-5 text-gray-600`,children:e},e))}),(0,N.jsx)(`div`,{className:`pt-1 text-[11px] text-gray-500`,children:f.slashSkillHintLabel})]}):(0,N.jsx)(`div`,{className:`text-xs text-gray-500`,children:f.slashHintLabel})})]})})]})}var fr=D(`inline-flex items-center justify-center whitespace-nowrap rounded-full text-sm font-medium ring-offset-background transition-all duration-fast focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50`,{variants:{variant:{default:`bg-primary text-primary-foreground hover:bg-primary-600 active:bg-primary-700 shadow-sm`,destructive:`bg-destructive text-destructive-foreground hover:bg-destructive/90`,outline:`border border-gray-200 bg-white hover:bg-gray-50 hover:text-gray-800 text-gray-600`,secondary:`bg-gray-100 text-gray-700 hover:bg-gray-200/80`,ghost:`hover:bg-gray-100/80 hover:text-gray-800`,link:`text-primary underline-offset-4 hover:underline`,primary:`bg-primary text-primary-foreground hover:bg-primary-600 active:bg-primary-700 shadow-sm`,subtle:`bg-gray-100 text-gray-600 hover:bg-gray-200/80`,"primary-outline":`border border-primary/30 text-primary hover:bg-primary hover:text-primary-foreground`},size:{default:`h-9 px-4 py-2`,sm:`h-8 px-3 text-xs`,lg:`h-11 px-5 text-[14px]`,xl:`h-12 px-6 text-[15px]`,icon:`h-9 w-9`}},defaultVariants:{variant:`default`,size:`default`}}),pr=P.forwardRef(({className:e,variant:t,size:n,...r},i)=>(0,N.jsx)(`button`,{className:F(fr({variant:t,size:n,className:e})),ref:i,...r}));pr.displayName=`ChatButton`;var mr=120;function hr(e){let t=e.replace(/\s+/g,` `).trim();return t.length<=mr?t:`${t.slice(0,mr-1)}…`}function gr(){return(0,N.jsx)(`span`,{"aria-hidden":`true`,"data-testid":`chat-stop-icon`,className:`block h-3 w-3 rounded-[2px] bg-gray-700 shadow-[inset_0_0_0_1px_rgba(17,24,39,0.06)]`})}function _r({sendError:e,sendErrorDetailsLabel:t,isSending:n,canStopGeneration:r,sendDisabled:i,stopDisabled:a,stopHint:o,sendButtonLabel:s,stopButtonLabel:c,onSend:l,onStop:u}){let{Popover:d,PopoverContent:f,PopoverTrigger:p,Tooltip:m,TooltipContent:h,TooltipProvider:g,TooltipTrigger:_}=sr,v=e?.trim()??``,y=v?hr(v):``,b=t?.trim()||`Details`;return(0,N.jsxs)(`div`,{className:`flex shrink-0 flex-col items-end gap-1`,children:[v?(0,N.jsxs)(`div`,{className:`flex max-w-[420px] items-start justify-end gap-2 text-right`,children:[(0,N.jsx)(`div`,{className:`min-w-0 flex-1 text-[11px] text-red-600`,children:(0,N.jsx)(`span`,{className:`block truncate`,title:v,children:y})}),(0,N.jsxs)(d,{children:[(0,N.jsx)(p,{asChild:!0,children:(0,N.jsx)(`button`,{type:`button`,className:`shrink-0 rounded-full border border-red-200/80 bg-red-50 px-2 py-0.5 text-[10px] font-semibold text-red-700 transition-colors hover:bg-red-100`,children:b})}),(0,N.jsxs)(f,{align:`end`,className:`w-[min(32rem,calc(100vw-1.5rem))] border-red-100/80 p-0`,children:[(0,N.jsx)(`div`,{className:`border-b border-red-100 bg-red-50/80 px-4 py-2 text-xs font-semibold text-red-700`,children:b}),(0,N.jsx)(`pre`,{className:`max-h-80 overflow-auto whitespace-pre-wrap break-words px-4 py-3 text-xs leading-relaxed text-red-700`,children:v})]})]})]}):null,(0,N.jsx)(`div`,{className:`flex items-center gap-2`,children:n?r?(0,N.jsx)(pr,{size:`icon`,variant:`outline`,className:`h-8 w-8 rounded-full`,"aria-label":c,onClick:()=>void u(),disabled:a,children:(0,N.jsx)(gr,{})}):(0,N.jsx)(g,{children:(0,N.jsxs)(m,{children:[(0,N.jsx)(_,{asChild:!0,children:(0,N.jsx)(`span`,{children:(0,N.jsx)(pr,{size:`icon`,variant:`outline`,className:`h-8 w-8 rounded-full`,"aria-label":c,disabled:!0,children:(0,N.jsx)(gr,{})})})}),(0,N.jsx)(h,{side:`top`,children:(0,N.jsx)(`p`,{className:`text-xs`,children:o})})]})}):(0,N.jsx)(pr,{size:`icon`,className:`h-8 w-8 rounded-full`,"aria-label":s,onClick:()=>void l(),disabled:i,children:(0,N.jsx)(Pt,{className:`h-5 w-5`})})})]})}function vr(e,t){let n=t.trim().toLowerCase();return n?e.filter(e=>[e.label,e.key,e.description].filter(e=>typeof e==`string`&&e.trim().length>0).join(` `).toLowerCase().includes(n)):e}function yr(e){let{Input:t,Popover:n,PopoverContent:r,PopoverTrigger:i}=sr,{picker:a}=e,o=(0,P.useRef)(null),s=(0,P.useId)(),[c,l]=(0,P.useState)(``),[u,d]=(0,P.useState)(0),f=(0,P.useMemo)(()=>new Set(a.selectedKeys),[a.selectedKeys]),p=a.selectedKeys.length,m=c.trim().length>0,h=(0,P.useMemo)(()=>{if(m)return null;let e=a.groups?.filter(e=>e.options.length>0)??[];return e.length>0?e:null},[m,a.groups]),g=(0,P.useMemo)(()=>h?h.flatMap(e=>e.options):vr(a.options,c),[h,a.options,c]);(0,P.useEffect)(()=>{d(0)},[c]),(0,P.useEffect)(()=>{d(e=>g.length===0?0:Math.min(e,g.length-1))},[g.length]),Bn({containerRef:o,activeIndex:u,itemCount:g.length,isEnabled:g.length>0,getItemSelector:e=>`[data-skill-index="${e}"]`});let _=e=>{if(f.has(e)){a.onSelectedKeysChange(a.selectedKeys.filter(t=>t!==e));return}a.onSelectedKeysChange([...a.selectedKeys,e])},v=e=>{if(g.length!==0){if(e.key===`ArrowDown`){e.preventDefault(),d(e=>Math.min(e+1,g.length-1));return}if(e.key===`ArrowUp`){e.preventDefault(),d(e=>Math.max(e-1,0));return}if(e.key===`Enter`){e.preventDefault();let t=g[u];t&&_(t.key)}}};return(0,N.jsxs)(n,{children:[(0,N.jsx)(i,{asChild:!0,children:(0,N.jsxs)(`button`,{type:`button`,"aria-haspopup":`listbox`,"aria-label":a.title,className:`relative inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-lg px-0 text-xs font-medium text-gray-600 transition-colors hover:bg-gray-100 hover:text-gray-900 sm:w-auto sm:gap-1.5 sm:px-3`,children:[(0,N.jsx)(Te,{className:`h-4 w-4`}),(0,N.jsx)(`span`,{className:`hidden sm:inline`,children:a.title}),p>0?(0,N.jsx)(`span`,{className:`absolute -right-1 -top-1 flex h-[18px] min-w-[18px] items-center justify-center rounded-full bg-primary px-1 text-[10px] font-semibold leading-none text-white shadow-sm sm:static sm:ml-0.5 sm:bg-primary/10 sm:text-primary sm:shadow-none`,children:p}):null]})}),(0,N.jsxs)(r,{side:`top`,align:`start`,className:`w-[360px] p-0`,children:[(0,N.jsxs)(`div`,{className:`space-y-2 border-b border-gray-100 px-4 py-3`,children:[(0,N.jsx)(`div`,{className:`text-sm font-semibold text-gray-900`,children:a.title}),(0,N.jsxs)(`div`,{className:`relative`,children:[(0,N.jsx)(Oe,{className:`pointer-events-none absolute left-3 top-2.5 h-3.5 w-3.5 text-gray-400`}),(0,N.jsx)(t,{value:c,onChange:e=>l(e.target.value),onKeyDown:v,placeholder:a.searchPlaceholder,role:`combobox`,"aria-controls":s,"aria-expanded":`true`,"aria-autocomplete":`list`,"aria-activedescendant":g[u]?`${s}-option-${u}`:void 0,className:`h-8 rounded-lg pl-8 text-xs`})]})]}),(0,N.jsx)(`div`,{ref:o,id:s,role:`listbox`,"aria-multiselectable":`true`,className:`custom-scrollbar max-h-[320px] overflow-y-auto`,children:a.isLoading?(0,N.jsx)(`div`,{className:`p-4 text-xs text-gray-500`,children:a.loadingLabel}):g.length===0?(0,N.jsx)(`div`,{className:`p-4 text-center text-xs text-gray-500`,children:a.emptyLabel}):(0,N.jsx)(`div`,{className:`py-1`,children:(()=>{let e=h??[{key:`all-skills`,options:g}],t=0;return e.map(e=>(0,N.jsxs)(`div`,{children:[e.label?(0,N.jsx)(`div`,{className:`px-4 pb-1 pt-2 text-[11px] font-semibold uppercase tracking-wide text-gray-500`,children:e.label}):null,e.options.map(e=>{let n=t;t+=1;let r=f.has(e.key),i=n===u;return(0,N.jsxs)(`button`,{type:`button`,id:`${s}-option-${n}`,role:`option`,"aria-selected":r,"data-skill-index":n,onClick:()=>_(e.key),onMouseEnter:()=>d(n),className:`flex w-full items-center gap-3 px-4 py-2.5 text-left transition-colors ${i?`bg-gray-50`:`hover:bg-gray-50`}`,children:[(0,N.jsx)(`div`,{className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-lg bg-gray-100 text-gray-500`,children:(0,N.jsx)(cn,{className:`h-4 w-4`})}),(0,N.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,N.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,N.jsx)(`span`,{className:`truncate text-sm text-gray-900`,children:e.label}),e.badgeLabel?(0,N.jsx)(`span`,{className:`shrink-0 rounded-full bg-primary/10 px-1.5 py-0.5 text-[10px] font-medium text-primary`,children:e.badgeLabel}):null]}),(0,N.jsx)(`div`,{className:`mt-0.5 truncate text-xs text-gray-500`,children:e.description||e.key})]}),(0,N.jsx)(`div`,{className:`ml-3 shrink-0`,children:(0,N.jsx)(`span`,{className:r?`inline-flex h-5 w-5 items-center justify-center rounded-full bg-primary text-white`:`inline-flex h-5 w-5 items-center justify-center rounded-full border border-gray-300 bg-white`,children:r?(0,N.jsx)(Be,{className:`h-3 w-3`}):null})})]},e.key)})]},e.key))})()})}),a.manageHref&&a.manageLabel?(0,N.jsx)(`div`,{className:`border-t border-gray-100 px-4 py-2.5`,children:(0,N.jsxs)(`a`,{href:a.manageHref,className:`inline-flex items-center gap-1.5 text-xs font-medium text-primary transition-colors hover:text-primary/80`,children:[a.manageLabel,(0,N.jsx)(Qe,{className:`h-3 w-3`})]})}):null]})]})}function br({icon:e}){return e===`sparkles`?(0,N.jsx)(ot,{className:`h-3.5 w-3.5 shrink-0 text-primary`}):e===`brain`?(0,N.jsx)(Ft,{className:`h-3.5 w-3.5 shrink-0 text-gray-500`}):null}function xr({icon:e}){return e===`paperclip`?(0,N.jsx)(on,{className:`h-4 w-4`}):(0,N.jsx)(br,{icon:e})}var Sr={model:`min-w-0 flex-1 sm:min-w-[220px] sm:flex-none`,"session-type":`shrink-0`,thinking:`shrink-0`},Cr={model:`w-[min(18rem,calc(100vw-1rem))] sm:w-[320px]`,"session-type":`w-[220px]`,thinking:`w-[180px]`};function wr(e){return e.key===`model`&&e.selectedLabel&&e.selectedLabel.split(`/`).slice(1).join(`/`).trim()||e.selectedLabel}function Tr({item:e}){let{Select:t,SelectContent:n,SelectGroup:r,SelectItem:i,SelectLabel:a,SelectSeparator:o,SelectTrigger:s,SelectValue:c}=sr,l=e.groups?.filter(e=>e.options.length>0)??(e.options.length>0?[{key:`${e.key}-default`,options:e.options}]:[]),u=l.some(e=>e.options.length>0),d=wr(e);return(0,N.jsxs)(t,{value:e.value,onValueChange:e.onValueChange,disabled:e.disabled,children:[(0,N.jsx)(s,{className:`h-8 w-auto rounded-lg border-0 bg-transparent px-2 text-xs font-medium text-gray-600 shadow-none hover:bg-gray-100 focus:ring-0 sm:px-3 ${Sr[e.key]??``}`,children:e.selectedLabel?(0,N.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 text-left`,children:[(0,N.jsx)(br,{icon:e.icon}),(0,N.jsx)(`span`,{className:`truncate text-xs font-semibold text-gray-700 sm:hidden`,children:d}),(0,N.jsx)(`span`,{className:`hidden truncate text-xs font-semibold text-gray-700 sm:inline`,children:e.selectedLabel})]}):e.loading?(0,N.jsx)(`div`,{className:`h-3 w-24 animate-pulse rounded bg-gray-200`}):(0,N.jsx)(c,{placeholder:e.placeholder})}),(0,N.jsxs)(n,{className:Cr[e.key]??``,children:[u?null:e.loading?(0,N.jsxs)(`div`,{className:`space-y-2 px-3 py-2`,children:[(0,N.jsx)(`div`,{className:`h-3 w-36 animate-pulse rounded bg-gray-200`}),(0,N.jsx)(`div`,{className:`h-3 w-28 animate-pulse rounded bg-gray-200`}),(0,N.jsx)(`div`,{className:`h-3 w-32 animate-pulse rounded bg-gray-200`})]}):e.emptyLabel?(0,N.jsx)(`div`,{className:`px-3 py-2 text-xs text-gray-500`,children:e.emptyLabel}):null,l.map((e,t)=>(0,N.jsxs)(`div`,{children:[t>0?(0,N.jsx)(o,{}):null,(0,N.jsxs)(r,{children:[e.label?(0,N.jsx)(a,{children:e.label}):null,e.options.map(e=>(0,N.jsx)(i,{value:e.value,className:`py-2`,children:e.description?(0,N.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-0.5`,children:[(0,N.jsx)(`span`,{className:`truncate text-xs font-semibold text-gray-800`,children:e.label}),(0,N.jsx)(`span`,{className:`truncate text-[11px] text-gray-500`,children:e.description})]}):(0,N.jsx)(`span`,{className:`truncate text-xs font-semibold text-gray-800`,children:e.label})},e.value))]})]},e.key))]})]})}function Er({actions:e,accessories:t,selects:n,skillPicker:r}){let{Tooltip:i,TooltipContent:a,TooltipProvider:o,TooltipTrigger:s}=sr;return(0,N.jsxs)(`div`,{className:`flex items-center justify-between gap-2 px-3 pb-3`,children:[(0,N.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1 overflow-hidden`,children:[r?(0,N.jsx)(yr,{picker:r}):null,n.map(e=>(0,N.jsx)(Tr,{item:e},e.key)),t?.map(e=>{let t=(0,N.jsxs)(`button`,{type:`button`,className:`inline-flex items-center rounded-lg py-1.5 text-xs font-medium text-gray-600 transition-colors hover:bg-gray-100 hover:text-gray-900 disabled:cursor-not-allowed disabled:text-gray-400 ${e.iconOnly?`h-8 w-8 justify-center px-0`:`gap-1.5 px-3`}`,onClick:e.onClick,disabled:e.disabled,"aria-label":e.label,children:[(0,N.jsx)(xr,{icon:e.icon}),e.iconOnly?null:(0,N.jsx)(`span`,{children:e.label})]});return e.tooltip?(0,N.jsx)(o,{children:(0,N.jsxs)(i,{children:[(0,N.jsx)(s,{asChild:!0,children:e.disabled?(0,N.jsx)(`span`,{className:`inline-flex`,children:t}):t}),(0,N.jsx)(a,{side:`top`,children:(0,N.jsx)(`p`,{className:`text-xs`,children:e.tooltip})})]})},e.key):(0,N.jsx)(`div`,{children:t},e.key)})]}),(0,N.jsx)(_r,{...e})]})}var Dr=(0,P.createContext)(null);function Or(e,t){let n=null;return e!=null&&(n=e[1]),{getTheme:function(){return t??(n==null?null:n.getTheme())}}}function kr(){let e=(0,P.useContext)(Dr);return e??function(e,...t){let n=new URL(`https://lexical.dev/docs/error`),r=new URLSearchParams;r.append(`code`,e);for(let e of t)r.append(`v`,e);throw n.search=r.toString(),Error(`Minified Lexical error #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}(8),e}function I(e,...t){let n=new URL(`https://lexical.dev/docs/error`),r=new URLSearchParams;r.append(`code`,e);for(let e of t)r.append(`v`,e);throw n.search=r.toString(),Error(`Minified Lexical error #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}function Ar(e,...t){let n=new URL(`https://lexical.dev/docs/error`),r=new URLSearchParams;r.append(`code`,e);for(let e of t)r.append(`v`,e);n.search=r.toString(),console.warn(`Minified Lexical warning #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}var jr=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0,Mr=jr&&`documentMode`in document?document.documentMode:null,Nr=jr&&/Mac|iPod|iPhone|iPad/.test(navigator.platform),Pr=jr&&/^(?!.*Seamonkey)(?=.*Firefox).*/i.test(navigator.userAgent),Fr=!(!jr||!(`InputEvent`in window)||Mr)&&`getTargetRanges`in new window.InputEvent(`input`),Ir=jr&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream,Lr=jr&&/Android/.test(navigator.userAgent),Rr=jr&&/Version\/[\d.]+.*Safari/.test(navigator.userAgent)&&!Lr,zr=jr&&/^(?=.*Chrome).*/i.test(navigator.userAgent),Br=jr&&Lr&&zr,Vr=jr&&/AppleWebKit\/[\d.]+/.test(navigator.userAgent)&&Nr&&!zr,Hr=0,Ur=1,Wr=2,Gr=1,Kr=2,qr=3,Jr=4,Yr=5,Xr=6,Zr=Rr||Ir||Vr?`\xA0`:``,Qr=`
|
|
1
|
+
import{_ as e,a as t,d as n,f as r,g as i,h as a,i as o,m as s,n as c,p as l,t as u,u as d}from"./i18n-C5Mibli1.js";import{At as f,Bt as p,Ft as m,Gt as h,It as g,Lt as _,Mt as v,Nt as y,V as b,at as x,bt as S,f as C,gt as w,h as T,it as E,jt as D,kt as O,m as ee,n as k,nt as te,p as A,rt as ne,t as j,v as re,vt as ie,xt as ae,y as oe,yt as se}from"./api-BcqDx0tm.js";import{a as ce,i as le,n as ue,o as de,r as fe,t as pe}from"./dialog-csshWetU.js";import{t as M}from"./createLucideIcon-BZkY6emz.js";import{_ as me,c as he,d as ge,f as _e,g as ve,h as ye,l as be,m as xe,n as Se,p as Ce,s as we,u as Te,v as Ee}from"./theme-provider-aOmrJ9J6.js";import{n as De,t as Oe}from"./search-vChioOoe.js";import{t as ke}from"./book-open-DgLqYpNY.js";import{D as Ae,O as je,_ as Me,b as Ne,c as Pe,d as Fe,f as Ie,g as Le,h as Re,i as ze,k as Be,l as Ve,m as He,n as Ue,o as We,p as Ge,r as Ke,s as qe,t as Je,u as Ye,v as Xe,y as Ze}from"./select-DIZrwsKU.js";import{t as Qe}from"./external-link-Sw3ah_JD.js";import{t as $e}from"./folder-D7-VTnkz.js";import{n as et,t as tt}from"./logos-CqVm0q0W.js";import{t as nt}from"./loader-circle-B5i8oMMY.js";import{t as rt}from"./plus-Di0KAkiO.js";import{t as it}from"./refresh-ccw-Bii4w8aB.js";import{t as at}from"./settings-CiRChctQ.js";import{t as ot}from"./sparkles-D1ZKWdm4.js";import{t as st}from"./trash-2-rY9ZteZX.js";import{t as ct}from"./x-DpTzXQcX.js";import{i as lt}from"./doc-browser-context-DfLHAWbG.js";import{n as ut}from"./doc-browser-BUlCkZo2.js";import{n as dt,t as ft}from"./use-viewport-layout-BX3XqzJ4.js";import{m as pt}from"./use-config-BQJjq1mP.js";import{a as mt,c as ht,i as gt,n as _t,o as vt,r as yt,s as bt,t as xt}from"./popover-YAsxDBhY.js";import{t as St}from"./logo-badge-BQgKnVtz.js";import{a as Ct,c as wt,i as Tt,l as Et,n as Dt,o as Ot,r as kt,s as At,t as jt}from"./tooltip-Dq5Xehpk.js";import{t as Mt}from"./skeleton-CFQRIUzt.js";var Nt=M(`ArrowUpRight`,[[`path`,{d:`M7 7h10v10`,key:`1tivn9`}],[`path`,{d:`M7 17 17 7`,key:`1vkiza`}]]),Pt=M(`ArrowUp`,[[`path`,{d:`m5 12 7-7 7 7`,key:`hav0vg`}],[`path`,{d:`M12 19V5`,key:`x0mq9r`}]]),Ft=M(`Brain`,[[`path`,{d:`M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z`,key:`l5xja`}],[`path`,{d:`M12 5a3 3 0 1 1 5.997.125 4 4 0 0 1 2.526 5.77 4 4 0 0 1-.556 6.588A4 4 0 1 1 12 18Z`,key:`ep3f8r`}],[`path`,{d:`M15 13a4.5 4.5 0 0 1-3-4 4.5 4.5 0 0 1-3 4`,key:`1p4c4q`}],[`path`,{d:`M17.599 6.5a3 3 0 0 0 .399-1.375`,key:`tmeiqw`}],[`path`,{d:`M6.003 5.125A3 3 0 0 0 6.401 6.5`,key:`105sqy`}],[`path`,{d:`M3.477 10.896a4 4 0 0 1 .585-.396`,key:`ql3yin`}],[`path`,{d:`M19.938 10.5a4 4 0 0 1 .585.396`,key:`1qfode`}],[`path`,{d:`M6 18a4 4 0 0 1-1.967-.516`,key:`2e4loj`}],[`path`,{d:`M19.967 17.484A4 4 0 0 1 18 18`,key:`159ez6`}]]),It=M(`ChevronRight`,[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]),Lt=M(`CodeXml`,[[`path`,{d:`m18 16 4-4-4-4`,key:`1inbqp`}],[`path`,{d:`m6 8-4 4 4 4`,key:`15zrgr`}],[`path`,{d:`m14.5 4-5 16`,key:`e7oirm`}]]),Rt=M(`Copy`,[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),zt=M(`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`}]]),Bt=M(`FileArchive`,[[`path`,{d:`M10 12v-1`,key:`v7bkov`}],[`path`,{d:`M10 18v-2`,key:`1cjy8d`}],[`path`,{d:`M10 7V6`,key:`dljcrl`}],[`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`,key:`tnqrlb`}],[`path`,{d:`M15.5 22H18a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v16a2 2 0 0 0 .274 1.01`,key:`gkbcor`}],[`circle`,{cx:`10`,cy:`20`,r:`2`,key:`1xzdoj`}]]),Vt=M(`FileAudio2`,[[`path`,{d:`M4 22h14a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v2`,key:`17k7jt`}],[`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`,key:`tnqrlb`}],[`circle`,{cx:`3`,cy:`17`,r:`1`,key:`vo6nti`}],[`path`,{d:`M2 17v-3a4 4 0 0 1 8 0v3`,key:`1ggdre`}],[`circle`,{cx:`9`,cy:`17`,r:`1`,key:`bc1fq4`}]]),Ht=M(`FileCode2`,[[`path`,{d:`M4 22h14a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v4`,key:`1pf5j1`}],[`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`,key:`tnqrlb`}],[`path`,{d:`m5 12-3 3 3 3`,key:`oke12k`}],[`path`,{d:`m9 18 3-3-3-3`,key:`112psh`}]]),Ut=M(`FileImage`,[[`path`,{d:`M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z`,key:`1rqfz7`}],[`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`,key:`tnqrlb`}],[`circle`,{cx:`10`,cy:`12`,r:`2`,key:`737tya`}],[`path`,{d:`m20 17-1.296-1.296a2.41 2.41 0 0 0-3.408 0L9 22`,key:`wt3hpn`}]]),Wt=M(`FileJson2`,[[`path`,{d:`M4 22h14a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v4`,key:`1pf5j1`}],[`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`,key:`tnqrlb`}],[`path`,{d:`M4 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1`,key:`fq0c9t`}],[`path`,{d:`M8 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1`,key:`4gibmv`}]]),Gt=M(`FileSpreadsheet`,[[`path`,{d:`M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z`,key:`1rqfz7`}],[`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`,key:`tnqrlb`}],[`path`,{d:`M8 13h2`,key:`yr2amv`}],[`path`,{d:`M14 13h2`,key:`un5t4a`}],[`path`,{d:`M8 17h2`,key:`2yhykz`}],[`path`,{d:`M14 17h2`,key:`10kma7`}]]),Kt=M(`FileText`,[[`path`,{d:`M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z`,key:`1rqfz7`}],[`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`,key:`tnqrlb`}],[`path`,{d:`M10 9H8`,key:`b1mrlr`}],[`path`,{d:`M16 13H8`,key:`t4e002`}],[`path`,{d:`M16 17H8`,key:`z1uh3a`}]]),qt=M(`FileVideo2`,[[`path`,{d:`M4 22h14a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v4`,key:`1pf5j1`}],[`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`,key:`tnqrlb`}],[`rect`,{width:`8`,height:`6`,x:`2`,y:`12`,rx:`1`,key:`1a6c1e`}],[`path`,{d:`m10 15.5 4 2.5v-6l-4 2.5`,key:`t7cp39`}]]),Jt=M(`File`,[[`path`,{d:`M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z`,key:`1rqfz7`}],[`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`,key:`tnqrlb`}]]),Yt=M(`FolderGit2`,[[`path`,{d:`M9 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v5`,key:`1w6njk`}],[`circle`,{cx:`13`,cy:`12`,r:`2`,key:`1j92g6`}],[`path`,{d:`M18 19c-2.8 0-5-2.2-5-5v8`,key:`pkpw2h`}],[`circle`,{cx:`20`,cy:`19`,r:`2`,key:`1obnsp`}]]),Xt=M(`FolderOpen`,[[`path`,{d:`m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2`,key:`usdka0`}]]),Zt=M(`FolderTree`,[[`path`,{d:`M20 10a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-2.5a1 1 0 0 1-.8-.4l-.9-1.2A1 1 0 0 0 15 3h-2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z`,key:`hod4my`}],[`path`,{d:`M20 21a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1h-2.9a1 1 0 0 1-.88-.55l-.42-.85a1 1 0 0 0-.92-.6H13a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z`,key:`w4yl2u`}],[`path`,{d:`M3 5a2 2 0 0 0 2 2h3`,key:`f2jnh7`}],[`path`,{d:`M3 3v13a2 2 0 0 0 2 2h3`,key:`k8epm1`}]]),Qt=M(`FolderUp`,[[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}],[`path`,{d:`M12 10v6`,key:`1bos4e`}],[`path`,{d:`m9 13 3-3 3 3`,key:`1pxg3c`}]]),$t=M(`FolderX`,[[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}],[`path`,{d:`m9.5 10.5 5 5`,key:`ra9qjz`}],[`path`,{d:`m14.5 10.5-5 5`,key:`l2rkpq`}]]),en=M(`GitBranch`,[[`line`,{x1:`6`,x2:`6`,y1:`3`,y2:`15`,key:`17qcm7`}],[`circle`,{cx:`18`,cy:`6`,r:`3`,key:`1h7g24`}],[`circle`,{cx:`6`,cy:`18`,r:`3`,key:`fqmcym`}],[`path`,{d:`M18 9a9 9 0 0 1-9 9`,key:`n2h4wq`}]]),tn=M(`House`,[[`path`,{d:`M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8`,key:`5wwlr5`}],[`path`,{d:`M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z`,key:`1d0kgt`}]]),nn=M(`MessageSquareText`,[[`path`,{d:`M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z`,key:`1lielz`}],[`path`,{d:`M13 8H7`,key:`14i4kc`}],[`path`,{d:`M17 12H7`,key:`16if0g`}]]),rn=M(`Minus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}]]),an=M(`Paperclip`,[[`path`,{d:`m21.44 11.05-9.19 9.19a6 6 0 0 1-8.49-8.49l8.57-8.57A4 4 0 1 1 18 8.84l-8.59 8.57a2 2 0 0 1-2.83-2.83l8.49-8.48`,key:`1u3ebp`}]]),on=M(`Pencil`,[[`path`,{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`,key:`1a8usu`}],[`path`,{d:`m15 5 4 4`,key:`1mk7zo`}]]),sn=M(`Puzzle`,[[`path`,{d:`M15.39 4.39a1 1 0 0 0 1.68-.474 2.5 2.5 0 1 1 3.014 3.015 1 1 0 0 0-.474 1.68l1.683 1.682a2.414 2.414 0 0 1 0 3.414L19.61 15.39a1 1 0 0 1-1.68-.474 2.5 2.5 0 1 0-3.014 3.015 1 1 0 0 1 .474 1.68l-1.683 1.682a2.414 2.414 0 0 1-3.414 0L8.61 19.61a1 1 0 0 0-1.68.474 2.5 2.5 0 1 1-3.014-3.015 1 1 0 0 0 .474-1.68l-1.683-1.682a2.414 2.414 0 0 1 0-3.414L4.39 8.61a1 1 0 0 1 1.68.474 2.5 2.5 0 1 0 3.014-3.015 1 1 0 0 1-.474-1.68l1.683-1.682a2.414 2.414 0 0 1 3.414 0z`,key:`w46dr5`}]]),cn=M(`Terminal`,[[`polyline`,{points:`4 17 10 11 4 5`,key:`akl6gq`}],[`line`,{x1:`12`,x2:`20`,y1:`19`,y2:`19`,key:`q2wloq`}]]),ln=M(`TriangleAlert`,[[`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`}]]),un=M(`User`,[[`path`,{d:`M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2`,key:`975kel`}],[`circle`,{cx:`12`,cy:`7`,r:`4`,key:`17ys0d`}]]),N=l();function dn({isProjectFirstView:e,onSelectMode:t}){return(0,N.jsxs)(`div`,{className:`flex items-center gap-1.5 text-[11px]`,children:[(0,N.jsx)(`button`,{type:`button`,"aria-pressed":!e,onClick:()=>t(`time-first`),className:d(`transition-colors`,e?`text-gray-400 hover:text-gray-600`:`font-medium text-gray-600`),children:o(`chatSidebarViewTime`)}),(0,N.jsx)(`span`,{className:`text-gray-300`,children:`/`}),(0,N.jsx)(`button`,{type:`button`,"aria-pressed":e,onClick:()=>t(`project-first`),className:d(`transition-colors`,e?`font-medium text-gray-600`:`text-gray-400 hover:text-gray-600`),children:o(`chatSidebarViewProject`)})]})}var fn={wx:`weixin`,lark:`feishu`},pn={cron:{icon:`cron`}},mn={codex:`chatSessionTypeCodex`,claude:`chatSessionTypeClaude`};function hn(e){return e?.trim().toLowerCase()??``}function gn(e){return e.split(/[-_]+/g).filter(Boolean).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}function _n(e,t){let n=hn(e);if(!n||n===`native`)return null;let r=t.find(e=>hn(e.value)===n);return r?.label.trim()?r.label.trim():gn(n)}function vn(e,t){let n=hn(e);return!n||n===`native`?null:t.find(e=>hn(e.value)===n)??null}function yn(e){let t=hn(e);if(!t)return null;let n=fn[t]??t;return tt(n)?n:null}function bn(e,t){let n=yn(e.channel??``);if(n)return{icon:{kind:`channel-logo`,channel:n},label:null};let r=pn[hn(e.type)];if(r)return{icon:{kind:`symbol`,icon:r.icon},label:null};let i=hn(e.sessionType),a=vn(i,t);if(a?.icon?.src?.trim())return{icon:{kind:`runtime-image`,src:a.icon.src,alt:a.icon.alt??null,name:a.label},label:null};let s=mn[i];return s?{icon:null,label:o(s)}:{icon:null,label:a?.label?.trim()||_n(e.sessionType,t)}}var xn=`app://`;function Sn(e){let t=e.trim().replace(/^\/+/,``);if(!t)return null;let n=t.split(`/`);return n.some(e=>e.trim().length===0||e===`.`||e===`..`)?null:n.join(`/`)}function Cn(e){let t=e.trim();if(!t)return null;if(!t.startsWith(xn))return t;let n=Sn(t.slice(6));return n?`/${n}`:null}function wn({icon:e,className:t}){if(e.kind===`channel-logo`)return(0,N.jsx)(Tn,{channel:e.channel,className:t});if(e.kind===`runtime-image`){let n=Cn(e.src);return(0,N.jsx)(St,{name:e.name?.trim()||e.alt?.trim()||`runtime`,src:n??void 0,className:d(`h-[1.125rem] w-[1.125rem]`,t),imgClassName:`h-full w-full object-contain`,fallback:(0,N.jsx)(me,{className:d(`h-3 w-3 text-gray-500`,t)})})}return(0,N.jsx)(Ee,{className:d(`h-3.5 w-3.5`,t)})}function Tn({channel:e,className:t}){return(0,N.jsx)(St,{name:e,src:tt(e),className:d(`h-[1.125rem] w-[1.125rem]`,t),imgClassName:`h-full w-full object-contain`,fallback:(0,N.jsx)(me,{className:`h-3 w-3 text-gray-500`})})}function En(e){let{option:t,onSelect:n}=e,r=t.ready===!1?t.reasonMessage?.trim()||o(`statusSetup`):null;return(0,N.jsx)(`button`,{type:`button`,onClick:n,className:`w-full rounded-2xl px-3 py-2.5 text-left transition-colors hover:bg-gray-50`,children:(0,N.jsx)(`div`,{className:`flex items-start gap-3`,children:(0,N.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-start gap-2.5`,children:[t.icon?.src?(0,N.jsx)(`span`,{className:`inline-flex h-5 w-5 shrink-0 items-center justify-center pt-0.5`,children:(0,N.jsx)(wn,{icon:{kind:`runtime-image`,src:t.icon.src,alt:t.icon.alt??null,name:t.label}})}):(0,N.jsx)(`span`,{className:`inline-flex h-5 w-5 shrink-0 items-center justify-center pt-0.5 text-gray-400`,children:(0,N.jsx)(me,{className:`h-4 w-4`})}),(0,N.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,N.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,N.jsx)(`div`,{className:`truncate text-[13px] font-semibold text-gray-900`,children:t.label}),(0,N.jsxs)(`span`,{className:d(`inline-flex shrink-0 items-center gap-1.5 text-[11px] font-medium`,t.ready===!1?`text-amber-700`:`text-emerald-600`),children:[(0,N.jsx)(`span`,{className:d(`h-1.5 w-1.5 rounded-full`,t.ready===!1?`bg-amber-500`:`bg-emerald-500`)}),t.ready===!1?o(`statusSetup`):o(`statusReady`)]})]}),r?(0,N.jsx)(`div`,{className:`mt-1 pr-4 text-[11px] leading-4 text-gray-500`,children:r}):null]})]})})})}var P=e(s(),1);function Dn(e,t){return t.some(t=>t.value===e)?e:t[0]?.value??e}function On(e){let{groups:t,defaultSessionType:n,sessionTypeOptions:r,renderSessionItem:i,onCreateSession:a}=e,[s,c]=(0,P.useState)(null),l=(0,P.useMemo)(()=>Dn(n,r),[n,r]),u=r.length>1;return(0,N.jsx)(`div`,{className:`space-y-3`,children:t.map(e=>{let t=`${o(`chatSidebarNewTask`)} · ${e.projectName}`;return(0,N.jsxs)(`div`,{children:[(0,N.jsxs)(`div`,{className:`flex items-center justify-between gap-2 px-2 py-0.5`,children:[(0,N.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5`,children:[(0,N.jsx)(`div`,{className:`truncate text-[11px] font-medium uppercase tracking-wider text-gray-500`,title:e.projectRoot,children:e.projectName}),(0,N.jsx)(`span`,{className:`shrink-0 text-[10px] text-gray-400`,children:e.items.length})]}),u?(0,N.jsxs)(xt,{open:s===e.projectRoot,onOpenChange:t=>{c(t?e.projectRoot:null)},children:[(0,N.jsx)(yt,{asChild:!0,children:(0,N.jsx)(D,{type:`button`,variant:`ghost`,size:`icon`,className:`h-7 w-7 shrink-0 rounded-lg text-gray-400 hover:bg-white hover:text-gray-900`,"aria-label":t,title:t,children:(0,N.jsx)(rt,{className:`h-3.5 w-3.5`})})}),(0,N.jsxs)(_t,{align:`end`,className:`w-56 rounded-2xl border border-gray-200/80 bg-white p-1.5 shadow-[0_24px_60px_-28px_rgba(15,23,42,0.38)]`,children:[(0,N.jsx)(`div`,{className:`px-3 pb-1 pt-2 text-[10px] font-semibold uppercase tracking-[0.18em] text-gray-400`,children:o(`chatSessionTypeLabel`)}),(0,N.jsx)(`div`,{className:`space-y-1`,children:r.map(t=>(0,N.jsx)(En,{option:t,onSelect:()=>{a(t.value,e.projectRoot),c(null)}},`${e.projectRoot}:${t.value}`))})]})]}):(0,N.jsx)(D,{type:`button`,variant:`ghost`,size:`icon`,className:`h-7 w-7 shrink-0 rounded-lg text-gray-400 hover:bg-white hover:text-gray-900`,onClick:()=>a(l,e.projectRoot),"aria-label":t,title:t,children:(0,N.jsx)(rt,{className:`h-3.5 w-3.5`})})]}),(0,N.jsx)(`div`,{className:`space-y-0.5 pl-2`,children:e.items.map(i)})]},e.projectRoot)})})}var kn=[[`bg-amber-100`,`text-amber-700`],[`bg-emerald-100`,`text-emerald-700`],[`bg-blue-100`,`text-blue-700`],[`bg-rose-100`,`text-rose-700`],[`bg-cyan-100`,`text-cyan-700`],[`bg-violet-100`,`text-violet-700`]];function An(e){let t=0;for(let n=0;n<e.length;n+=1)t=(t<<5)-t+e.charCodeAt(n),t|=0;return Math.abs(t)}function jn({agentId:e,displayName:t,avatarUrl:n,className:r}){let i=t?.trim()||e,[a,o]=kn[An(e)%kn.length]??kn[0];return n?.trim()?(0,N.jsx)(`img`,{src:n,alt:t?.trim()||e,className:d(`rounded-full object-cover`,r)}):(0,N.jsx)(`div`,{className:d(`rounded-full flex items-center justify-center font-semibold`,a,o,r),"aria-label":t?.trim()||e,children:e.trim().toLowerCase()===`main`?(0,N.jsx)(me,{className:`h-[55%] w-[55%]`,strokeWidth:2.4}):(i.trim()||`A`).slice(0,1).toUpperCase()})}function Mn({status:e,className:t}){let n=o(e===`running`?`sessionsRunStatusRunning`:`sessionsRunStatusQueued`);return(0,N.jsxs)(`span`,{className:d(`inline-flex h-3.5 w-3.5 items-center justify-center text-gray-400`,t),title:n,"aria-label":n,children:[(0,N.jsx)(nt,{className:`h-3 w-3 animate-spin`}),(0,N.jsx)(`span`,{className:`sr-only`,children:n})]})}function Nn({session:e,draftLabel:t,isSaving:n,onDraftLabelChange:r,onSave:i,onCancel:a}){return(0,N.jsxs)(`div`,{className:`space-y-2`,children:[(0,N.jsx)(f,{value:t,onChange:e=>r(e.target.value),onKeyDown:e=>{e.key===`Enter`?(e.preventDefault(),i()):e.key===`Escape`&&(e.preventDefault(),a())},placeholder:o(`sessionsLabelPlaceholder`),className:`h-8 rounded-lg border-gray-300 bg-white text-xs`,autoFocus:!0,disabled:n}),(0,N.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,N.jsx)(`div`,{className:`min-w-0 text-[11px] text-gray-400 truncate`,children:e.key}),(0,N.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,N.jsx)(D,{type:`button`,size:`icon`,variant:`ghost`,className:`h-7 w-7 rounded-lg text-gray-500 hover:bg-white hover:text-gray-900`,onClick:()=>void i(),disabled:n,"aria-label":o(`save`),children:(0,N.jsx)(Be,{className:`h-3.5 w-3.5`})}),(0,N.jsx)(D,{type:`button`,size:`icon`,variant:`ghost`,className:`h-7 w-7 rounded-lg text-gray-500 hover:bg-white hover:text-gray-900`,onClick:a,disabled:n,"aria-label":o(`cancel`),children:(0,N.jsx)(ct,{className:`h-3.5 w-3.5`})})]})]})]})}function Pn({session:e,active:t,showUnreadDot:n,runStatus:r,context:i,title:a,agentId:s,agentLabel:c,agentAvatarUrl:l,childSessionCount:f=0,onSelect:p,onOpenChildSessions:m,onStartEditing:h}){return(0,N.jsxs)(`div`,{className:`group/session relative`,children:[(0,N.jsxs)(`button`,{type:`button`,onClick:p,className:`w-full text-left`,children:[(0,N.jsxs)(`div`,{className:d(`grid grid-cols-[minmax(0,1fr)_auto] items-start gap-2`,f>0&&m?`pr-14`:`pr-6`),children:[(0,N.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1.5`,children:[s?.trim()&&s.trim().toLowerCase()!==`main`?(0,N.jsx)(jn,{agentId:s,displayName:c,avatarUrl:l,className:`h-5 w-5 shrink-0`}):null,(0,N.jsx)(`span`,{className:`truncate font-medium`,children:a}),i.label?(0,N.jsx)(`span`,{className:d(`shrink-0 rounded-full border px-1.5 py-0.5 text-[10px] font-semibold leading-none`,t?`border-gray-300 bg-white/80 text-gray-700`:`border-gray-200 bg-gray-100 text-gray-500`),children:i.label}):null,i.icon?(0,N.jsx)(`span`,{className:`inline-flex h-[1.125rem] w-[1.125rem] shrink-0 items-center justify-center`,children:(0,N.jsx)(wn,{icon:i.icon,className:t?`text-gray-700`:`text-gray-500`})}):null]}),r?(0,N.jsx)(`span`,{className:`inline-flex shrink-0 items-center justify-end gap-1.5 pt-0.5`,children:(0,N.jsx)(Mn,{status:r})}):null]}),(0,N.jsxs)(`div`,{className:`mt-1 flex items-center gap-2 text-[11px] text-gray-400`,children:[(0,N.jsxs)(`span`,{className:`min-w-0 truncate`,children:[c?.trim()?`${c} · `:``,e.messageCount]}),n?(0,N.jsx)(`span`,{"aria-label":o(`chatSessionUnread`),className:`ml-auto h-2 w-2 shrink-0 rounded-full bg-primary`}):(0,N.jsx)(`span`,{className:`ml-auto shrink-0`,children:u(e.updatedAt)})]})]}),f>0&&m?(0,N.jsxs)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),m()},className:d(`absolute right-6 top-0 inline-flex h-5 items-center gap-1 rounded-md px-1.5 text-[10px] font-medium text-gray-400 transition-all hover:bg-white hover:text-gray-900`,t?`opacity-100`:`opacity-0 group-hover/session:opacity-100 group-focus-within/session:opacity-100`),"aria-label":o(`chatSessionOpenChildSessions`),title:o(`chatSessionOpenChildSessions`),children:[(0,N.jsx)(en,{className:`h-3.5 w-3.5`}),(0,N.jsx)(`span`,{children:f})]}):null,(0,N.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),h()},className:d(`absolute right-0 top-0 inline-flex h-5 w-5 items-center justify-center rounded-md text-gray-400 transition-all hover:bg-white hover:text-gray-900`,t?`opacity-100`:`opacity-0 group-hover/session:opacity-100 group-focus-within/session:opacity-100`),"aria-label":o(`edit`),children:(0,N.jsx)(on,{className:`h-3 w-3`})})]})}function Fn({session:e,active:t,showUnreadDot:n,runStatus:r,context:i,title:a,agentId:o,agentLabel:s,agentAvatarUrl:c,childSessionCount:l,isEditing:u,draftLabel:f,isSaving:p,onSelect:m,onOpenChildSessions:h,onStartEditing:g,onDraftLabelChange:_,onSave:v,onCancel:y}){return(0,N.jsx)(`div`,{className:d(`w-full rounded-xl px-3 py-2.5 text-left transition-all text-[13px]`,t?`bg-gray-200 text-gray-900 font-semibold shadow-sm`:`text-gray-700 hover:bg-gray-200/60 hover:text-gray-900`),children:u?(0,N.jsx)(Nn,{session:e,draftLabel:f,isSaving:p,onDraftLabelChange:_,onSave:v,onCancel:y}):(0,N.jsx)(Pn,{session:e,active:t,showUnreadDot:n,runStatus:r,context:i,title:a,agentId:o,agentLabel:s,agentAvatarUrl:c,onSelect:m,childSessionCount:l,onOpenChildSessions:h,onStartEditing:g})})}var In=[{icon:xe,titleKey:`chatWelcomeCapability1Title`,descKey:`chatWelcomeCapability1Desc`},{icon:ve,titleKey:`chatWelcomeCapability2Title`,descKey:`chatWelcomeCapability2Desc`},{icon:Ee,titleKey:`chatWelcomeCapability3Title`,descKey:`chatWelcomeCapability3Desc`}];function Ln({onCreateSession:e,agents:t,selectedAgentId:n,onSelectAgent:r}){let i=t.find(e=>e.id===n)??null;return(0,N.jsx)(`div`,{className:`h-full flex items-center justify-center p-8`,children:(0,N.jsxs)(`div`,{className:`max-w-lg w-full text-center`,children:[(0,N.jsx)(`div`,{className:`mx-auto mb-6 h-16 w-16 rounded-2xl bg-primary/10 flex items-center justify-center`,children:(0,N.jsx)(me,{className:`h-8 w-8 text-primary`})}),(0,N.jsx)(`h2`,{className:`text-xl font-semibold text-gray-900 mb-2`,children:o(`chatWelcomeTitle`)}),(0,N.jsx)(`p`,{className:`text-sm text-gray-500 mb-8`,children:o(`chatWelcomeSubtitle`)}),(0,N.jsxs)(`div`,{className:`mb-6 flex items-center justify-center gap-2.5`,children:[(0,N.jsx)(`span`,{className:`text-[13px] font-medium text-gray-500`,children:o(`chatDraftAgentTitle`)}),(0,N.jsxs)(Je,{value:n,onValueChange:r,children:[(0,N.jsxs)(ze,{"aria-label":o(`chatDraftAgentTitle`),className:`h-auto w-auto gap-1 rounded-full border-0 bg-transparent px-1.5 py-1 text-gray-500 shadow-none hover:bg-white/70 hover:text-gray-800 focus:ring-0`,children:[(0,N.jsx)(`span`,{className:`sr-only`,children:o(`chatDraftAgentTitle`)}),(0,N.jsx)(`div`,{className:`flex items-center gap-1.5`,children:i?(0,N.jsx)(jn,{agentId:i.id,displayName:i.displayName,avatarUrl:i.avatarUrl,className:`h-7 w-7 shrink-0`}):null})]}),(0,N.jsx)(Ue,{className:`rounded-xl border-gray-200/80 shadow-lg`,children:t.map(e=>(0,N.jsx)(Ke,{value:e.id,className:`rounded-lg pr-10`,children:(0,N.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,N.jsx)(jn,{agentId:e.id,displayName:e.displayName,avatarUrl:e.avatarUrl,className:`h-5 w-5 shrink-0`}),(0,N.jsx)(`span`,{className:`truncate text-sm font-medium text-gray-700`,children:e.displayName?.trim()||e.id})]})},e.id))})]})]}),(0,N.jsx)(`div`,{className:`grid grid-cols-3 gap-3`,children:In.map(t=>{let n=t.icon;return(0,N.jsxs)(`button`,{onClick:e,className:`rounded-2xl border border-gray-200 bg-white p-4 text-left shadow-card hover:shadow-card-hover transition-shadow cursor-pointer`,children:[(0,N.jsx)(`div`,{className:`h-9 w-9 rounded-xl bg-primary/8 flex items-center justify-center mb-3`,children:(0,N.jsx)(n,{className:`h-4.5 w-4.5 text-primary`})}),(0,N.jsx)(`div`,{className:`text-sm font-semibold text-gray-900 mb-1`,children:o(t.titleKey)}),(0,N.jsx)(`div`,{className:`text-[11px] text-gray-500 leading-relaxed`,children:o(t.descKey)})]},t.titleKey)})})]})})}var Rn=e=>`[data-item-index="${e}"]`;function zn(e){let{activeIndex:t,containerRef:n,getItemSelector:r,isEnabled:i,itemCount:a}=e,o=r??Rn;(0,P.useEffect)(()=>{if(!i||a===0)return;let e=n.current;if(!e)return;let r=e.querySelector(o(t));typeof r?.scrollIntoView==`function`&&r.scrollIntoView({block:`nearest`,inline:`nearest`})},[t,n,o,i,a])}function Bn(){let e=(0,P.useRef)(null),[t,n]=(0,P.useState)(null);return(0,P.useEffect)(()=>{let t=e.current;if(!t||typeof ResizeObserver>`u`)return;let r=()=>{n(t.getBoundingClientRect().width)};r();let i=new ResizeObserver(()=>r());return i.observe(t),()=>i.disconnect()},[]),{elementRef:e,width:t}}function F(...e){return n(r(e))}var Vn=P.forwardRef(({className:e,type:t,...n},r)=>(0,N.jsx)(`input`,{type:t,className:F(`flex h-9 w-full rounded-xl border border-gray-200/80 bg-white px-3.5 py-2 text-sm text-gray-900 file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-gray-300 placeholder:font-normal focus:outline-none focus:ring-1 focus:ring-primary/40 focus:border-primary/40 transition-colors disabled:cursor-not-allowed disabled:opacity-50`,e),ref:r,...n}));Vn.displayName=`ChatInput`;var Hn=bt,Un=ht,Wn=gt,Gn=P.forwardRef(({className:e,sideOffset:t=8,align:n=`start`,...r},i)=>(0,N.jsx)(vt,{children:(0,N.jsx)(mt,{ref:i,sideOffset:t,align:n,className:F(`z-[var(--z-popover,50)] w-72 overflow-hidden rounded-2xl border border-gray-200/50 bg-white p-4 shadow-lg animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`,e),...r})}));Gn.displayName=mt.displayName;var Kn=He,qn=qe,Jn=Ze,Yn=P.forwardRef(({className:e,children:t,...n},r)=>(0,N.jsxs)(Xe,{ref:r,className:F(`flex h-9 w-full items-center justify-between whitespace-nowrap rounded-xl border border-gray-200/80 bg-white px-3 py-2 text-sm shadow-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-primary/40 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1`,e),...n,children:[t,(0,N.jsx)(Pe,{asChild:!0,children:(0,N.jsx)(je,{className:`h-4 w-4 opacity-50`})})]}));Yn.displayName=Xe.displayName;var Xn=P.forwardRef(({className:e,...t},n)=>(0,N.jsx)(Le,{ref:n,className:F(`flex cursor-default items-center justify-center py-1`,e),...t,children:(0,N.jsx)(Ae,{className:`h-4 w-4`})}));Xn.displayName=Le.displayName;var Zn=P.forwardRef(({className:e,...t},n)=>(0,N.jsx)(Re,{ref:n,className:F(`flex cursor-default items-center justify-center py-1`,e),...t,children:(0,N.jsx)(je,{className:`h-4 w-4`})}));Zn.displayName=Re.displayName;var Qn=P.forwardRef(({className:e,children:t,position:n=`popper`,...r},i)=>(0,N.jsx)(Ge,{children:(0,N.jsxs)(We,{ref:i,className:F(`relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md bg-white text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`,n===`popper`&&`data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1`,e),position:n,...r,children:[(0,N.jsx)(Xn,{}),(0,N.jsx)(Ne,{className:F(`p-1`,n===`popper`&&`h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]`),children:t}),(0,N.jsx)(Zn,{})]})}));Qn.displayName=We.displayName;var $n=P.forwardRef(({className:e,...t},n)=>(0,N.jsx)(Ie,{ref:n,className:F(`px-2 py-1 text-[11px] font-semibold uppercase tracking-[0.08em] text-gray-500`,e),...t}));$n.displayName=Ie.displayName;var er=P.forwardRef(({className:e,children:t,...n},r)=>(0,N.jsxs)(Ve,{ref:r,className:F(`relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-2 pr-8 text-sm outline-none focus:bg-gray-100 data-[disabled]:pointer-events-none data-[disabled]:opacity-50 hover:bg-gray-100`,e),...n,children:[(0,N.jsx)(`span`,{className:`absolute right-2 flex h-3.5 w-3.5 items-center justify-center`,children:(0,N.jsx)(Ye,{children:(0,N.jsx)(Be,{className:`h-4 w-4`})})}),(0,N.jsx)(Fe,{children:t})]}));er.displayName=Ve.displayName;var tr=P.forwardRef(({className:e,...t},n)=>(0,N.jsx)(Me,{ref:n,className:F(`-mx-1 my-1 h-px bg-gray-100`,e),...t}));tr.displayName=Me.displayName;var nr=At,rr=wt,ir=Et,ar=P.forwardRef(({className:e,sideOffset:t=4,...n},r)=>(0,N.jsx)(Ot,{children:(0,N.jsx)(Ct,{ref:r,sideOffset:t,className:F(`z-[var(--z-tooltip)] overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2`,e),...n})}));ar.displayName=Ct.displayName;var or={Popover:Hn,PopoverAnchor:Wn,PopoverContent:Gn,PopoverTrigger:Un,Input:Vn,Select:Kn,SelectContent:Qn,SelectGroup:qn,SelectItem:er,SelectLabel:$n,SelectSeparator:tr,SelectTrigger:Yn,SelectValue:Jn,Tooltip:rr,TooltipContent:ar,TooltipProvider:nr,TooltipTrigger:ir},sr=680,cr=.82,lr=560;function ur(e){let{Popover:t,PopoverAnchor:n,PopoverContent:r}=or,{elementRef:i,width:a}=Bn(),o=(0,P.useRef)(null),{isOpen:s,isLoading:c,items:l,activeIndex:u,activeItem:d,texts:f,onSelectItem:p,onOpenChange:m,onSetActiveIndex:h}=e,g=(0,P.useMemo)(()=>{if(a)return Math.min(a>lr?a*cr:a,sr)},[a]);return zn({containerRef:o,activeIndex:u,itemCount:l.length,isEnabled:s&&!c,getItemSelector:e=>`[data-slash-index="${e}"]`}),(0,N.jsxs)(t,{open:s,onOpenChange:m,children:[(0,N.jsx)(n,{asChild:!0,children:(0,N.jsx)(`div`,{ref:i,className:`pointer-events-none absolute bottom-full left-3 right-3 h-0`})}),(0,N.jsx)(r,{side:`top`,align:`start`,sideOffset:10,className:`z-[70] max-w-[calc(100vw-1.5rem)] overflow-hidden rounded-2xl border border-gray-200 bg-white/95 p-0 shadow-2xl backdrop-blur-md`,onOpenAutoFocus:e=>e.preventDefault(),style:g?{width:`${g}px`}:void 0,children:(0,N.jsxs)(`div`,{className:`grid min-h-[240px] grid-cols-[minmax(220px,300px)_minmax(0,1fr)]`,children:[(0,N.jsx)(`div`,{ref:o,role:`listbox`,"aria-label":f.slashSectionLabel,className:`custom-scrollbar max-h-[320px] overflow-y-auto border-r border-gray-200 p-2.5`,children:c?(0,N.jsx)(`div`,{className:`p-2 text-xs text-gray-500`,children:f.slashLoadingLabel}):(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`div`,{className:`mb-2 px-2 text-[11px] font-semibold uppercase tracking-wide text-gray-500`,children:f.slashSectionLabel}),l.length===0?(0,N.jsx)(`div`,{className:`px-2 text-xs text-gray-400`,children:f.slashEmptyLabel}):(0,N.jsx)(`div`,{className:`space-y-1`,children:l.map((e,t)=>{let n=t===u;return(0,N.jsxs)(`button`,{type:`button`,role:`option`,"aria-selected":n,"data-slash-index":t,onMouseEnter:()=>h(t),onClick:()=>p(e),className:`flex w-full items-start gap-2 rounded-lg px-2 py-1.5 text-left transition ${n?`bg-gray-100 text-gray-900`:`text-gray-700 hover:bg-gray-50`}`,children:[(0,N.jsx)(`span`,{className:`truncate text-xs font-semibold`,children:e.title}),(0,N.jsx)(`span`,{className:`truncate text-xs text-gray-500`,children:e.subtitle})]},e.key)})})]})}),(0,N.jsx)(`div`,{className:`min-w-0 p-2.5`,children:d?(0,N.jsxs)(`div`,{className:`space-y-3`,children:[(0,N.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,N.jsx)(`span`,{className:`inline-flex rounded-full bg-primary/10 px-2 py-0.5 text-[11px] font-semibold text-primary`,children:d.subtitle}),(0,N.jsx)(`span`,{className:`text-sm font-semibold text-gray-900`,children:d.title})]}),(0,N.jsx)(`p`,{className:`text-xs leading-5 text-gray-600`,children:d.description}),(0,N.jsx)(`div`,{className:`space-y-1`,children:d.detailLines.map(e=>(0,N.jsx)(`div`,{className:`min-w-0 break-all rounded-md bg-gray-50 px-2 py-1 text-[11px] leading-5 text-gray-600`,children:e},e))}),(0,N.jsx)(`div`,{className:`pt-1 text-[11px] text-gray-500`,children:f.slashSkillHintLabel})]}):(0,N.jsx)(`div`,{className:`text-xs text-gray-500`,children:f.slashHintLabel})})]})})]})}var dr=v(`inline-flex items-center justify-center whitespace-nowrap rounded-full text-sm font-medium ring-offset-background transition-all duration-fast focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50`,{variants:{variant:{default:`bg-primary text-primary-foreground hover:bg-primary-600 active:bg-primary-700 shadow-sm`,destructive:`bg-destructive text-destructive-foreground hover:bg-destructive/90`,outline:`border border-gray-200 bg-white hover:bg-gray-50 hover:text-gray-800 text-gray-600`,secondary:`bg-gray-100 text-gray-700 hover:bg-gray-200/80`,ghost:`hover:bg-gray-100/80 hover:text-gray-800`,link:`text-primary underline-offset-4 hover:underline`,primary:`bg-primary text-primary-foreground hover:bg-primary-600 active:bg-primary-700 shadow-sm`,subtle:`bg-gray-100 text-gray-600 hover:bg-gray-200/80`,"primary-outline":`border border-primary/30 text-primary hover:bg-primary hover:text-primary-foreground`},size:{default:`h-9 px-4 py-2`,sm:`h-8 px-3 text-xs`,lg:`h-11 px-5 text-[14px]`,xl:`h-12 px-6 text-[15px]`,icon:`h-9 w-9`}},defaultVariants:{variant:`default`,size:`default`}}),fr=P.forwardRef(({className:e,variant:t,size:n,...r},i)=>(0,N.jsx)(`button`,{className:F(dr({variant:t,size:n,className:e})),ref:i,...r}));fr.displayName=`ChatButton`;var pr=120;function mr(e){let t=e.replace(/\s+/g,` `).trim();return t.length<=pr?t:`${t.slice(0,pr-1)}…`}function hr(){return(0,N.jsx)(`span`,{"aria-hidden":`true`,"data-testid":`chat-stop-icon`,className:`block h-3 w-3 rounded-[2px] bg-gray-700 shadow-[inset_0_0_0_1px_rgba(17,24,39,0.06)]`})}function gr({contextWindow:e}){let{Tooltip:t,TooltipContent:n,TooltipProvider:r,TooltipTrigger:i}=or,a=Math.max(0,Math.min(1,e.ratio)),o=Math.round(a*360);return(0,N.jsx)(r,{delayDuration:0,children:(0,N.jsxs)(t,{children:[(0,N.jsx)(i,{asChild:!0,children:(0,N.jsxs)(`button`,{type:`button`,className:`relative inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-lg text-gray-500 transition-colors hover:bg-gray-100 hover:text-gray-700`,"aria-label":e.label,title:e.label,children:[(0,N.jsx)(`span`,{"aria-hidden":`true`,className:`absolute inset-[7px] rounded-full`,style:{background:`conic-gradient(#9ca3af ${o}deg, #e5e7eb 0deg)`}}),(0,N.jsx)(`span`,{"aria-hidden":`true`,className:`absolute inset-[10px] rounded-full bg-white`})]})}),(0,N.jsx)(n,{side:`top`,className:`max-w-[18rem]`,children:(0,N.jsxs)(`div`,{className:`space-y-1.5 text-xs`,children:[(0,N.jsxs)(`div`,{className:`flex items-center justify-between gap-5 font-semibold text-gray-800`,children:[(0,N.jsx)(`span`,{children:e.label}),(0,N.jsx)(`span`,{children:e.percentLabel})]}),e.details.map(e=>(0,N.jsxs)(`div`,{className:`flex items-center justify-between gap-5 text-gray-600`,children:[(0,N.jsx)(`span`,{children:e.label}),(0,N.jsx)(`span`,{className:`font-medium text-gray-800`,children:e.value})]},e.label))]})})]})})}function _r({sendError:e,sendErrorDetailsLabel:t,isSending:n,canStopGeneration:r,sendDisabled:i,stopDisabled:a,stopHint:o,sendButtonLabel:s,stopButtonLabel:c,contextWindow:l,onSend:u,onStop:d}){let{Popover:f,PopoverContent:p,PopoverTrigger:m,Tooltip:h,TooltipContent:g,TooltipProvider:_,TooltipTrigger:v}=or,y=e?.trim()??``,b=y?mr(y):``,x=t?.trim()||`Details`;return(0,N.jsxs)(`div`,{className:`flex shrink-0 flex-col items-end gap-1`,children:[y?(0,N.jsxs)(`div`,{className:`flex max-w-[420px] items-start justify-end gap-2 text-right`,children:[(0,N.jsx)(`div`,{className:`min-w-0 flex-1 text-[11px] text-red-600`,children:(0,N.jsx)(`span`,{className:`block truncate`,title:y,children:b})}),(0,N.jsxs)(f,{children:[(0,N.jsx)(m,{asChild:!0,children:(0,N.jsx)(`button`,{type:`button`,className:`shrink-0 rounded-full border border-red-200/80 bg-red-50 px-2 py-0.5 text-[10px] font-semibold text-red-700 transition-colors hover:bg-red-100`,children:x})}),(0,N.jsxs)(p,{align:`end`,className:`w-[min(32rem,calc(100vw-1.5rem))] border-red-100/80 p-0`,children:[(0,N.jsx)(`div`,{className:`border-b border-red-100 bg-red-50/80 px-4 py-2 text-xs font-semibold text-red-700`,children:x}),(0,N.jsx)(`pre`,{className:`max-h-80 overflow-auto whitespace-pre-wrap break-words px-4 py-3 text-xs leading-relaxed text-red-700`,children:y})]})]})]}):null,(0,N.jsxs)(`div`,{className:`flex items-center gap-2`,children:[l?(0,N.jsx)(gr,{contextWindow:l}):null,n?r?(0,N.jsx)(fr,{size:`icon`,variant:`outline`,className:`h-8 w-8 rounded-full`,"aria-label":c,onClick:()=>void d(),disabled:a,children:(0,N.jsx)(hr,{})}):(0,N.jsx)(_,{children:(0,N.jsxs)(h,{children:[(0,N.jsx)(v,{asChild:!0,children:(0,N.jsx)(`span`,{children:(0,N.jsx)(fr,{size:`icon`,variant:`outline`,className:`h-8 w-8 rounded-full`,"aria-label":c,disabled:!0,children:(0,N.jsx)(hr,{})})})}),(0,N.jsx)(g,{side:`top`,children:(0,N.jsx)(`p`,{className:`text-xs`,children:o})})]})}):(0,N.jsx)(fr,{size:`icon`,className:`h-8 w-8 rounded-full`,"aria-label":s,onClick:()=>void u(),disabled:i,children:(0,N.jsx)(Pt,{className:`h-5 w-5`})})]})]})}function vr(e,t){let n=t.trim().toLowerCase();return n?e.filter(e=>[e.label,e.key,e.description].filter(e=>typeof e==`string`&&e.trim().length>0).join(` `).toLowerCase().includes(n)):e}function yr(e){let{Input:t,Popover:n,PopoverContent:r,PopoverTrigger:i}=or,{picker:a}=e,o=(0,P.useRef)(null),s=(0,P.useId)(),[c,l]=(0,P.useState)(``),[u,d]=(0,P.useState)(0),f=(0,P.useMemo)(()=>new Set(a.selectedKeys),[a.selectedKeys]),p=a.selectedKeys.length,m=c.trim().length>0,h=(0,P.useMemo)(()=>{if(m)return null;let e=a.groups?.filter(e=>e.options.length>0)??[];return e.length>0?e:null},[m,a.groups]),g=(0,P.useMemo)(()=>h?h.flatMap(e=>e.options):vr(a.options,c),[h,a.options,c]);(0,P.useEffect)(()=>{d(0)},[c]),(0,P.useEffect)(()=>{d(e=>g.length===0?0:Math.min(e,g.length-1))},[g.length]),zn({containerRef:o,activeIndex:u,itemCount:g.length,isEnabled:g.length>0,getItemSelector:e=>`[data-skill-index="${e}"]`});let _=e=>{if(f.has(e)){a.onSelectedKeysChange(a.selectedKeys.filter(t=>t!==e));return}a.onSelectedKeysChange([...a.selectedKeys,e])},v=e=>{if(g.length!==0){if(e.key===`ArrowDown`){e.preventDefault(),d(e=>Math.min(e+1,g.length-1));return}if(e.key===`ArrowUp`){e.preventDefault(),d(e=>Math.max(e-1,0));return}if(e.key===`Enter`){e.preventDefault();let t=g[u];t&&_(t.key)}}};return(0,N.jsxs)(n,{children:[(0,N.jsx)(i,{asChild:!0,children:(0,N.jsxs)(`button`,{type:`button`,"aria-haspopup":`listbox`,"aria-label":a.title,className:`relative inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-lg px-0 text-xs font-medium text-gray-600 transition-colors hover:bg-gray-100 hover:text-gray-900 sm:w-auto sm:gap-1.5 sm:px-3`,children:[(0,N.jsx)(ve,{className:`h-4 w-4`}),(0,N.jsx)(`span`,{className:`hidden sm:inline`,children:a.title}),p>0?(0,N.jsx)(`span`,{className:`absolute -right-1 -top-1 flex h-[18px] min-w-[18px] items-center justify-center rounded-full bg-primary px-1 text-[10px] font-semibold leading-none text-white shadow-sm sm:static sm:ml-0.5 sm:bg-primary/10 sm:text-primary sm:shadow-none`,children:p}):null]})}),(0,N.jsxs)(r,{side:`top`,align:`start`,className:`w-[360px] p-0`,children:[(0,N.jsxs)(`div`,{className:`space-y-2 border-b border-gray-100 px-4 py-3`,children:[(0,N.jsx)(`div`,{className:`text-sm font-semibold text-gray-900`,children:a.title}),(0,N.jsxs)(`div`,{className:`relative`,children:[(0,N.jsx)(Oe,{className:`pointer-events-none absolute left-3 top-2.5 h-3.5 w-3.5 text-gray-400`}),(0,N.jsx)(t,{value:c,onChange:e=>l(e.target.value),onKeyDown:v,placeholder:a.searchPlaceholder,role:`combobox`,"aria-controls":s,"aria-expanded":`true`,"aria-autocomplete":`list`,"aria-activedescendant":g[u]?`${s}-option-${u}`:void 0,className:`h-8 rounded-lg pl-8 text-xs`})]})]}),(0,N.jsx)(`div`,{ref:o,id:s,role:`listbox`,"aria-multiselectable":`true`,className:`custom-scrollbar max-h-[320px] overflow-y-auto`,children:a.isLoading?(0,N.jsx)(`div`,{className:`p-4 text-xs text-gray-500`,children:a.loadingLabel}):g.length===0?(0,N.jsx)(`div`,{className:`p-4 text-center text-xs text-gray-500`,children:a.emptyLabel}):(0,N.jsx)(`div`,{className:`py-1`,children:(()=>{let e=h??[{key:`all-skills`,options:g}],t=0;return e.map(e=>(0,N.jsxs)(`div`,{children:[e.label?(0,N.jsx)(`div`,{className:`px-4 pb-1 pt-2 text-[11px] font-semibold uppercase tracking-wide text-gray-500`,children:e.label}):null,e.options.map(e=>{let n=t;t+=1;let r=f.has(e.key),i=n===u;return(0,N.jsxs)(`button`,{type:`button`,id:`${s}-option-${n}`,role:`option`,"aria-selected":r,"data-skill-index":n,onClick:()=>_(e.key),onMouseEnter:()=>d(n),className:`flex w-full items-center gap-3 px-4 py-2.5 text-left transition-colors ${i?`bg-gray-50`:`hover:bg-gray-50`}`,children:[(0,N.jsx)(`div`,{className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-lg bg-gray-100 text-gray-500`,children:(0,N.jsx)(sn,{className:`h-4 w-4`})}),(0,N.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,N.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,N.jsx)(`span`,{className:`truncate text-sm text-gray-900`,children:e.label}),e.badgeLabel?(0,N.jsx)(`span`,{className:`shrink-0 rounded-full bg-primary/10 px-1.5 py-0.5 text-[10px] font-medium text-primary`,children:e.badgeLabel}):null]}),(0,N.jsx)(`div`,{className:`mt-0.5 truncate text-xs text-gray-500`,children:e.description||e.key})]}),(0,N.jsx)(`div`,{className:`ml-3 shrink-0`,children:(0,N.jsx)(`span`,{className:r?`inline-flex h-5 w-5 items-center justify-center rounded-full bg-primary text-white`:`inline-flex h-5 w-5 items-center justify-center rounded-full border border-gray-300 bg-white`,children:r?(0,N.jsx)(Be,{className:`h-3 w-3`}):null})})]},e.key)})]},e.key))})()})}),a.manageHref&&a.manageLabel?(0,N.jsx)(`div`,{className:`border-t border-gray-100 px-4 py-2.5`,children:(0,N.jsxs)(`a`,{href:a.manageHref,className:`inline-flex items-center gap-1.5 text-xs font-medium text-primary transition-colors hover:text-primary/80`,children:[a.manageLabel,(0,N.jsx)(Qe,{className:`h-3 w-3`})]})}):null]})]})}function br({icon:e}){return e===`sparkles`?(0,N.jsx)(ot,{className:`h-3.5 w-3.5 shrink-0 text-primary`}):e===`brain`?(0,N.jsx)(Ft,{className:`h-3.5 w-3.5 shrink-0 text-gray-500`}):null}function xr({icon:e}){return e===`paperclip`?(0,N.jsx)(an,{className:`h-4 w-4`}):(0,N.jsx)(br,{icon:e})}var Sr={model:`min-w-0 flex-1 sm:min-w-[220px] sm:flex-none`,"session-type":`shrink-0`,thinking:`shrink-0`},Cr={model:`w-[min(18rem,calc(100vw-1rem))] sm:w-[320px]`,"session-type":`w-[220px]`,thinking:`w-[180px]`};function wr(e){return e.key===`model`&&e.selectedLabel&&e.selectedLabel.split(`/`).slice(1).join(`/`).trim()||e.selectedLabel}function Tr({item:e}){let{Select:t,SelectContent:n,SelectGroup:r,SelectItem:i,SelectLabel:a,SelectSeparator:o,SelectTrigger:s,SelectValue:c}=or,l=e.groups?.filter(e=>e.options.length>0)??(e.options.length>0?[{key:`${e.key}-default`,options:e.options}]:[]),u=l.some(e=>e.options.length>0),d=wr(e);return(0,N.jsxs)(t,{value:e.value,onValueChange:e.onValueChange,disabled:e.disabled,children:[(0,N.jsx)(s,{className:`h-8 w-auto rounded-lg border-0 bg-transparent px-2 text-xs font-medium text-gray-600 shadow-none hover:bg-gray-100 focus:ring-0 sm:px-3 ${Sr[e.key]??``}`,children:e.selectedLabel?(0,N.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 text-left`,children:[(0,N.jsx)(br,{icon:e.icon}),(0,N.jsx)(`span`,{className:`truncate text-xs font-semibold text-gray-700 sm:hidden`,children:d}),(0,N.jsx)(`span`,{className:`hidden truncate text-xs font-semibold text-gray-700 sm:inline`,children:e.selectedLabel})]}):e.loading?(0,N.jsx)(`div`,{className:`h-3 w-24 animate-pulse rounded bg-gray-200`}):(0,N.jsx)(c,{placeholder:e.placeholder})}),(0,N.jsxs)(n,{className:Cr[e.key]??``,children:[u?null:e.loading?(0,N.jsxs)(`div`,{className:`space-y-2 px-3 py-2`,children:[(0,N.jsx)(`div`,{className:`h-3 w-36 animate-pulse rounded bg-gray-200`}),(0,N.jsx)(`div`,{className:`h-3 w-28 animate-pulse rounded bg-gray-200`}),(0,N.jsx)(`div`,{className:`h-3 w-32 animate-pulse rounded bg-gray-200`})]}):e.emptyLabel?(0,N.jsx)(`div`,{className:`px-3 py-2 text-xs text-gray-500`,children:e.emptyLabel}):null,l.map((e,t)=>(0,N.jsxs)(`div`,{children:[t>0?(0,N.jsx)(o,{}):null,(0,N.jsxs)(r,{children:[e.label?(0,N.jsx)(a,{children:e.label}):null,e.options.map(e=>(0,N.jsx)(i,{value:e.value,className:`py-2`,children:e.description?(0,N.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-0.5`,children:[(0,N.jsx)(`span`,{className:`truncate text-xs font-semibold text-gray-800`,children:e.label}),(0,N.jsx)(`span`,{className:`truncate text-[11px] text-gray-500`,children:e.description})]}):(0,N.jsx)(`span`,{className:`truncate text-xs font-semibold text-gray-800`,children:e.label})},e.value))]})]},e.key))]})]})}function Er({actions:e,accessories:t,selects:n,skillPicker:r}){let{Tooltip:i,TooltipContent:a,TooltipProvider:o,TooltipTrigger:s}=or;return(0,N.jsxs)(`div`,{className:`flex items-center justify-between gap-2 px-3 pb-3`,children:[(0,N.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1 overflow-hidden`,children:[r?(0,N.jsx)(yr,{picker:r}):null,n.map(e=>(0,N.jsx)(Tr,{item:e},e.key)),t?.map(e=>{let t=(0,N.jsxs)(`button`,{type:`button`,className:`inline-flex items-center rounded-lg py-1.5 text-xs font-medium text-gray-600 transition-colors hover:bg-gray-100 hover:text-gray-900 disabled:cursor-not-allowed disabled:text-gray-400 ${e.iconOnly?`h-8 w-8 justify-center px-0`:`gap-1.5 px-3`}`,onClick:e.onClick,disabled:e.disabled,"aria-label":e.label,children:[(0,N.jsx)(xr,{icon:e.icon}),e.iconOnly?null:(0,N.jsx)(`span`,{children:e.label})]});return e.tooltip?(0,N.jsx)(o,{children:(0,N.jsxs)(i,{children:[(0,N.jsx)(s,{asChild:!0,children:e.disabled?(0,N.jsx)(`span`,{className:`inline-flex`,children:t}):t}),(0,N.jsx)(a,{side:`top`,children:(0,N.jsx)(`p`,{className:`text-xs`,children:e.tooltip})})]})},e.key):(0,N.jsx)(`div`,{children:t},e.key)})]}),(0,N.jsx)(_r,{...e})]})}var Dr=(0,P.createContext)(null);function Or(e,t){let n=null;return e!=null&&(n=e[1]),{getTheme:function(){return t??(n==null?null:n.getTheme())}}}function kr(){let e=(0,P.useContext)(Dr);return e??function(e,...t){let n=new URL(`https://lexical.dev/docs/error`),r=new URLSearchParams;r.append(`code`,e);for(let e of t)r.append(`v`,e);throw n.search=r.toString(),Error(`Minified Lexical error #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}(8),e}function I(e,...t){let n=new URL(`https://lexical.dev/docs/error`),r=new URLSearchParams;r.append(`code`,e);for(let e of t)r.append(`v`,e);throw n.search=r.toString(),Error(`Minified Lexical error #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}function Ar(e,...t){let n=new URL(`https://lexical.dev/docs/error`),r=new URLSearchParams;r.append(`code`,e);for(let e of t)r.append(`v`,e);n.search=r.toString(),console.warn(`Minified Lexical warning #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}var jr=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0,Mr=jr&&`documentMode`in document?document.documentMode:null,Nr=jr&&/Mac|iPod|iPhone|iPad/.test(navigator.platform),Pr=jr&&/^(?!.*Seamonkey)(?=.*Firefox).*/i.test(navigator.userAgent),Fr=!(!jr||!(`InputEvent`in window)||Mr)&&`getTargetRanges`in new window.InputEvent(`input`),Ir=jr&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream,Lr=jr&&/Android/.test(navigator.userAgent),Rr=jr&&/Version\/[\d.]+.*Safari/.test(navigator.userAgent)&&!Lr,zr=jr&&/^(?=.*Chrome).*/i.test(navigator.userAgent),Br=jr&&Lr&&zr,Vr=jr&&/AppleWebKit\/[\d.]+/.test(navigator.userAgent)&&Nr&&!zr,Hr=0,Ur=1,Wr=2,Gr=1,Kr=2,qr=3,Jr=4,Yr=5,Xr=6,Zr=Rr||Ir||Vr?`\xA0`:``,Qr=`
|
|
2
2
|
|
|
3
3
|
`,$r=Pr?`\xA0`:Zr,ei={bold:1,capitalize:1024,code:16,highlight:128,italic:2,lowercase:256,strikethrough:4,subscript:32,superscript:64,underline:8,uppercase:512},ti={directionless:1,unmergeable:2},ni={center:2,end:6,justify:4,left:1,right:3,start:5},ri={[Kr]:`center`,[Xr]:`end`,[Jr]:`justify`,[Gr]:`left`,[qr]:`right`,[Yr]:`start`},ii={normal:0,segmented:2,token:1},ai={[Hr]:`normal`,[Wr]:`segmented`,[Ur]:`token`},oi=`$config`;function si(e,t,n,r,i,a){let o=e.getFirstChild();for(;o!==null;){let e=o.__key;o.__parent===t&&(V(o)&&si(o,e,n,r,i,a),n.has(e)||a.delete(e),i.push(e)),o=o.getNextSibling()}}var ci=!1,li=0;function ui(e){li=e.timeStamp}function di(e,t,n){let r=e.nodeName===`BR`,i=t.__lexicalLineBreak;return i&&(e===i||r&&e.previousSibling===i)||r&&ll(e,n)!==void 0}function fi(e,t,n){let r=Zl(Ul(n)),i=null,a=null;r!==null&&r.anchorNode===e&&(i=r.anchorOffset,a=r.focusOffset);let o=e.nodeValue;o!==null&&Sl(t,o,i,a,!1)}function pi(e,t,n){if(z(e)){let t=e.anchor.getNode();if(t.is(n)&&e.format!==t.getFormat())return!1}return Qc(t)&&n.isAttached()}function mi(e,t,n,r){for(let i=e;i&&!fu(i);i=Ll(i)){let e=ll(i,t);if(e!==void 0){let t=sl(e,n);if(t)return yc(t)||!$l(i)?void 0:[i,t]}else if(i===r)return[r,ml(n)]}}function hi(e,t,n){ci=!0;let r=performance.now()-li>100;try{pc(e,()=>{let i=B()||function(e){return e.getEditorState().read(()=>{let e=B();return e===null?null:e.clone()})}(e),a=new Map,o=e.getRootElement(),s=e._editorState,c=e._blockCursorElement,l=!1,u=``;for(let n=0;n<t.length;n++){let d=t[n],f=d.type,p=d.target,m=mi(p,e,s,o);if(!m)continue;let[h,g]=m;if(f===`characterData`)r&&R(g)&&Qc(p)&&pi(i,p,g)&&fi(p,g,e);else if(f===`childList`){l=!0;let t=d.addedNodes;for(let n=0;n<t.length;n++){let r=t[n],i=cl(r),a=r.parentNode;if(a!=null&&r!==c&&i===null&&!di(r,a,e)){if(Pr){let e=($l(r)?r.innerText:null)||r.nodeValue;e&&(u+=e)}a.removeChild(r)}}let n=d.removedNodes,r=n.length;if(r>0){let t=0;for(let i=0;i<r;i++){let r=n[i];(di(r,p,e)||c===r)&&(p.appendChild(r),t++)}r!==t&&a.set(h,g)}}}if(a.size>0)for(let[t,n]of a)n.reconcileObservedMutation(t,e);let d=n.takeRecords();if(d.length>0){for(let t=0;t<d.length;t++){let n=d[t],r=n.addedNodes,i=n.target;for(let t=0;t<r.length;t++){let n=r[t],a=n.parentNode;a==null||n.nodeName!==`BR`||di(n,i,e)||a.removeChild(n)}}n.takeRecords()}i!==null&&(l&&hl(i),Pr&&Fl(e)&&i.insertRawText(u))})}finally{ci=!1}}function gi(e){let t=e._observer;t!==null&&hi(e,t.takeRecords(),t)}function _i(e){(function(e){li===0&&Ul(e).addEventListener(`textInput`,ui,!0)})(e),e._observer=new MutationObserver((t,n)=>{hi(e,t,n)})}var vi=class{key;parse;unparse;isEqual;defaultValue;resetOnCopyNode;constructor(e,t){this.key=e,this.parse=t.parse.bind(t),this.unparse=(t.unparse||Ti).bind(t),this.isEqual=(t.isEqual||Object.is).bind(t),this.defaultValue=this.parse(void 0),this.resetOnCopyNode=t.resetOnCopyNode||!1}};function yi(e,t){return new vi(e,t)}function bi(e){let t=new Map,n=new Set;for(let r=typeof e==`function`?e:e.replace;r.prototype&&r.prototype.getType!==void 0;r=Object.getPrototypeOf(r)){let{ownNodeConfig:e}=mu(r);if(e&&e.stateConfigs)for(let r of e.stateConfigs){let e;`stateConfig`in r?(e=r.stateConfig,r.flat&&n.add(e.key)):e=r,t.set(e.key,e)}}return{flatKeys:n,sharedConfigMap:t}}var xi=class e{node;knownState;unknownState;sharedNodeState;size;constructor(e,t,n=void 0,r=new Map,i=void 0){this.node=e,this.sharedNodeState=t,this.unknownState=n,this.knownState=r;let{sharedConfigMap:a}=this.sharedNodeState;this.size=i===void 0?function(e,t,n){let r=n.size;if(t)for(let i in t){let t=e.get(i);t&&n.has(t)||r++}return r}(a,n,r):i}getValue(e){let t=this.knownState.get(e);if(t!==void 0)return t;this.sharedNodeState.sharedConfigMap.set(e.key,e);let n=e.defaultValue;if(this.unknownState&&e.key in this.unknownState){let t=this.unknownState[e.key];t!==void 0&&(n=e.parse(t)),this.updateFromKnown(e,n)}return n}getInternalState(){return[this.unknownState,this.knownState]}toJSON(){let e={...this.unknownState},t={};for(let[t,n]of this.knownState)t.isEqual(n,t.defaultValue)?delete e[t.key]:e[t.key]=t.unparse(n);for(let n of this.sharedNodeState.flatKeys)n in e&&(t[n]=e[n],delete e[n]);return wi(e)&&(t.$=e),t}getWritable(t){if(this.node===t)return this;let{sharedNodeState:n,unknownState:r}=this,i=new Map(this.knownState);return new e(t,n,function(e,t,n){let r;if(n)for(let[i,a]of Object.entries(n)){let n=e.get(i);n?t.has(n)||t.set(n,n.parse(a)):(r||={},r[i]=a)}return r}(n.sharedConfigMap,i,r),i,this.size)}resetOnCopyNode(){for(let e of this.knownState.keys())e.resetOnCopyNode&&this.knownState.set(e,e.defaultValue);return this}updateFromKnown(e,t){let n=e.key;this.sharedNodeState.sharedConfigMap.set(n,e);let{knownState:r,unknownState:i}=this;r.has(e)||i&&n in i||(i&&(delete i[n],this.unknownState=wi(i)),this.size++),r.set(e,t)}updateFromUnknown(e,t){let n=this.sharedNodeState.sharedConfigMap.get(e);n?this.updateFromKnown(n,n.parse(t)):(this.unknownState=this.unknownState||{},e in this.unknownState||this.size++,this.unknownState[e]=t)}updateFromJSON(e){let{knownState:t}=this;for(let e of t.keys())t.set(e,e.defaultValue);if(this.size=t.size,this.unknownState=void 0,e)for(let[t,n]of Object.entries(e))this.updateFromUnknown(t,n)}};function Si(e){let t=e.getWritable(),n=t.__state?t.__state.getWritable(t):new xi(t,Ci(t));return t.__state=n,n}function Ci(e){return e.__state?e.__state.sharedNodeState:Vc(au(),e.getType()).sharedNodeState}function wi(e){if(e)for(let t in e)return e}function Ti(e){return e}function Ei(e,t,n){for(let[r,i]of t.knownState){if(e.has(r.key))continue;e.add(r.key);let t=n?n.getValue(r):r.defaultValue;if(t!==i&&!r.isEqual(t,i))return!0}return!1}function Di(e,t,n){let{unknownState:r}=t,i=n?n.unknownState:void 0;if(r){for(let[t,n]of Object.entries(r))if(!e.has(t)&&(e.add(t),n!==(i?i[t]:void 0)))return!0}return!1}function Oi(e,t){let n=e.__state;return n&&n.node===e?n.getWritable(t):n}function ki(e,t){let n=e.__mode,r=e.__format,i=e.__style,a=t.__mode,o=t.__format,s=t.__style,c=e.__state,l=t.__state;return(n===null||n===a)&&(r===null||r===o)&&(i===null||i===s)&&(e.__state===null||c===l||function(e,t){if(e===t)return!0;let n=new Set;return!(e&&Ei(n,e,t)||t&&Ei(n,t,e)||e&&Di(n,e,t)||t&&Di(n,t,e))}(c,l))}function Ai(e,t){let n=e.mergeWithSibling(t),r=ec()._normalizedNodes;return r.add(e.__key),r.add(t.__key),n}function ji(e){let t,n,r=e;if(r.__text!==``||!r.isSimpleText()||r.isUnmergeable()){for(;(t=r.getPreviousSibling())!==null&&R(t)&&t.isSimpleText()&&!t.isUnmergeable();){if(t.__text!==``){if(ki(t,r)){r=Ai(t,r);break}break}t.remove()}for(;(n=r.getNextSibling())!==null&&R(n)&&n.isSimpleText()&&!n.isUnmergeable();){if(n.__text!==``){if(ki(r,n)){r=Ai(r,n);break}break}n.remove()}}else r.remove()}function Mi(e){return Ni(e.anchor),Ni(e.focus),e}function Ni(e){for(;e.type===`element`;){let t=e.getNode(),n=e.offset,r,i;if(n===t.getChildrenSize()?(r=t.getChildAtIndex(n-1),i=!0):(r=t.getChildAtIndex(n),i=!1),R(r)){e.set(r.__key,i?r.getTextContentSize():0,`text`,!0);break}if(!V(r))break;e.set(r.__key,i?r.getChildrenSize():0,`element`,!0)}}var Pi,Fi,Ii,Li,Ri,zi,Bi,Vi,Hi,Ui,Wi=``,Gi=null,Ki=null,qi=!1,Ji=!1;function Yi(e,t){let n=Bi.get(e);if(t!==null){let n=pa(e);n.parentNode===t&&t.removeChild(n)}if(Vi.has(e)||Fi._keyToDOMMap.delete(e),V(n)){let e=sa(n,Bi);Xi(e,0,e.length-1,null)}n!==void 0&&Ml(Ui,Ii,Li,n,`destroyed`)}function Xi(e,t,n,r){for(let i=t;i<=n;++i){let t=e[i];t!==void 0&&Yi(t,r)}}function Zi(e,t){e.setProperty(`text-align`,t)}var Qi=`40px`;function $i(e,t){let n=Pi.theme.indent;if(typeof n==`string`){let r=e.classList.contains(n);t>0&&!r?e.classList.add(n):t<1&&r&&e.classList.remove(n)}if(t===0)return void e.style.setProperty(`padding-inline-start`,``);let r=getComputedStyle(Fi._rootElement||e).getPropertyValue(`--lexical-indent-base-value`)||Qi;e.style.setProperty(`padding-inline-start`,`calc(${t} * ${r})`)}function ea(e,t){let n=e.style;t===0?Zi(n,``):t===1?Zi(n,`left`):t===2?Zi(n,`center`):t===3?Zi(n,`right`):t===4?Zi(n,`justify`):t===5?Zi(n,`start`):t===6&&Zi(n,`end`)}function ta(e,t){let n=function(e){let t=e.__dir;if(t!==null)return t;if(xc(e))return null;let n=e.getParentOrThrow();return xc(n)&&n.__dir===null?`auto`:null}(t);n===null?e.removeAttribute(`dir`):e.dir=n}function na(e,t){let n=Vi.get(e);n===void 0&&I(60);let r=n.createDOM(Pi,Fi);if(function(e,t,n){let r=n._keyToDOMMap;(function(e,t,n){let r=`__lexicalKey_${t._key}`;e[r]=n})(t,n,e),r.set(e,t)}(e,r,Fi),R(n)?r.setAttribute(`data-lexical-text`,`true`):yc(n)&&r.setAttribute(`data-lexical-decorator`,`true`),V(n)){let e=n.__indent,t=n.__size;if(ta(r,n),e!==0&&$i(r,e),t!==0){let e=t-1;ra(sa(n,Vi),n,0,e,n.getDOMSlot(r))}let i=n.__format;i!==0&&ea(r,i),n.isInline()||aa(null,n,r)}else{let t=n.getTextContent();if(yc(n)){let t=n.decorate(Fi,Pi);t!==null&&la(e,t),r.contentEditable=`false`}Wi+=t}return t!==null&&t.insertChild(r),Ml(Ui,Ii,Li,n,`created`),r}function ra(e,t,n,r,i){let a=Wi;Wi=``;let o=n;for(;o<=r;++o){na(e[o],i);let t=Vi.get(e[o]);t!==null&&R(t)?Gi===null&&(Gi=t.getFormat(),Ki=t.getStyle()):V(t)&&o<r&&!t.isInline()&&(Wi+=Qr)}i.element.__lexicalTextContent=Wi,Wi=a+Wi}function ia(e,t){if(e){let n=e.__last;if(n){let e=t.get(n);if(e)return Go(e)?`line-break`:yc(e)&&e.isInline()?`decorator`:null}return`empty`}return null}function aa(e,t,n){let r=ia(e,Bi),i=ia(t,Vi);r!==i&&t.getDOMSlot(n).setManagedLineBreak(i)}function oa(e,t,n){var r;Gi=null,Ki=null,function(e,t,n){let r=Wi,i=e.__size,a=t.__size;Wi=``;let o=n.element;if(i===1&&a===1){let n=e.__first,r=t.__first;if(n===r)ca(n,o);else{let e=pa(n),t=na(r,null);try{o.replaceChild(t,e)}catch(i){if(typeof i==`object`&&i){let a=`${i.toString()} Parent: ${o.tagName}, new child: {tag: ${t.tagName} key: ${r}}, old child: {tag: ${e.tagName}, key: ${n}}.`;throw Error(a)}throw i}Yi(n,null)}let i=Vi.get(r);R(i)&&Gi===null&&(Gi=i.getFormat(),Ki=i.getStyle())}else{let r=sa(e,Bi),s=sa(t,Vi);if(r.length!==i&&I(227),s.length!==a&&I(228),i===0)a!==0&&ra(s,0,0,a-1,n);else if(a===0){if(i!==0){let e=n.after==null&&n.before==null&&n.element.__lexicalLineBreak==null;Xi(r,0,i-1,e?null:o),e&&(o.textContent=``)}}else (function(e,t,n,r,i,a){let o=r-1,s=i-1,c,l,u=a.getFirstChild(),d=0,f=0;for(;d<=o&&f<=s;){let e=t[d],r=n[f];if(e===r)u=ua(ca(r,a.element)),d++,f++;else{if(l===void 0&&(l=da(n,f)),c===void 0)c=da(t,d);else if(!c.has(e)){d++;continue}if(!l.has(e)){u=ua(pa(e)),Yi(e,a.element),d++,c.delete(e);continue}if(c.has(r)){let e=Il(Fi,r);e!==u&&a.withBefore(u).insertChild(e),u=ua(ca(r,a.element)),d++,f++}else na(r,a.withBefore(u)),f++}let i=Vi.get(r);i!==null&&R(i)?Gi===null&&(Gi=i.getFormat(),Ki=i.getStyle()):V(i)&&f<=s&&!i.isInline()&&(Wi+=Qr)}let p=d>o,m=f>s;if(p&&!m){let e=n[s+1],t=e===void 0?null:Fi.getElementByKey(e);ra(n,0,f,s,a.withBefore(t))}else m&&!p&&Xi(t,d,o,a.element)})(0,r,s,i,a,n)}o.__lexicalTextContent=Wi,Wi=r+Wi}(e,t,t.getDOMSlot(n)),r=t,Gi==null||Gi===r.__textFormat||Ji||r.setTextFormat(Gi),function(e){Ki==null||Ki===e.__textStyle||Ji||e.setTextStyle(Ki)}(t)}function sa(e,t){let n=[],r=e.__first;for(;r!==null;){let e=t.get(r);e===void 0&&I(101),n.push(r),r=e.__next}return n}function ca(e,t){let n=Bi.get(e),r=Vi.get(e);n!==void 0&&r!==void 0||I(61);let i=qi||zi.has(e)||Ri.has(e),a=Il(Fi,e);if(n===r&&!i){let e;if(V(n)){let t=a.__lexicalTextContent;typeof t==`string`?e=t:(e=n.getTextContent(),a.__lexicalTextContent=e)}else e=n.getTextContent();return Wi+=e,a}if(n!==r&&i&&Ml(Ui,Ii,Li,r,`updated`),r.updateDOM(n,a,Pi)){let n=na(e,null);return t===null&&I(62),t.replaceChild(n,a),Yi(e,null),n}if(V(n)){V(r)||I(334,e);let t=r.__indent;(qi||t!==n.__indent)&&$i(a,t);let o=r.__format;if((qi||o!==n.__format)&&ea(a,o),i)oa(n,r,a),xc(r)||r.isInline()||aa(n,r,a);else{let e=a.__lexicalTextContent,t;typeof e==`string`?t=e:(t=n.getTextContent(),a.__lexicalTextContent=t),Wi+=t}if((qi||r.__dir!==n.__dir)&&(ta(a,r),xc(r)&&!qi))for(let e of r.getChildren())V(e)&&ta(Il(Fi,e.getKey()),e)}else{let t=r.getTextContent();if(yc(r)){let t=r.decorate(Fi,Pi);t!==null&&la(e,t)}Wi+=t}if(!Ji&&xc(r)&&r.__cachedText!==Wi){let e=r.getWritable();e.__cachedText=Wi,r=e}return a}function la(e,t){let n=Fi._pendingDecorators,r=Fi._decorators;if(n===null){if(r[e]===t)return;n=dl(Fi)}n[e]=t}function ua(e){let t=e.nextSibling;return t!==null&&t===Fi._blockCursorElement&&(t=t.nextSibling),t}function da(e,t){let n=new Set;for(let r=t;r<e.length;r++)n.add(e[r]);return n}function fa(e,t,n,r,i,a){Wi=``,qi=r===2,Fi=n,Pi=n._config,Ii=n._nodes,Li=Fi._listeners.mutation,Ri=i,zi=a,Bi=e._nodeMap,Vi=t._nodeMap,Ji=t._readOnly,Hi=new Map(n._keyToDOMMap);let o=new Map;return Ui=o,ca(`root`,null),Fi=void 0,Ii=void 0,Ri=void 0,zi=void 0,Bi=void 0,Vi=void 0,Pi=void 0,Hi=void 0,Ui=void 0,o}function pa(e){let t=Hi.get(e);return t===void 0&&I(75,e),t}function L(e){return{type:e}}var ma=L(`SELECTION_CHANGE_COMMAND`),ha=L(`CLICK_COMMAND`),ga=L(`BEFORE_INPUT_COMMAND`),_a=L(`INPUT_COMMAND`),va=L(`COMPOSITION_START_COMMAND`),ya=L(`COMPOSITION_END_COMMAND`),ba=L(`DELETE_CHARACTER_COMMAND`),xa=L(`INSERT_LINE_BREAK_COMMAND`),Sa=L(`INSERT_PARAGRAPH_COMMAND`),Ca=L(`CONTROLLED_TEXT_INSERTION_COMMAND`),wa=L(`PASTE_COMMAND`),Ta=L(`REMOVE_TEXT_COMMAND`),Ea=L(`DELETE_WORD_COMMAND`),Da=L(`DELETE_LINE_COMMAND`),Oa=L(`FORMAT_TEXT_COMMAND`),ka=L(`UNDO_COMMAND`),Aa=L(`REDO_COMMAND`),ja=L(`KEYDOWN_COMMAND`),Ma=L(`KEY_ARROW_RIGHT_COMMAND`),Na=L(`MOVE_TO_END`),Pa=L(`KEY_ARROW_LEFT_COMMAND`),Fa=L(`MOVE_TO_START`),Ia=L(`KEY_ARROW_UP_COMMAND`),La=L(`KEY_ARROW_DOWN_COMMAND`),Ra=L(`KEY_ENTER_COMMAND`),za=L(`KEY_SPACE_COMMAND`),Ba=L(`KEY_BACKSPACE_COMMAND`),Va=L(`KEY_ESCAPE_COMMAND`),Ha=L(`KEY_DELETE_COMMAND`),Ua=L(`KEY_TAB_COMMAND`),Wa=L(`DROP_COMMAND`),Ga=L(`DRAGSTART_COMMAND`),Ka=L(`DRAGOVER_COMMAND`),qa=L(`DRAGEND_COMMAND`),Ja=L(`COPY_COMMAND`),Ya=L(`CUT_COMMAND`),Xa=L(`SELECT_ALL_COMMAND`),Za=L(`FOCUS_COMMAND`),Qa=L(`BLUR_COMMAND`),$a=L(`KEY_MODIFIER_COMMAND`),eo=Object.freeze({}),to=[[`keydown`,function(e,t){no=e.timeStamp,ro=e.key,!t.isComposing()&&U(t,ja,e)}],[`pointerdown`,function(e,t){let n=e.target,r=e.pointerType;eu(n)&&r!==`touch`&&r!==`pen`&&e.button===0&&pc(t,()=>{Wc(n)||(lo=!0)})}],[`compositionstart`,function(e,t){U(t,va,e)}],[`compositionend`,function(e,t){Pr?fo=!0:Ir||!Rr&&!Vr?U(t,ya,e):(po=!0,mo=e.data)}],[`input`,function(e,t){e.stopPropagation(),pc(t,()=>{t.dispatchCommand(_a,e)},{event:e}),ao=null}],[`click`,function(e,t){pc(t,()=>{let n=B(),r=Zl(Ul(t)),i=Ns();if(r){if(z(n)){let t=n.anchor,a=t.getNode();if(t.type===`element`&&t.offset===0&&n.isCollapsed()&&!xc(a)&&pl().getChildrenSize()===1&&a.getTopLevelElementOrThrow().isEmpty()&&i!==null&&n.is(i))r.removeAllRanges(),n.dirty=!0;else if(e.detail===3&&!n.isCollapsed()&&a!==n.focus.getNode()){let e=gu(a,e=>V(e)&&!e.isInline());V(e)&&e.select(0)}}else if(e.pointerType===`touch`||e.pointerType===`pen`){let n=r.anchorNode;($l(n)||Qc(n))&&hl(Ms(i,r,t,e))}}U(t,ha,e)})}],[`cut`,eo],[`copy`,eo],[`dragstart`,eo],[`dragover`,eo],[`dragend`,eo],[`paste`,eo],[`focus`,eo],[`blur`,eo],[`drop`,eo]];Fr&&to.push([`beforeinput`,(e,t)=>function(e,t){let n=e.inputType;n===`deleteCompositionText`||Pr&&Fl(t)||n!==`insertCompositionText`&&U(t,ga,e)}(e,t)]);var no=0,ro=null,io=0,ao=null,oo=new WeakMap,so=new WeakMap,co=!1,lo=!1,uo=!1,fo=!1,po=!1,mo=``,ho=null,go=[0,``,0,`root`,0];function _o(e,t,n,r,i){let a=e.anchor,o=e.focus,s=a.getNode(),c=ec(),l=Zl(Ul(c)),u=l===null?null:l.anchorNode,d=a.key,f=c.getElementByKey(d),p=n.length;return d!==o.key||!R(s)||(!i&&(!Fr||io<r+50)||s.isDirty()&&p<2||_l(n))&&a.offset!==o.offset&&!s.isComposing()||Zc(s)||s.isDirty()&&p>1||(i||!Fr)&&f!==null&&!s.isComposing()&&u!==el(f)||l!==null&&t!==null&&(!t.collapsed||t.startContainer!==l.anchorNode||t.startOffset!==l.anchorOffset)||!s.isComposing()&&(s.getFormat()!==e.format||s.getStyle()!==e.style)||function(e,t){if(t.isSegmented())return!0;if(!e.isCollapsed())return!1;let n=e.anchor.offset,r=t.getParentOrThrow(),i=Xc(t);return n===0?!t.canInsertTextBefore()||!r.canInsertTextBefore()&&!t.isComposing()||i||function(e){let t=e.getPreviousSibling();return(R(t)||V(t)&&t.isInline())&&!t.canInsertTextAfter()}(t):n===t.getTextContentSize()&&(!t.canInsertTextAfter()||!r.canInsertTextAfter()&&!t.isComposing()||i)}(e,s)}function vo(e,t){return Qc(e)&&e.nodeValue!==null&&t!==0&&t!==e.nodeValue.length}function yo(e,t,n){let{anchorNode:r,anchorOffset:i,focusNode:a,focusOffset:o}=e;co&&(co=!1,vo(r,i)&&vo(a,o)&&!ho)||pc(t,()=>{if(!n)return void hl(null);if(!Kc(t,r,a))return;let s=B();if(ho&&z(s)&&s.isCollapsed()){let e=s.anchor,t=ho.anchor;(e.key===t.key&&e.offset===t.offset+1||e.offset===1&&t.getNode().is(e.getNode().getPreviousSibling()))&&(s=ho.clone(),hl(s))}if(ho=null,z(s)){let n=s.anchor,r=n.getNode();if(s.isCollapsed()){e.type===`Range`&&e.anchorNode===e.focusNode&&(s.dirty=!0);let i=Ul(t).event,a=i?i.timeStamp:performance.now(),[o,c,l,u,d]=go,f=pl(),p=!1===t.isComposing()&&f.getTextContent()===``;if(a<d+200&&n.offset===l&&n.key===u)bo(s,o,c);else if(n.type===`text`)R(r)||I(141),xo(s,r);else if(n.type===`element`&&!p){V(r)||I(259);let e=n.getNode();e.isEmpty()?function(e,t){bo(e,t.getTextFormat(),t.getTextStyle())}(s,e):bo(s,s.format,``)}}else{let e=n.key,t=s.focus.key,r=s.getNodes(),a=r.length,c=s.isBackward(),l=c?o:i,u=c?i:o,d=c?t:e,f=c?e:t,p=2047,m=!1;for(let e=0;e<a;e++){let t=r[e],n=t.getTextContentSize();if(R(t)&&n!==0&&!(e===0&&t.__key===d&&l===n||e===a-1&&t.__key===f&&u===0)&&(m=!0,p&=t.getFormat(),p===0))break}s.format=m?p:0}}U(t,ma,void 0)})}function bo(e,t,n){e.format===t&&e.style===n||(e.format=t,e.style=n,e.dirty=!0)}function xo(e,t){bo(e,t.getFormat(),t.getStyle())}function So(e){if(!e.getTargetRanges)return null;let t=e.getTargetRanges();return t.length===0?null:t[0]}function Co(e){let t=e.inputType,n=So(e),r=ec(),i=B();if(t===`deleteContentBackward`){if(i===null){let e=Ns();if(!z(e))return!0;hl(e.clone())}if(z(i)){let t=i.anchor.key===i.focus.key;if(a=e.timeStamp,ro===`MediaLast`&&a<no+30&&r.isComposing()&&t){if(al(null),no=0,setTimeout(()=>{pc(r,()=>{al(null)})},30),z(i)){let e=i.anchor.getNode();e.markDirty(),R(e)||I(142),xo(i,e)}}else{al(null),e.preventDefault();let n=i.anchor.getNode(),a=n.getTextContent(),o=n.canInsertTextAfter(),s=i.anchor.offset===0&&i.focus.offset===a.length,c=Br&&t&&!s&&o;if(c&&i.isCollapsed()&&(c=!yc(Pl(i.anchor,!0))),!c){U(r,ba,!0);let e=B();Br&&z(e)&&e.isCollapsed()&&(ho=e,setTimeout(()=>ho=null))}}return!0}}var a;if(!z(i))return!0;let o=e.data;ao!==null&&xl(!1,r,ao),i.dirty&&ao===null||!i.isCollapsed()||xc(i.anchor.getNode())||n===null||i.applyDOMRange(n),ao=null;let s=i.anchor,c=i.focus,l=s.getNode(),u=c.getNode();if(t===`insertText`||t===`insertTranspose`){if(o===`
|
|
4
4
|
`)e.preventDefault(),U(r,xa,!1);else if(o===Qr)e.preventDefault(),U(r,Sa,void 0);else if(o==null&&e.dataTransfer){let t=e.dataTransfer.getData(`text/plain`);e.preventDefault(),i.insertRawText(t)}else o!=null&&_o(i,n,o,e.timeStamp,!0)?(e.preventDefault(),U(r,Ca,o)):ao=o;return io=e.timeStamp,!0}switch(e.preventDefault(),t){case`insertFromYank`:case`insertFromDrop`:case`insertReplacementText`:U(r,Ca,e);break;case`insertFromComposition`:al(null),U(r,Ca,e);break;case`insertLineBreak`:al(null),U(r,xa,!1);break;case`insertParagraph`:al(null),uo&&!Ir?(uo=!1,U(r,xa,!1)):U(r,Sa,void 0);break;case`insertFromPaste`:case`insertFromPasteAsQuotation`:U(r,wa,e);break;case`deleteByComposition`:(function(e,t){return e!==t||V(e)||V(t)||!Xc(e)||!Xc(t)})(l,u)&&U(r,Ta,e);break;case`deleteByDrag`:case`deleteByCut`:U(r,Ta,e);break;case`deleteContent`:U(r,ba,!1);break;case`deleteWordBackward`:U(r,Ea,!0);break;case`deleteWordForward`:U(r,Ea,!1);break;case`deleteHardLineBackward`:case`deleteSoftLineBackward`:U(r,Da,!0);break;case`deleteContentForward`:case`deleteHardLineForward`:case`deleteSoftLineForward`:U(r,Da,!1);break;case`formatStrikeThrough`:U(r,Oa,`strikethrough`);break;case`formatBold`:U(r,Oa,`bold`);break;case`formatItalic`:U(r,Oa,`italic`);break;case`formatUnderline`:U(r,Oa,`underline`);break;case`historyUndo`:U(r,ka,void 0);break;case`historyRedo`:U(r,Aa,void 0)}return!0}function wo(e){if($l(e.target)&&Wc(e.target))return!0;let t=ec(),n=B(),r=e.data,i=So(e);if(r!=null&&z(n)&&_o(n,i,r,e.timeStamp,!1)){fo&&=(Do(t,r),!1);let i=n.anchor.getNode(),a=Zl(Ul(t));if(a===null)return!0;let o=n.isBackward(),s=o?n.anchor.offset:n.focus.offset,c=o?n.focus.offset:n.anchor.offset;Fr&&!n.isCollapsed()&&R(i)&&a.anchorNode!==null&&i.getTextContent().slice(0,s)+r+i.getTextContent().slice(s+c)===bl(a.anchorNode)||U(t,Ca,r);let l=r.length;Pr&&l>1&&e.inputType===`insertCompositionText`&&!t.isComposing()&&(n.anchor.offset-=l),Br&&t.isComposing()&&(no=0,al(null))}else xl(!1,t,r===null?void 0:r),fo&&=(Do(t,r||void 0),!1);return function(){Zs(),gi(ec())}(),!0}function To(e){let t=ec(),n=B();if(z(n)&&!t.isComposing()){let r=n.anchor,i=n.anchor.getNode();al(r.key),zl(Bo),(e.timeStamp<no+30||r.type===`element`||!n.isCollapsed()||i.getFormat()!==n.format||R(i)&&i.getStyle()!==n.style)&&U(t,Ca,$r)}return!0}function Eo(e){return Do(ec(),e.data),zl(Vo),!0}function Do(e,t){let n=e._compositionKey;if(al(null),n!==null&&t!=null){if(t===``){let t=sl(n),r=el(e.getElementByKey(n));if(r!==null&&r.nodeValue!==null&&R(t)){let n=Zl(Ul(e)),i=null,a=null;n!==null&&n.anchorNode===r&&(i=n.anchorOffset,a=n.focusOffset),Sl(t,r.nodeValue,i,a,!0)}return}if(t[t.length-1]===`
|
|
@@ -9,10 +9,10 @@ import{_ as e,a as t,d as n,f as r,g as i,h as a,i as o,m as s,n as c,p as l,t a
|
|
|
9
9
|
`),l=!d.isEmpty();else if(l=!1,R(d)){let e=d.getTextContent();d===t?d===n?r.type===`element`&&i.type===`element`&&i.offset!==r.offset||(e=o<s?e.slice(o,s):e.slice(s,o)):e=a?e.slice(o):e.slice(s):d===n&&(e=a?e.slice(0,s):e.slice(0,o)),c+=e}else !yc(d)&&!Go(d)||d===n&&this.isCollapsed()||(c+=d.getTextContent())}return c}applyDOMRange(e){let t=ec(),n=t.getEditorState()._selection,r=Os(e.startContainer,e.startOffset,e.endContainer,e.endOffset,t,n);if(r===null)return;let[i,a]=r;this.anchor.set(i.key,i.offset,i.type,!0),this.focus.set(a.key,a.offset,a.type,!0),Mi(this)}clone(){let t=this.anchor,n=this.focus;return new e(ms(t.key,t.offset,t.type),ms(n.key,n.offset,n.type),this.format,this.style)}toggleFormat(e){this.format=tl(this.format,e,null),this.dirty=!0}setFormat(e){this.format=e,this.dirty=!0}setStyle(e){this.style=e,this.dirty=!0}hasFormat(e){let t=ei[e];return(this.format&t)!==0}insertRawText(e){let t=e.split(/(\r?\n|\t)/),n=[],r=t.length;for(let e=0;e<r;e++){let r=t[e];r===`
|
|
10
10
|
`||r===`\r
|
|
11
11
|
`?n.push(Wo()):r===` `?n.push(ds()):n.push(cs(r))}this.insertNodes(n)}insertText(e){let t=this.anchor,n=this.focus,r=this.format,i=this.style,a=t,o=n;!this.isCollapsed()&&n.isBefore(t)&&(a=n,o=t),a.type===`element`&&function(e,t,n,r){let i=e.getNode(),a=i.getChildAtIndex(e.offset),o=cs();if(o.setFormat(n),o.setStyle(r),jc(a))a.splice(0,0,[o]);else{let e=xc(i)?Ac().append(o):o;a===null?i.append(e):a.insertBefore(e)}e.is(t)&&t.set(o.__key,0,`text`),e.set(o.__key,0,`text`)}(a,o,r,i),o.type===`element`&&Xu(o,id(Yu(o,`next`)));let s=a.offset,c=o.offset,l=this.getNodes(),u=l.length,d=l[0];R(d)||I(26);let f=d.getTextContent().length,p=d.getParentOrThrow(),m=l[u-1];if(u===1&&o.type===`element`&&(c=f,o.set(a.key,c,`text`)),this.isCollapsed()&&s===f&&(Zc(d)||!d.canInsertTextAfter()||!p.canInsertTextAfter()&&d.getNextSibling()===null)){let t=d.getNextSibling();if(R(t)&&t.canInsertTextBefore()&&!Zc(t)||(t=cs(),t.setFormat(r),t.setStyle(i),p.canInsertTextAfter()?d.insertAfter(t):p.insertAfter(t)),t.select(0,0),d=t,e!==``)return void this.insertText(e)}else if(this.isCollapsed()&&s===0&&(Zc(d)||!d.canInsertTextBefore()||!p.canInsertTextBefore()&&d.getPreviousSibling()===null)){let t=d.getPreviousSibling();if(R(t)&&!Zc(t)||(t=cs(),t.setFormat(r),p.canInsertTextBefore()?d.insertBefore(t):p.insertBefore(t)),t.select(),d=t,e!==``)return void this.insertText(e)}else if(d.isSegmented()&&s!==f){let e=cs(d.getTextContent());e.setFormat(r),d.replace(e),d=e}else if(!this.isCollapsed()&&e!==``){let t=m.getParent();if(!p.canInsertTextBefore()||!p.canInsertTextAfter()||V(t)&&(!t.canInsertTextBefore()||!t.canInsertTextAfter()))return this.insertText(``),Ds(this.anchor,this.focus),void this.insertText(e)}if(u===1){if(Xc(d)){let t=cs(e);t.select(),d.replace(t);return}let t=d.getFormat(),n=d.getStyle();if(s!==c||t===r&&n===i){if(fs(d)){let t=cs(e);t.setFormat(r),t.setStyle(i),t.select(),d.replace(t);return}}else{if(d.getTextContent()!==``){let t=cs(e);if(t.setFormat(r),t.setStyle(i),t.select(),s===0)d.insertBefore(t,!1);else{let[e]=d.splitText(s);e.insertAfter(t,!1)}t.isComposing()&&this.anchor.type===`text`&&(this.anchor.offset-=e.length);return}d.setFormat(r),d.setStyle(i)}let a=c-s;d=d.spliceText(s,a,e,!0),d.getTextContent()===``?d.remove():this.anchor.type===`text`&&(this.format=t,this.style=n,d.isComposing()&&(this.anchor.offset-=e.length))}else{let t=new Set([...d.getParentKeys(),...m.getParentKeys()]),n=V(d)?d:d.getParentOrThrow(),r=V(m)?m:m.getParentOrThrow(),i=m;if(!n.is(r)&&r.isInline())do i=r,r=r.getParentOrThrow();while(r.isInline());if(o.type===`text`&&(c!==0||m.getTextContent()===``)||o.type===`element`&&m.getIndexWithinParent()<c)if(R(m)&&!Xc(m)&&c!==m.getTextContentSize()){if(m.isSegmented()){let e=cs(m.getTextContent());m.replace(e),m=e}xc(o.getNode())||o.type!==`text`||(m=m.spliceText(0,c,``)),t.add(m.__key)}else{let e=m.getParentOrThrow();e.canBeEmpty()||e.getChildrenSize()!==1?m.remove():e.remove()}else t.add(m.__key);let a=r.getChildren(),p=new Set(l),h=n.is(r),g=n.isInline()&&d.getNextSibling()===null?n:d;for(let e=a.length-1;e>=0;e--){let t=a[e];if(t.is(d)||V(t)&&t.isParentOf(d))break;t.isAttached()&&(!p.has(t)||t.is(i)?h||g.insertAfter(t,!1):t.remove())}if(!h){let e=r,n=null;for(;e!==null;){let r=e.getChildren(),i=r.length;(i===0||r[i-1].is(n))&&(t.delete(e.__key),n=e),e=e.getParent()}}if(Xc(d))if(s===f)d.select();else{let t=cs(e);t.select(),d.replace(t)}else d=d.spliceText(s,f-s,e,!0),d.getTextContent()===``?d.remove():this.anchor.type===`text`&&(this.format=d.getFormat(),this.style=d.getStyle(),d.isComposing()&&(this.anchor.offset-=e.length));for(let e=1;e<u;e++){let n=l[e],r=n.__key;t.has(r)||n.remove()}}}removeText(){let e=B()===this;Qu(this,rd($u(this))),e&&B()!==this&&hl(this)}formatText(e,t=null){if(this.isCollapsed())return this.toggleFormat(e),void al(null);let n=this.getNodes(),r=[];for(let e of n)R(e)&&r.push(e);let i=t=>{n.forEach(n=>{if(V(n)){let r=n.getFormatFlags(e,t);n.setTextFormat(r)}})},a=r.length;if(a===0)return this.toggleFormat(e),al(null),void i(t);let o=this.anchor,s=this.focus,c=this.isBackward(),l=c?s:o,u=c?o:s,d=0,f=r[0],p=l.type===`element`?0:l.offset;if(l.type===`text`&&p===f.getTextContentSize()&&(d=1,f=r[1],p=0),f==null)return;let m=f.getFormatFlags(e,t);i(m);let h=a-1,g=r[h],_=u.type===`text`?u.offset:g.getTextContentSize();if(f.is(g)){if(p===_)return;if(Zc(f)||p===0&&_===f.getTextContentSize())f.setFormat(m);else{let e=f.splitText(p,_),t=p===0?e[0]:e[1];t.setFormat(m),l.type===`text`&&l.set(t.__key,0,`text`),u.type===`text`&&u.set(t.__key,_-p,`text`)}this.format=m;return}p===0||Zc(f)||([,f]=f.splitText(p),p=0),f.setFormat(m);let v=g.getFormatFlags(e,m);_>0&&(_===g.getTextContentSize()||Zc(g)||([g]=g.splitText(_)),g.setFormat(v));for(let t=d+1;t<h;t++){let n=r[t],i=n.getFormatFlags(e,v);n.setFormat(i)}l.type===`text`&&l.set(f.__key,p,`text`),u.type===`text`&&u.set(g.__key,_,`text`),this.format=m|v}insertNodes(e){if(e.length===0)return;if(this.isCollapsed()||this.removeText(),this.anchor.key===`root`){this.insertParagraph();let t=B();return z(t)||I(134),t.insertNodes(e)}let t=(this.isBackward()?this.focus:this.anchor).getNode(),n=gu(t,iu),r=e[e.length-1];if(V(n)&&`__language`in n){if(`__language`in e[0])this.insertText(e[0].getTextContent());else{let t=Vs(this);n.splice(t,0,e),r.selectEnd()}return}if(!e.some(e=>(V(e)||yc(e))&&!e.isInline())){V(n)||I(211,t.constructor.name,t.getType());let i=Vs(this);n.splice(i,0,e),r.selectEnd();return}let i=function(e){let t=Ac(),n=null;for(let r=0;r<e.length;r++){let i=e[r],a=Go(i);if(a||yc(i)&&i.isInline()||V(i)&&i.isInline()||R(i)||i.isParentRequired()){if(n===null&&(n=i.createParentElementNode(),t.append(n),a))continue;n!==null&&n.append(i)}else t.append(i),n=null}return t}(e),a=i.getLastDescendant(),o=i.getChildren(),s=!V(n)||!n.isEmpty()?this.insertParagraph():null,c=o[o.length-1],l=o[0];var u;V(u=l)&&iu(u)&&!u.isEmpty()&&V(n)&&(!n.isEmpty()||n.canMergeWhenEmpty())&&(V(n)||I(211,t.constructor.name,t.getType()),n.append(...l.getChildren()),l=o[1]),l&&(n===null&&I(212,t.constructor.name,t.getType()),function(e,t){let n=t.getParentOrThrow().getLastChild(),r=t,i=[t];for(;r!==n;)r.getNextSibling()||I(140),r=r.getNextSibling(),i.push(r);let a=e;for(let e of i)a=a.insertAfter(e)}(n,l));let d=gu(a,iu);s&&V(d)&&(s.canMergeWhenEmpty()||iu(c))&&(d.append(...s.getChildren()),s.remove()),V(n)&&n.isEmpty()&&n.remove(),a.selectEnd();let f=V(n)?n.getLastChild():null;Go(f)&&d!==n&&f.remove()}insertParagraph(){if(this.anchor.key===`root`){let e=Ac();return pl().splice(this.anchor.offset,0,[e]),e.select(),e}let e=Vs(this),t=gu(this.anchor.getNode(),iu);V(t)||I(213);let n=t.getChildAtIndex(e),r=n?[n,...n.getNextSiblings()]:[],i=t.insertNewAfter(this,!1);return i?(i.append(...r),i.selectStart(),i):null}insertLineBreak(e){let t=Wo();if(this.insertNodes([t]),e){let e=t.getParentOrThrow(),n=t.getIndexWithinParent();e.select(n,n)}}extract(){let e=[...this.getNodes()],t=e.length,n=e[0],r=e[t-1],[i,a]=xs(this),o=this.isBackward(),[s,c]=o?[this.focus,this.anchor]:[this.anchor,this.focus],[l,u]=o?[a,i]:[i,a];if(t===0)return[];if(t===1){if(R(n)&&!this.isCollapsed()){let e=n.splitText(l,u),t=l===0?e[0]:e[1];return t?(s.set(t.getKey(),0,`text`),c.set(t.getKey(),t.getTextContentSize(),`text`),[t]):[]}return[n]}if(R(n)&&(l===n.getTextContentSize()?e.shift():l!==0&&([,n]=n.splitText(l),e[0]=n,s.set(n.getKey(),0,`text`))),R(r)){let t=r.getTextContent().length;u===0?e.pop():u!==t&&([r]=r.splitText(u),e[e.length-1]=r,c.set(r.getKey(),r.getTextContentSize(),`text`))}return e}modify(e,t,n){if(Us(this,e,t,n))return;let r=e===`move`,i=ec(),a=Zl(Ul(i));if(!a)return;let o=i._blockCursorElement,s=i._rootElement,c=this.focus.getNode();if(s===null||o===null||!V(c)||c.isInline()||c.canBeEmpty()||Xl(o,i,s),this.dirty){let e=Il(i,this.anchor.key),t=Il(i,this.focus.key);this.anchor.type===`text`&&(e=el(e)),this.focus.type===`text`&&(t=el(t)),e&&t&&Rs(a,e,this.anchor.offset,t,this.focus.offset)}if(function(e,t,n,r){e.modify(t,n,r)}(a,e,t?`backward`:`forward`,n),a.rangeCount>0){let e=a.getRangeAt(0),n=this.anchor.getNode(),i=xc(n)?n:Wl(n);if(this.applyDOMRange(e),this.dirty=!0,!r){let n=this.getNodes(),r=[],o=!1;for(let e=0;e<n.length;e++){let t=n[e];Vl(t,i)?r.push(t):o=!0}if(o&&r.length>0)if(t){let e=r[0];V(e)?e.selectStart():e.getParentOrThrow().selectStart()}else{let e=r[r.length-1];V(e)?e.selectEnd():e.getParentOrThrow().selectEnd()}a.anchorNode===e.startContainer&&a.anchorOffset===e.startOffset||function(e){let t=e.focus,n=e.anchor,r=n.key,i=n.offset,a=n.type;n.set(t.key,t.offset,t.type,!0),t.set(r,i,a,!0)}(this)}}n===`lineboundary`&&Us(this,e,t,n,`decorators`)}forwardDeletion(e,t,n){if(!n&&(e.type===`element`&&V(t)&&e.offset===t.getChildrenSize()||e.type===`text`&&e.offset===t.getTextContentSize())){let e=t.getParent(),n=t.getNextSibling()||(e===null?null:e.getNextSibling());if(V(n)&&n.isShadowRoot())return!0}return!1}deleteCharacter(e){let t=this.isCollapsed();if(this.isCollapsed()){let t=this.anchor,n=t.getNode();if(this.forwardDeletion(t,n,e))return;let r=Bu(Yu(t,e?`previous`:`next`));if(r.getTextSlices().every(e=>e===null||e.distance===0)){let e={type:`initial`};for(let t of r.iterNodeCarets(`shadowRoot`))if(Du(t)){if(!t.origin.isInline()){if(t.origin.isShadowRoot()){if(e.type===`merge-block`)break;if(V(r.anchor.origin)&&r.anchor.origin.isEmpty()){let e=id(t);Qu(this,Hu(e,e)),r.anchor.origin.remove()}return}e.type!==`merge-next-block`&&e.type!==`merge-block`||(e={block:e.block,caret:t,type:`merge-block`})}}else{if(e.type===`merge-block`)break;if(Eu(t)){if(V(t.origin)){if(t.origin.isInline()){if(!t.origin.isParentOf(r.anchor.origin))break}else e={block:t.origin,type:`merge-next-block`};continue}if(yc(t.origin)){if(!t.origin.isIsolated())if(e.type===`merge-next-block`&&(t.origin.isKeyboardSelectable()||!t.origin.isInline())&&V(r.anchor.origin)&&r.anchor.origin.isEmpty()){r.anchor.origin.remove();let e=js();e.add(t.origin.getKey()),hl(e)}else t.origin.remove();return}break}}if(e.type===`merge-block`){let{caret:t,block:n}=e;return Qu(this,Hu(!t.origin.isEmpty()&&n.isEmpty()?ed(ju(n,t.direction)):r.anchor,t)),this.removeText()}}let i=this.focus;if(this.modify(`extend`,e,`character`),this.isCollapsed()){if(e&&t.offset===0&&Ss(this,t.getNode()))return}else{let r=i.type===`text`?i.getNode():null;if(n=t.type===`text`?t.getNode():null,r!==null&&r.isSegmented()){let t=i.offset,a=r.getTextContentSize();if(r.is(n)||e&&t!==a||!e&&t!==0)return void ws(r,e,t)}else if(n!==null&&n.isSegmented()){let i=t.offset,a=n.getTextContentSize();if(n.is(r)||e&&i!==0||!e&&i!==a)return void ws(n,e,i)}(function(e,t){let n=e.anchor,r=e.focus,i=n.getNode();if(i===r.getNode()&&n.type===`text`&&r.type===`text`){let e=n.offset,a=r.offset,o=e<a,s=o?e:a,c=o?a:e,l=c-1;s!==l&&(function(e){return!(_l(e)||Cs(e))})(i.getTextContent().slice(s,c))&&(t?r.set(r.key,l,r.type):n.set(n.key,l,n.type))}})(this,e)}}if(this.removeText(),e&&!t&&this.isCollapsed()&&this.anchor.type===`element`&&this.anchor.offset===0){let e=this.anchor.getNode();e.isEmpty()&&xc(e.getParent())&&e.getPreviousSibling()===null&&Ss(this,e)}}deleteLine(e){this.isCollapsed()&&this.modify(`extend`,e,`lineboundary`),this.isCollapsed()?this.deleteCharacter(e):this.removeText()}deleteWord(e){if(this.isCollapsed()){let t=this.anchor,n=t.getNode();if(this.forwardDeletion(t,n,e))return;this.modify(`extend`,e,`word`)}this.isCollapsed()?this.deleteCharacter(e):this.removeText()}isBackward(){return this.focus.isBefore(this.anchor)}getStartEndPoints(){return[this.anchor,this.focus]}};function ys(e){return e instanceof _s}function bs(e){let t=e.offset;if(e.type===`text`)return t;let n=e.getNode();return t===n.getChildrenSize()?n.getTextContent().length:0}function xs(e){let t=e.getStartEndPoints();if(t===null)return[0,0];let[n,r]=t;return n.type===`element`&&r.type===`element`&&n.key===r.key&&n.offset===r.offset?[0,0]:[bs(n),bs(r)]}function Ss(e,t){for(let n=t;n;n=n.getParent()){if(V(n)){if(n.collapseAtStart(e))return!0;if(Gl(n))break}if(n.getPreviousSibling())break}return!1}var Cs=(()=>{try{let e=RegExp(`\\p{Emoji}`,`u`),t=e.test.bind(e);if(t(`❤️`)&&t(`#️⃣`)&&t(`👍`))return t}catch{}return()=>!1})();function ws(e,t,n){let r=e,i=r.getTextContent().split(/(?=\s)/g),a=i.length,o=0,s=0;for(let e=0;e<a;e++){let r=e===a-1;if(s=o,o+=i[e].length,t&&o===n||o>n||r){i.splice(e,1),r&&(s=void 0);break}}let c=i.join(``).trim();c===``?r.remove():(r.setTextContent(c),r.select(s,s))}function Ts(e,t,n,r){let i,a=t;if($l(e)){let o=!1,s=e.childNodes,c=s.length,l=r._blockCursorElement;a===c&&(o=!0,a=c-1);let u=s[a],d=!1;if(u===l)u=s[a+1],d=!0;else if(l!==null){let n=l.parentNode;e===n&&t>Array.prototype.indexOf.call(n.children,l)&&a--}if(i=gl(u),R(i))a=Nu(i,o?`next`:`previous`);else{let s=gl(e);if(s===null)return null;if(V(s)){let c=r.getElementByKey(s.getKey());c===null&&I(214);let l=s.getDOMSlot(c);[s,a]=l.resolveChildIndex(s,c,e,t),V(s)||I(215),o&&a>=s.getChildrenSize()&&(a=Math.max(0,s.getChildrenSize()-1));let u=s.getChildAtIndex(a);if(V(u)&&function(e,t,n){let r=e.getParent();return n===null||r===null||!r.canBeEmpty()||r!==n.getNode()}(u,0,n)){let e=o?u.getLastDescendant():u.getFirstDescendant();e===null?s=u:(u=e,s=V(u)?u:u.getParentOrThrow()),a=0}R(u)?(i=u,s=null,a=Nu(u,o?`next`:`previous`)):u!==s&&o&&!d&&(V(s)||I(216),a=Math.min(s.getChildrenSize(),a+1))}else{let n=s.getIndexWithinParent();a=t===0&&yc(s)&&gl(e)===s?n:n+1,s=s.getParentOrThrow()}if(V(s))return ms(s.__key,a,`element`)}}else i=gl(e);return R(i)?ms(i.__key,Nu(i,a,`clamp`),`text`):null}function Es(e,t,n){let r=e.offset,i=e.getNode();if(r===0){let r=i.getPreviousSibling(),a=i.getParent();if(t){if((n||!t)&&r===null&&V(a)&&a.isInline()){let t=a.getPreviousSibling();R(t)&&e.set(t.__key,t.getTextContent().length,`text`)}}else V(r)&&!n&&r.isInline()?e.set(r.__key,r.getChildrenSize(),`element`):R(r)&&e.set(r.__key,r.getTextContent().length,`text`)}else if(r===i.getTextContent().length){let r=i.getNextSibling(),a=i.getParent();if(t&&V(r)&&r.isInline())e.set(r.__key,0,`element`);else if((n||t)&&r===null&&V(a)&&a.isInline()&&!a.canInsertTextAfter()){let t=a.getNextSibling();R(t)&&e.set(t.__key,0,`text`)}}}function Ds(e,t,n){if(e.type===`text`&&t.type===`text`){let n=e.isBefore(t),r=e.is(t);Es(e,n,r),Es(t,!n,r),r&&t.set(e.key,e.offset,e.type)}}function Os(e,t,n,r,i,a){if(e===null||n===null||!Kc(i,e,n))return null;let o=Ts(e,t,z(a)?a.anchor:null,i);if(o===null)return null;let s=Ts(n,r,z(a)?a.focus:null,i);if(s===null)return null;if(o.type===`element`&&s.type===`element`){let t=gl(e),r=gl(n);if(yc(t)&&yc(r))return null}return Ds(o,s),[o,s]}function ks(e,t,n,r,i,a){let o=$s(),s=new vs(ms(e,t,i),ms(n,r,a),0,``);return s.dirty=!0,o._selection=s,s}function As(){return new vs(ms(`root`,0,`element`),ms(`root`,0,`element`),0,``)}function js(){return new _s(new Set)}function Ms(e,t,n,r){let i=n._window;if(i===null)return null;let a=r||i.event,o=a?a.type:void 0,s=o===`selectionchange`,c=!ci&&(s||o===`beforeinput`||o===`compositionstart`||o===`compositionend`||o===`click`&&a&&a.detail===3||o===`drop`||o===void 0),l,u,d,f;if(z(e)&&!c)return e.clone();if(t===null)return null;if(l=t.anchorNode,u=t.focusNode,d=t.anchorOffset,f=t.focusOffset,(s||o===void 0)&&z(e)&&!Kc(n,l,u))return e.clone();let p=Os(l,d,u,f,n,e);if(p===null)return null;let[m,h]=p,g=0,_=``;if(z(e)){let t=e.anchor;if(m.key===t.key)g=e.format,_=e.style;else{let e=m.getNode();R(e)?(g=e.getFormat(),_=e.getStyle()):V(e)&&(g=e.getTextFormat(),_=e.getTextStyle())}}return new vs(m,h,g,_)}function B(){return $s()._selection}function Ns(){return ec()._editorState._selection}function Ps(e,t,n,r=1){let i=e.anchor,a=e.focus,o=i.getNode(),s=a.getNode();if(!t.is(o)&&!t.is(s))return;let c=t.__key;if(e.isCollapsed()){let t=i.offset;if(n<=t&&r>0||n<t&&r<0){let n=Math.max(0,t+r);i.set(c,n,`element`),a.set(c,n,`element`),Fs(e)}}else{let o=e.isBackward(),s=o?a:i,l=s.getNode(),u=o?i:a,d=u.getNode();if(t.is(l)){let e=s.offset;(n<=e&&r>0||n<e&&r<0)&&s.set(c,Math.max(0,e+r),`element`)}if(t.is(d)){let e=u.offset;(n<=e&&r>0||n<e&&r<0)&&u.set(c,Math.max(0,e+r),`element`)}}Fs(e)}function Fs(e){let t=e.anchor,n=t.offset,r=e.focus,i=r.offset,a=t.getNode(),o=r.getNode();if(e.isCollapsed()){if(!V(a))return;let e=a.getChildrenSize(),i=n>=e,o=i?a.getChildAtIndex(e-1):a.getChildAtIndex(n);if(R(o)){let e=0;i&&(e=o.getTextContentSize()),t.set(o.__key,e,`text`),r.set(o.__key,e,`text`)}return}if(V(a)){let e=a.getChildrenSize(),r=n>=e,i=r?a.getChildAtIndex(e-1):a.getChildAtIndex(n);if(R(i)){let e=0;r&&(e=i.getTextContentSize()),t.set(i.__key,e,`text`)}}if(V(o)){let e=o.getChildrenSize(),t=i>=e,n=t?o.getChildAtIndex(e-1):o.getChildAtIndex(i);if(R(n)){let e=0;t&&(e=n.getTextContentSize()),r.set(n.__key,e,`text`)}}}function Is(e,t,n,r,i){let a=null,o=0,s=null;r===null?i!==null&&(a=i.__key,R(i)?s=`text`:V(i)&&(s=`element`)):(a=r.__key,R(r)?(o=r.getTextContentSize(),s=`text`):V(r)&&(o=r.getChildrenSize(),s=`element`)),a!==null&&s!==null?e.set(a,o,s):(o=t.getIndexWithinParent(),o===-1&&(o=n.getChildrenSize()),e.set(n.__key,o,`element`))}function Ls(e,t,n,r,i){e.type===`text`?e.set(n,e.offset+(t?0:i),`text`):e.offset>r.getIndexWithinParent()&&e.set(e.key,e.offset-1,`element`)}function Rs(e,t,n,r,i){try{e.setBaseAndExtent(t,n,r,i)}catch{}}function zs(e,t,n){let r=Il(e,t.getKey());if(V(t)){let e=t.getDOMSlot(r);return[e.element,n+e.getFirstChildOffset()]}return[r,n]}function Bs(e,t,n,r,i,a,o){let s=r.anchorNode,c=r.focusNode,l=r.anchorOffset,u=r.focusOffset,d=document.activeElement;if(i.has(`collaboration`)&&d!==a||d!==null&&Gc(d))return;if(!z(t))return void(e!==null&&Kc(n,s,c)&&r.removeAllRanges());let f=t.anchor,p=t.focus,m=f.getNode(),h=p.getNode(),[g,_]=zs(n,m,f.offset),[v,y]=zs(n,h,p.offset),b=t.format,x=t.style,S=t.isCollapsed(),C=g,w=v,T=!1;var E,D,O,ee,k;if((f.type===`text`?(C=el(g),T=m.getFormat()!==b||m.getStyle()!==x):z(e)&&e.anchor.type===`text`&&(T=!0),p.type===`text`&&(w=el(v)),C!==null&&w!==null)&&(S&&(e===null||T||z(e)&&(e.format!==b||e.style!==x))&&(E=b,D=x,O=_,ee=f.key,k=performance.now(),go=[E,D,O,ee,k]),l!==_||u!==y||s!==C||c!==w||r.type===`Range`&&S||(d!==null&&a.contains(d)||i.has(`skip-selection-focus`)||a.focus({preventScroll:!0}),f.type===`element`))){if(Rs(r,C,_,w,y),!Pr||!t.isCollapsed()||a===null||i.has(`skip-selection-focus`)||document.activeElement!==null&&a.contains(document.activeElement)||a.focus({preventScroll:!0}),!i.has(`skip-scroll-into-view`)&&t.isCollapsed()&&a!==null&&a===document.activeElement){let e=z(t)&&t.anchor.type===`element`?C.childNodes[_]||null:r.rangeCount>0?r.getRangeAt(0):null;if(e!==null){let t;if(e instanceof Text){let n=document.createRange();n.selectNode(e),t=n.getBoundingClientRect()}else t=e.getBoundingClientRect();(function(e,t,n){let r=Rl(n),i=Hl(r);if(r===null||i===null)return;let{top:a,bottom:o}=t,s=0,c=0,l=n;for(;l!==null;){let t=l===r.body;if(t){s=0,c=Ul(e).innerHeight;let t=i.getComputedStyle(r.documentElement),n=parseFloat(t.scrollPaddingTop),a=parseFloat(t.scrollPaddingBottom);isFinite(n)&&(s+=n),isFinite(a)&&(c-=a)}else{let e=l.getBoundingClientRect();s=e.top,c=e.bottom}let n=0;if(a<s?n=-(s-a):o>c&&(n=o-c),n!==0)if(t)i.scrollBy(0,n);else{let e=l.scrollTop;l.scrollTop+=n;let t=l.scrollTop-e;a-=t,o-=t}if(t)break;l=Ll(l)}})(n,t,a)}}co=!0}}function Vs(e){let t=e;e.isCollapsed()||t.removeText();let n=B();z(n)&&(t=n),z(t)||I(161);let r=t.anchor,i=r.getNode(),a=r.offset;for(;!iu(i);){let e=i;if([i,a]=Hs(i,a),e.is(i))break}return a}function Hs(e,t){let n=e.getParent();if(!n){let e=Ac();return pl().append(e),e.select(),[pl(),0]}if(R(e)){let r=e.splitText(t);if(r.length===0)return[n,e.getIndexWithinParent()];let i=t===0?0:1;return[n,r[0].getIndexWithinParent()+i]}if(!V(e)||t===0)return[n,e.getIndexWithinParent()];let r=e.getChildAtIndex(t);if(r){let n=new vs(ms(e.__key,t,`element`),ms(e.__key,t,`element`),0,``),i=e.insertNewAfter(n);i&&i.append(r,...r.getNextSiblings())}return[n,e.getIndexWithinParent()+1]}function Us(e,t,n,r,i=`decorators-and-blocks`){if(t===`move`&&r===`character`&&!e.isCollapsed()){let[t,r]=n===e.isBackward()?[e.focus,e.anchor]:[e.anchor,e.focus];return r.set(t.key,t.offset,t.type),!0}let a=Yu(e.focus,n?`previous`:`next`),o=r===`lineboundary`,s=t===`move`,c=a,l=i===`decorators-and-blocks`;if(!ad(c)){for(let e of c){l=!1;let{origin:t}=e;if(!yc(t)||t.isIsolated()||(c=e,!o||!t.isInline()))break}if(l)for(let e of Bu(a).iterNodeCarets(t===`extend`?`shadowRoot`:`root`)){if(Du(e))e.origin.isInline()||(c=e);else{if(V(e.origin))continue;yc(e.origin)&&!e.origin.isInline()&&(c=e)}break}}if(c===a)return!1;if(s&&!o&&yc(c.origin)&&c.origin.isKeyboardSelectable()){let e=js();return e.add(c.origin.getKey()),hl(e),!0}return c=id(c),s&&Xu(e.anchor,c),Xu(e.focus,c),l||!o}var Ws=null,Gs=null,Ks=!1,qs=!1,Js=0,Ys={characterData:!0,childList:!0,subtree:!0};function Xs(){return Ks||Ws!==null&&Ws._readOnly}function Zs(){Ks&&I(13)}function Qs(){Js>99&&I(14)}function $s(){return Ws===null&&I(195,tc()),Ws}function ec(){return Gs===null&&I(196,tc()),Gs}function tc(){let e=0,t=new Set,n=Lc.version;if(typeof window<`u`)for(let r of document.querySelectorAll(`[contenteditable]`)){let i=Yc(r);if(qc(i))e++;else if(i){let e=String(i.constructor.version||`<0.17.1`);e===n&&(e+=` (separately built, likely a bundler configuration issue)`),t.add(e)}}let r=` Detected on the page: ${e} compatible editor(s) with version ${n}`;return t.size&&(r+=` and incompatible editors with versions ${Array.from(t).join(`, `)}`),r}function nc(){return Gs}function rc(e,t,n){let r=t.__type,i=Vc(e,r),a=n.get(r);a===void 0&&(a=Array.from(i.transforms),n.set(r,a));let o=a.length;for(let e=0;e<o&&(a[e](t),t.isAttached());e++);}function ic(e,t){return e!==void 0&&e.__key!==t&&e.isAttached()}function ac(e,t){if(!t)return;let n=e._updateTags,r=t;Array.isArray(t)||(r=[t]);for(let e of r)n.add(e)}function oc(e,t){let n=e.type,r=t.get(n);r===void 0&&I(17,n);let i=r.klass;e.type!==i.getType()&&I(18,i.name);let a=i.importJSON(e),o=e.children;if(V(a)&&Array.isArray(o))for(let e=0;e<o.length;e++){let n=oc(o[e],t);a.append(n)}return a}function sc(e,t,n){let r=Ws,i=Ks,a=Gs;Ws=t,Ks=!0,Gs=e;try{return n()}finally{Ws=r,Ks=i,Gs=a}}function cc(e,t){let n=e._pendingEditorState,r=e._rootElement,i=e._headless||r===null;if(n===null)return;let a=e._editorState,o=a._selection,s=n._selection,c=e._dirtyType!==0,l=Ws,u=Ks,d=Gs,f=e._updating,p=e._observer,m=null;if(e._pendingEditorState=null,e._editorState=n,!i&&c&&p!==null){Gs=e,Ws=n,Ks=!1,e._updating=!0;try{let t=e._dirtyType,r=e._dirtyElements,i=e._dirtyLeaves;p.disconnect(),m=fa(a,n,e,t,r,i)}catch(t){if(t instanceof Error&&e._onError(t),qs)throw t;Mc(e,null,r,n),_i(e),e._dirtyType=2,qs=!0,cc(e,a),qs=!1;return}finally{p.observe(r,Ys),e._updating=f,Ws=l,Ks=u,Gs=d}}n._readOnly||=!0;let h=e._dirtyLeaves,g=e._dirtyElements,_=e._normalizedNodes,v=e._updateTags,y=e._deferred;c&&(e._dirtyType=0,e._cloneNotNeeded.clear(),e._dirtyLeaves=new Set,e._dirtyElements=new Map,e._normalizedNodes=new Set,e._updateTags=new Set),function(e,t){let n=e._decorators,r=e._pendingDecorators||n,i=t._nodeMap,a;for(a in r)i.has(a)||(r===n&&(r=dl(e)),delete r[a])}(e,n);let b=i?null:Zl(Ul(e));if(e._editable&&b!==null&&(c||s===null||s.dirty||!s.is(o))&&r!==null&&!v.has(`skip-dom-selection`)){Gs=e,Ws=n;try{if(p!==null&&p.disconnect(),c||s===null||s.dirty){let t=e._blockCursorElement;t!==null&&Xl(t,e,r),Bs(o,s,e,b,v,r)}(function(e,t,n){let r=e._blockCursorElement;if(z(n)&&n.isCollapsed()&&n.anchor.type===`element`&&t.contains(document.activeElement)){let i=n.anchor,a=i.getNode(),o=i.offset,s=!1,c=null;if(o===a.getChildrenSize())Yl(a.getChildAtIndex(o-1))&&(s=!0);else{let t=a.getChildAtIndex(o);if(t!==null&&Yl(t)){let n=t.getPreviousSibling();(n===null||Yl(n))&&(s=!0,c=e.getElementByKey(t.__key))}}if(s){let n=e.getElementByKey(a.__key);r===null&&(e._blockCursorElement=r=function(e){let t=e.theme,n=document.createElement(`div`);n.contentEditable=`false`,n.setAttribute(`data-lexical-cursor`,`true`);let r=t.blockCursor;return r!==void 0&&(typeof r==`string`&&(r=t.blockCursor=fd(r)),r!==void 0&&n.classList.add(...r)),n}(e._config)),t.style.caretColor=`transparent`,c===null?n.appendChild(r):n.insertBefore(r,c);return}}r!==null&&Xl(r,e,t)})(e,r,s)}finally{p!==null&&p.observe(r,Ys),Gs=d,Ws=l}}m!==null&&function(e,t,n,r,i){let a=Array.from(e._listeners.mutation),o=a.length;for(let e=0;e<o;e++){let[o,s]=a[e];for(let e of s){let a=t.get(e);a!==void 0&&o(a,{dirtyLeaves:r,prevEditorState:i,updateTags:n})}}}(e,m,v,h,a),z(s)||s===null||o!==null&&o.is(s)||e.dispatchCommand(ma,void 0);let x=e._pendingDecorators;x!==null&&(e._decorators=x,e._pendingDecorators=null,lc(`decorator`,e,!0,x)),function(e,t,n){let r=fl(t),i=fl(n);r!==i&&lc(`textcontent`,e,!0,i)}(e,t||a,n),lc(`update`,e,!0,{dirtyElements:g,dirtyLeaves:h,editorState:n,mutatedNodes:m,normalizedNodes:_,prevEditorState:t||a,tags:v}),function(e,t){if(e._deferred=[],t.length!==0){let n=e._updating;e._updating=!0;try{for(let e=0;e<t.length;e++)t[e]()}finally{e._updating=n}}}(e,y),function(e){let t=e._updates;if(t.length!==0){let n=t.shift();if(n){let[t,r]=n;fc(e,t,r)}}}(e)}function lc(e,t,n,...r){let i=t._updating;t._updating=n;try{let n=t._listeners[e],i=Array.from(n);for(let[e,t]of i){t&&t();let i=e(...r);n.has(e)?n.set(e,i):i&&i()}}finally{t._updating=i}}function uc(e,t,n,r){let i=vl(e),a;for(let e=4;e>=0;e--)for(let o=0;o<i.length;o++){let s=i[o];if(o>0&&s._updating){a=s;break}let c=s._commands.get(t);if(c!==void 0){let t=c[e];if(t!==void 0){let e=Array.from(t),i=e.length,a=!1;if(pc(s,()=>{for(let t=0;t<i;t++)if(e[t](n,r))return void(a=!0)}),a)return a}}}return a&&a.update(()=>{uc(a,t,n,r)}),!1}function dc(e,t){let n=e._updates,r=t||!1;for(;n.length!==0;){let t=n.shift();if(t){let[n,i]=t,a=e._pendingEditorState,o;i!==void 0&&(o=i.onUpdate,i.skipTransforms&&(r=!0),i.discrete&&(a===null&&I(191),a._flushSync=!0),o&&e._deferred.push(o),ac(e,i.tag)),a==null?fc(e,n,i):n()}}return r}function fc(e,t,n){let r=e._updateTags,i,a=!1,o=!1;n!==void 0&&(i=n.onUpdate,ac(e,n.tag),a=n.skipTransforms||!1,o=n.discrete||!1),i&&e._deferred.push(i);let s=e._editorState,c=e._pendingEditorState,l=!1;(c===null||c._readOnly)&&(c=e._pendingEditorState=Sc(c||s),l=!0),c._flushSync=o;let u=Ws,d=Ks,f=Gs,p=e._updating;Ws=c,Ks=!1,e._updating=!0,Gs=e;let m=e._headless||e.getRootElement()===null;zc(null);try{l&&(m?s._selection!==null&&(c._selection=s._selection.clone()):c._selection=function(e,t){let n=e.getEditorState()._selection,r=Zl(Ul(e));return z(n)||n==null?Ms(n,r,e,t):n.clone()}(e,n&&n.event||null));let r=e._compositionKey;t(),a=dc(e,a),function(e,t){let n=t.getEditorState()._selection,r=e._selection;if(z(r)){let e=r.anchor,t=r.focus,i;if(e.type===`text`&&(i=e.getNode(),i.selectionTransform(n,r)),t.type===`text`){let e=t.getNode();i!==e&&e.selectionTransform(n,r)}}}(c,e),e._dirtyType!==0&&(a?function(e,t){let n=t._dirtyLeaves,r=e._nodeMap;for(let e of n){let t=r.get(e);R(t)&&t.isAttached()&&t.isSimpleText()&&!t.isUnmergeable()&&ji(t)}}(c,e):function(e,t){let n=t._dirtyLeaves,r=t._dirtyElements,i=e._nodeMap,a=ol(),o=new Map,s=n,c=s.size,l=r,u=l.size;for(;c>0||u>0;){if(c>0){t._dirtyLeaves=new Set;for(let e of s){let r=i.get(e);R(r)&&r.isAttached()&&r.isSimpleText()&&!r.isUnmergeable()&&ji(r),r!==void 0&&ic(r,a)&&rc(t,r,o),n.add(e)}if(s=t._dirtyLeaves,c=s.size,c>0){Js++;continue}}t._dirtyLeaves=new Set,t._dirtyElements=new Map,l.delete(`root`)&&l.set(`root`,!0);for(let e of l){let n=e[0],s=e[1];if(r.set(n,s),!s)continue;let c=i.get(n);c!==void 0&&ic(c,a)&&rc(t,c,o)}s=t._dirtyLeaves,c=s.size,l=t._dirtyElements,u=l.size,Js++}t._dirtyLeaves=n,t._dirtyElements=r}(c,e),dc(e),function(e,t,n,r){let i=e._nodeMap,a=t._nodeMap,o=[];for(let[e]of r){let t=a.get(e);t!==void 0&&(t.isAttached()||(V(t)&&si(t,e,i,a,o,r),i.has(e)||r.delete(e),o.push(e)))}for(let e of o)a.delete(e);for(let e of n){let t=a.get(e);t===void 0||t.isAttached()||(i.has(e)||n.delete(e),a.delete(e))}}(s,c,e._dirtyLeaves,e._dirtyElements)),r!==e._compositionKey&&(c._flushSync=!0);let i=c._selection;if(z(i)){let e=c._nodeMap,t=i.anchor.key,n=i.focus.key;e.get(t)!==void 0&&e.get(n)!==void 0||I(19)}else ys(i)&&i._nodes.size===0&&(c._selection=null)}catch(t){t instanceof Error&&e._onError(t),e._pendingEditorState=s,e._dirtyType=2,e._cloneNotNeeded.clear(),e._dirtyLeaves=new Set,e._dirtyElements.clear(),cc(e);return}finally{Ws=u,Ks=d,Gs=f,e._updating=p,Js=0}e._dirtyType!==0||e._deferred.length>0||function(e,t){let n=t.getEditorState()._selection,r=e._selection;if(r!==null){if(r.dirty||!r.is(n))return!0}else if(n!==null)return!0;return!1}(c,e)?c._flushSync?(c._flushSync=!1,cc(e)):l&&Uc(()=>{cc(e)}):(c._flushSync=!1,l&&(r.clear(),e._deferred=[],e._pendingEditorState=null))}function pc(e,t,n){Gs===e&&n===void 0?t():fc(e,t,n)}var mc=class e{element;before;after;constructor(e,t,n){this.element=e,this.before=t||null,this.after=n||null}withBefore(t){return new e(this.element,t,this.after)}withAfter(t){return new e(this.element,this.before,t)}withElement(t){return this.element===t?this:new e(t,this.before,this.after)}insertChild(e){let t=this.before||this.getManagedLineBreak();return t!==null&&t.parentElement!==this.element&&I(222),this.element.insertBefore(e,t),this}removeChild(e){return e.parentElement!==this.element&&I(223),this.element.removeChild(e),this}replaceChild(e,t){return t.parentElement!==this.element&&I(224),this.element.replaceChild(e,t),this}getFirstChild(){let e=this.after?this.after.nextSibling:this.element.firstChild;return e===this.before||e===this.getManagedLineBreak()?null:e}getManagedLineBreak(){return this.element.__lexicalLineBreak||null}setManagedLineBreak(e){if(e===null)this.removeManagedLineBreak();else{let t=e===`decorator`&&(Vr||Ir||Rr);this.insertManagedLineBreak(t)}}removeManagedLineBreak(){let e=this.getManagedLineBreak();if(e){let t=this.element,n=e.nodeName===`IMG`?e.nextSibling:null;n&&t.removeChild(n),t.removeChild(e),t.__lexicalLineBreak=void 0}}insertManagedLineBreak(e){let t=this.getManagedLineBreak();if(t){if(e===(t.nodeName===`IMG`))return;this.removeManagedLineBreak()}let n=this.element,r=this.before,i=document.createElement(`br`);if(n.insertBefore(i,r),e){let e=document.createElement(`img`);e.setAttribute(`data-lexical-linebreak`,`true`),e.style.cssText=`display: inline !important; border: 0px !important; margin: 0px !important;`,e.alt=``,n.insertBefore(e,i),n.__lexicalLineBreak=e}else n.__lexicalLineBreak=i}getFirstChildOffset(){let e=0;for(let t=this.after;t!==null;t=t.previousSibling)e++;return e}resolveChildIndex(e,t,n,r){if(n===this.element){let t=this.getFirstChildOffset();return[e,Math.min(t+e.getChildrenSize(),Math.max(t,r))]}let i=hc(t,n);i.push(r);let a=hc(t,this.element),o=e.getIndexWithinParent();for(let e=0;e<a.length;e++){let t=i[e],n=a[e];if(t===void 0||t<n)break;if(t>n){o+=1;break}}return[e.getParentOrThrow(),o]}};function hc(e,t){let n=[],r=t;for(;r!==e&&r!==null;r=r.parentNode){let e=0;for(let t=r.previousSibling;t!==null;t=t.previousSibling)e++;n.push(e)}return r!==e&&I(225),n.reverse()}var gc=class extends Ro{__first;__last;__size;__format;__style;__indent;__dir;__textFormat;__textStyle;constructor(e){super(e),this.__first=null,this.__last=null,this.__size=0,this.__format=0,this.__style=``,this.__indent=0,this.__dir=null,this.__textFormat=0,this.__textStyle=``}afterCloneFrom(e){super.afterCloneFrom(e),this.__key===e.__key&&(this.__first=e.__first,this.__last=e.__last,this.__size=e.__size),this.__indent=e.__indent,this.__format=e.__format,this.__style=e.__style,this.__dir=e.__dir,this.__textFormat=e.__textFormat,this.__textStyle=e.__textStyle}getFormat(){return this.getLatest().__format}getFormatType(){return ri[this.getFormat()]||``}getStyle(){return this.getLatest().__style}getIndent(){return this.getLatest().__indent}getChildren(){let e=[],t=this.getFirstChild();for(;t!==null;)e.push(t),t=t.getNextSibling();return e}getChildrenKeys(){let e=[],t=this.getFirstChild();for(;t!==null;)e.push(t.__key),t=t.getNextSibling();return e}getChildrenSize(){return this.getLatest().__size}isEmpty(){return this.getChildrenSize()===0}isDirty(){let e=ec()._dirtyElements;return e!==null&&e.has(this.__key)}isLastChild(){let e=this.getLatest(),t=this.getParentOrThrow().getLastChild();return t!==null&&t.is(e)}getAllTextNodes(){let e=[],t=this.getFirstChild();for(;t!==null;){if(R(t)&&e.push(t),V(t)){let n=t.getAllTextNodes();e.push(...n)}t=t.getNextSibling()}return e}getFirstDescendant(){let e=this.getFirstChild();for(;V(e);){let t=e.getFirstChild();if(t===null)break;e=t}return e}getLastDescendant(){let e=this.getLastChild();for(;V(e);){let t=e.getLastChild();if(t===null)break;e=t}return e}getDescendantByIndex(e){let t=this.getChildren(),n=t.length;if(e>=n){let e=t[n-1];return V(e)&&e.getLastDescendant()||e||null}let r=t[e];return V(r)&&r.getFirstDescendant()||r||null}getFirstChild(){let e=this.getLatest().__first;return e===null?null:sl(e)}getFirstChildOrThrow(){let e=this.getFirstChild();return e===null&&I(45,this.__key),e}getLastChild(){let e=this.getLatest().__last;return e===null?null:sl(e)}getLastChildOrThrow(){let e=this.getLastChild();return e===null&&I(96,this.__key),e}getChildAtIndex(e){let t=this.getChildrenSize(),n,r;if(e<t/2){for(n=this.getFirstChild(),r=0;n!==null&&r<=e;){if(r===e)return n;n=n.getNextSibling(),r++}return null}for(n=this.getLastChild(),r=t-1;n!==null&&r>=e;){if(r===e)return n;n=n.getPreviousSibling(),r--}return null}getTextContent(){let e=``,t=this.getChildren(),n=t.length;for(let r=0;r<n;r++){let i=t[r];e+=i.getTextContent(),V(i)&&r!==n-1&&!i.isInline()&&(e+=Qr)}return e}getTextContentSize(){let e=0,t=this.getChildren(),n=t.length;for(let r=0;r<n;r++){let i=t[r];e+=i.getTextContentSize(),V(i)&&r!==n-1&&!i.isInline()&&(e+=2)}return e}getDirection(){return this.getLatest().__dir}getTextFormat(){return this.getLatest().__textFormat}hasFormat(e){if(e!==``){let t=ni[e];return(this.getFormat()&t)!==0}return!1}hasTextFormat(e){let t=ei[e];return(this.getTextFormat()&t)!==0}getFormatFlags(e,t){return tl(this.getLatest().__textFormat,e,t)}getTextStyle(){return this.getLatest().__textStyle}select(e,t){Zs();let n=B(),r=e,i=t,a=this.getChildrenSize();if(!this.canBeEmpty()){if(e===0&&t===0){let e=this.getFirstChild();if(R(e)||V(e))return e.select(0,0)}else if(!(e!==void 0&&e!==a||t!==void 0&&t!==a)){let e=this.getLastChild();if(R(e)||V(e))return e.select()}}r===void 0&&(r=a),i===void 0&&(i=a);let o=this.__key;return z(n)?(n.anchor.set(o,r,`element`),n.focus.set(o,i,`element`),n.dirty=!0,n):ks(o,r,o,i,`element`,`element`)}selectStart(){let e=this.getFirstDescendant();return e?e.selectStart():this.select()}selectEnd(){let e=this.getLastDescendant();return e?e.selectEnd():this.select()}clear(){let e=this.getWritable();return this.getChildren().forEach(e=>e.remove()),e}append(...e){return this.splice(this.getChildrenSize(),0,e)}setDirection(e){let t=this.getWritable();return t.__dir=e,t}setFormat(e){return this.getWritable().__format=e===``?0:ni[e],this}setStyle(e){return this.getWritable().__style=e||``,this}setTextFormat(e){let t=this.getWritable();return t.__textFormat=e,t}setTextStyle(e){let t=this.getWritable();return t.__textStyle=e,t}setIndent(e){return this.getWritable().__indent=e,this}splice(e,t,n){Lo(this)&&I(324,this.__key,this.__type);let r=this.getChildrenSize(),i=this.getWritable();e+t<=r||I(226,String(e),String(t),String(r));let a=i.__key,o=[],s=[],c=this.getChildAtIndex(e+t),l=null,u=r-t+n.length;if(e!==0)if(e===r)l=this.getLastChild();else{let t=this.getChildAtIndex(e);t!==null&&(l=t.getPreviousSibling())}if(t>0){let e=l===null?this.getFirstChild():l.getNextSibling();for(let n=0;n<t;n++){e===null&&I(100);let t=e.getNextSibling(),n=e.__key;rl(e.getWritable()),s.push(n),e=t}}let d=l;for(let e of n){d!==null&&e.is(d)&&(l=d=d.getPreviousSibling());let t=e.getWritable();t.__parent===a&&u--,rl(t);let n=e.__key;if(d===null)i.__first=n,t.__prev=null;else{let e=d.getWritable();e.__next=n,t.__prev=e.__key}e.__key===a&&I(76),t.__parent=a,o.push(n),d=e}if(e+t===r)d!==null&&(d.getWritable().__next=null,i.__last=d.__key);else if(c!==null){let e=c.getWritable();if(d!==null){let t=d.getWritable();e.__prev=d.__key,t.__next=c.__key}else e.__prev=null}if(i.__size=u,s.length){let e=B();if(z(e)){let t=new Set(s),n=new Set(o),{anchor:r,focus:i}=e;_c(r,t,n)&&Is(r,r.getNode(),this,l,c),_c(i,t,n)&&Is(i,i.getNode(),this,l,c),u!==0||this.canBeEmpty()||Gl(this)||this.remove()}}return i}getDOMSlot(e){return new mc(e)}exportDOM(e){let{element:t}=super.exportDOM(e);if($l(t)){let e=this.getIndent();e>0&&(t.style.paddingInlineStart=40*e+`px`);let n=this.getDirection();n&&(t.dir=n)}return{element:t}}exportJSON(){let e={children:[],direction:this.getDirection(),format:this.getFormatType(),indent:this.getIndent(),...super.exportJSON()},t=this.getTextFormat(),n=this.getTextStyle();return t===0&&n===``||Gl(this)||this.getChildren().some(R)||(t!==0&&(e.textFormat=t),n!==``&&(e.textStyle=n)),e}updateFromJSON(e){return super.updateFromJSON(e).setFormat(e.format).setIndent(e.indent).setDirection(e.direction).setTextFormat(e.textFormat||0).setTextStyle(e.textStyle||``)}insertNewAfter(e,t){return null}canIndent(){return!0}collapseAtStart(e){return!1}excludeFromCopy(e){return!1}canReplaceWith(e){return!0}canInsertAfter(e){return!0}canBeEmpty(){return!0}canInsertTextBefore(){return!0}canInsertTextAfter(){return!0}isInline(){return!1}isShadowRoot(){return!1}canMergeWith(e){return!1}extractWithChild(e,t,n){return!1}canMergeWhenEmpty(){return!1}reconcileObservedMutation(e,t){let n=this.getDOMSlot(e),r=n.getFirstChild();for(let e=this.getFirstChild();e;e=e.getNextSibling()){let i=t.getElementByKey(e.getKey());i!==null&&(r==null?(n.insertChild(i),r=i):r!==i&&n.replaceChild(i,r),r=r.nextSibling)}}};function V(e){return e instanceof gc}function _c(e,t,n){let r=e.getNode();for(;r;){let e=r.__key;if(t.has(e)&&!n.has(e))return!0;r=r.getParent()}return!1}var vc=class extends Ro{decorate(e,t){return null}isIsolated(){return!1}isInline(){return!0}isKeyboardSelectable(){return!0}};function yc(e){return e instanceof vc}var bc=class e extends gc{__cachedText;static getType(){return`root`}static clone(){return new e}constructor(){super(`root`),this.__cachedText=null}getTopLevelElementOrThrow(){I(51)}getTextContent(){let e=this.__cachedText;return!Xs()&&ec()._dirtyType!==0||e===null?super.getTextContent():e}remove(){I(52)}replace(e){I(53)}insertBefore(e){I(54)}insertAfter(e){I(55)}updateDOM(e,t){return!1}splice(e,t,n){for(let e of n)V(e)||yc(e)||I(282);return super.splice(e,t,n)}static importJSON(e){return pl().updateFromJSON(e)}collapseAtStart(){return!0}};function xc(e){return e instanceof bc}function Sc(e){return new Ec(new Map(e._nodeMap))}function Cc(){return new Ec(new Map([[`root`,new bc]]))}function wc(e){let t=e.exportJSON(),n=e.constructor;if(t.type!==n.getType()&&I(130,n.name),V(e)){let r=t.children;Array.isArray(r)||I(59,n.name);let i=e.getChildren();for(let e=0;e<i.length;e++){let t=wc(i[e]);r.push(t)}}return t}function Tc(e){return e instanceof Ec}var Ec=class e{_nodeMap;_selection;_flushSync;_readOnly;constructor(e,t){this._nodeMap=e,this._selection=t||null,this._flushSync=!1,this._readOnly=!1}isEmpty(){return this._nodeMap.size===1&&this._selection===null}read(e,t){return sc(t&&t.editor||null,this,e)}clone(t){let n=new e(this._nodeMap,t===void 0?this._selection:t);return n._readOnly=!0,n}toJSON(){return sc(null,this,()=>({root:wc(pl())}))}},Dc=class extends gc{static getType(){return`artificial`}createDOM(e){return document.createElement(`div`)}},Oc=class e extends gc{static getType(){return`paragraph`}static clone(t){return new e(t.__key)}createDOM(e){let t=document.createElement(`p`),n=jl(e.theme,`paragraph`);return n!==void 0&&t.classList.add(...n),t}updateDOM(e,t,n){return!1}static importDOM(){return{p:e=>({conversion:kc,priority:0})}}exportDOM(e){let{element:t}=super.exportDOM(e);if($l(t)){this.isEmpty()&&t.append(document.createElement(`br`));let e=this.getFormatType();e&&(t.style.textAlign=e)}return{element:t}}static importJSON(e){return Ac().updateFromJSON(e)}exportJSON(){let e=super.exportJSON();if(e.textFormat===void 0||e.textStyle===void 0){let t=this.getChildren().find(R);t?(e.textFormat=t.getFormat(),e.textStyle=t.getStyle()):(e.textFormat=this.getTextFormat(),e.textStyle=this.getTextStyle())}return e}insertNewAfter(e,t){let n=Ac();n.setTextFormat(e.format),n.setTextStyle(e.style);let r=this.getDirection();return n.setDirection(r),n.setFormat(this.getFormatType()),n.setStyle(this.getStyle()),this.insertAfter(n,t),n}collapseAtStart(){let e=this.getChildren();if(e.length===0||R(e[0])&&e[0].getTextContent().trim()===``){if(this.getNextSibling()!==null)return this.selectNext(),this.remove(),!0;if(this.getPreviousSibling()!==null)return this.selectPrevious(),this.remove(),!0}return!1}};function kc(e){let t=Ac();if(e.style&&(t.setFormat(e.style.textAlign),du(e,t)),t.getFormatType()===``){let n=e.getAttribute(`align`);n&&n&&n in ni&&t.setFormat(n)}return{node:t}}function Ac(){return Kl(new Oc)}function jc(e){return e instanceof Oc}function Mc(e,t,n,r){let i=e._keyToDOMMap;i.clear(),e._editorState=Cc(),e._pendingEditorState=r,e._compositionKey=null,e._dirtyType=0,e._cloneNotNeeded.clear(),e._dirtyLeaves=new Set,e._dirtyElements.clear(),e._normalizedNodes=new Set,e._updateTags=new Set,e._updates=[],e._blockCursorElement=null;let a=e._observer;a!==null&&(a.disconnect(),e._observer=null),t!==null&&(t.textContent=``),n!==null&&(n.textContent=``,i.set(`root`,n))}function Nc(e){let t=new Set,n=new Set,r=e;for(;r;){let{ownNodeConfig:e}=mu(r),i=r.transform;if(!n.has(i)){n.add(i);let e=r.transform();e&&t.add(e)}if(e){let n=e.$transform;n&&t.add(n),r=e.extends}else{let e=Object.getPrototypeOf(r);r=e.prototype instanceof Ro&&e!==Ro?e:void 0}}return t}function Pc(e){let t=e||{},n=nc(),r=t.theme||{},i=e===void 0?n:t.parentEditor||null,a=t.disableEvents||!1,o=Cc(),s=t.namespace||(i===null?yl():i._config.namespace),c=t.editorState,l=[bc,$o,Ho,us,Oc,Dc,...t.nodes||[]],{onError:u,html:d}=t,f=t.editable===void 0||t.editable,p;if(e===void 0&&n!==null)p=n._nodes;else{p=new Map;for(let e=0;e<l.length;e++){let t=l[e],n=null,r=null;if(typeof t!=`function`){let e=t;t=e.replace,n=e.with,r=e.withKlass||null}mu(t);let i=t.getType(),a=Nc(t);p.set(i,{exportDOM:d&&d.export?d.export.get(t):void 0,klass:t,replace:n,replaceWithKlass:r,sharedNodeState:bi(l[e]),transforms:a})}}let m=new Lc(o,i,p,{disableEvents:a,namespace:s,theme:r},u||console.error,function(e,t){let n=new Map,r=new Set,i=e=>{Object.keys(e).forEach(t=>{let r=n.get(t);r===void 0&&(r=[],n.set(t,r)),r.push(e[t])})};return e.forEach(e=>{let t=e.klass.importDOM;if(t==null||r.has(t))return;r.add(t);let n=t.call(e.klass);n!==null&&i(n)}),t&&i(t),n}(p,d?d.import:void 0),f,e);return c!==void 0&&(m._pendingEditorState=c,m._dirtyType=2),function(e){e.registerCommand(ga,Co,0),e.registerCommand(_a,wo,0),e.registerCommand(va,To,0),e.registerCommand(ya,Eo,0),e.registerCommand(ja,Oo,0)}(m),m}function Fc(e,t){let n=e.get(t);e.delete(t),n&&n()}function Ic(e,t,n){return e.set(t,n),Fc.bind(null,e,t)}var Lc=class{static version;_headless;_parentEditor;_rootElement;_editorState;_pendingEditorState;_compositionKey;_deferred;_keyToDOMMap;_updates;_updating;_listeners;_commands;_nodes;_decorators;_pendingDecorators;_config;_dirtyType;_cloneNotNeeded;_dirtyLeaves;_dirtyElements;_normalizedNodes;_updateTags;_observer;_key;_onError;_htmlConversions;_window;_editable;_blockCursorElement;_createEditorArgs;constructor(e,t,n,r,i,a,o,s){this._createEditorArgs=s,this._parentEditor=t,this._rootElement=null,this._editorState=e,this._pendingEditorState=null,this._compositionKey=null,this._deferred=[],this._keyToDOMMap=new Map,this._updates=[],this._updating=!1,this._listeners={decorator:new Map,editable:new Map,mutation:new Map,root:new Map,textcontent:new Map,update:new Map},this._commands=new Map,this._config=r,this._nodes=n,this._decorators={},this._pendingDecorators=null,this._dirtyType=0,this._cloneNotNeeded=new Set,this._dirtyLeaves=new Set,this._dirtyElements=new Map,this._normalizedNodes=new Set,this._updateTags=new Set,this._observer=null,this._key=yl(),this._onError=i,this._htmlConversions=a,this._editable=o,this._headless=t!==null&&t._headless,this._window=null,this._blockCursorElement=null}isComposing(){return this._compositionKey!=null}registerUpdateListener(e){return Ic(this._listeners.update,e)}registerEditableListener(e){return Ic(this._listeners.editable,e)}registerDecoratorListener(e){return Ic(this._listeners.decorator,e)}registerTextContentListener(e){return Ic(this._listeners.textcontent,e)}registerRootListener(e){let t=this._listeners.root;return md(Ic(t,e,e(this._rootElement,null)||void 0),()=>function(e,t,n){let r=e.get(t);r&&r(),e.set(t,t(...n)||void 0)}(t,e,[null,this._rootElement]))}registerCommand(e,t,n){n===void 0&&I(35);let r=this._commands;r.has(e)||r.set(e,[new Set,new Set,new Set,new Set,new Set]);let i=r.get(e);i===void 0&&I(36,String(e));let a=i[n];return a.add(t),()=>{a.delete(t),i.every(e=>e.size===0)&&r.delete(e)}}registerMutationListener(e,t,n){let r=this.resolveRegisteredNodeAfterReplacements(this.getRegisteredNode(e)).klass,i=this._listeners.mutation,a=i.get(t);a===void 0&&(a=new Set,i.set(t,a)),a.add(r);let o=n&&n.skipInitialization;return o!==void 0&&o||this.initializeMutationListener(t,r),()=>{a.delete(r),a.size===0&&i.delete(t)}}getRegisteredNode(e){let t=this._nodes.get(e.getType());return t===void 0&&I(37,e.name),t}resolveRegisteredNodeAfterReplacements(e){for(;e.replaceWithKlass;)e=this.getRegisteredNode(e.replaceWithKlass);return e}initializeMutationListener(e,t){let n=this._editorState,r=cu(n).get(t.getType());if(!r)return;let i=new Map;for(let e of r.keys())i.set(e,`created`);i.size>0&&e(i,{dirtyLeaves:new Set,prevEditorState:n,updateTags:new Set([`registerMutationListener`])})}registerNodeTransformToKlass(e,t){let n=this.getRegisteredNode(e);return n.transforms.add(t),n}registerNodeTransform(e,t){let n=this.registerNodeTransformToKlass(e,t),r=[n],i=n.replaceWithKlass;if(i!=null){let e=this.registerNodeTransformToKlass(i,t);r.push(e)}return function(e,t){let n=cu(e.getEditorState()),r=[];for(let e of t){let t=n.get(e);t&&r.push(t)}r.length!==0&&e.update(()=>{for(let e of r)for(let t of e.keys()){let e=sl(t);e&&e.markDirty()}},e._pendingEditorState===null?{tag:zo}:void 0)}(this,r.map(e=>e.klass.getType())),()=>{r.forEach(e=>e.transforms.delete(t))}}hasNode(e){return this._nodes.has(e.getType())}hasNodes(e){return e.every(this.hasNode.bind(this))}dispatchCommand(e,t){return U(this,e,t)}getDecorators(){return this._decorators}getRootElement(){return this._rootElement}getKey(){return this._key}setRootElement(e){let t=this._rootElement;if(e!==t){let n=jl(this._config.theme,`root`),r=this._pendingEditorState||this._editorState;if(this._rootElement=e,Mc(this,t,e,r),t!==null&&(this._config.disableEvents||Po(t),n!=null&&t.classList.remove(...n)),e!==null){let t=Hl(e),r=e.style;r.userSelect=`text`,r.whiteSpace=`pre-wrap`,r.wordBreak=`break-word`,e.setAttribute(`data-lexical-editor`,`true`),this._window=t,this._dirtyType=2,_i(this),this._updateTags.add(zo),cc(this),this._config.disableEvents||function(e,t){let n=e.ownerDocument;oo.set(e,n);let r=so.get(n)??0;r<1&&n.addEventListener(`selectionchange`,jo),so.set(n,r+1),e.__lexicalEditor=t;let i=ko(e);for(let n=0;n<to.length;n++){let[r,a]=to[n],o=typeof a==`function`?e=>{No(e)||(Mo(e),(t.isEditable()||r===`click`)&&a(e,t))}:e=>{if(No(e))return;Mo(e);let n=t.isEditable();switch(r){case`cut`:return n&&U(t,Ya,e);case`copy`:return U(t,Ja,e);case`paste`:return n&&U(t,wa,e);case`dragstart`:return n&&U(t,Ga,e);case`dragover`:return n&&U(t,Ka,e);case`dragend`:return n&&U(t,qa,e);case`focus`:return n&&U(t,Za,e);case`blur`:return n&&U(t,Qa,e);case`drop`:return n&&U(t,Wa,e)}};e.addEventListener(r,o),i.push(()=>{e.removeEventListener(r,o)})}}(e,this),n!=null&&e.classList.add(...n)}else this._window=null,this._updateTags.add(zo),cc(this);lc(`root`,this,!1,e,t)}}getElementByKey(e){return this._keyToDOMMap.get(e)||null}getEditorState(){return this._editorState}setEditorState(e,t){e.isEmpty()&&I(38);let n=e;n._readOnly&&(n=Sc(e),n._selection=e._selection?e._selection.clone():null),gi(this);let r=this._pendingEditorState,i=this._updateTags,a=t===void 0?null:t.tag;r===null||r.isEmpty()||(a!=null&&i.add(a),cc(this)),this._pendingEditorState=n,this._dirtyType=2,this._dirtyElements.set(`root`,!1),this._compositionKey=null,a!=null&&i.add(a),this._updating||cc(this)}parseEditorState(e,t){return function(e,t,n){let r=Cc(),i=Ws,a=Ks,o=Gs,s=t._dirtyElements,c=t._dirtyLeaves,l=t._cloneNotNeeded,u=t._dirtyType;t._dirtyElements=new Map,t._dirtyLeaves=new Set,t._cloneNotNeeded=new Set,t._dirtyType=0,Ws=r,Ks=!1,Gs=t,zc(null);try{let i=t._nodes;oc(e.root,i),n&&n(),r._readOnly=!0}catch(e){e instanceof Error&&t._onError(e)}finally{t._dirtyElements=s,t._dirtyLeaves=c,t._cloneNotNeeded=l,t._dirtyType=u,Ws=i,Ks=a,Gs=o}return r}(typeof e==`string`?JSON.parse(e):e,this,t)}read(e){return cc(this),this.getEditorState().read(e,{editor:this})}update(e,t){(function(e,t,n){e._updating?e._updates.push([t,n]):fc(e,t,n)})(this,e,t)}focus(e,t={}){let n=this._rootElement;n!==null&&(n.setAttribute(`autocapitalize`,`off`),pc(this,()=>{let r=B(),i=pl();r===null?i.getChildrenSize()!==0&&(t.defaultSelection===`rootStart`?i.selectStart():i.selectEnd()):r.dirty||hl(r.clone()),zl(`focus`),Bl(()=>{n.removeAttribute(`autocapitalize`),e&&e()})}),this._pendingEditorState===null&&n.removeAttribute(`autocapitalize`))}blur(){let e=this._rootElement;e!==null&&e.blur();let t=Zl(this._window);t!==null&&t.removeAllRanges()}isEditable(){return this._editable}setEditable(e){this._editable!==e&&(this._editable=e,lc(`editable`,this,!0,e))}toJSON(){return{editorState:this._editorState.toJSON()}}};Lc.version=`0.43.0+prod.esm`;var Rc=null;function zc(e){Rc=e}var Bc=1;function Vc(e,t){let n=Hc(e,t);return n===void 0&&I(30,t),n}function Hc(e,t){return e._nodes.get(t)}var Uc=typeof queueMicrotask==`function`?queueMicrotask:e=>{Promise.resolve().then(e)};function Wc(e){return yc(ul(e))}function Gc(e){let t=document.activeElement;if(!$l(t))return!1;let n=t.nodeName;return yc(ul(e))&&(n===`INPUT`||n===`TEXTAREA`||t.contentEditable===`true`&&Yc(t)==null)}function Kc(e,t,n){let r=e.getRootElement();try{return r!==null&&r.contains(t)&&r.contains(n)&&t!==null&&!Gc(t)&&Jc(t)===e}catch{return!1}}function qc(e){return e instanceof Lc}function Jc(e){let t=e;for(;t!=null;){let e=Yc(t);if(qc(e))return e;t=Ll(t)}return null}function Yc(e){return e?e.__lexicalEditor:null}function Xc(e){return fs(e)||e.isToken()}function Zc(e){return Xc(e)||e.isSegmented()}function Qc(e){return eu(e)&&e.nodeType===3}function $c(e){return eu(e)&&e.nodeType===9}function el(e){let t=e;for(;t!=null;){if(Qc(t))return t;t=t.firstChild}return null}function tl(e,t,n){let r=ei[t];if(n!==null&&(e&r)===(n&r))return e;let i=e^r;return t===`subscript`?i&=~ei.superscript:t===`superscript`?i&=~ei.subscript:t===`lowercase`?(i&=~ei.uppercase,i&=~ei.capitalize):t===`uppercase`?(i&=~ei.lowercase,i&=~ei.capitalize):t===`capitalize`&&(i&=~ei.lowercase,i&=~ei.uppercase),i}function nl(e,t){let n=function(){let e=Rc;return Rc=null,e}();if((t||=n&&n.__key)!=null)return void(e.__key=t);Zs(),Qs();let r=ec(),i=$s(),a=``+ Bc++;i._nodeMap.set(a,e),V(e)?r._dirtyElements.set(a,!0):r._dirtyLeaves.add(a),r._cloneNotNeeded.add(a),r._dirtyType=1,e.__key=a}function rl(e){let t=e.getParent();if(t!==null){let n=e.getWritable(),r=t.getWritable(),i=e.getPreviousSibling(),a=e.getNextSibling(),o=a===null?null:a.__key,s=i===null?null:i.__key,c=i===null?null:i.getWritable(),l=a===null?null:a.getWritable();i===null&&(r.__first=o),a===null&&(r.__last=s),c!==null&&(c.__next=o),l!==null&&(l.__prev=s),n.__prev=null,n.__next=null,n.__parent=null,r.__size--}}function il(e){Qs(),Lo(e)&&I(323,e.__key,e.__type);let t=e.getLatest(),n=t.__parent,r=$s(),i=ec(),a=r._nodeMap,o=i._dirtyElements;n!==null&&function(e,t,n){let r=e;for(;r!==null;){if(n.has(r))return;let e=t.get(r);if(e===void 0)break;n.set(r,!1),r=e.__parent}}(n,a,o);let s=t.__key;i._dirtyType=1,V(e)?o.set(s,!0):i._dirtyLeaves.add(s)}function al(e){Zs();let t=ec(),n=t._compositionKey;if(e!==n){if(t._compositionKey=e,n!==null){let e=sl(n);e!==null&&e.getWritable()}if(e!==null){let t=sl(e);t!==null&&t.getWritable()}}}function ol(){return Xs()?null:ec()._compositionKey}function sl(e,t){let n=(t||$s())._nodeMap.get(e);return n===void 0?null:n}function cl(e,t){let n=ll(e,ec());return n===void 0?null:sl(n,t)}function ll(e,t){return e[`__lexicalKey_${t._key}`]}function ul(e,t){let n=e;for(;n!=null;){let e=cl(n,t);if(e!==null)return e;n=Ll(n)}return null}function dl(e){let t=e._decorators,n=Object.assign({},t);return e._pendingDecorators=n,n}function fl(e){return e.read(()=>pl().getTextContent())}function pl(){return ml($s())}function ml(e){return e._nodeMap.get(`root`)}function hl(e){Zs();let t=$s();e!==null&&(e.dirty=!0,e.setCachedNodes(null)),t._selection=e}function gl(e){let t=ec(),n=function(e,t){let n=e;for(;n!=null;){let e=ll(n,t);if(e!==void 0)return e;n=Ll(n)}return null}(e,t);return n===null?e===t.getRootElement()?sl(`root`):null:sl(n)}function _l(e){return/[\uD800-\uDBFF][\uDC00-\uDFFF]/g.test(e)}function vl(e){let t=[];for(let n=e;n!==null;n=n._parentEditor)t.push(n);return t}function yl(){return Math.random().toString(36).replace(/[^a-z]+/g,``).substring(0,5)}function bl(e){return Qc(e)?e.nodeValue:null}function xl(e,t,n){let r=Zl(Ul(t));if(r===null)return;let i=r.anchorNode,{anchorOffset:a,focusOffset:o}=r;if(i!==null){let t=bl(i),r=ul(i);if(t!==null&&R(r)){if((t===Zr||t===$r)&&n){let e=n.length;t=n,a=e,o=e}t!==null&&Sl(r,t,a,o,e)}}}function Sl(e,t,n,r,i){let a=e;if(a.isAttached()&&(i||!a.isDirty())){let o=a.isComposing(),s=t;if((o||i)&&(t.endsWith(Zr)&&(s=t.slice(0,-Zr.length)),i)){let e=$r,t;for(;(t=s.indexOf(e))!==-1;)s=s.slice(0,t)+s.slice(t+e.length),n!==null&&n>t&&(n=Math.max(t,n-e.length)),r!==null&&r>t&&(r=Math.max(t,r-e.length))}let c=a.getTextContent();if(i||s!==c){if(s===``){if(al(null),Rr||Ir||Vr)a.remove();else{let e=ec();setTimeout(()=>{e.update(()=>{a.isAttached()&&a.remove()})},20)}return}let t=a.getParent(),i=Ns(),c=a.getTextContentSize(),l=ol(),u=a.getKey();if(a.isToken()||l!==null&&u===l&&!o||z(i)&&(t!==null&&!t.canInsertTextBefore()&&i.anchor.offset===0||i.anchor.key===e.__key&&i.anchor.offset===0&&!a.canInsertTextBefore()&&!o||i.focus.key===e.__key&&i.focus.offset===c&&!a.canInsertTextAfter()&&!o))return void a.markDirty();let d=B();if(!z(d)||n===null||r===null)return void Cl(a,s,d);if(d.setTextNodeRange(a,n,a,r),a.isSegmented()){let e=cs(a.getTextContent());a.replace(e),a=e}Cl(a,s,d)}}}function Cl(e,t,n){if(e.setTextContent(t),z(n)){let t=e.getKey();for(let r of[`anchor`,`focus`]){let i=n[r];i.type===`text`&&i.key===t&&(i.offset=Nu(e,i.offset,`clamp`))}}}function wl(e,t,n){let r=t[n]||!1;return r===`any`||r===e[n]}function Tl(e,t){return wl(e,t,`altKey`)&&wl(e,t,`ctrlKey`)&&wl(e,t,`shiftKey`)&&wl(e,t,`metaKey`)}function H(e,t,n){if(!Tl(e,n))return!1;if(e.key.toLowerCase()===t.toLowerCase())return!0;if(t.length>1||e.key.length===1&&e.key.charCodeAt(0)<=127)return!1;let r=`Key`+t.toUpperCase();return e.code===r}var El={ctrlKey:!Nr,metaKey:Nr},Dl={altKey:Nr,ctrlKey:!Nr};function Ol(e){return e.key===`Backspace`}function kl(e){return H(e,`a`,El)}function Al(e){let t=pl();if(z(e)){let t=e.anchor,n=e.focus,r=t.getNode().getTopLevelElementOrThrow().getParentOrThrow();return t.set(r.getKey(),0,`element`),n.set(r.getKey(),r.getChildrenSize(),`element`),Mi(e),e}{let e=t.select(0,t.getChildrenSize());return hl(Mi(e)),e}}function jl(e,t){e.__lexicalClassNameCache===void 0&&(e.__lexicalClassNameCache={});let n=e.__lexicalClassNameCache,r=n[t];if(r!==void 0)return r;let i=e[t];if(typeof i==`string`){let e=fd(i);return n[t]=e,e}return i}function Ml(e,t,n,r,i){if(n.size===0)return;let a=r.__type,o=r.__key,s=t.get(a);s===void 0&&I(33,a);let c=s.klass,l=e.get(c);l===void 0&&(l=new Map,e.set(c,l));let u=l.get(o),d=u===`destroyed`&&i===`created`;(u===void 0||d)&&l.set(o,d?`updated`:i)}function Nl(e,t,n){let r=e.getParent(),i=n,a=e;return r!==null&&(t&&n===0?(i=a.getIndexWithinParent(),a=r):t||n!==a.getChildrenSize()||(i=a.getIndexWithinParent()+1,a=r)),a.getChildAtIndex(t?i-1:i)}function Pl(e,t){let n=e.offset;if(e.type===`element`)return Nl(e.getNode(),t,n);{let r=e.getNode();if(t&&n===0||!t&&n===r.getTextContentSize()){let e=t?r.getPreviousSibling():r.getNextSibling();return e===null?Nl(r.getParentOrThrow(),t,r.getIndexWithinParent()+(t?0:1)):e}}return null}function Fl(e){let t=Ul(e).event,n=t&&t.inputType;return n===`insertFromPaste`||n===`insertFromPasteAsQuotation`}function U(e,t,n){return uc(e,t,n,e)}function Il(e,t){let n=e._keyToDOMMap.get(t);return n===void 0&&I(75,t),n}function Ll(e){let t=e.assignedSlot||e.parentElement;return tu(t)?t.host:t}function Rl(e){return $c(e)?e:$l(e)?e.ownerDocument:null}function zl(e){Zs(),ec()._updateTags.add(e)}function Bl(e){Zs(),ec()._deferred.push(e)}function Vl(e,t){let n=e.getParent();for(;n!==null;){if(n.is(t))return!0;n=n.getParent()}return!1}function Hl(e){let t=Rl(e);return t?t.defaultView:null}function Ul(e){let t=e._window;return t===null&&I(78),t}function Wl(e){let t=e.getParentOrThrow();for(;t!==null;){if(Gl(t))return t;t=t.getParentOrThrow()}return t}function Gl(e){return xc(e)||V(e)&&e.isShadowRoot()}function Kl(e){let t=ec(),n=e.getType(),r=Hc(t,n);r===void 0&&I(200,e.constructor.name,n);let{replace:i,replaceWithKlass:a}=r;if(i!==null){let t=i(e),r=t.constructor;return a===null?t instanceof e.constructor&&r!==e.constructor||I(202,r.name,r.getType(),e.constructor.name,n):t instanceof a||I(201,a.name,a.getType(),r.name,r.getType(),e.constructor.name,n),t.__key===e.__key&&I(203,e.constructor.name,n,r.name,r.getType()),t}return e}function ql(e,t){!xc(e.getParent())||V(t)||yc(t)||I(99)}function Jl(e){let t=sl(e);return t===null&&I(63,e),t}function Yl(e){return(yc(e)||V(e)&&!e.canBeEmpty())&&!e.isInline()}function Xl(e,t,n){n.style.removeProperty(`caret-color`),t._blockCursorElement=null;let r=e.parentElement;r!==null&&r.removeChild(e)}function Zl(e){return jr?(e||window).getSelection():null}function Ql(e){let t=Hl(e);return t?t.getSelection():null}function $l(e){return eu(e)&&e.nodeType===1}function eu(e){return typeof e==`object`&&!!e&&`nodeType`in e&&typeof e.nodeType==`number`}function tu(e){return eu(e)&&e.nodeType===11}function nu(e){let t=new RegExp(/^(a|abbr|acronym|b|cite|code|del|em|i|ins|kbd|label|mark|output|q|ruby|s|samp|span|strong|sub|sup|time|u|tt|var|#text)$/,`i`);return e.nodeName.match(t)!==null}function ru(e){let t=new RegExp(/^(address|article|aside|blockquote|canvas|dd|div|dl|dt|fieldset|figcaption|figure|footer|form|h1|h2|h3|h4|h5|h6|header|hr|li|main|nav|noscript|ol|p|pre|section|table|td|tfoot|ul|video)$/,`i`);return e.nodeName.match(t)!==null}function iu(e){if(yc(e)&&!e.isInline())return!0;if(!V(e)||Gl(e))return!1;let t=e.getFirstChild(),n=t===null||Go(t)||R(t)||t.isInline();return!e.isInline()&&!1!==e.canBeEmpty()&&n}function au(){return ec()}var ou=new WeakMap,su=new Map;function cu(e){if(!e._readOnly&&e.isEmpty())return su;e._readOnly||I(192);let t=ou.get(e);return t||(t=function(e){let t=new Map;for(let[n,r]of e._nodeMap){let e=r.__type,i=t.get(e);i||(i=new Map,t.set(e,i)),i.set(n,r)}return t}(e),ou.set(e,t)),t}function lu(e){let t=e.constructor.clone(e);return t.afterCloneFrom(e),t}function uu(e){return(t=lu(e))[Io]=!0,t;var t}function du(e,t){let n=parseInt(e.style.paddingInlineStart,10)||0,r=Math.round(n/40);t.setIndent(r)}function fu(e){return!0===e.__lexicalUnmanaged}function pu(e,t){return function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}(e,t)&&e[t]!==Ro[t]}function mu(e){let t=oi in e.prototype?e.prototype[oi]():void 0,n=function(e){if(!(e===Ro||e.prototype instanceof Ro)){let t=`<unknown>`,n=`<unknown>`;try{t=e.getType()}catch{}try{Lc.version&&(n=JSON.parse(Lc.version))}catch{}I(290,e.name,t,n)}return e===vc||e===gc||e===Ro}(e),r=!n&&pu(e,`getType`)?e.getType():void 0,i,a=r;if(t)if(r)i=t[r];else for(let[e,n]of Object.entries(t))a=e,i=n;if(!n&&a&&(pu(e,`getType`)||(e.getType=()=>a),pu(e,`clone`)||(e.clone=t=>(zc(t),new e)),pu(e,`importJSON`)||(e.importJSON=i&&i.$importJSON||(t=>new e().updateFromJSON(t))),!pu(e,`importDOM`)&&i)){let{importDOM:t}=i;t&&(e.importDOM=()=>t)}return{ownNodeConfig:i,ownNodeType:a}}function hu(e){let t=au();return Zs(),new(t.resolveRegisteredNodeAfterReplacements(t.getRegisteredNode(e))).klass}var gu=(e,t)=>{let n=e;for(;n!=null&&!xc(n);){if(t(n))return n;n=n.getParent()}return null},_u={next:`previous`,previous:`next`},vu=class{origin;constructor(e){this.origin=e}[Symbol.iterator](){return Uu({hasNext:Eu,initial:this.getAdjacentCaret(),map:e=>e,step:e=>e.getAdjacentCaret()})}getAdjacentCaret(){return ju(this.getNodeAtCaret(),this.direction)}getSiblingCaret(){return ju(this.origin,this.direction)}remove(){let e=this.getNodeAtCaret();return e&&e.remove(),this}replaceOrInsert(e,t){let n=this.getNodeAtCaret();return e.is(this.origin)||e.is(n)||(n===null?this.insert(e):n.replace(e,t)),this}splice(e,t,n=`next`){let r=n===this.direction?t:Array.from(t).reverse(),i=this,a=this.getParentAtCaret(),o=new Map;for(let t=i.getAdjacentCaret();t!==null&&o.size<e;t=t.getAdjacentCaret()){let e=t.origin.getWritable();o.set(e.getKey(),e)}for(let e of r){if(o.size>0){let t=i.getNodeAtCaret();if(t){if(o.delete(t.getKey()),o.delete(e.getKey()),!(t.is(e)||i.origin.is(e))){let n=e.getParent();n&&n.is(a)&&e.remove(),t.replace(e)}}else t===null&&I(263,Array.from(o).join(` `))}else i.insert(e);i=ju(e,this.direction)}for(let e of o.values())e.remove();return this}},yu=class e extends vu{type=`child`;getLatest(){let e=this.origin.getLatest();return e===this.origin?this:Fu(e,this.direction)}getParentCaret(e=`root`){return ju(Su(this.getParentAtCaret(),e),this.direction)}getFlipped(){let e=xu(this.direction);return ju(this.getNodeAtCaret(),e)||Fu(this.origin,e)}getParentAtCaret(){return this.origin}getChildCaret(){return this}isSameNodeCaret(t){return t instanceof e&&this.direction===t.direction&&this.origin.is(t.origin)}isSamePointCaret(e){return this.isSameNodeCaret(e)}},bu={root:xc,shadowRoot:Gl};function xu(e){return _u[e]}function Su(e,t=`root`){return bu[t](e)?null:e}var Cu=class e extends vu{type=`sibling`;getLatest(){let e=this.origin.getLatest();return e===this.origin?this:ju(e,this.direction)}getSiblingCaret(){return this}getParentAtCaret(){return this.origin.getParent()}getChildCaret(){return V(this.origin)?Fu(this.origin,this.direction):null}getParentCaret(e=`root`){return ju(Su(this.getParentAtCaret(),e),this.direction)}getFlipped(){let e=xu(this.direction);return ju(this.getNodeAtCaret(),e)||Fu(this.origin.getParentOrThrow(),e)}isSamePointCaret(t){return t instanceof e&&this.direction===t.direction&&this.origin.is(t.origin)}isSameNodeCaret(t){return(t instanceof e||t instanceof wu)&&this.direction===t.direction&&this.origin.is(t.origin)}},wu=class e extends vu{type=`text`;offset;constructor(e,t){super(e),this.offset=t}getLatest(){let e=this.origin.getLatest();return e===this.origin?this:Mu(e,this.direction,this.offset)}getParentAtCaret(){return this.origin.getParent()}getChildCaret(){return null}getParentCaret(e=`root`){return ju(Su(this.getParentAtCaret(),e),this.direction)}getFlipped(){return Mu(this.origin,xu(this.direction),this.offset)}isSamePointCaret(t){return t instanceof e&&this.direction===t.direction&&this.origin.is(t.origin)&&this.offset===t.offset}isSameNodeCaret(t){return(t instanceof Cu||t instanceof e)&&this.direction===t.direction&&this.origin.is(t.origin)}getSiblingCaret(){return ju(this.origin,this.direction)}};function Tu(e){return e instanceof wu}function Eu(e){return e instanceof Cu}function Du(e){return e instanceof yu}var Ou={next:class extends wu{direction=`next`;getNodeAtCaret(){return this.origin.getNextSibling()}insert(e){return this.origin.insertAfter(e),this}},previous:class extends wu{direction=`previous`;getNodeAtCaret(){return this.origin.getPreviousSibling()}insert(e){return this.origin.insertBefore(e),this}}},ku={next:class extends Cu{direction=`next`;getNodeAtCaret(){return this.origin.getNextSibling()}insert(e){return this.origin.insertAfter(e),this}},previous:class extends Cu{direction=`previous`;getNodeAtCaret(){return this.origin.getPreviousSibling()}insert(e){return this.origin.insertBefore(e),this}}},Au={next:class extends yu{direction=`next`;getNodeAtCaret(){return this.origin.getFirstChild()}insert(e){return this.origin.splice(0,0,[e]),this}},previous:class extends yu{direction=`previous`;getNodeAtCaret(){return this.origin.getLastChild()}insert(e){return this.origin.splice(this.origin.getChildrenSize(),0,[e]),this}}};function ju(e,t){return e?new ku[t](e):null}function Mu(e,t,n){return e?new Ou[t](e,Nu(e,n)):null}function Nu(e,t,n=`error`){let r=e.getTextContentSize(),i=t===`next`?r:t===`previous`?0:t;return(i<0||i>r)&&(n!==`clamp`&&Ar(284,String(t),String(r),e.getKey()),i=i<0?0:r),i}function Pu(e,t){return new zu(e,t)}function Fu(e,t){return V(e)?new Au[t](e):null}function Iu(e){return e&&e.getChildCaret()||e}function Lu(e){return e&&Iu(e.getAdjacentCaret())}var Ru=class e{type=`node-caret-range`;direction;anchor;focus;constructor(e,t,n){this.anchor=e,this.focus=t,this.direction=n}getLatest(){let t=this.anchor.getLatest(),n=this.focus.getLatest();return t===this.anchor&&n===this.focus?this:new e(t,n,this.direction)}isCollapsed(){return this.anchor.isSamePointCaret(this.focus)}getTextSlices(){let e=e=>{let t=this[e].getLatest();return Tu(t)?function(e,t){let{direction:n,origin:r}=e;return Pu(e,Nu(r,t===`focus`?xu(n):n)-e.offset)}(t,e):null},t=e(`anchor`),n=e(`focus`);if(t&&n){let{caret:e}=t,{caret:r}=n;if(e.isSameNodeCaret(r))return[Pu(e,r.offset-e.offset),null]}return[t,n]}iterNodeCarets(e=`root`){let t=Tu(this.anchor)?this.anchor.getSiblingCaret():this.anchor.getLatest(),n=this.focus.getLatest(),r=Tu(n),i=t=>t.isSameNodeCaret(n)?null:Lu(t)||t.getParentCaret(e);return Uu({hasNext:e=>e!==null&&!(r&&n.isSameNodeCaret(e)),initial:t.isSameNodeCaret(n)?null:i(t),map:e=>e,step:i})}[Symbol.iterator](){return this.iterNodeCarets(`root`)}},zu=class{type=`slice`;caret;distance;constructor(e,t){this.caret=e,this.distance=t}getSliceIndices(){let{distance:e,caret:{offset:t}}=this,n=t+e;return n<t?[n,t]:[t,n]}getTextContent(){let[e,t]=this.getSliceIndices();return this.caret.origin.getTextContent().slice(e,t)}getTextContentSize(){return Math.abs(this.distance)}removeTextSlice(){let{caret:{origin:e,direction:t}}=this,[n,r]=this.getSliceIndices(),i=e.getTextContent();return Mu(e.setTextContent(i.slice(0,n)+i.slice(r)),t,n)}};function Bu(e){return Hu(e,ju(pl(),e.direction))}function Vu(e){return Hu(e,e)}function Hu(e,t){return e.direction!==t.direction&&I(265),new Ru(e,t,e.direction)}function Uu(e){let{initial:t,hasNext:n,step:r,map:i}=e,a=t;return{[Symbol.iterator](){return this},next(){if(!n(a))return{done:!0,value:void 0};let e={done:!1,value:i(a)};return a=r(a),e}}}function Wu(e,t){let n=Ju(e.origin,t.origin);switch(n===null&&I(275,e.origin.getKey(),t.origin.getKey()),n.type){case`same`:{let n=e.type===`text`,r=t.type===`text`;return n&&r?function(e,t){return Math.sign(e-t)}(e.offset,t.offset):e.type===t.type?0:n?-1:r?1:e.type===`child`?-1:1}case`ancestor`:return e.type===`child`?-1:1;case`descendant`:return t.type===`child`?1:-1;case`branch`:return Gu(n)}}function Gu(e){let{a:t,b:n}=e,r=t.__key,i=n.__key,a=t,o=n;for(;a&&o;a=a.getNextSibling(),o=o.getNextSibling()){if(a.__key===i)return-1;if(o.__key===r)return 1}return a===null?1:-1}function Ku(e,t){return t.is(e)}function qu(e){return V(e)?[e.getLatest(),null]:[e.getParent(),e.getLatest()]}function Ju(e,t){if(e.is(t))return{commonAncestor:e,type:`same`};let n=new Map;for(let[t,r]=qu(e);t;r=t,t=t.getParent())n.set(t,r);for(let[r,i]=qu(t);r;i=r,r=r.getParent()){let a=n.get(r);if(a!==void 0)return a===null?(Ku(e,r)||I(276),{commonAncestor:r,type:`ancestor`}):i===null?(Ku(t,r)||I(277),{commonAncestor:r,type:`descendant`}):((V(a)||Ku(e,a))&&(V(i)||Ku(t,i))&&r.is(a.getParent())&&r.is(i.getParent())||I(278),{a,b:i,commonAncestor:r,type:`branch`})}return null}function Yu(e,t){let{type:n,key:r,offset:i}=e,a=Jl(e.key);return n===`text`?(R(a)||I(266,a.getType(),r),Mu(a,t,i)):(V(a)||I(267,a.getType(),r),cd(a,e.offset,t))}function Xu(e,t){let{origin:n,direction:r}=t,i=r===`next`;Tu(t)?e.set(n.getKey(),t.offset,`text`):Eu(t)?R(n)?e.set(n.getKey(),Nu(n,r),`text`):e.set(n.getParentOrThrow().getKey(),n.getIndexWithinParent()+(i?1:0),`element`):(Du(t)&&V(n)||I(268),e.set(n.getKey(),i?0:n.getChildrenSize(),`element`))}function Zu(e){let t=B(),n=z(t)?t:As();return Qu(n,e),hl(n),n}function Qu(e,t){Xu(e.anchor,t.anchor),Xu(e.focus,t.focus)}function $u(e){let{anchor:t,focus:n}=e,r=Yu(t,`next`),i=Yu(n,`next`),a=Wu(r,i)<=0?`next`:`previous`;return Hu(od(r,a),od(i,a))}function ed(e){let{direction:t,origin:n}=e,r=ju(n,xu(t)).getNodeAtCaret();return r?ju(r,t):Fu(n.getParentOrThrow(),t)}function td(e,t=`root`){let n=[e];for(let r=Du(e)?e.getParentCaret(t):e.getSiblingCaret();r!==null;r=r.getParentCaret(t))n.push(ed(r));return n}function nd(e){return!!e&&e.origin.isAttached()}function rd(e,t=`removeEmptySlices`){if(e.isCollapsed())return e;let n=`root`,r=`next`,i=t,a=sd(e,r),o=td(a.anchor,n),s=td(a.focus.getFlipped(),n),c=new Set,l=[];for(let e of a.iterNodeCarets(n))if(Du(e))c.add(e.origin.getKey());else if(Eu(e)){let{origin:t}=e;V(t)&&!c.has(t.getKey())||l.push(t)}for(let e of l)e.remove();for(let e of a.getTextSlices()){if(!e)continue;let{origin:t}=e.caret,n=t.getTextContentSize(),a=ed(ju(t,r)),c=t.getMode();if(Math.abs(e.distance)===n&&i===`removeEmptySlices`||c===`token`&&e.distance!==0)a.remove();else if(e.distance!==0){i=`removeEmptySlices`;let t=e.removeTextSlice(),n=e.caret.origin;if(c===`segmented`){let e=t.origin,n=cs(e.getTextContent()).setStyle(e.getStyle()).setFormat(e.getFormat());a.replaceOrInsert(n),t=Mu(n,r,t.offset)}n.is(o[0].origin)&&(o[0]=t),n.is(s[0].origin)&&(s[0]=t.getFlipped())}}let u,d;for(let e of o)if(nd(e)){u=id(e);break}for(let e of s)if(nd(e)){d=id(e);break}let f=function(e,t,n){if(!e||!t)return null;let r=e.getParentAtCaret(),i=t.getParentAtCaret();if(!r||!i)return null;let a=r.getParents().reverse();a.push(r);let o=i.getParents().reverse();o.push(i);let s=Math.min(a.length,o.length),c;for(c=0;c<s&&a[c]===o[c];c++);let l=(e,t)=>{let n;for(let r=c;r<e.length;r++){let i=e[r];if(Gl(i))return;!n&&t(i)&&(n=i)}return n},u=l(a,iu),d=u&&l(o,e=>n.has(e.getKey())&&iu(e));return u&&d?[u,d]:null}(u,d,c);if(f){let[e,t]=f;Fu(e,`previous`).splice(0,t.getChildren());let n=t.getParent();for(t.remove(!0);n&&n.isEmpty();){let e=n;n=n.getParent(),e.remove(!0)}}let p=[u,d,...o,...s].find(nd);if(p)return Vu(od(id(p),e.direction));I(269,JSON.stringify(o.map(e=>e.origin.__key)))}function id(e){let t=function(e){let t=e;for(;Du(t);){let e=Lu(t);if(!Du(e))break;t=e}return t}(e.getLatest()),{direction:n}=t;if(R(t.origin))return Tu(t)?t:Mu(t.origin,n,n);let r=t.getAdjacentCaret();return Eu(r)&&R(r.origin)?Mu(r.origin,n,xu(n)):t}function ad(e){return Tu(e)&&e.offset!==Nu(e.origin,e.direction)}function od(e,t){return e.direction===t?e:e.getFlipped()}function sd(e,t){return e.direction===t?e:Hu(od(e.focus,t),od(e.anchor,t))}function cd(e,t,n){let r=Fu(e,`next`);for(let e=0;e<t;e++){let e=r.getAdjacentCaret();if(e===null)break;r=e}return od(r,n)}function ld(e){return e}function ud(e){return e}function dd(e,t){if(!t||e===t)return e;for(let n in t)if(e[n]!==t[n])return{...e,...t};return e}function fd(...e){let t=[];for(let n of e)if(n&&typeof n==`string`)for(let[e]of n.matchAll(/\S+/g))t.push(e);return t}function pd(e,...t){let n=fd(...t);n.length>0&&e.classList.add(...n)}function md(...e){return()=>{for(let t=e.length-1;t>=0;t--)e[t]();e.length=0}}function hd(){return pl().getTextContent()}function gd(e,t=!0){if(e)return!1;let n=hd();return t&&(n=n.trim()),n===``}function _d(e){if(!gd(e,!1))return!1;let t=pl().getChildren(),n=t.length;if(n>1)return!1;for(let e=0;e<n;e++){let n=t[e];if(yc(n))return!1;if(V(n)){if(!jc(n)||n.__indent!==0)return!1;let t=n.getChildren(),r=t.length;for(let n=0;n<r;n++){let n=t[e];if(!R(n))return!1}}}return!0}function vd(e){return()=>_d(e)}function yd(e){let t=au().getElementByKey(e.getKey());if(t===null)return null;let n=t.ownerDocument.defaultView;return n===null?null:n.getComputedStyle(t)}function bd(e){return yd(xc(e)?e:e.getParentOrThrow())}function xd(e,t,n=`self`){let r=e.getStartEndPoints();if(t.isSelected(e)&&!Zc(t)&&r!==null){let[i,a]=r,o=e.isBackward(),s=i.getNode(),c=a.getNode(),l=t.is(s),u=t.is(c);if(l||u){let[r,i]=xs(e),a=s.is(c),l=t.is(o?c:s),u=t.is(o?s:c),d,f=0;a?(f=r>i?i:r,d=r>i?r:i):l?(f=o?i:r,d=void 0):u&&(f=0,d=o?r:i);let p=t.__text.slice(f,d);p!==t.__text&&(n===`clone`&&(t=uu(t)),t.__text=p)}}return t}function Sd(e){let t=Cd(e);return t!==null&&t.writingMode===`vertical-rl`}function Cd(e){let t=e.anchor.getNode();return V(t)?yd(t):bd(t)}function wd(e,t){let n=Sd(e)?!t:t;Ed(e)&&(n=!n);let r=Yu(e.focus,n?`previous`:`next`);if(ad(r))return!1;for(let e of Bu(r)){if(Du(e))return!e.origin.isInline();if(!V(e.origin)){if(yc(e.origin))return!0;break}}return!1}function Td(e,t,n,r){e.modify(t?`extend`:`move`,n,r)}function Ed(e){let t=Cd(e);return t!==null&&t.direction===`rtl`}function Dd(e,t,n){let r=Ed(e),i;i=Sd(e)||r?!n:n,Td(e,t,i,`character`)}var Od=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0,kd=Od&&`documentMode`in document?document.documentMode:null;Od&&/Mac|iPod|iPhone|iPad/.test(navigator.platform),Od&&/^(?!.*Seamonkey)(?=.*Firefox).*/i.test(navigator.userAgent),!(!Od||!(`InputEvent`in window)||kd)&&`getTargetRanges`in new window.InputEvent(`input`),Od&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&window.MSStream,Od&&/Android/.test(navigator.userAgent),Od&&/Version\/[\d.]+.*Safari/.test(navigator.userAgent),Od&&/^(?=.*Chrome).*/i.test(navigator.userAgent),Od&&/AppleWebKit\/[\d.]+/.test(navigator.userAgent);function Ad(e,t){return e!==null&&Object.getPrototypeOf(e).constructor.name===t.name}var jd=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0?P.useLayoutEffect:P.useEffect;function Md({editor:e,ariaActiveDescendant:t,ariaAutoComplete:n,ariaControls:r,ariaDescribedBy:i,ariaErrorMessage:a,ariaExpanded:o,ariaInvalid:s,ariaLabel:c,ariaLabelledBy:l,ariaMultiline:u,ariaOwns:d,ariaRequired:f,autoCapitalize:p,className:m,id:h,role:g=`textbox`,spellCheck:_=!0,style:v,tabIndex:y,"data-testid":b,...x},S){let[C,w]=(0,P.useState)(e.isEditable()),T=(0,P.useCallback)(t=>{t&&t.ownerDocument&&t.ownerDocument.defaultView?e.setRootElement(t):e.setRootElement(null)},[e]),E=(0,P.useMemo)(()=>function(...e){return t=>{for(let n of e)typeof n==`function`?n(t):n!=null&&(n.current=t)}}(S,T),[T,S]);return jd(()=>(w(e.isEditable()),e.registerEditableListener(e=>{w(e)})),[e]),(0,N.jsx)(`div`,{"aria-activedescendant":C?t:void 0,"aria-autocomplete":C?n:`none`,"aria-controls":C?r:void 0,"aria-describedby":i,...a==null?{}:{"aria-errormessage":a},"aria-expanded":C&&g===`combobox`?!!o:void 0,...s==null?{}:{"aria-invalid":s},"aria-label":c,"aria-labelledby":l,"aria-multiline":u,"aria-owns":C?d:void 0,"aria-readonly":!C||void 0,"aria-required":f,autoCapitalize:p,className:m,contentEditable:C,"data-testid":b,id:h,ref:E,role:g,spellCheck:_,style:v,tabIndex:y,...x})}var Nd=(0,P.forwardRef)(Md);function Pd(e){return e.getEditorState().read(vd(e.isComposing()))}var Fd=(0,P.forwardRef)(Id);function Id(e,t){let{placeholder:n,...r}=e,[i]=kr();return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(Nd,{editor:i,...r,ref:t}),n!=null&&(0,N.jsx)(Ld,{editor:i,content:n})]})}function Ld({content:e,editor:t}){let n=function(e){let[t,n]=(0,P.useState)(()=>Pd(e));return jd(()=>{function t(){n(Pd(e))}return t(),md(e.registerUpdateListener(()=>{t()}),e.registerEditableListener(()=>{t()}))},[e]),t}(t),[r,i]=(0,P.useState)(t.isEditable());if((0,P.useLayoutEffect)(()=>(i(t.isEditable()),t.registerEditableListener(e=>{i(e)})),[t]),!n)return null;let a=null;return typeof e==`function`?a=e(r):e!==null&&(a=e),a===null?null:(0,N.jsx)(`div`,{"aria-hidden":!0,children:a})}var Rd=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0,zd=Rd?P.useLayoutEffect:P.useEffect,Bd={tag:zo};function Vd({initialConfig:e,children:t}){let n=(0,P.useMemo)(()=>{let{theme:t,namespace:n,nodes:r,onError:i,editorState:a,html:o}=e,s=Or(null,t),c=Pc({editable:e.editable,html:o,namespace:n,nodes:r,onError:e=>i(e,c),theme:t});return function(e,t){if(t!==null){if(t===void 0)e.update(()=>{let t=pl();if(t.isEmpty()){let n=Ac();t.append(n);let r=Rd?document.activeElement:null;(B()!==null||r!==null&&r===e.getRootElement())&&n.select()}},Bd);else if(t!==null)switch(typeof t){case`string`:{let n=e.parseEditorState(t);e.setEditorState(n,Bd);break}case`object`:e.setEditorState(t,Bd);break;case`function`:e.update(()=>{pl().isEmpty()&&t(e)},Bd)}}}(c,a),[c,s]},[]);return zd(()=>{let t=e.editable,[r]=n;r.setEditable(t===void 0||t)},[]),(0,N.jsx)(Dr.Provider,{value:n,children:t})}function Hd({editorRef:e}){let[t]=kr();return P.useEffect(()=>{typeof e==`function`?e(t):typeof e==`object`&&(e.current=t)},[t]),null}var Ud=(0,P.createContext)(null),Wd={didCatch:!1,error:null},Gd=class extends P.Component{constructor(e){super(e),this.resetErrorBoundary=this.resetErrorBoundary.bind(this),this.state=Wd}static getDerivedStateFromError(e){return{didCatch:!0,error:e}}resetErrorBoundary(...e){let{error:t}=this.state;t!==null&&(this.props.onReset?.({args:e,reason:`imperative-api`}),this.setState(Wd))}componentDidCatch(e,t){this.props.onError?.(e,t)}componentDidUpdate(e,t){let{didCatch:n}=this.state,{resetKeys:r}=this.props;n&&t.error!==null&&Kd(e.resetKeys,r)&&(this.props.onReset?.({next:r,prev:e.resetKeys,reason:`keys`}),this.setState(Wd))}render(){let{children:e,fallbackRender:t,FallbackComponent:n,fallback:r}=this.props,{didCatch:i,error:a}=this.state,o=e;if(i){let e={error:a,resetErrorBoundary:this.resetErrorBoundary};if(typeof t==`function`)o=t(e);else if(n)o=(0,P.createElement)(n,e);else if(r!==void 0)o=r;else throw a}return(0,P.createElement)(Ud.Provider,{value:{didCatch:i,error:a,resetErrorBoundary:this.resetErrorBoundary}},o)}};function Kd(e=[],t=[]){return e.length!==t.length||e.some((e,n)=>!Object.is(e,t[n]))}function qd({children:e,onError:t}){return(0,N.jsx)(Gd,{fallback:(0,N.jsx)(`div`,{style:{border:`1px solid #f00`,color:`#f00`,padding:`8px`},children:`An error was thrown.`}),onError:t,children:e})}var Jd=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0?P.useLayoutEffect:P.useEffect;function Yd(e){return{initialValueFn:()=>e.isEditable(),subscribe:t=>e.registerEditableListener(t)}}function Xd(){return function(e){let[t]=kr(),n=(0,P.useMemo)(()=>e(t),[t,e]),[r,i]=(0,P.useState)(()=>n.initialValueFn()),a=(0,P.useRef)(r);return Jd(()=>{let{initialValueFn:e,subscribe:t}=n,r=e();return a.current!==r&&(a.current=r,i(r)),t(e=>{a.current=e,i(e)})},[n,e]),r}(Yd)}var Zd=Symbol.for(`preact-signals`);function Qd(){if(nf>1)return void nf--;let e,t=!1;for(function(){let e=tf;for(tf=void 0;e!==void 0;)e.S.v===e.v&&(e.S.i=e.i),e=e.o}();$d!==void 0;){let n=$d;for($d=void 0,rf++;n!==void 0;){let r=n.u;if(n.u=void 0,n.f&=-3,!(8&n.f)&&lf(n))try{n.c()}catch(n){t||=(e=n,!0)}n=r}}if(rf=0,nf--,t)throw e}var W,$d;function ef(e){let t=W;W=void 0;try{return e()}finally{W=t}}var tf,nf=0,rf=0,af=0,of=0;function sf(e){if(W===void 0)return;let t=e.n;return t===void 0||t.t!==W?(t={i:0,S:e,p:W.s,n:void 0,t:W,e:void 0,x:void 0,r:t},W.s!==void 0&&(W.s.n=t),W.s=t,e.n=t,32&W.f&&e.S(t),t):t.i===-1?(t.i=0,t.n!==void 0&&(t.n.p=t.p,t.p!==void 0&&(t.p.n=t.n),t.p=W.s,t.n=void 0,W.s.n=t,W.s=t),t):void 0}function cf(e,t){this.v=e,this.i=0,this.n=void 0,this.t=void 0,this.l=0,this.W=t?.watched,this.Z=t?.unwatched,this.name=t?.name}function lf(e){for(let t=e.s;t!==void 0;t=t.n)if(t.S.i!==t.i||!t.S.h()||t.S.i!==t.i)return!0;return!1}function uf(e){for(let t=e.s;t!==void 0;t=t.n){let n=t.S.n;if(n!==void 0&&(t.r=n),t.S.n=t,t.i=-1,t.n===void 0){e.s=t;break}}}function df(e){let t,n=e.s;for(;n!==void 0;){let e=n.p;n.i===-1?(n.S.U(n),e!==void 0&&(e.n=n.n),n.n!==void 0&&(n.n.p=e)):t=n,n.S.n=n.r,n.r!==void 0&&(n.r=void 0),n=e}e.s=t}function ff(e,t){cf.call(this,void 0),this.x=e,this.s=void 0,this.g=of-1,this.f=4,this.W=t?.watched,this.Z=t?.unwatched,this.name=t?.name}function pf(e){let t=e.m;if(e.m=void 0,typeof t==`function`){nf++;let n=W;W=void 0;try{t()}catch(t){throw e.f&=-2,e.f|=8,mf(e),t}finally{W=n,Qd()}}}function mf(e){for(let t=e.s;t!==void 0;t=t.n)t.S.U(t);e.x=void 0,e.s=void 0,pf(e)}function hf(e){if(W!==this)throw Error(`Out-of-order effect`);df(this),W=e,this.f&=-2,8&this.f&&mf(this),Qd()}function gf(e,t){this.x=e,this.m=void 0,this.s=void 0,this.u=void 0,this.f=32,this.name=t?.name}function _f(e,t){let n=new gf(e,t);try{n.c()}catch(e){throw n.d(),e}let r=n.d.bind(n);return r[Symbol.dispose]=r,r}cf.prototype.brand=Zd,cf.prototype.h=function(){return!0},cf.prototype.S=function(e){let t=this.t;t!==e&&e.e===void 0&&(e.x=t,this.t=e,t===void 0?ef(()=>{var e;(e=this.W)==null||e.call(this)}):t.e=e)},cf.prototype.U=function(e){if(this.t!==void 0){let t=e.e,n=e.x;t!==void 0&&(t.x=n,e.e=void 0),n!==void 0&&(n.e=t,e.x=void 0),e===this.t&&(this.t=n,n===void 0&&ef(()=>{var e;(e=this.Z)==null||e.call(this)}))}},cf.prototype.subscribe=function(e){return _f(()=>{let t=this.value,n=W;W=void 0;try{e(t)}finally{W=n}},{name:`sub`})},cf.prototype.valueOf=function(){return this.value},cf.prototype.toString=function(){return this.value+``},cf.prototype.toJSON=function(){return this.value},cf.prototype.peek=function(){let e=W;W=void 0;try{return this.value}finally{W=e}},Object.defineProperty(cf.prototype,`value`,{get(){let e=sf(this);return e!==void 0&&(e.i=this.i),this.v},set(e){if(e!==this.v){if(rf>100)throw Error(`Cycle detected`);(function(e){nf!==0&&rf===0&&e.l!==af&&(e.l=af,tf={S:e,v:e.v,i:e.i,o:tf})})(this),this.v=e,this.i++,of++,nf++;try{for(let e=this.t;e!==void 0;e=e.x)e.t.N()}finally{Qd()}}}}),ff.prototype=new cf,ff.prototype.h=function(){if(this.f&=-3,1&this.f)return!1;if((36&this.f)==32||(this.f&=-5,this.g===of))return!0;if(this.g=of,this.f|=1,this.i>0&&!lf(this))return this.f&=-2,!0;let e=W;try{uf(this),W=this;let e=this.x();(16&this.f||this.v!==e||this.i===0)&&(this.v=e,this.f&=-17,this.i++)}catch(e){this.v=e,this.f|=16,this.i++}return W=e,df(this),this.f&=-2,!0},ff.prototype.S=function(e){if(this.t===void 0){this.f|=36;for(let e=this.s;e!==void 0;e=e.n)e.S.S(e)}cf.prototype.S.call(this,e)},ff.prototype.U=function(e){if(this.t!==void 0&&(cf.prototype.U.call(this,e),this.t===void 0)){this.f&=-33;for(let e=this.s;e!==void 0;e=e.n)e.S.U(e)}},ff.prototype.N=function(){if(!(2&this.f)){this.f|=6;for(let e=this.t;e!==void 0;e=e.x)e.t.N()}},Object.defineProperty(ff.prototype,`value`,{get(){if(1&this.f)throw Error(`Cycle detected`);let e=sf(this);if(this.h(),e!==void 0&&(e.i=this.i),16&this.f)throw this.v;return this.v}}),gf.prototype.c=function(){let e=this.S();try{if(8&this.f||this.x===void 0)return;let e=this.x();typeof e==`function`&&(this.m=e)}finally{e()}},gf.prototype.S=function(){if(1&this.f)throw Error(`Cycle detected`);this.f|=1,this.f&=-9,pf(this),uf(this),nf++;let e=W;return W=this,hf.bind(this,e)},gf.prototype.N=function(){2&this.f||(this.f|=2,this.u=$d,$d=this)},gf.prototype.d=function(){this.f|=8,1&this.f||mf(this)},gf.prototype.dispose=function(){this.d()};function vf(e){return(typeof e.nodes==`function`?e.nodes():e.nodes)||[]}yi(`format`,{parse:e=>typeof e==`number`?e:0});function G(e,...t){let n=new URL(`https://lexical.dev/docs/error`),r=new URLSearchParams;r.append(`code`,e);for(let e of t)r.append(`v`,e);throw n.search=r.toString(),Error(`Minified Lexical error #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}function yf(e,t){if(e&&t&&!Array.isArray(t)&&typeof e==`object`&&typeof t==`object`){let n=e,r=t;for(let e in r)n[e]=yf(n[e],r[e]);return e}return t}var bf=0,xf=1,Sf=2,Cf=3,wf=4,Tf=5,Ef=6,Df=7;function Of(e){return e.id===bf}function kf(e){return e.id===Sf}function Af(e){return function(e){return e.id===xf}(e)||G(305,String(e.id),String(xf)),Object.assign(e,{id:Sf})}var jf=new Set,Mf=class{builder;configs;_dependency;_peerNameSet;extension;state;_signal;constructor(e,t){this.builder=e,this.extension=t,this.configs=new Set,this.state={id:bf}}mergeConfigs(){let e=this.extension.config||{},t=this.extension.mergeConfig?this.extension.mergeConfig.bind(this.extension):dd;for(let n of this.configs)e=t(e,n);return e}init(e){let t=this.state;kf(t)||G(306,String(t.id));let n={getDependency:this.getInitDependency.bind(this),getDirectDependentNames:this.getDirectDependentNames.bind(this),getPeer:this.getInitPeer.bind(this),getPeerNameSet:this.getPeerNameSet.bind(this)},r={...n,getDependency:this.getDependency.bind(this),getInitResult:this.getInitResult.bind(this),getPeer:this.getPeer.bind(this)},i=function(e,t,n){return Object.assign(e,{config:t,id:Cf,registerState:n})}(t,this.mergeConfigs(),n),a;this.state=i,this.extension.init&&(a=this.extension.init(e,i.config,n)),this.state=function(e,t,n){return Object.assign(e,{id:wf,initResult:t,registerState:n})}(i,a,r)}build(e){let t=this.state,n;t.id!==wf&&G(307,String(t.id),String(Tf)),this.extension.build&&(n=this.extension.build(e,t.config,t.registerState));let r={...t.registerState,getOutput:()=>n,getSignal:this.getSignal.bind(this)};this.state=function(e,t,n){return Object.assign(e,{id:Tf,output:t,registerState:n})}(t,n,r)}register(e,t){this._signal=t;let n=this.state;n.id!==Tf&&G(308,String(n.id),String(Tf));let r=this.extension.register&&this.extension.register(e,n.config,n.registerState);return this.state=function(e){return Object.assign(e,{id:Ef})}(n),()=>{let e=this.state;e.id!==Df&&G(309,String(n.id),String(Df)),this.state=function(e){return Object.assign(e,{id:Tf})}(e),r&&r()}}afterRegistration(e){let t=this.state,n;return t.id!==Ef&&G(310,String(t.id),String(Ef)),this.extension.afterRegistration&&(n=this.extension.afterRegistration(e,t.config,t.registerState)),this.state=function(e){return Object.assign(e,{id:Df})}(t),n}getSignal(){return this._signal===void 0&&G(311),this._signal}getInitResult(){this.extension.init===void 0&&G(312,this.extension.name);let e=this.state;return function(e){return e.id>=wf}(e)||G(313,String(e.id),String(wf)),e.initResult}getInitPeer(e){let t=this.builder.extensionNameMap.get(e);return t?t.getExtensionInitDependency():void 0}getExtensionInitDependency(){let e=this.state;return function(e){return e.id>=Cf}(e)||G(314,String(e.id),String(Cf)),{config:e.config}}getPeer(e){let t=this.builder.extensionNameMap.get(e);return t?t.getExtensionDependency():void 0}getInitDependency(e){let t=this.builder.getExtensionRep(e);return t===void 0&&G(315,this.extension.name,e.name),t.getExtensionInitDependency()}getDependency(e){let t=this.builder.getExtensionRep(e);return t===void 0&&G(315,this.extension.name,e.name),t.getExtensionDependency()}getState(){let e=this.state;return function(e){return e.id>=Df}(e)||G(316,String(e.id),String(Df)),e}getDirectDependentNames(){return this.builder.incomingEdges.get(this.extension.name)||jf}getPeerNameSet(){let e=this._peerNameSet;return e||(e=new Set((this.extension.peerDependencies||[]).map(([e])=>e)),this._peerNameSet=e),e}getExtensionDependency(){if(!this._dependency){let e=this.state;(function(e){return e.id>=Tf})(e)||G(317,this.extension.name),this._dependency={config:e.config,init:e.initResult,output:e.output}}return this._dependency}},Nf={tag:zo};function Pf(){let e=pl();e.isEmpty()&&e.append(Ac())}var Ff=ld({config:ud({setOptions:Nf,updateOptions:Nf}),init:({$initialEditorState:e=Pf})=>({$initialEditorState:e,initialized:!1}),afterRegistration(e,{updateOptions:t,setOptions:n},r){let i=r.getInitResult();if(!i.initialized){i.initialized=!0;let{$initialEditorState:r}=i;if(Tc(r))e.setEditorState(r,n);else if(typeof r==`function`)e.update(()=>{r(e)},t);else if(r&&(typeof r==`string`||typeof r==`object`)){let t=e.parseEditorState(r);e.setEditorState(t,n)}}return()=>{}},name:`@lexical/extension/InitialState`,nodes:[bc,$o,Ho,us,Oc]}),If=Symbol.for(`@lexical/extension/LexicalBuilder`);function Lf(){}function Rf(e){throw e}function zf(e){return Array.isArray(e)?e:[e]}var Bf=`0.43.0+prod.esm`,Vf=class e{roots;extensionNameMap;outgoingConfigEdges;incomingEdges;conflicts;_sortedExtensionReps;PACKAGE_VERSION;constructor(e){this.outgoingConfigEdges=new Map,this.incomingEdges=new Map,this.extensionNameMap=new Map,this.conflicts=new Map,this.PACKAGE_VERSION=Bf,this.roots=e;for(let t of e)this.addExtension(t)}static fromExtensions(t){let n=[zf(Ff)];for(let e of t)n.push(zf(e));return new e(n)}static maybeFromEditor(t){let n=t[If];return n&&(n.PACKAGE_VERSION!==Bf&&G(292,n.PACKAGE_VERSION,Bf),n instanceof e||G(293)),n}static fromEditor(t){let n=e.maybeFromEditor(t);return n===void 0&&G(294),n}constructEditor(){let{$initialEditorState:e,onError:t,...n}=this.buildCreateEditorArgs(),r=Object.assign(Pc({...n,...t?{onError:e=>{t(e,r)}}:{}}),{[If]:this});for(let e of this.sortedExtensionReps())e.build(r);return r}buildEditor(){let e=Lf;function t(){try{e()}finally{e=Lf}}let n=Object.assign(this.constructEditor(),{dispose:t,[Symbol.dispose]:t});return e=md(this.registerEditor(n),()=>n.setRootElement(null)),n}hasExtensionByName(e){return this.extensionNameMap.has(e)}getExtensionRep(e){let t=this.extensionNameMap.get(e.name);if(t)return t.extension!==e&&G(295,e.name),t}addEdge(e,t,n){let r=this.outgoingConfigEdges.get(e);r?r.set(t,n):this.outgoingConfigEdges.set(e,new Map([[t,n]]));let i=this.incomingEdges.get(t);i?i.add(e):this.incomingEdges.set(t,new Set([e]))}addExtension(e){this._sortedExtensionReps!==void 0&&G(296);let[t]=zf(e);typeof t.name!=`string`&&G(297,typeof t.name);let n=this.extensionNameMap.get(t.name);if(n!==void 0&&n.extension!==t&&G(298,t.name),!n){n=new Mf(this,t),this.extensionNameMap.set(t.name,n);let e=this.conflicts.get(t.name);typeof e==`string`&&G(299,t.name,e);for(let e of t.conflictsWith||[])this.extensionNameMap.has(e)&&G(299,t.name,e),this.conflicts.set(e,t.name);for(let e of t.dependencies||[]){let n=zf(e);this.addEdge(t.name,n[0].name,n.slice(1)),this.addExtension(n)}for(let[e,n]of t.peerDependencies||[])this.addEdge(t.name,e,n?[n]:[])}}sortedExtensionReps(){if(this._sortedExtensionReps)return this._sortedExtensionReps;let e=[],t=(n,r)=>{let i=n.state;if(kf(i))return;let a=n.extension.name;var o;Of(i)||G(300,a,r||`[unknown]`),Of(o=i)||G(304,String(o.id),String(bf)),i=Object.assign(o,{id:xf}),n.state=i;let s=this.outgoingConfigEdges.get(a);if(s)for(let e of s.keys()){let n=this.extensionNameMap.get(e);n&&t(n,a)}i=Af(i),n.state=i,e.push(n)};for(let e of this.extensionNameMap.values())Of(e.state)&&t(e);for(let t of e)for(let[e,n]of this.outgoingConfigEdges.get(t.extension.name)||[])if(n.length>0){let t=this.extensionNameMap.get(e);if(t)for(let e of n)t.configs.add(e)}for(let[e,...t]of this.roots)if(t.length>0){let n=this.extensionNameMap.get(e.name);n===void 0&&G(301,e.name);for(let e of t)n.configs.add(e)}return this._sortedExtensionReps=e,this._sortedExtensionReps}registerEditor(e){let t=this.sortedExtensionReps(),n=new AbortController,r=[()=>n.abort()],i=n.signal;for(let n of t){let t=n.register(e,i);t&&r.push(t)}for(let n of t){let t=n.afterRegistration(e);t&&r.push(t)}return md(...r)}buildCreateEditorArgs(){let e={},t=new Set,n=new Map,r=new Map,i={},a={},o=this.sortedExtensionReps();for(let s of o){let{extension:o}=s;if(o.onError!==void 0&&(e.onError=o.onError),o.disableEvents!==void 0&&(e.disableEvents=o.disableEvents),o.parentEditor!==void 0&&(e.parentEditor=o.parentEditor),o.editable!==void 0&&(e.editable=o.editable),o.namespace!==void 0&&(e.namespace=o.namespace),o.$initialEditorState!==void 0&&(e.$initialEditorState=o.$initialEditorState),o.nodes)for(let e of vf(o)){if(typeof e!=`function`){let t=n.get(e.replace);t&&G(302,o.name,e.replace.name,t.extension.name),n.set(e.replace,s)}t.add(e)}if(o.html){if(o.html.export)for(let[e,t]of o.html.export.entries())r.set(e,t);o.html.import&&Object.assign(i,o.html.import)}o.theme&&yf(a,o.theme)}Object.keys(a).length>0&&(e.theme=a),t.size&&(e.nodes=[...t]);let s=Object.keys(i).length>0,c=r.size>0;(s||c)&&(e.html={},s&&(e.html.import=i),c&&(e.html.export=r));for(let t of o)t.init(e);return e.onError||=Rf,e}},Hf=class e extends vc{static getType(){return`horizontalrule`}static clone(t){return new e(t.__key)}static importJSON(e){return Wf().updateFromJSON(e)}static importDOM(){return{hr:()=>({conversion:Uf,priority:0})}}exportDOM(){return{element:document.createElement(`hr`)}}createDOM(e){let t=document.createElement(`hr`);return pd(t,e.theme.hr),t}getTextContent(){return`
|
|
12
|
-
`}isInline(){return!1}updateDOM(){return!1}};function Uf(){return{node:Wf()}}function Wf(){return hu(Hf)}var Gf=ld({name:`@lexical/react/ReactProvider`});function Kf(e){let t=window.location.origin,n=n=>{if(n.origin!==t)return;let r=e.getRootElement();if(document.activeElement!==r)return;let i=n.data;if(typeof i==`string`){let t;try{t=JSON.parse(i)}catch{return}if(t&&t.protocol===`nuanria_messaging`&&t.type===`request`){let r=t.payload;if(r&&r.functionId===`makeChanges`){let t=r.args;if(t){let[r,i,a,o,s]=t;e.update(()=>{let e=B();if(z(e)){let t=e.anchor,c=t.getNode(),l=0,u=0;if(R(c)&&r>=0&&i>=0&&(l=r,u=r+i,e.setTextNodeRange(c,l,c,u)),l===u&&a===``||(e.insertRawText(a),c=t.getNode()),R(c)){l=o,u=o+s;let t=c.getTextContentSize();l=l>t?t:l,u=u>t?t:u,e.setTextNodeRange(c,l,c,u)}n.stopImmediatePropagation()}})}}}}};return window.addEventListener(`message`,n,!0),()=>{window.removeEventListener(`message`,n,!0)}}function qf(e,t){if(typeof document>`u`||typeof window>`u`&&global.window===void 0)throw Error(`To use $generateHtmlFromNodes in headless mode please initialize a headless browser implementation such as JSDom before calling this function.`);let n=document.createElement(`div`),r=pl().getChildren();for(let i=0;i<r.length;i++)Jf(e,r[i],n,t);return n.innerHTML}function Jf(e,t,n,r=null){let i=r===null||t.isSelected(r),a=V(t)&&t.excludeFromCopy(`html`),o=t;r!==null&&R(t)&&(o=xd(r,t,`clone`));let s=V(o)?o.getChildren():[],c=Hc(e,o.getType()),l;l=c&&c.exportDOM!==void 0?c.exportDOM(e,o):o.exportDOM(e);let{element:u,after:d}=l;if(!u)return!1;let f=document.createDocumentFragment();for(let n=0;n<s.length;n++){let a=s[n],o=Jf(e,a,f,r);!i&&V(t)&&o&&t.extractWithChild(a,r,`html`)&&(i=!0)}if(i&&!a){if(($l(u)||tu(u))&&u.append(f),n.append(u),d){let e=d.call(o,u);e&&(tu(u)?u.replaceChildren(e):u.replaceWith(e))}}else n.append(f);return i}function Yf(e,...t){let n=new URL(`https://lexical.dev/docs/error`),r=new URLSearchParams;r.append(`code`,e);for(let e of t)r.append(`v`,e);throw n.search=r.toString(),Error(`Minified Lexical error #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}function Xf(e,t=B()){return t??Yf(166),z(t)&&t.isCollapsed()||t.getNodes().length===0?``:qf(e,t)}function Zf(e,t){let n=e.getData(`text/plain`)||e.getData(`text/uri-list`);n!=null&&t.insertRawText(n)}var Qf=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0,$f=Qf&&`documentMode`in document?document.documentMode:null,ep=Qf&&/Mac|iPod|iPhone|iPad/.test(navigator.platform),tp=!(!Qf||!(`InputEvent`in window)||$f)&&`getTargetRanges`in new window.InputEvent(`input`),np=Qf&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream,rp=Qf&&/Android/.test(navigator.userAgent),ip=Qf&&/Version\/[\d.]+.*Safari/.test(navigator.userAgent)&&!rp,ap=Qf&&/^(?=.*Chrome).*/i.test(navigator.userAgent),op=Qf&&/AppleWebKit\/[\d.]+/.test(navigator.userAgent)&&ep&&!ap;function sp(e,t){t.update(()=>{if(e!==null){let n=Ad(e,KeyboardEvent)?null:e.clipboardData,r=B();if(r!==null&&!r.isCollapsed()&&n!=null){e.preventDefault();let i=Xf(t);i!==null&&n.setData(`text/html`,i),n.setData(`text/plain`,r.getTextContent())}}})}function cp(e){return md(e.registerCommand(ba,e=>{let t=B();return!!z(t)&&(t.deleteCharacter(e),!0)},0),e.registerCommand(Ea,e=>{let t=B();return!!z(t)&&(t.deleteWord(e),!0)},0),e.registerCommand(Da,e=>{let t=B();return!!z(t)&&(t.deleteLine(e),!0)},0),e.registerCommand(Ca,e=>{let t=B();if(!z(t))return!1;if(typeof e==`string`)t.insertText(e);else{let n=e.dataTransfer;if(n!=null)Zf(n,t);else{let n=e.data;n&&t.insertText(n)}}return!0},0),e.registerCommand(Ta,()=>{let e=B();return!!z(e)&&(e.removeText(),!0)},0),e.registerCommand(xa,e=>{let t=B();return!!z(t)&&(t.insertLineBreak(e),!0)},0),e.registerCommand(Sa,()=>{let e=B();return!!z(e)&&(e.insertLineBreak(),!0)},0),e.registerCommand(Pa,e=>{let t=B();if(!z(t))return!1;let n=e,r=n.shiftKey;return!!wd(t,!0)&&(n.preventDefault(),Dd(t,r,!0),!0)},0),e.registerCommand(Ma,e=>{let t=B();if(!z(t))return!1;let n=e,r=n.shiftKey;return!!wd(t,!1)&&(n.preventDefault(),Dd(t,r,!1),!0)},0),e.registerCommand(Ba,t=>!!z(B())&&(!np||navigator.language!==`ko-KR`)&&(t.preventDefault(),e.dispatchCommand(ba,!0)),0),e.registerCommand(Ha,t=>!!z(B())&&(t.preventDefault(),e.dispatchCommand(ba,!1)),0),e.registerCommand(Ra,t=>{if(!z(B()))return!1;if(t!==null){if((np||ip||op)&&tp)return!1;t.preventDefault()}return e.dispatchCommand(xa,!1)},0),e.registerCommand(Xa,()=>(Al(),!0),0),e.registerCommand(Ja,t=>!!z(B())&&(sp(t,e),!0),0),e.registerCommand(Ya,t=>!!z(B())&&(function(e,t){sp(e,t),t.update(()=>{let e=B();z(e)&&e.removeText()})}(t,e),!0),0),e.registerCommand(wa,t=>!!z(B())&&(function(e,t){e.preventDefault(),t.update(()=>{let t=B(),n=Ad(e,ClipboardEvent)?e.clipboardData:null;n!=null&&z(t)&&Zf(n,t)},{tag:`paste`})}(t,e),!0),0),e.registerCommand(Wa,e=>!!z(B())&&(e.preventDefault(),!0),0),e.registerCommand(Ga,e=>!!z(B())&&(e.preventDefault(),!0),0))}var lp=e(m(),1);function up(e,...t){let n=new URL(`https://lexical.dev/docs/error`),r=new URLSearchParams;r.append(`code`,e);for(let e of t)r.append(`v`,e);throw n.search=r.toString(),Error(`Minified Lexical error #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}var dp=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0?P.useLayoutEffect:P.useEffect;function fp({editor:e,ErrorBoundary:t}){return function(e,t){let[n,r]=(0,P.useState)(()=>e.getDecorators());return dp(()=>e.registerDecoratorListener(e=>{(0,lp.flushSync)(()=>{r(e)})}),[e]),(0,P.useEffect)(()=>{r(e.getDecorators())},[e]),(0,P.useMemo)(()=>{let r=[],i=Object.keys(n);for(let a=0;a<i.length;a++){let o=i[a],s=(0,N.jsx)(t,{onError:t=>e._onError(t),children:(0,N.jsx)(P.Suspense,{fallback:null,children:n[o]})}),c=e.getElementByKey(o);c!==null&&r.push((0,lp.createPortal)(s,c,o))}return r},[t,n,e])}(e,t)}function pp({editor:e,ErrorBoundary:t}){return function(e){let t=Vf.maybeFromEditor(e);if(t&&t.hasExtensionByName(Gf.name)){for(let e of[`@lexical/plain-text`,`@lexical/rich-text`])t.hasExtensionByName(e)&&up(320,e);return!0}return!1}(e)?null:(0,N.jsx)(fp,{editor:e,ErrorBoundary:t})}function mp(e){return e.getEditorState().read(vd(e.isComposing()))}function hp({contentEditable:e,placeholder:t=null,ErrorBoundary:n}){let[r]=kr();return function(e){dp(()=>md(cp(e),Kf(e)),[e])}(r),(0,N.jsxs)(N.Fragment,{children:[e,(0,N.jsx)(gp,{content:t}),(0,N.jsx)(pp,{editor:r,ErrorBoundary:n})]})}function gp({content:e}){let[t]=kr(),n=function(e){let[t,n]=(0,P.useState)(()=>mp(e));return dp(()=>{function t(){n(mp(e))}return t(),md(e.registerUpdateListener(()=>{t()}),e.registerEditableListener(()=>{t()}))},[e]),t}(t),r=Xd();return n?typeof e==`function`?e(r):e:null}function _p(){return`composer-${Math.random().toString(36).slice(2,10)}`}function vp(e=``){return{id:_p(),type:`text`,text:e}}function yp(e){return{id:_p(),type:`token`,tokenKind:e.tokenKind,tokenKey:e.tokenKey,label:e.label}}function bp(e){return e.type===`text`?e.text.length:1}function xp(){return[vp(``)]}function Sp(e){return[vp(e)]}function Cp(e){let t=[];for(let n of e){if(n.type===`text`){if(n.text.length===0)continue;let e=t[t.length-1];if(e?.type===`text`){t[t.length-1]={...e,text:e.text+n.text};continue}}t.push(n)}return t.length===0?xp():t}function wp(e){return e.map(e=>e.type===`text`?e.text:``).join(``)}function Tp(e){return e.filter(e=>e.type===`text`).map(e=>e.text).join(``)}function Ep(e,t){let n=[],r=new Set;for(let i of e)i.type!==`token`||i.tokenKind!==t||r.has(i.tokenKey)||(r.add(i.tokenKey),n.push(i.tokenKey));return n}function Dp(e,t,n,r){let i=Math.max(0,n-t),a=Math.max(0,t+e.text.length-r),o=[];return i>0&&o.push({...e,text:e.text.slice(0,i)}),a>0&&o.push({...e,text:e.text.slice(e.text.length-a)}),o}function Op(e,t,n,r){return t<=n||e>=r}function kp(e,t,n,r,i){return!n&&r>=i?(e.push(...t),!0):n}function Ap(e,t,n,r,i,a,o){let s=Dp(t,n,r,i);s[0]&&e.push(s[0]);let c=o;return c||=(e.push(...a),!0),s[1]&&e.push(s[1]),c}function jp(e,t,n,r,i,a){return!r&&i<=a?(e.push(...n),!0):(e.push(t),r)}function Mp(e,t,n,r){let i=Math.max(0,t),a=Math.max(i,n),o=[],s=0,c=!1;for(let t of e){let e=bp(t),n=s,l=s+e;if(Op(n,l,i,a)){c=kp(o,r,c,n,a),o.push(t),s=l;continue}c=t.type===`text`?Ap(o,t,n,i,a,r,c):jp(o,t,r,c,i,n),s=l}return c||o.push(...r),Cp(o)}function Np(e,t){return Cp(e.filter(e=>e.type!==`token`||!t(e)))}function Pp(e,t){if(!t||t.start!==t.end)return null;let n=wp(e),r=t.end,i=n.slice(0,r),a=/(?:^|\s)\/([^\s\uFFFC]*)$/.exec(i);if(!a)return null;let o=r-a[0].length+(a[0].startsWith(`/`)?0:1);return{query:(a[1]??``).trim().toLowerCase(),start:o,end:r}}function Fp(e){return e===`file`?[`mx-[2px]`,`inline-flex`,`h-7`,`max-w-[min(100%,17rem)]`,`items-center`,`gap-1.5`,`rounded-lg`,`border`,`border-slate-200/80`,`bg-slate-50`,`px-2`,`align-baseline`,`text-slate-700`,`transition-[border-color,background-color,box-shadow,color]`,`duration-150`].join(` `):[`mx-[2px]`,`inline-flex`,`h-7`,`max-w-full`,`items-center`,`gap-1.5`,`rounded-lg`,`border`,`border-primary/12`,`bg-primary/8`,`px-2`,`align-baseline`,`text-[11px]`,`font-medium`,`text-primary`,`transition`].join(` `)}function Ip(e){return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`span`,{className:e.tokenKind===`file`?`inline-flex h-4.5 w-4.5 shrink-0 items-center justify-center rounded-md bg-white text-slate-500 ring-1 ring-black/5`:`inline-flex h-3.5 w-3.5 shrink-0 items-center justify-center text-primary/70`,children:e.tokenKind===`file`?(0,N.jsxs)(`svg`,{viewBox:`0 0 16 16`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.25`,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,className:`h-3 w-3`,children:[(0,N.jsx)(`path`,{d:`M3.25 4.25A1.5 1.5 0 0 1 4.75 2.75h6.5a1.5 1.5 0 0 1 1.5 1.5v7.5a1.5 1.5 0 0 1-1.5 1.5h-6.5a1.5 1.5 0 0 1-1.5-1.5v-7.5Z`}),(0,N.jsx)(`path`,{d:`m4.75 10 2.25-2.5 1.75 1.75 1.25-1.25 2 2`}),(0,N.jsx)(`path`,{d:`M9.75 6.25h.01`})]}):(0,N.jsxs)(`svg`,{viewBox:`0 0 16 16`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.25`,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,className:`h-3 w-3`,children:[(0,N.jsx)(`path`,{d:`M8.5 2.75 2.75 6l5.75 3.25L14.25 6 8.5 2.75Z`}),(0,N.jsx)(`path`,{d:`M2.75 10 8.5 13.25 14.25 10`}),(0,N.jsx)(`path`,{d:`M2.75 6v4l5.75 3.25V9.25L2.75 6Z`}),(0,N.jsx)(`path`,{d:`M14.25 6v4L8.5 13.25V9.25L14.25 6Z`})]})}),(0,N.jsx)(`span`,{className:e.tokenKind===`file`?`min-w-0 flex-1 truncate text-[12px] font-medium text-slate-700`:`truncate`,children:e.label})]})}var Lp=class e extends vc{static getType(){return`chat-composer-token`}static clone(t){return new e(t.__composerId,t.__tokenKind,t.__tokenKey,t.__label,t.__key)}static importJSON(e){return Rp({composerId:e.composerId,label:e.label,tokenKey:e.tokenKey,tokenKind:e.tokenKind})}constructor(e,t,n,r,i){super(i),this.applyTokenDom=e=>{e.contentEditable=`false`,e.dataset.composerNodeId=this.__composerId,e.dataset.composerNodeType=`token`,e.dataset.composerTokenKind=this.__tokenKind,e.dataset.composerTokenKey=this.__tokenKey,e.dataset.composerLabel=this.__label,e.title=this.__label,e.className=Fp(this.__tokenKind)},this.createDOM=(e,t)=>{let n=document.createElement(`span`);return this.applyTokenDom(n),n},this.updateDOM=(e,t)=>(this.applyTokenDom(t),!1),this.decorate=()=>(0,N.jsx)(Ip,{label:this.__label,tokenKind:this.__tokenKind}),this.exportJSON=()=>({composerId:this.__composerId,label:this.__label,tokenKey:this.__tokenKey,tokenKind:this.__tokenKind,type:`chat-composer-token`,version:1}),this.getComposerId=()=>this.getLatest().__composerId,this.getTokenKind=()=>this.getLatest().__tokenKind,this.getTokenKey=()=>this.getLatest().__tokenKey,this.getLabel=()=>this.getLatest().__label,this.getTextContent=()=>``,this.isInline=()=>!0,this.isIsolated=()=>!0,this.isKeyboardSelectable=()=>!1,this.__composerId=e,this.__tokenKind=t,this.__tokenKey=n,this.__label=r}};function Rp(e){let{composerId:t,label:n,tokenKey:r,tokenKind:i}=e;return Kl(new Lp(t,i,r,n))}function zp(e){return e instanceof Lp}function Bp(){let e=pl(),t=e.getFirstChild();if(!V(t))return{descriptors:[],paragraphKey:e.getKey(),paragraphSize:0,totalLength:0};let n=t.getChildren(),r=[],i=0;for(let[e,t]of n.entries()){if(R(t)){let n=t.getTextContent();r.push({index:e,key:t.getKey(),length:n.length,node:t,start:i,text:n,type:`text`}),i+=n.length;continue}if(zp(t)){r.push({index:e,key:t.getKey(),length:1,node:t,start:i,type:`token`}),i+=1;continue}r.push({index:e,key:t.getKey(),length:t.getTextContent().length,node:t,start:i,type:`linebreak`}),i+=t.getTextContent().length}return{descriptors:r,paragraphKey:t.getKey(),paragraphSize:n.length,totalLength:i}}function Vp(e){let{descriptors:t,paragraphKey:n,paragraphSize:r,totalLength:i}=Bp(),a=Math.max(0,Math.min(e,i));if(t.length===0)return{key:n,offset:0,type:`element`};for(let e of t){let r=e.start+e.length;if(e.type===`text`&&a>=e.start&&a<=r)return{key:e.key,offset:a-e.start,type:`text`};if(e.type!==`text`){if(a===e.start)return{key:n,offset:e.index,type:`element`};if(a===r){let r=t[e.index+1];return r?.type===`text`&&r.length===0?{key:r.key,offset:0,type:`text`}:{key:n,offset:e.index+1,type:`element`}}}}return{key:n,offset:r,type:`element`}}function Hp(e){let{descriptors:t,paragraphKey:n,totalLength:r}=Bp();if(e.key===n){let n=t[e.offset-1];return n?n.start+n.length:0}let i=t.find(t=>t.key===e.key);return i?i.start+Math.min(e.offset,i.length):r}function Up(e){if(e.type===`element`)return Hp(e);let{descriptors:t,totalLength:n}=Bp(),r=t.find(t=>t.key===e.key);return r?r.start+Math.min(e.offset,r.length):n}function Wp(){let{descriptors:e}=Bp(),t=[],n=``,r=``,i=()=>{n.length!==0&&(t.push({id:r,type:`text`,text:n}),n=``,r=``)};for(let a of e){if(a.type===`text`){n.length===0&&(r=a.key),n+=a.text;continue}if(a.type===`linebreak`){n.length===0&&(r=a.key),n+=`
|
|
12
|
+
`}isInline(){return!1}updateDOM(){return!1}};function Uf(){return{node:Wf()}}function Wf(){return hu(Hf)}var Gf=ld({name:`@lexical/react/ReactProvider`});function Kf(e){let t=window.location.origin,n=n=>{if(n.origin!==t)return;let r=e.getRootElement();if(document.activeElement!==r)return;let i=n.data;if(typeof i==`string`){let t;try{t=JSON.parse(i)}catch{return}if(t&&t.protocol===`nuanria_messaging`&&t.type===`request`){let r=t.payload;if(r&&r.functionId===`makeChanges`){let t=r.args;if(t){let[r,i,a,o,s]=t;e.update(()=>{let e=B();if(z(e)){let t=e.anchor,c=t.getNode(),l=0,u=0;if(R(c)&&r>=0&&i>=0&&(l=r,u=r+i,e.setTextNodeRange(c,l,c,u)),l===u&&a===``||(e.insertRawText(a),c=t.getNode()),R(c)){l=o,u=o+s;let t=c.getTextContentSize();l=l>t?t:l,u=u>t?t:u,e.setTextNodeRange(c,l,c,u)}n.stopImmediatePropagation()}})}}}}};return window.addEventListener(`message`,n,!0),()=>{window.removeEventListener(`message`,n,!0)}}function qf(e,t){if(typeof document>`u`||typeof window>`u`&&global.window===void 0)throw Error(`To use $generateHtmlFromNodes in headless mode please initialize a headless browser implementation such as JSDom before calling this function.`);let n=document.createElement(`div`),r=pl().getChildren();for(let i=0;i<r.length;i++)Jf(e,r[i],n,t);return n.innerHTML}function Jf(e,t,n,r=null){let i=r===null||t.isSelected(r),a=V(t)&&t.excludeFromCopy(`html`),o=t;r!==null&&R(t)&&(o=xd(r,t,`clone`));let s=V(o)?o.getChildren():[],c=Hc(e,o.getType()),l;l=c&&c.exportDOM!==void 0?c.exportDOM(e,o):o.exportDOM(e);let{element:u,after:d}=l;if(!u)return!1;let f=document.createDocumentFragment();for(let n=0;n<s.length;n++){let a=s[n],o=Jf(e,a,f,r);!i&&V(t)&&o&&t.extractWithChild(a,r,`html`)&&(i=!0)}if(i&&!a){if(($l(u)||tu(u))&&u.append(f),n.append(u),d){let e=d.call(o,u);e&&(tu(u)?u.replaceChildren(e):u.replaceWith(e))}}else n.append(f);return i}function Yf(e,...t){let n=new URL(`https://lexical.dev/docs/error`),r=new URLSearchParams;r.append(`code`,e);for(let e of t)r.append(`v`,e);throw n.search=r.toString(),Error(`Minified Lexical error #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}function Xf(e,t=B()){return t??Yf(166),z(t)&&t.isCollapsed()||t.getNodes().length===0?``:qf(e,t)}function Zf(e,t){let n=e.getData(`text/plain`)||e.getData(`text/uri-list`);n!=null&&t.insertRawText(n)}var Qf=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0,$f=Qf&&`documentMode`in document?document.documentMode:null,ep=Qf&&/Mac|iPod|iPhone|iPad/.test(navigator.platform),tp=!(!Qf||!(`InputEvent`in window)||$f)&&`getTargetRanges`in new window.InputEvent(`input`),np=Qf&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream,rp=Qf&&/Android/.test(navigator.userAgent),ip=Qf&&/Version\/[\d.]+.*Safari/.test(navigator.userAgent)&&!rp,ap=Qf&&/^(?=.*Chrome).*/i.test(navigator.userAgent),op=Qf&&/AppleWebKit\/[\d.]+/.test(navigator.userAgent)&&ep&&!ap;function sp(e,t){t.update(()=>{if(e!==null){let n=Ad(e,KeyboardEvent)?null:e.clipboardData,r=B();if(r!==null&&!r.isCollapsed()&&n!=null){e.preventDefault();let i=Xf(t);i!==null&&n.setData(`text/html`,i),n.setData(`text/plain`,r.getTextContent())}}})}function cp(e){return md(e.registerCommand(ba,e=>{let t=B();return!!z(t)&&(t.deleteCharacter(e),!0)},0),e.registerCommand(Ea,e=>{let t=B();return!!z(t)&&(t.deleteWord(e),!0)},0),e.registerCommand(Da,e=>{let t=B();return!!z(t)&&(t.deleteLine(e),!0)},0),e.registerCommand(Ca,e=>{let t=B();if(!z(t))return!1;if(typeof e==`string`)t.insertText(e);else{let n=e.dataTransfer;if(n!=null)Zf(n,t);else{let n=e.data;n&&t.insertText(n)}}return!0},0),e.registerCommand(Ta,()=>{let e=B();return!!z(e)&&(e.removeText(),!0)},0),e.registerCommand(xa,e=>{let t=B();return!!z(t)&&(t.insertLineBreak(e),!0)},0),e.registerCommand(Sa,()=>{let e=B();return!!z(e)&&(e.insertLineBreak(),!0)},0),e.registerCommand(Pa,e=>{let t=B();if(!z(t))return!1;let n=e,r=n.shiftKey;return!!wd(t,!0)&&(n.preventDefault(),Dd(t,r,!0),!0)},0),e.registerCommand(Ma,e=>{let t=B();if(!z(t))return!1;let n=e,r=n.shiftKey;return!!wd(t,!1)&&(n.preventDefault(),Dd(t,r,!1),!0)},0),e.registerCommand(Ba,t=>!!z(B())&&(!np||navigator.language!==`ko-KR`)&&(t.preventDefault(),e.dispatchCommand(ba,!0)),0),e.registerCommand(Ha,t=>!!z(B())&&(t.preventDefault(),e.dispatchCommand(ba,!1)),0),e.registerCommand(Ra,t=>{if(!z(B()))return!1;if(t!==null){if((np||ip||op)&&tp)return!1;t.preventDefault()}return e.dispatchCommand(xa,!1)},0),e.registerCommand(Xa,()=>(Al(),!0),0),e.registerCommand(Ja,t=>!!z(B())&&(sp(t,e),!0),0),e.registerCommand(Ya,t=>!!z(B())&&(function(e,t){sp(e,t),t.update(()=>{let e=B();z(e)&&e.removeText()})}(t,e),!0),0),e.registerCommand(wa,t=>!!z(B())&&(function(e,t){e.preventDefault(),t.update(()=>{let t=B(),n=Ad(e,ClipboardEvent)?e.clipboardData:null;n!=null&&z(t)&&Zf(n,t)},{tag:`paste`})}(t,e),!0),0),e.registerCommand(Wa,e=>!!z(B())&&(e.preventDefault(),!0),0),e.registerCommand(Ga,e=>!!z(B())&&(e.preventDefault(),!0),0))}var lp=e(h(),1);function up(e,...t){let n=new URL(`https://lexical.dev/docs/error`),r=new URLSearchParams;r.append(`code`,e);for(let e of t)r.append(`v`,e);throw n.search=r.toString(),Error(`Minified Lexical error #${e}; visit ${n.toString()} for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`)}var dp=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0?P.useLayoutEffect:P.useEffect;function fp({editor:e,ErrorBoundary:t}){return function(e,t){let[n,r]=(0,P.useState)(()=>e.getDecorators());return dp(()=>e.registerDecoratorListener(e=>{(0,lp.flushSync)(()=>{r(e)})}),[e]),(0,P.useEffect)(()=>{r(e.getDecorators())},[e]),(0,P.useMemo)(()=>{let r=[],i=Object.keys(n);for(let a=0;a<i.length;a++){let o=i[a],s=(0,N.jsx)(t,{onError:t=>e._onError(t),children:(0,N.jsx)(P.Suspense,{fallback:null,children:n[o]})}),c=e.getElementByKey(o);c!==null&&r.push((0,lp.createPortal)(s,c,o))}return r},[t,n,e])}(e,t)}function pp({editor:e,ErrorBoundary:t}){return function(e){let t=Vf.maybeFromEditor(e);if(t&&t.hasExtensionByName(Gf.name)){for(let e of[`@lexical/plain-text`,`@lexical/rich-text`])t.hasExtensionByName(e)&&up(320,e);return!0}return!1}(e)?null:(0,N.jsx)(fp,{editor:e,ErrorBoundary:t})}function mp(e){return e.getEditorState().read(vd(e.isComposing()))}function hp({contentEditable:e,placeholder:t=null,ErrorBoundary:n}){let[r]=kr();return function(e){dp(()=>md(cp(e),Kf(e)),[e])}(r),(0,N.jsxs)(N.Fragment,{children:[e,(0,N.jsx)(gp,{content:t}),(0,N.jsx)(pp,{editor:r,ErrorBoundary:n})]})}function gp({content:e}){let[t]=kr(),n=function(e){let[t,n]=(0,P.useState)(()=>mp(e));return dp(()=>{function t(){n(mp(e))}return t(),md(e.registerUpdateListener(()=>{t()}),e.registerEditableListener(()=>{t()}))},[e]),t}(t),r=Xd();return n?typeof e==`function`?e(r):e:null}function _p(){return`composer-${Math.random().toString(36).slice(2,10)}`}function vp(e=``){return{id:_p(),type:`text`,text:e}}function yp(e){return{id:_p(),type:`token`,tokenKind:e.tokenKind,tokenKey:e.tokenKey,label:e.label}}function bp(e){return e.type===`text`?e.text.length:1}function xp(){return[vp(``)]}function Sp(e){return[vp(e)]}function Cp(e){let t=[];for(let n of e){if(n.type===`text`){if(n.text.length===0)continue;let e=t[t.length-1];if(e?.type===`text`){t[t.length-1]={...e,text:e.text+n.text};continue}}t.push(n)}return t.length===0?xp():t}function wp(e){return e.map(e=>e.type===`text`?e.text:``).join(``)}function Tp(e){return e.filter(e=>e.type===`text`).map(e=>e.text).join(``)}function Ep(e,t){let n=[],r=new Set;for(let i of e)i.type!==`token`||i.tokenKind!==t||r.has(i.tokenKey)||(r.add(i.tokenKey),n.push(i.tokenKey));return n}function Dp(e,t,n,r){let i=Math.max(0,n-t),a=Math.max(0,t+e.text.length-r),o=[];return i>0&&o.push({...e,text:e.text.slice(0,i)}),a>0&&o.push({...e,text:e.text.slice(e.text.length-a)}),o}function Op(e,t,n,r){return t<=n||e>=r}function kp(e,t,n,r,i){return!n&&r>=i?(e.push(...t),!0):n}function Ap(e,t,n,r,i,a,o){let s=Dp(t,n,r,i);s[0]&&e.push(s[0]);let c=o;return c||=(e.push(...a),!0),s[1]&&e.push(s[1]),c}function jp(e,t,n,r,i,a){return!r&&i<=a?(e.push(...n),!0):(e.push(t),r)}function Mp(e,t,n,r){let i=Math.max(0,t),a=Math.max(i,n),o=[],s=0,c=!1;for(let t of e){let e=bp(t),n=s,l=s+e;if(Op(n,l,i,a)){c=kp(o,r,c,n,a),o.push(t),s=l;continue}c=t.type===`text`?Ap(o,t,n,i,a,r,c):jp(o,t,r,c,i,n),s=l}return c||o.push(...r),Cp(o)}function Np(e,t){return Cp(e.filter(e=>e.type!==`token`||!t(e)))}function Pp(e,t){if(!t||t.start!==t.end)return null;let n=wp(e),r=t.end,i=n.slice(0,r),a=/(?:^|\s)\/([^\s\uFFFC]*)$/.exec(i);if(!a)return null;let o=r-a[0].length+(a[0].startsWith(`/`)?0:1);return{query:(a[1]??``).trim().toLowerCase(),start:o,end:r}}function Fp(e){return e===`file`?[`mx-[2px]`,`inline-flex`,`h-7`,`max-w-[min(100%,17rem)]`,`items-center`,`gap-1.5`,`rounded-lg`,`border`,`border-slate-200/80`,`bg-slate-50`,`px-2`,`align-baseline`,`text-slate-700`,`transition-[border-color,background-color,box-shadow,color]`,`duration-150`].join(` `):[`mx-[2px]`,`inline-flex`,`h-7`,`max-w-full`,`items-center`,`gap-1.5`,`rounded-lg`,`border`,`border-primary/12`,`bg-primary/8`,`px-2`,`align-baseline`,`text-[11px]`,`font-medium`,`text-primary`,`transition`].join(` `)}function Ip(e){return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`span`,{className:e.tokenKind===`file`?`inline-flex h-4.5 w-4.5 shrink-0 items-center justify-center rounded-md bg-white text-slate-500 ring-1 ring-black/5`:`inline-flex h-3.5 w-3.5 shrink-0 items-center justify-center text-primary/70`,children:e.tokenKind===`file`?(0,N.jsxs)(`svg`,{viewBox:`0 0 16 16`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.25`,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,className:`h-3 w-3`,children:[(0,N.jsx)(`path`,{d:`M3.25 4.25A1.5 1.5 0 0 1 4.75 2.75h6.5a1.5 1.5 0 0 1 1.5 1.5v7.5a1.5 1.5 0 0 1-1.5 1.5h-6.5a1.5 1.5 0 0 1-1.5-1.5v-7.5Z`}),(0,N.jsx)(`path`,{d:`m4.75 10 2.25-2.5 1.75 1.75 1.25-1.25 2 2`}),(0,N.jsx)(`path`,{d:`M9.75 6.25h.01`})]}):(0,N.jsxs)(`svg`,{viewBox:`0 0 16 16`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.25`,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,className:`h-3 w-3`,children:[(0,N.jsx)(`path`,{d:`M8.5 2.75 2.75 6l5.75 3.25L14.25 6 8.5 2.75Z`}),(0,N.jsx)(`path`,{d:`M2.75 10 8.5 13.25 14.25 10`}),(0,N.jsx)(`path`,{d:`M2.75 6v4l5.75 3.25V9.25L2.75 6Z`}),(0,N.jsx)(`path`,{d:`M14.25 6v4L8.5 13.25V9.25L14.25 6Z`})]})}),(0,N.jsx)(`span`,{className:e.tokenKind===`file`?`min-w-0 flex-1 truncate text-[12px] font-medium text-slate-700`:`truncate`,children:e.label})]})}var Lp=class e extends vc{static getType(){return`chat-composer-token`}static clone(t){return new e(t.__composerId,t.__tokenKind,t.__tokenKey,t.__label,t.__key)}static importJSON(e){return Rp({composerId:e.composerId,label:e.label,tokenKey:e.tokenKey,tokenKind:e.tokenKind})}constructor(e,t,n,r,i){super(i),this.applyTokenDom=e=>{e.contentEditable=`false`,e.dataset.composerNodeId=this.__composerId,e.dataset.composerNodeType=`token`,e.dataset.composerTokenKind=this.__tokenKind,e.dataset.composerTokenKey=this.__tokenKey,e.dataset.composerLabel=this.__label,e.title=this.__label,e.className=Fp(this.__tokenKind)},this.createDOM=(e,t)=>{let n=document.createElement(`span`);return this.applyTokenDom(n),n},this.updateDOM=(e,t)=>(this.applyTokenDom(t),!1),this.decorate=()=>(0,N.jsx)(Ip,{label:this.__label,tokenKind:this.__tokenKind}),this.exportJSON=()=>({composerId:this.__composerId,label:this.__label,tokenKey:this.__tokenKey,tokenKind:this.__tokenKind,type:`chat-composer-token`,version:1}),this.getComposerId=()=>this.getLatest().__composerId,this.getTokenKind=()=>this.getLatest().__tokenKind,this.getTokenKey=()=>this.getLatest().__tokenKey,this.getLabel=()=>this.getLatest().__label,this.getTextContent=()=>``,this.isInline=()=>!0,this.isIsolated=()=>!0,this.isKeyboardSelectable=()=>!1,this.__composerId=e,this.__tokenKind=t,this.__tokenKey=n,this.__label=r}};function Rp(e){let{composerId:t,label:n,tokenKey:r,tokenKind:i}=e;return Kl(new Lp(t,i,r,n))}function zp(e){return e instanceof Lp}function Bp(){let e=pl(),t=e.getFirstChild();if(!V(t))return{descriptors:[],paragraphKey:e.getKey(),paragraphSize:0,totalLength:0};let n=t.getChildren(),r=[],i=0;for(let[e,t]of n.entries()){if(R(t)){let n=t.getTextContent();r.push({index:e,key:t.getKey(),length:n.length,node:t,start:i,text:n,type:`text`}),i+=n.length;continue}if(zp(t)){r.push({index:e,key:t.getKey(),length:1,node:t,start:i,type:`token`}),i+=1;continue}r.push({index:e,key:t.getKey(),length:t.getTextContent().length,node:t,start:i,type:`linebreak`}),i+=t.getTextContent().length}return{descriptors:r,paragraphKey:t.getKey(),paragraphSize:n.length,totalLength:i}}function Vp(e){let{descriptors:t,paragraphKey:n,paragraphSize:r,totalLength:i}=Bp(),a=Math.max(0,Math.min(e,i));if(t.length===0)return{key:n,offset:0,type:`element`};for(let e of t){let r=e.start+e.length;if(e.type===`text`&&a>=e.start&&a<=r)return{key:e.key,offset:a-e.start,type:`text`};if(e.type!==`text`){if(a===e.start)return{key:n,offset:e.index,type:`element`};if(a===r){let r=t[e.index+1];return r?.type===`text`&&r.length===0?{key:r.key,offset:0,type:`text`}:{key:n,offset:e.index+1,type:`element`}}}}return{key:n,offset:r,type:`element`}}function Hp(e){let{descriptors:t,paragraphKey:n,totalLength:r}=Bp();if(e.key===n){let n=t[e.offset-1];return n?n.start+n.length:0}let i=t.find(t=>t.key===e.key);return i?i.start+Math.min(e.offset,i.length):r}function Up(e){if(e.type===`element`)return Hp(e);let{descriptors:t,totalLength:n}=Bp(),r=t.find(t=>t.key===e.key);return r?r.start+Math.min(e.offset,r.length):n}function Wp(){let{descriptors:e}=Bp(),t=[],n=``,r=``,i=()=>{n.length!==0&&(t.push({id:r,type:`text`,text:n}),n=``,r=``)};for(let a of e){if(a.type===`text`){n.length===0&&(r=a.key),n+=a.text;continue}if(a.type===`linebreak`){n.length===0&&(r=a.key),n+=`
|
|
13
13
|
`;continue}i();let e=a.node;t.push({id:e.getComposerId(),label:e.getLabel(),tokenKey:e.getTokenKey(),tokenKind:e.getTokenKind(),type:`token`})}return i(),Cp(t)}function Gp(e){return e.read(()=>{let e=B(),t=Wp();return z(e)?{nodes:t,selection:{start:Math.min(Up(e.anchor),Up(e.focus)),end:Math.max(Up(e.anchor),Up(e.focus))}}:{nodes:t,selection:null}})}function Kp(e,t){let n=pl();n.clear();let r=Ac();n.append(r);for(let t of Cp(e)){if(t.type===`token`){r.append(Rp({composerId:t.id,label:t.label,tokenKey:t.tokenKey,tokenKind:t.tokenKind}));continue}let e=t.text.split(`
|
|
14
14
|
`);for(let[t,n]of e.entries())n.length>0&&r.append(cs(n)),t<e.length-1&&r.append(Wo())}if(zp(r.getLastChild())&&r.append(cs(``)),!t)return;let i=As(),a=Vp(t.start),o=Vp(t.end);i.anchor.set(a.key,a.offset,a.type),i.focus.set(o.key,o.offset,o.type),hl(i)}function qp(e,t,n){e.update(()=>{Kp(t,n)})}function Jp(e,t){e.update(()=>{let e=As(),n=Vp(t.start),r=Vp(t.end);e.anchor.set(n.key,n.offset,n.type),e.focus.set(r.key,r.offset,r.type),hl(e)})}function Yp(e){return e.reduce((e,t)=>e+bp(t),0)}function Xp(e){let{label:t,nodes:n,selection:r,tokenKey:i,tokenKind:a,trigger:o}=e,s=Yp(n),[c,l]=r?[Math.min(r.start,r.end),Math.max(r.start,r.end)]:[s,s],u=o?.start??c;return{nodes:Mp(n,u,o?.end??l,[yp({label:t,tokenKey:i,tokenKind:a})]),selection:{start:u+1,end:u+1}}}function Zp(e){return e.map(e=>e.type===`text`?`text:${e.id}:${e.text}`:`token:${e.id}:${e.tokenKind}:${e.tokenKey}:${e.label}`).join(``)}function Qp(e){let{nodes:t,selection:n,text:r}=e,i=Yp(t),[a,o]=n?[Math.min(n.start,n.end),Math.max(n.start,n.end)]:[i,i],s=a+r.length;return{nodes:Mp(t,a,o,[vp(r)]),selection:{start:s,end:s}}}function $p(e){let{label:t,nodes:n,selection:r,tokenKey:i}=e;return Xp({label:t,nodes:n,selection:r,tokenKey:i,tokenKind:`file`})}function em(e){let{label:t,nodes:n,selection:r,tokenKey:i}=e;return Ep(n,`skill`).includes(i)?{nodes:Cp(n),selection:r}:Xp({label:t,nodes:n,selection:r,tokenKey:i,tokenKind:`skill`,trigger:Pp(n,r)})}function tm(e){let{nextKeys:t,nodes:n,options:r,selection:i}=e,a=Ep(n,`skill`),o=new Map(r.map(e=>[e.key,e])),s=t.find(e=>!a.includes(e));if(s)return em({label:o.get(s)?.label??s,nodes:n,selection:i,tokenKey:s});let c=a.find(e=>!t.includes(e));return c?{nodes:Np(n,e=>e.tokenKind===`skill`&&e.tokenKey===c),selection:i}:{nodes:Cp(n),selection:i}}function nm(e){let{direction:t,nodes:n,selection:r}=e,i=Yp(n),[a,o]=r?[Math.min(r.start,r.end),Math.max(r.start,r.end)]:[i,i],s=a,c=o;if(s===c)if(t===`backward`&&s>0)--s;else if(t===`forward`&&c<i)c+=1;else return{nodes:Cp(n),selection:{start:s,end:c}};return{nodes:Mp(n,s,c,[]),selection:{start:s,end:s}}}function rm(e){let{activeSlashIndex:t,canStopGeneration:n,isComposing:r,isSending:i,isSlashMenuOpen:a,key:o,shiftKey:s,slashItemCount:c}=e;if(o===`Enter`&&!s&&i)return{type:`consume`};if(a&&c>0){if(o===`ArrowDown`)return{type:`move-slash-index`,index:(t+1)%c};if(o===`ArrowUp`)return{type:`move-slash-index`,index:(t-1+c)%c};if(o===`Enter`&&!s||o===`Tab`)return{type:`insert-active-slash-item`}}return o===`Escape`?a?{type:`close-slash`}:i&&n?{type:`stop-generation`}:{type:`noop`}:o===`Enter`&&s?{type:`insert-line-break`}:o===`Enter`?{type:`send-message`}:!r&&(o===`Backspace`||o===`Delete`)?{type:`delete-content`,direction:o===`Backspace`?`backward`:`forward`}:{type:`noop`}}var im=class{constructor(e){this.params=e,this.insertSlashItem=e=>{e.value&&(this.params.onSlashItemSelect?.(e),this.params.publishSnapshot(em({label:e.title,nodes:this.params.optionsReader().nodes,selection:this.params.optionsReader().selection,tokenKey:e.value}),{focusAfterSync:!0}))},this.insertFileToken=(e,t)=>{this.params.publishSnapshot($p({label:t,nodes:this.params.optionsReader().nodes,selection:this.params.optionsReader().selection,tokenKey:e}),{focusAfterSync:!0})},this.insertFileTokens=e=>{let t=this.params.optionsReader().nodes,n=this.params.optionsReader().selection;for(let r of e){let e=$p({label:r.label,nodes:t,selection:n,tokenKey:r.tokenKey});t=e.nodes,n=e.selection}this.params.publishSnapshot({nodes:t,selection:n},{focusAfterSync:!0})},this.focusComposer=()=>{this.params.focusComposer()},this.syncSelectedSkills=(e,t)=>{this.params.publishSnapshot(tm({nextKeys:e,nodes:this.params.optionsReader().nodes,options:t,selection:this.params.optionsReader().selection}),{focusAfterSync:!0})}}};function am(e){return new im(e)}function om(e){return JSON.stringify(e.map(e=>e.type===`text`?{text:e.text,type:e.type}:{label:e.label,tokenKey:e.tokenKey,tokenKind:e.tokenKind,type:e.type}))}function sm(e){let{disabled:t,event:n,isComposing:r,publishSnapshot:i,snapshotReader:a}=e,o=n.nativeEvent,s=o.inputType===`insertText`||o.inputType===`insertReplacementText`;t||r||o.isComposing||!s||!o.data||(n.preventDefault(),i(Qp({nodes:a().nodes,selection:a().selection,text:o.data})))}function cm(e){let{data:t,fallbackSnapshot:n,publishSnapshot:r,snapshotReader:i}=e,a=i(),o=n();r(om(o.nodes)===om(a.nodes)&&t.length>0?Qp({nodes:a.nodes,selection:a.selection,text:t}):o,{forcePublish:!0})}function lm(e){let{actions:t,activeSlashIndex:n,nativeEvent:r,onSlashActiveIndexChange:i,onSlashItemSelect:a,onSlashOpenChange:o,onSlashQueryChange:s,publishSnapshot:c,slashItems:l,snapshot:u}=e,d=rm({activeSlashIndex:n,canStopGeneration:t.canStopGeneration,isComposing:r.isComposing,isSending:t.isSending,isSlashMenuOpen:Pp(u.nodes,u.selection)!==null,key:r.key,shiftKey:r.shiftKey,slashItemCount:l.length}),f=l[n]??null;switch(d.type!==`noop`&&r.preventDefault(),d.type){case`move-slash-index`:return i(d.index),!0;case`insert-active-slash-item`:return f?(a?.(f),c(em({label:f.title,nodes:u.nodes,selection:u.selection,tokenKey:f.value??f.key}),{focusAfterSync:!0}),!0):!0;case`close-slash`:return s?.(null),o(!1),!0;case`consume`:return!0;case`stop-generation`:return t.onStop(),!0;case`insert-line-break`:return c(Qp({nodes:u.nodes,selection:u.selection,text:`
|
|
15
|
-
`})),!0;case`send-message`:return t.onSend(),!0;case`delete-content`:return c(nm({direction:d.direction,nodes:u.nodes,selection:u.selection})),!0;case`noop`:return!1}}function um(e){let[t]=kr();return(0,P.useLayoutEffect)(()=>(e.editorRef.current=t,()=>{e.editorRef.current===t&&(e.editorRef.current=null)}),[t,e.editorRef]),(0,P.useLayoutEffect)(()=>{t.setEditable(!e.disabled)},[t,e.disabled]),(0,P.useLayoutEffect)(()=>{let n=Zp(e.nodes),r=e.pendingSelectionRef.current,i=n!==e.editorSignatureRef.current;if(!(!i&&!r)){if(e.isApplyingExternalUpdateRef.current=!0,i?(qp(t,e.nodes,r),e.editorSignatureRef.current=n,e.lastPublishedSignatureRef.current=n):r&&Jp(t,r),r&&(e.selectionRef.current=r,e.pendingSelectionRef.current=null),e.shouldFocusAfterSyncRef.current){e.shouldFocusAfterSyncRef.current=!1;let n=e.selectionRef.current;t.focus(()=>{n&&Jp(t,n)})}requestAnimationFrame(()=>{e.isApplyingExternalUpdateRef.current=!1})}},[t,e.editorSignatureRef,e.isApplyingExternalUpdateRef,e.lastPublishedSignatureRef,e.nodes,e.pendingSelectionRef,e.selectionRef,e.shouldFocusAfterSyncRef]),(0,P.useEffect)(()=>md(t.registerUpdateListener(({editorState:t})=>{let n=Gp(t),r=Zp(n.nodes);e.selectionRef.current=n.selection,e.editorSignatureRef.current=r,e.syncSlashState(n.nodes,n.selection),!(e.isApplyingExternalUpdateRef.current||e.isComposingRef.current)&&r!==e.lastPublishedSignatureRef.current&&(e.lastPublishedSignatureRef.current=r,e.onNodesChange(n.nodes))}),t.registerCommand(ma,()=>{let n=Gp(t.getEditorState());return e.selectionRef.current=n.selection,e.isComposingRef.current||e.syncSlashState(n.nodes,n.selection),!1},0),t.registerCommand(Qa,()=>(e.onBlur(),!1),0),t.registerCommand(ja,t=>e.onKeyDown(t),3)),[t,e.editorSignatureRef,e.isApplyingExternalUpdateRef,e.isComposingRef,e.lastPublishedSignatureRef,e.onBlur,e.onKeyDown,e.onNodesChange,e.selectionRef,e.syncSlashState]),null}var dm=(0,P.forwardRef)(function(e,t){let n=(0,P.useRef)(null),r=(0,P.useRef)(null),i=(0,P.useRef)(null),a=(0,P.useRef)(!1),o=(0,P.useRef)(!1),s=(0,P.useRef)(!1),c=(0,P.useRef)(``),l=(0,P.useRef)(``),u=(t,n)=>{let r=Pp(t,n);e.onSlashTriggerChange?.(r),e.onSlashQueryChange?.(r?.query??null),e.onSlashOpenChange(r!==null)},d=()=>e.nodes,f=()=>{if(r.current)return r.current;if(!n.current)return null;let e=Gp(n.current.getEditorState());return r.current=e.selection,e.selection},p=(t,n)=>{r.current=t.selection,i.current=t.selection,n?.focusAfterSync&&(a.current=!0);let o=Zp(t.nodes);u(t.nodes,t.selection),(n?.forcePublish||o!==l.current)&&(l.current=o,e.onNodesChange(t.nodes))},m=()=>{let e=n.current;if(!e)return;let t=r.current;e.focus(()=>{t&&Jp(e,t)})},h=()=>({nodes:d(),selection:f()});return(0,P.useImperativeHandle)(t,()=>am({focusComposer:m,onSlashItemSelect:e.onSlashItemSelect,optionsReader:h,publishSnapshot:p}),[e.onSlashItemSelect]),(0,N.jsxs)(Vd,{initialConfig:(0,P.useMemo)(()=>({editable:!e.disabled,editorState:()=>{Kp(e.nodes,null)},namespace:`NextClawChatComposerLexical`,nodes:[Lp],onError:e=>{throw e},theme:{}}),[e.disabled,e.nodes]),children:[(0,N.jsx)(`div`,{className:`px-3 py-2 sm:px-4 sm:py-2.5`,children:(0,N.jsx)(`div`,{className:`min-h-11 sm:min-h-[60px]`,children:(0,N.jsx)(hp,{contentEditable:(0,N.jsx)(Fd,{className:`min-h-7 max-h-[188px] w-full overflow-y-auto whitespace-pre-wrap break-words bg-transparent py-0.5 text-sm leading-6 text-gray-800 outline-none`,onBeforeInput:t=>{sm({disabled:e.disabled,event:t,isComposing:o.current,publishSnapshot:p,snapshotReader:h})},onCompositionEnd:e=>{o.current=!1;let t=e.nativeEvent;cm({data:typeof t.data==`string`?t.data:``,fallbackSnapshot:()=>{let e=n.current;return e?Gp(e.getEditorState()):h()},publishSnapshot:p,snapshotReader:h})},onCompositionStart:()=>{o.current=!0},onPaste:t=>{let n=Array.from(t.clipboardData.files??[]);n.length>0&&e.onFilesAdd&&(t.preventDefault(),e.onFilesAdd(n))}}),placeholder:(0,N.jsx)(`div`,{className:`pointer-events-none absolute left-3 top-2 select-none text-sm leading-6 text-gray-400 sm:left-4 sm:top-2.5`,children:e.placeholder}),ErrorBoundary:qd})})}),(0,N.jsx)(Hd,{editorRef:n}),(0,N.jsx)(um,{disabled:e.disabled,editorRef:n,editorSignatureRef:c,isApplyingExternalUpdateRef:s,isComposingRef:o,lastPublishedSignatureRef:l,nodes:e.nodes,onBlur:()=>{e.onSlashQueryChange?.(null),e.onSlashOpenChange(!1)},onKeyDown:t=>{let i=n.current;if(!i)return!1;let a=Gp(i.getEditorState());return r.current=a.selection,lm({actions:e.actions,activeSlashIndex:e.activeSlashIndex,nativeEvent:t,onSlashActiveIndexChange:e.onSlashActiveIndexChange,onSlashItemSelect:e.onSlashItemSelect,onSlashOpenChange:e.onSlashOpenChange,onSlashQueryChange:e.onSlashQueryChange,publishSnapshot:p,slashItems:e.slashItems,snapshot:a})},onNodesChange:e.onNodesChange,pendingSelectionRef:i,selectionRef:r,shouldFocusAfterSyncRef:a,syncSlashState:u})]})});dm.displayName=`LexicalChatInputBarTokenizedComposer`;function fm({hint:e}){return e?e.loading?(0,N.jsx)(`div`,{className:`px-4 pb-2`,children:(0,N.jsxs)(`div`,{className:`inline-flex items-center gap-2 rounded-lg border border-gray-200 bg-gray-50 px-3 py-2`,children:[(0,N.jsx)(`span`,{className:`h-3 w-28 animate-pulse rounded bg-gray-200`}),(0,N.jsx)(`span`,{className:`h-3 w-16 animate-pulse rounded bg-gray-200`})]})}):(0,N.jsx)(`div`,{className:`px-4 pb-2`,children:(0,N.jsxs)(`div`,{className:`inline-flex items-center gap-2 rounded-lg px-3 py-1.5 text-xs ${e.tone===`warning`?`border-amber-200 bg-amber-50 text-amber-800`:`border-gray-200 bg-gray-50 text-gray-700`}`,children:[e.text?(0,N.jsx)(`span`,{children:e.text}):null,e.actionLabel&&e.onAction?(0,N.jsx)(`button`,{type:`button`,onClick:e.onAction,className:`font-semibold underline-offset-2 hover:underline`,children:e.actionLabel}):null]})}):null}var pm=(0,P.forwardRef)(function(e,t){let n=(0,P.useRef)(null),[r,i]=(0,P.useState)(null),[a,o]=(0,P.useState)(0),[s,c]=(0,P.useState)(null),[l,u]=(0,P.useState)(null),d=s!==null&&l!==s,f=e.slashMenu.items[a]??null;(0,P.useEffect)(()=>{o(t=>e.slashMenu.items.length===0?0:Math.min(t,e.slashMenu.items.length-1))},[e.slashMenu.items.length]),(0,P.useEffect)(()=>{r!==null&&o(0)},[r]),(0,P.useEffect)(()=>{s===null&&l!==null&&u(null)},[s,l]);let p=(0,P.useMemo)(()=>e.toolbar.skillPicker?{...e.toolbar,skillPicker:{...e.toolbar.skillPicker,onSelectedKeysChange:t=>{n.current?.syncSelectedSkills(t,e.toolbar.skillPicker?.options??[]),e.toolbar.skillPicker?.onSelectedKeysChange(t)}}}:e.toolbar,[e.toolbar]);return(0,P.useImperativeHandle)(t,()=>({insertFileToken:(e,t)=>n.current?.insertFileToken(e,t),insertFileTokens:e=>n.current?.insertFileTokens(e),focusComposer:()=>n.current?.focusComposer()}),[]),(0,N.jsx)(`div`,{className:`border-t border-gray-200/80 bg-white p-4`,children:(0,N.jsx)(`div`,{className:`mx-auto w-full max-w-[min(1120px,100%)]`,children:(0,N.jsxs)(`div`,{className:`overflow-hidden rounded-2xl border border-gray-200 bg-white shadow-card`,children:[(0,N.jsxs)(`div`,{className:`relative`,children:[(0,N.jsx)(dm,{ref:n,nodes:e.composer.nodes,placeholder:e.composer.placeholder,disabled:e.composer.disabled,slashItems:e.slashMenu.items,onSlashItemSelect:e.slashMenu.onSelectItem,actions:e.toolbar.actions,activeSlashIndex:a,onNodesChange:e.composer.onNodesChange,onFilesAdd:e.composer.onFilesAdd,onSlashQueryChange:t=>{i(t),e.composer.onSlashQueryChange?.(t)},onSlashTriggerChange:e=>{c(e?.start??null)},onSlashOpenChange:e=>{!e&&s!==null&&u(s)},onSlashActiveIndexChange:o}),(0,N.jsx)(dr,{isOpen:d,isLoading:e.slashMenu.isLoading,items:e.slashMenu.items,activeIndex:a,activeItem:f,texts:e.slashMenu.texts,onSelectItem:e=>{u(null),n.current?.insertSlashItem(e)},onOpenChange:e=>{!e&&s!==null&&u(s)},onSetActiveIndex:o})]}),(0,N.jsx)(fm,{hint:e.hint}),(0,N.jsx)(Er,{...p})]})})})});pm.displayName=`ChatInputBar`;function mm({role:e}){return e===`user`?(0,N.jsx)(`div`,{"data-testid":`chat-message-avatar-user`,className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-primary text-white shadow-sm`,children:(0,N.jsx)(dn,{className:`h-4 w-4`})}):e===`tool`?(0,N.jsx)(`div`,{"data-testid":`chat-message-avatar-tool`,className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-amber-100 text-amber-700 shadow-sm`,children:(0,N.jsx)(_e,{className:`h-4 w-4`})}):(0,N.jsx)(`div`,{"data-testid":`chat-message-avatar-assistant`,className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-gradient-to-b from-gray-700 to-gray-950 text-white shadow-md ring-1 ring-inset ring-white/20`,children:(0,N.jsx)(Ee,{className:`h-[18px] w-[18px] text-white/95`,strokeWidth:2.5})})}function hm(e,t){let n=t||{};return(e[e.length-1]===``?[...e,``]:e).join((n.padRight?` `:``)+`,`+(n.padLeft===!1?``:` `)).trim()}var gm=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,_m=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,vm={};function ym(e,t){return((t||vm).jsx?_m:gm).test(e)}var bm=/[ \t\n\f\r]/g;function xm(e){return typeof e==`object`?e.type===`text`?Sm(e.value):!1:Sm(e)}function Sm(e){return e.replace(bm,``)===``}var Cm=class{constructor(e,t,n){this.normal=t,this.property=e,n&&(this.space=n)}};Cm.prototype.normal={},Cm.prototype.property={},Cm.prototype.space=void 0;function wm(e,t){let n={},r={};for(let t of e)Object.assign(n,t.property),Object.assign(r,t.normal);return new Cm(n,r,t)}function Tm(e){return e.toLowerCase()}var Em=class{constructor(e,t){this.attribute=t,this.property=e}};Em.prototype.attribute=``,Em.prototype.booleanish=!1,Em.prototype.boolean=!1,Em.prototype.commaOrSpaceSeparated=!1,Em.prototype.commaSeparated=!1,Em.prototype.defined=!1,Em.prototype.mustUseProperty=!1,Em.prototype.number=!1,Em.prototype.overloadedBoolean=!1,Em.prototype.property=``,Em.prototype.spaceSeparated=!1,Em.prototype.space=void 0;var Dm=i({boolean:()=>K,booleanish:()=>km,commaOrSpaceSeparated:()=>Nm,commaSeparated:()=>Mm,number:()=>q,overloadedBoolean:()=>Am,spaceSeparated:()=>jm}),Om=0,K=Pm(),km=Pm(),Am=Pm(),q=Pm(),jm=Pm(),Mm=Pm(),Nm=Pm();function Pm(){return 2**++Om}var Fm=Object.keys(Dm),Im=class extends Em{constructor(e,t,n,r){let i=-1;if(super(e,t),Lm(this,`space`,r),typeof n==`number`)for(;++i<Fm.length;){let e=Fm[i];Lm(this,Fm[i],(n&Dm[e])===Dm[e])}}};Im.prototype.defined=!0;function Lm(e,t,n){n&&(e[t]=n)}function Rm(e){let t={},n={};for(let[r,i]of Object.entries(e.properties)){let a=new Im(r,e.transform(e.attributes||{},r),i,e.space);e.mustUseProperty&&e.mustUseProperty.includes(r)&&(a.mustUseProperty=!0),t[r]=a,n[Tm(r)]=r,n[Tm(a.attribute)]=r}return new Cm(t,n,e.space)}var zm=Rm({properties:{ariaActiveDescendant:null,ariaAtomic:km,ariaAutoComplete:null,ariaBusy:km,ariaChecked:km,ariaColCount:q,ariaColIndex:q,ariaColSpan:q,ariaControls:jm,ariaCurrent:null,ariaDescribedBy:jm,ariaDetails:null,ariaDisabled:km,ariaDropEffect:jm,ariaErrorMessage:null,ariaExpanded:km,ariaFlowTo:jm,ariaGrabbed:km,ariaHasPopup:null,ariaHidden:km,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:jm,ariaLevel:q,ariaLive:null,ariaModal:km,ariaMultiLine:km,ariaMultiSelectable:km,ariaOrientation:null,ariaOwns:jm,ariaPlaceholder:null,ariaPosInSet:q,ariaPressed:km,ariaReadOnly:km,ariaRelevant:null,ariaRequired:km,ariaRoleDescription:jm,ariaRowCount:q,ariaRowIndex:q,ariaRowSpan:q,ariaSelected:km,ariaSetSize:q,ariaSort:null,ariaValueMax:q,ariaValueMin:q,ariaValueNow:q,ariaValueText:null,role:null},transform(e,t){return t===`role`?t:`aria-`+t.slice(4).toLowerCase()}});function Bm(e,t){return t in e?e[t]:t}function Vm(e,t){return Bm(e,t.toLowerCase())}var Hm=Rm({attributes:{acceptcharset:`accept-charset`,classname:`class`,htmlfor:`for`,httpequiv:`http-equiv`},mustUseProperty:[`checked`,`multiple`,`muted`,`selected`],properties:{abbr:null,accept:Mm,acceptCharset:jm,accessKey:jm,action:null,allow:null,allowFullScreen:K,allowPaymentRequest:K,allowUserMedia:K,alt:null,as:null,async:K,autoCapitalize:null,autoComplete:jm,autoFocus:K,autoPlay:K,blocking:jm,capture:null,charSet:null,checked:K,cite:null,className:jm,cols:q,colSpan:null,content:null,contentEditable:km,controls:K,controlsList:jm,coords:q|Mm,crossOrigin:null,data:null,dateTime:null,decoding:null,default:K,defer:K,dir:null,dirName:null,disabled:K,download:Am,draggable:km,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:K,formTarget:null,headers:jm,height:q,hidden:Am,high:q,href:null,hrefLang:null,htmlFor:jm,httpEquiv:jm,id:null,imageSizes:null,imageSrcSet:null,inert:K,inputMode:null,integrity:null,is:null,isMap:K,itemId:null,itemProp:jm,itemRef:jm,itemScope:K,itemType:jm,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:K,low:q,manifest:null,max:null,maxLength:q,media:null,method:null,min:null,minLength:q,multiple:K,muted:K,name:null,nonce:null,noModule:K,noValidate:K,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:K,optimum:q,pattern:null,ping:jm,placeholder:null,playsInline:K,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:K,referrerPolicy:null,rel:jm,required:K,reversed:K,rows:q,rowSpan:q,sandbox:jm,scope:null,scoped:K,seamless:K,selected:K,shadowRootClonable:K,shadowRootDelegatesFocus:K,shadowRootMode:null,shape:null,size:q,sizes:null,slot:null,span:q,spellCheck:km,src:null,srcDoc:null,srcLang:null,srcSet:null,start:q,step:null,style:null,tabIndex:q,target:null,title:null,translate:null,type:null,typeMustMatch:K,useMap:null,value:km,width:q,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:jm,axis:null,background:null,bgColor:null,border:q,borderColor:null,bottomMargin:q,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:K,declare:K,event:null,face:null,frame:null,frameBorder:null,hSpace:q,leftMargin:q,link:null,longDesc:null,lowSrc:null,marginHeight:q,marginWidth:q,noResize:K,noHref:K,noShade:K,noWrap:K,object:null,profile:null,prompt:null,rev:null,rightMargin:q,rules:null,scheme:null,scrolling:km,standby:null,summary:null,text:null,topMargin:q,valueType:null,version:null,vAlign:null,vLink:null,vSpace:q,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:K,disableRemotePlayback:K,prefix:null,property:null,results:q,security:null,unselectable:null},space:`html`,transform:Vm}),Um=Rm({attributes:{accentHeight:`accent-height`,alignmentBaseline:`alignment-baseline`,arabicForm:`arabic-form`,baselineShift:`baseline-shift`,capHeight:`cap-height`,className:`class`,clipPath:`clip-path`,clipRule:`clip-rule`,colorInterpolation:`color-interpolation`,colorInterpolationFilters:`color-interpolation-filters`,colorProfile:`color-profile`,colorRendering:`color-rendering`,crossOrigin:`crossorigin`,dataType:`datatype`,dominantBaseline:`dominant-baseline`,enableBackground:`enable-background`,fillOpacity:`fill-opacity`,fillRule:`fill-rule`,floodColor:`flood-color`,floodOpacity:`flood-opacity`,fontFamily:`font-family`,fontSize:`font-size`,fontSizeAdjust:`font-size-adjust`,fontStretch:`font-stretch`,fontStyle:`font-style`,fontVariant:`font-variant`,fontWeight:`font-weight`,glyphName:`glyph-name`,glyphOrientationHorizontal:`glyph-orientation-horizontal`,glyphOrientationVertical:`glyph-orientation-vertical`,hrefLang:`hreflang`,horizAdvX:`horiz-adv-x`,horizOriginX:`horiz-origin-x`,horizOriginY:`horiz-origin-y`,imageRendering:`image-rendering`,letterSpacing:`letter-spacing`,lightingColor:`lighting-color`,markerEnd:`marker-end`,markerMid:`marker-mid`,markerStart:`marker-start`,navDown:`nav-down`,navDownLeft:`nav-down-left`,navDownRight:`nav-down-right`,navLeft:`nav-left`,navNext:`nav-next`,navPrev:`nav-prev`,navRight:`nav-right`,navUp:`nav-up`,navUpLeft:`nav-up-left`,navUpRight:`nav-up-right`,onAbort:`onabort`,onActivate:`onactivate`,onAfterPrint:`onafterprint`,onBeforePrint:`onbeforeprint`,onBegin:`onbegin`,onCancel:`oncancel`,onCanPlay:`oncanplay`,onCanPlayThrough:`oncanplaythrough`,onChange:`onchange`,onClick:`onclick`,onClose:`onclose`,onCopy:`oncopy`,onCueChange:`oncuechange`,onCut:`oncut`,onDblClick:`ondblclick`,onDrag:`ondrag`,onDragEnd:`ondragend`,onDragEnter:`ondragenter`,onDragExit:`ondragexit`,onDragLeave:`ondragleave`,onDragOver:`ondragover`,onDragStart:`ondragstart`,onDrop:`ondrop`,onDurationChange:`ondurationchange`,onEmptied:`onemptied`,onEnd:`onend`,onEnded:`onended`,onError:`onerror`,onFocus:`onfocus`,onFocusIn:`onfocusin`,onFocusOut:`onfocusout`,onHashChange:`onhashchange`,onInput:`oninput`,onInvalid:`oninvalid`,onKeyDown:`onkeydown`,onKeyPress:`onkeypress`,onKeyUp:`onkeyup`,onLoad:`onload`,onLoadedData:`onloadeddata`,onLoadedMetadata:`onloadedmetadata`,onLoadStart:`onloadstart`,onMessage:`onmessage`,onMouseDown:`onmousedown`,onMouseEnter:`onmouseenter`,onMouseLeave:`onmouseleave`,onMouseMove:`onmousemove`,onMouseOut:`onmouseout`,onMouseOver:`onmouseover`,onMouseUp:`onmouseup`,onMouseWheel:`onmousewheel`,onOffline:`onoffline`,onOnline:`ononline`,onPageHide:`onpagehide`,onPageShow:`onpageshow`,onPaste:`onpaste`,onPause:`onpause`,onPlay:`onplay`,onPlaying:`onplaying`,onPopState:`onpopstate`,onProgress:`onprogress`,onRateChange:`onratechange`,onRepeat:`onrepeat`,onReset:`onreset`,onResize:`onresize`,onScroll:`onscroll`,onSeeked:`onseeked`,onSeeking:`onseeking`,onSelect:`onselect`,onShow:`onshow`,onStalled:`onstalled`,onStorage:`onstorage`,onSubmit:`onsubmit`,onSuspend:`onsuspend`,onTimeUpdate:`ontimeupdate`,onToggle:`ontoggle`,onUnload:`onunload`,onVolumeChange:`onvolumechange`,onWaiting:`onwaiting`,onZoom:`onzoom`,overlinePosition:`overline-position`,overlineThickness:`overline-thickness`,paintOrder:`paint-order`,panose1:`panose-1`,pointerEvents:`pointer-events`,referrerPolicy:`referrerpolicy`,renderingIntent:`rendering-intent`,shapeRendering:`shape-rendering`,stopColor:`stop-color`,stopOpacity:`stop-opacity`,strikethroughPosition:`strikethrough-position`,strikethroughThickness:`strikethrough-thickness`,strokeDashArray:`stroke-dasharray`,strokeDashOffset:`stroke-dashoffset`,strokeLineCap:`stroke-linecap`,strokeLineJoin:`stroke-linejoin`,strokeMiterLimit:`stroke-miterlimit`,strokeOpacity:`stroke-opacity`,strokeWidth:`stroke-width`,tabIndex:`tabindex`,textAnchor:`text-anchor`,textDecoration:`text-decoration`,textRendering:`text-rendering`,transformOrigin:`transform-origin`,typeOf:`typeof`,underlinePosition:`underline-position`,underlineThickness:`underline-thickness`,unicodeBidi:`unicode-bidi`,unicodeRange:`unicode-range`,unitsPerEm:`units-per-em`,vAlphabetic:`v-alphabetic`,vHanging:`v-hanging`,vIdeographic:`v-ideographic`,vMathematical:`v-mathematical`,vectorEffect:`vector-effect`,vertAdvY:`vert-adv-y`,vertOriginX:`vert-origin-x`,vertOriginY:`vert-origin-y`,wordSpacing:`word-spacing`,writingMode:`writing-mode`,xHeight:`x-height`,playbackOrder:`playbackorder`,timelineBegin:`timelinebegin`},properties:{about:Nm,accentHeight:q,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:q,amplitude:q,arabicForm:null,ascent:q,attributeName:null,attributeType:null,azimuth:q,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:q,by:null,calcMode:null,capHeight:q,className:jm,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:q,diffuseConstant:q,direction:null,display:null,dur:null,divisor:q,dominantBaseline:null,download:K,dx:null,dy:null,edgeMode:null,editable:null,elevation:q,enableBackground:null,end:null,event:null,exponent:q,externalResourcesRequired:null,fill:null,fillOpacity:q,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:Mm,g2:Mm,glyphName:Mm,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:q,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:q,horizOriginX:q,horizOriginY:q,id:null,ideographic:q,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:q,k:q,k1:q,k2:q,k3:q,k4:q,kernelMatrix:Nm,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:q,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:q,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:q,overlineThickness:q,paintOrder:null,panose1:null,path:null,pathLength:q,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:jm,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:q,pointsAtY:q,pointsAtZ:q,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:Nm,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:Nm,rev:Nm,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:Nm,requiredFeatures:Nm,requiredFonts:Nm,requiredFormats:Nm,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:q,specularExponent:q,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:q,strikethroughThickness:q,string:null,stroke:null,strokeDashArray:Nm,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:q,strokeOpacity:q,strokeWidth:null,style:null,surfaceScale:q,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:Nm,tabIndex:q,tableValues:null,target:null,targetX:q,targetY:q,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:Nm,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:q,underlineThickness:q,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:q,values:null,vAlphabetic:q,vMathematical:q,vectorEffect:null,vHanging:q,vIdeographic:q,version:null,vertAdvY:q,vertOriginX:q,vertOriginY:q,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:q,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:`svg`,transform:Bm}),Wm=Rm({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:`xlink`,transform(e,t){return`xlink:`+t.slice(5).toLowerCase()}}),Gm=Rm({attributes:{xmlnsxlink:`xmlns:xlink`},properties:{xmlnsXLink:null,xmlns:null},space:`xmlns`,transform:Vm}),Km=Rm({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:`xml`,transform(e,t){return`xml:`+t.slice(3).toLowerCase()}}),qm={classId:`classID`,dataType:`datatype`,itemId:`itemID`,strokeDashArray:`strokeDasharray`,strokeDashOffset:`strokeDashoffset`,strokeLineCap:`strokeLinecap`,strokeLineJoin:`strokeLinejoin`,strokeMiterLimit:`strokeMiterlimit`,typeOf:`typeof`,xLinkActuate:`xlinkActuate`,xLinkArcRole:`xlinkArcrole`,xLinkHref:`xlinkHref`,xLinkRole:`xlinkRole`,xLinkShow:`xlinkShow`,xLinkTitle:`xlinkTitle`,xLinkType:`xlinkType`,xmlnsXLink:`xmlnsXlink`},Jm=/[A-Z]/g,Ym=/-[a-z]/g,Xm=/^data[-\w.:]+$/i;function Zm(e,t){let n=Tm(t),r=t,i=Em;if(n in e.normal)return e.property[e.normal[n]];if(n.length>4&&n.slice(0,4)===`data`&&Xm.test(t)){if(t.charAt(4)===`-`){let e=t.slice(5).replace(Ym,$m);r=`data`+e.charAt(0).toUpperCase()+e.slice(1)}else{let e=t.slice(4);if(!Ym.test(e)){let n=e.replace(Jm,Qm);n.charAt(0)!==`-`&&(n=`-`+n),t=`data`+n}}i=Im}return new i(r,t)}function Qm(e){return`-`+e.toLowerCase()}function $m(e){return e.charAt(1).toUpperCase()}var eh=wm([zm,Hm,Wm,Gm,Km],`html`),th=wm([zm,Um,Wm,Gm,Km],`svg`);function nh(e){return e.join(` `).trim()}var rh=a(((e,t)=>{var n=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,r=/\n/g,i=/^\s*/,a=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,o=/^:\s*/,s=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,c=/^[;\s]*/,l=/^\s+|\s+$/g,u=`
|
|
15
|
+
`})),!0;case`send-message`:return t.onSend(),!0;case`delete-content`:return c(nm({direction:d.direction,nodes:u.nodes,selection:u.selection})),!0;case`noop`:return!1}}function um(e){let[t]=kr();return(0,P.useLayoutEffect)(()=>(e.editorRef.current=t,()=>{e.editorRef.current===t&&(e.editorRef.current=null)}),[t,e.editorRef]),(0,P.useLayoutEffect)(()=>{t.setEditable(!e.disabled)},[t,e.disabled]),(0,P.useLayoutEffect)(()=>{let n=Zp(e.nodes),r=e.pendingSelectionRef.current,i=n!==e.editorSignatureRef.current;if(!(!i&&!r)){if(e.isApplyingExternalUpdateRef.current=!0,i?(qp(t,e.nodes,r),e.editorSignatureRef.current=n,e.lastPublishedSignatureRef.current=n):r&&Jp(t,r),r&&(e.selectionRef.current=r,e.pendingSelectionRef.current=null),e.shouldFocusAfterSyncRef.current){e.shouldFocusAfterSyncRef.current=!1;let n=e.selectionRef.current;t.focus(()=>{n&&Jp(t,n)})}requestAnimationFrame(()=>{e.isApplyingExternalUpdateRef.current=!1})}},[t,e.editorSignatureRef,e.isApplyingExternalUpdateRef,e.lastPublishedSignatureRef,e.nodes,e.pendingSelectionRef,e.selectionRef,e.shouldFocusAfterSyncRef]),(0,P.useEffect)(()=>md(t.registerUpdateListener(({editorState:t})=>{let n=Gp(t),r=Zp(n.nodes);e.selectionRef.current=n.selection,e.editorSignatureRef.current=r,e.syncSlashState(n.nodes,n.selection),!(e.isApplyingExternalUpdateRef.current||e.isComposingRef.current)&&r!==e.lastPublishedSignatureRef.current&&(e.lastPublishedSignatureRef.current=r,e.onNodesChange(n.nodes))}),t.registerCommand(ma,()=>{let n=Gp(t.getEditorState());return e.selectionRef.current=n.selection,e.isComposingRef.current||e.syncSlashState(n.nodes,n.selection),!1},0),t.registerCommand(Qa,()=>(e.onBlur(),!1),0),t.registerCommand(ja,t=>e.onKeyDown(t),3)),[t,e.editorSignatureRef,e.isApplyingExternalUpdateRef,e.isComposingRef,e.lastPublishedSignatureRef,e.onBlur,e.onKeyDown,e.onNodesChange,e.selectionRef,e.syncSlashState]),null}var dm=(0,P.forwardRef)(function(e,t){let n=(0,P.useRef)(null),r=(0,P.useRef)(null),i=(0,P.useRef)(null),a=(0,P.useRef)(!1),o=(0,P.useRef)(!1),s=(0,P.useRef)(!1),c=(0,P.useRef)(``),l=(0,P.useRef)(``),u=(t,n)=>{let r=Pp(t,n);e.onSlashTriggerChange?.(r),e.onSlashQueryChange?.(r?.query??null),e.onSlashOpenChange(r!==null)},d=()=>e.nodes,f=()=>{if(r.current)return r.current;if(!n.current)return null;let e=Gp(n.current.getEditorState());return r.current=e.selection,e.selection},p=(t,n)=>{r.current=t.selection,i.current=t.selection,n?.focusAfterSync&&(a.current=!0);let o=Zp(t.nodes);u(t.nodes,t.selection),(n?.forcePublish||o!==l.current)&&(l.current=o,e.onNodesChange(t.nodes))},m=()=>{let e=n.current;if(!e)return;let t=r.current;e.focus(()=>{t&&Jp(e,t)})},h=()=>({nodes:d(),selection:f()});return(0,P.useImperativeHandle)(t,()=>am({focusComposer:m,onSlashItemSelect:e.onSlashItemSelect,optionsReader:h,publishSnapshot:p}),[e.onSlashItemSelect]),(0,N.jsxs)(Vd,{initialConfig:(0,P.useMemo)(()=>({editable:!e.disabled,editorState:()=>{Kp(e.nodes,null)},namespace:`NextClawChatComposerLexical`,nodes:[Lp],onError:e=>{throw e},theme:{}}),[e.disabled,e.nodes]),children:[(0,N.jsx)(`div`,{className:`px-3 py-2 sm:px-4 sm:py-2.5`,children:(0,N.jsx)(`div`,{className:`min-h-11 sm:min-h-[60px]`,children:(0,N.jsx)(hp,{contentEditable:(0,N.jsx)(Fd,{className:`min-h-7 max-h-[188px] w-full overflow-y-auto whitespace-pre-wrap break-words bg-transparent py-0.5 text-sm leading-6 text-gray-800 outline-none`,onBeforeInput:t=>{sm({disabled:e.disabled,event:t,isComposing:o.current,publishSnapshot:p,snapshotReader:h})},onCompositionEnd:e=>{o.current=!1;let t=e.nativeEvent;cm({data:typeof t.data==`string`?t.data:``,fallbackSnapshot:()=>{let e=n.current;return e?Gp(e.getEditorState()):h()},publishSnapshot:p,snapshotReader:h})},onCompositionStart:()=>{o.current=!0},onPaste:t=>{let n=Array.from(t.clipboardData.files??[]);n.length>0&&e.onFilesAdd&&(t.preventDefault(),e.onFilesAdd(n))}}),placeholder:(0,N.jsx)(`div`,{className:`pointer-events-none absolute left-3 top-2 select-none text-sm leading-6 text-gray-400 sm:left-4 sm:top-2.5`,children:e.placeholder}),ErrorBoundary:qd})})}),(0,N.jsx)(Hd,{editorRef:n}),(0,N.jsx)(um,{disabled:e.disabled,editorRef:n,editorSignatureRef:c,isApplyingExternalUpdateRef:s,isComposingRef:o,lastPublishedSignatureRef:l,nodes:e.nodes,onBlur:()=>{e.onSlashQueryChange?.(null),e.onSlashOpenChange(!1)},onKeyDown:t=>{let i=n.current;if(!i)return!1;let a=Gp(i.getEditorState());return r.current=a.selection,lm({actions:e.actions,activeSlashIndex:e.activeSlashIndex,nativeEvent:t,onSlashActiveIndexChange:e.onSlashActiveIndexChange,onSlashItemSelect:e.onSlashItemSelect,onSlashOpenChange:e.onSlashOpenChange,onSlashQueryChange:e.onSlashQueryChange,publishSnapshot:p,slashItems:e.slashItems,snapshot:a})},onNodesChange:e.onNodesChange,pendingSelectionRef:i,selectionRef:r,shouldFocusAfterSyncRef:a,syncSlashState:u})]})});dm.displayName=`LexicalChatInputBarTokenizedComposer`;function fm({hint:e}){return e?e.loading?(0,N.jsx)(`div`,{className:`px-4 pb-2`,children:(0,N.jsxs)(`div`,{className:`inline-flex items-center gap-2 rounded-lg border border-gray-200 bg-gray-50 px-3 py-2`,children:[(0,N.jsx)(`span`,{className:`h-3 w-28 animate-pulse rounded bg-gray-200`}),(0,N.jsx)(`span`,{className:`h-3 w-16 animate-pulse rounded bg-gray-200`})]})}):(0,N.jsx)(`div`,{className:`px-4 pb-2`,children:(0,N.jsxs)(`div`,{className:`inline-flex items-center gap-2 rounded-lg px-3 py-1.5 text-xs ${e.tone===`warning`?`border-amber-200 bg-amber-50 text-amber-800`:`border-gray-200 bg-gray-50 text-gray-700`}`,children:[e.text?(0,N.jsx)(`span`,{children:e.text}):null,e.actionLabel&&e.onAction?(0,N.jsx)(`button`,{type:`button`,onClick:e.onAction,className:`font-semibold underline-offset-2 hover:underline`,children:e.actionLabel}):null]})}):null}var pm=(0,P.forwardRef)(function(e,t){let n=(0,P.useRef)(null),[r,i]=(0,P.useState)(null),[a,o]=(0,P.useState)(0),[s,c]=(0,P.useState)(null),[l,u]=(0,P.useState)(null),d=s!==null&&l!==s,f=e.slashMenu.items[a]??null;(0,P.useEffect)(()=>{o(t=>e.slashMenu.items.length===0?0:Math.min(t,e.slashMenu.items.length-1))},[e.slashMenu.items.length]),(0,P.useEffect)(()=>{r!==null&&o(0)},[r]),(0,P.useEffect)(()=>{s===null&&l!==null&&u(null)},[s,l]);let p=(0,P.useMemo)(()=>e.toolbar.skillPicker?{...e.toolbar,skillPicker:{...e.toolbar.skillPicker,onSelectedKeysChange:t=>{n.current?.syncSelectedSkills(t,e.toolbar.skillPicker?.options??[]),e.toolbar.skillPicker?.onSelectedKeysChange(t)}}}:e.toolbar,[e.toolbar]);return(0,P.useImperativeHandle)(t,()=>({insertFileToken:(e,t)=>n.current?.insertFileToken(e,t),insertFileTokens:e=>n.current?.insertFileTokens(e),focusComposer:()=>n.current?.focusComposer()}),[]),(0,N.jsx)(`div`,{className:`border-t border-gray-200/80 bg-white p-4`,children:(0,N.jsx)(`div`,{className:`mx-auto w-full max-w-[min(1120px,100%)]`,children:(0,N.jsxs)(`div`,{className:`overflow-hidden rounded-2xl border border-gray-200 bg-white shadow-card`,children:[(0,N.jsxs)(`div`,{className:`relative`,children:[(0,N.jsx)(dm,{ref:n,nodes:e.composer.nodes,placeholder:e.composer.placeholder,disabled:e.composer.disabled,slashItems:e.slashMenu.items,onSlashItemSelect:e.slashMenu.onSelectItem,actions:e.toolbar.actions,activeSlashIndex:a,onNodesChange:e.composer.onNodesChange,onFilesAdd:e.composer.onFilesAdd,onSlashQueryChange:t=>{i(t),e.composer.onSlashQueryChange?.(t)},onSlashTriggerChange:e=>{c(e?.start??null)},onSlashOpenChange:e=>{!e&&s!==null&&u(s)},onSlashActiveIndexChange:o}),(0,N.jsx)(ur,{isOpen:d,isLoading:e.slashMenu.isLoading,items:e.slashMenu.items,activeIndex:a,activeItem:f,texts:e.slashMenu.texts,onSelectItem:e=>{u(null),n.current?.insertSlashItem(e)},onOpenChange:e=>{!e&&s!==null&&u(s)},onSetActiveIndex:o})]}),(0,N.jsx)(fm,{hint:e.hint}),(0,N.jsx)(Er,{...p})]})})})});pm.displayName=`ChatInputBar`;function mm({role:e}){return e===`user`?(0,N.jsx)(`div`,{"data-testid":`chat-message-avatar-user`,className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-primary text-white shadow-sm`,children:(0,N.jsx)(un,{className:`h-4 w-4`})}):e===`tool`?(0,N.jsx)(`div`,{"data-testid":`chat-message-avatar-tool`,className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-amber-100 text-amber-700 shadow-sm`,children:(0,N.jsx)(_e,{className:`h-4 w-4`})}):(0,N.jsx)(`div`,{"data-testid":`chat-message-avatar-assistant`,className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-gradient-to-b from-gray-700 to-gray-950 text-white shadow-md ring-1 ring-inset ring-white/20`,children:(0,N.jsx)(me,{className:`h-[18px] w-[18px] text-white/95`,strokeWidth:2.5})})}function hm(e,t){let n=t||{};return(e[e.length-1]===``?[...e,``]:e).join((n.padRight?` `:``)+`,`+(n.padLeft===!1?``:` `)).trim()}var gm=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,_m=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,vm={};function ym(e,t){return((t||vm).jsx?_m:gm).test(e)}var bm=/[ \t\n\f\r]/g;function xm(e){return typeof e==`object`?e.type===`text`?Sm(e.value):!1:Sm(e)}function Sm(e){return e.replace(bm,``)===``}var Cm=class{constructor(e,t,n){this.normal=t,this.property=e,n&&(this.space=n)}};Cm.prototype.normal={},Cm.prototype.property={},Cm.prototype.space=void 0;function wm(e,t){let n={},r={};for(let t of e)Object.assign(n,t.property),Object.assign(r,t.normal);return new Cm(n,r,t)}function Tm(e){return e.toLowerCase()}var Em=class{constructor(e,t){this.attribute=t,this.property=e}};Em.prototype.attribute=``,Em.prototype.booleanish=!1,Em.prototype.boolean=!1,Em.prototype.commaOrSpaceSeparated=!1,Em.prototype.commaSeparated=!1,Em.prototype.defined=!1,Em.prototype.mustUseProperty=!1,Em.prototype.number=!1,Em.prototype.overloadedBoolean=!1,Em.prototype.property=``,Em.prototype.spaceSeparated=!1,Em.prototype.space=void 0;var Dm=i({boolean:()=>K,booleanish:()=>km,commaOrSpaceSeparated:()=>Nm,commaSeparated:()=>Mm,number:()=>q,overloadedBoolean:()=>Am,spaceSeparated:()=>jm}),Om=0,K=Pm(),km=Pm(),Am=Pm(),q=Pm(),jm=Pm(),Mm=Pm(),Nm=Pm();function Pm(){return 2**++Om}var Fm=Object.keys(Dm),Im=class extends Em{constructor(e,t,n,r){let i=-1;if(super(e,t),Lm(this,`space`,r),typeof n==`number`)for(;++i<Fm.length;){let e=Fm[i];Lm(this,Fm[i],(n&Dm[e])===Dm[e])}}};Im.prototype.defined=!0;function Lm(e,t,n){n&&(e[t]=n)}function Rm(e){let t={},n={};for(let[r,i]of Object.entries(e.properties)){let a=new Im(r,e.transform(e.attributes||{},r),i,e.space);e.mustUseProperty&&e.mustUseProperty.includes(r)&&(a.mustUseProperty=!0),t[r]=a,n[Tm(r)]=r,n[Tm(a.attribute)]=r}return new Cm(t,n,e.space)}var zm=Rm({properties:{ariaActiveDescendant:null,ariaAtomic:km,ariaAutoComplete:null,ariaBusy:km,ariaChecked:km,ariaColCount:q,ariaColIndex:q,ariaColSpan:q,ariaControls:jm,ariaCurrent:null,ariaDescribedBy:jm,ariaDetails:null,ariaDisabled:km,ariaDropEffect:jm,ariaErrorMessage:null,ariaExpanded:km,ariaFlowTo:jm,ariaGrabbed:km,ariaHasPopup:null,ariaHidden:km,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:jm,ariaLevel:q,ariaLive:null,ariaModal:km,ariaMultiLine:km,ariaMultiSelectable:km,ariaOrientation:null,ariaOwns:jm,ariaPlaceholder:null,ariaPosInSet:q,ariaPressed:km,ariaReadOnly:km,ariaRelevant:null,ariaRequired:km,ariaRoleDescription:jm,ariaRowCount:q,ariaRowIndex:q,ariaRowSpan:q,ariaSelected:km,ariaSetSize:q,ariaSort:null,ariaValueMax:q,ariaValueMin:q,ariaValueNow:q,ariaValueText:null,role:null},transform(e,t){return t===`role`?t:`aria-`+t.slice(4).toLowerCase()}});function Bm(e,t){return t in e?e[t]:t}function Vm(e,t){return Bm(e,t.toLowerCase())}var Hm=Rm({attributes:{acceptcharset:`accept-charset`,classname:`class`,htmlfor:`for`,httpequiv:`http-equiv`},mustUseProperty:[`checked`,`multiple`,`muted`,`selected`],properties:{abbr:null,accept:Mm,acceptCharset:jm,accessKey:jm,action:null,allow:null,allowFullScreen:K,allowPaymentRequest:K,allowUserMedia:K,alt:null,as:null,async:K,autoCapitalize:null,autoComplete:jm,autoFocus:K,autoPlay:K,blocking:jm,capture:null,charSet:null,checked:K,cite:null,className:jm,cols:q,colSpan:null,content:null,contentEditable:km,controls:K,controlsList:jm,coords:q|Mm,crossOrigin:null,data:null,dateTime:null,decoding:null,default:K,defer:K,dir:null,dirName:null,disabled:K,download:Am,draggable:km,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:K,formTarget:null,headers:jm,height:q,hidden:Am,high:q,href:null,hrefLang:null,htmlFor:jm,httpEquiv:jm,id:null,imageSizes:null,imageSrcSet:null,inert:K,inputMode:null,integrity:null,is:null,isMap:K,itemId:null,itemProp:jm,itemRef:jm,itemScope:K,itemType:jm,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:K,low:q,manifest:null,max:null,maxLength:q,media:null,method:null,min:null,minLength:q,multiple:K,muted:K,name:null,nonce:null,noModule:K,noValidate:K,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:K,optimum:q,pattern:null,ping:jm,placeholder:null,playsInline:K,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:K,referrerPolicy:null,rel:jm,required:K,reversed:K,rows:q,rowSpan:q,sandbox:jm,scope:null,scoped:K,seamless:K,selected:K,shadowRootClonable:K,shadowRootDelegatesFocus:K,shadowRootMode:null,shape:null,size:q,sizes:null,slot:null,span:q,spellCheck:km,src:null,srcDoc:null,srcLang:null,srcSet:null,start:q,step:null,style:null,tabIndex:q,target:null,title:null,translate:null,type:null,typeMustMatch:K,useMap:null,value:km,width:q,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:jm,axis:null,background:null,bgColor:null,border:q,borderColor:null,bottomMargin:q,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:K,declare:K,event:null,face:null,frame:null,frameBorder:null,hSpace:q,leftMargin:q,link:null,longDesc:null,lowSrc:null,marginHeight:q,marginWidth:q,noResize:K,noHref:K,noShade:K,noWrap:K,object:null,profile:null,prompt:null,rev:null,rightMargin:q,rules:null,scheme:null,scrolling:km,standby:null,summary:null,text:null,topMargin:q,valueType:null,version:null,vAlign:null,vLink:null,vSpace:q,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:K,disableRemotePlayback:K,prefix:null,property:null,results:q,security:null,unselectable:null},space:`html`,transform:Vm}),Um=Rm({attributes:{accentHeight:`accent-height`,alignmentBaseline:`alignment-baseline`,arabicForm:`arabic-form`,baselineShift:`baseline-shift`,capHeight:`cap-height`,className:`class`,clipPath:`clip-path`,clipRule:`clip-rule`,colorInterpolation:`color-interpolation`,colorInterpolationFilters:`color-interpolation-filters`,colorProfile:`color-profile`,colorRendering:`color-rendering`,crossOrigin:`crossorigin`,dataType:`datatype`,dominantBaseline:`dominant-baseline`,enableBackground:`enable-background`,fillOpacity:`fill-opacity`,fillRule:`fill-rule`,floodColor:`flood-color`,floodOpacity:`flood-opacity`,fontFamily:`font-family`,fontSize:`font-size`,fontSizeAdjust:`font-size-adjust`,fontStretch:`font-stretch`,fontStyle:`font-style`,fontVariant:`font-variant`,fontWeight:`font-weight`,glyphName:`glyph-name`,glyphOrientationHorizontal:`glyph-orientation-horizontal`,glyphOrientationVertical:`glyph-orientation-vertical`,hrefLang:`hreflang`,horizAdvX:`horiz-adv-x`,horizOriginX:`horiz-origin-x`,horizOriginY:`horiz-origin-y`,imageRendering:`image-rendering`,letterSpacing:`letter-spacing`,lightingColor:`lighting-color`,markerEnd:`marker-end`,markerMid:`marker-mid`,markerStart:`marker-start`,navDown:`nav-down`,navDownLeft:`nav-down-left`,navDownRight:`nav-down-right`,navLeft:`nav-left`,navNext:`nav-next`,navPrev:`nav-prev`,navRight:`nav-right`,navUp:`nav-up`,navUpLeft:`nav-up-left`,navUpRight:`nav-up-right`,onAbort:`onabort`,onActivate:`onactivate`,onAfterPrint:`onafterprint`,onBeforePrint:`onbeforeprint`,onBegin:`onbegin`,onCancel:`oncancel`,onCanPlay:`oncanplay`,onCanPlayThrough:`oncanplaythrough`,onChange:`onchange`,onClick:`onclick`,onClose:`onclose`,onCopy:`oncopy`,onCueChange:`oncuechange`,onCut:`oncut`,onDblClick:`ondblclick`,onDrag:`ondrag`,onDragEnd:`ondragend`,onDragEnter:`ondragenter`,onDragExit:`ondragexit`,onDragLeave:`ondragleave`,onDragOver:`ondragover`,onDragStart:`ondragstart`,onDrop:`ondrop`,onDurationChange:`ondurationchange`,onEmptied:`onemptied`,onEnd:`onend`,onEnded:`onended`,onError:`onerror`,onFocus:`onfocus`,onFocusIn:`onfocusin`,onFocusOut:`onfocusout`,onHashChange:`onhashchange`,onInput:`oninput`,onInvalid:`oninvalid`,onKeyDown:`onkeydown`,onKeyPress:`onkeypress`,onKeyUp:`onkeyup`,onLoad:`onload`,onLoadedData:`onloadeddata`,onLoadedMetadata:`onloadedmetadata`,onLoadStart:`onloadstart`,onMessage:`onmessage`,onMouseDown:`onmousedown`,onMouseEnter:`onmouseenter`,onMouseLeave:`onmouseleave`,onMouseMove:`onmousemove`,onMouseOut:`onmouseout`,onMouseOver:`onmouseover`,onMouseUp:`onmouseup`,onMouseWheel:`onmousewheel`,onOffline:`onoffline`,onOnline:`ononline`,onPageHide:`onpagehide`,onPageShow:`onpageshow`,onPaste:`onpaste`,onPause:`onpause`,onPlay:`onplay`,onPlaying:`onplaying`,onPopState:`onpopstate`,onProgress:`onprogress`,onRateChange:`onratechange`,onRepeat:`onrepeat`,onReset:`onreset`,onResize:`onresize`,onScroll:`onscroll`,onSeeked:`onseeked`,onSeeking:`onseeking`,onSelect:`onselect`,onShow:`onshow`,onStalled:`onstalled`,onStorage:`onstorage`,onSubmit:`onsubmit`,onSuspend:`onsuspend`,onTimeUpdate:`ontimeupdate`,onToggle:`ontoggle`,onUnload:`onunload`,onVolumeChange:`onvolumechange`,onWaiting:`onwaiting`,onZoom:`onzoom`,overlinePosition:`overline-position`,overlineThickness:`overline-thickness`,paintOrder:`paint-order`,panose1:`panose-1`,pointerEvents:`pointer-events`,referrerPolicy:`referrerpolicy`,renderingIntent:`rendering-intent`,shapeRendering:`shape-rendering`,stopColor:`stop-color`,stopOpacity:`stop-opacity`,strikethroughPosition:`strikethrough-position`,strikethroughThickness:`strikethrough-thickness`,strokeDashArray:`stroke-dasharray`,strokeDashOffset:`stroke-dashoffset`,strokeLineCap:`stroke-linecap`,strokeLineJoin:`stroke-linejoin`,strokeMiterLimit:`stroke-miterlimit`,strokeOpacity:`stroke-opacity`,strokeWidth:`stroke-width`,tabIndex:`tabindex`,textAnchor:`text-anchor`,textDecoration:`text-decoration`,textRendering:`text-rendering`,transformOrigin:`transform-origin`,typeOf:`typeof`,underlinePosition:`underline-position`,underlineThickness:`underline-thickness`,unicodeBidi:`unicode-bidi`,unicodeRange:`unicode-range`,unitsPerEm:`units-per-em`,vAlphabetic:`v-alphabetic`,vHanging:`v-hanging`,vIdeographic:`v-ideographic`,vMathematical:`v-mathematical`,vectorEffect:`vector-effect`,vertAdvY:`vert-adv-y`,vertOriginX:`vert-origin-x`,vertOriginY:`vert-origin-y`,wordSpacing:`word-spacing`,writingMode:`writing-mode`,xHeight:`x-height`,playbackOrder:`playbackorder`,timelineBegin:`timelinebegin`},properties:{about:Nm,accentHeight:q,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:q,amplitude:q,arabicForm:null,ascent:q,attributeName:null,attributeType:null,azimuth:q,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:q,by:null,calcMode:null,capHeight:q,className:jm,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:q,diffuseConstant:q,direction:null,display:null,dur:null,divisor:q,dominantBaseline:null,download:K,dx:null,dy:null,edgeMode:null,editable:null,elevation:q,enableBackground:null,end:null,event:null,exponent:q,externalResourcesRequired:null,fill:null,fillOpacity:q,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:Mm,g2:Mm,glyphName:Mm,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:q,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:q,horizOriginX:q,horizOriginY:q,id:null,ideographic:q,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:q,k:q,k1:q,k2:q,k3:q,k4:q,kernelMatrix:Nm,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:q,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:q,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:q,overlineThickness:q,paintOrder:null,panose1:null,path:null,pathLength:q,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:jm,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:q,pointsAtY:q,pointsAtZ:q,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:Nm,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:Nm,rev:Nm,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:Nm,requiredFeatures:Nm,requiredFonts:Nm,requiredFormats:Nm,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:q,specularExponent:q,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:q,strikethroughThickness:q,string:null,stroke:null,strokeDashArray:Nm,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:q,strokeOpacity:q,strokeWidth:null,style:null,surfaceScale:q,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:Nm,tabIndex:q,tableValues:null,target:null,targetX:q,targetY:q,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:Nm,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:q,underlineThickness:q,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:q,values:null,vAlphabetic:q,vMathematical:q,vectorEffect:null,vHanging:q,vIdeographic:q,version:null,vertAdvY:q,vertOriginX:q,vertOriginY:q,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:q,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:`svg`,transform:Bm}),Wm=Rm({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:`xlink`,transform(e,t){return`xlink:`+t.slice(5).toLowerCase()}}),Gm=Rm({attributes:{xmlnsxlink:`xmlns:xlink`},properties:{xmlnsXLink:null,xmlns:null},space:`xmlns`,transform:Vm}),Km=Rm({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:`xml`,transform(e,t){return`xml:`+t.slice(3).toLowerCase()}}),qm={classId:`classID`,dataType:`datatype`,itemId:`itemID`,strokeDashArray:`strokeDasharray`,strokeDashOffset:`strokeDashoffset`,strokeLineCap:`strokeLinecap`,strokeLineJoin:`strokeLinejoin`,strokeMiterLimit:`strokeMiterlimit`,typeOf:`typeof`,xLinkActuate:`xlinkActuate`,xLinkArcRole:`xlinkArcrole`,xLinkHref:`xlinkHref`,xLinkRole:`xlinkRole`,xLinkShow:`xlinkShow`,xLinkTitle:`xlinkTitle`,xLinkType:`xlinkType`,xmlnsXLink:`xmlnsXlink`},Jm=/[A-Z]/g,Ym=/-[a-z]/g,Xm=/^data[-\w.:]+$/i;function Zm(e,t){let n=Tm(t),r=t,i=Em;if(n in e.normal)return e.property[e.normal[n]];if(n.length>4&&n.slice(0,4)===`data`&&Xm.test(t)){if(t.charAt(4)===`-`){let e=t.slice(5).replace(Ym,$m);r=`data`+e.charAt(0).toUpperCase()+e.slice(1)}else{let e=t.slice(4);if(!Ym.test(e)){let n=e.replace(Jm,Qm);n.charAt(0)!==`-`&&(n=`-`+n),t=`data`+n}}i=Im}return new i(r,t)}function Qm(e){return`-`+e.toLowerCase()}function $m(e){return e.charAt(1).toUpperCase()}var eh=wm([zm,Hm,Wm,Gm,Km],`html`),th=wm([zm,Um,Wm,Gm,Km],`svg`);function nh(e){return e.join(` `).trim()}var rh=a(((e,t)=>{var n=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,r=/\n/g,i=/^\s*/,a=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,o=/^:\s*/,s=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,c=/^[;\s]*/,l=/^\s+|\s+$/g,u=`
|
|
16
16
|
`,d=`/`,f=`*`,p=``,m=`comment`,h=`declaration`;function g(e,t){if(typeof e!=`string`)throw TypeError(`First argument must be a string`);if(!e)return[];t||={};var l=1,g=1;function v(e){var t=e.match(r);t&&(l+=t.length);var n=e.lastIndexOf(u);g=~n?e.length-n:g+e.length}function y(){var e={line:l,column:g};return function(t){return t.position=new b(e),C(),t}}function b(e){this.start=e,this.end={line:l,column:g},this.source=t.source}b.prototype.content=e;function x(n){var r=Error(t.source+`:`+l+`:`+g+`: `+n);if(r.reason=n,r.filename=t.source,r.line=l,r.column=g,r.source=e,!t.silent)throw r}function S(t){var n=t.exec(e);if(n){var r=n[0];return v(r),e=e.slice(r.length),n}}function C(){S(i)}function w(e){var t;for(e||=[];t=T();)t!==!1&&e.push(t);return e}function T(){var t=y();if(!(d!=e.charAt(0)||f!=e.charAt(1))){for(var n=2;p!=e.charAt(n)&&(f!=e.charAt(n)||d!=e.charAt(n+1));)++n;if(n+=2,p===e.charAt(n-1))return x(`End of comment missing`);var r=e.slice(2,n-2);return g+=2,v(r),e=e.slice(n),g+=2,t({type:m,comment:r})}}function E(){var e=y(),t=S(a);if(t){if(T(),!S(o))return x(`property missing ':'`);var r=S(s),i=e({type:h,property:_(t[0].replace(n,p)),value:r?_(r[0].replace(n,p)):p});return S(c),i}}function D(){var e=[];w(e);for(var t;t=E();)t!==!1&&(e.push(t),w(e));return e}return C(),D()}function _(e){return e?e.replace(l,p):p}t.exports=g})),ih=a((e=>{var t=e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(e,`__esModule`,{value:!0}),e.default=r;var n=t(rh());function r(e,t){let r=null;if(!e||typeof e!=`string`)return r;let i=(0,n.default)(e),a=typeof t==`function`;return i.forEach(e=>{if(e.type!==`declaration`)return;let{property:n,value:i}=e;a?t(n,i,e):i&&(r||={},r[n]=i)}),r}})),ah=a((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.camelCase=void 0;var t=/^--[a-zA-Z0-9_-]+$/,n=/-([a-z])/g,r=/^[^-]+$/,i=/^-(webkit|moz|ms|o|khtml)-/,a=/^-(ms)-/,o=function(e){return!e||r.test(e)||t.test(e)},s=function(e,t){return t.toUpperCase()},c=function(e,t){return`${t}-`};e.camelCase=function(e,t){return t===void 0&&(t={}),o(e)?e:(e=e.toLowerCase(),e=t.reactCompat?e.replace(a,c):e.replace(i,c),e.replace(n,s))}})),oh=a(((e,t)=>{var n=(e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}})(ih()),r=ah();function i(e,t){var i={};return!e||typeof e!=`string`||(0,n.default)(e,function(e,n){e&&n&&(i[(0,r.camelCase)(e,t)]=n)}),i}i.default=i,t.exports=i})),sh=lh(`end`),ch=lh(`start`);function lh(e){return t;function t(t){let n=t&&t.position&&t.position[e]||{};if(typeof n.line==`number`&&n.line>0&&typeof n.column==`number`&&n.column>0)return{line:n.line,column:n.column,offset:typeof n.offset==`number`&&n.offset>-1?n.offset:void 0}}}function uh(e){let t=ch(e),n=sh(e);if(t&&n)return{start:t,end:n}}function dh(e){return!e||typeof e!=`object`?``:`position`in e||`type`in e?ph(e.position):`start`in e||`end`in e?ph(e):`line`in e||`column`in e?fh(e):``}function fh(e){return mh(e&&e.line)+`:`+mh(e&&e.column)}function ph(e){return fh(e&&e.start)+`-`+fh(e&&e.end)}function mh(e){return e&&typeof e==`number`?e:1}var hh=class extends Error{constructor(e,t,n){super(),typeof t==`string`&&(n=t,t=void 0);let r=``,i={},a=!1;if(t&&(i=`line`in t&&`column`in t||`start`in t&&`end`in t?{place:t}:`type`in t?{ancestors:[t],place:t.position}:{...t}),typeof e==`string`?r=e:!i.cause&&e&&(a=!0,r=e.message,i.cause=e),!i.ruleId&&!i.source&&typeof n==`string`){let e=n.indexOf(`:`);e===-1?i.ruleId=n:(i.source=n.slice(0,e),i.ruleId=n.slice(e+1))}if(!i.place&&i.ancestors&&i.ancestors){let e=i.ancestors[i.ancestors.length-1];e&&(i.place=e.position)}let o=i.place&&`start`in i.place?i.place.start:i.place;this.ancestors=i.ancestors||void 0,this.cause=i.cause||void 0,this.column=o?o.column:void 0,this.fatal=void 0,this.file=``,this.message=r,this.line=o?o.line:void 0,this.name=dh(i.place)||`1:1`,this.place=i.place||void 0,this.reason=this.message,this.ruleId=i.ruleId||void 0,this.source=i.source||void 0,this.stack=a&&i.cause&&typeof i.cause.stack==`string`?i.cause.stack:``,this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}};hh.prototype.file=``,hh.prototype.name=``,hh.prototype.reason=``,hh.prototype.message=``,hh.prototype.stack=``,hh.prototype.column=void 0,hh.prototype.line=void 0,hh.prototype.ancestors=void 0,hh.prototype.cause=void 0,hh.prototype.fatal=void 0,hh.prototype.place=void 0,hh.prototype.ruleId=void 0,hh.prototype.source=void 0;var gh=e(oh(),1),_h={}.hasOwnProperty,vh=new Map,yh=/[A-Z]/g,bh=new Set([`table`,`tbody`,`thead`,`tfoot`,`tr`]),xh=new Set([`td`,`th`]),Sh=`https://github.com/syntax-tree/hast-util-to-jsx-runtime`;function Ch(e,t){if(!t||t.Fragment===void 0)throw TypeError("Expected `Fragment` in options");let n=t.filePath||void 0,r;if(t.development){if(typeof t.jsxDEV!=`function`)throw TypeError("Expected `jsxDEV` in options when `development: true`");r=Ph(n,t.jsxDEV)}else{if(typeof t.jsx!=`function`)throw TypeError("Expected `jsx` in production options");if(typeof t.jsxs!=`function`)throw TypeError("Expected `jsxs` in production options");r=Nh(n,t.jsx,t.jsxs)}let i={Fragment:t.Fragment,ancestors:[],components:t.components||{},create:r,elementAttributeNameCase:t.elementAttributeNameCase||`react`,evaluater:t.createEvaluater?t.createEvaluater():void 0,filePath:n,ignoreInvalidStyle:t.ignoreInvalidStyle||!1,passKeys:t.passKeys!==!1,passNode:t.passNode||!1,schema:t.space===`svg`?th:eh,stylePropertyNameCase:t.stylePropertyNameCase||`dom`,tableCellAlignToStyle:t.tableCellAlignToStyle!==!1},a=wh(i,e,void 0);return a&&typeof a!=`string`?a:i.create(e,i.Fragment,{children:a||void 0},void 0)}function wh(e,t,n){if(t.type===`element`)return Th(e,t,n);if(t.type===`mdxFlowExpression`||t.type===`mdxTextExpression`)return Eh(e,t);if(t.type===`mdxJsxFlowElement`||t.type===`mdxJsxTextElement`)return Oh(e,t,n);if(t.type===`mdxjsEsm`)return Dh(e,t);if(t.type===`root`)return kh(e,t,n);if(t.type===`text`)return Ah(e,t)}function Th(e,t,n){let r=e.schema,i=r;t.tagName.toLowerCase()===`svg`&&r.space===`html`&&(i=th,e.schema=i),e.ancestors.push(t);let a=Bh(e,t.tagName,!1),o=Fh(e,t),s=Lh(e,t);return bh.has(t.tagName)&&(s=s.filter(function(e){return typeof e==`string`?!xm(e):!0})),jh(e,o,a,t),Mh(o,s),e.ancestors.pop(),e.schema=r,e.create(t,a,o,n)}function Eh(e,t){if(t.data&&t.data.estree&&e.evaluater){let n=t.data.estree.body[0];return n.type,e.evaluater.evaluateExpression(n.expression)}Vh(e,t.position)}function Dh(e,t){if(t.data&&t.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(t.data.estree);Vh(e,t.position)}function Oh(e,t,n){let r=e.schema,i=r;t.name===`svg`&&r.space===`html`&&(i=th,e.schema=i),e.ancestors.push(t);let a=t.name===null?e.Fragment:Bh(e,t.name,!0),o=Ih(e,t),s=Lh(e,t);return jh(e,o,a,t),Mh(o,s),e.ancestors.pop(),e.schema=r,e.create(t,a,o,n)}function kh(e,t,n){let r={};return Mh(r,Lh(e,t)),e.create(t,e.Fragment,r,n)}function Ah(e,t){return t.value}function jh(e,t,n,r){typeof n!=`string`&&n!==e.Fragment&&e.passNode&&(t.node=r)}function Mh(e,t){if(t.length>0){let n=t.length>1?t:t[0];n&&(e.children=n)}}function Nh(e,t,n){return r;function r(e,r,i,a){let o=Array.isArray(i.children)?n:t;return a?o(r,i,a):o(r,i)}}function Ph(e,t){return n;function n(n,r,i,a){let o=Array.isArray(i.children),s=ch(n);return t(r,i,a,o,{columnNumber:s?s.column-1:void 0,fileName:e,lineNumber:s?s.line:void 0},void 0)}}function Fh(e,t){let n={},r,i;for(i in t.properties)if(i!==`children`&&_h.call(t.properties,i)){let a=Rh(e,i,t.properties[i]);if(a){let[i,o]=a;e.tableCellAlignToStyle&&i===`align`&&typeof o==`string`&&xh.has(t.tagName)?r=o:n[i]=o}}if(r){let t=n.style||={};t[e.stylePropertyNameCase===`css`?`text-align`:`textAlign`]=r}return n}function Ih(e,t){let n={};for(let r of t.attributes)if(r.type===`mdxJsxExpressionAttribute`)if(r.data&&r.data.estree&&e.evaluater){let t=r.data.estree.body[0];t.type;let i=t.expression;i.type;let a=i.properties[0];a.type,Object.assign(n,e.evaluater.evaluateExpression(a.argument))}else Vh(e,t.position);else{let i=r.name,a;if(r.value&&typeof r.value==`object`)if(r.value.data&&r.value.data.estree&&e.evaluater){let t=r.value.data.estree.body[0];t.type,a=e.evaluater.evaluateExpression(t.expression)}else Vh(e,t.position);else a=r.value===null?!0:r.value;n[i]=a}return n}function Lh(e,t){let n=[],r=-1,i=e.passKeys?new Map:vh;for(;++r<t.children.length;){let a=t.children[r],o;if(e.passKeys){let e=a.type===`element`?a.tagName:a.type===`mdxJsxFlowElement`||a.type===`mdxJsxTextElement`?a.name:void 0;if(e){let t=i.get(e)||0;o=e+`-`+t,i.set(e,t+1)}}let s=wh(e,a,o);s!==void 0&&n.push(s)}return n}function Rh(e,t,n){let r=Zm(e.schema,t);if(!(n==null||typeof n==`number`&&Number.isNaN(n))){if(Array.isArray(n)&&(n=r.commaSeparated?hm(n):nh(n)),r.property===`style`){let t=typeof n==`object`?n:zh(e,String(n));return e.stylePropertyNameCase===`css`&&(t=Hh(t)),[`style`,t]}return[e.elementAttributeNameCase===`react`&&r.space?qm[r.property]||r.property:r.attribute,n]}}function zh(e,t){try{return(0,gh.default)(t,{reactCompat:!0})}catch(t){if(e.ignoreInvalidStyle)return{};let n=t,r=new hh("Cannot parse `style` attribute",{ancestors:e.ancestors,cause:n,ruleId:`style`,source:`hast-util-to-jsx-runtime`});throw r.file=e.filePath||void 0,r.url=Sh+`#cannot-parse-style-attribute`,r}}function Bh(e,t,n){let r;if(!n)r={type:`Literal`,value:t};else if(t.includes(`.`)){let e=t.split(`.`),n=-1,i;for(;++n<e.length;){let t=ym(e[n])?{type:`Identifier`,name:e[n]}:{type:`Literal`,value:e[n]};i=i?{type:`MemberExpression`,object:i,property:t,computed:!!(n&&t.type===`Literal`),optional:!1}:t}r=i}else r=ym(t)&&!/^[a-z]/.test(t)?{type:`Identifier`,name:t}:{type:`Literal`,value:t};if(r.type===`Literal`){let t=r.value;return _h.call(e.components,t)?e.components[t]:t}if(e.evaluater)return e.evaluater.evaluateExpression(r);Vh(e)}function Vh(e,t){let n=new hh("Cannot handle MDX estrees without `createEvaluater`",{ancestors:e.ancestors,place:t,ruleId:`mdx-estree`,source:`hast-util-to-jsx-runtime`});throw n.file=e.filePath||void 0,n.url=Sh+`#cannot-handle-mdx-estrees-without-createevaluater`,n}function Hh(e){let t={},n;for(n in e)_h.call(e,n)&&(t[Uh(n)]=e[n]);return t}function Uh(e){let t=e.replace(yh,Wh);return t.slice(0,3)===`ms-`&&(t=`-`+t),t}function Wh(e){return`-`+e.toLowerCase()}var Gh={action:[`form`],cite:[`blockquote`,`del`,`ins`,`q`],data:[`object`],formAction:[`button`,`input`],href:[`a`,`area`,`base`,`link`],icon:[`menuitem`],itemId:null,manifest:[`html`],ping:[`a`,`area`],poster:[`video`],src:[`audio`,`embed`,`iframe`,`img`,`input`,`script`,`source`,`track`,`video`]},Kh={};function qh(e,t){let n=t||Kh;return Jh(e,typeof n.includeImageAlt==`boolean`?n.includeImageAlt:!0,typeof n.includeHtml==`boolean`?n.includeHtml:!0)}function Jh(e,t,n){if(Xh(e)){if(`value`in e)return e.type===`html`&&!n?``:e.value;if(t&&`alt`in e&&e.alt)return e.alt;if(`children`in e)return Yh(e.children,t,n)}return Array.isArray(e)?Yh(e,t,n):``}function Yh(e,t,n){let r=[],i=-1;for(;++i<e.length;)r[i]=Jh(e[i],t,n);return r.join(``)}function Xh(e){return!!(e&&typeof e==`object`)}var Zh=document.createElement(`i`);function Qh(e){let t=`&`+e+`;`;Zh.innerHTML=t;let n=Zh.textContent;return n.charCodeAt(n.length-1)===59&&e!==`semi`||n===t?!1:n}function $h(e,t,n,r){let i=e.length,a=0,o;if(t=t<0?-t>i?0:i+t:t>i?i:t,n=n>0?n:0,r.length<1e4)o=Array.from(r),o.unshift(t,n),e.splice(...o);else for(n&&e.splice(t,n);a<r.length;)o=r.slice(a,a+1e4),o.unshift(t,0),e.splice(...o),a+=1e4,t+=1e4}function eg(e,t){return e.length>0?($h(e,e.length,0,t),e):t}var tg={}.hasOwnProperty;function ng(e){let t={},n=-1;for(;++n<e.length;)rg(t,e[n]);return t}function rg(e,t){let n;for(n in t){let r=(tg.call(e,n)?e[n]:void 0)||(e[n]={}),i=t[n],a;if(i)for(a in i){tg.call(r,a)||(r[a]=[]);let e=i[a];ig(r[a],Array.isArray(e)?e:e?[e]:[])}}}function ig(e,t){let n=-1,r=[];for(;++n<t.length;)(t[n].add===`after`?e:r).push(t[n]);$h(e,0,0,r)}function ag(e,t){let n=Number.parseInt(e,t);return n<9||n===11||n>13&&n<32||n>126&&n<160||n>55295&&n<57344||n>64975&&n<65008||(n&65535)==65535||(n&65535)==65534||n>1114111?`�`:String.fromCodePoint(n)}function og(e){return e.replace(/[\t\n\r ]+/g,` `).replace(/^ | $/g,``).toLowerCase().toUpperCase()}var sg=gg(/[A-Za-z]/),cg=gg(/[\dA-Za-z]/),lg=gg(/[#-'*+\--9=?A-Z^-~]/);function ug(e){return e!==null&&(e<32||e===127)}var dg=gg(/\d/),fg=gg(/[\dA-Fa-f]/),pg=gg(/[!-/:-@[-`{-~]/);function J(e){return e!==null&&e<-2}function Y(e){return e!==null&&(e<0||e===32)}function X(e){return e===-2||e===-1||e===32}var mg=gg(/\p{P}|\p{S}/u),hg=gg(/\s/);function gg(e){return t;function t(t){return t!==null&&t>-1&&e.test(String.fromCharCode(t))}}function _g(e){let t=[],n=-1,r=0,i=0;for(;++n<e.length;){let a=e.charCodeAt(n),o=``;if(a===37&&cg(e.charCodeAt(n+1))&&cg(e.charCodeAt(n+2)))i=2;else if(a<128)/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(a))||(o=String.fromCharCode(a));else if(a>55295&&a<57344){let t=e.charCodeAt(n+1);a<56320&&t>56319&&t<57344?(o=String.fromCharCode(a,t),i=1):o=`�`}else o=String.fromCharCode(a);o&&=(t.push(e.slice(r,n),encodeURIComponent(o)),r=n+i+1,``),i&&=(n+=i,0)}return t.join(``)+e.slice(r)}function Z(e,t,n,r){let i=r?r-1:1/0,a=0;return o;function o(r){return X(r)?(e.enter(n),s(r)):t(r)}function s(r){return X(r)&&a++<i?(e.consume(r),s):(e.exit(n),t(r))}}var vg={tokenize:yg};function yg(e){let t=e.attempt(this.parser.constructs.contentInitial,r,i),n;return t;function r(n){if(n===null){e.consume(n);return}return e.enter(`lineEnding`),e.consume(n),e.exit(`lineEnding`),Z(e,t,`linePrefix`)}function i(t){return e.enter(`paragraph`),a(t)}function a(t){let r=e.enter(`chunkText`,{contentType:`text`,previous:n});return n&&(n.next=r),n=r,o(t)}function o(t){if(t===null){e.exit(`chunkText`),e.exit(`paragraph`),e.consume(t);return}return J(t)?(e.consume(t),e.exit(`chunkText`),a):(e.consume(t),o)}}var bg={tokenize:Sg},xg={tokenize:Cg};function Sg(e){let t=this,n=[],r=0,i,a,o;return s;function s(i){if(r<n.length){let a=n[r];return t.containerState=a[1],e.attempt(a[0].continuation,c,l)(i)}return l(i)}function c(e){if(r++,t.containerState._closeFlow){t.containerState._closeFlow=void 0,i&&v();let n=t.events.length,a=n,o;for(;a--;)if(t.events[a][0]===`exit`&&t.events[a][1].type===`chunkFlow`){o=t.events[a][1].end;break}_(r);let s=n;for(;s<t.events.length;)t.events[s][1].end={...o},s++;return $h(t.events,a+1,0,t.events.slice(n)),t.events.length=s,l(e)}return s(e)}function l(a){if(r===n.length){if(!i)return f(a);if(i.currentConstruct&&i.currentConstruct.concrete)return m(a);t.interrupt=!!(i.currentConstruct&&!i._gfmTableDynamicInterruptHack)}return t.containerState={},e.check(xg,u,d)(a)}function u(e){return i&&v(),_(r),f(e)}function d(e){return t.parser.lazy[t.now().line]=r!==n.length,o=t.now().offset,m(e)}function f(n){return t.containerState={},e.attempt(xg,p,m)(n)}function p(e){return r++,n.push([t.currentConstruct,t.containerState]),f(e)}function m(n){if(n===null){i&&v(),_(0),e.consume(n);return}return i||=t.parser.flow(t.now()),e.enter(`chunkFlow`,{_tokenizer:i,contentType:`flow`,previous:a}),h(n)}function h(n){if(n===null){g(e.exit(`chunkFlow`),!0),_(0),e.consume(n);return}return J(n)?(e.consume(n),g(e.exit(`chunkFlow`)),r=0,t.interrupt=void 0,s):(e.consume(n),h)}function g(e,n){let s=t.sliceStream(e);if(n&&s.push(null),e.previous=a,a&&(a.next=e),a=e,i.defineSkip(e.start),i.write(s),t.parser.lazy[e.start.line]){let e=i.events.length;for(;e--;)if(i.events[e][1].start.offset<o&&(!i.events[e][1].end||i.events[e][1].end.offset>o))return;let n=t.events.length,a=n,s,c;for(;a--;)if(t.events[a][0]===`exit`&&t.events[a][1].type===`chunkFlow`){if(s){c=t.events[a][1].end;break}s=!0}for(_(r),e=n;e<t.events.length;)t.events[e][1].end={...c},e++;$h(t.events,a+1,0,t.events.slice(n)),t.events.length=e}}function _(r){let i=n.length;for(;i-- >r;){let r=n[i];t.containerState=r[1],r[0].exit.call(t,e)}n.length=r}function v(){i.write([null]),a=void 0,i=void 0,t.containerState._closeFlow=void 0}}function Cg(e,t,n){return Z(e,e.attempt(this.parser.constructs.document,t,n),`linePrefix`,this.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)}function wg(e){if(e===null||Y(e)||hg(e))return 1;if(mg(e))return 2}function Tg(e,t,n){let r=[],i=-1;for(;++i<e.length;){let a=e[i].resolveAll;a&&!r.includes(a)&&(t=a(t,n),r.push(a))}return t}var Eg={name:`attention`,resolveAll:Dg,tokenize:Og};function Dg(e,t){let n=-1,r,i,a,o,s,c,l,u;for(;++n<e.length;)if(e[n][0]===`enter`&&e[n][1].type===`attentionSequence`&&e[n][1]._close){for(r=n;r--;)if(e[r][0]===`exit`&&e[r][1].type===`attentionSequence`&&e[r][1]._open&&t.sliceSerialize(e[r][1]).charCodeAt(0)===t.sliceSerialize(e[n][1]).charCodeAt(0)){if((e[r][1]._close||e[n][1]._open)&&(e[n][1].end.offset-e[n][1].start.offset)%3&&!((e[r][1].end.offset-e[r][1].start.offset+e[n][1].end.offset-e[n][1].start.offset)%3))continue;c=e[r][1].end.offset-e[r][1].start.offset>1&&e[n][1].end.offset-e[n][1].start.offset>1?2:1;let d={...e[r][1].end},f={...e[n][1].start};kg(d,-c),kg(f,c),o={type:c>1?`strongSequence`:`emphasisSequence`,start:d,end:{...e[r][1].end}},s={type:c>1?`strongSequence`:`emphasisSequence`,start:{...e[n][1].start},end:f},a={type:c>1?`strongText`:`emphasisText`,start:{...e[r][1].end},end:{...e[n][1].start}},i={type:c>1?`strong`:`emphasis`,start:{...o.start},end:{...s.end}},e[r][1].end={...o.start},e[n][1].start={...s.end},l=[],e[r][1].end.offset-e[r][1].start.offset&&(l=eg(l,[[`enter`,e[r][1],t],[`exit`,e[r][1],t]])),l=eg(l,[[`enter`,i,t],[`enter`,o,t],[`exit`,o,t],[`enter`,a,t]]),l=eg(l,Tg(t.parser.constructs.insideSpan.null,e.slice(r+1,n),t)),l=eg(l,[[`exit`,a,t],[`enter`,s,t],[`exit`,s,t],[`exit`,i,t]]),e[n][1].end.offset-e[n][1].start.offset?(u=2,l=eg(l,[[`enter`,e[n][1],t],[`exit`,e[n][1],t]])):u=0,$h(e,r-1,n-r+3,l),n=r+l.length-u-2;break}}for(n=-1;++n<e.length;)e[n][1].type===`attentionSequence`&&(e[n][1].type=`data`);return e}function Og(e,t){let n=this.parser.constructs.attentionMarkers.null,r=this.previous,i=wg(r),a;return o;function o(t){return a=t,e.enter(`attentionSequence`),s(t)}function s(o){if(o===a)return e.consume(o),s;let c=e.exit(`attentionSequence`),l=wg(o),u=!l||l===2&&i||n.includes(o),d=!i||i===2&&l||n.includes(r);return c._open=!!(a===42?u:u&&(i||!d)),c._close=!!(a===42?d:d&&(l||!u)),t(o)}}function kg(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}var Ag={name:`autolink`,tokenize:jg};function jg(e,t,n){let r=0;return i;function i(t){return e.enter(`autolink`),e.enter(`autolinkMarker`),e.consume(t),e.exit(`autolinkMarker`),e.enter(`autolinkProtocol`),a}function a(t){return sg(t)?(e.consume(t),o):t===64?n(t):l(t)}function o(e){return e===43||e===45||e===46||cg(e)?(r=1,s(e)):l(e)}function s(t){return t===58?(e.consume(t),r=0,c):(t===43||t===45||t===46||cg(t))&&r++<32?(e.consume(t),s):(r=0,l(t))}function c(r){return r===62?(e.exit(`autolinkProtocol`),e.enter(`autolinkMarker`),e.consume(r),e.exit(`autolinkMarker`),e.exit(`autolink`),t):r===null||r===32||r===60||ug(r)?n(r):(e.consume(r),c)}function l(t){return t===64?(e.consume(t),u):lg(t)?(e.consume(t),l):n(t)}function u(e){return cg(e)?d(e):n(e)}function d(n){return n===46?(e.consume(n),r=0,u):n===62?(e.exit(`autolinkProtocol`).type=`autolinkEmail`,e.enter(`autolinkMarker`),e.consume(n),e.exit(`autolinkMarker`),e.exit(`autolink`),t):f(n)}function f(t){if((t===45||cg(t))&&r++<63){let n=t===45?f:d;return e.consume(t),n}return n(t)}}var Mg={partial:!0,tokenize:Ng};function Ng(e,t,n){return r;function r(t){return X(t)?Z(e,i,`linePrefix`)(t):i(t)}function i(e){return e===null||J(e)?t(e):n(e)}}var Pg={continuation:{tokenize:Ig},exit:Lg,name:`blockQuote`,tokenize:Fg};function Fg(e,t,n){let r=this;return i;function i(t){if(t===62){let n=r.containerState;return n.open||=(e.enter(`blockQuote`,{_container:!0}),!0),e.enter(`blockQuotePrefix`),e.enter(`blockQuoteMarker`),e.consume(t),e.exit(`blockQuoteMarker`),a}return n(t)}function a(n){return X(n)?(e.enter(`blockQuotePrefixWhitespace`),e.consume(n),e.exit(`blockQuotePrefixWhitespace`),e.exit(`blockQuotePrefix`),t):(e.exit(`blockQuotePrefix`),t(n))}}function Ig(e,t,n){let r=this;return i;function i(t){return X(t)?Z(e,a,`linePrefix`,r.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)(t):a(t)}function a(r){return e.attempt(Pg,t,n)(r)}}function Lg(e){e.exit(`blockQuote`)}var Rg={name:`characterEscape`,tokenize:zg};function zg(e,t,n){return r;function r(t){return e.enter(`characterEscape`),e.enter(`escapeMarker`),e.consume(t),e.exit(`escapeMarker`),i}function i(r){return pg(r)?(e.enter(`characterEscapeValue`),e.consume(r),e.exit(`characterEscapeValue`),e.exit(`characterEscape`),t):n(r)}}var Bg={name:`characterReference`,tokenize:Vg};function Vg(e,t,n){let r=this,i=0,a,o;return s;function s(t){return e.enter(`characterReference`),e.enter(`characterReferenceMarker`),e.consume(t),e.exit(`characterReferenceMarker`),c}function c(t){return t===35?(e.enter(`characterReferenceMarkerNumeric`),e.consume(t),e.exit(`characterReferenceMarkerNumeric`),l):(e.enter(`characterReferenceValue`),a=31,o=cg,u(t))}function l(t){return t===88||t===120?(e.enter(`characterReferenceMarkerHexadecimal`),e.consume(t),e.exit(`characterReferenceMarkerHexadecimal`),e.enter(`characterReferenceValue`),a=6,o=fg,u):(e.enter(`characterReferenceValue`),a=7,o=dg,u(t))}function u(s){if(s===59&&i){let i=e.exit(`characterReferenceValue`);return o===cg&&!Qh(r.sliceSerialize(i))?n(s):(e.enter(`characterReferenceMarker`),e.consume(s),e.exit(`characterReferenceMarker`),e.exit(`characterReference`),t)}return o(s)&&i++<a?(e.consume(s),u):n(s)}}var Hg={partial:!0,tokenize:Gg},Ug={concrete:!0,name:`codeFenced`,tokenize:Wg};function Wg(e,t,n){let r=this,i={partial:!0,tokenize:x},a=0,o=0,s;return c;function c(e){return l(e)}function l(t){let n=r.events[r.events.length-1];return a=n&&n[1].type===`linePrefix`?n[2].sliceSerialize(n[1],!0).length:0,s=t,e.enter(`codeFenced`),e.enter(`codeFencedFence`),e.enter(`codeFencedFenceSequence`),u(t)}function u(t){return t===s?(o++,e.consume(t),u):o<3?n(t):(e.exit(`codeFencedFenceSequence`),X(t)?Z(e,d,`whitespace`)(t):d(t))}function d(n){return n===null||J(n)?(e.exit(`codeFencedFence`),r.interrupt?t(n):e.check(Hg,h,b)(n)):(e.enter(`codeFencedFenceInfo`),e.enter(`chunkString`,{contentType:`string`}),f(n))}function f(t){return t===null||J(t)?(e.exit(`chunkString`),e.exit(`codeFencedFenceInfo`),d(t)):X(t)?(e.exit(`chunkString`),e.exit(`codeFencedFenceInfo`),Z(e,p,`whitespace`)(t)):t===96&&t===s?n(t):(e.consume(t),f)}function p(t){return t===null||J(t)?d(t):(e.enter(`codeFencedFenceMeta`),e.enter(`chunkString`,{contentType:`string`}),m(t))}function m(t){return t===null||J(t)?(e.exit(`chunkString`),e.exit(`codeFencedFenceMeta`),d(t)):t===96&&t===s?n(t):(e.consume(t),m)}function h(t){return e.attempt(i,b,g)(t)}function g(t){return e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),_}function _(t){return a>0&&X(t)?Z(e,v,`linePrefix`,a+1)(t):v(t)}function v(t){return t===null||J(t)?e.check(Hg,h,b)(t):(e.enter(`codeFlowValue`),y(t))}function y(t){return t===null||J(t)?(e.exit(`codeFlowValue`),v(t)):(e.consume(t),y)}function b(n){return e.exit(`codeFenced`),t(n)}function x(e,t,n){let i=0;return a;function a(t){return e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),c}function c(t){return e.enter(`codeFencedFence`),X(t)?Z(e,l,`linePrefix`,r.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)(t):l(t)}function l(t){return t===s?(e.enter(`codeFencedFenceSequence`),u(t)):n(t)}function u(t){return t===s?(i++,e.consume(t),u):i>=o?(e.exit(`codeFencedFenceSequence`),X(t)?Z(e,d,`whitespace`)(t):d(t)):n(t)}function d(r){return r===null||J(r)?(e.exit(`codeFencedFence`),t(r)):n(r)}}}function Gg(e,t,n){let r=this;return i;function i(t){return t===null?n(t):(e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),a)}function a(e){return r.parser.lazy[r.now().line]?n(e):t(e)}}var Kg={name:`codeIndented`,tokenize:Jg},qg={partial:!0,tokenize:Yg};function Jg(e,t,n){let r=this;return i;function i(t){return e.enter(`codeIndented`),Z(e,a,`linePrefix`,5)(t)}function a(e){let t=r.events[r.events.length-1];return t&&t[1].type===`linePrefix`&&t[2].sliceSerialize(t[1],!0).length>=4?o(e):n(e)}function o(t){return t===null?c(t):J(t)?e.attempt(qg,o,c)(t):(e.enter(`codeFlowValue`),s(t))}function s(t){return t===null||J(t)?(e.exit(`codeFlowValue`),o(t)):(e.consume(t),s)}function c(n){return e.exit(`codeIndented`),t(n)}}function Yg(e,t,n){let r=this;return i;function i(t){return r.parser.lazy[r.now().line]?n(t):J(t)?(e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),i):Z(e,a,`linePrefix`,5)(t)}function a(e){let a=r.events[r.events.length-1];return a&&a[1].type===`linePrefix`&&a[2].sliceSerialize(a[1],!0).length>=4?t(e):J(e)?i(e):n(e)}}var Xg={name:`codeText`,previous:Qg,resolve:Zg,tokenize:$g};function Zg(e){let t=e.length-4,n=3,r,i;if((e[n][1].type===`lineEnding`||e[n][1].type===`space`)&&(e[t][1].type===`lineEnding`||e[t][1].type===`space`)){for(r=n;++r<t;)if(e[r][1].type===`codeTextData`){e[n][1].type=`codeTextPadding`,e[t][1].type=`codeTextPadding`,n+=2,t-=2;break}}for(r=n-1,t++;++r<=t;)i===void 0?r!==t&&e[r][1].type!==`lineEnding`&&(i=r):(r===t||e[r][1].type===`lineEnding`)&&(e[i][1].type=`codeTextData`,r!==i+2&&(e[i][1].end=e[r-1][1].end,e.splice(i+2,r-i-2),t-=r-i-2,r=i+2),i=void 0);return e}function Qg(e){return e!==96||this.events[this.events.length-1][1].type===`characterEscape`}function $g(e,t,n){let r=0,i,a;return o;function o(t){return e.enter(`codeText`),e.enter(`codeTextSequence`),s(t)}function s(t){return t===96?(e.consume(t),r++,s):(e.exit(`codeTextSequence`),c(t))}function c(t){return t===null?n(t):t===32?(e.enter(`space`),e.consume(t),e.exit(`space`),c):t===96?(a=e.enter(`codeTextSequence`),i=0,u(t)):J(t)?(e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),c):(e.enter(`codeTextData`),l(t))}function l(t){return t===null||t===32||t===96||J(t)?(e.exit(`codeTextData`),c(t)):(e.consume(t),l)}function u(n){return n===96?(e.consume(n),i++,u):i===r?(e.exit(`codeTextSequence`),e.exit(`codeText`),t(n)):(a.type=`codeTextData`,l(n))}}var e_=class{constructor(e){this.left=e?[...e]:[],this.right=[]}get(e){if(e<0||e>=this.left.length+this.right.length)throw RangeError("Cannot access index `"+e+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return e<this.left.length?this.left[e]:this.right[this.right.length-e+this.left.length-1]}get length(){return this.left.length+this.right.length}shift(){return this.setCursor(0),this.right.pop()}slice(e,t){let n=t??1/0;return n<this.left.length?this.left.slice(e,n):e>this.left.length?this.right.slice(this.right.length-n+this.left.length,this.right.length-e+this.left.length).reverse():this.left.slice(e).concat(this.right.slice(this.right.length-n+this.left.length).reverse())}splice(e,t,n){let r=t||0;this.setCursor(Math.trunc(e));let i=this.right.splice(this.right.length-r,1/0);return n&&t_(this.left,n),i.reverse()}pop(){return this.setCursor(1/0),this.left.pop()}push(e){this.setCursor(1/0),this.left.push(e)}pushMany(e){this.setCursor(1/0),t_(this.left,e)}unshift(e){this.setCursor(0),this.right.push(e)}unshiftMany(e){this.setCursor(0),t_(this.right,e.reverse())}setCursor(e){if(!(e===this.left.length||e>this.left.length&&this.right.length===0||e<0&&this.left.length===0))if(e<this.left.length){let t=this.left.splice(e,1/0);t_(this.right,t.reverse())}else{let t=this.right.splice(this.left.length+this.right.length-e,1/0);t_(this.left,t.reverse())}}};function t_(e,t){let n=0;if(t.length<1e4)e.push(...t);else for(;n<t.length;)e.push(...t.slice(n,n+1e4)),n+=1e4}function n_(e){let t={},n=-1,r,i,a,o,s,c,l,u=new e_(e);for(;++n<u.length;){for(;n in t;)n=t[n];if(r=u.get(n),n&&r[1].type===`chunkFlow`&&u.get(n-1)[1].type===`listItemPrefix`&&(c=r[1]._tokenizer.events,a=0,a<c.length&&c[a][1].type===`lineEndingBlank`&&(a+=2),a<c.length&&c[a][1].type===`content`))for(;++a<c.length&&c[a][1].type!==`content`;)c[a][1].type===`chunkText`&&(c[a][1]._isInFirstContentOfListItem=!0,a++);if(r[0]===`enter`)r[1].contentType&&(Object.assign(t,r_(u,n)),n=t[n],l=!0);else if(r[1]._container){for(a=n,i=void 0;a--;)if(o=u.get(a),o[1].type===`lineEnding`||o[1].type===`lineEndingBlank`)o[0]===`enter`&&(i&&(u.get(i)[1].type=`lineEndingBlank`),o[1].type=`lineEnding`,i=a);else if(!(o[1].type===`linePrefix`||o[1].type===`listItemIndent`))break;i&&(r[1].end={...u.get(i)[1].start},s=u.slice(i,n),s.unshift(r),u.splice(i,n-i+1,s))}}return $h(e,0,1/0,u.slice(0)),!l}function r_(e,t){let n=e.get(t)[1],r=e.get(t)[2],i=t-1,a=[],o=n._tokenizer;o||(o=r.parser[n.contentType](n.start),n._contentTypeTextTrailing&&(o._contentTypeTextTrailing=!0));let s=o.events,c=[],l={},u,d,f=-1,p=n,m=0,h=0,g=[h];for(;p;){for(;e.get(++i)[1]!==p;);a.push(i),p._tokenizer||(u=r.sliceStream(p),p.next||u.push(null),d&&o.defineSkip(p.start),p._isInFirstContentOfListItem&&(o._gfmTasklistFirstContentOfListItem=!0),o.write(u),p._isInFirstContentOfListItem&&(o._gfmTasklistFirstContentOfListItem=void 0)),d=p,p=p.next}for(p=n;++f<s.length;)s[f][0]===`exit`&&s[f-1][0]===`enter`&&s[f][1].type===s[f-1][1].type&&s[f][1].start.line!==s[f][1].end.line&&(h=f+1,g.push(h),p._tokenizer=void 0,p.previous=void 0,p=p.next);for(o.events=[],p?(p._tokenizer=void 0,p.previous=void 0):g.pop(),f=g.length;f--;){let t=s.slice(g[f],g[f+1]),n=a.pop();c.push([n,n+t.length-1]),e.splice(n,2,t)}for(c.reverse(),f=-1;++f<c.length;)l[m+c[f][0]]=m+c[f][1],m+=c[f][1]-c[f][0]-1;return l}var i_={resolve:o_,tokenize:s_},a_={partial:!0,tokenize:c_};function o_(e){return n_(e),e}function s_(e,t){let n;return r;function r(t){return e.enter(`content`),n=e.enter(`chunkContent`,{contentType:`content`}),i(t)}function i(t){return t===null?a(t):J(t)?e.check(a_,o,a)(t):(e.consume(t),i)}function a(n){return e.exit(`chunkContent`),e.exit(`content`),t(n)}function o(t){return e.consume(t),e.exit(`chunkContent`),n.next=e.enter(`chunkContent`,{contentType:`content`,previous:n}),n=n.next,i}}function c_(e,t,n){let r=this;return i;function i(t){return e.exit(`chunkContent`),e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),Z(e,a,`linePrefix`)}function a(i){if(i===null||J(i))return n(i);let a=r.events[r.events.length-1];return!r.parser.constructs.disable.null.includes(`codeIndented`)&&a&&a[1].type===`linePrefix`&&a[2].sliceSerialize(a[1],!0).length>=4?t(i):e.interrupt(r.parser.constructs.flow,n,t)(i)}}function l_(e,t,n,r,i,a,o,s,c){let l=c||1/0,u=0;return d;function d(t){return t===60?(e.enter(r),e.enter(i),e.enter(a),e.consume(t),e.exit(a),f):t===null||t===32||t===41||ug(t)?n(t):(e.enter(r),e.enter(o),e.enter(s),e.enter(`chunkString`,{contentType:`string`}),h(t))}function f(n){return n===62?(e.enter(a),e.consume(n),e.exit(a),e.exit(i),e.exit(r),t):(e.enter(s),e.enter(`chunkString`,{contentType:`string`}),p(n))}function p(t){return t===62?(e.exit(`chunkString`),e.exit(s),f(t)):t===null||t===60||J(t)?n(t):(e.consume(t),t===92?m:p)}function m(t){return t===60||t===62||t===92?(e.consume(t),p):p(t)}function h(i){return!u&&(i===null||i===41||Y(i))?(e.exit(`chunkString`),e.exit(s),e.exit(o),e.exit(r),t(i)):u<l&&i===40?(e.consume(i),u++,h):i===41?(e.consume(i),u--,h):i===null||i===32||i===40||ug(i)?n(i):(e.consume(i),i===92?g:h)}function g(t){return t===40||t===41||t===92?(e.consume(t),h):h(t)}}function u_(e,t,n,r,i,a){let o=this,s=0,c;return l;function l(t){return e.enter(r),e.enter(i),e.consume(t),e.exit(i),e.enter(a),u}function u(l){return s>999||l===null||l===91||l===93&&!c||l===94&&!s&&`_hiddenFootnoteSupport`in o.parser.constructs?n(l):l===93?(e.exit(a),e.enter(i),e.consume(l),e.exit(i),e.exit(r),t):J(l)?(e.enter(`lineEnding`),e.consume(l),e.exit(`lineEnding`),u):(e.enter(`chunkString`,{contentType:`string`}),d(l))}function d(t){return t===null||t===91||t===93||J(t)||s++>999?(e.exit(`chunkString`),u(t)):(e.consume(t),c||=!X(t),t===92?f:d)}function f(t){return t===91||t===92||t===93?(e.consume(t),s++,d):d(t)}}function d_(e,t,n,r,i,a){let o;return s;function s(t){return t===34||t===39||t===40?(e.enter(r),e.enter(i),e.consume(t),e.exit(i),o=t===40?41:t,c):n(t)}function c(n){return n===o?(e.enter(i),e.consume(n),e.exit(i),e.exit(r),t):(e.enter(a),l(n))}function l(t){return t===o?(e.exit(a),c(o)):t===null?n(t):J(t)?(e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),Z(e,l,`linePrefix`)):(e.enter(`chunkString`,{contentType:`string`}),u(t))}function u(t){return t===o||t===null||J(t)?(e.exit(`chunkString`),l(t)):(e.consume(t),t===92?d:u)}function d(t){return t===o||t===92?(e.consume(t),u):u(t)}}function f_(e,t){let n;return r;function r(i){return J(i)?(e.enter(`lineEnding`),e.consume(i),e.exit(`lineEnding`),n=!0,r):X(i)?Z(e,r,n?`linePrefix`:`lineSuffix`)(i):t(i)}}var p_={name:`definition`,tokenize:h_},m_={partial:!0,tokenize:g_};function h_(e,t,n){let r=this,i;return a;function a(t){return e.enter(`definition`),o(t)}function o(t){return u_.call(r,e,s,n,`definitionLabel`,`definitionLabelMarker`,`definitionLabelString`)(t)}function s(t){return i=og(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)),t===58?(e.enter(`definitionMarker`),e.consume(t),e.exit(`definitionMarker`),c):n(t)}function c(t){return Y(t)?f_(e,l)(t):l(t)}function l(t){return l_(e,u,n,`definitionDestination`,`definitionDestinationLiteral`,`definitionDestinationLiteralMarker`,`definitionDestinationRaw`,`definitionDestinationString`)(t)}function u(t){return e.attempt(m_,d,d)(t)}function d(t){return X(t)?Z(e,f,`whitespace`)(t):f(t)}function f(a){return a===null||J(a)?(e.exit(`definition`),r.parser.defined.push(i),t(a)):n(a)}}function g_(e,t,n){return r;function r(t){return Y(t)?f_(e,i)(t):n(t)}function i(t){return d_(e,a,n,`definitionTitle`,`definitionTitleMarker`,`definitionTitleString`)(t)}function a(t){return X(t)?Z(e,o,`whitespace`)(t):o(t)}function o(e){return e===null||J(e)?t(e):n(e)}}var __={name:`hardBreakEscape`,tokenize:v_};function v_(e,t,n){return r;function r(t){return e.enter(`hardBreakEscape`),e.consume(t),i}function i(r){return J(r)?(e.exit(`hardBreakEscape`),t(r)):n(r)}}var y_={name:`headingAtx`,resolve:b_,tokenize:x_};function b_(e,t){let n=e.length-2,r=3,i,a;return e[r][1].type===`whitespace`&&(r+=2),n-2>r&&e[n][1].type===`whitespace`&&(n-=2),e[n][1].type===`atxHeadingSequence`&&(r===n-1||n-4>r&&e[n-2][1].type===`whitespace`)&&(n-=r+1===n?2:4),n>r&&(i={type:`atxHeadingText`,start:e[r][1].start,end:e[n][1].end},a={type:`chunkText`,start:e[r][1].start,end:e[n][1].end,contentType:`text`},$h(e,r,n-r+1,[[`enter`,i,t],[`enter`,a,t],[`exit`,a,t],[`exit`,i,t]])),e}function x_(e,t,n){let r=0;return i;function i(t){return e.enter(`atxHeading`),a(t)}function a(t){return e.enter(`atxHeadingSequence`),o(t)}function o(t){return t===35&&r++<6?(e.consume(t),o):t===null||Y(t)?(e.exit(`atxHeadingSequence`),s(t)):n(t)}function s(n){return n===35?(e.enter(`atxHeadingSequence`),c(n)):n===null||J(n)?(e.exit(`atxHeading`),t(n)):X(n)?Z(e,s,`whitespace`)(n):(e.enter(`atxHeadingText`),l(n))}function c(t){return t===35?(e.consume(t),c):(e.exit(`atxHeadingSequence`),s(t))}function l(t){return t===null||t===35||Y(t)?(e.exit(`atxHeadingText`),s(t)):(e.consume(t),l)}}var S_=`address.article.aside.base.basefont.blockquote.body.caption.center.col.colgroup.dd.details.dialog.dir.div.dl.dt.fieldset.figcaption.figure.footer.form.frame.frameset.h1.h2.h3.h4.h5.h6.head.header.hr.html.iframe.legend.li.link.main.menu.menuitem.nav.noframes.ol.optgroup.option.p.param.search.section.summary.table.tbody.td.tfoot.th.thead.title.tr.track.ul`.split(`.`),C_=[`pre`,`script`,`style`,`textarea`],w_={concrete:!0,name:`htmlFlow`,resolveTo:D_,tokenize:O_},T_={partial:!0,tokenize:A_},E_={partial:!0,tokenize:k_};function D_(e){let t=e.length;for(;t--&&!(e[t][0]===`enter`&&e[t][1].type===`htmlFlow`););return t>1&&e[t-2][1].type===`linePrefix`&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2)),e}function O_(e,t,n){let r=this,i,a,o,s,c;return l;function l(e){return u(e)}function u(t){return e.enter(`htmlFlow`),e.enter(`htmlFlowData`),e.consume(t),d}function d(s){return s===33?(e.consume(s),f):s===47?(e.consume(s),a=!0,h):s===63?(e.consume(s),i=3,r.interrupt?t:ie):sg(s)?(e.consume(s),o=String.fromCharCode(s),g):n(s)}function f(a){return a===45?(e.consume(a),i=2,p):a===91?(e.consume(a),i=5,s=0,m):sg(a)?(e.consume(a),i=4,r.interrupt?t:ie):n(a)}function p(i){return i===45?(e.consume(i),r.interrupt?t:ie):n(i)}function m(i){return i===`CDATA[`.charCodeAt(s++)?(e.consume(i),s===6?r.interrupt?t:O:m):n(i)}function h(t){return sg(t)?(e.consume(t),o=String.fromCharCode(t),g):n(t)}function g(s){if(s===null||s===47||s===62||Y(s)){let c=s===47,l=o.toLowerCase();return!c&&!a&&C_.includes(l)?(i=1,r.interrupt?t(s):O(s)):S_.includes(o.toLowerCase())?(i=6,c?(e.consume(s),_):r.interrupt?t(s):O(s)):(i=7,r.interrupt&&!r.parser.lazy[r.now().line]?n(s):a?v(s):y(s))}return s===45||cg(s)?(e.consume(s),o+=String.fromCharCode(s),g):n(s)}function _(i){return i===62?(e.consume(i),r.interrupt?t:O):n(i)}function v(t){return X(t)?(e.consume(t),v):E(t)}function y(t){return t===47?(e.consume(t),E):t===58||t===95||sg(t)?(e.consume(t),b):X(t)?(e.consume(t),y):E(t)}function b(t){return t===45||t===46||t===58||t===95||cg(t)?(e.consume(t),b):x(t)}function x(t){return t===61?(e.consume(t),S):X(t)?(e.consume(t),x):y(t)}function S(t){return t===null||t===60||t===61||t===62||t===96?n(t):t===34||t===39?(e.consume(t),c=t,C):X(t)?(e.consume(t),S):w(t)}function C(t){return t===c?(e.consume(t),c=null,T):t===null||J(t)?n(t):(e.consume(t),C)}function w(t){return t===null||t===34||t===39||t===47||t===60||t===61||t===62||t===96||Y(t)?x(t):(e.consume(t),w)}function T(e){return e===47||e===62||X(e)?y(e):n(e)}function E(t){return t===62?(e.consume(t),D):n(t)}function D(t){return t===null||J(t)?O(t):X(t)?(e.consume(t),D):n(t)}function O(t){return t===45&&i===2?(e.consume(t),A):t===60&&i===1?(e.consume(t),ne):t===62&&i===4?(e.consume(t),ae):t===63&&i===3?(e.consume(t),ie):t===93&&i===5?(e.consume(t),re):J(t)&&(i===6||i===7)?(e.exit(`htmlFlowData`),e.check(T_,oe,ee)(t)):t===null||J(t)?(e.exit(`htmlFlowData`),ee(t)):(e.consume(t),O)}function ee(t){return e.check(E_,k,oe)(t)}function k(t){return e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),te}function te(t){return t===null||J(t)?ee(t):(e.enter(`htmlFlowData`),O(t))}function A(t){return t===45?(e.consume(t),ie):O(t)}function ne(t){return t===47?(e.consume(t),o=``,j):O(t)}function j(t){if(t===62){let n=o.toLowerCase();return C_.includes(n)?(e.consume(t),ae):O(t)}return sg(t)&&o.length<8?(e.consume(t),o+=String.fromCharCode(t),j):O(t)}function re(t){return t===93?(e.consume(t),ie):O(t)}function ie(t){return t===62?(e.consume(t),ae):t===45&&i===2?(e.consume(t),ie):O(t)}function ae(t){return t===null||J(t)?(e.exit(`htmlFlowData`),oe(t)):(e.consume(t),ae)}function oe(n){return e.exit(`htmlFlow`),t(n)}}function k_(e,t,n){let r=this;return i;function i(t){return J(t)?(e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),a):n(t)}function a(e){return r.parser.lazy[r.now().line]?n(e):t(e)}}function A_(e,t,n){return r;function r(r){return e.enter(`lineEnding`),e.consume(r),e.exit(`lineEnding`),e.attempt(Mg,t,n)}}var j_={name:`htmlText`,tokenize:M_};function M_(e,t,n){let r=this,i,a,o;return s;function s(t){return e.enter(`htmlText`),e.enter(`htmlTextData`),e.consume(t),c}function c(t){return t===33?(e.consume(t),l):t===47?(e.consume(t),x):t===63?(e.consume(t),y):sg(t)?(e.consume(t),w):n(t)}function l(t){return t===45?(e.consume(t),u):t===91?(e.consume(t),a=0,m):sg(t)?(e.consume(t),v):n(t)}function u(t){return t===45?(e.consume(t),p):n(t)}function d(t){return t===null?n(t):t===45?(e.consume(t),f):J(t)?(o=d,ne(t)):(e.consume(t),d)}function f(t){return t===45?(e.consume(t),p):d(t)}function p(e){return e===62?A(e):e===45?f(e):d(e)}function m(t){return t===`CDATA[`.charCodeAt(a++)?(e.consume(t),a===6?h:m):n(t)}function h(t){return t===null?n(t):t===93?(e.consume(t),g):J(t)?(o=h,ne(t)):(e.consume(t),h)}function g(t){return t===93?(e.consume(t),_):h(t)}function _(t){return t===62?A(t):t===93?(e.consume(t),_):h(t)}function v(t){return t===null||t===62?A(t):J(t)?(o=v,ne(t)):(e.consume(t),v)}function y(t){return t===null?n(t):t===63?(e.consume(t),b):J(t)?(o=y,ne(t)):(e.consume(t),y)}function b(e){return e===62?A(e):y(e)}function x(t){return sg(t)?(e.consume(t),S):n(t)}function S(t){return t===45||cg(t)?(e.consume(t),S):C(t)}function C(t){return J(t)?(o=C,ne(t)):X(t)?(e.consume(t),C):A(t)}function w(t){return t===45||cg(t)?(e.consume(t),w):t===47||t===62||Y(t)?T(t):n(t)}function T(t){return t===47?(e.consume(t),A):t===58||t===95||sg(t)?(e.consume(t),E):J(t)?(o=T,ne(t)):X(t)?(e.consume(t),T):A(t)}function E(t){return t===45||t===46||t===58||t===95||cg(t)?(e.consume(t),E):D(t)}function D(t){return t===61?(e.consume(t),O):J(t)?(o=D,ne(t)):X(t)?(e.consume(t),D):T(t)}function O(t){return t===null||t===60||t===61||t===62||t===96?n(t):t===34||t===39?(e.consume(t),i=t,ee):J(t)?(o=O,ne(t)):X(t)?(e.consume(t),O):(e.consume(t),k)}function ee(t){return t===i?(e.consume(t),i=void 0,te):t===null?n(t):J(t)?(o=ee,ne(t)):(e.consume(t),ee)}function k(t){return t===null||t===34||t===39||t===60||t===61||t===96?n(t):t===47||t===62||Y(t)?T(t):(e.consume(t),k)}function te(e){return e===47||e===62||Y(e)?T(e):n(e)}function A(r){return r===62?(e.consume(r),e.exit(`htmlTextData`),e.exit(`htmlText`),t):n(r)}function ne(t){return e.exit(`htmlTextData`),e.enter(`lineEnding`),e.consume(t),e.exit(`lineEnding`),j}function j(t){return X(t)?Z(e,re,`linePrefix`,r.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)(t):re(t)}function re(t){return e.enter(`htmlTextData`),o(t)}}var N_={name:`labelEnd`,resolveAll:L_,resolveTo:R_,tokenize:z_},P_={tokenize:B_},F_={tokenize:V_},I_={tokenize:H_};function L_(e){let t=-1,n=[];for(;++t<e.length;){let r=e[t][1];if(n.push(e[t]),r.type===`labelImage`||r.type===`labelLink`||r.type===`labelEnd`){let e=r.type===`labelImage`?4:2;r.type=`data`,t+=e}}return e.length!==n.length&&$h(e,0,e.length,n),e}function R_(e,t){let n=e.length,r=0,i,a,o,s;for(;n--;)if(i=e[n][1],a){if(i.type===`link`||i.type===`labelLink`&&i._inactive)break;e[n][0]===`enter`&&i.type===`labelLink`&&(i._inactive=!0)}else if(o){if(e[n][0]===`enter`&&(i.type===`labelImage`||i.type===`labelLink`)&&!i._balanced&&(a=n,i.type!==`labelLink`)){r=2;break}}else i.type===`labelEnd`&&(o=n);let c={type:e[a][1].type===`labelLink`?`link`:`image`,start:{...e[a][1].start},end:{...e[e.length-1][1].end}},l={type:`label`,start:{...e[a][1].start},end:{...e[o][1].end}},u={type:`labelText`,start:{...e[a+r+2][1].end},end:{...e[o-2][1].start}};return s=[[`enter`,c,t],[`enter`,l,t]],s=eg(s,e.slice(a+1,a+r+3)),s=eg(s,[[`enter`,u,t]]),s=eg(s,Tg(t.parser.constructs.insideSpan.null,e.slice(a+r+4,o-3),t)),s=eg(s,[[`exit`,u,t],e[o-2],e[o-1],[`exit`,l,t]]),s=eg(s,e.slice(o+1)),s=eg(s,[[`exit`,c,t]]),$h(e,a,e.length,s),e}function z_(e,t,n){let r=this,i=r.events.length,a,o;for(;i--;)if((r.events[i][1].type===`labelImage`||r.events[i][1].type===`labelLink`)&&!r.events[i][1]._balanced){a=r.events[i][1];break}return s;function s(t){return a?a._inactive?d(t):(o=r.parser.defined.includes(og(r.sliceSerialize({start:a.end,end:r.now()}))),e.enter(`labelEnd`),e.enter(`labelMarker`),e.consume(t),e.exit(`labelMarker`),e.exit(`labelEnd`),c):n(t)}function c(t){return t===40?e.attempt(P_,u,o?u:d)(t):t===91?e.attempt(F_,u,o?l:d)(t):o?u(t):d(t)}function l(t){return e.attempt(I_,u,d)(t)}function u(e){return t(e)}function d(e){return a._balanced=!0,n(e)}}function B_(e,t,n){return r;function r(t){return e.enter(`resource`),e.enter(`resourceMarker`),e.consume(t),e.exit(`resourceMarker`),i}function i(t){return Y(t)?f_(e,a)(t):a(t)}function a(t){return t===41?u(t):l_(e,o,s,`resourceDestination`,`resourceDestinationLiteral`,`resourceDestinationLiteralMarker`,`resourceDestinationRaw`,`resourceDestinationString`,32)(t)}function o(t){return Y(t)?f_(e,c)(t):u(t)}function s(e){return n(e)}function c(t){return t===34||t===39||t===40?d_(e,l,n,`resourceTitle`,`resourceTitleMarker`,`resourceTitleString`)(t):u(t)}function l(t){return Y(t)?f_(e,u)(t):u(t)}function u(r){return r===41?(e.enter(`resourceMarker`),e.consume(r),e.exit(`resourceMarker`),e.exit(`resource`),t):n(r)}}function V_(e,t,n){let r=this;return i;function i(t){return u_.call(r,e,a,o,`reference`,`referenceMarker`,`referenceString`)(t)}function a(e){return r.parser.defined.includes(og(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)))?t(e):n(e)}function o(e){return n(e)}}function H_(e,t,n){return r;function r(t){return e.enter(`reference`),e.enter(`referenceMarker`),e.consume(t),e.exit(`referenceMarker`),i}function i(r){return r===93?(e.enter(`referenceMarker`),e.consume(r),e.exit(`referenceMarker`),e.exit(`reference`),t):n(r)}}var U_={name:`labelStartImage`,resolveAll:N_.resolveAll,tokenize:W_};function W_(e,t,n){let r=this;return i;function i(t){return e.enter(`labelImage`),e.enter(`labelImageMarker`),e.consume(t),e.exit(`labelImageMarker`),a}function a(t){return t===91?(e.enter(`labelMarker`),e.consume(t),e.exit(`labelMarker`),e.exit(`labelImage`),o):n(t)}function o(e){return e===94&&`_hiddenFootnoteSupport`in r.parser.constructs?n(e):t(e)}}var G_={name:`labelStartLink`,resolveAll:N_.resolveAll,tokenize:K_};function K_(e,t,n){let r=this;return i;function i(t){return e.enter(`labelLink`),e.enter(`labelMarker`),e.consume(t),e.exit(`labelMarker`),e.exit(`labelLink`),a}function a(e){return e===94&&`_hiddenFootnoteSupport`in r.parser.constructs?n(e):t(e)}}var q_={name:`lineEnding`,tokenize:J_};function J_(e,t){return n;function n(n){return e.enter(`lineEnding`),e.consume(n),e.exit(`lineEnding`),Z(e,t,`linePrefix`)}}var Y_={name:`thematicBreak`,tokenize:X_};function X_(e,t,n){let r=0,i;return a;function a(t){return e.enter(`thematicBreak`),o(t)}function o(e){return i=e,s(e)}function s(a){return a===i?(e.enter(`thematicBreakSequence`),c(a)):r>=3&&(a===null||J(a))?(e.exit(`thematicBreak`),t(a)):n(a)}function c(t){return t===i?(e.consume(t),r++,c):(e.exit(`thematicBreakSequence`),X(t)?Z(e,s,`whitespace`)(t):s(t))}}var Z_={continuation:{tokenize:tv},exit:rv,name:`list`,tokenize:ev},Q_={partial:!0,tokenize:iv},$_={partial:!0,tokenize:nv};function ev(e,t,n){let r=this,i=r.events[r.events.length-1],a=i&&i[1].type===`linePrefix`?i[2].sliceSerialize(i[1],!0).length:0,o=0;return s;function s(t){let i=r.containerState.type||(t===42||t===43||t===45?`listUnordered`:`listOrdered`);if(i===`listUnordered`?!r.containerState.marker||t===r.containerState.marker:dg(t)){if(r.containerState.type||(r.containerState.type=i,e.enter(i,{_container:!0})),i===`listUnordered`)return e.enter(`listItemPrefix`),t===42||t===45?e.check(Y_,n,l)(t):l(t);if(!r.interrupt||t===49)return e.enter(`listItemPrefix`),e.enter(`listItemValue`),c(t)}return n(t)}function c(t){return dg(t)&&++o<10?(e.consume(t),c):(!r.interrupt||o<2)&&(r.containerState.marker?t===r.containerState.marker:t===41||t===46)?(e.exit(`listItemValue`),l(t)):n(t)}function l(t){return e.enter(`listItemMarker`),e.consume(t),e.exit(`listItemMarker`),r.containerState.marker=r.containerState.marker||t,e.check(Mg,r.interrupt?n:u,e.attempt(Q_,f,d))}function u(e){return r.containerState.initialBlankLine=!0,a++,f(e)}function d(t){return X(t)?(e.enter(`listItemPrefixWhitespace`),e.consume(t),e.exit(`listItemPrefixWhitespace`),f):n(t)}function f(n){return r.containerState.size=a+r.sliceSerialize(e.exit(`listItemPrefix`),!0).length,t(n)}}function tv(e,t,n){let r=this;return r.containerState._closeFlow=void 0,e.check(Mg,i,a);function i(n){return r.containerState.furtherBlankLines=r.containerState.furtherBlankLines||r.containerState.initialBlankLine,Z(e,t,`listItemIndent`,r.containerState.size+1)(n)}function a(n){return r.containerState.furtherBlankLines||!X(n)?(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,o(n)):(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,e.attempt($_,t,o)(n))}function o(i){return r.containerState._closeFlow=!0,r.interrupt=void 0,Z(e,e.attempt(Z_,t,n),`linePrefix`,r.parser.constructs.disable.null.includes(`codeIndented`)?void 0:4)(i)}}function nv(e,t,n){let r=this;return Z(e,i,`listItemIndent`,r.containerState.size+1);function i(e){let i=r.events[r.events.length-1];return i&&i[1].type===`listItemIndent`&&i[2].sliceSerialize(i[1],!0).length===r.containerState.size?t(e):n(e)}}function rv(e){e.exit(this.containerState.type)}function iv(e,t,n){let r=this;return Z(e,i,`listItemPrefixWhitespace`,r.parser.constructs.disable.null.includes(`codeIndented`)?void 0:5);function i(e){let i=r.events[r.events.length-1];return!X(e)&&i&&i[1].type===`listItemPrefixWhitespace`?t(e):n(e)}}var av={name:`setextUnderline`,resolveTo:ov,tokenize:sv};function ov(e,t){let n=e.length,r,i,a;for(;n--;)if(e[n][0]===`enter`){if(e[n][1].type===`content`){r=n;break}e[n][1].type===`paragraph`&&(i=n)}else e[n][1].type===`content`&&e.splice(n,1),!a&&e[n][1].type===`definition`&&(a=n);let o={type:`setextHeading`,start:{...e[r][1].start},end:{...e[e.length-1][1].end}};return e[i][1].type=`setextHeadingText`,a?(e.splice(i,0,[`enter`,o,t]),e.splice(a+1,0,[`exit`,e[r][1],t]),e[r][1].end={...e[a][1].end}):e[r][1]=o,e.push([`exit`,o,t]),e}function sv(e,t,n){let r=this,i;return a;function a(t){let a=r.events.length,s;for(;a--;)if(r.events[a][1].type!==`lineEnding`&&r.events[a][1].type!==`linePrefix`&&r.events[a][1].type!==`content`){s=r.events[a][1].type===`paragraph`;break}return!r.parser.lazy[r.now().line]&&(r.interrupt||s)?(e.enter(`setextHeadingLine`),i=t,o(t)):n(t)}function o(t){return e.enter(`setextHeadingLineSequence`),s(t)}function s(t){return t===i?(e.consume(t),s):(e.exit(`setextHeadingLineSequence`),X(t)?Z(e,c,`lineSuffix`)(t):c(t))}function c(r){return r===null||J(r)?(e.exit(`setextHeadingLine`),t(r)):n(r)}}var cv={tokenize:lv};function lv(e){let t=this,n=e.attempt(Mg,r,e.attempt(this.parser.constructs.flowInitial,i,Z(e,e.attempt(this.parser.constructs.flow,i,e.attempt(i_,i)),`linePrefix`)));return n;function r(r){if(r===null){e.consume(r);return}return e.enter(`lineEndingBlank`),e.consume(r),e.exit(`lineEndingBlank`),t.currentConstruct=void 0,n}function i(r){if(r===null){e.consume(r);return}return e.enter(`lineEnding`),e.consume(r),e.exit(`lineEnding`),t.currentConstruct=void 0,n}}var uv={resolveAll:mv()},dv=pv(`string`),fv=pv(`text`);function pv(e){return{resolveAll:mv(e===`text`?hv:void 0),tokenize:t};function t(t){let n=this,r=this.parser.constructs[e],i=t.attempt(r,a,o);return a;function a(e){return c(e)?i(e):o(e)}function o(e){if(e===null){t.consume(e);return}return t.enter(`data`),t.consume(e),s}function s(e){return c(e)?(t.exit(`data`),i(e)):(t.consume(e),s)}function c(e){if(e===null)return!0;let t=r[e],i=-1;if(t)for(;++i<t.length;){let e=t[i];if(!e.previous||e.previous.call(n,n.previous))return!0}return!1}}}function mv(e){return t;function t(t,n){let r=-1,i;for(;++r<=t.length;)i===void 0?t[r]&&t[r][1].type===`data`&&(i=r,r++):(!t[r]||t[r][1].type!==`data`)&&(r!==i+2&&(t[i][1].end=t[r-1][1].end,t.splice(i+2,r-i-2),r=i+2),i=void 0);return e?e(t,n):t}}function hv(e,t){let n=0;for(;++n<=e.length;)if((n===e.length||e[n][1].type===`lineEnding`)&&e[n-1][1].type===`data`){let r=e[n-1][1],i=t.sliceStream(r),a=i.length,o=-1,s=0,c;for(;a--;){let e=i[a];if(typeof e==`string`){for(o=e.length;e.charCodeAt(o-1)===32;)s++,o--;if(o)break;o=-1}else if(e===-2)c=!0,s++;else if(e!==-1){a++;break}}if(t._contentTypeTextTrailing&&n===e.length&&(s=0),s){let i={type:n===e.length||c||s<2?`lineSuffix`:`hardBreakTrailing`,start:{_bufferIndex:a?o:r.start._bufferIndex+o,_index:r.start._index+a,line:r.end.line,column:r.end.column-s,offset:r.end.offset-s},end:{...r.end}};r.end={...i.start},r.start.offset===r.end.offset?Object.assign(r,i):(e.splice(n,0,[`enter`,i,t],[`exit`,i,t]),n+=2)}n++}return e}var gv=i({attentionMarkers:()=>wv,contentInitial:()=>vv,disable:()=>Tv,document:()=>_v,flow:()=>bv,flowInitial:()=>yv,insideSpan:()=>Cv,string:()=>xv,text:()=>Sv}),_v={42:Z_,43:Z_,45:Z_,48:Z_,49:Z_,50:Z_,51:Z_,52:Z_,53:Z_,54:Z_,55:Z_,56:Z_,57:Z_,62:Pg},vv={91:p_},yv={[-2]:Kg,[-1]:Kg,32:Kg},bv={35:y_,42:Y_,45:[av,Y_],60:w_,61:av,95:Y_,96:Ug,126:Ug},xv={38:Bg,92:Rg},Sv={[-5]:q_,[-4]:q_,[-3]:q_,33:U_,38:Bg,42:Eg,60:[Ag,j_],91:G_,92:[__,Rg],93:N_,95:Eg,96:Xg},Cv={null:[Eg,uv]},wv={null:[42,95]},Tv={null:[]};function Ev(e,t,n){let r={_bufferIndex:-1,_index:0,line:n&&n.line||1,column:n&&n.column||1,offset:n&&n.offset||0},i={},a=[],o=[],s=[],c={attempt:C(x),check:C(S),consume:v,enter:y,exit:b,interrupt:C(S,{interrupt:!0})},l={code:null,containerState:{},defineSkip:h,events:[],now:m,parser:e,previous:null,sliceSerialize:f,sliceStream:p,write:d},u=t.tokenize.call(l,c);return t.resolveAll&&a.push(t),l;function d(e){return o=eg(o,e),g(),o[o.length-1]===null?(w(t,0),l.events=Tg(a,l.events,l),l.events):[]}function f(e,t){return Ov(p(e),t)}function p(e){return Dv(o,e)}function m(){let{_bufferIndex:e,_index:t,line:n,column:i,offset:a}=r;return{_bufferIndex:e,_index:t,line:n,column:i,offset:a}}function h(e){i[e.line]=e.column,E()}function g(){let e;for(;r._index<o.length;){let t=o[r._index];if(typeof t==`string`)for(e=r._index,r._bufferIndex<0&&(r._bufferIndex=0);r._index===e&&r._bufferIndex<t.length;)_(t.charCodeAt(r._bufferIndex));else _(t)}}function _(e){u=u(e)}function v(e){J(e)?(r.line++,r.column=1,r.offset+=e===-3?2:1,E()):e!==-1&&(r.column++,r.offset++),r._bufferIndex<0?r._index++:(r._bufferIndex++,r._bufferIndex===o[r._index].length&&(r._bufferIndex=-1,r._index++)),l.previous=e}function y(e,t){let n=t||{};return n.type=e,n.start=m(),l.events.push([`enter`,n,l]),s.push(n),n}function b(e){let t=s.pop();return t.end=m(),l.events.push([`exit`,t,l]),t}function x(e,t){w(e,t.from)}function S(e,t){t.restore()}function C(e,t){return n;function n(n,r,i){let a,o,s,u;return Array.isArray(n)?f(n):`tokenize`in n?f([n]):d(n);function d(e){return t;function t(t){let n=t!==null&&e[t],r=t!==null&&e.null;return f([...Array.isArray(n)?n:n?[n]:[],...Array.isArray(r)?r:r?[r]:[]])(t)}}function f(e){return a=e,o=0,e.length===0?i:p(e[o])}function p(e){return n;function n(n){return u=T(),s=e,e.partial||(l.currentConstruct=e),e.name&&l.parser.constructs.disable.null.includes(e.name)?h(n):e.tokenize.call(t?Object.assign(Object.create(l),t):l,c,m,h)(n)}}function m(t){return e(s,u),r}function h(e){return u.restore(),++o<a.length?p(a[o]):i}}}function w(e,t){e.resolveAll&&!a.includes(e)&&a.push(e),e.resolve&&$h(l.events,t,l.events.length-t,e.resolve(l.events.slice(t),l)),e.resolveTo&&(l.events=e.resolveTo(l.events,l))}function T(){let e=m(),t=l.previous,n=l.currentConstruct,i=l.events.length,a=Array.from(s);return{from:i,restore:o};function o(){r=e,l.previous=t,l.currentConstruct=n,l.events.length=i,s=a,E()}}function E(){r.line in i&&r.column<2&&(r.column=i[r.line],r.offset+=i[r.line]-1)}}function Dv(e,t){let n=t.start._index,r=t.start._bufferIndex,i=t.end._index,a=t.end._bufferIndex,o;if(n===i)o=[e[n].slice(r,a)];else{if(o=e.slice(n,i),r>-1){let e=o[0];typeof e==`string`?o[0]=e.slice(r):o.shift()}a>0&&o.push(e[i].slice(0,a))}return o}function Ov(e,t){let n=-1,r=[],i;for(;++n<e.length;){let a=e[n],o;if(typeof a==`string`)o=a;else switch(a){case-5:o=`\r`;break;case-4:o=`
|
|
17
17
|
`;break;case-3:o=`\r
|
|
18
18
|
`;break;case-2:o=t?` `:` `;break;case-1:if(!t&&i)continue;o=` `;break;default:o=String.fromCharCode(a)}i=a===-2,r.push(o)}return r.join(``)}function kv(e){let t={constructs:ng([gv,...(e||{}).extensions||[]]),content:n(vg),defined:[],document:n(bg),flow:n(cv),lazy:{},string:n(dv),text:n(fv)};return t;function n(e){return n;function n(n){return Ev(t,e,n)}}}function Av(e){for(;!n_(e););return e}var jv=/[\0\t\n\r]/g;function Mv(){let e=1,t=``,n=!0,r;return i;function i(i,a,o){let s=[],c,l,u,d,f;for(i=t+(typeof i==`string`?i.toString():new TextDecoder(a||void 0).decode(i)),u=0,t=``,n&&=(i.charCodeAt(0)===65279&&u++,void 0);u<i.length;){if(jv.lastIndex=u,c=jv.exec(i),d=c&&c.index!==void 0?c.index:i.length,f=i.charCodeAt(d),!c){t=i.slice(u);break}if(f===10&&u===d&&r)s.push(-3),r=void 0;else switch(r&&=(s.push(-5),void 0),u<d&&(s.push(i.slice(u,d)),e+=d-u),f){case 0:s.push(65533),e++;break;case 9:for(l=Math.ceil(e/4)*4,s.push(-2);e++<l;)s.push(-1);break;case 10:s.push(-4),e=1;break;default:r=!0,e=1}u=d+1}return o&&(r&&s.push(-5),t&&s.push(t),s.push(null)),s}}var Nv=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function Pv(e){return e.replace(Nv,Fv)}function Fv(e,t,n){if(t)return t;if(n.charCodeAt(0)===35){let e=n.charCodeAt(1),t=e===120||e===88;return ag(n.slice(t?2:1),t?16:10)}return Qh(n)||e}var Iv={}.hasOwnProperty;function Lv(e,t,n){return t&&typeof t==`object`&&(n=t,t=void 0),Rv(n)(Av(kv(n).document().write(Mv()(e,t,!0))))}function Rv(e){let t={transforms:[],canContainEols:[`emphasis`,`fragment`,`heading`,`paragraph`,`strong`],enter:{autolink:a(Se),autolinkProtocol:T,autolinkEmail:T,atxHeading:a(ve),blockQuote:a(M),characterEscape:T,characterReference:T,codeFenced:a(me),codeFencedFenceInfo:o,codeFencedFenceMeta:o,codeIndented:a(me,o),codeText:a(he,o),codeTextData:T,data:T,codeFlowValue:T,definition:a(ge),definitionDestinationString:o,definitionLabelString:o,definitionTitleString:o,emphasis:a(_e),hardBreakEscape:a(ye),hardBreakTrailing:a(ye),htmlFlow:a(be,o),htmlFlowData:T,htmlText:a(be,o),htmlTextData:T,image:a(xe),label:o,link:a(Se),listItem:a(we),listItemValue:f,listOrdered:a(Ce,d),listUnordered:a(Ce),paragraph:a(Te),reference:se,referenceString:o,resourceDestinationString:o,resourceTitleString:o,setextHeading:a(ve),strong:a(Ee),thematicBreak:a(Oe)},exit:{atxHeading:c(),atxHeadingSequence:x,autolink:c(),autolinkEmail:pe,autolinkProtocol:fe,blockQuote:c(),characterEscapeValue:E,characterReferenceMarkerHexadecimal:le,characterReferenceMarkerNumeric:le,characterReferenceValue:ue,characterReference:de,codeFenced:c(g),codeFencedFence:h,codeFencedFenceInfo:p,codeFencedFenceMeta:m,codeFlowValue:E,codeIndented:c(_),codeText:c(te),codeTextData:E,data:E,definition:c(),definitionDestinationString:b,definitionLabelString:v,definitionTitleString:y,emphasis:c(),hardBreakEscape:c(O),hardBreakTrailing:c(O),htmlFlow:c(ee),htmlFlowData:E,htmlText:c(k),htmlTextData:E,image:c(ne),label:re,labelText:j,lineEnding:D,link:c(A),listItem:c(),listOrdered:c(),listUnordered:c(),paragraph:c(),referenceString:ce,resourceDestinationString:ie,resourceTitleString:ae,resource:oe,setextHeading:c(w),setextHeadingLineSequence:C,setextHeadingText:S,strong:c(),thematicBreak:c()}};Bv(t,(e||{}).mdastExtensions||[]);let n={};return r;function r(e){let r={type:`root`,children:[]},a={stack:[r],tokenStack:[],config:t,enter:s,exit:l,buffer:o,resume:u,data:n},c=[],d=-1;for(;++d<e.length;)(e[d][1].type===`listOrdered`||e[d][1].type===`listUnordered`)&&(e[d][0]===`enter`?c.push(d):d=i(e,c.pop(),d));for(d=-1;++d<e.length;){let n=t[e[d][0]];Iv.call(n,e[d][1].type)&&n[e[d][1].type].call(Object.assign({sliceSerialize:e[d][2].sliceSerialize},a),e[d][1])}if(a.tokenStack.length>0){let e=a.tokenStack[a.tokenStack.length-1];(e[1]||Hv).call(a,void 0,e[0])}for(r.position={start:zv(e.length>0?e[0][1].start:{line:1,column:1,offset:0}),end:zv(e.length>0?e[e.length-2][1].end:{line:1,column:1,offset:0})},d=-1;++d<t.transforms.length;)r=t.transforms[d](r)||r;return r}function i(e,t,n){let r=t-1,i=-1,a=!1,o,s,c,l;for(;++r<=n;){let t=e[r];switch(t[1].type){case`listUnordered`:case`listOrdered`:case`blockQuote`:t[0]===`enter`?i++:i--,l=void 0;break;case`lineEndingBlank`:t[0]===`enter`&&(o&&!l&&!i&&!c&&(c=r),l=void 0);break;case`linePrefix`:case`listItemValue`:case`listItemMarker`:case`listItemPrefix`:case`listItemPrefixWhitespace`:break;default:l=void 0}if(!i&&t[0]===`enter`&&t[1].type===`listItemPrefix`||i===-1&&t[0]===`exit`&&(t[1].type===`listUnordered`||t[1].type===`listOrdered`)){if(o){let i=r;for(s=void 0;i--;){let t=e[i];if(t[1].type===`lineEnding`||t[1].type===`lineEndingBlank`){if(t[0]===`exit`)continue;s&&(e[s][1].type=`lineEndingBlank`,a=!0),t[1].type=`lineEnding`,s=i}else if(!(t[1].type===`linePrefix`||t[1].type===`blockQuotePrefix`||t[1].type===`blockQuotePrefixWhitespace`||t[1].type===`blockQuoteMarker`||t[1].type===`listItemIndent`))break}c&&(!s||c<s)&&(o._spread=!0),o.end=Object.assign({},s?e[s][1].start:t[1].end),e.splice(s||r,0,[`exit`,o,t[2]]),r++,n++}if(t[1].type===`listItemPrefix`){let i={type:`listItem`,_spread:!1,start:Object.assign({},t[1].start),end:void 0};o=i,e.splice(r,0,[`enter`,i,t[2]]),r++,n++,c=void 0,l=!0}}}return e[t][1]._spread=a,n}function a(e,t){return n;function n(n){s.call(this,e(n),n),t&&t.call(this,n)}}function o(){this.stack.push({type:`fragment`,children:[]})}function s(e,t,n){this.stack[this.stack.length-1].children.push(e),this.stack.push(e),this.tokenStack.push([t,n||void 0]),e.position={start:zv(t.start),end:void 0}}function c(e){return t;function t(t){e&&e.call(this,t),l.call(this,t)}}function l(e,t){let n=this.stack.pop(),r=this.tokenStack.pop();if(r)r[0].type!==e.type&&(t?t.call(this,e,r[0]):(r[1]||Hv).call(this,e,r[0]));else throw Error("Cannot close `"+e.type+"` ("+dh({start:e.start,end:e.end})+`): it’s not open`);n.position.end=zv(e.end)}function u(){return qh(this.stack.pop())}function d(){this.data.expectingFirstListItemValue=!0}function f(e){if(this.data.expectingFirstListItemValue){let t=this.stack[this.stack.length-2];t.start=Number.parseInt(this.sliceSerialize(e),10),this.data.expectingFirstListItemValue=void 0}}function p(){let e=this.resume(),t=this.stack[this.stack.length-1];t.lang=e}function m(){let e=this.resume(),t=this.stack[this.stack.length-1];t.meta=e}function h(){this.data.flowCodeInside||(this.buffer(),this.data.flowCodeInside=!0)}function g(){let e=this.resume(),t=this.stack[this.stack.length-1];t.value=e.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,``),this.data.flowCodeInside=void 0}function _(){let e=this.resume(),t=this.stack[this.stack.length-1];t.value=e.replace(/(\r?\n|\r)$/g,``)}function v(e){let t=this.resume(),n=this.stack[this.stack.length-1];n.label=t,n.identifier=og(this.sliceSerialize(e)).toLowerCase()}function y(){let e=this.resume(),t=this.stack[this.stack.length-1];t.title=e}function b(){let e=this.resume(),t=this.stack[this.stack.length-1];t.url=e}function x(e){let t=this.stack[this.stack.length-1];t.depth||=this.sliceSerialize(e).length}function S(){this.data.setextHeadingSlurpLineEnding=!0}function C(e){let t=this.stack[this.stack.length-1];t.depth=this.sliceSerialize(e).codePointAt(0)===61?1:2}function w(){this.data.setextHeadingSlurpLineEnding=void 0}function T(e){let t=this.stack[this.stack.length-1].children,n=t[t.length-1];(!n||n.type!==`text`)&&(n=De(),n.position={start:zv(e.start),end:void 0},t.push(n)),this.stack.push(n)}function E(e){let t=this.stack.pop();t.value+=this.sliceSerialize(e),t.position.end=zv(e.end)}function D(e){let n=this.stack[this.stack.length-1];if(this.data.atHardBreak){let t=n.children[n.children.length-1];t.position.end=zv(e.end),this.data.atHardBreak=void 0;return}!this.data.setextHeadingSlurpLineEnding&&t.canContainEols.includes(n.type)&&(T.call(this,e),E.call(this,e))}function O(){this.data.atHardBreak=!0}function ee(){let e=this.resume(),t=this.stack[this.stack.length-1];t.value=e}function k(){let e=this.resume(),t=this.stack[this.stack.length-1];t.value=e}function te(){let e=this.resume(),t=this.stack[this.stack.length-1];t.value=e}function A(){let e=this.stack[this.stack.length-1];if(this.data.inReference){let t=this.data.referenceType||`shortcut`;e.type+=`Reference`,e.referenceType=t,delete e.url,delete e.title}else delete e.identifier,delete e.label;this.data.referenceType=void 0}function ne(){let e=this.stack[this.stack.length-1];if(this.data.inReference){let t=this.data.referenceType||`shortcut`;e.type+=`Reference`,e.referenceType=t,delete e.url,delete e.title}else delete e.identifier,delete e.label;this.data.referenceType=void 0}function j(e){let t=this.sliceSerialize(e),n=this.stack[this.stack.length-2];n.label=Pv(t),n.identifier=og(t).toLowerCase()}function re(){let e=this.stack[this.stack.length-1],t=this.resume(),n=this.stack[this.stack.length-1];this.data.inReference=!0,n.type===`link`?n.children=e.children:n.alt=t}function ie(){let e=this.resume(),t=this.stack[this.stack.length-1];t.url=e}function ae(){let e=this.resume(),t=this.stack[this.stack.length-1];t.title=e}function oe(){this.data.inReference=void 0}function se(){this.data.referenceType=`collapsed`}function ce(e){let t=this.resume(),n=this.stack[this.stack.length-1];n.label=t,n.identifier=og(this.sliceSerialize(e)).toLowerCase(),this.data.referenceType=`full`}function le(e){this.data.characterReferenceType=e.type}function ue(e){let t=this.sliceSerialize(e),n=this.data.characterReferenceType,r;n?(r=ag(t,n===`characterReferenceMarkerNumeric`?10:16),this.data.characterReferenceType=void 0):r=Qh(t);let i=this.stack[this.stack.length-1];i.value+=r}function de(e){let t=this.stack.pop();t.position.end=zv(e.end)}function fe(e){E.call(this,e);let t=this.stack[this.stack.length-1];t.url=this.sliceSerialize(e)}function pe(e){E.call(this,e);let t=this.stack[this.stack.length-1];t.url=`mailto:`+this.sliceSerialize(e)}function M(){return{type:`blockquote`,children:[]}}function me(){return{type:`code`,lang:null,meta:null,value:``}}function he(){return{type:`inlineCode`,value:``}}function ge(){return{type:`definition`,identifier:``,label:null,title:null,url:``}}function _e(){return{type:`emphasis`,children:[]}}function ve(){return{type:`heading`,depth:0,children:[]}}function ye(){return{type:`break`}}function be(){return{type:`html`,value:``}}function xe(){return{type:`image`,title:null,url:``,alt:null}}function Se(){return{type:`link`,title:null,url:``,children:[]}}function Ce(e){return{type:`list`,ordered:e.type===`listOrdered`,start:null,spread:e._spread,children:[]}}function we(e){return{type:`listItem`,spread:e._spread,checked:null,children:[]}}function Te(){return{type:`paragraph`,children:[]}}function Ee(){return{type:`strong`,children:[]}}function De(){return{type:`text`,value:``}}function Oe(){return{type:`thematicBreak`}}}function zv(e){return{line:e.line,column:e.column,offset:e.offset}}function Bv(e,t){let n=-1;for(;++n<t.length;){let r=t[n];Array.isArray(r)?Bv(e,r):Vv(e,r)}}function Vv(e,t){let n;for(n in t)if(Iv.call(t,n))switch(n){case`canContainEols`:{let r=t[n];r&&e[n].push(...r);break}case`transforms`:{let r=t[n];r&&e[n].push(...r);break}case`enter`:case`exit`:{let r=t[n];r&&Object.assign(e[n],r);break}}}function Hv(e,t){throw Error(e?"Cannot close `"+e.type+"` ("+dh({start:e.start,end:e.end})+"): a different token (`"+t.type+"`, "+dh({start:t.start,end:t.end})+`) is open`:"Cannot close document, a token (`"+t.type+"`, "+dh({start:t.start,end:t.end})+`) is still open`)}function Uv(e){let t=this;t.parser=n;function n(n){return Lv(n,{...t.data(`settings`),...e,extensions:t.data(`micromarkExtensions`)||[],mdastExtensions:t.data(`fromMarkdownExtensions`)||[]})}}function Wv(e,t){let n={type:`element`,tagName:`blockquote`,properties:{},children:e.wrap(e.all(t),!0)};return e.patch(t,n),e.applyData(t,n)}function Gv(e,t){let n={type:`element`,tagName:`br`,properties:{},children:[]};return e.patch(t,n),[e.applyData(t,n),{type:`text`,value:`
|
|
@@ -44,17 +44,18 @@ import{_ as e,a as t,d as n,f as r,g as i,h as a,i as o,m as s,n as c,p as l,t a
|
|
|
44
44
|
https://github.com/highlightjs/highlight.js/issues/2277`),i=e,r=t),n===void 0&&(n=!0);let a={code:r,language:i};se(`before:highlight`,a);let o=a.result?a.result:v(a.language,a.code,n);return o.code=a.code,se(`after:highlight`,o),o}function v(e,n,i,a){let c=Object.create(null);function u(e,t){return e.keywords[t]}function d(){if(!k.keywords){A.addText(j);return}let e=0;k.keywordPatternRe.lastIndex=0;let t=k.keywordPatternRe.exec(j),n=``;for(;t;){n+=j.substring(e,t.index);let r=D.case_insensitive?t[0].toLowerCase():t[0],i=u(k,r);if(i){let[e,a]=i;if(A.addText(n),n=``,c[r]=(c[r]||0)+1,c[r]<=Ge&&(re+=a),e.startsWith(`_`))n+=t[0];else{let n=D.classNameAliases[e]||e;m(t[0],n)}}else n+=t[0];e=k.keywordPatternRe.lastIndex,t=k.keywordPatternRe.exec(j)}n+=j.substring(e),A.addText(n)}function f(){if(j===``)return;let e=null;if(typeof k.subLanguage==`string`){if(!t[k.subLanguage]){A.addText(j);return}e=v(k.subLanguage,j,!0,te[k.subLanguage]),te[k.subLanguage]=e._top}else e=S(j,k.subLanguage.length?k.subLanguage:null);k.relevance>0&&(re+=e.relevance),A.__addSublanguage(e._emitter,e.language)}function p(){k.subLanguage==null?d():f(),j=``}function m(e,t){e!==``&&(A.startScope(t),A.addText(e),A.endScope())}function h(e,t){let n=1,r=t.length-1;for(;n<=r;){if(!e._emit[n]){n++;continue}let r=D.classNameAliases[e[n]]||e[n],i=t[n];r?m(i,r):(j=i,d(),j=``),n++}}function g(e,t){return e.scope&&typeof e.scope==`string`&&A.openNode(D.classNameAliases[e.scope]||e.scope),e.beginScope&&(e.beginScope._wrap?(m(j,D.classNameAliases[e.beginScope._wrap]||e.beginScope._wrap),j=``):e.beginScope._multi&&(h(e.beginScope,t),j=``)),k=Object.create(e,{parent:{value:k}}),k}function _(e,t,n){let i=x(e.endRe,n);if(i){if(e[`on:end`]){let n=new r(e);e[`on:end`](t,n),n.isMatchIgnored&&(i=!1)}if(i){for(;e.endsParent&&e.parent;)e=e.parent;return e}}if(e.endsWithParent)return _(e.parent,t,n)}function y(e){return k.matcher.regexIndex===0?(j+=e[0],1):(oe=!0,0)}function b(e){let t=e[0],n=e.rule,i=new r(n),a=[n.__beforeBegin,n[`on:begin`]];for(let n of a)if(n&&(n(e,i),i.isMatchIgnored))return y(t);return n.skip?j+=t:(n.excludeBegin&&(j+=t),p(),!n.returnBegin&&!n.excludeBegin&&(j=t)),g(n,e),n.returnBegin?0:t.length}function C(e){let t=e[0],r=n.substring(e.index),i=_(k,e,r);if(!i)return We;let a=k;k.endScope&&k.endScope._wrap?(p(),m(t,k.endScope._wrap)):k.endScope&&k.endScope._multi?(p(),h(k.endScope,e)):a.skip?j+=t:(a.returnEnd||a.excludeEnd||(j+=t),p(),a.excludeEnd&&(j=t));do k.scope&&A.closeNode(),!k.skip&&!k.subLanguage&&(re+=k.relevance),k=k.parent;while(k!==i.parent);return i.starts&&g(i.starts,e),a.returnEnd?0:t.length}function w(){let e=[];for(let t=k;t!==D;t=t.parent)t.scope&&e.unshift(t.scope);e.forEach(e=>A.openNode(e))}let T={};function E(t,r){let a=r&&r[0];if(j+=t,a==null)return p(),0;if(T.type===`begin`&&r.type===`end`&&T.index===r.index&&a===``){if(j+=n.slice(r.index,r.index+1),!o){let t=Error(`0 width match regex (${e})`);throw t.languageName=e,t.badRule=T.rule,t}return 1}if(T=r,r.type===`begin`)return b(r);if(r.type===`illegal`&&!i){let e=Error(`Illegal lexeme "`+a+`" for mode "`+(k.scope||`<unnamed>`)+`"`);throw e.mode=k,e}else if(r.type===`end`){let e=C(r);if(e!==We)return e}if(r.type===`illegal`&&a===``)return j+=`
|
|
45
45
|
`,1;if(ae>1e5&&ae>r.index*3)throw Error(`potential infinite loop, way more iterations than matches`);return j+=a,a.length}let D=ne(e);if(!D)throw Oe(s.replace(`{}`,e)),Error(`Unknown language: "`+e+`"`);let O=Le(D),ee=``,k=a||O,te={},A=new l.__emitter(l);w();let j=``,re=0,ie=0,ae=0,oe=!1;try{if(D.__emitTokens)D.__emitTokens(n,A);else{for(k.matcher.considerAll();;){ae++,oe?oe=!1:k.matcher.considerAll(),k.matcher.lastIndex=ie;let e=k.matcher.exec(n);if(!e)break;let t=E(n.substring(ie,e.index),e);ie=e.index+t}E(n.substring(ie))}return A.finalize(),ee=A.toHTML(),{language:e,value:ee,relevance:re,illegal:!1,_emitter:A,_top:k}}catch(t){if(t.message&&t.message.includes(`Illegal`))return{language:e,value:He(n),illegal:!0,relevance:0,_illegalBy:{message:t.message,index:ie,context:n.slice(ie-100,ie+100),mode:t.mode,resultSoFar:ee},_emitter:A};if(o)return{language:e,value:He(n),illegal:!1,relevance:0,errorRaised:t,_emitter:A,_top:k};throw t}}function b(e){let t={value:He(e),illegal:!1,relevance:0,_top:c,_emitter:new l.__emitter(l)};return t._emitter.addText(e),t}function S(e,n){n=n||l.languages||Object.keys(t);let r=b(e),i=n.filter(ne).filter(re).map(t=>v(t,e,!1));i.unshift(r);let[a,o]=i.sort((e,t)=>{if(e.relevance!==t.relevance)return t.relevance-e.relevance;if(e.language&&t.language){if(ne(e.language).supersetOf===t.language)return 1;if(ne(t.language).supersetOf===e.language)return-1}return 0}),s=a;return s.secondBest=o,s}function C(e,t,n){let r=t&&i[t]||n;e.classList.add(`hljs`),e.classList.add(`language-${r}`)}function w(e){let t=null,n=d(e);if(u(n))return;if(se(`before:highlightElement`,{el:e,language:n}),e.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",e);return}if(e.children.length>0&&(l.ignoreUnescapedHTML||(console.warn(`One of your code blocks includes unescaped HTML. This is a potentially serious security risk.`),console.warn(`https://github.com/highlightjs/highlight.js/wiki/security`),console.warn(`The element with unescaped HTML:`),console.warn(e)),l.throwUnescapedHTML))throw new Ve(`One of your code blocks includes unescaped HTML.`,e.innerHTML);t=e;let r=t.textContent,i=n?p(r,{language:n,ignoreIllegals:!0}):S(r);e.innerHTML=i.value,e.dataset.highlighted=`yes`,C(e,n,i.language),e.result={language:i.language,re:i.relevance,relevance:i.relevance},i.secondBest&&(e.secondBest={language:i.secondBest.language,relevance:i.secondBest.relevance}),se(`after:highlightElement`,{el:e,result:i,text:r})}function T(e){l=Ue(l,e)}let E=()=>{ee(),Ae(`10.6.0`,`initHighlighting() deprecated. Use highlightAll() now.`)};function D(){ee(),Ae(`10.6.0`,`initHighlightingOnLoad() deprecated. Use highlightAll() now.`)}let O=!1;function ee(){function e(){ee()}if(document.readyState===`loading`){O||window.addEventListener(`DOMContentLoaded`,e,!1),O=!0;return}document.querySelectorAll(l.cssSelector).forEach(w)}function k(n,r){let i=null;try{i=r(e)}catch(e){if(Oe(`Language definition for '{}' could not be registered.`.replace(`{}`,n)),o)Oe(e);else throw e;i=c}i.name||=n,t[n]=i,i.rawDefinition=r.bind(null,e),i.aliases&&j(i.aliases,{languageName:n})}function te(e){delete t[e];for(let t of Object.keys(i))i[t]===e&&delete i[t]}function A(){return Object.keys(t)}function ne(e){return e=(e||``).toLowerCase(),t[e]||t[i[e]]}function j(e,{languageName:t}){typeof e==`string`&&(e=[e]),e.forEach(e=>{i[e.toLowerCase()]=t})}function re(e){let t=ne(e);return t&&!t.disableAutodetect}function ie(e){e[`before:highlightBlock`]&&!e[`before:highlightElement`]&&(e[`before:highlightElement`]=t=>{e[`before:highlightBlock`](Object.assign({block:t.el},t))}),e[`after:highlightBlock`]&&!e[`after:highlightElement`]&&(e[`after:highlightElement`]=t=>{e[`after:highlightBlock`](Object.assign({block:t.el},t))})}function ae(e){ie(e),a.push(e)}function oe(e){let t=a.indexOf(e);t!==-1&&a.splice(t,1)}function se(e,t){let n=e;a.forEach(function(e){e[n]&&e[n](t)})}function ce(e){return Ae(`10.7.0`,`highlightBlock will be removed entirely in v12.0`),Ae(`10.7.0`,`Please use highlightElement now.`),w(e)}Object.assign(e,{highlight:p,highlightAuto:S,highlightAll:ee,highlightElement:w,highlightBlock:ce,configure:T,initHighlighting:E,initHighlightingOnLoad:D,registerLanguage:k,unregisterLanguage:te,listLanguages:A,getLanguage:ne,registerAliases:j,autoDetection:re,inherit:Ue,addPlugin:ae,removePlugin:oe}),e.debugMode=function(){o=!1},e.safeMode=function(){o=!0},e.versionString=Be,e.regex={concat:_,lookahead:m,either:y,optional:g,anyNumberOfTimes:h};for(let e in me)typeof me[e]==`object`&&n(me[e]);return Object.assign(e,me),e},qe=Ke({});qe.newInstance=()=>Ke({}),t.exports=qe,qe.HighlightJS=qe,qe.default=qe}))()).default;function rw(e){let t=e.regex,n={},r={begin:/\$\{/,end:/\}/,contains:[`self`,{begin:/:-/,contains:[n]}]};Object.assign(n,{className:`variable`,variants:[{begin:t.concat(/\$[\w\d#@][\w\d_]*/,`(?![\\w\\d])(?![$])`)},r]});let i={className:`subst`,begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},a=e.inherit(e.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:`comment`}}),o={begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:`string`})]}},s={className:`string`,begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,n,i]};i.contains.push(s);let c={match:/\\"/},l={className:`string`,begin:/'/,end:/'/},u={match:/\\'/},d={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:`number`},e.NUMBER_MODE,n]},f=e.SHEBANG({binary:`(${[`fish`,`bash`,`zsh`,`sh`,`csh`,`ksh`,`tcsh`,`dash`,`scsh`].join(`|`)})`,relevance:10}),p={className:`function`,begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},m=[`if`,`then`,`else`,`elif`,`fi`,`time`,`for`,`while`,`until`,`in`,`do`,`done`,`case`,`esac`,`coproc`,`function`,`select`],h=[`true`,`false`],g={match:/(\/[a-z._-]+)+/},_=[`break`,`cd`,`continue`,`eval`,`exec`,`exit`,`export`,`getopts`,`hash`,`pwd`,`readonly`,`return`,`shift`,`test`,`times`,`trap`,`umask`,`unset`],v=[`alias`,`bind`,`builtin`,`caller`,`command`,`declare`,`echo`,`enable`,`help`,`let`,`local`,`logout`,`mapfile`,`printf`,`read`,`readarray`,`source`,`sudo`,`type`,`typeset`,`ulimit`,`unalias`],y=`autoload.bg.bindkey.bye.cap.chdir.clone.comparguments.compcall.compctl.compdescribe.compfiles.compgroups.compquote.comptags.comptry.compvalues.dirs.disable.disown.echotc.echoti.emulate.fc.fg.float.functions.getcap.getln.history.integer.jobs.kill.limit.log.noglob.popd.print.pushd.pushln.rehash.sched.setcap.setopt.stat.suspend.ttyctl.unfunction.unhash.unlimit.unsetopt.vared.wait.whence.where.which.zcompile.zformat.zftp.zle.zmodload.zparseopts.zprof.zpty.zregexparse.zsocket.zstyle.ztcp`.split(`.`),b=`chcon.chgrp.chown.chmod.cp.dd.df.dir.dircolors.ln.ls.mkdir.mkfifo.mknod.mktemp.mv.realpath.rm.rmdir.shred.sync.touch.truncate.vdir.b2sum.base32.base64.cat.cksum.comm.csplit.cut.expand.fmt.fold.head.join.md5sum.nl.numfmt.od.paste.ptx.pr.sha1sum.sha224sum.sha256sum.sha384sum.sha512sum.shuf.sort.split.sum.tac.tail.tr.tsort.unexpand.uniq.wc.arch.basename.chroot.date.dirname.du.echo.env.expr.factor.groups.hostid.id.link.logname.nice.nohup.nproc.pathchk.pinky.printenv.printf.pwd.readlink.runcon.seq.sleep.stat.stdbuf.stty.tee.test.timeout.tty.uname.unlink.uptime.users.who.whoami.yes`.split(`.`);return{name:`Bash`,aliases:[`sh`,`zsh`],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:m,literal:h,built_in:[..._,...v,`set`,`shopt`,...y,...b]},contains:[f,e.SHEBANG(),p,d,a,o,g,s,c,l,u,n]}}var iw=e=>({IMPORTANT:{scope:`meta`,begin:`!important`},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:`number`,begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:`built_in`,begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:`selector-attr`,begin:/\[/,end:/\]/,illegal:`$`,contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:`number`,begin:e.NUMBER_RE+`(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?`,relevance:0},CSS_VARIABLE:{className:`attr`,begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),aw=`a.abbr.address.article.aside.audio.b.blockquote.body.button.canvas.caption.cite.code.dd.del.details.dfn.div.dl.dt.em.fieldset.figcaption.figure.footer.form.h1.h2.h3.h4.h5.h6.header.hgroup.html.i.iframe.img.input.ins.kbd.label.legend.li.main.mark.menu.nav.object.ol.optgroup.option.p.picture.q.quote.samp.section.select.source.span.strong.summary.sup.table.tbody.td.textarea.tfoot.th.thead.time.tr.ul.var.video`.split(`.`),ow=`defs.g.marker.mask.pattern.svg.switch.symbol.feBlend.feColorMatrix.feComponentTransfer.feComposite.feConvolveMatrix.feDiffuseLighting.feDisplacementMap.feFlood.feGaussianBlur.feImage.feMerge.feMorphology.feOffset.feSpecularLighting.feTile.feTurbulence.linearGradient.radialGradient.stop.circle.ellipse.image.line.path.polygon.polyline.rect.text.use.textPath.tspan.foreignObject.clipPath`.split(`.`),sw=[...aw,...ow],cw=`any-hover.any-pointer.aspect-ratio.color.color-gamut.color-index.device-aspect-ratio.device-height.device-width.display-mode.forced-colors.grid.height.hover.inverted-colors.monochrome.orientation.overflow-block.overflow-inline.pointer.prefers-color-scheme.prefers-contrast.prefers-reduced-motion.prefers-reduced-transparency.resolution.scan.scripting.update.width.min-width.max-width.min-height.max-height`.split(`.`).sort().reverse(),lw=`active.any-link.blank.checked.current.default.defined.dir.disabled.drop.empty.enabled.first.first-child.first-of-type.fullscreen.future.focus.focus-visible.focus-within.has.host.host-context.hover.indeterminate.in-range.invalid.is.lang.last-child.last-of-type.left.link.local-link.not.nth-child.nth-col.nth-last-child.nth-last-col.nth-last-of-type.nth-of-type.only-child.only-of-type.optional.out-of-range.past.placeholder-shown.read-only.read-write.required.right.root.scope.target.target-within.user-invalid.valid.visited.where`.split(`.`).sort().reverse(),uw=[`after`,`backdrop`,`before`,`cue`,`cue-region`,`first-letter`,`first-line`,`grammar-error`,`marker`,`part`,`placeholder`,`selection`,`slotted`,`spelling-error`].sort().reverse(),dw=`accent-color.align-content.align-items.align-self.alignment-baseline.all.anchor-name.animation.animation-composition.animation-delay.animation-direction.animation-duration.animation-fill-mode.animation-iteration-count.animation-name.animation-play-state.animation-range.animation-range-end.animation-range-start.animation-timeline.animation-timing-function.appearance.aspect-ratio.backdrop-filter.backface-visibility.background.background-attachment.background-blend-mode.background-clip.background-color.background-image.background-origin.background-position.background-position-x.background-position-y.background-repeat.background-size.baseline-shift.block-size.border.border-block.border-block-color.border-block-end.border-block-end-color.border-block-end-style.border-block-end-width.border-block-start.border-block-start-color.border-block-start-style.border-block-start-width.border-block-style.border-block-width.border-bottom.border-bottom-color.border-bottom-left-radius.border-bottom-right-radius.border-bottom-style.border-bottom-width.border-collapse.border-color.border-end-end-radius.border-end-start-radius.border-image.border-image-outset.border-image-repeat.border-image-slice.border-image-source.border-image-width.border-inline.border-inline-color.border-inline-end.border-inline-end-color.border-inline-end-style.border-inline-end-width.border-inline-start.border-inline-start-color.border-inline-start-style.border-inline-start-width.border-inline-style.border-inline-width.border-left.border-left-color.border-left-style.border-left-width.border-radius.border-right.border-right-color.border-right-style.border-right-width.border-spacing.border-start-end-radius.border-start-start-radius.border-style.border-top.border-top-color.border-top-left-radius.border-top-right-radius.border-top-style.border-top-width.border-width.bottom.box-align.box-decoration-break.box-direction.box-flex.box-flex-group.box-lines.box-ordinal-group.box-orient.box-pack.box-shadow.box-sizing.break-after.break-before.break-inside.caption-side.caret-color.clear.clip.clip-path.clip-rule.color.color-interpolation.color-interpolation-filters.color-profile.color-rendering.color-scheme.column-count.column-fill.column-gap.column-rule.column-rule-color.column-rule-style.column-rule-width.column-span.column-width.columns.contain.contain-intrinsic-block-size.contain-intrinsic-height.contain-intrinsic-inline-size.contain-intrinsic-size.contain-intrinsic-width.container.container-name.container-type.content.content-visibility.counter-increment.counter-reset.counter-set.cue.cue-after.cue-before.cursor.cx.cy.direction.display.dominant-baseline.empty-cells.enable-background.field-sizing.fill.fill-opacity.fill-rule.filter.flex.flex-basis.flex-direction.flex-flow.flex-grow.flex-shrink.flex-wrap.float.flood-color.flood-opacity.flow.font.font-display.font-family.font-feature-settings.font-kerning.font-language-override.font-optical-sizing.font-palette.font-size.font-size-adjust.font-smooth.font-smoothing.font-stretch.font-style.font-synthesis.font-synthesis-position.font-synthesis-small-caps.font-synthesis-style.font-synthesis-weight.font-variant.font-variant-alternates.font-variant-caps.font-variant-east-asian.font-variant-emoji.font-variant-ligatures.font-variant-numeric.font-variant-position.font-variation-settings.font-weight.forced-color-adjust.gap.glyph-orientation-horizontal.glyph-orientation-vertical.grid.grid-area.grid-auto-columns.grid-auto-flow.grid-auto-rows.grid-column.grid-column-end.grid-column-start.grid-gap.grid-row.grid-row-end.grid-row-start.grid-template.grid-template-areas.grid-template-columns.grid-template-rows.hanging-punctuation.height.hyphenate-character.hyphenate-limit-chars.hyphens.icon.image-orientation.image-rendering.image-resolution.ime-mode.initial-letter.initial-letter-align.inline-size.inset.inset-area.inset-block.inset-block-end.inset-block-start.inset-inline.inset-inline-end.inset-inline-start.isolation.justify-content.justify-items.justify-self.kerning.left.letter-spacing.lighting-color.line-break.line-height.line-height-step.list-style.list-style-image.list-style-position.list-style-type.margin.margin-block.margin-block-end.margin-block-start.margin-bottom.margin-inline.margin-inline-end.margin-inline-start.margin-left.margin-right.margin-top.margin-trim.marker.marker-end.marker-mid.marker-start.marks.mask.mask-border.mask-border-mode.mask-border-outset.mask-border-repeat.mask-border-slice.mask-border-source.mask-border-width.mask-clip.mask-composite.mask-image.mask-mode.mask-origin.mask-position.mask-repeat.mask-size.mask-type.masonry-auto-flow.math-depth.math-shift.math-style.max-block-size.max-height.max-inline-size.max-width.min-block-size.min-height.min-inline-size.min-width.mix-blend-mode.nav-down.nav-index.nav-left.nav-right.nav-up.none.normal.object-fit.object-position.offset.offset-anchor.offset-distance.offset-path.offset-position.offset-rotate.opacity.order.orphans.outline.outline-color.outline-offset.outline-style.outline-width.overflow.overflow-anchor.overflow-block.overflow-clip-margin.overflow-inline.overflow-wrap.overflow-x.overflow-y.overlay.overscroll-behavior.overscroll-behavior-block.overscroll-behavior-inline.overscroll-behavior-x.overscroll-behavior-y.padding.padding-block.padding-block-end.padding-block-start.padding-bottom.padding-inline.padding-inline-end.padding-inline-start.padding-left.padding-right.padding-top.page.page-break-after.page-break-before.page-break-inside.paint-order.pause.pause-after.pause-before.perspective.perspective-origin.place-content.place-items.place-self.pointer-events.position.position-anchor.position-visibility.print-color-adjust.quotes.r.resize.rest.rest-after.rest-before.right.rotate.row-gap.ruby-align.ruby-position.scale.scroll-behavior.scroll-margin.scroll-margin-block.scroll-margin-block-end.scroll-margin-block-start.scroll-margin-bottom.scroll-margin-inline.scroll-margin-inline-end.scroll-margin-inline-start.scroll-margin-left.scroll-margin-right.scroll-margin-top.scroll-padding.scroll-padding-block.scroll-padding-block-end.scroll-padding-block-start.scroll-padding-bottom.scroll-padding-inline.scroll-padding-inline-end.scroll-padding-inline-start.scroll-padding-left.scroll-padding-right.scroll-padding-top.scroll-snap-align.scroll-snap-stop.scroll-snap-type.scroll-timeline.scroll-timeline-axis.scroll-timeline-name.scrollbar-color.scrollbar-gutter.scrollbar-width.shape-image-threshold.shape-margin.shape-outside.shape-rendering.speak.speak-as.src.stop-color.stop-opacity.stroke.stroke-dasharray.stroke-dashoffset.stroke-linecap.stroke-linejoin.stroke-miterlimit.stroke-opacity.stroke-width.tab-size.table-layout.text-align.text-align-all.text-align-last.text-anchor.text-combine-upright.text-decoration.text-decoration-color.text-decoration-line.text-decoration-skip.text-decoration-skip-ink.text-decoration-style.text-decoration-thickness.text-emphasis.text-emphasis-color.text-emphasis-position.text-emphasis-style.text-indent.text-justify.text-orientation.text-overflow.text-rendering.text-shadow.text-size-adjust.text-transform.text-underline-offset.text-underline-position.text-wrap.text-wrap-mode.text-wrap-style.timeline-scope.top.touch-action.transform.transform-box.transform-origin.transform-style.transition.transition-behavior.transition-delay.transition-duration.transition-property.transition-timing-function.translate.unicode-bidi.user-modify.user-select.vector-effect.vertical-align.view-timeline.view-timeline-axis.view-timeline-inset.view-timeline-name.view-transition-name.visibility.voice-balance.voice-duration.voice-family.voice-pitch.voice-range.voice-rate.voice-stress.voice-volume.white-space.white-space-collapse.widows.width.will-change.word-break.word-spacing.word-wrap.writing-mode.x.y.z-index.zoom`.split(`.`).sort().reverse();function fw(e){let t=e.regex,n=iw(e),r={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},i=/@-?\w[\w]*(-\w+)*/,a=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE];return{name:`CSS`,case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:`from to`},classNameAliases:{keyframePosition:`selector-tag`},contains:[n.BLOCK_COMMENT,r,n.CSS_NUMBER_MODE,{className:`selector-id`,begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:`selector-class`,begin:`\\.[a-zA-Z-][a-zA-Z0-9_-]*`,relevance:0},n.ATTRIBUTE_SELECTOR_MODE,{className:`selector-pseudo`,variants:[{begin:`:(`+lw.join(`|`)+`)`},{begin:`:(:)?(`+uw.join(`|`)+`)`}]},n.CSS_VARIABLE,{className:`attribute`,begin:`\\b(`+dw.join(`|`)+`)\\b`},{begin:/:/,end:/[;}{]/,contains:[n.BLOCK_COMMENT,n.HEXCOLOR,n.IMPORTANT,n.CSS_NUMBER_MODE,...a,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:`url data-uri`},contains:[...a,{className:`string`,begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},n.FUNCTION_DISPATCH]},{begin:t.lookahead(/@/),end:`[{;]`,relevance:0,illegal:/:/,contains:[{className:`keyword`,begin:i},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:`and or not only`,attribute:cw.join(` `)},contains:[{begin:/[a-z-]+(?=:)/,className:`attribute`},...a,n.CSS_NUMBER_MODE]}]},{className:`selector-tag`,begin:`\\b(`+sw.join(`|`)+`)\\b`}]}}function pw(e){let t=e.regex;return{name:`Diff`,aliases:[`patch`],contains:[{className:`meta`,relevance:10,match:t.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/)},{className:`comment`,variants:[{begin:t.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/),end:/$/},{match:/^\*{15}$/}]},{className:`addition`,begin:/^\+/,end:/$/},{className:`deletion`,begin:/^-/,end:/$/},{className:`addition`,begin:/^!/,end:/$/}]}}var mw=`[A-Za-z$_][0-9A-Za-z$_]*`,hw=`as.in.of.if.for.while.finally.var.new.function.do.return.void.else.break.catch.instanceof.with.throw.case.default.try.switch.continue.typeof.delete.let.yield.const.class.debugger.async.await.static.import.from.export.extends.using`.split(`.`),gw=[`true`,`false`,`null`,`undefined`,`NaN`,`Infinity`],_w=`Object.Function.Boolean.Symbol.Math.Date.Number.BigInt.String.RegExp.Array.Float32Array.Float64Array.Int8Array.Uint8Array.Uint8ClampedArray.Int16Array.Int32Array.Uint16Array.Uint32Array.BigInt64Array.BigUint64Array.Set.Map.WeakSet.WeakMap.ArrayBuffer.SharedArrayBuffer.Atomics.DataView.JSON.Promise.Generator.GeneratorFunction.AsyncFunction.Reflect.Proxy.Intl.WebAssembly`.split(`.`),vw=[`Error`,`EvalError`,`InternalError`,`RangeError`,`ReferenceError`,`SyntaxError`,`TypeError`,`URIError`],yw=[`setInterval`,`setTimeout`,`clearInterval`,`clearTimeout`,`require`,`exports`,`eval`,`isFinite`,`isNaN`,`parseFloat`,`parseInt`,`decodeURI`,`decodeURIComponent`,`encodeURI`,`encodeURIComponent`,`escape`,`unescape`],bw=[`arguments`,`this`,`super`,`console`,`window`,`document`,`localStorage`,`sessionStorage`,`module`,`global`],xw=[].concat(yw,_w,vw);function Sw(e){let t=e.regex,n=(e,{after:t})=>{let n=`</`+e[0].slice(1);return e.input.indexOf(n,t)!==-1},r=mw,i={begin:`<>`,end:`</>`},a=/<[A-Za-z0-9\\._:-]+\s*\/>/,o={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(e,t)=>{let r=e[0].length+e.index,i=e.input[r];if(i===`<`||i===`,`){t.ignoreMatch();return}i===`>`&&(n(e,{after:r})||t.ignoreMatch());let a,o=e.input.substring(r);if(a=o.match(/^\s*=/)){t.ignoreMatch();return}if((a=o.match(/^\s+extends\s+/))&&a.index===0){t.ignoreMatch();return}}},s={$pattern:mw,keyword:hw,literal:gw,built_in:xw,"variable.language":bw},c=`[0-9](_?[0-9])*`,l=`\\.(${c})`,u=`0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*`,d={className:`number`,variants:[{begin:`(\\b(${u})((${l})|\\.)?|(${l}))[eE][+-]?(${c})\\b`},{begin:`\\b(${u})\\b((${l})\\b|\\.)?|(${l})\\b`},{begin:`\\b(0|[1-9](_?[0-9])*)n\\b`},{begin:`\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b`},{begin:`\\b0[bB][0-1](_?[0-1])*n?\\b`},{begin:`\\b0[oO][0-7](_?[0-7])*n?\\b`},{begin:`\\b0[0-7]+n?\\b`}],relevance:0},f={className:`subst`,begin:`\\$\\{`,end:`\\}`,keywords:s,contains:[]},p={begin:".?html`",end:``,starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:`xml`}},m={begin:".?css`",end:``,starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:`css`}},h={begin:".?gql`",end:``,starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:`graphql`}},g={className:`string`,begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,f]},_={className:`comment`,variants:[e.COMMENT(/\/\*\*(?!\/)/,`\\*/`,{relevance:0,contains:[{begin:`(?=@[A-Za-z]+)`,relevance:0,contains:[{className:`doctag`,begin:`@[A-Za-z]+`},{className:`type`,begin:`\\{`,end:`\\}`,excludeEnd:!0,excludeBegin:!0,relevance:0},{className:`variable`,begin:r+`(?=\\s*(-)|$)`,endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},v=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,m,h,g,{match:/\$\d+/},d];f.contains=v.concat({begin:/\{/,end:/\}/,keywords:s,contains:[`self`].concat(v)});let y=[].concat(_,f.contains),b=y.concat([{begin:/(\s*)\(/,end:/\)/,keywords:s,contains:[`self`].concat(y)}]),x={className:`params`,begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,contains:b},S={variants:[{match:[/class/,/\s+/,r,/\s+/,/extends/,/\s+/,t.concat(r,`(`,t.concat(/\./,r),`)*`)],scope:{1:`keyword`,3:`title.class`,5:`keyword`,7:`title.class.inherited`}},{match:[/class/,/\s+/,r],scope:{1:`keyword`,3:`title.class`}}]},C={relevance:0,match:t.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:`title.class`,keywords:{_:[..._w,...vw]}},w={label:`use_strict`,className:`meta`,relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},T={variants:[{match:[/function/,/\s+/,r,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:`keyword`,3:`title.function`},label:`func.def`,contains:[x],illegal:/%/},E={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:`variable.constant`};function D(e){return t.concat(`(?!`,e.join(`|`),`)`)}let O={match:t.concat(/\b/,D([...yw,`super`,`import`].map(e=>`${e}\\s*\\(`)),r,t.lookahead(/\s*\(/)),className:`title.function`,relevance:0},ee={begin:t.concat(/\./,t.lookahead(t.concat(r,/(?![0-9A-Za-z$_(])/))),end:r,excludeBegin:!0,keywords:`prototype`,className:`property`,relevance:0},k={match:[/get|set/,/\s+/,r,/(?=\()/],className:{1:`keyword`,3:`title.function`},contains:[{begin:/\(\)/},x]},te=`(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|`+e.UNDERSCORE_IDENT_RE+`)\\s*=>`,A={match:[/const|var|let/,/\s+/,r,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(te)],keywords:`async`,className:{1:`keyword`,3:`title.function`},contains:[x]};return{name:`JavaScript`,aliases:[`js`,`jsx`,`mjs`,`cjs`],keywords:s,exports:{PARAMS_CONTAINS:b,CLASS_REFERENCE:C},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:`shebang`,binary:`node`,relevance:5}),w,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,m,h,g,_,{match:/\$\d+/},d,C,{scope:`attr`,match:r+t.lookahead(`:`),relevance:0},A,{begin:`(`+e.RE_STARTERS_RE+`|\\b(case|return|throw)\\b)\\s*`,keywords:`return throw case`,relevance:0,contains:[_,e.REGEXP_MODE,{className:`function`,begin:te,returnBegin:!0,end:`\\s*=>`,contains:[{className:`params`,variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,contains:b}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:i.begin,end:i.end},{match:a},{begin:o.begin,"on:begin":o.isTrulyOpeningTag,end:o.end}],subLanguage:`xml`,contains:[{begin:o.begin,end:o.end,skip:!0,contains:[`self`]}]}]},T,{beginKeywords:`while if switch catch for`},{begin:`\\b(?!function)`+e.UNDERSCORE_IDENT_RE+`\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{`,returnBegin:!0,label:`func.def`,contains:[x,e.inherit(e.TITLE_MODE,{begin:r,className:`title.function`})]},{match:/\.\.\./,relevance:0},ee,{match:`\\$`+r,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:`title.function`},contains:[x]},O,E,S,k,{match:/\$[(.]/}]}}function Cw(e){let t={className:`attr`,begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},n={match:/[{}[\],:]/,className:`punctuation`,relevance:0},r=[`true`,`false`,`null`],i={scope:`literal`,beginKeywords:r.join(` `)};return{name:`JSON`,aliases:[`jsonc`],keywords:{literal:r},contains:[t,n,e.QUOTE_STRING_MODE,i,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:`\\S`}}function ww(e){let t=e.regex,n={begin:/<\/?[A-Za-z_]/,end:`>`,subLanguage:`xml`,relevance:0},r={begin:`^[-\\*]{3,}`,end:`$`},i={className:`code`,variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:`(~{3,})[^~](.|\\n)*?\\1~*[ ]*`},{begin:"```",end:"```+[ ]*$"},{begin:`~~~`,end:`~~~+[ ]*$`},{begin:"`.+?`"},{begin:`(?=^( {4}|\\t))`,contains:[{begin:`^( {4}|\\t)`,end:`(\\n)$`}],relevance:0}]},a={className:`bullet`,begin:`^[ ]*([*+-]|(\\d+\\.))(?=\\s+)`,end:`\\s+`,excludeEnd:!0},o={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:`symbol`,begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:`link`,begin:/:\s*/,end:/$/,excludeBegin:!0}]},s={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:t.concat(/\[.+?\]\(/,/[A-Za-z][A-Za-z0-9+.-]*/,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/},{className:`string`,relevance:0,begin:`\\[`,end:`\\]`,excludeBegin:!0,returnEnd:!0},{className:`link`,relevance:0,begin:`\\]\\(`,end:`\\)`,excludeBegin:!0,excludeEnd:!0},{className:`symbol`,relevance:0,begin:`\\]\\[`,end:`\\]`,excludeBegin:!0,excludeEnd:!0}]},c={className:`strong`,contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},l={className:`emphasis`,contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},u=e.inherit(c,{contains:[]}),d=e.inherit(l,{contains:[]});c.contains.push(d),l.contains.push(u);let f=[n,s];return[c,l,u,d].forEach(e=>{e.contains=e.contains.concat(f)}),f=f.concat(c,l),{name:`Markdown`,aliases:[`md`,`mkdown`,`mkd`],contains:[{className:`section`,variants:[{begin:`^#{1,6}`,end:`$`,contains:f},{begin:`(?=^.+?\\n[=-]{2,}$)`,contains:[{begin:`^[=-]*$`},{begin:`^`,end:`\\n`,contains:f}]}]},n,a,c,l,{className:`quote`,begin:`^>\\s+`,contains:f,end:`$`},i,r,s,o,{scope:`literal`,match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}function Tw(e){let t=e.regex,n=/[\p{XID_Start}_]\p{XID_Continue}*/u,r=`and.as.assert.async.await.break.case.class.continue.def.del.elif.else.except.finally.for.from.global.if.import.in.is.lambda.match.nonlocal|10.not.or.pass.raise.return.try.while.with.yield`.split(`.`),i={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:r,built_in:`__import__.abs.all.any.ascii.bin.bool.breakpoint.bytearray.bytes.callable.chr.classmethod.compile.complex.delattr.dict.dir.divmod.enumerate.eval.exec.filter.float.format.frozenset.getattr.globals.hasattr.hash.help.hex.id.input.int.isinstance.issubclass.iter.len.list.locals.map.max.memoryview.min.next.object.oct.open.ord.pow.print.property.range.repr.reversed.round.set.setattr.slice.sorted.staticmethod.str.sum.super.tuple.type.vars.zip`.split(`.`),literal:[`__debug__`,`Ellipsis`,`False`,`None`,`NotImplemented`,`True`],type:[`Any`,`Callable`,`Coroutine`,`Dict`,`List`,`Literal`,`Generic`,`Optional`,`Sequence`,`Set`,`Tuple`,`Type`,`Union`]},a={className:`meta`,begin:/^(>>>|\.\.\.) /},o={className:`subst`,begin:/\{/,end:/\}/,keywords:i,illegal:/#/},s={begin:/\{\{/,relevance:0},c={className:`string`,contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,a],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,a],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,a,s,o]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,a,s,o]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,s,o]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,s,o]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},l=`[0-9](_?[0-9])*`,u=`(\\b(${l}))?\\.(${l})|\\b(${l})\\.`,d=`\\b|${r.join(`|`)}`,f={className:`number`,relevance:0,variants:[{begin:`(\\b(${l})|(${u}))[eE][+-]?(${l})[jJ]?(?=${d})`},{begin:`(${u})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${d})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${d})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${d})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${d})`},{begin:`\\b(${l})[jJ](?=${d})`}]},p={className:`comment`,begin:t.lookahead(/# type:/),end:/$/,keywords:i,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},m={className:`params`,variants:[{className:``,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:[`self`,a,f,c,e.HASH_COMMENT_MODE]}]};return o.contains=[c,f,a],{name:`Python`,aliases:[`py`,`gyp`,`ipython`],unicodeRegex:!0,keywords:i,illegal:/(<\/|\?)|=>/,contains:[a,f,{scope:`variable.language`,match:/\bself\b/},{beginKeywords:`if`,relevance:0},{match:/\bor\b/,scope:`keyword`},c,p,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,n],scope:{1:`keyword`,3:`title.function`},contains:[m]},{variants:[{match:[/\bclass/,/\s+/,n,/\s*/,/\(\s*/,n,/\s*\)/]},{match:[/\bclass/,/\s+/,n]}],scope:{1:`keyword`,3:`title.class`,6:`title.class.inherited`}},{className:`meta`,begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[f,m,c]}]}}function Ew(e){return{name:`Shell Session`,aliases:[`console`,`shellsession`],contains:[{className:`meta.prompt`,begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/,subLanguage:`bash`}}]}}function Dw(e){let t=e.regex,n=e.COMMENT(`--`,`$`),r={scope:`string`,variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},i={begin:/"/,end:/"/,contains:[{match:/""/}]},a=[`true`,`false`,`unknown`],o=[`double precision`,`large object`,`with timezone`,`without timezone`],s=`bigint.binary.blob.boolean.char.character.clob.date.dec.decfloat.decimal.float.int.integer.interval.nchar.nclob.national.numeric.real.row.smallint.time.timestamp.varchar.varying.varbinary`.split(`.`),c=[`add`,`asc`,`collation`,`desc`,`final`,`first`,`last`,`view`],l=`abs.acos.all.allocate.alter.and.any.are.array.array_agg.array_max_cardinality.as.asensitive.asin.asymmetric.at.atan.atomic.authorization.avg.begin.begin_frame.begin_partition.between.bigint.binary.blob.boolean.both.by.call.called.cardinality.cascaded.case.cast.ceil.ceiling.char.char_length.character.character_length.check.classifier.clob.close.coalesce.collate.collect.column.commit.condition.connect.constraint.contains.convert.copy.corr.corresponding.cos.cosh.count.covar_pop.covar_samp.create.cross.cube.cume_dist.current.current_catalog.current_date.current_default_transform_group.current_path.current_role.current_row.current_schema.current_time.current_timestamp.current_path.current_role.current_transform_group_for_type.current_user.cursor.cycle.date.day.deallocate.dec.decimal.decfloat.declare.default.define.delete.dense_rank.deref.describe.deterministic.disconnect.distinct.double.drop.dynamic.each.element.else.empty.end.end_frame.end_partition.end-exec.equals.escape.every.except.exec.execute.exists.exp.external.extract.false.fetch.filter.first_value.float.floor.for.foreign.frame_row.free.from.full.function.fusion.get.global.grant.group.grouping.groups.having.hold.hour.identity.in.indicator.initial.inner.inout.insensitive.insert.int.integer.intersect.intersection.interval.into.is.join.json_array.json_arrayagg.json_exists.json_object.json_objectagg.json_query.json_table.json_table_primitive.json_value.lag.language.large.last_value.lateral.lead.leading.left.like.like_regex.listagg.ln.local.localtime.localtimestamp.log.log10.lower.match.match_number.match_recognize.matches.max.member.merge.method.min.minute.mod.modifies.module.month.multiset.national.natural.nchar.nclob.new.no.none.normalize.not.nth_value.ntile.null.nullif.numeric.octet_length.occurrences_regex.of.offset.old.omit.on.one.only.open.or.order.out.outer.over.overlaps.overlay.parameter.partition.pattern.per.percent.percent_rank.percentile_cont.percentile_disc.period.portion.position.position_regex.power.precedes.precision.prepare.primary.procedure.ptf.range.rank.reads.real.recursive.ref.references.referencing.regr_avgx.regr_avgy.regr_count.regr_intercept.regr_r2.regr_slope.regr_sxx.regr_sxy.regr_syy.release.result.return.returns.revoke.right.rollback.rollup.row.row_number.rows.running.savepoint.scope.scroll.search.second.seek.select.sensitive.session_user.set.show.similar.sin.sinh.skip.smallint.some.specific.specifictype.sql.sqlexception.sqlstate.sqlwarning.sqrt.start.static.stddev_pop.stddev_samp.submultiset.subset.substring.substring_regex.succeeds.sum.symmetric.system.system_time.system_user.table.tablesample.tan.tanh.then.time.timestamp.timezone_hour.timezone_minute.to.trailing.translate.translate_regex.translation.treat.trigger.trim.trim_array.true.truncate.uescape.union.unique.unknown.unnest.update.upper.user.using.value.values.value_of.var_pop.var_samp.varbinary.varchar.varying.versioning.when.whenever.where.width_bucket.window.with.within.without.year`.split(`.`),u=`abs.acos.array_agg.asin.atan.avg.cast.ceil.ceiling.coalesce.corr.cos.cosh.count.covar_pop.covar_samp.cume_dist.dense_rank.deref.element.exp.extract.first_value.floor.json_array.json_arrayagg.json_exists.json_object.json_objectagg.json_query.json_table.json_table_primitive.json_value.lag.last_value.lead.listagg.ln.log.log10.lower.max.min.mod.nth_value.ntile.nullif.percent_rank.percentile_cont.percentile_disc.position.position_regex.power.rank.regr_avgx.regr_avgy.regr_count.regr_intercept.regr_r2.regr_slope.regr_sxx.regr_sxy.regr_syy.row_number.sin.sinh.sqrt.stddev_pop.stddev_samp.substring.substring_regex.sum.tan.tanh.translate.translate_regex.treat.trim.trim_array.unnest.upper.value_of.var_pop.var_samp.width_bucket`.split(`.`),d=[`current_catalog`,`current_date`,`current_default_transform_group`,`current_path`,`current_role`,`current_schema`,`current_transform_group_for_type`,`current_user`,`session_user`,`system_time`,`system_user`,`current_time`,`localtime`,`current_timestamp`,`localtimestamp`],f=[`create table`,`insert into`,`primary key`,`foreign key`,`not null`,`alter table`,`add constraint`,`grouping sets`,`on overflow`,`character set`,`respect nulls`,`ignore nulls`,`nulls first`,`nulls last`,`depth first`,`breadth first`],p=u,m=[...l,...c].filter(e=>!u.includes(e)),h={scope:`variable`,match:/@[a-z0-9][a-z0-9_]*/},g={scope:`operator`,match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},_={match:t.concat(/\b/,t.either(...p),/\s*\(/),relevance:0,keywords:{built_in:p}};function v(e){return t.concat(/\b/,t.either(...e.map(e=>e.replace(/\s+/,`\\s+`))),/\b/)}let y={scope:`keyword`,match:v(f),relevance:0};function b(e,{exceptions:t,when:n}={}){let r=n;return t||=[],e.map(e=>e.match(/\|\d+$/)||t.includes(e)?e:r(e)?`${e}|0`:e)}return{name:`SQL`,case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:b(m,{when:e=>e.length<3}),literal:a,type:s,built_in:d},contains:[{scope:`type`,match:v(o)},y,_,h,r,i,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,n,g]}}var Ow=`[A-Za-z$_][0-9A-Za-z$_]*`,kw=`as.in.of.if.for.while.finally.var.new.function.do.return.void.else.break.catch.instanceof.with.throw.case.default.try.switch.continue.typeof.delete.let.yield.const.class.debugger.async.await.static.import.from.export.extends.using`.split(`.`),Aw=[`true`,`false`,`null`,`undefined`,`NaN`,`Infinity`],jw=`Object.Function.Boolean.Symbol.Math.Date.Number.BigInt.String.RegExp.Array.Float32Array.Float64Array.Int8Array.Uint8Array.Uint8ClampedArray.Int16Array.Int32Array.Uint16Array.Uint32Array.BigInt64Array.BigUint64Array.Set.Map.WeakSet.WeakMap.ArrayBuffer.SharedArrayBuffer.Atomics.DataView.JSON.Promise.Generator.GeneratorFunction.AsyncFunction.Reflect.Proxy.Intl.WebAssembly`.split(`.`),Mw=[`Error`,`EvalError`,`InternalError`,`RangeError`,`ReferenceError`,`SyntaxError`,`TypeError`,`URIError`],Nw=[`setInterval`,`setTimeout`,`clearInterval`,`clearTimeout`,`require`,`exports`,`eval`,`isFinite`,`isNaN`,`parseFloat`,`parseInt`,`decodeURI`,`decodeURIComponent`,`encodeURI`,`encodeURIComponent`,`escape`,`unescape`],Pw=[`arguments`,`this`,`super`,`console`,`window`,`document`,`localStorage`,`sessionStorage`,`module`,`global`],Fw=[].concat(Nw,jw,Mw);function Iw(e){let t=e.regex,n=(e,{after:t})=>{let n=`</`+e[0].slice(1);return e.input.indexOf(n,t)!==-1},r=Ow,i={begin:`<>`,end:`</>`},a=/<[A-Za-z0-9\\._:-]+\s*\/>/,o={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(e,t)=>{let r=e[0].length+e.index,i=e.input[r];if(i===`<`||i===`,`){t.ignoreMatch();return}i===`>`&&(n(e,{after:r})||t.ignoreMatch());let a,o=e.input.substring(r);if(a=o.match(/^\s*=/)){t.ignoreMatch();return}if((a=o.match(/^\s+extends\s+/))&&a.index===0){t.ignoreMatch();return}}},s={$pattern:Ow,keyword:kw,literal:Aw,built_in:Fw,"variable.language":Pw},c=`[0-9](_?[0-9])*`,l=`\\.(${c})`,u=`0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*`,d={className:`number`,variants:[{begin:`(\\b(${u})((${l})|\\.)?|(${l}))[eE][+-]?(${c})\\b`},{begin:`\\b(${u})\\b((${l})\\b|\\.)?|(${l})\\b`},{begin:`\\b(0|[1-9](_?[0-9])*)n\\b`},{begin:`\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b`},{begin:`\\b0[bB][0-1](_?[0-1])*n?\\b`},{begin:`\\b0[oO][0-7](_?[0-7])*n?\\b`},{begin:`\\b0[0-7]+n?\\b`}],relevance:0},f={className:`subst`,begin:`\\$\\{`,end:`\\}`,keywords:s,contains:[]},p={begin:".?html`",end:``,starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:`xml`}},m={begin:".?css`",end:``,starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:`css`}},h={begin:".?gql`",end:``,starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:`graphql`}},g={className:`string`,begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,f]},_={className:`comment`,variants:[e.COMMENT(/\/\*\*(?!\/)/,`\\*/`,{relevance:0,contains:[{begin:`(?=@[A-Za-z]+)`,relevance:0,contains:[{className:`doctag`,begin:`@[A-Za-z]+`},{className:`type`,begin:`\\{`,end:`\\}`,excludeEnd:!0,excludeBegin:!0,relevance:0},{className:`variable`,begin:r+`(?=\\s*(-)|$)`,endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},v=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,m,h,g,{match:/\$\d+/},d];f.contains=v.concat({begin:/\{/,end:/\}/,keywords:s,contains:[`self`].concat(v)});let y=[].concat(_,f.contains),b=y.concat([{begin:/(\s*)\(/,end:/\)/,keywords:s,contains:[`self`].concat(y)}]),x={className:`params`,begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,contains:b},S={variants:[{match:[/class/,/\s+/,r,/\s+/,/extends/,/\s+/,t.concat(r,`(`,t.concat(/\./,r),`)*`)],scope:{1:`keyword`,3:`title.class`,5:`keyword`,7:`title.class.inherited`}},{match:[/class/,/\s+/,r],scope:{1:`keyword`,3:`title.class`}}]},C={relevance:0,match:t.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:`title.class`,keywords:{_:[...jw,...Mw]}},w={label:`use_strict`,className:`meta`,relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},T={variants:[{match:[/function/,/\s+/,r,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:`keyword`,3:`title.function`},label:`func.def`,contains:[x],illegal:/%/},E={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:`variable.constant`};function D(e){return t.concat(`(?!`,e.join(`|`),`)`)}let O={match:t.concat(/\b/,D([...Nw,`super`,`import`].map(e=>`${e}\\s*\\(`)),r,t.lookahead(/\s*\(/)),className:`title.function`,relevance:0},ee={begin:t.concat(/\./,t.lookahead(t.concat(r,/(?![0-9A-Za-z$_(])/))),end:r,excludeBegin:!0,keywords:`prototype`,className:`property`,relevance:0},k={match:[/get|set/,/\s+/,r,/(?=\()/],className:{1:`keyword`,3:`title.function`},contains:[{begin:/\(\)/},x]},te=`(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|`+e.UNDERSCORE_IDENT_RE+`)\\s*=>`,A={match:[/const|var|let/,/\s+/,r,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(te)],keywords:`async`,className:{1:`keyword`,3:`title.function`},contains:[x]};return{name:`JavaScript`,aliases:[`js`,`jsx`,`mjs`,`cjs`],keywords:s,exports:{PARAMS_CONTAINS:b,CLASS_REFERENCE:C},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:`shebang`,binary:`node`,relevance:5}),w,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,m,h,g,_,{match:/\$\d+/},d,C,{scope:`attr`,match:r+t.lookahead(`:`),relevance:0},A,{begin:`(`+e.RE_STARTERS_RE+`|\\b(case|return|throw)\\b)\\s*`,keywords:`return throw case`,relevance:0,contains:[_,e.REGEXP_MODE,{className:`function`,begin:te,returnBegin:!0,end:`\\s*=>`,contains:[{className:`params`,variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,contains:b}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:i.begin,end:i.end},{match:a},{begin:o.begin,"on:begin":o.isTrulyOpeningTag,end:o.end}],subLanguage:`xml`,contains:[{begin:o.begin,end:o.end,skip:!0,contains:[`self`]}]}]},T,{beginKeywords:`while if switch catch for`},{begin:`\\b(?!function)`+e.UNDERSCORE_IDENT_RE+`\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{`,returnBegin:!0,label:`func.def`,contains:[x,e.inherit(e.TITLE_MODE,{begin:r,className:`title.function`})]},{match:/\.\.\./,relevance:0},ee,{match:`\\$`+r,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:`title.function`},contains:[x]},O,E,S,k,{match:/\$[(.]/}]}}function Lw(e){let t=e.regex,n=Iw(e),r=Ow,i=[`any`,`void`,`number`,`boolean`,`string`,`object`,`never`,`symbol`,`bigint`,`unknown`],a={begin:[/namespace/,/\s+/,e.IDENT_RE],beginScope:{1:`keyword`,3:`title.class`}},o={beginKeywords:`interface`,end:/\{/,excludeEnd:!0,keywords:{keyword:`interface extends`,built_in:i},contains:[n.exports.CLASS_REFERENCE]},s={className:`meta`,relevance:10,begin:/^\s*['"]use strict['"]/},c={$pattern:Ow,keyword:kw.concat([`type`,`interface`,`public`,`private`,`protected`,`implements`,`declare`,`abstract`,`readonly`,`enum`,`override`,`satisfies`]),literal:Aw,built_in:Fw.concat(i),"variable.language":Pw},l={className:`meta`,begin:`@`+r},u=(e,t,n)=>{let r=e.contains.findIndex(e=>e.label===t);if(r===-1)throw Error(`can not find mode to replace`);e.contains.splice(r,1,n)};Object.assign(n.keywords,c),n.exports.PARAMS_CONTAINS.push(l);let d=n.contains.find(e=>e.scope===`attr`),f=Object.assign({},d,{match:t.concat(r,t.lookahead(/\s*\?:/))});n.exports.PARAMS_CONTAINS.push([n.exports.CLASS_REFERENCE,d,f]),n.contains=n.contains.concat([l,a,o,f]),u(n,`shebang`,e.SHEBANG()),u(n,`use_strict`,s);let p=n.contains.find(e=>e.label===`func.def`);return p.relevance=0,Object.assign(n,{name:`TypeScript`,aliases:[`ts`,`tsx`,`mts`,`cts`]}),n}function Rw(e){let t=e.regex,n=t.concat(/[\p{L}_]/u,t.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),r=/[\p{L}0-9._:-]+/u,i={className:`symbol`,begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},a={begin:/\s/,contains:[{className:`keyword`,begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},o=e.inherit(a,{begin:/\(/,end:/\)/}),s=e.inherit(e.APOS_STRING_MODE,{className:`string`}),c=e.inherit(e.QUOTE_STRING_MODE,{className:`string`}),l={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:`attr`,begin:r,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:`string`,endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[i]},{begin:/'/,end:/'/,contains:[i]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:`HTML, XML`,aliases:[`html`,`xhtml`,`rss`,`atom`,`xjb`,`xsd`,`xsl`,`plist`,`wsf`,`svg`],case_insensitive:!0,unicodeRegex:!0,contains:[{className:`meta`,begin:/<![a-z]/,end:/>/,relevance:10,contains:[a,c,s,o,{begin:/\[/,end:/\]/,contains:[{className:`meta`,begin:/<![a-z]/,end:/>/,contains:[a,o,c,s]}]}]},e.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},i,{className:`meta`,end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[c]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:`tag`,begin:/<style(?=\s|>)/,end:/>/,keywords:{name:`style`},contains:[l],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:[`css`,`xml`]}},{className:`tag`,begin:/<script(?=\s|>)/,end:/>/,keywords:{name:`script`},contains:[l],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:[`javascript`,`handlebars`,`xml`]}},{className:`tag`,begin:/<>|<\/>/},{className:`tag`,begin:t.concat(/</,t.lookahead(t.concat(n,t.either(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:`name`,begin:n,relevance:0,starts:l}]},{className:`tag`,begin:t.concat(/<\//,t.lookahead(t.concat(n,/>/))),contains:[{className:`name`,begin:n,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}function zw(e){let t=`true false yes no null`,n=`[\\w#;/?:@&=+$,.~*'()[\\]]+`,r={className:`attr`,variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},i={className:`template-variable`,variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},a={className:`string`,relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:`char.escape`,relevance:0}]},o={className:`string`,relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,i]},s=e.inherit(o,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),c={className:`number`,begin:`\\b[0-9]{4}(-[0-9][0-9]){0,2}([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?(\\.[0-9]*)?([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?\\b`},l={end:`,`,endsWithParent:!0,excludeEnd:!0,keywords:t,relevance:0},u={begin:/\{/,end:/\}/,contains:[l],illegal:`\\n`,relevance:0},d={begin:`\\[`,end:`\\]`,contains:[l],illegal:`\\n`,relevance:0},f=[r,{className:`meta`,begin:`^---\\s*$`,relevance:10},{className:`string`,begin:`[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*`},{begin:`<%[%=-]?`,end:`[%-]?%>`,subLanguage:`ruby`,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:`type`,begin:`!\\w+!`+n},{className:`type`,begin:`!<`+n+`>`},{className:`type`,begin:`!`+n},{className:`type`,begin:`!!`+n},{className:`meta`,begin:`&`+e.UNDERSCORE_IDENT_RE+`$`},{className:`meta`,begin:`\\*`+e.UNDERSCORE_IDENT_RE+`$`},{className:`bullet`,begin:`-(?=[ ]|$)`,relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:t,keywords:{literal:t}},c,{className:`number`,begin:e.C_NUMBER_RE+`\\b`,relevance:0},u,d,a,o],p=[...f];return p.pop(),p.push(s),l.contains=p,{name:`YAML`,case_insensitive:!0,aliases:[`yml`],contains:f}}var Bw=new Set([`text`,`txt`,`plain`,`plaintext`,`none`,`output`]),Vw=[`typescript`,`javascript`,`json`,`bash`,`shell`,`python`,`css`,`xml`,`markdown`,`yaml`,`sql`,`diff`],Hw=4,Uw=[{name:`typescript`,language:Lw,aliases:[`ts`,`tsx`]},{name:`javascript`,language:Sw,aliases:[`js`,`jsx`,`mjs`,`cjs`]},{name:`json`,language:Cw,aliases:[`jsonc`]},{name:`bash`,language:rw,aliases:[`sh`,`zsh`]},{name:`shell`,language:Ew,aliases:[`console`,`terminal`]},{name:`python`,language:Tw,aliases:[`py`]},{name:`css`,language:fw},{name:`xml`,language:Rw,aliases:[`html`,`svg`]},{name:`markdown`,language:ww,aliases:[`md`,`mdx`]},{name:`yaml`,language:zw,aliases:[`yml`]},{name:`sql`,language:Dw},{name:`diff`,language:pw,aliases:[`patch`]}];function Ww(e){return e.replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`).replace(/"/g,`"`).replace(/'/g,`'`)}function Gw(e){return e.trim().toLowerCase()}var Kw=new class{constructor(){this.highlight=(e,t)=>{let n=Gw(t);if(!e||Bw.has(n))return this.createPlainTextResult(e,n||`text`);if(this.engine.getLanguage(n)){let t=this.engine.highlight(e,{language:n,ignoreIllegals:!0});return{html:t.value,language:t.language??n,highlighted:!0}}let r=this.engine.highlightAuto(e,Vw);return r.language&&r.relevance>=Hw?{html:r.value,language:r.language,highlighted:!0}:this.createPlainTextResult(e,n||`text`)},this.createPlainTextResult=(e,t)=>({html:Ww(e),language:t,highlighted:!1}),this.engine=nw.newInstance(),Uw.forEach(e=>{this.engine.registerLanguage(e.name,e.language),e.aliases&&this.engine.registerAliases(e.aliases,{languageName:e.name})})}},qw=/language-([a-z0-9-]+)/i;function Jw(e){return typeof e==`string`||typeof e==`number`?String(e):Array.isArray(e)?e.map(Jw).join(``):``}function Yw(e){let t=Jw(e);return t.endsWith(`
|
|
46
46
|
`)?t.slice(0,-1):t}function Xw(e){return(e?qw.exec(e):null)?.[1]?.toLowerCase()||`text`}function Zw({className:e,children:t,texts:n}){let r=(0,P.useMemo)(()=>Xw(e),[e]),i=(0,P.useMemo)(()=>Yw(t),[t]),a=(0,P.useMemo)(()=>Kw.highlight(i,r),[i,r]),o=(0,P.useMemo)(()=>{let t=`language-${a.language}`;return F(`hljs`,e,e?.includes(`language-`)?void 0:t)},[e,a.language]),{copied:s,copy:c}=tw({text:i});return(0,N.jsxs)(`div`,{className:`chat-codeblock`,children:[(0,N.jsxs)(`div`,{className:`chat-codeblock-toolbar`,children:[(0,N.jsx)(`span`,{className:`chat-codeblock-language`,children:r}),(0,N.jsxs)(`button`,{type:`button`,className:`chat-codeblock-copy`,onClick:()=>void c(),"aria-label":s?n.copiedCodeLabel:n.copyCodeLabel,children:[s?(0,N.jsx)(Be,{className:`h-3.5 w-3.5`}):(0,N.jsx)(Rt,{className:`h-3.5 w-3.5`}),(0,N.jsx)(`span`,{children:s?n.copiedCodeLabel:n.copyCodeLabel})]})]}),(0,N.jsx)(`pre`,{children:(0,N.jsx)(`code`,{className:o,"data-highlighted":a.highlighted?`true`:`false`,dangerouslySetInnerHTML:{__html:a.html}})})]})}var Qw=14e4,$w=new Set([`http:`,`https:`,`mailto:`,`tel:`]);function eT(e){return e.length<=Qw?e:`${e.slice(0,Qw)}\n\n...`}function tT(e){if(!e)return null;if(e.startsWith(`#`)||e.startsWith(`/`)||e.startsWith(`./`)||e.startsWith(`../`))return e;try{let t=new URL(e);return $w.has(t.protocol)?e:null}catch{return null}}function nT(e){return/^https?:\/\//i.test(e)}function rT(e){return e.startsWith(`./`)||e.startsWith(`../`)||e.startsWith(`/Users/`)||e.startsWith(`/home/`)||e.startsWith(`/tmp/`)||e.startsWith(`/var/`)||/^\/.+\.[A-Za-z0-9_-]+(?::\d+(?::\d+)?)?$/.test(e)}function iT(e){let t=e.split(`#`)[0]?.split(`?`)[0]??e,n=decodeURIComponent(t);if(!rT(n))return null;let r=/^(.*?)(?::(\d+)(?::(\d+))?)$/.exec(n),i=r?.[1]??n,a=r?.[2]?Number(r[2]):void 0,o=r?.[3]?Number(r[3]):void 0;return{path:i,label:i.split(`/`).filter(Boolean).pop()??i,viewMode:`preview`,...typeof a==`number`?{line:a}:{},...typeof o==`number`?{column:o}:{}}}function aT({text:e,role:t,texts:n,inline:r=!1,onFileOpen:i}){let a=t===`user`,o=(0,P.useMemo)(()=>({p:({children:e})=>r?(0,N.jsx)(N.Fragment,{children:e}):(0,N.jsx)(`p`,{children:e}),a:({href:e,children:t,...n})=>{let r=tT(e);if(!r)return(0,N.jsx)(`span`,{className:`chat-link-invalid`,children:t});let a=nT(r),o=a?null:iT(r),s=e=>{!i||!o||e.defaultPrevented||e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||(e.preventDefault(),i(o))};return(0,N.jsx)(`a`,{...n,href:r,onClick:s,target:a?`_blank`:void 0,rel:a?`noreferrer noopener`:void 0,children:t})},table:({children:e,...t})=>(0,N.jsx)(`div`,{className:`chat-table-wrap`,children:(0,N.jsx)(`table`,{...t,children:e})}),input:({type:e,checked:t,...n})=>e===`checkbox`?(0,N.jsx)(`input`,{...n,type:`checkbox`,checked:t,readOnly:!0,disabled:!0,className:`chat-task-checkbox`}):(0,N.jsx)(`input`,{...n,type:e}),img:({src:e,alt:t,...n})=>{let r=tT(e);return r?(0,N.jsx)(`img`,{...n,src:r,alt:t||``,loading:`lazy`,decoding:`async`}):null},code:({className:e,children:t,...r})=>!e&&!String(t??``).includes(`
|
|
47
|
-
`)?(0,N.jsx)(`code`,{...r,className:F(`chat-inline-code`,e),children:t}):(0,N.jsx)(Zw,{className:e,texts:n,children:t})}),[r,i,n]);return(0,N.jsx)(r?`span`:`div`,{className:F(`chat-markdown`,a?`chat-markdown-user`:`chat-markdown-assistant`),children:(0,N.jsx)(Gb,{skipHtml:!0,remarkPlugins:[YC],components:o,children:eT(e)})})}function oT(e){return e.split(``).join(``).split(``).join(``).split(``).join(``).split(``).join(``).split(``).join(``).length>0}function sT(){return(0,N.jsxs)(`svg`,{viewBox:`0 0 16 16`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.25`,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,className:`h-3 w-3`,children:[(0,N.jsx)(`path`,{d:`M8.5 2.75 2.75 6l5.75 3.25L14.25 6 8.5 2.75Z`}),(0,N.jsx)(`path`,{d:`M2.75 10 8.5 13.25 14.25 10`}),(0,N.jsx)(`path`,{d:`M2.75 6v4l5.75 3.25V9.25L2.75 6Z`}),(0,N.jsx)(`path`,{d:`M14.25 6v4L8.5 13.25V9.25L14.25 6Z`})]})}function cT({kind:e,label:t,isUser:n}){let r=e===`skill`;return(0,N.jsxs)(`span`,{className:F(`mx-[2px] inline-flex h-7 max-w-full items-center gap-1.5 rounded-xl border px-2.5 align-baseline text-[11px] font-medium shadow-[0_0_0_1px_rgba(15,23,42,0.03)]`,r?n?`border-emerald-200/35 bg-emerald-400/18 text-emerald-50/95`:`border-emerald-200/70 bg-emerald-50 text-emerald-700`:n?`border-white/30 bg-white/18 text-white`:`border-slate-200/80 bg-slate-100 text-slate-700`),title:t,children:[(0,N.jsx)(`span`,{className:F(`inline-flex h-3.5 w-3.5 shrink-0 items-center justify-center`,r?n?`text-emerald-100/90`:`text-emerald-600`:n?`text-white/70`:`text-slate-500`),children:(0,N.jsx)(sT,{})}),(0,N.jsx)(`span`,{className:`truncate`,children:t})]})}function lT({segments:e,role:t,texts:n,onFileOpen:r}){let i=t===`user`;return(0,N.jsx)(`div`,{className:`whitespace-pre-wrap break-words leading-6`,children:e.map((e,a)=>e.type===`token`?(0,N.jsx)(cT,{kind:e.token.kind,label:e.token.label,isUser:i},`token-${a}-${e.token.kind}-${e.token.key}`):oT(e.text)?(0,N.jsx)(aT,{text:e.text,role:t,texts:n,inline:!0,onFileOpen:r},`markdown-${a}`):(0,N.jsx)(`span`,{className:`whitespace-pre-wrap`,children:e.text},`space-${a}`))})}var uT={archive:`border-amber-200/80 bg-amber-50 text-amber-700`,audio:`border-fuchsia-200/80 bg-fuchsia-50 text-fuchsia-700`,code:`border-cyan-200/80 bg-cyan-50 text-cyan-700`,data:`border-slate-200/80 bg-slate-50 text-slate-700`,document:`border-blue-200/80 bg-blue-50 text-blue-700`,generic:`border-slate-200/80 bg-slate-50 text-slate-700`,image:`border-emerald-200/80 bg-emerald-50 text-emerald-700`,pdf:`border-rose-200/80 bg-rose-50 text-rose-700`,sheet:`border-lime-200/80 bg-lime-50 text-lime-700`,video:`border-violet-200/80 bg-violet-50 text-violet-700`},dT=new Set([`c`,`cpp`,`css`,`go`,`html`,`java`,`js`,`jsx`,`md`,`php`,`py`,`rb`,`rs`,`sh`,`sql`,`svg`,`ts`,`tsx`]),fT=new Set([`graphql`,`json`,`toml`,`xml`,`yaml`,`yml`]),pT=new Set([`avif`,`bmp`,`gif`,`heic`,`heif`,`ico`,`jpeg`,`jpg`,`png`,`svg`,`tif`,`tiff`,`webp`]),mT=new Set([`aac`,`flac`,`m4a`,`mp3`,`ogg`,`opus`,`wav`,`weba`]),hT=new Set([`avi`,`m4v`,`mov`,`mp4`,`mkv`,`webm`,`wmv`]),gT=new Set([`doc`,`docx`,`odt`,`pages`,`rtf`,`txt`]),_T=new Set([`csv`,`numbers`,`ods`,`tsv`,`xls`,`xlsx`]),vT=new Set([`7z`,`bz2`,`gz`,`rar`,`tar`,`tgz`,`zip`]);function yT(e){if(!Number.isFinite(e)||e==null||e<0)return null;if(e===0)return`0 B`;let t=[`B`,`KB`,`MB`,`GB`,`TB`],n=e,r=0;for(;n>=1024&&r<t.length-1;)n/=1024,r+=1;let i=n>=10||r===0?0:1;return`${n.toFixed(i).replace(/\.0$/,``)} ${t[r]}`}function bT(e,t){let n=xT(e);if(n)return n.toUpperCase();let r=(t.split(`/`)[1]??``).split(/[+.;-]/)[0]?.trim();return r?r.slice(0,6).toUpperCase():`FILE`}function xT(e){return/\.([a-z0-9]{1,12})$/i.exec(e.trim())?.[1]?.toLowerCase()??``}function ST(e){return typeof e==`string`&&/^data:image\//i.test(e.trim())}function CT(e){return pT.has(e)?e===`jpg`||e===`jpeg`?`image/jpeg`:e===`svg`?`image/svg+xml`:`image/${e}`:mT.has(e)?e===`mp3`?`audio/mpeg`:e===`m4a`?`audio/mp4`:e===`weba`?`audio/webm`:`audio/${e}`:hT.has(e)?e===`mov`?`video/quicktime`:e===`m4v`?`video/mp4`:`video/${e}`:e===`pdf`?`application/pdf`:null}function wT(e){let t=xT(e);return t?CT(t):null}function TT(e){let t=e.mimeType.trim().toLowerCase();return t.length>0&&t!==`application/octet-stream`?t:wT(e.label)}function ET(e){let t=e.mimeType.trim().toLowerCase(),n=xT(e.label);return e.isImage||t.startsWith(`image/`)||pT.has(n)||ST(e.dataUrl)}function DT(e,t){let n=xT(e),r=t.toLowerCase();return r.startsWith(`image/`)||pT.has(n)?`image`:r.startsWith(`audio/`)||mT.has(n)?`audio`:r.startsWith(`video/`)||hT.has(n)?`video`:r.includes(`pdf`)||n===`pdf`?`pdf`:vT.has(n)||/(zip|tar|gzip|rar|compressed|archive)/.test(r)?`archive`:_T.has(n)||/(spreadsheet|sheet|excel|csv)/.test(r)?`sheet`:fT.has(n)||/(json|xml|yaml|toml)/.test(r)?`data`:dT.has(n)||/(javascript|typescript|jsx|tsx|css|html)/.test(r)?`code`:gT.has(n)||/(msword|document|opendocument|rtf|text\/)/.test(r)?`document`:`generic`}function OT(e){let t=DT(e.label,e.mimeType),n=yT(e.sizeBytes);return{category:t,extension:bT(e.label,e.mimeType),sizeLabel:n}}var kT={archive:`Archive`,audio:`Audio`,code:`Code file`,data:`Data file`,document:`Document`,generic:`File`,image:`Image`,pdf:`PDF document`,sheet:`Spreadsheet`,video:`Video`},AT={archive:Bt,audio:Vt,code:Ht,data:Wt,document:Kt,generic:Jt,image:Ut,pdf:Kt,sheet:Gt,video:qt};function jT(e,t){return t?.attachmentCategoryLabels?.[e]??kT[e]}function MT(e,t,n){return(0,N.jsx)(`div`,{className:F(`mt-1 text-xs leading-5`,n?`text-white/70`:`text-slate-500`),children:t?`${e} · ${t}`:e})}function NT(e,t,n){return(0,N.jsx)(`span`,{className:F(`inline-flex items-center rounded-full border px-2.5 py-1 text-[11px] font-medium`,n?t?`border-white/14 bg-white/12 text-white`:`border-slate-200/80 bg-white text-slate-700`:t?`border-white/10 bg-white/6 text-white/62`:`border-slate-200/70 bg-slate-100/80 text-slate-500`),children:e})}function PT(e,t,n){return(0,N.jsx)(`a`,{href:t,target:`_blank`,rel:`noreferrer`,className:F(`inline-flex items-center rounded-full border px-2.5 py-1 text-[11px] font-medium transition duration-200`,n?`border-white/14 bg-white/12 text-white hover:border-white/20 hover:bg-white/16`:`border-slate-200/80 bg-white text-slate-700 hover:border-slate-300 hover:bg-slate-50`),children:e})}function FT({category:e,isUser:t}){let n=AT[e];return(0,N.jsx)(`div`,{className:F(`flex h-14 w-14 shrink-0 items-center justify-center rounded-[1rem] border`,t?`border-white/12 bg-white/10 text-white`:uT[e]),children:(0,N.jsx)(n,{className:F(`h-7 w-7`,t?`text-white/92`:`text-current`),strokeWidth:2.2})})}function IT(e){let{file:t,categoryLabel:n,sizeLabel:r,isUser:i}=e;return t.dataUrl?(0,N.jsx)(`a`,{href:t.dataUrl,target:`_blank`,rel:`noreferrer`,className:`group block`,children:(0,N.jsxs)(`div`,{className:F(`relative overflow-hidden rounded-[1rem]`,i?`ring-1 ring-white/10`:`bg-slate-100/80 ring-1 ring-slate-200/80`),children:[(0,N.jsx)(`img`,{src:t.dataUrl,alt:t.label,className:`block h-auto max-h-[26rem] w-full rounded-[1rem] bg-transparent object-contain transition duration-300 group-hover:scale-[1.01]`}),(0,N.jsxs)(`div`,{className:`pointer-events-none absolute right-3 top-3 flex items-center gap-2`,children:[(0,N.jsx)(`span`,{className:F(`inline-flex items-center rounded-full px-2 py-1 text-[10px] font-semibold tracking-[0.18em] text-white backdrop-blur-sm`,i?`bg-slate-950/36`:`bg-slate-950/58`),children:n}),r?(0,N.jsx)(`span`,{className:F(`inline-flex items-center rounded-full px-2 py-1 text-[10px] font-medium text-white/92 backdrop-blur-sm`,i?`bg-slate-950/28`:`bg-slate-950/46`),children:r}):null]})]})}):null}function LT(e){let{category:t,file:n,categoryLabel:r,sizeLabel:i,isUser:a,action:o}=e;return(0,N.jsxs)(`div`,{className:`flex items-center gap-3 p-3.5`,children:[(0,N.jsx)(FT,{category:t,isUser:a}),(0,N.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,N.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,N.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,N.jsx)(`div`,{className:`truncate text-[15px] font-semibold leading-5`,children:n.label}),MT(r,i,a)]}),o]})})]})}function RT(e){let{category:t,file:n,categoryLabel:r,sizeLabel:i,isUser:a,shellClasses:o,actionLabel:s}=e;if(!n.dataUrl||t!==`audio`&&t!==`video`)return null;let c=TT(n);return(0,N.jsxs)(`div`,{className:o,children:[LT({category:t,file:n,categoryLabel:r,sizeLabel:i,isUser:a,action:PT(s,n.dataUrl,a)}),(0,N.jsx)(`div`,{className:`px-3.5 pb-3.5`,children:t===`audio`?(0,N.jsx)(`audio`,{controls:!0,preload:`metadata`,"aria-label":n.label,className:`block w-full`,children:(0,N.jsx)(`source`,{src:n.dataUrl,...c?{type:c}:{}})}):(0,N.jsx)(`div`,{className:F(`overflow-hidden rounded-[1rem] border`,a?`border-white/10 bg-slate-950/26`:`border-slate-200/80 bg-slate-100/80`),children:(0,N.jsx)(`video`,{controls:!0,preload:`metadata`,playsInline:!0,"aria-label":n.label,className:`block max-h-[28rem] w-full bg-black`,children:(0,N.jsx)(`source`,{src:n.dataUrl,...c?{type:c}:{}})})})})]})}function zT({file:e,isUser:t=!1,texts:n}){let{category:r,sizeLabel:i}=OT(e),a=ET(e)&&!!e.dataUrl,o=r===`audio`&&!!e.dataUrl,s=r===`video`&&!!e.dataUrl,c=!!e.dataUrl,l=c?n?.attachmentOpenLabel??`Open`:n?.attachmentAttachedLabel??`Attached`,u=jT(r,n),d=F(`block overflow-hidden rounded-[1.25rem] border transition duration-200`,t?`border-white/12 bg-white/10 text-white`:`border-slate-200/80 bg-white/95 text-slate-900`,c&&(t?`hover:border-white/18 hover:bg-white/13`:`hover:border-slate-300 hover:bg-white`));if(a)return IT({file:e,categoryLabel:u,sizeLabel:i,isUser:t});if(o||s)return RT({category:r,file:e,categoryLabel:u,sizeLabel:i,isUser:t,shellClasses:d,actionLabel:l});let f=LT({category:r,file:e,categoryLabel:u,sizeLabel:i,isUser:t,action:NT(l,t,c)});return!c||!e.dataUrl?(0,N.jsx)(`div`,{className:d,children:f}):(0,N.jsx)(`a`,{href:e.dataUrl,target:`_blank`,rel:`noreferrer`,className:F(d,`group`),children:f})}function BT(e){let{isInProgress:t}=e,[n,r]=(0,P.useState)(t),[i,a]=(0,P.useState)(!1),o=(0,P.useRef)(t);(0,P.useEffect)(()=>{let e=o.current;!e&&t?(r(!0),a(!1)):e&&!t&&!i&&r(!1),o.current=t},[t,i]);function s(e){e.preventDefault();let i=!n;if(r(i),!i){a(!1);return}t&&a(!0)}return{isOpen:n,onSummaryClick:s}}var VT=10;function HT(e){e.scrollTop=e.scrollHeight}function UT(e){e.scrollRef.current&&(e.scheduledScrollFrameRef.current!==null&&cancelAnimationFrame(e.scheduledScrollFrameRef.current),e.scheduledScrollFrameRef.current=requestAnimationFrame(()=>{e.scheduledScrollFrameRef.current=null;let t=e.scrollRef.current;t&&(e.isProgrammaticScrollRef.current=!0,HT(t))}))}function WT(e){let t=(0,P.useRef)(!0),n=(0,P.useRef)(!1),r=(0,P.useRef)(null),i=(0,P.useRef)(!1),a=(0,P.useRef)(null);return(0,P.useEffect)(()=>{r.current!==e.resetKey&&(r.current=e.resetKey,t.current=!0,i.current=!0)},[e.resetKey]),(0,P.useEffect)(()=>{let e=a.current;return()=>{e!==null&&cancelAnimationFrame(e)}},[]),(0,P.useLayoutEffect)(()=>{!i.current||e.isLoading||!e.hasContent||e.scrollRef.current&&(i.current=!1,UT({scrollRef:e.scrollRef,scheduledScrollFrameRef:a,isProgrammaticScrollRef:n}))},[e.hasContent,e.isLoading,e.scrollRef]),(0,P.useLayoutEffect)(()=>{!t.current||!e.hasContent||e.scrollRef.current&&UT({scrollRef:e.scrollRef,scheduledScrollFrameRef:a,isProgrammaticScrollRef:n})},[e.contentVersion,e.hasContent,e.scrollRef]),{onScroll:()=>{if(n.current){n.current=!1;return}let r=e.scrollRef.current;r&&(t.current=r.scrollHeight-r.scrollTop-r.clientHeight<=(e.stickyThresholdPx??VT))}}}function GT(e){let t=e.trim().toLowerCase();return t===`reasoning`||t===`thinking`||t===`推理`||t===`推理过程`||t===`思考过程`||t===`思考`?`思考`:e}function KT({label:e,text:t,isUser:n,isInProgress:r}){let{isOpen:i,onSummaryClick:a}=BT({isInProgress:r}),o=(0,P.useRef)(null),s=GT(e),{onScroll:c}=WT({scrollRef:o,resetKey:`${s}:${r?`streaming`:`idle`}`,isLoading:!1,hasContent:t.length>0,contentVersion:t,stickyThresholdPx:20});return(0,N.jsxs)(`details`,{className:`mt-2`,open:i,children:[(0,N.jsx)(`summary`,{className:F(`cursor-pointer text-xs`,n?`text-primary-100`:`text-gray-500`),onClick:a,children:s}),(0,N.jsx)(`div`,{ref:o,onScroll:c,"data-reasoning-scroll":`true`,className:F(`mt-2 w-fit max-w-[500px] max-h-56 overflow-y-auto rounded-lg custom-scrollbar-amber`,n?`bg-primary-700/60`:`bg-gray-100`),children:(0,N.jsx)(`pre`,{className:`min-w-0 whitespace-pre-wrap break-all p-2 text-[11px]`,children:t})})]})}function qT({children:e,className:t}){return(0,N.jsx)(`div`,{className:F(`my-2 rounded-lg border border-amber-200/50 bg-amber-100/30 shadow-sm overflow-hidden text-[12px]`,`w-[280px] sm:w-[360px] md:w-[480px] min-w-full max-w-full transition-all flex flex-col`,t),children:e})}function JT({children:e,className:t}){return(0,N.jsx)(`div`,{className:F(`border-t border-amber-200/15 bg-amber-50/50 px-3 pt-1 pb-2 w-full overflow-hidden`,t),children:e})}var YT={running:{text:`text-amber-500/80`,icon:nt,spin:!0},success:{text:`text-amber-500/80`,icon:Be,spin:!1},error:{text:`text-amber-500/80`,icon:un,spin:!1},cancelled:{text:`text-amber-500/80`,icon:an,spin:!1}};function XT({card:e}){let t=YT[e.statusTone]||YT.cancelled,n=t.icon;return(0,N.jsxs)(`span`,{className:F(`inline-flex items-center gap-1.5 text-[11px] font-medium leading-none shrink-0`,t.text),children:[(0,N.jsx)(n,{className:F(`h-3.5 w-3.5`,t.spin&&`animate-spin`),strokeWidth:3}),e.statusTone===`running`?e.statusLabel:null]})}function ZT({action:e,onAction:t}){let n=e.sessionKind===`child`?`Open child session`:`Open session`;return(0,N.jsx)(`button`,{type:`button`,onClick:n=>{n.stopPropagation(),t(e)},className:F(`inline-flex items-center gap-1.5 rounded-full border px-2 py-1 text-[10px] font-semibold uppercase tracking-[0.08em] transition-colors`,`border-amber-200/80 bg-white/80 text-amber-800 hover:bg-amber-50`),"aria-label":n,title:n,children:(0,N.jsx)(Nt,{className:`h-3 w-3`,strokeWidth:2.5})})}function QT({card:e,icon:t,expanded:n,canExpand:r,hideSummary:i=!1,actionSlot:a,onToggle:o}){let s=i?``:e.summary?.replace(/^(command|path|args|query|input):\s*/i,``)??``;return(0,N.jsxs)(`div`,{className:F(`flex items-center gap-3 px-3 py-2.5 transition-colors bg-transparent`,r?`cursor-pointer hover:bg-amber-100/30`:``),onClick:o,children:[(0,N.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-2 overflow-hidden font-mono text-amber-950/80`,children:[(0,N.jsx)(t,{className:`h-4 w-4 text-amber-600/80 shrink-0`,strokeWidth:3}),(0,N.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1.5 overflow-hidden`,children:[(0,N.jsx)(`span`,{className:`font-bold shrink-0 tracking-tight`,children:e.toolName}),s&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`span`,{className:`text-amber-300 font-bold select-none shrink-0`,children:`›`}),(0,N.jsx)(`span`,{className:`block min-w-0 flex-1 truncate font-normal`,title:s,children:s})]})]})]}),(0,N.jsxs)(`div`,{className:`flex items-center gap-3 shrink-0`,children:[a,(0,N.jsx)(XT,{card:e}),r&&(n?(0,N.jsx)(je,{className:`h-4 w-4 text-amber-400/80`,strokeWidth:3}):(0,N.jsx)(It,{className:`h-4 w-4 text-amber-400/80`,strokeWidth:3}))]})]})}function $T({action:e,onAction:t}){return(0,N.jsx)(ZT,{action:e,onAction:t})}var eE=`font-mono text-[11px] leading-5`,tE=`flex h-5 w-full ${eE}`,nE=`flex h-5 items-center justify-center px-2.5 tabular-nums select-none`;function rE(e){let t=e.newLineNumber??e.oldLineNumber;return typeof t==`number`?String(t):``}function iE(e,t,n){return`${e}-${n}-${t.oldLineNumber??`x`}-${t.newLineNumber??`x`}`}function aE(e){return typeof e.newLineNumber==`number`||typeof e.oldLineNumber==`number`}function oE(e){return e.lines.some(aE)}function sE(e){let t=e.lines.reduce((e,t)=>aE(t)?Math.max(e,rE(t).length):e,0);return`${Math.max(6.5,Math.min(8,t+3.5))}ch`}function cE(e){return`calc(${e.lines.reduce((e,t)=>Math.max(e,Math.max(1,t.text.length)),1)}ch + 1.25rem)`}function lE(e){return e.kind===`remove`?`border-r border-rose-200 bg-rose-50 text-rose-700`:e.kind===`add`?`border-r border-emerald-200 bg-emerald-50 text-emerald-700`:`border-r border-stone-200 bg-stone-100 text-stone-500`}function uE(e){return e.kind===`remove`?`bg-rose-50 text-rose-950`:e.kind===`add`?`bg-emerald-50 text-emerald-950`:`bg-white text-amber-950/80`}function dE({layout:e,line:t,lineNumberColumnWidth:n}){return(0,N.jsx)(`span`,{"data-file-line-number-cell":`true`,style:e===`compact`?{width:n,minWidth:n}:void 0,className:F(nE,e===`compact`?`sticky left-0 z-[1]`:`w-full shrink-0`,lE(t)),children:rE(t)})}function fE({line:e}){return(0,N.jsx)(`span`,{"data-file-code-row":`true`,className:F(`block min-w-0 flex-1 whitespace-pre px-2.5`,uE(e)),children:e.text||` `})}function pE({line:e,showLineNumbers:t,lineNumberColumnWidth:n}){return(0,N.jsxs)(`div`,{"data-file-line-row":`true`,className:tE,children:[t?(0,N.jsx)(dE,{layout:`compact`,line:e,lineNumberColumnWidth:n}):null,(0,N.jsx)(fE,{line:e})]})}function mE({block:e}){let t=oE(e),n=sE(e),r=cE(e);return(0,N.jsxs)(`div`,{"data-file-code-surface":`true`,"data-file-code-surface-layout":`workspace`,className:`flex h-full min-h-full min-w-full bg-white`,children:[t?(0,N.jsxs)(`div`,{"data-file-code-gutter":`true`,style:{width:n,minWidth:n},className:F(`flex h-full min-h-full shrink-0 flex-col`,eE),children:[e.lines.map((e,t)=>(0,N.jsx)(dE,{layout:`workspace`,line:e,lineNumberColumnWidth:n},iE(`gutter`,e,t))),(0,N.jsx)(`div`,{className:`min-h-0 flex-1 border-r border-stone-200 bg-stone-100`})]}):null,(0,N.jsxs)(`div`,{"data-file-code-canvas":`true`,className:`flex h-full min-h-full min-w-0 flex-1 flex-col bg-white`,children:[(0,N.jsx)(`div`,{"data-file-code-stack":`true`,className:`min-w-full`,style:{minWidth:r},children:e.lines.map((e,t)=>(0,N.jsx)(`div`,{"data-file-code-canvas-row":`true`,className:tE,children:(0,N.jsx)(fE,{line:e})},iE(`code`,e,t)))}),(0,N.jsx)(`div`,{className:`min-h-0 flex-1 bg-white`})]})]})}function hE({block:e,layout:t=`compact`}){if(t===`workspace`)return(0,N.jsx)(mE,{block:e});let n=oE(e),r=sE(e),i=cE(e),a=n?`calc(${r} + ${i})`:i;return(0,N.jsx)(`div`,{"data-file-code-surface":`true`,"data-file-code-surface-layout":`compact`,className:`overflow-x-auto custom-scrollbar-amber bg-white`,children:(0,N.jsx)(`div`,{"data-file-code-stack":`true`,className:`min-w-full`,style:{minWidth:a},children:e.lines.map((e,t)=>(0,N.jsx)(pE,{line:e,showLineNumbers:n,lineNumberColumnWidth:r},iE(`row`,e,t)))})})}function gE({block:e}){return(0,N.jsx)(hE,{block:e,layout:`compact`})}function _E(e){return e.display===`preview`}function vE(e){return e.rawText?e.rawText:e.lines.map(e=>[e.kind,e.oldLineNumber??``,e.newLineNumber??``,e.text].join(`:`)).join(`
|
|
48
|
-
`)}function yE(e){return/^\+\d+$/.test(e)?`text-emerald-700`:/^-\d+$/.test(e)?`text-rose-700`:`text-stone-500`}function bE(e){let t=e.split(`·`).map(e=>e.trim()).filter(e=>/^\+\d+$/.test(e)||/^-\d+$/.test(e));return t.length===0?null:(0,N.jsx)(`div`,{className:`flex shrink-0 items-center gap-x-1 whitespace-nowrap text-[10px] font-medium uppercase tracking-[0.08em]`,children:t.map((e,t)=>(0,N.jsxs)(P.Fragment,{children:[t>0?(0,N.jsx)(`span`,{className:`text-stone-300`,children:`·`}):null,(0,N.jsx)(`span`,{className:F(yE(e)),children:e})]},`${e}-${t}`))})}function xE(e){return{path:e.path,label:e.path.split(`/`).filter(Boolean).pop()??e.path,viewMode:e.display===`diff`?`diff`:`preview`,...e.rawText?{rawText:e.rawText}:{},...e.beforeText?{beforeText:e.beforeText}:{},...e.afterText?{afterText:e.afterText}:{},...e.patchText?{patchText:e.patchText}:{},...typeof e.oldStartLine==`number`?{oldStartLine:e.oldStartLine}:{},...typeof e.newStartLine==`number`?{newStartLine:e.newStartLine}:{},fullLines:e.fullLines??e.lines}}function SE({children:e,contentVersion:t,resetKey:n,className:r,scrollKind:i}){let a=(0,P.useRef)(null),{onScroll:o}=WT({scrollRef:a,resetKey:n,isLoading:!1,hasContent:!0,contentVersion:t,stickyThresholdPx:20});return(0,N.jsx)(`div`,{ref:a,onScroll:o,"data-file-scroll-kind":i,className:F(`overflow-y-auto bg-white custom-scrollbar-amber`,r),children:e})}function CE({block:e,showPathRow:t,isFirst:n,onFileOpen:r}){let{Tooltip:i,TooltipContent:a,TooltipProvider:o,TooltipTrigger:s}=
|
|
49
|
-
`)}function ME(e,t){if(OE(t)){let e=jE(t);if(e)return kE(e);if(AE(t))return``}if(!e)return``;let n=e.trim();if(!n.startsWith(`{`))return kE(e);try{let t=JSON.parse(n);if(!OE(t))return kE(e);let r=jE(t);return r?kE(r):AE(t)?``:kE(e)}catch{return kE(e)}}function NE(e){return e===`write_file`||e===`edit_file`}function PE({canExpand:e,isRunning:t,autoExpandWhileRunning:n=!0,expandOnError:r=!1,statusTone:i}){let[a,o]=(0,P.useState)(!1),[s,c]=(0,P.useState)(!1),l=(0,P.useRef)(null),u=(0,P.useRef)(t),d=(0,P.useRef)(!0);return(0,P.useEffect)(()=>()=>{l.current!==null&&window.clearTimeout(l.current)},[]),(0,P.useEffect)(()=>{if(r&&i===`error`&&e&&!s){l.current!==null&&(window.clearTimeout(l.current),l.current=null),o(!0),u.current=t,d.current=!1;return}n&&t&&e&&!s&&!a&&(d.current||!u.current)&&(l.current=window.setTimeout(()=>{o(!0),l.current=null},TE)),t||(l.current!==null&&(window.clearTimeout(l.current),l.current=null),u.current&&!s&&o(!1)),u.current=t,d.current=!1},[n,e,r,a,s,t,i]),{expanded:a,onToggle:()=>{e&&(l.current!==null&&(window.clearTimeout(l.current),l.current=null),o(e=>!e),c(!0))}}}function FE({label:e,tone:t,children:n}){let r={input:{shell:`border-stone-200/80 bg-stone-50/90`,header:`border-stone-200/80 bg-stone-100/85 text-stone-500`,dot:`bg-stone-400/80`,body:`text-stone-700`},output:{shell:`border-amber-200/70 bg-white/90`,header:`border-amber-200/70 bg-amber-50/90 text-amber-700`,dot:`bg-amber-500/80`,body:`text-amber-950/80`},error:{shell:`border-rose-200/80 bg-rose-50/85`,header:`border-rose-200/80 bg-rose-100/80 text-rose-700`,dot:`bg-rose-500/80`,body:`text-rose-950/85`}}[t];return(0,N.jsxs)(`section`,{className:F(`overflow-hidden rounded-md border shadow-[inset_0_1px_0_rgba(255,255,255,0.45)]`,r.shell),children:[(0,N.jsxs)(`div`,{className:F(`flex items-center gap-2 border-b px-3 py-2 text-[10px] font-semibold uppercase tracking-[0.16em]`,r.header),children:[(0,N.jsx)(`span`,{className:F(`h-1.5 w-1.5 rounded-full`,r.dot)}),(0,N.jsx)(`span`,{children:e})]}),(0,N.jsx)(`div`,{className:`w-full overflow-hidden`,children:(0,N.jsx)(`pre`,{className:F(`w-full max-w-full min-w-0 max-h-64 overflow-x-auto overflow-y-auto px-3 py-2.5 font-mono text-[12px] leading-relaxed whitespace-pre custom-scrollbar-amber`,r.body),children:n})})]})}function IE({card:e}){let t=ME(e.output,e.outputData),n=e.statusTone===`running`,r=!!(e.summary?.trim()||t.trim().length>0),{expanded:i,onToggle:a}=PE({canExpand:t.trim().length>0||n,isRunning:n,autoExpandWhileRunning:!1,expandOnError:r,statusTone:e.statusTone}),o=e.summary?.replace(/^(command|path|args|query|input):\s*/i,``);return(0,N.jsxs)(qT,{children:[(0,N.jsx)(QT,{card:e,icon:
|
|
47
|
+
`)?(0,N.jsx)(`code`,{...r,className:F(`chat-inline-code`,e),children:t}):(0,N.jsx)(Zw,{className:e,texts:n,children:t})}),[r,i,n]);return(0,N.jsx)(r?`span`:`div`,{className:F(`chat-markdown`,a?`chat-markdown-user`:`chat-markdown-assistant`),children:(0,N.jsx)(Gb,{skipHtml:!0,remarkPlugins:[YC],components:o,children:eT(e)})})}function oT(e){return e.split(``).join(``).split(``).join(``).split(``).join(``).split(``).join(``).split(``).join(``).length>0}function sT(){return(0,N.jsxs)(`svg`,{viewBox:`0 0 16 16`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.25`,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,className:`h-3 w-3`,children:[(0,N.jsx)(`path`,{d:`M8.5 2.75 2.75 6l5.75 3.25L14.25 6 8.5 2.75Z`}),(0,N.jsx)(`path`,{d:`M2.75 10 8.5 13.25 14.25 10`}),(0,N.jsx)(`path`,{d:`M2.75 6v4l5.75 3.25V9.25L2.75 6Z`}),(0,N.jsx)(`path`,{d:`M14.25 6v4L8.5 13.25V9.25L14.25 6Z`})]})}function cT({kind:e,label:t,isUser:n}){let r=e===`skill`;return(0,N.jsxs)(`span`,{className:F(`mx-[2px] inline-flex h-7 max-w-full items-center gap-1.5 rounded-xl border px-2.5 align-baseline text-[11px] font-medium shadow-[0_0_0_1px_rgba(15,23,42,0.03)]`,r?n?`border-emerald-200/35 bg-emerald-400/18 text-emerald-50/95`:`border-emerald-200/70 bg-emerald-50 text-emerald-700`:n?`border-white/30 bg-white/18 text-white`:`border-slate-200/80 bg-slate-100 text-slate-700`),title:t,children:[(0,N.jsx)(`span`,{className:F(`inline-flex h-3.5 w-3.5 shrink-0 items-center justify-center`,r?n?`text-emerald-100/90`:`text-emerald-600`:n?`text-white/70`:`text-slate-500`),children:(0,N.jsx)(sT,{})}),(0,N.jsx)(`span`,{className:`truncate`,children:t})]})}function lT({segments:e,role:t,texts:n,onFileOpen:r}){let i=t===`user`;return(0,N.jsx)(`div`,{className:`whitespace-pre-wrap break-words leading-6`,children:e.map((e,a)=>e.type===`token`?(0,N.jsx)(cT,{kind:e.token.kind,label:e.token.label,isUser:i},`token-${a}-${e.token.kind}-${e.token.key}`):oT(e.text)?(0,N.jsx)(aT,{text:e.text,role:t,texts:n,inline:!0,onFileOpen:r},`markdown-${a}`):(0,N.jsx)(`span`,{className:`whitespace-pre-wrap`,children:e.text},`space-${a}`))})}var uT={archive:`border-amber-200/80 bg-amber-50 text-amber-700`,audio:`border-fuchsia-200/80 bg-fuchsia-50 text-fuchsia-700`,code:`border-cyan-200/80 bg-cyan-50 text-cyan-700`,data:`border-slate-200/80 bg-slate-50 text-slate-700`,document:`border-blue-200/80 bg-blue-50 text-blue-700`,generic:`border-slate-200/80 bg-slate-50 text-slate-700`,image:`border-emerald-200/80 bg-emerald-50 text-emerald-700`,pdf:`border-rose-200/80 bg-rose-50 text-rose-700`,sheet:`border-lime-200/80 bg-lime-50 text-lime-700`,video:`border-violet-200/80 bg-violet-50 text-violet-700`},dT=new Set([`c`,`cpp`,`css`,`go`,`html`,`java`,`js`,`jsx`,`md`,`php`,`py`,`rb`,`rs`,`sh`,`sql`,`svg`,`ts`,`tsx`]),fT=new Set([`graphql`,`json`,`toml`,`xml`,`yaml`,`yml`]),pT=new Set([`avif`,`bmp`,`gif`,`heic`,`heif`,`ico`,`jpeg`,`jpg`,`png`,`svg`,`tif`,`tiff`,`webp`]),mT=new Set([`aac`,`flac`,`m4a`,`mp3`,`ogg`,`opus`,`wav`,`weba`]),hT=new Set([`avi`,`m4v`,`mov`,`mp4`,`mkv`,`webm`,`wmv`]),gT=new Set([`doc`,`docx`,`odt`,`pages`,`rtf`,`txt`]),_T=new Set([`csv`,`numbers`,`ods`,`tsv`,`xls`,`xlsx`]),vT=new Set([`7z`,`bz2`,`gz`,`rar`,`tar`,`tgz`,`zip`]);function yT(e){if(!Number.isFinite(e)||e==null||e<0)return null;if(e===0)return`0 B`;let t=[`B`,`KB`,`MB`,`GB`,`TB`],n=e,r=0;for(;n>=1024&&r<t.length-1;)n/=1024,r+=1;let i=n>=10||r===0?0:1;return`${n.toFixed(i).replace(/\.0$/,``)} ${t[r]}`}function bT(e,t){let n=xT(e);if(n)return n.toUpperCase();let r=(t.split(`/`)[1]??``).split(/[+.;-]/)[0]?.trim();return r?r.slice(0,6).toUpperCase():`FILE`}function xT(e){return/\.([a-z0-9]{1,12})$/i.exec(e.trim())?.[1]?.toLowerCase()??``}function ST(e){return typeof e==`string`&&/^data:image\//i.test(e.trim())}function CT(e){return pT.has(e)?e===`jpg`||e===`jpeg`?`image/jpeg`:e===`svg`?`image/svg+xml`:`image/${e}`:mT.has(e)?e===`mp3`?`audio/mpeg`:e===`m4a`?`audio/mp4`:e===`weba`?`audio/webm`:`audio/${e}`:hT.has(e)?e===`mov`?`video/quicktime`:e===`m4v`?`video/mp4`:`video/${e}`:e===`pdf`?`application/pdf`:null}function wT(e){let t=xT(e);return t?CT(t):null}function TT(e){let t=e.mimeType.trim().toLowerCase();return t.length>0&&t!==`application/octet-stream`?t:wT(e.label)}function ET(e){let t=e.mimeType.trim().toLowerCase(),n=xT(e.label);return e.isImage||t.startsWith(`image/`)||pT.has(n)||ST(e.dataUrl)}function DT(e,t){let n=xT(e),r=t.toLowerCase();return r.startsWith(`image/`)||pT.has(n)?`image`:r.startsWith(`audio/`)||mT.has(n)?`audio`:r.startsWith(`video/`)||hT.has(n)?`video`:r.includes(`pdf`)||n===`pdf`?`pdf`:vT.has(n)||/(zip|tar|gzip|rar|compressed|archive)/.test(r)?`archive`:_T.has(n)||/(spreadsheet|sheet|excel|csv)/.test(r)?`sheet`:fT.has(n)||/(json|xml|yaml|toml)/.test(r)?`data`:dT.has(n)||/(javascript|typescript|jsx|tsx|css|html)/.test(r)?`code`:gT.has(n)||/(msword|document|opendocument|rtf|text\/)/.test(r)?`document`:`generic`}function OT(e){let t=DT(e.label,e.mimeType),n=yT(e.sizeBytes);return{category:t,extension:bT(e.label,e.mimeType),sizeLabel:n}}var kT={archive:`Archive`,audio:`Audio`,code:`Code file`,data:`Data file`,document:`Document`,generic:`File`,image:`Image`,pdf:`PDF document`,sheet:`Spreadsheet`,video:`Video`},AT={archive:Bt,audio:Vt,code:Ht,data:Wt,document:Kt,generic:Jt,image:Ut,pdf:Kt,sheet:Gt,video:qt};function jT(e,t){return t?.attachmentCategoryLabels?.[e]??kT[e]}function MT(e,t,n){return(0,N.jsx)(`div`,{className:F(`mt-1 text-xs leading-5`,n?`text-white/70`:`text-slate-500`),children:t?`${e} · ${t}`:e})}function NT(e,t,n){return(0,N.jsx)(`span`,{className:F(`inline-flex items-center rounded-full border px-2.5 py-1 text-[11px] font-medium`,n?t?`border-white/14 bg-white/12 text-white`:`border-slate-200/80 bg-white text-slate-700`:t?`border-white/10 bg-white/6 text-white/62`:`border-slate-200/70 bg-slate-100/80 text-slate-500`),children:e})}function PT(e,t,n){return(0,N.jsx)(`a`,{href:t,target:`_blank`,rel:`noreferrer`,className:F(`inline-flex items-center rounded-full border px-2.5 py-1 text-[11px] font-medium transition duration-200`,n?`border-white/14 bg-white/12 text-white hover:border-white/20 hover:bg-white/16`:`border-slate-200/80 bg-white text-slate-700 hover:border-slate-300 hover:bg-slate-50`),children:e})}function FT({category:e,isUser:t}){let n=AT[e];return(0,N.jsx)(`div`,{className:F(`flex h-14 w-14 shrink-0 items-center justify-center rounded-[1rem] border`,t?`border-white/12 bg-white/10 text-white`:uT[e]),children:(0,N.jsx)(n,{className:F(`h-7 w-7`,t?`text-white/92`:`text-current`),strokeWidth:2.2})})}function IT(e){let{file:t,categoryLabel:n,sizeLabel:r,isUser:i}=e;return t.dataUrl?(0,N.jsx)(`a`,{href:t.dataUrl,target:`_blank`,rel:`noreferrer`,className:`group block`,children:(0,N.jsxs)(`div`,{className:F(`relative overflow-hidden rounded-[1rem]`,i?`ring-1 ring-white/10`:`bg-slate-100/80 ring-1 ring-slate-200/80`),children:[(0,N.jsx)(`img`,{src:t.dataUrl,alt:t.label,className:`block h-auto max-h-[26rem] w-full rounded-[1rem] bg-transparent object-contain transition duration-300 group-hover:scale-[1.01]`}),(0,N.jsxs)(`div`,{className:`pointer-events-none absolute right-3 top-3 flex items-center gap-2`,children:[(0,N.jsx)(`span`,{className:F(`inline-flex items-center rounded-full px-2 py-1 text-[10px] font-semibold tracking-[0.18em] text-white backdrop-blur-sm`,i?`bg-slate-950/36`:`bg-slate-950/58`),children:n}),r?(0,N.jsx)(`span`,{className:F(`inline-flex items-center rounded-full px-2 py-1 text-[10px] font-medium text-white/92 backdrop-blur-sm`,i?`bg-slate-950/28`:`bg-slate-950/46`),children:r}):null]})]})}):null}function LT(e){let{category:t,file:n,categoryLabel:r,sizeLabel:i,isUser:a,action:o}=e;return(0,N.jsxs)(`div`,{className:`flex items-center gap-3 p-3.5`,children:[(0,N.jsx)(FT,{category:t,isUser:a}),(0,N.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,N.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,N.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,N.jsx)(`div`,{className:`truncate text-[15px] font-semibold leading-5`,children:n.label}),MT(r,i,a)]}),o]})})]})}function RT(e){let{category:t,file:n,categoryLabel:r,sizeLabel:i,isUser:a,shellClasses:o,actionLabel:s}=e;if(!n.dataUrl||t!==`audio`&&t!==`video`)return null;let c=TT(n);return(0,N.jsxs)(`div`,{className:o,children:[LT({category:t,file:n,categoryLabel:r,sizeLabel:i,isUser:a,action:PT(s,n.dataUrl,a)}),(0,N.jsx)(`div`,{className:`px-3.5 pb-3.5`,children:t===`audio`?(0,N.jsx)(`audio`,{controls:!0,preload:`metadata`,"aria-label":n.label,className:`block w-full`,children:(0,N.jsx)(`source`,{src:n.dataUrl,...c?{type:c}:{}})}):(0,N.jsx)(`div`,{className:F(`overflow-hidden rounded-[1rem] border`,a?`border-white/10 bg-slate-950/26`:`border-slate-200/80 bg-slate-100/80`),children:(0,N.jsx)(`video`,{controls:!0,preload:`metadata`,playsInline:!0,"aria-label":n.label,className:`block max-h-[28rem] w-full bg-black`,children:(0,N.jsx)(`source`,{src:n.dataUrl,...c?{type:c}:{}})})})})]})}function zT({file:e,isUser:t=!1,texts:n}){let{category:r,sizeLabel:i}=OT(e),a=ET(e)&&!!e.dataUrl,o=r===`audio`&&!!e.dataUrl,s=r===`video`&&!!e.dataUrl,c=!!e.dataUrl,l=c?n?.attachmentOpenLabel??`Open`:n?.attachmentAttachedLabel??`Attached`,u=jT(r,n),d=F(`block overflow-hidden rounded-[1.25rem] border transition duration-200`,t?`border-white/12 bg-white/10 text-white`:`border-slate-200/80 bg-white/95 text-slate-900`,c&&(t?`hover:border-white/18 hover:bg-white/13`:`hover:border-slate-300 hover:bg-white`));if(a)return IT({file:e,categoryLabel:u,sizeLabel:i,isUser:t});if(o||s)return RT({category:r,file:e,categoryLabel:u,sizeLabel:i,isUser:t,shellClasses:d,actionLabel:l});let f=LT({category:r,file:e,categoryLabel:u,sizeLabel:i,isUser:t,action:NT(l,t,c)});return!c||!e.dataUrl?(0,N.jsx)(`div`,{className:d,children:f}):(0,N.jsx)(`a`,{href:e.dataUrl,target:`_blank`,rel:`noreferrer`,className:F(d,`group`),children:f})}function BT(e){let{isInProgress:t}=e,[n,r]=(0,P.useState)(t),[i,a]=(0,P.useState)(!1),o=(0,P.useRef)(t);(0,P.useEffect)(()=>{let e=o.current;!e&&t?(r(!0),a(!1)):e&&!t&&!i&&r(!1),o.current=t},[t,i]);function s(e){e.preventDefault();let i=!n;if(r(i),!i){a(!1);return}t&&a(!0)}return{isOpen:n,onSummaryClick:s}}var VT=10;function HT(e){e.scrollTop=e.scrollHeight}function UT(e){e.scrollRef.current&&(e.scheduledScrollFrameRef.current!==null&&cancelAnimationFrame(e.scheduledScrollFrameRef.current),e.scheduledScrollFrameRef.current=requestAnimationFrame(()=>{e.scheduledScrollFrameRef.current=null;let t=e.scrollRef.current;t&&(e.isProgrammaticScrollRef.current=!0,HT(t))}))}function WT(e){let t=(0,P.useRef)(!0),n=(0,P.useRef)(!1),r=(0,P.useRef)(null),i=(0,P.useRef)(!1),a=(0,P.useRef)(null);return(0,P.useEffect)(()=>{r.current!==e.resetKey&&(r.current=e.resetKey,t.current=!0,i.current=!0)},[e.resetKey]),(0,P.useEffect)(()=>{let e=a.current;return()=>{e!==null&&cancelAnimationFrame(e)}},[]),(0,P.useLayoutEffect)(()=>{!i.current||e.isLoading||!e.hasContent||e.scrollRef.current&&(i.current=!1,UT({scrollRef:e.scrollRef,scheduledScrollFrameRef:a,isProgrammaticScrollRef:n}))},[e.hasContent,e.isLoading,e.scrollRef]),(0,P.useLayoutEffect)(()=>{!t.current||!e.hasContent||e.scrollRef.current&&UT({scrollRef:e.scrollRef,scheduledScrollFrameRef:a,isProgrammaticScrollRef:n})},[e.contentVersion,e.hasContent,e.scrollRef]),{onScroll:()=>{if(n.current){n.current=!1;return}let r=e.scrollRef.current;r&&(t.current=r.scrollHeight-r.scrollTop-r.clientHeight<=(e.stickyThresholdPx??VT))}}}function GT(e){let t=e.trim().toLowerCase();return t===`reasoning`||t===`thinking`||t===`推理`||t===`推理过程`||t===`思考过程`||t===`思考`?`思考`:e}function KT({label:e,text:t,isUser:n,isInProgress:r}){let{isOpen:i,onSummaryClick:a}=BT({isInProgress:r}),o=(0,P.useRef)(null),s=GT(e),{onScroll:c}=WT({scrollRef:o,resetKey:`${s}:${r?`streaming`:`idle`}`,isLoading:!1,hasContent:t.length>0,contentVersion:t,stickyThresholdPx:20});return(0,N.jsxs)(`details`,{className:`mt-2`,open:i,children:[(0,N.jsx)(`summary`,{className:F(`cursor-pointer text-xs`,n?`text-primary-100`:`text-gray-500`),onClick:a,children:s}),(0,N.jsx)(`div`,{ref:o,onScroll:c,"data-reasoning-scroll":`true`,className:F(`mt-2 w-fit max-w-[500px] max-h-56 overflow-y-auto rounded-lg custom-scrollbar-amber`,n?`bg-primary-700/60`:`bg-gray-100`),children:(0,N.jsx)(`pre`,{className:`min-w-0 whitespace-pre-wrap break-all p-2 text-[11px]`,children:t})})]})}function qT({children:e,className:t}){return(0,N.jsx)(`div`,{className:F(`my-2 rounded-lg border border-amber-200/50 bg-amber-100/30 shadow-sm overflow-hidden text-[12px]`,`w-[280px] sm:w-[360px] md:w-[480px] min-w-full max-w-full transition-all flex flex-col`,t),children:e})}function JT({children:e,className:t}){return(0,N.jsx)(`div`,{className:F(`border-t border-amber-200/15 bg-amber-50/50 px-3 pt-1 pb-2 w-full overflow-hidden`,t),children:e})}var YT={running:{text:`text-amber-500/80`,icon:nt,spin:!0},success:{text:`text-amber-500/80`,icon:Be,spin:!1},error:{text:`text-amber-500/80`,icon:ln,spin:!1},cancelled:{text:`text-amber-500/80`,icon:rn,spin:!1}};function XT({card:e}){let t=YT[e.statusTone]||YT.cancelled,n=t.icon;return(0,N.jsxs)(`span`,{className:F(`inline-flex items-center gap-1.5 text-[11px] font-medium leading-none shrink-0`,t.text),children:[(0,N.jsx)(n,{className:F(`h-3.5 w-3.5`,t.spin&&`animate-spin`),strokeWidth:3}),e.statusTone===`running`?e.statusLabel:null]})}function ZT({action:e,onAction:t}){let n=e.sessionKind===`child`?`Open child session`:`Open session`;return(0,N.jsx)(`button`,{type:`button`,onClick:n=>{n.stopPropagation(),t(e)},className:F(`inline-flex items-center gap-1.5 rounded-full border px-2 py-1 text-[10px] font-semibold uppercase tracking-[0.08em] transition-colors`,`border-amber-200/80 bg-white/80 text-amber-800 hover:bg-amber-50`),"aria-label":n,title:n,children:(0,N.jsx)(Nt,{className:`h-3 w-3`,strokeWidth:2.5})})}function QT({card:e,icon:t,expanded:n,canExpand:r,hideSummary:i=!1,actionSlot:a,onToggle:o}){let s=i?``:e.summary?.replace(/^(command|path|args|query|input):\s*/i,``)??``;return(0,N.jsxs)(`div`,{className:F(`flex items-center gap-3 px-3 py-2.5 transition-colors bg-transparent`,r?`cursor-pointer hover:bg-amber-100/30`:``),onClick:o,children:[(0,N.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-2 overflow-hidden font-mono text-amber-950/80`,children:[(0,N.jsx)(t,{className:`h-4 w-4 text-amber-600/80 shrink-0`,strokeWidth:3}),(0,N.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1.5 overflow-hidden`,children:[(0,N.jsx)(`span`,{className:`font-bold shrink-0 tracking-tight`,children:e.toolName}),s&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`span`,{className:`text-amber-300 font-bold select-none shrink-0`,children:`›`}),(0,N.jsx)(`span`,{className:`block min-w-0 flex-1 truncate font-normal`,title:s,children:s})]})]})]}),(0,N.jsxs)(`div`,{className:`flex items-center gap-3 shrink-0`,children:[a,(0,N.jsx)(XT,{card:e}),r&&(n?(0,N.jsx)(je,{className:`h-4 w-4 text-amber-400/80`,strokeWidth:3}):(0,N.jsx)(It,{className:`h-4 w-4 text-amber-400/80`,strokeWidth:3}))]})]})}function $T({action:e,onAction:t}){return(0,N.jsx)(ZT,{action:e,onAction:t})}var eE=`font-mono text-[11px] leading-5`,tE=`flex h-5 w-full ${eE}`,nE=`flex h-5 items-center justify-center px-2.5 tabular-nums select-none`;function rE(e){let t=e.newLineNumber??e.oldLineNumber;return typeof t==`number`?String(t):``}function iE(e,t,n){return`${e}-${n}-${t.oldLineNumber??`x`}-${t.newLineNumber??`x`}`}function aE(e){return typeof e.newLineNumber==`number`||typeof e.oldLineNumber==`number`}function oE(e){return e.lines.some(aE)}function sE(e){let t=e.lines.reduce((e,t)=>aE(t)?Math.max(e,rE(t).length):e,0);return`${Math.max(6.5,Math.min(8,t+3.5))}ch`}function cE(e){return`calc(${e.lines.reduce((e,t)=>Math.max(e,Math.max(1,t.text.length)),1)}ch + 1.25rem)`}function lE(e){return e.kind===`remove`?`border-r border-rose-200 bg-rose-50 text-rose-700`:e.kind===`add`?`border-r border-emerald-200 bg-emerald-50 text-emerald-700`:`border-r border-stone-200 bg-stone-100 text-stone-500`}function uE(e){return e.kind===`remove`?`bg-rose-50 text-rose-950`:e.kind===`add`?`bg-emerald-50 text-emerald-950`:`bg-white text-amber-950/80`}function dE({layout:e,line:t,lineNumberColumnWidth:n}){return(0,N.jsx)(`span`,{"data-file-line-number-cell":`true`,style:e===`compact`?{width:n,minWidth:n}:void 0,className:F(nE,e===`compact`?`sticky left-0 z-[1]`:`w-full shrink-0`,lE(t)),children:rE(t)})}function fE({line:e}){return(0,N.jsx)(`span`,{"data-file-code-row":`true`,className:F(`block min-w-0 flex-1 whitespace-pre px-2.5`,uE(e)),children:e.text||` `})}function pE({line:e,showLineNumbers:t,lineNumberColumnWidth:n}){return(0,N.jsxs)(`div`,{"data-file-line-row":`true`,className:tE,children:[t?(0,N.jsx)(dE,{layout:`compact`,line:e,lineNumberColumnWidth:n}):null,(0,N.jsx)(fE,{line:e})]})}function mE({block:e}){let t=oE(e),n=sE(e),r=cE(e);return(0,N.jsxs)(`div`,{"data-file-code-surface":`true`,"data-file-code-surface-layout":`workspace`,className:`flex h-full min-h-full min-w-full bg-white`,children:[t?(0,N.jsxs)(`div`,{"data-file-code-gutter":`true`,style:{width:n,minWidth:n},className:F(`flex h-full min-h-full shrink-0 flex-col`,eE),children:[e.lines.map((e,t)=>(0,N.jsx)(dE,{layout:`workspace`,line:e,lineNumberColumnWidth:n},iE(`gutter`,e,t))),(0,N.jsx)(`div`,{className:`min-h-0 flex-1 border-r border-stone-200 bg-stone-100`})]}):null,(0,N.jsxs)(`div`,{"data-file-code-canvas":`true`,className:`flex h-full min-h-full min-w-0 flex-1 flex-col bg-white`,children:[(0,N.jsx)(`div`,{"data-file-code-stack":`true`,className:`min-w-full`,style:{minWidth:r},children:e.lines.map((e,t)=>(0,N.jsx)(`div`,{"data-file-code-canvas-row":`true`,className:tE,children:(0,N.jsx)(fE,{line:e})},iE(`code`,e,t)))}),(0,N.jsx)(`div`,{className:`min-h-0 flex-1 bg-white`})]})]})}function hE({block:e,layout:t=`compact`}){if(t===`workspace`)return(0,N.jsx)(mE,{block:e});let n=oE(e),r=sE(e),i=cE(e),a=n?`calc(${r} + ${i})`:i;return(0,N.jsx)(`div`,{"data-file-code-surface":`true`,"data-file-code-surface-layout":`compact`,className:`overflow-x-auto custom-scrollbar-amber bg-white`,children:(0,N.jsx)(`div`,{"data-file-code-stack":`true`,className:`min-w-full`,style:{minWidth:a},children:e.lines.map((e,t)=>(0,N.jsx)(pE,{line:e,showLineNumbers:n,lineNumberColumnWidth:r},iE(`row`,e,t)))})})}function gE({block:e}){return(0,N.jsx)(hE,{block:e,layout:`compact`})}function _E(e){return e.display===`preview`}function vE(e){return e.rawText?e.rawText:e.lines.map(e=>[e.kind,e.oldLineNumber??``,e.newLineNumber??``,e.text].join(`:`)).join(`
|
|
48
|
+
`)}function yE(e){return/^\+\d+$/.test(e)?`text-emerald-700`:/^-\d+$/.test(e)?`text-rose-700`:`text-stone-500`}function bE(e){let t=e.split(`·`).map(e=>e.trim()).filter(e=>/^\+\d+$/.test(e)||/^-\d+$/.test(e));return t.length===0?null:(0,N.jsx)(`div`,{className:`flex shrink-0 items-center gap-x-1 whitespace-nowrap text-[10px] font-medium uppercase tracking-[0.08em]`,children:t.map((e,t)=>(0,N.jsxs)(P.Fragment,{children:[t>0?(0,N.jsx)(`span`,{className:`text-stone-300`,children:`·`}):null,(0,N.jsx)(`span`,{className:F(yE(e)),children:e})]},`${e}-${t}`))})}function xE(e){return{path:e.path,label:e.path.split(`/`).filter(Boolean).pop()??e.path,viewMode:e.display===`diff`?`diff`:`preview`,...e.rawText?{rawText:e.rawText}:{},...e.beforeText?{beforeText:e.beforeText}:{},...e.afterText?{afterText:e.afterText}:{},...e.patchText?{patchText:e.patchText}:{},...typeof e.oldStartLine==`number`?{oldStartLine:e.oldStartLine}:{},...typeof e.newStartLine==`number`?{newStartLine:e.newStartLine}:{},fullLines:e.fullLines??e.lines}}function SE({children:e,contentVersion:t,resetKey:n,className:r,scrollKind:i}){let a=(0,P.useRef)(null),{onScroll:o}=WT({scrollRef:a,resetKey:n,isLoading:!1,hasContent:!0,contentVersion:t,stickyThresholdPx:20});return(0,N.jsx)(`div`,{ref:a,onScroll:o,"data-file-scroll-kind":i,className:F(`overflow-y-auto bg-white custom-scrollbar-amber`,r),children:e})}function CE({block:e,showPathRow:t,isFirst:n,onFileOpen:r}){let{Tooltip:i,TooltipContent:a,TooltipProvider:o,TooltipTrigger:s}=or,c=_E(e),l=t||!!e.caption;return(0,N.jsxs)(`section`,{className:F(`overflow-hidden bg-white`,!n&&`border-t border-stone-200/80`),children:[l?(0,N.jsxs)(`div`,{className:F(`flex items-center justify-between gap-4 border-b border-stone-200/80 px-4 text-stone-700`,t?`py-2`:`py-1.5`),children:[(0,N.jsx)(`div`,{className:`min-w-0 flex-1`,children:t?(0,N.jsx)(o,{delayDuration:250,children:(0,N.jsxs)(i,{children:[(0,N.jsx)(s,{asChild:!0,children:(0,N.jsx)(`button`,{type:`button`,onClick:()=>{r&&r(xE(e))},className:F(`w-full truncate whitespace-nowrap text-left font-mono text-[12px] font-medium text-stone-700`,r&&`transition-colors hover:text-amber-900 hover:underline`),title:e.path,children:e.path})}),(0,N.jsx)(a,{side:`top`,className:`max-w-[420px] text-xs font-mono break-all`,children:e.path})]})}):null}),e.caption?bE(e.caption):null]}):null,e.lines.length>0?(0,N.jsx)(SE,{resetKey:`block:${e.key}`,contentVersion:vE(e),className:`max-h-72`,scrollKind:`block`,children:(0,N.jsx)(gE,{block:e})}):e.rawText?(0,N.jsx)(SE,{resetKey:`raw:${e.key}`,contentVersion:e.rawText,className:`max-h-72`,scrollKind:`raw`,children:(0,N.jsx)(`div`,{className:`overflow-x-auto custom-scrollbar-amber`,children:(0,N.jsx)(`pre`,{className:`min-w-max whitespace-pre bg-white px-4 py-2 font-mono text-[11px] leading-5 text-amber-950/80`,children:e.rawText})})}):null,e.truncated&&!c?(0,N.jsx)(`div`,{className:`border-t border-stone-200/85 bg-stone-50 px-4 py-2 text-[10px] text-stone-500`,children:`Showing a shortened diff preview.`}):null]})}function wE({card:e,className:t,onFileOpen:n}){let r=e.fileOperation?.blocks??[],i=e.output?.trim()??``;return r.length===0&&!i?null:(0,N.jsxs)(`div`,{className:F(`overflow-hidden bg-white`,t),children:[r.map((e,t)=>(0,N.jsx)(CE,{block:e,showPathRow:!0,isFirst:t===0,onFileOpen:n},e.key)),i?(0,N.jsx)(SE,{resetKey:`output:${e.toolName}:${e.summary??`none`}`,contentVersion:i,className:F(`max-h-56`,r.length>0&&`border-t border-stone-200/80`),scrollKind:`output`,children:(0,N.jsx)(`div`,{className:`overflow-x-auto custom-scrollbar-amber`,children:(0,N.jsx)(`pre`,{className:`min-w-max whitespace-pre bg-white px-4 py-2 font-mono text-[11px] leading-5 text-amber-950/80`,children:i})})}):null]})}var TE=200,EE=RegExp(`\x1B\\[[0-?]*[ -/]*[@-~]`,`g`);function DE(e){return typeof e==`string`&&e.length>0?e:null}function OE(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function kE(e){return e.replace(EE,``)}function AE(e){return`command`in e||`workingDir`in e||`exitCode`in e||`durationMs`in e||`stdout`in e||`stderr`in e||`aggregated_output`in e||`combinedOutput`in e}function jE(e){let t=DE(e.aggregated_output)??DE(e.combinedOutput)??DE(e.output);if(t)return t;let n=DE(e.stdout),r=DE(e.stderr);return!n&&!r?null:[n,r].filter(e=>!!e).join(`
|
|
49
|
+
`)}function ME(e,t){if(OE(t)){let e=jE(t);if(e)return kE(e);if(AE(t))return``}if(!e)return``;let n=e.trim();if(!n.startsWith(`{`))return kE(e);try{let t=JSON.parse(n);if(!OE(t))return kE(e);let r=jE(t);return r?kE(r):AE(t)?``:kE(e)}catch{return kE(e)}}function NE(e){return e===`write_file`||e===`edit_file`}function PE({canExpand:e,isRunning:t,autoExpandWhileRunning:n=!0,expandOnError:r=!1,statusTone:i}){let[a,o]=(0,P.useState)(!1),[s,c]=(0,P.useState)(!1),l=(0,P.useRef)(null),u=(0,P.useRef)(t),d=(0,P.useRef)(!0);return(0,P.useEffect)(()=>()=>{l.current!==null&&window.clearTimeout(l.current)},[]),(0,P.useEffect)(()=>{if(r&&i===`error`&&e&&!s){l.current!==null&&(window.clearTimeout(l.current),l.current=null),o(!0),u.current=t,d.current=!1;return}n&&t&&e&&!s&&!a&&(d.current||!u.current)&&(l.current=window.setTimeout(()=>{o(!0),l.current=null},TE)),t||(l.current!==null&&(window.clearTimeout(l.current),l.current=null),u.current&&!s&&o(!1)),u.current=t,d.current=!1},[n,e,r,a,s,t,i]),{expanded:a,onToggle:()=>{e&&(l.current!==null&&(window.clearTimeout(l.current),l.current=null),o(e=>!e),c(!0))}}}function FE({label:e,tone:t,children:n}){let r={input:{shell:`border-stone-200/80 bg-stone-50/90`,header:`border-stone-200/80 bg-stone-100/85 text-stone-500`,dot:`bg-stone-400/80`,body:`text-stone-700`},output:{shell:`border-amber-200/70 bg-white/90`,header:`border-amber-200/70 bg-amber-50/90 text-amber-700`,dot:`bg-amber-500/80`,body:`text-amber-950/80`},error:{shell:`border-rose-200/80 bg-rose-50/85`,header:`border-rose-200/80 bg-rose-100/80 text-rose-700`,dot:`bg-rose-500/80`,body:`text-rose-950/85`}}[t];return(0,N.jsxs)(`section`,{className:F(`overflow-hidden rounded-md border shadow-[inset_0_1px_0_rgba(255,255,255,0.45)]`,r.shell),children:[(0,N.jsxs)(`div`,{className:F(`flex items-center gap-2 border-b px-3 py-2 text-[10px] font-semibold uppercase tracking-[0.16em]`,r.header),children:[(0,N.jsx)(`span`,{className:F(`h-1.5 w-1.5 rounded-full`,r.dot)}),(0,N.jsx)(`span`,{children:e})]}),(0,N.jsx)(`div`,{className:`w-full overflow-hidden`,children:(0,N.jsx)(`pre`,{className:F(`w-full max-w-full min-w-0 max-h-64 overflow-x-auto overflow-y-auto px-3 py-2.5 font-mono text-[12px] leading-relaxed whitespace-pre custom-scrollbar-amber`,r.body),children:n})})]})}function IE({card:e}){let t=ME(e.output,e.outputData),n=e.statusTone===`running`,r=!!(e.summary?.trim()||t.trim().length>0),{expanded:i,onToggle:a}=PE({canExpand:t.trim().length>0||n,isRunning:n,autoExpandWhileRunning:!1,expandOnError:r,statusTone:e.statusTone}),o=e.summary?.replace(/^(command|path|args|query|input):\s*/i,``);return(0,N.jsxs)(qT,{children:[(0,N.jsx)(QT,{card:e,icon:cn,expanded:i,canExpand:t.trim().length>0||n,onToggle:a}),i&&(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`div`,{className:`px-3 pb-2 font-mono w-full max-h-48 overflow-y-auto custom-scrollbar-amber min-h-0 text-[12px]`,children:(0,N.jsxs)(`div`,{className:`flex items-start gap-2 leading-relaxed`,children:[(0,N.jsx)(`span`,{className:`text-amber-500/50 font-medium shrink-0 select-none mt-[1px]`,children:`$`}),(0,N.jsx)(`div`,{className:`flex-1 min-w-0`,children:o?(0,N.jsxs)(`div`,{className:`text-amber-950/80 break-words whitespace-pre-wrap tracking-tight font-medium inline-block`,children:[o,n&&!t&&(0,N.jsx)(`span`,{className:`inline-block w-1.5 h-3 ml-1 bg-amber-500/60 animate-pulse align-middle`})]}):(0,N.jsx)(`div`,{className:`h-3 w-32 bg-amber-200/30 rounded animate-pulse mt-2`})})]})}),t&&(0,N.jsx)(JT,{children:(0,N.jsxs)(`pre`,{className:`font-mono text-[12px] text-amber-950/70 whitespace-pre-wrap break-all w-full max-w-full max-h-64 overflow-y-auto overflow-x-hidden min-w-0 custom-scrollbar-amber leading-relaxed px-0`,children:[t,n&&(0,N.jsx)(`span`,{className:`inline-block w-1.5 h-3 ml-1 bg-amber-500/60 animate-pulse align-middle`})]})})]})]})}function LE({card:e,onFileOpen:t}){let n=e.output?.trim()??``,r=e.statusTone===`running`,i=!!e.fileOperation?.blocks.length,a=i||!!n,o=e.fileOperation?.blocks??[],s=o.reduce((e,t)=>e+t.lines.length,0),c=o.reduce((e,t)=>t.rawText?e+t.rawText.length:e+t.lines.reduce((e,t)=>e+t.text.length+1,0),0),l=NE(e.toolName)&&!(r&&e.toolName===`write_file`&&(s>24||c>1200)),{expanded:u,onToggle:d}=PE({canExpand:a||r,isRunning:r,autoExpandWhileRunning:l,expandOnError:a,statusTone:e.statusTone});return(0,N.jsxs)(qT,{children:[(0,N.jsx)(QT,{card:e,icon:e.toolName===`edit_file`||e.toolName===`write_file`||e.toolName===`apply_patch`||e.toolName===`file_change`?Lt:Kt,expanded:u,canExpand:a||r,hideSummary:u&&i,onToggle:d}),u&&a&&(0,N.jsx)(JT,{className:`border-t border-amber-200/20 bg-transparent px-0 pt-0 pb-0`,children:(0,N.jsx)(wE,{card:e,onFileOpen:t})})]})}function RE({card:e}){let t=e.statusTone===`running`,n=e.output?.trim()??``,{expanded:r,onToggle:i}=PE({canExpand:!!n||t,isRunning:t,autoExpandWhileRunning:!1,statusTone:e.statusTone});return(0,N.jsxs)(qT,{children:[(0,N.jsx)(QT,{card:e,icon:Oe,expanded:r,canExpand:!!n||t,onToggle:i}),r&&n&&(0,N.jsx)(JT,{children:(0,N.jsx)(`pre`,{className:`font-mono text-[12px] text-amber-950/70 whitespace-pre-wrap break-all w-full max-w-full max-h-64 overflow-y-auto overflow-x-hidden min-w-0 custom-scrollbar-amber leading-relaxed`,children:n})})]})}function zE({card:e,onToolAction:t,renderToolAgent:n}){let r=e.input?.trim()??``,i=e.output?.trim()??``,a=e.statusTone===`running`,o=r.length>0,s=i.length>0,c=o||s,l=e.inputLabel?.trim()||`Input`,u=e.outputLabel?.trim()||`Output`,{expanded:d,onToggle:f}=PE({canExpand:c||a,isRunning:a,autoExpandWhileRunning:!1,statusTone:e.statusTone});return(0,N.jsxs)(qT,{children:[(0,N.jsx)(QT,{card:e,icon:et,expanded:d,canExpand:c||a,actionSlot:e.agentId||e.action&&t?(0,N.jsxs)(N.Fragment,{children:[e.agentId&&n?n(e.agentId):null,e.action&&t?(0,N.jsx)($T,{action:e.action,onAction:t}):null]}):void 0,onToggle:f}),d&&c&&(0,N.jsxs)(JT,{className:`bg-transparent px-2.5 py-2.5`,children:[o&&(0,N.jsx)(FE,{label:l,tone:`input`,children:r}),o&&s&&(0,N.jsx)(`div`,{className:`h-2`}),s&&(0,N.jsx)(FE,{label:u,tone:e.statusTone===`error`?`error`:`output`,children:i})]})]})}function BE(e){let t=e.toLowerCase();return t===`exec`||t===`exec_command`||t===`execute_command`||t===`command_execution`||t===`bash`||t===`shell`||t.includes(`run_`)}function VE(e){let t=e.toLowerCase();return t===`read_file`||t===`write_file`||t===`edit_file`||t===`apply_patch`||t===`file_change`}function HE(e){let t=e.toLowerCase();return t===`grep_search`||t===`find_files`||t.includes(`search`)}function UE({card:e,onToolAction:t,onFileOpen:n,renderToolAgent:r}){return BE(e.toolName)?(0,N.jsx)(IE,{card:e}):VE(e.toolName)?(0,N.jsx)(LE,{card:e,onFileOpen:n}):HE(e.toolName)?(0,N.jsx)(RE,{card:e}):(0,N.jsx)(zE,{card:e,onToolAction:t,renderToolAgent:r})}function WE(e){return(0,N.jsxs)(`div`,{className:`rounded-lg border border-gray-200 bg-gray-50 px-2.5 py-2 text-xs text-gray-600`,children:[(0,N.jsxs)(`div`,{className:`font-semibold text-gray-700`,children:[e.label,`: `,e.rawType]}),e.text?(0,N.jsx)(`pre`,{className:`mt-1 whitespace-pre-wrap break-words text-[11px] text-gray-500`,children:e.text}):null]})}var GE=(0,P.memo)(function(e){let{message:t,texts:n,onToolAction:r,onFileOpen:i,renderToolAgent:a}=e,{role:o}=t,s=o===`user`,c=t.status===`pending`||t.status===`streaming`;return(0,N.jsx)(`div`,{className:F(`inline-block w-fit max-w-full rounded-2xl border px-4 shadow-sm`,s?`border-primary bg-primary py-3 text-white`:o===`assistant`?`border-gray-200 bg-white pb-3 pt-4 text-gray-900`:`border-orange-200/80 bg-orange-50/70 py-3 text-gray-900`),children:(0,N.jsx)(`div`,{className:`space-y-2`,children:t.parts.map((e,l)=>{let{type:u}=e;return u===`markdown`?(0,N.jsx)(aT,{text:e.text,role:o,texts:n,onFileOpen:i},`markdown-${l}`):u===`inline-content`?(0,N.jsx)(lT,{segments:e.segments,role:o,texts:n,onFileOpen:i},`inline-content-${l}`):u===`reasoning`?(0,N.jsx)(KT,{label:e.label,text:e.text,isUser:s,isInProgress:c&&l===t.parts.length-1},`reasoning-${l}`):u===`tool-card`?(0,N.jsx)(`div`,{className:`mt-0.5`,children:(0,N.jsx)(UE,{card:e.card,onToolAction:r,onFileOpen:i,renderToolAgent:a})},`tool-${l}`):u===`file`?(0,N.jsx)(zT,{file:e.file,isUser:s,texts:n},`file-${l}`):u===`unknown`?(0,N.jsx)(WE,{label:e.label,rawType:e.rawType,text:e.text},`unknown-${l}`):null})})})});function KE(e){return(0,N.jsxs)(`div`,{className:F(`px-1 text-[11px] leading-4 text-gray-400`,e.isUser?`text-right`:`text-left`),children:[e.roleLabel,` · `,e.timestampLabel]})}function qE({message:e,texts:t}){let n=(0,P.useMemo)(()=>e.parts.map(e=>e.type===`markdown`||e.type===`unknown`?e.text:``).filter(e=>!!e&&e.trim().length>0).join(`
|
|
50
50
|
|
|
51
|
-
`),[e.parts]),{copied:r,copy:i}=tw({text:n});return n?(0,N.jsx)(`button`,{type:`button`,onClick:()=>void i(),className:`text-gray-400 hover:text-gray-600 transition-colors p-1 rounded-md hover:bg-gray-100 flex items-center justify-center`,"aria-label":r?t.copiedMessageLabel:t.copyMessageLabel,title:r?t.copiedMessageLabel:t.copyMessageLabel,children:r?(0,N.jsx)(Be,{className:`h-3.5 w-3.5`}):(0,N.jsx)(Rt,{className:`h-3.5 w-3.5`})}):null}var JE=/\u200B|\u200C|\u200D|\u2060|\uFEFF/g;function YE(e){let t=e.trim();return t?t.replace(JE,``).trim().length>0:!1}function XE(e){return e.parts.some(e=>e.type===`markdown`||e.type===`reasoning`?YE(e.text):!0)}function ZE(){return(0,N.jsx)(`div`,{className:`flex items-center gap-2 px-1 py-0.5 text-[11px] text-gray-400`,children:(0,N.jsxs)(`div`,{className:`flex space-x-1 items-center h-full`,children:[(0,N.jsx)(`div`,{className:`h-1.5 w-1.5 rounded-full bg-gray-400 animate-pulse`}),(0,N.jsx)(`div`,{className:`h-1.5 w-1.5 rounded-full bg-gray-400 animate-pulse [animation-delay:200ms]`}),(0,N.jsx)(`div`,{className:`h-1.5 w-1.5 rounded-full bg-gray-400 animate-pulse [animation-delay:400ms]`})]})})}function QE(e){let t=e.messages.filter(XE),n=t.some(e=>e.role===`assistant`&&(e.status===`streaming`||e.status===`pending`));return(0,N.jsxs)(`div`,{className:F(`space-y-5`,e.className),children:[t.map(t=>{let n=t.role===`user`,r=!n&&(t.status===`streaming`||t.status===`pending`);return(0,N.jsxs)(`div`,{className:F(`flex gap-3`,n?`justify-end`:`justify-start`),children:[n?null:(0,N.jsx)(mm,{role:t.role}),(0,N.jsxs)(`div`,{className:F(`w-fit max-w-[92%] space-y-2`,n&&`flex flex-col items-end`),children:[(0,N.jsx)(GE,{message:t,texts:e.texts,onToolAction:e.onToolAction,onFileOpen:e.onFileOpen,renderToolAgent:e.renderToolAgent}),(0,N.jsx)(`div`,{className:F(`flex items-center gap-2`,n&&`justify-end`),children:r?(0,N.jsx)(ZE,{}):(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(KE,{roleLabel:t.roleLabel,timestampLabel:t.timestampLabel,isUser:n}),n?null:(0,N.jsx)(qE,{message:t,texts:e.texts})]})})]}),n?(0,N.jsx)(mm,{role:t.role}):null]},t.id)}),e.isSending&&!n?(0,N.jsxs)(`div`,{className:`flex justify-start gap-3`,children:[(0,N.jsx)(mm,{role:`assistant`}),(0,N.jsx)(`div`,{className:`rounded-2xl border border-gray-200 bg-white px-4 py-3 text-sm text-gray-500 shadow-sm`,children:e.texts.typingLabel})]}):null]})}var $E=function(e){return e.EndpointReady=`endpoint.ready`,e.EndpointError=`endpoint.error`,e.MessageRequest=`message.request`,e.MessageStreamRequest=`message.stream-request`,e.MessageSent=`message.sent`,e.MessageAccepted=`message.accepted`,e.MessageIncoming=`message.incoming`,e.MessageCompleted=`message.completed`,e.MessageFailed=`message.failed`,e.MessageAbort=`message.abort`,e.MessageTextStart=`message.text-start`,e.MessageTextDelta=`message.text-delta`,e.MessageTextEnd=`message.text-end`,e.MessageReasoningStart=`message.reasoning-start`,e.MessageReasoningDelta=`message.reasoning-delta`,e.MessageReasoningEnd=`message.reasoning-end`,e.MessageToolCallStart=`message.tool-call-start`,e.MessageToolCallArgs=`message.tool-call-args`,e.MessageToolCallArgsDelta=`message.tool-call-args-delta`,e.MessageToolCallEnd=`message.tool-call-end`,e.MessageToolCallResult=`message.tool-call-result`,e.MessageRead=`message.read`,e.MessageDelivered=`message.delivered`,e.MessageRecalled=`message.recalled`,e.MessageReaction=`message.reaction`,e.RunStarted=`run.started`,e.RunFinished=`run.finished`,e.RunError=`run.error`,e.RunMetadata=`run.metadata`,e.TypingStart=`typing.start`,e.TypingEnd=`typing.end`,e.PresenceUpdated=`presence.updated`,e}({}),eD=/\[\[\s*reply_to_current\s*\]\]/gi,tD=/\[\[\s*reply_to\s*:\s*([^\]]+?)\s*\]\]/i;function nD(e){if(typeof e!=`string`)return;let t=e.trim();return t.length>0?t:void 0}function rD(e,t){let n=e,r;eD.test(n)&&(r=nD(t),n=n.replace(eD,``).trim());let i=n.match(tD)?.[1];return i&&(r=nD(i),n=n.replace(tD,``).trim()),r?{content:n,replyTo:r}:{content:n}}function iD(e,t=e.id){if(e.role!==`assistant`)return{...e,parts:[...e.parts],metadata:e.metadata?{...e.metadata}:void 0};let n=e.parts.findIndex(e=>e.type===`text`),r=e.metadata?{...e.metadata}:void 0,i=nD(r?.reply_to);if(n<0)return{...e,parts:[...e.parts],metadata:r};let a=e.parts[n];if(!a||a.type!==`text`)return{...e,parts:[...e.parts],metadata:r};let{content:o,replyTo:s}=rD(a.text,t),c=s??i,l=e.parts.flatMap((e,t)=>t!==n||e.type!==`text`?[e]:o.length===0?[]:[{...e,text:o}]);return c?{...e,parts:l,metadata:{...r,reply_to:c}}:{...e,parts:l,metadata:r}}function aD(e){return{...e,parts:[...e.parts],metadata:e.metadata?{...e.metadata}:void 0}}function oD(e){return aD(iD(e))}var sD=`__nextclaw_aborted_tool_call__`;function cD(e){let t=e.error?.trim();return{code:`runtime-error`,message:t&&t.length>0?t:`Agent run failed.`,details:{sessionId:e.sessionId,messageId:e.messageId,threadId:e.threadId,runId:e.runId}}}function lD(e,t){return t.trim()?e.id.startsWith(`tool-`)?!0:e.parts.some(e=>e.type===`tool-invocation`):!1}function uD(e,t,n){for(let[r,i]of e)i===t&&e.set(r,n)}function dD(e,t,n){for(let[r,i]of e)i===n&&(e.delete(r),t.delete(r))}function fD(e,t){for(let n=e.length-1;n>=0;--n){let r=e[n];if(r.type===`tool-invocation`&&r.toolCallId===t)return r}return null}function pD(e,t){return fD(e,t)?.toolName??null}function mD(e,t){let n=[...e];for(let e=n.length-1;e>=0;--e){let r=n[e];if(r.type===`tool-invocation`&&r.toolCallId===t.toolCallId)return n[e]={...r,...t},n}return n.push(t),n}function hD(e){let t=[];return{parts:e.map(e=>e.type!==`tool-invocation`||!e.toolCallId||e.state===`result`||e.state===`cancelled`?e:(t.push(e.toolCallId),{...e,state:`cancelled`})),toolCallIds:t}}var gD=`assistant`,_D=class{messages=[];streamingMessage=null;error=null;activeRun=null;listeners=new Set;toolCallMessageIdByCallId=new Map;toolCallArgsRawByCallId=new Map;lastSettledRunId=null;snapshotCache=null;snapshotVersion=-1;stateVersion=0;getSnapshot=()=>{if(this.snapshotCache&&this.snapshotVersion===this.stateVersion)return this.snapshotCache;let e={messages:this.messages,streamingMessage:this.streamingMessage,error:this.error?{...this.error,details:this.error.details?{...this.error.details}:void 0}:null,activeRun:this.activeRun?{...this.activeRun}:null};return this.snapshotCache=e,this.snapshotVersion=this.stateVersion,e};subscribe=e=>(this.listeners.add(e),()=>this.listeners.delete(e));reset=()=>{this.messages.length===0&&!this.streamingMessage&&!this.error&&!this.activeRun&&this.toolCallMessageIdByCallId.size===0&&this.toolCallArgsRawByCallId.size===0||(this.messages=[],this.streamingMessage=null,this.error=null,this.activeRun=null,this.toolCallMessageIdByCallId.clear(),this.toolCallArgsRawByCallId.clear(),this.lastSettledRunId=null,this.stateVersion+=1,this.notifyListeners())};hydrate=e=>{this.messages=e.messages.map(e=>oD(e)),this.streamingMessage=null,this.error=null,this.activeRun=e.activeRun?{...e.activeRun,sessionId:e.activeRun.sessionId??e.sessionId,abortDisabledReason:e.activeRun.abortDisabledReason??null}:null,this.toolCallMessageIdByCallId.clear(),this.toolCallArgsRawByCallId.clear(),this.lastSettledRunId=null,this.stateVersion+=1,this.notifyListeners()};dispatch=e=>this.dispatchBatch([e]);dispatchBatch=async e=>{if(!e.length)return;let t=this.stateVersion;e.forEach(this.applyEvent),this.stateVersion!==t&&this.notifyListeners()};applyEvent=e=>{switch(e.type){case $E.MessageSent:this.handleMessageSent(e.payload);break;case $E.MessageAbort:this.handleMessageAbort(e.payload);break;case $E.MessageTextStart:this.handleMessageTextStart(e.payload);break;case $E.MessageTextDelta:this.handleMessageTextDelta(e.payload);break;case $E.MessageTextEnd:this.handleMessageTextEnd(e.payload);break;case $E.MessageReasoningStart:this.handleMessageReasoningStart(e.payload);break;case $E.MessageReasoningDelta:this.handleMessageReasoningDelta(e.payload);break;case $E.MessageReasoningEnd:this.handleMessageReasoningEnd(e.payload);break;case $E.MessageToolCallStart:this.handleMessageToolCallStart(e.payload);break;case $E.MessageToolCallArgs:this.handleMessageToolCallArgs(e.payload);break;case $E.MessageToolCallArgsDelta:this.handleMessageToolCallArgsDelta(e.payload);break;case $E.MessageToolCallEnd:this.handleMessageToolCallEnd(e.payload);break;case $E.MessageToolCallResult:this.handleMessageToolCallResult(e.payload);break;case $E.RunStarted:this.handleRunStarted(e.payload);break;case $E.RunFinished:this.handleRunFinished(e.payload);break;case $E.RunError:this.handleRunError(e.payload);break;case $E.RunMetadata:this.handleRunMetadata(e.payload);break;case $E.EndpointError:this.handleEndpointError(e.payload);break;default:break}};handleMessageSent=e=>{this.upsertMessage(e.message),this.setError(null)};handleMessageAbort=e=>{let t=e.messageId?.trim();if(this.clearActiveRun(),this.setError(null),this.streamingMessage&&(!t||this.streamingMessage.id===t)){let e=this.streamingMessage.id,{parts:n,toolCallIds:r}=hD(this.streamingMessage.parts);this.upsertMessage({...this.streamingMessage,status:`final`,parts:n}),this.replaceStreamingMessage(null),t?dD(this.toolCallMessageIdByCallId,this.toolCallArgsRawByCallId,t):dD(this.toolCallMessageIdByCallId,this.toolCallArgsRawByCallId,e),r.forEach(e=>this.toolCallArgsRawByCallId.set(e,sD))}};handleMessageTextStart=e=>{this.ensureStreamingMessage(e.sessionId,e.messageId,`streaming`),this.setError(null)};handleMessageTextDelta=e=>{if(!e.delta)return;let t=this.ensureStreamingMessage(e.sessionId,e.messageId,`streaming`),n=[...t.parts],r=n[n.length-1];r?.type===`text`?n[n.length-1]={type:`text`,text:`${r.text}${e.delta}`}:n.push({type:`text`,text:e.delta}),this.replaceStreamingMessage({...t,parts:n,status:`streaming`})};handleMessageTextEnd=e=>{this.streamingMessage?.id===e.messageId&&this.streamingMessage.status===`streaming`&&this.replaceStreamingMessage({...this.streamingMessage,status:`pending`})};handleMessageReasoningStart=e=>{this.ensureStreamingMessage(e.sessionId,e.messageId,`streaming`)};handleMessageReasoningDelta=e=>{if(!e.delta)return;let t=this.ensureStreamingMessage(e.sessionId,e.messageId,`streaming`),n=[...t.parts],r=n[n.length-1];r?.type===`reasoning`?n[n.length-1]={type:`reasoning`,text:`${r.text}${e.delta}`}:n.push({type:`reasoning`,text:e.delta}),this.replaceStreamingMessage({...t,parts:n,status:`streaming`})};handleMessageReasoningEnd=e=>{this.streamingMessage?.id,e.messageId};handleMessageToolCallStart=e=>{if(this.toolCallArgsRawByCallId.get(e.toolCallId)===`__nextclaw_aborted_tool_call__`)return;let t=this.resolveToolCallTargetMessage(e.sessionId,e.toolCallId,e.messageId);this.toolCallArgsRawByCallId.set(e.toolCallId,``);let n=mD(t.parts,{type:`tool-invocation`,toolCallId:e.toolCallId,toolName:e.toolName,state:`partial-call`,args:``});this.replaceStreamingMessage({...t,parts:n,status:`streaming`}),this.setError(null)};handleMessageToolCallArgs=e=>{this.toolCallArgsRawByCallId.get(e.toolCallId)!==`__nextclaw_aborted_tool_call__`&&(this.toolCallArgsRawByCallId.set(e.toolCallId,e.args),this.applyToolCallArgs(e.sessionId,e.toolCallId,e.args))};handleMessageToolCallArgsDelta=e=>{if(this.toolCallArgsRawByCallId.get(e.toolCallId)===`__nextclaw_aborted_tool_call__`)return;let t=`${this.toolCallArgsRawByCallId.get(e.toolCallId)??``}${e.delta}`;this.toolCallArgsRawByCallId.set(e.toolCallId,t),this.applyToolCallArgs(e.sessionId,e.toolCallId,t,e.messageId)};handleMessageToolCallEnd=e=>{if(this.toolCallArgsRawByCallId.get(e.toolCallId)===`__nextclaw_aborted_tool_call__`)return;let t=this.resolveToolCallTargetMessage(e.sessionId,e.toolCallId),n=this.toolCallArgsRawByCallId.get(e.toolCallId)??``,r=mD(t.parts,{type:`tool-invocation`,toolCallId:e.toolCallId,toolName:pD(t.parts,e.toolCallId)??`unknown`,state:`call`,args:n});this.replaceStreamingMessage({...t,parts:r,status:`streaming`})};handleMessageToolCallResult=e=>{if(this.toolCallArgsRawByCallId.get(e.toolCallId)!==`__nextclaw_aborted_tool_call__`&&!this.updateMessageContainingToolCall(e.toolCallId,(t,n)=>{let r={type:`tool-invocation`,toolCallId:e.toolCallId,toolName:n.toolName,state:`result`,args:n.args,result:e.content,resultContentItems:e.contentItems};return mD(t.parts,r)})){let t=this.resolveToolCallTargetMessage(e.sessionId,e.toolCallId),n=mD(t.parts,{type:`tool-invocation`,toolCallId:e.toolCallId,toolName:`unknown`,state:`result`,result:e.content,resultContentItems:e.contentItems});this.replaceStreamingMessage({...t,parts:n,status:`streaming`})}};handleRunStarted=e=>{this.isSettledRunId(e.runId)||(this.setError(null),this.activeRun={runId:e.runId??null,sessionId:e.sessionId},this.stateVersion+=1)};handleRunFinished=e=>{this.markRunAsSettled(e.runId??this.activeRun?.runId??null),this.settleStreamingMessage(`final`),this.setError(null),this.clearActiveRun()};handleRunError=e=>{this.markRunAsSettled(e.runId??this.activeRun?.runId??null),this.settleStreamingMessage(`error`),this.setError(cD(e)),this.clearActiveRun()};handleRunMetadata=e=>{let t=e.metadata;if(t?.kind===`ready`){let e=t;if(this.isSettledRunId(e.runId))return;this.activeRun={runId:e.runId??this.activeRun?.runId??null,sessionId:e.sessionId??this.activeRun?.sessionId,abortDisabledReason:e.supportsAbort===!1?e.abortDisabledReason??`Unsupported`:null},this.stateVersion+=1}else t?.kind===`final`&&(this.markRunAsSettled(e.runId??this.activeRun?.runId??null),this.clearActiveRun())};handleEndpointError=e=>{if(e.code===`abort-error`){this.handleMessageAbort({sessionId:this.activeRun?.sessionId??this.streamingMessage?.sessionId??``,...this.streamingMessage?.id?{messageId:this.streamingMessage.id}:{}});return}this.settleStreamingMessage(`error`),this.clearActiveRun(),this.setError(e)};applyToolCallArgs=(e,t,n,r)=>{let i=this.resolveToolCallTargetMessage(e,t,r),a=pD(i.parts,t)??`unknown`,o=mD(i.parts,{type:`tool-invocation`,toolCallId:t,toolName:a,state:`partial-call`,args:n});this.replaceStreamingMessage({...i,parts:o,status:`streaming`})};ensureStreamingMessage=(e,t,n)=>{if(this.streamingMessage?.id===t){if(this.streamingMessage.status===n)return this.streamingMessage;let e={...this.streamingMessage,status:n};return this.replaceStreamingMessage(e),e}let r=this.messages.findIndex(e=>e.id===t);if(r>=0){let t=aD(this.messages[r]),i=[...this.messages];i.splice(r,1),this.messages=i,this.stateVersion+=1;let a={...t,sessionId:e,status:n};return this.replaceStreamingMessage(a),a}let i=this.streamingMessage;if(i&&i.id!==t&&i.sessionId===e&&lD(i,t)){let r={...i,id:t,sessionId:e,status:n};return uD(this.toolCallMessageIdByCallId,i.id,t),this.replaceStreamingMessage(r),r}let a={id:t,sessionId:e,role:gD,status:n,parts:[],timestamp:new Date().toISOString()};return this.replaceStreamingMessage(a),a};resolveToolCallTargetMessage=(e,t,n)=>{let r=n?.trim()||this.toolCallMessageIdByCallId.get(t)||this.streamingMessage?.id||`tool-${t}`;return this.toolCallMessageIdByCallId.set(t,r),this.ensureStreamingMessage(e,r,`streaming`)};updateMessageContainingToolCall=(e,t)=>{if(this.streamingMessage){let n=fD(this.streamingMessage.parts,e);if(n){let e=t(this.streamingMessage,n);return this.replaceStreamingMessage({...this.streamingMessage,parts:e}),!0}}for(let n=this.messages.length-1;n>=0;--n){let r=this.messages[n],i=fD(r.parts,e);if(!i)continue;let a=[...this.messages];return a[n]={...r,parts:t(r,i)},this.messages=a,this.stateVersion+=1,!0}return!1};upsertMessage=e=>{let t=oD(e),n=this.messages.findIndex(e=>e.id===t.id);if(n<0){this.messages=[...this.messages,t],this.stateVersion+=1;return}let r=[...this.messages];r[n]=t,this.messages=r,this.stateVersion+=1};replaceStreamingMessage=e=>{!e&&!this.streamingMessage||(this.streamingMessage=e?oD(e):null,this.stateVersion+=1)};setError=e=>{this.error?.code===e?.code&&this.error?.message===e?.message&&this.error?.details===e?.details&&this.error?.cause===e?.cause||(this.error=e?{...e,details:e.details?{...e.details}:void 0}:null,this.stateVersion+=1)};clearActiveRun=()=>{this.activeRun&&(this.activeRun=null,this.stateVersion+=1)};isSettledRunId=e=>!!e?.trim()&&e===this.lastSettledRunId;markRunAsSettled=e=>{this.lastSettledRunId=e?.trim()||null};settleStreamingMessage=e=>{if(!this.streamingMessage)return;let t={...this.streamingMessage,status:e};this.upsertMessage(t),this.replaceStreamingMessage(null),dD(this.toolCallMessageIdByCallId,this.toolCallArgsRawByCallId,t.id)};notifyListeners=()=>{let e=this.getSnapshot();for(let t of this.listeners)t(e)}},vD=16,yD=class{constructor(e){this.dispatchBatch=e,this.queue=[],this.flushTimerId=null,this.isFlushing=!1,this.isDisposed=!1,this.enqueue=e=>{this.isDisposed||(this.queue.push(e),this.scheduleFlush())},this.dispose=()=>{this.isDisposed=!0,this.flushTimerId!==null&&(window.clearTimeout(this.flushTimerId),this.flushTimerId=null),this.queue.length=0},this.scheduleFlush=()=>{this.flushTimerId!==null||this.isFlushing||this.queue.length===0||(this.flushTimerId=window.setTimeout(()=>{this.flushTimerId=null,this.flush()},vD))},this.flush=async()=>{if(!(this.isDisposed||this.isFlushing||this.queue.length===0)){this.isFlushing=!0;try{for(;this.queue.length>0;){let e=this.queue.splice(0);await this.dispatchBatch(e)}}finally{this.isFlushing=!1,this.scheduleFlush()}}}}};function bD(e,t){let n=e.dispatchBatch;return typeof n==`function`?n.call(e,t):t.reduce((t,n)=>t.then(()=>e.dispatch(n)),Promise.resolve())}function xD(e,t){let n=`payload`in e?e.payload:null;return!n||typeof n!=`object`||!(`sessionId`in n)||typeof n.sessionId!=`string`?!0:n.sessionId===t}function SD(e){return e.parts.some(e=>e.type===`text`||e.type===`rich-text`||e.type===`reasoning`?e.text.trim().length>0:!0)}function CD(e,t){if(typeof e==`string`){let n=e.trim();return n?{sessionId:t,message:{id:`user-${Date.now().toString(36)}`,sessionId:t,role:`user`,status:`final`,parts:[{type:`text`,text:n}],timestamp:new Date().toISOString()}}:null}return SD(e.message)?{...e,sessionId:e.sessionId,message:{...e.message,sessionId:e.message.sessionId||e.sessionId}}:null}function wD(e){let t=(0,P.useRef)();return(!t.current||t.current.sessionId!==e)&&(t.current={sessionId:e,manager:new _D}),t.current.manager}function TD({sessionId:e,client:t,manager:n}){let r=(0,P.useSyncExternalStore)(e=>n.subscribe(()=>e()),()=>n.getSnapshot(),()=>n.getSnapshot()),[i,a]=(0,P.useState)(!1);(0,P.useEffect)(()=>{a(!1)},[e]),(0,P.useEffect)(()=>{let r=new yD(e=>bD(n,e)),i=t.subscribe(t=>{xD(t,e)&&r.enqueue(t)});return()=>{i(),r.dispose(),t.stop()}},[t,n,e]);let o=r.streamingMessage?[...r.messages,r.streamingMessage]:r.messages,s=r.activeRun?.runId??null,c=!!r.activeRun;return{snapshot:r,visibleMessages:o,activeRunId:s,isRunning:c,isSending:i,send:async r=>{if(i||c)return;let o=CD(r,e);if(o){a(!0),await n.dispatch({type:$E.MessageSent,payload:{sessionId:e,message:o.message,metadata:o.metadata}});try{await t.send(o)}finally{a(!1)}}},abort:async()=>{r.activeRun&&await t.abort({sessionId:e})},streamRun:async()=>{await t.stop(),await t.stream({sessionId:e})}}}function ED(e){return e instanceof Error?e:Error(String(e))}function DD(e){return e.isHydrating||e.hydratedSessionId!==e.sessionId}function OD({sessionId:e,client:t,loadSeed:n}){let r=wD(e),i=TD({sessionId:e,client:t,manager:r}),[a,o]=(0,P.useState)(!0),[s,c]=(0,P.useState)(null),[l,u]=(0,P.useState)(null),d=(0,P.useRef)({requestId:0,controller:null}),f=(0,P.useCallback)(async()=>{d.current.controller?.abort();let i=new AbortController,a=d.current.requestId+1;d.current={requestId:a,controller:i},await t.stop(),r.reset(),c(null),o(!0);try{let s=await n(e,i.signal);if(i.signal.aborted||d.current.requestId!==a)return;r.hydrate({sessionId:e,messages:s.messages,activeRun:s.status===`running`?{runId:null,sessionId:e,abortDisabledReason:null}:null}),c(null),u(e),o(!1),t.stream({sessionId:e}).catch(e=>{d.current.requestId===a&&c(ED(e))})}catch(t){if(i.signal.aborted||d.current.requestId!==a)return;c(ED(t)),u(e),o(!1)}finally{d.current.controller===i&&(d.current.controller=null)}},[t,n,r,e]);return(0,P.useEffect)(()=>(f(),()=>{d.current.controller?.abort(),d.current.controller=null}),[f]),{...i,isHydrating:DD({sessionId:e,hydratedSessionId:l,isHydrating:a}),hydrateError:s}}var kD=200*1024*1024,AD=`application/octet-stream`;function jD(e){let t=e.type.trim().toLowerCase();return t.length>0?t:AD}function MD(e,t){let n=t.acceptedMimeTypes&&t.acceptedMimeTypes.length>0?new Set(t.acceptedMimeTypes.map(e=>e.trim().toLowerCase())):null,r=t.maxBytes??209715200,i=jD(e);return n&&!n.has(i)?{ok:!1,rejected:{fileName:e.name,mimeType:i,sizeBytes:e.size,reason:`unsupported-type`}}:e.size>r?{ok:!1,rejected:{fileName:e.name,mimeType:i,sizeBytes:e.size,reason:`too-large`}}:{ok:!0,mimeType:i}}function ND(e){let t=e.parts&&e.parts.length>0?e.parts.map(e=>structuredClone(e)):[...e.text?.trim()??``?[{type:`text`,text:e.text.trim()}]:[],...(e.attachments??[]).map(e=>({type:`file`,name:e.name,mimeType:e.mimeType,...e.assetUri?.trim()?{assetUri:e.assetUri.trim()}:{},...e.url?.trim()?{url:e.url.trim()}:{},...e.contentBase64?.trim()?{contentBase64:e.contentBase64.trim()}:{},sizeBytes:e.sizeBytes}))];if(t.length===0)return null;let n=e.timestamp??new Date().toISOString(),r=e.messageId??`user-${Date.now().toString(36)}`;return{sessionId:e.sessionId,message:{id:r,sessionId:e.sessionId,role:`user`,status:`final`,parts:t,timestamp:n,...e.metadata?{metadata:e.metadata}:{}},...e.metadata?{metadata:e.metadata}:{}}}async function PD(e,t){let n=[],r=[];for(let i of e){let e=MD(i,t);if(!e.ok){r.push(e.rejected);continue}n.push(i)}if(n.length===0)return{attachments:[],rejected:r};try{return{attachments:await t.uploadBatch(n),rejected:r}}catch{return r.push(...n.map(e=>({fileName:e.name,mimeType:jD(e),sizeBytes:e.size,reason:`read-failed`}))),{attachments:[],rejected:r}}}function FD(e){let t=e.modelLabel.trim(),n=e.providerLabel.trim();return n?`${n}/${t}`:t}function ID(e){let t=[];for(let n of[`off`,...e])t.includes(n)||t.push(n);return t}function LD(e){return!e.isModelOptionsLoading&&!e.isModelOptionsEmpty?null:e.isModelOptionsLoading?{tone:`neutral`,loading:!0}:{tone:`warning`,text:e.texts.noModelOptionsLabel,actionLabel:e.texts.configureProviderLabel,onAction:e.onGoToProviders}}function RD({modelOptions:e,recentModelValues:t,selectedModel:n,isModelOptionsLoading:r,hasModelOptions:i,onValueChange:a,texts:o}){let s=e.find(e=>e.value===n)??e[0],c=i?s?.value:void 0,l=new Set(t??[]),u=new Map(e.map(e=>[e.value,e])),d=(t??[]).map(e=>u.get(e)).filter(e=>!!e),f=e.filter(e=>!l.has(e.value)),p=d.length>0?[{key:`recent-models`,label:o.recentModelsLabel,options:d.map(e=>({value:e.value,label:FD(e)}))},{key:`all-models`,label:o.allModelsLabel,options:f.map(e=>({value:e.value,label:FD(e)}))}].filter(e=>e.options.length>0):void 0;return{key:`model`,value:c,placeholder:o.modelSelectPlaceholder,selectedLabel:s?FD(s):void 0,icon:`sparkles`,options:e.map(e=>({value:e.value,label:FD(e)})),groups:p,disabled:!i,loading:r,emptyLabel:o.modelNoOptionsLabel,onValueChange:a}}function zD(e){if(e.supportedLevels.length===0)return null;let t=ID(e.supportedLevels),n=t.includes(`off`)?`off`:t[0],r=e.selectedThinkingLevel&&t.includes(e.selectedThinkingLevel)&&e.selectedThinkingLevel||e.defaultThinkingLevel&&t.includes(e.defaultThinkingLevel)&&e.defaultThinkingLevel||n;return{key:`thinking`,value:r,placeholder:e.texts.thinkingLabels[r],selectedLabel:e.texts.thinkingLabels[r],icon:`brain`,options:t.map(t=>({value:t,label:e.texts.thinkingLabels[t]})),onValueChange:t=>e.onValueChange(t)}}var BD={exactSpec:1200,exactLabel:1150,prefixSpec:1e3,prefixLabel:950,prefixToken:900,containsSpec:800,containsLabel:760,containsDescription:500,subsequence:300,fallback:1};function VD(e){return(e??``).trim().toLowerCase()}function HD(e,t){if(!e||!t)return!1;let n=0;for(let r of t)if(r===e[n]&&(n+=1,n>=e.length))return!0;return!1}function UD(e,t){let n=VD(t);if(!n)return BD.fallback;let r=VD(e.key),i=VD(e.label||e.key),a=VD(`${e.descriptionZh??``} ${e.description??``}`),o=i.split(/[\s/_-]+/).filter(Boolean);return r===n?BD.exactSpec:i===n?BD.exactLabel:r.startsWith(n)?BD.prefixSpec:i.startsWith(n)?BD.prefixLabel:o.some(e=>e.startsWith(n))?BD.prefixToken:r.includes(n)?BD.containsSpec:i.includes(n)?BD.containsLabel:a.includes(n)?BD.containsDescription:HD(n,i)||HD(n,r)?BD.subsequence:0}function WD(e){return e>=BD.exactLabel?4:e>=BD.prefixToken?3:e>=BD.containsLabel?2:e>0?1:0}function GD(e){return new Map(e.map((e,t)=>[e,t]))}function KD(e,t){let n=GD(t),r=[],i=[];for(let t of e){if(n.has(t.key)){r.push(t);continue}i.push(t)}return r.sort((e,t)=>(n.get(e.key)??1/0)-(n.get(t.key)??1/0)),[...r,...i]}function qD(e,t,n,r=[]){let i=new Intl.Collator(void 0,{sensitivity:`base`,numeric:!0}),a=GD(r);return e.map((e,n)=>({record:e,order:n,score:UD(e,t)})).filter(e=>e.score>0).sort((e,t)=>{let n=WD(e.score),r=WD(t.score);if(r!==n)return r-n;let o=a.get(e.record.key)??1/0,s=a.get(t.record.key)??1/0;if(o!==s)return o-s;if(t.score!==e.score)return t.score-e.score;let c=(e.record.label||e.record.key).trim(),l=(t.record.label||t.record.key).trim(),u=i.compare(c,l);return u===0?e.order-t.order:u}).map(({record:e})=>({key:`skill:${e.key}`,title:e.label||e.key,subtitle:n.slashSkillSubtitle,description:(e.descriptionZh??e.description??``).trim()||n.noSkillDescription,detailLines:[`${n.slashSkillSpecLabel}: ${e.key}`,...e.scopeLabel?[`${n.slashSkillScopeLabel}: ${e.scopeLabel}`]:[]],value:e.key}))}function JD(e){return e.map(e=>({key:e.key,label:e.label,description:e.descriptionZh||e.description||``,badgeLabel:e.badgeLabel}))}function YD(e){let t=KD(e.skillRecords,e.recentSkillValues??[]),n=new Set(e.groupedRecentSkillValues??[]),r=JD(t.filter(e=>n.has(e.key))),i=JD(t.filter(e=>!n.has(e.key)));return{title:e.texts.title,searchPlaceholder:e.texts.searchPlaceholder,emptyLabel:e.texts.emptyLabel,loadingLabel:e.texts.loadingLabel,isLoading:e.isLoading,manageLabel:e.texts.manageLabel,manageHref:`/marketplace/skills`,options:JD(t),groups:r.length>0?[{key:`recent-skills`,label:e.texts.recentSkillsLabel,options:r},{key:`all-skills`,label:e.texts.allSkillsLabel,options:i}].filter(e=>e.options.length>0):void 0,selectedKeys:e.selectedSkills,onSelectedKeysChange:e.onSelectedKeysChange}}var XD=(0,P.createContext)(null);function ZD({presenter:e,children:t}){return(0,N.jsx)(XD.Provider,{value:e,children:t})}function QD(){let e=(0,P.useContext)(XD);if(!e)throw Error(`usePresenter must be used inside ChatPresenterProvider`);return e}var $D=`$`;function eO(e,t){if(t.length===0)return e;let n=e[e.length-1];return n?.type===`text`?[...e.slice(0,-1),{...n,text:n.text+t}]:[...e,{type:`text`,text:t}]}function tO(){return xp()}function nO(e){return Sp(e)}function rO(e){return Tp(e)}function iO(e){return Ep(e,`skill`)}function aO(e){return Ep(e,`file`)}function oO(e,t,n){let r=new Set(t),i=Np(e,e=>e.tokenKind===`skill`&&!r.has(e.tokenKey)),a=Ep(i,`skill`),o=new Map(n.map(e=>[e.ref,e])),s=t.filter(e=>!a.includes(e)).map(e=>yp({tokenKind:`skill`,tokenKey:e,label:o.get(e)?.name||e}));return s.length===0?i:Cp([...i,...s])}function sO(e,t){let n=new Set(t.map(e=>e.id));return Np(e,e=>e.tokenKind===`file`&&!n.has(e.tokenKey))}function cO(e,t){let n=new Set(aO(e));return t.filter(e=>n.has(e.id))}function lO(e,t){let n=new Map(t.map(e=>[e.id,e])),r=[];for(let t of e){if(t.type===`text`){r=eO(r,t.text);continue}if(t.tokenKind===`skill`){r=eO(r,`${$D}${t.tokenKey}`);continue}if(t.tokenKind!==`file`)continue;let e=n.get(t.tokenKey);e&&r.push({type:`file`,name:e.name,mimeType:e.mimeType,...e.assetUri?{assetUri:e.assetUri}:{},...e.url?{url:e.url}:{},...e.contentBase64?{contentBase64:e.contentBase64}:{},sizeBytes:e.sizeBytes})}return r}var uO={isProviderStateResolved:!1,composerNodes:tO(),attachments:[],draft:``,pendingSessionType:`native`,pendingProjectRoot:null,pendingProjectRootSessionKey:null,defaultSessionType:`native`,canStopGeneration:!1,stopDisabledReason:null,sendError:null,isSending:!1,modelOptions:[],selectedModel:``,selectedThinkingLevel:null,sessionTypeOptions:[],selectedSessionType:void 0,stopSupported:!1,stopReason:void 0,canEditSessionType:!1,sessionTypeUnavailable:!1,skillRecords:[],isSkillsLoading:!1,selectedSkills:[]},Q=C(e=>({snapshot:uO,setSnapshot:t=>e(e=>({snapshot:{...e.snapshot,...t}}))})),dO=class{constructor(e){this.options=e,this.read=()=>{let e=this.getStorage();if(!e)return[];try{return this.normalizeList(JSON.parse(e.getItem(this.options.storageKey)??`[]`))}catch{return[]}},this.remember=e=>{let t=this.normalizeValue(e);if(!t)return this.read();let n=[t,...this.read().filter(e=>e!==t)].slice(0,this.options.limit);return this.write(n),n},this.resolveVisible=e=>{let t=this.normalizeList(e.availableValues,1/0);if(t.length<=e.minAvailableCount)return[];let n=new Set(t),r=[],i=Math.max(1,e.limit??this.options.limit);for(let e of this.read())if(!(!n.has(e)||r.includes(e))&&(r.push(e),r.length>=i))break;return r},this.write=e=>{let t=this.getStorage();if(t)try{t.setItem(this.options.storageKey,JSON.stringify(this.normalizeList(e)))}catch{}},this.getStorage=()=>Object.prototype.hasOwnProperty.call(this.options,`storage`)?this.options.storage??null:typeof window>`u`?null:window.localStorage,this.normalizeList=(e,t=this.options.limit)=>{if(!Array.isArray(e))return[];let n=[];for(let r of e){let e=this.normalizeValue(r);if(!(!e||n.includes(e))&&(n.push(e),n.length>=t))break}return n},this.normalizeValue=e=>{if(typeof e!=`string`)return null;let t=e.trim();return t.length>0?t:null}}},fO=new dO({storageKey:`nextclaw.chat.recent-models`,limit:3}),pO=new dO({storageKey:`nextclaw.chat.recent-skills`,limit:5});function mO(e){return e.modelOptions.length>0}function hO(e){return!e.isProviderStateResolved&&!mO(e)}function gO(e){return e.isProviderStateResolved&&!mO(e)}function _O(e){return!1}function vO(e){let{hasSendableDraft:t,isRuntimeBlocked:n}=e;return n||!t}function yO(){return{off:o(`chatThinkingLevelOff`),minimal:o(`chatThinkingLevelMinimal`),low:o(`chatThinkingLevelLow`),medium:o(`chatThinkingLevelMedium`),high:o(`chatThinkingLevelHigh`),adaptive:o(`chatThinkingLevelAdaptive`),xhigh:o(`chatThinkingLevelXhigh`)}}function bO(e,t){return e.map(e=>({key:e.ref,label:e.name,scopeLabel:t[e.scope],description:e.description,descriptionZh:e.descriptionZh,badgeLabel:t[e.scope]}))}function xO(e){return e.map(e=>({value:e.value,modelLabel:e.modelLabel,providerLabel:e.providerLabel,thinkingCapability:e.thinkingCapability?{supported:e.thinkingCapability.supported,default:e.thinkingCapability.default??null}:null}))}function SO(e){return{skillScopeLabels:(0,P.useMemo)(()=>({builtin:o(`chatSkillScopeBuiltin`),project:o(`chatSkillScopeProject`),workspace:o(`chatSkillScopeWorkspace`)}),[e]),slashTexts:(0,P.useMemo)(()=>({slashSkillSubtitle:o(`chatSlashTypeSkill`),slashSkillSpecLabel:o(`chatSlashSkillSpec`),slashSkillScopeLabel:o(`chatSlashSkillScope`),noSkillDescription:o(`chatSkillsPickerNoDescription`)}),[e]),recentModelsLabel:o(`chatPickerRecentModels`),allModelsLabel:o(`chatPickerAllModels`),recentSkillsLabel:o(`chatPickerRecent`),allSkillsLabel:o(`chatPickerAllSkills`)}}function CO(e,t){let n=(0,P.useMemo)(()=>bO(e.skillRecords,t),[e.skillRecords,t]),r=(0,P.useMemo)(()=>xO(e.modelOptions),[e.modelOptions]);return{skillRecords:n,modelRecords:r,recentModelValues:fO.resolveVisible({availableValues:r.map(e=>e.value),minAvailableCount:5}),recentSkillValues:pO.resolveVisible({availableValues:n.map(e=>e.key),minAvailableCount:0}),recentSkillGroupValues:pO.resolveVisible({availableValues:n.map(e=>e.key),minAvailableCount:4})}}function wO(e){let{attachmentSupported:t,inputBarRef:n,presenter:r}=e,i=(0,P.useCallback)(e=>{if(e===`unsupported-type`){y.error(o(`chatInputAttachmentUnsupported`));return}if(e===`too-large`){y.error(o(`chatInputAttachmentTooLarge`).replace(`{maxMb}`,String(kD/(1024*1024))));return}y.error(o(`chatInputAttachmentReadFailed`))},[]),a=(0,P.useCallback)(async e=>{if(!t||e.length===0)return;let a=await PD(e,{uploadBatch:S});if(a.attachments.length>0){let e=r.chatInputManager.addAttachments?.(a.attachments)??[];e.length>0&&n.current?.insertFileTokens(e.map(e=>({tokenKey:e.id,label:e.name})))}a.rejected.length>0&&i(a.rejected[0].reason)},[t,n,r.chatInputManager,i]);return{handleFilesAdd:a,handleFileInputChange:(0,P.useCallback)(async e=>{let t=Array.from(e.target.files??[]);e.currentTarget.value=``,await a(t)},[a])}}function TO(e){let{allModelsLabel:t,hasModelOptions:n,isModelOptionsLoading:r,modelRecords:i,presenter:a,recentModelValues:s,recentModelsLabel:c,selectedModel:l,selectedThinkingLevel:u,thinkingSupportedLevels:d,thinkingDefaultLevel:f}=e;return[RD({modelOptions:i,recentModelValues:s,selectedModel:l,isModelOptionsLoading:r,hasModelOptions:n,onValueChange:a.chatInputManager.selectModel,texts:{modelSelectPlaceholder:o(`chatSelectModel`),modelNoOptionsLabel:o(`chatModelNoOptions`),recentModelsLabel:c,allModelsLabel:t}}),zD({supportedLevels:d,selectedThinkingLevel:u,defaultThinkingLevel:f,onValueChange:e=>a.chatInputManager.selectThinkingLevel(e),texts:{thinkingLabels:yO()}})].filter(e=>e!==null)}function EO(e){let{allSkillsLabel:t,presenter:n,recentSkillGroupValues:r,recentSkillValues:i,recentSkillsLabel:a,skillRecords:s,snapshot:c}=e;return YD({skillRecords:s,recentSkillValues:i,groupedRecentSkillValues:r,selectedSkills:c.selectedSkills,isLoading:c.isSkillsLoading,onSelectedKeysChange:n.chatInputManager.selectSkills,texts:{title:o(`chatSkillsPickerTitle`),searchPlaceholder:o(`chatSkillsPickerSearchPlaceholder`),emptyLabel:o(`chatSkillsPickerEmpty`),loadingLabel:o(`sessionsLoading`),manageLabel:o(`chatSkillsPickerManage`),recentSkillsLabel:a,allSkillsLabel:t}})}function DO(){let e=QD(),{language:t}=ut(),{isMobile:n}=ft(),r=Q(e=>e.snapshot),i=k(),[a,s]=(0,P.useState)(null),c=(0,P.useRef)(null),l=(0,P.useRef)(null),u=SO(t),{skillRecords:d,modelRecords:f,recentModelValues:p,recentSkillValues:m,recentSkillGroupValues:h}=CO(r,u.skillScopeLabels),g=mO(r),_=hO(r),v=gO(r),y=_O(r),b=typeof e.chatInputManager.addAttachments==`function`,x=o(v?`chatModelNoOptions`:n?`chatInputPlaceholderCompact`:`chatInputPlaceholder`),S=(0,P.useMemo)(()=>qD(d,a??``,u.slashTexts,m),[u.slashTexts,m,d,a]),C=f.find(e=>e.value===r.selectedModel),w=C?.thinkingCapability?.supported??[],T=r.stopDisabledReason===`__preparing__`?o(`chatStopPreparing`):r.stopDisabledReason?.trim()||o(`chatStopUnavailable`),{handleFilesAdd:E,handleFileInputChange:D}=wO({attachmentSupported:b,inputBarRef:c,presenter:e}),O=TO({allModelsLabel:u.allModelsLabel,hasModelOptions:g,isModelOptionsLoading:_,modelRecords:f,presenter:e,recentModelValues:p,recentModelsLabel:u.recentModelsLabel,selectedModel:r.selectedModel,selectedThinkingLevel:r.selectedThinkingLevel,thinkingSupportedLevels:w,thinkingDefaultLevel:C?.thinkingCapability?.default??null}),ee=EO({allSkillsLabel:u.allSkillsLabel,presenter:e,recentSkillGroupValues:h,recentSkillValues:m,recentSkillsLabel:u.recentSkillsLabel,skillRecords:d,snapshot:r}),te=r.draft.trim().length>0||r.attachments.length>0||iO(r.composerNodes).length>0;return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(pm,{ref:c,composer:{nodes:r.composerNodes,placeholder:x,disabled:y,onNodesChange:e.chatInputManager.setComposerNodes,...b?{onFilesAdd:E}:{},onSlashQueryChange:s},slashMenu:{isLoading:r.isSkillsLoading,items:S,onSelectItem:t=>{t.value&&e.chatInputManager.rememberSkillSelection(t.value)},texts:{slashLoadingLabel:o(`chatSlashLoading`),slashSectionLabel:o(`chatSlashSectionSkills`),slashEmptyLabel:o(`chatSlashNoResult`),slashHintLabel:o(`chatSlashHint`),slashSkillHintLabel:o(`chatSlashSkillHint`)}},hint:LD({isModelOptionsLoading:_,isModelOptionsEmpty:v,onGoToProviders:e.chatInputManager.goToProviders,texts:{noModelOptionsLabel:o(`chatModelNoOptions`),configureProviderLabel:o(`chatGoConfigureProvider`)}}),toolbar:{selects:O,accessories:[{key:`attach`,label:o(`chatInputAttach`),icon:`paperclip`,iconOnly:!0,disabled:!b||y||r.isSending,...b?{onClick:()=>l.current?.click()}:{tooltip:o(`chatInputAttachComingSoon`)}}],skillPicker:ee,actions:{sendError:i.isBlocked?null:r.sendError,isSending:r.isSending,canStopGeneration:r.canStopGeneration,sendDisabled:vO({snapshot:r,hasSendableDraft:te,isRuntimeBlocked:i.isBlocked}),stopDisabled:!r.canStopGeneration,stopHint:T,sendButtonLabel:o(`chatSend`),stopButtonLabel:o(`chatStop`),onSend:e.chatInputManager.send,onStop:e.chatInputManager.stop}}}),b?(0,N.jsx)(`input`,{ref:l,type:`file`,multiple:!0,className:`hidden`,onChange:D}):null]})}var OO=[`cmd`,`command`,`query`,`q`,`path`,`url`,`to`,`channel`,`agentId`,`sessionKey`];function kO(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function AO(e,t=2400){return e.length<=t?e:`${e.slice(0,t)}\n…`}function jO(e,t=120){let n=e.replace(/\s+/g,` `).trim();return n.length<=t?n:t<=1?`…`:`${n.slice(0,t-1)}…`}function MO(e){if(typeof e==`string`)return e;if(typeof e==`number`||typeof e==`boolean`)return String(e);if(e==null)return``;try{return AO(JSON.stringify(e,null,2))}catch{return String(e)}}function NO(e){if(kO(e))return e;if(typeof e!=`string`)return null;let t=e.trim();if(!t.startsWith(`{`)&&!t.startsWith(`[`))return null;try{let e=JSON.parse(t);return kO(e)?e:null}catch{return null}}function PO(e){let t=NO(e);if(!t){let t=MO(e).trim();return t?jO(t,120):void 0}let n=[];for(let e of OO){let r=t[e];if(typeof r==`string`&&r.trim()?n.push(`${e}: ${r.trim()}`):(typeof r==`number`||typeof r==`boolean`)&&n.push(`${e}: ${String(r)}`),n.length>=2)break}return n.length>0?jO(n.join(` · `),120):jO(MO(t),140)}var FO=`ui_inline_tokens`,IO=`$`;function LO(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function RO(e){if(typeof e!=`string`)return null;let t=e.trim();return t.length>0?t:null}function zO(e){let t=new Set,n=[];for(let r of e){let e=`${r.kind}:${r.key}:${r.rawText}`;t.has(e)||(t.add(e),n.push(r))}return n}function BO(e){let t=[];for(let n of e)n.type!==`token`||n.tokenKind!==`skill`||t.push({kind:`skill`,key:n.tokenKey,label:n.label,rawText:`${IO}${n.tokenKey}`});return zO(t)}function VO(e){let t=e?.[FO];if(!Array.isArray(t))return[];let n=[];for(let e of t){if(!LO(e))continue;let t=RO(e.kind),r=RO(e.key),i=RO(e.rawText);!t||!r||!i||n.push({kind:t,key:r,rawText:i,label:RO(e.label)??r})}return zO(n)}function HO(e,t){if(e.length===0||t.length===0)return e.length===0?[]:[{type:`text`,text:e}];let n=[...t].sort((e,t)=>t.rawText.length-e.rawText.length),r=[],i=0;for(;i<e.length;){let t=null;for(let r of n)if(e.startsWith(r.rawText,i)){t=r;break}if(!t){let t=i+1;for(;t<e.length&&!n.some(n=>e.startsWith(n.rawText,t));)t+=1;r.push({type:`text`,text:e.slice(i,t)}),i=t;continue}r.push({type:`token`,token:t}),i+=t.rawText.length}return r}var UO=/\u200B|\u200C|\u200D|\u2060|\uFEFF/g;function WO(e){let t=e.trim();return t&&t.replace(UO,``).trim()?t:null}function GO(e){return e.replace(UO,``).trim().length>0}function KO(e,t){let n=HO(e,t);if(n.length===0)return null;let r=[],i=!1;for(let e of n){if(e.type===`token`){i=!0,r.push({type:`token`,token:{kind:e.token.kind,key:e.token.key,label:e.token.label,rawText:e.token.rawText}});continue}e.text.length!==0&&(GO(e.text)&&(i=!0),r.push({type:`markdown`,text:e.text}))}return i?r:null}function qO(e,t){let n=KO(e.text,t);if(n&&n.some(e=>e.type===`token`))return{type:`inline-content`,segments:n};let r=WO(e.text);return r?{type:`markdown`,text:r}:null}function JO(e){return WO(e)}function YO(e){return typeof e==`object`&&!!e}function XO(e){if(typeof e!=`string`)return null;let t=e.trim();return t.length>0?t:null}function ZO(e){if(typeof e==`number`&&Number.isFinite(e)&&e>=0)return e;if(typeof e!=`string`)return null;let t=e.trim();if(!t)return null;let n=Number(t);return Number.isFinite(n)&&n>=0?n:null}function QO(e){return YO(e)?`command`in e||`workingDir`in e||`exitCode`in e||`stdout`in e||`stderr`in e||`aggregated_output`in e||`combinedOutput`in e:!1}function $O(e,t){if(!YO(e))return null;let n=YO(e.asset)?e.asset:Array.isArray(e.assets)&&e.assets.length>0&&YO(e.assets[0])?e.assets[0]:null;if(!n)return null;let r=XO(n.url),i=XO(n.mimeType)??`application/octet-stream`,a=ZO(n.sizeBytes);return r?{type:`file`,file:{label:XO(n.name)??(i.startsWith(`image/`)?t.imageAttachmentLabel:t.fileAttachmentLabel),mimeType:i,dataUrl:r,...a==null?{}:{sizeBytes:a},isImage:i.startsWith(`image/`)}}:null}function ek(e,t){return{kind:e.kind,toolName:e.name,...`agentId`in e&&e.agentId?{agentId:e.agentId}:{},summary:e.detail,inputLabel:t.toolInputLabel,input:`input`in e&&typeof e.input==`string`?e.input:void 0,output:e.text,outputData:e.outputData,hasResult:!!e.hasResult,statusTone:e.statusTone,statusLabel:e.statusLabel,titleLabel:e.kind===`call`?t.toolCallLabel:t.toolResultLabel,outputLabel:t.toolOutputLabel,emptyLabel:t.toolNoOutputLabel,...`action`in e&&e.action?{action:e.action}:{},...`fileOperation`in e&&e.fileOperation?{fileOperation:e.fileOperation}:{}}}function tk(e){let t=typeof e.status==`string`?e.status.trim().toLowerCase():``,n=typeof e.error==`string`&&e.error.trim().length>0;return e.cancelled===!0||t===`cancelled`?{kind:`result`,hasResult:!0,statusTone:`cancelled`,statusLabel:e.texts.toolStatusCancelledLabel}:n||t===`error`?{kind:`result`,hasResult:!0,statusTone:`error`,statusLabel:e.texts.toolStatusFailedLabel}:t===`result`||e.result!=null?{kind:`result`,hasResult:!0,statusTone:`success`,statusLabel:e.texts.toolStatusCompletedLabel}:{kind:`call`,hasResult:!1,statusTone:`running`,statusLabel:e.texts.toolStatusRunningLabel}}function nk(e){if(typeof e!=`string`)return e;let t=e.trim();if(!t.startsWith(`{`)&&!t.startsWith(`[`))return e;try{return JSON.parse(t)}catch{return e}}function rk(e,t){return MO(t??nk(e)).trim()||void 0}function ik(e){return typeof e==`object`&&!!e}function ak(e){if(typeof e!=`string`)return e;let t=e.trim();if(!t.startsWith(`{`)&&!t.startsWith(`[`))return e;try{return JSON.parse(t)}catch{return e}}function ok(e){if(typeof e!=`string`)return null;let t=e.trim();return t.length>0?t:null}function sk(e){let t=ak(e);return ik(t)?ok(t.agentId):null}function ck(e){return sk(e.parsedArgs)??sk(e.args)??sk(e.result)}var lk=12e3,uk=/^@@ -(\d+)(?:,\d+)? \+(\d+)(?:,\d+)? @@/;function dk(e){let t=e.replace(/\r\n/g,`
|
|
51
|
+
`),[e.parts]),{copied:r,copy:i}=tw({text:n});return n?(0,N.jsx)(`button`,{type:`button`,onClick:()=>void i(),className:`text-gray-400 hover:text-gray-600 transition-colors p-1 rounded-md hover:bg-gray-100 flex items-center justify-center`,"aria-label":r?t.copiedMessageLabel:t.copyMessageLabel,title:r?t.copiedMessageLabel:t.copyMessageLabel,children:r?(0,N.jsx)(Be,{className:`h-3.5 w-3.5`}):(0,N.jsx)(Rt,{className:`h-3.5 w-3.5`})}):null}var JE=/\u200B|\u200C|\u200D|\u2060|\uFEFF/g;function YE(e){let t=e.trim();return t?t.replace(JE,``).trim().length>0:!1}function XE(e){return e.parts.some(e=>e.type===`markdown`||e.type===`reasoning`?YE(e.text):!0)}function ZE(){return(0,N.jsx)(`div`,{className:`flex items-center gap-2 px-1 py-0.5 text-[11px] text-gray-400`,children:(0,N.jsxs)(`div`,{className:`flex space-x-1 items-center h-full`,children:[(0,N.jsx)(`div`,{className:`h-1.5 w-1.5 rounded-full bg-gray-400 animate-pulse`}),(0,N.jsx)(`div`,{className:`h-1.5 w-1.5 rounded-full bg-gray-400 animate-pulse [animation-delay:200ms]`}),(0,N.jsx)(`div`,{className:`h-1.5 w-1.5 rounded-full bg-gray-400 animate-pulse [animation-delay:400ms]`})]})})}function QE(e){let t=e.messages.filter(XE),n=t.some(e=>e.role===`assistant`&&(e.status===`streaming`||e.status===`pending`));return(0,N.jsxs)(`div`,{className:F(`space-y-5`,e.className),children:[t.map(t=>{let n=t.role===`user`,r=!n&&(t.status===`streaming`||t.status===`pending`);return(0,N.jsxs)(`div`,{className:F(`flex gap-3`,n?`justify-end`:`justify-start`),children:[n?null:(0,N.jsx)(mm,{role:t.role}),(0,N.jsxs)(`div`,{className:F(`w-fit max-w-[92%] space-y-2`,n&&`flex flex-col items-end`),children:[(0,N.jsx)(GE,{message:t,texts:e.texts,onToolAction:e.onToolAction,onFileOpen:e.onFileOpen,renderToolAgent:e.renderToolAgent}),(0,N.jsx)(`div`,{className:F(`flex items-center gap-2`,n&&`justify-end`),children:r?(0,N.jsx)(ZE,{}):(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(KE,{roleLabel:t.roleLabel,timestampLabel:t.timestampLabel,isUser:n}),n?null:(0,N.jsx)(qE,{message:t,texts:e.texts})]})})]}),n?(0,N.jsx)(mm,{role:t.role}):null]},t.id)}),e.isSending&&!n?(0,N.jsxs)(`div`,{className:`flex justify-start gap-3`,children:[(0,N.jsx)(mm,{role:`assistant`}),(0,N.jsx)(`div`,{className:`rounded-2xl border border-gray-200 bg-white px-4 py-3 text-sm text-gray-500 shadow-sm`,children:e.texts.typingLabel})]}):null]})}var $E=function(e){return e.EndpointReady=`endpoint.ready`,e.EndpointError=`endpoint.error`,e.MessageRequest=`message.request`,e.MessageStreamRequest=`message.stream-request`,e.MessageSent=`message.sent`,e.MessageAccepted=`message.accepted`,e.MessageIncoming=`message.incoming`,e.MessageCompleted=`message.completed`,e.MessageFailed=`message.failed`,e.MessageAbort=`message.abort`,e.MessageTextStart=`message.text-start`,e.MessageTextDelta=`message.text-delta`,e.MessageTextEnd=`message.text-end`,e.MessageReasoningStart=`message.reasoning-start`,e.MessageReasoningDelta=`message.reasoning-delta`,e.MessageReasoningEnd=`message.reasoning-end`,e.MessageToolCallStart=`message.tool-call-start`,e.MessageToolCallArgs=`message.tool-call-args`,e.MessageToolCallArgsDelta=`message.tool-call-args-delta`,e.MessageToolCallEnd=`message.tool-call-end`,e.MessageToolCallResult=`message.tool-call-result`,e.MessageRead=`message.read`,e.MessageDelivered=`message.delivered`,e.MessageRecalled=`message.recalled`,e.MessageReaction=`message.reaction`,e.RunStarted=`run.started`,e.RunFinished=`run.finished`,e.RunError=`run.error`,e.RunMetadata=`run.metadata`,e.ContextWindowUpdated=`context-window.updated`,e.TypingStart=`typing.start`,e.TypingEnd=`typing.end`,e.PresenceUpdated=`presence.updated`,e}({}),eD=/\[\[\s*reply_to_current\s*\]\]/gi,tD=/\[\[\s*reply_to\s*:\s*([^\]]+?)\s*\]\]/i;function nD(e){if(typeof e!=`string`)return;let t=e.trim();return t.length>0?t:void 0}function rD(e,t){let n=e,r;eD.test(n)&&(r=nD(t),n=n.replace(eD,``).trim());let i=n.match(tD)?.[1];return i&&(r=nD(i),n=n.replace(tD,``).trim()),r?{content:n,replyTo:r}:{content:n}}function iD(e,t=e.id){if(e.role!==`assistant`)return{...e,parts:[...e.parts],metadata:e.metadata?{...e.metadata}:void 0};let n=e.parts.findIndex(e=>e.type===`text`),r=e.metadata?{...e.metadata}:void 0,i=nD(r?.reply_to);if(n<0)return{...e,parts:[...e.parts],metadata:r};let a=e.parts[n];if(!a||a.type!==`text`)return{...e,parts:[...e.parts],metadata:r};let{content:o,replyTo:s}=rD(a.text,t),c=s??i,l=e.parts.flatMap((e,t)=>t!==n||e.type!==`text`?[e]:o.length===0?[]:[{...e,text:o}]);return c?{...e,parts:l,metadata:{...r,reply_to:c}}:{...e,parts:l,metadata:r}}function aD(e){return{...e,parts:[...e.parts],metadata:e.metadata?{...e.metadata}:void 0}}function oD(e){return aD(iD(e))}var sD=`__nextclaw_aborted_tool_call__`;function cD(e){let t=e.error?.trim();return{code:`runtime-error`,message:t&&t.length>0?t:`Agent run failed.`,details:{sessionId:e.sessionId,messageId:e.messageId,threadId:e.threadId,runId:e.runId}}}function lD(e,t){return t.trim()?e.id.startsWith(`tool-`)?!0:e.parts.some(e=>e.type===`tool-invocation`):!1}function uD(e,t,n){for(let[r,i]of e)i===t&&e.set(r,n)}function dD(e,t,n){for(let[r,i]of e)i===n&&(e.delete(r),t.delete(r))}function fD(e,t){for(let n=e.length-1;n>=0;--n){let r=e[n];if(r.type===`tool-invocation`&&r.toolCallId===t)return r}return null}function pD(e,t){return fD(e,t)?.toolName??null}function mD(e,t){let n=[...e];for(let e=n.length-1;e>=0;--e){let r=n[e];if(r.type===`tool-invocation`&&r.toolCallId===t.toolCallId)return n[e]={...r,...t},n}return n.push(t),n}function hD(e){let t=[];return{parts:e.map(e=>e.type!==`tool-invocation`||!e.toolCallId||e.state===`result`||e.state===`cancelled`?e:(t.push(e.toolCallId),{...e,state:`cancelled`})),toolCallIds:t}}var gD=`assistant`,_D=class{messages=[];streamingMessage=null;error=null;activeRun=null;contextWindow=null;listeners=new Set;toolCallMessageIdByCallId=new Map;toolCallArgsRawByCallId=new Map;lastSettledRunId=null;snapshotCache=null;snapshotVersion=-1;stateVersion=0;getSnapshot=()=>{if(this.snapshotCache&&this.snapshotVersion===this.stateVersion)return this.snapshotCache;let e={messages:this.messages,streamingMessage:this.streamingMessage,error:this.error?{...this.error,details:this.error.details?{...this.error.details}:void 0}:null,activeRun:this.activeRun?{...this.activeRun}:null,contextWindow:this.contextWindow?{...this.contextWindow}:null};return this.snapshotCache=e,this.snapshotVersion=this.stateVersion,e};subscribe=e=>(this.listeners.add(e),()=>this.listeners.delete(e));reset=()=>{this.messages.length===0&&!this.streamingMessage&&!this.error&&!this.activeRun&&!this.contextWindow&&this.toolCallMessageIdByCallId.size===0&&this.toolCallArgsRawByCallId.size===0||(this.messages=[],this.streamingMessage=null,this.error=null,this.activeRun=null,this.contextWindow=null,this.toolCallMessageIdByCallId.clear(),this.toolCallArgsRawByCallId.clear(),this.lastSettledRunId=null,this.stateVersion+=1,this.notifyListeners())};hydrate=e=>{this.messages=e.messages.map(e=>oD(e)),this.streamingMessage=null,this.error=null,this.contextWindow=e.contextWindow?{...e.contextWindow}:null,this.activeRun=e.activeRun?{...e.activeRun,sessionId:e.activeRun.sessionId??e.sessionId,abortDisabledReason:e.activeRun.abortDisabledReason??null}:null,this.toolCallMessageIdByCallId.clear(),this.toolCallArgsRawByCallId.clear(),this.lastSettledRunId=null,this.stateVersion+=1,this.notifyListeners()};dispatch=e=>this.dispatchBatch([e]);dispatchBatch=async e=>{if(!e.length)return;let t=this.stateVersion;e.forEach(this.applyEvent),this.stateVersion!==t&&this.notifyListeners()};applyEvent=e=>{switch(e.type){case $E.MessageSent:this.handleMessageSent(e.payload);break;case $E.MessageAbort:this.handleMessageAbort(e.payload);break;case $E.MessageTextStart:this.handleMessageTextStart(e.payload);break;case $E.MessageTextDelta:this.handleMessageTextDelta(e.payload);break;case $E.MessageTextEnd:this.handleMessageTextEnd(e.payload);break;case $E.MessageReasoningStart:this.handleMessageReasoningStart(e.payload);break;case $E.MessageReasoningDelta:this.handleMessageReasoningDelta(e.payload);break;case $E.MessageReasoningEnd:this.handleMessageReasoningEnd(e.payload);break;case $E.MessageToolCallStart:this.handleMessageToolCallStart(e.payload);break;case $E.MessageToolCallArgs:this.handleMessageToolCallArgs(e.payload);break;case $E.MessageToolCallArgsDelta:this.handleMessageToolCallArgsDelta(e.payload);break;case $E.MessageToolCallEnd:this.handleMessageToolCallEnd(e.payload);break;case $E.MessageToolCallResult:this.handleMessageToolCallResult(e.payload);break;case $E.RunStarted:this.handleRunStarted(e.payload);break;case $E.RunFinished:this.handleRunFinished(e.payload);break;case $E.RunError:this.handleRunError(e.payload);break;case $E.RunMetadata:this.handleRunMetadata(e.payload);break;case $E.ContextWindowUpdated:this.handleContextWindowUpdated(e.payload);break;case $E.EndpointError:this.handleEndpointError(e.payload);break;default:break}};handleMessageSent=e=>{this.upsertMessage(e.message),this.setError(null)};handleMessageAbort=e=>{let t=e.messageId?.trim();if(this.clearActiveRun(),this.setError(null),this.streamingMessage&&(!t||this.streamingMessage.id===t)){let e=this.streamingMessage.id,{parts:n,toolCallIds:r}=hD(this.streamingMessage.parts);this.upsertMessage({...this.streamingMessage,status:`final`,parts:n}),this.replaceStreamingMessage(null),t?dD(this.toolCallMessageIdByCallId,this.toolCallArgsRawByCallId,t):dD(this.toolCallMessageIdByCallId,this.toolCallArgsRawByCallId,e),r.forEach(e=>this.toolCallArgsRawByCallId.set(e,sD))}};handleMessageTextStart=e=>{this.ensureStreamingMessage(e.sessionId,e.messageId,`streaming`),this.setError(null)};handleMessageTextDelta=e=>{if(!e.delta)return;let t=this.ensureStreamingMessage(e.sessionId,e.messageId,`streaming`),n=[...t.parts],r=n[n.length-1];r?.type===`text`?n[n.length-1]={type:`text`,text:`${r.text}${e.delta}`}:n.push({type:`text`,text:e.delta}),this.replaceStreamingMessage({...t,parts:n,status:`streaming`})};handleMessageTextEnd=e=>{this.streamingMessage?.id===e.messageId&&this.streamingMessage.status===`streaming`&&this.replaceStreamingMessage({...this.streamingMessage,status:`pending`})};handleMessageReasoningStart=e=>{this.ensureStreamingMessage(e.sessionId,e.messageId,`streaming`)};handleMessageReasoningDelta=e=>{if(!e.delta)return;let t=this.ensureStreamingMessage(e.sessionId,e.messageId,`streaming`),n=[...t.parts],r=n[n.length-1];r?.type===`reasoning`?n[n.length-1]={type:`reasoning`,text:`${r.text}${e.delta}`}:n.push({type:`reasoning`,text:e.delta}),this.replaceStreamingMessage({...t,parts:n,status:`streaming`})};handleMessageReasoningEnd=e=>{this.streamingMessage?.id,e.messageId};handleMessageToolCallStart=e=>{if(this.toolCallArgsRawByCallId.get(e.toolCallId)===`__nextclaw_aborted_tool_call__`)return;let t=this.resolveToolCallTargetMessage(e.sessionId,e.toolCallId,e.messageId);this.toolCallArgsRawByCallId.set(e.toolCallId,``);let n=mD(t.parts,{type:`tool-invocation`,toolCallId:e.toolCallId,toolName:e.toolName,state:`partial-call`,args:``});this.replaceStreamingMessage({...t,parts:n,status:`streaming`}),this.setError(null)};handleMessageToolCallArgs=e=>{this.toolCallArgsRawByCallId.get(e.toolCallId)!==`__nextclaw_aborted_tool_call__`&&(this.toolCallArgsRawByCallId.set(e.toolCallId,e.args),this.applyToolCallArgs(e.sessionId,e.toolCallId,e.args))};handleMessageToolCallArgsDelta=e=>{if(this.toolCallArgsRawByCallId.get(e.toolCallId)===`__nextclaw_aborted_tool_call__`)return;let t=`${this.toolCallArgsRawByCallId.get(e.toolCallId)??``}${e.delta}`;this.toolCallArgsRawByCallId.set(e.toolCallId,t),this.applyToolCallArgs(e.sessionId,e.toolCallId,t,e.messageId)};handleMessageToolCallEnd=e=>{if(this.toolCallArgsRawByCallId.get(e.toolCallId)===`__nextclaw_aborted_tool_call__`)return;let t=this.resolveToolCallTargetMessage(e.sessionId,e.toolCallId),n=this.toolCallArgsRawByCallId.get(e.toolCallId)??``,r=mD(t.parts,{type:`tool-invocation`,toolCallId:e.toolCallId,toolName:pD(t.parts,e.toolCallId)??`unknown`,state:`call`,args:n});this.replaceStreamingMessage({...t,parts:r,status:`streaming`})};handleMessageToolCallResult=e=>{if(this.toolCallArgsRawByCallId.get(e.toolCallId)!==`__nextclaw_aborted_tool_call__`&&!this.updateMessageContainingToolCall(e.toolCallId,(t,n)=>{let r={type:`tool-invocation`,toolCallId:e.toolCallId,toolName:n.toolName,state:`result`,args:n.args,result:e.content,resultContentItems:e.contentItems};return mD(t.parts,r)})){let t=this.resolveToolCallTargetMessage(e.sessionId,e.toolCallId),n=mD(t.parts,{type:`tool-invocation`,toolCallId:e.toolCallId,toolName:`unknown`,state:`result`,result:e.content,resultContentItems:e.contentItems});this.replaceStreamingMessage({...t,parts:n,status:`streaming`})}};handleRunStarted=e=>{this.isSettledRunId(e.runId)||(this.setError(null),this.activeRun={runId:e.runId??null,sessionId:e.sessionId},this.stateVersion+=1)};handleRunFinished=e=>{this.markRunAsSettled(e.runId??this.activeRun?.runId??null),this.settleStreamingMessage(`final`),this.setError(null),this.clearActiveRun()};handleRunError=e=>{this.markRunAsSettled(e.runId??this.activeRun?.runId??null),this.settleStreamingMessage(`error`),this.setError(cD(e)),this.clearActiveRun()};handleRunMetadata=e=>{let t=e.metadata;if(t?.kind===`ready`){let e=t;if(this.isSettledRunId(e.runId))return;this.activeRun={runId:e.runId??this.activeRun?.runId??null,sessionId:e.sessionId??this.activeRun?.sessionId,abortDisabledReason:e.supportsAbort===!1?e.abortDisabledReason??`Unsupported`:null},this.stateVersion+=1}else t?.kind===`final`&&(this.markRunAsSettled(e.runId??this.activeRun?.runId??null),this.clearActiveRun())};handleContextWindowUpdated=e=>{this.contextWindow={...e.contextWindow},this.stateVersion+=1};handleEndpointError=e=>{if(e.code===`abort-error`){this.handleMessageAbort({sessionId:this.activeRun?.sessionId??this.streamingMessage?.sessionId??``,...this.streamingMessage?.id?{messageId:this.streamingMessage.id}:{}});return}this.settleStreamingMessage(`error`),this.clearActiveRun(),this.setError(e)};applyToolCallArgs=(e,t,n,r)=>{let i=this.resolveToolCallTargetMessage(e,t,r),a=pD(i.parts,t)??`unknown`,o=mD(i.parts,{type:`tool-invocation`,toolCallId:t,toolName:a,state:`partial-call`,args:n});this.replaceStreamingMessage({...i,parts:o,status:`streaming`})};ensureStreamingMessage=(e,t,n)=>{if(this.streamingMessage?.id===t){if(this.streamingMessage.status===n)return this.streamingMessage;let e={...this.streamingMessage,status:n};return this.replaceStreamingMessage(e),e}let r=this.messages.findIndex(e=>e.id===t);if(r>=0){let t=aD(this.messages[r]),i=[...this.messages];i.splice(r,1),this.messages=i,this.stateVersion+=1;let a={...t,sessionId:e,status:n};return this.replaceStreamingMessage(a),a}let i=this.streamingMessage;if(i&&i.id!==t&&i.sessionId===e&&lD(i,t)){let r={...i,id:t,sessionId:e,status:n};return uD(this.toolCallMessageIdByCallId,i.id,t),this.replaceStreamingMessage(r),r}let a={id:t,sessionId:e,role:gD,status:n,parts:[],timestamp:new Date().toISOString()};return this.replaceStreamingMessage(a),a};resolveToolCallTargetMessage=(e,t,n)=>{let r=n?.trim()||this.toolCallMessageIdByCallId.get(t)||this.streamingMessage?.id||`tool-${t}`;return this.toolCallMessageIdByCallId.set(t,r),this.ensureStreamingMessage(e,r,`streaming`)};updateMessageContainingToolCall=(e,t)=>{if(this.streamingMessage){let n=fD(this.streamingMessage.parts,e);if(n){let e=t(this.streamingMessage,n);return this.replaceStreamingMessage({...this.streamingMessage,parts:e}),!0}}for(let n=this.messages.length-1;n>=0;--n){let r=this.messages[n],i=fD(r.parts,e);if(!i)continue;let a=[...this.messages];return a[n]={...r,parts:t(r,i)},this.messages=a,this.stateVersion+=1,!0}return!1};upsertMessage=e=>{let t=oD(e),n=this.messages.findIndex(e=>e.id===t.id);if(n<0){this.messages=[...this.messages,t],this.stateVersion+=1;return}let r=[...this.messages];r[n]=t,this.messages=r,this.stateVersion+=1};replaceStreamingMessage=e=>{!e&&!this.streamingMessage||(this.streamingMessage=e?oD(e):null,this.stateVersion+=1)};setError=e=>{this.error?.code===e?.code&&this.error?.message===e?.message&&this.error?.details===e?.details&&this.error?.cause===e?.cause||(this.error=e?{...e,details:e.details?{...e.details}:void 0}:null,this.stateVersion+=1)};clearActiveRun=()=>{this.activeRun&&(this.activeRun=null,this.stateVersion+=1)};isSettledRunId=e=>!!e?.trim()&&e===this.lastSettledRunId;markRunAsSettled=e=>{this.lastSettledRunId=e?.trim()||null};settleStreamingMessage=e=>{if(!this.streamingMessage)return;let t={...this.streamingMessage,status:e};this.upsertMessage(t),this.replaceStreamingMessage(null),dD(this.toolCallMessageIdByCallId,this.toolCallArgsRawByCallId,t.id)};notifyListeners=()=>{let e=this.getSnapshot();for(let t of this.listeners)t(e)}},vD=16,yD=class{constructor(e){this.dispatchBatch=e,this.queue=[],this.flushTimerId=null,this.isFlushing=!1,this.isDisposed=!1,this.enqueue=e=>{this.isDisposed||(this.queue.push(e),this.scheduleFlush())},this.dispose=()=>{this.isDisposed=!0,this.flushTimerId!==null&&(window.clearTimeout(this.flushTimerId),this.flushTimerId=null),this.queue.length=0},this.scheduleFlush=()=>{this.flushTimerId!==null||this.isFlushing||this.queue.length===0||(this.flushTimerId=window.setTimeout(()=>{this.flushTimerId=null,this.flush()},vD))},this.flush=async()=>{if(!(this.isDisposed||this.isFlushing||this.queue.length===0)){this.isFlushing=!0;try{for(;this.queue.length>0;){let e=this.queue.splice(0);await this.dispatchBatch(e)}}finally{this.isFlushing=!1,this.scheduleFlush()}}}}};function bD(e,t){let n=e.dispatchBatch;return typeof n==`function`?n.call(e,t):t.reduce((t,n)=>t.then(()=>e.dispatch(n)),Promise.resolve())}function xD(e,t){let n=`payload`in e?e.payload:null;return!n||typeof n!=`object`||!(`sessionId`in n)||typeof n.sessionId!=`string`?!0:n.sessionId===t}function SD(e){return e.parts.some(e=>e.type===`text`||e.type===`rich-text`||e.type===`reasoning`?e.text.trim().length>0:!0)}function CD(e,t){if(typeof e==`string`){let n=e.trim();return n?{sessionId:t,message:{id:`user-${Date.now().toString(36)}`,sessionId:t,role:`user`,status:`final`,parts:[{type:`text`,text:n}],timestamp:new Date().toISOString()}}:null}return SD(e.message)?{...e,sessionId:e.sessionId,message:{...e.message,sessionId:e.message.sessionId||e.sessionId}}:null}function wD(e){let t=(0,P.useRef)();return(!t.current||t.current.sessionId!==e)&&(t.current={sessionId:e,manager:new _D}),t.current.manager}function TD({sessionId:e,client:t,manager:n}){let r=(0,P.useSyncExternalStore)(e=>n.subscribe(()=>e()),()=>n.getSnapshot(),()=>n.getSnapshot()),[i,a]=(0,P.useState)(!1);(0,P.useEffect)(()=>{a(!1)},[e]),(0,P.useEffect)(()=>{let r=new yD(e=>bD(n,e)),i=t.subscribe(t=>{xD(t,e)&&r.enqueue(t)});return()=>{i(),r.dispose(),t.stop()}},[t,n,e]);let o=r.streamingMessage?[...r.messages,r.streamingMessage]:r.messages,s=r.activeRun?.runId??null,c=!!r.activeRun;return{snapshot:r,visibleMessages:o,activeRunId:s,isRunning:c,isSending:i,send:async r=>{if(i||c)return;let o=CD(r,e);if(o){a(!0),await n.dispatch({type:$E.MessageSent,payload:{sessionId:e,message:o.message,metadata:o.metadata}});try{await t.send(o)}finally{a(!1)}}},abort:async()=>{r.activeRun&&await t.abort({sessionId:e})},streamRun:async()=>{await t.stop(),await t.stream({sessionId:e})}}}function ED(e){return e instanceof Error?e:Error(String(e))}function DD(e){return e.isHydrating||e.hydratedSessionId!==e.sessionId}function OD({sessionId:e,client:t,loadSeed:n}){let r=wD(e),i=TD({sessionId:e,client:t,manager:r}),[a,o]=(0,P.useState)(!0),[s,c]=(0,P.useState)(null),[l,u]=(0,P.useState)(null),d=(0,P.useRef)({requestId:0,controller:null}),f=(0,P.useCallback)(async()=>{d.current.controller?.abort();let i=new AbortController,a=d.current.requestId+1;d.current={requestId:a,controller:i},await t.stop(),r.reset(),c(null),o(!0);try{let s=await n(e,i.signal);if(i.signal.aborted||d.current.requestId!==a)return;r.hydrate({sessionId:e,messages:s.messages,activeRun:s.status===`running`?{runId:null,sessionId:e,abortDisabledReason:null}:null}),c(null),u(e),o(!1),t.stream({sessionId:e}).catch(e=>{d.current.requestId===a&&c(ED(e))})}catch(t){if(i.signal.aborted||d.current.requestId!==a)return;c(ED(t)),u(e),o(!1)}finally{d.current.controller===i&&(d.current.controller=null)}},[t,n,r,e]);return(0,P.useEffect)(()=>(f(),()=>{d.current.controller?.abort(),d.current.controller=null}),[f]),{...i,isHydrating:DD({sessionId:e,hydratedSessionId:l,isHydrating:a}),hydrateError:s}}var kD=200*1024*1024,AD=`application/octet-stream`;function jD(e){let t=e.type.trim().toLowerCase();return t.length>0?t:AD}function MD(e,t){let n=t.acceptedMimeTypes&&t.acceptedMimeTypes.length>0?new Set(t.acceptedMimeTypes.map(e=>e.trim().toLowerCase())):null,r=t.maxBytes??209715200,i=jD(e);return n&&!n.has(i)?{ok:!1,rejected:{fileName:e.name,mimeType:i,sizeBytes:e.size,reason:`unsupported-type`}}:e.size>r?{ok:!1,rejected:{fileName:e.name,mimeType:i,sizeBytes:e.size,reason:`too-large`}}:{ok:!0,mimeType:i}}function ND(e){let t=e.parts&&e.parts.length>0?e.parts.map(e=>structuredClone(e)):[...e.text?.trim()??``?[{type:`text`,text:e.text.trim()}]:[],...(e.attachments??[]).map(e=>({type:`file`,name:e.name,mimeType:e.mimeType,...e.assetUri?.trim()?{assetUri:e.assetUri.trim()}:{},...e.url?.trim()?{url:e.url.trim()}:{},...e.contentBase64?.trim()?{contentBase64:e.contentBase64.trim()}:{},sizeBytes:e.sizeBytes}))];if(t.length===0)return null;let n=e.timestamp??new Date().toISOString(),r=e.messageId??`user-${Date.now().toString(36)}`;return{sessionId:e.sessionId,message:{id:r,sessionId:e.sessionId,role:`user`,status:`final`,parts:t,timestamp:n,...e.metadata?{metadata:e.metadata}:{}},...e.metadata?{metadata:e.metadata}:{}}}async function PD(e,t){let n=[],r=[];for(let i of e){let e=MD(i,t);if(!e.ok){r.push(e.rejected);continue}n.push(i)}if(n.length===0)return{attachments:[],rejected:r};try{return{attachments:await t.uploadBatch(n),rejected:r}}catch{return r.push(...n.map(e=>({fileName:e.name,mimeType:jD(e),sizeBytes:e.size,reason:`read-failed`}))),{attachments:[],rejected:r}}}function FD(e){let t=e.modelLabel.trim(),n=e.providerLabel.trim();return n?`${n}/${t}`:t}function ID(e){let t=[];for(let n of[`off`,...e])t.includes(n)||t.push(n);return t}function LD(e){return!e.isModelOptionsLoading&&!e.isModelOptionsEmpty?null:e.isModelOptionsLoading?{tone:`neutral`,loading:!0}:{tone:`warning`,text:e.texts.noModelOptionsLabel,actionLabel:e.texts.configureProviderLabel,onAction:e.onGoToProviders}}function RD({modelOptions:e,recentModelValues:t,selectedModel:n,isModelOptionsLoading:r,hasModelOptions:i,onValueChange:a,texts:o}){let s=e.find(e=>e.value===n)??e[0],c=i?s?.value:void 0,l=new Set(t??[]),u=new Map(e.map(e=>[e.value,e])),d=(t??[]).map(e=>u.get(e)).filter(e=>!!e),f=e.filter(e=>!l.has(e.value)),p=d.length>0?[{key:`recent-models`,label:o.recentModelsLabel,options:d.map(e=>({value:e.value,label:FD(e)}))},{key:`all-models`,label:o.allModelsLabel,options:f.map(e=>({value:e.value,label:FD(e)}))}].filter(e=>e.options.length>0):void 0;return{key:`model`,value:c,placeholder:o.modelSelectPlaceholder,selectedLabel:s?FD(s):void 0,icon:`sparkles`,options:e.map(e=>({value:e.value,label:FD(e)})),groups:p,disabled:!i,loading:r,emptyLabel:o.modelNoOptionsLabel,onValueChange:a}}function zD(e){if(e.supportedLevels.length===0)return null;let t=ID(e.supportedLevels),n=t.includes(`off`)?`off`:t[0],r=e.selectedThinkingLevel&&t.includes(e.selectedThinkingLevel)&&e.selectedThinkingLevel||e.defaultThinkingLevel&&t.includes(e.defaultThinkingLevel)&&e.defaultThinkingLevel||n;return{key:`thinking`,value:r,placeholder:e.texts.thinkingLabels[r],selectedLabel:e.texts.thinkingLabels[r],icon:`brain`,options:t.map(t=>({value:t,label:e.texts.thinkingLabels[t]})),onValueChange:t=>e.onValueChange(t)}}var BD={exactSpec:1200,exactLabel:1150,prefixSpec:1e3,prefixLabel:950,prefixToken:900,containsSpec:800,containsLabel:760,containsDescription:500,subsequence:300,fallback:1};function VD(e){return(e??``).trim().toLowerCase()}function HD(e,t){if(!e||!t)return!1;let n=0;for(let r of t)if(r===e[n]&&(n+=1,n>=e.length))return!0;return!1}function UD(e,t){let n=VD(t);if(!n)return BD.fallback;let r=VD(e.key),i=VD(e.label||e.key),a=VD(`${e.descriptionZh??``} ${e.description??``}`),o=i.split(/[\s/_-]+/).filter(Boolean);return r===n?BD.exactSpec:i===n?BD.exactLabel:r.startsWith(n)?BD.prefixSpec:i.startsWith(n)?BD.prefixLabel:o.some(e=>e.startsWith(n))?BD.prefixToken:r.includes(n)?BD.containsSpec:i.includes(n)?BD.containsLabel:a.includes(n)?BD.containsDescription:HD(n,i)||HD(n,r)?BD.subsequence:0}function WD(e){return e>=BD.exactLabel?4:e>=BD.prefixToken?3:e>=BD.containsLabel?2:e>0?1:0}function GD(e){return new Map(e.map((e,t)=>[e,t]))}function KD(e,t){let n=GD(t),r=[],i=[];for(let t of e){if(n.has(t.key)){r.push(t);continue}i.push(t)}return r.sort((e,t)=>(n.get(e.key)??1/0)-(n.get(t.key)??1/0)),[...r,...i]}function qD(e,t,n,r=[]){let i=new Intl.Collator(void 0,{sensitivity:`base`,numeric:!0}),a=GD(r);return e.map((e,n)=>({record:e,order:n,score:UD(e,t)})).filter(e=>e.score>0).sort((e,t)=>{let n=WD(e.score),r=WD(t.score);if(r!==n)return r-n;let o=a.get(e.record.key)??1/0,s=a.get(t.record.key)??1/0;if(o!==s)return o-s;if(t.score!==e.score)return t.score-e.score;let c=(e.record.label||e.record.key).trim(),l=(t.record.label||t.record.key).trim(),u=i.compare(c,l);return u===0?e.order-t.order:u}).map(({record:e})=>({key:`skill:${e.key}`,title:e.label||e.key,subtitle:n.slashSkillSubtitle,description:(e.descriptionZh??e.description??``).trim()||n.noSkillDescription,detailLines:[`${n.slashSkillSpecLabel}: ${e.key}`,...e.scopeLabel?[`${n.slashSkillScopeLabel}: ${e.scopeLabel}`]:[]],value:e.key}))}function JD(e){return e.map(e=>({key:e.key,label:e.label,description:e.descriptionZh||e.description||``,badgeLabel:e.badgeLabel}))}function YD(e){let t=KD(e.skillRecords,e.recentSkillValues??[]),n=new Set(e.groupedRecentSkillValues??[]),r=JD(t.filter(e=>n.has(e.key))),i=JD(t.filter(e=>!n.has(e.key)));return{title:e.texts.title,searchPlaceholder:e.texts.searchPlaceholder,emptyLabel:e.texts.emptyLabel,loadingLabel:e.texts.loadingLabel,isLoading:e.isLoading,manageLabel:e.texts.manageLabel,manageHref:`/marketplace/skills`,options:JD(t),groups:r.length>0?[{key:`recent-skills`,label:e.texts.recentSkillsLabel,options:r},{key:`all-skills`,label:e.texts.allSkillsLabel,options:i}].filter(e=>e.options.length>0):void 0,selectedKeys:e.selectedSkills,onSelectedKeysChange:e.onSelectedKeysChange}}var XD=(0,P.createContext)(null);function ZD({presenter:e,children:t}){return(0,N.jsx)(XD.Provider,{value:e,children:t})}function QD(){let e=(0,P.useContext)(XD);if(!e)throw Error(`usePresenter must be used inside ChatPresenterProvider`);return e}var $D=`$`;function eO(e,t){if(t.length===0)return e;let n=e[e.length-1];return n?.type===`text`?[...e.slice(0,-1),{...n,text:n.text+t}]:[...e,{type:`text`,text:t}]}function tO(){return xp()}function nO(e){return Sp(e)}function rO(e){return Tp(e)}function iO(e){return Ep(e,`skill`)}function aO(e){return Ep(e,`file`)}function oO(e,t,n){let r=new Set(t),i=Np(e,e=>e.tokenKind===`skill`&&!r.has(e.tokenKey)),a=Ep(i,`skill`),o=new Map(n.map(e=>[e.ref,e])),s=t.filter(e=>!a.includes(e)).map(e=>yp({tokenKind:`skill`,tokenKey:e,label:o.get(e)?.name||e}));return s.length===0?i:Cp([...i,...s])}function sO(e,t){let n=new Set(t.map(e=>e.id));return Np(e,e=>e.tokenKind===`file`&&!n.has(e.tokenKey))}function cO(e,t){let n=new Set(aO(e));return t.filter(e=>n.has(e.id))}function lO(e,t){let n=new Map(t.map(e=>[e.id,e])),r=[];for(let t of e){if(t.type===`text`){r=eO(r,t.text);continue}if(t.tokenKind===`skill`){r=eO(r,`${$D}${t.tokenKey}`);continue}if(t.tokenKind!==`file`)continue;let e=n.get(t.tokenKey);e&&r.push({type:`file`,name:e.name,mimeType:e.mimeType,...e.assetUri?{assetUri:e.assetUri}:{},...e.url?{url:e.url}:{},...e.contentBase64?{contentBase64:e.contentBase64}:{},sizeBytes:e.sizeBytes})}return r}var uO={isProviderStateResolved:!1,composerNodes:tO(),attachments:[],draft:``,pendingSessionType:`native`,pendingProjectRoot:null,pendingProjectRootSessionKey:null,defaultSessionType:`native`,canStopGeneration:!1,stopDisabledReason:null,sendError:null,isSending:!1,modelOptions:[],selectedModel:``,selectedThinkingLevel:null,sessionTypeOptions:[],selectedSessionType:void 0,stopSupported:!1,stopReason:void 0,canEditSessionType:!1,sessionTypeUnavailable:!1,skillRecords:[],isSkillsLoading:!1,selectedSkills:[]},Q=S(e=>({snapshot:uO,setSnapshot:t=>e(e=>({snapshot:{...e.snapshot,...t}}))})),dO=class{constructor(e){this.options=e,this.read=()=>{let e=this.getStorage();if(!e)return[];try{return this.normalizeList(JSON.parse(e.getItem(this.options.storageKey)??`[]`))}catch{return[]}},this.remember=e=>{let t=this.normalizeValue(e);if(!t)return this.read();let n=[t,...this.read().filter(e=>e!==t)].slice(0,this.options.limit);return this.write(n),n},this.resolveVisible=e=>{let t=this.normalizeList(e.availableValues,1/0);if(t.length<=e.minAvailableCount)return[];let n=new Set(t),r=[],i=Math.max(1,e.limit??this.options.limit);for(let e of this.read())if(!(!n.has(e)||r.includes(e))&&(r.push(e),r.length>=i))break;return r},this.write=e=>{let t=this.getStorage();if(t)try{t.setItem(this.options.storageKey,JSON.stringify(this.normalizeList(e)))}catch{}},this.getStorage=()=>Object.prototype.hasOwnProperty.call(this.options,`storage`)?this.options.storage??null:typeof window>`u`?null:window.localStorage,this.normalizeList=(e,t=this.options.limit)=>{if(!Array.isArray(e))return[];let n=[];for(let r of e){let e=this.normalizeValue(r);if(!(!e||n.includes(e))&&(n.push(e),n.length>=t))break}return n},this.normalizeValue=e=>{if(typeof e!=`string`)return null;let t=e.trim();return t.length>0?t:null}}},fO=new dO({storageKey:`nextclaw.chat.recent-models`,limit:3}),pO=new dO({storageKey:`nextclaw.chat.recent-skills`,limit:5});function mO(e){return e.modelOptions.length>0}function hO(e){return!e.isProviderStateResolved&&!mO(e)}function gO(e){return e.isProviderStateResolved&&!mO(e)}function _O(e){return!1}function vO(e){let{hasSendableDraft:t,isRuntimeBlocked:n}=e;return n||!t}var yO=function(e){return e.CALL=`call`,e.RESULT=`result`,e.PARTIAL_CALL=`partial-call`,e.ERROR=`error`,e.CANCELLED=`cancelled`,e}({});function bO(e){if(typeof e!=`string`)return null;let t=e.trim();return t.length>0?t:null}function xO(e){return bO(e)}function SO(e){let t=bO(e);if(!t)return null;let n=t.replace(/[\\/]+$/,``);if(!n)return t;let r=n.split(/[\\/]/).filter(Boolean);return r[r.length-1]??n}function CO(e){return/^[A-Za-z]:[\\/]?$/.test(e)||e===`/`?e:e.replace(/[\\/]+$/,``)}function wO(e){let t=CO(e.trim().replace(/\\/g,`/`));return/^[A-Za-z]:/.test(t)?`${t.slice(0,1).toLowerCase()}${t.slice(1)}`:t}function TO(e){let t=e.trim().replace(/\\/g,`/`);return t?/^[A-Za-z]:\//.test(t)?{prefix:t.slice(0,2),segments:t.slice(3).split(`/`).filter(Boolean)}:t.startsWith(`/`)?{prefix:`/`,segments:t.slice(1).split(`/`).filter(Boolean)}:{prefix:null,segments:t.split(`/`).filter(Boolean)}:{prefix:null,segments:[]}}function EO(e){let t=wO(e.path),n=wO(e.sessionProjectRoot);if(!t||!n)return null;if(!t.startsWith(`/`)&&!/^[A-Za-z]:\//.test(t))return t.split(`/`).filter(Boolean);if(t===n)return[];let r=n.endsWith(`/`)?n:`${n}/`;return t.startsWith(r)?t.slice(r.length).split(`/`).filter(Boolean):null}function DO(e){let{labels:t,leading:n=null}=e,r=t.map((e,n)=>({key:`${n}:${e}`,label:e,kind:n===t.length-1?`file`:`directory`,isCurrent:n===t.length-1}));return n?[n,...r]:r}function OO(e){let{column:t,line:n}=e;return typeof n==`number`?`L${n}${typeof t==`number`?`:${t}`:``}`:null}function kO(e){let{column:t,line:n,path:r,sessionProjectRoot:i,truncated:a}=e,o=r.trim(),s=i?.trim()&&o?EO({path:o,sessionProjectRoot:i}):null,c;if(i?.trim()&&s){let e=SO(i)??i.trim();c=DO({labels:s,leading:{key:`workspace:${e}`,label:e,kind:`workspace`,isCurrent:s.length===0}})}else{let{prefix:e,segments:t}=TO(o);c=DO({labels:t,leading:e?{key:`root:${e}`,label:e,kind:`root`,isCurrent:t.length===0}:null})}return c.length===0&&(c=[{key:`file:unknown`,label:o||`file`,kind:`file`,isCurrent:!0}]),{fullPath:o,locationLabel:OO({line:n,column:t}),truncated:a,segments:c}}var AO=new Set([`off`,`minimal`,`low`,`medium`,`high`,`adaptive`,`xhigh`]);function jO(e){if(typeof e==`string`)return e;try{return JSON.stringify(e??{})}catch{return String(e??``)}}function MO(e){return`${ae}/api/ncp/assets/content?${new URLSearchParams({uri:e}).toString()}`}function NO(e){if(typeof e!=`string`)return null;let t=e.trim();return t.length>0?t:null}function PO(e){let{metadata:t}=e;return!t||typeof t!=`object`||Array.isArray(t)?null:t}function FO(e){let t=PO(e);return t?NO(t.preferred_model)??NO(t.preferredModel)??NO(t.model):null}function IO(e){let t=PO(e);if(!t)return null;let n=NO(t.preferred_thinking)??NO(t.thinking)??NO(t.thinking_level)??NO(t.thinkingLevel);if(!n)return null;let r=n.toLowerCase();return AO.has(r)?r:null}function LO(e){let t=PO(e);return t?NO(t.label):null}function RO(e){let t=PO(e);return t?xO(t.project_root??t.projectRoot):null}function zO(e){let t=PO(e);return t?NO(t.ui_last_read_at):null}function BO(e){let t=PO(e);return t?NO(t.runtime)??NO(t.session_type)??NO(t.sessionType)??`native`:`native`}function VO(e){let t=PO(e);return t?NO(t.parent_session_id)??NO(t.parentSessionId):null}function HO(e){let t=PO(e);return t?NO(t.spawned_by_request_id)??NO(t.spawnedByRequestId):null}function UO(e){let t=PO(e);return t?t.child_session_promoted===!0:!1}function WO(e){if(e.startsWith(`cron:`))return{type:`cron`};if(e.startsWith(`agent:`)){let t=e.split(`:`);if(t.length>=3){let e=t[2];if(e&&e!==`main`&&e!==`direct`)return{channel:e}}}return{}}function GO(e){return e.state===`cancelled`?yO.CANCELLED:e.state===`result`?yO.RESULT:e.state===`partial-call`?yO.PARTIAL_CALL:yO.CALL}function KO(e){let t=[];for(let n of e){if(n.type===`text`){t.push({type:`text`,text:n.text});continue}if(n.type===`rich-text`){t.push({type:`text`,text:n.text});continue}if(n.type===`reasoning`){t.push({type:`reasoning`,reasoning:n.text,details:[]});continue}if(n.type===`source`){t.push({type:`source`,source:{sourceType:`url`,id:n.url??n.title??Math.random().toString(36).slice(2,8),url:n.url??``,...n.title?{title:n.title}:{}}});continue}if(n.type===`file`&&n.contentBase64){t.push({type:`file`,...n.name?{name:n.name}:{},mimeType:n.mimeType??`application/octet-stream`,data:n.contentBase64,...n.url?{url:n.url}:{},...typeof n.sizeBytes==`number`?{sizeBytes:n.sizeBytes}:{}});continue}if(n.type===`file`&&n.url){t.push({type:`file`,...n.name?{name:n.name}:{},mimeType:n.mimeType??`application/octet-stream`,data:``,url:n.url,...typeof n.sizeBytes==`number`?{sizeBytes:n.sizeBytes}:{}});continue}if(n.type===`file`&&n.assetUri){t.push({type:`file`,...n.name?{name:n.name}:{},mimeType:n.mimeType??`application/octet-stream`,data:``,url:MO(n.assetUri),...typeof n.sizeBytes==`number`?{sizeBytes:n.sizeBytes}:{}});continue}if(n.type===`step-start`){t.push({type:`step-start`});continue}n.type===`tool-invocation`&&t.push({type:`tool-invocation`,toolInvocation:{status:GO(n),toolCallId:n.toolCallId??`${n.toolName}-${Math.random().toString(36).slice(2,8)}`,toolName:n.toolName,args:jO(n.args),result:n.result}})}return t}function qO(e){return e===`service`?`system`:e===`tool`?`assistant`:e}function JO(e){return{id:e.id,role:qO(e.role),parts:KO(e.parts),meta:{source:`stream`,status:e.status,sessionKey:e.sessionId,timestamp:e.timestamp}}}function YO(e){let t=LO(e),n=FO(e),r=IO(e),i=RO(e),a=zO(e),o=NO(e.lastMessageAt),s=SO(i),c=WO(e.sessionId),l=VO(e),u=HO(e),d=UO(e);return{key:e.sessionId,createdAt:e.updatedAt,updatedAt:e.updatedAt,...o?{lastMessageAt:o}:{},...a?{readAt:a}:{},...typeof e.agentId==`string`&&e.agentId.trim().length>0?{agentId:e.agentId.trim()}:{},...t?{label:t}:{},...c,...n?{preferredModel:n}:{},...r?{preferredThinking:r}:{},...i?{projectRoot:i}:{},...s?{projectName:s}:{},sessionType:BO(e),sessionTypeMutable:!1,isChildSession:!!l,...d?{isPromotedChildSession:d}:{},...l?{parentSessionId:l}:{},...u?{spawnedByRequestId:u}:{},messageCount:e.messageCount}}function XO(e){return e.map(YO)}function ZO(){return`ncp-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,10)}`}function QO(e,t){let n=e?.trim();if(!n)return!1;let r=t?.trim();return r?n.localeCompare(r)>0:!1}function $O(e){let{active:t,readAt:n,runStatus:r,lastMessageAt:i}=e;return t||r===`running`?!1:QO(i,n)}var ek={selectedSessionKey:null,draftSessionKey:ZO(),selectedAgentId:`main`,query:``,listMode:`time-first`};function tk(e){return t=>e(e=>({snapshot:{...e.snapshot,...t}}))}function nk(e){return(t,n)=>e(e=>{let r=t.trim(),i=n?.trim();if(!r||!i)return e;let a=e.optimisticReadAtBySessionKey[r];return a&&a.localeCompare(i)>=0?e:{...e,optimisticReadAtBySessionKey:{...e.optimisticReadAtBySessionKey,[r]:i}}})}var rk=S(e=>({snapshot:ek,optimisticReadAtBySessionKey:{},setSnapshot:tk(e),markSessionRead:nk(e)})),ik={isProviderStateResolved:!1,modelOptions:[],sessionTypeUnavailable:!1,sessionTypeUnavailableMessage:null,sessionTypeLabel:null,sessionTypeIcon:null,sessionKey:null,agentId:null,agentDisplayName:null,agentAvatarUrl:null,availableAgents:[],sessionDisplayName:void 0,sessionProjectRoot:null,sessionProjectName:null,canDeleteSession:!1,isDeletePending:!1,threadRef:null,isHistoryLoading:!1,messages:[],isSending:!1,isAwaitingAssistantOutput:!1,parentSessionKey:null,parentSessionLabel:null,workspacePanelParentKey:null,childSessionTabs:[],activeChildSessionKey:null,workspaceFileTabs:[],activeWorkspaceFileKey:null,contextWindow:null},ak=S(e=>({snapshot:ik,setSnapshot:t=>e(e=>({snapshot:{...e.snapshot,...t}}))}));function ok(e){return e>=1e6?`${(e/1e6).toFixed(e>=1e7?0:1)}M`:e>=1e3?`${(e/1e3).toFixed(e>=1e4?0:1)}k`:String(e)}function sk(e){if(!e||e.totalContextTokens<=0)return null;let t=e.usedContextTokens/e.totalContextTokens,n=Math.max(0,Math.min(1,t)),r=`${Math.round(n*100)}%`,i=n>=.9?`danger`:n>=.75?`warning`:`neutral`,a=[{label:o(`chatContextWindowUsed`),value:ok(e.usedContextTokens)},{label:o(`chatContextWindowTotal`),value:ok(e.totalContextTokens)},{label:o(`chatContextWindowAvailable`),value:ok(e.availableContextTokens)}];return e.prunedUsedContextTokens!==e.usedContextTokens&&a.push({label:o(`chatContextWindowPruned`),value:ok(e.prunedUsedContextTokens)}),e.droppedHistoryCount>0&&a.push({label:o(`chatContextWindowDroppedHistory`),value:String(e.droppedHistoryCount)}),e.truncatedToolResultCount>0&&a.push({label:o(`chatContextWindowTruncatedTools`),value:String(e.truncatedToolResultCount)}),{label:o(`chatContextWindow`),percentLabel:r,ratio:n,tone:i,details:a}}function ck(){let e=rk(e=>e.snapshot.selectedSessionKey),t=rk(e=>e.snapshot.draftSessionKey),n=ak(e=>e.snapshot.sessionKey),r=ak(e=>e.snapshot.contextWindow),i=e??t;return(0,P.useMemo)(()=>n===i&&r?sk(r):null,[i,r,n])}function lk(e){return e.bootstrapStatus?.ncpAgent.state!==`ready`}function uk(e){return e.activeSystemAction?.message?.trim()||(e.lifecyclePhase===`cold-starting`?o(`chatRuntimeInitializing`):e.lifecyclePhase===`startup-failed`?e.bootstrapStatus?.ncpAgent.error?.trim()||e.bootstrapStatus?.lastError?.trim()||e.lastError?.trim()||o(`chatRuntimeInitializationFailed`):null)}function dk(e){let{message:t,status:n}=e,r=t?.trim();if(!r)return uk(n);let i=n.activeSystemAction?.message?.trim();if(n.phase===`service-transitioning`&&i)return i;let a=ie(r);return n.phase===`recovering`&&a?o(`runtimeControlRecoveringHelp`):n.phase===`stalled`&&a?null:r}function fk(){return{off:o(`chatThinkingLevelOff`),minimal:o(`chatThinkingLevelMinimal`),low:o(`chatThinkingLevelLow`),medium:o(`chatThinkingLevelMedium`),high:o(`chatThinkingLevelHigh`),adaptive:o(`chatThinkingLevelAdaptive`),xhigh:o(`chatThinkingLevelXhigh`)}}function pk(e,t){return e.map(e=>({key:e.ref,label:e.name,scopeLabel:t[e.scope],description:e.description,descriptionZh:e.descriptionZh,badgeLabel:t[e.scope]}))}function mk(e){return e.map(e=>({value:e.value,modelLabel:e.modelLabel,providerLabel:e.providerLabel,thinkingCapability:e.thinkingCapability?{supported:e.thinkingCapability.supported,default:e.thinkingCapability.default??null}:null}))}function hk(e){return{skillScopeLabels:(0,P.useMemo)(()=>({builtin:o(`chatSkillScopeBuiltin`),project:o(`chatSkillScopeProject`),workspace:o(`chatSkillScopeWorkspace`)}),[e]),slashTexts:(0,P.useMemo)(()=>({slashSkillSubtitle:o(`chatSlashTypeSkill`),slashSkillSpecLabel:o(`chatSlashSkillSpec`),slashSkillScopeLabel:o(`chatSlashSkillScope`),noSkillDescription:o(`chatSkillsPickerNoDescription`)}),[e]),recentModelsLabel:o(`chatPickerRecentModels`),allModelsLabel:o(`chatPickerAllModels`),recentSkillsLabel:o(`chatPickerRecent`),allSkillsLabel:o(`chatPickerAllSkills`)}}function gk(e,t){let n=(0,P.useMemo)(()=>pk(e.skillRecords,t),[e.skillRecords,t]),r=(0,P.useMemo)(()=>mk(e.modelOptions),[e.modelOptions]);return{skillRecords:n,modelRecords:r,recentModelValues:fO.resolveVisible({availableValues:r.map(e=>e.value),minAvailableCount:5}),recentSkillValues:pO.resolveVisible({availableValues:n.map(e=>e.key),minAvailableCount:0}),recentSkillGroupValues:pO.resolveVisible({availableValues:n.map(e=>e.key),minAvailableCount:4})}}function _k(e){let{attachmentSupported:t,inputBarRef:n,presenter:r}=e,i=(0,P.useCallback)(e=>{if(e===`unsupported-type`){m.error(o(`chatInputAttachmentUnsupported`));return}if(e===`too-large`){m.error(o(`chatInputAttachmentTooLarge`).replace(`{maxMb}`,String(kD/(1024*1024))));return}m.error(o(`chatInputAttachmentReadFailed`))},[]),a=(0,P.useCallback)(async e=>{if(!t||e.length===0)return;let a=await PD(e,{uploadBatch:oe});if(a.attachments.length>0){let e=r.chatInputManager.addAttachments?.(a.attachments)??[];e.length>0&&n.current?.insertFileTokens(e.map(e=>({tokenKey:e.id,label:e.name})))}a.rejected.length>0&&i(a.rejected[0].reason)},[t,n,r.chatInputManager,i]);return{handleFilesAdd:a,handleFileInputChange:(0,P.useCallback)(async e=>{let t=Array.from(e.target.files??[]);e.currentTarget.value=``,await a(t)},[a])}}function vk(e){let{allModelsLabel:t,hasModelOptions:n,isModelOptionsLoading:r,modelRecords:i,presenter:a,recentModelValues:s,recentModelsLabel:c,selectedModel:l,selectedThinkingLevel:u,thinkingSupportedLevels:d,thinkingDefaultLevel:f}=e;return[RD({modelOptions:i,recentModelValues:s,selectedModel:l,isModelOptionsLoading:r,hasModelOptions:n,onValueChange:a.chatInputManager.selectModel,texts:{modelSelectPlaceholder:o(`chatSelectModel`),modelNoOptionsLabel:o(`chatModelNoOptions`),recentModelsLabel:c,allModelsLabel:t}}),zD({supportedLevels:d,selectedThinkingLevel:u,defaultThinkingLevel:f,onValueChange:e=>a.chatInputManager.selectThinkingLevel(e),texts:{thinkingLabels:fk()}})].filter(e=>e!==null)}function yk(e){let{allSkillsLabel:t,presenter:n,recentSkillGroupValues:r,recentSkillValues:i,recentSkillsLabel:a,skillRecords:s,snapshot:c}=e;return YD({skillRecords:s,recentSkillValues:i,groupedRecentSkillValues:r,selectedSkills:c.selectedSkills,isLoading:c.isSkillsLoading,onSelectedKeysChange:n.chatInputManager.selectSkills,texts:{title:o(`chatSkillsPickerTitle`),searchPlaceholder:o(`chatSkillsPickerSearchPlaceholder`),emptyLabel:o(`chatSkillsPickerEmpty`),loadingLabel:o(`sessionsLoading`),manageLabel:o(`chatSkillsPickerManage`),recentSkillsLabel:a,allSkillsLabel:t}})}function bk(){let e=QD(),{language:t}=ut(),{isMobile:n}=ft(),r=Q(e=>e.snapshot),i=lk(w()),[a,s]=(0,P.useState)(null),c=(0,P.useRef)(null),l=(0,P.useRef)(null),u=hk(t),{skillRecords:d,modelRecords:f,recentModelValues:p,recentSkillValues:m,recentSkillGroupValues:h}=gk(r,u.skillScopeLabels),g=mO(r),_=hO(r),v=gO(r),y=_O(r),b=typeof e.chatInputManager.addAttachments==`function`,x=o(v?`chatModelNoOptions`:n?`chatInputPlaceholderCompact`:`chatInputPlaceholder`),S=(0,P.useMemo)(()=>qD(d,a??``,u.slashTexts,m),[u.slashTexts,m,d,a]),C=ck(),T=f.find(e=>e.value===r.selectedModel),E=T?.thinkingCapability?.supported??[],D=r.stopDisabledReason===`__preparing__`?o(`chatStopPreparing`):r.stopDisabledReason?.trim()||o(`chatStopUnavailable`),{handleFilesAdd:O,handleFileInputChange:ee}=_k({attachmentSupported:b,inputBarRef:c,presenter:e}),k=vk({allModelsLabel:u.allModelsLabel,hasModelOptions:g,isModelOptionsLoading:_,modelRecords:f,presenter:e,recentModelValues:p,recentModelsLabel:u.recentModelsLabel,selectedModel:r.selectedModel,selectedThinkingLevel:r.selectedThinkingLevel,thinkingSupportedLevels:E,thinkingDefaultLevel:T?.thinkingCapability?.default??null}),te=yk({allSkillsLabel:u.allSkillsLabel,presenter:e,recentSkillGroupValues:h,recentSkillValues:m,recentSkillsLabel:u.recentSkillsLabel,skillRecords:d,snapshot:r}),A=r.draft.trim().length>0||r.attachments.length>0||iO(r.composerNodes).length>0;return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(pm,{ref:c,composer:{nodes:r.composerNodes,placeholder:x,disabled:y,onNodesChange:e.chatInputManager.setComposerNodes,...b?{onFilesAdd:O}:{},onSlashQueryChange:s},slashMenu:{isLoading:r.isSkillsLoading,items:S,onSelectItem:t=>{t.value&&e.chatInputManager.rememberSkillSelection(t.value)},texts:{slashLoadingLabel:o(`chatSlashLoading`),slashSectionLabel:o(`chatSlashSectionSkills`),slashEmptyLabel:o(`chatSlashNoResult`),slashHintLabel:o(`chatSlashHint`),slashSkillHintLabel:o(`chatSlashSkillHint`)}},hint:LD({isModelOptionsLoading:_,isModelOptionsEmpty:v,onGoToProviders:e.chatInputManager.goToProviders,texts:{noModelOptionsLabel:o(`chatModelNoOptions`),configureProviderLabel:o(`chatGoConfigureProvider`)}}),toolbar:{selects:k,accessories:[{key:`attach`,label:o(`chatInputAttach`),icon:`paperclip`,iconOnly:!0,disabled:!b||y||r.isSending,...b?{onClick:()=>l.current?.click()}:{tooltip:o(`chatInputAttachComingSoon`)}}],skillPicker:te,actions:{sendError:i?null:r.sendError,isSending:r.isSending,canStopGeneration:r.canStopGeneration,sendDisabled:vO({snapshot:r,hasSendableDraft:A,isRuntimeBlocked:i}),stopDisabled:!r.canStopGeneration,stopHint:D,sendButtonLabel:o(`chatSend`),stopButtonLabel:o(`chatStop`),contextWindow:C,onSend:e.chatInputManager.send,onStop:e.chatInputManager.stop}}}),b?(0,N.jsx)(`input`,{ref:l,type:`file`,multiple:!0,className:`hidden`,onChange:ee}):null]})}var xk=[`cmd`,`command`,`query`,`q`,`path`,`url`,`to`,`channel`,`agentId`,`sessionKey`];function Sk(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Ck(e,t=2400){return e.length<=t?e:`${e.slice(0,t)}\n…`}function wk(e,t=120){let n=e.replace(/\s+/g,` `).trim();return n.length<=t?n:t<=1?`…`:`${n.slice(0,t-1)}…`}function Tk(e){if(typeof e==`string`)return e;if(typeof e==`number`||typeof e==`boolean`)return String(e);if(e==null)return``;try{return Ck(JSON.stringify(e,null,2))}catch{return String(e)}}function Ek(e){if(Sk(e))return e;if(typeof e!=`string`)return null;let t=e.trim();if(!t.startsWith(`{`)&&!t.startsWith(`[`))return null;try{let e=JSON.parse(t);return Sk(e)?e:null}catch{return null}}function Dk(e){let t=Ek(e);if(!t){let t=Tk(e).trim();return t?wk(t,120):void 0}let n=[];for(let e of xk){let r=t[e];if(typeof r==`string`&&r.trim()?n.push(`${e}: ${r.trim()}`):(typeof r==`number`||typeof r==`boolean`)&&n.push(`${e}: ${String(r)}`),n.length>=2)break}return n.length>0?wk(n.join(` · `),120):wk(Tk(t),140)}var Ok=`ui_inline_tokens`,kk=`$`;function Ak(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function jk(e){if(typeof e!=`string`)return null;let t=e.trim();return t.length>0?t:null}function Mk(e){let t=new Set,n=[];for(let r of e){let e=`${r.kind}:${r.key}:${r.rawText}`;t.has(e)||(t.add(e),n.push(r))}return n}function Nk(e){let t=[];for(let n of e)n.type!==`token`||n.tokenKind!==`skill`||t.push({kind:`skill`,key:n.tokenKey,label:n.label,rawText:`${kk}${n.tokenKey}`});return Mk(t)}function Pk(e){let t=e?.[Ok];if(!Array.isArray(t))return[];let n=[];for(let e of t){if(!Ak(e))continue;let t=jk(e.kind),r=jk(e.key),i=jk(e.rawText);!t||!r||!i||n.push({kind:t,key:r,rawText:i,label:jk(e.label)??r})}return Mk(n)}function Fk(e,t){if(e.length===0||t.length===0)return e.length===0?[]:[{type:`text`,text:e}];let n=[...t].sort((e,t)=>t.rawText.length-e.rawText.length),r=[],i=0;for(;i<e.length;){let t=null;for(let r of n)if(e.startsWith(r.rawText,i)){t=r;break}if(!t){let t=i+1;for(;t<e.length&&!n.some(n=>e.startsWith(n.rawText,t));)t+=1;r.push({type:`text`,text:e.slice(i,t)}),i=t;continue}r.push({type:`token`,token:t}),i+=t.rawText.length}return r}var Ik=/\u200B|\u200C|\u200D|\u2060|\uFEFF/g;function Lk(e){let t=e.trim();return t&&t.replace(Ik,``).trim()?t:null}function Rk(e){return e.replace(Ik,``).trim().length>0}function zk(e,t){let n=Fk(e,t);if(n.length===0)return null;let r=[],i=!1;for(let e of n){if(e.type===`token`){i=!0,r.push({type:`token`,token:{kind:e.token.kind,key:e.token.key,label:e.token.label,rawText:e.token.rawText}});continue}e.text.length!==0&&(Rk(e.text)&&(i=!0),r.push({type:`markdown`,text:e.text}))}return i?r:null}function Bk(e,t){let n=zk(e.text,t);if(n&&n.some(e=>e.type===`token`))return{type:`inline-content`,segments:n};let r=Lk(e.text);return r?{type:`markdown`,text:r}:null}function Vk(e){return Lk(e)}function Hk(e){return typeof e==`object`&&!!e}function Uk(e){if(typeof e!=`string`)return null;let t=e.trim();return t.length>0?t:null}function Wk(e){if(typeof e==`number`&&Number.isFinite(e)&&e>=0)return e;if(typeof e!=`string`)return null;let t=e.trim();if(!t)return null;let n=Number(t);return Number.isFinite(n)&&n>=0?n:null}function Gk(e){return Hk(e)?`command`in e||`workingDir`in e||`exitCode`in e||`stdout`in e||`stderr`in e||`aggregated_output`in e||`combinedOutput`in e:!1}function Kk(e,t){if(!Hk(e))return null;let n=Hk(e.asset)?e.asset:Array.isArray(e.assets)&&e.assets.length>0&&Hk(e.assets[0])?e.assets[0]:null;if(!n)return null;let r=Uk(n.url),i=Uk(n.mimeType)??`application/octet-stream`,a=Wk(n.sizeBytes);return r?{type:`file`,file:{label:Uk(n.name)??(i.startsWith(`image/`)?t.imageAttachmentLabel:t.fileAttachmentLabel),mimeType:i,dataUrl:r,...a==null?{}:{sizeBytes:a},isImage:i.startsWith(`image/`)}}:null}function qk(e,t){return{kind:e.kind,toolName:e.name,...`agentId`in e&&e.agentId?{agentId:e.agentId}:{},summary:e.detail,inputLabel:t.toolInputLabel,input:`input`in e&&typeof e.input==`string`?e.input:void 0,output:e.text,outputData:e.outputData,hasResult:!!e.hasResult,statusTone:e.statusTone,statusLabel:e.statusLabel,titleLabel:e.kind===`call`?t.toolCallLabel:t.toolResultLabel,outputLabel:t.toolOutputLabel,emptyLabel:t.toolNoOutputLabel,...`action`in e&&e.action?{action:e.action}:{},...`fileOperation`in e&&e.fileOperation?{fileOperation:e.fileOperation}:{}}}function Jk(e){let t=typeof e.status==`string`?e.status.trim().toLowerCase():``,n=typeof e.error==`string`&&e.error.trim().length>0;return e.cancelled===!0||t===`cancelled`?{kind:`result`,hasResult:!0,statusTone:`cancelled`,statusLabel:e.texts.toolStatusCancelledLabel}:n||t===`error`?{kind:`result`,hasResult:!0,statusTone:`error`,statusLabel:e.texts.toolStatusFailedLabel}:t===`result`||e.result!=null?{kind:`result`,hasResult:!0,statusTone:`success`,statusLabel:e.texts.toolStatusCompletedLabel}:{kind:`call`,hasResult:!1,statusTone:`running`,statusLabel:e.texts.toolStatusRunningLabel}}function Yk(e){if(typeof e!=`string`)return e;let t=e.trim();if(!t.startsWith(`{`)&&!t.startsWith(`[`))return e;try{return JSON.parse(t)}catch{return e}}function Xk(e,t){return Tk(t??Yk(e)).trim()||void 0}function Zk(e){return typeof e==`object`&&!!e}function Qk(e){if(typeof e!=`string`)return e;let t=e.trim();if(!t.startsWith(`{`)&&!t.startsWith(`[`))return e;try{return JSON.parse(t)}catch{return e}}function $k(e){if(typeof e!=`string`)return null;let t=e.trim();return t.length>0?t:null}function eA(e){let t=Qk(e);return Zk(t)?$k(t.agentId):null}function tA(e){return eA(e.parsedArgs)??eA(e.args)??eA(e.result)}var nA=12e3,rA=/^@@ -(\d+)(?:,\d+)? \+(\d+)(?:,\d+)? @@/;function iA(e){let t=e.replace(/\r\n/g,`
|
|
52
52
|
`).replace(/\r/g,`
|
|
53
53
|
`);return t===``?[]:t.split(`
|
|
54
|
-
`)}function
|
|
55
|
-
`;case`r`:return`\r`;case`t`:return` `;default:return e}}function
|
|
54
|
+
`)}function aA(e){return typeof e==`number`?e+1:void 0}function oA(e){return{kind:e.kind,text:e.text,...typeof e.oldLineNumber==`number`?{oldLineNumber:e.oldLineNumber}:{},...typeof e.newLineNumber==`number`?{newLineNumber:e.newLineNumber}:{}}}function sA(e){let t=rA.exec(e);return t?{oldLineNumber:Number(t[1]),newLineNumber:Number(t[2])}:null}function cA(e){return iA(e.text).map((t,n)=>e.kind===`add`?oA({kind:`add`,text:t,newLineNumber:e.newStartLine+n}):oA({kind:`context`,text:t,oldLineNumber:e.oldStartLine+n,newLineNumber:e.newStartLine+n}))}function lA(e){let t=e.oldStartLine,n=e.newStartLine;return[...e.beforeLines.map(e=>{let n=oA({kind:`remove`,text:e,oldLineNumber:t});return t=aA(t),n}),...e.afterLines.map(e=>{let t=oA({kind:`add`,text:e,newLineNumber:n});return n=aA(n),t})]}function uA(e){let t=Array.from({length:e.beforeLines.length+1},()=>Array.from({length:e.afterLines.length+1},()=>0));for(let n=e.beforeLines.length-1;n>=0;--n)for(let r=e.afterLines.length-1;r>=0;--r)t[n][r]=e.beforeLines[n]===e.afterLines[r]?(t[n+1][r+1]??0)+1:Math.max(t[n+1][r]??0,t[n][r+1]??0);return t}function dA(e){for(let t=e.beforeIndex;t<e.beforeLines.length;t+=1)e.lines.push(oA({kind:`remove`,text:e.beforeLines[t]??``,oldLineNumber:e.oldLineNumber})),e.oldLineNumber=aA(e.oldLineNumber);for(let t=e.afterIndex;t<e.afterLines.length;t+=1)e.lines.push(oA({kind:`add`,text:e.afterLines[t]??``,newLineNumber:e.newLineNumber})),e.newLineNumber=aA(e.newLineNumber)}function fA(e){let t=iA(e.beforeText),n=iA(e.afterText);if(t.length*n.length>nA)return lA({beforeLines:t,afterLines:n,oldStartLine:e.oldStartLine,newStartLine:e.newStartLine});let r=uA({beforeLines:t,afterLines:n}),i=[],a=0,o=0,s=e.oldStartLine,c=e.newStartLine;for(;a<t.length&&o<n.length;){if(t[a]===n[o]){i.push(oA({kind:`context`,text:t[a]??``,oldLineNumber:s,newLineNumber:c})),a+=1,o+=1,s=aA(s),c=aA(c);continue}if((r[a+1][o]??0)>=(r[a][o+1]??0)){i.push(oA({kind:`remove`,text:t[a]??``,oldLineNumber:s})),a+=1,s=aA(s);continue}i.push(oA({kind:`add`,text:n[o]??``,newLineNumber:c})),o+=1,c=aA(c)}return dA({lines:i,beforeLines:t,afterLines:n,beforeIndex:a,afterIndex:o,oldLineNumber:s,newLineNumber:c}),i}var pA=120;function mA(e){let t=e.lines.filter(e=>e.kind===`add`).length,n=e.lines.filter(e=>e.kind===`remove`).length,r=[],i=e.operation?.trim().toLowerCase()??``;return i&&i!==`update`&&r.push(i),t>0&&r.push(`+${t}`),n>0&&r.push(`-${n}`),r.length>0?r.join(` · `):void 0}function hA(e){let t=e.operation?.trim().toLowerCase()??``;return{oldStartLine:typeof e.oldStartLine==`number`?e.oldStartLine:(t===`delete`||t===`remove`)&&e.beforeText!=null?1:void 0,newStartLine:typeof e.newStartLine==`number`?e.newStartLine:(t===`write`||t===`add`)&&e.afterText!=null?1:void 0}}function gA(e){return e.length<=pA?{lines:e,truncated:!1}:{lines:e.slice(0,pA),truncated:!0}}function _A(e){let t=gA(e.lines);return{path:e.path,display:`diff`,caption:mA({operation:e.operation,lines:e.lines}),lines:t.lines,...t.truncated?{fullLines:e.lines}:{},truncated:t.truncated}}function vA(e){let t=e.text.trim();if(!t)return null;let n=e.operation?.trim().toLowerCase()===`write`?`add`:`context`,r=typeof e.oldStartLine==`number`?e.oldStartLine:1,i=typeof e.newStartLine==`number`?e.newStartLine:1,a=cA({text:t,kind:n,oldStartLine:r,newStartLine:i});return{path:e.path,display:`preview`,caption:mA({operation:e.operation,lines:a}),lines:a,rawText:t,oldStartLine:r,newStartLine:i}}function yA(e){let{oldStartLine:t,newStartLine:n}=hA(e),r=fA({beforeText:e.beforeText??``,afterText:e.afterText??``,oldStartLine:t,newStartLine:n}),i=gA(r);return i.lines.length===0?null:{path:e.path,display:`diff`,caption:mA({operation:e.operation,lines:r}),lines:i.lines,...i.truncated?{fullLines:r}:{},...e.beforeText==null?{}:{beforeText:e.beforeText},...e.afterText==null?{}:{afterText:e.afterText},...typeof t==`number`?{oldStartLine:t}:{},...typeof n==`number`?{newStartLine:n}:{},truncated:i.truncated}}function bA(e){return e.line.startsWith(`*** Update File: `)?(e.flushCurrent(),e.setCurrent(e.line.slice(17).trim(),`update`),!0):e.line.startsWith(`*** Add File: `)?(e.flushCurrent(),e.setCurrent(e.line.slice(14).trim(),`add`),!0):e.line.startsWith(`*** Delete File: `)?(e.flushCurrent(),e.setCurrent(e.line.slice(17).trim(),`delete`),!0):!1}function xA(e){let{currentLines:t,line:n}=e;return n.startsWith(`+`)?(t.push(oA({kind:`add`,text:n.slice(1),newLineNumber:e.newLineNumber})),{oldLineNumber:e.oldLineNumber,newLineNumber:aA(e.newLineNumber)}):n.startsWith(`-`)?(t.push(oA({kind:`remove`,text:n.slice(1),oldLineNumber:e.oldLineNumber})),{oldLineNumber:aA(e.oldLineNumber),newLineNumber:e.newLineNumber}):n.startsWith(` `)?(t.push(oA({kind:`context`,text:n.slice(1),oldLineNumber:e.oldLineNumber,newLineNumber:e.newLineNumber})),{oldLineNumber:aA(e.oldLineNumber),newLineNumber:aA(e.newLineNumber)}):{oldLineNumber:e.oldLineNumber,newLineNumber:e.newLineNumber}}function SA(e){let t=[],n=null,r=null,i=[],a,o,s=()=>{if(!n){i=[],r=null,a=void 0,o=void 0;return}t.push(_A({path:n,operation:r,lines:i})),n=null,r=null,i=[],a=void 0,o=void 0};for(let t of iA(e)){if(bA({line:t,flushCurrent:s,setCurrent:(e,t)=>{n=e,r=t}})||t.startsWith(`*** Move to: `)||t.startsWith(`*** Begin Patch`)||t.startsWith(`*** End Patch`))continue;if(t.startsWith(`@@`)){let e=sA(t);a=e?.oldLineNumber,o=e?.newLineNumber;continue}if(!n)continue;let e=xA({currentLines:i,line:t,oldLineNumber:a,newLineNumber:o});a=e.oldLineNumber,o=e.newLineNumber}return s(),t}function CA(e){let t=[],n=null,r=[],i,a,o=()=>{if(!n){r=[],i=void 0,a=void 0;return}t.push(_A({path:n,operation:`update`,lines:r})),n=null,r=[],i=void 0,a=void 0};for(let t of iA(e)){if(t.startsWith(`+++ `)){o(),n=t.slice(4).trim().replace(/^b\//,``).replace(/^a\//,``);continue}if(t.startsWith(`--- `))continue;if(t.startsWith(`@@`)){let e=sA(t);i=e?.oldLineNumber,a=e?.newLineNumber;continue}if(!n)continue;let e=xA({currentLines:r,line:t,oldLineNumber:i,newLineNumber:a});i=e.oldLineNumber,a=e.newLineNumber}return o(),t}function wA(e){return e.includes(`*** Begin Patch`)?SA(e):e.includes(`--- `)&&e.includes(`+++ `)?CA(e):[]}function TA(e){switch(e){case`"`:case`\\`:case`/`:return e;case`b`:return`\b`;case`f`:return`\f`;case`n`:return`
|
|
55
|
+
`;case`r`:return`\r`;case`t`:return` `;default:return e}}function EA(e,t){let n=`"${t}"`,r=e.indexOf(n);if(r<0)return null;let i=e.indexOf(`:`,r+n.length);if(i<0)return null;let a=i+1;for(;a<e.length&&/\s/.test(e[a]??``);)a+=1;return e[a]===`"`?a+1:null}function DA(e,t,n=1/0){let r=``,i=!1;for(let a=t;a<e.length;a+=1){let t=e[a];if(t==null)break;if(i){r+=TA(t),i=!1;continue}if(t===`\\`){i=!0;continue}if(t===`"`)return{value:r,truncated:!1};if(r+=t,r.length>=n)return{value:r,truncated:!0}}return r.length>0?{value:r,truncated:!1}:null}function OA(e,t,n=1/0){for(let r of t){let t=EA(e,r);if(t!=null)return DA(e,t,n)}return null}function kA(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function $(e){if(typeof e!=`string`)return null;let t=e.trim();return t.length>0?t:null}function AA(e){return typeof e==`string`&&e.trim()?e.trim():null}function jA(e){return typeof e==`number`&&Number.isInteger(e)&&e>0?e:typeof e==`string`&&/^\d+$/.test(e.trim())?Number(e.trim()):null}function MA(e){if(kA(e))return e;if(typeof e!=`string`)return null;let t=e.trim();if(!t.startsWith(`{`))return null;try{let e=JSON.parse(t);return kA(e)?e:null}catch{return null}}function NA(e){if(kA(e))return e;if(typeof e!=`string`)return null;let t=e.trim();if(!t.startsWith(`{`))return null;let n=OA(t,[`path`,`filePath`,`file_path`,`targetPath`,`target_path`,`filename`,`name`])?.value??null,r=OA(t,[`content`,`text`,`afterText`,`after_text`])?.value??null,i=OA(t,[`oldText`,`beforeText`,`before_text`])?.value??null,a=OA(t,[`newText`,`afterText`,`after_text`])?.value??null,o=OA(t,[`patch`,`diff`,`unifiedDiff`,`unified_diff`])?.value??null,s={};return n&&(s.path=n),r&&(s.content=r),i&&(s.oldText=i),a&&(s.newText=a),o&&(s.patch=o),Object.keys(s).length>0?s:null}function PA(e){return AA(e.path)??AA(e.filePath)??AA(e.file_path)??AA(e.targetPath)??AA(e.target_path)??AA(e.filename)??AA(e.name)}function FA(e){return $(e.operation)??$(e.op)??$(e.action)??$(e.kind)??$(e.type)??$(e.status)}function IA(e,t){for(let n of t){let t=jA(e[n]);if(t!==null)return t}return null}function LA(e){return IA(e,[`oldStartLine`,`old_start_line`,`startOldLine`,`start_old_line`,`oldLineStart`,`old_line_start`,`oldLineNumber`,`old_line_number`,`lineStart`,`line_start`,`startLine`,`start_line`,`lineNumber`,`line_number`])}function RA(e){return IA(e,[`newStartLine`,`new_start_line`,`startNewLine`,`start_new_line`,`newLineStart`,`new_line_start`,`newLineNumber`,`new_line_number`,`lineStart`,`line_start`,`startLine`,`start_line`,`lineNumber`,`line_number`])}function zA(e){return $(e.patch)??$(e.diff)??$(e.unifiedDiff)??$(e.unified_diff)}function BA(e){return $(e.beforeText)??$(e.before_text)??$(e.oldText)??$(e.old_text)??$(e.oldContent)??$(e.old_content)??$(e.before)??$(e.previous)}function VA(e){return $(e.afterText)??$(e.after_text)??$(e.newText)??$(e.new_text)??$(e.newContent)??$(e.new_content)??$(e.content)??$(e.text)??$(e.after)??$(e.updated)}var HA=new Set([`file_change`,`read_file`,`write_file`,`edit_file`,`apply_patch`]);function UA(e){let t=e.map((e,t)=>({key:`${e.path}-${t+1}`,path:e.path,display:e.display,...e.caption?{caption:e.caption}:{},lines:e.lines,...e.fullLines?{fullLines:e.fullLines}:{},...e.rawText?{rawText:e.rawText}:{},...e.beforeText?{beforeText:e.beforeText}:{},...e.afterText?{afterText:e.afterText}:{},...typeof e.oldStartLine==`number`?{oldStartLine:e.oldStartLine}:{},...typeof e.newStartLine==`number`?{newStartLine:e.newStartLine}:{},...e.truncated?{truncated:!0}:{}})).filter(e=>e.lines.length>0||!!e.rawText);if(t.length===0)return null;let n=t.map(e=>e.path);return{summary:n.length===1?n[0]:`${n.length} files · ${n.slice(0,2).join(` · `)}${n.length>2?` …`:``}`,fileOperation:{blocks:t}}}function WA(e,t){let n=PA(e)??t,r=FA(e),i=LA(e),a=RA(e),o=zA(e);if(o){let e=wA(o);if(e.length>0)return e[0]??null}let s=BA(e),c=VA(e);if(s!=null||c!=null)return yA({path:n,beforeText:s,afterText:c,operation:r,oldStartLine:i,newStartLine:a});let l=$(e.preview);return l?vA({path:n,text:l,operation:r,oldStartLine:i,newStartLine:a}):null}function GA(e){if(!Array.isArray(e))return[];let t=[];return e.forEach((e,n)=>{if(typeof e==`string`){let n=wA(e);n.length>0&&t.push(...n);return}if(!kA(e))return;let r=WA(e,PA(e)??`file-${n+1}`);if(r){t.push(r);return}let i=Array.isArray(e.changes)?GA(e.changes):[];i.length>0&&t.push(...i)}),t}function KA(e){let t=MA(e.result)??MA(e.parsedArgs)??MA(e.args);return t?UA(GA(t.changes)):null}function qA(e){let t=MA(e.parsedArgs)??MA(e.args)??NA(e.args),n=t&&PA(t),r=$(e.result);return!n||!r?null:UA([vA({path:n,text:r,operation:`read`})].filter(e=>!!e))}function JA(e){if(e.status===`partial-call`&&typeof e.args==`string`){let t=OA(e.args,[`path`,`filePath`,`file_path`,`targetPath`,`target_path`,`filename`,`name`]),n=OA(e.args,[`content`,`text`,`afterText`,`after_text`]);if(t?.value&&n?.value){let e=vA({path:t.value,text:n.value,operation:`write`});if(e)return UA([e])}}let t=MA(e.parsedArgs)??MA(e.args)??NA(e.args);if(!t)return null;let n=PA(t),r=$(t.content);return!n||!r?null:UA([vA({path:n,text:r,operation:`write`})].filter(e=>!!e))}function YA(e){let t=MA(e.result),n=MA(e.parsedArgs)??MA(e.args)??NA(e.args);if(!t&&!n)return null;let r=(t?PA(t):null)??(n?PA(n):null),i=(t?BA(t):null)??(n?BA(n):null),a=(t?VA(t):null)??(n?VA(n):null),o=(t?LA(t):null)??(n?LA(n):null),s=(t?RA(t):null)??(n?RA(n):null);return!r||i==null&&a==null?null:UA([yA({path:r,beforeText:i,afterText:a,operation:`edit`,oldStartLine:o,newStartLine:s})].filter(e=>!!e))}function XA(e){let t=MA(e.parsedArgs),n=MA(e.args)??NA(e.args),r=$(e.args)??(t?$(t.patch):null)??(n?$(n.patch):null);return r?UA(wA(r)):null}function ZA(e){return HA.has(e.toolName)?e.toolName===`file_change`?KA(e):e.toolName===`read_file`?qA(e):e.toolName===`write_file`?JA(e):e.toolName===`edit_file`?YA(e):e.toolName===`apply_patch`?XA(e):null:null}function QA(e){return typeof e==`object`&&!!e}function $A(e){if(typeof e!=`string`)return null;let t=e.trim();return t.length>0?t:null}function ej(e){return!QA(e)||e.kind!==`nextclaw.session_request`?null:e}function tj(e){return!QA(e)||e.kind!==`nextclaw.session`?null:e}function nj(e){if(typeof e!=`string`)return e;let t=e.trim();if(!t.startsWith(`{`)&&!t.startsWith(`[`))return e;try{return JSON.parse(t)}catch{return e}}function rj(e){return Tk(nj(e)).trim()||void 0}function ij(e,t){return[$A(e.title)?`title: ${e.title?.trim()}`:null,$A(e.sessionId)?`session: ${e.sessionId?.trim()}`:null,$A(e.task)?`task: ${e.task?.trim()}`:null].filter(e=>!!e).join(` · `)||Dk(t)}function aj(e,t){return[$A(e.title)?`title: ${e.title?.trim()}`:null,$A(e.sessionId)?`session: ${e.sessionId?.trim()}`:null].filter(e=>!!e).join(` · `)||Dk(t)}function oj(e){let t=$A(e.requestId),n=$A(e.sessionId),r=$A(e.title),i=$A(e.task),a=$A(e.status),o=$A(e.notify),s=$A(e.lifecycle),c=$A(e.parentSessionId),l=$A(e.spawnedByRequestId),u=e.message===void 0?``:Tk(e.message).trim(),d=e.finalResponseText===void 0?``:Tk(e.finalResponseText).trim(),f=e.error===void 0?``:Tk(e.error).trim(),p=[t?`Request ID: ${t}`:null,n?`Session ID: ${n}`:null,typeof e.isChildSession==`boolean`?`Target: ${e.isChildSession?`child`:`session`}`:null,a?`Status: ${a}`:null,o?`Notify: ${o}`:null,s?`Lifecycle: ${s}`:null,c?`Parent Session ID: ${c}`:null,l?`Spawned By Request ID: ${l}`:null,r?`Title: ${r}`:null,i?`Task:\n${i}`:null,d?`Final Response:\n${d}`:f?`Error:\n${f}`:u?`Status:\n${u}`:null].filter(e=>!!e);return p.length>0?p.join(`
|
|
56
56
|
|
|
57
|
-
`):void 0}function
|
|
57
|
+
`):void 0}function sj(e){let t=$A(e.sessionId),n=$A(e.title),r=$A(e.sessionType),i=$A(e.lifecycle),a=$A(e.parentSessionId),o=$A(e.createdAt),s=[t?`Session ID: ${t}`:null,typeof e.isChildSession==`boolean`?`Target: ${e.isChildSession?`child`:`session`}`:null,n?`Title: ${n}`:null,r?`Session Type: ${r}`:null,i?`Lifecycle: ${i}`:null,a?`Parent Session ID: ${a}`:null,o?`Created At: ${o}`:null].filter(e=>!!e);return s.length>0?s.join(`
|
|
58
58
|
|
|
59
|
-
`):void 0}function hA(e){let{invocation:t,texts:n}=e,{toolName:r,toolCallId:i,args:a,result:o}=t;if(r!==`spawn`&&r!==`sessions_request`&&r!==`sessions_spawn`)return null;let s=sA(o);if(s){let e=oA(s.status)?.toLowerCase(),t=dA(s,a),o=pA(s),c=oA(s.sessionId),l=ck({args:a,result:s}),u=c?{kind:`open-session`,sessionId:c,sessionKind:s.isChildSession===!0?`child`:`session`,...l?{agentId:l}:{},...oA(s.title)?{label:s.title.trim()}:{},...oA(s.parentSessionId)?{parentSessionId:s.parentSessionId.trim()}:{}}:void 0;return e===`failed`?{kind:`result`,name:r,detail:t,input:uA(a),text:o,callId:i||void 0,hasResult:!!o,statusTone:`error`,statusLabel:n.toolStatusFailedLabel,...l?{agentId:l}:{},...u?{action:u}:{}}:e===`completed`?{kind:`result`,name:r,detail:t,input:uA(a),text:o,callId:i||void 0,hasResult:!!o,statusTone:`success`,statusLabel:n.toolStatusCompletedLabel,...l?{agentId:l}:{},...u?{action:u}:{}}:{kind:`result`,name:r,detail:t,input:uA(a),text:o,callId:i||void 0,hasResult:!!o,statusTone:`running`,statusLabel:n.toolStatusRunningLabel,...l?{agentId:l}:{},...u?{action:u}:{}}}let c=cA(o);if(!c)return null;let l=fA(c,a),u=mA(c),d=oA(c.sessionId),f=ck({args:a,result:c}),p=d?{kind:`open-session`,sessionId:d,sessionKind:c.isChildSession===!0?`child`:`session`,...f?{agentId:f}:{},...oA(c.title)?{label:c.title.trim()}:{},...oA(c.parentSessionId)?{parentSessionId:c.parentSessionId.trim()}:{}}:void 0;return{kind:`result`,name:r,detail:l,input:uA(a),text:u,callId:i||void 0,hasResult:!!u,statusTone:`success`,statusLabel:n.toolStatusCompletedLabel,...f?{agentId:f}:{},...p?{action:p}:{}}}function gA(e,t){let n=JO(e.reasoning);return n?{type:`reasoning`,text:n,label:t.reasoningLabel}:null}function _A(e,t){let n=e.mimeType.startsWith(`image/`),r=ZO(e.sizeBytes);return{type:`file`,file:{label:typeof e.name==`string`&&e.name.trim()?e.name.trim():n?t.imageAttachmentLabel:t.fileAttachmentLabel,mimeType:e.mimeType,dataUrl:typeof e.url==`string`&&e.url.trim().length>0?e.url.trim():`data:${e.mimeType};base64,${e.data}`,...r==null?{}:{sizeBytes:r},isImage:n}}}function vA(e,t){let n=e.toolInvocation,r=$O(n.result,t);if(r)return r;let i=hA({invocation:n,texts:{toolStatusRunningLabel:t.toolStatusRunningLabel,toolStatusCompletedLabel:t.toolStatusCompletedLabel,toolStatusFailedLabel:t.toolStatusFailedLabel}});if(i)return{type:`tool-card`,card:ek(i,t)};let a=tk({status:n.status,error:n.error,cancelled:n.cancelled,result:n.result,texts:t}),o=iA({toolName:n.toolName,status:n.status,toolCallId:n.toolCallId,args:n.args,parsedArgs:n.parsedArgs,result:n.result}),s=o?.summary??PO(n.parsedArgs??n.args),c=o?void 0:rk(n.args,n.parsedArgs),l=typeof n.error==`string`&&n.error.trim()?n.error.trim():n.result==null?``:MO(n.result).trim(),u=!n.error&&QO(n.result),d=(!o?.fileOperation||!!n.error)&&!u,f=ck(n);return{type:`tool-card`,card:ek({kind:a.kind,name:n.toolName,...f?{agentId:f}:{},detail:s,...c?{input:c}:{},text:d&&l?l:void 0,outputData:n.result,callId:n.toolCallId||void 0,hasResult:a.hasResult,statusTone:a.statusTone,statusLabel:a.statusLabel,...o?.fileOperation?{fileOperation:o.fileOperation}:{}},t)}}function yA(e,t){return{type:`unknown`,label:t.unknownPartLabel,rawType:typeof e.type==`string`?e.type:`unknown`,text:MO(e)}}function bA(e){return e.type===`text`&&typeof e.text==`string`}function xA(e){return e.type===`reasoning`&&typeof e.reasoning==`string`}function SA(e){return e.type===`file`&&typeof e.mimeType==`string`&&typeof e.data==`string`}function CA(e){return e.type!==`tool-invocation`||typeof e.toolInvocation!=`object`||e.toolInvocation===null||Array.isArray(e.toolInvocation)?!1:`toolName`in e.toolInvocation&&typeof e.toolInvocation.toolName==`string`}function wA(e){return bA(e.part)?qO(e.part,e.inlineTokens):xA(e.part)?gA(e.part,e.texts):SA(e.part)?_A(e.part,e.texts):CA(e.part)?vA(e.part,e.texts):yA(e.part,e.texts)}function TA(e){let t=e.meta?.timestamp;return t&&Number.isFinite(Date.parse(t))?t:new Date().toISOString()}function EA(e,t){return e===`user`?t.user:e===`assistant`?t.assistant:e===`tool`?t.tool:e===`system`?t.system:t.fallback}function DA(e){return e===`user`||e===`assistant`||e===`tool`||e===`system`?e:`message`}function OA(e,t){return{id:e.id,role:DA(e.role),roleLabel:EA(e.role,t.texts.roleLabels),timestampLabel:t.formatTimestamp(TA(e)),status:e.meta?.status,parts:e.parts.map(n=>wA({part:n,inlineTokens:e.meta?.inlineTokens??[],texts:t.texts})).filter(e=>e!==null)}}var kA=function(e){return e.CALL=`call`,e.RESULT=`result`,e.PARTIAL_CALL=`partial-call`,e.ERROR=`error`,e.CANCELLED=`cancelled`,e}({});function AA(e){if(typeof e!=`string`)return null;let t=e.trim();return t.length>0?t:null}function jA(e){return AA(e)}function MA(e){let t=AA(e);if(!t)return null;let n=t.replace(/[\\/]+$/,``);if(!n)return t;let r=n.split(/[\\/]/).filter(Boolean);return r[r.length-1]??n}function NA(e){return/^[A-Za-z]:[\\/]?$/.test(e)||e===`/`?e:e.replace(/[\\/]+$/,``)}function PA(e){let t=NA(e.trim().replace(/\\/g,`/`));return/^[A-Za-z]:/.test(t)?`${t.slice(0,1).toLowerCase()}${t.slice(1)}`:t}function FA(e){let t=e.trim().replace(/\\/g,`/`);return t?/^[A-Za-z]:\//.test(t)?{prefix:t.slice(0,2),segments:t.slice(3).split(`/`).filter(Boolean)}:t.startsWith(`/`)?{prefix:`/`,segments:t.slice(1).split(`/`).filter(Boolean)}:{prefix:null,segments:t.split(`/`).filter(Boolean)}:{prefix:null,segments:[]}}function IA(e){let t=PA(e.path),n=PA(e.sessionProjectRoot);if(!t||!n)return null;if(!t.startsWith(`/`)&&!/^[A-Za-z]:\//.test(t))return t.split(`/`).filter(Boolean);if(t===n)return[];let r=n.endsWith(`/`)?n:`${n}/`;return t.startsWith(r)?t.slice(r.length).split(`/`).filter(Boolean):null}function LA(e){let{labels:t,leading:n=null}=e,r=t.map((e,n)=>({key:`${n}:${e}`,label:e,kind:n===t.length-1?`file`:`directory`,isCurrent:n===t.length-1}));return n?[n,...r]:r}function RA(e){let{column:t,line:n}=e;return typeof n==`number`?`L${n}${typeof t==`number`?`:${t}`:``}`:null}function zA(e){let{column:t,line:n,path:r,sessionProjectRoot:i,truncated:a}=e,o=r.trim(),s=i?.trim()&&o?IA({path:o,sessionProjectRoot:i}):null,c;if(i?.trim()&&s){let e=MA(i)??i.trim();c=LA({labels:s,leading:{key:`workspace:${e}`,label:e,kind:`workspace`,isCurrent:s.length===0}})}else{let{prefix:e,segments:t}=FA(o);c=LA({labels:t,leading:e?{key:`root:${e}`,label:e,kind:`root`,isCurrent:t.length===0}:null})}return c.length===0&&(c=[{key:`file:unknown`,label:o||`file`,kind:`file`,isCurrent:!0}]),{fullPath:o,locationLabel:RA({line:n,column:t}),truncated:a,segments:c}}var BA=new Set([`off`,`minimal`,`low`,`medium`,`high`,`adaptive`,`xhigh`]);function VA(e){if(typeof e==`string`)return e;try{return JSON.stringify(e??{})}catch{return String(e??``)}}function HA(e){return`${re}/api/ncp/assets/content?${new URLSearchParams({uri:e}).toString()}`}function UA(e){if(typeof e!=`string`)return null;let t=e.trim();return t.length>0?t:null}function WA(e){let{metadata:t}=e;return!t||typeof t!=`object`||Array.isArray(t)?null:t}function GA(e){let t=WA(e);return t?UA(t.preferred_model)??UA(t.preferredModel)??UA(t.model):null}function KA(e){let t=WA(e);if(!t)return null;let n=UA(t.preferred_thinking)??UA(t.thinking)??UA(t.thinking_level)??UA(t.thinkingLevel);if(!n)return null;let r=n.toLowerCase();return BA.has(r)?r:null}function qA(e){let t=WA(e);return t?UA(t.label):null}function JA(e){let t=WA(e);return t?jA(t.project_root??t.projectRoot):null}function YA(e){let t=WA(e);return t?UA(t.ui_last_read_at):null}function XA(e){let t=WA(e);return t?UA(t.runtime)??UA(t.session_type)??UA(t.sessionType)??`native`:`native`}function ZA(e){let t=WA(e);return t?UA(t.parent_session_id)??UA(t.parentSessionId):null}function QA(e){let t=WA(e);return t?UA(t.spawned_by_request_id)??UA(t.spawnedByRequestId):null}function $A(e){let t=WA(e);return t?t.child_session_promoted===!0:!1}function ej(e){if(e===`heartbeat`)return{type:`heartbeat`};if(e.startsWith(`cron:`))return{type:`cron`};if(e.startsWith(`agent:`)){let t=e.split(`:`);if(t.length>=3){let e=t[2];if(e&&e!==`main`&&e!==`direct`)return{channel:e}}}return{}}function tj(e){return e.state===`cancelled`?kA.CANCELLED:e.state===`result`?kA.RESULT:e.state===`partial-call`?kA.PARTIAL_CALL:kA.CALL}function nj(e){let t=[];for(let n of e){if(n.type===`text`){t.push({type:`text`,text:n.text});continue}if(n.type===`rich-text`){t.push({type:`text`,text:n.text});continue}if(n.type===`reasoning`){t.push({type:`reasoning`,reasoning:n.text,details:[]});continue}if(n.type===`source`){t.push({type:`source`,source:{sourceType:`url`,id:n.url??n.title??Math.random().toString(36).slice(2,8),url:n.url??``,...n.title?{title:n.title}:{}}});continue}if(n.type===`file`&&n.contentBase64){t.push({type:`file`,...n.name?{name:n.name}:{},mimeType:n.mimeType??`application/octet-stream`,data:n.contentBase64,...n.url?{url:n.url}:{},...typeof n.sizeBytes==`number`?{sizeBytes:n.sizeBytes}:{}});continue}if(n.type===`file`&&n.url){t.push({type:`file`,...n.name?{name:n.name}:{},mimeType:n.mimeType??`application/octet-stream`,data:``,url:n.url,...typeof n.sizeBytes==`number`?{sizeBytes:n.sizeBytes}:{}});continue}if(n.type===`file`&&n.assetUri){t.push({type:`file`,...n.name?{name:n.name}:{},mimeType:n.mimeType??`application/octet-stream`,data:``,url:HA(n.assetUri),...typeof n.sizeBytes==`number`?{sizeBytes:n.sizeBytes}:{}});continue}if(n.type===`step-start`){t.push({type:`step-start`});continue}n.type===`tool-invocation`&&t.push({type:`tool-invocation`,toolInvocation:{status:tj(n),toolCallId:n.toolCallId??`${n.toolName}-${Math.random().toString(36).slice(2,8)}`,toolName:n.toolName,args:VA(n.args),result:n.result}})}return t}function rj(e){return e===`service`?`system`:e===`tool`?`assistant`:e}function ij(e){return{id:e.id,role:rj(e.role),parts:nj(e.parts),meta:{source:`stream`,status:e.status,sessionKey:e.sessionId,timestamp:e.timestamp}}}function aj(e){let t=qA(e),n=GA(e),r=KA(e),i=JA(e),a=YA(e),o=UA(e.lastMessageAt),s=MA(i),c=ej(e.sessionId),l=ZA(e),u=QA(e),d=$A(e);return{key:e.sessionId,createdAt:e.updatedAt,updatedAt:e.updatedAt,...o?{lastMessageAt:o}:{},...a?{readAt:a}:{},...typeof e.agentId==`string`&&e.agentId.trim().length>0?{agentId:e.agentId.trim()}:{},...t?{label:t}:{},...c,...n?{preferredModel:n}:{},...r?{preferredThinking:r}:{},...i?{projectRoot:i}:{},...s?{projectName:s}:{},sessionType:XA(e),sessionTypeMutable:!1,isChildSession:!!l,...d?{isPromotedChildSession:d}:{},...l?{parentSessionId:l}:{},...u?{spawnedByRequestId:u}:{},messageCount:e.messageCount}}function oj(e){return e.map(aj)}function sj(){return`ncp-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,10)}`}function cj(){return g({queryKey:[`agents`],queryFn:A,staleTime:3e4})}function lj(){let e=se();return p({mutationFn:({data:e})=>E(e),onSuccess:()=>{e.invalidateQueries({queryKey:[`agents`]}),e.invalidateQueries({queryKey:[`config`]}),y.success(o(`configSavedApplied`))},onError:e=>{y.error(o(`configSaveFailed`)+`: `+e.message)}})}function uj(){let e=se();return p({mutationFn:({agentId:e,data:t})=>ie(e,t),onSuccess:()=>{e.invalidateQueries({queryKey:[`agents`]}),e.invalidateQueries({queryKey:[`config`]}),y.success(o(`configSavedApplied`))},onError:e=>{y.error(o(`configSaveFailed`)+`: `+e.message)}})}function dj(){let e=se();return p({mutationFn:({agentId:e})=>x(e),onSuccess:()=>{e.invalidateQueries({queryKey:[`agents`]}),e.invalidateQueries({queryKey:[`config`]}),y.success(o(`configSavedApplied`))},onError:e=>{y.error(o(`configSaveFailed`)+`: `+e.message)}})}function fj(e,t){return new Map([...t,...e].filter(e=>typeof e.id==`string`&&e.id.trim().length>0).map(e=>[e.id,e]))}function pj(e){let t=e?.trim()??``,n=Lj(e=>e.snapshot.availableAgents??[]),r=cj(),i=(0,P.useMemo)(()=>fj(n,r.data?.agents??[]),[r.data?.agents,n]);return(0,P.useMemo)(()=>{if(!t)return null;let e=i.get(t)??null;return{agentId:t,profile:e,displayName:e?.displayName?.trim()||t,avatarUrl:e?.avatarUrl?.trim()||null}},[i,t])}function mj({agentId:e,className:t}){let n=pj(e);return n?(0,N.jsx)(Mn,{agentId:n.agentId,displayName:n.displayName,avatarUrl:n.avatarUrl,className:t}):null}var hj=new WeakMap;function gj(e){return{roleLabels:{user:o(`chatRoleUser`),assistant:o(`chatRoleAssistant`),tool:o(`chatRoleTool`),system:o(`chatRoleSystem`),fallback:o(`chatRoleMessage`)},reasoningLabel:o(`chatReasoning`),toolCallLabel:o(`chatToolCall`),toolResultLabel:o(`chatToolResult`),toolInputLabel:o(`chatToolInput`),toolNoOutputLabel:o(`chatToolNoOutput`),toolOutputLabel:o(`chatToolOutput`),toolStatusPreparingLabel:o(`chatToolStatusPreparing`),toolStatusRunningLabel:o(`chatToolStatusRunning`),toolStatusCompletedLabel:o(`chatToolStatusCompleted`),toolStatusFailedLabel:o(`chatToolStatusFailed`),toolStatusCancelledLabel:o(`chatToolStatusCancelled`),imageAttachmentLabel:o(`chatImageAttachment`),fileAttachmentLabel:o(`chatFileAttachment`),unknownPartLabel:o(`chatUnknownPart`)}}function _j(e){return{copyCodeLabel:o(`chatCodeCopy`),copiedCodeLabel:o(`chatCodeCopied`),copyMessageLabel:o(`chatMessageCopy`),copiedMessageLabel:o(`chatMessageCopied`),typingLabel:o(`chatTyping`),attachmentOpenLabel:o(`chatAttachmentOpen`),attachmentAttachedLabel:o(`chatAttachmentAttached`),attachmentCategoryLabels:{archive:o(`chatAttachmentCategoryArchive`),audio:o(`chatAttachmentCategoryAudio`),code:o(`chatAttachmentCategoryCode`),data:o(`chatAttachmentCategoryData`),document:o(`chatAttachmentCategoryDocument`),generic:o(`chatAttachmentCategoryGeneric`),image:o(`chatAttachmentCategoryImage`),pdf:o(`chatAttachmentCategoryPdf`),sheet:o(`chatAttachmentCategorySheet`),video:o(`chatAttachmentCategoryVideo`)}}}function vj({messages:e,isSending:t,className:n,onToolAction:r,onFileOpen:i}){let{language:a}=ut(),o=(0,P.useMemo)(()=>gj(a),[a]),s=(0,P.useMemo)(()=>e.map(e=>{let t=hj.get(e);if(t&&t.language===a)return t.viewModel;let n=ij(e),r=OA({id:n.id,role:n.role,meta:{timestamp:n.meta?.timestamp,status:n.meta?.status,inlineTokens:VO(e.metadata)},parts:n.parts},{formatTimestamp:e=>c(e,a),texts:o});return hj.set(e,{language:a,viewModel:r}),r}),[a,e,o]);return(0,N.jsx)(QE,{messages:s,isSending:t,hasAssistantDraft:(0,P.useMemo)(()=>s.some(e=>e.role===`assistant`&&(e.status===`streaming`||e.status===`pending`)),[s]),className:n,texts:(0,P.useMemo)(()=>_j(a),[a]),onToolAction:r,onFileOpen:i,renderToolAgent:e=>(0,N.jsx)(mj,{agentId:e,className:`h-4 w-4 shrink-0`})})}function yj(){let e=se();return async t=>{let{sessionKey:n,patch:r,successMessage:i}=t;try{ee(e,await ae(n,r)),await e.invalidateQueries({queryKey:[`ncp-session-skills`,n]}),y.success(i??o(`configSavedApplied`))}catch(e){throw y.error(o(`configSaveFailed`)+`: `+(e instanceof Error?e.message:String(e))),e}}}function bj(){let e=yj();return async t=>{let{persistToServer:n,projectRoot:r,sessionKey:i}=t,a=o(r?`chatSessionProjectUpdated`:`chatSessionProjectCleared`);if(!n){Q.getState().setSnapshot({pendingProjectRoot:r,pendingProjectRootSessionKey:i}),y.success(a);return}await e({sessionKey:i,patch:{projectRoot:r},successMessage:a})}}function xj({icon:e,label:t,onClick:n,disabled:r=!1,destructive:i=!1}){return(0,N.jsxs)(`button`,{type:`button`,className:d(`flex w-full items-center gap-2 rounded-xl px-3 py-2 text-left text-sm transition-colors disabled:cursor-not-allowed disabled:opacity-50`,i?`text-destructive hover:bg-destructive/10`:`text-gray-700 hover:bg-gray-100`),onClick:n,disabled:r,children:[(0,N.jsx)(e,{className:`h-4 w-4 shrink-0`}),(0,N.jsx)(`span`,{children:t})]})}function Sj(e){return g({queryKey:[`server-path-browse`,e.path??null,e.includeFiles??!1],queryFn:()=>te({path:e.path,includeFiles:e.includeFiles}),enabled:e.enabled??!0,staleTime:0})}var Cj=P.forwardRef(({className:e,children:t,...n},r)=>(0,N.jsx)(`div`,{ref:r,className:d(`overflow-auto`,e),...n,children:t}));Cj.displayName=`ScrollArea`;function wj({open:e,currentPath:t,isSaving:n,onOpenChange:r,onConfirm:i,title:a,description:s,pathLabel:c,pathPlaceholder:l,confirmLabel:u,hint:d}){let[p,m]=(0,P.useState)(``),[h,g]=(0,P.useState)(null),[_,y]=(0,P.useState)(``);(0,P.useEffect)(()=>{if(!e)return;let n=t?.trim()||null;m(n??``),g(n),y(``)},[t,e]);let b=Sj({path:h,enabled:e});(0,P.useEffect)(()=>{!e||!b.data||p.trim().length===0&&m(b.data.currentPath)},[b.data,p,e]);let x=p.trim(),S=x.length===0||n,C=(0,P.useMemo)(()=>b.error?b.error instanceof Error?b.error.message:String(b.error):null,[b.error]),w=_.trim().toLowerCase(),T=(0,P.useMemo)(()=>{let e=b.data?.entries??[];return w.length===0?e:e.filter(e=>{let t=e.name.toLowerCase(),n=e.path.toLowerCase();return t.includes(w)||n.includes(w)})},[b.data?.entries,w]),E=e=>{g(e),y(``),e&&m(e)};return(0,N.jsx)(pe,{open:e,onOpenChange:e=>{n||r(e)},children:(0,N.jsxs)(ue,{className:`max-h-[85vh] overflow-hidden sm:h-[42rem] sm:max-w-2xl sm:grid-rows-[auto_minmax(0,1fr)]`,children:[(0,N.jsxs)(ce,{children:[(0,N.jsx)(de,{children:a}),s?(0,N.jsx)(fe,{children:s}):null]}),(0,N.jsxs)(`form`,{className:`flex min-h-0 flex-col gap-4`,onSubmit:e=>{e.preventDefault(),!S&&i(x)},children:[(0,N.jsxs)(`div`,{className:`space-y-2`,children:[(0,N.jsx)(v,{htmlFor:`server-path-picker-input`,children:c}),(0,N.jsxs)(`div`,{className:`flex gap-2`,children:[(0,N.jsx)(O,{id:`server-path-picker-input`,value:p,onChange:e=>m(e.target.value),placeholder:l,autoFocus:!0,disabled:n}),(0,N.jsx)(f,{type:`button`,variant:`outline`,onClick:()=>E(x||null),disabled:n,children:o(`openPath`)})]})]}),(0,N.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden rounded-2xl border border-gray-200 bg-gray-50/70`,children:[(0,N.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 border-b border-gray-200 px-3 py-2`,children:[(0,N.jsxs)(f,{type:`button`,variant:`ghost`,size:`sm`,onClick:()=>E(b.data?.homePath??null),disabled:n||b.isLoading,children:[(0,N.jsx)(nn,{className:`mr-1 h-4 w-4`}),o(`homeDirectory`)]}),(0,N.jsxs)(f,{type:`button`,variant:`ghost`,size:`sm`,onClick:()=>E(b.data?.parentPath??null),disabled:!b.data?.parentPath||n||b.isLoading,children:[(0,N.jsx)(Qt,{className:`mr-1 h-4 w-4`}),o(`parentDirectory`)]}),(0,N.jsxs)(f,{type:`button`,variant:`ghost`,size:`sm`,onClick:()=>{b.refetch()},disabled:n||b.isLoading,children:[(0,N.jsx)(it,{className:`mr-1 h-4 w-4`}),o(`chatRefresh`)]})]}),(0,N.jsxs)(`div`,{className:`border-b border-gray-200 px-3 py-2`,children:[(0,N.jsx)(`div`,{className:`mb-2 text-xs font-medium text-gray-500`,children:o(`currentDirectory`)}),(0,N.jsx)(`div`,{className:`flex flex-wrap items-center gap-1 text-xs text-gray-600`,children:b.data?.breadcrumbs.map((e,t)=>(0,N.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,N.jsx)(`button`,{type:`button`,className:`rounded px-1.5 py-0.5 hover:bg-gray-200`,onClick:()=>E(e.path),disabled:n,children:e.label}),t<b.data.breadcrumbs.length-1?(0,N.jsx)(It,{className:`h-3 w-3 text-gray-400`}):null]},e.path))})]}),(0,N.jsx)(`div`,{className:`border-b border-gray-200 px-3 py-2`,children:(0,N.jsxs)(`div`,{className:`relative`,children:[(0,N.jsx)(Oe,{className:`pointer-events-none absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-gray-400`}),(0,N.jsx)(O,{value:_,onChange:e=>y(e.target.value),placeholder:o(`pathPickerSearchPlaceholder`),disabled:n||b.isLoading,className:`pl-9`})]})}),(0,N.jsx)(Cj,{className:`min-h-0 flex-1 px-2 py-2`,children:b.isLoading?(0,N.jsx)(`div`,{className:`px-2 py-6 text-sm text-gray-500`,children:o(`loading`)}):C?(0,N.jsxs)(`div`,{className:`px-2 py-4 text-sm text-destructive`,children:[o(`pathBrowseFailed`),`: `,C]}):b.data&&T.length>0?(0,N.jsx)(`div`,{className:`space-y-1`,children:T.map(e=>(0,N.jsxs)(`button`,{type:`button`,className:`flex w-full items-center gap-2 rounded-xl px-3 py-2 text-left text-sm text-gray-700 transition-colors hover:bg-white`,onClick:()=>E(e.path),disabled:n,children:[(0,N.jsx)($e,{className:`h-4 w-4 shrink-0 text-emerald-600`}),(0,N.jsx)(`span`,{className:`truncate`,children:e.name})]},e.path))}):b.data&&b.data.entries.length>0?(0,N.jsx)(`div`,{className:`px-2 py-6 text-sm text-gray-500`,children:o(`pathPickerSearchEmpty`)}):(0,N.jsx)(`div`,{className:`px-2 py-6 text-sm text-gray-500`,children:o(`emptyDirectory`)})})]}),d?(0,N.jsx)(`p`,{className:`text-xs leading-relaxed text-gray-500`,children:d}):null,(0,N.jsxs)(le,{children:[(0,N.jsx)(f,{type:`button`,variant:`outline`,onClick:()=>r(!1),disabled:n,children:o(`cancel`)}),(0,N.jsx)(f,{type:`submit`,disabled:S,children:n?o(`saving`):u})]})]})]})})}function Tj({open:e,currentProjectRoot:t,isSaving:n,onOpenChange:r,onSave:i}){return(0,N.jsx)(wj,{open:e,currentPath:t,isSaving:n,onOpenChange:r,onConfirm:i,title:o(`chatSessionProjectDialogTitle`),description:o(`chatSessionProjectDialogDescription`),pathLabel:o(`chatSessionProjectPathLabel`),pathPlaceholder:o(`chatSessionProjectPathPlaceholder`),confirmLabel:o(`chatSessionSetProject`),hint:o(`chatSessionProjectUpdateHint`)})}function Ej({sessionKey:e,canDeleteSession:t,isDeletePending:n,projectRoot:r,childSessionCount:i=0,onOpenChildSessions:a,onDeleteSession:s}){let c=bj(),[l,u]=(0,P.useState)(!1),[d,p]=(0,P.useState)(!1),[m,h]=(0,P.useState)(!1),g=n||m,_=async n=>{let r=t;h(!0);try{await c({sessionKey:e,projectRoot:n,persistToServer:r}),p(!1),u(!1)}finally{h(!1)}};return(0,N.jsxs)(N.Fragment,{children:[i>0&&a?(0,N.jsx)(f,{type:`button`,variant:`ghost`,size:`icon`,className:`rounded-lg shrink-0 text-gray-400 hover:text-gray-700`,"aria-label":o(`chatSessionOpenChildSessions`),title:o(`chatSessionOpenChildSessions`),onClick:a,disabled:g,children:(0,N.jsx)(en,{className:`h-4 w-4`})}):null,(0,N.jsxs)(xt,{open:l,onOpenChange:u,children:[(0,N.jsx)(yt,{asChild:!0,children:(0,N.jsx)(f,{variant:`ghost`,size:`icon`,className:`rounded-lg shrink-0 text-gray-400 hover:text-gray-700`,"aria-label":o(`chatSessionMoreActions`),disabled:g,children:(0,N.jsx)(zt,{className:`h-4 w-4`})})}),(0,N.jsx)(_t,{align:`end`,className:`w-56 p-2`,children:(0,N.jsxs)(`div`,{className:`space-y-1`,children:[(0,N.jsx)(xj,{icon:Xt,label:o(`chatSessionSetProject`),onClick:()=>{u(!1),p(!0)},disabled:g}),(0,N.jsx)(xj,{icon:st,label:o(`chatDeleteSession`),onClick:()=>{u(!1),s()},disabled:!t||g,destructive:!0})]})})]}),(0,N.jsx)(Tj,{open:d,currentProjectRoot:r,isSaving:m,onOpenChange:p,onSave:_})]})}function Dj({sessionKey:e,projectName:t,projectRoot:n,persistToServer:r}){let i=bj(),[a,s]=(0,P.useState)(!1),[c,l]=(0,P.useState)(!1),[u,d]=(0,P.useState)(!1),f=async t=>{d(!0);try{await i({sessionKey:e,projectRoot:t,persistToServer:r}),l(!1),s(!1)}finally{d(!1)}};return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsxs)(xt,{open:a,onOpenChange:s,children:[(0,N.jsx)(yt,{asChild:!0,children:(0,N.jsx)(`button`,{type:`button`,title:n??void 0,className:`min-w-0 max-w-[320px] shrink rounded-full border border-gray-200 bg-gray-100/90 px-2 py-0.5 text-[11px] font-medium text-gray-600 transition-colors hover:border-gray-300 hover:bg-gray-100 disabled:cursor-not-allowed disabled:opacity-60`,"aria-label":o(`chatSessionSetProject`),disabled:u,children:(0,N.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1.5`,children:[(0,N.jsx)(Xt,{className:`h-3.5 w-3.5 shrink-0`}),(0,N.jsx)(`span`,{className:`truncate`,children:t}),(0,N.jsx)(je,{className:`h-3 w-3 shrink-0 opacity-70`})]})})}),(0,N.jsxs)(_t,{align:`start`,className:`w-72 p-2`,children:[(0,N.jsxs)(`div`,{className:`px-3 pb-2 pt-1`,children:[(0,N.jsx)(`div`,{className:`text-[11px] font-medium uppercase tracking-wider text-gray-500`,children:t}),n?(0,N.jsx)(`div`,{className:`mt-1 break-all text-xs text-gray-500`,children:n}):null]}),(0,N.jsxs)(`div`,{className:`space-y-1`,children:[(0,N.jsx)(xj,{icon:sn,label:o(`chatSessionSetProject`),onClick:()=>{s(!1),l(!0)},disabled:u}),(0,N.jsx)(xj,{icon:$t,label:o(`chatSessionClearProject`),onClick:()=>{f(null)},disabled:u})]})]})]}),(0,N.jsx)(Tj,{open:c,currentProjectRoot:n,isSaving:u,onOpenChange:l,onSave:f})]})}function Oj({parentSessionLabel:e,onGoToParentSession:t}){if(!e)return null;let n=e.trim();return(0,N.jsx)(`div`,{className:`border-b border-gray-200/60 bg-white/75 px-4 py-2 backdrop-blur-sm sm:px-5`,children:(0,N.jsxs)(`button`,{type:`button`,onClick:t,className:`inline-flex items-center gap-2 text-xs font-medium text-gray-600 transition-colors hover:text-gray-900`,children:[(0,N.jsx)(De,{className:`h-3.5 w-3.5`}),(0,N.jsxs)(`span`,{children:[o(`chatBackToParent`),n?` · ${n}`:``]})]})})}function kj({snapshot:e,childSessionCount:t,layoutMode:n,normalizedAgentId:r,sessionHeaderTitle:i,shouldShowHeaderAgentAvatar:a,shouldShowSessionHeader:s,onBackToList:c,onOpenChildSessions:l,onDeleteSession:u}){let f=n===`mobile`;return(0,N.jsxs)(`div`,{className:d(`border-b border-gray-200/60 bg-white/80 backdrop-blur-sm flex items-center justify-between shrink-0 overflow-hidden transition-all duration-200`,f?`px-3 sm:px-3`:`px-4 sm:px-5`,s?`opacity-100`:`h-0 py-0 opacity-0 border-b-0`,s&&(f?`pb-2 pt-2`:`py-3`)),style:f&&s?{paddingTop:`calc(env(safe-area-inset-top, 0px) + 0.5rem)`}:void 0,children:[(0,N.jsxs)(`div`,{className:`min-w-0 flex-1 flex items-center gap-2`,children:[f&&c?(0,N.jsx)(`button`,{type:`button`,onClick:c,className:`inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-full text-gray-600 transition-colors hover:bg-gray-100 hover:text-gray-900`,"aria-label":o(`chat`),children:(0,N.jsx)(De,{className:`h-4 w-4`})}):null,a?(0,N.jsx)(`div`,{className:`inline-flex shrink-0 items-center`,children:(0,N.jsx)(Mn,{agentId:r,displayName:e.agentDisplayName,avatarUrl:e.agentAvatarUrl,className:`h-5 w-5`})}):null,(0,N.jsx)(`span`,{className:`text-sm font-medium text-gray-700 truncate`,children:i}),e.sessionTypeLabel?(0,N.jsxs)(`span`,{className:`inline-flex shrink-0 items-center gap-1.5 rounded-full border border-gray-200 bg-gray-100 px-2 py-0.5 text-[11px] font-medium text-gray-600`,children:[e.sessionTypeIcon?.src?(0,N.jsx)(`span`,{className:`inline-flex h-[1.125rem] w-[1.125rem] items-center justify-center`,children:(0,N.jsx)(Tn,{icon:{kind:`runtime-image`,src:e.sessionTypeIcon.src,alt:e.sessionTypeIcon.alt??null,name:e.sessionTypeLabel}})}):null,e.sessionTypeLabel]}):null,e.sessionProjectName?(0,N.jsx)(Dj,{sessionKey:e.sessionKey??`draft`,projectName:e.sessionProjectName,projectRoot:e.sessionProjectRoot,persistToServer:e.canDeleteSession}):null]}),e.sessionKey?(0,N.jsx)(Ej,{sessionKey:e.sessionKey,canDeleteSession:e.canDeleteSession,isDeletePending:e.isDeletePending,projectRoot:e.sessionProjectRoot,childSessionCount:t,onOpenChildSessions:l,onDeleteSession:u}):null]})}var Aj=`native`;function jj(e){return typeof e==`string`?e.trim().toLowerCase()||`native`:Aj}function Mj(e,t=Aj){return jj(e?.runtime?.trim()||e?.engine?.trim()||t)}function Nj(e,t){return e===`native`?o(`chatSessionTypeNative`):t?.trim()||e.trim().split(/[-_]+/g).filter(Boolean).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)||e}function Pj(e){let t=new Map;for(let n of e){let e=jj(n.value);t.set(e,{value:e,label:n.label?.trim()||Nj(e),icon:n.icon??null,ready:n.ready??!0,reason:n.reason??null,reasonMessage:n.reasonMessage??null,supportedModels:n.supportedModels,recommendedModel:n.recommendedModel??null,cta:n.cta??null})}return t.has(`native`)||t.set(Aj,{value:Aj,label:Nj(Aj),icon:null,ready:!0,reason:null,reasonMessage:null,supportedModels:void 0,recommendedModel:null,cta:null}),Array.from(t.values()).sort((e,t)=>e.value===`native`?-1:t.value===`native`?1:e.value.localeCompare(t.value))}function Fj(e){let{selectedSession:t,pendingSessionType:n,setPendingSessionType:r,sessionTypesData:i}=e,a=(0,P.useMemo)(()=>Pj(i?.options??[]),[i?.options]),s=(0,P.useMemo)(()=>{let e=[...a],n=jj(t?.sessionType);return e.some(e=>e.value===n)||e.push({value:n,label:Nj(n),icon:null,ready:!0,reason:null,reasonMessage:null,supportedModels:void 0,recommendedModel:null,cta:null}),e.sort((e,t)=>e.value===`native`?-1:t.value===`native`?1:e.value.localeCompare(t.value))},[a,t?.sessionType]),c=(0,P.useMemo)(()=>jj(i?.defaultType??`native`),[i?.defaultType]),l=(0,P.useRef)(null),u=(0,P.useMemo)(()=>jj(t?.sessionType??n??c),[c,n,t?.sessionType]),d=(0,P.useMemo)(()=>s.find(e=>e.value===u)??null,[u,s]);(0,P.useEffect)(()=>{if(t)return;let e=typeof n==`string`?n.trim():``,i=jj(n);(e.length===0||l.current===i||l.current===null&&i===`native`)&&(l.current=c,i!==c&&r(c))},[c,n,t,r]);let f=!t||!!t.sessionTypeMutable,p=(0,P.useMemo)(()=>new Set(a.map(e=>e.value)),[a]);return{sessionTypeOptions:s,selectedSessionTypeOption:d,defaultSessionType:c,selectedSessionType:u,canEditSessionType:f,sessionTypeUnavailable:(0,P.useMemo)(()=>t&&!p.has(jj(t.sessionType))?!0:d?.ready===!1,[p,t,d?.ready]),sessionTypeUnavailableMessage:(0,P.useMemo)(()=>t&&!p.has(jj(t.sessionType))?`${Nj(u)} ${o(`chatSessionTypeUnavailableSuffix`)}`:d?.ready===!1?d.reasonMessage?.trim()||`${d.label} setup required`:null,[p,t,u,d])}}var Ij={isProviderStateResolved:!1,modelOptions:[],sessionTypeUnavailable:!1,sessionTypeUnavailableMessage:null,sessionTypeLabel:null,sessionTypeIcon:null,sessionKey:null,agentId:null,agentDisplayName:null,agentAvatarUrl:null,availableAgents:[],sessionDisplayName:void 0,sessionProjectRoot:null,sessionProjectName:null,canDeleteSession:!1,isDeletePending:!1,threadRef:null,isHistoryLoading:!1,messages:[],isSending:!1,isAwaitingAssistantOutput:!1,parentSessionKey:null,parentSessionLabel:null,workspacePanelParentKey:null,childSessionTabs:[],activeChildSessionKey:null,workspaceFileTabs:[],activeWorkspaceFileKey:null},Lj=C(e=>({snapshot:Ij,setSnapshot:t=>e(e=>({snapshot:{...e.snapshot,...t}}))})),Rj=[{key:`hero`,alignmentClassName:`justify-start`,bubbleClassName:`max-w-[78%] h-32 rounded-[30px]`},{key:`follow-up`,alignmentClassName:`justify-start`,bubbleClassName:`max-w-[62%] h-24 rounded-[28px]`},{key:`reply`,alignmentClassName:`justify-end`,bubbleClassName:`max-w-[70%] h-24 rounded-[28px]`},{key:`detail`,alignmentClassName:`justify-start`,bubbleClassName:`max-w-[88%] h-36 rounded-[30px]`}];function zj(){return(0,N.jsxs)(`section`,{"data-testid":`chat-conversation-skeleton`,className:`flex-1 min-h-0 flex flex-col overflow-hidden bg-gradient-to-b from-gray-50/60 to-white`,children:[(0,N.jsx)(`div`,{className:`flex-1 min-h-0 overflow-y-auto custom-scrollbar`,children:(0,N.jsx)(`div`,{className:`mx-auto flex min-h-full w-full max-w-[min(1120px,100%)] flex-col px-6 py-5`,children:(0,N.jsxs)(`div`,{className:`flex flex-1 flex-col gap-8`,children:[(0,N.jsxs)(`div`,{className:`space-y-6`,children:[(0,N.jsx)(Mt,{className:`h-6 w-52 rounded-lg bg-gray-200/90`}),(0,N.jsx)(`div`,{className:`space-y-5`,children:Rj.map(e=>(0,N.jsx)(`div`,{className:d(`flex w-full`,e.alignmentClassName),children:(0,N.jsx)(Mt,{"data-testid":`chat-conversation-skeleton-bubble`,className:d(`w-full bg-gray-200/80`,e.bubbleClassName)})},e.key))})]}),(0,N.jsxs)(`div`,{className:`mt-auto grid gap-4 pb-2 sm:grid-cols-[minmax(0,1fr)_minmax(180px,240px)] sm:items-end`,children:[(0,N.jsxs)(`div`,{className:`space-y-3`,children:[(0,N.jsx)(Mt,{className:`h-4 w-40 rounded-full bg-gray-200/70`}),(0,N.jsx)(Mt,{className:`h-[112px] w-full rounded-[30px] bg-gray-200/70`})]}),(0,N.jsx)(`div`,{className:`hidden justify-end sm:flex`,children:(0,N.jsx)(Mt,{className:`h-10 w-36 rounded-full bg-gray-200/75`})})]})]})})}),(0,N.jsx)(`div`,{className:`border-t border-gray-200/80 bg-white p-4`,children:(0,N.jsx)(`div`,{className:`mx-auto w-full max-w-[min(1120px,100%)]`,children:(0,N.jsxs)(`div`,{className:`overflow-hidden rounded-2xl border border-gray-200 bg-white shadow-card`,children:[(0,N.jsx)(`div`,{className:`px-4 py-2.5`,children:(0,N.jsx)(Mt,{className:`h-[84px] w-full rounded-[28px] bg-gray-200/80`})}),(0,N.jsxs)(`div`,{className:`flex items-center justify-between gap-3 px-3 pb-3`,children:[(0,N.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,N.jsx)(Mt,{className:`h-8 w-20 rounded-full bg-gray-200/75`}),(0,N.jsx)(Mt,{className:`h-8 w-28 rounded-full bg-gray-200/75`}),(0,N.jsx)(Mt,{className:`hidden h-8 w-24 rounded-full bg-gray-200/70 sm:block`})]}),(0,N.jsx)(Mt,{className:`h-8 w-8 rounded-full bg-gray-200/85`})]})]})})})]})}function Bj({shouldShowProviderHint:e,sessionTypeUnavailable:t,sessionTypeUnavailableMessage:n,onGoToProviders:r}){return(0,N.jsxs)(N.Fragment,{children:[e?(0,N.jsxs)(`div`,{className:`px-4 py-2.5 border-b border-amber-200/70 bg-amber-50/70 flex items-center justify-between gap-3 shrink-0 sm:px-5`,children:[(0,N.jsx)(`span`,{className:`text-xs text-amber-800`,children:o(`chatModelNoOptions`)}),(0,N.jsx)(`button`,{type:`button`,onClick:r,className:`text-xs font-semibold text-amber-900 underline-offset-2 hover:underline`,children:o(`chatGoConfigureProvider`)})]}):null,t&&n?.trim()?(0,N.jsx)(`div`,{className:`px-4 py-2.5 border-b border-amber-200/70 bg-amber-50/70 shrink-0 sm:px-5`,children:(0,N.jsx)(`span`,{className:`text-xs text-amber-800`,children:n})}):null]})}function Vj({snapshot:e,availableAgents:t,hideEmptyHint:n,showWelcome:r,threadRef:i,onScroll:a,onCreateSession:s,onSelectAgent:c,onToolAction:l,onFileOpen:u}){return(0,N.jsx)(`div`,{ref:i,onScroll:a,className:`flex-1 min-h-0 overflow-y-auto custom-scrollbar`,children:r?(0,N.jsx)(Rn,{onCreateSession:s,agents:t,selectedAgentId:e.agentId??`main`,onSelectAgent:c}):n?null:e.messages.length===0?(0,N.jsx)(`div`,{className:`px-4 py-4 text-sm text-gray-500 sm:px-5 sm:py-5`,children:o(`chatNoMessages`)}):(0,N.jsx)(`div`,{className:`mx-auto w-full max-w-[min(1120px,100%)] px-4 py-4 sm:px-6 sm:py-5`,children:(0,N.jsx)(vj,{messages:e.messages,isSending:e.isSending&&e.isAwaitingAssistantOutput,onToolAction:l,onFileOpen:u},e.sessionKey??`draft`)})})}function Hj(e,t,n){return e.workspacePanelParentKey===e.sessionKey?t.length>0||n.length>0:!1}function Uj({layoutMode:e=`desktop`,onBackToList:t}){let n=QD(),r=Q(e=>e.snapshot.defaultSessionType),i=Lj(e=>e.snapshot),a=(0,P.useRef)(null),s=i.threadRef??a,c=i.childSessionTabs.filter(e=>e.parentSessionKey===i.sessionKey),l=i.workspaceFileTabs.filter(e=>e.parentSessionKey===i.sessionKey),u=Hj(i,c,l),d=!!(i.sessionKey||i.sessionTypeLabel),f=i.sessionDisplayName||(i.canDeleteSession&&i.sessionKey?i.sessionKey:null)||o(`chatSidebarNewTask`),p=i.agentId?.trim()??``,m=p.length>0&&p.toLowerCase()!==`main`,h=!i.canDeleteSession&&i.messages.length===0&&!i.isSending,g=i.modelOptions.length>0,_=i.isProviderStateResolved&&!g,v=i.isHistoryLoading&&i.messages.length===0&&!i.isSending&&!i.isAwaitingAssistantOutput,y=i.availableAgents??[],b=e=>y.find(t=>t.id===e)??null,x=()=>{let t=Mj(b(i.agentId??`main`),r),a=n.chatSessionListManager.createSession(t);e===`mobile`&&n.chatUiManager.goToSession(a)},S=e=>{n.chatSessionListManager.setSelectedAgentId(e),n.chatInputManager.setPendingSessionType(Mj(b(e),r))},C=e=>{n.chatThreadManager.openFilePreview(e)},w=()=>{i.sessionKey&&n.chatThreadManager.openChildSessionPanel({parentSessionKey:i.sessionKey,activeChildSessionKey:c[0]?.sessionKey??null})},{onScroll:T}=WT({scrollRef:s,resetKey:i.sessionKey,isLoading:i.isHistoryLoading,hasContent:i.messages.length>0,contentVersion:i.messages[i.messages.length-1]??null});return i.isProviderStateResolved?(0,N.jsxs)(`section`,{className:`flex-1 min-h-0 flex overflow-hidden bg-gradient-to-b from-gray-50/60 to-white`,children:[(0,N.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden`,children:[(0,N.jsx)(Oj,{parentSessionLabel:i.parentSessionKey?i.parentSessionLabel??null:null,onGoToParentSession:n.chatThreadManager.goToParentSession}),(0,N.jsx)(kj,{snapshot:i,childSessionCount:c.length,layoutMode:e,normalizedAgentId:p,sessionHeaderTitle:f,shouldShowHeaderAgentAvatar:m,shouldShowSessionHeader:d,onBackToList:t,onOpenChildSessions:w,onDeleteSession:n.chatThreadManager.deleteSession}),(0,N.jsx)(Bj,{shouldShowProviderHint:_,sessionTypeUnavailable:i.sessionTypeUnavailable,sessionTypeUnavailableMessage:i.sessionTypeUnavailableMessage??null,onGoToProviders:n.chatThreadManager.goToProviders}),(0,N.jsx)(Vj,{snapshot:i,availableAgents:y,hideEmptyHint:v,showWelcome:h,threadRef:s,onScroll:T,onCreateSession:x,onSelectAgent:S,onToolAction:n.chatThreadManager.openSessionFromToolAction,onFileOpen:C}),(0,N.jsx)(DO,{})]}),u?(0,N.jsx)(bN,{childSessionTabs:c,activeChildSessionKey:i.activeChildSessionKey??null,workspaceFileTabs:l,activeWorkspaceFileKey:i.activeWorkspaceFileKey??null,sessionProjectRoot:i.sessionProjectRoot??null,displayMode:e===`mobile`?`overlay`:`docked`,onSelectSession:n.chatThreadManager.selectChildSessionDetail,onSelectFile:n.chatThreadManager.selectWorkspaceFile,onCloseFile:n.chatThreadManager.closeWorkspaceFile,onClose:n.chatThreadManager.closeWorkspacePanel,onBackToParent:n.chatThreadManager.goToParentSession,onToolAction:n.chatThreadManager.openSessionFromToolAction,onFileOpen:C}):null]}):(0,N.jsx)(zj,{})}var Wj={connected:{dotClass:`bg-emerald-500`},disconnected:{dotClass:`h-2.5 w-2.5 rounded-full border border-gray-400 bg-transparent`},connecting:{dotClass:`text-amber-600`}};function Gj({status:e,className:t}){let n=Wj[e],r=o(e===`connected`?`connected`:e===`disconnected`?`disconnected`:`connecting`);return(0,N.jsx)(kt,{delayDuration:250,children:(0,N.jsxs)(jt,{children:[(0,N.jsx)(Tt,{asChild:!0,children:(0,N.jsx)(`span`,{role:`status`,"aria-label":r,className:d(`inline-flex h-5 w-5 items-center justify-center`,t),children:e===`connecting`?(0,N.jsx)(nt,{className:d(`h-3 w-3 animate-spin`,n.dotClass)}):(0,N.jsx)(`span`,{className:d(e===`connected`?`h-2 w-2 rounded-full`:``,n.dotClass)})})}),(0,N.jsx)(Dt,{side:`bottom`,className:`text-xs`,children:r})]})})}function Kj(){let e=yj();return async t=>{await e({sessionKey:t.sessionKey,patch:{label:t.label},successMessage:o(`configSavedApplied`)})}}function qj(){let e=Kj(),[t,n]=(0,P.useState)(null),[r,i]=(0,P.useState)(``),[a,o]=(0,P.useState)(null),s=e=>{n(e.key),i(e.label?.trim()??``)},c=()=>{n(null),i(``),o(null)};return{editingSessionKey:t,draftLabel:r,savingSessionKey:a,setDraftLabel:i,startEditingSessionLabel:s,cancelEditingSessionLabel:c,saveSessionLabel:async t=>{let n=r.trim();if(n===(t.label?.trim()??``)){c();return}o(t.key);try{await e({sessionKey:t.key,label:n||null}),c()}catch{o(null)}}}}function Jj(e){let t=e.label?.trim();if(t)return t;let n=e.key.split(`:`);return n[n.length-1]||e.key}function Yj(e){return e.trim().toLowerCase()}function Xj(e,t){let n=Yj(t);return n?[e.key,Jj(e),e.projectRoot??``,e.projectName??``].map(Yj).some(e=>e.includes(n)):!0}function Zj(e,t){let n=e?.trim();if(!n)return!1;let r=t?.trim();return r?n.localeCompare(r)>0:!1}function Qj(e){let{active:t,readAt:n,runStatus:r,lastMessageAt:i}=e;return t||r===`running`?!1:Zj(i,n)}var $j={selectedSessionKey:null,draftSessionKey:sj(),selectedAgentId:`main`,query:``,listMode:`time-first`};function eM(e){return t=>e(e=>({snapshot:{...e.snapshot,...t}}))}function tM(e){return(t,n)=>e(e=>{let r=t.trim(),i=n?.trim();if(!r||!i)return e;let a=e.optimisticReadAtBySessionKey[r];return a&&a.localeCompare(i)>=0?e:{...e,optimisticReadAtBySessionKey:{...e.optimisticReadAtBySessionKey,[r]:i}}})}var nM=C(e=>({snapshot:$j,optimisticReadAtBySessionKey:{},setSnapshot:eM(e),markSessionRead:tM(e)}));function rM(e,t){return e.filter(e=>Xj(e,t))}function iM(e){return e.isChildSession?e.isPromotedChildSession===!0:!0}function aM(e={}){let t=nM(e=>e.snapshot.query),n=pt({limit:e.limit??200}),r=(0,P.useMemo)(()=>{let e=n.data?.sessions??[],r=rM(oj(e).filter(iM),t),i=new Map(e.map(e=>[e.sessionId,e]));return r.map(e=>({session:e,runStatus:i.get(e.key)?.status===`running`?`running`:void 0}))},[t,n.data?.sessions]);return{isLoading:n.isLoading,items:r}}function oM(e){let{item:t,selectedSessionKey:n,optimisticReadAtBySessionKey:r,agentsById:i,childSessionsByParentKey:a,editingSessionKey:o,draftLabel:s,savingSessionKey:c,sessionTitle:l,onSelectSession:u,onOpenChildSessions:d,onStartEditingSessionLabel:f,onDraftLabelChange:p,onSaveSessionLabel:m,onCancelEditingSessionLabel:h}=e,{session:g,runStatus:_}=t,v=Q(e=>e.snapshot),y=n===g.key,b=r[g.key],x=b&&g.readAt?b.localeCompare(g.readAt)>0?b:g.readAt:b??g.readAt,S=a.get(g.key)??[];return(0,N.jsx)(In,{session:g,active:y,showUnreadDot:Qj({active:y,lastMessageAt:g.lastMessageAt,readAt:x,runStatus:_}),runStatus:_,context:xn(g,v.sessionTypeOptions),title:l(g),agentId:g.agentId??null,agentLabel:g.agentId?i.get(g.agentId)?.displayName??g.agentId:null,agentAvatarUrl:g.agentId?i.get(g.agentId)?.avatarUrl??null:null,childSessionCount:S.length,isEditing:o===g.key,draftLabel:s,isSaving:c===g.key,onSelect:()=>u(g.key),onOpenChildSessions:()=>d(g.key,S[0]?.session.key??null),onStartEditing:()=>f(g),onDraftLabelChange:p,onSave:()=>m(g),onCancel:h})}function sM(e){let t=e.sessionTypeOptions.find(t=>t.value===e.defaultSessionType);return[...t?[t]:[],...e.nonDefaultSessionTypeOptions]}function cM(e){let{query:t,defaultSessionType:n,nonDefaultSessionTypeOptions:r,isCreateMenuOpen:i,onCreateMenuOpenChange:a,onCreateSession:s,onQueryChange:c}=e;return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`div`,{className:`px-4 pb-3`,children:(0,N.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,N.jsxs)(f,{variant:`primary`,className:d(`min-w-0 rounded-xl`,r.length>0?`flex-1 rounded-r-md`:`w-full`),onClick:()=>{a(!1),s(n)},children:[(0,N.jsx)(rt,{className:`mr-2 h-4 w-4`}),o(`chatSidebarNewTask`)]}),r.length>0?(0,N.jsxs)(xt,{open:i,onOpenChange:a,children:[(0,N.jsx)(yt,{asChild:!0,children:(0,N.jsx)(f,{variant:`primary`,size:`icon`,className:`h-9 w-10 shrink-0 rounded-xl rounded-l-md`,"aria-label":o(`chatSessionTypeLabel`),children:(0,N.jsx)(je,{className:`h-4 w-4`})})}),(0,N.jsxs)(_t,{align:`end`,className:`w-56 rounded-2xl border border-gray-200/80 bg-white p-1.5 shadow-[0_24px_60px_-28px_rgba(15,23,42,0.38)]`,children:[(0,N.jsx)(`div`,{className:`px-3 pb-1 pt-2 text-[10px] font-semibold uppercase tracking-[0.18em] text-gray-400`,children:o(`chatSessionTypeLabel`)}),(0,N.jsx)(`div`,{className:`space-y-1`,children:r.map(e=>(0,N.jsx)(Dn,{option:e,onSelect:()=>{s(e.value),a(!1)}},e.value))})]})]}):null]})}),(0,N.jsx)(`div`,{className:`px-4 pb-3`,children:(0,N.jsxs)(`div`,{className:`relative`,children:[(0,N.jsx)(Oe,{className:`absolute left-3 top-2.5 h-3.5 w-3.5 text-gray-400`}),(0,N.jsx)(O,{value:t,onChange:e=>c(e.target.value),placeholder:o(`chatSidebarSearchPlaceholder`),className:`h-9 rounded-lg pl-8 text-xs`})]})})]})}function lM(e){let{query:t,defaultSessionType:n,sessionTypeOptions:r,nonDefaultSessionTypeOptions:i,isCreateMenuOpen:a,onCreateMenuOpenChange:s,onCreateSession:c,onQueryChange:l}=e,u=sM({defaultSessionType:n,sessionTypeOptions:r,nonDefaultSessionTypeOptions:i}),d=u.length>1;return(0,N.jsx)(`div`,{className:`px-4 pb-2 pt-1`,children:(0,N.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,N.jsxs)(`div`,{className:`relative min-w-0 flex-1`,children:[(0,N.jsx)(Oe,{className:`absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-gray-400`}),(0,N.jsx)(O,{value:t,onChange:e=>l(e.target.value),placeholder:o(`chatSidebarSearchPlaceholder`),className:`h-9 rounded-full border-transparent bg-gray-100/80 pl-9 pr-3 text-[13px] shadow-none focus:border-gray-200/80 focus:bg-white`})]}),d?(0,N.jsxs)(xt,{open:a,onOpenChange:s,children:[(0,N.jsx)(yt,{asChild:!0,children:(0,N.jsx)(f,{variant:`ghost`,size:`icon`,className:`h-9 w-9 shrink-0 rounded-full bg-gray-100/80 text-gray-700 shadow-none hover:bg-gray-200/80 hover:text-gray-900`,"aria-label":o(`chatSidebarNewTask`),children:(0,N.jsx)(rt,{className:`h-4 w-4`})})}),(0,N.jsxs)(_t,{align:`end`,className:`w-60 rounded-3xl border border-gray-200/80 bg-white p-2 shadow-[0_24px_70px_-30px_rgba(15,23,42,0.45)]`,children:[(0,N.jsx)(`div`,{className:`px-3 pb-1.5 pt-2 text-[11px] font-medium text-gray-400`,children:o(`chatSidebarNewTask`)}),(0,N.jsx)(`div`,{className:`space-y-1`,children:u.map(e=>(0,N.jsx)(Dn,{option:e,onSelect:()=>{c(e.value),s(!1)}},e.value))})]})]}):(0,N.jsx)(f,{variant:`ghost`,size:`icon`,className:`h-9 w-9 shrink-0 rounded-full bg-gray-100/80 text-gray-700 shadow-none hover:bg-gray-200/80 hover:text-gray-900`,"aria-label":o(`chatSidebarNewTask`),onClick:()=>c(n),children:(0,N.jsx)(rt,{className:`h-4 w-4`})})]})})}function uM(e){return new Date(e.session.updatedAt).getTime()}function dM(e){return[...e].sort((e,t)=>uM(t)-uM(e))}function fM(e){let t=new Date,n=new Date(t.getFullYear(),t.getMonth(),t.getDate()).getTime(),r=n-864e5,i=n-7*864e5,a=[],s=[],c=[],l=[];for(let t of e){let{session:e}=t,o=new Date(e.updatedAt).getTime();o>=n?a.push(t):o>=r?s.push(t):o>=i?c.push(t):l.push(t)}let u=[];return a.length>0&&u.push({label:o(`chatSidebarToday`),items:a}),s.length>0&&u.push({label:o(`chatSidebarYesterday`),items:s}),c.length>0&&u.push({label:o(`chatSidebarPrevious7Days`),items:c}),l.length>0&&u.push({label:o(`chatSidebarOlder`),items:l}),u}function pM(e){let t=new Map;for(let n of e){let e=n.session.projectRoot?.trim();if(!e)continue;let r=t.get(e),i=uM(n);if(r){r.items.push(n),r.latestUpdatedAt=Math.max(r.latestUpdatedAt,i);continue}t.set(e,{projectRoot:e,projectName:n.session.projectName?.trim()||MA(e)||e,items:[n],latestUpdatedAt:i})}return[...t.values()].map(e=>({...e,items:dM(e.items)})).sort((e,t)=>t.latestUpdatedAt-e.latestUpdatedAt)}function mM(e){if(e.label&&e.label.trim())return e.label.trim();let t=e.key.split(`:`);return t[t.length-1]||e.key}var hM=[{target:`/cron`,label:()=>o(`chatSidebarScheduledTasks`),icon:me},{target:`/skills`,label:()=>o(`chatSidebarSkills`),icon:Te},{target:`/agents`,label:()=>o(`agentsPageTitle`),icon:Ee}];function gM(e,t,n){let r=nM(e=>e.optimisticReadAtBySessionKey);return(0,P.useEffect)(()=>{(()=>{if(!t)return;let r=e.find(({session:e})=>e.key===t);if(!r)return;let{session:i}=r;n(i.key,i.lastMessageAt,i.readAt)})()},[e,n,t]),r}function _M({variant:e=`desktop`}){let n=e===`mobile`,r=QD(),i=lt(),[a,s]=(0,P.useState)(!1),c=Q(e=>e.snapshot),l=nM(e=>e.snapshot),u=b(),f=cj(),{isLoading:p,items:m}=aM(),{language:h,setLanguage:g}=ut(),{theme:_,setTheme:v}=Se(),y=o(ge.find(e=>e.value===_)?.labelKey??`themeWarm`),x=t.find(e=>e.value===h)?.label??h,S=(0,P.useMemo)(()=>new Map((f.data?.agents??[]).map(e=>[e.id,e])),[f.data?.agents]),C=(0,P.useMemo)(()=>dM(m),[m]),w=(0,P.useMemo)(()=>{let e=new Map;for(let t of m){let n=t.session.parentSessionId?.trim();if(!n)continue;let r=e.get(n)??[];r.push(t),e.set(n,r)}for(let t of e.values())t.sort((e,t)=>uM(t)-uM(e));return e},[m]),T=(0,P.useMemo)(()=>fM(C),[C]),E=(0,P.useMemo)(()=>pM(C),[C]),D=c.defaultSessionType||`native`,O=(0,P.useMemo)(()=>c.sessionTypeOptions.filter(e=>e.value!==D),[D,c.sessionTypeOptions]),ee=l.listMode===`project-first`,k=gM(m,l.selectedSessionKey,r.chatSessionListManager.markSessionRead),{editingSessionKey:te,draftLabel:A,savingSessionKey:ne,setDraftLabel:j,startEditingSessionLabel:re,cancelEditingSessionLabel:ie,saveSessionLabel:ae}=qj(),oe=e=>{h!==e&&(g(e),window.location.reload())},se=e=>(0,N.jsx)(oM,{item:e,selectedSessionKey:l.selectedSessionKey,optimisticReadAtBySessionKey:k,agentsById:S,childSessionsByParentKey:w,editingSessionKey:te,draftLabel:A,savingSessionKey:ne,sessionTitle:mM,onSelectSession:r.chatSessionListManager.selectSession,onOpenChildSessions:(e,t)=>r.chatThreadManager.openChildSessionPanel({parentSessionKey:e,activeChildSessionKey:t}),onStartEditingSessionLabel:re,onDraftLabelChange:j,onSaveSessionLabel:ae,onCancelEditingSessionLabel:ie},e.session.key),ce=(e,t)=>{let i=typeof t==`string`?r.chatSessionListManager.createSession(e,t):r.chatSessionListManager.createSession(e);n&&r.chatUiManager.goToSession(i)};return(0,N.jsxs)(`aside`,{className:d(`flex h-full min-h-0 flex-col bg-secondary`,n?`flex-1 overflow-hidden`:`w-[280px] shrink-0 border-r border-gray-200/60`),children:[n?null:(0,N.jsx)(`div`,{className:`px-5 pt-5 pb-3`,children:(0,N.jsx)(we,{className:`flex items-center gap-2.5 min-w-0`,suffix:(0,N.jsx)(Gj,{status:u.connectionStatus})})}),n?(0,N.jsx)(lM,{query:l.query,defaultSessionType:D,sessionTypeOptions:c.sessionTypeOptions,nonDefaultSessionTypeOptions:O,isCreateMenuOpen:a,onCreateMenuOpenChange:s,onCreateSession:ce,onQueryChange:r.chatSessionListManager.setQuery}):(0,N.jsx)(cM,{query:l.query,defaultSessionType:D,sessionTypeOptions:c.sessionTypeOptions,nonDefaultSessionTypeOptions:O,isCreateMenuOpen:a,onCreateMenuOpenChange:s,onCreateSession:ce,onQueryChange:r.chatSessionListManager.setQuery}),n?null:(0,N.jsx)(`div`,{className:`px-3 pb-2`,children:(0,N.jsx)(`ul`,{className:`space-y-0.5`,children:hM.map(e=>(0,N.jsx)(`li`,{children:(0,N.jsx)(he,{to:e.target,label:e.label(),icon:e.icon,density:`compact`})},e.target))})}),n?null:(0,N.jsx)(`div`,{className:`mx-4 border-t border-gray-200/60`}),(0,N.jsxs)(`div`,{className:`flex items-center justify-between px-5 pb-2 pt-3`,children:[(0,N.jsx)(`div`,{className:`text-[11px] font-medium uppercase tracking-wider text-gray-400`,children:o(`chatSidebarTaskRecords`)}),(0,N.jsx)(fn,{isProjectFirstView:ee,onSelectMode:r.chatSessionListManager.setListMode})]}),(0,N.jsx)(`div`,{className:`flex-1 min-h-0 overflow-y-auto custom-scrollbar px-3 py-2`,children:p?(0,N.jsx)(`div`,{className:`text-xs text-gray-500 p-3`,children:o(`sessionsLoading`)}):ee?E.length===0?(0,N.jsxs)(`div`,{className:`p-4 text-center`,children:[(0,N.jsx)(rn,{className:`h-6 w-6 mx-auto mb-2 text-gray-300`}),(0,N.jsx)(`div`,{className:`text-xs text-gray-500`,children:o(`chatSidebarProjectViewEmpty`)})]}):(0,N.jsx)(kn,{groups:E,defaultSessionType:D,sessionTypeOptions:c.sessionTypeOptions,renderSessionItem:se,onCreateSession:ce}):T.length===0?(0,N.jsxs)(`div`,{className:`p-4 text-center`,children:[(0,N.jsx)(rn,{className:`h-6 w-6 mx-auto mb-2 text-gray-300`}),(0,N.jsx)(`div`,{className:`text-xs text-gray-500`,children:o(`sessionsEmpty`)})]}):(0,N.jsx)(`div`,{className:`space-y-3`,children:T.map(e=>(0,N.jsxs)(`div`,{children:[(0,N.jsx)(`div`,{className:`px-2 py-1 text-[11px] font-medium text-gray-400 uppercase tracking-wider`,children:e.label}),(0,N.jsx)(`div`,{className:`space-y-0.5`,children:e.items.map(se)})]},e.label))})}),n?null:(0,N.jsxs)(`div`,{className:`px-3 py-3 border-t border-gray-200/60 space-y-0.5`,children:[(0,N.jsx)(he,{to:`/settings`,label:o(`settings`),icon:at,density:`compact`}),(0,N.jsx)(Ce,{onClick:()=>i.open(void 0,{kind:`docs`,newTab:!0,title:`Docs`}),icon:ke,label:o(`docBrowserHelp`),density:`compact`}),(0,N.jsx)(be,{value:_,onValueChange:e=>v(e),icon:xe,label:o(`theme`),valueLabel:y,density:`compact`,children:ge.map(e=>(0,N.jsx)(Ke,{value:e.value,className:`text-xs`,children:o(e.labelKey)},e.value))}),(0,N.jsx)(be,{value:h,onValueChange:e=>oe(e),icon:ve,label:o(`language`),valueLabel:x,density:`compact`,children:t.map(e=>(0,N.jsx)(Ke,{value:e.value,className:`text-xs`,children:e.label},e.value))})]})]})}function vM({tone:e=`neutral`,value:t}){return(0,N.jsx)(`span`,{className:d(`inline-flex h-5 items-center rounded-sm border px-1.5 text-[10px] font-medium leading-none`,e===`warning`?`border-amber-200 bg-amber-50 text-amber-700`:`border-gray-200 bg-gray-50 text-gray-500`),children:t})}function yM({breadcrumb:e}){return(0,N.jsx)(`div`,{"data-testid":`workspace-file-breadcrumbs`,title:e.fullPath,className:`workspace-horizontal-scrollbar overflow-x-auto overflow-y-hidden border-b border-gray-200/80 bg-gray-50/55`,children:(0,N.jsxs)(`div`,{"data-testid":`workspace-file-breadcrumb-scroll`,className:`flex min-w-max items-center gap-2.5 px-3 py-1.5`,children:[(0,N.jsx)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1 pr-1`,children:e.segments.map((t,n)=>(0,N.jsxs)(P.Fragment,{children:[(0,N.jsxs)(`span`,{className:d(`inline-flex h-5 items-center gap-1 rounded-sm px-1 text-[11px] leading-none`,t.kind===`workspace`?`bg-primary/8 text-primary`:t.isCurrent?`bg-gray-200/70 text-gray-900`:`text-gray-500`),children:[t.kind===`workspace`?(0,N.jsx)(Zt,{className:`h-3 w-3 shrink-0`}):t.isCurrent?(0,N.jsx)(Ht,{className:`h-3 w-3 shrink-0`}):null,(0,N.jsx)(`span`,{children:t.label})]}),n<e.segments.length-1?(0,N.jsx)(It,{className:`h-3 w-3 shrink-0 text-gray-300`}):null]},t.key))}),e.locationLabel||e.truncated?(0,N.jsxs)(`div`,{className:`flex shrink-0 flex-wrap items-center justify-end gap-1`,children:[e.locationLabel?(0,N.jsx)(vM,{value:e.locationLabel}):null,e.truncated?(0,N.jsx)(vM,{tone:`warning`,value:o(`chatWorkspacePreviewTruncated`)}):null]}):null]})})}function bM(e){let t=e.path?.trim()??``;return g({queryKey:[`server-path-read`,t,e.basePath??null],queryFn:()=>j({path:t,basePath:e.basePath}),enabled:(e.enabled??!0)&&t.length>0,staleTime:0})}function xM(e){return e.serverKind?e.serverKind:/\.mdx?$/i.test(e.path)?`markdown`:`text`}function SM(e){let{line:t,path:n,text:r}=e,i=t??1;return{key:`preview:${n}`,path:n,display:`preview`,lines:hk({text:r,kind:`context`,oldStartLine:i,newStartLine:i}),rawText:r,oldStartLine:i,newStartLine:i}}function CM(e){if(Array.isArray(e.fullLines)&&e.fullLines.length>0)return{key:`diff:${e.key}`,path:e.path,display:`diff`,lines:e.fullLines,fullLines:e.fullLines,...e.beforeText?{beforeText:e.beforeText}:{},...e.afterText?{afterText:e.afterText}:{},...e.patchText?{patchText:e.patchText}:{},...typeof e.oldStartLine==`number`?{oldStartLine:e.oldStartLine}:{},...typeof e.newStartLine==`number`?{newStartLine:e.newStartLine}:{}};if(e.beforeText==null&&e.afterText==null)return null;let t=yk({beforeText:e.beforeText??``,afterText:e.afterText??``,oldStartLine:e.oldStartLine??void 0,newStartLine:e.newStartLine??void 0});return{key:`diff:${e.key}`,path:e.path,display:`diff`,lines:t,fullLines:t,...e.beforeText?{beforeText:e.beforeText}:{},...e.afterText?{afterText:e.afterText}:{},...typeof e.oldStartLine==`number`?{oldStartLine:e.oldStartLine}:{},...typeof e.newStartLine==`number`?{newStartLine:e.newStartLine}:{}}}function wM({text:e,tone:t=`muted`}){return(0,N.jsx)(`div`,{className:d(`flex h-full items-center justify-center px-6 text-center text-sm`,t===`error`?`text-rose-600`:`text-gray-500`),children:e})}function TM({diffBlock:e}){return e?(0,N.jsx)(EM,{block:e}):(0,N.jsx)(wM,{text:o(`chatWorkspaceDiffEmpty`)})}function EM({block:e}){return(0,N.jsx)(`div`,{className:`h-full overflow-auto custom-scrollbar bg-white`,children:(0,N.jsx)(hE,{block:e,layout:`workspace`})})}function DM({onFileOpen:e,previewBlock:t,previewKind:n,previewQuery:r,previewText:i}){return r.isLoading&&!t?(0,N.jsx)(wM,{text:o(`chatWorkspaceLoadingFile`)}):r.data?.kind===`binary`?(0,N.jsx)(wM,{text:o(`chatWorkspacePreviewUnsupported`)}):r.error&&!t?(0,N.jsx)(wM,{tone:`error`,text:r.error instanceof Error?r.error.message:String(r.error)}):n===`markdown`&&i?(0,N.jsx)(`div`,{className:`h-full overflow-auto custom-scrollbar px-5 py-4`,children:(0,N.jsx)(aT,{text:i,role:`assistant`,texts:{copyCodeLabel:o(`chatCodeCopy`),copiedCodeLabel:o(`chatCodeCopied`)},onFileOpen:e})}):t?(0,N.jsx)(EM,{block:t}):(0,N.jsx)(wM,{text:o(`chatWorkspacePreviewEmpty`)})}function OM({file:e,sessionProjectRoot:t,onFileOpen:n}){let r=e.viewMode===`preview`,i=bM({path:e.path,basePath:t,enabled:r}),a=(0,P.useMemo)(()=>e.viewMode===`diff`?CM(e):null,[e]),o=r?i.data?.text??e.rawText??null:null,s=xM({path:i.data?.resolvedPath??e.path,serverKind:i.data?.kind}),c=(0,P.useMemo)(()=>!r||!o?null:SM({path:i.data?.resolvedPath??e.path,text:o,line:e.line}),[e.line,e.path,r,i.data?.resolvedPath,o]),l=i.data?.resolvedPath??e.path,u=!!i.data?.truncated;return(0,N.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col bg-white`,children:[(0,N.jsx)(yM,{breadcrumb:(0,P.useMemo)(()=>zA({path:l,sessionProjectRoot:t,line:e.line,column:e.column,truncated:u}),[e.column,e.line,u,l,t])}),(0,N.jsx)(`div`,{className:`flex-1 min-h-0 overflow-hidden`,children:e.viewMode===`diff`?(0,N.jsx)(TM,{diffBlock:a}):(0,N.jsx)(DM,{onFileOpen:n,previewBlock:c,previewKind:s,previewQuery:i,previewText:o})})]})}function kM(e,t){return e.label?.trim()?e.label.trim():t?Jj(t):e.sessionKey}function AM(e){let t=pt({limit:200}),n=(0,P.useMemo)(()=>t.data?.sessions??[],[t.data?.sessions]),r=(0,P.useMemo)(()=>{let e=oj(n);return new Map(e.map(e=>[e.key,e]))},[n]),i=(0,P.useMemo)(()=>new Map(n.map(e=>[e.sessionId,e])),[n]);return(0,P.useMemo)(()=>e.map(e=>{let t=r.get(e.sessionKey)??null,n=i.get(e.sessionKey)??null,a=e.agentId?.trim()||t?.agentId||null;return{sessionKey:e.sessionKey,parentSessionKey:e.parentSessionKey,title:kM(e,t),agentId:a,updatedAt:t?.updatedAt??null,lastMessageAt:t?.lastMessageAt??null,readAt:t?.readAt??null,runStatus:n?.status===`running`?`running`:void 0,sessionTypeLabel:t?.sessionType?Nj(t.sessionType):null,preferredModel:t?.preferredModel?.trim()||null,projectName:t?.projectName?.trim()||null,projectRoot:t?.projectRoot?.trim()||null}}),[r,i,e])}function jM(e){let t=e.split(/\r?\n/),n=`message`,r=[];for(let e of t){let t=e.trimEnd();if(!(!t||t.startsWith(`:`))){if(t.startsWith(`event:`)){n=t.slice(6).trim()||`message`;continue}t.startsWith(`data:`)&&r.push(t.slice(5).trimStart())}}return r.length===0?null:{event:n,data:r.join(`
|
|
60
|
-
`)}}async function*MM(e){let t=e.getReader(),n=new TextDecoder,r=``;try{for(;;){let{value:e,done:i}=await t.read();if(i)break;r+=n.decode(e,{stream:!0});let{frames:a,rest:o}=NM(r);r=o;for(let e of a)yield e}r+=n.decode();let{frames:e}=NM(r,!0);for(let t of e)yield t}finally{t.releaseLock()}}function NM(e,t=!1){let n=e.split(/\r?\n\r?\n/),r=n.pop()??``,i=[];for(let e of n){let t=jM(e);t&&i.push(t)}if(t&&r.trim()){let e=jM(r);return e&&i.push(e),{frames:i,rest:``}}return{frames:i,rest:r}}var PM=`/ncp/agent`,FM=class extends Error{ncpError;alreadyPublished;constructor(e,t=!1){super(e.message),this.name=`NcpHttpAgentClientError(${e.code})`,this.ncpError=e,this.alreadyPublished=t}};function IM(e){let t=e.trim();if(!t)throw Error(`NcpHttpAgentClient requires a non-empty baseUrl.`);return new URL(t)}function LM(e){if(e)return e;if(typeof globalThis.fetch==`function`)return globalThis.fetch.bind(globalThis);throw Error(`No fetch implementation found. Pass options.fetchImpl explicitly.`)}function RM(e){let t=(e??`/ncp/agent`).trim();if(!t)return PM;let n=t.startsWith(`/`)?t:`/${t}`;return n.endsWith(`/`)?n.slice(0,-1):n}async function zM(e){try{return(await e.text()).trim()}catch{return``}}function BM(e){if(WM(e))return e.ncpError;if(HM(e))return e;let t=e instanceof Error?e.message:String(e??`Unknown error`);return{code:KM(void 0),message:t,...e instanceof Error&&e.stack?{details:{stack:e.stack}}:{}}}function VM(e,t={}){return new FM(e,t.alreadyPublished??!1)}function HM(e){return UM(e)&&typeof e.code==`string`&&typeof e.message==`string`}function UM(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function WM(e){return e instanceof FM}var GM={"config-error":`config-error`,"auth-error":`auth-error`,"runtime-error":`runtime-error`,"timeout-error":`timeout-error`,"abort-error":`abort-error`};function KM(e){if(!e)return`runtime-error`;let t=GM[e];if(t)return t;let n=e.toLowerCase();return n.includes(`timeout`)?`timeout-error`:n.includes(`abort`)||n.includes(`cancel`)?`abort-error`:n.includes(`auth`)?`auth-error`:n.includes(`config`)?`config-error`:`runtime-error`}function qM(e){let t=YM(e);return!t||typeof t.type!=`string`||!t.type.trim()?null:t}function JM(e){let t=YM(e);if(!t)return{code:`runtime-error`,message:e||`Unknown stream error.`};let n=typeof t.code==`string`?t.code:void 0,r=KM(n),i=UM(t.details)?t.details:{};return n&&n!==r&&(i.originalCode=n),{code:r,message:typeof t.message==`string`&&t.message?t.message:`Unknown stream error.`,...Object.keys(i).length>0?{details:i}:{}}}function YM(e){try{let t=JSON.parse(e);return UM(t)?t:null}catch{return null}}var XM=[`text`,`file`,`source`,`step-start`,`reasoning`,`tool-invocation`,`card`,`rich-text`,`action`,`extension`],ZM=class{manifest;baseUrl;basePath;fetchImpl;defaultHeaders;subscribers=new Set;activeControllers=new Set;started=!1;constructor(e){this.baseUrl=IM(e.baseUrl),this.basePath=RM(e.basePath),this.fetchImpl=LM(e.fetchImpl),this.defaultHeaders=e.headers??{},this.manifest={endpointKind:`custom`,endpointId:e.endpointId?.trim()||`ncp-http-agent-client`,version:`0.1.0`,supportsStreaming:!0,supportsAbort:!0,supportsProactiveMessages:!1,supportsLiveSessionStream:!0,supportedPartTypes:XM,expectedLatency:`seconds`,metadata:{transport:`http+sse`,scope:`agent`}}}async start(){this.started||(this.started=!0,this.publish({type:$E.EndpointReady}))}async stop(){if(this.started){this.started=!1;for(let e of this.activeControllers)e.abort();this.activeControllers.clear()}}async emit(e){switch(e.type){case`message.request`:await this.send(e.payload);return;case`message.stream-request`:await this.stream(e.payload);return;case`message.abort`:await this.abort(e.payload);return;default:this.publish(e);return}}subscribe(e){return this.subscribers.add(e),()=>{this.subscribers.delete(e)}}async send(e){await this.ensureStarted(),await this.jsonRequest({path:`/send`,method:`POST`,body:e})}async stream(e){await this.ensureStarted();let t=new URLSearchParams({sessionId:e.sessionId});await this.streamRequest({path:`/stream?${t.toString()}`,method:`GET`})}async abort(e){await this.ensureStarted();let t=new AbortController;this.activeControllers.add(t);try{let n=await this.fetchImpl(this.resolveUrl(`/abort`),{method:`POST`,headers:{...this.defaultHeaders,"content-type":`application/json`,accept:`application/json`},body:JSON.stringify(e),signal:t.signal});if(!n.ok)throw Error(`Abort request failed with HTTP ${n.status}: ${await zM(n)}`)}catch(e){if(t.signal.aborted)return;let n=BM(e);throw this.publish({type:$E.EndpointError,payload:n}),VM(n)}finally{this.activeControllers.delete(t)}}async ensureStarted(){this.started||await this.start()}publish(e){for(let t of this.subscribers)t(e)}resolveUrl(e){return new URL(`${this.basePath}${e}`,this.baseUrl)}async jsonRequest(e){let t=new AbortController;this.activeControllers.add(t);try{let n=await this.fetchImpl(this.resolveUrl(e.path),{method:e.method,headers:{...this.defaultHeaders,"content-type":`application/json`,accept:`application/json`},body:e.body===void 0?void 0:JSON.stringify(e.body),signal:t.signal});if(!n.ok)throw Error(`NCP request failed with HTTP ${n.status}: ${await zM(n)}`)}catch(e){if(t.signal.aborted)return;if(WM(e))throw e;let n=BM(e);throw this.publish({type:$E.EndpointError,payload:n}),VM(n)}finally{this.activeControllers.delete(t)}}async streamRequest(e){let t=new AbortController;this.activeControllers.add(t);try{let n=await this.fetchImpl(this.resolveUrl(e.path),{method:e.method,headers:{...this.defaultHeaders,accept:`text/event-stream`,...e.body===void 0?{}:{"content-type":`application/json`}},body:e.body===void 0?void 0:JSON.stringify(e.body),signal:t.signal});if(!n.ok)throw Error(`NCP stream request failed with HTTP ${n.status}: ${await zM(n)}`);if(!n.body)throw Error(`NCP stream response has no body.`);for await(let e of MM(n.body)){if(t.signal.aborted)return;this.handleSseFrame(e)}}catch(e){if(t.signal.aborted)return;if(WM(e))throw e;let n=BM(e);throw this.publish({type:$E.EndpointError,payload:n}),VM(n)}finally{this.activeControllers.delete(t)}}handleSseFrame(e){if(e.event===`ncp-event`){let t=qM(e.data);if(!t){this.publish({type:$E.EndpointError,payload:{code:`runtime-error`,message:`Received malformed ncp-event frame.`}});return}this.publish(t);return}if(e.event===`error`){let t=JM(e.data);throw this.publish({type:$E.EndpointError,payload:t}),VM(t,{alreadyPublished:!0})}}};function QM(e){return typeof e==`string`?e:e instanceof URL?e.toString():e.url}function $M(e){if(e instanceof Error){let t=e.name?.trim(),n=e.message?.trim();return t&&n?`${t}: ${n}`:n||t||`Unknown Error`}return String(e??`Unknown error`)}function eN(e,t){let n=Error(e);return t!==void 0&&(n.cause=t),n}function tN(){return async(e,t)=>{try{return await fetch(e,{credentials:`include`,...t})}catch(n){throw oe.reportTransportFailure($M(n)),eN(`NCP fetch failed for ${(t?.method||`GET`).toUpperCase()} ${QM(e)}: ${$M(n)}`,n)}}}var nN=300,rN=`ncp agent unavailable during startup`;function iN(e){return e instanceof Error?e.message.includes(`ncp session not found:`):!1}function aN(e){return e?.trim().toLowerCase().includes(rN)??!1}function oN(){return new ZM({baseUrl:re,basePath:`/api/ncp/agent`,fetchImpl:tN()})}async function sN(e,t,n=nN){t.throwIfAborted();try{let r=await w(e,n);return t.throwIfAborted(),{messages:r.messages,status:r.status??`idle`}}catch(e){if(t.throwIfAborted(),!iN(e))throw e;return{messages:[],status:`idle`}}}function cN(e,t){let n=(0,P.useRef)(null),r=(0,P.useCallback)(e=>{if(!e){n.current=null;return}n.current!==e&&(n.current=e,t())},[t]);(0,P.useEffect)(()=>{r(e)},[e,r])}function lN(e,t={}){let[n]=(0,P.useState)(()=>oN()),r=k(),[i,a]=(0,P.useState)(0),o=t.messageLimit??nN,s=OD({sessionId:e,client:n,loadSeed:(0,P.useCallback)((e,t)=>sN(e,t,o),[i,o])}),c=s.hydrateError?.message??s.snapshot.error?.message??null;return cN(r.phase===`ready`&&aN(c)?`${e}:${r.lastReadyAt??0}`:null,()=>{a(e=>e+1)}),s}function uN(e){return e.label?.trim()||e.path.split(`/`).filter(Boolean).pop()||e.path}function dN(e){let{activeChildSessionKey:t,activeWorkspaceFileKey:n,childSessionTabs:r,workspaceFileTabs:i}=e;if(n){let e=i.find(e=>e.key===n);if(e)return{kind:`file`,file:e}}if(t){let e=r.find(e=>e.sessionKey===t);if(e)return{kind:`child-session`,tab:e}}return r[0]?{kind:`child-session`,tab:r[0]}:i[0]?{kind:`file`,file:i[0]}:null}function fN({agentId:e,kind:t}){return t===`file`?(0,N.jsx)(Ht,{className:`h-3.5 w-3.5 shrink-0 text-gray-400`}):e?(0,N.jsx)(mj,{agentId:e,className:`h-3.5 w-3.5 shrink-0`}):(0,N.jsx)(rn,{className:`h-3.5 w-3.5 shrink-0 text-gray-400`})}function pN({tab:e}){return(0,N.jsx)(kt,{delayDuration:250,children:(0,N.jsxs)(jt,{children:[(0,N.jsx)(Tt,{asChild:!0,children:(0,N.jsxs)(`div`,{className:d(`group flex max-w-[180px] min-w-0 items-center gap-1.5 border-r border-gray-200/70 border-b-2 px-2.5 py-2 transition-colors`,e.active?`border-b-primary bg-white text-gray-900`:`border-b-transparent bg-gray-50/85 text-gray-500 hover:bg-gray-100`),children:[(0,N.jsxs)(`button`,{type:`button`,onClick:e.onSelect,className:`flex min-w-0 flex-1 items-center gap-1.5 text-left`,children:[(0,N.jsx)(fN,{kind:e.kind,agentId:e.agentId}),(0,N.jsx)(`span`,{className:`min-w-0 truncate text-[12px] font-medium`,children:e.title}),e.kind===`file`&&e.viewMode===`diff`?(0,N.jsx)(`span`,{className:`shrink-0 rounded border border-amber-200 bg-amber-50 px-1 py-0 text-[9px] font-medium uppercase tracking-[0.08em] text-amber-700`,children:o(`chatWorkspaceDiff`)}):null,e.showUnreadDot?(0,N.jsx)(`span`,{"aria-label":o(`chatSessionUnread`),className:`h-2 w-2 shrink-0 rounded-full bg-primary`}):null]}),e.onClose?(0,N.jsx)(`button`,{type:`button`,onClick:t=>{t.stopPropagation(),e.onClose?.()},className:d(`rounded p-0.5 text-gray-400 transition-colors hover:bg-gray-200 hover:text-gray-700`,e.active?`opacity-100`:`opacity-0 group-hover:opacity-100`),"aria-label":o(`chatWorkspaceCloseFile`),children:(0,N.jsx)(ct,{className:`h-3 w-3`})}):null]})}),(0,N.jsx)(Dt,{side:`bottom`,className:`max-w-[320px] text-xs`,children:e.tooltip})]})})}function mN({tabs:e}){return(0,N.jsx)(`div`,{"data-testid":`workspace-tabs-bar`,className:`workspace-horizontal-scrollbar overflow-x-auto overflow-y-hidden border-b border-gray-200/70 bg-gray-50/85`,children:(0,N.jsx)(`div`,{"data-testid":`workspace-tabs-scroll`,className:`flex min-w-max items-stretch`,children:e.map(e=>(0,N.jsx)(pN,{tab:e},e.key))})})}function hN({sessionKey:e,onToolAction:t,onFileOpen:n}){let r=lN(e),i=r.visibleMessages,a=(0,P.useRef)(null),{onScroll:s}=WT({scrollRef:a,resetKey:e,isLoading:r.isHydrating,hasContent:i.length>0,contentVersion:i[i.length-1]??null,stickyThresholdPx:20});return(0,N.jsx)(`div`,{ref:a,onScroll:s,className:`h-full overflow-y-auto custom-scrollbar`,children:r.isHydrating?(0,N.jsxs)(`div`,{className:`flex h-full items-center justify-center text-sm text-gray-500`,children:[(0,N.jsx)(nt,{className:`mr-2 h-4 w-4 animate-spin`}),o(`chatChildSessionLoading`)]}):r.hydrateError?(0,N.jsx)(`div`,{className:`px-4 py-5 text-sm text-rose-600`,children:r.hydrateError.message}):i.length===0&&!r.isRunning?(0,N.jsx)(`div`,{className:`px-4 py-5 text-sm text-gray-500`,children:o(`chatChildSessionEmpty`)}):(0,N.jsx)(`div`,{className:`px-4 py-5`,children:(0,N.jsx)(vj,{messages:i,isSending:r.isRunning,onToolAction:t,onFileOpen:n})})})}function gN({value:e}){return(0,N.jsx)(`span`,{className:`inline-flex max-w-full items-center rounded border border-gray-200 bg-gray-50 px-2 py-0.5 text-[10px] font-medium text-gray-600`,children:(0,N.jsx)(`span`,{className:`truncate`,children:e})})}function _N({tab:e}){let t=[e.sessionTypeLabel,e.preferredModel,e.projectName].filter(e=>!!e?.trim());return t.length===0&&!e.projectRoot?null:(0,N.jsxs)(`div`,{className:`mt-3 space-y-2`,children:[t.length>0?(0,N.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:t.map(e=>(0,N.jsx)(gN,{value:e},e))}):null,e.projectRoot?(0,N.jsx)(`div`,{title:e.projectRoot,className:`truncate rounded border border-gray-200 bg-gray-50 px-2 py-1.5 font-mono text-[11px] text-gray-500`,children:e.projectRoot}):null]})}function vN({tab:e}){return(0,N.jsxs)(`div`,{className:`border-b border-gray-200/70 px-4 py-3`,children:[(0,N.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 text-sm font-semibold text-gray-900`,children:[e.agentId?(0,N.jsx)(mj,{agentId:e.agentId,className:`h-4 w-4 shrink-0`}):(0,N.jsx)(Yt,{className:`h-4 w-4 shrink-0 text-gray-400`}),(0,N.jsx)(`span`,{className:`truncate`,children:e.title})]}),(0,N.jsx)(_N,{tab:e})]})}function yN(e){let{resolvedChildTabs:t,workspaceFileTabs:n,activeSelection:r,optimisticReadAtBySessionKey:i,onSelectSession:a,onSelectFile:o,onCloseFile:s}=e,c=t.map(e=>{let t=i[e.sessionKey],n=t&&e.readAt?t.localeCompare(e.readAt)>0?t:e.readAt:t??e.readAt;return{key:`child:${e.sessionKey}`,kind:`child-session`,title:e.title,tooltip:e.title,agentId:e.agentId,active:r?.kind===`child-session`&&r.tab.sessionKey===e.sessionKey,showUnreadDot:Qj({active:r?.kind===`child-session`&&r.tab.sessionKey===e.sessionKey,lastMessageAt:e.lastMessageAt,readAt:n,runStatus:e.runStatus}),onSelect:()=>a(e.sessionKey)}}),l=n.map(e=>({key:`file:${e.key}`,kind:`file`,title:uN(e),tooltip:e.path,viewMode:e.viewMode,active:r?.kind===`file`&&r.file.key===e.key,onSelect:()=>o(e.key),onClose:()=>s(e.key)}));return[...c,...l]}function bN({childSessionTabs:e,activeChildSessionKey:t,workspaceFileTabs:n,activeWorkspaceFileKey:r,sessionProjectRoot:i,displayMode:a=`docked`,onSelectSession:s,onSelectFile:c,onCloseFile:l,onClose:u,onBackToParent:f,onToolAction:p,onFileOpen:m}){let h=QD(),g=AM(e),_=nM(e=>e.optimisticReadAtBySessionKey),v=dN({activeChildSessionKey:t,activeWorkspaceFileKey:r,childSessionTabs:g,workspaceFileTabs:n}),y=g.some(e=>!!e.parentSessionKey);(0,P.useEffect)(()=>{if(v?.kind!==`child-session`)return;let e=v.tab.lastMessageAt?.trim()??null;e&&h.chatSessionListManager.markSessionRead(v.tab.sessionKey,e,v.tab.readAt??null)},[v,h]);let b=(0,P.useMemo)(()=>yN({resolvedChildTabs:g,workspaceFileTabs:n,activeSelection:v,optimisticReadAtBySessionKey:_,onSelectSession:s,onSelectFile:c,onCloseFile:l}),[v,l,c,s,_,g,n]);return v?(0,N.jsx)(`aside`,{className:d(a===`overlay`?`fixed inset-0 z-40 flex bg-white`:`hidden shrink-0 border-l border-gray-200/70 bg-white/95 backdrop-blur-sm md:flex md:w-[26rem] lg:w-[30rem] xl:w-[34rem]`),children:(0,N.jsxs)(`div`,{className:`flex h-full min-h-0 w-full flex-col`,children:[(0,N.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-gray-200/70 px-4 py-2.5`,children:[(0,N.jsxs)(`button`,{type:`button`,onClick:f,className:d(`inline-flex items-center gap-1 text-xs font-medium text-gray-600 transition-colors hover:text-gray-900`,!y&&`pointer-events-none opacity-0`),children:[(0,N.jsx)(De,{className:`h-3.5 w-3.5`}),(0,N.jsx)(`span`,{children:o(`chatBackToParent`)})]}),(0,N.jsx)(`button`,{type:`button`,onClick:u,className:`rounded-full border border-gray-200/80 p-1.5 text-gray-500 transition-colors hover:bg-gray-100 hover:text-gray-900`,"aria-label":o(`chatWorkspaceClosePanel`),children:(0,N.jsx)(ct,{className:`h-4 w-4`})})]}),(0,N.jsx)(mN,{tabs:b}),(0,N.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col bg-white`,children:v.kind===`child-session`?(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(vN,{tab:v.tab}),(0,N.jsx)(`div`,{className:`flex-1 min-h-0`,children:(0,N.jsx)(hN,{sessionKey:v.tab.sessionKey,onToolAction:p,onFileOpen:m})})]}):(0,N.jsx)(OM,{file:v.file,sessionProjectRoot:i,onFileOpen:m})})]})}):null}function xN(){return g({queryKey:[`ncp-session-types`],queryFn:h,staleTime:1e4,retry:!1})}function SN(e){let t=e.trim();return t.length>0?t:null}function CN(e){return e??null}var wN=class{constructor(e){this.updateSession=e,this.inFlight=null,this.queued=null,this.syncSelectedSessionPreferences=()=>{let e=Q.getState().snapshot,t=nM.getState().snapshot,n=Lj.getState().snapshot,r=t.selectedSessionKey;!r||!n.canDeleteSession||this.enqueue({sessionKey:r,patch:{preferredModel:SN(e.selectedModel),preferredThinking:CN(e.selectedThinkingLevel)}})},this.enqueue=e=>{this.queued=e,!this.inFlight&&this.startFlush()},this.startFlush=()=>{this.inFlight=this.flush().catch(e=>{console.error(`Failed to sync chat session preferences: ${String(e)}`)}).finally(()=>{this.inFlight=null,this.queued&&this.startFlush()})},this.flush=async()=>{for(;this.queued;){let e=this.queued;this.queued=null,await this.updateSession(e.sessionKey,e.patch)}}}},TN=class{constructor(e,t,n){this.uiManager=e,this.streamActionsManager=t,this.sessionListManager=n,this.sessionPreferenceSync=new wN(ae),this.buildAttachmentSignature=e=>[e.assetUri??``,e.url??``,e.name,e.mimeType,String(e.sizeBytes),e.contentBase64??``].join(`:`),this.hasSnapshotChanges=e=>{let t=Q.getState().snapshot;for(let[n,r]of Object.entries(e))if(!Object.is(t[n],r))return!0;return!1},this.resolveUpdateValue=(e,t)=>typeof t==`function`?t(e):t,this.isSameStringArray=(e,t)=>e.length===t.length&&e.every((e,n)=>e===t[n]),this.syncComposerSnapshot=e=>{let t=Q.getState().snapshot.attachments,n=cO(e,t);Q.getState().setSnapshot({composerNodes:e,attachments:n,draft:rO(e),selectedSkills:iO(e)})},this.syncComposerSnapshotWithAttachments=(e,t)=>{Q.getState().setSnapshot({composerNodes:e,attachments:t,draft:rO(e),selectedSkills:iO(e)})},this.dedupeAttachments=e=>{let t=new Set,n=[];for(let r of e){let e=this.buildAttachmentSignature(r);t.has(e)||(t.add(e),n.push(r))}return n},this.syncSnapshot=e=>{if(this.hasSnapshotChanges(e)&&(Q.getState().setSnapshot(e),Object.prototype.hasOwnProperty.call(e,`modelOptions`)||Object.prototype.hasOwnProperty.call(e,`selectedModel`)||Object.prototype.hasOwnProperty.call(e,`selectedThinkingLevel`))){let{selectedModel:e}=Q.getState().snapshot;this.reconcileThinkingForModel(e)}},this.setDraft=e=>{let t=Q.getState().snapshot.draft,n=this.resolveUpdateValue(t,e);n!==t&&this.syncComposerSnapshot(nO(n))},this.setComposerNodes=e=>{let t=Q.getState().snapshot.composerNodes,n=this.resolveUpdateValue(t,e);Object.is(n,t)||this.syncComposerSnapshot(n)},this.addAttachments=e=>{if(e.length===0)return[];let{snapshot:t}=Q.getState(),n=new Set(t.attachments.map(this.buildAttachmentSignature)),r=this.dedupeAttachments([...t.attachments,...e]),i=r.filter(e=>!n.has(this.buildAttachmentSignature(e)));if(i.length===0)return[];let a=sO(t.composerNodes,r);return this.syncComposerSnapshotWithAttachments(a,r),i},this.restoreComposerState=(e,t)=>{let n=this.dedupeAttachments(t),r=sO(e,n);this.syncComposerSnapshotWithAttachments(r,n)},this.setPendingSessionType=e=>{let t=Q.getState().snapshot.pendingSessionType,n=this.resolveUpdateValue(t,e);n!==t&&Q.getState().setSnapshot({pendingSessionType:n})},this.send=async()=>{let e=Q.getState().snapshot,t=nM.getState().snapshot,n=Lj.getState().snapshot,r=e.draft.trim(),{attachments:i}=e,a=lO(e.composerNodes,i);if(vO({snapshot:e,hasSendableDraft:a.some(e=>e.type!==`text`||e.text.trim().length>0),isRuntimeBlocked:oe.isChatInteractionBlocked()}))return;let{selectedSkills:o,composerNodes:s}=e,c=n.sessionKey??t.selectedSessionKey??this.sessionListManager.ensureDraftSession(e.selectedSessionType);this.setComposerNodes(tO()),await this.streamActionsManager.sendMessage({message:r,sessionKey:c,agentId:t.selectedAgentId,sessionType:e.selectedSessionType,model:e.selectedModel||void 0,thinkingLevel:e.selectedThinkingLevel??void 0,stopSupported:!0,requestedSkills:o,attachments:i,parts:a,restoreDraftOnError:!0,composerNodes:s}),this.sessionListManager.promoteRootDraftSessionRoute(c)},this.stop=async()=>{await this.streamActionsManager.stopCurrentRun()},this.goToProviders=()=>{this.uiManager.goToProviders()},this.setSelectedModel=e=>{let t=Q.getState().snapshot.selectedModel,n=this.resolveUpdateValue(t,e);n!==t&&(Q.getState().setSnapshot({selectedModel:n}),this.reconcileThinkingForModel(n))},this.setSelectedThinkingLevel=e=>{let t=Q.getState().snapshot.selectedThinkingLevel,n=this.resolveUpdateValue(t,e);n!==t&&Q.getState().setSnapshot({selectedThinkingLevel:n})},this.selectSessionType=e=>{let t=jj(e);Q.getState().setSnapshot({selectedSessionType:t,pendingSessionType:t})},this.setSelectedSkills=e=>{let{snapshot:t}=Q.getState(),{selectedSkills:n}=t,r=this.resolveUpdateValue(n,e);this.isSameStringArray(r,n)||this.syncComposerSnapshot(oO(t.composerNodes,r,t.skillRecords))},this.selectModel=e=>{this.setSelectedModel(e),fO.remember(e),this.sessionPreferenceSync.syncSelectedSessionPreferences()},this.selectThinkingLevel=e=>{this.setSelectedThinkingLevel(e),this.sessionPreferenceSync.syncSelectedSessionPreferences()},this.rememberSkillSelection=e=>{pO.remember(e)},this.selectSkills=e=>{let t=Q.getState().snapshot.selectedSkills;for(let n of e)t.includes(n)||this.rememberSkillSelection(n);this.setSelectedSkills(e)},this.resolveThinkingForModel=(e,t)=>{let n=e?.thinkingCapability;return!n||n.supported.length===0?null:t===`off`?`off`:t&&n.supported.includes(t)?t:n.default&&n.supported.includes(n.default)?n.default:`off`},this.reconcileThinkingForModel=e=>{let{snapshot:t}=Q.getState(),n=t.modelOptions.find(t=>t.value===e),{selectedThinkingLevel:r}=t,i=this.resolveThinkingForModel(n,r);i!==r&&Q.getState().setSnapshot({selectedThinkingLevel:i})}}},EN=class{constructor(e,t){this.uiManager=e,this.streamActionsManager=t,this.syncDraftThreadState=e=>{Lj.getState().setSnapshot({sessionKey:e,sessionDisplayName:void 0,canDeleteSession:!1,isHistoryLoading:!1,messages:[],isSending:!1,isAwaitingAssistantOutput:!1,parentSessionKey:null,parentSessionLabel:null,workspacePanelParentKey:null,childSessionTabs:[],activeChildSessionKey:null,activeWorkspaceFileKey:null})},this.resolveUpdateValue=(e,t)=>typeof t==`function`?t(e):t,this.shouldPersistReadAt=(e,t,n)=>{let r=nM.getState().optimisticReadAtBySessionKey[e],i=r&&n?r.localeCompare(n)>0?r:n:r??n??void 0;return i?t.localeCompare(i)>0:!0},this.setSelectedAgentId=e=>{let t=nM.getState().snapshot.selectedAgentId,n=this.resolveUpdateValue(t,e);n!==t&&nM.getState().setSnapshot({selectedAgentId:n})},this.setSelectedSessionKey=e=>{let t=nM.getState().snapshot.selectedSessionKey,n=this.resolveUpdateValue(t,e);n!==t&&nM.getState().setSnapshot({selectedSessionKey:n})},this.setListMode=e=>{let t=nM.getState().snapshot.listMode,n=this.resolveUpdateValue(t,e);n!==t&&nM.getState().setSnapshot({listMode:n})},this.markSessionRead=(e,t,n)=>{let r=e?.trim(),i=t?.trim();!r||!i||this.shouldPersistReadAt(r,i,n)&&(nM.getState().markSessionRead(r,i),ae(r,{uiReadAt:i}).catch(()=>void 0))},this.createSession=(e,t)=>{let{snapshot:n}=Q.getState(),{defaultSessionType:r}=n,i=r||`native`,a=typeof e==`string`&&e.trim().length>0?e.trim():i,o=jA(t),s=sj();return this.streamActionsManager.resetStreamState(),nM.getState().setSnapshot({selectedSessionKey:null,draftSessionKey:s}),this.syncDraftThreadState(s),Q.getState().setSnapshot({pendingSessionType:a,pendingProjectRoot:o,pendingProjectRootSessionKey:o?s:null}),this.uiManager.goToChatRoot(),s},this.ensureDraftSession=e=>{let{snapshot:t}=nM.getState();if(t.selectedSessionKey)return t.selectedSessionKey;let n=typeof e==`string`&&e.trim().length>0?e.trim():null;return this.syncDraftThreadState(t.draftSessionKey),n&&Q.getState().setSnapshot({pendingSessionType:n}),t.draftSessionKey},this.promoteRootDraftSessionRoute=e=>{let t=e.trim();if(!t)return;let{snapshot:n}=nM.getState(),{sessionKey:r}=Lj.getState().snapshot;n.selectedSessionKey!==null||n.draftSessionKey!==t||r!==t||!this.uiManager.isAtChatRoot()||this.uiManager.goToSession(t,{replace:!0})},this.selectSession=e=>{Lj.getState().setSnapshot({workspacePanelParentKey:null,activeChildSessionKey:null,activeWorkspaceFileKey:null}),this.uiManager.goToSession(e)},this.setQuery=e=>{let t=nM.getState().snapshot.query,n=this.resolveUpdateValue(t,e);n!==t&&nM.getState().setSnapshot({query:n})}}},DN=async()=>{},ON=()=>{},kN=class{constructor(){this.actions={sendMessage:DN,stopCurrentRun:DN,resumeRun:DN,resetStreamState:ON,applyHistoryMessages:ON},this.bind=e=>{this.actions={...this.actions,...e}},this.sendMessage=e=>this.actions.sendMessage(e),this.stopCurrentRun=()=>this.actions.stopCurrentRun(),this.resumeRun=e=>this.actions.resumeRun(e),this.resetStreamState=()=>this.actions.resetStreamState(),this.applyHistoryMessages=(e,t)=>this.actions.applyHistoryMessages(e,t)}},AN=`sid_`;function jN(e){let t=new TextEncoder().encode(e),n=``;for(let e of t)n+=String.fromCharCode(e);return`${AN}${btoa(n).replace(/\+/g,`-`).replace(/\//g,`_`).replace(/=+$/g,``)}`}function MN(e){if(!e.startsWith(AN))return null;let t=e.slice(4).replace(/-/g,`+`).replace(/_/g,`/`),n=`=`.repeat((4-t.length%4)%4);try{let e=atob(t+n),r=Uint8Array.from(e,e=>e.charCodeAt(0));return new TextDecoder().decode(r)}catch{return null}}function NN(e){if(!e)return null;let t=MN(e);if(t)return t;try{return decodeURIComponent(e)}catch{return e}}function PN(e){return`/chat/${jN(e)}`}var FN=async e=>!1,IN=class{constructor(){this.state={pathname:``},this.actions={navigate:null,confirm:FN},this.syncState=e=>{this.state={...this.state,...e}},this.bindActions=e=>{this.actions={...this.actions,...e}},this.confirm=async e=>this.actions.confirm(e),this.navigateTo=(e,t)=>{this.actions.navigate&&(this.state.pathname===e&&!t?.replace||(this.actions.navigate(e,t),this.state.pathname=e))},this.goToProviders=()=>{this.navigateTo(`/providers`)},this.goToChatRoot=e=>{this.navigateTo(`/chat`,e)},this.isAtChatRoot=()=>this.state.pathname===`/chat`,this.goToSession=(e,t)=>{this.navigateTo(PN(e),t)}}},LN=class{constructor(e,t,n){this.uiManager=e,this.sessionListManager=t,this.streamActionsManager=n,this.hasSnapshotChanges=e=>{let t=Lj.getState().snapshot;for(let[n,r]of Object.entries(e))if(!Object.is(t[n],r))return!0;return!1},this.syncSnapshot=e=>{this.hasSnapshotChanges(e)&&Lj.getState().setSnapshot(e)},this.clearDeletedSessionState=e=>{nM.getState().snapshot.selectedSessionKey===e&&this.sessionListManager.setSelectedSessionKey(null),Lj.getState().setSnapshot({sessionKey:null,sessionTypeLabel:null,agentId:null,agentDisplayName:null,agentAvatarUrl:null,sessionDisplayName:void 0,sessionProjectRoot:null,sessionProjectName:null,canDeleteSession:!1,isHistoryLoading:!1,messages:[],isSending:!1,isAwaitingAssistantOutput:!1,parentSessionKey:null,parentSessionLabel:null,workspacePanelParentKey:null,childSessionTabs:[],activeChildSessionKey:null,workspaceFileTabs:[],activeWorkspaceFileKey:null})},this.resolveWorkspaceParentSessionKey=()=>Lj.getState().snapshot.sessionKey?.trim()||(nM.getState().snapshot.selectedSessionKey??null),this.buildWorkspaceFileTab=(e,t)=>{let n=e.path.trim();if(!n)return null;let r=t?.trim()||null;return{key:`${r??`draft`}::${e.viewMode}::${n}`,parentSessionKey:r,path:n,label:e.label?.trim()||null,viewMode:e.viewMode,line:e.line??null,column:e.column??null,rawText:e.rawText??null,beforeText:e.beforeText??null,afterText:e.afterText??null,patchText:e.patchText??null,oldStartLine:e.oldStartLine??null,newStartLine:e.newStartLine??null,fullLines:e.fullLines}},this.upsertWorkspaceFileTab=e=>{let{workspaceFileTabs:t}=Lj.getState().snapshot,n=t.findIndex(t=>t.key===e.key);if(n===-1)return[e,...t];let r=[...t];return r.splice(n,1),r.unshift({...t[n],...e}),r},this.ensureWorkspaceParentRoute=e=>{if(!e)return;let{snapshot:{selectedSessionKey:t}}=nM.getState();t!==e&&this.uiManager.goToSession(e)},this.deleteSession=()=>{this.deleteCurrentSession()},this.createSession=()=>{this.sessionListManager.createSession()},this.goToProviders=()=>{this.uiManager.goToProviders()},this.openChildSessionPanel=e=>{let t=e.parentSessionKey.trim();if(!t)return;let n=e.activeChildSessionKey?.trim()||null;Lj.getState().setSnapshot({workspacePanelParentKey:t,activeChildSessionKey:n,activeWorkspaceFileKey:null}),this.ensureWorkspaceParentRoute(t)},this.openFilePreview=e=>{let t=this.resolveWorkspaceParentSessionKey(),n=this.buildWorkspaceFileTab(e,t);n&&(Lj.getState().setSnapshot({workspacePanelParentKey:t,workspaceFileTabs:this.upsertWorkspaceFileTab(n),activeWorkspaceFileKey:n.key,activeChildSessionKey:null}),this.ensureWorkspaceParentRoute(t))},this.openSessionFromToolAction=e=>{if(e.kind===`open-session`){if(e.sessionKind===`child`&&!this.isCompactViewport()){let t=e.parentSessionId?.trim()||nM.getState().snapshot.selectedSessionKey||null;if(t){this.openChildSessionPanel({parentSessionKey:t,activeChildSessionKey:e.sessionId});return}}Lj.getState().setSnapshot({workspacePanelParentKey:null,activeChildSessionKey:null,activeWorkspaceFileKey:null}),this.uiManager.goToSession(e.sessionId)}},this.selectChildSessionDetail=e=>{let t=e.trim();if(!t)return;let{childSessionTabs:n}=Lj.getState().snapshot;n.some(e=>e.sessionKey===t)&&Lj.getState().setSnapshot({activeChildSessionKey:t,activeWorkspaceFileKey:null})},this.selectWorkspaceFile=e=>{let t=e.trim();if(!t)return;let{workspaceFileTabs:n}=Lj.getState().snapshot;n.some(e=>e.key===t)&&Lj.getState().setSnapshot({activeWorkspaceFileKey:t,activeChildSessionKey:null})},this.closeWorkspaceFile=e=>{let t=e.trim();if(!t)return;let{snapshot:n}=Lj.getState(),{activeWorkspaceFileKey:r,workspaceFileTabs:i}=n,a={workspaceFileTabs:i.filter(e=>e.key!==t)};r===t&&(a.activeWorkspaceFileKey=null),Lj.getState().setSnapshot(a)},this.closeWorkspacePanel=()=>{Lj.getState().setSnapshot({workspacePanelParentKey:null,activeChildSessionKey:null,activeWorkspaceFileKey:null})},this.closeChildSessionDetail=()=>{this.closeWorkspacePanel()},this.goToParentSession=()=>{let{parentSessionKey:e,childSessionTabs:t,activeChildSessionKey:n}=Lj.getState().snapshot,r=t.find(e=>e.sessionKey===n)?.parentSessionKey??null,i=e??r;i&&(this.closeWorkspacePanel(),this.uiManager.goToSession(i))},this.isCompactViewport=()=>dt.getSnapshot().mode===`mobile`,this.deleteCurrentSession=async()=>{let{snapshot:{selectedSessionKey:e}}=nM.getState();if(e&&await this.uiManager.confirm({title:o(`chatDeleteSessionConfirm`),variant:`destructive`,confirmLabel:o(`delete`)})){Lj.getState().setSnapshot({isDeletePending:!0});try{await T(e),ne(_,e),_.removeQueries({queryKey:[`ncp-session-messages`,e]}),this.streamActionsManager.resetStreamState(),this.clearDeletedSessionState(e),this.uiManager.goToChatRoot({replace:!0})}finally{Lj.getState().setSnapshot({isDeletePending:!1})}}}}},RN=class{constructor(){this.chatUiManager=new IN,this.chatStreamActionsManager=new kN,this.chatSessionListManager=new EN(this.chatUiManager,this.chatStreamActionsManager),this.chatInputManager=new TN(this.chatUiManager,this.chatStreamActionsManager,this.chatSessionListManager),this.chatThreadManager=new LN(this.chatUiManager,this.chatSessionListManager,this.chatStreamActionsManager)}};function zN(e){return e?.trim().toLowerCase()||`native`}function BN(e,t){if(typeof t!=`string`)return!1;let n=t.trim();return n?e.some(e=>e.value===n):!1}function VN(e,t){return typeof t==`string`&&e.includes(t)}function HN(e){return e.length===0?null:e.includes(`off`)?`off`:e[0]??null}function UN(e){let{currentValue:t,selectedSessionPreferredValue:n,fallbackPreferredValue:r,defaultValue:i,isValueSupported:a,firstAvailableValue:o,preferSessionPreferredValue:s=!1,preserveCurrentValueOnSessionChange:c=!1}=e;return a(t)&&(!s||c)?t:a(n)?n:a(r)?r:a(i)?i:o}function WN(e){let{modelOptions:t,currentSelectedModel:n,selectedSessionPreferredModel:r,fallbackPreferredModel:i,defaultModel:a,preferSessionPreferredModel:o,preserveCurrentSelectedModelOnSessionChange:s}=e;return t.length===0?``:UN({currentValue:n,selectedSessionPreferredValue:r,fallbackPreferredValue:i,defaultValue:a,isValueSupported:e=>BN(t,e),firstAvailableValue:t[0]?.value??``,preferSessionPreferredValue:o,preserveCurrentValueOnSessionChange:s})}function GN(e){let{supportedThinkingLevels:t,currentSelectedThinkingLevel:n,selectedSessionPreferredThinking:r,fallbackPreferredThinking:i,defaultThinkingLevel:a,preferSessionPreferredThinking:o,preserveCurrentSelectedThinkingOnSessionChange:s}=e;return t.length===0?null:UN({currentValue:n,selectedSessionPreferredValue:r,fallbackPreferredValue:i,defaultValue:a,isValueSupported:e=>VN(t,e),firstAvailableValue:HN(t)??`off`,preferSessionPreferredValue:o,preserveCurrentValueOnSessionChange:s})}function KN(e){let{sessions:t,selectedSessionKey:n,sessionType:r,readPreference:i}=e,a=zN(r),o,s=-1/0;for(let e of t){if(e.key===n||zN(e.sessionType)!==a)continue;let t=i(e);if(t==null)continue;let r=Date.parse(e.updatedAt),c=Number.isFinite(r)?r:-1/0;(o===void 0||c>s)&&(o=t,s=c)}return o}function qN(e){let{sessions:t,selectedSessionKey:n,sessionType:r}=e;return KN({sessions:t,selectedSessionKey:n,sessionType:r,readPreference:e=>e.preferredModel?.trim()||void 0})}function JN(e){let{sessions:t,selectedSessionKey:n,sessionType:r}=e;return KN({sessions:t,selectedSessionKey:n,sessionType:r,readPreference:e=>e.preferredThinking??void 0})}function YN(e){let{isPreferenceAvailable:t,emptyValue:n,selectedSessionKey:r,selectedSessionExists:i=!1,setValue:a,resolveValue:o}=e,s=(0,P.useRef)(void 0),c=(0,P.useRef)(o);(0,P.useEffect)(()=>{c.current=o},[o]),(0,P.useEffect)(()=>{let e=s.current!==r;if(!t){a(n),s.current=r;return}a(t=>c.current({currentValue:t,sessionChanged:e,preserveCurrentValueOnSessionChange:e&&!!r&&!i})),s.current=r},[n,t,i,r,a])}function XN(e){let{modelOptions:t,selectedSessionKey:n,selectedSessionExists:r=!1,selectedSessionPreferredModel:i,fallbackPreferredModel:a,defaultModel:o,setSelectedModel:s}=e;YN({isPreferenceAvailable:t.length>0,emptyValue:``,selectedSessionKey:n,selectedSessionExists:r,setValue:s,resolveValue:({currentValue:e,sessionChanged:n,preserveCurrentValueOnSessionChange:r})=>WN({currentSelectedModel:e,modelOptions:t,selectedSessionPreferredModel:i,fallbackPreferredModel:a,defaultModel:o,preferSessionPreferredModel:n,preserveCurrentSelectedModelOnSessionChange:r})})}function ZN(e){let{supportedThinkingLevels:t,selectedSessionKey:n,selectedSessionExists:r=!1,selectedSessionPreferredThinking:i,fallbackPreferredThinking:a,defaultThinkingLevel:o,setSelectedThinkingLevel:s}=e;YN({isPreferenceAvailable:t.length>0,emptyValue:null,selectedSessionKey:n,selectedSessionExists:r,setValue:s,resolveValue:({currentValue:e,sessionChanged:n,preserveCurrentValueOnSessionChange:r})=>GN({currentSelectedThinkingLevel:e,supportedThinkingLevels:t,selectedSessionPreferredThinking:i,fallbackPreferredThinking:a,defaultThinkingLevel:o,preferSessionPreferredThinking:n,preserveCurrentSelectedThinkingOnSessionChange:r})})}export{Q as A,uj as C,jA as D,MA as E,dn as F,sn as I,nn as L,ND as M,Nn as N,FO as O,Mn as P,dj as S,aj as T,Mj as _,RN as a,cj as b,aN as c,nM as d,Jj as f,jj as g,Pj as h,ZN as i,ZD as j,BO as k,lN as l,Uj as m,JN as n,NN as o,Xj as p,XN as r,xN as s,qN as t,_M as u,Nj as v,oj as w,lj as x,Fj as y};
|
|
59
|
+
`):void 0}function cj(e){let{invocation:t,texts:n}=e,{toolName:r,toolCallId:i,args:a,result:o}=t;if(r!==`spawn`&&r!==`sessions_request`&&r!==`sessions_spawn`)return null;let s=ej(o);if(s){let e=$A(s.status)?.toLowerCase(),t=ij(s,a),o=oj(s),c=$A(s.sessionId),l=tA({args:a,result:s}),u=c?{kind:`open-session`,sessionId:c,sessionKind:s.isChildSession===!0?`child`:`session`,...l?{agentId:l}:{},...$A(s.title)?{label:s.title.trim()}:{},...$A(s.parentSessionId)?{parentSessionId:s.parentSessionId.trim()}:{}}:void 0;return e===`failed`?{kind:`result`,name:r,detail:t,input:rj(a),text:o,callId:i||void 0,hasResult:!!o,statusTone:`error`,statusLabel:n.toolStatusFailedLabel,...l?{agentId:l}:{},...u?{action:u}:{}}:e===`completed`?{kind:`result`,name:r,detail:t,input:rj(a),text:o,callId:i||void 0,hasResult:!!o,statusTone:`success`,statusLabel:n.toolStatusCompletedLabel,...l?{agentId:l}:{},...u?{action:u}:{}}:{kind:`result`,name:r,detail:t,input:rj(a),text:o,callId:i||void 0,hasResult:!!o,statusTone:`running`,statusLabel:n.toolStatusRunningLabel,...l?{agentId:l}:{},...u?{action:u}:{}}}let c=tj(o);if(!c)return null;let l=aj(c,a),u=sj(c),d=$A(c.sessionId),f=tA({args:a,result:c}),p=d?{kind:`open-session`,sessionId:d,sessionKind:c.isChildSession===!0?`child`:`session`,...f?{agentId:f}:{},...$A(c.title)?{label:c.title.trim()}:{},...$A(c.parentSessionId)?{parentSessionId:c.parentSessionId.trim()}:{}}:void 0;return{kind:`result`,name:r,detail:l,input:rj(a),text:u,callId:i||void 0,hasResult:!!u,statusTone:`success`,statusLabel:n.toolStatusCompletedLabel,...f?{agentId:f}:{},...p?{action:p}:{}}}function lj(e,t){let n=Vk(e.reasoning);return n?{type:`reasoning`,text:n,label:t.reasoningLabel}:null}function uj(e,t){let n=e.mimeType.startsWith(`image/`),r=Wk(e.sizeBytes);return{type:`file`,file:{label:typeof e.name==`string`&&e.name.trim()?e.name.trim():n?t.imageAttachmentLabel:t.fileAttachmentLabel,mimeType:e.mimeType,dataUrl:typeof e.url==`string`&&e.url.trim().length>0?e.url.trim():`data:${e.mimeType};base64,${e.data}`,...r==null?{}:{sizeBytes:r},isImage:n}}}function dj(e,t){let n=e.toolInvocation,r=Kk(n.result,t);if(r)return r;let i=cj({invocation:n,texts:{toolStatusRunningLabel:t.toolStatusRunningLabel,toolStatusCompletedLabel:t.toolStatusCompletedLabel,toolStatusFailedLabel:t.toolStatusFailedLabel}});if(i)return{type:`tool-card`,card:qk(i,t)};let a=Jk({status:n.status,error:n.error,cancelled:n.cancelled,result:n.result,texts:t}),o=ZA({toolName:n.toolName,status:n.status,toolCallId:n.toolCallId,args:n.args,parsedArgs:n.parsedArgs,result:n.result}),s=o?.summary??Dk(n.parsedArgs??n.args),c=o?void 0:Xk(n.args,n.parsedArgs),l=typeof n.error==`string`&&n.error.trim()?n.error.trim():n.result==null?``:Tk(n.result).trim(),u=!n.error&&Gk(n.result),d=(!o?.fileOperation||!!n.error)&&!u,f=tA(n);return{type:`tool-card`,card:qk({kind:a.kind,name:n.toolName,...f?{agentId:f}:{},detail:s,...c?{input:c}:{},text:d&&l?l:void 0,outputData:n.result,callId:n.toolCallId||void 0,hasResult:a.hasResult,statusTone:a.statusTone,statusLabel:a.statusLabel,...o?.fileOperation?{fileOperation:o.fileOperation}:{}},t)}}function fj(e,t){return{type:`unknown`,label:t.unknownPartLabel,rawType:typeof e.type==`string`?e.type:`unknown`,text:Tk(e)}}function pj(e){return e.type===`text`&&typeof e.text==`string`}function mj(e){return e.type===`reasoning`&&typeof e.reasoning==`string`}function hj(e){return e.type===`file`&&typeof e.mimeType==`string`&&typeof e.data==`string`}function gj(e){return e.type!==`tool-invocation`||typeof e.toolInvocation!=`object`||e.toolInvocation===null||Array.isArray(e.toolInvocation)?!1:`toolName`in e.toolInvocation&&typeof e.toolInvocation.toolName==`string`}function _j(e){return pj(e.part)?Bk(e.part,e.inlineTokens):mj(e.part)?lj(e.part,e.texts):hj(e.part)?uj(e.part,e.texts):gj(e.part)?dj(e.part,e.texts):fj(e.part,e.texts)}function vj(e){let t=e.meta?.timestamp;return t&&Number.isFinite(Date.parse(t))?t:new Date().toISOString()}function yj(e,t){return e===`user`?t.user:e===`assistant`?t.assistant:e===`tool`?t.tool:e===`system`?t.system:t.fallback}function bj(e){return e===`user`||e===`assistant`||e===`tool`||e===`system`?e:`message`}function xj(e,t){return{id:e.id,role:bj(e.role),roleLabel:yj(e.role,t.texts.roleLabels),timestampLabel:t.formatTimestamp(vj(e)),status:e.meta?.status,parts:e.parts.map(n=>_j({part:n,inlineTokens:e.meta?.inlineTokens??[],texts:t.texts})).filter(e=>e!==null)}}function Sj(e){if(typeof e!=`string`)return null;let t=e.trim();return t.length>0?t:null}function Cj(e){if(typeof e!=`number`||!Number.isFinite(e))return null;let t=Math.trunc(e);return t>=0?t:null}function wj(e){return e===!0}function Tj(e){let t=e;if(!t||typeof t!=`object`||Array.isArray(t))return null;let n=t,r=Cj(n.usedContextTokens),i=Cj(n.totalContextTokens),a=Cj(n.prunedUsedContextTokens),o=Sj(n.updatedAt);if(r===null||i===null||a===null||!o)return null;let s=Cj(n.compactedUsedContextTokens);return{usedContextTokens:r,totalContextTokens:i,prunedUsedContextTokens:a,availableContextTokens:Cj(n.availableContextTokens)??Math.max(0,i-r),droppedHistoryCount:Cj(n.droppedHistoryCount)??0,truncatedToolResultCount:Cj(n.truncatedToolResultCount)??0,truncatedSystemPrompt:wj(n.truncatedSystemPrompt),truncatedUserMessage:wj(n.truncatedUserMessage),compacted:wj(n.compacted),...Sj(n.checkpointId)?{checkpointId:Sj(n.checkpointId)??void 0}:{},compactedMessageCount:Cj(n.compactedMessageCount)??0,...s===null?{}:{compactedUsedContextTokens:s},updatedAt:o}}function Ej(e){let{metadata:t}=e;if(!t||t.nextclaw_timeline_kind!==`context_compaction`)return null;let n=t.checkpoint&&typeof t.checkpoint==`object`&&!Array.isArray(t.checkpoint)?t.checkpoint:null;if(!n)return null;let r=Sj(n.id),i=n.status===`compressing`?`compressing`:n.status===`compressed`?`compressed`:null,a=Sj(n.summary),o=Cj(n.coveredMessageCount),s=Cj(n.coveredSessionMessageCount),c=Cj(n.originalEstimatedTokens),l=Cj(n.projectedEstimatedTokens),u=Sj(n.createdAt),d=Sj(n.updatedAt);return!r||!i||!a||o===null||s===null||c===null||l===null||!u||!d?null:{id:r,status:i,summary:a,coveredMessageCount:o,coveredSessionMessageCount:s,originalEstimatedTokens:c,projectedEstimatedTokens:l,createdAt:u,updatedAt:d}}function Dj(){return _({queryKey:[`agents`],queryFn:E,staleTime:3e4})}function Oj(){let e=p();return g({mutationFn:({data:e})=>te(e),onSuccess:()=>{e.invalidateQueries({queryKey:[`agents`]}),e.invalidateQueries({queryKey:[`config`]}),m.success(o(`configSavedApplied`))},onError:e=>{m.error(o(`configSaveFailed`)+`: `+e.message)}})}function kj(){let e=p();return g({mutationFn:({agentId:e,data:t})=>x(e,t),onSuccess:()=>{e.invalidateQueries({queryKey:[`agents`]}),e.invalidateQueries({queryKey:[`config`]}),m.success(o(`configSavedApplied`))},onError:e=>{m.error(o(`configSaveFailed`)+`: `+e.message)}})}function Aj(){let e=p();return g({mutationFn:({agentId:e})=>ne(e),onSuccess:()=>{e.invalidateQueries({queryKey:[`agents`]}),e.invalidateQueries({queryKey:[`config`]}),m.success(o(`configSavedApplied`))},onError:e=>{m.error(o(`configSaveFailed`)+`: `+e.message)}})}function jj(e,t){return new Map([...t,...e].filter(e=>typeof e.id==`string`&&e.id.trim().length>0).map(e=>[e.id,e]))}function Mj(e){let t=e?.trim()??``,n=ak(e=>e.snapshot.availableAgents??[]),r=Dj(),i=(0,P.useMemo)(()=>jj(n,r.data?.agents??[]),[r.data?.agents,n]);return(0,P.useMemo)(()=>{if(!t)return null;let e=i.get(t)??null;return{agentId:t,profile:e,displayName:e?.displayName?.trim()||t,avatarUrl:e?.avatarUrl?.trim()||null}},[i,t])}function Nj({agentId:e,className:t}){let n=Mj(e);return n?(0,N.jsx)(jn,{agentId:n.agentId,displayName:n.displayName,avatarUrl:n.avatarUrl,className:t}):null}var Pj=new WeakMap;function Fj(e){return{roleLabels:{user:o(`chatRoleUser`),assistant:o(`chatRoleAssistant`),tool:o(`chatRoleTool`),system:o(`chatRoleSystem`),fallback:o(`chatRoleMessage`)},reasoningLabel:o(`chatReasoning`),toolCallLabel:o(`chatToolCall`),toolResultLabel:o(`chatToolResult`),toolInputLabel:o(`chatToolInput`),toolNoOutputLabel:o(`chatToolNoOutput`),toolOutputLabel:o(`chatToolOutput`),toolStatusPreparingLabel:o(`chatToolStatusPreparing`),toolStatusRunningLabel:o(`chatToolStatusRunning`),toolStatusCompletedLabel:o(`chatToolStatusCompleted`),toolStatusFailedLabel:o(`chatToolStatusFailed`),toolStatusCancelledLabel:o(`chatToolStatusCancelled`),imageAttachmentLabel:o(`chatImageAttachment`),fileAttachmentLabel:o(`chatFileAttachment`),unknownPartLabel:o(`chatUnknownPart`)}}function Ij(e){return{copyCodeLabel:o(`chatCodeCopy`),copiedCodeLabel:o(`chatCodeCopied`),copyMessageLabel:o(`chatMessageCopy`),copiedMessageLabel:o(`chatMessageCopied`),typingLabel:o(`chatTyping`),attachmentOpenLabel:o(`chatAttachmentOpen`),attachmentAttachedLabel:o(`chatAttachmentAttached`),attachmentCategoryLabels:{archive:o(`chatAttachmentCategoryArchive`),audio:o(`chatAttachmentCategoryAudio`),code:o(`chatAttachmentCategoryCode`),data:o(`chatAttachmentCategoryData`),document:o(`chatAttachmentCategoryDocument`),generic:o(`chatAttachmentCategoryGeneric`),image:o(`chatAttachmentCategoryImage`),pdf:o(`chatAttachmentCategoryPdf`),sheet:o(`chatAttachmentCategorySheet`),video:o(`chatAttachmentCategoryVideo`)}}}function Lj({checkpoint:e}){return(0,N.jsxs)(`div`,{className:`my-4 flex items-center gap-3 text-[11px] text-gray-500`,title:[`${o(`chatContextCompactionCoveredMessages`)}: ${e.coveredSessionMessageCount}`,`${o(`chatContextCompactionOriginalTokens`)}: ${e.originalEstimatedTokens}`,`${o(`chatContextCompactionProjectedTokens`)}: ${e.projectedEstimatedTokens}`].join(`
|
|
60
|
+
`),children:[(0,N.jsx)(`div`,{className:`h-px flex-1 bg-gray-200`}),(0,N.jsxs)(`div`,{className:`inline-flex items-center gap-2 rounded-full border border-gray-200 bg-gray-50 px-3 py-1`,children:[e.status===`compressing`?(0,N.jsx)(`span`,{className:`h-1.5 w-1.5 rounded-full bg-gray-400 animate-pulse`}):(0,N.jsx)(`span`,{className:`h-1.5 w-1.5 rounded-full bg-gray-300`}),(0,N.jsx)(`span`,{children:e.status===`compressing`?o(`chatContextCompactionCompressing`):o(`chatContextCompactionCompressed`)})]}),(0,N.jsx)(`div`,{className:`h-px flex-1 bg-gray-200`})]})}function Rj(e){let{normalRawMessages:t,rawMessageId:n,rawMessages:r}=e,i=r.findIndex(e=>e.id===n);return i<0?t.length-1:r.slice(0,i).filter(e=>!Ej(e)).length-1}function zj(e){let t=e.rawMessages.filter(e=>!Ej(e)),n=e.rawMessages.map(e=>({rawMessageId:e.id,checkpoint:Ej(e)})).filter(e=>!!e.checkpoint).map(n=>({key:n.rawMessageId,checkpoint:n.checkpoint,boundaryIndex:Rj({rawMessages:e.rawMessages,normalRawMessages:t,rawMessageId:n.rawMessageId})})).sort((e,t)=>e.boundaryIndex-t.boundaryIndex),r=[],i=[],a=0,o=e=>{i.length!==0&&(r.push({kind:`messages`,key:e,messages:i}),i=[])};for(t.forEach((t,s)=>{let c=e.messages[s];for(c&&i.push(c);a<n.length&&n[a]?.boundaryIndex<=s;){let e=n[a];o(`messages-before-${e.key}`),r.push({kind:`compaction`,key:e.key,checkpoint:e.checkpoint}),a+=1}});a<n.length;){let e=n[a];o(`messages-before-${e.key}`),r.push({kind:`compaction`,key:e.key,checkpoint:e.checkpoint}),a+=1}return o(`messages-final`),r.length===0&&r.push({kind:`messages`,key:`messages-empty`,messages:[]}),r}function Bj({messages:e,isSending:t,className:n,onToolAction:r,onFileOpen:i}){let{language:a}=ut(),o=(0,P.useMemo)(()=>Fj(a),[a]),s=(0,P.useMemo)(()=>e.flatMap(e=>{if(Ej(e))return[];let t=Pj.get(e);if(t&&t.language===a)return[t.viewModel];let n=JO(e),r=xj({id:n.id,role:n.role,meta:{timestamp:n.meta?.timestamp,status:n.meta?.status,inlineTokens:Pk(e.metadata)},parts:n.parts},{formatTimestamp:e=>c(e,a),texts:o});return Pj.set(e,{language:a,viewModel:r}),[r]}),[a,e,o]),l=(0,P.useMemo)(()=>s.some(e=>e.role===`assistant`&&(e.status===`streaming`||e.status===`pending`)),[s]),u=(0,P.useMemo)(()=>Ij(a),[a]),d=(0,P.useMemo)(()=>zj({rawMessages:e,messages:s}),[s,e]);return(0,N.jsx)(`div`,{className:n,children:d.map((e,n)=>e.kind===`compaction`?(0,N.jsx)(Lj,{checkpoint:e.checkpoint},e.key):(0,N.jsx)(QE,{messages:e.messages,isSending:n===d.length-1?t:!1,hasAssistantDraft:l,texts:u,onToolAction:r,onFileOpen:i,renderToolAgent:e=>(0,N.jsx)(Nj,{agentId:e,className:`h-4 w-4 shrink-0`})},e.key))})}function Vj(){let e=p();return async t=>{let{sessionKey:n,patch:r,successMessage:i}=t;try{A(e,await re(n,r)),await e.invalidateQueries({queryKey:[`ncp-session-skills`,n]}),m.success(i??o(`configSavedApplied`))}catch(e){throw m.error(o(`configSaveFailed`)+`: `+(e instanceof Error?e.message:String(e))),e}}}function Hj(){let e=Vj();return async t=>{let{persistToServer:n,projectRoot:r,sessionKey:i}=t,a=o(r?`chatSessionProjectUpdated`:`chatSessionProjectCleared`);if(!n){Q.getState().setSnapshot({pendingProjectRoot:r,pendingProjectRootSessionKey:i}),m.success(a);return}await e({sessionKey:i,patch:{projectRoot:r},successMessage:a})}}function Uj({icon:e,label:t,onClick:n,disabled:r=!1,destructive:i=!1}){return(0,N.jsxs)(`button`,{type:`button`,className:d(`flex w-full items-center gap-2 rounded-xl px-3 py-2 text-left text-sm transition-colors disabled:cursor-not-allowed disabled:opacity-50`,i?`text-destructive hover:bg-destructive/10`:`text-gray-700 hover:bg-gray-100`),onClick:n,disabled:r,children:[(0,N.jsx)(e,{className:`h-4 w-4 shrink-0`}),(0,N.jsx)(`span`,{children:t})]})}function Wj(e){return _({queryKey:[`server-path-browse`,e.path??null,e.includeFiles??!1],queryFn:()=>j({path:e.path,includeFiles:e.includeFiles}),enabled:e.enabled??!0,staleTime:0})}var Gj=P.forwardRef(({className:e,children:t,...n},r)=>(0,N.jsx)(`div`,{ref:r,className:d(`overflow-auto`,e),...n,children:t}));Gj.displayName=`ScrollArea`;function Kj({open:e,currentPath:t,isSaving:n,onOpenChange:r,onConfirm:i,title:a,description:s,pathLabel:c,pathPlaceholder:l,confirmLabel:u,hint:d}){let[p,m]=(0,P.useState)(``),[h,g]=(0,P.useState)(null),[_,v]=(0,P.useState)(``);(0,P.useEffect)(()=>{if(!e)return;let n=t?.trim()||null;m(n??``),g(n),v(``)},[t,e]);let y=Wj({path:h,enabled:e});(0,P.useEffect)(()=>{!e||!y.data||p.trim().length===0&&m(y.data.currentPath)},[y.data,p,e]);let b=p.trim(),x=b.length===0||n,S=(0,P.useMemo)(()=>y.error?y.error instanceof Error?y.error.message:String(y.error):null,[y.error]),C=_.trim().toLowerCase(),w=(0,P.useMemo)(()=>{let e=y.data?.entries??[];return C.length===0?e:e.filter(e=>{let t=e.name.toLowerCase(),n=e.path.toLowerCase();return t.includes(C)||n.includes(C)})},[y.data?.entries,C]),T=e=>{g(e),v(``),e&&m(e)};return(0,N.jsx)(pe,{open:e,onOpenChange:e=>{n||r(e)},children:(0,N.jsxs)(ue,{className:`max-h-[85vh] overflow-hidden sm:h-[42rem] sm:max-w-2xl sm:grid-rows-[auto_minmax(0,1fr)]`,children:[(0,N.jsxs)(ce,{children:[(0,N.jsx)(de,{children:a}),s?(0,N.jsx)(fe,{children:s}):null]}),(0,N.jsxs)(`form`,{className:`flex min-h-0 flex-col gap-4`,onSubmit:e=>{e.preventDefault(),!x&&i(b)},children:[(0,N.jsxs)(`div`,{className:`space-y-2`,children:[(0,N.jsx)(O,{htmlFor:`server-path-picker-input`,children:c}),(0,N.jsxs)(`div`,{className:`flex gap-2`,children:[(0,N.jsx)(f,{id:`server-path-picker-input`,value:p,onChange:e=>m(e.target.value),placeholder:l,autoFocus:!0,disabled:n}),(0,N.jsx)(D,{type:`button`,variant:`outline`,onClick:()=>T(b||null),disabled:n,children:o(`openPath`)})]})]}),(0,N.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden rounded-2xl border border-gray-200 bg-gray-50/70`,children:[(0,N.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 border-b border-gray-200 px-3 py-2`,children:[(0,N.jsxs)(D,{type:`button`,variant:`ghost`,size:`sm`,onClick:()=>T(y.data?.homePath??null),disabled:n||y.isLoading,children:[(0,N.jsx)(tn,{className:`mr-1 h-4 w-4`}),o(`homeDirectory`)]}),(0,N.jsxs)(D,{type:`button`,variant:`ghost`,size:`sm`,onClick:()=>T(y.data?.parentPath??null),disabled:!y.data?.parentPath||n||y.isLoading,children:[(0,N.jsx)(Qt,{className:`mr-1 h-4 w-4`}),o(`parentDirectory`)]}),(0,N.jsxs)(D,{type:`button`,variant:`ghost`,size:`sm`,onClick:()=>{y.refetch()},disabled:n||y.isLoading,children:[(0,N.jsx)(it,{className:`mr-1 h-4 w-4`}),o(`chatRefresh`)]})]}),(0,N.jsxs)(`div`,{className:`border-b border-gray-200 px-3 py-2`,children:[(0,N.jsx)(`div`,{className:`mb-2 text-xs font-medium text-gray-500`,children:o(`currentDirectory`)}),(0,N.jsx)(`div`,{className:`flex flex-wrap items-center gap-1 text-xs text-gray-600`,children:y.data?.breadcrumbs.map((e,t)=>(0,N.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,N.jsx)(`button`,{type:`button`,className:`rounded px-1.5 py-0.5 hover:bg-gray-200`,onClick:()=>T(e.path),disabled:n,children:e.label}),t<y.data.breadcrumbs.length-1?(0,N.jsx)(It,{className:`h-3 w-3 text-gray-400`}):null]},e.path))})]}),(0,N.jsx)(`div`,{className:`border-b border-gray-200 px-3 py-2`,children:(0,N.jsxs)(`div`,{className:`relative`,children:[(0,N.jsx)(Oe,{className:`pointer-events-none absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-gray-400`}),(0,N.jsx)(f,{value:_,onChange:e=>v(e.target.value),placeholder:o(`pathPickerSearchPlaceholder`),disabled:n||y.isLoading,className:`pl-9`})]})}),(0,N.jsx)(Gj,{className:`min-h-0 flex-1 px-2 py-2`,children:y.isLoading?(0,N.jsx)(`div`,{className:`px-2 py-6 text-sm text-gray-500`,children:o(`loading`)}):S?(0,N.jsxs)(`div`,{className:`px-2 py-4 text-sm text-destructive`,children:[o(`pathBrowseFailed`),`: `,S]}):y.data&&w.length>0?(0,N.jsx)(`div`,{className:`space-y-1`,children:w.map(e=>(0,N.jsxs)(`button`,{type:`button`,className:`flex w-full items-center gap-2 rounded-xl px-3 py-2 text-left text-sm text-gray-700 transition-colors hover:bg-white`,onClick:()=>T(e.path),disabled:n,children:[(0,N.jsx)($e,{className:`h-4 w-4 shrink-0 text-emerald-600`}),(0,N.jsx)(`span`,{className:`truncate`,children:e.name})]},e.path))}):y.data&&y.data.entries.length>0?(0,N.jsx)(`div`,{className:`px-2 py-6 text-sm text-gray-500`,children:o(`pathPickerSearchEmpty`)}):(0,N.jsx)(`div`,{className:`px-2 py-6 text-sm text-gray-500`,children:o(`emptyDirectory`)})})]}),d?(0,N.jsx)(`p`,{className:`text-xs leading-relaxed text-gray-500`,children:d}):null,(0,N.jsxs)(le,{children:[(0,N.jsx)(D,{type:`button`,variant:`outline`,onClick:()=>r(!1),disabled:n,children:o(`cancel`)}),(0,N.jsx)(D,{type:`submit`,disabled:x,children:n?o(`saving`):u})]})]})]})})}function qj({open:e,currentProjectRoot:t,isSaving:n,onOpenChange:r,onSave:i}){return(0,N.jsx)(Kj,{open:e,currentPath:t,isSaving:n,onOpenChange:r,onConfirm:i,title:o(`chatSessionProjectDialogTitle`),description:o(`chatSessionProjectDialogDescription`),pathLabel:o(`chatSessionProjectPathLabel`),pathPlaceholder:o(`chatSessionProjectPathPlaceholder`),confirmLabel:o(`chatSessionSetProject`),hint:o(`chatSessionProjectUpdateHint`)})}function Jj({sessionKey:e,canDeleteSession:t,isDeletePending:n,projectRoot:r,childSessionCount:i=0,onOpenChildSessions:a,onDeleteSession:s}){let c=Hj(),[l,u]=(0,P.useState)(!1),[d,f]=(0,P.useState)(!1),[p,m]=(0,P.useState)(!1),h=n||p,g=async n=>{let r=t;m(!0);try{await c({sessionKey:e,projectRoot:n,persistToServer:r}),f(!1),u(!1)}finally{m(!1)}};return(0,N.jsxs)(N.Fragment,{children:[i>0&&a?(0,N.jsx)(D,{type:`button`,variant:`ghost`,size:`icon`,className:`rounded-lg shrink-0 text-gray-400 hover:text-gray-700`,"aria-label":o(`chatSessionOpenChildSessions`),title:o(`chatSessionOpenChildSessions`),onClick:a,disabled:h,children:(0,N.jsx)(en,{className:`h-4 w-4`})}):null,(0,N.jsxs)(xt,{open:l,onOpenChange:u,children:[(0,N.jsx)(yt,{asChild:!0,children:(0,N.jsx)(D,{variant:`ghost`,size:`icon`,className:`rounded-lg shrink-0 text-gray-400 hover:text-gray-700`,"aria-label":o(`chatSessionMoreActions`),disabled:h,children:(0,N.jsx)(zt,{className:`h-4 w-4`})})}),(0,N.jsx)(_t,{align:`end`,className:`w-56 p-2`,children:(0,N.jsxs)(`div`,{className:`space-y-1`,children:[(0,N.jsx)(Uj,{icon:Xt,label:o(`chatSessionSetProject`),onClick:()=>{u(!1),f(!0)},disabled:h}),(0,N.jsx)(Uj,{icon:st,label:o(`chatDeleteSession`),onClick:()=>{u(!1),s()},disabled:!t||h,destructive:!0})]})})]}),(0,N.jsx)(qj,{open:d,currentProjectRoot:r,isSaving:p,onOpenChange:f,onSave:g})]})}function Yj({sessionKey:e,projectName:t,projectRoot:n,persistToServer:r}){let i=Hj(),[a,s]=(0,P.useState)(!1),[c,l]=(0,P.useState)(!1),[u,d]=(0,P.useState)(!1),f=async t=>{d(!0);try{await i({sessionKey:e,projectRoot:t,persistToServer:r}),l(!1),s(!1)}finally{d(!1)}};return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsxs)(xt,{open:a,onOpenChange:s,children:[(0,N.jsx)(yt,{asChild:!0,children:(0,N.jsx)(`button`,{type:`button`,title:n??void 0,className:`min-w-0 max-w-[320px] shrink rounded-full border border-gray-200 bg-gray-100/90 px-2 py-0.5 text-[11px] font-medium text-gray-600 transition-colors hover:border-gray-300 hover:bg-gray-100 disabled:cursor-not-allowed disabled:opacity-60`,"aria-label":o(`chatSessionSetProject`),disabled:u,children:(0,N.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1.5`,children:[(0,N.jsx)(Xt,{className:`h-3.5 w-3.5 shrink-0`}),(0,N.jsx)(`span`,{className:`truncate`,children:t}),(0,N.jsx)(je,{className:`h-3 w-3 shrink-0 opacity-70`})]})})}),(0,N.jsxs)(_t,{align:`start`,className:`w-72 p-2`,children:[(0,N.jsxs)(`div`,{className:`px-3 pb-2 pt-1`,children:[(0,N.jsx)(`div`,{className:`text-[11px] font-medium uppercase tracking-wider text-gray-500`,children:t}),n?(0,N.jsx)(`div`,{className:`mt-1 break-all text-xs text-gray-500`,children:n}):null]}),(0,N.jsxs)(`div`,{className:`space-y-1`,children:[(0,N.jsx)(Uj,{icon:on,label:o(`chatSessionSetProject`),onClick:()=>{s(!1),l(!0)},disabled:u}),(0,N.jsx)(Uj,{icon:$t,label:o(`chatSessionClearProject`),onClick:()=>{f(null)},disabled:u})]})]})]}),(0,N.jsx)(qj,{open:c,currentProjectRoot:n,isSaving:u,onOpenChange:l,onSave:f})]})}function Xj({parentSessionLabel:e,onGoToParentSession:t}){if(!e)return null;let n=e.trim();return(0,N.jsx)(`div`,{className:`border-b border-gray-200/60 bg-white/75 px-4 py-2 backdrop-blur-sm sm:px-5`,children:(0,N.jsxs)(`button`,{type:`button`,onClick:t,className:`inline-flex items-center gap-2 text-xs font-medium text-gray-600 transition-colors hover:text-gray-900`,children:[(0,N.jsx)(De,{className:`h-3.5 w-3.5`}),(0,N.jsxs)(`span`,{children:[o(`chatBackToParent`),n?` · ${n}`:``]})]})})}function Zj({snapshot:e,childSessionCount:t,layoutMode:n,normalizedAgentId:r,sessionHeaderTitle:i,shouldShowHeaderAgentAvatar:a,shouldShowSessionHeader:s,onBackToList:c,onOpenChildSessions:l,onDeleteSession:u}){let f=n===`mobile`;return(0,N.jsxs)(`div`,{className:d(`border-b border-gray-200/60 bg-white/80 backdrop-blur-sm flex items-center justify-between shrink-0 overflow-hidden transition-all duration-200`,f?`px-3 sm:px-3`:`px-4 sm:px-5`,s?`opacity-100`:`h-0 py-0 opacity-0 border-b-0`,s&&(f?`pb-2 pt-2`:`py-3`)),style:f&&s?{paddingTop:`calc(env(safe-area-inset-top, 0px) + 0.5rem)`}:void 0,children:[(0,N.jsxs)(`div`,{className:`min-w-0 flex-1 flex items-center gap-2`,children:[f&&c?(0,N.jsx)(`button`,{type:`button`,onClick:c,className:`inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-full text-gray-600 transition-colors hover:bg-gray-100 hover:text-gray-900`,"aria-label":o(`chat`),children:(0,N.jsx)(De,{className:`h-4 w-4`})}):null,a?(0,N.jsx)(`div`,{className:`inline-flex shrink-0 items-center`,children:(0,N.jsx)(jn,{agentId:r,displayName:e.agentDisplayName,avatarUrl:e.agentAvatarUrl,className:`h-5 w-5`})}):null,(0,N.jsx)(`span`,{className:`text-sm font-medium text-gray-700 truncate`,children:i}),e.sessionTypeLabel?(0,N.jsxs)(`span`,{className:`inline-flex shrink-0 items-center gap-1.5 rounded-full border border-gray-200 bg-gray-100 px-2 py-0.5 text-[11px] font-medium text-gray-600`,children:[e.sessionTypeIcon?.src?(0,N.jsx)(`span`,{className:`inline-flex h-[1.125rem] w-[1.125rem] items-center justify-center`,children:(0,N.jsx)(wn,{icon:{kind:`runtime-image`,src:e.sessionTypeIcon.src,alt:e.sessionTypeIcon.alt??null,name:e.sessionTypeLabel}})}):null,e.sessionTypeLabel]}):null,e.sessionProjectName?(0,N.jsx)(Yj,{sessionKey:e.sessionKey??`draft`,projectName:e.sessionProjectName,projectRoot:e.sessionProjectRoot,persistToServer:e.canDeleteSession}):null]}),e.sessionKey?(0,N.jsx)(Jj,{sessionKey:e.sessionKey,canDeleteSession:e.canDeleteSession,isDeletePending:e.isDeletePending,projectRoot:e.sessionProjectRoot,childSessionCount:t,onOpenChildSessions:l,onDeleteSession:u}):null]})}var Qj=`native`;function $j(e){return typeof e==`string`?e.trim().toLowerCase()||`native`:Qj}function eM(e,t=Qj){return $j(e?.runtime?.trim()||e?.engine?.trim()||t)}function tM(e,t){return e===`native`?o(`chatSessionTypeNative`):t?.trim()||e.trim().split(/[-_]+/g).filter(Boolean).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)||e}function nM(e){let t=new Map;for(let n of e){let e=$j(n.value);t.set(e,{value:e,label:n.label?.trim()||tM(e),icon:n.icon??null,ready:n.ready??!0,reason:n.reason??null,reasonMessage:n.reasonMessage??null,supportedModels:n.supportedModels,recommendedModel:n.recommendedModel??null,cta:n.cta??null})}return t.has(`native`)||t.set(Qj,{value:Qj,label:tM(Qj),icon:null,ready:!0,reason:null,reasonMessage:null,supportedModels:void 0,recommendedModel:null,cta:null}),Array.from(t.values()).sort((e,t)=>e.value===`native`?-1:t.value===`native`?1:e.value.localeCompare(t.value))}function rM(e){let{selectedSession:t,pendingSessionType:n,setPendingSessionType:r,sessionTypesData:i}=e,a=(0,P.useMemo)(()=>nM(i?.options??[]),[i?.options]),s=(0,P.useMemo)(()=>{let e=[...a],n=$j(t?.sessionType);return e.some(e=>e.value===n)||e.push({value:n,label:tM(n),icon:null,ready:!0,reason:null,reasonMessage:null,supportedModels:void 0,recommendedModel:null,cta:null}),e.sort((e,t)=>e.value===`native`?-1:t.value===`native`?1:e.value.localeCompare(t.value))},[a,t?.sessionType]),c=(0,P.useMemo)(()=>$j(i?.defaultType??`native`),[i?.defaultType]),l=(0,P.useRef)(null),u=(0,P.useMemo)(()=>$j(t?.sessionType??n??c),[c,n,t?.sessionType]),d=(0,P.useMemo)(()=>s.find(e=>e.value===u)??null,[u,s]);(0,P.useEffect)(()=>{if(t)return;let e=typeof n==`string`?n.trim():``,i=$j(n);(e.length===0||l.current===i||l.current===null&&i===`native`)&&(l.current=c,i!==c&&r(c))},[c,n,t,r]);let f=!t||!!t.sessionTypeMutable,p=(0,P.useMemo)(()=>new Set(a.map(e=>e.value)),[a]);return{sessionTypeOptions:s,selectedSessionTypeOption:d,defaultSessionType:c,selectedSessionType:u,canEditSessionType:f,sessionTypeUnavailable:(0,P.useMemo)(()=>t&&!p.has($j(t.sessionType))?!0:d?.ready===!1,[p,t,d?.ready]),sessionTypeUnavailableMessage:(0,P.useMemo)(()=>t&&!p.has($j(t.sessionType))?`${tM(u)} ${o(`chatSessionTypeUnavailableSuffix`)}`:d?.ready===!1?d.reasonMessage?.trim()||`${d.label} setup required`:null,[p,t,u,d])}}var iM=[{key:`hero`,alignmentClassName:`justify-start`,bubbleClassName:`max-w-[78%] h-32 rounded-[30px]`},{key:`follow-up`,alignmentClassName:`justify-start`,bubbleClassName:`max-w-[62%] h-24 rounded-[28px]`},{key:`reply`,alignmentClassName:`justify-end`,bubbleClassName:`max-w-[70%] h-24 rounded-[28px]`},{key:`detail`,alignmentClassName:`justify-start`,bubbleClassName:`max-w-[88%] h-36 rounded-[30px]`}];function aM(){return(0,N.jsxs)(`section`,{"data-testid":`chat-conversation-skeleton`,className:`flex-1 min-h-0 flex flex-col overflow-hidden bg-gradient-to-b from-gray-50/60 to-white`,children:[(0,N.jsx)(`div`,{className:`flex-1 min-h-0 overflow-y-auto custom-scrollbar`,children:(0,N.jsx)(`div`,{className:`mx-auto flex min-h-full w-full max-w-[min(1120px,100%)] flex-col px-6 py-5`,children:(0,N.jsxs)(`div`,{className:`flex flex-1 flex-col gap-8`,children:[(0,N.jsxs)(`div`,{className:`space-y-6`,children:[(0,N.jsx)(Mt,{className:`h-6 w-52 rounded-lg bg-gray-200/90`}),(0,N.jsx)(`div`,{className:`space-y-5`,children:iM.map(e=>(0,N.jsx)(`div`,{className:d(`flex w-full`,e.alignmentClassName),children:(0,N.jsx)(Mt,{"data-testid":`chat-conversation-skeleton-bubble`,className:d(`w-full bg-gray-200/80`,e.bubbleClassName)})},e.key))})]}),(0,N.jsxs)(`div`,{className:`mt-auto grid gap-4 pb-2 sm:grid-cols-[minmax(0,1fr)_minmax(180px,240px)] sm:items-end`,children:[(0,N.jsxs)(`div`,{className:`space-y-3`,children:[(0,N.jsx)(Mt,{className:`h-4 w-40 rounded-full bg-gray-200/70`}),(0,N.jsx)(Mt,{className:`h-[112px] w-full rounded-[30px] bg-gray-200/70`})]}),(0,N.jsx)(`div`,{className:`hidden justify-end sm:flex`,children:(0,N.jsx)(Mt,{className:`h-10 w-36 rounded-full bg-gray-200/75`})})]})]})})}),(0,N.jsx)(`div`,{className:`border-t border-gray-200/80 bg-white p-4`,children:(0,N.jsx)(`div`,{className:`mx-auto w-full max-w-[min(1120px,100%)]`,children:(0,N.jsxs)(`div`,{className:`overflow-hidden rounded-2xl border border-gray-200 bg-white shadow-card`,children:[(0,N.jsx)(`div`,{className:`px-4 py-2.5`,children:(0,N.jsx)(Mt,{className:`h-[84px] w-full rounded-[28px] bg-gray-200/80`})}),(0,N.jsxs)(`div`,{className:`flex items-center justify-between gap-3 px-3 pb-3`,children:[(0,N.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,N.jsx)(Mt,{className:`h-8 w-20 rounded-full bg-gray-200/75`}),(0,N.jsx)(Mt,{className:`h-8 w-28 rounded-full bg-gray-200/75`}),(0,N.jsx)(Mt,{className:`hidden h-8 w-24 rounded-full bg-gray-200/70 sm:block`})]}),(0,N.jsx)(Mt,{className:`h-8 w-8 rounded-full bg-gray-200/85`})]})]})})})]})}function oM({shouldShowProviderHint:e,sessionTypeUnavailable:t,sessionTypeUnavailableMessage:n,onGoToProviders:r}){return(0,N.jsxs)(N.Fragment,{children:[e?(0,N.jsxs)(`div`,{className:`px-4 py-2.5 border-b border-amber-200/70 bg-amber-50/70 flex items-center justify-between gap-3 shrink-0 sm:px-5`,children:[(0,N.jsx)(`span`,{className:`text-xs text-amber-800`,children:o(`chatModelNoOptions`)}),(0,N.jsx)(`button`,{type:`button`,onClick:r,className:`text-xs font-semibold text-amber-900 underline-offset-2 hover:underline`,children:o(`chatGoConfigureProvider`)})]}):null,t&&n?.trim()?(0,N.jsx)(`div`,{className:`px-4 py-2.5 border-b border-amber-200/70 bg-amber-50/70 shrink-0 sm:px-5`,children:(0,N.jsx)(`span`,{className:`text-xs text-amber-800`,children:n})}):null]})}function sM({snapshot:e,availableAgents:t,hideEmptyHint:n,showWelcome:r,threadRef:i,onScroll:a,onCreateSession:s,onSelectAgent:c,onToolAction:l,onFileOpen:u}){return(0,N.jsx)(`div`,{ref:i,onScroll:a,className:`flex-1 min-h-0 overflow-y-auto custom-scrollbar`,children:r?(0,N.jsx)(Ln,{onCreateSession:s,agents:t,selectedAgentId:e.agentId??`main`,onSelectAgent:c}):n?null:e.messages.length===0?(0,N.jsx)(`div`,{className:`px-4 py-4 text-sm text-gray-500 sm:px-5 sm:py-5`,children:o(`chatNoMessages`)}):(0,N.jsx)(`div`,{className:`mx-auto w-full max-w-[min(1120px,100%)] px-4 py-4 sm:px-6 sm:py-5`,children:(0,N.jsx)(Bj,{messages:e.messages,isSending:e.isSending&&e.isAwaitingAssistantOutput,onToolAction:l,onFileOpen:u},e.sessionKey??`draft`)})})}function cM(e,t,n){return e.workspacePanelParentKey===e.sessionKey?t.length>0||n.length>0:!1}function lM({layoutMode:e=`desktop`,onBackToList:t}){let n=QD(),r=Q(e=>e.snapshot.defaultSessionType),i=ak(e=>e.snapshot),a=(0,P.useRef)(null),s=i.threadRef??a,c=i.childSessionTabs.filter(e=>e.parentSessionKey===i.sessionKey),l=i.workspaceFileTabs.filter(e=>e.parentSessionKey===i.sessionKey),u=cM(i,c,l),d=!!(i.sessionKey||i.sessionTypeLabel),f=i.sessionDisplayName||(i.canDeleteSession&&i.sessionKey?i.sessionKey:null)||o(`chatSidebarNewTask`),p=i.agentId?.trim()??``,m=p.length>0&&p.toLowerCase()!==`main`,h=!i.canDeleteSession&&i.messages.length===0&&!i.isSending,g=i.modelOptions.length>0,_=i.isProviderStateResolved&&!g,v=i.isHistoryLoading&&i.messages.length===0&&!i.isSending&&!i.isAwaitingAssistantOutput,y=i.availableAgents??[],b=e=>y.find(t=>t.id===e)??null,x=()=>{let t=eM(b(i.agentId??`main`),r),a=n.chatSessionListManager.createSession(t);e===`mobile`&&n.chatUiManager.goToSession(a)},S=e=>{n.chatSessionListManager.setSelectedAgentId(e),n.chatInputManager.setPendingSessionType(eM(b(e),r))},C=e=>{n.chatThreadManager.openFilePreview(e)},w=()=>{i.sessionKey&&n.chatThreadManager.openChildSessionPanel({parentSessionKey:i.sessionKey,activeChildSessionKey:c[0]?.sessionKey??null})},{onScroll:T}=WT({scrollRef:s,resetKey:i.sessionKey,isLoading:i.isHistoryLoading,hasContent:i.messages.length>0,contentVersion:i.messages[i.messages.length-1]??null});return i.isProviderStateResolved?(0,N.jsxs)(`section`,{className:`flex-1 min-h-0 flex overflow-hidden bg-gradient-to-b from-gray-50/60 to-white`,children:[(0,N.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden`,children:[(0,N.jsx)(Xj,{parentSessionLabel:i.parentSessionKey?i.parentSessionLabel??null:null,onGoToParentSession:n.chatThreadManager.goToParentSession}),(0,N.jsx)(Zj,{snapshot:i,childSessionCount:c.length,layoutMode:e,normalizedAgentId:p,sessionHeaderTitle:f,shouldShowHeaderAgentAvatar:m,shouldShowSessionHeader:d,onBackToList:t,onOpenChildSessions:w,onDeleteSession:n.chatThreadManager.deleteSession}),(0,N.jsx)(oM,{shouldShowProviderHint:_,sessionTypeUnavailable:i.sessionTypeUnavailable,sessionTypeUnavailableMessage:i.sessionTypeUnavailableMessage??null,onGoToProviders:n.chatThreadManager.goToProviders}),(0,N.jsx)(sM,{snapshot:i,availableAgents:y,hideEmptyHint:v,showWelcome:h,threadRef:s,onScroll:T,onCreateSession:x,onSelectAgent:S,onToolAction:n.chatThreadManager.openSessionFromToolAction,onFileOpen:C}),(0,N.jsx)(bk,{})]}),u?(0,N.jsx)(PN,{childSessionTabs:c,activeChildSessionKey:i.activeChildSessionKey??null,workspaceFileTabs:l,activeWorkspaceFileKey:i.activeWorkspaceFileKey??null,sessionProjectRoot:i.sessionProjectRoot??null,displayMode:e===`mobile`?`overlay`:`docked`,onSelectSession:n.chatThreadManager.selectChildSessionDetail,onSelectFile:n.chatThreadManager.selectWorkspaceFile,onCloseFile:n.chatThreadManager.closeWorkspaceFile,onClose:n.chatThreadManager.closeWorkspacePanel,onBackToParent:n.chatThreadManager.goToParentSession,onToolAction:n.chatThreadManager.openSessionFromToolAction,onFileOpen:C}):null]}):(0,N.jsx)(aM,{})}var uM={connected:{dotClass:`bg-emerald-500`},disconnected:{dotClass:`h-2.5 w-2.5 rounded-full border border-gray-400 bg-transparent`},connecting:{dotClass:`text-amber-600`}};function dM({status:e,className:t}){let n=uM[e],r=o(e===`connected`?`connected`:e===`disconnected`?`disconnected`:`connecting`);return(0,N.jsx)(kt,{delayDuration:250,children:(0,N.jsxs)(jt,{children:[(0,N.jsx)(Tt,{asChild:!0,children:(0,N.jsx)(`span`,{role:`status`,"aria-label":r,className:d(`inline-flex h-5 w-5 items-center justify-center`,t),children:e===`connecting`?(0,N.jsx)(nt,{className:d(`h-3 w-3 animate-spin`,n.dotClass)}):(0,N.jsx)(`span`,{className:d(e===`connected`?`h-2 w-2 rounded-full`:``,n.dotClass)})})}),(0,N.jsx)(Dt,{side:`bottom`,className:`text-xs`,children:r})]})})}function fM(){let e=Vj();return async t=>{await e({sessionKey:t.sessionKey,patch:{label:t.label},successMessage:o(`configSavedApplied`)})}}function pM(){let e=fM(),[t,n]=(0,P.useState)(null),[r,i]=(0,P.useState)(``),[a,o]=(0,P.useState)(null),s=e=>{n(e.key),i(e.label?.trim()??``)},c=()=>{n(null),i(``),o(null)};return{editingSessionKey:t,draftLabel:r,savingSessionKey:a,setDraftLabel:i,startEditingSessionLabel:s,cancelEditingSessionLabel:c,saveSessionLabel:async t=>{let n=r.trim();if(n===(t.label?.trim()??``)){c();return}o(t.key);try{await e({sessionKey:t.key,label:n||null}),c()}catch{o(null)}}}}function mM(e){let t=e.label?.trim();if(t)return t;let n=e.key.split(`:`);return n[n.length-1]||e.key}function hM(e){return e.trim().toLowerCase()}function gM(e,t){let n=hM(t);return n?[e.key,mM(e),e.projectRoot??``,e.projectName??``].map(hM).some(e=>e.includes(n)):!0}function _M(e,t){return e.filter(e=>gM(e,t))}function vM(e){return e.isChildSession?e.isPromotedChildSession===!0:!0}function yM(e={}){let t=rk(e=>e.snapshot.query),n=pt({limit:e.limit??200}),r=(0,P.useMemo)(()=>{let e=n.data?.sessions??[],r=_M(XO(e).filter(vM),t),i=new Map(e.map(e=>[e.sessionId,e]));return r.map(e=>({session:e,runStatus:i.get(e.key)?.status===`running`?`running`:void 0}))},[t,n.data?.sessions]);return{isLoading:n.isLoading,items:r}}function bM(e){let{item:t,selectedSessionKey:n,optimisticReadAtBySessionKey:r,agentsById:i,childSessionsByParentKey:a,editingSessionKey:o,draftLabel:s,savingSessionKey:c,sessionTitle:l,onSelectSession:u,onOpenChildSessions:d,onStartEditingSessionLabel:f,onDraftLabelChange:p,onSaveSessionLabel:m,onCancelEditingSessionLabel:h}=e,{session:g,runStatus:_}=t,v=Q(e=>e.snapshot),y=n===g.key,b=r[g.key],x=b&&g.readAt?b.localeCompare(g.readAt)>0?b:g.readAt:b??g.readAt,S=a.get(g.key)??[];return(0,N.jsx)(Fn,{session:g,active:y,showUnreadDot:$O({active:y,lastMessageAt:g.lastMessageAt,readAt:x,runStatus:_}),runStatus:_,context:bn(g,v.sessionTypeOptions),title:l(g),agentId:g.agentId??null,agentLabel:g.agentId?i.get(g.agentId)?.displayName??g.agentId:null,agentAvatarUrl:g.agentId?i.get(g.agentId)?.avatarUrl??null:null,childSessionCount:S.length,isEditing:o===g.key,draftLabel:s,isSaving:c===g.key,onSelect:()=>u(g.key),onOpenChildSessions:()=>d(g.key,S[0]?.session.key??null),onStartEditing:()=>f(g),onDraftLabelChange:p,onSave:()=>m(g),onCancel:h})}function xM(e){let t=e.sessionTypeOptions.find(t=>t.value===e.defaultSessionType);return[...t?[t]:[],...e.nonDefaultSessionTypeOptions]}function SM(e){let{query:t,defaultSessionType:n,nonDefaultSessionTypeOptions:r,isCreateMenuOpen:i,onCreateMenuOpenChange:a,onCreateSession:s,onQueryChange:c}=e;return(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(`div`,{className:`px-4 pb-3`,children:(0,N.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,N.jsxs)(D,{variant:`primary`,className:d(`min-w-0 rounded-xl`,r.length>0?`flex-1 rounded-r-md`:`w-full`),onClick:()=>{a(!1),s(n)},children:[(0,N.jsx)(rt,{className:`mr-2 h-4 w-4`}),o(`chatSidebarNewTask`)]}),r.length>0?(0,N.jsxs)(xt,{open:i,onOpenChange:a,children:[(0,N.jsx)(yt,{asChild:!0,children:(0,N.jsx)(D,{variant:`primary`,size:`icon`,className:`h-9 w-10 shrink-0 rounded-xl rounded-l-md`,"aria-label":o(`chatSessionTypeLabel`),children:(0,N.jsx)(je,{className:`h-4 w-4`})})}),(0,N.jsxs)(_t,{align:`end`,className:`w-56 rounded-2xl border border-gray-200/80 bg-white p-1.5 shadow-[0_24px_60px_-28px_rgba(15,23,42,0.38)]`,children:[(0,N.jsx)(`div`,{className:`px-3 pb-1 pt-2 text-[10px] font-semibold uppercase tracking-[0.18em] text-gray-400`,children:o(`chatSessionTypeLabel`)}),(0,N.jsx)(`div`,{className:`space-y-1`,children:r.map(e=>(0,N.jsx)(En,{option:e,onSelect:()=>{s(e.value),a(!1)}},e.value))})]})]}):null]})}),(0,N.jsx)(`div`,{className:`px-4 pb-3`,children:(0,N.jsxs)(`div`,{className:`relative`,children:[(0,N.jsx)(Oe,{className:`absolute left-3 top-2.5 h-3.5 w-3.5 text-gray-400`}),(0,N.jsx)(f,{value:t,onChange:e=>c(e.target.value),placeholder:o(`chatSidebarSearchPlaceholder`),className:`h-9 rounded-lg pl-8 text-xs`})]})})]})}function CM(e){let{query:t,defaultSessionType:n,sessionTypeOptions:r,nonDefaultSessionTypeOptions:i,isCreateMenuOpen:a,onCreateMenuOpenChange:s,onCreateSession:c,onQueryChange:l}=e,u=xM({defaultSessionType:n,sessionTypeOptions:r,nonDefaultSessionTypeOptions:i}),d=u.length>1;return(0,N.jsx)(`div`,{className:`px-4 pb-2 pt-1`,children:(0,N.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,N.jsxs)(`div`,{className:`relative min-w-0 flex-1`,children:[(0,N.jsx)(Oe,{className:`absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-gray-400`}),(0,N.jsx)(f,{value:t,onChange:e=>l(e.target.value),placeholder:o(`chatSidebarSearchPlaceholder`),className:`h-9 rounded-full border-transparent bg-gray-100/80 pl-9 pr-3 text-[13px] shadow-none focus:border-gray-200/80 focus:bg-white`})]}),d?(0,N.jsxs)(xt,{open:a,onOpenChange:s,children:[(0,N.jsx)(yt,{asChild:!0,children:(0,N.jsx)(D,{variant:`ghost`,size:`icon`,className:`h-9 w-9 shrink-0 rounded-full bg-gray-100/80 text-gray-700 shadow-none hover:bg-gray-200/80 hover:text-gray-900`,"aria-label":o(`chatSidebarNewTask`),children:(0,N.jsx)(rt,{className:`h-4 w-4`})})}),(0,N.jsxs)(_t,{align:`end`,className:`w-60 rounded-3xl border border-gray-200/80 bg-white p-2 shadow-[0_24px_70px_-30px_rgba(15,23,42,0.45)]`,children:[(0,N.jsx)(`div`,{className:`px-3 pb-1.5 pt-2 text-[11px] font-medium text-gray-400`,children:o(`chatSidebarNewTask`)}),(0,N.jsx)(`div`,{className:`space-y-1`,children:u.map(e=>(0,N.jsx)(En,{option:e,onSelect:()=>{c(e.value),s(!1)}},e.value))})]})]}):(0,N.jsx)(D,{variant:`ghost`,size:`icon`,className:`h-9 w-9 shrink-0 rounded-full bg-gray-100/80 text-gray-700 shadow-none hover:bg-gray-200/80 hover:text-gray-900`,"aria-label":o(`chatSidebarNewTask`),onClick:()=>c(n),children:(0,N.jsx)(rt,{className:`h-4 w-4`})})]})})}function wM(e){return new Date(e.session.updatedAt).getTime()}function TM(e){return[...e].sort((e,t)=>wM(t)-wM(e))}function EM(e){let t=new Date,n=new Date(t.getFullYear(),t.getMonth(),t.getDate()).getTime(),r=n-864e5,i=n-7*864e5,a=[],s=[],c=[],l=[];for(let t of e){let{session:e}=t,o=new Date(e.updatedAt).getTime();o>=n?a.push(t):o>=r?s.push(t):o>=i?c.push(t):l.push(t)}let u=[];return a.length>0&&u.push({label:o(`chatSidebarToday`),items:a}),s.length>0&&u.push({label:o(`chatSidebarYesterday`),items:s}),c.length>0&&u.push({label:o(`chatSidebarPrevious7Days`),items:c}),l.length>0&&u.push({label:o(`chatSidebarOlder`),items:l}),u}function DM(e){let t=new Map;for(let n of e){let e=n.session.projectRoot?.trim();if(!e)continue;let r=t.get(e),i=wM(n);if(r){r.items.push(n),r.latestUpdatedAt=Math.max(r.latestUpdatedAt,i);continue}t.set(e,{projectRoot:e,projectName:n.session.projectName?.trim()||SO(e)||e,items:[n],latestUpdatedAt:i})}return[...t.values()].map(e=>({...e,items:TM(e.items)})).sort((e,t)=>t.latestUpdatedAt-e.latestUpdatedAt)}function OM(e){if(e.label&&e.label.trim())return e.label.trim();let t=e.key.split(`:`);return t[t.length-1]||e.key}var kM=[{target:`/cron`,label:()=>o(`chatSidebarScheduledTasks`),icon:Ee},{target:`/skills`,label:()=>o(`chatSidebarSkills`),icon:ve},{target:`/agents`,label:()=>o(`agentsPageTitle`),icon:me}];function AM(e,t,n){let r=rk(e=>e.optimisticReadAtBySessionKey);return(0,P.useEffect)(()=>{(()=>{if(!t)return;let r=e.find(({session:e})=>e.key===t);if(!r)return;let{session:i}=r;n(i.key,i.lastMessageAt,i.readAt)})()},[e,n,t]),r}function jM({variant:e=`desktop`}){let n=e===`mobile`,r=QD(),i=lt(),[a,s]=(0,P.useState)(!1),c=Q(e=>e.snapshot),l=rk(e=>e.snapshot),u=w(),f=Dj(),{isLoading:p,items:m}=yM(),{language:h,setLanguage:g}=ut(),{theme:_,setTheme:v}=Se(),y=o(ge.find(e=>e.value===_)?.labelKey??`themeWarm`),b=t.find(e=>e.value===h)?.label??h,x=(0,P.useMemo)(()=>new Map((f.data?.agents??[]).map(e=>[e.id,e])),[f.data?.agents]),S=(0,P.useMemo)(()=>TM(m),[m]),C=(0,P.useMemo)(()=>{let e=new Map;for(let t of m){let n=t.session.parentSessionId?.trim();if(!n)continue;let r=e.get(n)??[];r.push(t),e.set(n,r)}for(let t of e.values())t.sort((e,t)=>wM(t)-wM(e));return e},[m]),T=(0,P.useMemo)(()=>EM(S),[S]),E=(0,P.useMemo)(()=>DM(S),[S]),D=c.defaultSessionType||`native`,O=(0,P.useMemo)(()=>c.sessionTypeOptions.filter(e=>e.value!==D),[D,c.sessionTypeOptions]),ee=l.listMode===`project-first`,k=AM(m,l.selectedSessionKey,r.chatSessionListManager.markSessionRead),{editingSessionKey:te,draftLabel:A,savingSessionKey:ne,setDraftLabel:j,startEditingSessionLabel:re,cancelEditingSessionLabel:ie,saveSessionLabel:ae}=pM(),oe=e=>{h!==e&&(g(e),window.location.reload())},se=e=>(0,N.jsx)(bM,{item:e,selectedSessionKey:l.selectedSessionKey,optimisticReadAtBySessionKey:k,agentsById:x,childSessionsByParentKey:C,editingSessionKey:te,draftLabel:A,savingSessionKey:ne,sessionTitle:OM,onSelectSession:r.chatSessionListManager.selectSession,onOpenChildSessions:(e,t)=>r.chatThreadManager.openChildSessionPanel({parentSessionKey:e,activeChildSessionKey:t}),onStartEditingSessionLabel:re,onDraftLabelChange:j,onSaveSessionLabel:ae,onCancelEditingSessionLabel:ie},e.session.key),ce=(e,t)=>{let i=typeof t==`string`?r.chatSessionListManager.createSession(e,t):r.chatSessionListManager.createSession(e);n&&r.chatUiManager.goToSession(i)};return(0,N.jsxs)(`aside`,{className:d(`flex h-full min-h-0 flex-col bg-secondary`,n?`flex-1 overflow-hidden`:`w-[280px] shrink-0 border-r border-gray-200/60`),children:[n?null:(0,N.jsx)(`div`,{className:`px-5 pt-5 pb-3`,children:(0,N.jsx)(Te,{className:`flex items-center gap-2.5 min-w-0`,suffix:(0,N.jsx)(dM,{status:u.connectionStatus})})}),n?(0,N.jsx)(CM,{query:l.query,defaultSessionType:D,sessionTypeOptions:c.sessionTypeOptions,nonDefaultSessionTypeOptions:O,isCreateMenuOpen:a,onCreateMenuOpenChange:s,onCreateSession:ce,onQueryChange:r.chatSessionListManager.setQuery}):(0,N.jsx)(SM,{query:l.query,defaultSessionType:D,sessionTypeOptions:c.sessionTypeOptions,nonDefaultSessionTypeOptions:O,isCreateMenuOpen:a,onCreateMenuOpenChange:s,onCreateSession:ce,onQueryChange:r.chatSessionListManager.setQuery}),n?null:(0,N.jsx)(`div`,{className:`px-3 pb-2`,children:(0,N.jsx)(`ul`,{className:`space-y-0.5`,children:kM.map(e=>(0,N.jsx)(`li`,{children:(0,N.jsx)(he,{to:e.target,label:e.label(),icon:e.icon,density:`compact`})},e.target))})}),n?null:(0,N.jsx)(`div`,{className:`mx-4 border-t border-gray-200/60`}),(0,N.jsxs)(`div`,{className:`flex items-center justify-between px-5 pb-2 pt-3`,children:[(0,N.jsx)(`div`,{className:`text-[11px] font-medium uppercase tracking-wider text-gray-400`,children:o(`chatSidebarTaskRecords`)}),(0,N.jsx)(dn,{isProjectFirstView:ee,onSelectMode:r.chatSessionListManager.setListMode})]}),(0,N.jsx)(`div`,{className:`flex-1 min-h-0 overflow-y-auto custom-scrollbar px-3 py-2`,children:p?(0,N.jsx)(`div`,{className:`text-xs text-gray-500 p-3`,children:o(`sessionsLoading`)}):ee?E.length===0?(0,N.jsxs)(`div`,{className:`p-4 text-center`,children:[(0,N.jsx)(nn,{className:`h-6 w-6 mx-auto mb-2 text-gray-300`}),(0,N.jsx)(`div`,{className:`text-xs text-gray-500`,children:o(`chatSidebarProjectViewEmpty`)})]}):(0,N.jsx)(On,{groups:E,defaultSessionType:D,sessionTypeOptions:c.sessionTypeOptions,renderSessionItem:se,onCreateSession:ce}):T.length===0?(0,N.jsxs)(`div`,{className:`p-4 text-center`,children:[(0,N.jsx)(nn,{className:`h-6 w-6 mx-auto mb-2 text-gray-300`}),(0,N.jsx)(`div`,{className:`text-xs text-gray-500`,children:o(`sessionsEmpty`)})]}):(0,N.jsx)(`div`,{className:`space-y-3`,children:T.map(e=>(0,N.jsxs)(`div`,{children:[(0,N.jsx)(`div`,{className:`px-2 py-1 text-[11px] font-medium text-gray-400 uppercase tracking-wider`,children:e.label}),(0,N.jsx)(`div`,{className:`space-y-0.5`,children:e.items.map(se)})]},e.label))})}),n?null:(0,N.jsxs)(`div`,{className:`px-3 py-3 border-t border-gray-200/60 space-y-0.5`,children:[(0,N.jsx)(he,{to:`/settings`,label:o(`settings`),icon:at,density:`compact`}),(0,N.jsx)(we,{onClick:()=>i.open(void 0,{kind:`docs`,newTab:!0,title:`Docs`}),icon:ke,label:o(`docBrowserHelp`),density:`compact`}),(0,N.jsx)(be,{value:_,onValueChange:e=>v(e),icon:Ce,label:o(`theme`),valueLabel:y,density:`compact`,children:ge.map(e=>(0,N.jsx)(Ke,{value:e.value,className:`text-xs`,children:o(e.labelKey)},e.value))}),(0,N.jsx)(be,{value:h,onValueChange:e=>oe(e),icon:ye,label:o(`language`),valueLabel:b,density:`compact`,children:t.map(e=>(0,N.jsx)(Ke,{value:e.value,className:`text-xs`,children:e.label},e.value))})]})]})}function MM({tone:e=`neutral`,value:t}){return(0,N.jsx)(`span`,{className:d(`inline-flex h-5 items-center rounded-sm border px-1.5 text-[10px] font-medium leading-none`,e===`warning`?`border-amber-200 bg-amber-50 text-amber-700`:`border-gray-200 bg-gray-50 text-gray-500`),children:t})}function NM({breadcrumb:e}){return(0,N.jsx)(`div`,{"data-testid":`workspace-file-breadcrumbs`,title:e.fullPath,className:`workspace-horizontal-scrollbar overflow-x-auto overflow-y-hidden border-b border-gray-200/80 bg-gray-50/55`,children:(0,N.jsxs)(`div`,{"data-testid":`workspace-file-breadcrumb-scroll`,className:`flex min-w-max items-center gap-2.5 px-3 py-1.5`,children:[(0,N.jsx)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1 pr-1`,children:e.segments.map((t,n)=>(0,N.jsxs)(P.Fragment,{children:[(0,N.jsxs)(`span`,{className:d(`inline-flex h-5 items-center gap-1 rounded-sm px-1 text-[11px] leading-none`,t.kind===`workspace`?`bg-primary/8 text-primary`:t.isCurrent?`bg-gray-200/70 text-gray-900`:`text-gray-500`),children:[t.kind===`workspace`?(0,N.jsx)(Zt,{className:`h-3 w-3 shrink-0`}):t.isCurrent?(0,N.jsx)(Ht,{className:`h-3 w-3 shrink-0`}):null,(0,N.jsx)(`span`,{children:t.label})]}),n<e.segments.length-1?(0,N.jsx)(It,{className:`h-3 w-3 shrink-0 text-gray-300`}):null]},t.key))}),e.locationLabel||e.truncated?(0,N.jsxs)(`div`,{className:`flex shrink-0 flex-wrap items-center justify-end gap-1`,children:[e.locationLabel?(0,N.jsx)(MM,{value:e.locationLabel}):null,e.truncated?(0,N.jsx)(MM,{tone:`warning`,value:o(`chatWorkspacePreviewTruncated`)}):null]}):null]})})}function PM(e){let t=e.path?.trim()??``;return _({queryKey:[`server-path-read`,t,e.basePath??null],queryFn:()=>k({path:t,basePath:e.basePath}),enabled:(e.enabled??!0)&&t.length>0,staleTime:0})}function FM(e){return e.serverKind?e.serverKind:/\.mdx?$/i.test(e.path)?`markdown`:`text`}function IM(e){let{line:t,path:n,text:r}=e,i=t??1;return{key:`preview:${n}`,path:n,display:`preview`,lines:cA({text:r,kind:`context`,oldStartLine:i,newStartLine:i}),rawText:r,oldStartLine:i,newStartLine:i}}function LM(e){if(Array.isArray(e.fullLines)&&e.fullLines.length>0)return{key:`diff:${e.key}`,path:e.path,display:`diff`,lines:e.fullLines,fullLines:e.fullLines,...e.beforeText?{beforeText:e.beforeText}:{},...e.afterText?{afterText:e.afterText}:{},...e.patchText?{patchText:e.patchText}:{},...typeof e.oldStartLine==`number`?{oldStartLine:e.oldStartLine}:{},...typeof e.newStartLine==`number`?{newStartLine:e.newStartLine}:{}};if(e.beforeText==null&&e.afterText==null)return null;let t=fA({beforeText:e.beforeText??``,afterText:e.afterText??``,oldStartLine:e.oldStartLine??void 0,newStartLine:e.newStartLine??void 0});return{key:`diff:${e.key}`,path:e.path,display:`diff`,lines:t,fullLines:t,...e.beforeText?{beforeText:e.beforeText}:{},...e.afterText?{afterText:e.afterText}:{},...typeof e.oldStartLine==`number`?{oldStartLine:e.oldStartLine}:{},...typeof e.newStartLine==`number`?{newStartLine:e.newStartLine}:{}}}function RM({text:e,tone:t=`muted`}){return(0,N.jsx)(`div`,{className:d(`flex h-full items-center justify-center px-6 text-center text-sm`,t===`error`?`text-rose-600`:`text-gray-500`),children:e})}function zM({diffBlock:e}){return e?(0,N.jsx)(BM,{block:e}):(0,N.jsx)(RM,{text:o(`chatWorkspaceDiffEmpty`)})}function BM({block:e}){return(0,N.jsx)(`div`,{className:`h-full overflow-auto custom-scrollbar bg-white`,children:(0,N.jsx)(hE,{block:e,layout:`workspace`})})}function VM({onFileOpen:e,previewBlock:t,previewKind:n,previewQuery:r,previewText:i}){return r.isLoading&&!t?(0,N.jsx)(RM,{text:o(`chatWorkspaceLoadingFile`)}):r.data?.kind===`binary`?(0,N.jsx)(RM,{text:o(`chatWorkspacePreviewUnsupported`)}):r.error&&!t?(0,N.jsx)(RM,{tone:`error`,text:r.error instanceof Error?r.error.message:String(r.error)}):n===`markdown`&&i?(0,N.jsx)(`div`,{className:`h-full overflow-auto custom-scrollbar px-5 py-4`,children:(0,N.jsx)(aT,{text:i,role:`assistant`,texts:{copyCodeLabel:o(`chatCodeCopy`),copiedCodeLabel:o(`chatCodeCopied`)},onFileOpen:e})}):t?(0,N.jsx)(BM,{block:t}):(0,N.jsx)(RM,{text:o(`chatWorkspacePreviewEmpty`)})}function HM({file:e,sessionProjectRoot:t,onFileOpen:n}){let r=e.viewMode===`preview`,i=PM({path:e.path,basePath:t,enabled:r}),a=(0,P.useMemo)(()=>e.viewMode===`diff`?LM(e):null,[e]),o=r?i.data?.text??e.rawText??null:null,s=FM({path:i.data?.resolvedPath??e.path,serverKind:i.data?.kind}),c=(0,P.useMemo)(()=>!r||!o?null:IM({path:i.data?.resolvedPath??e.path,text:o,line:e.line}),[e.line,e.path,r,i.data?.resolvedPath,o]),l=i.data?.resolvedPath??e.path,u=!!i.data?.truncated;return(0,N.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col bg-white`,children:[(0,N.jsx)(NM,{breadcrumb:(0,P.useMemo)(()=>kO({path:l,sessionProjectRoot:t,line:e.line,column:e.column,truncated:u}),[e.column,e.line,u,l,t])}),(0,N.jsx)(`div`,{className:`flex-1 min-h-0 overflow-hidden`,children:e.viewMode===`diff`?(0,N.jsx)(zM,{diffBlock:a}):(0,N.jsx)(VM,{onFileOpen:n,previewBlock:c,previewKind:s,previewQuery:i,previewText:o})})]})}function UM(e,t){return e.label?.trim()?e.label.trim():t?mM(t):e.sessionKey}function WM(e){let t=pt({limit:200}),n=(0,P.useMemo)(()=>t.data?.sessions??[],[t.data?.sessions]),r=(0,P.useMemo)(()=>{let e=XO(n);return new Map(e.map(e=>[e.key,e]))},[n]),i=(0,P.useMemo)(()=>new Map(n.map(e=>[e.sessionId,e])),[n]);return(0,P.useMemo)(()=>e.map(e=>{let t=r.get(e.sessionKey)??null,n=i.get(e.sessionKey)??null,a=e.agentId?.trim()||t?.agentId||null;return{sessionKey:e.sessionKey,parentSessionKey:e.parentSessionKey,title:UM(e,t),agentId:a,updatedAt:t?.updatedAt??null,lastMessageAt:t?.lastMessageAt??null,readAt:t?.readAt??null,runStatus:n?.status===`running`?`running`:void 0,sessionTypeLabel:t?.sessionType?tM(t.sessionType):null,preferredModel:t?.preferredModel?.trim()||null,projectName:t?.projectName?.trim()||null,projectRoot:t?.projectRoot?.trim()||null}}),[r,i,e])}function GM(e){let t=e.split(/\r?\n/),n=`message`,r=[];for(let e of t){let t=e.trimEnd();if(!(!t||t.startsWith(`:`))){if(t.startsWith(`event:`)){n=t.slice(6).trim()||`message`;continue}t.startsWith(`data:`)&&r.push(t.slice(5).trimStart())}}return r.length===0?null:{event:n,data:r.join(`
|
|
61
|
+
`)}}async function*KM(e){let t=e.getReader(),n=new TextDecoder,r=``;try{for(;;){let{value:e,done:i}=await t.read();if(i)break;r+=n.decode(e,{stream:!0});let{frames:a,rest:o}=qM(r);r=o;for(let e of a)yield e}r+=n.decode();let{frames:e}=qM(r,!0);for(let t of e)yield t}finally{t.releaseLock()}}function qM(e,t=!1){let n=e.split(/\r?\n\r?\n/),r=n.pop()??``,i=[];for(let e of n){let t=GM(e);t&&i.push(t)}if(t&&r.trim()){let e=GM(r);return e&&i.push(e),{frames:i,rest:``}}return{frames:i,rest:r}}var JM=`/ncp/agent`,YM=class extends Error{ncpError;alreadyPublished;constructor(e,t=!1){super(e.message),this.name=`NcpHttpAgentClientError(${e.code})`,this.ncpError=e,this.alreadyPublished=t}};function XM(e){let t=e.trim();if(!t)throw Error(`NcpHttpAgentClient requires a non-empty baseUrl.`);return new URL(t)}function ZM(e){if(e)return e;if(typeof globalThis.fetch==`function`)return globalThis.fetch.bind(globalThis);throw Error(`No fetch implementation found. Pass options.fetchImpl explicitly.`)}function QM(e){let t=(e??`/ncp/agent`).trim();if(!t)return JM;let n=t.startsWith(`/`)?t:`/${t}`;return n.endsWith(`/`)?n.slice(0,-1):n}async function $M(e){try{return(await e.text()).trim()}catch{return``}}function eN(e){if(iN(e))return e.ncpError;if(nN(e))return e;let t=e instanceof Error?e.message:String(e??`Unknown error`);return{code:oN(void 0),message:t,...e instanceof Error&&e.stack?{details:{stack:e.stack}}:{}}}function tN(e,t={}){return new YM(e,t.alreadyPublished??!1)}function nN(e){return rN(e)&&typeof e.code==`string`&&typeof e.message==`string`}function rN(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function iN(e){return e instanceof YM}var aN={"config-error":`config-error`,"auth-error":`auth-error`,"runtime-error":`runtime-error`,"timeout-error":`timeout-error`,"abort-error":`abort-error`};function oN(e){if(!e)return`runtime-error`;let t=aN[e];if(t)return t;let n=e.toLowerCase();return n.includes(`timeout`)?`timeout-error`:n.includes(`abort`)||n.includes(`cancel`)?`abort-error`:n.includes(`auth`)?`auth-error`:n.includes(`config`)?`config-error`:`runtime-error`}function sN(e){let t=lN(e);return!t||typeof t.type!=`string`||!t.type.trim()?null:t}function cN(e){let t=lN(e);if(!t)return{code:`runtime-error`,message:e||`Unknown stream error.`};let n=typeof t.code==`string`?t.code:void 0,r=oN(n),i=rN(t.details)?t.details:{};return n&&n!==r&&(i.originalCode=n),{code:r,message:typeof t.message==`string`&&t.message?t.message:`Unknown stream error.`,...Object.keys(i).length>0?{details:i}:{}}}function lN(e){try{let t=JSON.parse(e);return rN(t)?t:null}catch{return null}}var uN=[`text`,`file`,`source`,`step-start`,`reasoning`,`tool-invocation`,`card`,`rich-text`,`action`,`extension`],dN=class{manifest;baseUrl;basePath;fetchImpl;defaultHeaders;subscribers=new Set;activeControllers=new Set;started=!1;constructor(e){this.baseUrl=XM(e.baseUrl),this.basePath=QM(e.basePath),this.fetchImpl=ZM(e.fetchImpl),this.defaultHeaders=e.headers??{},this.manifest={endpointKind:`custom`,endpointId:e.endpointId?.trim()||`ncp-http-agent-client`,version:`0.1.0`,supportsStreaming:!0,supportsAbort:!0,supportsProactiveMessages:!1,supportsLiveSessionStream:!0,supportedPartTypes:uN,expectedLatency:`seconds`,metadata:{transport:`http+sse`,scope:`agent`}}}async start(){this.started||(this.started=!0,this.publish({type:$E.EndpointReady}))}async stop(){if(this.started){this.started=!1;for(let e of this.activeControllers)e.abort();this.activeControllers.clear()}}async emit(e){switch(e.type){case`message.request`:await this.send(e.payload);return;case`message.stream-request`:await this.stream(e.payload);return;case`message.abort`:await this.abort(e.payload);return;default:this.publish(e);return}}subscribe(e){return this.subscribers.add(e),()=>{this.subscribers.delete(e)}}async send(e){await this.ensureStarted(),await this.jsonRequest({path:`/send`,method:`POST`,body:e})}async stream(e){await this.ensureStarted();let t=new URLSearchParams({sessionId:e.sessionId});await this.streamRequest({path:`/stream?${t.toString()}`,method:`GET`})}async abort(e){await this.ensureStarted();let t=new AbortController;this.activeControllers.add(t);try{let n=await this.fetchImpl(this.resolveUrl(`/abort`),{method:`POST`,headers:{...this.defaultHeaders,"content-type":`application/json`,accept:`application/json`},body:JSON.stringify(e),signal:t.signal});if(!n.ok)throw Error(`Abort request failed with HTTP ${n.status}: ${await $M(n)}`)}catch(e){if(t.signal.aborted)return;let n=eN(e);throw this.publish({type:$E.EndpointError,payload:n}),tN(n)}finally{this.activeControllers.delete(t)}}async ensureStarted(){this.started||await this.start()}publish(e){for(let t of this.subscribers)t(e)}resolveUrl(e){return new URL(`${this.basePath}${e}`,this.baseUrl)}async jsonRequest(e){let t=new AbortController;this.activeControllers.add(t);try{let n=await this.fetchImpl(this.resolveUrl(e.path),{method:e.method,headers:{...this.defaultHeaders,"content-type":`application/json`,accept:`application/json`},body:e.body===void 0?void 0:JSON.stringify(e.body),signal:t.signal});if(!n.ok)throw Error(`NCP request failed with HTTP ${n.status}: ${await $M(n)}`)}catch(e){if(t.signal.aborted)return;if(iN(e))throw e;let n=eN(e);throw this.publish({type:$E.EndpointError,payload:n}),tN(n)}finally{this.activeControllers.delete(t)}}async streamRequest(e){let t=new AbortController;this.activeControllers.add(t);try{let n=await this.fetchImpl(this.resolveUrl(e.path),{method:e.method,headers:{...this.defaultHeaders,accept:`text/event-stream`,...e.body===void 0?{}:{"content-type":`application/json`}},body:e.body===void 0?void 0:JSON.stringify(e.body),signal:t.signal});if(!n.ok)throw Error(`NCP stream request failed with HTTP ${n.status}: ${await $M(n)}`);if(!n.body)throw Error(`NCP stream response has no body.`);for await(let e of KM(n.body)){if(t.signal.aborted)return;this.handleSseFrame(e)}}catch(e){if(t.signal.aborted)return;if(iN(e))throw e;let n=eN(e);throw this.publish({type:$E.EndpointError,payload:n}),tN(n)}finally{this.activeControllers.delete(t)}}handleSseFrame(e){if(e.event===`ncp-event`){let t=sN(e.data);if(!t){this.publish({type:$E.EndpointError,payload:{code:`runtime-error`,message:`Received malformed ncp-event frame.`}});return}this.publish(t);return}if(e.event===`error`){let t=cN(e.data);throw this.publish({type:$E.EndpointError,payload:t}),tN(t,{alreadyPublished:!0})}}};function fN(e){return typeof e==`string`?e:e instanceof URL?e.toString():e.url}function pN(e){if(e instanceof Error){let t=e.name?.trim(),n=e.message?.trim();return t&&n?`${t}: ${n}`:n||t||`Unknown Error`}return String(e??`Unknown error`)}function mN(e,t){let n=Error(e);return t!==void 0&&(n.cause=t),n}function hN(){return async(e,t)=>{try{return await fetch(e,{credentials:`include`,...t})}catch(n){throw se.reportTransportFailure(pN(n)),mN(`NCP fetch failed for ${(t?.method||`GET`).toUpperCase()} ${fN(e)}: ${pN(n)}`,n)}}}var gN=300,_N=`ncp agent unavailable during startup`;function vN(e){return e instanceof Error?e.message.includes(`ncp session not found:`):!1}function yN(e){return e?.trim().toLowerCase().includes(_N)??!1}function bN(){return new dN({baseUrl:ae,basePath:`/api/ncp/agent`,fetchImpl:hN()})}async function xN(e,t,n=gN){t.throwIfAborted();try{let r=await T(e,n);return t.throwIfAborted(),{messages:r.messages,status:r.status??`idle`,contextWindow:r.contextWindow??null}}catch(e){if(t.throwIfAborted(),!vN(e))throw e;return{messages:[],status:`idle`}}}function SN(e,t){let n=(0,P.useRef)(null),r=(0,P.useCallback)(e=>{if(!e){n.current=null;return}n.current!==e&&(n.current=e,t())},[t]);(0,P.useEffect)(()=>{r(e)},[e,r])}function CN(e,t={}){let[n]=(0,P.useState)(()=>bN()),r=w(),[i,a]=(0,P.useState)(0),[o,s]=(0,P.useState)(null),c=t.messageLimit??gN;(0,P.useEffect)(()=>{s(null)},[e]);let l=OD({sessionId:e,client:n,loadSeed:(0,P.useCallback)(async(e,t)=>{let n=await xN(e,t,c);return t.aborted||s(n.contextWindow??null),{messages:n.messages,status:n.status}},[i,c])}),u=l.hydrateError?.message??l.snapshot.error?.message??null;return SN(r.phase===`ready`&&yN(u)?`${e}:${r.lastReadyAt??0}`:null,()=>{a(e=>e+1)}),(0,P.useMemo)(()=>({...l,snapshot:{...l.snapshot,contextWindow:l.snapshot.contextWindow??o}}),[l,o])}function wN(e){return e.label?.trim()||e.path.split(`/`).filter(Boolean).pop()||e.path}function TN(e){let{activeChildSessionKey:t,activeWorkspaceFileKey:n,childSessionTabs:r,workspaceFileTabs:i}=e;if(n){let e=i.find(e=>e.key===n);if(e)return{kind:`file`,file:e}}if(t){let e=r.find(e=>e.sessionKey===t);if(e)return{kind:`child-session`,tab:e}}return r[0]?{kind:`child-session`,tab:r[0]}:i[0]?{kind:`file`,file:i[0]}:null}function EN({agentId:e,kind:t}){return t===`file`?(0,N.jsx)(Ht,{className:`h-3.5 w-3.5 shrink-0 text-gray-400`}):e?(0,N.jsx)(Nj,{agentId:e,className:`h-3.5 w-3.5 shrink-0`}):(0,N.jsx)(nn,{className:`h-3.5 w-3.5 shrink-0 text-gray-400`})}function DN({tab:e}){return(0,N.jsx)(kt,{delayDuration:250,children:(0,N.jsxs)(jt,{children:[(0,N.jsx)(Tt,{asChild:!0,children:(0,N.jsxs)(`div`,{className:d(`group flex max-w-[180px] min-w-0 items-center gap-1.5 border-r border-gray-200/70 border-b-2 px-2.5 py-2 transition-colors`,e.active?`border-b-primary bg-white text-gray-900`:`border-b-transparent bg-gray-50/85 text-gray-500 hover:bg-gray-100`),children:[(0,N.jsxs)(`button`,{type:`button`,onClick:e.onSelect,className:`flex min-w-0 flex-1 items-center gap-1.5 text-left`,children:[(0,N.jsx)(EN,{kind:e.kind,agentId:e.agentId}),(0,N.jsx)(`span`,{className:`min-w-0 truncate text-[12px] font-medium`,children:e.title}),e.kind===`file`&&e.viewMode===`diff`?(0,N.jsx)(`span`,{className:`shrink-0 rounded border border-amber-200 bg-amber-50 px-1 py-0 text-[9px] font-medium uppercase tracking-[0.08em] text-amber-700`,children:o(`chatWorkspaceDiff`)}):null,e.showUnreadDot?(0,N.jsx)(`span`,{"aria-label":o(`chatSessionUnread`),className:`h-2 w-2 shrink-0 rounded-full bg-primary`}):null]}),e.onClose?(0,N.jsx)(`button`,{type:`button`,onClick:t=>{t.stopPropagation(),e.onClose?.()},className:d(`rounded p-0.5 text-gray-400 transition-colors hover:bg-gray-200 hover:text-gray-700`,e.active?`opacity-100`:`opacity-0 group-hover:opacity-100`),"aria-label":o(`chatWorkspaceCloseFile`),children:(0,N.jsx)(ct,{className:`h-3 w-3`})}):null]})}),(0,N.jsx)(Dt,{side:`bottom`,className:`max-w-[320px] text-xs`,children:e.tooltip})]})})}function ON({tabs:e}){return(0,N.jsx)(`div`,{"data-testid":`workspace-tabs-bar`,className:`workspace-horizontal-scrollbar overflow-x-auto overflow-y-hidden border-b border-gray-200/70 bg-gray-50/85`,children:(0,N.jsx)(`div`,{"data-testid":`workspace-tabs-scroll`,className:`flex min-w-max items-stretch`,children:e.map(e=>(0,N.jsx)(DN,{tab:e},e.key))})})}function kN({sessionKey:e,onToolAction:t,onFileOpen:n}){let r=CN(e),i=r.visibleMessages,a=(0,P.useRef)(null),{onScroll:s}=WT({scrollRef:a,resetKey:e,isLoading:r.isHydrating,hasContent:i.length>0,contentVersion:i[i.length-1]??null,stickyThresholdPx:20});return(0,N.jsx)(`div`,{ref:a,onScroll:s,className:`h-full overflow-y-auto custom-scrollbar`,children:r.isHydrating?(0,N.jsxs)(`div`,{className:`flex h-full items-center justify-center text-sm text-gray-500`,children:[(0,N.jsx)(nt,{className:`mr-2 h-4 w-4 animate-spin`}),o(`chatChildSessionLoading`)]}):r.hydrateError?(0,N.jsx)(`div`,{className:`px-4 py-5 text-sm text-rose-600`,children:r.hydrateError.message}):i.length===0&&!r.isRunning?(0,N.jsx)(`div`,{className:`px-4 py-5 text-sm text-gray-500`,children:o(`chatChildSessionEmpty`)}):(0,N.jsx)(`div`,{className:`px-4 py-5`,children:(0,N.jsx)(Bj,{messages:i,isSending:r.isRunning,onToolAction:t,onFileOpen:n})})})}function AN({value:e}){return(0,N.jsx)(`span`,{className:`inline-flex max-w-full items-center rounded border border-gray-200 bg-gray-50 px-2 py-0.5 text-[10px] font-medium text-gray-600`,children:(0,N.jsx)(`span`,{className:`truncate`,children:e})})}function jN({tab:e}){let t=[e.sessionTypeLabel,e.preferredModel,e.projectName].filter(e=>!!e?.trim());return t.length===0&&!e.projectRoot?null:(0,N.jsxs)(`div`,{className:`mt-3 space-y-2`,children:[t.length>0?(0,N.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:t.map(e=>(0,N.jsx)(AN,{value:e},e))}):null,e.projectRoot?(0,N.jsx)(`div`,{title:e.projectRoot,className:`truncate rounded border border-gray-200 bg-gray-50 px-2 py-1.5 font-mono text-[11px] text-gray-500`,children:e.projectRoot}):null]})}function MN({tab:e}){return(0,N.jsxs)(`div`,{className:`border-b border-gray-200/70 px-4 py-3`,children:[(0,N.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 text-sm font-semibold text-gray-900`,children:[e.agentId?(0,N.jsx)(Nj,{agentId:e.agentId,className:`h-4 w-4 shrink-0`}):(0,N.jsx)(Yt,{className:`h-4 w-4 shrink-0 text-gray-400`}),(0,N.jsx)(`span`,{className:`truncate`,children:e.title})]}),(0,N.jsx)(jN,{tab:e})]})}function NN(e){let{resolvedChildTabs:t,workspaceFileTabs:n,activeSelection:r,optimisticReadAtBySessionKey:i,onSelectSession:a,onSelectFile:o,onCloseFile:s}=e,c=t.map(e=>{let t=i[e.sessionKey],n=t&&e.readAt?t.localeCompare(e.readAt)>0?t:e.readAt:t??e.readAt;return{key:`child:${e.sessionKey}`,kind:`child-session`,title:e.title,tooltip:e.title,agentId:e.agentId,active:r?.kind===`child-session`&&r.tab.sessionKey===e.sessionKey,showUnreadDot:$O({active:r?.kind===`child-session`&&r.tab.sessionKey===e.sessionKey,lastMessageAt:e.lastMessageAt,readAt:n,runStatus:e.runStatus}),onSelect:()=>a(e.sessionKey)}}),l=n.map(e=>({key:`file:${e.key}`,kind:`file`,title:wN(e),tooltip:e.path,viewMode:e.viewMode,active:r?.kind===`file`&&r.file.key===e.key,onSelect:()=>o(e.key),onClose:()=>s(e.key)}));return[...c,...l]}function PN({childSessionTabs:e,activeChildSessionKey:t,workspaceFileTabs:n,activeWorkspaceFileKey:r,sessionProjectRoot:i,displayMode:a=`docked`,onSelectSession:s,onSelectFile:c,onCloseFile:l,onClose:u,onBackToParent:f,onToolAction:p,onFileOpen:m}){let h=QD(),g=WM(e),_=rk(e=>e.optimisticReadAtBySessionKey),v=TN({activeChildSessionKey:t,activeWorkspaceFileKey:r,childSessionTabs:g,workspaceFileTabs:n}),y=g.some(e=>!!e.parentSessionKey);(0,P.useEffect)(()=>{if(v?.kind!==`child-session`)return;let e=v.tab.lastMessageAt?.trim()??null;e&&h.chatSessionListManager.markSessionRead(v.tab.sessionKey,e,v.tab.readAt??null)},[v,h]);let b=(0,P.useMemo)(()=>NN({resolvedChildTabs:g,workspaceFileTabs:n,activeSelection:v,optimisticReadAtBySessionKey:_,onSelectSession:s,onSelectFile:c,onCloseFile:l}),[v,l,c,s,_,g,n]);return v?(0,N.jsx)(`aside`,{className:d(a===`overlay`?`fixed inset-0 z-40 flex bg-white`:`hidden shrink-0 border-l border-gray-200/70 bg-white/95 backdrop-blur-sm md:flex md:w-[26rem] lg:w-[30rem] xl:w-[34rem]`),children:(0,N.jsxs)(`div`,{className:`flex h-full min-h-0 w-full flex-col`,children:[(0,N.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-gray-200/70 px-4 py-2.5`,children:[(0,N.jsxs)(`button`,{type:`button`,onClick:f,className:d(`inline-flex items-center gap-1 text-xs font-medium text-gray-600 transition-colors hover:text-gray-900`,!y&&`pointer-events-none opacity-0`),children:[(0,N.jsx)(De,{className:`h-3.5 w-3.5`}),(0,N.jsx)(`span`,{children:o(`chatBackToParent`)})]}),(0,N.jsx)(`button`,{type:`button`,onClick:u,className:`rounded-full border border-gray-200/80 p-1.5 text-gray-500 transition-colors hover:bg-gray-100 hover:text-gray-900`,"aria-label":o(`chatWorkspaceClosePanel`),children:(0,N.jsx)(ct,{className:`h-4 w-4`})})]}),(0,N.jsx)(ON,{tabs:b}),(0,N.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col bg-white`,children:v.kind===`child-session`?(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(MN,{tab:v.tab}),(0,N.jsx)(`div`,{className:`flex-1 min-h-0`,children:(0,N.jsx)(kN,{sessionKey:v.tab.sessionKey,onToolAction:p,onFileOpen:m})})]}):(0,N.jsx)(HM,{file:v.file,sessionProjectRoot:i,onFileOpen:m})})]})}):null}function FN(){return _({queryKey:[`ncp-session-types`],queryFn:b,staleTime:1e4,retry:!1})}function IN(e){let t=e.trim();return t.length>0?t:null}function LN(e){return e??null}var RN=class{constructor(e){this.updateSession=e,this.inFlight=null,this.queued=null,this.syncSelectedSessionPreferences=()=>{let e=Q.getState().snapshot,t=rk.getState().snapshot,n=ak.getState().snapshot,r=t.selectedSessionKey;!r||!n.canDeleteSession||this.enqueue({sessionKey:r,patch:{preferredModel:IN(e.selectedModel),preferredThinking:LN(e.selectedThinkingLevel)}})},this.enqueue=e=>{this.queued=e,!this.inFlight&&this.startFlush()},this.startFlush=()=>{this.inFlight=this.flush().catch(e=>{console.error(`Failed to sync chat session preferences: ${String(e)}`)}).finally(()=>{this.inFlight=null,this.queued&&this.startFlush()})},this.flush=async()=>{for(;this.queued;){let e=this.queued;this.queued=null,await this.updateSession(e.sessionKey,e.patch)}}}},zN=class{constructor(e,t,n){this.uiManager=e,this.streamActionsManager=t,this.sessionListManager=n,this.sessionPreferenceSync=new RN(re),this.buildAttachmentSignature=e=>[e.assetUri??``,e.url??``,e.name,e.mimeType,String(e.sizeBytes),e.contentBase64??``].join(`:`),this.hasSnapshotChanges=e=>{let t=Q.getState().snapshot;for(let[n,r]of Object.entries(e))if(!Object.is(t[n],r))return!0;return!1},this.resolveUpdateValue=(e,t)=>typeof t==`function`?t(e):t,this.isSameStringArray=(e,t)=>e.length===t.length&&e.every((e,n)=>e===t[n]),this.isRuntimeBlockedForSend=()=>lk(se.getStatusView()),this.syncComposerSnapshot=e=>{let t=Q.getState().snapshot.attachments,n=cO(e,t);Q.getState().setSnapshot({composerNodes:e,attachments:n,draft:rO(e),selectedSkills:iO(e)})},this.syncComposerSnapshotWithAttachments=(e,t)=>{Q.getState().setSnapshot({composerNodes:e,attachments:t,draft:rO(e),selectedSkills:iO(e)})},this.dedupeAttachments=e=>{let t=new Set,n=[];for(let r of e){let e=this.buildAttachmentSignature(r);t.has(e)||(t.add(e),n.push(r))}return n},this.syncSnapshot=e=>{if(this.hasSnapshotChanges(e)&&(Q.getState().setSnapshot(e),Object.prototype.hasOwnProperty.call(e,`modelOptions`)||Object.prototype.hasOwnProperty.call(e,`selectedModel`)||Object.prototype.hasOwnProperty.call(e,`selectedThinkingLevel`))){let{selectedModel:e}=Q.getState().snapshot;this.reconcileThinkingForModel(e)}},this.setDraft=e=>{let t=Q.getState().snapshot.draft,n=this.resolveUpdateValue(t,e);n!==t&&this.syncComposerSnapshot(nO(n))},this.setComposerNodes=e=>{let t=Q.getState().snapshot.composerNodes,n=this.resolveUpdateValue(t,e);Object.is(n,t)||this.syncComposerSnapshot(n)},this.addAttachments=e=>{if(e.length===0)return[];let{snapshot:t}=Q.getState(),n=new Set(t.attachments.map(this.buildAttachmentSignature)),r=this.dedupeAttachments([...t.attachments,...e]),i=r.filter(e=>!n.has(this.buildAttachmentSignature(e)));if(i.length===0)return[];let a=sO(t.composerNodes,r);return this.syncComposerSnapshotWithAttachments(a,r),i},this.restoreComposerState=(e,t)=>{let n=this.dedupeAttachments(t),r=sO(e,n);this.syncComposerSnapshotWithAttachments(r,n)},this.setPendingSessionType=e=>{let t=Q.getState().snapshot.pendingSessionType,n=this.resolveUpdateValue(t,e);n!==t&&Q.getState().setSnapshot({pendingSessionType:n})},this.send=async()=>{let e=Q.getState().snapshot,t=rk.getState().snapshot,n=ak.getState().snapshot,r=e.draft.trim(),{attachments:i}=e,a=lO(e.composerNodes,i);if(vO({snapshot:e,hasSendableDraft:a.some(e=>e.type!==`text`||e.text.trim().length>0),isRuntimeBlocked:this.isRuntimeBlockedForSend()}))return;let{selectedSkills:o,composerNodes:s}=e,c=n.sessionKey??t.selectedSessionKey??this.sessionListManager.ensureDraftSession(e.selectedSessionType);this.setComposerNodes(tO()),await this.streamActionsManager.sendMessage({message:r,sessionKey:c,agentId:t.selectedAgentId,sessionType:e.selectedSessionType,model:e.selectedModel||void 0,thinkingLevel:e.selectedThinkingLevel??void 0,stopSupported:!0,requestedSkills:o,attachments:i,parts:a,restoreDraftOnError:!0,composerNodes:s}),this.sessionListManager.promoteRootDraftSessionRoute(c)},this.stop=async()=>{await this.streamActionsManager.stopCurrentRun()},this.goToProviders=()=>{this.uiManager.goToProviders()},this.setSelectedModel=e=>{let t=Q.getState().snapshot.selectedModel,n=this.resolveUpdateValue(t,e);n!==t&&(Q.getState().setSnapshot({selectedModel:n}),this.reconcileThinkingForModel(n))},this.setSelectedThinkingLevel=e=>{let t=Q.getState().snapshot.selectedThinkingLevel,n=this.resolveUpdateValue(t,e);n!==t&&Q.getState().setSnapshot({selectedThinkingLevel:n})},this.selectSessionType=e=>{let t=$j(e);Q.getState().setSnapshot({selectedSessionType:t,pendingSessionType:t})},this.setSelectedSkills=e=>{let{snapshot:t}=Q.getState(),{selectedSkills:n}=t,r=this.resolveUpdateValue(n,e);this.isSameStringArray(r,n)||this.syncComposerSnapshot(oO(t.composerNodes,r,t.skillRecords))},this.selectModel=e=>{this.setSelectedModel(e),fO.remember(e),this.sessionPreferenceSync.syncSelectedSessionPreferences()},this.selectThinkingLevel=e=>{this.setSelectedThinkingLevel(e),this.sessionPreferenceSync.syncSelectedSessionPreferences()},this.rememberSkillSelection=e=>{pO.remember(e)},this.selectSkills=e=>{let t=Q.getState().snapshot.selectedSkills;for(let n of e)t.includes(n)||this.rememberSkillSelection(n);this.setSelectedSkills(e)},this.resolveThinkingForModel=(e,t)=>{let n=e?.thinkingCapability;return!n||n.supported.length===0?null:t===`off`?`off`:t&&n.supported.includes(t)?t:n.default&&n.supported.includes(n.default)?n.default:`off`},this.reconcileThinkingForModel=e=>{let{snapshot:t}=Q.getState(),n=t.modelOptions.find(t=>t.value===e),{selectedThinkingLevel:r}=t,i=this.resolveThinkingForModel(n,r);i!==r&&Q.getState().setSnapshot({selectedThinkingLevel:i})}}},BN=class{constructor(e,t){this.uiManager=e,this.streamActionsManager=t,this.syncDraftThreadState=e=>{ak.getState().setSnapshot({sessionKey:e,sessionDisplayName:void 0,canDeleteSession:!1,isHistoryLoading:!1,messages:[],isSending:!1,isAwaitingAssistantOutput:!1,parentSessionKey:null,parentSessionLabel:null,workspacePanelParentKey:null,childSessionTabs:[],activeChildSessionKey:null,activeWorkspaceFileKey:null})},this.resolveUpdateValue=(e,t)=>typeof t==`function`?t(e):t,this.shouldPersistReadAt=(e,t,n)=>{let r=rk.getState().optimisticReadAtBySessionKey[e],i=r&&n?r.localeCompare(n)>0?r:n:r??n??void 0;return i?t.localeCompare(i)>0:!0},this.setSelectedAgentId=e=>{let t=rk.getState().snapshot.selectedAgentId,n=this.resolveUpdateValue(t,e);n!==t&&rk.getState().setSnapshot({selectedAgentId:n})},this.setSelectedSessionKey=e=>{let t=rk.getState().snapshot.selectedSessionKey,n=this.resolveUpdateValue(t,e);n!==t&&rk.getState().setSnapshot({selectedSessionKey:n})},this.setListMode=e=>{let t=rk.getState().snapshot.listMode,n=this.resolveUpdateValue(t,e);n!==t&&rk.getState().setSnapshot({listMode:n})},this.markSessionRead=(e,t,n)=>{let r=e?.trim(),i=t?.trim();!r||!i||this.shouldPersistReadAt(r,i,n)&&(rk.getState().markSessionRead(r,i),re(r,{uiReadAt:i}).catch(()=>void 0))},this.createSession=(e,t)=>{let{snapshot:n}=Q.getState(),{defaultSessionType:r}=n,i=r||`native`,a=typeof e==`string`&&e.trim().length>0?e.trim():i,o=xO(t),s=ZO();return this.streamActionsManager.resetStreamState(),rk.getState().setSnapshot({selectedSessionKey:null,draftSessionKey:s}),this.syncDraftThreadState(s),Q.getState().setSnapshot({pendingSessionType:a,pendingProjectRoot:o,pendingProjectRootSessionKey:o?s:null}),this.uiManager.goToChatRoot(),s},this.ensureDraftSession=e=>{let{snapshot:t}=rk.getState();if(t.selectedSessionKey)return t.selectedSessionKey;let n=typeof e==`string`&&e.trim().length>0?e.trim():null;return this.syncDraftThreadState(t.draftSessionKey),n&&Q.getState().setSnapshot({pendingSessionType:n}),t.draftSessionKey},this.promoteRootDraftSessionRoute=e=>{let t=e.trim();if(!t)return;let{snapshot:n}=rk.getState(),{sessionKey:r}=ak.getState().snapshot;n.selectedSessionKey!==null||n.draftSessionKey!==t||r!==t||!this.uiManager.isAtChatRoot()||this.uiManager.goToSession(t,{replace:!0})},this.selectSession=e=>{ak.getState().setSnapshot({workspacePanelParentKey:null,activeChildSessionKey:null,activeWorkspaceFileKey:null}),this.uiManager.goToSession(e)},this.setQuery=e=>{let t=rk.getState().snapshot.query,n=this.resolveUpdateValue(t,e);n!==t&&rk.getState().setSnapshot({query:n})}}},VN=async()=>{},HN=()=>{},UN=class{constructor(){this.actions={sendMessage:VN,stopCurrentRun:VN,resumeRun:VN,resetStreamState:HN,applyHistoryMessages:HN},this.bind=e=>{this.actions={...this.actions,...e}},this.sendMessage=e=>this.actions.sendMessage(e),this.stopCurrentRun=()=>this.actions.stopCurrentRun(),this.resumeRun=e=>this.actions.resumeRun(e),this.resetStreamState=()=>this.actions.resetStreamState(),this.applyHistoryMessages=(e,t)=>this.actions.applyHistoryMessages(e,t)}},WN=`sid_`;function GN(e){let t=new TextEncoder().encode(e),n=``;for(let e of t)n+=String.fromCharCode(e);return`${WN}${btoa(n).replace(/\+/g,`-`).replace(/\//g,`_`).replace(/=+$/g,``)}`}function KN(e){if(!e.startsWith(WN))return null;let t=e.slice(4).replace(/-/g,`+`).replace(/_/g,`/`),n=`=`.repeat((4-t.length%4)%4);try{let e=atob(t+n),r=Uint8Array.from(e,e=>e.charCodeAt(0));return new TextDecoder().decode(r)}catch{return null}}function qN(e){if(!e)return null;let t=KN(e);if(t)return t;try{return decodeURIComponent(e)}catch{return e}}function JN(e){return`/chat/${GN(e)}`}var YN=async e=>!1,XN=class{constructor(){this.state={pathname:``},this.actions={navigate:null,confirm:YN},this.syncState=e=>{this.state={...this.state,...e}},this.bindActions=e=>{this.actions={...this.actions,...e}},this.confirm=async e=>this.actions.confirm(e),this.navigateTo=(e,t)=>{this.actions.navigate&&(this.state.pathname===e&&!t?.replace||(this.actions.navigate(e,t),this.state.pathname=e))},this.goToProviders=()=>{this.navigateTo(`/providers`)},this.goToChatRoot=e=>{this.navigateTo(`/chat`,e)},this.isAtChatRoot=()=>this.state.pathname===`/chat`,this.goToSession=(e,t)=>{this.navigateTo(JN(e),t)}}},ZN=class{constructor(e,t,n){this.uiManager=e,this.sessionListManager=t,this.streamActionsManager=n,this.hasSnapshotChanges=e=>{let t=ak.getState().snapshot;for(let[n,r]of Object.entries(e))if(!Object.is(t[n],r))return!0;return!1},this.syncSnapshot=e=>{this.hasSnapshotChanges(e)&&ak.getState().setSnapshot(e)},this.clearDeletedSessionState=e=>{rk.getState().snapshot.selectedSessionKey===e&&this.sessionListManager.setSelectedSessionKey(null),ak.getState().setSnapshot({sessionKey:null,sessionTypeLabel:null,agentId:null,agentDisplayName:null,agentAvatarUrl:null,sessionDisplayName:void 0,sessionProjectRoot:null,sessionProjectName:null,canDeleteSession:!1,isHistoryLoading:!1,messages:[],isSending:!1,isAwaitingAssistantOutput:!1,parentSessionKey:null,parentSessionLabel:null,workspacePanelParentKey:null,childSessionTabs:[],activeChildSessionKey:null,workspaceFileTabs:[],activeWorkspaceFileKey:null})},this.resolveWorkspaceParentSessionKey=()=>ak.getState().snapshot.sessionKey?.trim()||(rk.getState().snapshot.selectedSessionKey??null),this.buildWorkspaceFileTab=(e,t)=>{let n=e.path.trim();if(!n)return null;let r=t?.trim()||null;return{key:`${r??`draft`}::${e.viewMode}::${n}`,parentSessionKey:r,path:n,label:e.label?.trim()||null,viewMode:e.viewMode,line:e.line??null,column:e.column??null,rawText:e.rawText??null,beforeText:e.beforeText??null,afterText:e.afterText??null,patchText:e.patchText??null,oldStartLine:e.oldStartLine??null,newStartLine:e.newStartLine??null,fullLines:e.fullLines}},this.upsertWorkspaceFileTab=e=>{let{workspaceFileTabs:t}=ak.getState().snapshot,n=t.findIndex(t=>t.key===e.key);if(n===-1)return[e,...t];let r=[...t];return r.splice(n,1),r.unshift({...t[n],...e}),r},this.ensureWorkspaceParentRoute=e=>{if(!e)return;let{snapshot:{selectedSessionKey:t}}=rk.getState();t!==e&&this.uiManager.goToSession(e)},this.deleteSession=()=>{this.deleteCurrentSession()},this.createSession=()=>{this.sessionListManager.createSession()},this.goToProviders=()=>{this.uiManager.goToProviders()},this.openChildSessionPanel=e=>{let t=e.parentSessionKey.trim();if(!t)return;let n=e.activeChildSessionKey?.trim()||null;ak.getState().setSnapshot({workspacePanelParentKey:t,activeChildSessionKey:n,activeWorkspaceFileKey:null}),this.ensureWorkspaceParentRoute(t)},this.openFilePreview=e=>{let t=this.resolveWorkspaceParentSessionKey(),n=this.buildWorkspaceFileTab(e,t);n&&(ak.getState().setSnapshot({workspacePanelParentKey:t,workspaceFileTabs:this.upsertWorkspaceFileTab(n),activeWorkspaceFileKey:n.key,activeChildSessionKey:null}),this.ensureWorkspaceParentRoute(t))},this.openSessionFromToolAction=e=>{if(e.kind===`open-session`){if(e.sessionKind===`child`&&!this.isCompactViewport()){let t=e.parentSessionId?.trim()||rk.getState().snapshot.selectedSessionKey||null;if(t){this.openChildSessionPanel({parentSessionKey:t,activeChildSessionKey:e.sessionId});return}}ak.getState().setSnapshot({workspacePanelParentKey:null,activeChildSessionKey:null,activeWorkspaceFileKey:null}),this.uiManager.goToSession(e.sessionId)}},this.selectChildSessionDetail=e=>{let t=e.trim();if(!t)return;let{childSessionTabs:n}=ak.getState().snapshot;n.some(e=>e.sessionKey===t)&&ak.getState().setSnapshot({activeChildSessionKey:t,activeWorkspaceFileKey:null})},this.selectWorkspaceFile=e=>{let t=e.trim();if(!t)return;let{workspaceFileTabs:n}=ak.getState().snapshot;n.some(e=>e.key===t)&&ak.getState().setSnapshot({activeWorkspaceFileKey:t,activeChildSessionKey:null})},this.closeWorkspaceFile=e=>{let t=e.trim();if(!t)return;let{snapshot:n}=ak.getState(),{activeWorkspaceFileKey:r,workspaceFileTabs:i}=n,a={workspaceFileTabs:i.filter(e=>e.key!==t)};r===t&&(a.activeWorkspaceFileKey=null),ak.getState().setSnapshot(a)},this.closeWorkspacePanel=()=>{ak.getState().setSnapshot({workspacePanelParentKey:null,activeChildSessionKey:null,activeWorkspaceFileKey:null})},this.closeChildSessionDetail=()=>{this.closeWorkspacePanel()},this.goToParentSession=()=>{let{parentSessionKey:e,childSessionTabs:t,activeChildSessionKey:n}=ak.getState().snapshot,r=t.find(e=>e.sessionKey===n)?.parentSessionKey??null,i=e??r;i&&(this.closeWorkspacePanel(),this.uiManager.goToSession(i))},this.isCompactViewport=()=>dt.getSnapshot().mode===`mobile`,this.deleteCurrentSession=async()=>{let{snapshot:{selectedSessionKey:e}}=rk.getState();if(e&&await this.uiManager.confirm({title:o(`chatDeleteSessionConfirm`),variant:`destructive`,confirmLabel:o(`delete`)})){ak.getState().setSnapshot({isDeletePending:!0});try{await ee(e),C(y,e),y.removeQueries({queryKey:[`ncp-session-messages`,e]}),this.streamActionsManager.resetStreamState(),this.clearDeletedSessionState(e),this.uiManager.goToChatRoot({replace:!0})}finally{ak.getState().setSnapshot({isDeletePending:!1})}}}}},QN=class{constructor(){this.chatUiManager=new XN,this.chatStreamActionsManager=new UN,this.chatSessionListManager=new BN(this.chatUiManager,this.chatStreamActionsManager),this.chatInputManager=new zN(this.chatUiManager,this.chatStreamActionsManager,this.chatSessionListManager),this.chatThreadManager=new ZN(this.chatUiManager,this.chatSessionListManager,this.chatStreamActionsManager)}};function $N(e){return e?.trim().toLowerCase()||`native`}function eP(e,t){if(typeof t!=`string`)return!1;let n=t.trim();return n?e.some(e=>e.value===n):!1}function tP(e,t){return typeof t==`string`&&e.includes(t)}function nP(e){return e.length===0?null:e.includes(`off`)?`off`:e[0]??null}function rP(e){let{currentValue:t,selectedSessionPreferredValue:n,fallbackPreferredValue:r,defaultValue:i,isValueSupported:a,firstAvailableValue:o,preferSessionPreferredValue:s=!1,preserveCurrentValueOnSessionChange:c=!1}=e;return a(t)&&(!s||c)?t:a(n)?n:a(r)?r:a(i)?i:o}function iP(e){let{modelOptions:t,currentSelectedModel:n,selectedSessionPreferredModel:r,fallbackPreferredModel:i,defaultModel:a,preferSessionPreferredModel:o,preserveCurrentSelectedModelOnSessionChange:s}=e;return t.length===0?``:rP({currentValue:n,selectedSessionPreferredValue:r,fallbackPreferredValue:i,defaultValue:a,isValueSupported:e=>eP(t,e),firstAvailableValue:t[0]?.value??``,preferSessionPreferredValue:o,preserveCurrentValueOnSessionChange:s})}function aP(e){let{supportedThinkingLevels:t,currentSelectedThinkingLevel:n,selectedSessionPreferredThinking:r,fallbackPreferredThinking:i,defaultThinkingLevel:a,preferSessionPreferredThinking:o,preserveCurrentSelectedThinkingOnSessionChange:s}=e;return t.length===0?null:rP({currentValue:n,selectedSessionPreferredValue:r,fallbackPreferredValue:i,defaultValue:a,isValueSupported:e=>tP(t,e),firstAvailableValue:nP(t)??`off`,preferSessionPreferredValue:o,preserveCurrentValueOnSessionChange:s})}function oP(e){let{sessions:t,selectedSessionKey:n,sessionType:r,readPreference:i}=e,a=$N(r),o,s=-1/0;for(let e of t){if(e.key===n||$N(e.sessionType)!==a)continue;let t=i(e);if(t==null)continue;let r=Date.parse(e.updatedAt),c=Number.isFinite(r)?r:-1/0;(o===void 0||c>s)&&(o=t,s=c)}return o}function sP(e){return e.map(e=>e==null?``:String(e)).join(``)}function cP(e){let{isPreferenceAvailable:t,emptyValue:n,syncKey:r,selectedSessionKey:i,selectedSessionExists:a=!1,setValue:o,resolveValue:s}=e,c=(0,P.useRef)(void 0),l=(0,P.useRef)(s),u=(0,P.useRef)(n);l.current=s,(0,P.useEffect)(()=>{let e=c.current!==i;if(!t){o(n),u.current=n,c.current=i;return}o(t=>{let r=l.current({currentValue:!e&&Object.is(t,u.current)?n:t,sessionChanged:e,preserveCurrentValueOnSessionChange:e&&!!i&&!a});return u.current=r,r}),c.current=i},[n,t,a,i,o,r])}function lP(e){let{modelOptions:t,selectedSessionKey:n,selectedSessionExists:r=!1,selectedSessionPreferredModel:i,fallbackPreferredModel:a,defaultModel:o,setSelectedModel:s}=e;cP({isPreferenceAvailable:t.length>0,emptyValue:``,syncKey:sP([t.map(e=>e.value).join(``),i,a,o]),selectedSessionKey:n,selectedSessionExists:r,setValue:s,resolveValue:({currentValue:e,sessionChanged:n,preserveCurrentValueOnSessionChange:r})=>iP({currentSelectedModel:e,modelOptions:t,selectedSessionPreferredModel:i,fallbackPreferredModel:a,defaultModel:o,preferSessionPreferredModel:n,preserveCurrentSelectedModelOnSessionChange:r})})}function uP(e){let{supportedThinkingLevels:t,selectedSessionKey:n,selectedSessionExists:r=!1,selectedSessionPreferredThinking:i,fallbackPreferredThinking:a,defaultThinkingLevel:o,setSelectedThinkingLevel:s}=e;cP({isPreferenceAvailable:t.length>0,emptyValue:null,syncKey:sP([t.join(``),i,a,o]),selectedSessionKey:n,selectedSessionExists:r,setValue:s,resolveValue:({currentValue:e,sessionChanged:n,preserveCurrentValueOnSessionChange:r})=>aP({currentSelectedThinkingLevel:e,supportedThinkingLevels:t,selectedSessionPreferredThinking:i,fallbackPreferredThinking:a,defaultThinkingLevel:o,preferSessionPreferredThinking:n,preserveCurrentSelectedThinkingOnSessionChange:r})})}export{SO as A,Ok as C,rk as D,dk as E,Mn as F,jn as I,un as L,Q as M,ZD as N,XO as O,ND as P,on as R,Tj as S,lk as T,rM as _,qN as a,Aj as b,CN as c,gM as d,lM as f,tM as g,eM as h,QN as i,xO as j,YO as k,jM as l,$j as m,lP as n,FN as o,nM as p,uP as r,yN as s,oP as t,mM as u,Dj as v,Nk as w,kj as x,Oj as y,tn as z};
|