@hienlh/ppm 0.20.6 → 0.20.8

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 (172) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/assets/skills/ppm/SKILL.md +1 -1
  3. package/assets/skills/ppm/references/http-api.md +1 -1
  4. package/dist/web/assets/{accounts-settings-section-B-F7U-gq.js → accounts-settings-section-CRXY4Bsc.js} +1 -1
  5. package/dist/web/assets/{ai-resource-editor-qRHwpktf.js → ai-resource-editor-CMQfhxXp.js} +1 -1
  6. package/dist/web/assets/ai-settings-section-446NZWhI.js +1 -0
  7. package/dist/web/assets/{ai-settings-section-DSlsTrpf.js → ai-settings-section-M07DCjAI.js} +1 -1
  8. package/dist/web/assets/api-client-CYZ79uUS.js +1 -0
  9. package/dist/web/assets/{api-client-CEYCBt_0.js → api-client-DwXlVfXP.js} +1 -1
  10. package/dist/web/assets/{api-settings-D18Q4Ocp.js → api-settings-BQIwZoLm.js} +1 -1
  11. package/dist/web/assets/{api-themes-sSv-6OLk.js → api-themes-CmJZLEY1.js} +1 -1
  12. package/dist/web/assets/{appearance-settings-section-BMlkj9U2.js → appearance-settings-section-BBlJtEm5.js} +1 -1
  13. package/dist/web/assets/arrow-left-DpXaakMC.js +1 -0
  14. package/dist/web/assets/{audio-preview-B4E5_7TW.js → audio-preview-DPMXOZ55.js} +1 -1
  15. package/dist/web/assets/{bot-D6sx11y0.js → bot-D3-n2i31.js} +1 -1
  16. package/dist/web/assets/{brain-KDa9jFRq.js → brain-CuAQMSBE.js} +1 -1
  17. package/dist/web/assets/{button-DX32ffge.js → button-zgoXa9r7.js} +1 -1
  18. package/dist/web/assets/{calendar-clock-C1asT-gk.js → calendar-clock-CDP7AVjA.js} +1 -1
  19. package/dist/web/assets/{chat-tab-DmqV3MlC.js → chat-tab-Dn45anqr.js} +4 -4
  20. package/dist/web/assets/check-BQKbhtoA.js +1 -0
  21. package/dist/web/assets/{chevron-down-Dp0rpHb8.js → chevron-down-B9puixxZ.js} +1 -1
  22. package/dist/web/assets/chevron-right-DK_HbYZC.js +1 -0
  23. package/dist/web/assets/{chevron-up-8PbsNiJp.js → chevron-up-BPAINgoK.js} +1 -1
  24. package/dist/web/assets/circle-OKk7s0DX.js +1 -0
  25. package/dist/web/assets/{circle-question-mark-CzR7YRc-.js → circle-question-mark-qcWYO1P_.js} +1 -1
  26. package/dist/web/assets/clock-BmPiGrSF.js +1 -0
  27. package/dist/web/assets/code-CRiIHSiv.js +1 -0
  28. package/dist/web/assets/{code-editor-C4CriX9c.js → code-editor-CKASeDbu.js} +2 -2
  29. package/dist/web/assets/{conflict-editor-LfQoRcK-.js → conflict-editor-C-Nv8YYj.js} +1 -1
  30. package/dist/web/assets/{context-menu-CJL8L98s.js → context-menu-DM9CgxGh.js} +1 -1
  31. package/dist/web/assets/{copy-BewHj66E.js → copy-CXuIH4VC.js} +1 -1
  32. package/dist/web/assets/{createLucideIcon-D8pyde1A.js → createLucideIcon-D6fVXe3s.js} +1 -1
  33. package/dist/web/assets/{csv-preview-BEYKn68B.js → csv-preview-ou3KFzIH.js} +1 -1
  34. package/dist/web/assets/{data-grid-overlay-editor-CbBkhhJa.js → data-grid-overlay-editor-dnWnblYo.js} +1 -1
  35. package/dist/web/assets/{data-grid-types-DeY60CLU.js → data-grid-types-BfGeMDy0.js} +1 -1
  36. package/dist/web/assets/{database-Y3ESDK4-.js → database-Dz0W7OH7.js} +1 -1
  37. package/dist/web/assets/{database-viewer-BL9R-ciJ.js → database-viewer-Ckqg_-SS.js} +1 -1
  38. package/dist/web/assets/{diff-viewer-D91SI_zb.js → diff-viewer-CMzFnBCD.js} +1 -1
  39. package/dist/web/assets/{dist-B0J2eYBz.js → dist-CWMPvPem.js} +1 -1
  40. package/dist/web/assets/{docx-preview-Xy7SZ7Vf.js → docx-preview-B7Aospmh.js} +1 -1
  41. package/dist/web/assets/{download-DG3_9xXy.js → download-D70Q4Ba6.js} +1 -1
  42. package/dist/web/assets/{edit-diff-preview-xdDQvPhs.js → edit-diff-preview-BvgPvuhH.js} +1 -1
  43. package/dist/web/assets/{esm-B-vXxHUd.js → esm-BHyWbWKE.js} +1 -1
  44. package/dist/web/assets/{explorer-body-ColVUjgk.js → explorer-body-CVx4qaIF.js} +1 -1
  45. package/dist/web/assets/explorer-window-content-CqKVMkgW.js +1 -0
  46. package/dist/web/assets/{extension-manager-section-B-BRHGu1.js → extension-manager-section-CtcpVMWs.js} +1 -1
  47. package/dist/web/assets/{extension-webview-DufzanN9.js → extension-webview-DZ_QRZSM.js} +1 -1
  48. package/dist/web/assets/{eye-gWwaF4Lg.js → eye-dfZn7evX.js} +1 -1
  49. package/dist/web/assets/{eye-off-GjXVuAOn.js → eye-off-CmtfyRUD.js} +1 -1
  50. package/dist/web/assets/{file-exclamation-point-JzhTU2TX.js → file-exclamation-point-D5K2aaLi.js} +1 -1
  51. package/dist/web/assets/{files-settings-section-Do5YbTUK.js → files-settings-section-D7v-6nTa.js} +1 -1
  52. package/dist/web/assets/{flask-conical-tp8gyZGh.js → flask-conical-Dix4qNDj.js} +1 -1
  53. package/dist/web/assets/{folder-symlink-fQRoG_rV.js → folder-symlink-BavsIzoj.js} +1 -1
  54. package/dist/web/assets/{general-settings-section-B-n_PYzs.js → general-settings-section-BW_h8pdA.js} +1 -1
  55. package/dist/web/assets/{git-log-panel-BQzOHgxG.js → git-log-panel-BQZkJDu0.js} +1 -1
  56. package/dist/web/assets/{glide-data-grid-BUS44oLM.js → glide-data-grid-JKEslqGe.js} +4 -4
  57. package/dist/web/assets/{group-chat-tab-CkHXqorZ.js → group-chat-tab-CTAhtVCr.js} +1 -1
  58. package/dist/web/assets/{hand-x0ejq3fS.js → hand-CIPALZsE.js} +1 -1
  59. package/dist/web/assets/{image-preview-fuU4h2nr.js → image-preview-V5SglTWk.js} +1 -1
  60. package/dist/web/assets/{index-Cx1meAwb.js → index-DVNJ2W5R.js} +7 -7
  61. package/dist/web/assets/{jira-watcher-section-BQ4hVqWo.js → jira-watcher-section-VyzVbAnw.js} +1 -1
  62. package/dist/web/assets/{key-round-CQpDrDxg.js → key-round-oIll4vo-.js} +1 -1
  63. package/dist/web/assets/keybindings-store-B5dEz0n1.js +1 -0
  64. package/dist/web/assets/{keyboard-DiOYrs6C.js → keyboard-BLwfiRkT.js} +1 -1
  65. package/dist/web/assets/{keyboard-shortcuts-section-BZUYdXGx.js → keyboard-shortcuts-section-DOJi75mV.js} +1 -1
  66. package/dist/web/assets/{lib-el9rA30D.js → lib-BAsciSLw.js} +1 -1
  67. package/dist/web/assets/loader-circle-DxI3O9_f.js +1 -0
  68. package/dist/web/assets/markdown-renderer-BGPo364Y.js +1 -0
  69. package/dist/web/assets/markdown-renderer-DtQIHtLs.js +3 -0
  70. package/dist/web/assets/{media-url-BMeBaB0q.js → media-url-TYMlO0M5.js} +1 -1
  71. package/dist/web/assets/{mobile-bottom-sheet-CmySDB6I.js → mobile-bottom-sheet-Ch1e_JBq.js} +1 -1
  72. package/dist/web/assets/mobile-explorer-sheet-C1q_DhrI.js +1 -0
  73. package/dist/web/assets/{monitor-C835ucWH.js → monitor-CG69bSMW.js} +1 -1
  74. package/dist/web/assets/notification-store-DvUtkAXs.js +1 -0
  75. package/dist/web/assets/{notifications-settings-section-JQ3l-Qp-.js → notifications-settings-section-CeRvkXOM.js} +1 -1
  76. package/dist/web/assets/{number-overlay-editor-DRjTIcPH.js → number-overlay-editor-DldrUNs4.js} +1 -1
  77. package/dist/web/assets/{overview-panel-DiiA3B_Z.js → overview-panel-DA0QB1-5.js} +1 -1
  78. package/dist/web/assets/{panel-store-BmdcSBNb.js → panel-store-D42k25jy.js} +1 -1
  79. package/dist/web/assets/{pdf-preview-B-JAU8JV.js → pdf-preview-Cq33D5ej.js} +1 -1
  80. package/dist/web/assets/portal-container-context-DeLx1cOI.js +1 -0
  81. package/dist/web/assets/{postgres-viewer-B--Y59n5.js → postgres-viewer-C__Z0C0s.js} +3 -3
  82. package/dist/web/assets/power-CvtnQHU4.js +1 -0
  83. package/dist/web/assets/{ppmbot-settings-section-D1SCOc0_.js → ppmbot-settings-section-Cma4VU7p.js} +1 -1
  84. package/dist/web/assets/{process-table-D9z7cEmb.js → process-table-DH_HXtGc.js} +1 -1
  85. package/dist/web/assets/{project-store-wWZ6bjwq.js → project-store-C83MMnlt.js} +1 -1
  86. package/dist/web/assets/{proxy-settings-section-y7VwH0Hf.js → proxy-settings-section-xrTsFlTF.js} +1 -1
  87. package/dist/web/assets/{query-audit-section-Ca_gRQ_s.js → query-audit-section-Drk97gb8.js} +1 -1
  88. package/dist/web/assets/{react-D1Yg256j.js → react-DqIU0LFM.js} +1 -1
  89. package/dist/web/assets/remote-desktop-mobile-sheet-6JdUr0Bj.js +2 -0
  90. package/dist/web/assets/{remote-desktop-mobile-view-CGQ8vSf1.js → remote-desktop-mobile-view-Gk8UCVIx.js} +1 -1
  91. package/dist/web/assets/{remote-desktop-readiness-gate-BmC3b05e.js → remote-desktop-readiness-gate-6reSZvad.js} +1 -1
  92. package/dist/web/assets/{remote-desktop-window-content-Cdaoltdz.js → remote-desktop-window-content-BW2KqONI.js} +1 -1
  93. package/dist/web/assets/{run-in-terminal-wHKwAnWP.js → run-in-terminal-DoTOtgQS.js} +1 -1
  94. package/dist/web/assets/{save-CipGrG1k.js → save-B1y4KIK9.js} +1 -1
  95. package/dist/web/assets/{schedules-settings-section--0s10CfA.js → schedules-settings-section-DcKEz-S7.js} +1 -1
  96. package/dist/web/assets/{send-Bb0jtcR6.js → send-B9VUQlEK.js} +1 -1
  97. package/dist/web/assets/{send-to-chat-BI7-fFpG.js → send-to-chat-Kl-0dNwN.js} +1 -1
  98. package/dist/web/assets/{separator-W_hJcXPk.js → separator-DvCsdlws.js} +1 -1
  99. package/dist/web/assets/{settings-body-DEMqFm5z.js → settings-body-CcKls51a.js} +2 -2
  100. package/dist/web/assets/{settings-store-CzLnTR8p.js → settings-store-_s4xFcFq.js} +2 -2
  101. package/dist/web/assets/settings-tab-ChAk8nh2.js +1 -0
  102. package/dist/web/assets/settings-window-content-sA1K0cPW.js +1 -0
  103. package/dist/web/assets/{shield-check-BsG3LV8i.js → shield-check-BJSX7cAS.js} +1 -1
  104. package/dist/web/assets/{shield-off-7jKWpJBD.js → shield-off-E1cQwXdc.js} +1 -1
  105. package/dist/web/assets/{sparkles-Dh-_J2Rd.js → sparkles-blTKn0vi.js} +1 -1
  106. package/dist/web/assets/{sql-query-editor-Clo90z8-.js → sql-query-editor-BoYxc5vd.js} +1 -1
  107. package/dist/web/assets/{sqlite-viewer-C08QQR_L.js → sqlite-viewer-O5lF3MMj.js} +1 -1
  108. package/dist/web/assets/{streaming-store-9XVmAMfV.js → streaming-store-QQvg1cS-.js} +1 -1
  109. package/dist/web/assets/{system-monitor-body-30-TFH3a.js → system-monitor-body-C2mVJ7PV.js} +2 -2
  110. package/dist/web/assets/system-monitor-tab-tXkg3jpV.js +1 -0
  111. package/dist/web/assets/system-monitor-window-content-BaKoFDEz.js +1 -0
  112. package/dist/web/assets/{tab-host-window-content-C6eG_Rf1.js → tab-host-window-content-C7F6D8hJ.js} +1 -1
  113. package/dist/web/assets/{tab-store-1xYJb0gM.js → tab-store-B2ip0-Mv.js} +1 -1
  114. package/dist/web/assets/{table-CRJsmfeg.js → table-8HT8BG30.js} +1 -1
  115. package/dist/web/assets/team-member-sheet-BA70_jmM.js +2 -0
  116. package/dist/web/assets/{team-member-window-content-BN3luct-.js → team-member-window-content-BwOTsc9r.js} +1 -1
  117. package/dist/web/assets/{terminal-tab-afylLiLY.js → terminal-tab-DlZW3MCn.js} +1 -1
  118. package/dist/web/assets/{text-wrap-oiekm5SB.js → text-wrap-DafY0-Pa.js} +1 -1
  119. package/dist/web/assets/{tool-cards-Ct1QdT8c.js → tool-cards-yiwO861p.js} +3 -3
  120. package/dist/web/assets/{use-accounts-data-C0bvcMhi.js → use-accounts-data-B9t4BQaI.js} +1 -1
  121. package/dist/web/assets/{use-blob-url-CrwoZJUJ.js → use-blob-url-D358Rpyp.js} +1 -1
  122. package/dist/web/assets/{use-coarse-long-press-BmI_GVW5.js → use-coarse-long-press-BsBpxWup.js} +1 -1
  123. package/dist/web/assets/{use-inline-blame-C1G-_NjC.js → use-inline-blame-D2pZjDoA.js} +1 -1
  124. package/dist/web/assets/{use-is-mobile-D1weanbj.js → use-is-mobile-Bi42QhIi.js} +1 -1
  125. package/dist/web/assets/{use-monaco-theme-cgPbRDUm.js → use-monaco-theme-DTPfPPvF.js} +1 -1
  126. package/dist/web/assets/use-open-team-member-DGEx9xB0.js +1 -0
  127. package/dist/web/assets/{use-remote-desktop-display-choice-DSqF1Rgx.js → use-remote-desktop-display-choice-BnVT4dhX.js} +1 -1
  128. package/dist/web/assets/{use-visual-viewport-Bfl3Bxxb.js → use-visual-viewport-CNdG4QHH.js} +1 -1
  129. package/dist/web/assets/use-websocket-DQg9BQcq.js +1 -0
  130. package/dist/web/assets/{vendor-markdown-Ls5AcU91.js → vendor-markdown-CuWCHIVb.js} +1 -1
  131. package/dist/web/assets/{vendor-ui-CaeeFO0B.js → vendor-ui-BBdkypKW.js} +1 -1
  132. package/dist/web/assets/{video-preview-BTzstVhM.js → video-preview-Dc4YbBqm.js} +1 -1
  133. package/dist/web/assets/{window-pip-registry-CrCYYTTf.js → window-pip-registry-BWxaVLj5.js} +1 -1
  134. package/dist/web/assets/{window-store-D0HbQ1pM.js → window-store-CfxP5yor.js} +1 -1
  135. package/dist/web/assets/ws-auth-FRzMmfQx.js +1 -0
  136. package/dist/web/assets/x-Bdaog6Az.js +1 -0
  137. package/dist/web/index.html +38 -38
  138. package/dist/web/sw.js +1 -1
  139. package/docs/architecture/ai-chat-and-providers.md +4 -0
  140. package/package.json +1 -1
  141. package/src/services/db.service.ts +18 -4
  142. package/src/web/components/shared/markdown-context.ts +6 -0
  143. package/src/web/components/shared/markdown-renderer.tsx +7 -3
  144. package/src/web/hooks/use-chat.ts +4 -0
  145. package/src/web/hooks/use-websocket.ts +7 -1
  146. package/dist/web/assets/ai-settings-section-BePrVceb.js +0 -1
  147. package/dist/web/assets/api-client-QfreGirP.js +0 -1
  148. package/dist/web/assets/arrow-left-CyFcsyzD.js +0 -1
  149. package/dist/web/assets/check-DN75Ucvz.js +0 -1
  150. package/dist/web/assets/chevron-right-De-Wz5Lz.js +0 -1
  151. package/dist/web/assets/circle-BCy0AUCo.js +0 -1
  152. package/dist/web/assets/clock-C1CQUQPZ.js +0 -1
  153. package/dist/web/assets/code-DJgYrFzm.js +0 -1
  154. package/dist/web/assets/explorer-window-content-VSMJfZC2.js +0 -1
  155. package/dist/web/assets/keybindings-store-yYx88hvw.js +0 -1
  156. package/dist/web/assets/loader-circle-DPMrnLQ2.js +0 -1
  157. package/dist/web/assets/markdown-renderer-BA3C2L-a.js +0 -3
  158. package/dist/web/assets/markdown-renderer-CMFkajd7.js +0 -1
  159. package/dist/web/assets/mobile-explorer-sheet-gvO7a80O.js +0 -1
  160. package/dist/web/assets/notification-store-CCh6a8RD.js +0 -1
  161. package/dist/web/assets/portal-container-context-DKymYOY-.js +0 -1
  162. package/dist/web/assets/power-CriQkeK5.js +0 -1
  163. package/dist/web/assets/remote-desktop-mobile-sheet-CdO2aMXl.js +0 -2
  164. package/dist/web/assets/settings-tab-Dh1FpBny.js +0 -1
  165. package/dist/web/assets/settings-window-content-3KrQ6imZ.js +0 -1
  166. package/dist/web/assets/system-monitor-tab-ChIXfOWg.js +0 -1
  167. package/dist/web/assets/system-monitor-window-content-C1Cd_pT7.js +0 -1
  168. package/dist/web/assets/team-member-sheet-BhatQbL1.js +0 -2
  169. package/dist/web/assets/use-open-team-member-CSUU7Z8N.js +0 -1
  170. package/dist/web/assets/use-websocket-BQssVSIR.js +0 -1
  171. package/dist/web/assets/ws-auth-D111jj32.js +0 -1
  172. package/dist/web/assets/x-CxoBA0po.js +0 -1
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{S as t}from"./vendor-markdown-Ls5AcU91.js";import{t as n}from"./createLucideIcon-D8pyde1A.js";var r=n(`ellipsis`,[[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}],[`circle`,{cx:`19`,cy:`12`,r:`1`,key:`1wjl8i`}],[`circle`,{cx:`5`,cy:`12`,r:`1`,key:`1pcz8c`}]]),i=e(t(),1),a=400,o=10;function s(){let[e,t]=(0,i.useState)(()=>typeof window<`u`&&window.matchMedia?.(`(pointer: coarse)`).matches===!0);return(0,i.useEffect)(()=>{let e=window.matchMedia?.(`(pointer: coarse)`);if(!e)return;let n=()=>t(e.matches);return e.addEventListener(`change`,n),()=>e.removeEventListener(`change`,n)},[]),e}function c(e){let t=s(),n=(0,i.useRef)(null),r=(0,i.useRef)(null),c=(0,i.useRef)(!1),l=(0,i.useCallback)(()=>{n.current&&clearTimeout(n.current),n.current=null},[]);(0,i.useEffect)(()=>l,[l]);let u=(0,i.useCallback)(t=>{let i=t.touches[0];if(!i)return;let o=t.currentTarget;r.current={x:i.clientX,y:i.clientY},c.current=!1,l(),n.current=setTimeout(()=>{c.current=!0,e?.(),o.dispatchEvent(new MouseEvent(`contextmenu`,{bubbles:!0,cancelable:!0,clientX:i.clientX,clientY:i.clientY}))},a)},[l,e]),d=(0,i.useCallback)(e=>{let t=e.touches[0];!t||!r.current||(Math.abs(t.clientX-r.current.x)>o||Math.abs(t.clientY-r.current.y)>o)&&l()},[l]);return t?{onTouchStart:u,onTouchMove:d,onTouchEnd:l}:{}}export{s as n,r,c as t};
1
+ import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t}from"./vendor-markdown-CuWCHIVb.js";import{t as n}from"./createLucideIcon-D6fVXe3s.js";var r=n(`ellipsis`,[[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}],[`circle`,{cx:`19`,cy:`12`,r:`1`,key:`1wjl8i`}],[`circle`,{cx:`5`,cy:`12`,r:`1`,key:`1pcz8c`}]]),i=e(t(),1),a=400,o=10;function s(){let[e,t]=(0,i.useState)(()=>typeof window<`u`&&window.matchMedia?.(`(pointer: coarse)`).matches===!0);return(0,i.useEffect)(()=>{let e=window.matchMedia?.(`(pointer: coarse)`);if(!e)return;let n=()=>t(e.matches);return e.addEventListener(`change`,n),()=>e.removeEventListener(`change`,n)},[]),e}function c(e){let t=s(),n=(0,i.useRef)(null),r=(0,i.useRef)(null),c=(0,i.useRef)(!1),l=(0,i.useCallback)(()=>{n.current&&clearTimeout(n.current),n.current=null},[]);(0,i.useEffect)(()=>l,[l]);let u=(0,i.useCallback)(t=>{let i=t.touches[0];if(!i)return;let o=t.currentTarget;r.current={x:i.clientX,y:i.clientY},c.current=!1,l(),n.current=setTimeout(()=>{c.current=!0,e?.(),o.dispatchEvent(new MouseEvent(`contextmenu`,{bubbles:!0,cancelable:!0,clientX:i.clientX,clientY:i.clientY}))},a)},[l,e]),d=(0,i.useCallback)(e=>{let t=e.touches[0];!t||!r.current||(Math.abs(t.clientX-r.current.x)>o||Math.abs(t.clientY-r.current.y)>o)&&l()},[l]);return t?{onTouchStart:u,onTouchMove:d,onTouchEnd:l}:{}}export{s as n,r,c as t};
@@ -1,4 +1,4 @@
1
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{S as t}from"./vendor-markdown-Ls5AcU91.js";import{t as n}from"./createLucideIcon-D8pyde1A.js";import{i as r,n as i}from"./api-client-CEYCBt_0.js";var a=n(`user-round`,[[`circle`,{cx:`12`,cy:`8`,r:`5`,key:`1hypcn`}],[`path`,{d:`M20 21a8 8 0 0 0-16 0`,key:`rfgkzh`}]]);`0`.repeat(40);function o(e){return/^0+$/.test(e)}function s(e,t=Date.now()){if(!e)return``;if(o(e.hash))return`You, uncommitted changes`;let n=e.author||`Unknown`,r=e.authorTime>0?c(e.authorTime*1e3,t):``,i=r?`${n}, ${r}`:n;return e.summary?`${i} • ${e.summary}`:i}function c(e,t=Date.now()){let n=Math.max(0,Math.round((t-e)/1e3));if(n<60)return`just now`;for(let[e,t,r]of[[3600,60,`minute`],[86400,3600,`hour`],[2592e3,86400,`day`],[31536e3,2592e3,`month`],[1/0,31536e3,`year`]])if(n<e){let e=Math.floor(n/t);return`${e} ${r}${e===1?``:`s`} ago`}return`just now`}var l=e(t(),1),u=`inline-blame-styles`,d=`
1
+ import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t}from"./vendor-markdown-CuWCHIVb.js";import{t as n}from"./createLucideIcon-D6fVXe3s.js";import{i as r,n as i}from"./api-client-DwXlVfXP.js";var a=n(`user-round`,[[`circle`,{cx:`12`,cy:`8`,r:`5`,key:`1hypcn`}],[`path`,{d:`M20 21a8 8 0 0 0-16 0`,key:`rfgkzh`}]]);`0`.repeat(40);function o(e){return/^0+$/.test(e)}function s(e,t=Date.now()){if(!e)return``;if(o(e.hash))return`You, uncommitted changes`;let n=e.author||`Unknown`,r=e.authorTime>0?c(e.authorTime*1e3,t):``,i=r?`${n}, ${r}`:n;return e.summary?`${i} • ${e.summary}`:i}function c(e,t=Date.now()){let n=Math.max(0,Math.round((t-e)/1e3));if(n<60)return`just now`;for(let[e,t,r]of[[3600,60,`minute`],[86400,3600,`hour`],[2592e3,86400,`day`],[31536e3,2592e3,`month`],[1/0,31536e3,`year`]])if(n<e){let e=Math.floor(n/t);return`${e} ${r}${e===1?``:`s`} ago`}return`just now`}var l=e(t(),1),u=`inline-blame-styles`,d=`
2
2
  .inline-blame-annotation {
3
3
  color: var(--color-muted-foreground);
4
4
  opacity: 0.6;
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{S as t}from"./vendor-markdown-Ls5AcU91.js";var n=e(t(),1);function r(e){return window.addEventListener(`resize`,e),()=>window.removeEventListener(`resize`,e)}function i(){return typeof window<`u`&&window.innerWidth<768}function a(){return!1}function o(){return(0,n.useSyncExternalStore)(r,i,a)}function s(){return typeof window<`u`&&window.innerWidth<768}export{o as n,s as t};
1
+ import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t}from"./vendor-markdown-CuWCHIVb.js";var n=e(t(),1);function r(e){return window.addEventListener(`resize`,e),()=>window.removeEventListener(`resize`,e)}function i(){return typeof window<`u`&&window.innerWidth<768}function a(){return!1}function o(){return(0,n.useSyncExternalStore)(r,i,a)}function s(){return typeof window<`u`&&window.innerWidth<768}export{o as n,s as t};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{S as t}from"./vendor-markdown-Ls5AcU91.js";import{t as n}from"./settings-store-CzLnTR8p.js";import{r,t as i}from"./apply-theme-BVXAUYoN.js";import{t as a}from"./resolve-theme-CMp5xxCW.js";import{o}from"./index-Cx1meAwb.js";var s=e(t(),1);function c(){let e=n(e=>e.themeStyle),t=n(e=>e.themeMode),c=n(e=>e.customThemeId),l=n(e=>e.customThemes),u=()=>o(r()??a(e,t,l,c)),[d,f]=(0,s.useState)(u);return(0,s.useEffect)(()=>{f(u());let e=()=>f(u());return window.addEventListener(i,e),()=>window.removeEventListener(i,e)},[e,t,c,l]),d}export{c as t};
1
+ import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t}from"./vendor-markdown-CuWCHIVb.js";import{t as n}from"./settings-store-_s4xFcFq.js";import{r,t as i}from"./apply-theme-BVXAUYoN.js";import{t as a}from"./resolve-theme-CMp5xxCW.js";import{o}from"./index-DVNJ2W5R.js";var s=e(t(),1);function c(){let e=n(e=>e.themeStyle),t=n(e=>e.themeMode),c=n(e=>e.customThemeId),l=n(e=>e.customThemes),u=()=>o(r()??a(e,t,l,c)),[d,f]=(0,s.useState)(u);return(0,s.useEffect)(()=>{f(u());let e=()=>f(u());return window.addEventListener(i,e),()=>window.removeEventListener(i,e)},[e,t,c,l]),d}export{c as t};
@@ -0,0 +1 @@
1
+ import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t}from"./vendor-markdown-CuWCHIVb.js";import{t as n}from"./react-DqIU0LFM.js";import{t as r}from"./window-store-CfxP5yor.js";import{n as i}from"./use-is-mobile-Bi42QhIi.js";var a=e(t(),1),o=n(e=>({payload:null,open:t=>e({payload:t}),close:()=>e({payload:null})}));function s(){let e=i(),t=r(e=>e.open),n=o(e=>e.open);return(0,a.useCallback)(r=>{e?n(r):t(`team-member`,r)},[e,n,t])}export{o as n,s as t};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{S as t,x as n}from"./vendor-markdown-Ls5AcU91.js";import{t as r}from"./createLucideIcon-D8pyde1A.js";import{n as i}from"./api-client-CEYCBt_0.js";import{t as a}from"./settings-store-CzLnTR8p.js";import{t as o}from"./ws-auth-D111jj32.js";import{y as s}from"./index-Cx1meAwb.js";var c=r(`gauge`,[[`path`,{d:`m12 14 4-4`,key:`9kzdfg`}],[`path`,{d:`M3.34 19a10 10 0 1 1 17.32 0`,key:`19p75a`}]]),l=r(`monitor-x`,[[`path`,{d:`m14.5 12.5-5-5`,key:`1jahn5`}],[`path`,{d:`m9.5 12.5 5-5`,key:`1k2t7b`}],[`rect`,{width:`20`,height:`14`,x:`2`,y:`3`,rx:`2`,key:`48i651`}],[`path`,{d:`M12 17v4`,key:`1riwvh`}],[`path`,{d:`M8 21h8`,key:`1ev6f3`}]]);function u(e,t,n=`8081`){let r=o(`/ws/remote-desktop`),i=e.protocol===`https:`?`wss:`:`ws:`;return t&&e.protocol!==`https:`?`ws://${e.hostname}:${n}${r}`:`${i}//${e.host}${r}`}var d=30;function f(e,t=d){return Math.round(e*1e6/t)}var p=e(t(),1);function m(e,t){return t||e}function h(e){let[t,n]=(0,p.useState)(`idle`),[r,i]=(0,p.useState)(null),a=(0,p.useRef)(null),o=(0,p.useRef)(null),s=(0,p.useRef)(!1),c=(0,p.useRef)(0),l=(0,p.useRef)(0),u=(0,p.useRef)(null),d=(0,p.useRef)(!1),h=(0,p.useCallback)(e=>{n(`error`),i(e)},[]),g=(0,p.useCallback)(async t=>{if(u.current=t,typeof VideoDecoder>`u`){n(`unsupported`),i(`This browser has no WebCodecs VideoDecoder — try Chrome, Edge, or Safari 16.4+.`);return}let r={codec:t,optimizeForLatency:!0};try{if(!(await VideoDecoder.isConfigSupported(r)).supported){n(`unsupported`),i(`This browser's decoder does not support ${t}.`);return}}catch(e){h(e.message);return}a.current?.close(),s.current=!1,l.current=0;let f=new VideoDecoder({output:t=>{c.current+=1;let n=e.current;n&&((n.width!==t.displayWidth||n.height!==t.displayHeight)&&(n.width=t.displayWidth,n.height=t.displayHeight),o.current||=n.getContext(`2d`),o.current?.drawImage(t,0,0,n.width,n.height)),t.close()},error:e=>_(e.message)});try{f.configure(r)}catch(e){h(e.message);return}a.current=f,d.current=!0,n(`ready`),i(null)},[e,h]),_=(0,p.useCallback)(e=>{if(!d.current)return;let t=u.current;if(!t){h(e);return}try{a.current?.close()}catch{}a.current=null,g(t)},[g,h]);return{status:t,errorMessage:r,configure:g,decodeAccessUnit:(0,p.useCallback)((e,t)=>{let n=a.current;if(!(!n||n.state!==`configured`)&&m(s.current,t)){t&&(s.current=!0);try{n.decode(new EncodedVideoChunk({type:t?`key`:`delta`,timestamp:f(l.current++),data:e}))}catch(e){_(e.message)}}},[_]),reset:(0,p.useCallback)(()=>{d.current=!1;try{a.current?.close()}catch{}a.current=null,s.current=!1,c.current=0,l.current=0,n(`idle`),i(null)},[]),getFrameCount:(0,p.useCallback)(()=>c.current,[])}}var g=5e3;function _(e,{displayId:t}={}){let n=(0,p.useRef)(null),r=(0,p.useRef)(0),[a,o]=(0,p.useState)(`connecting`),[s,c]=(0,p.useState)(null),[l,d]=(0,p.useState)(0),f=h(e),m=(0,p.useCallback)(e=>{let t=n.current;t?.readyState===WebSocket.OPEN&&t.send(JSON.stringify(e))},[]);(0,p.useEffect)(()=>{let e=!1,a=null;o(`connecting`),c(null),r.current=0,f.reset(),(async()=>{let s;try{s=(await i.post(`/api/remote-desktop/session`)).nonce}catch(t){e||(o(`error`),c(t.message));return}if(e)return;let l=u(window.location,!1,void 0),d=new WebSocket(l);d.binaryType=`arraybuffer`,n.current=d,d.onopen=()=>{d.send(JSON.stringify({type:`auth`,nonce:s,...t?{displayId:t}:{}})),a=setInterval(()=>m({type:`ping`}),g)},d.onmessage=t=>{if(typeof t.data==`string`){let n;try{n=JSON.parse(t.data)}catch{return}n.type===`config`&&typeof n.codec==`string`?f.configure(n.codec).then(()=>{e||o(`streaming`)}):n.type===`error`&&(o(`error`),c(typeof n.message==`string`?n.message:`Server error`));return}let n=new Uint8Array(t.data);n.length<1||(r.current+=n.length,f.decodeAccessUnit(n.subarray(1),n[0]===1))},d.onerror=()=>{e||(o(`error`),c(`WebSocket error`))},d.onclose=()=>{e||o(e=>e===`error`?e:`closed`)}})();let s=()=>{if(document.hidden||e)return;let t=n.current;t&&t.readyState===WebSocket.OPEN?t.send(JSON.stringify({type:`ping`})):d(e=>e+1)};return document.addEventListener(`visibilitychange`,s),()=>{e=!0,document.removeEventListener(`visibilitychange`,s),a&&clearInterval(a);try{n.current?.close()}catch{}n.current=null;try{f.reset()}catch{}}},[l,t]);let _=(0,p.useCallback)(()=>d(e=>e+1),[]),v=(0,p.useCallback)(()=>r.current,[]);return{connState:a,errorMessage:s,decoderStatus:f.status,decoderErrorMessage:f.errorMessage,sendMessage:m,reconnect:_,getTotalBytes:v,getFrameCount:f.getFrameCount}}function v(e){return Math.min(Math.max(e,0),1)}function y(e,t,n){let r=n.width>0?(e-n.left)/n.width:0,i=n.height>0?(t-n.top)/n.height:0;return{xFrac:v(r),yFrac:v(i)}}function b(e,t,n,r){let i=r.scale||1,a=n.left+n.width/2,o=n.top+n.height/2;return y(a+(e-a-r.panX)/i,o+(t-o-r.panY)/i,n)}function x(e,t,n){if(t<=0||n<=0||e.width<=0||e.height<=0)return e;let r=e.width/e.height,i=t/n;if(i>r){let t=e.width/i;return{left:e.left,top:e.top+(e.height-t)/2,width:e.width,height:t}}let a=e.height*i;return{left:e.left+(e.width-a)/2,top:e.top,width:a,height:e.height}}var S={fps:0,kbps:0};function C(e,t){let n=t.atMs-e.atMs;if(n<=0)return S;let r=n/1e3,i=Math.max(0,t.frameCount-e.frameCount),a=Math.max(0,t.totalBytes-e.totalBytes);return{fps:i/r,kbps:a/1024/r}}var w=n(),T=500;function E({canvasRef:e,getFrameCount:t,getTotalBytes:n,positionClassName:r=`left-1 top-1`}){let i=a(e=>e.remoteDesktopStatsVisible),[o,s]=(0,p.useState)({fps:0,kbps:0,width:0,height:0}),c=(0,p.useRef)({frameCount:0,totalBytes:0,atMs:0});return(0,p.useEffect)(()=>{if(!i)return;c.current={frameCount:t(),totalBytes:n(),atMs:performance.now()};let r=setInterval(()=>{let r={frameCount:t(),totalBytes:n(),atMs:performance.now()},{fps:i,kbps:a}=C(c.current,r);c.current=r;let o=e.current;s({fps:i,kbps:a,width:o?.width??0,height:o?.height??0})},T);return()=>clearInterval(r)},[i,e,t,n]),i?(0,w.jsxs)(`div`,{className:`pointer-events-none absolute z-40 rounded bg-black/60 px-1.5 py-0.5 font-mono text-[10px] text-white/80 ${r}`,"data-testid":`remote-desktop-stats-overlay`,children:[Math.round(o.fps),` fps · `,Math.round(o.kbps),` KB/s · `,o.width,`×`,o.height]}):null}function D(){let{caps:e}=s(!1),t=e?.displays??[],[n,r]=(0,p.useState)(void 0),i=t.find(e=>e.id===n)??t.find(e=>e.primary)??t[0];return{displays:t,displayId:n,current:i,select:r,next:(0,p.useCallback)(()=>{t.length<2||r(t[(t.findIndex(e=>e.id===i?.id)+1)%t.length]?.id)},[t,i])}}export{x as a,c,b as i,E as n,_ as o,y as r,l as s,D as t};
1
+ import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t,S as n}from"./vendor-markdown-CuWCHIVb.js";import{t as r}from"./createLucideIcon-D6fVXe3s.js";import{n as i}from"./api-client-DwXlVfXP.js";import{t as a}from"./settings-store-_s4xFcFq.js";import{t as o}from"./ws-auth-FRzMmfQx.js";import{y as s}from"./index-DVNJ2W5R.js";var c=r(`gauge`,[[`path`,{d:`m12 14 4-4`,key:`9kzdfg`}],[`path`,{d:`M3.34 19a10 10 0 1 1 17.32 0`,key:`19p75a`}]]),l=r(`monitor-x`,[[`path`,{d:`m14.5 12.5-5-5`,key:`1jahn5`}],[`path`,{d:`m9.5 12.5 5-5`,key:`1k2t7b`}],[`rect`,{width:`20`,height:`14`,x:`2`,y:`3`,rx:`2`,key:`48i651`}],[`path`,{d:`M12 17v4`,key:`1riwvh`}],[`path`,{d:`M8 21h8`,key:`1ev6f3`}]]);function u(e,t,n=`8081`){let r=o(`/ws/remote-desktop`),i=e.protocol===`https:`?`wss:`:`ws:`;return t&&e.protocol!==`https:`?`ws://${e.hostname}:${n}${r}`:`${i}//${e.host}${r}`}var d=30;function f(e,t=d){return Math.round(e*1e6/t)}var p=e(t(),1);function m(e,t){return t||e}function h(e){let[t,n]=(0,p.useState)(`idle`),[r,i]=(0,p.useState)(null),a=(0,p.useRef)(null),o=(0,p.useRef)(null),s=(0,p.useRef)(!1),c=(0,p.useRef)(0),l=(0,p.useRef)(0),u=(0,p.useRef)(null),d=(0,p.useRef)(!1),h=(0,p.useCallback)(e=>{n(`error`),i(e)},[]),g=(0,p.useCallback)(async t=>{if(u.current=t,typeof VideoDecoder>`u`){n(`unsupported`),i(`This browser has no WebCodecs VideoDecoder — try Chrome, Edge, or Safari 16.4+.`);return}let r={codec:t,optimizeForLatency:!0};try{if(!(await VideoDecoder.isConfigSupported(r)).supported){n(`unsupported`),i(`This browser's decoder does not support ${t}.`);return}}catch(e){h(e.message);return}a.current?.close(),s.current=!1,l.current=0;let f=new VideoDecoder({output:t=>{c.current+=1;let n=e.current;n&&((n.width!==t.displayWidth||n.height!==t.displayHeight)&&(n.width=t.displayWidth,n.height=t.displayHeight),o.current||=n.getContext(`2d`),o.current?.drawImage(t,0,0,n.width,n.height)),t.close()},error:e=>_(e.message)});try{f.configure(r)}catch(e){h(e.message);return}a.current=f,d.current=!0,n(`ready`),i(null)},[e,h]),_=(0,p.useCallback)(e=>{if(!d.current)return;let t=u.current;if(!t){h(e);return}try{a.current?.close()}catch{}a.current=null,g(t)},[g,h]);return{status:t,errorMessage:r,configure:g,decodeAccessUnit:(0,p.useCallback)((e,t)=>{let n=a.current;if(!(!n||n.state!==`configured`)&&m(s.current,t)){t&&(s.current=!0);try{n.decode(new EncodedVideoChunk({type:t?`key`:`delta`,timestamp:f(l.current++),data:e}))}catch(e){_(e.message)}}},[_]),reset:(0,p.useCallback)(()=>{d.current=!1;try{a.current?.close()}catch{}a.current=null,s.current=!1,c.current=0,l.current=0,n(`idle`),i(null)},[]),getFrameCount:(0,p.useCallback)(()=>c.current,[])}}var g=5e3;function _(e,{displayId:t}={}){let n=(0,p.useRef)(null),r=(0,p.useRef)(0),[a,o]=(0,p.useState)(`connecting`),[s,c]=(0,p.useState)(null),[l,d]=(0,p.useState)(0),f=h(e),m=(0,p.useCallback)(e=>{let t=n.current;t?.readyState===WebSocket.OPEN&&t.send(JSON.stringify(e))},[]);(0,p.useEffect)(()=>{let e=!1,a=null;o(`connecting`),c(null),r.current=0,f.reset(),(async()=>{let s;try{s=(await i.post(`/api/remote-desktop/session`)).nonce}catch(t){e||(o(`error`),c(t.message));return}if(e)return;let l=u(window.location,!1,void 0),d=new WebSocket(l);d.binaryType=`arraybuffer`,n.current=d,d.onopen=()=>{d.send(JSON.stringify({type:`auth`,nonce:s,...t?{displayId:t}:{}})),a=setInterval(()=>m({type:`ping`}),g)},d.onmessage=t=>{if(typeof t.data==`string`){let n;try{n=JSON.parse(t.data)}catch{return}n.type===`config`&&typeof n.codec==`string`?f.configure(n.codec).then(()=>{e||o(`streaming`)}):n.type===`error`&&(o(`error`),c(typeof n.message==`string`?n.message:`Server error`));return}let n=new Uint8Array(t.data);n.length<1||(r.current+=n.length,f.decodeAccessUnit(n.subarray(1),n[0]===1))},d.onerror=()=>{e||(o(`error`),c(`WebSocket error`))},d.onclose=()=>{e||o(e=>e===`error`?e:`closed`)}})();let s=()=>{if(document.hidden||e)return;let t=n.current;t&&t.readyState===WebSocket.OPEN?t.send(JSON.stringify({type:`ping`})):d(e=>e+1)};return document.addEventListener(`visibilitychange`,s),()=>{e=!0,document.removeEventListener(`visibilitychange`,s),a&&clearInterval(a);try{n.current?.close()}catch{}n.current=null;try{f.reset()}catch{}}},[l,t]);let _=(0,p.useCallback)(()=>d(e=>e+1),[]),v=(0,p.useCallback)(()=>r.current,[]);return{connState:a,errorMessage:s,decoderStatus:f.status,decoderErrorMessage:f.errorMessage,sendMessage:m,reconnect:_,getTotalBytes:v,getFrameCount:f.getFrameCount}}function v(e){return Math.min(Math.max(e,0),1)}function y(e,t,n){let r=n.width>0?(e-n.left)/n.width:0,i=n.height>0?(t-n.top)/n.height:0;return{xFrac:v(r),yFrac:v(i)}}function b(e,t,n,r){let i=r.scale||1,a=n.left+n.width/2,o=n.top+n.height/2;return y(a+(e-a-r.panX)/i,o+(t-o-r.panY)/i,n)}function x(e,t,n){if(t<=0||n<=0||e.width<=0||e.height<=0)return e;let r=e.width/e.height,i=t/n;if(i>r){let t=e.width/i;return{left:e.left,top:e.top+(e.height-t)/2,width:e.width,height:t}}let a=e.height*i;return{left:e.left+(e.width-a)/2,top:e.top,width:a,height:e.height}}var S={fps:0,kbps:0};function C(e,t){let n=t.atMs-e.atMs;if(n<=0)return S;let r=n/1e3,i=Math.max(0,t.frameCount-e.frameCount),a=Math.max(0,t.totalBytes-e.totalBytes);return{fps:i/r,kbps:a/1024/r}}var w=n(),T=500;function E({canvasRef:e,getFrameCount:t,getTotalBytes:n,positionClassName:r=`left-1 top-1`}){let i=a(e=>e.remoteDesktopStatsVisible),[o,s]=(0,p.useState)({fps:0,kbps:0,width:0,height:0}),c=(0,p.useRef)({frameCount:0,totalBytes:0,atMs:0});return(0,p.useEffect)(()=>{if(!i)return;c.current={frameCount:t(),totalBytes:n(),atMs:performance.now()};let r=setInterval(()=>{let r={frameCount:t(),totalBytes:n(),atMs:performance.now()},{fps:i,kbps:a}=C(c.current,r);c.current=r;let o=e.current;s({fps:i,kbps:a,width:o?.width??0,height:o?.height??0})},T);return()=>clearInterval(r)},[i,e,t,n]),i?(0,w.jsxs)(`div`,{className:`pointer-events-none absolute z-40 rounded bg-black/60 px-1.5 py-0.5 font-mono text-[10px] text-white/80 ${r}`,"data-testid":`remote-desktop-stats-overlay`,children:[Math.round(o.fps),` fps · `,Math.round(o.kbps),` KB/s · `,o.width,`×`,o.height]}):null}function D(){let{caps:e}=s(!1),t=e?.displays??[],[n,r]=(0,p.useState)(void 0),i=t.find(e=>e.id===n)??t.find(e=>e.primary)??t[0];return{displays:t,displayId:n,current:i,select:r,next:(0,p.useCallback)(()=>{t.length<2||r(t[(t.findIndex(e=>e.id===i?.id)+1)%t.length]?.id)},[t,i])}}export{x as a,c,b as i,E as n,_ as o,y as r,l as s,D as t};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{S as t}from"./vendor-markdown-Ls5AcU91.js";var n=e(t(),1),r=120;function i(e){let t=Math.max(0,window.innerHeight-e.height-e.offsetTop);return{height:e.height,keyboardInset:t,keyboardOpen:t>=r}}function a(e){let[t,r]=(0,n.useState)(null);return(0,n.useEffect)(()=>{let t=window.visualViewport;if(!e||!t){r(null);return}let n=null,a=()=>{n=null,r(e=>{let n=i(t);return e&&e.height===n.height&&e.keyboardInset===n.keyboardInset?e:n})},o=()=>{n===null&&(n=requestAnimationFrame(a))};return a(),t.addEventListener(`resize`,o),t.addEventListener(`scroll`,o),()=>{n!==null&&cancelAnimationFrame(n),t.removeEventListener(`resize`,o),t.removeEventListener(`scroll`,o)}},[e]),t}export{a as t};
1
+ import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t}from"./vendor-markdown-CuWCHIVb.js";var n=e(t(),1),r=120;function i(e){let t=Math.max(0,window.innerHeight-e.height-e.offsetTop);return{height:e.height,keyboardInset:t,keyboardOpen:t>=r}}function a(e){let[t,r]=(0,n.useState)(null);return(0,n.useEffect)(()=>{let t=window.visualViewport;if(!e||!t){r(null);return}let n=null,a=()=>{n=null,r(e=>{let n=i(t);return e&&e.height===n.height&&e.keyboardInset===n.keyboardInset?e:n})},o=()=>{n===null&&(n=requestAnimationFrame(a))};return a(),t.addEventListener(`resize`,o),t.addEventListener(`scroll`,o),()=>{n!==null&&cancelAnimationFrame(n),t.removeEventListener(`resize`,o),t.removeEventListener(`scroll`,o)}},[e]),t}export{a as t};
@@ -0,0 +1 @@
1
+ import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t}from"./vendor-markdown-CuWCHIVb.js";import{i as n}from"./index-DVNJ2W5R.js";var r=e(t(),1);function i({url:e,onMessage:t,autoConnect:i=!0,idleTimeoutMs:a,onConnectionChange:o}){let s=(0,r.useRef)(null),c=(0,r.useRef)(t),l=(0,r.useRef)(o);return c.current=t,l.current=o,(0,r.useEffect)(()=>{let t=!0,r=new n(e,{idleTimeoutMs:a,onConnectionChange:e=>{t&&l.current?.(e)}});return s.current=r,r.onMessage(e=>c.current?.(e)),i&&r.connect(),()=>{t=!1,r.disconnect(),s.current=null}},[e,i,a]),{send:(0,r.useCallback)(e=>{s.current?.send(e)},[]),connect:(0,r.useCallback)(()=>{s.current?.connect()},[]),disconnect:(0,r.useCallback)(()=>{s.current?.disconnect()},[])}}export{i as t};
@@ -288,4 +288,4 @@ l0,-`+(t+144)+`c-2,-159.3,-10,-310.7,-24,-454c-53.3,-528,-210,-949.7,
288
288
  `,this.tokenRegex.lastIndex);return i===-1?(this.tokenRegex.lastIndex=e.length,this.settings.reportNonstrict(`commentAtEnd`,`% comment has no terminating newline; LaTeX would fail because of commenting the end of math mode (e.g. $)`)):this.tokenRegex.lastIndex=i+1,this.lex()}return new Yp(r,new Jp(this,t,this.tokenRegex.lastIndex))}},Jm=class{constructor(e,t){e===void 0&&(e={}),t===void 0&&(t={}),this.current=t,this.builtins=e,this.undefStack=[]}beginGroup(){this.undefStack.push({})}endGroup(){if(this.undefStack.length===0)throw new M(`Unbalanced namespace destruction: attempt to pop global namespace; please report this as a bug`);var e=this.undefStack.pop();for(var t in e)e.hasOwnProperty(t)&&(e[t]==null?delete this.current[t]:this.current[t]=e[t])}endGroups(){for(;this.undefStack.length>0;)this.endGroup()}has(e){return this.current.hasOwnProperty(e)||this.builtins.hasOwnProperty(e)}get(e){return this.current.hasOwnProperty(e)?this.current[e]:this.builtins[e]}set(e,t,n){if(n===void 0&&(n=!1),n){for(var r=0;r<this.undefStack.length;r++)delete this.undefStack[r][e];this.undefStack.length>0&&(this.undefStack[this.undefStack.length-1][e]=t)}else{var i=this.undefStack[this.undefStack.length-1];i&&!i.hasOwnProperty(e)&&(i[e]=this.current[e])}t==null?delete this.current[e]:this.current[e]=t}},Ym=qp;$(`\\noexpand`,function(e){var t=e.popToken();return e.isExpandable(t.text)&&(t.noexpand=!0,t.treatAsRelax=!0),{tokens:[t],numArgs:0}}),$(`\\expandafter`,function(e){var t=e.popToken();return e.expandOnce(!0),{tokens:[t],numArgs:0}}),$(`\\@firstoftwo`,function(e){return{tokens:e.consumeArgs(2)[0],numArgs:0}}),$(`\\@secondoftwo`,function(e){return{tokens:e.consumeArgs(2)[1],numArgs:0}}),$(`\\@ifnextchar`,function(e){var t=e.consumeArgs(3);e.consumeSpaces();var n=e.future();return t[0].length===1&&t[0][0].text===n.text?{tokens:t[1],numArgs:0}:{tokens:t[2],numArgs:0}}),$(`\\@ifstar`,`\\@ifnextchar *{\\@firstoftwo{#1}}`),$(`\\TextOrMath`,function(e){var t=e.consumeArgs(2);return e.mode===`text`?{tokens:t[0],numArgs:0}:{tokens:t[1],numArgs:0}});var Xm={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};$(`\\char`,function(e){var t=e.popToken(),n,r=0;if(t.text===`'`)n=8,t=e.popToken();else if(t.text===`"`)n=16,t=e.popToken();else if(t.text==="`")if(t=e.popToken(),t.text[0]===`\\`)r=t.text.charCodeAt(1);else if(t.text===`EOF`)throw new M("\\char` missing argument");else r=t.text.charCodeAt(0);else n=10;if(n){if(r=Xm[t.text],r==null||r>=n)throw new M(`Invalid base-`+n+` digit `+t.text);for(var i;(i=Xm[e.future().text])!=null&&i<n;)r*=n,r+=i,e.popToken()}return`\\@char{`+r+`}`});var Zm=(e,t,n,r)=>{var i=e.consumeArg().tokens;if(i.length!==1)throw new M(`\\newcommand's first argument must be a macro name`);var a=i[0].text,o=e.isDefined(a);if(o&&!t)throw new M(`\\newcommand{`+a+`} attempting to redefine `+(a+`; use \\renewcommand`));if(!o&&!n)throw new M(`\\renewcommand{`+a+`} when command `+a+` does not yet exist; use \\newcommand`);var s=0;if(i=e.consumeArg().tokens,i.length===1&&i[0].text===`[`){for(var c=``,l=e.expandNextToken();l.text!==`]`&&l.text!==`EOF`;)c+=l.text,l=e.expandNextToken();if(!c.match(/^\s*[0-9]+\s*$/))throw new M(`Invalid number of arguments: `+c);s=parseInt(c),i=e.consumeArg().tokens}return o&&r||e.macros.set(a,{tokens:i,numArgs:s}),``};$(`\\newcommand`,e=>Zm(e,!1,!0,!1)),$(`\\renewcommand`,e=>Zm(e,!0,!1,!1)),$(`\\providecommand`,e=>Zm(e,!0,!0,!0)),$(`\\message`,e=>{var t=e.consumeArgs(1)[0];return console.log(t.reverse().map(e=>e.text).join(``)),``}),$(`\\errmessage`,e=>{var t=e.consumeArgs(1)[0];return console.error(t.reverse().map(e=>e.text).join(``)),``}),$(`\\show`,e=>{var t=e.popToken(),n=t.text;return console.log(t,e.macros.get(n),Rm[n],ed.math[n],ed.text[n]),``}),$(`\\bgroup`,`{`),$(`\\egroup`,`}`),$(`~`,`\\nobreakspace`),$(`\\lq`,"`"),$(`\\rq`,`'`),$(`\\aa`,`\\r a`),$(`\\AA`,`\\r A`),$(`\\textcopyright`,"\\html@mathml{\\textcircled{c}}{\\char`©}"),$(`\\copyright`,`\\TextOrMath{\\textcopyright}{\\text{\\textcopyright}}`),$(`\\textregistered`,"\\html@mathml{\\textcircled{\\scriptsize R}}{\\char`®}"),$(`ℬ`,`\\mathscr{B}`),$(`ℰ`,`\\mathscr{E}`),$(`ℱ`,`\\mathscr{F}`),$(`ℋ`,`\\mathscr{H}`),$(`ℐ`,`\\mathscr{I}`),$(`ℒ`,`\\mathscr{L}`),$(`ℳ`,`\\mathscr{M}`),$(`ℛ`,`\\mathscr{R}`),$(`ℭ`,`\\mathfrak{C}`),$(`ℌ`,`\\mathfrak{H}`),$(`ℨ`,`\\mathfrak{Z}`),$(`\\Bbbk`,`\\Bbb{k}`),$(`\\llap`,`\\mathllap{\\textrm{#1}}`),$(`\\rlap`,`\\mathrlap{\\textrm{#1}}`),$(`\\clap`,`\\mathclap{\\textrm{#1}}`),$(`\\mathstrut`,`\\vphantom{(}`),$(`\\underbar`,`\\underline{\\text{#1}}`),$(`\\not`,`\\html@mathml{\\mathrel{\\mathrlap\\@not}\\nobreak}{\\char"338}`),$(`\\neq`,"\\html@mathml{\\mathrel{\\not=}}{\\mathrel{\\char`≠}}"),$(`\\ne`,`\\neq`),$(`≠`,`\\neq`),$(`\\notin`,"\\html@mathml{\\mathrel{{\\in}\\mathllap{/\\mskip1mu}}}{\\mathrel{\\char`∉}}"),$(`∉`,`\\notin`),$(`≘`,"\\html@mathml{\\mathrel{=\\kern{-1em}\\raisebox{0.4em}{$\\scriptsize\\frown$}}}{\\mathrel{\\char`≘}}"),$(`≙`,"\\html@mathml{\\stackrel{\\tiny\\wedge}{=}}{\\mathrel{\\char`≘}}"),$(`≚`,"\\html@mathml{\\stackrel{\\tiny\\vee}{=}}{\\mathrel{\\char`≚}}"),$(`≛`,"\\html@mathml{\\stackrel{\\scriptsize\\star}{=}}{\\mathrel{\\char`≛}}"),$(`≝`,"\\html@mathml{\\stackrel{\\tiny\\mathrm{def}}{=}}{\\mathrel{\\char`≝}}"),$(`≞`,"\\html@mathml{\\stackrel{\\tiny\\mathrm{m}}{=}}{\\mathrel{\\char`≞}}"),$(`≟`,"\\html@mathml{\\stackrel{\\tiny?}{=}}{\\mathrel{\\char`≟}}"),$(`⟂`,`\\perp`),$(`‼`,`\\mathclose{!\\mkern-0.8mu!}`),$(`∌`,`\\notni`),$(`⌜`,`\\ulcorner`),$(`⌝`,`\\urcorner`),$(`⌞`,`\\llcorner`),$(`⌟`,`\\lrcorner`),$(`©`,`\\copyright`),$(`®`,`\\textregistered`),$(`\\ulcorner`,`\\html@mathml{\\@ulcorner}{\\mathop{\\char"231c}}`),$(`\\urcorner`,`\\html@mathml{\\@urcorner}{\\mathop{\\char"231d}}`),$(`\\llcorner`,`\\html@mathml{\\@llcorner}{\\mathop{\\char"231e}}`),$(`\\lrcorner`,`\\html@mathml{\\@lrcorner}{\\mathop{\\char"231f}}`),$(`\\vdots`,`{\\varvdots\\rule{0pt}{15pt}}`),$(`⋮`,`\\vdots`),$(`\\varGamma`,`\\mathit{\\Gamma}`),$(`\\varDelta`,`\\mathit{\\Delta}`),$(`\\varTheta`,`\\mathit{\\Theta}`),$(`\\varLambda`,`\\mathit{\\Lambda}`),$(`\\varXi`,`\\mathit{\\Xi}`),$(`\\varPi`,`\\mathit{\\Pi}`),$(`\\varSigma`,`\\mathit{\\Sigma}`),$(`\\varUpsilon`,`\\mathit{\\Upsilon}`),$(`\\varPhi`,`\\mathit{\\Phi}`),$(`\\varPsi`,`\\mathit{\\Psi}`),$(`\\varOmega`,`\\mathit{\\Omega}`),$(`\\substack`,`\\begin{subarray}{c}#1\\end{subarray}`),$(`\\colon`,`\\nobreak\\mskip2mu\\mathpunct{}\\mathchoice{\\mkern-3mu}{\\mkern-3mu}{}{}{:}\\mskip6mu\\relax`),$(`\\boxed`,`\\fbox{$\\displaystyle{#1}$}`),$(`\\iff`,`\\DOTSB\\;\\Longleftrightarrow\\;`),$(`\\implies`,`\\DOTSB\\;\\Longrightarrow\\;`),$(`\\impliedby`,`\\DOTSB\\;\\Longleftarrow\\;`),$(`\\dddot`,`{\\overset{\\raisebox{-0.1ex}{\\normalsize ...}}{#1}}`),$(`\\ddddot`,`{\\overset{\\raisebox{-0.1ex}{\\normalsize ....}}{#1}}`);var Qm={",":`\\dotsc`,"\\not":`\\dotsb`,"+":`\\dotsb`,"=":`\\dotsb`,"<":`\\dotsb`,">":`\\dotsb`,"-":`\\dotsb`,"*":`\\dotsb`,":":`\\dotsb`,"\\DOTSB":`\\dotsb`,"\\coprod":`\\dotsb`,"\\bigvee":`\\dotsb`,"\\bigwedge":`\\dotsb`,"\\biguplus":`\\dotsb`,"\\bigcap":`\\dotsb`,"\\bigcup":`\\dotsb`,"\\prod":`\\dotsb`,"\\sum":`\\dotsb`,"\\bigotimes":`\\dotsb`,"\\bigoplus":`\\dotsb`,"\\bigodot":`\\dotsb`,"\\bigsqcup":`\\dotsb`,"\\And":`\\dotsb`,"\\longrightarrow":`\\dotsb`,"\\Longrightarrow":`\\dotsb`,"\\longleftarrow":`\\dotsb`,"\\Longleftarrow":`\\dotsb`,"\\longleftrightarrow":`\\dotsb`,"\\Longleftrightarrow":`\\dotsb`,"\\mapsto":`\\dotsb`,"\\longmapsto":`\\dotsb`,"\\hookrightarrow":`\\dotsb`,"\\doteq":`\\dotsb`,"\\mathbin":`\\dotsb`,"\\mathrel":`\\dotsb`,"\\relbar":`\\dotsb`,"\\Relbar":`\\dotsb`,"\\xrightarrow":`\\dotsb`,"\\xleftarrow":`\\dotsb`,"\\DOTSI":`\\dotsi`,"\\int":`\\dotsi`,"\\oint":`\\dotsi`,"\\iint":`\\dotsi`,"\\iiint":`\\dotsi`,"\\iiiint":`\\dotsi`,"\\idotsint":`\\dotsi`,"\\DOTSX":`\\dotsx`},$m=new Set([`bin`,`rel`]);$(`\\dots`,function(e){var t=`\\dotso`,n=e.expandAfterFuture().text;return n in Qm?t=Qm[n]:(n.slice(0,4)===`\\not`||n in ed.math&&$m.has(ed.math[n].group))&&(t=`\\dotsb`),t});var eh={")":!0,"]":!0,"\\rbrack":!0,"\\}":!0,"\\rbrace":!0,"\\rangle":!0,"\\rceil":!0,"\\rfloor":!0,"\\rgroup":!0,"\\rmoustache":!0,"\\right":!0,"\\bigr":!0,"\\biggr":!0,"\\Bigr":!0,"\\Biggr":!0,$:!0,";":!0,".":!0,",":!0};$(`\\dotso`,function(e){return e.future().text in eh?`\\ldots\\,`:`\\ldots`}),$(`\\dotsc`,function(e){var t=e.future().text;return t in eh&&t!==`,`?`\\ldots\\,`:`\\ldots`}),$(`\\cdots`,function(e){return e.future().text in eh?`\\@cdots\\,`:`\\@cdots`}),$(`\\dotsb`,`\\cdots`),$(`\\dotsm`,`\\cdots`),$(`\\dotsi`,`\\!\\cdots`),$(`\\dotsx`,`\\ldots\\,`),$(`\\DOTSI`,`\\relax`),$(`\\DOTSB`,`\\relax`),$(`\\DOTSX`,`\\relax`),$(`\\tmspace`,`\\TextOrMath{\\kern#1#3}{\\mskip#1#2}\\relax`),$(`\\,`,`\\tmspace+{3mu}{.1667em}`),$(`\\thinspace`,`\\,`),$(`\\>`,`\\mskip{4mu}`),$(`\\:`,`\\tmspace+{4mu}{.2222em}`),$(`\\medspace`,`\\:`),$(`\\;`,`\\tmspace+{5mu}{.2777em}`),$(`\\thickspace`,`\\;`),$(`\\!`,`\\tmspace-{3mu}{.1667em}`),$(`\\negthinspace`,`\\!`),$(`\\negmedspace`,`\\tmspace-{4mu}{.2222em}`),$(`\\negthickspace`,`\\tmspace-{5mu}{.277em}`),$(`\\enspace`,`\\kern.5em `),$(`\\enskip`,`\\hskip.5em\\relax`),$(`\\quad`,`\\hskip1em\\relax`),$(`\\qquad`,`\\hskip2em\\relax`),$(`\\tag`,`\\@ifstar\\tag@literal\\tag@paren`),$(`\\tag@paren`,`\\tag@literal{({#1})}`),$(`\\tag@literal`,e=>{if(e.macros.get(`\\df@tag`))throw new M(`Multiple \\tag`);return`\\gdef\\df@tag{\\text{#1}}`}),$(`\\bmod`,`\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}\\mathbin{\\rm mod}\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}`),$(`\\pod`,`\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern8mu}{\\mkern8mu}{\\mkern8mu}(#1)`),$(`\\pmod`,`\\pod{{\\rm mod}\\mkern6mu#1}`),$(`\\mod`,`\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern12mu}{\\mkern12mu}{\\mkern12mu}{\\rm mod}\\,\\,#1`),$(`\\newline`,`\\\\\\relax`),$(`\\TeX`,`\\textrm{\\html@mathml{T\\kern-.1667em\\raisebox{-.5ex}{E}\\kern-.125emX}{TeX}}`);var th=P(Gu[`Main-Regular`][84][1]-.7*Gu[`Main-Regular`][65][1]);$(`\\LaTeX`,`\\textrm{\\html@mathml{`+(`L\\kern-.36em\\raisebox{`+th+`}{\\scriptstyle A}`)+`\\kern-.15em\\TeX}{LaTeX}}`),$(`\\KaTeX`,`\\textrm{\\html@mathml{`+(`K\\kern-.17em\\raisebox{`+th+`}{\\scriptstyle A}`)+`\\kern-.15em\\TeX}{KaTeX}}`),$(`\\hspace`,`\\@ifstar\\@hspacer\\@hspace`),$(`\\@hspace`,`\\hskip #1\\relax`),$(`\\@hspacer`,`\\rule{0pt}{0pt}\\hskip #1\\relax`),$(`\\ordinarycolon`,`:`),$(`\\vcentcolon`,`\\mathrel{\\mathop\\ordinarycolon}`),$(`\\dblcolon`,`\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-.9mu}\\vcentcolon}}{\\mathop{\\char"2237}}`),$(`\\coloneqq`,`\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2254}}`),$(`\\Coloneqq`,`\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2237\\char"3d}}`),$(`\\coloneq`,`\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"3a\\char"2212}}`),$(`\\Coloneq`,`\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"2237\\char"2212}}`),$(`\\eqqcolon`,`\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2255}}`),$(`\\Eqqcolon`,`\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"3d\\char"2237}}`),$(`\\eqcolon`,`\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2239}}`),$(`\\Eqcolon`,`\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"2212\\char"2237}}`),$(`\\colonapprox`,`\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"3a\\char"2248}}`),$(`\\Colonapprox`,`\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"2237\\char"2248}}`),$(`\\colonsim`,`\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"3a\\char"223c}}`),$(`\\Colonsim`,`\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"2237\\char"223c}}`),$(`∷`,`\\dblcolon`),$(`∹`,`\\eqcolon`),$(`≔`,`\\coloneqq`),$(`≕`,`\\eqqcolon`),$(`⩴`,`\\Coloneqq`),$(`\\ratio`,`\\vcentcolon`),$(`\\coloncolon`,`\\dblcolon`),$(`\\colonequals`,`\\coloneqq`),$(`\\coloncolonequals`,`\\Coloneqq`),$(`\\equalscolon`,`\\eqqcolon`),$(`\\equalscoloncolon`,`\\Eqqcolon`),$(`\\colonminus`,`\\coloneq`),$(`\\coloncolonminus`,`\\Coloneq`),$(`\\minuscolon`,`\\eqcolon`),$(`\\minuscoloncolon`,`\\Eqcolon`),$(`\\coloncolonapprox`,`\\Colonapprox`),$(`\\coloncolonsim`,`\\Colonsim`),$(`\\simcolon`,`\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\vcentcolon}`),$(`\\simcoloncolon`,`\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\dblcolon}`),$(`\\approxcolon`,`\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\vcentcolon}`),$(`\\approxcoloncolon`,`\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\dblcolon}`),$(`\\notni`,"\\html@mathml{\\not\\ni}{\\mathrel{\\char`∌}}"),$(`\\limsup`,`\\DOTSB\\operatorname*{lim\\,sup}`),$(`\\liminf`,`\\DOTSB\\operatorname*{lim\\,inf}`),$(`\\injlim`,`\\DOTSB\\operatorname*{inj\\,lim}`),$(`\\projlim`,`\\DOTSB\\operatorname*{proj\\,lim}`),$(`\\varlimsup`,`\\DOTSB\\operatorname*{\\overline{lim}}`),$(`\\varliminf`,`\\DOTSB\\operatorname*{\\underline{lim}}`),$(`\\varinjlim`,`\\DOTSB\\operatorname*{\\underrightarrow{lim}}`),$(`\\varprojlim`,`\\DOTSB\\operatorname*{\\underleftarrow{lim}}`),$(`\\gvertneqq`,`\\html@mathml{\\@gvertneqq}{≩}`),$(`\\lvertneqq`,`\\html@mathml{\\@lvertneqq}{≨}`),$(`\\ngeqq`,`\\html@mathml{\\@ngeqq}{≱}`),$(`\\ngeqslant`,`\\html@mathml{\\@ngeqslant}{≱}`),$(`\\nleqq`,`\\html@mathml{\\@nleqq}{≰}`),$(`\\nleqslant`,`\\html@mathml{\\@nleqslant}{≰}`),$(`\\nshortmid`,`\\html@mathml{\\@nshortmid}{∤}`),$(`\\nshortparallel`,`\\html@mathml{\\@nshortparallel}{∦}`),$(`\\nsubseteqq`,`\\html@mathml{\\@nsubseteqq}{⊈}`),$(`\\nsupseteqq`,`\\html@mathml{\\@nsupseteqq}{⊉}`),$(`\\varsubsetneq`,`\\html@mathml{\\@varsubsetneq}{⊊}`),$(`\\varsubsetneqq`,`\\html@mathml{\\@varsubsetneqq}{⫋}`),$(`\\varsupsetneq`,`\\html@mathml{\\@varsupsetneq}{⊋}`),$(`\\varsupsetneqq`,`\\html@mathml{\\@varsupsetneqq}{⫌}`),$(`\\imath`,`\\html@mathml{\\@imath}{ı}`),$(`\\jmath`,`\\html@mathml{\\@jmath}{ȷ}`),$(`\\llbracket`,"\\html@mathml{\\mathopen{[\\mkern-3.2mu[}}{\\mathopen{\\char`⟦}}"),$(`\\rrbracket`,"\\html@mathml{\\mathclose{]\\mkern-3.2mu]}}{\\mathclose{\\char`⟧}}"),$(`⟦`,`\\llbracket`),$(`⟧`,`\\rrbracket`),$(`\\lBrace`,"\\html@mathml{\\mathopen{\\{\\mkern-3.2mu[}}{\\mathopen{\\char`⦃}}"),$(`\\rBrace`,"\\html@mathml{\\mathclose{]\\mkern-3.2mu\\}}}{\\mathclose{\\char`⦄}}"),$(`⦃`,`\\lBrace`),$(`⦄`,`\\rBrace`),$(`\\minuso`,"\\mathbin{\\html@mathml{{\\mathrlap{\\mathchoice{\\kern{0.145em}}{\\kern{0.145em}}{\\kern{0.1015em}}{\\kern{0.0725em}}\\circ}{-}}}{\\char`⦵}}"),$(`⦵`,`\\minuso`),$(`\\darr`,`\\downarrow`),$(`\\dArr`,`\\Downarrow`),$(`\\Darr`,`\\Downarrow`),$(`\\lang`,`\\langle`),$(`\\rang`,`\\rangle`),$(`\\uarr`,`\\uparrow`),$(`\\uArr`,`\\Uparrow`),$(`\\Uarr`,`\\Uparrow`),$(`\\N`,`\\mathbb{N}`),$(`\\R`,`\\mathbb{R}`),$(`\\Z`,`\\mathbb{Z}`),$(`\\alef`,`\\aleph`),$(`\\alefsym`,`\\aleph`),$(`\\Alpha`,`\\mathrm{A}`),$(`\\Beta`,`\\mathrm{B}`),$(`\\bull`,`\\bullet`),$(`\\Chi`,`\\mathrm{X}`),$(`\\clubs`,`\\clubsuit`),$(`\\cnums`,`\\mathbb{C}`),$(`\\Complex`,`\\mathbb{C}`),$(`\\Dagger`,`\\ddagger`),$(`\\diamonds`,`\\diamondsuit`),$(`\\empty`,`\\emptyset`),$(`\\Epsilon`,`\\mathrm{E}`),$(`\\Eta`,`\\mathrm{H}`),$(`\\exist`,`\\exists`),$(`\\harr`,`\\leftrightarrow`),$(`\\hArr`,`\\Leftrightarrow`),$(`\\Harr`,`\\Leftrightarrow`),$(`\\hearts`,`\\heartsuit`),$(`\\image`,`\\Im`),$(`\\infin`,`\\infty`),$(`\\Iota`,`\\mathrm{I}`),$(`\\isin`,`\\in`),$(`\\Kappa`,`\\mathrm{K}`),$(`\\larr`,`\\leftarrow`),$(`\\lArr`,`\\Leftarrow`),$(`\\Larr`,`\\Leftarrow`),$(`\\lrarr`,`\\leftrightarrow`),$(`\\lrArr`,`\\Leftrightarrow`),$(`\\Lrarr`,`\\Leftrightarrow`),$(`\\Mu`,`\\mathrm{M}`),$(`\\natnums`,`\\mathbb{N}`),$(`\\Nu`,`\\mathrm{N}`),$(`\\Omicron`,`\\mathrm{O}`),$(`\\plusmn`,`\\pm`),$(`\\rarr`,`\\rightarrow`),$(`\\rArr`,`\\Rightarrow`),$(`\\Rarr`,`\\Rightarrow`),$(`\\real`,`\\Re`),$(`\\reals`,`\\mathbb{R}`),$(`\\Reals`,`\\mathbb{R}`),$(`\\Rho`,`\\mathrm{P}`),$(`\\sdot`,`\\cdot`),$(`\\sect`,`\\S`),$(`\\spades`,`\\spadesuit`),$(`\\sub`,`\\subset`),$(`\\sube`,`\\subseteq`),$(`\\supe`,`\\supseteq`),$(`\\Tau`,`\\mathrm{T}`),$(`\\thetasym`,`\\vartheta`),$(`\\weierp`,`\\wp`),$(`\\Zeta`,`\\mathrm{Z}`),$(`\\argmin`,`\\DOTSB\\operatorname*{arg\\,min}`),$(`\\argmax`,`\\DOTSB\\operatorname*{arg\\,max}`),$(`\\plim`,`\\DOTSB\\mathop{\\operatorname{plim}}\\limits`),$(`\\bra`,`\\mathinner{\\langle{#1}|}`),$(`\\ket`,`\\mathinner{|{#1}\\rangle}`),$(`\\braket`,`\\mathinner{\\langle{#1}\\rangle}`),$(`\\Bra`,`\\left\\langle#1\\right|`),$(`\\Ket`,`\\left|#1\\right\\rangle`);var nh=e=>t=>{var n=t.consumeArg().tokens,r=t.consumeArg().tokens,i=t.consumeArg().tokens,a=t.consumeArg().tokens,o=t.macros.get(`|`),s=t.macros.get(`\\|`);t.macros.beginGroup();var c=t=>n=>{e&&(n.macros.set(`|`,o),i.length&&n.macros.set(`\\|`,s));var a=t;return!t&&i.length&&n.future().text===`|`&&(n.popToken(),a=!0),{tokens:a?i:r,numArgs:0}};t.macros.set(`|`,c(!1)),i.length&&t.macros.set(`\\|`,c(!0));var l=t.consumeArg().tokens,u=t.expandTokens([...a,...l,...n]);return t.macros.endGroup(),{tokens:u.reverse(),numArgs:0}};$(`\\bra@ket`,nh(!1)),$(`\\bra@set`,nh(!0)),$(`\\Braket`,`\\bra@ket{\\left\\langle}{\\,\\middle\\vert\\,}{\\,\\middle\\vert\\,}{\\right\\rangle}`),$(`\\Set`,`\\bra@set{\\left\\{\\:}{\\;\\middle\\vert\\;}{\\;\\middle\\Vert\\;}{\\:\\right\\}}`),$(`\\set`,`\\bra@set{\\{\\,}{\\mid}{}{\\,\\}}`),$(`\\angln`,`{\\angl n}`),$(`\\blue`,`\\textcolor{##6495ed}{#1}`),$(`\\orange`,`\\textcolor{##ffa500}{#1}`),$(`\\pink`,`\\textcolor{##ff00af}{#1}`),$(`\\red`,`\\textcolor{##df0030}{#1}`),$(`\\green`,`\\textcolor{##28ae7b}{#1}`),$(`\\gray`,`\\textcolor{gray}{#1}`),$(`\\purple`,`\\textcolor{##9d38bd}{#1}`),$(`\\blueA`,`\\textcolor{##ccfaff}{#1}`),$(`\\blueB`,`\\textcolor{##80f6ff}{#1}`),$(`\\blueC`,`\\textcolor{##63d9ea}{#1}`),$(`\\blueD`,`\\textcolor{##11accd}{#1}`),$(`\\blueE`,`\\textcolor{##0c7f99}{#1}`),$(`\\tealA`,`\\textcolor{##94fff5}{#1}`),$(`\\tealB`,`\\textcolor{##26edd5}{#1}`),$(`\\tealC`,`\\textcolor{##01d1c1}{#1}`),$(`\\tealD`,`\\textcolor{##01a995}{#1}`),$(`\\tealE`,`\\textcolor{##208170}{#1}`),$(`\\greenA`,`\\textcolor{##b6ffb0}{#1}`),$(`\\greenB`,`\\textcolor{##8af281}{#1}`),$(`\\greenC`,`\\textcolor{##74cf70}{#1}`),$(`\\greenD`,`\\textcolor{##1fab54}{#1}`),$(`\\greenE`,`\\textcolor{##0d923f}{#1}`),$(`\\goldA`,`\\textcolor{##ffd0a9}{#1}`),$(`\\goldB`,`\\textcolor{##ffbb71}{#1}`),$(`\\goldC`,`\\textcolor{##ff9c39}{#1}`),$(`\\goldD`,`\\textcolor{##e07d10}{#1}`),$(`\\goldE`,`\\textcolor{##a75a05}{#1}`),$(`\\redA`,`\\textcolor{##fca9a9}{#1}`),$(`\\redB`,`\\textcolor{##ff8482}{#1}`),$(`\\redC`,`\\textcolor{##f9685d}{#1}`),$(`\\redD`,`\\textcolor{##e84d39}{#1}`),$(`\\redE`,`\\textcolor{##bc2612}{#1}`),$(`\\maroonA`,`\\textcolor{##ffbde0}{#1}`),$(`\\maroonB`,`\\textcolor{##ff92c6}{#1}`),$(`\\maroonC`,`\\textcolor{##ed5fa6}{#1}`),$(`\\maroonD`,`\\textcolor{##ca337c}{#1}`),$(`\\maroonE`,`\\textcolor{##9e034e}{#1}`),$(`\\purpleA`,`\\textcolor{##ddd7ff}{#1}`),$(`\\purpleB`,`\\textcolor{##c6b9fc}{#1}`),$(`\\purpleC`,`\\textcolor{##aa87ff}{#1}`),$(`\\purpleD`,`\\textcolor{##7854ab}{#1}`),$(`\\purpleE`,`\\textcolor{##543b78}{#1}`),$(`\\mintA`,`\\textcolor{##f5f9e8}{#1}`),$(`\\mintB`,`\\textcolor{##edf2df}{#1}`),$(`\\mintC`,`\\textcolor{##e0e5cc}{#1}`),$(`\\grayA`,`\\textcolor{##f6f7f7}{#1}`),$(`\\grayB`,`\\textcolor{##f0f1f2}{#1}`),$(`\\grayC`,`\\textcolor{##e3e5e6}{#1}`),$(`\\grayD`,`\\textcolor{##d6d8da}{#1}`),$(`\\grayE`,`\\textcolor{##babec2}{#1}`),$(`\\grayF`,`\\textcolor{##888d93}{#1}`),$(`\\grayG`,`\\textcolor{##626569}{#1}`),$(`\\grayH`,`\\textcolor{##3b3e40}{#1}`),$(`\\grayI`,`\\textcolor{##21242c}{#1}`),$(`\\kaBlue`,`\\textcolor{##314453}{#1}`),$(`\\kaGreen`,`\\textcolor{##71B307}{#1}`);var rh={"^":!0,_:!0,"\\limits":!0,"\\nolimits":!0},ih=class{constructor(e,t,n){this.settings=t,this.expansionCount=0,this.feed(e),this.macros=new Jm(Ym,t.macros),this.mode=n,this.stack=[]}feed(e){this.lexer=new qm(e,this.settings)}switchMode(e){this.mode=e}beginGroup(){this.macros.beginGroup()}endGroup(){this.macros.endGroup()}endGroups(){this.macros.endGroups()}future(){return this.stack.length===0&&this.pushToken(this.lexer.lex()),this.stack[this.stack.length-1]}popToken(){return this.future(),this.stack.pop()}pushToken(e){this.stack.push(e)}pushTokens(e){this.stack.push(...e)}scanArgument(e){var t,n,r;if(e){if(this.consumeSpaces(),this.future().text!==`[`)return null;t=this.popToken(),{tokens:r,end:n}=this.consumeArg([`]`])}else ({tokens:r,start:t,end:n}=this.consumeArg());return this.pushToken(new Yp(`EOF`,n.loc)),this.pushTokens(r),new Yp(``,Jp.range(t,n))}consumeSpaces(){for(;this.future().text===` `;)this.stack.pop()}consumeArg(e){var t=[],n=e&&e.length>0;n||this.consumeSpaces();var r=this.future(),i,a=0,o=0;do{if(i=this.popToken(),t.push(i),i.text===`{`)++a;else if(i.text===`}`){if(--a,a===-1)throw new M(`Extra }`,i)}else if(i.text===`EOF`)throw new M(`Unexpected end of input in a macro argument, expected '`+(e&&n?e[o]:`}`)+`'`,i);if(e&&n)if((a===0||a===1&&e[o]===`{`)&&i.text===e[o]){if(++o,o===e.length){t.splice(-o,o);break}}else o=0}while(a!==0||n);return r.text===`{`&&t[t.length-1].text===`}`&&(t.pop(),t.shift()),t.reverse(),{tokens:t,start:r,end:i}}consumeArgs(e,t){if(t){if(t.length!==e+1)throw new M(`The length of delimiters doesn't match the number of args!`);for(var n=t[0],r=0;r<n.length;r++){var i=this.popToken();if(n[r]!==i.text)throw new M(`Use of the macro doesn't match its definition`,i)}}for(var a=[],o=0;o<e;o++)a.push(this.consumeArg(t&&t[o+1]).tokens);return a}countExpansion(e){if(this.expansionCount+=e,this.expansionCount>this.settings.maxExpand)throw new M(`Too many expansions: infinite loop or need to increase maxExpand setting`)}expandOnce(e){var t=this.popToken(),n=t.text,r=t.noexpand?null:this._getExpansion(n);if(r==null||e&&r.unexpandable){if(e&&r==null&&n[0]===`\\`&&!this.isDefined(n))throw new M(`Undefined control sequence: `+n);return this.pushToken(t),!1}this.countExpansion(1);var i=r.tokens,a=this.consumeArgs(r.numArgs,r.delimiters);if(r.numArgs){i=i.slice();for(var o=i.length-1;o>=0;--o){var s=i[o];if(s.text===`#`){if(o===0)throw new M(`Incomplete placeholder at end of macro body`,s);if(s=i[--o],s.text===`#`)i.splice(o+1,1);else if(/^[1-9]$/.test(s.text))i.splice(o,2,...a[s.text-1]);else throw new M(`Not a valid argument number`,s)}}}return this.pushTokens(i),i.length}expandAfterFuture(){return this.expandOnce(),this.future()}expandNextToken(){for(;;)if(this.expandOnce()===!1){var e=this.stack.pop();return e.treatAsRelax&&(e.text=`\\relax`),e}}expandMacro(e){return this.macros.has(e)?this.expandTokens([new Yp(e)]):void 0}expandTokens(e){var t=[],n=this.stack.length;for(this.pushTokens(e);this.stack.length>n;)if(this.expandOnce(!0)===!1){var r=this.stack.pop();r.treatAsRelax&&=(r.noexpand=!1,!1),t.push(r)}return this.countExpansion(t.length),t}expandMacroAsText(e){var t=this.expandMacro(e);return t&&t.map(e=>e.text).join(``)}_getExpansion(e){var t=this.macros.get(e);if(t==null)return t;if(e.length===1){var n=this.lexer.catcodes[e];if(n!=null&&n!==13)return}var r=typeof t==`function`?t(this):t;if(typeof r==`string`){var i=0;if(r.includes(`#`))for(var a=r.replace(/##/g,``);a.includes(`#`+(i+1));)++i;for(var o=new qm(r,this.settings),s=[],c=o.lex();c.text!==`EOF`;)s.push(c),c=o.lex();return s.reverse(),{tokens:s,numArgs:i}}return r}isDefined(e){return this.macros.has(e)||Rm.hasOwnProperty(e)||ed.math.hasOwnProperty(e)||ed.text.hasOwnProperty(e)||rh.hasOwnProperty(e)}isExpandable(e){var t=this.macros.get(e);return t==null?Rm.hasOwnProperty(e)&&!Rm[e].primitive:typeof t==`string`||typeof t==`function`||!t.unexpandable}},ah=/^[₊₋₌₍₎₀₁₂₃₄₅₆₇₈₉ₐₑₕᵢⱼₖₗₘₙₒₚᵣₛₜᵤᵥₓᵦᵧᵨᵩᵪ]/,oh=Object.freeze({"₊":`+`,"₋":`-`,"₌":`=`,"₍":`(`,"₎":`)`,"₀":`0`,"₁":`1`,"₂":`2`,"₃":`3`,"₄":`4`,"₅":`5`,"₆":`6`,"₇":`7`,"₈":`8`,"₉":`9`,ₐ:`a`,ₑ:`e`,ₕ:`h`,ᵢ:`i`,ⱼ:`j`,ₖ:`k`,ₗ:`l`,ₘ:`m`,ₙ:`n`,ₒ:`o`,ₚ:`p`,ᵣ:`r`,ₛ:`s`,ₜ:`t`,ᵤ:`u`,ᵥ:`v`,ₓ:`x`,ᵦ:`β`,ᵧ:`γ`,ᵨ:`ρ`,ᵩ:`ϕ`,ᵪ:`χ`,"⁺":`+`,"⁻":`-`,"⁼":`=`,"⁽":`(`,"⁾":`)`,"⁰":`0`,"¹":`1`,"²":`2`,"³":`3`,"⁴":`4`,"⁵":`5`,"⁶":`6`,"⁷":`7`,"⁸":`8`,"⁹":`9`,ᴬ:`A`,ᴮ:`B`,ᴰ:`D`,ᴱ:`E`,ᴳ:`G`,ᴴ:`H`,ᴵ:`I`,ᴶ:`J`,ᴷ:`K`,ᴸ:`L`,ᴹ:`M`,ᴺ:`N`,ᴼ:`O`,ᴾ:`P`,ᴿ:`R`,ᵀ:`T`,ᵁ:`U`,ⱽ:`V`,ᵂ:`W`,ᵃ:`a`,ᵇ:`b`,ᶜ:`c`,ᵈ:`d`,ᵉ:`e`,ᶠ:`f`,ᵍ:`g`,ʰ:`h`,ⁱ:`i`,ʲ:`j`,ᵏ:`k`,ˡ:`l`,ᵐ:`m`,ⁿ:`n`,ᵒ:`o`,ᵖ:`p`,ʳ:`r`,ˢ:`s`,ᵗ:`t`,ᵘ:`u`,ᵛ:`v`,ʷ:`w`,ˣ:`x`,ʸ:`y`,ᶻ:`z`,ᵝ:`β`,ᵞ:`γ`,ᵟ:`δ`,ᵠ:`ϕ`,ᵡ:`χ`,ᶿ:`θ`}),sh={"́":{text:`\\'`,math:`\\acute`},"̀":{text:"\\`",math:`\\grave`},"̈":{text:`\\"`,math:`\\ddot`},"̃":{text:`\\~`,math:`\\tilde`},"̄":{text:`\\=`,math:`\\bar`},"̆":{text:`\\u`,math:`\\breve`},"̌":{text:`\\v`,math:`\\check`},"̂":{text:`\\^`,math:`\\hat`},"̇":{text:`\\.`,math:`\\dot`},"̊":{text:`\\r`,math:`\\mathring`},"̋":{text:`\\H`},"̧":{text:`\\c`}},ch={á:`á`,à:`à`,ä:`ä`,ǟ:`ǟ`,ã:`ã`,ā:`ā`,ă:`ă`,ắ:`ắ`,ằ:`ằ`,ẵ:`ẵ`,ǎ:`ǎ`,â:`â`,ấ:`ấ`,ầ:`ầ`,ẫ:`ẫ`,ȧ:`ȧ`,ǡ:`ǡ`,å:`å`,ǻ:`ǻ`,ḃ:`ḃ`,ć:`ć`,ḉ:`ḉ`,č:`č`,ĉ:`ĉ`,ċ:`ċ`,ç:`ç`,ď:`ď`,ḋ:`ḋ`,ḑ:`ḑ`,é:`é`,è:`è`,ë:`ë`,ẽ:`ẽ`,ē:`ē`,ḗ:`ḗ`,ḕ:`ḕ`,ĕ:`ĕ`,ḝ:`ḝ`,ě:`ě`,ê:`ê`,ế:`ế`,ề:`ề`,ễ:`ễ`,ė:`ė`,ȩ:`ȩ`,ḟ:`ḟ`,ǵ:`ǵ`,ḡ:`ḡ`,ğ:`ğ`,ǧ:`ǧ`,ĝ:`ĝ`,ġ:`ġ`,ģ:`ģ`,ḧ:`ḧ`,ȟ:`ȟ`,ĥ:`ĥ`,ḣ:`ḣ`,ḩ:`ḩ`,í:`í`,ì:`ì`,ï:`ï`,ḯ:`ḯ`,ĩ:`ĩ`,ī:`ī`,ĭ:`ĭ`,ǐ:`ǐ`,î:`î`,ǰ:`ǰ`,ĵ:`ĵ`,ḱ:`ḱ`,ǩ:`ǩ`,ķ:`ķ`,ĺ:`ĺ`,ľ:`ľ`,ļ:`ļ`,ḿ:`ḿ`,ṁ:`ṁ`,ń:`ń`,ǹ:`ǹ`,ñ:`ñ`,ň:`ň`,ṅ:`ṅ`,ņ:`ņ`,ó:`ó`,ò:`ò`,ö:`ö`,ȫ:`ȫ`,õ:`õ`,ṍ:`ṍ`,ṏ:`ṏ`,ȭ:`ȭ`,ō:`ō`,ṓ:`ṓ`,ṑ:`ṑ`,ŏ:`ŏ`,ǒ:`ǒ`,ô:`ô`,ố:`ố`,ồ:`ồ`,ỗ:`ỗ`,ȯ:`ȯ`,ȱ:`ȱ`,ő:`ő`,ṕ:`ṕ`,ṗ:`ṗ`,ŕ:`ŕ`,ř:`ř`,ṙ:`ṙ`,ŗ:`ŗ`,ś:`ś`,ṥ:`ṥ`,š:`š`,ṧ:`ṧ`,ŝ:`ŝ`,ṡ:`ṡ`,ş:`ş`,ẗ:`ẗ`,ť:`ť`,ṫ:`ṫ`,ţ:`ţ`,ú:`ú`,ù:`ù`,ü:`ü`,ǘ:`ǘ`,ǜ:`ǜ`,ǖ:`ǖ`,ǚ:`ǚ`,ũ:`ũ`,ṹ:`ṹ`,ū:`ū`,ṻ:`ṻ`,ŭ:`ŭ`,ǔ:`ǔ`,û:`û`,ů:`ů`,ű:`ű`,ṽ:`ṽ`,ẃ:`ẃ`,ẁ:`ẁ`,ẅ:`ẅ`,ŵ:`ŵ`,ẇ:`ẇ`,ẘ:`ẘ`,ẍ:`ẍ`,ẋ:`ẋ`,ý:`ý`,ỳ:`ỳ`,ÿ:`ÿ`,ỹ:`ỹ`,ȳ:`ȳ`,ŷ:`ŷ`,ẏ:`ẏ`,ẙ:`ẙ`,ź:`ź`,ž:`ž`,ẑ:`ẑ`,ż:`ż`,Á:`Á`,À:`À`,Ä:`Ä`,Ǟ:`Ǟ`,Ã:`Ã`,Ā:`Ā`,Ă:`Ă`,Ắ:`Ắ`,Ằ:`Ằ`,Ẵ:`Ẵ`,Ǎ:`Ǎ`,Â:`Â`,Ấ:`Ấ`,Ầ:`Ầ`,Ẫ:`Ẫ`,Ȧ:`Ȧ`,Ǡ:`Ǡ`,Å:`Å`,Ǻ:`Ǻ`,Ḃ:`Ḃ`,Ć:`Ć`,Ḉ:`Ḉ`,Č:`Č`,Ĉ:`Ĉ`,Ċ:`Ċ`,Ç:`Ç`,Ď:`Ď`,Ḋ:`Ḋ`,Ḑ:`Ḑ`,É:`É`,È:`È`,Ë:`Ë`,Ẽ:`Ẽ`,Ē:`Ē`,Ḗ:`Ḗ`,Ḕ:`Ḕ`,Ĕ:`Ĕ`,Ḝ:`Ḝ`,Ě:`Ě`,Ê:`Ê`,Ế:`Ế`,Ề:`Ề`,Ễ:`Ễ`,Ė:`Ė`,Ȩ:`Ȩ`,Ḟ:`Ḟ`,Ǵ:`Ǵ`,Ḡ:`Ḡ`,Ğ:`Ğ`,Ǧ:`Ǧ`,Ĝ:`Ĝ`,Ġ:`Ġ`,Ģ:`Ģ`,Ḧ:`Ḧ`,Ȟ:`Ȟ`,Ĥ:`Ĥ`,Ḣ:`Ḣ`,Ḩ:`Ḩ`,Í:`Í`,Ì:`Ì`,Ï:`Ï`,Ḯ:`Ḯ`,Ĩ:`Ĩ`,Ī:`Ī`,Ĭ:`Ĭ`,Ǐ:`Ǐ`,Î:`Î`,İ:`İ`,Ĵ:`Ĵ`,Ḱ:`Ḱ`,Ǩ:`Ǩ`,Ķ:`Ķ`,Ĺ:`Ĺ`,Ľ:`Ľ`,Ļ:`Ļ`,Ḿ:`Ḿ`,Ṁ:`Ṁ`,Ń:`Ń`,Ǹ:`Ǹ`,Ñ:`Ñ`,Ň:`Ň`,Ṅ:`Ṅ`,Ņ:`Ņ`,Ó:`Ó`,Ò:`Ò`,Ö:`Ö`,Ȫ:`Ȫ`,Õ:`Õ`,Ṍ:`Ṍ`,Ṏ:`Ṏ`,Ȭ:`Ȭ`,Ō:`Ō`,Ṓ:`Ṓ`,Ṑ:`Ṑ`,Ŏ:`Ŏ`,Ǒ:`Ǒ`,Ô:`Ô`,Ố:`Ố`,Ồ:`Ồ`,Ỗ:`Ỗ`,Ȯ:`Ȯ`,Ȱ:`Ȱ`,Ő:`Ő`,Ṕ:`Ṕ`,Ṗ:`Ṗ`,Ŕ:`Ŕ`,Ř:`Ř`,Ṙ:`Ṙ`,Ŗ:`Ŗ`,Ś:`Ś`,Ṥ:`Ṥ`,Š:`Š`,Ṧ:`Ṧ`,Ŝ:`Ŝ`,Ṡ:`Ṡ`,Ş:`Ş`,Ť:`Ť`,Ṫ:`Ṫ`,Ţ:`Ţ`,Ú:`Ú`,Ù:`Ù`,Ü:`Ü`,Ǘ:`Ǘ`,Ǜ:`Ǜ`,Ǖ:`Ǖ`,Ǚ:`Ǚ`,Ũ:`Ũ`,Ṹ:`Ṹ`,Ū:`Ū`,Ṻ:`Ṻ`,Ŭ:`Ŭ`,Ǔ:`Ǔ`,Û:`Û`,Ů:`Ů`,Ű:`Ű`,Ṽ:`Ṽ`,Ẃ:`Ẃ`,Ẁ:`Ẁ`,Ẅ:`Ẅ`,Ŵ:`Ŵ`,Ẇ:`Ẇ`,Ẍ:`Ẍ`,Ẋ:`Ẋ`,Ý:`Ý`,Ỳ:`Ỳ`,Ÿ:`Ÿ`,Ỹ:`Ỹ`,Ȳ:`Ȳ`,Ŷ:`Ŷ`,Ẏ:`Ẏ`,Ź:`Ź`,Ž:`Ž`,Ẑ:`Ẑ`,Ż:`Ż`,ά:`ά`,ὰ:`ὰ`,ᾱ:`ᾱ`,ᾰ:`ᾰ`,έ:`έ`,ὲ:`ὲ`,ή:`ή`,ὴ:`ὴ`,ί:`ί`,ὶ:`ὶ`,ϊ:`ϊ`,ΐ:`ΐ`,ῒ:`ῒ`,ῑ:`ῑ`,ῐ:`ῐ`,ό:`ό`,ὸ:`ὸ`,ύ:`ύ`,ὺ:`ὺ`,ϋ:`ϋ`,ΰ:`ΰ`,ῢ:`ῢ`,ῡ:`ῡ`,ῠ:`ῠ`,ώ:`ώ`,ὼ:`ὼ`,Ύ:`Ύ`,Ὺ:`Ὺ`,Ϋ:`Ϋ`,Ῡ:`Ῡ`,Ῠ:`Ῠ`,Ώ:`Ώ`,Ὼ:`Ὼ`},lh=class e{constructor(e,t){this.mode=`math`,this.gullet=new ih(e,t,this.mode),this.settings=t,this.leftrightDepth=0,this.nextToken=null}expect(e,t){if(t===void 0&&(t=!0),this.fetch().text!==e)throw new M(`Expected '`+e+`', got '`+this.fetch().text+`'`,this.fetch());t&&this.consume()}consume(){this.nextToken=null}fetch(){return this.nextToken??=this.gullet.expandNextToken(),this.nextToken}switchMode(e){this.mode=e,this.gullet.switchMode(e)}parse(){this.settings.globalGroup||this.gullet.beginGroup(),this.settings.colorIsTextColor&&this.gullet.macros.set(`\\color`,`\\textcolor`);try{var e=this.parseExpression(!1);return this.expect(`EOF`),this.settings.globalGroup||this.gullet.endGroup(),e}finally{this.gullet.endGroups()}}subparse(e){var t=this.nextToken;this.consume(),this.gullet.pushToken(new Yp(`}`)),this.gullet.pushTokens(e);var n=this.parseExpression(!1);return this.expect(`}`),this.nextToken=t,n}parseExpression(t,n){for(var r=[];;){this.mode===`math`&&this.consumeSpaces();var i=this.fetch();if(e.endOfExpression.has(i.text)||n&&i.text===n||t&&Rm[i.text]&&Rm[i.text].infix)break;var a=this.parseAtom(n);if(!a)break;a.type!==`internal`&&r.push(a)}return this.mode===`text`&&this.formLigatures(r),this.handleInfixNodes(r)}handleInfixNodes(e){for(var t=-1,n,r=0;r<e.length;r++){var i=e[r];if(i.type===`infix`){if(t!==-1)throw new M(`only one infix operator per group`,i.token);t=r,n=i.replaceWith}}if(t!==-1&&n){var a,o,s=e.slice(0,t),c=e.slice(t+1);return a=s.length===1&&s[0].type===`ordgroup`?s[0]:{type:`ordgroup`,mode:this.mode,body:s},o=c.length===1&&c[0].type===`ordgroup`?c[0]:{type:`ordgroup`,mode:this.mode,body:c},[n===`\\\\abovefrac`?this.callFunction(n,[a,e[t],o],[]):this.callFunction(n,[a,o],[])]}else return e}handleSupSubscript(e){var t=this.fetch(),n=t.text;this.consume(),this.consumeSpaces();var r;do r=this.parseGroup(e);while(r?.type===`internal`);if(!r)throw new M(`Expected group after '`+n+`'`,t);return r}formatUnsupportedCmd(e){for(var t=[],n=0;n<e.length;n++)t.push({type:`textord`,mode:`text`,text:e[n]});var r={type:`text`,mode:this.mode,body:t};return{type:`color`,mode:this.mode,color:this.settings.errorColor,body:[r]}}parseAtom(e){var t=this.parseGroup(`atom`,e);if(t?.type===`internal`||this.mode===`text`)return t;for(var n,r;;){this.consumeSpaces();var i=this.fetch();if(i.text===`\\limits`||i.text===`\\nolimits`){if(t&&t.type===`op`)t.limits=i.text===`\\limits`,t.alwaysHandleSupSub=!0;else if(t&&t.type===`operatorname`)t.alwaysHandleSupSub&&(t.limits=i.text===`\\limits`);else throw new M(`Limit controls must follow a math operator`,i);this.consume()}else if(i.text===`^`){if(n)throw new M(`Double superscript`,i);n=this.handleSupSubscript(`superscript`)}else if(i.text===`_`){if(r)throw new M(`Double subscript`,i);r=this.handleSupSubscript(`subscript`)}else if(i.text===`'`){if(n)throw new M(`Double superscript`,i);var a={type:`textord`,mode:this.mode,text:`\\prime`},o=[a];for(this.consume();this.fetch().text===`'`;)o.push(a),this.consume();this.fetch().text===`^`&&o.push(this.handleSupSubscript(`superscript`)),n={type:`ordgroup`,mode:this.mode,body:o}}else if(oh[i.text]){var s=ah.test(i.text),c=[];for(c.push(new Yp(oh[i.text])),this.consume();;){var l=this.fetch().text;if(!oh[l]||ah.test(l)!==s)break;c.unshift(new Yp(oh[l])),this.consume()}var u=this.subparse(c);s?r={type:`ordgroup`,mode:`math`,body:u}:n={type:`ordgroup`,mode:`math`,body:u}}else break}return n||r?{type:`supsub`,mode:this.mode,base:t,sup:n,sub:r}:t}parseFunction(e,t){var n=this.fetch(),r=n.text,i=Rm[r];if(!i)return null;if(this.consume(),t&&t!==`atom`&&!i.allowedInArgument)throw new M(`Got function '`+r+`' with no arguments`+(t?` as `+t:``),n);if(this.mode===`text`&&!i.allowedInText)throw new M(`Can't use function '`+r+`' in text mode`,n);if(this.mode===`math`&&i.allowedInMath===!1)throw new M(`Can't use function '`+r+`' in math mode`,n);var{args:a,optArgs:o}=this.parseArguments(r,i);return this.callFunction(r,a,o,n,e)}callFunction(e,t,n,r,i){var a={funcName:e,parser:this,token:r,breakOnTokenText:i},o=Rm[e];if(o&&o.handler)return o.handler(a,t,n);throw new M(`No function handler for `+e)}parseArguments(e,t){var n=t.numArgs+t.numOptionalArgs;if(n===0)return{args:[],optArgs:[]};for(var r=[],i=[],a=0;a<n;a++){var o=t.argTypes&&t.argTypes[a],s=a<t.numOptionalArgs;(`primitive`in t&&t.primitive&&o==null||t.type===`sqrt`&&a===1&&i[0]==null)&&(o=`primitive`);var c=this.parseGroupOfType(`argument to '`+e+`'`,o,s);if(s)i.push(c);else if(c!=null)r.push(c);else throw new M(`Null argument, please report this as a bug`)}return{args:r,optArgs:i}}parseGroupOfType(e,t,n){switch(t){case`color`:return this.parseColorGroup(n);case`size`:return this.parseSizeGroup(n);case`url`:return this.parseUrlGroup(n);case`math`:case`text`:return this.parseArgumentGroup(n,t);case`hbox`:var r=this.parseArgumentGroup(n,`text`);return r==null?null:{type:`styling`,mode:r.mode,body:[r],style:`text`};case`raw`:var i=this.parseStringGroup(`raw`,n);return i==null?null:{type:`raw`,mode:`text`,string:i.text};case`primitive`:if(n)throw new M(`A primitive argument cannot be optional`);var a=this.parseGroup(e);if(a==null)throw new M(`Expected group as `+e,this.fetch());return a;case`original`:case null:case void 0:return this.parseArgumentGroup(n);default:throw new M(`Unknown group type as `+e,this.fetch())}}consumeSpaces(){for(;this.fetch().text===` `;)this.consume()}parseStringGroup(e,t){var n=this.gullet.scanArgument(t);if(n==null)return null;for(var r=``,i;(i=this.fetch()).text!==`EOF`;)r+=i.text,this.consume();return this.consume(),n.text=r,n}parseRegexGroup(e,t){for(var n=this.fetch(),r=n,i=``,a;(a=this.fetch()).text!==`EOF`&&e.test(i+a.text);)r=a,i+=r.text,this.consume();if(i===``)throw new M(`Invalid `+t+`: '`+n.text+`'`,n);return n.range(r,i)}parseColorGroup(e){var t=this.parseStringGroup(`color`,e);if(t==null)return null;var n=/^(#[a-f0-9]{3,4}|#[a-f0-9]{6}|#[a-f0-9]{8}|[a-f0-9]{6}|[a-z]+)$/i.exec(t.text);if(!n)throw new M(`Invalid color: '`+t.text+`'`,t);var r=n[0];return/^[0-9a-f]{6}$/i.test(r)&&(r=`#`+r),{type:`color-token`,mode:this.mode,color:r}}parseSizeGroup(e){var t,n=!1;if(this.gullet.consumeSpaces(),t=!e&&this.gullet.future().text!==`{`?this.parseRegexGroup(/^[-+]? *(?:$|\d+|\d+\.\d*|\.\d*) *[a-z]{0,2} *$/,`size`):this.parseStringGroup(`size`,e),!t)return null;!e&&t.text.length===0&&(t.text=`0pt`,n=!0);var r=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(t.text);if(!r)throw new M(`Invalid size: '`+t.text+`'`,t);var i={number:+(r[1]+r[2]),unit:r[3]};if(!Du(i))throw new M(`Invalid unit: '`+i.unit+`'`,t);return{type:`size`,mode:this.mode,value:i,isBlank:n}}parseUrlGroup(e){this.gullet.lexer.setCatcode(`%`,13),this.gullet.lexer.setCatcode(`~`,12);var t=this.parseStringGroup(`url`,e);if(this.gullet.lexer.setCatcode(`%`,14),this.gullet.lexer.setCatcode(`~`,13),t==null)return null;var n=t.text.replace(/\\([#$%&~_^{}])/g,`$1`);return{type:`url`,mode:this.mode,url:n}}parseArgumentGroup(e,t){var n=this.gullet.scanArgument(e);if(n==null)return null;var r=this.mode;t&&this.switchMode(t),this.gullet.beginGroup();var i=this.parseExpression(!1,`EOF`);this.expect(`EOF`),this.gullet.endGroup();var a={type:`ordgroup`,mode:this.mode,loc:n.loc,body:i};return t&&this.switchMode(r),a}parseGroup(e,t){var n=this.fetch(),r=n.text,i;if(r===`{`||r===`\\begingroup`){this.consume();var a=r===`{`?`}`:`\\endgroup`;this.gullet.beginGroup();var o=this.parseExpression(!1,a),s=this.fetch();this.expect(a),this.gullet.endGroup(),i={type:`ordgroup`,mode:this.mode,loc:Jp.range(n,s),body:o,semisimple:r===`\\begingroup`||void 0}}else if(i=this.parseFunction(t,e)||this.parseSymbol(),i==null&&r[0]===`\\`&&!rh.hasOwnProperty(r)){if(this.settings.throwOnError)throw new M(`Undefined control sequence: `+r,n);i=this.formatUnsupportedCmd(r),this.consume()}return i}formLigatures(e){for(var t=e.length-1,n=0;n<t;++n){var r=e[n];if(r.type===`textord`){var i=r.text,a=e[n+1];if(!(!a||a.type!==`textord`)){if(i===`-`&&a.text===`-`){var o=e[n+2];n+1<t&&o&&o.type===`textord`&&o.text===`-`?(e.splice(n,3,{type:`textord`,mode:`text`,loc:Jp.range(r,o),text:`---`}),t-=2):(e.splice(n,2,{type:`textord`,mode:`text`,loc:Jp.range(r,a),text:`--`}),--t)}(i===`'`||i==="`")&&a.text===i&&(e.splice(n,2,{type:`textord`,mode:`text`,loc:Jp.range(r,a),text:i+i}),--t)}}}}parseSymbol(){var e=this.fetch(),t=e.text;if(/^\\verb[^a-zA-Z]/.test(t)){this.consume();var n=t.slice(5),r=n.charAt(0)===`*`;if(r&&(n=n.slice(1)),n.length<2||n.charAt(0)!==n.slice(-1))throw new M(`\\verb assertion failed --
289
289
  please report what input caused this bug`);return n=n.slice(1,-1),{type:`verb`,mode:`text`,body:n,star:r}}ch.hasOwnProperty(t[0])&&!ed[this.mode][t[0]]&&(this.settings.strict&&this.mode===`math`&&this.settings.reportNonstrict(`unicodeTextInMathMode`,`Accented Unicode text character "`+t[0]+`" used in math mode`,e),t=ch[t[0]]+t.slice(1));var i=Gm.exec(t);i&&(t=t.substring(0,i.index),t===`i`?t=`ı`:t===`j`&&(t=`ȷ`));var a;if(ed[this.mode][t]){this.settings.strict&&this.mode===`math`&&xd.includes(t)&&this.settings.reportNonstrict(`unicodeTextInMathMode`,`Latin-1/Unicode text character "`+t[0]+`" used in math mode`,e);var o=ed[this.mode][t].group,s=Jp.range(e),c;if(Qu.hasOwnProperty(o)){var l=o;c={type:`atom`,mode:this.mode,family:l,loc:s,text:t}}else c={type:o,mode:this.mode,loc:s,text:t};a=c}else if(t.charCodeAt(0)>=128)this.settings.strict&&(uu(t.charCodeAt(0))?this.mode===`math`&&this.settings.reportNonstrict(`unicodeTextInMathMode`,`Unicode text character "`+t[0]+`" used in math mode`,e):this.settings.reportNonstrict(`unknownSymbol`,`Unrecognized Unicode character "`+t[0]+`"`+(` (`+t.charCodeAt(0)+`)`),e)),a={type:`textord`,mode:`text`,loc:Jp.range(e),text:t};else return null;if(this.consume(),i)for(var u=0;u<i[0].length;u++){var d=i[0][u];if(!sh[d])throw new M(`Unknown accent ' `+d+`'`,e);var f=sh[d][this.mode]||sh[d].text;if(!f)throw new M(`Accent `+d+` unsupported in `+this.mode+` mode`,e);a={type:`accent`,mode:this.mode,loc:Jp.range(e),label:f,isStretchy:!1,isShifty:!0,base:a}}return a}};lh.endOfExpression=new Set([`}`,`\\endgroup`,`\\end`,`\\right`,`&`]);var uh=function(e,t){if(!(typeof e==`string`||e instanceof String))throw TypeError(`KaTeX can only parse string typed expression`);var n=new lh(e,t);delete n.gullet.macros.current[`\\df@tag`];var r=n.parse();if(delete n.gullet.macros.current[`\\current@color`],delete n.gullet.macros.current[`\\color`],n.gullet.macros.get(`\\df@tag`)){if(!t.displayMode)throw new M(`\\tag works only in display equations`);r=[{type:`tag`,mode:`text`,body:r,tag:n.subparse([new Yp(`\\df@tag`)])}]}return r},dh=function(e,t,n){t.textContent=``;var r=hh(e,n).toNode();t.appendChild(r)};typeof document<`u`&&document.compatMode!==`CSS1Compat`&&(typeof console<`u`&&console.warn(`Warning: KaTeX doesn't work in quirks mode. Make sure your website has a suitable doctype.`),dh=function(){throw new M(`KaTeX doesn't work in quirks mode.`)});var fh=function(e,t){return hh(e,t).toMarkup()},ph=function(e,t){return uh(e,new Wl(t))},mh=function(e,t,n){if(n.throwOnError||!(e instanceof M))throw e;var r=K([`katex-error`],[new Ru(t)]);return r.setAttribute(`title`,e.toString()),r.setAttribute(`style`,`color:`+n.errorColor),r},hh=function(e,t){var n=new Wl(t);try{return Pf(uh(e,n),e,n)}catch(t){return mh(t,e,n)}},gh={version:`0.16.45`,render:dh,renderToString:fh,ParseError:M,SETTINGS_SCHEMA:Hl,__parse:ph,__renderToDomTree:hh,__renderToHTMLTree:function(e,t){var n=new Wl(t);try{return Ff(uh(e,n),e,n)}catch(t){return mh(t,e,n)}},__setFontMetrics:Ju,__defineSymbol:F,__defineFunction:J,__defineMacro:$,__domTree:{Span:Pu,Anchor:Fu,SymbolNode:Ru,SvgNode:zu,PathNode:Bu,LineNode:Vu}},_h={};function vh(e){let t=this,n=e||_h,r=t.data(),i=r.micromarkExtensions||=[],a=r.fromMarkdownExtensions||=[],o=r.toMarkdownExtensions||=[];i.push(Ml(n)),a.push(Cl()),o.push(wl(n))}var yh=/[#.]/g;function bh(e,t){let n=e||``,r={},i=0,a,o;for(;i<n.length;){yh.lastIndex=i;let e=yh.exec(n),t=n.slice(i,e?e.index:n.length);t&&(a?a===`#`?r.id=t:Array.isArray(r.className)?r.className.push(t):r.className=[t]:o=t,i+=t.length),e&&(a=e[0],i++)}return{type:`element`,tagName:o||t||`div`,properties:r,children:[]}}function xh(e,t,n){let r=n?Dh(n):void 0;function i(n,i,...a){let o;if(n==null){o={type:`root`,children:[]};let e=i;a.unshift(e)}else{o=bh(n,t);let s=o.tagName.toLowerCase(),c=r?r.get(s):void 0;if(o.tagName=c||s,Sh(i))a.unshift(i);else for(let[t,n]of Object.entries(i))Ch(e,o.properties,t,n)}for(let e of a)wh(o.children,e);return o.type===`element`&&o.tagName===`template`&&(o.content={type:`root`,children:o.children},o.children=[]),o}return i}function Sh(e){if(typeof e!=`object`||!e||Array.isArray(e))return!0;if(typeof e.type!=`string`)return!1;let t=e,n=Object.keys(e);for(let e of n){let n=t[e];if(n&&typeof n==`object`){if(!Array.isArray(n))return!0;let e=n;for(let t of e)if(typeof t!=`number`&&typeof t!=`string`)return!0}}return!!(`children`in e&&Array.isArray(e.children))}function Ch(e,t,n,r){let i=le(e,n),a;if(r!=null){if(typeof r==`number`){if(Number.isNaN(r))return;a=r}else a=typeof r==`boolean`?r:typeof r==`string`?i.spaceSeparated?_e(r):i.commaSeparated?he(r):i.commaOrSpaceSeparated?_e(he(r).join(` `)):Th(i,i.property,r):Array.isArray(r)?[...r]:i.property===`style`?Eh(r):String(r);if(Array.isArray(a)){let e=[];for(let t of a)e.push(Th(i,i.property,t));a=e}i.property===`className`&&Array.isArray(t.className)&&(a=t.className.concat(a)),t[i.property]=a}}function wh(e,t){if(t!=null)if(typeof t==`number`||typeof t==`string`)e.push({type:`text`,value:String(t)});else if(Array.isArray(t))for(let n of t)wh(e,n);else if(typeof t==`object`&&`type`in t)t.type===`root`?wh(e,t.children):e.push(t);else throw Error("Expected node, nodes, or string, got `"+t+"`")}function Th(e,t,n){if(typeof n==`string`){if(e.number&&n&&!Number.isNaN(Number(n)))return Number(n);if((e.boolean||e.overloadedBoolean)&&(n===``||l(n)===l(t)))return!0}return n}function Eh(e){let t=[];for(let[n,r]of Object.entries(e))t.push([n,r].join(`: `));return t.join(`; `)}function Dh(e){let t=new Map;for(let n of e)t.set(n.toLowerCase(),n);return t}var Oh=`altGlyph.altGlyphDef.altGlyphItem.animateColor.animateMotion.animateTransform.clipPath.feBlend.feColorMatrix.feComponentTransfer.feComposite.feConvolveMatrix.feDiffuseLighting.feDisplacementMap.feDistantLight.feDropShadow.feFlood.feFuncA.feFuncB.feFuncG.feFuncR.feGaussianBlur.feImage.feMerge.feMergeNode.feMorphology.feOffset.fePointLight.feSpecularLighting.feSpotLight.feTile.feTurbulence.foreignObject.glyphRef.linearGradient.radialGradient.solidColor.textArea.textPath`.split(`.`),kh=xh(fe,`div`),Ah=xh(pe,`g`,Oh),jh={html:`http://www.w3.org/1999/xhtml`,mathml:`http://www.w3.org/1998/Math/MathML`,svg:`http://www.w3.org/2000/svg`,xlink:`http://www.w3.org/1999/xlink`,xml:`http://www.w3.org/XML/1998/namespace`,xmlns:`http://www.w3.org/2000/xmlns/`};function Mh(e,t){return Nh(e,t||{})||{type:`root`,children:[]}}function Nh(e,t){let n=Ph(e,t);return n&&t.afterTransform&&t.afterTransform(e,n),n}function Ph(e,t){switch(e.nodeType){case 1:return zh(e,t);case 3:return Lh(e);case 8:return Rh(e);case 9:return Fh(e,t);case 10:return Ih();case 11:return Fh(e,t);default:return}}function Fh(e,t){return{type:`root`,children:Bh(e,t)}}function Ih(){return{type:`doctype`}}function Lh(e){return{type:`text`,value:e.nodeValue||``}}function Rh(e){return{type:`comment`,value:e.nodeValue||``}}function zh(e,t){let n=e.namespaceURI,r=n===jh.svg?Ah:kh,i=n===jh.html?e.tagName.toLowerCase():e.tagName,a=n===jh.html&&i===`template`?e.content:e,o=e.getAttributeNames(),s={},c=-1;for(;++c<o.length;)s[o[c]]=e.getAttribute(o[c])||``;return r(i,s,Bh(a,t))}function Bh(e,t){let n=e.childNodes,r=[],i=-1;for(;++i<n.length;){let e=Nh(n[i],t);e!==void 0&&r.push(e)}return r}var Vh=new DOMParser;function Hh(e,t){return Mh(t?.fragment?Uh(e):Vh.parseFromString(e,`text/html`))}function Uh(e){let t=document.createElement(`template`);return t.innerHTML=e,t.content}var Wh=(function(e,t,n){let r=sa(n);if(!e||!e.type||!e.children)throw Error(`Expected parent node`);if(typeof t==`number`){if(t<0||t===1/0)throw Error(`Expected positive finite number as index`)}else if(t=e.children.indexOf(t),t<0)throw Error(`Expected child node or index`);for(;++t<e.children.length;)if(r(e.children[t],t,e))return e.children[t]}),Gh=(function(e){if(e==null)return Yh;if(typeof e==`string`)return qh(e);if(typeof e==`object`)return Kh(e);if(typeof e==`function`)return Jh(e);throw Error("Expected function, string, or array as `test`")});function Kh(e){let t=[],n=-1;for(;++n<e.length;)t[n]=Gh(e[n]);return Jh(r);function r(...e){let n=-1;for(;++n<t.length;)if(t[n].apply(this,e))return!0;return!1}}function qh(e){return Jh(t);function t(t){return t.tagName===e}}function Jh(e){return t;function t(t,n,r){return!!(Xh(t)&&e.call(this,t,typeof n==`number`?n:void 0,r||void 0))}}function Yh(e){return!!(e&&typeof e==`object`&&`type`in e&&e.type===`element`&&`tagName`in e&&typeof e.tagName==`string`)}function Xh(e){return typeof e==`object`&&!!e&&`type`in e&&`tagName`in e}var Zh=/\n/g,Qh=/[\t ]+/g,$h=Gh(`br`),eg=Gh(pg),tg=Gh(`p`),ng=Gh(`tr`),rg=Gh([`datalist`,`head`,`noembed`,`noframes`,`noscript`,`rp`,`script`,`style`,`template`,`title`,fg,mg]),ig=Gh(`address.article.aside.blockquote.body.caption.center.dd.dialog.dir.dl.dt.div.figure.figcaption.footer.form,.h1.h2.h3.h4.h5.h6.header.hgroup.hr.html.legend.li.listing.main.menu.nav.ol.p.plaintext.pre.section.ul.xmp`.split(`.`));function ag(e,t){let n=t||{},r=`children`in e?e.children:[],i=ig(e),a=dg(e,{whitespace:n.whitespace||`normal`,breakBefore:!1,breakAfter:!1}),o=[];(e.type===`text`||e.type===`comment`)&&o.push(...cg(e,{whitespace:a,breakBefore:!0,breakAfter:!0}));let s=-1;for(;++s<r.length;)o.push(...og(r[s],e,{whitespace:a,breakBefore:s?void 0:i,breakAfter:s<r.length-1?$h(r[s+1]):i}));let c=[],l;for(s=-1;++s<o.length;){let e=o[s];typeof e==`number`?l!==void 0&&e>l&&(l=e):e&&(l!==void 0&&l>-1&&c.push(`
290
290
  `.repeat(l)||` `),l=-1,c.push(e))}return c.join(``)}function og(e,t,n){return e.type===`element`?sg(e,t,n):e.type===`text`?n.whitespace===`normal`?cg(e,n):lg(e):[]}function sg(e,t,n){let r=dg(e,n),i=e.children||[],a=-1,o=[];if(rg(e))return o;let s,c;for($h(e)||ng(e)&&Wh(t,e,ng)?c=`
291
- `:tg(e)?(s=2,c=2):ig(e)&&(s=1,c=1);++a<i.length;)o=o.concat(og(i[a],e,{whitespace:r,breakBefore:a?void 0:s,breakAfter:a<i.length-1?$h(i[a+1]):c}));return eg(e)&&Wh(t,e,eg)&&o.push(` `),s&&o.unshift(s),c&&o.push(c),o}function cg(e,t){let n=String(e.value),r=[],i=[],a=0;for(;a<=n.length;){Zh.lastIndex=a;let e=Zh.exec(n),i=e&&`index`in e?e.index:n.length;r.push(ug(n.slice(a,i).replace(/[\u061C\u200E\u200F\u202A-\u202E\u2066-\u2069]/g,``),a===0?t.breakBefore:!0,i===n.length?t.breakAfter:!0)),a=i+1}let o=-1,s;for(;++o<r.length;)r[o].charCodeAt(r[o].length-1)===8203||o<r.length-1&&r[o+1].charCodeAt(0)===8203?(i.push(r[o]),s=void 0):r[o]?(typeof s==`number`&&i.push(s),i.push(r[o]),s=0):(o===0||o===r.length-1)&&i.push(0);return i}function lg(e){return[String(e.value)]}function ug(e,t,n){let r=[],i=0,a;for(;i<e.length;){Qh.lastIndex=i;let n=Qh.exec(e);a=n?n.index:e.length,!i&&!a&&n&&!t&&r.push(``),i!==a&&r.push(e.slice(i,a)),i=n?a+n[0].length:a}return i!==a&&!n&&r.push(``),r.join(` `)}function dg(e,t){if(e.type===`element`){let n=e.properties||{};switch(e.tagName){case`listing`:case`plaintext`:case`xmp`:return`pre`;case`nobr`:return`nowrap`;case`pre`:return n.wrap?`pre-wrap`:`pre`;case`td`:case`th`:return n.noWrap?`nowrap`:t.whitespace;case`textarea`:return`pre-wrap`;default:}}return t.whitespace}function fg(e){return!!(e.properties||{}).hidden}function pg(e){return e.tagName===`td`||e.tagName===`th`}function mg(e){return e.tagName===`dialog`&&!(e.properties||{}).open}var hg={},gg=[];function _g(e){let t=e||hg;return function(e,n){_a(e,`element`,function(e,r){let i=Array.isArray(e.properties.className)?e.properties.className:gg,a=i.includes(`language-math`),o=i.includes(`math-display`),s=i.includes(`math-inline`),c=o;if(!a&&!o&&!s)return;let l=r[r.length-1],u=e;if(e.tagName===`code`&&a&&l&&l.type===`element`&&l.tagName===`pre`&&(u=l,l=r[r.length-2],c=!0),!l)return;let d=ag(u,{whitespace:`pre`}),f;try{f=gh.renderToString(d,{...t,displayMode:c,throwOnError:!0})}catch(i){let a=i,o=a.name.toLowerCase();n.message(`Could not render math with KaTeX`,{ancestors:[...r,e],cause:a,place:e.position,ruleId:o,source:`rehype-katex`});try{f=gh.renderToString(d,{...t,displayMode:c,strict:`ignore`,throwOnError:!1})}catch{f=[{type:`element`,tagName:`span`,properties:{className:[`katex-error`],style:`color:`+(t.errorColor||`#cc0000`),title:String(i)},children:[{type:`text`,value:d}]}]}}typeof f==`string`&&(f=Hh(f,{fragment:!0}).children);let p=l.children.indexOf(u);return l.children.splice(p,1,...f),ga})}}export{i as S,me as _,vh as a,le as b,yo as c,je as d,Me as f,ge as g,ve as h,Ah as i,ya as l,be as m,jh as n,Sl as o,Se as p,kh as r,To as s,_g as t,ra as u,fe as v,o as x,pe as y};
291
+ `:tg(e)?(s=2,c=2):ig(e)&&(s=1,c=1);++a<i.length;)o=o.concat(og(i[a],e,{whitespace:r,breakBefore:a?void 0:s,breakAfter:a<i.length-1?$h(i[a+1]):c}));return eg(e)&&Wh(t,e,eg)&&o.push(` `),s&&o.unshift(s),c&&o.push(c),o}function cg(e,t){let n=String(e.value),r=[],i=[],a=0;for(;a<=n.length;){Zh.lastIndex=a;let e=Zh.exec(n),i=e&&`index`in e?e.index:n.length;r.push(ug(n.slice(a,i).replace(/[\u061C\u200E\u200F\u202A-\u202E\u2066-\u2069]/g,``),a===0?t.breakBefore:!0,i===n.length?t.breakAfter:!0)),a=i+1}let o=-1,s;for(;++o<r.length;)r[o].charCodeAt(r[o].length-1)===8203||o<r.length-1&&r[o+1].charCodeAt(0)===8203?(i.push(r[o]),s=void 0):r[o]?(typeof s==`number`&&i.push(s),i.push(r[o]),s=0):(o===0||o===r.length-1)&&i.push(0);return i}function lg(e){return[String(e.value)]}function ug(e,t,n){let r=[],i=0,a;for(;i<e.length;){Qh.lastIndex=i;let n=Qh.exec(e);a=n?n.index:e.length,!i&&!a&&n&&!t&&r.push(``),i!==a&&r.push(e.slice(i,a)),i=n?a+n[0].length:a}return i!==a&&!n&&r.push(``),r.join(` `)}function dg(e,t){if(e.type===`element`){let n=e.properties||{};switch(e.tagName){case`listing`:case`plaintext`:case`xmp`:return`pre`;case`nobr`:return`nowrap`;case`pre`:return n.wrap?`pre-wrap`:`pre`;case`td`:case`th`:return n.noWrap?`nowrap`:t.whitespace;case`textarea`:return`pre-wrap`;default:}}return t.whitespace}function fg(e){return!!(e.properties||{}).hidden}function pg(e){return e.tagName===`td`||e.tagName===`th`}function mg(e){return e.tagName===`dialog`&&!(e.properties||{}).open}var hg={},gg=[];function _g(e){let t=e||hg;return function(e,n){_a(e,`element`,function(e,r){let i=Array.isArray(e.properties.className)?e.properties.className:gg,a=i.includes(`language-math`),o=i.includes(`math-display`),s=i.includes(`math-inline`),c=o;if(!a&&!o&&!s)return;let l=r[r.length-1],u=e;if(e.tagName===`code`&&a&&l&&l.type===`element`&&l.tagName===`pre`&&(u=l,l=r[r.length-2],c=!0),!l)return;let d=ag(u,{whitespace:`pre`}),f;try{f=gh.renderToString(d,{...t,displayMode:c,throwOnError:!0})}catch(i){let a=i,o=a.name.toLowerCase();n.message(`Could not render math with KaTeX`,{ancestors:[...r,e],cause:a,place:e.position,ruleId:o,source:`rehype-katex`});try{f=gh.renderToString(d,{...t,displayMode:c,strict:`ignore`,throwOnError:!1})}catch{f=[{type:`element`,tagName:`span`,properties:{className:[`katex-error`],style:`color:`+(t.errorColor||`#cc0000`),title:String(i)},children:[{type:`text`,value:d}]}]}}typeof f==`string`&&(f=Hh(f,{fragment:!0}).children);let p=l.children.indexOf(u);return l.children.splice(p,1,...f),ga})}}export{i as C,o as S,ge as _,vh as a,pe as b,yo as c,ra as d,je as f,ve as g,be as h,Ah as i,Co as l,Se as m,jh as n,Sl as o,Me as p,kh as r,To as s,_g as t,ya as u,me as v,le as x,fe as y};
@@ -1,4 +1,4 @@
1
- import{o as e,t}from"./rolldown-runtime-FhOqtrmT.js";import{S as n,x as r}from"./vendor-markdown-Ls5AcU91.js";var i=t((e=>{var t=n();function r(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function i(){}var a={d:{f:i,r:function(){throw Error(r(522))},D:i,C:i,L:i,m:i,X:i,S:i,M:i},p:0,findDOMNode:null},o=Symbol.for(`react.portal`);function s(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:o,key:r==null?null:``+r,children:e,containerInfo:t,implementation:n}}var c=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function l(e,t){if(e===`font`)return``;if(typeof t==`string`)return t===`use-credentials`?t:``}e.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=a,e.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)throw Error(r(299));return s(e,t,null,n)},e.flushSync=function(e){var t=c.T,n=a.p;try{if(c.T=null,a.p=2,e)return e()}finally{c.T=t,a.p=n,a.d.f()}},e.preconnect=function(e,t){typeof e==`string`&&(t?(t=t.crossOrigin,t=typeof t==`string`?t===`use-credentials`?t:``:void 0):t=null,a.d.C(e,t))},e.prefetchDNS=function(e){typeof e==`string`&&a.d.D(e)},e.preinit=function(e,t){if(typeof e==`string`&&t&&typeof t.as==`string`){var n=t.as,r=l(n,t.crossOrigin),i=typeof t.integrity==`string`?t.integrity:void 0,o=typeof t.fetchPriority==`string`?t.fetchPriority:void 0;n===`style`?a.d.S(e,typeof t.precedence==`string`?t.precedence:void 0,{crossOrigin:r,integrity:i,fetchPriority:o}):n===`script`&&a.d.X(e,{crossOrigin:r,integrity:i,fetchPriority:o,nonce:typeof t.nonce==`string`?t.nonce:void 0})}},e.preinitModule=function(e,t){if(typeof e==`string`)if(typeof t==`object`&&t){if(t.as==null||t.as===`script`){var n=l(t.as,t.crossOrigin);a.d.M(e,{crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0})}}else t??a.d.M(e)},e.preload=function(e,t){if(typeof e==`string`&&typeof t==`object`&&t&&typeof t.as==`string`){var n=t.as,r=l(n,t.crossOrigin);a.d.L(e,n,{crossOrigin:r,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,type:typeof t.type==`string`?t.type:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0,referrerPolicy:typeof t.referrerPolicy==`string`?t.referrerPolicy:void 0,imageSrcSet:typeof t.imageSrcSet==`string`?t.imageSrcSet:void 0,imageSizes:typeof t.imageSizes==`string`?t.imageSizes:void 0,media:typeof t.media==`string`?t.media:void 0})}},e.preloadModule=function(e,t){if(typeof e==`string`)if(t){var n=l(t.as,t.crossOrigin);a.d.m(e,{as:typeof t.as==`string`&&t.as!==`script`?t.as:void 0,crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0})}else a.d.m(e)},e.requestFormReset=function(e){a.d.r(e)},e.unstable_batchedUpdates=function(e,t){return e(t)},e.useFormState=function(e,t,n){return c.H.useFormState(e,t,n)},e.useFormStatus=function(){return c.H.useHostTransitionStatus()},e.version=`19.2.4`})),a=t(((e,t)=>{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=i()})),o=e(n(),1);function s(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}function c(...e){return t=>{let n=!1,r=e.map(e=>{let r=s(e,t);return!n&&typeof r==`function`&&(n=!0),r});if(n)return()=>{for(let t=0;t<r.length;t++){let n=r[t];typeof n==`function`?n():s(e[t],null)}}}}function l(...e){return o.useCallback(c(...e),e)}var u=r();function d(e){let t=p(e),n=o.forwardRef((e,n)=>{let{children:r,...i}=e,a=o.Children.toArray(r),s=a.find(g);if(s){let e=s.props.children,r=a.map(t=>t===s?o.Children.count(e)>1?o.Children.only(null):o.isValidElement(e)?e.props.children:null:t);return(0,u.jsx)(t,{...i,ref:n,children:o.isValidElement(e)?o.cloneElement(e,void 0,r):null})}return(0,u.jsx)(t,{...i,ref:n,children:r})});return n.displayName=`${e}.Slot`,n}var f=d(`Slot`);function p(e){let t=o.forwardRef((e,t)=>{let{children:n,...r}=e;if(o.isValidElement(n)){let e=v(n),i=_(r,n.props);return n.type!==o.Fragment&&(i.ref=t?c(t,e):e),o.cloneElement(n,i)}return o.Children.count(n)>1?o.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var m=Symbol(`radix.slottable`);function h(e){let t=({children:e})=>(0,u.jsx)(u.Fragment,{children:e});return t.displayName=`${e}.Slottable`,t.__radixId=m,t}function g(e){return o.isValidElement(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===m}function _(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`&&(n[r]=[i,a].filter(Boolean).join(` `))}return{...e,...n}}function v(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var y=e(a(),1),b=[`a`,`button`,`div`,`form`,`h2`,`h3`,`img`,`input`,`label`,`li`,`nav`,`ol`,`p`,`select`,`span`,`svg`,`ul`].reduce((e,t)=>{let n=d(`Primitive.${t}`),r=o.forwardRef((e,r)=>{let{asChild:i,...a}=e,o=i?n:t;return typeof window<`u`&&(window[Symbol.for(`radix-ui`)]=!0),(0,u.jsx)(o,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function x(e,t){e&&y.flushSync(()=>e.dispatchEvent(t))}var S=Object.freeze({position:`absolute`,border:0,width:1,height:1,padding:0,margin:-1,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,wordWrap:`normal`}),C=`VisuallyHidden`,w=o.forwardRef((e,t)=>(0,u.jsx)(b.span,{...e,ref:t,style:{...S,...e.style}}));w.displayName=C;var T=w;function E(e,t){let n=o.createContext(t),r=e=>{let{children:t,...r}=e,i=o.useMemo(()=>r,Object.values(r));return(0,u.jsx)(n.Provider,{value:i,children:t})};r.displayName=e+`Provider`;function i(r){let i=o.useContext(n);if(i)return i;if(t!==void 0)return t;throw Error(`\`${r}\` must be used within \`${e}\``)}return[r,i]}function D(e,t=[]){let n=[];function r(t,r){let i=o.createContext(r),a=n.length;n=[...n,r];let s=t=>{let{scope:n,children:r,...s}=t,c=n?.[e]?.[a]||i,l=o.useMemo(()=>s,Object.values(s));return(0,u.jsx)(c.Provider,{value:l,children:r})};s.displayName=t+`Provider`;function c(n,s){let c=s?.[e]?.[a]||i,l=o.useContext(c);if(l)return l;if(r!==void 0)return r;throw Error(`\`${n}\` must be used within \`${t}\``)}return[s,c]}let i=()=>{let t=n.map(e=>o.createContext(e));return function(n){let r=n?.[e]||t;return o.useMemo(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])}};return i.scopeName=e,[r,O(i,...t)]}function O(...e){let t=e[0];if(e.length===1)return t;let n=()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let i=n(e)[`__scope${r}`];return{...t,...i}},{});return o.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])}};return n.scopeName=t.scopeName,n}function k(e){let t=e+`CollectionProvider`,[n,r]=D(t),[i,a]=n(t,{collectionRef:{current:null},itemMap:new Map}),s=e=>{let{scope:t,children:n}=e,r=o.useRef(null),a=o.useRef(new Map).current;return(0,u.jsx)(i,{scope:t,itemMap:a,collectionRef:r,children:n})};s.displayName=t;let c=e+`CollectionSlot`,f=d(c),p=o.forwardRef((e,t)=>{let{scope:n,children:r}=e;return(0,u.jsx)(f,{ref:l(t,a(c,n).collectionRef),children:r})});p.displayName=c;let m=e+`CollectionItemSlot`,h=`data-radix-collection-item`,g=d(m),_=o.forwardRef((e,t)=>{let{scope:n,children:r,...i}=e,s=o.useRef(null),c=l(t,s),d=a(m,n);return o.useEffect(()=>(d.itemMap.set(s,{ref:s,...i}),()=>void d.itemMap.delete(s))),(0,u.jsx)(g,{[h]:``,ref:c,children:r})});_.displayName=m;function v(t){let n=a(e+`CollectionConsumer`,t);return o.useCallback(()=>{let e=n.collectionRef.current;if(!e)return[];let t=Array.from(e.querySelectorAll(`[${h}]`));return Array.from(n.itemMap.values()).sort((e,n)=>t.indexOf(e.ref.current)-t.indexOf(n.ref.current))},[n.collectionRef,n.itemMap])}return[{Provider:s,Slot:p,ItemSlot:_},v,r]}typeof window<`u`&&window.document&&window.document.createElement;function A(e,t,{checkForDefaultPrevented:n=!0}={}){return function(r){if(e?.(r),n===!1||!r.defaultPrevented)return t?.(r)}}var j=globalThis?.document?o.useLayoutEffect:()=>{},M=o.useInsertionEffect||j;function N({prop:e,defaultProp:t,onChange:n=()=>{},caller:r}){let[i,a,s]=P({defaultProp:t,onChange:n}),c=e!==void 0,l=c?e:i;{let t=o.useRef(e!==void 0);o.useEffect(()=>{let e=t.current;if(e!==c){let t=e?`controlled`:`uncontrolled`,n=c?`controlled`:`uncontrolled`;console.warn(`${r} is changing from ${t} to ${n}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`)}t.current=c},[c,r])}return[l,o.useCallback(t=>{if(c){let n=ee(t)?t(e):t;n!==e&&s.current?.(n)}else a(t)},[c,e,a,s])]}function P({defaultProp:e,onChange:t}){let[n,r]=o.useState(e),i=o.useRef(n),a=o.useRef(t);return M(()=>{a.current=t},[t]),o.useEffect(()=>{i.current!==n&&(a.current?.(n),i.current=n)},[n,i]),[n,r,a]}function ee(e){return typeof e==`function`}function te(e,t){return o.useReducer((e,n)=>t[e][n]??e,e)}var F=e=>{let{present:t,children:n}=e,r=I(t),i=typeof n==`function`?n({present:r.isPresent}):o.Children.only(n),a=l(r.ref,ne(i));return typeof n==`function`||r.isPresent?o.cloneElement(i,{ref:a}):null};F.displayName=`Presence`;function I(e){let[t,n]=o.useState(),r=o.useRef(null),i=o.useRef(e),a=o.useRef(`none`),[s,c]=te(e?`mounted`:`unmounted`,{mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}});return o.useEffect(()=>{let e=L(r.current);a.current=s===`mounted`?e:`none`},[s]),j(()=>{let t=r.current,n=i.current;if(n!==e){let r=a.current,o=L(t);e?c(`MOUNT`):o===`none`||t?.display===`none`?c(`UNMOUNT`):c(n&&r!==o?`ANIMATION_OUT`:`UNMOUNT`),i.current=e}},[e,c]),j(()=>{if(t){let e,n=t.ownerDocument.defaultView??window,o=a=>{let o=L(r.current).includes(CSS.escape(a.animationName));if(a.target===t&&o&&(c(`ANIMATION_END`),!i.current)){let r=t.style.animationFillMode;t.style.animationFillMode=`forwards`,e=n.setTimeout(()=>{t.style.animationFillMode===`forwards`&&(t.style.animationFillMode=r)})}},s=e=>{e.target===t&&(a.current=L(r.current))};return t.addEventListener(`animationstart`,s),t.addEventListener(`animationcancel`,o),t.addEventListener(`animationend`,o),()=>{n.clearTimeout(e),t.removeEventListener(`animationstart`,s),t.removeEventListener(`animationcancel`,o),t.removeEventListener(`animationend`,o)}}else c(`ANIMATION_END`)},[t,c]),{isPresent:[`mounted`,`unmountSuspended`].includes(s),ref:o.useCallback(e=>{r.current=e?getComputedStyle(e):null,n(e)},[])}}function L(e){return e?.animationName||`none`}function ne(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var re=o.useId||(()=>void 0),ie=0;function R(e){let[t,n]=o.useState(re());return j(()=>{e||n(e=>e??String(ie++))},[e]),e||(t?`radix-${t}`:``)}var ae=o.createContext(void 0);function oe(e){let t=o.useContext(ae);return e||t||`ltr`}function z(e){let t=o.useRef(e);return o.useEffect(()=>{t.current=e}),o.useMemo(()=>(...e)=>t.current?.(...e),[])}function se(e,t=globalThis?.document){let n=z(e);o.useEffect(()=>{let e=e=>{e.key===`Escape`&&n(e)};return t.addEventListener(`keydown`,e,{capture:!0}),()=>t.removeEventListener(`keydown`,e,{capture:!0})},[n,t])}var ce=`DismissableLayer`,le=`dismissableLayer.update`,ue=`dismissableLayer.pointerDownOutside`,de=`dismissableLayer.focusOutside`,fe,pe=o.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),me=o.forwardRef((e,t)=>{let{disableOutsidePointerEvents:n=!1,onEscapeKeyDown:r,onPointerDownOutside:i,onFocusOutside:a,onInteractOutside:s,onDismiss:c,...d}=e,f=o.useContext(pe),[p,m]=o.useState(null),h=p?.ownerDocument??globalThis?.document,[,g]=o.useState({}),_=l(t,e=>m(e)),v=Array.from(f.layers),[y]=[...f.layersWithOutsidePointerEventsDisabled].slice(-1),x=v.indexOf(y),S=p?v.indexOf(p):-1,C=f.layersWithOutsidePointerEventsDisabled.size>0,w=S>=x,T=_e(e=>{let t=e.target,n=[...f.branches].some(e=>e.contains(t));!w||n||(i?.(e),s?.(e),e.defaultPrevented||c?.())},h),E=ve(e=>{let t=e.target;[...f.branches].some(e=>e.contains(t))||(a?.(e),s?.(e),e.defaultPrevented||c?.())},h);return se(e=>{S===f.layers.size-1&&(r?.(e),!e.defaultPrevented&&c&&(e.preventDefault(),c()))},h),o.useEffect(()=>{if(p)return n&&(f.layersWithOutsidePointerEventsDisabled.size===0&&(fe=h.body.style.pointerEvents,h.body.style.pointerEvents=`none`),f.layersWithOutsidePointerEventsDisabled.add(p)),f.layers.add(p),ye(),()=>{n&&f.layersWithOutsidePointerEventsDisabled.size===1&&(h.body.style.pointerEvents=fe)}},[p,h,n,f]),o.useEffect(()=>()=>{p&&(f.layers.delete(p),f.layersWithOutsidePointerEventsDisabled.delete(p),ye())},[p,f]),o.useEffect(()=>{let e=()=>g({});return document.addEventListener(le,e),()=>document.removeEventListener(le,e)},[]),(0,u.jsx)(b.div,{...d,ref:_,style:{pointerEvents:C?w?`auto`:`none`:void 0,...e.style},onFocusCapture:A(e.onFocusCapture,E.onFocusCapture),onBlurCapture:A(e.onBlurCapture,E.onBlurCapture),onPointerDownCapture:A(e.onPointerDownCapture,T.onPointerDownCapture)})});me.displayName=ce;var he=`DismissableLayerBranch`,ge=o.forwardRef((e,t)=>{let n=o.useContext(pe),r=o.useRef(null),i=l(t,r);return o.useEffect(()=>{let e=r.current;if(e)return n.branches.add(e),()=>{n.branches.delete(e)}},[n.branches]),(0,u.jsx)(b.div,{...e,ref:i})});ge.displayName=he;function _e(e,t=globalThis?.document){let n=z(e),r=o.useRef(!1),i=o.useRef(()=>{});return o.useEffect(()=>{let e=e=>{if(e.target&&!r.current){let r=function(){be(ue,n,a,{discrete:!0})},a={originalEvent:e};e.pointerType===`touch`?(t.removeEventListener(`click`,i.current),i.current=r,t.addEventListener(`click`,i.current,{once:!0})):r()}else t.removeEventListener(`click`,i.current);r.current=!1},a=window.setTimeout(()=>{t.addEventListener(`pointerdown`,e)},0);return()=>{window.clearTimeout(a),t.removeEventListener(`pointerdown`,e),t.removeEventListener(`click`,i.current)}},[t,n]),{onPointerDownCapture:()=>r.current=!0}}function ve(e,t=globalThis?.document){let n=z(e),r=o.useRef(!1);return o.useEffect(()=>{let e=e=>{e.target&&!r.current&&be(de,n,{originalEvent:e},{discrete:!1})};return t.addEventListener(`focusin`,e),()=>t.removeEventListener(`focusin`,e)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function ye(){let e=new CustomEvent(le);document.dispatchEvent(e)}function be(e,t,n,{discrete:r}){let i=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?x(i,a):i.dispatchEvent(a)}var xe=`focusScope.autoFocusOnMount`,Se=`focusScope.autoFocusOnUnmount`,Ce={bubbles:!1,cancelable:!0},we=`FocusScope`,Te=o.forwardRef((e,t)=>{let{loop:n=!1,trapped:r=!1,onMountAutoFocus:i,onUnmountAutoFocus:a,...s}=e,[c,d]=o.useState(null),f=z(i),p=z(a),m=o.useRef(null),h=l(t,e=>d(e)),g=o.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;o.useEffect(()=>{if(r){let e=function(e){if(g.paused||!c)return;let t=e.target;c.contains(t)?m.current=t:Me(m.current,{select:!0})},t=function(e){if(g.paused||!c)return;let t=e.relatedTarget;t!==null&&(c.contains(t)||Me(m.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&Me(c)};document.addEventListener(`focusin`,e),document.addEventListener(`focusout`,t);let r=new MutationObserver(n);return c&&r.observe(c,{childList:!0,subtree:!0}),()=>{document.removeEventListener(`focusin`,e),document.removeEventListener(`focusout`,t),r.disconnect()}}},[r,c,g.paused]),o.useEffect(()=>{if(c){Ne.add(g);let e=document.activeElement;if(!c.contains(e)){let t=new CustomEvent(xe,Ce);c.addEventListener(xe,f),c.dispatchEvent(t),t.defaultPrevented||(Ee(Ie(Oe(c)),{select:!0}),document.activeElement===e&&Me(c))}return()=>{c.removeEventListener(xe,f),setTimeout(()=>{let t=new CustomEvent(Se,Ce);c.addEventListener(Se,p),c.dispatchEvent(t),t.defaultPrevented||Me(e??document.body,{select:!0}),c.removeEventListener(Se,p),Ne.remove(g)},0)}}},[c,f,p,g]);let _=o.useCallback(e=>{if(!n&&!r||g.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,i=document.activeElement;if(t&&i){let t=e.currentTarget,[r,a]=De(t);r&&a?!e.shiftKey&&i===a?(e.preventDefault(),n&&Me(r,{select:!0})):e.shiftKey&&i===r&&(e.preventDefault(),n&&Me(a,{select:!0})):i===t&&e.preventDefault()}},[n,r,g.paused]);return(0,u.jsx)(b.div,{tabIndex:-1,...s,ref:h,onKeyDown:_})});Te.displayName=we;function Ee(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(Me(r,{select:t}),document.activeElement!==n)return}function De(e){let t=Oe(e);return[ke(t,e),ke(t.reverse(),e)]}function Oe(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function ke(e,t){for(let n of e)if(!Ae(n,{upTo:t}))return n}function Ae(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}function je(e){return e instanceof HTMLInputElement&&`select`in e}function Me(e,{select:t=!1}={}){if(e&&e.focus){let n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&je(e)&&t&&e.select()}}var Ne=Pe();function Pe(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),e=Fe(e,t),e.unshift(t)},remove(t){e=Fe(e,t),e[0]?.resume()}}}function Fe(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function Ie(e){return e.filter(e=>e.tagName!==`A`)}var Le=`Portal`,Re=o.forwardRef((e,t)=>{let{container:n,...r}=e,[i,a]=o.useState(!1);j(()=>a(!0),[]);let s=n||i&&globalThis?.document?.body;return s?y.createPortal((0,u.jsx)(b.div,{...r,ref:t}),s):null});Re.displayName=Le;var ze=0;function Be(){o.useEffect(()=>{let e=document.querySelectorAll(`[data-radix-focus-guard]`);return document.body.insertAdjacentElement(`afterbegin`,e[0]??Ve()),document.body.insertAdjacentElement(`beforeend`,e[1]??Ve()),ze++,()=>{ze===1&&document.querySelectorAll(`[data-radix-focus-guard]`).forEach(e=>e.remove()),ze--}},[])}function Ve(){let e=document.createElement(`span`);return e.setAttribute(`data-radix-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}var B=function(){return B=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},B.apply(this,arguments)};function He(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function Ue(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,a;r<i;r++)(a||!(r in t))&&(a||=Array.prototype.slice.call(t,0,r),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}var We=`right-scroll-bar-position`,Ge=`width-before-scroll-bar`,Ke=`with-scroll-bars-hidden`,qe=`--removed-body-scroll-bar-size`;function Je(e,t){return typeof e==`function`?e(t):e&&(e.current=t),e}function Ye(e,t){var n=(0,o.useState)(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(e){var t=n.value;t!==e&&(n.value=e,n.callback(e,t))}}}})[0];return n.callback=t,n.facade}var Xe=typeof window<`u`?o.useLayoutEffect:o.useEffect,Ze=new WeakMap;function Qe(e,t){var n=Ye(t||null,function(t){return e.forEach(function(e){return Je(e,t)})});return Xe(function(){var t=Ze.get(n);if(t){var r=new Set(t),i=new Set(e),a=n.current;r.forEach(function(e){i.has(e)||Je(e,null)}),i.forEach(function(e){r.has(e)||Je(e,a)})}Ze.set(n,e)},[e]),n}function $e(e){return e}function et(e,t){t===void 0&&(t=$e);var n=[],r=!1;return{read:function(){if(r)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(e){var i=t(e,r);return n.push(i),function(){n=n.filter(function(e){return e!==i})}},assignSyncMedium:function(e){for(r=!0;n.length;){var t=n;n=[],t.forEach(e)}n={push:function(t){return e(t)},filter:function(){return n}}},assignMedium:function(e){r=!0;var t=[];if(n.length){var i=n;n=[],i.forEach(e),t=n}var a=function(){var n=t;t=[],n.forEach(e)},o=function(){return Promise.resolve().then(a)};o(),n={push:function(e){t.push(e),o()},filter:function(e){return t=t.filter(e),n}}}}}function tt(e){e===void 0&&(e={});var t=et(null);return t.options=B({async:!0,ssr:!1},e),t}var nt=function(e){var t=e.sideCar,n=He(e,[`sideCar`]);if(!t)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw Error(`Sidecar medium not found`);return o.createElement(r,B({},n))};nt.isSideCarExport=!0;function rt(e,t){return e.useMedium(t),nt}var it=tt(),at=function(){},ot=o.forwardRef(function(e,t){var n=o.useRef(null),r=o.useState({onScrollCapture:at,onWheelCapture:at,onTouchMoveCapture:at}),i=r[0],a=r[1],s=e.forwardProps,c=e.children,l=e.className,u=e.removeScrollBar,d=e.enabled,f=e.shards,p=e.sideCar,m=e.noRelative,h=e.noIsolation,g=e.inert,_=e.allowPinchZoom,v=e.as,y=v===void 0?`div`:v,b=e.gapMode,x=He(e,[`forwardProps`,`children`,`className`,`removeScrollBar`,`enabled`,`shards`,`sideCar`,`noRelative`,`noIsolation`,`inert`,`allowPinchZoom`,`as`,`gapMode`]),S=p,C=Qe([n,t]),w=B(B({},x),i);return o.createElement(o.Fragment,null,d&&o.createElement(S,{sideCar:it,removeScrollBar:u,shards:f,noRelative:m,noIsolation:h,inert:g,setCallbacks:a,allowPinchZoom:!!_,lockRef:n,gapMode:b}),s?o.cloneElement(o.Children.only(c),B(B({},w),{ref:C})):o.createElement(y,B({},w,{className:l,ref:C}),c))});ot.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},ot.classNames={fullWidth:Ge,zeroRight:We};var st,ct=function(){if(st)return st;if(typeof __webpack_nonce__<`u`)return __webpack_nonce__};function lt(){if(!document)return null;var e=document.createElement(`style`);e.type=`text/css`;var t=ct();return t&&e.setAttribute(`nonce`,t),e}function ut(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function dt(e){(document.head||document.getElementsByTagName(`head`)[0]).appendChild(e)}var ft=function(){var e=0,t=null;return{add:function(n){e==0&&(t=lt())&&(ut(t,n),dt(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},pt=function(){var e=ft();return function(t,n){o.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},mt=function(){var e=pt();return function(t){var n=t.styles,r=t.dynamic;return e(n,r),null}},ht={left:0,top:0,right:0,gap:0},gt=function(e){return parseInt(e||``,10)||0},_t=function(e){var t=window.getComputedStyle(document.body),n=t[e===`padding`?`paddingLeft`:`marginLeft`],r=t[e===`padding`?`paddingTop`:`marginTop`],i=t[e===`padding`?`paddingRight`:`marginRight`];return[gt(n),gt(r),gt(i)]},vt=function(e){if(e===void 0&&(e=`margin`),typeof window>`u`)return ht;var t=_t(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},yt=mt(),bt=`data-scroll-locked`,xt=function(e,t,n,r){var i=e.left,a=e.top,o=e.right,s=e.gap;return n===void 0&&(n=`margin`),`
1
+ import{o as e,t}from"./rolldown-runtime-FhOqtrmT.js";import{C as n,S as r}from"./vendor-markdown-CuWCHIVb.js";var i=t((e=>{var t=n();function r(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function i(){}var a={d:{f:i,r:function(){throw Error(r(522))},D:i,C:i,L:i,m:i,X:i,S:i,M:i},p:0,findDOMNode:null},o=Symbol.for(`react.portal`);function s(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:o,key:r==null?null:``+r,children:e,containerInfo:t,implementation:n}}var c=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function l(e,t){if(e===`font`)return``;if(typeof t==`string`)return t===`use-credentials`?t:``}e.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=a,e.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)throw Error(r(299));return s(e,t,null,n)},e.flushSync=function(e){var t=c.T,n=a.p;try{if(c.T=null,a.p=2,e)return e()}finally{c.T=t,a.p=n,a.d.f()}},e.preconnect=function(e,t){typeof e==`string`&&(t?(t=t.crossOrigin,t=typeof t==`string`?t===`use-credentials`?t:``:void 0):t=null,a.d.C(e,t))},e.prefetchDNS=function(e){typeof e==`string`&&a.d.D(e)},e.preinit=function(e,t){if(typeof e==`string`&&t&&typeof t.as==`string`){var n=t.as,r=l(n,t.crossOrigin),i=typeof t.integrity==`string`?t.integrity:void 0,o=typeof t.fetchPriority==`string`?t.fetchPriority:void 0;n===`style`?a.d.S(e,typeof t.precedence==`string`?t.precedence:void 0,{crossOrigin:r,integrity:i,fetchPriority:o}):n===`script`&&a.d.X(e,{crossOrigin:r,integrity:i,fetchPriority:o,nonce:typeof t.nonce==`string`?t.nonce:void 0})}},e.preinitModule=function(e,t){if(typeof e==`string`)if(typeof t==`object`&&t){if(t.as==null||t.as===`script`){var n=l(t.as,t.crossOrigin);a.d.M(e,{crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0})}}else t??a.d.M(e)},e.preload=function(e,t){if(typeof e==`string`&&typeof t==`object`&&t&&typeof t.as==`string`){var n=t.as,r=l(n,t.crossOrigin);a.d.L(e,n,{crossOrigin:r,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,type:typeof t.type==`string`?t.type:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0,referrerPolicy:typeof t.referrerPolicy==`string`?t.referrerPolicy:void 0,imageSrcSet:typeof t.imageSrcSet==`string`?t.imageSrcSet:void 0,imageSizes:typeof t.imageSizes==`string`?t.imageSizes:void 0,media:typeof t.media==`string`?t.media:void 0})}},e.preloadModule=function(e,t){if(typeof e==`string`)if(t){var n=l(t.as,t.crossOrigin);a.d.m(e,{as:typeof t.as==`string`&&t.as!==`script`?t.as:void 0,crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0})}else a.d.m(e)},e.requestFormReset=function(e){a.d.r(e)},e.unstable_batchedUpdates=function(e,t){return e(t)},e.useFormState=function(e,t,n){return c.H.useFormState(e,t,n)},e.useFormStatus=function(){return c.H.useHostTransitionStatus()},e.version=`19.2.4`})),a=t(((e,t)=>{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=i()})),o=e(n(),1);function s(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}function c(...e){return t=>{let n=!1,r=e.map(e=>{let r=s(e,t);return!n&&typeof r==`function`&&(n=!0),r});if(n)return()=>{for(let t=0;t<r.length;t++){let n=r[t];typeof n==`function`?n():s(e[t],null)}}}}function l(...e){return o.useCallback(c(...e),e)}var u=r();function d(e){let t=p(e),n=o.forwardRef((e,n)=>{let{children:r,...i}=e,a=o.Children.toArray(r),s=a.find(g);if(s){let e=s.props.children,r=a.map(t=>t===s?o.Children.count(e)>1?o.Children.only(null):o.isValidElement(e)?e.props.children:null:t);return(0,u.jsx)(t,{...i,ref:n,children:o.isValidElement(e)?o.cloneElement(e,void 0,r):null})}return(0,u.jsx)(t,{...i,ref:n,children:r})});return n.displayName=`${e}.Slot`,n}var f=d(`Slot`);function p(e){let t=o.forwardRef((e,t)=>{let{children:n,...r}=e;if(o.isValidElement(n)){let e=v(n),i=_(r,n.props);return n.type!==o.Fragment&&(i.ref=t?c(t,e):e),o.cloneElement(n,i)}return o.Children.count(n)>1?o.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var m=Symbol(`radix.slottable`);function h(e){let t=({children:e})=>(0,u.jsx)(u.Fragment,{children:e});return t.displayName=`${e}.Slottable`,t.__radixId=m,t}function g(e){return o.isValidElement(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===m}function _(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`&&(n[r]=[i,a].filter(Boolean).join(` `))}return{...e,...n}}function v(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var y=e(a(),1),b=[`a`,`button`,`div`,`form`,`h2`,`h3`,`img`,`input`,`label`,`li`,`nav`,`ol`,`p`,`select`,`span`,`svg`,`ul`].reduce((e,t)=>{let n=d(`Primitive.${t}`),r=o.forwardRef((e,r)=>{let{asChild:i,...a}=e,o=i?n:t;return typeof window<`u`&&(window[Symbol.for(`radix-ui`)]=!0),(0,u.jsx)(o,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function x(e,t){e&&y.flushSync(()=>e.dispatchEvent(t))}var S=Object.freeze({position:`absolute`,border:0,width:1,height:1,padding:0,margin:-1,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,wordWrap:`normal`}),C=`VisuallyHidden`,w=o.forwardRef((e,t)=>(0,u.jsx)(b.span,{...e,ref:t,style:{...S,...e.style}}));w.displayName=C;var T=w;function E(e,t){let n=o.createContext(t),r=e=>{let{children:t,...r}=e,i=o.useMemo(()=>r,Object.values(r));return(0,u.jsx)(n.Provider,{value:i,children:t})};r.displayName=e+`Provider`;function i(r){let i=o.useContext(n);if(i)return i;if(t!==void 0)return t;throw Error(`\`${r}\` must be used within \`${e}\``)}return[r,i]}function D(e,t=[]){let n=[];function r(t,r){let i=o.createContext(r),a=n.length;n=[...n,r];let s=t=>{let{scope:n,children:r,...s}=t,c=n?.[e]?.[a]||i,l=o.useMemo(()=>s,Object.values(s));return(0,u.jsx)(c.Provider,{value:l,children:r})};s.displayName=t+`Provider`;function c(n,s){let c=s?.[e]?.[a]||i,l=o.useContext(c);if(l)return l;if(r!==void 0)return r;throw Error(`\`${n}\` must be used within \`${t}\``)}return[s,c]}let i=()=>{let t=n.map(e=>o.createContext(e));return function(n){let r=n?.[e]||t;return o.useMemo(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])}};return i.scopeName=e,[r,O(i,...t)]}function O(...e){let t=e[0];if(e.length===1)return t;let n=()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let i=n(e)[`__scope${r}`];return{...t,...i}},{});return o.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])}};return n.scopeName=t.scopeName,n}function k(e){let t=e+`CollectionProvider`,[n,r]=D(t),[i,a]=n(t,{collectionRef:{current:null},itemMap:new Map}),s=e=>{let{scope:t,children:n}=e,r=o.useRef(null),a=o.useRef(new Map).current;return(0,u.jsx)(i,{scope:t,itemMap:a,collectionRef:r,children:n})};s.displayName=t;let c=e+`CollectionSlot`,f=d(c),p=o.forwardRef((e,t)=>{let{scope:n,children:r}=e;return(0,u.jsx)(f,{ref:l(t,a(c,n).collectionRef),children:r})});p.displayName=c;let m=e+`CollectionItemSlot`,h=`data-radix-collection-item`,g=d(m),_=o.forwardRef((e,t)=>{let{scope:n,children:r,...i}=e,s=o.useRef(null),c=l(t,s),d=a(m,n);return o.useEffect(()=>(d.itemMap.set(s,{ref:s,...i}),()=>void d.itemMap.delete(s))),(0,u.jsx)(g,{[h]:``,ref:c,children:r})});_.displayName=m;function v(t){let n=a(e+`CollectionConsumer`,t);return o.useCallback(()=>{let e=n.collectionRef.current;if(!e)return[];let t=Array.from(e.querySelectorAll(`[${h}]`));return Array.from(n.itemMap.values()).sort((e,n)=>t.indexOf(e.ref.current)-t.indexOf(n.ref.current))},[n.collectionRef,n.itemMap])}return[{Provider:s,Slot:p,ItemSlot:_},v,r]}typeof window<`u`&&window.document&&window.document.createElement;function A(e,t,{checkForDefaultPrevented:n=!0}={}){return function(r){if(e?.(r),n===!1||!r.defaultPrevented)return t?.(r)}}var j=globalThis?.document?o.useLayoutEffect:()=>{},M=o.useInsertionEffect||j;function N({prop:e,defaultProp:t,onChange:n=()=>{},caller:r}){let[i,a,s]=P({defaultProp:t,onChange:n}),c=e!==void 0,l=c?e:i;{let t=o.useRef(e!==void 0);o.useEffect(()=>{let e=t.current;if(e!==c){let t=e?`controlled`:`uncontrolled`,n=c?`controlled`:`uncontrolled`;console.warn(`${r} is changing from ${t} to ${n}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`)}t.current=c},[c,r])}return[l,o.useCallback(t=>{if(c){let n=ee(t)?t(e):t;n!==e&&s.current?.(n)}else a(t)},[c,e,a,s])]}function P({defaultProp:e,onChange:t}){let[n,r]=o.useState(e),i=o.useRef(n),a=o.useRef(t);return M(()=>{a.current=t},[t]),o.useEffect(()=>{i.current!==n&&(a.current?.(n),i.current=n)},[n,i]),[n,r,a]}function ee(e){return typeof e==`function`}function te(e,t){return o.useReducer((e,n)=>t[e][n]??e,e)}var F=e=>{let{present:t,children:n}=e,r=I(t),i=typeof n==`function`?n({present:r.isPresent}):o.Children.only(n),a=l(r.ref,ne(i));return typeof n==`function`||r.isPresent?o.cloneElement(i,{ref:a}):null};F.displayName=`Presence`;function I(e){let[t,n]=o.useState(),r=o.useRef(null),i=o.useRef(e),a=o.useRef(`none`),[s,c]=te(e?`mounted`:`unmounted`,{mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}});return o.useEffect(()=>{let e=L(r.current);a.current=s===`mounted`?e:`none`},[s]),j(()=>{let t=r.current,n=i.current;if(n!==e){let r=a.current,o=L(t);e?c(`MOUNT`):o===`none`||t?.display===`none`?c(`UNMOUNT`):c(n&&r!==o?`ANIMATION_OUT`:`UNMOUNT`),i.current=e}},[e,c]),j(()=>{if(t){let e,n=t.ownerDocument.defaultView??window,o=a=>{let o=L(r.current).includes(CSS.escape(a.animationName));if(a.target===t&&o&&(c(`ANIMATION_END`),!i.current)){let r=t.style.animationFillMode;t.style.animationFillMode=`forwards`,e=n.setTimeout(()=>{t.style.animationFillMode===`forwards`&&(t.style.animationFillMode=r)})}},s=e=>{e.target===t&&(a.current=L(r.current))};return t.addEventListener(`animationstart`,s),t.addEventListener(`animationcancel`,o),t.addEventListener(`animationend`,o),()=>{n.clearTimeout(e),t.removeEventListener(`animationstart`,s),t.removeEventListener(`animationcancel`,o),t.removeEventListener(`animationend`,o)}}else c(`ANIMATION_END`)},[t,c]),{isPresent:[`mounted`,`unmountSuspended`].includes(s),ref:o.useCallback(e=>{r.current=e?getComputedStyle(e):null,n(e)},[])}}function L(e){return e?.animationName||`none`}function ne(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var re=o.useId||(()=>void 0),ie=0;function R(e){let[t,n]=o.useState(re());return j(()=>{e||n(e=>e??String(ie++))},[e]),e||(t?`radix-${t}`:``)}var ae=o.createContext(void 0);function oe(e){let t=o.useContext(ae);return e||t||`ltr`}function z(e){let t=o.useRef(e);return o.useEffect(()=>{t.current=e}),o.useMemo(()=>(...e)=>t.current?.(...e),[])}function se(e,t=globalThis?.document){let n=z(e);o.useEffect(()=>{let e=e=>{e.key===`Escape`&&n(e)};return t.addEventListener(`keydown`,e,{capture:!0}),()=>t.removeEventListener(`keydown`,e,{capture:!0})},[n,t])}var ce=`DismissableLayer`,le=`dismissableLayer.update`,ue=`dismissableLayer.pointerDownOutside`,de=`dismissableLayer.focusOutside`,fe,pe=o.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),me=o.forwardRef((e,t)=>{let{disableOutsidePointerEvents:n=!1,onEscapeKeyDown:r,onPointerDownOutside:i,onFocusOutside:a,onInteractOutside:s,onDismiss:c,...d}=e,f=o.useContext(pe),[p,m]=o.useState(null),h=p?.ownerDocument??globalThis?.document,[,g]=o.useState({}),_=l(t,e=>m(e)),v=Array.from(f.layers),[y]=[...f.layersWithOutsidePointerEventsDisabled].slice(-1),x=v.indexOf(y),S=p?v.indexOf(p):-1,C=f.layersWithOutsidePointerEventsDisabled.size>0,w=S>=x,T=_e(e=>{let t=e.target,n=[...f.branches].some(e=>e.contains(t));!w||n||(i?.(e),s?.(e),e.defaultPrevented||c?.())},h),E=ve(e=>{let t=e.target;[...f.branches].some(e=>e.contains(t))||(a?.(e),s?.(e),e.defaultPrevented||c?.())},h);return se(e=>{S===f.layers.size-1&&(r?.(e),!e.defaultPrevented&&c&&(e.preventDefault(),c()))},h),o.useEffect(()=>{if(p)return n&&(f.layersWithOutsidePointerEventsDisabled.size===0&&(fe=h.body.style.pointerEvents,h.body.style.pointerEvents=`none`),f.layersWithOutsidePointerEventsDisabled.add(p)),f.layers.add(p),ye(),()=>{n&&f.layersWithOutsidePointerEventsDisabled.size===1&&(h.body.style.pointerEvents=fe)}},[p,h,n,f]),o.useEffect(()=>()=>{p&&(f.layers.delete(p),f.layersWithOutsidePointerEventsDisabled.delete(p),ye())},[p,f]),o.useEffect(()=>{let e=()=>g({});return document.addEventListener(le,e),()=>document.removeEventListener(le,e)},[]),(0,u.jsx)(b.div,{...d,ref:_,style:{pointerEvents:C?w?`auto`:`none`:void 0,...e.style},onFocusCapture:A(e.onFocusCapture,E.onFocusCapture),onBlurCapture:A(e.onBlurCapture,E.onBlurCapture),onPointerDownCapture:A(e.onPointerDownCapture,T.onPointerDownCapture)})});me.displayName=ce;var he=`DismissableLayerBranch`,ge=o.forwardRef((e,t)=>{let n=o.useContext(pe),r=o.useRef(null),i=l(t,r);return o.useEffect(()=>{let e=r.current;if(e)return n.branches.add(e),()=>{n.branches.delete(e)}},[n.branches]),(0,u.jsx)(b.div,{...e,ref:i})});ge.displayName=he;function _e(e,t=globalThis?.document){let n=z(e),r=o.useRef(!1),i=o.useRef(()=>{});return o.useEffect(()=>{let e=e=>{if(e.target&&!r.current){let r=function(){be(ue,n,a,{discrete:!0})},a={originalEvent:e};e.pointerType===`touch`?(t.removeEventListener(`click`,i.current),i.current=r,t.addEventListener(`click`,i.current,{once:!0})):r()}else t.removeEventListener(`click`,i.current);r.current=!1},a=window.setTimeout(()=>{t.addEventListener(`pointerdown`,e)},0);return()=>{window.clearTimeout(a),t.removeEventListener(`pointerdown`,e),t.removeEventListener(`click`,i.current)}},[t,n]),{onPointerDownCapture:()=>r.current=!0}}function ve(e,t=globalThis?.document){let n=z(e),r=o.useRef(!1);return o.useEffect(()=>{let e=e=>{e.target&&!r.current&&be(de,n,{originalEvent:e},{discrete:!1})};return t.addEventListener(`focusin`,e),()=>t.removeEventListener(`focusin`,e)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function ye(){let e=new CustomEvent(le);document.dispatchEvent(e)}function be(e,t,n,{discrete:r}){let i=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?x(i,a):i.dispatchEvent(a)}var xe=`focusScope.autoFocusOnMount`,Se=`focusScope.autoFocusOnUnmount`,Ce={bubbles:!1,cancelable:!0},we=`FocusScope`,Te=o.forwardRef((e,t)=>{let{loop:n=!1,trapped:r=!1,onMountAutoFocus:i,onUnmountAutoFocus:a,...s}=e,[c,d]=o.useState(null),f=z(i),p=z(a),m=o.useRef(null),h=l(t,e=>d(e)),g=o.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;o.useEffect(()=>{if(r){let e=function(e){if(g.paused||!c)return;let t=e.target;c.contains(t)?m.current=t:Me(m.current,{select:!0})},t=function(e){if(g.paused||!c)return;let t=e.relatedTarget;t!==null&&(c.contains(t)||Me(m.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&Me(c)};document.addEventListener(`focusin`,e),document.addEventListener(`focusout`,t);let r=new MutationObserver(n);return c&&r.observe(c,{childList:!0,subtree:!0}),()=>{document.removeEventListener(`focusin`,e),document.removeEventListener(`focusout`,t),r.disconnect()}}},[r,c,g.paused]),o.useEffect(()=>{if(c){Ne.add(g);let e=document.activeElement;if(!c.contains(e)){let t=new CustomEvent(xe,Ce);c.addEventListener(xe,f),c.dispatchEvent(t),t.defaultPrevented||(Ee(Ie(Oe(c)),{select:!0}),document.activeElement===e&&Me(c))}return()=>{c.removeEventListener(xe,f),setTimeout(()=>{let t=new CustomEvent(Se,Ce);c.addEventListener(Se,p),c.dispatchEvent(t),t.defaultPrevented||Me(e??document.body,{select:!0}),c.removeEventListener(Se,p),Ne.remove(g)},0)}}},[c,f,p,g]);let _=o.useCallback(e=>{if(!n&&!r||g.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,i=document.activeElement;if(t&&i){let t=e.currentTarget,[r,a]=De(t);r&&a?!e.shiftKey&&i===a?(e.preventDefault(),n&&Me(r,{select:!0})):e.shiftKey&&i===r&&(e.preventDefault(),n&&Me(a,{select:!0})):i===t&&e.preventDefault()}},[n,r,g.paused]);return(0,u.jsx)(b.div,{tabIndex:-1,...s,ref:h,onKeyDown:_})});Te.displayName=we;function Ee(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(Me(r,{select:t}),document.activeElement!==n)return}function De(e){let t=Oe(e);return[ke(t,e),ke(t.reverse(),e)]}function Oe(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function ke(e,t){for(let n of e)if(!Ae(n,{upTo:t}))return n}function Ae(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}function je(e){return e instanceof HTMLInputElement&&`select`in e}function Me(e,{select:t=!1}={}){if(e&&e.focus){let n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&je(e)&&t&&e.select()}}var Ne=Pe();function Pe(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),e=Fe(e,t),e.unshift(t)},remove(t){e=Fe(e,t),e[0]?.resume()}}}function Fe(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function Ie(e){return e.filter(e=>e.tagName!==`A`)}var Le=`Portal`,Re=o.forwardRef((e,t)=>{let{container:n,...r}=e,[i,a]=o.useState(!1);j(()=>a(!0),[]);let s=n||i&&globalThis?.document?.body;return s?y.createPortal((0,u.jsx)(b.div,{...r,ref:t}),s):null});Re.displayName=Le;var ze=0;function Be(){o.useEffect(()=>{let e=document.querySelectorAll(`[data-radix-focus-guard]`);return document.body.insertAdjacentElement(`afterbegin`,e[0]??Ve()),document.body.insertAdjacentElement(`beforeend`,e[1]??Ve()),ze++,()=>{ze===1&&document.querySelectorAll(`[data-radix-focus-guard]`).forEach(e=>e.remove()),ze--}},[])}function Ve(){let e=document.createElement(`span`);return e.setAttribute(`data-radix-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}var B=function(){return B=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},B.apply(this,arguments)};function He(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function Ue(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,a;r<i;r++)(a||!(r in t))&&(a||=Array.prototype.slice.call(t,0,r),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}var We=`right-scroll-bar-position`,Ge=`width-before-scroll-bar`,Ke=`with-scroll-bars-hidden`,qe=`--removed-body-scroll-bar-size`;function Je(e,t){return typeof e==`function`?e(t):e&&(e.current=t),e}function Ye(e,t){var n=(0,o.useState)(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(e){var t=n.value;t!==e&&(n.value=e,n.callback(e,t))}}}})[0];return n.callback=t,n.facade}var Xe=typeof window<`u`?o.useLayoutEffect:o.useEffect,Ze=new WeakMap;function Qe(e,t){var n=Ye(t||null,function(t){return e.forEach(function(e){return Je(e,t)})});return Xe(function(){var t=Ze.get(n);if(t){var r=new Set(t),i=new Set(e),a=n.current;r.forEach(function(e){i.has(e)||Je(e,null)}),i.forEach(function(e){r.has(e)||Je(e,a)})}Ze.set(n,e)},[e]),n}function $e(e){return e}function et(e,t){t===void 0&&(t=$e);var n=[],r=!1;return{read:function(){if(r)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(e){var i=t(e,r);return n.push(i),function(){n=n.filter(function(e){return e!==i})}},assignSyncMedium:function(e){for(r=!0;n.length;){var t=n;n=[],t.forEach(e)}n={push:function(t){return e(t)},filter:function(){return n}}},assignMedium:function(e){r=!0;var t=[];if(n.length){var i=n;n=[],i.forEach(e),t=n}var a=function(){var n=t;t=[],n.forEach(e)},o=function(){return Promise.resolve().then(a)};o(),n={push:function(e){t.push(e),o()},filter:function(e){return t=t.filter(e),n}}}}}function tt(e){e===void 0&&(e={});var t=et(null);return t.options=B({async:!0,ssr:!1},e),t}var nt=function(e){var t=e.sideCar,n=He(e,[`sideCar`]);if(!t)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw Error(`Sidecar medium not found`);return o.createElement(r,B({},n))};nt.isSideCarExport=!0;function rt(e,t){return e.useMedium(t),nt}var it=tt(),at=function(){},ot=o.forwardRef(function(e,t){var n=o.useRef(null),r=o.useState({onScrollCapture:at,onWheelCapture:at,onTouchMoveCapture:at}),i=r[0],a=r[1],s=e.forwardProps,c=e.children,l=e.className,u=e.removeScrollBar,d=e.enabled,f=e.shards,p=e.sideCar,m=e.noRelative,h=e.noIsolation,g=e.inert,_=e.allowPinchZoom,v=e.as,y=v===void 0?`div`:v,b=e.gapMode,x=He(e,[`forwardProps`,`children`,`className`,`removeScrollBar`,`enabled`,`shards`,`sideCar`,`noRelative`,`noIsolation`,`inert`,`allowPinchZoom`,`as`,`gapMode`]),S=p,C=Qe([n,t]),w=B(B({},x),i);return o.createElement(o.Fragment,null,d&&o.createElement(S,{sideCar:it,removeScrollBar:u,shards:f,noRelative:m,noIsolation:h,inert:g,setCallbacks:a,allowPinchZoom:!!_,lockRef:n,gapMode:b}),s?o.cloneElement(o.Children.only(c),B(B({},w),{ref:C})):o.createElement(y,B({},w,{className:l,ref:C}),c))});ot.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},ot.classNames={fullWidth:Ge,zeroRight:We};var st,ct=function(){if(st)return st;if(typeof __webpack_nonce__<`u`)return __webpack_nonce__};function lt(){if(!document)return null;var e=document.createElement(`style`);e.type=`text/css`;var t=ct();return t&&e.setAttribute(`nonce`,t),e}function ut(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function dt(e){(document.head||document.getElementsByTagName(`head`)[0]).appendChild(e)}var ft=function(){var e=0,t=null;return{add:function(n){e==0&&(t=lt())&&(ut(t,n),dt(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},pt=function(){var e=ft();return function(t,n){o.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},mt=function(){var e=pt();return function(t){var n=t.styles,r=t.dynamic;return e(n,r),null}},ht={left:0,top:0,right:0,gap:0},gt=function(e){return parseInt(e||``,10)||0},_t=function(e){var t=window.getComputedStyle(document.body),n=t[e===`padding`?`paddingLeft`:`marginLeft`],r=t[e===`padding`?`paddingTop`:`marginTop`],i=t[e===`padding`?`paddingRight`:`marginRight`];return[gt(n),gt(r),gt(i)]},vt=function(e){if(e===void 0&&(e=`margin`),typeof window>`u`)return ht;var t=_t(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},yt=mt(),bt=`data-scroll-locked`,xt=function(e,t,n,r){var i=e.left,a=e.top,o=e.right,s=e.gap;return n===void 0&&(n=`margin`),`
2
2
  .${Ke} {
3
3
  overflow: hidden ${r};
4
4
  padding-right: ${s}px ${r};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{S as t,x as n}from"./vendor-markdown-Ls5AcU91.js";import"./vendor-ui-CaeeFO0B.js";import{t as r}from"./createLucideIcon-D8pyde1A.js";import{t as i}from"./download-DG3_9xXy.js";import{t as a}from"./file-exclamation-point-JzhTU2TX.js";import{t as o}from"./loader-circle-DPMrnLQ2.js";import"./api-client-CEYCBt_0.js";import"./portal-container-context-DKymYOY-.js";import{t as s}from"./button-DX32ffge.js";import{$n as c,Bt as l,Fn as u,Gn as d,Ht as f,Jn as p,Lt as m,Rt as h,Ut as g,Vt as _,Yn as v,qt as y,zt as b}from"./index-Cx1meAwb.js";import{a as ee,i as x,n as S,r as C,t as w}from"./media-url-BMeBaB0q.js";import{o as T}from"./can-open-in-ppm-_yqa69dV.js";var E=r(`flip-horizontal-2`,[[`path`,{d:`m3 7 5 5-5 5V7`,key:`couhi7`}],[`path`,{d:`m21 7-5 5 5 5V7`,key:`6ouia7`}],[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`M12 14v2`,key:`8jcxud`}],[`path`,{d:`M12 8v2`,key:`1woqiv`}],[`path`,{d:`M12 2v2`,key:`tus03m`}]]),D=r(`flip-vertical-2`,[[`path`,{d:`m17 3-5 5-5-5h10`,key:`1ftt6x`}],[`path`,{d:`m17 21-5-5-5 5h10`,key:`1m0wmu`}],[`path`,{d:`M4 12H2`,key:`rhcxmi`}],[`path`,{d:`M10 12H8`,key:`s88cx1`}],[`path`,{d:`M16 12h-2`,key:`10asgb`}],[`path`,{d:`M22 12h-2`,key:`14jgyd`}]]),O=r(`maximize`,[[`path`,{d:`M8 3H5a2 2 0 0 0-2 2v3`,key:`1dcmit`}],[`path`,{d:`M21 8V5a2 2 0 0 0-2-2h-3`,key:`1e4gt3`}],[`path`,{d:`M3 16v3a2 2 0 0 0 2 2h3`,key:`wsl5sc`}],[`path`,{d:`M16 21h3a2 2 0 0 0 2-2v-3`,key:`18trek`}]]),k=r(`minimize`,[[`path`,{d:`M8 3v3a2 2 0 0 1-2 2H3`,key:`hohbtr`}],[`path`,{d:`M21 8h-3a2 2 0 0 1-2-2V3`,key:`5jw1f3`}],[`path`,{d:`M3 16h3a2 2 0 0 1 2 2v3`,key:`198tvr`}],[`path`,{d:`M16 21v-3a2 2 0 0 1 2-2h3`,key:`ph8mxp`}]]),A=r(`pause`,[[`rect`,{x:`14`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`kaeet6`}],[`rect`,{x:`5`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`1wsw3u`}]]),j=r(`volume-2`,[[`path`,{d:`M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z`,key:`uqj9uw`}],[`path`,{d:`M16 9a5 5 0 0 1 0 6`,key:`1q6k2b`}],[`path`,{d:`M19.364 18.364a9 9 0 0 0 0-12.728`,key:`ijwkga`}]]),M=r(`volume-1`,[[`path`,{d:`M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z`,key:`uqj9uw`}],[`path`,{d:`M16 9a5 5 0 0 1 0 6`,key:`1q6k2b`}]]),N=r(`volume-x`,[[`path`,{d:`M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z`,key:`uqj9uw`}],[`line`,{x1:`22`,x2:`16`,y1:`9`,y2:`15`,key:`1ewh16`}],[`line`,{x1:`16`,x2:`22`,y1:`9`,y2:`15`,key:`5ykzw1`}]]),P=e(t(),1),F={rotation:0,flipH:!1,flipV:!1};function I(e){return{...e,rotation:(e.rotation+90)%360}}function L(e){return{...e,rotation:(e.rotation+270)%360}}function R(e){return e.rotation===0&&!e.flipH&&!e.flipV}function z(e){let t=[];return e.rotation&&t.push(`rotate(${e.rotation}deg)`),e.flipH&&t.push(`scaleX(-1)`),e.flipV&&t.push(`scaleY(-1)`),t.length?t.join(` `):`none`}function te(e,t){return e.rotation===90||e.rotation===270?{maxWidth:t.height,maxHeight:t.width}:{maxWidth:t.width,maxHeight:t.height}}var B=[[`Space / K`,`Play / pause`],[`← / →`,`Seek 5s`],[`J / L or Shift+← / →`,`Seek 10s`],[`↑ / ↓`,`Volume`],[`M`,`Mute`],[`F`,`Fullscreen`],[`< / >`,`Speed`],[`R / Shift+R`,`Rotate`]];function ne(e){return(0,P.useCallback)(t=>{let n=t.target;if(n.tagName===`INPUT`||n.tagName===`TEXTAREA`||n.isContentEditable||t.ctrlKey||t.metaKey||t.altKey)return;let r=!0;switch(t.key){case` `:case`k`:case`K`:e.togglePlay();break;case`ArrowLeft`:e.seekBy(t.shiftKey?-10:-5);break;case`ArrowRight`:e.seekBy(t.shiftKey?10:5);break;case`j`:case`J`:e.seekBy(-10);break;case`l`:case`L`:e.seekBy(10);break;case`ArrowUp`:e.volumeBy(.1);break;case`ArrowDown`:e.volumeBy(-.1);break;case`m`:case`M`:e.toggleMute();break;case`f`:case`F`:e.toggleFullscreen();break;case`<`:case`,`:e.speedStep(-1);break;case`>`:case`.`:e.speedStep(1);break;case`r`:e.rotate(1);break;case`R`:e.rotate(-1);break;default:r=!1}r&&t.preventDefault()},[e])}var V=n(),H=[.25,.5,.75,1,1.25,1.5,2,3];function U({speed:e,onSpeed:t,transform:n,onRotate:r,onFlipH:i,onFlipV:a,onResetTransform:o}){return(0,V.jsxs)(m,{children:[(0,V.jsx)(y,{asChild:!0,children:(0,V.jsxs)(s,{variant:`ghost`,size:`icon`,className:`size-11 shrink-0 relative`,"aria-label":`Playback settings`,children:[(0,V.jsx)(d,{className:`size-5`}),e!==1&&(0,V.jsxs)(`span`,{className:`absolute -top-0.5 -right-0.5 text-[10px] leading-none px-1 rounded bg-primary text-primary-foreground tabular-nums`,children:[e,`x`]})]})}),(0,V.jsxs)(h,{align:`end`,className:`w-60 max-h-[70vh] overflow-y-auto`,children:[(0,V.jsx)(l,{children:`Speed`}),(0,V.jsx)(_,{value:String(e),onValueChange:e=>t(Number(e)),children:(0,V.jsx)(`div`,{className:`grid grid-cols-4 gap-1 px-1 pb-1`,children:H.map(e=>(0,V.jsxs)(f,{value:String(e),className:`justify-center pl-2 min-h-11 text-xs tabular-nums data-[state=checked]:bg-accent [&>span:first-child]:hidden`,children:[e,`x`]},e))})}),(0,V.jsx)(g,{}),(0,V.jsx)(l,{children:`Orientation`}),(0,V.jsxs)(b,{className:`min-h-11`,onSelect:e=>{e.preventDefault(),r(1)},children:[(0,V.jsx)(p,{className:`size-4`}),` Rotate right `,(0,V.jsx)(`span`,{className:`ml-auto text-xs text-text-subtle`,children:`R`})]}),(0,V.jsxs)(b,{className:`min-h-11`,onSelect:e=>{e.preventDefault(),r(-1)},children:[(0,V.jsx)(v,{className:`size-4`}),` Rotate left `,(0,V.jsx)(`span`,{className:`ml-auto text-xs text-text-subtle`,children:`⇧R`})]}),(0,V.jsxs)(b,{className:`min-h-11`,onSelect:e=>{e.preventDefault(),i()},children:[(0,V.jsx)(E,{className:`size-4`}),` Flip horizontal `,n.flipH&&(0,V.jsx)(`span`,{className:`ml-auto text-xs`,children:`✓`})]}),(0,V.jsxs)(b,{className:`min-h-11`,onSelect:e=>{e.preventDefault(),a()},children:[(0,V.jsx)(D,{className:`size-4`}),` Flip vertical `,n.flipV&&(0,V.jsx)(`span`,{className:`ml-auto text-xs`,children:`✓`})]}),!R(n)&&(0,V.jsxs)(b,{className:`min-h-11`,onSelect:o,children:[(0,V.jsx)(u,{className:`size-4`}),` Reset orientation`]}),(0,V.jsx)(g,{}),(0,V.jsx)(l,{children:`Keyboard`}),(0,V.jsx)(`div`,{className:`px-2 pb-2 grid grid-cols-[auto_1fr] gap-x-3 gap-y-1 text-xs text-text-secondary`,children:B.map(([e,t])=>(0,V.jsxs)(`div`,{className:`contents`,children:[(0,V.jsx)(`kbd`,{className:`font-mono text-text-subtle whitespace-nowrap`,children:e}),(0,V.jsx)(`span`,{children:t})]},e))})]})]})}function re(e){let t=e.muted||e.volume===0?N:e.volume<.5?M:j,n=t=>e.onSeek(Number(t.target.value));return(0,V.jsxs)(`div`,{className:`flex items-center gap-1 px-2 py-1 bg-surface border-t border-border`,children:[(0,V.jsx)(s,{variant:`ghost`,size:`icon`,className:`size-11 shrink-0`,onClick:e.onTogglePlay,"aria-label":e.playing?`Pause`:`Play`,children:e.playing?(0,V.jsx)(A,{className:`size-5`}):(0,V.jsx)(c,{className:`size-5`})}),(0,V.jsxs)(`span`,{className:`text-xs tabular-nums text-text-secondary shrink-0 min-w-[4.5rem] text-center`,children:[W(e.position),e.duration?` / ${W(e.duration)}`:``]}),e.duration?(0,V.jsx)(`input`,{type:`range`,min:0,max:e.duration,step:.1,value:Math.min(e.position,e.duration),"aria-label":`Seek`,className:`flex-1 h-11 accent-primary cursor-pointer min-w-0`,onChange:t=>e.onScrub(Number(t.target.value)),onPointerUp:n,onKeyUp:n,onTouchEnd:n}):(0,V.jsx)(`div`,{className:`flex-1`}),(0,V.jsxs)(`div`,{className:`flex items-center shrink-0`,children:[(0,V.jsx)(s,{variant:`ghost`,size:`icon`,className:`size-11`,onClick:e.onToggleMute,"aria-label":e.muted?`Unmute`:`Mute`,children:(0,V.jsx)(t,{className:`size-5`})}),(0,V.jsx)(`input`,{type:`range`,min:0,max:1,step:.05,value:e.muted?0:e.volume,"aria-label":`Volume`,className:`hidden sm:block w-20 h-11 accent-primary cursor-pointer`,onChange:t=>e.onVolume(Number(t.target.value))})]}),(0,V.jsx)(U,{speed:e.speed,onSpeed:e.onSpeed,transform:e.transform,onRotate:e.onRotate,onFlipH:e.onFlipH,onFlipV:e.onFlipV,onResetTransform:e.onResetTransform}),(0,V.jsx)(s,{variant:`ghost`,size:`icon`,className:`size-11 shrink-0`,onClick:e.onToggleFullscreen,"aria-label":e.fullscreen?`Exit fullscreen`:`Fullscreen`,children:e.fullscreen?(0,V.jsx)(k,{className:`size-5`}):(0,V.jsx)(O,{className:`size-5`})})]})}function W(e){let t=Math.max(0,Math.floor(Number.isFinite(e)?e:0)),n=Math.floor(t/3600),r=Math.floor(t%3600/60),i=t%60,a=n?String(r).padStart(2,`0`):String(r);return`${n?`${n}:`:``}${a}:${String(i).padStart(2,`0`)}`}function G({filePath:e,projectName:t,mode:n,probeDuration:r=null,onNativeError:i}){let a=(0,P.useRef)(null),c=(0,P.useRef)(null),l=(0,P.useRef)(null),u=(0,P.useRef)(!0),[d]=(0,P.useState)(w),[f,p]=(0,P.useState)(0),[m,h]=(0,P.useState)(0),[g,_]=(0,P.useState)(null),[v,y]=(0,P.useState)(!1),[b,S]=(0,P.useState)(!0),[T,E]=(0,P.useState)(null),[D,O]=(0,P.useState)(1),[k,A]=(0,P.useState)(!1),[j,M]=(0,P.useState)(1),[N,R]=(0,P.useState)(F),[B,U]=(0,P.useState)(!1),[W,G]=(0,P.useState)({width:0,height:0}),[K,q]=(0,P.useState)(null),J=n===`transcode`,Y=J?ee(e,t,f,d):C(e,t),X=J?r:g,ie=T??(J?f+m:m);(0,P.useEffect)(()=>{h(0),S(!0),q(null)},[Y]),(0,P.useEffect)(()=>{p(0),_(null),R(F)},[e,n]),(0,P.useEffect)(()=>{let e=l.current;e&&(e.volume=D,e.muted=k)},[D,k]),(0,P.useEffect)(()=>{let e=l.current;e&&(e.playbackRate=j)},[j,Y]),(0,P.useEffect)(()=>{let n=l.current,r=()=>{J&&x(e,t,d)};return window.addEventListener(`pagehide`,r),()=>{window.removeEventListener(`pagehide`,r),n&&!n.isConnected&&(n.pause(),n.removeAttribute(`src`),n.load(),r())}},[e,t,J,d]),(0,P.useEffect)(()=>{let e=()=>U(document.fullscreenElement===a.current);return document.addEventListener(`fullscreenchange`,e),()=>document.removeEventListener(`fullscreenchange`,e)},[]),(0,P.useEffect)(()=>{let e=c.current;if(!e)return;let t=new ResizeObserver(()=>G({width:e.clientWidth,height:e.clientHeight}));return t.observe(e),()=>t.disconnect()},[]);let Z=(0,P.useCallback)(e=>{let t=l.current,n=Math.max(0,X?Math.min(e,X-.5):e);if(E(null),!J){t&&(t.currentTime=n);return}Math.abs(n-(f+(t?.currentTime??0)))<.5||p(n)},[X,J,f]),Q=(0,P.useMemo)(()=>({togglePlay:()=>{let e=l.current;e&&(u.current=e.paused,e.paused?e.play().catch(()=>{}):e.pause())},seekBy:e=>Z((J?f:0)+(l.current?.currentTime??0)+e),toggleFullscreen:()=>{document.fullscreenElement?document.exitFullscreen():a.current?.requestFullscreen?.()},toggleMute:()=>A(e=>!e),volumeBy:e=>{A(!1),O(t=>Math.min(1,Math.max(0,Math.round((t+e)*100)/100)))},speedStep:e=>M(t=>{let n=H.indexOf(t);return H[Math.min(H.length-1,Math.max(0,(n===-1?3:n)+e))]??1}),rotate:e=>R(t=>e===1?I(t):L(t))}),[Z,J,f]),ae=ne(Q),$=te(N,W),oe=()=>{q(null),p(e=>e+.001)};return(0,V.jsxs)(`div`,{ref:a,"data-testid":`video-player`,tabIndex:0,onKeyDown:ae,className:`flex flex-col h-full bg-black outline-none focus-visible:ring-1 focus-visible:ring-primary/60`,children:[(0,V.jsxs)(`div`,{ref:c,className:`relative flex-1 min-h-0 flex items-center justify-center overflow-hidden`,onClick:e=>{a.current?.focus(),e.detail===1&&Q.togglePlay()},onDoubleClick:Q.toggleFullscreen,children:[(0,V.jsx)(`video`,{ref:l,src:Y,autoPlay:!0,playsInline:!0,preload:J?`auto`:`metadata`,style:{transform:z(N),maxWidth:$.maxWidth||void 0,maxHeight:$.maxHeight||void 0},onLoadedMetadata:e=>{let t=e.currentTarget;t.playbackRate=j,t.volume=D,t.muted=k,!J&&Number.isFinite(t.duration)&&_(t.duration),J&&!u.current&&t.pause()},onPlay:()=>y(!0),onPause:()=>y(!1),onWaiting:()=>S(!0),onPlaying:()=>S(!1),onCanPlay:()=>S(!1),onTimeUpdate:e=>h(e.currentTarget.currentTime),onEnded:()=>{y(!1),u.current=!1},onError:()=>{J?q(`Transcoding failed. ffmpeg may have stopped or the file is corrupt.`):i?.()}}),b&&!K&&(0,V.jsx)(o,{className:`absolute size-8 animate-spin text-white/80 pointer-events-none`}),K&&(0,V.jsxs)(`div`,{className:`absolute inset-0 flex flex-col items-center justify-center gap-3 bg-black/85 text-text-secondary p-4 text-center`,onClick:e=>e.stopPropagation(),onDoubleClick:e=>e.stopPropagation(),children:[(0,V.jsx)(`p`,{className:`text-sm`,children:K}),(0,V.jsx)(s,{variant:`outline`,size:`sm`,className:`h-11 px-4`,onClick:oe,children:`Retry`})]})]}),(0,V.jsx)(re,{playing:v,position:ie,duration:X,volume:D,muted:k,speed:j,transform:N,fullscreen:B,onTogglePlay:Q.togglePlay,onScrub:E,onSeek:Z,onVolume:e=>{O(e),A(e===0)},onToggleMute:Q.toggleMute,onSpeed:M,onRotate:Q.rotate,onFlipH:()=>R(e=>({...e,flipH:!e.flipH})),onFlipV:()=>R(e=>({...e,flipV:!e.flipV})),onResetTransform:()=>R(F),onToggleFullscreen:Q.toggleFullscreen})]})}var K=new Set([`mp4`,`m4v`,`webm`,`ogg`,`ogv`,`mov`]);function q({filePath:e,projectName:t}){let n=T(e),[r,i]=(0,P.useState)(()=>K.has(n)?{kind:`native`}:{kind:`probing`});return(0,P.useEffect)(()=>{i(K.has(T(e))?{kind:`native`}:{kind:`probing`})},[e]),(0,P.useEffect)(()=>{if(r.kind!==`probing`)return;let n=!1;return S(e,t).then(e=>{n||i(e.transcodable?{kind:`transcode`,probe:e}:{kind:`unsupported`,probe:e})}).catch(()=>{n||i({kind:`unsupported`,probe:null})}),()=>{n=!0}},[r.kind,e,t]),r.kind===`probing`?(0,V.jsx)(`div`,{className:`flex items-center justify-center h-full`,children:(0,V.jsx)(o,{className:`size-5 animate-spin text-text-subtle`})}):r.kind===`transcode`?(0,V.jsx)(G,{filePath:e,projectName:t,mode:`transcode`,probeDuration:r.probe.duration}):r.kind===`unsupported`?(0,V.jsx)(J,{filePath:e,projectName:t,probe:r.probe}):(0,V.jsx)(G,{filePath:e,projectName:t,mode:`native`,onNativeError:()=>i({kind:`probing`})})}function J({filePath:e,projectName:t,probe:n}){let r=[n?.video?.codec,n?.audio?.codec].filter(Boolean).join(` + `);return(0,V.jsxs)(`div`,{className:`flex flex-col items-center justify-center h-full gap-3 text-text-secondary p-6 text-center`,children:[(0,V.jsx)(a,{className:`size-10 text-text-subtle`}),(0,V.jsxs)(`p`,{className:`text-sm`,children:[`This video cannot be played in the browser`,r?` (${r})`:``,`.`]}),(0,V.jsxs)(`p`,{className:`text-xs text-text-subtle max-w-sm`,children:[`Install `,(0,V.jsx)(`code`,{children:`ffmpeg`}),` on the PPM server (e.g. `,(0,V.jsx)(`code`,{children:`winget install ffmpeg`}),`, `,(0,V.jsx)(`code`,{children:`brew install ffmpeg`}),`,`,` `,(0,V.jsx)(`code`,{children:`apt install ffmpeg`}),`) and restart PPM to transcode it on the fly.`]}),(0,V.jsx)(s,{asChild:!0,variant:`outline`,size:`sm`,className:`h-11 px-4`,children:(0,V.jsxs)(`a`,{href:`${C(e,t)}&download=true`,download:!0,children:[(0,V.jsx)(i,{className:`size-4 mr-2`}),` Download file`]})})]})}export{q as VideoPreview};
1
+ import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t,S as n}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-BBdkypKW.js";import{t as r}from"./createLucideIcon-D6fVXe3s.js";import{t as i}from"./download-D70Q4Ba6.js";import{t as a}from"./file-exclamation-point-D5K2aaLi.js";import{t as o}from"./loader-circle-DxI3O9_f.js";import"./api-client-DwXlVfXP.js";import"./portal-container-context-DeLx1cOI.js";import{t as s}from"./button-zgoXa9r7.js";import{$n as c,Bt as l,Fn as u,Gn as d,Ht as f,Jn as p,Lt as m,Rt as h,Ut as g,Vt as _,Yn as v,qt as y,zt as b}from"./index-DVNJ2W5R.js";import{a as ee,i as x,n as S,r as C,t as w}from"./media-url-TYMlO0M5.js";import{o as T}from"./can-open-in-ppm-_yqa69dV.js";var E=r(`flip-horizontal-2`,[[`path`,{d:`m3 7 5 5-5 5V7`,key:`couhi7`}],[`path`,{d:`m21 7-5 5 5 5V7`,key:`6ouia7`}],[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`M12 14v2`,key:`8jcxud`}],[`path`,{d:`M12 8v2`,key:`1woqiv`}],[`path`,{d:`M12 2v2`,key:`tus03m`}]]),D=r(`flip-vertical-2`,[[`path`,{d:`m17 3-5 5-5-5h10`,key:`1ftt6x`}],[`path`,{d:`m17 21-5-5-5 5h10`,key:`1m0wmu`}],[`path`,{d:`M4 12H2`,key:`rhcxmi`}],[`path`,{d:`M10 12H8`,key:`s88cx1`}],[`path`,{d:`M16 12h-2`,key:`10asgb`}],[`path`,{d:`M22 12h-2`,key:`14jgyd`}]]),O=r(`maximize`,[[`path`,{d:`M8 3H5a2 2 0 0 0-2 2v3`,key:`1dcmit`}],[`path`,{d:`M21 8V5a2 2 0 0 0-2-2h-3`,key:`1e4gt3`}],[`path`,{d:`M3 16v3a2 2 0 0 0 2 2h3`,key:`wsl5sc`}],[`path`,{d:`M16 21h3a2 2 0 0 0 2-2v-3`,key:`18trek`}]]),k=r(`minimize`,[[`path`,{d:`M8 3v3a2 2 0 0 1-2 2H3`,key:`hohbtr`}],[`path`,{d:`M21 8h-3a2 2 0 0 1-2-2V3`,key:`5jw1f3`}],[`path`,{d:`M3 16h3a2 2 0 0 1 2 2v3`,key:`198tvr`}],[`path`,{d:`M16 21v-3a2 2 0 0 1 2-2h3`,key:`ph8mxp`}]]),A=r(`pause`,[[`rect`,{x:`14`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`kaeet6`}],[`rect`,{x:`5`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`1wsw3u`}]]),j=r(`volume-2`,[[`path`,{d:`M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z`,key:`uqj9uw`}],[`path`,{d:`M16 9a5 5 0 0 1 0 6`,key:`1q6k2b`}],[`path`,{d:`M19.364 18.364a9 9 0 0 0 0-12.728`,key:`ijwkga`}]]),M=r(`volume-1`,[[`path`,{d:`M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z`,key:`uqj9uw`}],[`path`,{d:`M16 9a5 5 0 0 1 0 6`,key:`1q6k2b`}]]),N=r(`volume-x`,[[`path`,{d:`M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z`,key:`uqj9uw`}],[`line`,{x1:`22`,x2:`16`,y1:`9`,y2:`15`,key:`1ewh16`}],[`line`,{x1:`16`,x2:`22`,y1:`9`,y2:`15`,key:`5ykzw1`}]]),P=e(t(),1),F={rotation:0,flipH:!1,flipV:!1};function I(e){return{...e,rotation:(e.rotation+90)%360}}function L(e){return{...e,rotation:(e.rotation+270)%360}}function R(e){return e.rotation===0&&!e.flipH&&!e.flipV}function z(e){let t=[];return e.rotation&&t.push(`rotate(${e.rotation}deg)`),e.flipH&&t.push(`scaleX(-1)`),e.flipV&&t.push(`scaleY(-1)`),t.length?t.join(` `):`none`}function te(e,t){return e.rotation===90||e.rotation===270?{maxWidth:t.height,maxHeight:t.width}:{maxWidth:t.width,maxHeight:t.height}}var B=[[`Space / K`,`Play / pause`],[`← / →`,`Seek 5s`],[`J / L or Shift+← / →`,`Seek 10s`],[`↑ / ↓`,`Volume`],[`M`,`Mute`],[`F`,`Fullscreen`],[`< / >`,`Speed`],[`R / Shift+R`,`Rotate`]];function ne(e){return(0,P.useCallback)(t=>{let n=t.target;if(n.tagName===`INPUT`||n.tagName===`TEXTAREA`||n.isContentEditable||t.ctrlKey||t.metaKey||t.altKey)return;let r=!0;switch(t.key){case` `:case`k`:case`K`:e.togglePlay();break;case`ArrowLeft`:e.seekBy(t.shiftKey?-10:-5);break;case`ArrowRight`:e.seekBy(t.shiftKey?10:5);break;case`j`:case`J`:e.seekBy(-10);break;case`l`:case`L`:e.seekBy(10);break;case`ArrowUp`:e.volumeBy(.1);break;case`ArrowDown`:e.volumeBy(-.1);break;case`m`:case`M`:e.toggleMute();break;case`f`:case`F`:e.toggleFullscreen();break;case`<`:case`,`:e.speedStep(-1);break;case`>`:case`.`:e.speedStep(1);break;case`r`:e.rotate(1);break;case`R`:e.rotate(-1);break;default:r=!1}r&&t.preventDefault()},[e])}var V=n(),H=[.25,.5,.75,1,1.25,1.5,2,3];function U({speed:e,onSpeed:t,transform:n,onRotate:r,onFlipH:i,onFlipV:a,onResetTransform:o}){return(0,V.jsxs)(m,{children:[(0,V.jsx)(y,{asChild:!0,children:(0,V.jsxs)(s,{variant:`ghost`,size:`icon`,className:`size-11 shrink-0 relative`,"aria-label":`Playback settings`,children:[(0,V.jsx)(d,{className:`size-5`}),e!==1&&(0,V.jsxs)(`span`,{className:`absolute -top-0.5 -right-0.5 text-[10px] leading-none px-1 rounded bg-primary text-primary-foreground tabular-nums`,children:[e,`x`]})]})}),(0,V.jsxs)(h,{align:`end`,className:`w-60 max-h-[70vh] overflow-y-auto`,children:[(0,V.jsx)(l,{children:`Speed`}),(0,V.jsx)(_,{value:String(e),onValueChange:e=>t(Number(e)),children:(0,V.jsx)(`div`,{className:`grid grid-cols-4 gap-1 px-1 pb-1`,children:H.map(e=>(0,V.jsxs)(f,{value:String(e),className:`justify-center pl-2 min-h-11 text-xs tabular-nums data-[state=checked]:bg-accent [&>span:first-child]:hidden`,children:[e,`x`]},e))})}),(0,V.jsx)(g,{}),(0,V.jsx)(l,{children:`Orientation`}),(0,V.jsxs)(b,{className:`min-h-11`,onSelect:e=>{e.preventDefault(),r(1)},children:[(0,V.jsx)(p,{className:`size-4`}),` Rotate right `,(0,V.jsx)(`span`,{className:`ml-auto text-xs text-text-subtle`,children:`R`})]}),(0,V.jsxs)(b,{className:`min-h-11`,onSelect:e=>{e.preventDefault(),r(-1)},children:[(0,V.jsx)(v,{className:`size-4`}),` Rotate left `,(0,V.jsx)(`span`,{className:`ml-auto text-xs text-text-subtle`,children:`⇧R`})]}),(0,V.jsxs)(b,{className:`min-h-11`,onSelect:e=>{e.preventDefault(),i()},children:[(0,V.jsx)(E,{className:`size-4`}),` Flip horizontal `,n.flipH&&(0,V.jsx)(`span`,{className:`ml-auto text-xs`,children:`✓`})]}),(0,V.jsxs)(b,{className:`min-h-11`,onSelect:e=>{e.preventDefault(),a()},children:[(0,V.jsx)(D,{className:`size-4`}),` Flip vertical `,n.flipV&&(0,V.jsx)(`span`,{className:`ml-auto text-xs`,children:`✓`})]}),!R(n)&&(0,V.jsxs)(b,{className:`min-h-11`,onSelect:o,children:[(0,V.jsx)(u,{className:`size-4`}),` Reset orientation`]}),(0,V.jsx)(g,{}),(0,V.jsx)(l,{children:`Keyboard`}),(0,V.jsx)(`div`,{className:`px-2 pb-2 grid grid-cols-[auto_1fr] gap-x-3 gap-y-1 text-xs text-text-secondary`,children:B.map(([e,t])=>(0,V.jsxs)(`div`,{className:`contents`,children:[(0,V.jsx)(`kbd`,{className:`font-mono text-text-subtle whitespace-nowrap`,children:e}),(0,V.jsx)(`span`,{children:t})]},e))})]})]})}function re(e){let t=e.muted||e.volume===0?N:e.volume<.5?M:j,n=t=>e.onSeek(Number(t.target.value));return(0,V.jsxs)(`div`,{className:`flex items-center gap-1 px-2 py-1 bg-surface border-t border-border`,children:[(0,V.jsx)(s,{variant:`ghost`,size:`icon`,className:`size-11 shrink-0`,onClick:e.onTogglePlay,"aria-label":e.playing?`Pause`:`Play`,children:e.playing?(0,V.jsx)(A,{className:`size-5`}):(0,V.jsx)(c,{className:`size-5`})}),(0,V.jsxs)(`span`,{className:`text-xs tabular-nums text-text-secondary shrink-0 min-w-[4.5rem] text-center`,children:[W(e.position),e.duration?` / ${W(e.duration)}`:``]}),e.duration?(0,V.jsx)(`input`,{type:`range`,min:0,max:e.duration,step:.1,value:Math.min(e.position,e.duration),"aria-label":`Seek`,className:`flex-1 h-11 accent-primary cursor-pointer min-w-0`,onChange:t=>e.onScrub(Number(t.target.value)),onPointerUp:n,onKeyUp:n,onTouchEnd:n}):(0,V.jsx)(`div`,{className:`flex-1`}),(0,V.jsxs)(`div`,{className:`flex items-center shrink-0`,children:[(0,V.jsx)(s,{variant:`ghost`,size:`icon`,className:`size-11`,onClick:e.onToggleMute,"aria-label":e.muted?`Unmute`:`Mute`,children:(0,V.jsx)(t,{className:`size-5`})}),(0,V.jsx)(`input`,{type:`range`,min:0,max:1,step:.05,value:e.muted?0:e.volume,"aria-label":`Volume`,className:`hidden sm:block w-20 h-11 accent-primary cursor-pointer`,onChange:t=>e.onVolume(Number(t.target.value))})]}),(0,V.jsx)(U,{speed:e.speed,onSpeed:e.onSpeed,transform:e.transform,onRotate:e.onRotate,onFlipH:e.onFlipH,onFlipV:e.onFlipV,onResetTransform:e.onResetTransform}),(0,V.jsx)(s,{variant:`ghost`,size:`icon`,className:`size-11 shrink-0`,onClick:e.onToggleFullscreen,"aria-label":e.fullscreen?`Exit fullscreen`:`Fullscreen`,children:e.fullscreen?(0,V.jsx)(k,{className:`size-5`}):(0,V.jsx)(O,{className:`size-5`})})]})}function W(e){let t=Math.max(0,Math.floor(Number.isFinite(e)?e:0)),n=Math.floor(t/3600),r=Math.floor(t%3600/60),i=t%60,a=n?String(r).padStart(2,`0`):String(r);return`${n?`${n}:`:``}${a}:${String(i).padStart(2,`0`)}`}function G({filePath:e,projectName:t,mode:n,probeDuration:r=null,onNativeError:i}){let a=(0,P.useRef)(null),c=(0,P.useRef)(null),l=(0,P.useRef)(null),u=(0,P.useRef)(!0),[d]=(0,P.useState)(w),[f,p]=(0,P.useState)(0),[m,h]=(0,P.useState)(0),[g,_]=(0,P.useState)(null),[v,y]=(0,P.useState)(!1),[b,S]=(0,P.useState)(!0),[T,E]=(0,P.useState)(null),[D,O]=(0,P.useState)(1),[k,A]=(0,P.useState)(!1),[j,M]=(0,P.useState)(1),[N,R]=(0,P.useState)(F),[B,U]=(0,P.useState)(!1),[W,G]=(0,P.useState)({width:0,height:0}),[K,q]=(0,P.useState)(null),J=n===`transcode`,Y=J?ee(e,t,f,d):C(e,t),X=J?r:g,ie=T??(J?f+m:m);(0,P.useEffect)(()=>{h(0),S(!0),q(null)},[Y]),(0,P.useEffect)(()=>{p(0),_(null),R(F)},[e,n]),(0,P.useEffect)(()=>{let e=l.current;e&&(e.volume=D,e.muted=k)},[D,k]),(0,P.useEffect)(()=>{let e=l.current;e&&(e.playbackRate=j)},[j,Y]),(0,P.useEffect)(()=>{let n=l.current,r=()=>{J&&x(e,t,d)};return window.addEventListener(`pagehide`,r),()=>{window.removeEventListener(`pagehide`,r),n&&!n.isConnected&&(n.pause(),n.removeAttribute(`src`),n.load(),r())}},[e,t,J,d]),(0,P.useEffect)(()=>{let e=()=>U(document.fullscreenElement===a.current);return document.addEventListener(`fullscreenchange`,e),()=>document.removeEventListener(`fullscreenchange`,e)},[]),(0,P.useEffect)(()=>{let e=c.current;if(!e)return;let t=new ResizeObserver(()=>G({width:e.clientWidth,height:e.clientHeight}));return t.observe(e),()=>t.disconnect()},[]);let Z=(0,P.useCallback)(e=>{let t=l.current,n=Math.max(0,X?Math.min(e,X-.5):e);if(E(null),!J){t&&(t.currentTime=n);return}Math.abs(n-(f+(t?.currentTime??0)))<.5||p(n)},[X,J,f]),Q=(0,P.useMemo)(()=>({togglePlay:()=>{let e=l.current;e&&(u.current=e.paused,e.paused?e.play().catch(()=>{}):e.pause())},seekBy:e=>Z((J?f:0)+(l.current?.currentTime??0)+e),toggleFullscreen:()=>{document.fullscreenElement?document.exitFullscreen():a.current?.requestFullscreen?.()},toggleMute:()=>A(e=>!e),volumeBy:e=>{A(!1),O(t=>Math.min(1,Math.max(0,Math.round((t+e)*100)/100)))},speedStep:e=>M(t=>{let n=H.indexOf(t);return H[Math.min(H.length-1,Math.max(0,(n===-1?3:n)+e))]??1}),rotate:e=>R(t=>e===1?I(t):L(t))}),[Z,J,f]),ae=ne(Q),$=te(N,W),oe=()=>{q(null),p(e=>e+.001)};return(0,V.jsxs)(`div`,{ref:a,"data-testid":`video-player`,tabIndex:0,onKeyDown:ae,className:`flex flex-col h-full bg-black outline-none focus-visible:ring-1 focus-visible:ring-primary/60`,children:[(0,V.jsxs)(`div`,{ref:c,className:`relative flex-1 min-h-0 flex items-center justify-center overflow-hidden`,onClick:e=>{a.current?.focus(),e.detail===1&&Q.togglePlay()},onDoubleClick:Q.toggleFullscreen,children:[(0,V.jsx)(`video`,{ref:l,src:Y,autoPlay:!0,playsInline:!0,preload:J?`auto`:`metadata`,style:{transform:z(N),maxWidth:$.maxWidth||void 0,maxHeight:$.maxHeight||void 0},onLoadedMetadata:e=>{let t=e.currentTarget;t.playbackRate=j,t.volume=D,t.muted=k,!J&&Number.isFinite(t.duration)&&_(t.duration),J&&!u.current&&t.pause()},onPlay:()=>y(!0),onPause:()=>y(!1),onWaiting:()=>S(!0),onPlaying:()=>S(!1),onCanPlay:()=>S(!1),onTimeUpdate:e=>h(e.currentTarget.currentTime),onEnded:()=>{y(!1),u.current=!1},onError:()=>{J?q(`Transcoding failed. ffmpeg may have stopped or the file is corrupt.`):i?.()}}),b&&!K&&(0,V.jsx)(o,{className:`absolute size-8 animate-spin text-white/80 pointer-events-none`}),K&&(0,V.jsxs)(`div`,{className:`absolute inset-0 flex flex-col items-center justify-center gap-3 bg-black/85 text-text-secondary p-4 text-center`,onClick:e=>e.stopPropagation(),onDoubleClick:e=>e.stopPropagation(),children:[(0,V.jsx)(`p`,{className:`text-sm`,children:K}),(0,V.jsx)(s,{variant:`outline`,size:`sm`,className:`h-11 px-4`,onClick:oe,children:`Retry`})]})]}),(0,V.jsx)(re,{playing:v,position:ie,duration:X,volume:D,muted:k,speed:j,transform:N,fullscreen:B,onTogglePlay:Q.togglePlay,onScrub:E,onSeek:Z,onVolume:e=>{O(e),A(e===0)},onToggleMute:Q.toggleMute,onSpeed:M,onRotate:Q.rotate,onFlipH:()=>R(e=>({...e,flipH:!e.flipH})),onFlipV:()=>R(e=>({...e,flipV:!e.flipV})),onResetTransform:()=>R(F),onToggleFullscreen:Q.toggleFullscreen})]})}var K=new Set([`mp4`,`m4v`,`webm`,`ogg`,`ogv`,`mov`]);function q({filePath:e,projectName:t}){let n=T(e),[r,i]=(0,P.useState)(()=>K.has(n)?{kind:`native`}:{kind:`probing`});return(0,P.useEffect)(()=>{i(K.has(T(e))?{kind:`native`}:{kind:`probing`})},[e]),(0,P.useEffect)(()=>{if(r.kind!==`probing`)return;let n=!1;return S(e,t).then(e=>{n||i(e.transcodable?{kind:`transcode`,probe:e}:{kind:`unsupported`,probe:e})}).catch(()=>{n||i({kind:`unsupported`,probe:null})}),()=>{n=!0}},[r.kind,e,t]),r.kind===`probing`?(0,V.jsx)(`div`,{className:`flex items-center justify-center h-full`,children:(0,V.jsx)(o,{className:`size-5 animate-spin text-text-subtle`})}):r.kind===`transcode`?(0,V.jsx)(G,{filePath:e,projectName:t,mode:`transcode`,probeDuration:r.probe.duration}):r.kind===`unsupported`?(0,V.jsx)(J,{filePath:e,projectName:t,probe:r.probe}):(0,V.jsx)(G,{filePath:e,projectName:t,mode:`native`,onNativeError:()=>i({kind:`probing`})})}function J({filePath:e,projectName:t,probe:n}){let r=[n?.video?.codec,n?.audio?.codec].filter(Boolean).join(` + `);return(0,V.jsxs)(`div`,{className:`flex flex-col items-center justify-center h-full gap-3 text-text-secondary p-6 text-center`,children:[(0,V.jsx)(a,{className:`size-10 text-text-subtle`}),(0,V.jsxs)(`p`,{className:`text-sm`,children:[`This video cannot be played in the browser`,r?` (${r})`:``,`.`]}),(0,V.jsxs)(`p`,{className:`text-xs text-text-subtle max-w-sm`,children:[`Install `,(0,V.jsx)(`code`,{children:`ffmpeg`}),` on the PPM server (e.g. `,(0,V.jsx)(`code`,{children:`winget install ffmpeg`}),`, `,(0,V.jsx)(`code`,{children:`brew install ffmpeg`}),`,`,` `,(0,V.jsx)(`code`,{children:`apt install ffmpeg`}),`) and restart PPM to transcode it on the fly.`]}),(0,V.jsx)(s,{asChild:!0,variant:`outline`,size:`sm`,className:`h-11 px-4`,children:(0,V.jsxs)(`a`,{href:`${C(e,t)}&download=true`,download:!0,children:[(0,V.jsx)(i,{className:`size-4 mr-2`}),` Download file`]})})]})}export{q as VideoPreview};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{S as t}from"./vendor-markdown-Ls5AcU91.js";import{f as n}from"./panel-store-BmdcSBNb.js";var r=e(t(),1),i=new Map,a=new Map,o=new Set;function s(e,t){t?i.set(e,t):i.delete(e);for(let e of o)e()}function c(e,t=2e3){let n=p(e);return n?Promise.resolve(n):new Promise(n=>{let r=e=>{o.delete(i),clearTimeout(a),n(e)},i=()=>{let t=p(e);t&&r(t)},a=setTimeout(()=>r(null),t);o.add(i)})}var l=new Set;function u(e){l.add(e)}function d(e){return l.has(e)}function f(e){l.delete(e)}function p(e){return i.get(e)??null}function m(e,t){if((a.get(e)??null)!==t){t?a.set(e,t):a.delete(e);for(let e of o)e()}}function h(e){return e?a.get(e)??null:null}function g(e){return o.add(e),()=>{o.delete(e)}}function _(e){return(0,r.useSyncExternalStore)(g,(0,r.useCallback)(()=>h(e),[e]))}function v(e){return _(n(e))?.pipWindow.document.body}export{m as a,c,s as i,h as l,d as n,v as o,u as r,_ as s,f as t,p as u};
1
+ import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t}from"./vendor-markdown-CuWCHIVb.js";import{f as n}from"./panel-store-D42k25jy.js";var r=e(t(),1),i=new Map,a=new Map,o=new Set;function s(e,t){t?i.set(e,t):i.delete(e);for(let e of o)e()}function c(e,t=2e3){let n=p(e);return n?Promise.resolve(n):new Promise(n=>{let r=e=>{o.delete(i),clearTimeout(a),n(e)},i=()=>{let t=p(e);t&&r(t)},a=setTimeout(()=>r(null),t);o.add(i)})}var l=new Set;function u(e){l.add(e)}function d(e){return l.has(e)}function f(e){l.delete(e)}function p(e){return i.get(e)??null}function m(e,t){if((a.get(e)??null)!==t){t?a.set(e,t):a.delete(e);for(let e of o)e()}}function h(e){return e?a.get(e)??null:null}function g(e){return o.add(e),()=>{o.delete(e)}}function _(e){return(0,r.useSyncExternalStore)(g,(0,r.useCallback)(()=>h(e),[e]))}function v(e){return _(n(e))?.pipWindow.document.body}export{m as a,c,s as i,h as l,d as n,v as o,u as r,_ as s,f as t,p as u};
@@ -1 +1 @@
1
- import{t as e}from"./react-D1Yg256j.js";var t=[`n`,`s`,`e`,`w`,`ne`,`nw`,`se`,`sw`],n={w:360,h:240},r={w:880,h:560},i=48,a=(e,t,n)=>Math.min(n,Math.max(t,e));function o(e){return 30+a(Math.trunc(e),0,8)}function s(e,t){let r=Math.max(n.w,Math.min(e.w,Math.max(t.w,n.w))),i=Math.max(n.h,Math.min(e.h,Math.max(t.h,n.h))),o=a(e.x,48-r,Math.max(48-r,t.w-48)),s=a(e.y,0,Math.max(0,t.h-48));return{x:Math.round(o),y:Math.round(s),w:Math.round(r),h:Math.round(i)}}function c(e,t,r,i,a=n){let{x:o,y:s,w:c,h:l}=e;if(t.includes(`e`))c=Math.max(a.w,e.w+r);else if(t.includes(`w`)){let t=e.x+e.w;c=Math.max(a.w,e.w-r),o=t-c}if(t.includes(`s`))l=Math.max(a.h,e.h+i);else if(t.includes(`n`)){let t=e.y+e.h;l=Math.max(a.h,e.h-i),s=t-l}return{x:o,y:s,w:c,h:l}}function l(e,t){let a=Math.min(r.w,Math.max(n.w,t.w-i*2)),o=Math.min(r.h,Math.max(n.h,t.h-i*2)),c=e.length%8;return s({x:i+c*24,y:i+c*24,w:a,h:o},t)}function u(e,t,n,r){return s({...e,x:e.x+t,y:e.y+n},r)}var d=[`explorer`,`team-member`,`system-monitor`,`tab-host`,`remote-desktop`,`settings`],f=`ppm-windows`,p=d.filter(e=>e!==`team-member`),m=[`normal`,`maximized`,`minimized`];function h(e){if(!e||typeof e!=`object`)return!1;let t=e;return[`x`,`y`,`w`,`h`].every(e=>typeof t[e]==`number`&&Number.isFinite(t[e]))}function g(e){if(e===void 0)return!0;if(!e||typeof e!=`object`||Array.isArray(e))return!1;try{return JSON.stringify(e),!0}catch{return!1}}function _(e){return g(e.payload)?{id:e.id,kind:e.kind,rect:e.rect,state:e.state,payload:e.payload}:null}function v(e){try{let t=[...e].sort((e,t)=>e.rank-t.rank).map(_).filter(e=>e!==null);t.length===0?localStorage.removeItem(f):localStorage.setItem(f,JSON.stringify(t))}catch{}}function y(e){let t=null;try{t=localStorage.getItem(f)}catch{return[]}if(!t)return[];let n;try{n=JSON.parse(t)}catch{return[]}if(!Array.isArray(n))return[];let r=[];for(let t of n){if(!t||typeof t!=`object`)continue;let n=t;if(typeof n.id!=`string`||!p.includes(n.kind)||!h(n.rect)||!g(n.payload))continue;let i=m.includes(n.state)?n.state:`normal`;r.push({id:n.id,kind:n.kind,rect:s(n.rect,e),state:i,payload:n.payload})}return r}var b={w:1280,h:800},x=e=>Object.values(e).sort((e,t)=>e.rank-t.rank);function S(e){let t={};return e.forEach((e,n)=>{t[e.id]=e.rank===n?e:{...e,rank:n}}),t}function C(e){v(Object.values(e))}function w(){return`win-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,8)}`}var T=e((e,t)=>({windows:{},bounds:b,restored:!1,open:(n,r,i)=>{let{windows:a,bounds:o}=t(),c=x(a);if(c.length>=8){let e=c[0];return t().focus(e.id),e.id}let u=w(),d=i?s(i,o):l(c.map(e=>e.rect),o),f=S([...c,{id:u,kind:n,rect:d,rank:c.length,state:`normal`,payload:r}]);return e({windows:f}),C(f),u},close:n=>{let{windows:r}=t();if(!r[n])return;let i=S(x(r).filter(e=>e.id!==n));e({windows:i}),C(i)},focus:n=>{let{windows:r}=t(),i=r[n];if(!i)return;let a=x(r);if(a[a.length-1]?.id===n)return;let o=S([...a.filter(e=>e.id!==n),i]);e({windows:o}),C(o)},move:(n,r)=>{let{windows:i,bounds:a}=t(),o=i[n];if(!o)return;let c=s({...o.rect,...r},a),l={...i,[n]:{...o,rect:c}};e({windows:l}),C(l)},resize:(n,r)=>{let{windows:i,bounds:a}=t(),o=i[n];if(!o)return;let c={...i,[n]:{...o,rect:s(r,a)}};e({windows:c}),C(c)},setState:(n,r)=>{let{windows:i}=t(),a=i[n];if(!a||a.state===r)return;let o={...i,[n]:{...a,state:r}};e({windows:o}),C(o)},setPayload:(n,r)=>{let{windows:i}=t(),a=i[n];if(!a)return;let o={...a.payload,...r};if(Object.entries(o).every(([e,t])=>a.payload?.[e]===t)&&Object.keys(o).length===Object.keys(a.payload??{}).length)return;let s={...i,[n]:{...a,payload:o}};e({windows:s}),C(s)},setBounds:n=>{let r=t();if(r.bounds.w===n.w&&r.bounds.h===n.h)return;let i={};for(let e of Object.values(r.windows)){let t=s(e.rect,n);i[e.id]=t.x===e.rect.x&&t.y===e.rect.y&&t.w===e.rect.w&&t.h===e.rect.h?e:{...e,rect:t}}e({bounds:n,windows:i})},restoreAll:n=>{t().restored||e({bounds:n,windows:S(y(n).slice(0,8).map((e,t)=>({id:e.id,kind:e.kind,rect:e.rect,rank:t,state:e.state,payload:e.payload}))),restored:!0})}}));function E(e){return x(e)}export{s as a,c as i,E as n,u as o,t as r,o as s,T as t};
1
+ import{t as e}from"./react-DqIU0LFM.js";var t=[`n`,`s`,`e`,`w`,`ne`,`nw`,`se`,`sw`],n={w:360,h:240},r={w:880,h:560},i=48,a=(e,t,n)=>Math.min(n,Math.max(t,e));function o(e){return 30+a(Math.trunc(e),0,8)}function s(e,t){let r=Math.max(n.w,Math.min(e.w,Math.max(t.w,n.w))),i=Math.max(n.h,Math.min(e.h,Math.max(t.h,n.h))),o=a(e.x,48-r,Math.max(48-r,t.w-48)),s=a(e.y,0,Math.max(0,t.h-48));return{x:Math.round(o),y:Math.round(s),w:Math.round(r),h:Math.round(i)}}function c(e,t,r,i,a=n){let{x:o,y:s,w:c,h:l}=e;if(t.includes(`e`))c=Math.max(a.w,e.w+r);else if(t.includes(`w`)){let t=e.x+e.w;c=Math.max(a.w,e.w-r),o=t-c}if(t.includes(`s`))l=Math.max(a.h,e.h+i);else if(t.includes(`n`)){let t=e.y+e.h;l=Math.max(a.h,e.h-i),s=t-l}return{x:o,y:s,w:c,h:l}}function l(e,t){let a=Math.min(r.w,Math.max(n.w,t.w-i*2)),o=Math.min(r.h,Math.max(n.h,t.h-i*2)),c=e.length%8;return s({x:i+c*24,y:i+c*24,w:a,h:o},t)}function u(e,t,n,r){return s({...e,x:e.x+t,y:e.y+n},r)}var d=[`explorer`,`team-member`,`system-monitor`,`tab-host`,`remote-desktop`,`settings`],f=`ppm-windows`,p=d.filter(e=>e!==`team-member`),m=[`normal`,`maximized`,`minimized`];function h(e){if(!e||typeof e!=`object`)return!1;let t=e;return[`x`,`y`,`w`,`h`].every(e=>typeof t[e]==`number`&&Number.isFinite(t[e]))}function g(e){if(e===void 0)return!0;if(!e||typeof e!=`object`||Array.isArray(e))return!1;try{return JSON.stringify(e),!0}catch{return!1}}function _(e){return g(e.payload)?{id:e.id,kind:e.kind,rect:e.rect,state:e.state,payload:e.payload}:null}function v(e){try{let t=[...e].sort((e,t)=>e.rank-t.rank).map(_).filter(e=>e!==null);t.length===0?localStorage.removeItem(f):localStorage.setItem(f,JSON.stringify(t))}catch{}}function y(e){let t=null;try{t=localStorage.getItem(f)}catch{return[]}if(!t)return[];let n;try{n=JSON.parse(t)}catch{return[]}if(!Array.isArray(n))return[];let r=[];for(let t of n){if(!t||typeof t!=`object`)continue;let n=t;if(typeof n.id!=`string`||!p.includes(n.kind)||!h(n.rect)||!g(n.payload))continue;let i=m.includes(n.state)?n.state:`normal`;r.push({id:n.id,kind:n.kind,rect:s(n.rect,e),state:i,payload:n.payload})}return r}var b={w:1280,h:800},x=e=>Object.values(e).sort((e,t)=>e.rank-t.rank);function S(e){let t={};return e.forEach((e,n)=>{t[e.id]=e.rank===n?e:{...e,rank:n}}),t}function C(e){v(Object.values(e))}function w(){return`win-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,8)}`}var T=e((e,t)=>({windows:{},bounds:b,restored:!1,open:(n,r,i)=>{let{windows:a,bounds:o}=t(),c=x(a);if(c.length>=8){let e=c[0];return t().focus(e.id),e.id}let u=w(),d=i?s(i,o):l(c.map(e=>e.rect),o),f=S([...c,{id:u,kind:n,rect:d,rank:c.length,state:`normal`,payload:r}]);return e({windows:f}),C(f),u},close:n=>{let{windows:r}=t();if(!r[n])return;let i=S(x(r).filter(e=>e.id!==n));e({windows:i}),C(i)},focus:n=>{let{windows:r}=t(),i=r[n];if(!i)return;let a=x(r);if(a[a.length-1]?.id===n)return;let o=S([...a.filter(e=>e.id!==n),i]);e({windows:o}),C(o)},move:(n,r)=>{let{windows:i,bounds:a}=t(),o=i[n];if(!o)return;let c=s({...o.rect,...r},a),l={...i,[n]:{...o,rect:c}};e({windows:l}),C(l)},resize:(n,r)=>{let{windows:i,bounds:a}=t(),o=i[n];if(!o)return;let c={...i,[n]:{...o,rect:s(r,a)}};e({windows:c}),C(c)},setState:(n,r)=>{let{windows:i}=t(),a=i[n];if(!a||a.state===r)return;let o={...i,[n]:{...a,state:r}};e({windows:o}),C(o)},setPayload:(n,r)=>{let{windows:i}=t(),a=i[n];if(!a)return;let o={...a.payload,...r};if(Object.entries(o).every(([e,t])=>a.payload?.[e]===t)&&Object.keys(o).length===Object.keys(a.payload??{}).length)return;let s={...i,[n]:{...a,payload:o}};e({windows:s}),C(s)},setBounds:n=>{let r=t();if(r.bounds.w===n.w&&r.bounds.h===n.h)return;let i={};for(let e of Object.values(r.windows)){let t=s(e.rect,n);i[e.id]=t.x===e.rect.x&&t.y===e.rect.y&&t.w===e.rect.w&&t.h===e.rect.h?e:{...e,rect:t}}e({bounds:n,windows:i})},restoreAll:n=>{t().restored||e({bounds:n,windows:S(y(n).slice(0,8).map((e,t)=>({id:e.id,kind:e.kind,rect:e.rect,rank:t,state:e.state,payload:e.payload}))),restored:!0})}}));function E(e){return x(e)}export{s as a,c as i,E as n,u as o,t as r,o as s,T as t};
@@ -0,0 +1 @@
1
+ import{r as e}from"./api-client-DwXlVfXP.js";function t(t){let n=e();return!n||/[?&]token=/.test(t)?t:`${t}${t.includes(`?`)?`&`:`?`}token=${encodeURIComponent(n)}`}export{t};
@@ -0,0 +1 @@
1
+ import{t as e}from"./createLucideIcon-D6fVXe3s.js";var t=e(`x`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]);export{t};
@@ -39,47 +39,47 @@
39
39
  <link rel="preconnect" href="https://fonts.googleapis.com" />
40
40
  <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
41
41
  <link href="https://fonts.googleapis.com/css2?family=Geist+Mono:wght@400;500;600;700&family=Geist:wght@400;500;600;700&display=swap" rel="stylesheet" />
42
- <script type="module" crossorigin src="/assets/index-Cx1meAwb.js"></script>
42
+ <script type="module" crossorigin src="/assets/index-DVNJ2W5R.js"></script>
43
43
  <link rel="modulepreload" crossorigin href="/assets/rolldown-runtime-FhOqtrmT.js">
44
44
  <link rel="modulepreload" crossorigin href="/assets/vendor-mermaid-CfY1-PkA.js">
45
- <link rel="modulepreload" crossorigin href="/assets/vendor-markdown-Ls5AcU91.js">
46
- <link rel="modulepreload" crossorigin href="/assets/vendor-ui-CaeeFO0B.js">
45
+ <link rel="modulepreload" crossorigin href="/assets/vendor-markdown-CuWCHIVb.js">
46
+ <link rel="modulepreload" crossorigin href="/assets/vendor-ui-BBdkypKW.js">
47
47
  <link rel="modulepreload" crossorigin href="/assets/utils-IrnQujwR.js">
48
- <link rel="modulepreload" crossorigin href="/assets/button-DX32ffge.js">
49
- <link rel="modulepreload" crossorigin href="/assets/createLucideIcon-D8pyde1A.js">
50
- <link rel="modulepreload" crossorigin href="/assets/arrow-left-CyFcsyzD.js">
51
- <link rel="modulepreload" crossorigin href="/assets/bot-D6sx11y0.js">
52
- <link rel="modulepreload" crossorigin href="/assets/check-DN75Ucvz.js">
53
- <link rel="modulepreload" crossorigin href="/assets/chevron-down-Dp0rpHb8.js">
54
- <link rel="modulepreload" crossorigin href="/assets/chevron-right-De-Wz5Lz.js">
55
- <link rel="modulepreload" crossorigin href="/assets/chevron-up-8PbsNiJp.js">
56
- <link rel="modulepreload" crossorigin href="/assets/circle-BCy0AUCo.js">
57
- <link rel="modulepreload" crossorigin href="/assets/clock-C1CQUQPZ.js">
58
- <link rel="modulepreload" crossorigin href="/assets/sparkles-Dh-_J2Rd.js">
59
- <link rel="modulepreload" crossorigin href="/assets/copy-BewHj66E.js">
60
- <link rel="modulepreload" crossorigin href="/assets/database-Y3ESDK4-.js">
61
- <link rel="modulepreload" crossorigin href="/assets/download-DG3_9xXy.js">
62
- <link rel="modulepreload" crossorigin href="/assets/use-coarse-long-press-BmI_GVW5.js">
63
- <link rel="modulepreload" crossorigin href="/assets/eye-off-GjXVuAOn.js">
64
- <link rel="modulepreload" crossorigin href="/assets/eye-gWwaF4Lg.js">
65
- <link rel="modulepreload" crossorigin href="/assets/loader-circle-DPMrnLQ2.js">
66
- <link rel="modulepreload" crossorigin href="/assets/monitor-C835ucWH.js">
67
- <link rel="modulepreload" crossorigin href="/assets/x-CxoBA0po.js">
68
- <link rel="modulepreload" crossorigin href="/assets/api-client-CEYCBt_0.js">
69
- <link rel="modulepreload" crossorigin href="/assets/react-D1Yg256j.js">
70
- <link rel="modulepreload" crossorigin href="/assets/window-store-D0HbQ1pM.js">
71
- <link rel="modulepreload" crossorigin href="/assets/panel-store-BmdcSBNb.js">
72
- <link rel="modulepreload" crossorigin href="/assets/window-pip-registry-CrCYYTTf.js">
73
- <link rel="modulepreload" crossorigin href="/assets/portal-container-context-DKymYOY-.js">
74
- <link rel="modulepreload" crossorigin href="/assets/context-menu-CJL8L98s.js">
75
- <link rel="modulepreload" crossorigin href="/assets/use-visual-viewport-Bfl3Bxxb.js">
76
- <link rel="modulepreload" crossorigin href="/assets/mobile-bottom-sheet-CmySDB6I.js">
77
- <link rel="modulepreload" crossorigin href="/assets/use-is-mobile-D1weanbj.js">
78
- <link rel="modulepreload" crossorigin href="/assets/project-store-wWZ6bjwq.js">
79
- <link rel="modulepreload" crossorigin href="/assets/ws-auth-D111jj32.js">
80
- <link rel="modulepreload" crossorigin href="/assets/settings-store-CzLnTR8p.js">
81
- <link rel="modulepreload" crossorigin href="/assets/streaming-store-9XVmAMfV.js">
82
- <link rel="modulepreload" crossorigin href="/assets/tab-store-1xYJb0gM.js">
48
+ <link rel="modulepreload" crossorigin href="/assets/button-zgoXa9r7.js">
49
+ <link rel="modulepreload" crossorigin href="/assets/createLucideIcon-D6fVXe3s.js">
50
+ <link rel="modulepreload" crossorigin href="/assets/arrow-left-DpXaakMC.js">
51
+ <link rel="modulepreload" crossorigin href="/assets/bot-D3-n2i31.js">
52
+ <link rel="modulepreload" crossorigin href="/assets/check-BQKbhtoA.js">
53
+ <link rel="modulepreload" crossorigin href="/assets/chevron-down-B9puixxZ.js">
54
+ <link rel="modulepreload" crossorigin href="/assets/chevron-right-DK_HbYZC.js">
55
+ <link rel="modulepreload" crossorigin href="/assets/chevron-up-BPAINgoK.js">
56
+ <link rel="modulepreload" crossorigin href="/assets/circle-OKk7s0DX.js">
57
+ <link rel="modulepreload" crossorigin href="/assets/clock-BmPiGrSF.js">
58
+ <link rel="modulepreload" crossorigin href="/assets/sparkles-blTKn0vi.js">
59
+ <link rel="modulepreload" crossorigin href="/assets/copy-CXuIH4VC.js">
60
+ <link rel="modulepreload" crossorigin href="/assets/database-Dz0W7OH7.js">
61
+ <link rel="modulepreload" crossorigin href="/assets/download-D70Q4Ba6.js">
62
+ <link rel="modulepreload" crossorigin href="/assets/use-coarse-long-press-BsBpxWup.js">
63
+ <link rel="modulepreload" crossorigin href="/assets/eye-off-CmtfyRUD.js">
64
+ <link rel="modulepreload" crossorigin href="/assets/eye-dfZn7evX.js">
65
+ <link rel="modulepreload" crossorigin href="/assets/loader-circle-DxI3O9_f.js">
66
+ <link rel="modulepreload" crossorigin href="/assets/monitor-CG69bSMW.js">
67
+ <link rel="modulepreload" crossorigin href="/assets/x-Bdaog6Az.js">
68
+ <link rel="modulepreload" crossorigin href="/assets/api-client-DwXlVfXP.js">
69
+ <link rel="modulepreload" crossorigin href="/assets/react-DqIU0LFM.js">
70
+ <link rel="modulepreload" crossorigin href="/assets/window-store-CfxP5yor.js">
71
+ <link rel="modulepreload" crossorigin href="/assets/panel-store-D42k25jy.js">
72
+ <link rel="modulepreload" crossorigin href="/assets/window-pip-registry-BWxaVLj5.js">
73
+ <link rel="modulepreload" crossorigin href="/assets/portal-container-context-DeLx1cOI.js">
74
+ <link rel="modulepreload" crossorigin href="/assets/context-menu-DM9CgxGh.js">
75
+ <link rel="modulepreload" crossorigin href="/assets/use-visual-viewport-CNdG4QHH.js">
76
+ <link rel="modulepreload" crossorigin href="/assets/mobile-bottom-sheet-Ch1e_JBq.js">
77
+ <link rel="modulepreload" crossorigin href="/assets/use-is-mobile-Bi42QhIi.js">
78
+ <link rel="modulepreload" crossorigin href="/assets/project-store-C83MMnlt.js">
79
+ <link rel="modulepreload" crossorigin href="/assets/ws-auth-FRzMmfQx.js">
80
+ <link rel="modulepreload" crossorigin href="/assets/settings-store-_s4xFcFq.js">
81
+ <link rel="modulepreload" crossorigin href="/assets/streaming-store-QQvg1cS-.js">
82
+ <link rel="modulepreload" crossorigin href="/assets/tab-store-B2ip0-Mv.js">
83
83
  <link rel="modulepreload" crossorigin href="/assets/apply-theme-BVXAUYoN.js">
84
84
  <link rel="modulepreload" crossorigin href="/assets/resolve-theme-CMp5xxCW.js">
85
85
  <link rel="stylesheet" crossorigin href="/assets/index-B9Wbjl0o.css">