@coffer-org/web 7.0.0 → 7.2.0

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.
Files changed (115) hide show
  1. package/dist/assets/ChatWidget-ByBb2eNs.js +31 -0
  2. package/dist/assets/DiagnosticsPage-tAFkmCz8.js +1 -0
  3. package/dist/assets/IBM-Plex-Mono-400-cyrillic-BSMlKf0J.woff2 +0 -0
  4. package/dist/assets/IBM-Plex-Mono-400-cyrillic-ext-xuaO2J-f.woff2 +0 -0
  5. package/dist/assets/IBM-Plex-Mono-400-latin-DMJ8VG8y.woff2 +0 -0
  6. package/dist/assets/IBM-Plex-Mono-400-latin-ext-BmRBH3aV.woff2 +0 -0
  7. package/dist/assets/IBM-Plex-Mono-500-cyrillic-Bq9vWWag.woff2 +0 -0
  8. package/dist/assets/IBM-Plex-Mono-500-cyrillic-ext-BqneJy0T.woff2 +0 -0
  9. package/dist/assets/IBM-Plex-Mono-500-latin-DSY6xOcd.woff2 +0 -0
  10. package/dist/assets/IBM-Plex-Mono-500-latin-ext-CAhNIIs5.woff2 +0 -0
  11. package/dist/assets/IBM-Plex-Mono-600-cyrillic-CTOM6hUh.woff2 +0 -0
  12. package/dist/assets/IBM-Plex-Mono-600-cyrillic-ext-V-xxqcpd.woff2 +0 -0
  13. package/dist/assets/IBM-Plex-Mono-600-latin-BgSNZQsw.woff2 +0 -0
  14. package/dist/assets/IBM-Plex-Mono-600-latin-ext-D38SheWl.woff2 +0 -0
  15. package/dist/assets/IBM-Plex-Sans-400-600-cyrillic-BAAhND-U.woff2 +0 -0
  16. package/dist/assets/IBM-Plex-Sans-400-600-cyrillic-ext-d45eAU9y.woff2 +0 -0
  17. package/dist/assets/IBM-Plex-Sans-400-600-latin-IvpUvPa2.woff2 +0 -0
  18. package/dist/assets/IBM-Plex-Sans-400-600-latin-ext-CIII54If.woff2 +0 -0
  19. package/dist/assets/{MarkdownEditor-B2QcGxzl.js → MarkdownEditor-0mNSwLu_.js} +3 -3
  20. package/dist/assets/NewRecordView-CTSqFBfe.js +1 -0
  21. package/dist/assets/Onest-400-700-cyrillic-DayYxulF.woff2 +0 -0
  22. package/dist/assets/Onest-400-700-cyrillic-ext-DOFToQv1.woff2 +0 -0
  23. package/dist/assets/Onest-400-700-latin-Dun_Rd-l.woff2 +0 -0
  24. package/dist/assets/Onest-400-700-latin-ext-QAhDxQuo.woff2 +0 -0
  25. package/dist/assets/{PluginSettingsPage-BkMqmqxo.js → PluginSettingsPage-BFsSZgTa.js} +1 -1
  26. package/dist/assets/ScanSummary-CaG-s5qh.js +1 -0
  27. package/dist/assets/SettingsForm-C_K9RpFr.js +1 -0
  28. package/dist/assets/SettingsPage-Cqp1tUyi.js +3 -0
  29. package/dist/assets/ThemeSwitcher-BPuCvU1U.js +1 -0
  30. package/dist/assets/{api-ChM6smRq.js → api-DD1tY5Dq.js} +1 -1
  31. package/dist/assets/arrow-left-DDsxjRCq.js +1 -0
  32. package/dist/assets/{auth-context-CGdGFadP.js → auth-context-BCos5wiL.js} +1 -1
  33. package/dist/assets/{data-size-oPRYOwnj.js → data-size-qpzofknI.js} +1 -1
  34. package/dist/assets/{extend-BTkr7oJ8.js → extend-BMkkNVfm.js} +1 -1
  35. package/dist/assets/{fields-BtCN_frr.js → fields-GPyF03tK.js} +1 -1
  36. package/dist/assets/{file-text-DzYzGxiY.js → file-text-DI3tERhf.js} +1 -1
  37. package/dist/assets/ical-FRtCagm-.js +8 -0
  38. package/dist/assets/index-C5rNjIku.css +2 -0
  39. package/dist/assets/index-DpBBejzP.js +24 -0
  40. package/dist/assets/{input-DqF3I-kT.js → input-tJjsdU1x.js} +1 -1
  41. package/dist/assets/{list-cache-D-BfHI9X.js → list-cache-B4i_A9fj.js} +1 -1
  42. package/dist/assets/phone-input-BeYLRpyW.js +1 -0
  43. package/dist/assets/{phone-input-vooQJZf_.js → phone-input-CZF7hU3E.js} +2 -2
  44. package/dist/assets/popover-C2xHG6L3.js +1 -0
  45. package/dist/assets/settings-rQsBFoL2.js +1 -0
  46. package/dist/assets/shelf-CpE68_8d.js +1 -0
  47. package/dist/assets/{showcase-Boajqdx8.js → showcase-CUDyXMb7.js} +1 -1
  48. package/dist/assets/src-2QhdFJyH.js +1 -0
  49. package/dist/assets/src-BRA1s942.js +1 -0
  50. package/dist/assets/src-Bmc_xgWr.js +1 -0
  51. package/dist/assets/{src-BiJuengh.js → src-BnvKHmLu.js} +1 -1
  52. package/dist/assets/src-Bv7IbF5F.js +1 -0
  53. package/dist/assets/{src-DWgNUcSX2.js → src-C3X1cmlu.js} +1 -1
  54. package/dist/assets/{src-B3nX_MMy.js → src-C3hdIsRT.js} +1 -1
  55. package/dist/assets/src-CIrBx5O0.js +1 -0
  56. package/dist/assets/src-CTlBmB5n.js +1 -0
  57. package/dist/assets/src-Cp4yFztL.js +4 -0
  58. package/dist/assets/src-D5pqHmdF.js +1 -0
  59. package/dist/assets/src-D9ZNj5Fi2.js +1 -0
  60. package/dist/assets/src-DAUYP87f2.js +1 -0
  61. package/dist/assets/{src-DB2N_cct.js → src-DEcZTAam.js} +4 -4
  62. package/dist/assets/src-DEqFDnFO.js +1 -0
  63. package/dist/assets/{src-BxLhm2cd.js → src-DXSkgVrX.js} +2 -2
  64. package/dist/assets/src-DaHZILQZ.js +1 -0
  65. package/dist/assets/src-Dvbi--2I.js +6 -0
  66. package/dist/assets/src-IYiBUs1S.js +1 -0
  67. package/dist/assets/src-Uu0k-CHA.js +1 -0
  68. package/dist/assets/src-WB1-7_Wh.js +1 -0
  69. package/dist/assets/src-dXlj2maQ.js +1 -0
  70. package/dist/assets/src-d_-Z83D-.js +2 -0
  71. package/dist/assets/src-eAsO2o4h2.js +1 -0
  72. package/dist/assets/{src-BJF2nMuG.js → src-uWOnIJWD.js} +2 -2
  73. package/dist/assets/{src-Ys25cnOv.js → src-yL3q5Nfe.js} +1 -1
  74. package/dist/assets/ui-A8aS2-NQ.js +2 -0
  75. package/dist/assets/ui-BK1F_c4b.js +2 -0
  76. package/dist/assets/ui-C9-epiVm.js +2 -0
  77. package/dist/assets/ui-kICtw37s.js +1 -0
  78. package/dist/assets/ui-vendor-BuwRGdK1.js +44 -0
  79. package/dist/index.html +26 -18
  80. package/dist-vendor/web-ui.js +8869 -8316
  81. package/package.json +1 -1
  82. package/dist/assets/ChatWidget-YZqj6v6F.js +0 -31
  83. package/dist/assets/DiagnosticsPage-C_lLM_Hw.js +0 -1
  84. package/dist/assets/NewRecordView-CC_fERty.js +0 -1
  85. package/dist/assets/ScanSummary-xKGEaOS0.js +0 -1
  86. package/dist/assets/SettingsForm-DW1KCYe4.js +0 -1
  87. package/dist/assets/SettingsPage-DuP06DkM.js +0 -3
  88. package/dist/assets/ThemeSwitcher-CR6oJXQD.js +0 -1
  89. package/dist/assets/arrow-left-5G0O-4HL.js +0 -1
  90. package/dist/assets/index-i___vlpd.css +0 -2
  91. package/dist/assets/index-zcINFUZQ.js +0 -28
  92. package/dist/assets/phone-input-CX0JAfCj.js +0 -1
  93. package/dist/assets/popover-DjWMp23y.js +0 -1
  94. package/dist/assets/settings-BfEurOH1.js +0 -1
  95. package/dist/assets/shelf-CRUDKiTz.js +0 -1
  96. package/dist/assets/src-6lNAeDcP.js +0 -1
  97. package/dist/assets/src-BDmFR0_v.js +0 -2
  98. package/dist/assets/src-BRzAjJX_.js +0 -6
  99. package/dist/assets/src-BinvE9sd2.js +0 -1
  100. package/dist/assets/src-BqhS-0sX.js +0 -1
  101. package/dist/assets/src-Br4oAdCy.js +0 -1
  102. package/dist/assets/src-C-Xmuyui.js +0 -1
  103. package/dist/assets/src-C2zqLDpV.js +0 -1
  104. package/dist/assets/src-C9WAFG8V.js +0 -4
  105. package/dist/assets/src-CFcpeTQ5.js +0 -1
  106. package/dist/assets/src-CYiAjCO3.js +0 -1
  107. package/dist/assets/src-Cr_oHzOc.js +0 -1
  108. package/dist/assets/src-CzmJIKcf.js +0 -1
  109. package/dist/assets/src-D2hi5jAO.js +0 -1
  110. package/dist/assets/src-DpPV1q-1.js +0 -1
  111. package/dist/assets/src-DwXka-KQ.js +0 -1
  112. package/dist/assets/ui-A-A-cO8j2.js +0 -2
  113. package/dist/assets/ui-CAxfAaN9.js +0 -2
  114. package/dist/assets/ui-D7QZRcxZ.js +0 -2
  115. package/dist/assets/ui-vendor-C79K_wDx.js +0 -44
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coffer-org/web",
3
- "version": "7.0.0",
3
+ "version": "7.2.0",
4
4
  "type": "module",
5
5
  "engines": {
6
6
  "node": ">=24"
@@ -1,31 +0,0 @@
1
- import{r as e,t}from"./rolldown-runtime-QTnfLwEv.js";import{a as n,t as r}from"./i18n-vendor-T6EnJ_TL.js";import{l as i,t as a,u as o}from"./react-vendor-CzSUaSLk.js";import{B as s,F as c,G as l,H as u,Hr as d,I as f,K as p,Kn as m,L as h,R as g,Sr as _,Tr as v,U as y,V as b,W as x,Wn as S,_r as C,br as w,fr as T,gr as E,jt as D,pr as O,q as k,ur as A,z as j}from"./src-C9WAFG8V.js";import{n as M,t as ee}from"./file-text-DzYzGxiY.js";import{n as N,r as P}from"./input-DqF3I-kT.js";import{f as te,p as ne}from"./phone-input-vooQJZf_.js";import{c as re}from"./popover-DjWMp23y.js";import{o as ie}from"./icons-BTbA1N7a.js";import{n as F,r as ae,t as I}from"./development-olQNibq5.js";import{a as oe,c as se,d as ce,g as le,h as L,i as ue,l as R,m as de,n as fe,o as pe,p as me,r as he,s as ge,t as _e}from"./lib-DU7Qh2A4.js";var ve=P(`maximize-2`,[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`m21 3-7 7`,key:`1l2asr`}],[`path`,{d:`m3 21 7-7`,key:`tjx5ai`}],[`path`,{d:`M9 21H3v-6`,key:`wtvkvv`}]]),ye=P(`minimize-2`,[[`path`,{d:`m14 10 7-7`,key:`oa77jy`}],[`path`,{d:`M20 10h-6V4`,key:`mjg0md`}],[`path`,{d:`m3 21 7-7`,key:`tjx5ai`}],[`path`,{d:`M4 14h6v6`,key:`rmj7iw`}]]),be=P(`paperclip`,[[`path`,{d:`m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551`,key:`1miecu`}]]),xe=P(`send`,[[`path`,{d:`M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z`,key:`1ffxy3`}],[`path`,{d:`m21.854 2.147-10.94 10.939`,key:`12cjpa`}]]),Se={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`},z=e(n(),1);async function*Ce(e){let t=e.getReader(),n=new TextDecoder,r=``;for(;;){let{done:e,value:i}=await t.read();if(e)break;r+=n.decode(i,{stream:!0});let a;for(;(a=r.indexOf(`
2
-
3
- `))!==-1;){let e=r.slice(0,a);r=r.slice(a+2);let t=`message`,n=[];for(let r of e.split(`
4
- `))!r||r.startsWith(`:`)||(r.startsWith(`event:`)?t=r.slice(6).trim():r.startsWith(`data:`)&&n.push(r.slice(5).replace(/^ /,``)));n.length&&(yield{event:t,data:n.join(`
5
- `)})}}}var we=`/api/plugins/webchat/user`;async function B(e,t){let n=await fetch(`${we}/${e}`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(t)});if(!n.ok)throw Error(e);return await n.json()}async function Te(){return(await B(`threads`,{})).threads}async function Ee(e){return B(`history`,{convId:e})}async function De(e){let t=await B(`agents`,{convId:e});return{agents:t.agents??[],defaultAgentId:t.defaultAgentId??null,selection:t.selection??{agentId:null,presetId:null},starters:t.starters??[]}}async function Oe(e,t){return(await B(`selectAgent`,{convId:e,...t})).selection}async function ke(e){let t=await fetch(`${we}/send/stream`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify({convId:e.convId,text:e.text,replyTo:e.replyTo,context:e.context,...e.attachments?.length?{attachments:e.attachments}:{}}),signal:e.signal});if(!t.ok||!t.body){e.onError(`http ${t.status}`);return}for await(let n of Ce(t.body))try{let t=JSON.parse(n.data);n.event===`reasoning`?e.onReasoning?.(String(t.text??``)):n.event===`delta`||n.event===`message`?e.onDelta(String(t.text??``)):n.event===`done`?e.onDone({msgId:t.msgId??null,parentMsgId:String(t.parentMsgId??``),suggestions:Array.isArray(t.suggestions)?t.suggestions:null}):n.event===`error`&&e.onError(String(t.message??`error`))}catch(t){e.onError(`malformed frame: ${String(t)}`)}}function Ae(){return crypto.randomUUID()}function je(){let[e,t]=(0,z.useState)([]),[n,r]=(0,z.useState)(null),[i,a]=(0,z.useState)([]),[o,s]=(0,z.useState)(null),[c,l]=(0,z.useState)(null),[u,d]=(0,z.useState)(null),[f,p]=(0,z.useState)([]),[m,h]=(0,z.useState)(null),[g,_]=(0,z.useState)({agentId:null,presetId:null}),[v,y]=(0,z.useState)([]),[b,x]=(0,z.useState)(null),S=(0,z.useRef)(null),C=(0,z.useRef)(null),w=(0,z.useRef)(!1),T=(0,z.useRef)(0),E=(0,z.useRef)(!0);(0,z.useEffect)(()=>(E.current=!0,()=>{E.current=!1,C.current?.abort(),T.current++}),[]);let D=(0,z.useCallback)(()=>{Te().then(e=>{E.current&&t(e)}).catch(()=>{})},[]);(0,z.useEffect)(()=>{if(!n)return;let e=!1;return De(n).then(t=>{e||(p(t.agents),h(t.defaultAgentId),_(t.selection),y(t.starters))}).catch(()=>{}),()=>{e=!0}},[n]);let O=(0,z.useCallback)(e=>{let t=g;_(e),n&&Oe(n,e).then(_).catch(e=>{_(t),d(e instanceof Error?e.message:String(e))})},[n,g]),k=(0,z.useMemo)(()=>{let e=f.find(e=>e.id===g.agentId)?.presets.find(e=>e.id===g.presetId);return!e?.capabilities||e.capabilities.vision!==!1||e.capabilities.documents!==!1},[f,g]),A=(0,z.useCallback)(()=>{C.current?.abort(),C.current=null,T.current++,S.current=null,r(Ae()),a([]),s(null),l(null),d(null),x(null)},[]),j=(0,z.useCallback)(async e=>{C.current?.abort(),C.current=null,T.current++;let t=T.current;r(e),a([]),S.current=null,s(null),l(null),d(null),x(null);try{let n=await Ee(e);if(T.current!==t)return;S.current=n.headMsgId,a(n.messages),x(n.messages.at(-1)?.suggestions??null)}catch(e){if(T.current!==t)return;d(e.message)}},[]),M=(0,z.useCallback)(()=>{C.current?.abort(),C.current=null,s(null),l(null)},[]);return{threads:e,convId:n,messages:i,pending:o,pendingReasoning:c,error:u,agents:f,defaultAgentId:m,selection:g,starters:v,suggestions:b,attachmentsAllowed:k,chooseAgent:O,send:(0,z.useCallback)((e,t,i=[])=>{if(!e.trim()||w.current)return!1;w.current=!0;let o=T.current,c=n??Ae();n===null&&r(c),d(null),x(null),a(t=>[...t,{msgId:`local-${Ae()}`,role:`user`,text:e,ts:Math.floor(Date.now()/1e3),...i.length?{attachments:i}:{}}]),s(``);let u=new AbortController;C.current=u;let f=``,p=``;return(async()=>{try{await ke({convId:c,text:e,replyTo:S.current,context:t,attachments:i,signal:u.signal,onDelta:e=>{T.current===o&&(f=e,s(e))},onReasoning:e=>{T.current===o&&(p=e,l(e))},onDone:({msgId:e,parentMsgId:t,suggestions:n})=>{T.current===o&&(S.current=e??t,x(n??null),f&&a(t=>[...t,{msgId:e??`local-${Ae()}`,role:`assistant`,text:f,ts:Math.floor(Date.now()/1e3),...p?{reasoning:p}:{}}]),s(null),l(null))},onError:e=>{T.current===o&&(d(e),s(null),l(null))}})}catch(e){T.current===o&&(e.name!==`AbortError`&&d(e.message),s(null),l(null))}finally{w.current=!1,T.current===o&&(C.current=null,D())}})(),!0},[n,D]),open:j,newConversation:A,loadThreads:D,stop:M}}function Me(){let{pathname:e}=i(),t=e.split(`/`).filter(Boolean),n=new Set([`settings`,`browse`,`plugins`,`login`,`setup`]);if(t.length<2||n.has(t[0]))return{path:e};let[r,a,o]=t;return{path:e,library:r,type:a,...o&&o!==`new`?{id:o}:{}}}var Ne=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,Pe=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,Fe={};function Ie(e,t){return((t||Fe).jsx?Pe:Ne).test(e)}var Le=t(((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;function u(e,t){if(typeof e!=`string`)throw TypeError(`First argument must be a string`);if(!e)return[];t||={};var l=1,u=1;function f(e){var t=e.match(r);t&&(l+=t.length);var n=e.lastIndexOf(`
6
- `);u=~n?e.length-n:u+e.length}function p(){var e={line:l,column:u};return function(t){return t.position=new m(e),_(),t}}function m(e){this.start=e,this.end={line:l,column:u},this.source=t.source}m.prototype.content=e;function h(n){var r=Error(t.source+`:`+l+`:`+u+`: `+n);if(r.reason=n,r.filename=t.source,r.line=l,r.column=u,r.source=e,!t.silent)throw r}function g(t){var n=t.exec(e);if(n){var r=n[0];return f(r),e=e.slice(r.length),n}}function _(){g(i)}function v(e){var t;for(e||=[];t=y();)t!==!1&&e.push(t);return e}function y(){var t=p();if(!(e.charAt(0)!=`/`||e.charAt(1)!=`*`)){for(var n=2;e.charAt(n)!=``&&(e.charAt(n)!=`*`||e.charAt(n+1)!=`/`);)++n;if(n+=2,e.charAt(n-1)===``)return h(`End of comment missing`);var r=e.slice(2,n-2);return u+=2,f(r),e=e.slice(n),u+=2,t({type:`comment`,comment:r})}}function b(){var e=p(),t=g(a);if(t){if(y(),!g(o))return h(`property missing ':'`);var r=g(s),i=e({type:`declaration`,property:d(t[0].replace(n,``)),value:r?d(r[0].replace(n,``)):``});return g(c),i}}function x(){var e=[];v(e);for(var t;t=b();)t!==!1&&(e.push(t),v(e));return e}return _(),x()}function d(e){return e?e.replace(l,``):``}t.exports=u})),Re=t((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(Le());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}})),ze=t((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))}})),Be=t(((e,t)=>{var n=(e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}})(Re()),r=ze();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})),Ve=Ue(`end`),He=Ue(`start`);function Ue(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 We(e){let t=He(e),n=Ve(e);if(t&&n)return{start:t,end:n}}var Ge=e(Be(),1),Ke={}.hasOwnProperty,qe=new Map,Je=/[A-Z]/g,Ye=new Set([`table`,`tbody`,`thead`,`tfoot`,`tr`]),Xe=new Set([`td`,`th`]);function Ze(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=ct(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=st(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`?L:de,stylePropertyNameCase:t.stylePropertyNameCase||`dom`,tableCellAlignToStyle:t.tableCellAlignToStyle!==!1},a=Qe(i,e,void 0);return a&&typeof a!=`string`?a:i.create(e,i.Fragment,{children:a||void 0},void 0)}function Qe(e,t,n){if(t.type===`element`)return $e(e,t,n);if(t.type===`mdxFlowExpression`||t.type===`mdxTextExpression`)return et(e,t);if(t.type===`mdxJsxFlowElement`||t.type===`mdxJsxTextElement`)return nt(e,t,n);if(t.type===`mdxjsEsm`)return tt(e,t);if(t.type===`root`)return rt(e,t,n);if(t.type===`text`)return it(e,t)}function $e(e,t,n){let r=e.schema,i=r;t.tagName.toLowerCase()===`svg`&&r.space===`html`&&(i=L,e.schema=i),e.ancestors.push(t);let a=mt(e,t.tagName,!1),o=lt(e,t),s=dt(e,t);return Ye.has(t.tagName)&&(s=s.filter(function(e){return typeof e!=`string`||!oe(e)})),at(e,o,a,t),ot(o,s),e.ancestors.pop(),e.schema=r,e.create(t,a,o,n)}function et(e,t){if(t.data&&t.data.estree&&e.evaluater){let n=t.data.estree.body[0];return I(n.type===`ExpressionStatement`),e.evaluater.evaluateExpression(n.expression)}V(e,t.position)}function tt(e,t){if(t.data&&t.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(t.data.estree);V(e,t.position)}function nt(e,t,n){let r=e.schema,i=r;t.name===`svg`&&r.space===`html`&&(i=L,e.schema=i),e.ancestors.push(t);let a=t.name===null?e.Fragment:mt(e,t.name,!0),o=ut(e,t),s=dt(e,t);return at(e,o,a,t),ot(o,s),e.ancestors.pop(),e.schema=r,e.create(t,a,o,n)}function rt(e,t,n){let r={};return ot(r,dt(e,t)),e.create(t,e.Fragment,r,n)}function it(e,t){return t.value}function at(e,t,n,r){typeof n!=`string`&&n!==e.Fragment&&e.passNode&&(t.node=r)}function ot(e,t){if(t.length>0){let n=t.length>1?t:t[0];n&&(e.children=n)}}function st(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 ct(e,t){return n;function n(n,r,i,a){let o=Array.isArray(i.children),s=He(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 lt(e,t){let n={},r,i;for(i in t.properties)if(i!==`children`&&Ke.call(t.properties,i)){let a=ft(e,i,t.properties[i]);if(a){let[i,o]=a;e.tableCellAlignToStyle&&i===`align`&&typeof o==`string`&&Xe.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 ut(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];I(t.type===`ExpressionStatement`);let i=t.expression;I(i.type===`ObjectExpression`);let a=i.properties[0];I(a.type===`SpreadElement`),Object.assign(n,e.evaluater.evaluateExpression(a.argument))}else V(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];I(t.type===`ExpressionStatement`),a=e.evaluater.evaluateExpression(t.expression)}else V(e,t.position);else a=r.value===null||r.value;n[i]=a}return n}function dt(e,t){let n=[],r=-1,i=e.passKeys?new Map:qe;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=Qe(e,a,o);s!==void 0&&n.push(s)}return n}function ft(e,t,n){let r=le(e.schema,t);if(!(n==null||typeof n==`number`&&Number.isNaN(n))){if(Array.isArray(n)&&(n=r.commaSeparated?me(n):ce(n)),r.property===`style`){let t=typeof n==`object`?n:pt(e,String(n));return e.stylePropertyNameCase===`css`&&(t=ht(t)),[`style`,t]}return[e.elementAttributeNameCase===`react`&&r.space?Se[r.property]||r.property:r.attribute,n]}}function pt(e,t){try{return(0,Ge.default)(t,{reactCompat:!0})}catch(t){if(e.ignoreInvalidStyle)return{};let n=t,r=new se("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=`https://github.com/syntax-tree/hast-util-to-jsx-runtime#cannot-parse-style-attribute`,r}}function mt(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=Ie(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}I(i,`always a result`),r=i}else r=Ie(t)&&!/^[a-z]/.test(t)?{type:`Identifier`,name:t}:{type:`Literal`,value:t};if(r.type===`Literal`){let t=r.value;return Ke.call(e.components,t)?e.components[t]:t}if(e.evaluater)return e.evaluater.evaluateExpression(r);V(e)}function V(e,t){let n=new se("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=`https://github.com/syntax-tree/hast-util-to-jsx-runtime#cannot-handle-mdx-estrees-without-createevaluater`,n}function ht(e){let t={},n;for(n in e)Ke.call(e,n)&&(t[gt(n)]=e[n]);return t}function gt(e){let t=e.replace(Je,_t);return t.slice(0,3)===`ms-`&&(t=`-`+t),t}function _t(e){return`-`+e.toLowerCase()}var vt={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`]},yt={};function bt(e,t){let n=t||yt;return xt(e,typeof n.includeImageAlt!=`boolean`||n.includeImageAlt,typeof n.includeHtml!=`boolean`||n.includeHtml)}function xt(e,t,n){if(Ct(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 St(e.children,t,n)}return Array.isArray(e)?St(e,t,n):``}function St(e,t,n){let r=[],i=-1;for(;++i<e.length;)r[i]=xt(e[i],t,n);return r.join(``)}function Ct(e){return!!(e&&typeof e==`object`)}var wt=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function Tt(e){return e.replace(wt,Et)}function Et(e,t,n){if(t)return t;if(n.charCodeAt(0)===k.numberSign){let e=n.charCodeAt(1),t=e===k.lowercaseX||e===k.uppercaseX;return x(n.slice(t?2:1),t?p.numericBaseHexadecimal:p.numericBaseDecimal)}return ae(n)||e}var Dt={}.hasOwnProperty;function Ot(e,t,n){return t&&typeof t==`object`&&(n=t,t=void 0),kt(n)(h(g(n).document().write(f()(e,t,!0))))}function kt(e){let t={transforms:[],canContainEols:[`emphasis`,`fragment`,`heading`,`paragraph`,`strong`],enter:{autolink:a(Ce),autolinkProtocol:A,autolinkEmail:A,atxHeading:a(be),blockQuote:a(he),characterEscape:A,characterReference:A,codeFenced:a(ge),codeFencedFenceInfo:o,codeFencedFenceMeta:o,codeIndented:a(ge,o),codeText:a(_e,o),codeTextData:A,data:A,codeFlowValue:A,definition:a(ve),definitionDestinationString:o,definitionLabelString:o,definitionTitleString:o,emphasis:a(ye),hardBreakEscape:a(xe),hardBreakTrailing:a(xe),htmlFlow:a(Se,o),htmlFlowData:A,htmlText:a(Se,o),htmlTextData:A,image:a(z),label:o,link:a(Ce),listItem:a(B),listItemValue:m,listOrdered:a(we,f),listUnordered:a(we),paragraph:a(Te),reference:le,referenceString:o,resourceDestinationString:o,resourceTitleString:o,setextHeading:a(be),strong:a(Ee),thematicBreak:a(Oe)},exit:{atxHeading:c(),atxHeadingSequence:T,autolink:c(),autolinkEmail:me,autolinkProtocol:pe,blockQuote:c(),characterEscapeValue:j,characterReferenceMarkerHexadecimal:ue,characterReferenceMarkerNumeric:ue,characterReferenceValue:de,characterReference:fe,codeFenced:c(v),codeFencedFence:_,codeFencedFenceInfo:h,codeFencedFenceMeta:g,codeFlowValue:j,codeIndented:c(b),codeText:c(te),codeTextData:j,data:j,definition:c(),definitionDestinationString:w,definitionLabelString:S,definitionTitleString:C,emphasis:c(),hardBreakEscape:c(ee),hardBreakTrailing:c(ee),htmlFlow:c(N),htmlFlowData:j,htmlText:c(P),htmlTextData:j,image:c(re),label:F,labelText:ie,lineEnding:M,link:c(ne),listItem:c(),listOrdered:c(),listUnordered:c(),paragraph:c(),referenceString:L,resourceDestinationString:oe,resourceTitleString:se,resource:ce,setextHeading:c(O),setextHeadingLineSequence:D,setextHeadingText:E,strong:c(),thematicBreak:c()}};At(t,(e||{}).mdastExtensions||[]);let n={};return r;function r(e){let r={type:`root`,children:[]},a={stack:[r],tokenStack:[],config:t,enter:s,exit:u,buffer:o,resume:d,data:n},c=[],f=-1;for(;++f<e.length;)if(e[f][1].type===l.listOrdered||e[f][1].type===l.listUnordered)if(e[f][0]===`enter`)c.push(f);else{let t=c.pop();I(typeof t==`number`,`expected list to be open`),f=i(e,t,f)}for(f=-1;++f<e.length;){let n=t[e[f][0]];Dt.call(n,e[f][1].type)&&n[e[f][1].type].call(Object.assign({sliceSerialize:e[f][2].sliceSerialize},a),e[f][1])}if(a.tokenStack.length>0){let e=a.tokenStack[a.tokenStack.length-1];(e[1]||Mt).call(a,void 0,e[0])}for(r.position={start:H(e.length>0?e[0][1].start:{line:1,column:1,offset:0}),end:H(e.length>0?e[e.length-2][1].end:{line:1,column:1,offset:0})},f=-1;++f<t.transforms.length;)r=t.transforms[f](r)||r;return r}function i(e,t,n){let r=t-1,i=-1,a=!1,o,s,c,u;for(;++r<=n;){let t=e[r];switch(t[1].type){case l.listUnordered:case l.listOrdered:case l.blockQuote:t[0]===`enter`?i++:i--,u=void 0;break;case l.lineEndingBlank:t[0]===`enter`&&(o&&!u&&!i&&!c&&(c=r),u=void 0);break;case l.linePrefix:case l.listItemValue:case l.listItemMarker:case l.listItemPrefix:case l.listItemPrefixWhitespace:break;default:u=void 0}if(!i&&t[0]===`enter`&&t[1].type===l.listItemPrefix||i===-1&&t[0]===`exit`&&(t[1].type===l.listUnordered||t[1].type===l.listOrdered)){if(o){let i=r;for(s=void 0;i--;){let t=e[i];if(t[1].type===l.lineEnding||t[1].type===l.lineEndingBlank){if(t[0]===`exit`)continue;s&&(e[s][1].type=l.lineEndingBlank,a=!0),t[1].type=l.lineEnding,s=i}else if(!(t[1].type===l.linePrefix||t[1].type===l.blockQuotePrefix||t[1].type===l.blockQuotePrefixWhitespace||t[1].type===l.blockQuoteMarker||t[1].type===l.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===l.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,u=!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){let r=this.stack[this.stack.length-1];I(r,"expected `parent`"),I(`children`in r,"expected `parent`"),r.children.push(e),this.stack.push(e),this.tokenStack.push([t,n||void 0]),e.position={start:H(t.start),end:void 0}}function c(e){return t;function t(t){e&&e.call(this,t),u.call(this,t)}}function u(e,t){let n=this.stack.pop();I(n,"expected `node`");let r=this.tokenStack.pop();if(r)r[0].type!==e.type&&(t?t.call(this,e,r[0]):(r[1]||Mt).call(this,e,r[0]));else throw Error("Cannot close `"+e.type+"` ("+R({start:e.start,end:e.end})+`): it’s not open`);I(n.type!==`fragment`,"unexpected fragment `exit`ed"),I(n.position,"expected `position` to be defined"),n.position.end=H(e.end)}function d(){return bt(this.stack.pop())}function f(){this.data.expectingFirstListItemValue=!0}function m(e){if(this.data.expectingFirstListItemValue){let t=this.stack[this.stack.length-2];I(t,`expected nodes on stack`),I(t.type===`list`,`expected list on stack`),t.start=Number.parseInt(this.sliceSerialize(e),p.numericBaseDecimal),this.data.expectingFirstListItemValue=void 0}}function h(){let e=this.resume(),t=this.stack[this.stack.length-1];I(t,`expected node on stack`),I(t.type===`code`,`expected code on stack`),t.lang=e}function g(){let e=this.resume(),t=this.stack[this.stack.length-1];I(t,`expected node on stack`),I(t.type===`code`,`expected code on stack`),t.meta=e}function _(){this.data.flowCodeInside||(this.buffer(),this.data.flowCodeInside=!0)}function v(){let e=this.resume(),t=this.stack[this.stack.length-1];I(t,`expected node on stack`),I(t.type===`code`,`expected code on stack`),t.value=e.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,``),this.data.flowCodeInside=void 0}function b(){let e=this.resume(),t=this.stack[this.stack.length-1];I(t,`expected node on stack`),I(t.type===`code`,`expected code on stack`),t.value=e.replace(/(\r?\n|\r)$/g,``)}function S(e){let t=this.resume(),n=this.stack[this.stack.length-1];I(n,`expected node on stack`),I(n.type===`definition`,`expected definition on stack`),n.label=t,n.identifier=y(this.sliceSerialize(e)).toLowerCase()}function C(){let e=this.resume(),t=this.stack[this.stack.length-1];I(t,`expected node on stack`),I(t.type===`definition`,`expected definition on stack`),t.title=e}function w(){let e=this.resume(),t=this.stack[this.stack.length-1];I(t,`expected node on stack`),I(t.type===`definition`,`expected definition on stack`),t.url=e}function T(e){let t=this.stack[this.stack.length-1];if(I(t,`expected node on stack`),I(t.type===`heading`,`expected heading on stack`),!t.depth){let n=this.sliceSerialize(e).length;I(n===1||n===2||n===3||n===4||n===5||n===6,"expected `depth` between `1` and `6`"),t.depth=n}}function E(){this.data.setextHeadingSlurpLineEnding=!0}function D(e){let t=this.stack[this.stack.length-1];I(t,`expected node on stack`),I(t.type===`heading`,`expected heading on stack`),t.depth=this.sliceSerialize(e).codePointAt(0)===k.equalsTo?1:2}function O(){this.data.setextHeadingSlurpLineEnding=void 0}function A(e){let t=this.stack[this.stack.length-1];I(t,`expected node on stack`),I(`children`in t,`expected parent on stack`);let n=t.children,r=n[n.length-1];(!r||r.type!==`text`)&&(r=De(),r.position={start:H(e.start),end:void 0},n.push(r)),this.stack.push(r)}function j(e){let t=this.stack.pop();I(t,"expected a `node` to be on the stack"),I(`value`in t,"expected a `literal` to be on the stack"),I(t.position,"expected `node` to have an open position"),t.value+=this.sliceSerialize(e),t.position.end=H(e.end)}function M(e){let n=this.stack[this.stack.length-1];if(I(n,"expected `node`"),this.data.atHardBreak){I(`children`in n,"expected `parent`");let t=n.children[n.children.length-1];I(t.position,`expected tail to have a starting position`),t.position.end=H(e.end),this.data.atHardBreak=void 0;return}!this.data.setextHeadingSlurpLineEnding&&t.canContainEols.includes(n.type)&&(A.call(this,e),j.call(this,e))}function ee(){this.data.atHardBreak=!0}function N(){let e=this.resume(),t=this.stack[this.stack.length-1];I(t,`expected node on stack`),I(t.type===`html`,`expected html on stack`),t.value=e}function P(){let e=this.resume(),t=this.stack[this.stack.length-1];I(t,`expected node on stack`),I(t.type===`html`,`expected html on stack`),t.value=e}function te(){let e=this.resume(),t=this.stack[this.stack.length-1];I(t,`expected node on stack`),I(t.type===`inlineCode`,`expected inline code on stack`),t.value=e}function ne(){let e=this.stack[this.stack.length-1];if(I(e,`expected node on stack`),I(e.type===`link`,`expected link on stack`),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 re(){let e=this.stack[this.stack.length-1];if(I(e,`expected node on stack`),I(e.type===`image`,`expected image on stack`),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 ie(e){let t=this.sliceSerialize(e),n=this.stack[this.stack.length-2];I(n,`expected ancestor on stack`),I(n.type===`image`||n.type===`link`,`expected image or link on stack`),n.label=Tt(t),n.identifier=y(t).toLowerCase()}function F(){let e=this.stack[this.stack.length-1];I(e,`expected node on stack`),I(e.type===`fragment`,`expected fragment on stack`);let t=this.resume(),n=this.stack[this.stack.length-1];I(n,`expected node on stack`),I(n.type===`image`||n.type===`link`,`expected image or link on stack`),this.data.inReference=!0,n.type===`link`?n.children=e.children:n.alt=t}function oe(){let e=this.resume(),t=this.stack[this.stack.length-1];I(t,`expected node on stack`),I(t.type===`image`||t.type===`link`,`expected image or link on stack`),t.url=e}function se(){let e=this.resume(),t=this.stack[this.stack.length-1];I(t,`expected node on stack`),I(t.type===`image`||t.type===`link`,`expected image or link on stack`),t.title=e}function ce(){this.data.inReference=void 0}function le(){this.data.referenceType=`collapsed`}function L(e){let t=this.resume(),n=this.stack[this.stack.length-1];I(n,`expected node on stack`),I(n.type===`image`||n.type===`link`,`expected image reference or link reference on stack`),n.label=t,n.identifier=y(this.sliceSerialize(e)).toLowerCase(),this.data.referenceType=`full`}function ue(e){I(e.type===`characterReferenceMarkerNumeric`||e.type===`characterReferenceMarkerHexadecimal`),this.data.characterReferenceType=e.type}function de(e){let t=this.sliceSerialize(e),n=this.data.characterReferenceType,r;if(n)r=x(t,n===l.characterReferenceMarkerNumeric?p.numericBaseDecimal:p.numericBaseHexadecimal),this.data.characterReferenceType=void 0;else{let e=ae(t);I(e!==!1,`expected reference to decode`),r=e}let i=this.stack[this.stack.length-1];I(i,"expected `node`"),I(`value`in i,"expected `node.value`"),i.value+=r}function fe(e){let t=this.stack.pop();I(t,"expected `node`"),I(t.position,"expected `node.position`"),t.position.end=H(e.end)}function pe(e){j.call(this,e);let t=this.stack[this.stack.length-1];I(t,`expected node on stack`),I(t.type===`link`,`expected link on stack`),t.url=this.sliceSerialize(e)}function me(e){j.call(this,e);let t=this.stack[this.stack.length-1];I(t,`expected node on stack`),I(t.type===`link`,`expected link on stack`),t.url=`mailto:`+this.sliceSerialize(e)}function he(){return{type:`blockquote`,children:[]}}function ge(){return{type:`code`,lang:null,meta:null,value:``}}function _e(){return{type:`inlineCode`,value:``}}function ve(){return{type:`definition`,identifier:``,label:null,title:null,url:``}}function ye(){return{type:`emphasis`,children:[]}}function be(){return{type:`heading`,depth:0,children:[]}}function xe(){return{type:`break`}}function Se(){return{type:`html`,value:``}}function z(){return{type:`image`,title:null,url:``,alt:null}}function Ce(){return{type:`link`,title:null,url:``,children:[]}}function we(e){return{type:`list`,ordered:e.type===`listOrdered`,start:null,spread:e._spread,children:[]}}function B(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 H(e){return{line:e.line,column:e.column,offset:e.offset}}function At(e,t){let n=-1;for(;++n<t.length;){let r=t[n];Array.isArray(r)?At(e,r):jt(e,r)}}function jt(e,t){let n;for(n in t)if(Dt.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 Mt(e,t){throw Error(e?"Cannot close `"+e.type+"` ("+R({start:e.start,end:e.end})+"): a different token (`"+t.type+"`, "+R({start:t.start,end:t.end})+`) is open`:"Cannot close document, a token (`"+t.type+"`, "+R({start:t.start,end:t.end})+`) is still open`)}function Nt(e){let t=this;t.parser=n;function n(n){return Ot(n,{...t.data(`settings`),...e,extensions:t.data(`micromarkExtensions`)||[],mdastExtensions:t.data(`fromMarkdownExtensions`)||[]})}}function Pt(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 Ft(e,t){let n={type:`element`,tagName:`br`,properties:{},children:[]};return e.patch(t,n),[e.applyData(t,n),{type:`text`,value:`
7
- `}]}function It(e,t){let n=t.value?t.value+`
8
- `:``,r={},i=t.lang?t.lang.split(/\s+/):[];i.length>0&&(r.className=[`language-`+i[0]]);let a={type:`element`,tagName:`code`,properties:r,children:[{type:`text`,value:n}]};return t.meta&&(a.data={meta:t.meta}),e.patch(t,a),a=e.applyData(t,a),a={type:`element`,tagName:`pre`,properties:{},children:[a]},e.patch(t,a),a}function Lt(e,t){let n={type:`element`,tagName:`del`,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Rt(e,t){let n={type:`element`,tagName:`em`,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function zt(e,t){let n=typeof e.options.clobberPrefix==`string`?e.options.clobberPrefix:`user-content-`,r=String(t.identifier).toUpperCase(),i=s(r.toLowerCase()),a=e.footnoteOrder.indexOf(r),o,c=e.footnoteCounts.get(r);c===void 0?(c=0,e.footnoteOrder.push(r),o=e.footnoteOrder.length):o=a+1,c+=1,e.footnoteCounts.set(r,c);let l={type:`element`,tagName:`a`,properties:{href:`#`+n+`fn-`+i,id:n+`fnref-`+i+(c>1?`-`+c:``),dataFootnoteRef:!0,ariaDescribedBy:[`footnote-label`]},children:[{type:`text`,value:String(o)}]};e.patch(t,l);let u={type:`element`,tagName:`sup`,properties:{},children:[l]};return e.patch(t,u),e.applyData(t,u)}function Bt(e,t){let n={type:`element`,tagName:`h`+t.depth,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Vt(e,t){if(e.options.allowDangerousHtml){let n={type:`raw`,value:t.value};return e.patch(t,n),e.applyData(t,n)}}function Ht(e,t){let n=t.referenceType,r=`]`;if(n===`collapsed`?r+=`[]`:n===`full`&&(r+=`[`+(t.label||t.identifier)+`]`),t.type===`imageReference`)return[{type:`text`,value:`![`+t.alt+r}];let i=e.all(t),a=i[0];a&&a.type===`text`?a.value=`[`+a.value:i.unshift({type:`text`,value:`[`});let o=i[i.length-1];return o&&o.type===`text`?o.value+=r:i.push({type:`text`,value:r}),i}function Ut(e,t){let n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return Ht(e,t);let i={src:s(r.url||``),alt:t.alt};r.title!==null&&r.title!==void 0&&(i.title=r.title);let a={type:`element`,tagName:`img`,properties:i,children:[]};return e.patch(t,a),e.applyData(t,a)}function Wt(e,t){let n={src:s(t.url)};t.alt!==null&&t.alt!==void 0&&(n.alt=t.alt),t.title!==null&&t.title!==void 0&&(n.title=t.title);let r={type:`element`,tagName:`img`,properties:n,children:[]};return e.patch(t,r),e.applyData(t,r)}function Gt(e,t){let n={type:`text`,value:t.value.replace(/\r?\n|\r/g,` `)};e.patch(t,n);let r={type:`element`,tagName:`code`,properties:{},children:[n]};return e.patch(t,r),e.applyData(t,r)}function Kt(e,t){let n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return Ht(e,t);let i={href:s(r.url||``)};r.title!==null&&r.title!==void 0&&(i.title=r.title);let a={type:`element`,tagName:`a`,properties:i,children:e.all(t)};return e.patch(t,a),e.applyData(t,a)}function qt(e,t){let n={href:s(t.url)};t.title!==null&&t.title!==void 0&&(n.title=t.title);let r={type:`element`,tagName:`a`,properties:n,children:e.all(t)};return e.patch(t,r),e.applyData(t,r)}function Jt(e,t,n){let r=e.all(t),i=n?Yt(n):Xt(t),a={},o=[];if(typeof t.checked==`boolean`){let e=r[0],n;e&&e.type===`element`&&e.tagName===`p`?n=e:(n={type:`element`,tagName:`p`,properties:{},children:[]},r.unshift(n)),n.children.length>0&&n.children.unshift({type:`text`,value:` `}),n.children.unshift({type:`element`,tagName:`input`,properties:{type:`checkbox`,checked:t.checked,disabled:!0},children:[]}),a.className=[`task-list-item`]}let s=-1;for(;++s<r.length;){let e=r[s];(i||s!==0||e.type!==`element`||e.tagName!==`p`)&&o.push({type:`text`,value:`
9
- `}),e.type===`element`&&e.tagName===`p`&&!i?o.push(...e.children):o.push(e)}let c=r[r.length-1];c&&(i||c.type!==`element`||c.tagName!==`p`)&&o.push({type:`text`,value:`
10
- `});let l={type:`element`,tagName:`li`,properties:a,children:o};return e.patch(t,l),e.applyData(t,l)}function Yt(e){let t=!1;if(e.type===`list`){t=e.spread||!1;let n=e.children,r=-1;for(;!t&&++r<n.length;)t=Xt(n[r])}return t}function Xt(e){return e.spread??e.children.length>1}function Zt(e,t){let n={},r=e.all(t),i=-1;for(typeof t.start==`number`&&t.start!==1&&(n.start=t.start);++i<r.length;){let e=r[i];if(e.type===`element`&&e.tagName===`li`&&e.properties&&Array.isArray(e.properties.className)&&e.properties.className.includes(`task-list-item`)){n.className=[`contains-task-list`];break}}let a={type:`element`,tagName:t.ordered?`ol`:`ul`,properties:n,children:e.wrap(r,!0)};return e.patch(t,a),e.applyData(t,a)}function Qt(e,t){let n={type:`element`,tagName:`p`,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function $t(e,t){let n={type:`root`,children:e.wrap(e.all(t))};return e.patch(t,n),e.applyData(t,n)}function en(e,t){let n={type:`element`,tagName:`strong`,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function tn(e,t){let n=e.all(t),r=n.shift(),i=[];if(r){let n={type:`element`,tagName:`thead`,properties:{},children:e.wrap([r],!0)};e.patch(t.children[0],n),i.push(n)}if(n.length>0){let r={type:`element`,tagName:`tbody`,properties:{},children:e.wrap(n,!0)},a=He(t.children[1]),o=Ve(t.children[t.children.length-1]);a&&o&&(r.position={start:a,end:o}),i.push(r)}let a={type:`element`,tagName:`table`,properties:{},children:e.wrap(i,!0)};return e.patch(t,a),e.applyData(t,a)}function nn(e,t,n){let r=n?n.children:void 0,i=(r?r.indexOf(t):1)===0?`th`:`td`,a=n&&n.type===`table`?n.align:void 0,o=a?a.length:t.children.length,s=-1,c=[];for(;++s<o;){let n=t.children[s],r={},o=a?a[s]:void 0;o&&(r.align=o);let l={type:`element`,tagName:i,properties:r,children:[]};n&&(l.children=e.all(n),e.patch(n,l),l=e.applyData(n,l)),c.push(l)}let l={type:`element`,tagName:`tr`,properties:{},children:e.wrap(c,!0)};return e.patch(t,l),e.applyData(t,l)}function rn(e,t){let n={type:`element`,tagName:`td`,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}var an=9,on=32;function sn(e){let t=String(e),n=/\r?\n|\r/g,r=n.exec(t),i=0,a=[];for(;r;)a.push(cn(t.slice(i,r.index),i>0,!0),r[0]),i=r.index+r[0].length,r=n.exec(t);return a.push(cn(t.slice(i),i>0,!1)),a.join(``)}function cn(e,t,n){let r=0,i=e.length;if(t){let t=e.codePointAt(r);for(;t===an||t===on;)r++,t=e.codePointAt(r)}if(n){let t=e.codePointAt(i-1);for(;t===an||t===on;)i--,t=e.codePointAt(i-1)}return i>r?e.slice(r,i):``}function ln(e,t){let n={type:`text`,value:sn(String(t.value))};return e.patch(t,n),e.applyData(t,n)}function un(e,t){let n={type:`element`,tagName:`hr`,properties:{},children:[]};return e.patch(t,n),e.applyData(t,n)}var dn={blockquote:Pt,break:Ft,code:It,delete:Lt,emphasis:Rt,footnoteReference:zt,heading:Bt,html:Vt,imageReference:Ut,image:Wt,inlineCode:Gt,linkReference:Kt,link:qt,listItem:Jt,list:Zt,paragraph:Qt,root:$t,strong:en,table:tn,tableCell:rn,tableRow:nn,text:ln,thematicBreak:un,toml:fn,yaml:fn,definition:fn,footnoteDefinition:fn};function fn(){}var pn=typeof self==`object`?self:globalThis,mn=(e,t)=>{switch(e){case`Function`:case`SharedWorker`:case`Worker`:case`eval`:case`setInterval`:case`setTimeout`:throw TypeError(`unable to deserialize `+e)}return new pn[e](t)},hn=(e,t)=>{let n=(t,n)=>(e.set(n,t),t),r=i=>{if(e.has(i))return e.get(i);let[a,o]=t[i];switch(a){case 0:case-1:return n(o,i);case 1:{let e=n([],i);for(let t of o)e.push(r(t));return e}case 2:{let e=n({},i);for(let[t,n]of o)e[r(t)]=r(n);return e}case 3:return n(new Date(o),i);case 4:{let{source:e,flags:t}=o;return n(new RegExp(e,t),i)}case 5:{let e=n(new Map,i);for(let[t,n]of o)e.set(r(t),r(n));return e}case 6:{let e=n(new Set,i);for(let t of o)e.add(r(t));return e}case 7:{let{name:e,message:t}=o;return n(typeof pn[e]==`function`?mn(e,t):Error(t),i)}case 8:return n(BigInt(o),i);case`BigInt`:return n(Object(BigInt(o)),i);case`ArrayBuffer`:return n(new Uint8Array(o).buffer,o);case`DataView`:{let{buffer:e}=new Uint8Array(o);return n(new DataView(e),o)}}return n(mn(a,o),i)};return r},gn=e=>hn(new Map,e)(0),U=``,{toString:_n}={},{keys:vn}=Object,W=e=>{let t=typeof e;if(t!==`object`||!e)return[0,t];let n=_n.call(e).slice(8,-1);switch(n){case`Array`:return[1,U];case`Object`:return[2,U];case`Date`:return[3,U];case`RegExp`:return[4,U];case`Map`:return[5,U];case`Set`:return[6,U];case`DataView`:return[1,n]}return n.includes(`Array`)?[1,n]:e instanceof Error?[7,e.name||`Error`]:[2,n]},yn=([e,t])=>e===0&&(t===`function`||t===`symbol`),bn=(e,t,n,r)=>{let i=(e,t)=>{let i=r.push(e)-1;return n.set(t,i),i},a=r=>{if(n.has(r))return n.get(r);let[o,s]=W(r);switch(o){case 0:{let t=r;switch(s){case`bigint`:o=8,t=r.toString();break;case`function`:case`symbol`:if(e)throw TypeError(`unable to serialize `+s);t=null;break;case`undefined`:return i([-1],r)}return i([o,t],r)}case 1:{if(s){let e=r;return s===`DataView`?e=new Uint8Array(r.buffer):s===`ArrayBuffer`&&(e=new Uint8Array(r)),i([s,[...e]],r)}let e=[],t=i([o,e],r);for(let t of r)e.push(a(t));return t}case 2:{if(s)switch(s){case`BigInt`:return i([s,r.toString()],r);case`Boolean`:case`Number`:case`String`:return i([s,r.valueOf()],r)}if(t&&`toJSON`in r)return a(r.toJSON());let n=[],c=i([o,n],r);for(let t of vn(r))(e||!yn(W(r[t])))&&n.push([a(t),a(r[t])]);return c}case 3:return i([o,isNaN(r.getTime())?U:r.toISOString()],r);case 4:{let{source:e,flags:t}=r;return i([o,{source:e,flags:t}],r)}case 5:{let t=[],n=i([o,t],r);for(let[n,i]of r)(e||!(yn(W(n))||yn(W(i))))&&t.push([a(n),a(i)]);return n}case 6:{let t=[],n=i([o,t],r);for(let n of r)(e||!yn(W(n)))&&t.push(a(n));return n}}let{message:c}=r;return i([o,{name:s,message:c}],r)};return a},xn=(e,{json:t,lossy:n}={})=>{let r=[];return bn(!(t||n),!!t,new Map,r)(e),r},Sn=typeof structuredClone==`function`?(e,t)=>t&&(`json`in t||`lossy`in t)?gn(xn(e,t)):structuredClone(e):(e,t)=>gn(xn(e,t));function Cn(e,t){let n=[{type:`text`,value:`↩`}];return t>1&&n.push({type:`element`,tagName:`sup`,properties:{},children:[{type:`text`,value:String(t)}]}),n}function wn(e,t){return`Back to reference `+(e+1)+(t>1?`-`+t:``)}function Tn(e){let t=typeof e.options.clobberPrefix==`string`?e.options.clobberPrefix:`user-content-`,n=e.options.footnoteBackContent||Cn,r=e.options.footnoteBackLabel||wn,i=e.options.footnoteLabel||`Footnotes`,a=e.options.footnoteLabelTagName||`h2`,o=e.options.footnoteLabelProperties||{className:[`sr-only`]},c=[],l=-1;for(;++l<e.footnoteOrder.length;){let i=e.footnoteById.get(e.footnoteOrder[l]);if(!i)continue;let a=e.all(i),o=String(i.identifier).toUpperCase(),u=s(o.toLowerCase()),d=0,f=[],p=e.footnoteCounts.get(o);for(;p!==void 0&&++d<=p;){f.length>0&&f.push({type:`text`,value:` `});let e=typeof n==`string`?n:n(l,d);typeof e==`string`&&(e={type:`text`,value:e}),f.push({type:`element`,tagName:`a`,properties:{href:`#`+t+`fnref-`+u+(d>1?`-`+d:``),dataFootnoteBackref:``,ariaLabel:typeof r==`string`?r:r(l,d),className:[`data-footnote-backref`]},children:Array.isArray(e)?e:[e]})}let m=a[a.length-1];if(m&&m.type===`element`&&m.tagName===`p`){let e=m.children[m.children.length-1];e&&e.type===`text`?e.value+=` `:m.children.push({type:`text`,value:` `}),m.children.push(...f)}else a.push(...f);let h={type:`element`,tagName:`li`,properties:{id:t+`fn-`+u},children:e.wrap(a,!0)};e.patch(i,h),c.push(h)}if(c.length!==0)return{type:`element`,tagName:`section`,properties:{dataFootnotes:!0,className:[`footnotes`]},children:[{type:`element`,tagName:a,properties:{...Sn(o),id:`footnote-label`},children:[{type:`text`,value:i}]},{type:`text`,value:`
11
- `},{type:`element`,tagName:`ol`,properties:{},children:e.wrap(c,!0)},{type:`text`,value:`
12
- `}]}}var En={}.hasOwnProperty,Dn={};function On(e,t){let n=t||Dn,r=new Map,i=new Map,a={all:s,applyData:An,definitionById:r,footnoteById:i,footnoteCounts:new Map,footnoteOrder:[],handlers:{...dn,...n.handlers},one:o,options:n,patch:kn,wrap:Mn};return _e(e,function(e){if(e.type===`definition`||e.type===`footnoteDefinition`){let t=e.type===`definition`?r:i,n=String(e.identifier).toUpperCase();t.has(n)||t.set(n,e)}}),a;function o(e,t){let n=e.type,r=a.handlers[n];if(En.call(a.handlers,n)&&r)return r(a,e,t);if(a.options.passThrough&&a.options.passThrough.includes(n)){if(`children`in e){let{children:t,...n}=e,r=Sn(n);return r.children=a.all(e),r}return Sn(e)}return(a.options.unknownHandler||jn)(a,e,t)}function s(e){let t=[];if(`children`in e){let n=e.children,r=-1;for(;++r<n.length;){let i=a.one(n[r],e);if(i){if(r&&n[r-1].type===`break`&&(!Array.isArray(i)&&i.type===`text`&&(i.value=Nn(i.value)),!Array.isArray(i)&&i.type===`element`)){let e=i.children[0];e&&e.type===`text`&&(e.value=Nn(e.value))}Array.isArray(i)?t.push(...i):t.push(i)}}}return t}}function kn(e,t){e.position&&(t.position=We(e))}function An(e,t){let n=t;if(e&&e.data){let t=e.data.hName,r=e.data.hChildren,i=e.data.hProperties;typeof t==`string`&&(n.type===`element`?n.tagName=t:n={type:`element`,tagName:t,properties:{},children:`children`in n?n.children:[n]}),n.type===`element`&&i&&Object.assign(n.properties,Sn(i)),`children`in n&&n.children&&r!=null&&(n.children=r)}return n}function jn(e,t){let n=t.data||{},r=`value`in t&&!(En.call(n,`hProperties`)||En.call(n,`hChildren`))?{type:`text`,value:t.value}:{type:`element`,tagName:`div`,properties:{},children:e.all(t)};return e.patch(t,r),e.applyData(t,r)}function Mn(e,t){let n=[],r=-1;for(t&&n.push({type:`text`,value:`
13
- `});++r<e.length;)r&&n.push({type:`text`,value:`
14
- `}),n.push(e[r]);return t&&e.length>0&&n.push({type:`text`,value:`
15
- `}),n}function Nn(e){let t=0,n=e.charCodeAt(t);for(;n===9||n===32;)t++,n=e.charCodeAt(t);return e.slice(t)}function Pn(e,t){let n=On(e,t),r=n.one(e,void 0),i=Tn(n),a=Array.isArray(r)?{type:`root`,children:r}:r||{type:`root`,children:[]};return i&&(I(`children`in a),a.children.push({type:`text`,value:`
16
- `},i)),a}function Fn(e,t){return e&&`run`in e?async function(n,r){let i=Pn(n,{file:r,...t});await e.run(i,r)}:function(n,r){return Pn(n,{file:r,...e||t})}}var In=ie(),Ln=[],Rn={allowDangerousHtml:!0},zn=/^(https?|ircs?|mailto|xmpp)$/i,Bn=[{from:`astPlugins`,id:`remove-buggy-html-in-markdown-parser`},{from:`allowDangerousHtml`,id:`remove-buggy-html-in-markdown-parser`},{from:`allowNode`,id:`replace-allownode-allowedtypes-and-disallowedtypes`,to:`allowElement`},{from:`allowedTypes`,id:`replace-allownode-allowedtypes-and-disallowedtypes`,to:`allowedElements`},{from:`className`,id:`remove-classname`},{from:`disallowedTypes`,id:`replace-allownode-allowedtypes-and-disallowedtypes`,to:`disallowedElements`},{from:`escapeHtml`,id:`remove-buggy-html-in-markdown-parser`},{from:`includeElementIndex`,id:`#remove-includeelementindex`},{from:`includeNodeIndex`,id:`change-includenodeindex-to-includeelementindex`},{from:`linkTarget`,id:`remove-linktarget`},{from:`plugins`,id:`change-plugins-to-remarkplugins`,to:`remarkPlugins`},{from:`rawSourcePos`,id:`#remove-rawsourcepos`},{from:`renderers`,id:`change-renderers-to-components`,to:`components`},{from:`source`,id:`change-source-to-children`,to:`children`},{from:`sourcePos`,id:`#remove-sourcepos`},{from:`transformImageUri`,id:`#add-urltransform`,to:`urlTransform`},{from:`transformLinkUri`,id:`#add-urltransform`,to:`urlTransform`}];function Vn(e){let t=Hn(e),n=Un(e);return Wn(t.runSync(t.parse(n),n),e)}function Hn(e){let t=e.rehypePlugins||Ln,n=e.remarkPlugins||Ln,r=e.remarkRehypeOptions?{...e.remarkRehypeOptions,...Rn}:Rn;return ue().use(Nt).use(n).use(Fn,r).use(t)}function Un(e){let t=e.children||``,n=new ge;return typeof t==`string`?n.value=t:F("Unexpected value `"+t+"` for `children` prop, expected `string`"),n}function Wn(e,t){let n=t.allowedElements,r=t.allowElement,i=t.components,a=t.disallowedElements,o=t.skipHtml,s=t.unwrapDisallowed,c=t.urlTransform||Gn;for(let e of Bn)Object.hasOwn(t,e.from)&&F("Unexpected `"+e.from+"` prop, "+(e.to?"use `"+e.to+"` instead":`remove it`)+` (see <https://github.com/remarkjs/react-markdown/blob/main/changelog.md#`+e.id+`> for more info)`);return n&&a&&F("Unexpected combined `allowedElements` and `disallowedElements`, expected one or the other"),_e(e,l),Ze(e,{Fragment:In.Fragment,components:i,ignoreInvalidStyle:!0,jsx:In.jsx,jsxs:In.jsxs,passKeys:!0,passNode:!0});function l(e,t,i){if(e.type===`raw`&&i&&typeof t==`number`)return o?i.children.splice(t,1):i.children[t]={type:`text`,value:e.value},t;if(e.type===`element`){let t;for(t in vt)if(Object.hasOwn(vt,t)&&Object.hasOwn(e.properties,t)){let n=e.properties[t],r=vt[t];(r===null||r.includes(e.tagName))&&(e.properties[t]=c(String(n||``),t,e))}}if(e.type===`element`){let o=n?!n.includes(e.tagName):a?a.includes(e.tagName):!1;if(!o&&r&&typeof t==`number`&&(o=!r(e,t,i)),o&&i&&typeof t==`number`)return s&&e.children?i.children.splice(t,1,...e.children):i.children.splice(t,1),t}}}function Gn(e){let t=e.indexOf(`:`),n=e.indexOf(`?`),r=e.indexOf(`#`),i=e.indexOf(`/`);return t===-1||i!==-1&&t>i||n!==-1&&t>n||r!==-1&&t>r||zn.test(e.slice(0,t))?e:``}function Kn(e){if(typeof e!=`string`)throw TypeError(`Expected a string`);return e.replace(/[|\\{}()[\]^$+*?.]/g,`\\$&`).replace(/-/g,`\\x2d`)}function qn(e,t,n){let r=he((n||{}).ignore||[]),i=Jn(t),a=-1;for(;++a<i.length;)fe(e,`text`,o);function o(e,t){let n=-1,i;for(;++n<t.length;){let e=t[n],a=i?i.children:void 0;if(r(e,a?a.indexOf(e):void 0,i))return;i=e}if(i)return s(e,t)}function s(e,t){let n=t[t.length-1],r=i[a][0],o=i[a][1],s=0,c=n.children.indexOf(e),l=!1,u=[];r.lastIndex=0;let d=r.exec(e.value);for(;d;){let n=d.index,i={index:d.index,input:d.input,stack:[...t,e]},a=o(...d,i);if(typeof a==`string`&&(a=a.length>0?{type:`text`,value:a}:void 0),a===!1?r.lastIndex=n+1:(s!==n&&u.push({type:`text`,value:e.value.slice(s,n)}),Array.isArray(a)?u.push(...a):a&&u.push(a),s=n+d[0].length,l=!0),!r.global)break;d=r.exec(e.value)}return l?(s<e.value.length&&u.push({type:`text`,value:e.value.slice(s)}),n.children.splice(c,1,...u)):u=[e],c+u.length}}function Jn(e){let t=[];if(!Array.isArray(e))throw TypeError(`Expected find and replace tuple or list of tuples`);let n=!e[0]||Array.isArray(e[0])?e:[e],r=-1;for(;++r<n.length;){let e=n[r];t.push([Yn(e[0]),Xn(e[1])])}return t}function Yn(e){return typeof e==`string`?new RegExp(Kn(e),`g`):e}function Xn(e){return typeof e==`function`?e:function(){return e}}var Zn=`phrasing`,Qn=[`autolink`,`link`,`image`,`label`];function $n(){return{transforms:[sr],enter:{literalAutolink:tr,literalAutolinkEmail:nr,literalAutolinkHttp:nr,literalAutolinkWww:nr},exit:{literalAutolink:or,literalAutolinkEmail:ar,literalAutolinkHttp:rr,literalAutolinkWww:ir}}}function er(){return{unsafe:[{character:`@`,before:`[+\\-.\\w]`,after:`[\\-.\\w]`,inConstruct:Zn,notInConstruct:Qn},{character:`.`,before:`[Ww]`,after:`[\\-.\\w]`,inConstruct:Zn,notInConstruct:Qn},{character:`:`,before:`[ps]`,after:`\\/`,inConstruct:Zn,notInConstruct:Qn}]}}function tr(e){this.enter({type:`link`,title:null,url:``,children:[]},e)}function nr(e){this.config.enter.autolinkProtocol.call(this,e)}function rr(e){this.config.exit.autolinkProtocol.call(this,e)}function ir(e){this.config.exit.data.call(this,e);let t=this.stack[this.stack.length-1];I(t.type===`link`),t.url=`http://`+this.sliceSerialize(e)}function ar(e){this.config.exit.autolinkEmail.call(this,e)}function or(e){this.exit(e)}function sr(e){qn(e,[[/(https?:\/\/|www(?=\.))([-.\w]+)([^ \t\r\n]*)/gi,cr],[/(?<=^|\s|\p{P}|\p{S})([-.\w+]+)@([-\w]+(?:\.[-\w]+)+)/gu,lr]],{ignore:[`link`,`linkReference`]})}function cr(e,t,n,r,i){let a=``;if(!fr(i)||(/^w/i.test(t)&&(n=t+n,t=``,a=`http://`),!ur(n)))return!1;let o=dr(n+r);if(!o[0])return!1;let s={type:`link`,title:null,url:a+t+o[0],children:[{type:`text`,value:t+o[0]}]};return o[1]?[s,{type:`text`,value:o[1]}]:s}function lr(e,t,n,r){return!fr(r,!0)||/[-\d_]$/.test(n)?!1:{type:`link`,title:null,url:`mailto:`+t+`@`+n,children:[{type:`text`,value:t+`@`+n}]}}function ur(e){let t=e.split(`.`);return!(t.length<2||t[t.length-1]&&(/_/.test(t[t.length-1])||!/[a-zA-Z\d]/.test(t[t.length-1]))||t[t.length-2]&&(/_/.test(t[t.length-2])||!/[a-zA-Z\d]/.test(t[t.length-2])))}function dr(e){let t=/[!"&'),.:;<>?\]}]+$/.exec(e);if(!t)return[e,void 0];e=e.slice(0,t.index);let n=t[0],r=n.indexOf(`)`),i=pe(e,`(`),a=pe(e,`)`);for(;r!==-1&&i>a;)e+=n.slice(0,r+1),n=n.slice(r+1),r=n.indexOf(`)`),a++;return[e,n]}function fr(e,t){let n=e.input.charCodeAt(e.index-1);return(e.index===0||u(n)||b(n))&&(!t||n!==47)}Sr.peek=xr;function pr(){this.buffer()}function mr(e){this.enter({type:`footnoteReference`,identifier:``,label:``},e)}function hr(){this.buffer()}function gr(e){this.enter({type:`footnoteDefinition`,identifier:``,label:``,children:[]},e)}function _r(e){let t=this.resume(),n=this.stack[this.stack.length-1];I(n.type===`footnoteReference`),n.identifier=y(this.sliceSerialize(e)).toLowerCase(),n.label=t}function vr(e){this.exit(e)}function yr(e){let t=this.resume(),n=this.stack[this.stack.length-1];I(n.type===`footnoteDefinition`),n.identifier=y(this.sliceSerialize(e)).toLowerCase(),n.label=t}function br(e){this.exit(e)}function xr(){return`[`}function Sr(e,t,n,r){let i=n.createTracker(r),a=i.move(`[^`),o=n.enter(`footnoteReference`),s=n.enter(`reference`);return a+=i.move(n.safe(n.associationId(e),{after:`]`,before:a})),s(),o(),a+=i.move(`]`),a}function Cr(){return{enter:{gfmFootnoteCallString:pr,gfmFootnoteCall:mr,gfmFootnoteDefinitionLabelString:hr,gfmFootnoteDefinition:gr},exit:{gfmFootnoteCallString:_r,gfmFootnoteCall:vr,gfmFootnoteDefinitionLabelString:yr,gfmFootnoteDefinition:br}}}function wr(e){let t=!1;return e&&e.firstLineBlank&&(t=!0),{handlers:{footnoteDefinition:n,footnoteReference:Sr},unsafe:[{character:`[`,inConstruct:[`label`,`phrasing`,`reference`]}]};function n(e,n,r,i){let a=r.createTracker(i),o=a.move(`[^`),s=r.enter(`footnoteDefinition`),c=r.enter(`label`);return o+=a.move(r.safe(r.associationId(e),{before:o,after:`]`})),c(),o+=a.move(`]:`),e.children&&e.children.length>0&&(a.shift(4),o+=a.move((t?`
17
- `:` `)+r.indentLines(r.containerFlow(e,a.current()),t?Er:Tr))),s(),o}}function Tr(e,t,n){return t===0?e:Er(e,t,n)}function Er(e,t,n){return(n?``:` `)+e}var Dr=[`autolink`,`destinationLiteral`,`destinationRaw`,`reference`,`titleQuote`,`titleApostrophe`];Mr.peek=Nr;function Or(){return{canContainEols:[`delete`],enter:{strikethrough:Ar},exit:{strikethrough:jr}}}function kr(){return{unsafe:[{character:`~`,inConstruct:`phrasing`,notInConstruct:Dr}],handlers:{delete:Mr}}}function Ar(e){this.enter({type:`delete`,children:[]},e)}function jr(e){this.exit(e)}function Mr(e,t,n,r){let i=n.createTracker(r),a=n.enter(`strikethrough`),o=i.move(`~~`);return o+=n.containerPhrasing(e,{...i.current(),before:o,after:`~`}),o+=i.move(`~~`),a(),o}function Nr(){return`~`}function Pr(e){return e.length}function Fr(e,t){let n=t||{},r=(n.align||[]).concat(),i=n.stringLength||Pr,a=[],o=[],s=[],c=[],l=0,u=-1;for(;++u<e.length;){let t=[],r=[],a=-1;for(e[u].length>l&&(l=e[u].length);++a<e[u].length;){let o=Ir(e[u][a]);if(n.alignDelimiters!==!1){let e=i(o);r[a]=e,(c[a]===void 0||e>c[a])&&(c[a]=e)}t.push(o)}o[u]=t,s[u]=r}let d=-1;if(typeof r==`object`&&`length`in r)for(;++d<l;)a[d]=Lr(r[d]);else{let e=Lr(r);for(;++d<l;)a[d]=e}d=-1;let f=[],p=[];for(;++d<l;){let e=a[d],t=``,r=``;e===99?(t=`:`,r=`:`):e===108?t=`:`:e===114&&(r=`:`);let i=n.alignDelimiters===!1?1:Math.max(1,c[d]-t.length-r.length),o=t+`-`.repeat(i)+r;n.alignDelimiters!==!1&&(i=t.length+i+r.length,i>c[d]&&(c[d]=i),p[d]=i),f[d]=o}o.splice(1,0,f),s.splice(1,0,p),u=-1;let m=[];for(;++u<o.length;){let e=o[u],t=s[u];d=-1;let r=[];for(;++d<l;){let i=e[d]||``,o=``,s=``;if(n.alignDelimiters!==!1){let e=c[d]-(t[d]||0),n=a[d];n===114?o=` `.repeat(e):n===99?e%2?(o=` `.repeat(e/2+.5),s=` `.repeat(e/2-.5)):(o=` `.repeat(e/2),s=o):s=` `.repeat(e)}n.delimiterStart!==!1&&!d&&r.push(`|`),n.padding!==!1&&!(n.alignDelimiters===!1&&i===``)&&(n.delimiterStart!==!1||d)&&r.push(` `),n.alignDelimiters!==!1&&r.push(o),r.push(i),n.alignDelimiters!==!1&&r.push(s),n.padding!==!1&&r.push(` `),(n.delimiterEnd!==!1||d!==l-1)&&r.push(`|`)}m.push(n.delimiterEnd===!1?r.join(``).replace(/ +$/,``):r.join(``))}return m.join(`
18
- `)}function Ir(e){return e==null?``:String(e)}function Lr(e){let t=typeof e==`string`?e.codePointAt(0):0;return t===67||t===99?99:t===76||t===108?108:t===82||t===114?114:0}function Rr(e,t,n,r){let i=n.enter(`blockquote`),a=n.createTracker(r);a.move(`> `),a.shift(2);let o=n.indentLines(n.containerFlow(e,a.current()),zr);return i(),o}function zr(e,t,n){return`>`+(n?``:` `)+e}function Br(e,t){return Vr(e,t.inConstruct,!0)&&!Vr(e,t.notInConstruct,!1)}function Vr(e,t,n){if(typeof t==`string`&&(t=[t]),!t||t.length===0)return n;let r=-1;for(;++r<t.length;)if(e.includes(t[r]))return!0;return!1}function Hr(e,t,n,r){let i=-1;for(;++i<n.unsafe.length;)if(n.unsafe[i].character===`
19
- `&&Br(n.stack,n.unsafe[i]))return/[ \t]/.test(r.before)?``:` `;return`\\
20
- `}function Ur(e,t){let n=String(e),r=n.indexOf(t),i=r,a=0,o=0;if(typeof t!=`string`)throw TypeError(`Expected substring`);for(;r!==-1;)r===i?++a>o&&(o=a):a=1,i=r+t.length,r=n.indexOf(t,i);return o}function Wr(e,t){return!!(t.options.fences===!1&&e.value&&!e.lang&&/[^ \r\n]/.test(e.value)&&!/^[\t ]*(?:[\r\n]|$)|(?:^|[\r\n])[\t ]*$/.test(e.value))}function Gr(e){let t=e.options.fence||"`";if(t!=="`"&&t!==`~`)throw Error("Cannot serialize code with `"+t+"` for `options.fence`, expected `` ` `` or `~`");return t}function Kr(e,t,n,r){let i=Gr(n),a=e.value||``,o=i==="`"?`GraveAccent`:`Tilde`;if(Wr(e,n)){let e=n.enter(`codeIndented`),t=n.indentLines(a,qr);return e(),t}let s=n.createTracker(r),c=i.repeat(Math.max(Ur(a,i)+1,3)),l=n.enter(`codeFenced`),u=s.move(c);if(e.lang){let t=n.enter(`codeFencedLang${o}`);u+=s.move(n.safe(e.lang,{before:u,after:` `,encode:["`"],...s.current()})),t()}if(e.lang&&e.meta){let t=n.enter(`codeFencedMeta${o}`);u+=s.move(` `),u+=s.move(n.safe(e.meta,{before:u,after:`
21
- `,encode:["`"],...s.current()})),t()}return u+=s.move(`
22
- `),a&&(u+=s.move(a+`
23
- `)),u+=s.move(c),l(),u}function qr(e,t,n){return(n?``:` `)+e}function Jr(e){let t=e.options.quote||`"`;if(t!==`"`&&t!==`'`)throw Error("Cannot serialize title with `"+t+"` for `options.quote`, expected `\"`, or `'`");return t}function Yr(e,t,n,r){let i=Jr(n),a=i===`"`?`Quote`:`Apostrophe`,o=n.enter(`definition`),s=n.enter(`label`),c=n.createTracker(r),l=c.move(`[`);return l+=c.move(n.safe(n.associationId(e),{before:l,after:`]`,...c.current()})),l+=c.move(`]: `),s(),!e.url||/[\0- \u007F]/.test(e.url)?(s=n.enter(`destinationLiteral`),l+=c.move(`<`),l+=c.move(n.safe(e.url,{before:l,after:`>`,...c.current()})),l+=c.move(`>`)):(s=n.enter(`destinationRaw`),l+=c.move(n.safe(e.url,{before:l,after:e.title?` `:`
24
- `,...c.current()}))),s(),e.title&&(s=n.enter(`title${a}`),l+=c.move(` `+i),l+=c.move(n.safe(e.title,{before:l,after:i,...c.current()})),l+=c.move(i),s()),o(),l}function Xr(e){let t=e.options.emphasis||`*`;if(t!==`*`&&t!==`_`)throw Error("Cannot serialize emphasis with `"+t+"` for `options.emphasis`, expected `*`, or `_`");return t}function G(e){return`&#x`+e.toString(16).toUpperCase()+`;`}function Zr(e,t,n){let r=j(e),i=j(t);return r===void 0?i===void 0?n===`_`?{inside:!0,outside:!0}:{inside:!1,outside:!1}:i===1?{inside:!0,outside:!0}:{inside:!1,outside:!0}:r===1?i===void 0?{inside:!1,outside:!1}:i===1?{inside:!0,outside:!0}:{inside:!1,outside:!1}:i===void 0?{inside:!1,outside:!1}:i===1?{inside:!0,outside:!1}:{inside:!1,outside:!1}}Qr.peek=$r;function Qr(e,t,n,r){let i=Xr(n),a=n.enter(`emphasis`),o=n.createTracker(r),s=o.move(i),c=o.move(n.containerPhrasing(e,{after:i,before:s,...o.current()})),l=c.charCodeAt(0),u=Zr(r.before.charCodeAt(r.before.length-1),l,i);u.inside&&(c=G(l)+c.slice(1));let d=c.charCodeAt(c.length-1),f=Zr(r.after.charCodeAt(0),d,i);f.inside&&(c=c.slice(0,-1)+G(d));let p=o.move(i);return a(),n.attentionEncodeSurroundingInfo={after:f.outside,before:u.outside},s+c+p}function $r(e,t,n){return n.options.emphasis||`*`}function ei(e,t){let n=!1;return _e(e,function(e){if(`value`in e&&/\r?\n|\r/.test(e.value)||e.type===`break`)return n=!0,!1}),!!((!e.depth||e.depth<3)&&bt(e)&&(t.options.setext||n))}function ti(e,t,n,r){let i=Math.max(Math.min(6,e.depth||1),1),a=n.createTracker(r);if(ei(e,n)){let t=n.enter(`headingSetext`),r=n.enter(`phrasing`),o=n.containerPhrasing(e,{...a.current(),before:`
25
- `,after:`
26
- `});return r(),t(),o+`
27
- `+(i===1?`=`:`-`).repeat(o.length-(Math.max(o.lastIndexOf(`\r`),o.lastIndexOf(`
28
- `))+1))}let o=`#`.repeat(i),s=n.enter(`headingAtx`),c=n.enter(`phrasing`);a.move(o+` `);let l=n.containerPhrasing(e,{before:`# `,after:`
29
- `,...a.current()});return/^[\t ]/.test(l)&&(l=G(l.charCodeAt(0))+l.slice(1)),l=l?o+` `+l:o,n.options.closeAtx&&(l+=` `+o),c(),s(),l}ni.peek=ri;function ni(e){return e.value||``}function ri(){return`<`}ii.peek=ai;function ii(e,t,n,r){let i=Jr(n),a=i===`"`?`Quote`:`Apostrophe`,o=n.enter(`image`),s=n.enter(`label`),c=n.createTracker(r),l=c.move(`![`);return l+=c.move(n.safe(e.alt,{before:l,after:`]`,...c.current()})),l+=c.move(`](`),s(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(s=n.enter(`destinationLiteral`),l+=c.move(`<`),l+=c.move(n.safe(e.url,{before:l,after:`>`,...c.current()})),l+=c.move(`>`)):(s=n.enter(`destinationRaw`),l+=c.move(n.safe(e.url,{before:l,after:e.title?` `:`)`,...c.current()}))),s(),e.title&&(s=n.enter(`title${a}`),l+=c.move(` `+i),l+=c.move(n.safe(e.title,{before:l,after:i,...c.current()})),l+=c.move(i),s()),l+=c.move(`)`),o(),l}function ai(){return`!`}oi.peek=si;function oi(e,t,n,r){let i=e.referenceType,a=n.enter(`imageReference`),o=n.enter(`label`),s=n.createTracker(r),c=s.move(`![`),l=n.safe(e.alt,{before:c,after:`]`,...s.current()});c+=s.move(l+`][`),o();let u=n.stack;n.stack=[],o=n.enter(`reference`);let d=n.safe(n.associationId(e),{before:c,after:`]`,...s.current()});return o(),n.stack=u,a(),i===`full`||!l||l!==d?c+=s.move(d+`]`):i===`shortcut`?c=c.slice(0,-1):c+=s.move(`]`),c}function si(){return`!`}ci.peek=li;function ci(e,t,n){let r=e.value||``,i="`",a=-1;for(;RegExp("(^|[^`])"+i+"([^`]|$)").test(r);)i+="`";for(/[^ \r\n]/.test(r)&&(/^[ \r\n]/.test(r)&&/[ \r\n]$/.test(r)||/^`|`$/.test(r))&&(r=` `+r+` `);++a<n.unsafe.length;){let e=n.unsafe[a],t=n.compilePattern(e),i;if(e.atBreak)for(;i=t.exec(r);){let e=i.index;r.charCodeAt(e)===10&&r.charCodeAt(e-1)===13&&e--,r=r.slice(0,e)+` `+r.slice(i.index+1)}}return i+r+i}function li(){return"`"}function ui(e,t){let n=bt(e);return!!(!t.options.resourceLink&&e.url&&!e.title&&e.children&&e.children.length===1&&e.children[0].type===`text`&&(n===e.url||`mailto:`+n===e.url)&&/^[a-z][a-z+.-]+:/i.test(e.url)&&!/[\0- <>\u007F]/.test(e.url))}di.peek=fi;function di(e,t,n,r){let i=Jr(n),a=i===`"`?`Quote`:`Apostrophe`,o=n.createTracker(r),s,c;if(ui(e,n)){let t=n.stack;n.stack=[],s=n.enter(`autolink`);let r=o.move(`<`);return r+=o.move(n.containerPhrasing(e,{before:r,after:`>`,...o.current()})),r+=o.move(`>`),s(),n.stack=t,r}s=n.enter(`link`),c=n.enter(`label`);let l=o.move(`[`);return l+=o.move(n.containerPhrasing(e,{before:l,after:`](`,...o.current()})),l+=o.move(`](`),c(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(c=n.enter(`destinationLiteral`),l+=o.move(`<`),l+=o.move(n.safe(e.url,{before:l,after:`>`,...o.current()})),l+=o.move(`>`)):(c=n.enter(`destinationRaw`),l+=o.move(n.safe(e.url,{before:l,after:e.title?` `:`)`,...o.current()}))),c(),e.title&&(c=n.enter(`title${a}`),l+=o.move(` `+i),l+=o.move(n.safe(e.title,{before:l,after:i,...o.current()})),l+=o.move(i),c()),l+=o.move(`)`),s(),l}function fi(e,t,n){return ui(e,n)?`<`:`[`}pi.peek=mi;function pi(e,t,n,r){let i=e.referenceType,a=n.enter(`linkReference`),o=n.enter(`label`),s=n.createTracker(r),c=s.move(`[`),l=n.containerPhrasing(e,{before:c,after:`]`,...s.current()});c+=s.move(l+`][`),o();let u=n.stack;n.stack=[],o=n.enter(`reference`);let d=n.safe(n.associationId(e),{before:c,after:`]`,...s.current()});return o(),n.stack=u,a(),i===`full`||!l||l!==d?c+=s.move(d+`]`):i===`shortcut`?c=c.slice(0,-1):c+=s.move(`]`),c}function mi(){return`[`}function hi(e){let t=e.options.bullet||`*`;if(t!==`*`&&t!==`+`&&t!==`-`)throw Error("Cannot serialize items with `"+t+"` for `options.bullet`, expected `*`, `+`, or `-`");return t}function gi(e){let t=hi(e),n=e.options.bulletOther;if(!n)return t===`*`?`-`:`*`;if(n!==`*`&&n!==`+`&&n!==`-`)throw Error("Cannot serialize items with `"+n+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(n===t)throw Error("Expected `bullet` (`"+t+"`) and `bulletOther` (`"+n+"`) to be different");return n}function _i(e){let t=e.options.bulletOrdered||`.`;if(t!==`.`&&t!==`)`)throw Error("Cannot serialize items with `"+t+"` for `options.bulletOrdered`, expected `.` or `)`");return t}function vi(e){let t=e.options.rule||`*`;if(t!==`*`&&t!==`-`&&t!==`_`)throw Error("Cannot serialize rules with `"+t+"` for `options.rule`, expected `*`, `-`, or `_`");return t}function yi(e,t,n,r){let i=n.enter(`list`),a=n.bulletCurrent,o=e.ordered?_i(n):hi(n),s=e.ordered?o===`.`?`)`:`.`:gi(n),c=t&&n.bulletLastUsed?o===n.bulletLastUsed:!1;if(!e.ordered){let t=e.children?e.children[0]:void 0;if((o===`*`||o===`-`)&&t&&(!t.children||!t.children[0])&&n.stack[n.stack.length-1]===`list`&&n.stack[n.stack.length-2]===`listItem`&&n.stack[n.stack.length-3]===`list`&&n.stack[n.stack.length-4]===`listItem`&&n.indexStack[n.indexStack.length-1]===0&&n.indexStack[n.indexStack.length-2]===0&&n.indexStack[n.indexStack.length-3]===0&&(c=!0),vi(n)===o&&t){let t=-1;for(;++t<e.children.length;){let n=e.children[t];if(n&&n.type===`listItem`&&n.children&&n.children[0]&&n.children[0].type===`thematicBreak`){c=!0;break}}}}c&&(o=s),n.bulletCurrent=o;let l=n.containerFlow(e,r);return n.bulletLastUsed=o,n.bulletCurrent=a,i(),l}function bi(e){let t=e.options.listItemIndent||`one`;if(t!==`tab`&&t!==`one`&&t!==`mixed`)throw Error("Cannot serialize items with `"+t+"` for `options.listItemIndent`, expected `tab`, `one`, or `mixed`");return t}function xi(e,t,n,r){let i=bi(n),a=n.bulletCurrent||hi(n);t&&t.type===`list`&&t.ordered&&(a=(typeof t.start==`number`&&t.start>-1?t.start:1)+(n.options.incrementListMarker===!1?0:t.children.indexOf(e))+a);let o=a.length+1;(i===`tab`||i===`mixed`&&(t&&t.type===`list`&&t.spread||e.spread))&&(o=Math.ceil(o/4)*4);let s=n.createTracker(r);s.move(a+` `.repeat(o-a.length)),s.shift(o);let c=n.enter(`listItem`),l=n.indentLines(n.containerFlow(e,s.current()),u);return c(),l;function u(e,t,n){return t?(n?``:` `.repeat(o))+e:(n?a:a+` `.repeat(o-a.length))+e}}function Si(e,t,n,r){let i=n.enter(`paragraph`),a=n.enter(`phrasing`),o=n.containerPhrasing(e,r);return a(),i(),o}var Ci=he([`break`,`delete`,`emphasis`,`footnote`,`footnoteReference`,`image`,`imageReference`,`inlineCode`,`inlineMath`,`link`,`linkReference`,`mdxJsxTextElement`,`mdxTextExpression`,`strong`,`text`,`textDirective`]);function wi(e,t,n,r){return(e.children.some(function(e){return Ci(e)})?n.containerPhrasing:n.containerFlow).call(n,e,r)}function Ti(e){let t=e.options.strong||`*`;if(t!==`*`&&t!==`_`)throw Error("Cannot serialize strong with `"+t+"` for `options.strong`, expected `*`, or `_`");return t}Ei.peek=Di;function Ei(e,t,n,r){let i=Ti(n),a=n.enter(`strong`),o=n.createTracker(r),s=o.move(i+i),c=o.move(n.containerPhrasing(e,{after:i,before:s,...o.current()})),l=c.charCodeAt(0),u=Zr(r.before.charCodeAt(r.before.length-1),l,i);u.inside&&(c=G(l)+c.slice(1));let d=c.charCodeAt(c.length-1),f=Zr(r.after.charCodeAt(0),d,i);f.inside&&(c=c.slice(0,-1)+G(d));let p=o.move(i+i);return a(),n.attentionEncodeSurroundingInfo={after:f.outside,before:u.outside},s+c+p}function Di(e,t,n){return n.options.strong||`*`}function Oi(e,t,n,r){return n.safe(e.value,r)}function ki(e){let t=e.options.ruleRepetition||3;if(t<3)throw Error("Cannot serialize rules with repetition `"+t+"` for `options.ruleRepetition`, expected `3` or more");return t}function Ai(e,t,n){let r=(vi(n)+(n.options.ruleSpaces?` `:``)).repeat(ki(n));return n.options.ruleSpaces?r.slice(0,-1):r}var ji={blockquote:Rr,break:Hr,code:Kr,definition:Yr,emphasis:Qr,hardBreak:Hr,heading:ti,html:ni,image:ii,imageReference:oi,inlineCode:ci,link:di,linkReference:pi,list:yi,listItem:xi,paragraph:Si,root:wi,strong:Ei,text:Oi,thematicBreak:Ai};function Mi(){return{enter:{table:Ni,tableData:Li,tableHeader:Li,tableRow:Fi},exit:{codeText:Ri,table:Pi,tableData:Ii,tableHeader:Ii,tableRow:Ii}}}function Ni(e){let t=e._align;I(t,"expected `_align` on table"),this.enter({type:`table`,align:t.map(function(e){return e===`none`?null:e}),children:[]},e),this.data.inTable=!0}function Pi(e){this.exit(e),this.data.inTable=void 0}function Fi(e){this.enter({type:`tableRow`,children:[]},e)}function Ii(e){this.exit(e)}function Li(e){this.enter({type:`tableCell`,children:[]},e)}function Ri(e){let t=this.resume();this.data.inTable&&(t=t.replace(/\\([\\|])/g,zi));let n=this.stack[this.stack.length-1];I(n.type===`inlineCode`),n.value=t,this.exit(e)}function zi(e,t){return t===`|`?t:e}function Bi(e){let t=e||{},n=t.tableCellPadding,r=t.tablePipeAlign,i=t.stringLength,a=n?` `:`|`;return{unsafe:[{character:`\r`,inConstruct:`tableCell`},{character:`
30
- `,inConstruct:`tableCell`},{atBreak:!0,character:`|`,after:`[ :-]`},{character:`|`,inConstruct:`tableCell`},{atBreak:!0,character:`:`,after:`-`},{atBreak:!0,character:`-`,after:`[:|-]`}],handlers:{inlineCode:f,table:o,tableCell:c,tableRow:s}};function o(e,t,n,r){return l(u(e,n,r),e.align)}function s(e,t,n,r){let i=l([d(e,n,r)]);return i.slice(0,i.indexOf(`
31
- `))}function c(e,t,n,r){let i=n.enter(`tableCell`),o=n.enter(`phrasing`),s=n.containerPhrasing(e,{...r,before:a,after:a});return o(),i(),s}function l(e,t){return Fr(e,{align:t,alignDelimiters:r,padding:n,stringLength:i})}function u(e,t,n){let r=e.children,i=-1,a=[],o=t.enter(`table`);for(;++i<r.length;)a[i]=d(r[i],t,n);return o(),a}function d(e,t,n){let r=e.children,i=-1,a=[],o=t.enter(`tableRow`);for(;++i<r.length;)a[i]=c(r[i],e,t,n);return o(),a}function f(e,t,n){let r=ji.inlineCode(e,t,n);return n.stack.includes(`tableCell`)&&(r=r.replace(/\|/g,`\\$&`)),r}}function Vi(){return{exit:{taskListCheckValueChecked:Ui,taskListCheckValueUnchecked:Ui,paragraph:Wi}}}function Hi(){return{unsafe:[{atBreak:!0,character:`-`,after:`[:|-]`}],handlers:{listItem:Gi}}}function Ui(e){let t=this.stack[this.stack.length-2];I(t.type===`listItem`),t.checked=e.type===`taskListCheckValueChecked`}function Wi(e){let t=this.stack[this.stack.length-2];if(t&&t.type===`listItem`&&typeof t.checked==`boolean`){let e=this.stack[this.stack.length-1];I(e.type===`paragraph`);let n=e.children[0];if(n&&n.type===`text`){let r=t.children,i=-1,a;for(;++i<r.length;){let e=r[i];if(e.type===`paragraph`){a=e;break}}a===e&&(n.value=n.value.slice(1),n.value.length===0?e.children.shift():e.position&&n.position&&typeof n.position.start.offset==`number`&&(n.position.start.column++,n.position.start.offset++,e.position.start=Object.assign({},n.position.start)))}}this.exit(e)}function Gi(e,t,n,r){let i=e.children[0],a=typeof e.checked==`boolean`&&i&&i.type===`paragraph`,o=`[`+(e.checked?`x`:` `)+`] `,s=n.createTracker(r);a&&s.move(o);let c=ji.listItem(e,t,n,{...r,...s.current()});return a&&(c=c.replace(/^(?:[*+-]|\d+\.)([\r\n]| {1,3})/,l)),c;function l(e){return e+o}}function Ki(){return[$n(),Cr(),Or(),Mi(),Vi()]}function qi(e){return{extensions:[er(),wr(e),kr(),Bi(e),Hi()]}}var Ji={};function Yi(e){let t=this,n=e||Ji,r=t.data(),i=r.micromarkExtensions||=[],a=r.fromMarkdownExtensions||=[],o=r.toMarkdownExtensions||=[];i.push(c(n)),a.push(Ki()),o.push(qi(n))}var K=a(),Xi=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/plugin-webchat/src/ui/chat-nav.tsx`,Zi=(0,z.createContext)(()=>{});function Qi({onNavigate:e,children:t}){return(0,K.jsxDEV)(Zi.Provider,{value:e,children:t},void 0,!1,{fileName:Xi,lineNumber:9,columnNumber:10},this)}function $i(){return(0,z.useContext)(Zi)}var q=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/plugin-webchat/src/ui/chat-markdown.tsx`;function ea({text:e,className:t}){return(0,K.jsxDEV)(`div`,{className:t,children:(0,K.jsxDEV)(Vn,{remarkPlugins:[Yi],components:{a:na,table:ta},children:e},void 0,!1,{fileName:q,lineNumber:21,columnNumber:7},this)},void 0,!1,{fileName:q,lineNumber:20,columnNumber:5},this)}function ta(e){return(0,K.jsxDEV)(`div`,{className:`table-wrapper`,children:(0,K.jsxDEV)(`table`,{children:e.children},void 0,!1,{fileName:q,lineNumber:34,columnNumber:7},this)},void 0,!1,{fileName:q,lineNumber:33,columnNumber:5},this)}function na({href:e,children:t}){let n=$i(),r=o(),i=M(e??``);return i.kind===`internal`?(0,K.jsxDEV)(`a`,{href:i.to,onClick:e=>{e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||(e.preventDefault(),n(),r(i.to))},children:t},void 0,!1,{fileName:q,lineNumber:45,columnNumber:7},this):i.kind===`external`?(0,K.jsxDEV)(`a`,{href:i.href,target:`_blank`,rel:`noopener noreferrer`,children:t},void 0,!1,{fileName:q,lineNumber:62,columnNumber:7},this):(0,K.jsxDEV)(K.Fragment,{children:t},void 0,!1,{fileName:q,lineNumber:67,columnNumber:10},this)}var J=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/plugin-webchat/src/ui/ChatMessages.tsx`;function ra({messages:e,pending:t,pendingReasoning:n,trailing:i}){let{t:a}=r(),o=(0,z.useRef)(null);return(0,z.useEffect)(()=>{let e=o.current;e&&(e.scrollTop=e.scrollHeight)},[e.length,t]),(0,K.jsxDEV)(`div`,{ref:o,"data-chat-list":!0,className:`flex min-h-0 flex-1 flex-col gap-3 overflow-y-auto p-2`,children:[!e.length&&t===null&&n===null?(0,K.jsxDEV)(`div`,{className:`flex-1 grid place-items-center text-muted text-sm`,children:a(`webchat.empty`)},void 0,!1,{fileName:J,lineNumber:39,columnNumber:9},this):(0,K.jsxDEV)(K.Fragment,{children:[e.map(e=>(0,K.jsxDEV)(ia,{role:e.role,text:e.text,reasoning:e.reasoning,attachments:e.attachments},e.msgId,!1,{fileName:J,lineNumber:43,columnNumber:13},this)),t!==null&&(0,K.jsxDEV)(ia,{role:`assistant`,text:t||a(`webchat.thinking`),reasoning:n},void 0,!1,{fileName:J,lineNumber:46,columnNumber:13},this)]},void 0,!0,{fileName:J,lineNumber:41,columnNumber:9},this),i]},void 0,!0,{fileName:J,lineNumber:37,columnNumber:5},this)}var ia=(0,z.memo)(function({role:e,text:t,reasoning:n,attachments:i}){let{t:a}=r();return e===`user`?(0,K.jsxDEV)(`div`,{className:`self-end max-w-[85%] rounded-2xl bg-accent/15 px-3 py-2 text-[0.8125rem] whitespace-pre-wrap break-words`,children:[i?.length?(0,K.jsxDEV)(`div`,{className:`mb-1.5 flex flex-wrap gap-1`,children:i.map(e=>(0,K.jsxDEV)(`span`,{className:`inline-flex max-w-full items-center rounded-md bg-bg/60 px-1.5 py-0.5 text-xs`,title:e.name,children:e.label??e.name},e.name,!1,{fileName:J,lineNumber:80,columnNumber:15},this))},void 0,!1,{fileName:J,lineNumber:78,columnNumber:11},this):null,t]},void 0,!0,{fileName:J,lineNumber:76,columnNumber:7},this):(0,K.jsxDEV)(`div`,{className:`self-start max-w-[95%] min-w-0 rounded-2xl bg-elevated px-3 py-2 text-sm break-words`,children:[n?(0,K.jsxDEV)(`details`,{className:`mb-2 rounded-lg border border-border px-2 py-1`,children:[(0,K.jsxDEV)(`summary`,{className:`cursor-pointer select-none text-xs text-muted`,children:a(`webchat.reasoning`)},void 0,!1,{fileName:J,lineNumber:99,columnNumber:11},this),(0,K.jsxDEV)(ea,{text:n,className:`md-static md-chat md-chat-sub mt-1 text-muted`},void 0,!1,{fileName:J,lineNumber:100,columnNumber:11},this)]},void 0,!0,{fileName:J,lineNumber:98,columnNumber:9},this):null,(0,K.jsxDEV)(ea,{text:t,className:`md-static md-chat`},void 0,!1,{fileName:J,lineNumber:103,columnNumber:7},this)]},void 0,!0,{fileName:J,lineNumber:95,columnNumber:5},this)}),Y=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/plugin-webchat/src/ui/AgentPicker.tsx`,aa=5;function oa({quality:e,time:t,hint:n}){let{t:i}=r();if(e===void 0||t===void 0)return n?(0,K.jsxDEV)(`span`,{className:`shrink-0 text-muted`,children:n},void 0,!1,{fileName:Y,lineNumber:26,columnNumber:19},this):null;let a=e!==t;return(0,K.jsxDEV)(`span`,{className:`flex shrink-0 items-center gap-1.5 text-muted tabular-nums`,children:[(0,K.jsxDEV)(`span`,{className:`flex items-center gap-0.5`,title:i(`webchat.quality`,{value:e}),children:[e,(0,K.jsxDEV)(T,{size:11,"aria-hidden":!0,className:`shrink-0`},void 0,!1,{fileName:Y,lineNumber:36,columnNumber:9},this),(0,K.jsxDEV)(`span`,{className:`sr-only`,children:i(`webchat.quality`,{value:e})},void 0,!1,{fileName:Y,lineNumber:37,columnNumber:9},this)]},void 0,!0,{fileName:Y,lineNumber:34,columnNumber:7},this),a?(0,K.jsxDEV)(`span`,{className:`flex items-center gap-0.5`,title:i(`webchat.time`,{value:t}),children:[t,(0,K.jsxDEV)(v,{size:11,"aria-hidden":!0,className:`shrink-0`},void 0,!1,{fileName:Y,lineNumber:42,columnNumber:11},this),(0,K.jsxDEV)(`span`,{className:`sr-only`,children:i(`webchat.time`,{value:t})},void 0,!1,{fileName:Y,lineNumber:43,columnNumber:11},this)]},void 0,!0,{fileName:Y,lineNumber:40,columnNumber:9},this):(0,K.jsxDEV)(`span`,{className:`sr-only`,children:i(`webchat.time`,{value:t})},void 0,!1,{fileName:Y,lineNumber:46,columnNumber:9},this)]},void 0,!0,{fileName:Y,lineNumber:33,columnNumber:5},this)}function sa(e,t){if(t||e.length<2||e.length>aa)return null;let n=Array.from({length:e.length});for(let t of e){let r=t.quality;if(r===void 0||!Number.isInteger(r)||r<1||r>e.length||n[r-1])return null;n[r-1]=t}return n.every(e=>e!==void 0)?n:null}function ca({agents:e,defaultAgentId:t,selection:n,onChange:i}){let{t:a}=r(),[o,s]=(0,z.useState)(!1),[c,l]=(0,z.useState)(null),u=(0,z.useRef)(null),d=(0,z.useRef)(null);(0,z.useEffect)(()=>{if(!o)return;function e(e){u.current&&!u.current.contains(e.target)&&s(!1)}function t(e){e.key===`Escape`&&(s(!1),d.current?.focus())}return document.addEventListener(`pointerdown`,e),document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`pointerdown`,e),document.removeEventListener(`keydown`,t)}},[o]);let f=e.length>1,p=e.flatMap(e=>e.presets.map(t=>({agentId:e.id,presetId:t.id,label:f?`${e.title} · ${t.title}`:t.title,hint:t.hint,quality:t.quality,time:t.time,isDefault:t.default===!0})));if(p.length===0)return null;let m=p.find(e=>e.agentId===n.agentId&&e.presetId===n.presetId)??p.find(e=>e.agentId===t&&e.isDefault)??p.find(e=>e.isDefault)??p[0],h=sa(p,f);if(h){let e=h.indexOf(m)+1,t=c??e,n=(e,t)=>`${e.label} · ${a(`webchat.level`,{value:t,max:h.length})}`;return(0,K.jsxDEV)(`ul`,{"aria-label":a(`webchat.agentPicker`),className:`flex shrink-0 items-center`,onPointerLeave:()=>l(null),children:h.map((e,r)=>{let a=r+1;return(0,K.jsxDEV)(`li`,{children:(0,K.jsxDEV)(`button`,{type:`button`,...e===m?{"aria-current":!0}:{},"aria-label":n(e,a),className:`flex rounded p-1 focus-visible:outline-2 focus-visible:outline-accent`,onPointerEnter:()=>l(a),onFocus:()=>l(a),onBlur:()=>l(null),onClick:()=>i({agentId:e.agentId,presetId:e.presetId}),children:(0,K.jsxDEV)(T,{size:16,"aria-hidden":!0,className:a<=t?`fill-yellow-400 text-yellow-400`:`text-border`},void 0,!1,{fileName:Y,lineNumber:180,columnNumber:17},this)},void 0,!1,{fileName:Y,lineNumber:165,columnNumber:15},this)},`${e.agentId}/${e.presetId}`,!1,{fileName:Y,lineNumber:164,columnNumber:13},this)})},void 0,!1,{fileName:Y,lineNumber:156,columnNumber:7},this)}return(0,K.jsxDEV)(`div`,{className:`relative`,ref:u,children:[(0,K.jsxDEV)(`button`,{ref:d,type:`button`,"aria-haspopup":`menu`,"aria-expanded":o,className:`flex items-center gap-1 rounded-md px-2 py-1 text-xs text-muted hover:text-text focus-visible:outline-2 focus-visible:outline-accent`,onClick:()=>s(e=>!e),children:[(0,K.jsxDEV)(`span`,{className:`max-w-40 truncate`,children:m.label},void 0,!1,{fileName:Y,lineNumber:203,columnNumber:9},this),(0,K.jsxDEV)(ne,{size:12,className:`shrink-0`},void 0,!1,{fileName:Y,lineNumber:204,columnNumber:9},this)]},void 0,!0,{fileName:Y,lineNumber:195,columnNumber:7},this),o&&(0,K.jsxDEV)(`ul`,{"aria-label":a(`webchat.agentPicker`),className:`absolute bottom-full left-0 z-10 mb-1 max-h-64 w-64 max-w-[calc(100vw-2rem)] overflow-y-auto rounded-md border border-border bg-elevated py-1 shadow-lg`,children:p.map(e=>{let t=e===m;return(0,K.jsxDEV)(`li`,{children:(0,K.jsxDEV)(`button`,{type:`button`,...t?{"aria-current":!0}:{},className:`flex w-full items-center gap-2 px-2 py-1.5 text-left text-xs hover:bg-surface focus-visible:outline-2 focus-visible:outline-accent`,onClick:()=>{s(!1),i({agentId:e.agentId,presetId:e.presetId})},children:[(0,K.jsxDEV)(N,{size:12,className:t?`shrink-0 text-accent`:`shrink-0 opacity-0`},void 0,!1,{fileName:Y,lineNumber:232,columnNumber:19},this),(0,K.jsxDEV)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.label},void 0,!1,{fileName:Y,lineNumber:233,columnNumber:19},this),(0,K.jsxDEV)(oa,{quality:e.quality,time:e.time,hint:e.hint},void 0,!1,{fileName:Y,lineNumber:234,columnNumber:19},this)]},void 0,!0,{fileName:Y,lineNumber:223,columnNumber:17},this)},`${e.agentId}/${e.presetId}`,!1,{fileName:Y,lineNumber:222,columnNumber:15},this)})},void 0,!1,{fileName:Y,lineNumber:212,columnNumber:9},this)]},void 0,!0,{fileName:Y,lineNumber:194,columnNumber:5},this)}var X=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/plugin-webchat/src/ui/ChatComposer.tsx`;function la({streaming:e,onSend:t,onStop:n,attachments:i,uploading:a,uploadError:o,uploadProgress:s,canRetryUpload:c,onRetryUpload:l,onPickFiles:u,onRemoveAttachment:d,agents:f,defaultAgentId:p,selection:m,onChooseAgent:h,attachmentsAllowed:g}){let{t:v}=r(),[y,b]=(0,z.useState)(``);function x(){!y.trim()||e||t(y.trim(),i)&&b(``)}return(0,K.jsxDEV)(`div`,{className:`flex shrink-0 flex-col gap-2 border-t border-border p-2`,children:[(i.length>0||a||o)&&(0,K.jsxDEV)(`div`,{className:`flex flex-wrap items-center gap-1.5 px-1`,"data-chat-attachments":!0,children:[i.map((e,t)=>(0,K.jsxDEV)(`span`,{className:`inline-flex min-w-0 max-w-full items-center gap-1 rounded-md bg-elevated px-2 py-1 text-xs`,children:[(0,K.jsxDEV)(ee,{size:13,className:`shrink-0 text-muted`},void 0,!1,{fileName:X,lineNumber:65,columnNumber:15},this),(0,K.jsxDEV)(`span`,{className:`max-w-48 truncate`,children:e.label??e.name},void 0,!1,{fileName:X,lineNumber:66,columnNumber:15},this),(0,K.jsxDEV)(`button`,{type:`button`,"aria-label":v(`webchat.removeAttachment`,{name:e.label??e.name}),className:`shrink-0 rounded p-0.5 text-muted hover:text-danger`,onClick:()=>d(t),children:(0,K.jsxDEV)(te,{size:13},void 0,!1,{fileName:X,lineNumber:73,columnNumber:17},this)},void 0,!1,{fileName:X,lineNumber:67,columnNumber:15},this)]},`${e.name}-${t}`,!0,{fileName:X,lineNumber:61,columnNumber:13},this)),a&&(0,K.jsxDEV)(`div`,{className:`flex min-w-32 flex-1 items-center gap-2`,"aria-label":v(`webchat.uploading`),children:[(0,K.jsxDEV)(_,{size:14,className:`shrink-0 animate-spin text-muted`},void 0,!1,{fileName:X,lineNumber:79,columnNumber:15},this),(0,K.jsxDEV)(`div`,{role:`progressbar`,"aria-label":v(`webchat.uploadProgress`),"aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":s,className:`h-1.5 min-w-0 flex-1 overflow-hidden rounded-full bg-border`,children:(0,K.jsxDEV)(`div`,{className:`h-full rounded-full bg-accent transition-[width]`,style:{width:`${s}%`}},void 0,!1,{fileName:X,lineNumber:88,columnNumber:17},this)},void 0,!1,{fileName:X,lineNumber:80,columnNumber:15},this),(0,K.jsxDEV)(`span`,{className:`text-xs tabular-nums text-muted`,children:[s,`%`]},void 0,!0,{fileName:X,lineNumber:93,columnNumber:15},this)]},void 0,!0,{fileName:X,lineNumber:78,columnNumber:13},this),o&&(0,K.jsxDEV)(`div`,{className:`flex min-w-0 flex-1 items-center gap-2 text-xs text-danger`,children:[(0,K.jsxDEV)(`span`,{className:`min-w-0 flex-1`,children:v(o)},void 0,!1,{fileName:X,lineNumber:98,columnNumber:15},this),c&&(0,K.jsxDEV)(`button`,{type:`button`,className:`inline-flex shrink-0 items-center gap-1 rounded px-1.5 py-0.5 font-medium text-accent hover:bg-elevated`,onClick:l,children:[(0,K.jsxDEV)(E,{size:12},void 0,!1,{fileName:X,lineNumber:105,columnNumber:19},this),` `,v(`webchat.retryUpload`)]},void 0,!0,{fileName:X,lineNumber:100,columnNumber:17},this)]},void 0,!0,{fileName:X,lineNumber:97,columnNumber:13},this)]},void 0,!0,{fileName:X,lineNumber:59,columnNumber:9},this),(0,K.jsxDEV)(`div`,{className:`flex flex-col gap-1`,children:[(0,K.jsxDEV)(`textarea`,{className:`w-full resize-none rounded-lg border border-border bg-bg px-3 py-2 text-sm max-h-32`,rows:1,value:y,placeholder:v(`webchat.placeholder`),onChange:e=>b(e.target.value),onKeyDown:e=>{e.key===`Enter`&&!e.shiftKey&&(e.preventDefault(),x())}},void 0,!1,{fileName:X,lineNumber:115,columnNumber:9},this),(0,K.jsxDEV)(`div`,{className:`flex items-center gap-1`,children:[g&&(0,K.jsxDEV)(`label`,{"aria-label":v(`webchat.attach`),className:`shrink-0 cursor-pointer rounded-lg p-1.5 text-muted hover:bg-elevated hover:text-accent ${a?`pointer-events-none opacity-60`:``}`,children:[(0,K.jsxDEV)(be,{size:18},void 0,!1,{fileName:X,lineNumber:135,columnNumber:15},this),(0,K.jsxDEV)(`input`,{type:`file`,multiple:!0,className:`hidden`,disabled:a,onChange:e=>{e.target.files?.length&&u(e.target.files),e.currentTarget.value=``}},void 0,!1,{fileName:X,lineNumber:136,columnNumber:15},this)]},void 0,!0,{fileName:X,lineNumber:131,columnNumber:13},this),(0,K.jsxDEV)(ca,{agents:f,defaultAgentId:p,selection:m,onChange:h},void 0,!1,{fileName:X,lineNumber:148,columnNumber:11},this),(0,K.jsxDEV)(`div`,{className:`flex-1`},void 0,!1,{fileName:X,lineNumber:149,columnNumber:11},this),e?(0,K.jsxDEV)(`button`,{"aria-label":v(`webchat.stop`),className:`shrink-0 rounded-lg p-1.5 hover:bg-elevated`,onClick:n,children:(0,K.jsxDEV)(O,{size:18},void 0,!1,{fileName:X,lineNumber:156,columnNumber:15},this)},void 0,!1,{fileName:X,lineNumber:151,columnNumber:13},this):(0,K.jsxDEV)(`button`,{"aria-label":v(`webchat.send`),className:`shrink-0 rounded-lg p-1.5 hover:bg-elevated`,onClick:x,children:(0,K.jsxDEV)(xe,{size:18},void 0,!1,{fileName:X,lineNumber:164,columnNumber:15},this)},void 0,!1,{fileName:X,lineNumber:159,columnNumber:13},this)]},void 0,!0,{fileName:X,lineNumber:129,columnNumber:9},this)]},void 0,!0,{fileName:X,lineNumber:114,columnNumber:7},this)]},void 0,!0,{fileName:X,lineNumber:57,columnNumber:5},this)}var Z=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/plugin-webchat/src/ui/ChatThreadList.tsx`;function ua({threads:e,activeId:t,onOpen:n,onNew:i,className:a=`w-[220px] shrink-0`}){let{t:o}=r();return(0,K.jsxDEV)(`aside`,{"aria-label":o(`webchat.threads`),className:`${a} border-r border-border flex flex-col`,children:[(0,K.jsxDEV)(`button`,{className:`flex items-center gap-2 px-3 py-2 text-sm hover:bg-elevated`,onClick:i,children:[(0,K.jsxDEV)(C,{size:16},void 0,!1,{fileName:Z,lineNumber:23,columnNumber:9},this),` `,o(`webchat.newConversation`)]},void 0,!0,{fileName:Z,lineNumber:22,columnNumber:7},this),(0,K.jsxDEV)(`div`,{className:`flex-1 overflow-y-auto`,children:e.map(e=>(0,K.jsxDEV)(`button`,{onClick:()=>n(e.convId),className:`block w-full truncate px-3 py-2 text-left text-sm hover:bg-elevated ${e.convId===t?`bg-elevated font-medium`:``}`,children:e.title||o(`webchat.newConversation`)},e.convId,!1,{fileName:Z,lineNumber:27,columnNumber:11},this))},void 0,!1,{fileName:Z,lineNumber:25,columnNumber:7},this)]},void 0,!0,{fileName:Z,lineNumber:21,columnNumber:5},this)}var da=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/plugin-webchat/src/ui/SuggestionChips.tsx`;function fa({items:e,onPick:t}){let{t:n}=r();return e?.length?(0,K.jsxDEV)(`div`,{role:`group`,"aria-label":n(`webchat.suggestions`),className:`flex flex-wrap gap-1.5 px-2 pb-1.5`,children:e.map((e,n)=>(0,K.jsxDEV)(`button`,{type:`button`,title:e,className:`max-w-full truncate rounded-full border border-border bg-elevated px-3 py-1 text-xs text-text hover:border-border2 hover:bg-surface focus-visible:outline-2 focus-visible:outline-accent`,onClick:()=>t(e),children:e},`${n}-${e}`,!1,{fileName:da,lineNumber:24,columnNumber:9},this))},void 0,!1,{fileName:da,lineNumber:22,columnNumber:5},this):null}var Q=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/plugin-webchat/src/ui/ChatWidget.tsx`,pa=25*1024*1024;function ma(e){return Array.from(e.dataTransfer.types).includes(`Files`)}function ha({children:e,onFiles:t,className:n}){let{t:i}=r(),[a,o]=(0,z.useState)(!1),s=(0,z.useRef)(0);function c(e){ma(e)&&(e.preventDefault(),s.current+=1,o(!0))}function l(e){ma(e)&&(e.preventDefault(),s.current=Math.max(0,s.current-1),s.current===0&&o(!1))}function u(e){ma(e)&&(e.preventDefault(),s.current=0,o(!1),t(Array.from(e.dataTransfer.files)))}return(0,K.jsxDEV)(`div`,{className:n,onDragEnter:c,onDragLeave:l,onDragOver:e=>{ma(e)&&(e.preventDefault(),e.dataTransfer.dropEffect=`copy`)},onDrop:u,children:[e,a&&(0,K.jsxDEV)(`div`,{"data-chat-drop-overlay":!0,"data-testid":`chat-drop-overlay`,className:`pointer-events-none absolute inset-0 z-50 grid place-items-center bg-surface/95 p-6 text-center backdrop-blur-sm`,children:(0,K.jsxDEV)(`div`,{className:`flex h-full w-full flex-col items-center justify-center rounded-2xl border-2 border-dashed border-accent bg-accent/10 text-accent`,children:[(0,K.jsxDEV)(A,{size:34},void 0,!1,{fileName:Q,lineNumber:83,columnNumber:13},this),(0,K.jsxDEV)(`span`,{className:`mt-3 text-base font-medium`,children:i(`webchat.dropFiles`)},void 0,!1,{fileName:Q,lineNumber:84,columnNumber:13},this),(0,K.jsxDEV)(`span`,{className:`mt-1 text-xs text-muted`,children:i(`webchat.dropFilesHint`)},void 0,!1,{fileName:Q,lineNumber:85,columnNumber:13},this)]},void 0,!0,{fileName:Q,lineNumber:82,columnNumber:11},this)},void 0,!1,{fileName:Q,lineNumber:77,columnNumber:9},this)]},void 0,!0,{fileName:Q,lineNumber:59,columnNumber:5},this)}function $(e){return e?[`bubble`,`panel`,`modal`]:[`bubble`,`modal`]}function ga(e){return $(e)[1]}function _a(e,t,n){let r=$(t),i=r.indexOf(e)+n;return r[Math.min(r.length-1,Math.max(0,i))]}function va(){let{t:e}=r(),t=je(),n=Me(),[i,a]=(0,z.useState)(`bubble`),[o,s]=(0,z.useState)(!1),[c,l]=(0,z.useState)([]),[u,f]=(0,z.useState)(!1),[p,h]=(0,z.useState)(0),[g,_]=(0,z.useState)(null),[v,y]=(0,z.useState)([]),b=D(`sm`,640),x=(0,z.useCallback)(()=>{a(ga(b))},[b]),T=(0,z.useRef)(null),E=(0,z.useRef)(`bubble`);(0,z.useEffect)(()=>{if(i!==`modal`)return;let e=e=>{e.key===`Escape`&&a(_a(`modal`,b,-1))};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[i,b]),(0,z.useEffect)(()=>{$(b).includes(i)||a(ga(b))},[i,b]),(0,z.useEffect)(()=>{i===`panel`&&E.current===`modal`&&T.current?.focus(),i!==`modal`&&s(!1),E.current=i},[i]),(0,z.useEffect)(()=>{if(i!==`modal`)return;let e=document.body.style.overflow;return document.body.style.overflow=`hidden`,()=>{document.body.style.overflow=e}},[i]);let O=i!==`bubble`;(0,z.useEffect)(()=>{O&&t.loadThreads()},[O,t.loadThreads]);let{convId:k,newConversation:A}=t;(0,z.useEffect)(()=>{O&&k===null&&A()},[O,k,A]);function j(){t.newConversation(),l([]),_(null),y([]),s(!1)}let M=(0,z.useCallback)(async e=>{if(!e.length)return;_(null),y([]),f(!0),h(0);let t=[],n=[],r=null;for(let i of e){if(i.size>pa){r??=`webchat.uploadTooLarge`;continue}try{h(0);let e=await d(i,h);e?t.push({...e,label:i.name}):(n.push(i),r??=`webchat.uploadFailed`)}catch{n.push(i),r??=`webchat.uploadFailed`}}t.length&&l(e=>[...e,...t]),f(!1),h(0),y(n),r&&_(r)},[]),ee=(0,z.useCallback)(()=>{v.length&&M(v)},[M,v]),N=(0,z.useCallback)((e,r)=>{let i=r.length?t.send(e,n,r):t.send(e,n);return i&&(l([]),_(null),y([])),i},[t,n]),P=t.messages.length>0||t.pending!==null,ne=(0,K.jsxDEV)(`div`,{className:`flex shrink-0 items-center justify-between border-b border-border px-3 py-2`,children:[(0,K.jsxDEV)(`span`,{className:`text-sm font-medium`,children:e(`webchat.title`)},void 0,!1,{fileName:Q,lineNumber:272,columnNumber:7},this),(0,K.jsxDEV)(`div`,{className:`flex items-center gap-1`,children:[i===`modal`&&!b&&(0,K.jsxDEV)(`button`,{"aria-label":e(`webchat.threads`),"aria-expanded":o,className:`rounded p-1 hover:bg-elevated`,onClick:()=>s(e=>!e),children:(0,K.jsxDEV)(re,{size:16},void 0,!1,{fileName:Q,lineNumber:283,columnNumber:13},this)},void 0,!1,{fileName:Q,lineNumber:277,columnNumber:11},this),P&&(0,K.jsxDEV)(`button`,{"aria-label":e(`webchat.newConversation`),className:`rounded p-1 hover:bg-elevated`,onClick:j,children:(0,K.jsxDEV)(C,{size:16},void 0,!1,{fileName:Q,lineNumber:296,columnNumber:13},this)},void 0,!1,{fileName:Q,lineNumber:291,columnNumber:11},this),$(b).includes(`panel`)&&(0,K.jsxDEV)(`button`,{ref:T,"aria-label":e(i===`modal`?`webchat.collapse`:`webchat.expand`),className:`rounded p-1 hover:bg-elevated`,onClick:()=>a(_a(i,b,i===`modal`?-1:1)),children:i===`modal`?(0,K.jsxDEV)(ye,{size:16},void 0,!1,{fileName:Q,lineNumber:308,columnNumber:33},this):(0,K.jsxDEV)(ve,{size:16},void 0,!1,{fileName:Q,lineNumber:308,columnNumber:59},this)},void 0,!1,{fileName:Q,lineNumber:302,columnNumber:11},this),(0,K.jsxDEV)(`button`,{"aria-label":e(`webchat.close`),className:`rounded p-1 hover:bg-elevated`,onClick:()=>a(`bubble`),children:(0,K.jsxDEV)(te,{size:16},void 0,!1,{fileName:Q,lineNumber:316,columnNumber:11},this)},void 0,!1,{fileName:Q,lineNumber:311,columnNumber:9},this)]},void 0,!0,{fileName:Q,lineNumber:273,columnNumber:7},this)]},void 0,!0,{fileName:Q,lineNumber:271,columnNumber:5},this),ie=(0,K.jsxDEV)(Qi,{onNavigate:x,children:(0,K.jsxDEV)(`div`,{className:`flex min-h-0 min-w-0 flex-1 flex-col`,children:[t.error&&(0,K.jsxDEV)(`div`,{className:`px-3 py-2 text-sm text-danger`,children:e(`webchat.error`,{message:t.error})},void 0,!1,{fileName:Q,lineNumber:328,columnNumber:11},this),(0,K.jsxDEV)(ra,{messages:t.messages,pending:t.pending,pendingReasoning:t.pendingReasoning,trailing:t.messages.length===0?(0,K.jsxDEV)(fa,{items:t.starters,onPick:e=>N(e,c)},void 0,!1,{fileName:Q,lineNumber:336,columnNumber:15},this):(0,K.jsxDEV)(fa,{items:t.suggestions,onPick:e=>N(e,c)},void 0,!1,{fileName:Q,lineNumber:338,columnNumber:15},this)},void 0,!1,{fileName:Q,lineNumber:330,columnNumber:9},this),(0,K.jsxDEV)(la,{streaming:t.pending!==null,attachments:c,uploading:u,uploadProgress:p,uploadError:g,canRetryUpload:v.length>0&&!u,onRetryUpload:ee,onPickFiles:e=>void M(Array.from(e)),onRemoveAttachment:e=>l(t=>t.filter((t,n)=>n!==e)),agents:t.agents,defaultAgentId:t.defaultAgentId,selection:t.selection,onChooseAgent:t.chooseAgent,attachmentsAllowed:t.attachmentsAllowed,onSend:N,onStop:t.stop},void 0,!1,{fileName:Q,lineNumber:342,columnNumber:9},this)]},void 0,!0,{fileName:Q,lineNumber:326,columnNumber:7},this)},void 0,!1,{fileName:Q,lineNumber:323,columnNumber:5},this);if(i===`bubble`)return(0,K.jsxDEV)(`button`,{"aria-label":e(`webchat.open`),onClick:()=>a(ga(b)),className:`fixed bottom-20 right-4 z-40 grid h-14 w-14 place-items-center rounded-full bg-accent text-white shadow-lg nav:bottom-4`,children:(0,K.jsxDEV)(w,{size:24},void 0,!1,{fileName:Q,lineNumber:374,columnNumber:9},this)},void 0,!1,{fileName:Q,lineNumber:366,columnNumber:7},this);if(i===`panel`)return(0,K.jsxDEV)(ha,{onFiles:M,className:`fixed bottom-20 right-4 z-40 flex h-[560px] max-h-[80dvh] w-[380px] max-w-[calc(100vw-2rem)] flex-col overflow-hidden rounded-2xl border border-border bg-surface shadow-xl nav:bottom-4`,children:[ne,ie]},void 0,!0,{fileName:Q,lineNumber:381,columnNumber:7},this);let F=b||o;return(0,K.jsxDEV)(S,{open:!0,modal:!1,onOpenChange:e=>!e&&a(_a(`modal`,b,-1)),children:[(0,K.jsxDEV)(`div`,{"data-chat-backdrop":!0,"aria-hidden":`true`,className:`fixed inset-0 z-[45] bg-black/50 backdrop-blur-sm`},void 0,!1,{fileName:Q,lineNumber:404,columnNumber:7},this),(0,K.jsxDEV)(m,{hideClose:!0,className:`h-[85dvh] w-full p-0 md:h-[85dvh] md:w-[80vw] md:max-w-[1040px] md:overflow-y-hidden`,children:(0,K.jsxDEV)(ha,{onFiles:M,className:`h-full`,children:(0,K.jsxDEV)(`div`,{className:`flex h-full min-h-0 flex-col`,children:[ne,(0,K.jsxDEV)(`div`,{className:`flex min-h-0 flex-1`,children:[F&&(0,K.jsxDEV)(ua,{threads:t.threads,activeId:t.convId,onOpen:e=>{t.open(e),l([]),_(null),y([]),s(!1)},onNew:j,className:b?`w-[220px] shrink-0`:`w-full`},void 0,!1,{fileName:Q,lineNumber:419,columnNumber:17},this),(b||!o)&&ie]},void 0,!0,{fileName:Q,lineNumber:417,columnNumber:13},this)]},void 0,!0,{fileName:Q,lineNumber:415,columnNumber:11},this)},void 0,!1,{fileName:Q,lineNumber:414,columnNumber:9},this)},void 0,!1,{fileName:Q,lineNumber:410,columnNumber:7},this)]},void 0,!0,{fileName:Q,lineNumber:401,columnNumber:5},this)}export{va as ChatWidget,va as default,$ as chatModes,ga as restingMode,_a as stepMode};
@@ -1 +0,0 @@
1
- import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t,t as n}from"./i18n-vendor-T6EnJ_TL.js";import{r,t as i}from"./react-vendor-CzSUaSLk.js";import{$n as a,Zn as o,cr as s,lr as c}from"./src-C9WAFG8V.js";import{l}from"./phone-input-vooQJZf_.js";import{_ as u,m as d,p as f}from"./api-ChM6smRq.js";import{n as p}from"./auth-context-CGdGFadP.js";import{t as m}from"./version-CtfLXkhy.js";var h=e(t(),1),g=i(),_=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/DiagnosticsPage.tsx`;function v(){let{t:e}=n(),{role:t}=p(),[i,v]=(0,h.useState)(null),[b,x]=(0,h.useState)([]),[S,C]=(0,h.useState)(null),[w,T]=(0,h.useState)(`loading`),[E,D]=(0,h.useState)(!0),[O,k]=(0,h.useState)(!1),A=(0,h.useCallback)(async()=>{D(!0),k(!1),T(`loading`);let e=fetch(`/health`).then(e=>T(e.ok?`ok`:`error`)).catch(()=>T(`error`));try{let[e,t,n]=await Promise.all([f(),u(),d()]);v(e),x(t),C(n)}catch{k(!0)}finally{await e,D(!1)}},[]);if((0,h.useEffect)(()=>{t===`admin`&&A()},[A,t]),t!==`admin`)return(0,g.jsxDEV)(s,{children:[(0,g.jsxDEV)(r,{to:`/settings`,className:`text-sm text-accent hover:underline`,children:e(`settings.title`)},void 0,!1,{fileName:_,lineNumber:63,columnNumber:9},this),(0,g.jsxDEV)(`h1`,{className:`mt-4 text-2xl font-bold tracking-tight text-text`,children:e(`diagnostics.title`)},void 0,!1,{fileName:_,lineNumber:66,columnNumber:9},this),(0,g.jsxDEV)(`p`,{className:`mt-3 text-sm text-danger`,children:e(`diagnostics.adminOnly`)},void 0,!1,{fileName:_,lineNumber:67,columnNumber:9},this)]},void 0,!0,{fileName:_,lineNumber:62,columnNumber:7},this);let j=b.filter(e=>e.latestVersion&&m(e.latestVersion,e.installedVersion));return(0,g.jsxDEV)(s,{children:[(0,g.jsxDEV)(`div`,{className:`mb-6 flex items-start justify-between gap-4`,children:[(0,g.jsxDEV)(`div`,{children:[(0,g.jsxDEV)(r,{to:`/settings`,className:`text-sm text-accent hover:underline`,children:e(`settings.title`)},void 0,!1,{fileName:_,lineNumber:78,columnNumber:11},this),(0,g.jsxDEV)(`h1`,{className:`mt-2 text-2xl font-bold tracking-tight text-text`,children:e(`diagnostics.title`)},void 0,!1,{fileName:_,lineNumber:81,columnNumber:11},this),(0,g.jsxDEV)(`p`,{className:`mt-1 text-sm text-muted`,children:e(`diagnostics.description`)},void 0,!1,{fileName:_,lineNumber:82,columnNumber:11},this)]},void 0,!0,{fileName:_,lineNumber:77,columnNumber:9},this),(0,g.jsxDEV)(l,{type:`button`,variant:`ghost`,size:`sm`,className:`shrink-0 border border-border`,disabled:E,onClick:()=>void A(),children:[(0,g.jsxDEV)(c,{name:`lucide:refresh-cw`,size:15,className:E?`animate-spin`:void 0},void 0,!1,{fileName:_,lineNumber:92,columnNumber:11},this),e(E?`diagnostics.refreshing`:`diagnostics.refresh`)]},void 0,!0,{fileName:_,lineNumber:84,columnNumber:9},this)]},void 0,!0,{fileName:_,lineNumber:76,columnNumber:7},this),O&&(0,g.jsxDEV)(`div`,{className:`mb-5 rounded-lg border border-danger/40 bg-danger/10 px-4 py-3 text-sm text-danger`,children:e(`diagnostics.loadFailed`)},void 0,!1,{fileName:_,lineNumber:98,columnNumber:9},this),(0,g.jsxDEV)(`div`,{className:`grid gap-4 sm:grid-cols-3`,children:[(0,g.jsxDEV)(o,{className:`px-4 py-3`,children:[(0,g.jsxDEV)(`div`,{className:`text-xs text-muted`,children:e(`diagnostics.server`)},void 0,!1,{fileName:_,lineNumber:105,columnNumber:11},this),(0,g.jsxDEV)(`div`,{className:`mt-2 flex items-center gap-2 font-semibold text-text`,children:[(0,g.jsxDEV)(`span`,{className:`h-2.5 w-2.5 rounded-full ${w===`ok`?`bg-accent`:w===`error`?`bg-danger`:`bg-muted`}`},void 0,!1,{fileName:_,lineNumber:107,columnNumber:13},this),e(w===`ok`?`diagnostics.healthy`:w===`error`?`diagnostics.unavailable`:`common.loading`)]},void 0,!0,{fileName:_,lineNumber:106,columnNumber:11},this)]},void 0,!0,{fileName:_,lineNumber:104,columnNumber:9},this),(0,g.jsxDEV)(o,{className:`px-4 py-3`,children:[(0,g.jsxDEV)(`div`,{className:`text-xs text-muted`,children:e(`diagnostics.agents`)},void 0,!1,{fileName:_,lineNumber:118,columnNumber:11},this),(0,g.jsxDEV)(`div`,{className:`mt-2 flex flex-wrap gap-1.5`,children:i?.agents.map(e=>(0,g.jsxDEV)(a,{variant:`secondary`,children:e},e,!1,{fileName:_,lineNumber:121,columnNumber:15},this))??(0,g.jsxDEV)(`span`,{className:`text-sm text-muted`,children:`—`},void 0,!1,{fileName:_,lineNumber:124,columnNumber:19},this)},void 0,!1,{fileName:_,lineNumber:119,columnNumber:11},this)]},void 0,!0,{fileName:_,lineNumber:117,columnNumber:9},this),(0,g.jsxDEV)(o,{className:`px-4 py-3`,children:[(0,g.jsxDEV)(`div`,{className:`text-xs text-muted`,children:e(`diagnostics.connectors`)},void 0,!1,{fileName:_,lineNumber:128,columnNumber:11},this),(0,g.jsxDEV)(`div`,{className:`mt-2 flex flex-wrap gap-1.5`,children:i?.connectors.map(e=>(0,g.jsxDEV)(a,{variant:`secondary`,children:e},e,!1,{fileName:_,lineNumber:131,columnNumber:15},this))??(0,g.jsxDEV)(`span`,{className:`text-sm text-muted`,children:`—`},void 0,!1,{fileName:_,lineNumber:134,columnNumber:19},this)},void 0,!1,{fileName:_,lineNumber:129,columnNumber:11},this)]},void 0,!0,{fileName:_,lineNumber:127,columnNumber:9},this)]},void 0,!0,{fileName:_,lineNumber:103,columnNumber:7},this),(0,g.jsxDEV)(`section`,{className:`mt-6`,children:[(0,g.jsxDEV)(`h2`,{className:`mb-2 text-sm font-semibold text-text`,children:e(`diagnostics.versions`)},void 0,!1,{fileName:_,lineNumber:140,columnNumber:9},this),(0,g.jsxDEV)(o,{className:`overflow-hidden`,children:[(0,g.jsxDEV)(`div`,{className:`grid grid-cols-[1fr_auto_auto] gap-x-4 border-b border-border px-4 py-2 text-xs font-medium text-muted`,children:[(0,g.jsxDEV)(`span`,{children:e(`diagnostics.component`)},void 0,!1,{fileName:_,lineNumber:143,columnNumber:13},this),(0,g.jsxDEV)(`span`,{children:e(`diagnostics.installed`)},void 0,!1,{fileName:_,lineNumber:144,columnNumber:13},this),(0,g.jsxDEV)(`span`,{children:e(`diagnostics.latest`)},void 0,!1,{fileName:_,lineNumber:145,columnNumber:13},this)]},void 0,!0,{fileName:_,lineNumber:142,columnNumber:11},this),S?.installedVersion&&(0,g.jsxDEV)(y,{name:e(`settings.runtimeLabel`),installed:S.installedVersion,latest:S.latestVersion},void 0,!1,{fileName:_,lineNumber:148,columnNumber:13},this),b.filter(e=>e.id!==`core`).map(e=>(0,g.jsxDEV)(y,{name:e.id,installed:e.installedVersion,latest:e.latestVersion},e.id,!1,{fileName:_,lineNumber:157,columnNumber:15},this)),!S?.installedVersion&&b.length===0&&(0,g.jsxDEV)(`div`,{className:`px-4 py-4 text-sm text-muted`,children:e(`diagnostics.noData`)},void 0,!1,{fileName:_,lineNumber:160,columnNumber:13},this),j.length>0&&(0,g.jsxDEV)(`div`,{className:`border-t border-border px-4 py-2 text-xs text-accent`,children:e(`diagnostics.outdated`,{count:j.length})},void 0,!1,{fileName:_,lineNumber:163,columnNumber:13},this)]},void 0,!0,{fileName:_,lineNumber:141,columnNumber:9},this)]},void 0,!0,{fileName:_,lineNumber:139,columnNumber:7},this),(0,g.jsxDEV)(`section`,{className:`mt-6`,children:[(0,g.jsxDEV)(`h2`,{className:`mb-2 text-sm font-semibold text-text`,children:e(`diagnostics.recentMessages`)},void 0,!1,{fileName:_,lineNumber:171,columnNumber:9},this),(0,g.jsxDEV)(o,{className:`overflow-x-auto`,children:i?.recentMessages.length?(0,g.jsxDEV)(`table`,{className:`w-full min-w-[34rem] text-left text-xs`,children:[(0,g.jsxDEV)(`thead`,{className:`border-b border-border text-muted`,children:(0,g.jsxDEV)(`tr`,{children:[(0,g.jsxDEV)(`th`,{className:`px-4 py-2 font-medium`,children:e(`diagnostics.time`)},void 0,!1,{fileName:_,lineNumber:177,columnNumber:19},this),(0,g.jsxDEV)(`th`,{className:`px-4 py-2 font-medium`,children:e(`diagnostics.connector`)},void 0,!1,{fileName:_,lineNumber:178,columnNumber:19},this),(0,g.jsxDEV)(`th`,{className:`px-4 py-2 font-medium`,children:e(`diagnostics.role`)},void 0,!1,{fileName:_,lineNumber:179,columnNumber:19},this),(0,g.jsxDEV)(`th`,{className:`px-4 py-2 text-right font-medium`,children:e(`diagnostics.duration`)},void 0,!1,{fileName:_,lineNumber:180,columnNumber:19},this),(0,g.jsxDEV)(`th`,{className:`px-4 py-2 text-right font-medium`,children:e(`diagnostics.tokens`)},void 0,!1,{fileName:_,lineNumber:181,columnNumber:19},this)]},void 0,!0,{fileName:_,lineNumber:176,columnNumber:17},this)},void 0,!1,{fileName:_,lineNumber:175,columnNumber:15},this),(0,g.jsxDEV)(`tbody`,{children:i.recentMessages.map(e=>(0,g.jsxDEV)(`tr`,{className:`border-b border-border last:border-0`,children:[(0,g.jsxDEV)(`td`,{className:`px-4 py-2 text-muted`,children:new Date(e.ts).toLocaleString()},void 0,!1,{fileName:_,lineNumber:187,columnNumber:21},this),(0,g.jsxDEV)(`td`,{className:`px-4 py-2 text-text`,children:e.connector},void 0,!1,{fileName:_,lineNumber:188,columnNumber:21},this),(0,g.jsxDEV)(`td`,{className:`px-4 py-2 text-text`,children:e.role},void 0,!1,{fileName:_,lineNumber:189,columnNumber:21},this),(0,g.jsxDEV)(`td`,{className:`px-4 py-2 text-right text-muted`,children:e.ms==null?`—`:`${e.ms} ms`},void 0,!1,{fileName:_,lineNumber:190,columnNumber:21},this),(0,g.jsxDEV)(`td`,{className:`px-4 py-2 text-right text-muted`,children:e.tokensIn==null&&e.tokensOut==null?`—`:`${e.tokensIn??0} / ${e.tokensOut??0}`},void 0,!1,{fileName:_,lineNumber:191,columnNumber:21},this)]},e.id,!0,{fileName:_,lineNumber:186,columnNumber:19},this))},void 0,!1,{fileName:_,lineNumber:184,columnNumber:15},this)]},void 0,!0,{fileName:_,lineNumber:174,columnNumber:13},this):(0,g.jsxDEV)(`div`,{className:`px-4 py-4 text-sm text-muted`,children:e(`diagnostics.noMessages`)},void 0,!1,{fileName:_,lineNumber:201,columnNumber:13},this)},void 0,!1,{fileName:_,lineNumber:172,columnNumber:9},this)]},void 0,!0,{fileName:_,lineNumber:170,columnNumber:7},this),(0,g.jsxDEV)(`section`,{className:`mt-6`,children:[(0,g.jsxDEV)(`h2`,{className:`mb-2 text-sm font-semibold text-text`,children:e(`diagnostics.recentErrors`)},void 0,!1,{fileName:_,lineNumber:207,columnNumber:9},this),(0,g.jsxDEV)(o,{className:`overflow-hidden`,children:i?.recentErrors.length?i.recentErrors.map((e,t)=>(0,g.jsxDEV)(`div`,{className:`border-b border-border px-4 py-3 last:border-0`,children:[(0,g.jsxDEV)(`div`,{className:`flex flex-wrap items-center gap-2 text-xs`,children:[(0,g.jsxDEV)(a,{variant:`destructive`,children:e.level},void 0,!1,{fileName:_,lineNumber:213,columnNumber:19},this),(0,g.jsxDEV)(`span`,{className:`font-medium text-text`,children:e.source},void 0,!1,{fileName:_,lineNumber:214,columnNumber:19},this),(0,g.jsxDEV)(`span`,{className:`text-muted`,children:new Date(e.ts).toLocaleString()},void 0,!1,{fileName:_,lineNumber:215,columnNumber:19},this)]},void 0,!0,{fileName:_,lineNumber:212,columnNumber:17},this),(0,g.jsxDEV)(`div`,{className:`mt-1 break-words text-sm text-danger`,children:e.message},void 0,!1,{fileName:_,lineNumber:217,columnNumber:17},this)]},`${e.ts}-${t}`,!0,{fileName:_,lineNumber:211,columnNumber:15},this)):(0,g.jsxDEV)(`div`,{className:`px-4 py-4 text-sm text-muted`,children:e(`diagnostics.noErrors`)},void 0,!1,{fileName:_,lineNumber:221,columnNumber:13},this)},void 0,!1,{fileName:_,lineNumber:208,columnNumber:9},this)]},void 0,!0,{fileName:_,lineNumber:206,columnNumber:7},this)]},void 0,!0,{fileName:_,lineNumber:75,columnNumber:5},this)}function y({name:e,installed:t,latest:n}){return(0,g.jsxDEV)(`div`,{className:`grid grid-cols-[1fr_auto_auto] gap-x-4 border-b border-border px-4 py-2.5 text-sm last:border-0`,children:[(0,g.jsxDEV)(`span`,{className:`min-w-0 truncate text-text`,children:e},void 0,!1,{fileName:_,lineNumber:232,columnNumber:7},this),(0,g.jsxDEV)(`span`,{className:`text-muted`,children:[`v`,t]},void 0,!0,{fileName:_,lineNumber:233,columnNumber:7},this),(0,g.jsxDEV)(`span`,{className:n&&m(n,t)?`text-accent`:`text-muted`,children:n?`v${n}`:`—`},void 0,!1,{fileName:_,lineNumber:234,columnNumber:7},this)]},void 0,!0,{fileName:_,lineNumber:231,columnNumber:5},this)}export{v as DiagnosticsPage};
@@ -1 +0,0 @@
1
- import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t,t as n}from"./i18n-vendor-T6EnJ_TL.js";import{a as r,d as i,t as a,u as o}from"./react-vendor-CzSUaSLk.js";import{D as s,Dt as c,M as l,Ot as u,Tt as d,d as f,ir as p,lr as m,nr as h,tn as g}from"./src-C9WAFG8V.js";import{A as _,i as v,p as y,u as b}from"./fields-BtCN_frr.js";import{A as x,c as S,k as C,l as w,n as T,t as E}from"./shelf-CRUDKiTz.js";import{t as D}from"./arrow-left-5G0O-4HL.js";import{l as O}from"./phone-input-vooQJZf_.js";import{a as k,s as A,t as j}from"./list-cache-D-BfHI9X.js";import{M,s as N}from"./api-ChM6smRq.js";var P=e(t(),1),F=a(),I=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/fields-form.tsx`;function L({shelf:e,record:t,onSubmit:r,onCancel:i,submitLabel:a,busy:o,children:s,hiddenFields:u,onValuesChange:p,errorSink:m,extraValidate:h}){let{t:g}=n(),v=c(g),y=!!t,b=(0,P.useMemo)(()=>w(e.fields),[e]),{values:x,errors:S,setErrors:C,setTouched:D,bridge:k}=f({fm:b,mode:y?`edit`:`create`,recordCtx:{library:e.library,shelf:e.shelf,recordId:t?String(t.id):null},initial:()=>z(e,t),hiddenFields:u}),[A,j]=(0,P.useState)(),[M,N]=(0,P.useState)(!1);(0,P.useEffect)(()=>{p?.(x)},[x,p]),(0,P.useEffect)(()=>{m?.({setErrors:C,setTouched:D})},[m,C,D]);async function L(t){t.preventDefault(),j(void 0);let n=Object.keys(b),i={};for(let e of n)e in x&&(i[e]=x[e]);let a=B(i),o=(y?T(e):E(e)).safeParse(a),s={};if(!o.success)for(let e of o.error.issues){let t=String(e.path[0]??``);if(!n.includes(t)||s[t])continue;let{code:r,params:i}=_(e.message);s[t]=v(r,i)}if(Object.assign(s,h?.(x)??{}),Object.keys(s).length){C(s),D(new Set(Object.keys(s)));return}N(!0);let c=await r(a);N(!1),c&&j(c)}return(0,F.jsxDEV)(`form`,{onSubmit:L,noValidate:!0,className:`flex flex-col gap-5 min-w-0`,children:[(0,F.jsxDEV)(d.Provider,{value:e=>S[e.join(`.`)],children:(0,F.jsxDEV)(l,{items:e.fields,ctx:{bridge:k}},void 0,!1,{fileName:I,lineNumber:117,columnNumber:9},this)},void 0,!1,{fileName:I,lineNumber:116,columnNumber:7},this),s,A&&(0,F.jsxDEV)(`p`,{className:`text-sm text-danger`,children:A},void 0,!1,{fileName:I,lineNumber:120,columnNumber:21},this),(0,F.jsxDEV)(`div`,{className:`flex gap-3 pt-2 border-t border-border`,children:[(0,F.jsxDEV)(O,{type:`submit`,disabled:o||M,size:`lg`,className:`flex-1`,children:a??g(`actions.save`)},void 0,!1,{fileName:I,lineNumber:122,columnNumber:9},this),i&&(0,F.jsxDEV)(O,{type:`button`,variant:`secondary`,size:`lg`,onClick:i,className:`flex-1`,children:g(`actions.cancel`)},void 0,!1,{fileName:I,lineNumber:126,columnNumber:11},this)]},void 0,!0,{fileName:I,lineNumber:121,columnNumber:7},this)]},void 0,!0,{fileName:I,lineNumber:115,columnNumber:5},this)}var R=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/form.tsx`;function z(e,t){let n={};n.name=t?.name==null?``:String(t.name);for(let[r,i]of S(e.fields))if(t){let e=t[r];e==null?n[r]=i.prim!==`checkbox`&&``:i.prim===`checkbox`?n[r]=e===1||e===!0||e===`1`:b(i)?n[r]=e===``?``:g(e,i.hints.multiple===!0?[]:{}):n[r]=e}else n[r]=i.prim===`checkbox`?!1:b(i)&&i.hints.multiple===!0?[]:``;for(let r of e.fields){if(!v(r)||!y(r))continue;let e=r.key;t?n[e]=t[e]??(r.multiple?[]:{}):n[e]=r.multiple?[]:{}}return n}function B(e){let t={};for(let[n,r]of Object.entries(e))r===``||r===void 0||Array.isArray(r)&&r.length===0||typeof r==`object`&&r&&!Array.isArray(r)&&Object.keys(r).length===0||(t[n]=r);return t}function V({ext:e,values:t,onChange:r,recordId:i,fieldLabel:a}){let{t:o}=n(),c=(0,P.useMemo)(()=>w(e.fields),[e]),u={renderField:(n,a)=>x(a.hidden,t)?null:(0,F.jsxDEV)(s,{mode:`create`,field:a,label:a.label?o(a.label):void 0,required:x(a.required,t),value:t[n]??``,recordCtx:{library:``,shelf:e.id,recordId:i},onChange:t=>r(e.id,n,t)},void 0,!1,{fileName:R,lineNumber:101,columnNumber:9},this),values:t,setValue:(t,n)=>r(e.id,t,n),isHidden:e=>x(c[e]?.hidden,t),mode:`create`};return(0,F.jsxDEV)(`fieldset`,{className:`border border-accent/30 rounded-xl p-4 pt-2 flex flex-col min-w-0 gap-4`,children:[(0,F.jsxDEV)(`legend`,{className:`px-2 inline-flex items-center gap-1.5 text-sm font-semibold text-accent`,children:[(0,F.jsxDEV)(m,{name:e.icon,size:14,className:`shrink-0`},void 0,!1,{fileName:R,lineNumber:124,columnNumber:9},this),` `,o(e.label),(0,F.jsxDEV)(h,{ext:e,fieldLabel:a},void 0,!1,{fileName:R,lineNumber:125,columnNumber:9},this)]},void 0,!0,{fileName:R,lineNumber:123,columnNumber:7},this),(0,F.jsxDEV)(l,{items:e.fields,ctx:u},void 0,!1,{fileName:R,lineNumber:127,columnNumber:7},this)]},void 0,!0,{fileName:R,lineNumber:122,columnNumber:5},this)}function H(e,t,n){let[r]=(0,P.useState)(()=>{let n={};for(let r of e){let e=t?._extends?.[r.id];n[r.id]={};for(let[t,i]of S(r.fields)){let a=e?.[t];a==null?n[r.id][t]=i.prim===`checkbox`?!1:b(i)&&i.hints.multiple===!0?[]:``:i.prim===`checkbox`?n[r.id][t]=a===1||a===!0||a===`1`:b(i)?n[r.id][t]=a===``?``:g(a,i.hints.multiple===!0?[]:{}):n[r.id][t]=a}}return n}),[i,a]=(0,P.useState)(r),o=(0,P.useMemo)(()=>e.filter(e=>C(e.showWhen,n)),[e,n]);function s(e,t,n){a(r=>({...r,[e]:{...r[e],[t]:n}}))}function c(e){let t={};for(let n of o){let a=i[n.id]??{};if(e){let e=r[n.id]??{},i=Object.fromEntries(Object.entries(a).filter(([t,n])=>n!==e[t]));Object.keys(i).length>0&&(t[`_extend_${n.id}`]=i)}else{let e=Object.fromEntries(Object.entries(a).filter(([,e])=>e!==``&&e!==!1));t[`_extend_${n.id}`]=e}}return t}return{extValues:i,setExtValue:s,activeExts:o,buildExtendPatch:c}}function U({shelf:e,record:t,defaults:r,hiddenFields:i,onSuccess:a,onCancel:o}){let{t:s}=n(),l=c(s),d=!!t,f=(0,P.useMemo)(()=>w(e.fields),[e]),[p,m]=(0,P.useState)([]),[h,g]=(0,P.useState)(!1),[_,v]=(0,P.useState)(()=>z(e,t)),y=(0,P.useRef)(null),{extValues:b,setExtValue:x,activeExts:S,buildExtendPatch:C}=H((0,P.useMemo)(()=>k().filter(t=>t.attachTo.some(t=>t.library===e.library&&(!t.shelf||t.shelf===e.shelf))),[e]),t,_);function T(e){return d||String(e.name??``).trim()?{}:{name:s(`validation.required`)}}async function E(n){m([]),g(!0);let r={...n,...C()},i=String(t?.id??``),o=d?await M(e.library,e.shelf,i,r):await N(e.library,e.shelf,r);if(g(!1),o.ok){a(o.row);return}let s=o.issues??[],c={},p=[];for(let e of s)e.field&&f[e.field]?c[e.field]=l(e.code,e.params):p.push(e);let h=u(s,l);(Object.keys(c).length||Object.keys(h).length)&&(y.current?.setErrors(e=>({...e,...c,...h})),y.current?.setTouched(e=>new Set([...e,...Object.keys(c)]))),m(p)}return(0,F.jsxDEV)(`div`,{children:(0,F.jsxDEV)(L,{shelf:e,record:t,onSubmit:E,onCancel:o,submitLabel:s(h?`common.saving`:d?`actions.save`:`actions.create`),busy:h,hiddenFields:i,onValuesChange:v,errorSink:e=>{y.current=e},extraValidate:T,children:[S.map(e=>(0,F.jsxDEV)(V,{ext:e,values:b[e.id]??{},onChange:x,recordId:t?String(t.id):null,fieldLabel:e=>f[e]?.label?s(f[e].label):e},e.id,!1,{fileName:R,lineNumber:328,columnNumber:11},this)),p.length>0&&(0,F.jsxDEV)(`div`,{className:`bg-danger/10 border border-danger/30 rounded-xl p-3.5 text-sm`,children:[(0,F.jsxDEV)(`p`,{className:`font-semibold text-danger mb-2`,children:s(`form.serverRejected`)},void 0,!1,{fileName:R,lineNumber:340,columnNumber:13},this),(0,F.jsxDEV)(`ul`,{className:`space-y-1 text-text/80`,children:p.map((e,t)=>{let n=f[e.field],r=n?s(n.label):e.field,i=e.code===`pattern`&&e.params?.messageKey?s(String(e.params.messageKey)):s(`validation.${e.code}`,e.params);return(0,F.jsxDEV)(`li`,{className:`flex gap-1.5`,children:[r&&(0,F.jsxDEV)(`span`,{className:`text-muted font-medium`,children:[r,`:`]},void 0,!0,{fileName:R,lineNumber:351,columnNumber:31},this),i]},t,!0,{fileName:R,lineNumber:350,columnNumber:19},this)})},void 0,!1,{fileName:R,lineNumber:341,columnNumber:13},this)]},void 0,!0,{fileName:R,lineNumber:339,columnNumber:11},this)]},`${e.library}/${e.shelf}/${t?t.id:`new`}`,!0,{fileName:R,lineNumber:311,columnNumber:7},this)},void 0,!1,{fileName:R,lineNumber:303,columnNumber:5},this)}var W=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/record/NewRecordView.tsx`;function G(){let{t:e}=n(),{library:t,shelf:a}=i(),s=o(),c=A().flatMap(e=>e.shelves).find(e=>e.library===t&&e.shelf===a);return!c||c.standalone===!1?(0,F.jsxDEV)(`div`,{className:`p-6 text-muted`,children:e(`common.notFound`)},void 0,!1,{fileName:W,lineNumber:19,columnNumber:44},this):c.single?(0,F.jsxDEV)(r,{to:`/${t}/${a}`,replace:!0},void 0,!1,{fileName:W,lineNumber:24,columnNumber:24},this):(0,F.jsxDEV)(`div`,{className:`flex flex-col`,children:[(0,F.jsxDEV)(p,{children:(0,F.jsxDEV)(O,{variant:`ghost`,size:`sm`,className:`px-2`,onClick:()=>s(`/${t}/${a}`),children:[(0,F.jsxDEV)(D,{size:18},void 0,!1,{fileName:W,lineNumber:30,columnNumber:11},this),(0,F.jsxDEV)(`span`,{className:`text-sm`,children:e(c.label)},void 0,!1,{fileName:W,lineNumber:31,columnNumber:11},this)]},void 0,!0,{fileName:W,lineNumber:29,columnNumber:9},this)},void 0,!1,{fileName:W,lineNumber:28,columnNumber:7},this),(0,F.jsxDEV)(`div`,{className:`flex-1 min-w-0`,children:(0,F.jsxDEV)(`div`,{className:`max-w-2xl mx-auto px-6 py-6`,children:(0,F.jsxDEV)(U,{shelf:c,onSuccess:e=>{j(`${c.library}/${c.shelf}`),e?.id?s(`/${t}/${a}/${e.id}`):s(`/${t}/${a}`)},onCancel:()=>s(`/${t}/${a}`)},void 0,!1,{fileName:W,lineNumber:36,columnNumber:11},this)},void 0,!1,{fileName:W,lineNumber:35,columnNumber:9},this)},void 0,!1,{fileName:W,lineNumber:34,columnNumber:7},this)]},void 0,!0,{fileName:W,lineNumber:27,columnNumber:5},this)}export{G as NewRecordView};
@@ -1 +0,0 @@
1
- import{t as e}from"./react-vendor-CzSUaSLk.js";var t=e(),n=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/plugin-devices/src/templates/ScanSummary.tsx`,r=({title:e,body:r,children:i})=>(0,t.jsxDEV)(`div`,{className:`space-y-1 border-t pt-2`,children:[(0,t.jsxDEV)(`p`,{className:`text-sm font-medium`,children:e},void 0,!1,{fileName:n,lineNumber:25,columnNumber:5},void 0),(0,t.jsxDEV)(`p`,{className:`text-xs text-muted-foreground`,children:r},void 0,!1,{fileName:n,lineNumber:26,columnNumber:5},void 0),(0,t.jsxDEV)(`ul`,{className:`space-y-1`,children:i},void 0,!1,{fileName:n,lineNumber:27,columnNumber:5},void 0)]},void 0,!0,{fileName:n,lineNumber:24,columnNumber:3},void 0);function i({data:e,t:i}){let a=e.failed??[],o=e.noMac??[],s=e.hostnameChanged??[],c=[[`devices.scan.activeLabel`,e.active],[`devices.scan.createdLabel`,e.created],[`devices.scan.macUpdatedLabel`,e.macChanged],[`devices.scan.skippedLabel`,e.skipped],...a.length?[[`devices.scan.failedLabel`,a.length]]:[]];return(0,t.jsxDEV)(`div`,{className:`space-y-2`,children:[(0,t.jsxDEV)(`p`,{className:`font-medium`,children:i(a.length?`devices.scan.summaryPartialTitle`:`devices.scan.summaryTitle`)},void 0,!1,{fileName:n,lineNumber:49,columnNumber:7},this),(0,t.jsxDEV)(`dl`,{className:`grid grid-cols-2 gap-x-4 gap-y-1 text-sm`,children:c.map(([e,r])=>(0,t.jsxDEV)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,t.jsxDEV)(`dt`,{className:`text-muted-foreground`,children:i(e)},void 0,!1,{fileName:n,lineNumber:55,columnNumber:13},this),(0,t.jsxDEV)(`dd`,{className:`font-mono tabular-nums`,children:r},void 0,!1,{fileName:n,lineNumber:56,columnNumber:13},this)]},e,!0,{fileName:n,lineNumber:54,columnNumber:11},this))},void 0,!1,{fileName:n,lineNumber:52,columnNumber:7},this),a.length>0&&(0,t.jsxDEV)(r,{title:i(`devices.scan.failedTitle`,{count:a.length}),body:i(`devices.scan.failedBody`),children:a.map(e=>(0,t.jsxDEV)(`li`,{className:`flex flex-wrap items-center gap-1.5 text-sm`,children:[(0,t.jsxDEV)(`span`,{className:`font-medium`,children:e.name||e.subject},void 0,!1,{fileName:n,lineNumber:64,columnNumber:15},this),(0,t.jsxDEV)(`code`,{className:`text-xs text-muted-foreground`,children:e.subject},void 0,!1,{fileName:n,lineNumber:65,columnNumber:15},this),(e.issues?.length?e.issues.map(e=>`${e.path}: ${e.code}`):[e.message]).map(e=>(0,t.jsxDEV)(`code`,{className:`rounded bg-muted px-1.5 py-0.5 text-xs`,children:e},e,!1,{fileName:n,lineNumber:67,columnNumber:17},this))]},`${e.subject}-${e.kind}`,!0,{fileName:n,lineNumber:63,columnNumber:13},this))},void 0,!1,{fileName:n,lineNumber:61,columnNumber:9},this),o.length>0&&(0,t.jsxDEV)(r,{title:i(`devices.scan.noMacTitle`,{count:o.length}),body:i(`devices.scan.noMacBody`),children:o.map(e=>(0,t.jsxDEV)(`li`,{className:`flex items-center gap-2 text-sm`,children:[(0,t.jsxDEV)(`code`,{children:e.ip},void 0,!1,{fileName:n,lineNumber:79,columnNumber:15},this),e.hostname&&(0,t.jsxDEV)(`span`,{className:`rounded bg-muted px-1.5 py-0.5 text-xs`,children:e.hostname},void 0,!1,{fileName:n,lineNumber:80,columnNumber:30},this),(0,t.jsxDEV)(`button`,{type:`button`,className:`ml-auto text-xs underline opacity-70 hover:opacity-100`,onClick:()=>void navigator.clipboard?.writeText(e.ip),children:i(`devices.scan.copyIp`)},void 0,!1,{fileName:n,lineNumber:81,columnNumber:15},this)]},e.ip,!0,{fileName:n,lineNumber:78,columnNumber:13},this))},void 0,!1,{fileName:n,lineNumber:76,columnNumber:9},this),s.length>0&&(0,t.jsxDEV)(r,{title:i(`devices.scan.hostnameChangedTitle`,{count:s.length}),body:i(`devices.scan.hostnameChangedBody`),children:s.map(e=>(0,t.jsxDEV)(`li`,{className:`flex flex-wrap items-center gap-1.5 text-sm`,children:[(0,t.jsxDEV)(`span`,{className:`font-medium`,children:e.name||e.ip},void 0,!1,{fileName:n,lineNumber:99,columnNumber:15},this),(0,t.jsxDEV)(`code`,{className:`text-xs text-muted-foreground`,children:e.ip},void 0,!1,{fileName:n,lineNumber:100,columnNumber:15},this),(0,t.jsxDEV)(`code`,{className:`rounded bg-muted px-1.5 py-0.5 text-xs line-through opacity-70`,children:e.old},void 0,!1,{fileName:n,lineNumber:101,columnNumber:15},this),(0,t.jsxDEV)(`span`,{className:`text-xs`,children:`→`},void 0,!1,{fileName:n,lineNumber:102,columnNumber:15},this),(0,t.jsxDEV)(`code`,{className:`rounded bg-muted px-1.5 py-0.5 text-xs`,children:e.new},void 0,!1,{fileName:n,lineNumber:103,columnNumber:15},this)]},e.ip,!0,{fileName:n,lineNumber:98,columnNumber:13},this))},void 0,!1,{fileName:n,lineNumber:93,columnNumber:9},this)]},void 0,!0,{fileName:n,lineNumber:48,columnNumber:5},this)}export{i as default};
@@ -1 +0,0 @@
1
- import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t,t as n}from"./i18n-vendor-T6EnJ_TL.js";import{r,t as i}from"./react-vendor-CzSUaSLk.js";import{M as a,cr as o,d as s,ir as c,ti as l}from"./src-C9WAFG8V.js";import{c as u,l as d}from"./shelf-CRUDKiTz.js";import{n as f}from"./input-DqF3I-kT.js";import{t as p}from"./arrow-left-5G0O-4HL.js";import{l as m}from"./phone-input-vooQJZf_.js";var h=e(t(),1),g=i(),_=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/SettingsForm.tsx`;function v(e){let{t}=n(),i=(0,h.useMemo)(()=>u(e.fields),[e.fields]),v=(0,h.useMemo)(()=>d(e.fields),[e.fields]),[y,b]=(0,h.useState)(!1),[x,S]=(0,h.useState)(null),{values:C,setValues:w,errors:T,setErrors:E,bridge:D}=s({fm:v,mode:`edit`,recordCtx:e.recordCtx,initial:{}});function O(e){let t={};for(let[n,r]of i)t[n]=e[n]??r.default??(r.prim!==`checkbox`&&``);return t}(0,h.useEffect)(()=>{w({}),E({});let n=!0;return e.load().then(e=>n&&w(O(e))).catch(()=>n&&S(t(`common.loadError`,{defaultValue:`Помилка завантаження`}))),()=>{n=!1}},[`${e.recordCtx.library}/${e.recordCtx.shelf}/${e.recordCtx.recordId}`]);async function k(){b(!0),E({});let n=l.loading(t(`save.saving`)),r=await e.save(C);if(b(!1),r.ok){w(O(r.row)),l.success(t(`save.done`),{id:n});return}if(r.status===422&&r.issues){let e={};for(let n of r.issues)n.field&&(e[n.field]=t(`validation.${n.code}`,n.params));E(e)}l.error(t(`save.failed`),{id:n})}return(0,g.jsxDEV)(`div`,{className:`flex flex-col h-full`,children:[(0,g.jsxDEV)(c,{actions:(0,g.jsxDEV)(m,{onClick:k,disabled:y,children:[(0,g.jsxDEV)(f,{size:16},void 0,!1,{fileName:_,lineNumber:101,columnNumber:13},this),(0,g.jsxDEV)(`span`,{className:`hidden sm:inline`,children:t(`actions.save`)},void 0,!1,{fileName:_,lineNumber:102,columnNumber:13},this)]},void 0,!0,{fileName:_,lineNumber:100,columnNumber:11},this),children:(0,g.jsxDEV)(m,{variant:`ghost`,size:`sm`,className:`px-2`,asChild:!0,children:(0,g.jsxDEV)(r,{to:e.backTo,"aria-label":e.backLabel,children:[(0,g.jsxDEV)(p,{size:18},void 0,!1,{fileName:_,lineNumber:108,columnNumber:13},this),(0,g.jsxDEV)(`span`,{className:`text-sm`,children:e.backLabel},void 0,!1,{fileName:_,lineNumber:109,columnNumber:13},this)]},void 0,!0,{fileName:_,lineNumber:107,columnNumber:11},this)},void 0,!1,{fileName:_,lineNumber:106,columnNumber:9},this)},void 0,!1,{fileName:_,lineNumber:98,columnNumber:7},this),(0,g.jsxDEV)(o,{children:[(0,g.jsxDEV)(`h1`,{className:`mb-6 text-2xl font-bold tracking-tight text-text`,children:e.title},void 0,!1,{fileName:_,lineNumber:115,columnNumber:9},this),x&&(0,g.jsxDEV)(`div`,{className:`mb-5 rounded-xl border border-danger/40 bg-danger/10 px-4 py-3 text-sm text-danger`,children:x},void 0,!1,{fileName:_,lineNumber:118,columnNumber:11},this),(0,g.jsxDEV)(`div`,{className:`flex flex-col gap-5`,children:(0,g.jsxDEV)(a,{items:e.fields,ctx:{bridge:D}},void 0,!1,{fileName:_,lineNumber:124,columnNumber:11},this)},void 0,!1,{fileName:_,lineNumber:123,columnNumber:9},this),e.footer]},void 0,!0,{fileName:_,lineNumber:114,columnNumber:7},this)]},void 0,!0,{fileName:_,lineNumber:97,columnNumber:5},this)}export{v as t};
@@ -1,3 +0,0 @@
1
- import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t,t as n}from"./i18n-vendor-T6EnJ_TL.js";import{r,t as i}from"./react-vendor-CzSUaSLk.js";import{$n as a,Lt as o,Un as s,Zn as c,_n as l,cr as u,lr as d}from"./src-C9WAFG8V.js";import{t as f}from"./ThemeSwitcher-CR6oJXQD.js";import{l as p}from"./phone-input-vooQJZf_.js";import{A as m,N as h,O as g,_,j as v,m as y}from"./api-ChM6smRq.js";import{n as b}from"./auth-context-CGdGFadP.js";import{t as x}from"./version-CtfLXkhy.js";var S=e(t(),1),C=i(),w=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/SettingsPage.tsx`,T=null,E=null;function D(){T=null}function O(e=!1){if(!e&&T)return Promise.resolve(T);if(!e&&E)return E;let t=Promise.all([_(e?{refresh:!0}:void 0),y(e?{refresh:!0}:void 0)]).then(([e,t])=>{let n={plugins:e,runtime:t,checkedAt:Date.now()};return T=n,n});return e||(E=t,t.then(()=>{E===t&&(E=null)},()=>{E===t&&(E=null)})),t}async function k(){let e=Date.now();for(;Date.now()-e<6e4;){await new Promise(e=>setTimeout(e,1e3));try{if((await fetch(`/health`)).ok)return!0}catch{}}return!1}function A(){let{t:e}=n(),{role:t}=b(),i=t===`admin`,[_,y]=(0,S.useState)(()=>T?.plugins??[]),[E,A]=(0,S.useState)(()=>T===null),[M,N]=(0,S.useState)(()=>T?.checkedAt??null),[P,F]=(0,S.useState)(null),[I,L]=(0,S.useState)(!1),R=e=>P===e||P===`*`,[z,B]=(0,S.useState)(()=>T?.runtime??null),V=_.filter(e=>e.latestVersion&&x(e.latestVersion,e.installedVersion)),H=!!(z?.latestVersion&&z.installedVersion&&x(z.latestVersion,z.installedVersion)),U=V.length+ +!!H,[W,G]=(0,S.useState)(null),[K,q]=(0,S.useState)(!1),J=t=>e(`${t}.plugin.label`,{defaultValue:t}),Y=t=>e(`${t}.plugin.description`,{defaultValue:``}),X=t=>e(`${t}.library.label`,{defaultValue:t}),Z=(t,n)=>e(`${t}.${n}.label`,{defaultValue:n}),Q={has_dependents:t=>e(`plugins.errors.has_dependents`,{list:t.dependents.join(`, `)}),missing_deps:t=>e(`plugins.errors.missing_deps`,{list:t.deps.join(`, `)}),unknown_plugin:()=>e(`plugins.errors.unknown_plugin`)},$=(e=!1)=>O(e).then(({plugins:e,runtime:t,checkedAt:n})=>{y(e),B(t),N(n),A(!1)});(0,S.useEffect)(()=>{$()},[]);async function ee(){L(!0),G(null);try{await $(!0)}catch{G(e(`plugins.updateCheckError`))}finally{L(!1)}}async function te(t){if(!await s({title:e(`plugins.purgeTitle`),description:e(`plugins.confirmPurge`,{id:t.id}),confirmLabel:e(`plugins.purgeButton`),variant:`destructive`}))return;F(t.id),G(null);let n=await fetch(`/api/plugins/${t.id}/data`,{method:`DELETE`}),r=await n.json().catch(()=>({}));if(F(null),!n.ok){G(Q[r.error]?.(r)??e(`plugins.genericError`,{code:r.error??n.status}));return}q(!0),await $()}async function ne(t){F(t.id),G(null);let n=await g(t.id,!t.enabled);if(!n.ok){F(null),G(Q[n.error]?.(n.data??{})??e(`plugins.genericError`,{code:n.error}));return}window.location.reload()}async function re(t){if(!t.latestVersion||!await s({title:e(`plugins.updateTitle`,{from:t.installedVersion,to:t.latestVersion}),description:e(`plugins.confirmUpdate`,{id:t.id,from:t.installedVersion,to:t.latestVersion}),confirmLabel:e(`plugins.updateButton`)}))return;F(t.id),G(null);let n=await v(t.id);if(!n.ok){F(null),G(n.stderr?`${e(`plugins.updateError`)}: ${n.stderr}`:e(`plugins.genericError`,{code:n.error}));return}q(!0),await k()?(D(),window.location.reload()):(F(null),G(e(`plugins.restartTimeout`)))}async function ie(){if(U===0)return;let t=V.map(e=>`${J(e.id)}: v${e.installedVersion} → v${e.latestVersion}`);H&&t.push(`${e(`plugins.runtimeLabel`)}: v${z.installedVersion} → v${z.latestVersion}`);let n=t.join(`
2
- `);if(!await s({title:e(`plugins.updateAllButton`,{count:U}),description:e(`plugins.confirmUpdateAll`,{count:U,list:n}),confirmLabel:e(`plugins.updateButton`)}))return;F(`*`),G(null);let r=await m();if(!r.ok){F(null),G(r.stderr?`${e(`plugins.updateError`)}: ${r.stderr}`:e(`plugins.genericError`,{code:r.error}));return}q(!0),await k()?(D(),window.location.reload()):(F(null),G(e(`plugins.restartTimeout`)))}let ae=H;async function oe(){let t=[];if(H&&t.push(`${e(`plugins.runtimeLabel`)}: v${z.installedVersion} → v${z.latestVersion}`),t.length===0||!await s({title:e(`plugins.updateAllButton`,{count:t.length}),description:e(`plugins.confirmUpdateAll`,{count:t.length,list:t.join(`
3
- `)}),confirmLabel:e(`plugins.updateButton`)}))return;F(`*`),G(null);let n=await h();if(!n.ok){F(null),G(n.stderr?`${e(`plugins.updateError`)}: ${n.stderr}`:e(`plugins.genericError`,{code:n.error}));return}q(!0),await k()?(D(),window.location.reload()):(F(null),G(e(`plugins.restartTimeout`)))}return(0,C.jsxDEV)(u,{children:[(0,C.jsxDEV)(`h1`,{className:`mb-6 text-2xl font-bold tracking-tight text-text`,children:e(`settings.title`)},void 0,!1,{fileName:w,lineNumber:290,columnNumber:7},this),(0,C.jsxDEV)(`section`,{className:`mb-6`,children:[(0,C.jsxDEV)(`h2`,{className:`mb-1 ${o}`,children:e(`settings.appearance`)},void 0,!1,{fileName:w,lineNumber:293,columnNumber:9},this),(0,C.jsxDEV)(c,{className:`flex items-center gap-4 px-4 py-2`,children:[(0,C.jsxDEV)(`span`,{className:`min-w-0 flex-1 font-semibold text-text`,children:e(`theme.label`)},void 0,!1,{fileName:w,lineNumber:295,columnNumber:11},this),(0,C.jsxDEV)(`div`,{className:`w-40 max-w-[45vw] shrink-0`,children:(0,C.jsxDEV)(f,{direction:`down`},void 0,!1,{fileName:w,lineNumber:297,columnNumber:13},this)},void 0,!1,{fileName:w,lineNumber:296,columnNumber:11},this)]},void 0,!0,{fileName:w,lineNumber:294,columnNumber:9},this)]},void 0,!0,{fileName:w,lineNumber:292,columnNumber:7},this),(0,C.jsxDEV)(`section`,{className:`mb-6`,children:[(0,C.jsxDEV)(`h2`,{className:`mb-1 ${o}`,children:e(`settings.personalTitle`)},void 0,!1,{fileName:w,lineNumber:304,columnNumber:9},this),(0,C.jsxDEV)(c,{className:`flex items-center gap-4 px-4 py-3`,children:[(0,C.jsxDEV)(`div`,{className:`min-w-0 flex-1`,children:(0,C.jsxDEV)(`span`,{className:`font-semibold text-text`,children:e(`auth.accountTitle`)},void 0,!1,{fileName:w,lineNumber:307,columnNumber:13},this)},void 0,!1,{fileName:w,lineNumber:306,columnNumber:11},this),(0,C.jsxDEV)(p,{variant:`ghost`,size:`sm`,type:`button`,className:`shrink-0 border border-border`,asChild:!0,children:(0,C.jsxDEV)(r,{to:`/settings/account`,title:e(`auth.accountTitle`),"aria-label":e(`auth.accountTitle`),children:(0,C.jsxDEV)(d,{name:`lucide:settings`,size:16},void 0,!1,{fileName:w,lineNumber:311,columnNumber:15},this)},void 0,!1,{fileName:w,lineNumber:310,columnNumber:13},this)},void 0,!1,{fileName:w,lineNumber:309,columnNumber:11},this)]},void 0,!0,{fileName:w,lineNumber:305,columnNumber:9},this)]},void 0,!0,{fileName:w,lineNumber:303,columnNumber:7},this),i&&(0,C.jsxDEV)(C.Fragment,{children:[(0,C.jsxDEV)(`section`,{className:`mb-6`,children:[(0,C.jsxDEV)(`h2`,{className:`mb-1 min-w-0 text-[11px] font-medium tracking-wide text-muted`,children:e(`settings.usersTitle`)},void 0,!1,{fileName:w,lineNumber:321,columnNumber:13},this),(0,C.jsxDEV)(`p`,{className:`mb-3 text-sm text-muted`,children:e(`settings.usersDescription`)},void 0,!1,{fileName:w,lineNumber:322,columnNumber:13},this),(0,C.jsxDEV)(c,{className:`flex items-center gap-4 px-4 py-3`,children:[(0,C.jsxDEV)(`div`,{className:`min-w-0 flex-1`,children:(0,C.jsxDEV)(`span`,{className:`font-semibold text-text`,children:e(`settings.usersTitle`)},void 0,!1,{fileName:w,lineNumber:325,columnNumber:17},this)},void 0,!1,{fileName:w,lineNumber:324,columnNumber:15},this),(0,C.jsxDEV)(p,{variant:`ghost`,size:`sm`,type:`button`,className:`shrink-0 border border-border`,asChild:!0,children:(0,C.jsxDEV)(r,{to:`/settings/users`,title:e(`settings.usersTitle`),"aria-label":e(`settings.usersTitle`),children:(0,C.jsxDEV)(d,{name:`lucide:settings`,size:16},void 0,!1,{fileName:w,lineNumber:329,columnNumber:19},this)},void 0,!1,{fileName:w,lineNumber:328,columnNumber:17},this)},void 0,!1,{fileName:w,lineNumber:327,columnNumber:15},this)]},void 0,!0,{fileName:w,lineNumber:323,columnNumber:13},this)]},void 0,!0,{fileName:w,lineNumber:320,columnNumber:11},this),(0,C.jsxDEV)(`section`,{className:`mb-6`,children:[(0,C.jsxDEV)(`h2`,{className:`mb-1 min-w-0 text-[11px] font-medium tracking-wide text-muted`,children:e(`settings.diagnosticsTitle`)},void 0,!1,{fileName:w,lineNumber:336,columnNumber:13},this),(0,C.jsxDEV)(`p`,{className:`mb-3 text-sm text-muted`,children:e(`settings.diagnosticsDescription`)},void 0,!1,{fileName:w,lineNumber:337,columnNumber:13},this),(0,C.jsxDEV)(c,{className:`flex items-center gap-4 px-4 py-3`,children:[(0,C.jsxDEV)(`div`,{className:`min-w-0 flex-1`,children:(0,C.jsxDEV)(`span`,{className:`font-semibold text-text`,children:e(`diagnostics.title`)},void 0,!1,{fileName:w,lineNumber:340,columnNumber:17},this)},void 0,!1,{fileName:w,lineNumber:339,columnNumber:15},this),(0,C.jsxDEV)(p,{variant:`ghost`,size:`sm`,type:`button`,className:`shrink-0 border border-border`,asChild:!0,children:(0,C.jsxDEV)(r,{to:`/settings/diagnostics`,title:e(`diagnostics.title`),"aria-label":e(`diagnostics.title`),children:(0,C.jsxDEV)(d,{name:`lucide:activity`,size:16},void 0,!1,{fileName:w,lineNumber:344,columnNumber:19},this)},void 0,!1,{fileName:w,lineNumber:343,columnNumber:17},this)},void 0,!1,{fileName:w,lineNumber:342,columnNumber:15},this)]},void 0,!0,{fileName:w,lineNumber:338,columnNumber:13},this)]},void 0,!0,{fileName:w,lineNumber:335,columnNumber:11},this),(0,C.jsxDEV)(`section`,{children:[(0,C.jsxDEV)(`div`,{className:`mb-1 flex items-center gap-3`,children:[(0,C.jsxDEV)(`h2`,{className:`min-w-0 text-[11px] font-medium tracking-wide text-muted`,children:e(`settings.componentsTitle`)},void 0,!1,{fileName:w,lineNumber:353,columnNumber:15},this),(0,C.jsxDEV)(p,{variant:`ghost`,size:`sm`,type:`button`,disabled:P!==null||I,onClick:ee,title:e(`plugins.checkUpdates`),className:`shrink-0 border border-border`,children:[(0,C.jsxDEV)(d,{name:`lucide:refresh-cw`,size:14,className:I?`animate-spin`:void 0},void 0,!1,{fileName:w,lineNumber:363,columnNumber:17},this),e(I?`plugins.checkingUpdates`:`plugins.checkUpdates`)]},void 0,!0,{fileName:w,lineNumber:354,columnNumber:15},this),U>0&&(0,C.jsxDEV)(p,{variant:`ghost`,size:`sm`,type:`button`,disabled:P!==null,onClick:ie,className:`shrink-0 border border-accent/40 text-accent hover:bg-accent/10 hover:text-accent`,children:e(`plugins.updateAllButton`,{count:U})},void 0,!1,{fileName:w,lineNumber:367,columnNumber:17},this)]},void 0,!0,{fileName:w,lineNumber:352,columnNumber:13},this),(0,C.jsxDEV)(`p`,{className:`mb-3 text-sm text-muted`,children:e(`settings.componentsDescription`)},void 0,!1,{fileName:w,lineNumber:379,columnNumber:13},this),!E&&M!==null&&(0,C.jsxDEV)(`p`,{className:`mb-3 text-xs text-muted`,"aria-live":`polite`,children:[U>0?e(`plugins.updatesAvailable`,{count:U}):e(`plugins.noUpdates`),` `,e(`plugins.lastChecked`,{time:new Intl.DateTimeFormat(void 0,{hour:`2-digit`,minute:`2-digit`}).format(M)})]},void 0,!0,{fileName:w,lineNumber:381,columnNumber:15},this),E?(0,C.jsxDEV)(`p`,{className:`text-muted`,children:e(`plugins.loading`)},void 0,!1,{fileName:w,lineNumber:392,columnNumber:15},this):(0,C.jsxDEV)(C.Fragment,{children:[K&&(0,C.jsxDEV)(`div`,{className:`mb-5 rounded-xl border border-accent/40 bg-accent/10 px-4 py-3 text-sm text-accent`,children:[e(`plugins.restartBannerBefore`),(0,C.jsxDEV)(`b`,{children:e(`plugins.restartBannerBold`)},void 0,!1,{fileName:w,lineNumber:398,columnNumber:21},this),e(`plugins.restartBannerAfter`)]},void 0,!0,{fileName:w,lineNumber:396,columnNumber:19},this),W&&(0,C.jsxDEV)(`div`,{className:`mb-5 rounded-xl border border-danger/40 bg-danger/10 px-4 py-3 text-sm text-danger`,children:W},void 0,!1,{fileName:w,lineNumber:403,columnNumber:19},this),(0,C.jsxDEV)(`div`,{className:`overflow-hidden rounded-lg border border-border bg-card`,children:[(0,C.jsxDEV)(`div`,{className:`flex flex-col gap-3 border-b border-border px-4 py-3 sm:flex-row sm:items-center sm:gap-4`,children:[(0,C.jsxDEV)(`div`,{className:`min-w-0 flex-1`,children:[(0,C.jsxDEV)(`div`,{className:`flex items-center gap-2`,children:[(0,C.jsxDEV)(`span`,{className:`font-semibold text-text`,children:e(`core.settings.label`)},void 0,!1,{fileName:w,lineNumber:413,columnNumber:25},this),z?.installedVersion&&(0,C.jsxDEV)(a,{variant:`secondary`,className:`text-[10px] font-medium`,children:[`v`,z.installedVersion]},void 0,!0,{fileName:w,lineNumber:415,columnNumber:27},this),ae&&(0,C.jsxDEV)(p,{variant:`ghost`,size:`sm`,type:`button`,disabled:P!==null,onClick:oe,title:e(`settings.systemUpdateTitle`),className:`shrink-0 border border-accent/40 text-accent hover:bg-accent/10 hover:text-accent`,children:e(`plugins.updateButton`)},void 0,!1,{fileName:w,lineNumber:420,columnNumber:27},this)]},void 0,!0,{fileName:w,lineNumber:412,columnNumber:23},this),(0,C.jsxDEV)(`div`,{className:`text-xs text-muted mt-0.5 truncate`,children:e(`settings.systemDescription`)},void 0,!1,{fileName:w,lineNumber:433,columnNumber:23},this)]},void 0,!0,{fileName:w,lineNumber:411,columnNumber:21},this),(0,C.jsxDEV)(`div`,{className:`flex w-full shrink-0 justify-end border-t border-border pt-3 sm:w-auto sm:border-t-0 sm:pt-0`,children:(0,C.jsxDEV)(p,{variant:`ghost`,size:`sm`,type:`button`,className:`border border-border`,asChild:!0,children:(0,C.jsxDEV)(r,{to:`/settings/system`,title:e(`core.settings.label`),"aria-label":e(`core.settings.label`),children:(0,C.jsxDEV)(d,{name:`lucide:settings`,size:16},void 0,!1,{fileName:w,lineNumber:442,columnNumber:27},this)},void 0,!1,{fileName:w,lineNumber:437,columnNumber:25},this)},void 0,!1,{fileName:w,lineNumber:436,columnNumber:23},this)},void 0,!1,{fileName:w,lineNumber:435,columnNumber:21},this)]},void 0,!0,{fileName:w,lineNumber:410,columnNumber:19},this),_.map(t=>{let n=Y(t.id),i=t.enabled?_.filter(e=>e.enabled&&e.id!==t.id&&e.dependsOn.includes(t.id)):[],a=i.length>0,o=a?e(`plugins.blockedByDependents`,{list:i.map(e=>J(e.id)).join(`, `)}):t.enabled?e(`plugins.switchDisable`):e(`plugins.switchEnable`),s=[t.dependsOn.length>0&&`${e(`plugins.metaDepends`)} ${t.dependsOn.map(J).join(`, `)}`,t.libraries.length>0&&`${e(`plugins.metaLibraries`)} ${t.libraries.map(X).join(`, `)}`,t.extends.length>0&&`${e(`plugins.metaExtends`)} ${t.extends.map(e=>Z(t.id,e)).join(`, `)}`].filter(Boolean).join(` · `)||`—`;return(0,C.jsxDEV)(`div`,{className:`flex flex-col gap-3 border-b border-border px-4 py-3 last:border-b-0 sm:flex-row sm:items-center sm:gap-4`,children:[(0,C.jsxDEV)(`div`,{className:`min-w-0 flex-1`,children:[(0,C.jsxDEV)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,C.jsxDEV)(`span`,{className:`font-semibold text-text`,children:J(t.id)},void 0,!1,{fileName:w,lineNumber:479,columnNumber:29},this),(0,C.jsxDEV)(j,{plugin:t,busy:R(t.id),onUpdate:()=>re(t)},void 0,!1,{fileName:w,lineNumber:480,columnNumber:29},this)]},void 0,!0,{fileName:w,lineNumber:478,columnNumber:27},this),n&&(0,C.jsxDEV)(`div`,{className:`text-xs text-muted mt-0.5 truncate`,children:n},void 0,!1,{fileName:w,lineNumber:482,columnNumber:43},this),(0,C.jsxDEV)(`div`,{className:`text-xs text-muted mt-0.5 truncate`,children:s},void 0,!1,{fileName:w,lineNumber:483,columnNumber:27},this)]},void 0,!0,{fileName:w,lineNumber:477,columnNumber:25},this),(0,C.jsxDEV)(`div`,{className:`flex w-full shrink-0 items-center justify-end gap-2 border-t border-border pt-3 sm:w-auto sm:border-t-0 sm:pt-0`,children:[t.hasSettings&&(0,C.jsxDEV)(p,{variant:`ghost`,size:`sm`,type:`button`,className:`border border-border`,asChild:!0,children:(0,C.jsxDEV)(r,{to:`/settings/${t.id}`,title:e(`plugins.settingsTitle`,{defaultValue:`Settings`}),"aria-label":e(`plugins.settingsTitle`,{defaultValue:`Settings`}),children:(0,C.jsxDEV)(d,{name:`lucide:settings`,size:16},void 0,!1,{fileName:w,lineNumber:493,columnNumber:33},this)},void 0,!1,{fileName:w,lineNumber:488,columnNumber:31},this)},void 0,!1,{fileName:w,lineNumber:487,columnNumber:29},this),(0,C.jsxDEV)(p,{variant:`ghost`,size:`iconSm`,type:`button`,disabled:R(t.id),onClick:()=>te(t),title:e(`plugins.purgeTitle`),"aria-label":e(`plugins.purgeTitle`),className:`border border-danger/40 text-danger hover:bg-danger/10 hover:text-danger`,children:(0,C.jsxDEV)(d,{name:`lucide:trash-2`,size:16},void 0,!1,{fileName:w,lineNumber:507,columnNumber:29},this)},void 0,!1,{fileName:w,lineNumber:497,columnNumber:27},this),(0,C.jsxDEV)(`span`,{title:o,children:(0,C.jsxDEV)(l,{checked:t.enabled,disabled:R(t.id)||a,onCheckedChange:()=>ne(t),title:o},void 0,!1,{fileName:w,lineNumber:512,columnNumber:29},this)},void 0,!1,{fileName:w,lineNumber:511,columnNumber:27},this)]},void 0,!0,{fileName:w,lineNumber:485,columnNumber:25},this)]},t.id,!0,{fileName:w,lineNumber:473,columnNumber:23},this)})]},void 0,!0,{fileName:w,lineNumber:408,columnNumber:17},this)]},void 0,!0,{fileName:w,lineNumber:394,columnNumber:15},this)]},void 0,!0,{fileName:w,lineNumber:351,columnNumber:11},this)]},void 0,!0,{fileName:w,lineNumber:318,columnNumber:9},this)]},void 0,!0,{fileName:w,lineNumber:289,columnNumber:5},this)}function j({plugin:e,busy:t,onUpdate:r}){let{t:i}=n(),o=!!(e.latestVersion&&x(e.latestVersion,e.installedVersion));return(0,C.jsxDEV)(C.Fragment,{children:[(0,C.jsxDEV)(a,{variant:`secondary`,className:`text-[11px] font-medium`,children:[`v`,e.installedVersion]},void 0,!0,{fileName:w,lineNumber:538,columnNumber:7},this),o&&(0,C.jsxDEV)(p,{variant:`ghost`,size:`sm`,type:`button`,disabled:t,onClick:r,title:i(`plugins.updateTitle`,{from:e.installedVersion,to:e.latestVersion}),className:`shrink-0 border border-accent/40 text-accent hover:bg-accent/10 hover:text-accent`,children:i(`plugins.updateButton`)},void 0,!1,{fileName:w,lineNumber:542,columnNumber:9},this)]},void 0,!0,{fileName:w,lineNumber:537,columnNumber:5},this)}export{A as SettingsPage};
@@ -1 +0,0 @@
1
- import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{a as t,t as n}from"./i18n-vendor-T6EnJ_TL.js";import{t as r}from"./react-vendor-CzSUaSLk.js";import{Bn as i,In as a,Ln as o,Rn as s,yr as c,zn as l}from"./src-C9WAFG8V.js";import{i as u,r as d}from"./input-DqF3I-kT.js";var f=d(`book-open`,[[`path`,{d:`M12 7v14`,key:`1akyts`}],[`path`,{d:`M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z`,key:`ruj8y`}]]),p=d(`moon`,[[`path`,{d:`M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401`,key:`kfwtm`}]]),m=d(`sun`,[[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`m4.93 4.93 1.41 1.41`,key:`149t6j`}],[`path`,{d:`m17.66 17.66 1.41 1.41`,key:`ptbguv`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`m6.34 17.66-1.41 1.41`,key:`1m8zz5`}],[`path`,{d:`m19.07 4.93-1.41 1.41`,key:`1shlcs`}]]),h=e(t(),1),g=`coffer-theme`;function _(e){return e===`light`||e===`dark`||e===`eink`?e:`auto`}function v(){try{return _(localStorage.getItem(g))}catch{return _(null)}}function y(e){if(e===`auto`){delete document.documentElement.dataset.theme;try{localStorage.removeItem(g)}catch{}}else{document.documentElement.dataset.theme=e;try{localStorage.setItem(g,e)}catch{}}}function b(){let[e,t]=(0,h.useState)(()=>v());return{choice:e,setChoice:(0,h.useCallback)(e=>{y(e),t(e)},[])}}var x=r(),S=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/theme/ThemeSwitcher.tsx`,C=[{value:`auto`,Icon:c,labelKey:`theme.auto`},{value:`light`,Icon:m,labelKey:`theme.light`},{value:`dark`,Icon:p,labelKey:`theme.dark`},{value:`eink`,Icon:f,labelKey:`theme.eink`}];function w({direction:e=`up`,compact:t=!1}){let{t:r}=n(),{choice:c,setChoice:d}=b(),f=C.find(e=>e.value===c)??C[0],p=f.Icon;return(0,x.jsxDEV)(a,{children:[(0,x.jsxDEV)(i,{"aria-label":r(`theme.label`),className:u(`flex min-h-11 touch-manipulation items-center rounded-xl text-sm text-muted outline-none transition-colors hover:bg-elevated hover:text-text focus-visible:ring-2 focus-visible:ring-ring`,t?`w-full flex-col gap-0.5 py-2`:`w-full gap-2 px-3 py-2`),children:[(0,x.jsxDEV)(p,{size:t?18:16},void 0,!1,{fileName:S,lineNumber:37,columnNumber:9},this),t?(0,x.jsxDEV)(`span`,{className:`text-[10px] font-semibold`,children:r(f.labelKey)},void 0,!1,{fileName:S,lineNumber:39,columnNumber:11},this):(0,x.jsxDEV)(`span`,{className:`flex-1 text-left`,children:r(f.labelKey)},void 0,!1,{fileName:S,lineNumber:41,columnNumber:11},this)]},void 0,!0,{fileName:S,lineNumber:30,columnNumber:7},this),(0,x.jsxDEV)(s,{align:`end`,side:e===`up`?`top`:`bottom`,children:C.map(e=>{let t=e.Icon;return(0,x.jsxDEV)(l,{onSelect:()=>d(e.value),className:u(`min-h-11 touch-manipulation`,e.value===c&&`text-accent`),children:[(0,x.jsxDEV)(t,{size:15},void 0,!1,{fileName:S,lineNumber:53,columnNumber:15},this),(0,x.jsxDEV)(`span`,{className:`flex-1 text-left`,children:r(e.labelKey)},void 0,!1,{fileName:S,lineNumber:54,columnNumber:15},this),(0,x.jsxDEV)(o,{active:e.value===c},void 0,!1,{fileName:S,lineNumber:55,columnNumber:15},this)]},e.value,!0,{fileName:S,lineNumber:48,columnNumber:13},this)})},void 0,!1,{fileName:S,lineNumber:44,columnNumber:7},this)]},void 0,!0,{fileName:S,lineNumber:29,columnNumber:5},this)}export{w as t};
@@ -1 +0,0 @@
1
- import{r as e}from"./input-DqF3I-kT.js";var t=e(`arrow-left`,[[`path`,{d:`m12 19-7-7 7-7`,key:`1l729n`}],[`path`,{d:`M19 12H5`,key:`x3x0zl`}]]);export{t};