@vantran-se/openchamber-web 1.23.1 → 1.24.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/cli.test.js +29 -6
- package/bin/lib/cli-http.js +5 -1
- package/bin/lib/commands-status.js +5 -0
- package/dist/assets/{CodeMirrorCommentWidgets-BOpqXpFU.js → CodeMirrorCommentWidgets-BjJHrzmU.js} +1 -1
- package/dist/assets/DiffView-COVQhWGd.js +4 -0
- package/dist/assets/FilesView-B1V5JxFX.js +13 -0
- package/dist/assets/GitView-CDOJy5Ay.js +6 -0
- package/dist/assets/GuestAttachDialog-D3S0Rjic.js +1 -0
- package/dist/assets/{JsonTreeView-nd_E8eVM.js → JsonTreeView-D0C9nU7K.js} +1 -1
- package/dist/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
- package/dist/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
- package/dist/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
- package/dist/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
- package/dist/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
- package/dist/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
- package/dist/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
- package/dist/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
- package/dist/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
- package/dist/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
- package/dist/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
- package/dist/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
- package/dist/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
- package/dist/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
- package/dist/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
- package/dist/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
- package/dist/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
- package/dist/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
- package/dist/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
- package/dist/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
- package/dist/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
- package/dist/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
- package/dist/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
- package/dist/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
- package/dist/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
- package/dist/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
- package/dist/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
- package/dist/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
- package/dist/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
- package/dist/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
- package/dist/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
- package/dist/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
- package/dist/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
- package/dist/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
- package/dist/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
- package/dist/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
- package/dist/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
- package/dist/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
- package/dist/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
- package/dist/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
- package/dist/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
- package/dist/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
- package/dist/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
- package/dist/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
- package/dist/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
- package/dist/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
- package/dist/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
- package/dist/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
- package/dist/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
- package/dist/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
- package/dist/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
- package/dist/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
- package/dist/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
- package/dist/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
- package/dist/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
- package/dist/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
- package/dist/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
- package/dist/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
- package/dist/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
- package/dist/assets/LinearIssuesView-D7FKg1XJ.js +1 -0
- package/dist/assets/{MarkdownImageGallery-CVYds3sQ.js → MarkdownImageGallery-BrFjAVEf.js} +1 -1
- package/dist/assets/MarkdownRendererImpl-DWepTafh.js +12 -0
- package/dist/assets/{OnboardingScreen-Dd2IbPTn.js → OnboardingScreen-Dyxxiqdt.js} +1 -1
- package/dist/assets/{PatchDiff-nUu5i4bG.js → PatchDiff-DnEhjXcC.js} +1 -1
- package/dist/assets/PierreDiffViewer-DyxZVVVR.js +210 -0
- package/dist/assets/PlanView-LW2z_EAP.js +5 -0
- package/dist/assets/PluginPane-B4tKno2h.js +3 -0
- package/dist/assets/SettingsView-DEaMulN9.js +29 -0
- package/dist/assets/{SettingsWindow-BccxY81J.js → SettingsWindow-FLDJXOgQ.js} +1 -1
- package/dist/assets/SubmoduleDiffSummary-CvVwD-Vi.js +1 -0
- package/dist/assets/ToolOutputDialog-BiP0x2Rw.js +15 -0
- package/dist/assets/{ToolPartDiffPreview-BFVgk0UK.js → ToolPartDiffPreview-CkR4msKP.js} +2 -2
- package/dist/assets/{VirtualizedFileDiff-z3_H74UR.js → VirtualizedFileDiff-0pyr_mHY.js} +3 -3
- package/dist/assets/{WalkthroughView-BqM9GFbJ.js → WalkthroughView-yNj4nOP5.js} +2 -2
- package/dist/assets/appThemeRegistry-BuUKhbYQ.js +1 -0
- package/dist/assets/commitAndPush-DvJKa3Ks.js +1 -0
- package/dist/assets/{computeVirtualFileMetrics-Bdazp9Qo.js → computeVirtualFileMetrics-DxTBMuu-.js} +1 -1
- package/dist/assets/de-DgxgFyGG.js +10 -0
- package/dist/assets/es-BFsZj5F_.js +16 -0
- package/dist/assets/fr-jdZ5KKQi.js +14 -0
- package/dist/assets/{index-eo1-D_7z.js → index-CKHjPKbq.js} +1 -1
- package/dist/assets/index-Cbci4i1W.js +40 -0
- package/dist/assets/index-DqaMWNrC.css +1 -0
- package/dist/assets/{isDiffPlainText-BvKH712-.js → isDiffPlainText-D7FkBMP6.js} +1 -1
- package/dist/assets/{isFilePlainText-BdVVPukf.js → isFilePlainText-CL2vsrIZ.js} +1 -1
- package/dist/assets/ja-C5kKrhO4.js +16 -0
- package/dist/assets/ko-DXDTT_0O.js +16 -0
- package/dist/assets/main-CZALtVek.js +896 -0
- package/dist/assets/main-CgXMBNvG.js +2 -0
- package/dist/assets/{markdown-shiki.worker-D5fBU-lw.js → markdown-shiki.worker-CahLvHIq.js} +5 -5
- package/dist/assets/markdownCore-Dh7WEsdM.js +5 -0
- package/dist/assets/miniChat-CwTmDixi.js +2 -0
- package/dist/assets/mobile-CLf2vCtO.js +2 -0
- package/dist/assets/{patchFileDiff-B7LjppSS.js → patchFileDiff-Bsba8KFp.js} +3 -3
- package/dist/assets/pl-D-7x4Y8Q.js +16 -0
- package/dist/assets/pt-BR-CSBZrHa8.js +16 -0
- package/dist/assets/renderElectronMiniChatApp-C5gAFBk0.js +2 -0
- package/dist/assets/renderMobileApp-V4hYd32H.js +25 -0
- package/dist/assets/runtimeEndpointReset-DhlHCn-2.js +25 -0
- package/dist/assets/{scheduledTasksApi-hceovDei.js → scheduledTasksApi-DzjbLd8P.js} +1 -1
- package/dist/assets/shikiHighlight-8_3csmr6.js +1 -0
- package/dist/assets/textMateThemeFromAppTheme-CHo2fCgW.js +1 -0
- package/dist/assets/tr-Dr-oJ22L.js +7 -0
- package/dist/assets/uk-9Nx83UcI.js +16 -0
- package/dist/assets/useAppFontEffects-khZXpFL_.js +7333 -0
- package/dist/assets/useInlineCommentController-DkQ_gqpn.js +2 -0
- package/dist/assets/useRootScrollLock-DdvHf9Pt.js +2 -0
- package/dist/assets/{vendor-base-ui-BY_5qla_.js → vendor-base-ui-CsXYnR5c.js} +1 -1
- package/dist/assets/{vendor-codemirror-language-data-DWA1bm1F.js → vendor-codemirror-language-data-CdzUmUyZ.js} +2 -2
- package/dist/assets/vendor-framer-motion-Bq3iTZ6r.js +1 -0
- package/dist/assets/vendor-katex-Cp579UoJ.css +1 -0
- package/dist/assets/{vendor-motion-dom-D_o3BTI3.js → vendor-motion-dom-DcCgeG69.js} +1 -1
- package/dist/assets/{vendor-remixicon-react-Dil0zKKT.js → vendor-remixicon-react-BDmGmFCA.js} +1 -1
- package/dist/assets/vendor-strip-json-comments-5dJlOkP1.js +4 -0
- package/dist/assets/{vendor-tanstack-react-virtual-g05Cx3z9.js → vendor-tanstack-react-virtual-ClYN8CzB.js} +1 -1
- package/dist/assets/{vendor-tanstack-virtual-core-Dubg10g5.js → vendor-tanstack-virtual-core-BewVQryB.js} +1 -1
- package/dist/assets/{vendor-zod-B6551dwG.js → vendor-zod-CgAdXWZO.js} +4 -4
- package/dist/assets/{web-components-B_Z64So5.js → web-components-B8IcVQAA.js} +2 -2
- package/dist/assets/zh-CN-Bxy_Hj3r.js +16 -0
- package/dist/assets/zh-TW-0BB4gpHM.js +16 -0
- package/dist/index.html +6 -4
- package/dist/mini-chat.html +6 -4
- package/dist/mobile.html +6 -4
- package/package.json +12 -9
- package/server/built-in-extensions/registry.json +4 -0
- package/server/index.d.ts +2 -0
- package/server/index.js +44 -10
- package/server/lib/agent-tool/DOCUMENTATION.md +17 -4
- package/server/lib/agent-tool/runtime.js +62 -15
- package/server/lib/agent-tool/runtime.test.js +88 -2
- package/server/lib/changelog/update-notes.js +2 -1
- package/server/lib/changelog/update-notes.test.js +19 -0
- package/server/lib/event-stream/DOCUMENTATION.md +23 -0
- package/server/lib/event-stream/delta-coalescer.js +0 -0
- package/server/lib/event-stream/delta-coalescer.test.js +292 -0
- package/server/lib/event-stream/global-hub.js +53 -23
- package/server/lib/event-stream/global-hub.test.js +160 -0
- package/server/lib/event-stream/global-ws-bridge.js +1 -0
- package/server/lib/event-stream/index.js +4 -0
- package/server/lib/fs/DOCUMENTATION.md +10 -1
- package/server/lib/fs/git-process.test.js +77 -0
- package/server/lib/fs/routes.js +58 -5
- package/server/lib/fs/routes.test.js +116 -0
- package/server/lib/fs/search.js +2 -1
- package/server/lib/git/DOCUMENTATION.md +20 -5
- package/server/lib/git/routes.js +16 -3
- package/server/lib/git/serial-refresh.js +93 -0
- package/server/lib/git/serial-refresh.test.js +112 -0
- package/server/lib/git/service.js +429 -70
- package/server/lib/git/service.test.js +418 -0
- package/server/lib/github/pr-status.js +5 -5
- package/server/lib/github/pr-status.test.js +1 -1
- package/server/lib/github/routes.js +4 -4
- package/server/lib/guests/DOCUMENTATION.md +68 -0
- package/server/lib/guests/auth-store.js +184 -0
- package/server/lib/guests/auth-store.test.js +112 -0
- package/server/lib/guests/background.test.js +83 -0
- package/server/lib/guests/builtins.js +34 -0
- package/server/lib/guests/builtins.test.js +174 -0
- package/server/lib/guests/catalog.js +477 -0
- package/server/lib/guests/catalog.test.js +390 -0
- package/server/lib/guests/clone.js +297 -0
- package/server/lib/guests/extract-zip.js +136 -0
- package/server/lib/guests/extract-zip.test.js +109 -0
- package/server/lib/guests/files.js +308 -0
- package/server/lib/guests/files.test.js +262 -0
- package/server/lib/guests/grant-scope.js +81 -0
- package/server/lib/guests/grant-scope.test.js +75 -0
- package/server/lib/guests/host-session.js +73 -0
- package/server/lib/guests/host-session.test.js +30 -0
- package/server/lib/guests/html-styles.js +6 -0
- package/server/lib/guests/html-styles.test.js +45 -0
- package/server/lib/guests/html-tokens.js +73 -0
- package/server/lib/guests/html-tokens.test.js +53 -0
- package/server/lib/guests/install.js +406 -0
- package/server/lib/guests/install.test.js +338 -0
- package/server/lib/guests/oauth.js +501 -0
- package/server/lib/guests/oauth.test.js +481 -0
- package/server/lib/guests/persist.js +336 -0
- package/server/lib/guests/persist.test.js +288 -0
- package/server/lib/guests/request.js +112 -0
- package/server/lib/guests/request.test.js +206 -0
- package/server/lib/guests/routes.js +838 -0
- package/server/lib/guests/service.js +538 -0
- package/server/lib/guests/service.test.js +277 -0
- package/server/lib/guests/sockets.js +129 -0
- package/server/lib/guests/sockets.test.js +110 -0
- package/server/lib/guests/ssh-install.test.js +188 -0
- package/server/lib/guests/storage.js +68 -0
- package/server/lib/guests/storage.test.js +59 -0
- package/server/lib/guests/updates.js +294 -0
- package/server/lib/guests/updates.test.js +334 -0
- package/server/lib/guests/upload.js +50 -0
- package/server/lib/guests/upload.test.js +131 -0
- package/server/lib/linear/DOCUMENTATION.md +1 -1
- package/server/lib/message-queue/DOCUMENTATION.md +10 -1
- package/server/lib/message-queue/runtime.js +21 -1
- package/server/lib/message-queue/runtime.test.js +52 -5
- package/server/lib/notifications/routes.js +5 -0
- package/server/lib/openchamber-control/DOCUMENTATION.md +6 -0
- package/server/lib/openchamber-sessions/routes.js +62 -29
- package/server/lib/openchamber-sessions/routes.test.js +96 -0
- package/server/lib/opencode/DOCUMENTATION.md +55 -1
- package/server/lib/opencode/bootstrap-runtime.js +1 -0
- package/server/lib/opencode/core-routes.js +39 -1
- package/server/lib/opencode/feature-routes-runtime.js +15 -0
- package/server/lib/opencode/lifecycle-process.test.js +84 -0
- package/server/lib/opencode/lifecycle.js +54 -67
- package/server/lib/opencode/openchamber-routes.js +72 -14
- package/server/lib/opencode/openchamber-routes.test.js +71 -3
- package/server/lib/opencode/session-runtime.js +68 -0
- package/server/lib/opencode/session-runtime.test.js +43 -0
- package/server/lib/opencode/settings-helpers.js +8 -0
- package/server/lib/opencode/settings-helpers.test.js +13 -1
- package/server/lib/opencode/settings-normalization-runtime.js +2 -0
- package/server/lib/opencode/settings-normalization-runtime.test.js +13 -0
- package/server/lib/opencode/settings-registry.json +15 -0
- package/server/lib/opencode/shutdown-runtime.js +3 -0
- package/server/lib/opencode/shutdown-runtime.test.js +24 -0
- package/server/lib/opencode/theme-archive.js +53 -0
- package/server/lib/opencode/theme-catalog.js +171 -0
- package/server/lib/opencode/theme-catalog.test.js +125 -0
- package/server/lib/opencode/theme-import.test.js +144 -0
- package/server/lib/opencode/theme-runtime.js +100 -28
- package/server/lib/opencode/theme-runtime.test.js +15 -0
- package/server/lib/permission-auto-accept/DOCUMENTATION.md +8 -0
- package/server/lib/permission-auto-accept/runtime.js +13 -0
- package/server/lib/permission-auto-accept/runtime.test.js +37 -1
- package/server/lib/projects/project-config.js +2 -2
- package/server/lib/quota/DOCUMENTATION.md +0 -1
- package/server/lib/quota/providers/index.js +0 -7
- package/server/lib/realtime-proxy-terminal.test.js +150 -0
- package/server/lib/realtime-proxy.js +2 -0
- package/server/lib/routing/DOCUMENTATION.md +83 -0
- package/server/lib/routing/defaults.js +98 -0
- package/server/lib/routing/feature-flag.js +11 -0
- package/server/lib/routing/history.js +34 -0
- package/server/lib/routing/jev.js +98 -0
- package/server/lib/routing/routes.http.test.js +100 -0
- package/server/lib/routing/routes.js +81 -0
- package/server/lib/routing/runtime.js +217 -0
- package/server/lib/routing/runtime.test.js +188 -0
- package/server/lib/routing/store.js +249 -0
- package/server/lib/routing/store.test.js +96 -0
- package/server/lib/scheduled-tasks/runtime.js +2 -2
- package/server/lib/scheduled-tasks/runtime.test.js +14 -0
- package/server/lib/security/request-security.js +9 -5
- package/server/lib/security/request-security.test.js +37 -0
- package/server/lib/small-model/DOCUMENTATION.md +14 -2
- package/server/lib/small-model/call.js +37 -6
- package/server/lib/small-model/call.test.js +182 -0
- package/server/lib/terminal/DOCUMENTATION.md +23 -2
- package/server/lib/terminal/runtime.js +27 -5
- package/server/lib/terminal/runtime.test.js +67 -0
- package/server/lib/terminal/shutdown.js +106 -0
- package/server/lib/terminal/shutdown.test.js +84 -0
- package/server/lib/tts/service.test.js +78 -0
- package/server/lib/ui-auth/DOCUMENTATION.md +8 -0
- package/server/lib/ui-auth/session-cookie.js +51 -0
- package/server/lib/ui-auth/session-cookie.test.js +46 -0
- package/server/lib/ui-auth/ui-auth.js +56 -17
- package/server/lib/ui-auth/ui-auth.test.js +96 -0
- package/dist/assets/DiffView-CyLmb-wF.js +0 -4
- package/dist/assets/DirtyBranchSwitchDialog-pu5kcoir.js +0 -1
- package/dist/assets/FilesView-WtJB0y_l.js +0 -13
- package/dist/assets/GitView-DkNrV0BK.js +0 -6
- package/dist/assets/LinearIssuesView-B0H0Otii.js +0 -1
- package/dist/assets/MarkdownRendererImpl-DSqVN2d8.js +0 -12
- package/dist/assets/PierreDiffViewer-Bsq9z-sw.js +0 -161
- package/dist/assets/PlanView-CAFziKH5.js +0 -5
- package/dist/assets/SettingsView-BRittavZ.js +0 -28
- package/dist/assets/ToolOutputDialog-B0uYaJio.js +0 -15
- package/dist/assets/appThemeRegistry-BK0dHKa6.js +0 -1
- package/dist/assets/de-c7CYLCAW.js +0 -10
- package/dist/assets/es-BKAVPQmQ.js +0 -16
- package/dist/assets/fr-Bj1glqfV.js +0 -14
- package/dist/assets/index-BYFyOu_D.css +0 -1
- package/dist/assets/index-BfwRClDe.js +0 -40
- package/dist/assets/ja-5jwSIbK0.js +0 -16
- package/dist/assets/ko-BaDbg-Eb.js +0 -16
- package/dist/assets/main-CGG2_uHq.js +0 -2
- package/dist/assets/main-CcrSaL4J.js +0 -930
- package/dist/assets/markdownCore-DsmQr3bt.js +0 -5
- package/dist/assets/miniChat-DEaAhP4b.js +0 -2
- package/dist/assets/mobile-BC3rsvv0.js +0 -2
- package/dist/assets/pl-BFKVBDFu.js +0 -16
- package/dist/assets/pt-BR-qKfHvkDL.js +0 -16
- package/dist/assets/registerCustomTheme-BBXUCRnG.js +0 -1
- package/dist/assets/renderElectronMiniChatApp-CR9d1Mr0.js +0 -2
- package/dist/assets/renderMobileApp-Da5dwobZ.js +0 -25
- package/dist/assets/runtimeEndpointReset-CLYVRw2H.js +0 -41
- package/dist/assets/shikiHighlight-D1Z9G58W.js +0 -1
- package/dist/assets/tr-DYXPoEDG.js +0 -7
- package/dist/assets/uk-CwAoloR8.js +0 -16
- package/dist/assets/useAppFontEffects-DeStGcUT.js +0 -7282
- package/dist/assets/useGitComparison-CpxioduU.js +0 -1
- package/dist/assets/useInlineCommentController-gmUnJtrb.js +0 -2
- package/dist/assets/useRootScrollLock--a3cPz8s.js +0 -1
- package/dist/assets/vendor-framer-motion-livSKyyV.js +0 -1
- package/dist/assets/zh-CN-D9MG0lqF.js +0 -16
- package/dist/assets/zh-TW-1HNK7shh.js +0 -16
- package/server/lib/quota/providers/crof.js +0 -96
- package/server/lib/quota/providers/crof.test.js +0 -98
- /package/dist/assets/{vendor-katex-k3Ppq1Ha.js → vendor-katex-CHD9BdDO.js} +0 -0
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import{B as v,g as A}from"./vendor-marked-CX41MkDF.js";import{m as B}from"./vendor-marked-linkify-it-CXI_LHIE.js";import{p as D}from"./vendor-remend-BWYYytN3.js";import{k as z}from"./vendor-katex-CHD9BdDO.js";import{p as g}from"./vendor-dompurify-r8glNMJW.js";import{jX as y,jY as M,jZ as I,j_ as G,j$ as F,gv as j,k0 as U,k1 as K}from"./useAppFontEffects-khZXpFL_.js";import{O as P}from"./index-Cbci4i1W.js";import"./vendor-linkify-it-DZCzzDkK.js";import"./vendor-uc.micro-BAd0H0z4.js";import"./vendor-react-BUCujlKS.js";import"./vendor-scheduler-7OC5HNn7.js";import"./vendor-zod-CgAdXWZO.js";import"./vendor-simplewebauthn-browser-VDA66rT_.js";import"./vendor-vite-runtime-DD1OZmLC.js";import"./vendor-zustand-BAGL70zf.js";import"./vendor-base-ui-CsXYnR5c.js";import"./vendor-floating-ui-utils-D6FqdtJt.js";import"./vendor-floating-ui-react-dom-DxYCWdHj.js";import"./vendor-floating-ui-dom-BTvzWks8.js";import"./vendor-floating-ui-core-PuGzNPnN.js";import"./vendor-use-sync-external-store-D6wYuSt-.js";import"./vendor-class-variance-authority-5VPnzWs2.js";import"./vendor-clsx-B-dksMZM.js";import"./vendor-dnd-kit-core-BZknOX2w.js";import"./vendor-dnd-kit-utilities-B_MdXhJC.js";import"./vendor-dnd-kit-accessibility-BHxJPORy.js";import"./vendor-dnd-kit-sortable-CsEagZ81.js";import"./vendor-framer-motion-Bq3iTZ6r.js";import"./vendor-motion-dom-DcCgeG69.js";import"./vendor-motion-utils-BGh8QBgx.js";import"./vendor-tanstack-react-virtual-ClYN8CzB.js";import"./vendor-tanstack-virtual-core-BewVQryB.js";import"./contextPanelEmbeddedChat-CirXEPJq.js";import"./vendor-sonner-DFyL3AvE.js";import"./vendor-cmdk-DgLInKvT.js";import"./vendor-radix-ui-react-dialog-B94Bt2qq.js";import"./vendor-radix-ui-primitive-Dc_FVRD7.js";import"./vendor-radix-ui-react-compose-refs-DcAh5WdT.js";import"./vendor-radix-ui-react-context-Czxm7Z62.js";import"./vendor-radix-ui-react-id-f5BLKEVw.js";import"./vendor-radix-ui-react-use-layout-effect-D_3IhJdJ.js";import"./vendor-radix-ui-react-use-controllable-state-BFT5YmkA.js";import"./vendor-radix-ui-react-dismissable-layer-D7kXcwgJ.js";import"./vendor-radix-ui-react-primitive-DhVoX9SD.js";import"./vendor-radix-ui-react-slot-BQgQOasS.js";import"./vendor-radix-ui-react-use-callback-ref-BZPnuXAC.js";import"./vendor-radix-ui-react-use-escape-keydown-oph88g-F.js";import"./vendor-radix-ui-react-focus-scope-CiaxW4dD.js";import"./vendor-radix-ui-react-portal-BMJYHWck.js";import"./vendor-radix-ui-react-presence-CNxf-uq4.js";import"./vendor-radix-ui-react-focus-guards-B6qJXYua.js";import"./vendor-react-remove-scroll-DO7dCTnK.js";import"./vendor-tslib-De9GV7Vy.js";import"./vendor-react-remove-scroll-bar-BcFYyj3E.js";import"./vendor-react-style-singleton-q6EMHnwf.js";import"./vendor-get-nonce-C-Z93AgS.js";import"./vendor-use-sidecar-zDC0RhA3.js";import"./vendor-use-callback-ref-D3RC8gqK.js";import"./vendor-aria-hidden-DvXkyWUv.js";import"./vendor-codemirror-language-BgPj_McA.js";import"./vendor-lezer-common-B3-cUCR_.js";import"./vendor-codemirror-state-C9awkmn-.js";import"./vendor-marijn-find-cluster-break-DXwl3gUT.js";import"./vendor-codemirror-view-CiLROUVV.js";import"./vendor-style-mod-NZ5MEPvj.js";import"./vendor-w3c-keyname-Vcq4gwWv.js";import"./vendor-crelt-C8TCjufn.js";import"./vendor-lezer-highlight-CDMHUZ74.js";import"./vendor-codemirror-lang-javascript-Cc2ZYbgX.js";import"./vendor-lezer-javascript-D7Tj24ot.js";import"./vendor-lezer-lr-bhwg1HMg.js";import"./vendor-codemirror-autocomplete-DzPz9Wgq.js";import"./vendor-codemirror-lang-json-CMBS2tG9.js";import"./vendor-lezer-json-Iaex0UN-.js";import"./vendor-codemirror-lang-css-O0cZX78y.js";import"./vendor-lezer-css-C5xB6jxd.js";import"./vendor-codemirror-lang-html-CfgK872x.js";import"./vendor-lezer-html-C0I1p52t.js";import"./vendor-codemirror-lang-markdown-BPGOH9ye.js";import"./vendor-lezer-markdown-C6g-d6P3.js";import"./vendor-codemirror-language-data-CdzUmUyZ.js";import"./vendor-codemirror-lang-python-HahnQaAS.js";import"./vendor-lezer-python-CvuFxeZl.js";import"./vendor-codemirror-commands-B7H_j0iU.js";import"./vendor-legendapp-list-BuBPBC3R.js";import"./vendor-tailwind-merge-CPcsbTWB.js";import"./vendor-fuse.js-Dw8P0qyA.js";import"./vendor-opencode-sdk-BJ73u-bH.js";const C=e=>e.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">"),w=["script","style"],X=e=>{try{const t=new URL(e);return t.protocol==="file:"&&(!t.hostname||t.hostname==="localhost")}catch{return!1}},d=e=>e.replace(/&/g,"&").replace(/"/g,""").replace(/</g,"<").replace(/>/g,">"),W=/\.(?:png|jpe?g|gif|webp)(?:[?#].*)?$/i,V=/^[A-Za-z]:[\\/]/,Y=/^[A-Za-z][A-Za-z\d+.-]*:/,Z=12,q=1024,J=2*1024*1024,Q=64*1024,m=new Map;let _=0;const ee=e=>/^\/\//.test(e)||!W.test(e)?!1:V.test(e)||/^file:\/\//i.test(e)||!Y.test(e),te=e=>/^(?:https?:)?\/\//i.test(e)||/^data:image\/(?:png|jpeg|gif|webp);base64,/i.test(e)||ee(e),T=(e,t)=>{if(/^data:image\/(png|jpeg|gif|webp)/i.test(e)){const o=/^data:image\/([^;,]+)/i.exec(e)?.[1]?.replace("jpeg","jpg")??"png";return t.trim()||`image.${o}`}const r=(e.split(/[?#]/,1)[0]?.replace(/\\/g,"/")??"").split("/").filter(Boolean).at(-1)??"";if(!r)return t.trim();try{return decodeURIComponent(r)}catch{return r}},re=(e,t)=>(e.length+t.reduce((n,r)=>n+r.source.length+r.filename.length,0))*2,ne=e=>{const t=[],n=new Set,r=A.lexer(e);return A.walkTokens(r,o=>{if(o.type!=="image")return;const s=o.href??"";if(!s||!te(s)||n.has(s))return;const i=typeof o.text=="string"?o.text:"",a=T(s,i);a&&(n.add(s),t.push({source:s,filename:a}))}),t},oe=e=>{const t=m.get(e);if(t)return m.delete(e),m.set(e,t),t.candidates;let n;try{n=ne(e)}catch{return[]}const r=re(e,n);if(r>Q)return n;for(;m.size>=q||_+r>J;){const o=m.entries().next().value;if(!o)break;m.delete(o[0]),_-=o[1].bytes}return m.set(e,{candidates:n,bytes:r}),_+=r,n},se=({href:e,title:t,text:n})=>{const r=T(e??"",n);return`<span${t?` title="${d(t)}"`:""} class="inline-flex items-center gap-1 align-text-bottom text-muted-foreground" data-openchamber-markdown-image-label="true">${d(r)}</span>`},ur=(e,t=Z)=>{if(t<=0)return[];const n=[],r=new Set;for(const o of e)if(!(!o||n.length>=t))for(const s of oe(o)){if(n.length>=t)break;r.has(s.source)||(r.add(s.source),n.push({...s}))}return n},ie=e=>/^\[[^\]]+\]:\s+\S+/m.test(e)||/^\[\^[^\]]+\]:\s+/m.test(e),ae=e=>{const t=e.match(/^[ \t]{0,3}(`{3,}|~{3,})/);if(!t)return!1;const n=t[1];if(!n)return!1;const r=n[0],o=n.length,s=e.trimEnd().split(`
|
|
2
|
+
`).at(-1)?.trim()??"";return!new RegExp(`^[\\t ]{0,3}${r}{${o},}[\\t ]*$`).test(s)},ce=300,h=e=>{try{return D(e,{linkMode:"text-only"})}catch{return e}},$=(e,t)=>{if(!t)return[{raw:e,src:e,mode:"full",highlight:!0}];if(ie(e))return[{raw:e,src:h(e),mode:"live",highlight:!0}];let n;try{n=E.lexer(e)}catch{return[{raw:e,src:h(e),mode:"live",highlight:!0}]}let r=-1;for(let s=n.length-1;s>=0;s-=1)if(n[s]?.type!=="space"){r=s;break}if(r<0)return[{raw:e,src:h(e),mode:"live",highlight:!0}];const o=[];for(let s=0;s<n.length;s+=1){const i=n[s];if(!i||i.type==="space")continue;const a=i.raw??"",l=s===r,c=i.type==="code"&&ae(a),p=c&&a.split(`
|
|
3
|
+
`).length<=ce;o.push({raw:a,src:c?a:h(a),mode:l?"live":"full",highlight:!c||p})}return o.length===0?[{raw:e,src:h(e),mode:"live",highlight:!0}]:o},f=(e,t,n)=>{try{return z.renderToString(e,{displayMode:n,throwOnError:!1})}catch{return t}},le={name:"inlineMath",level:"inline",start(e){const t=e.indexOf("\\(");return t<0?void 0:t},tokenizer(e){const t=/^\\\(([\s\S]+?)\\\)/.exec(e);if(t)return{type:"inlineMath",raw:t[0],text:t[1]??""}},renderer(e){const t=e;return f(t.text,t.raw,!1)}},pe=/^[ \t]*\\\[([\s\S]+?)\\\][ \t]*(?:\n|$)/,me=/(?:^|\n)[ \t]*\\\[/,de={name:"blockMath",level:"block",start(e){const t=me.exec(e);return t?t.index+t[0].length-2:void 0},tokenizer(e){const t=pe.exec(e);if(t)return{type:"blockMath",raw:t[0],text:t[1]??""}},renderer(e){const t=e;return f(t.text,t.raw,!0)}},ue={name:"disclosure",level:"block",start(e){const t=/(?:^|\n) {0,3}<details(?:\s|>)/i.exec(e);return t?t.index+(t[0].startsWith(`
|
|
4
|
+
`)?1:0):void 0},tokenizer(e){const t=/^ {0,3}<details(?:\s+(open(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s>]+))?))?\s*>\s*<summary\s*>([\s\S]*?)<\/summary\s*>/i.exec(e);if(!t)return;const n=t[0].length,r=e.slice(n),o=/(^ {0,3}(`{3,}|~{3,})[^\n]*(?:\n|$))|(`+)|(<\/?details\b[^>]*>)/gim;let s=1,i=r.length,a=e.length,l;for(;l=o.exec(r);)if(l[2]){const c=l[2],p=new RegExp(`^ {0,3}${c[0]}{${c.length},}[\\t ]*(?:\\n|$)`,"gm");if(p.lastIndex=o.lastIndex,!p.exec(r))break;o.lastIndex=p.lastIndex}else if(l[3]){const c=l[3],p=/`+/g;p.lastIndex=o.lastIndex;let u;for(;u=p.exec(r);)if(u[0].length===c.length){o.lastIndex=p.lastIndex;break}}else if(l[4]){const c=r.lastIndexOf(`
|
|
5
|
+
`,l.index-1)+1,p=r.slice(c,l.index);if(/^(?: {4}|\t| {0,3}>)/.test(p)||/(?:^|[^\\])(?:\\\\)*\\$/.test(p))continue;if(s+=/^<\//.test(l[4])?-1:1,s===0){i=l.index,a=n+o.lastIndex;break}}return{type:"disclosure",raw:e.slice(0,a),open:!!t[1],summary:this.lexer.inlineTokens(t[2]??""),tokens:this.lexer.blockTokens(r.slice(0,i))}},renderer(e){return`<details data-md-details${e.open?" open":""}><summary>${this.parser.parseInline(e.summary)}</summary>${this.parser.parse(e.tokens??[])}</details>`},childTokens:["summary","tokens"]},L=e=>new v().use(B({fuzzyLink:!1}),{gfm:!0,breaks:!1,extensions:[le,de,ue],renderer:{html({text:t}){return C(t)},link({href:t,title:n,text:r}){const o=t??"",s=G(o);if(s)return`<a href="${d(K(s))}" data-openchamber-agent-mention="true" class="text-primary hover:underline" target="_blank" rel="noopener noreferrer">${r}</a>`;const i=F(o);if(i)return`<a href="${d(o)}" data-skill-name="${d(i)}" class="text-primary hover:underline">${r}</a>`;const a=n?` title="${d(n)}"`:"";return`<a href="${d(o)}"${a} class="external-link" target="_blank" rel="noopener noreferrer">${r}</a>`},...e==="label"?{image:se}:{}}}),E=L("inline"),S=L("label"),k=e=>e.replace(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/'/g,"'").replace(/&/g,"&"),he=/\$\$([\s\S]*?)\$\$|\$(?![\s$])([^\s$<>"](?:[^$<>"]*?[^\s$<>"])?)\$(?!\d)/g,ge=/^[\d.,\s]+$/,fe=e=>e.replace(he,(t,n,r)=>n!==void 0?f(k(n),t,!0):r!==void 0&&!ge.test(r)?f(k(r),t,!1):t),_e=/(<[^>]*>)/,ke=e=>e.split(_e).map((t,n)=>n%2===1?t:fe(t)).join(""),b=e=>{if(e.indexOf("$")===-1)return e;const t=/(<(?:pre|code|kbd)[^>]*>[\s\S]*?<\/(?:pre|code|kbd)>)/gi;return e.split(t).map((n,r)=>r%2===1?n:ke(n)).join("")},Ee=/<pre><code(?:\s+class="language-([^"]*)")?>([\s\S]*?)<\/code><\/pre>/g,Ae=1200,Ie=200,we=(e,t)=>{let n=1;for(let r=0;r<e.length;r+=1)if(e.charCodeAt(r)===10&&++n>t)return!0;return!1},xe=async e=>{const t=[...e.matchAll(Ee)];if(t.length===0)return e;const n=P()?Ie:Ae,r=await Promise.all(t.map(async s=>{const[i,a,l]=s,c=(a||"text").toLowerCase();if(c==="mermaid")return null;const p=k(l??"");if(we(p,n))return{full:i,next:i.replace("<pre",`<pre data-md-lang="${c}"`)};const u=await U(p,c);return u?{full:i,next:u.replace(/^<pre/,`<pre data-md-lang="${c}"`)}:null}));let o=e;for(const s of r)s&&(o=o.replace(s.full,()=>s.next));return o},ye={USE_PROFILES:{html:!0,mathMl:!0,svg:!0},ADD_TAGS:["svg","path","g","rect","line","polygon","polyline","circle","ellipse","text","tspan","defs","marker"],ADD_ATTR:["d","viewBox","preserveAspectRatio","xmlns","target","fill","stroke","stroke-width","transform","points","x","y","x1","y1","x2","y2","cx","cy","r","rx","ry","style"],FORBID_TAGS:[...w],FORBID_CONTENTS:[...w]};let x=!1;const Me=()=>{x||typeof window>"u"||!g.isSupported||(x=!0,g.addHook("uponSanitizeAttribute",(e,t)=>{!(e instanceof HTMLAnchorElement)||t.attrName!=="href"||(X(t.attrValue)||j(t.attrValue))&&(t.forceKeepAttr=!0)}),g.addHook("afterSanitizeAttributes",e=>{e instanceof HTMLAnchorElement&&e.target==="_blank"&&e.setAttribute("rel","noopener noreferrer")}))},R=e=>g.isSupported?(Me(),g.sanitize(e,ye)):"",Ce=2e3,Te=24*1024*1024,$e=32,Le=2*1024*1024,H=new M({maxEntries:Ce,maxBytes:Te}),Se=new M({maxEntries:$e,maxBytes:Le}),be=e=>e==="live"?Se:H,O=(e,t,n,r)=>`${e}:${t}:${n?1:0}:${r}`,hr=(e,t="inline")=>{if(!e)return[];const n=$(e,!1),r=[];for(const o of n){const s=y(o.raw),i=O(s,o.mode,o.highlight,t),a=H.get(i);if(a===void 0)return null;r.push({id:i,html:a})}return r},N=e=>`<div class="whitespace-pre-wrap break-words">${C(e)}</div>`,Re=async(e,t)=>{const n=t==="label"?S:E;let r;try{r=await n.parse(e.src)}catch{return N(e.raw)}const o=b(r),s=e.highlight?await xe(o):o;return R(s)},gr=(e,t="inline")=>{if(!e)return"";const n=t==="label"?S:E;let r;try{r=n.parse(e,{async:!1})}catch{return N(e)}const o=b(r);return R(o)},fr=async(e,t,n="inline")=>{if(!e)return[];const r=$(e,t);return Promise.all(r.map(async o=>{const s=y(o.raw),i=O(s,o.mode,o.highlight,n),a=be(o.mode),l=a.get(i);if(l!==void 0)return{id:i,html:l};const c=await Re(o,n);return a.set(i,c,I(i)+I(c)),{id:i,html:c}}))};export{Z as MAX_MARKDOWN_IMAGE_COUNT,ur as extractMarkdownImageCandidates,hr as getCachedMarkdownBlocks,fr as renderMarkdownBlocks,gr as renderMarkdownSync};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/renderElectronMiniChatApp-C5gAFBk0.js","assets/vendor-react-BUCujlKS.js","assets/vendor-scheduler-7OC5HNn7.js","assets/vendor-katex-CHD9BdDO.js","assets/vendor-katex-Cp579UoJ.css","assets/index-Cbci4i1W.js","assets/vendor-zod-CgAdXWZO.js","assets/vendor-vite-runtime-DD1OZmLC.js","assets/vendor-zustand-BAGL70zf.js","assets/vendor-opencode-sdk-BJ73u-bH.js","assets/index-DqaMWNrC.css","assets/useAppFontEffects-khZXpFL_.js","assets/vendor-simplewebauthn-browser-VDA66rT_.js","assets/vendor-base-ui-CsXYnR5c.js","assets/vendor-floating-ui-utils-D6FqdtJt.js","assets/vendor-floating-ui-react-dom-DxYCWdHj.js","assets/vendor-floating-ui-dom-BTvzWks8.js","assets/vendor-floating-ui-core-PuGzNPnN.js","assets/vendor-use-sync-external-store-D6wYuSt-.js","assets/vendor-class-variance-authority-5VPnzWs2.js","assets/vendor-clsx-B-dksMZM.js","assets/vendor-dnd-kit-core-BZknOX2w.js","assets/vendor-dnd-kit-utilities-B_MdXhJC.js","assets/vendor-dnd-kit-accessibility-BHxJPORy.js","assets/vendor-dnd-kit-sortable-CsEagZ81.js","assets/vendor-framer-motion-Bq3iTZ6r.js","assets/vendor-motion-dom-DcCgeG69.js","assets/vendor-motion-utils-BGh8QBgx.js","assets/vendor-tanstack-react-virtual-ClYN8CzB.js","assets/vendor-tanstack-virtual-core-BewVQryB.js","assets/contextPanelEmbeddedChat-CirXEPJq.js","assets/vendor-sonner-DFyL3AvE.js","assets/vendor-cmdk-DgLInKvT.js","assets/vendor-radix-ui-react-dialog-B94Bt2qq.js","assets/vendor-radix-ui-primitive-Dc_FVRD7.js","assets/vendor-radix-ui-react-compose-refs-DcAh5WdT.js","assets/vendor-radix-ui-react-context-Czxm7Z62.js","assets/vendor-radix-ui-react-id-f5BLKEVw.js","assets/vendor-radix-ui-react-use-layout-effect-D_3IhJdJ.js","assets/vendor-radix-ui-react-use-controllable-state-BFT5YmkA.js","assets/vendor-radix-ui-react-dismissable-layer-D7kXcwgJ.js","assets/vendor-radix-ui-react-primitive-DhVoX9SD.js","assets/vendor-radix-ui-react-slot-BQgQOasS.js","assets/vendor-radix-ui-react-use-callback-ref-BZPnuXAC.js","assets/vendor-radix-ui-react-use-escape-keydown-oph88g-F.js","assets/vendor-radix-ui-react-focus-scope-CiaxW4dD.js","assets/vendor-radix-ui-react-portal-BMJYHWck.js","assets/vendor-radix-ui-react-presence-CNxf-uq4.js","assets/vendor-radix-ui-react-focus-guards-B6qJXYua.js","assets/vendor-react-remove-scroll-DO7dCTnK.js","assets/vendor-tslib-De9GV7Vy.js","assets/vendor-react-remove-scroll-bar-BcFYyj3E.js","assets/vendor-react-style-singleton-q6EMHnwf.js","assets/vendor-get-nonce-C-Z93AgS.js","assets/vendor-use-sidecar-zDC0RhA3.js","assets/vendor-use-callback-ref-D3RC8gqK.js","assets/vendor-aria-hidden-DvXkyWUv.js","assets/vendor-codemirror-language-BgPj_McA.js","assets/vendor-lezer-common-B3-cUCR_.js","assets/vendor-codemirror-state-C9awkmn-.js","assets/vendor-marijn-find-cluster-break-DXwl3gUT.js","assets/vendor-codemirror-view-CiLROUVV.js","assets/vendor-style-mod-NZ5MEPvj.js","assets/vendor-w3c-keyname-Vcq4gwWv.js","assets/vendor-crelt-C8TCjufn.js","assets/vendor-lezer-highlight-CDMHUZ74.js","assets/vendor-codemirror-lang-javascript-Cc2ZYbgX.js","assets/vendor-lezer-javascript-D7Tj24ot.js","assets/vendor-lezer-lr-bhwg1HMg.js","assets/vendor-codemirror-autocomplete-DzPz9Wgq.js","assets/vendor-codemirror-lang-json-CMBS2tG9.js","assets/vendor-lezer-json-Iaex0UN-.js","assets/vendor-codemirror-lang-css-O0cZX78y.js","assets/vendor-lezer-css-C5xB6jxd.js","assets/vendor-codemirror-lang-html-CfgK872x.js","assets/vendor-lezer-html-C0I1p52t.js","assets/vendor-codemirror-lang-markdown-BPGOH9ye.js","assets/vendor-lezer-markdown-C6g-d6P3.js","assets/vendor-codemirror-language-data-CdzUmUyZ.js","assets/vendor-codemirror-lang-python-HahnQaAS.js","assets/vendor-lezer-python-CvuFxeZl.js","assets/vendor-codemirror-commands-B7H_j0iU.js","assets/vendor-legendapp-list-BuBPBC3R.js","assets/vendor-tailwind-merge-CPcsbTWB.js","assets/vendor-fuse.js-Dw8P0qyA.js","assets/useRootScrollLock-DdvHf9Pt.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{_ as o}from"./vendor-vite-runtime-DD1OZmLC.js";import{c as _}from"./index-Cbci4i1W.js";import"./vendor-katex-CHD9BdDO.js";import"./vendor-zod-CgAdXWZO.js";import"./vendor-zustand-BAGL70zf.js";import"./vendor-react-BUCujlKS.js";import"./vendor-scheduler-7OC5HNn7.js";import"./vendor-opencode-sdk-BJ73u-bH.js";window.__OPENCHAMBER_RUNTIME_APIS__=_();o(async()=>{const{renderElectronMiniChatApp:r}=await import("./renderElectronMiniChatApp-C5gAFBk0.js");return{renderElectronMiniChatApp:r}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85])).then(({renderElectronMiniChatApp:r})=>{r(window.__OPENCHAMBER_RUNTIME_APIS__??_())});
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/renderMobileApp-V4hYd32H.js","assets/vendor-react-BUCujlKS.js","assets/vendor-scheduler-7OC5HNn7.js","assets/vendor-katex-CHD9BdDO.js","assets/vendor-katex-Cp579UoJ.css","assets/index-Cbci4i1W.js","assets/vendor-zod-CgAdXWZO.js","assets/vendor-vite-runtime-DD1OZmLC.js","assets/vendor-zustand-BAGL70zf.js","assets/vendor-opencode-sdk-BJ73u-bH.js","assets/index-DqaMWNrC.css","assets/useAppFontEffects-khZXpFL_.js","assets/vendor-simplewebauthn-browser-VDA66rT_.js","assets/vendor-base-ui-CsXYnR5c.js","assets/vendor-floating-ui-utils-D6FqdtJt.js","assets/vendor-floating-ui-react-dom-DxYCWdHj.js","assets/vendor-floating-ui-dom-BTvzWks8.js","assets/vendor-floating-ui-core-PuGzNPnN.js","assets/vendor-use-sync-external-store-D6wYuSt-.js","assets/vendor-class-variance-authority-5VPnzWs2.js","assets/vendor-clsx-B-dksMZM.js","assets/vendor-dnd-kit-core-BZknOX2w.js","assets/vendor-dnd-kit-utilities-B_MdXhJC.js","assets/vendor-dnd-kit-accessibility-BHxJPORy.js","assets/vendor-dnd-kit-sortable-CsEagZ81.js","assets/vendor-framer-motion-Bq3iTZ6r.js","assets/vendor-motion-dom-DcCgeG69.js","assets/vendor-motion-utils-BGh8QBgx.js","assets/vendor-tanstack-react-virtual-ClYN8CzB.js","assets/vendor-tanstack-virtual-core-BewVQryB.js","assets/contextPanelEmbeddedChat-CirXEPJq.js","assets/vendor-sonner-DFyL3AvE.js","assets/vendor-cmdk-DgLInKvT.js","assets/vendor-radix-ui-react-dialog-B94Bt2qq.js","assets/vendor-radix-ui-primitive-Dc_FVRD7.js","assets/vendor-radix-ui-react-compose-refs-DcAh5WdT.js","assets/vendor-radix-ui-react-context-Czxm7Z62.js","assets/vendor-radix-ui-react-id-f5BLKEVw.js","assets/vendor-radix-ui-react-use-layout-effect-D_3IhJdJ.js","assets/vendor-radix-ui-react-use-controllable-state-BFT5YmkA.js","assets/vendor-radix-ui-react-dismissable-layer-D7kXcwgJ.js","assets/vendor-radix-ui-react-primitive-DhVoX9SD.js","assets/vendor-radix-ui-react-slot-BQgQOasS.js","assets/vendor-radix-ui-react-use-callback-ref-BZPnuXAC.js","assets/vendor-radix-ui-react-use-escape-keydown-oph88g-F.js","assets/vendor-radix-ui-react-focus-scope-CiaxW4dD.js","assets/vendor-radix-ui-react-portal-BMJYHWck.js","assets/vendor-radix-ui-react-presence-CNxf-uq4.js","assets/vendor-radix-ui-react-focus-guards-B6qJXYua.js","assets/vendor-react-remove-scroll-DO7dCTnK.js","assets/vendor-tslib-De9GV7Vy.js","assets/vendor-react-remove-scroll-bar-BcFYyj3E.js","assets/vendor-react-style-singleton-q6EMHnwf.js","assets/vendor-get-nonce-C-Z93AgS.js","assets/vendor-use-sidecar-zDC0RhA3.js","assets/vendor-use-callback-ref-D3RC8gqK.js","assets/vendor-aria-hidden-DvXkyWUv.js","assets/vendor-codemirror-language-BgPj_McA.js","assets/vendor-lezer-common-B3-cUCR_.js","assets/vendor-codemirror-state-C9awkmn-.js","assets/vendor-marijn-find-cluster-break-DXwl3gUT.js","assets/vendor-codemirror-view-CiLROUVV.js","assets/vendor-style-mod-NZ5MEPvj.js","assets/vendor-w3c-keyname-Vcq4gwWv.js","assets/vendor-crelt-C8TCjufn.js","assets/vendor-lezer-highlight-CDMHUZ74.js","assets/vendor-codemirror-lang-javascript-Cc2ZYbgX.js","assets/vendor-lezer-javascript-D7Tj24ot.js","assets/vendor-lezer-lr-bhwg1HMg.js","assets/vendor-codemirror-autocomplete-DzPz9Wgq.js","assets/vendor-codemirror-lang-json-CMBS2tG9.js","assets/vendor-lezer-json-Iaex0UN-.js","assets/vendor-codemirror-lang-css-O0cZX78y.js","assets/vendor-lezer-css-C5xB6jxd.js","assets/vendor-codemirror-lang-html-CfgK872x.js","assets/vendor-lezer-html-C0I1p52t.js","assets/vendor-codemirror-lang-markdown-BPGOH9ye.js","assets/vendor-lezer-markdown-C6g-d6P3.js","assets/vendor-codemirror-language-data-CdzUmUyZ.js","assets/vendor-codemirror-lang-python-HahnQaAS.js","assets/vendor-lezer-python-CvuFxeZl.js","assets/vendor-codemirror-commands-B7H_j0iU.js","assets/vendor-legendapp-list-BuBPBC3R.js","assets/vendor-tailwind-merge-CPcsbTWB.js","assets/vendor-fuse.js-Dw8P0qyA.js","assets/runtimeEndpointReset-DhlHCn-2.js","assets/GuestAttachDialog-D3S0Rjic.js","assets/PluginPane-B4tKno2h.js","assets/SettingsView-DEaMulN9.js","assets/vendor-yaml-3778uTud.js","assets/shikiHighlight-8_3csmr6.js","assets/vendor-codemirror-search-BmS-GmcX.js","assets/vendor-replit-codemirror-vim-B2DJlAhT.js","assets/vendor-replit-codemirror-vim-core-FHzKdNUS.js","assets/appThemeRegistry-BuUKhbYQ.js","assets/textMateThemeFromAppTheme-CHo2fCgW.js","assets/themeResolver-BmJyTmjJ.js","assets/vendor-pierre-theming-C6Z4M5_u.js","assets/vendor-shikijs-core-CGM_jqPK.js","assets/vendor-shikijs-types-CPSbSeK6.js","assets/vendor-shikijs-vscode-textmate-BgLrS_2D.js","assets/vendor-hast-util-to-html-BKBhbTDb.js","assets/vendor-html-void-elements-CkdplsNl.js","assets/vendor-property-information-rJCbAzvX.js","assets/vendor-zwitch-C2o2j-tx.js","assets/vendor-stringify-entities-CsH1VEn9.js","assets/vendor-character-entities-legacy-BpoLgcEt.js","assets/vendor-character-entities-html4-D7taRCQ7.js","assets/vendor-ccount-c2V3InAJ.js","assets/vendor-comma-separated-tokens-D8TqSuIK.js","assets/vendor-space-separated-tokens-DD3iYX1K.js","assets/vendor-hast-util-whitespace-D4Wp6AEg.js","assets/vendor-qrcode-DTJ12-WC.js","assets/vendor-dijkstrajs-COg3n3zL.js","assets/vendor-strip-json-comments-5dJlOkP1.js","assets/PlanView-LW2z_EAP.js","assets/useInlineCommentController-DkQ_gqpn.js","assets/CodeMirrorCommentWidgets-BjJHrzmU.js","assets/vendor-aparajita-capacitor-secure-storage-5IShChL0.js","assets/vendor-capacitor-core-B4EWRrHz.js","assets/vendor-remixicon-react-BDmGmFCA.js","assets/commitAndPush-DvJKa3Ks.js","assets/patchFileDiff-Bsba8KFp.js","assets/VirtualizedFileDiff-0pyr_mHY.js","assets/web-components-B8IcVQAA.js","assets/computeVirtualFileMetrics-DxTBMuu-.js","assets/vendor-shiki-Bbf2GEcE.js","assets/vendor-shikijs-engine-oniguruma-DPWuIF1G.js","assets/vendor-shikijs-engine-javascript-Cme4830A.js","assets/vendor-oniguruma-to-es-DLBnFDCE.js","assets/vendor-oniguruma-parser-C0D4_9rT.js","assets/vendor-regex-BBWcyTkg.js","assets/vendor-regex-utilities-2BQyy0xI.js","assets/vendor-regex-recursion-JU4mF-dD.js","assets/vendor-shikijs-transformers-CZWsLLKm.js","assets/isDiffPlainText-D7FkBMP6.js","assets/vendor-diff-C3JhlQdm.js","assets/SubmoduleDiffSummary-CvVwD-Vi.js","assets/PierreDiffViewer-DyxZVVVR.js","assets/Virtualizer-D_a8gKmg.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{_ as r}from"./vendor-vite-runtime-DD1OZmLC.js";import{c as o}from"./index-Cbci4i1W.js";import"./vendor-katex-CHD9BdDO.js";import"./vendor-zod-CgAdXWZO.js";import"./vendor-zustand-BAGL70zf.js";import"./vendor-react-BUCujlKS.js";import"./vendor-scheduler-7OC5HNn7.js";import"./vendor-opencode-sdk-BJ73u-bH.js";window.__OPENCHAMBER_RUNTIME_APIS__=o();r(async()=>{const{renderMobileApp:_}=await import("./renderMobileApp-V4hYd32H.js");return{renderMobileApp:_}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139])).then(({renderMobileApp:_})=>{_(window.__OPENCHAMBER_RUNTIME_APIS__??o())});
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import{f as ce,r as F,j as r}from"./vendor-react-BUCujlKS.js";import{
|
|
1
|
+
import{f as ce,r as F,j as r}from"./vendor-react-BUCujlKS.js";import{jy as Ie,f as se,w as me,h as de,ar as he,a4 as Me,cZ as pe,I as Y,B as te,d2 as ge,d4 as xe,cY as we,d3 as Ce,d1 as ye,R as Ne,aq as ve,as as je,ap as be,cc as De,K as le,jz as Ae,Z as He,cy as Ke,aD as Pe,ca as ke,jA as Te,cb as Ve,jB as We,jC as _e}from"./useAppFontEffects-khZXpFL_.js";import{d as Be}from"./runtimeEndpointReset-DhlHCn-2.js";import{u as qe,a1 as ze,a as X}from"./index-Cbci4i1W.js";import{c as Se,p as Ge}from"./vendor-zustand-BAGL70zf.js";import{p as Je}from"./VirtualizedFileDiff-0pyr_mHY.js";function Qe(s,e=10){const n=[];let t;for(const a of s.split(`
|
|
2
2
|
`)){const h=a.match(Ie);if(h!=null){t!=null&&(t.hunkLines.length>0&&(oe(t,e,"trailing"),ue(t,n)),t=void 0);const o=parseInt(h[3]),c=parseInt(h[1]),m=parseInt(h[4]??"1"),l=parseInt(h[2]??"1");isNaN(o)||isNaN(c)||isNaN(m)||isNaN(l)?n.push(a):t={additionStart:o,deletionStart:c,additionCount:0,deletionCount:0,hunkLines:[],contextLines:[]};continue}if(t==null){n.push(a);continue}if(a.startsWith(" "))t.contextLines.push(a);else if(a!==""){if(t.hunkLines.length>0&&t.contextLines.length>e*2){const o=t.contextLines.length-e*2,c=t.contextLines.slice(-e);oe(t,e,"trailing");const{additionCount:m,deletionCount:l}=t;ue(t,n),t={additionStart:t.additionStart+m+o,deletionStart:t.deletionStart+l+o,deletionCount:0,additionCount:0,contextLines:c,hunkLines:[]}}oe(t,e,t.hunkLines.length===0?"leading":"before-change"),t.hunkLines.push(a),a.startsWith("+")?t.additionCount+=1:a.startsWith("-")&&(t.deletionCount+=1)}}t!=null&&t.hunkLines.length>0&&(oe(t,e,"trailing"),ue(t,n));const i=n.join(`
|
|
3
3
|
`);return s.endsWith(`
|
|
4
4
|
`)?`${i}
|
|
5
|
-
`:i}function oe(s,e,n){if(n==="leading"&&s.contextLines.length>e){const t=s.contextLines.length-e;s.contextLines.splice(0,t),s.additionStart+=t,s.deletionStart+=t}return n==="trailing"&&s.contextLines.length>e&&(s.contextLines.length=e),s.contextLines.length>0&&(s.hunkLines.push(...s.contextLines),s.additionCount+=s.contextLines.length,s.deletionCount+=s.contextLines.length,s.contextLines.length=0),s}function ue(s,e){e.push(`@@ -${Re(s.deletionStart,s.deletionCount)} +${Re(s.additionStart,s.additionCount)} @@`),e.push(...s.hunkLines)}function Re(s,e){return e===1?`${s}`:`${s},${e}`}function vt(s){const e=ce.c(74),{branches:n,currentBranch:t,base:i,onSelect:a,mobile:h}=s,o=h===void 0?!1:h,{t:c}=se(),m=me(),l=o&&!m.enabled,[x,C]=F.useState(!1),[w,b]=F.useState("");let g;e[0]!==i||e[1]!==c?(g=i?Be(i):c("gitView.pr.field.baseBranch"),e[0]=i,e[1]=c,e[2]=g):g=e[2];const u=g;let j;e[3]===Symbol.for("react.memo_cache_sentinel")?(j=E=>{C(E),E||b("")},e[3]=j):j=e[3];const S=j;let d;e[4]!==o?(d=de(he({size:o?"default":"sm"}),"min-w-0 max-w-48"),e[4]=o,e[5]=d):d=e[5];const k=o||void 0;let y;e[6]!==c?(y=c("gitView.pr.field.baseBranch"),e[6]=c,e[7]=y):y=e[7];const M=l?"dialog":void 0,L=l?x:void 0,H=!t;let P;e[8]!==l?(P=l?()=>S(!0):void 0,e[8]=l,e[9]=P):P=e[9];let B;e[10]===Symbol.for("react.memo_cache_sentinel")?(B=r.jsx(Y,{name:"git-branch",className:"size-3.5"}),e[10]=B):B=e[10];let O;e[11]!==u?(O=r.jsx("span",{className:"truncate",children:u}),e[11]=u,e[12]=O):O=e[12];let v;e[13]===Symbol.for("react.memo_cache_sentinel")?(v=r.jsx(Y,{name:"arrow-down-s",className:"size-3.5"}),e[13]=v):v=e[13];let f;e[14]!==u||e[15]!==P||e[16]!==O||e[17]!==d||e[18]!==k||e[19]!==y||e[20]!==M||e[21]!==L||e[22]!==H?(f=r.jsxs(te,{variant:"outline",className:d,"data-mobile-comparison-trigger":k,"aria-label":y,"aria-haspopup":M,"aria-expanded":L,title:u,disabled:H,onClick:P,children:[B,O,v]}),e[14]=u,e[15]=P,e[16]=O,e[17]=d,e[18]=k,e[19]=y,e[20]=M,e[21]=L,e[22]=H,e[23]=f):f=e[23];const K=f,V=o?"[&_[data-slot=command-input-wrapper]]:h-11":void 0,I=!l,$=o?"h-11":void 0;let T;e[24]!==c?(T=c("gitView.branch.searchPlaceholder"),e[24]=c,e[25]=T):T=e[25];let z;e[26]!==c?(z=c("gitView.branch.searchPlaceholder"),e[26]=c,e[27]=z):z=e[27];let A;e[28]!==w||e[29]!==I||e[30]!==$||e[31]!==T||e[32]!==z?(A=r.jsx(ge,{autoFocus:I,className:$,value:w,onValueChange:b,placeholder:T,"aria-label":z}),e[28]=w,e[29]=I,e[30]=$,e[31]=T,e[32]=z,e[33]=A):A=e[33];const R=o?"max-h-[min(45dvh,24rem)]":void 0;let q;e[34]!==c?(q=c("gitView.branch.empty"),e[34]=c,e[35]=q):q=e[35];let W;e[36]!==q?(W=r.jsx(xe,{children:q}),e[36]=q,e[37]=W):W=e[37];let p;e[38]!==i||e[39]!==n||e[40]!==t||e[41]!==o||e[42]!==a||e[43]!==x||e[44]!==w?(p=x&&Me([...new Set(n)].filter(E=>E!==t).sort().map(Xe),w,Ue).map(E=>r.jsxs(pe,{value:E.ref,className:o?"min-h-11":void 0,onSelect:()=>{a(E.ref),S(!1)},children:[r.jsx("span",{className:"min-w-0 flex-1 truncate",title:E.ref,children:E.label}),(E.ref===i||E.label===i)&&r.jsx(Y,{name:"check",className:"size-3.5"})]},E.ref)),e[38]=i,e[39]=n,e[40]=t,e[41]=o,e[42]=a,e[43]=x,e[44]=w,e[45]=p):p=e[45];let D;e[46]!==p?(D=r.jsx(we,{children:p}),e[46]=p,e[47]=D):D=e[47];let _;e[48]!==R||e[49]!==W||e[50]!==D?(_=r.jsxs(Ce,{className:R,children:[W,D]}),e[48]=R,e[49]=W,e[50]=D,e[51]=_):_=e[51];let J;e[52]!==V||e[53]!==A||e[54]!==_?(J=r.jsxs(ve,{shouldFilter:!1,className:V,onKeyDown:Ye,children:[A,_]}),e[52]=V,e[53]=A,e[54]=_,e[55]=J):J=e[55];const Q=J;if(l){let E;e[56]!==c?(E=c("gitView.pr.field.baseBranch"),e[56]=c,e[57]=E):E=e[57];let ne;e[58]===Symbol.for("react.memo_cache_sentinel")?(ne=()=>S(!1),e[58]=ne):ne=e[58];let ee;e[59]!==x||e[60]!==Q||e[61]!==E?(ee=r.jsx(ye,{open:x,title:E,onClose:ne,children:Q}),e[59]=x,e[60]=Q,e[61]=E,e[62]=ee):ee=e[62];let ie;return e[63]!==ee||e[64]!==K?(ie=r.jsxs(r.Fragment,{children:[K,ee]}),e[63]=ee,e[64]=K,e[65]=ie):ie=e[65],ie}let N;e[66]!==K?(N=r.jsx(Ne,{asChild:!0,children:K}),e[66]=K,e[67]=N):N=e[67];let G;e[68]!==Q?(G=r.jsx(be,{align:"start",className:"w-72 max-w-[calc(100vw-2rem)] p-0",children:Q}),e[68]=Q,e[69]=G):G=e[69];let U;return e[70]!==x||e[71]!==N||e[72]!==G?(U=r.jsxs(je,{open:x,onOpenChange:S,children:[N,G]}),e[70]=x,e[71]=N,e[72]=G,e[73]=U):U=e[73],U}function Ue(s){return[s.label]}function Xe(s){return{ref:s.startsWith("remotes/")?`refs/${s}`:`refs/heads/${s}`,label:Be(s)}}function Ye(s){s.key!=="Escape"&&s.stopPropagation()}function yt(s){const e=ce.c(77),{commits:n,selectedHash:t,loading:i,error:a,onSelect:h,onRefresh:o,mobile:c}=s,m=c===void 0?!1:c,{t:l}=se(),x=me(),C=m&&!x.enabled,w=_e(tt),[b,g]=F.useState(!1),[u,j]=F.useState("");let S;e[0]!==i||e[1]!==o?(S=N=>{g(N),N?i||o():j("")},e[0]=i,e[1]=o,e[2]=S):S=e[2];const d=S;let k;e[3]!==m?(k=de(he({size:m?"default":"sm"}),"min-w-0 max-w-48"),e[3]=m,e[4]=k):k=e[4];const y=m||void 0;let M;e[5]!==d||e[6]!==C?(M=C?()=>d(!0):void 0,e[5]=d,e[6]=C,e[7]=M):M=e[7];const L=C?"dialog":void 0,H=C?b:void 0;let P;e[8]!==l?(P=l("commitComparison.select"),e[8]=l,e[9]=P):P=e[9];let B;e[10]!==t||e[11]!==l?(B=t??l("commitComparison.select"),e[10]=t,e[11]=l,e[12]=B):B=e[12];let O;e[13]===Symbol.for("react.memo_cache_sentinel")?(O=r.jsx(Y,{name:"git-commit",className:"size-3.5"}),e[13]=O):O=e[13];let v;e[14]!==t||e[15]!==l?(v=t?.slice(0,8)??l("commitComparison.select"),e[14]=t,e[15]=l,e[16]=v):v=e[16];let f;e[17]!==v?(f=r.jsx("span",{className:"truncate",children:v}),e[17]=v,e[18]=f):f=e[18];let K;e[19]===Symbol.for("react.memo_cache_sentinel")?(K=r.jsx(Y,{name:"arrow-down-s",className:"size-3.5"}),e[19]=K):K=e[19];let V;e[20]!==f||e[21]!==k||e[22]!==y||e[23]!==M||e[24]!==L||e[25]!==H||e[26]!==P||e[27]!==B?(V=r.jsxs(te,{variant:"outline",className:k,"data-mobile-comparison-trigger":y,onClick:M,"aria-haspopup":L,"aria-expanded":H,"aria-label":P,title:B,children:[O,f,K]}),e[20]=f,e[21]=k,e[22]=y,e[23]=M,e[24]=L,e[25]=H,e[26]=P,e[27]=B,e[28]=V):V=e[28];const I=V,$=m?"[&_[data-slot=command-input-wrapper]]:h-11":void 0,T=!C,z=m?"h-11":void 0;let A;e[29]!==l?(A=l("commitComparison.search"),e[29]=l,e[30]=A):A=e[30];let R;e[31]!==l?(R=l("commitComparison.search"),e[31]=l,e[32]=R):R=e[32];let q;e[33]!==u||e[34]!==T||e[35]!==z||e[36]!==A||e[37]!==R?(q=r.jsx(ge,{autoFocus:T,className:z,value:u,onValueChange:j,placeholder:A,"aria-label":R}),e[33]=u,e[34]=T,e[35]=z,e[36]=A,e[37]=R,e[38]=q):q=e[38];let W;e[39]!==d||e[40]!==n||e[41]!==a||e[42]!==i||e[43]!==m||e[44]!==o||e[45]!==h||e[46]!==b||e[47]!==u||e[48]!==t||e[49]!==l||e[50]!==w?(W=i?r.jsxs("div",{className:"flex items-center justify-center gap-2 p-4 typography-meta text-muted-foreground",children:[r.jsx(Y,{name:"loader-4",className:"size-4 animate-spin"}),l("diffView.state.loadingChanges")]}):a?r.jsxs("div",{className:"flex flex-col items-center gap-2 p-4 typography-meta text-muted-foreground",children:[r.jsx("span",{children:l("commitComparison.loadError")}),r.jsx("span",{className:"max-w-full break-words",children:a}),r.jsx(te,{variant:"outline",size:m?"lg":"sm",onClick:o,children:l("diffView.actions.retry")})]}):r.jsxs(Ce,{className:m?"max-h-[min(45dvh,24rem)]":void 0,children:[r.jsx(xe,{children:l("commitComparison.noCommits")}),r.jsx(we,{children:b&&Me(n,u,Ze).map(N=>r.jsxs(pe,{value:N.hash,className:m?"min-h-11":void 0,onSelect:()=>{h(N),d(!1)},children:[r.jsxs("div",{className:"min-w-0 flex-1",children:[r.jsx("div",{className:"truncate typography-ui-label font-semibold",title:N.message,children:N.message}),r.jsxs("div",{className:"flex min-w-0 gap-1 typography-meta text-muted-foreground",children:[r.jsxs("span",{className:"min-w-0 truncate",children:[N.author_name," · ",Number.isNaN(new Date(N.date).getTime())?N.date:De(new Date(N.date),w,{year:"numeric",month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})]}),r.jsxs("span",{className:"shrink-0",children:["· ",N.hash.slice(0,8)]})]})]}),N.hash===t&&r.jsx(Y,{name:"check",className:"size-3.5"})]},N.hash))})]}),e[39]=d,e[40]=n,e[41]=a,e[42]=i,e[43]=m,e[44]=o,e[45]=h,e[46]=b,e[47]=u,e[48]=t,e[49]=l,e[50]=w,e[51]=W):W=e[51];let p;e[52]!==$||e[53]!==q||e[54]!==W?(p=r.jsxs(ve,{shouldFilter:!1,className:$,onKeyDown:et,children:[q,W]}),e[52]=$,e[53]=q,e[54]=W,e[55]=p):p=e[55];const D=p;if(C){let N;e[56]!==l?(N=l("commitComparison.select"),e[56]=l,e[57]=N):N=e[57];let G;e[58]!==d?(G=()=>d(!1),e[58]=d,e[59]=G):G=e[59];let U;e[60]!==b||e[61]!==D||e[62]!==N||e[63]!==G?(U=r.jsx(ye,{open:b,title:N,onClose:G,children:D}),e[60]=b,e[61]=D,e[62]=N,e[63]=G,e[64]=U):U=e[64];let E;return e[65]!==U||e[66]!==I?(E=r.jsxs(r.Fragment,{children:[I,U]}),e[65]=U,e[66]=I,e[67]=E):E=e[67],E}let _;e[68]!==I?(_=r.jsx(Ne,{asChild:!0,children:I}),e[68]=I,e[69]=_):_=e[69];let J;e[70]!==D?(J=r.jsx(be,{align:"start",className:"w-[32rem] max-w-[calc(100vw-2rem)] p-0",children:D}),e[70]=D,e[71]=J):J=e[71];let Q;return e[72]!==d||e[73]!==b||e[74]!==_||e[75]!==J?(Q=r.jsxs(je,{open:b,onOpenChange:d,children:[_,J]}),e[72]=d,e[73]=b,e[74]=_,e[75]=J,e[76]=Q):Q=e[76],Q}function Ze(s){return[s.message,s.author_name,s.hash]}function et(s){s.key!=="Escape"&&s.stopPropagation()}function tt(s){return s.timeFormatPreference}const st="openchamber.git-base-branch",nt=100,ae=(s,e)=>JSON.stringify([X(),s,e]),it=Se()(Ge((s,e)=>({overrides:{},getOverride:(n,t)=>!n||!t?null:e().overrides[ae(n,t)]??null,setOverride:(n,t,i)=>{!n||!t||!i||s(a=>{const h=ae(n,t),o=Object.entries({...a.overrides,[h]:i});for(;o.length>nt;)o.shift();return{overrides:Object.fromEntries(o)}})},clearOverride:(n,t)=>{!n||!t||s(i=>{const a=ae(n,t);if(!(a in i.overrides))return i;const h={...i.overrides};return delete h[a],{overrides:h}})}}),{name:st,storage:ze(),partialize:s=>({overrides:s.overrides})}));function Nt(s,e,n){const t=ce.c(32),i=le(ot);let a;t[0]!==s||t[1]!==n?(a=y=>n&&s?y.directories.get(s)?.lastStatusFetch??0:0,t[0]=s,t[1]=n,t[2]=a):a=t[2];const h=le(a);let o;t[3]!==e||t[4]!==s||t[5]!==i?(o=JSON.stringify([i,s,e]),t[3]=e,t[4]=s,t[5]=i,t[6]=o):o=t[6];const c=o;let m;t[7]!==e||t[8]!==s?(m=s&&e?ae(s,e):null,t[7]=e,t[8]=s,t[9]=m):m=t[9];const l=m;let x;t[10]!==l?(x=y=>l?y.overrides[l]??null:null,t[10]=l,t[11]=x):x=t[11];const C=it(x),[w,b]=F.useState(null);let g;t[12]!==e||t[13]!==s||t[14]!==n||t[15]!==c||t[16]!==C?(g=()=>{if(!n||!s||!e||C)return;let y=!1;const M=X();return Ae(s,e).then(L=>{const{base:H}=L;y||X()!==M||b(P=>P?.key===c&&P.base===H?P:{key:c,base:H})}).catch(()=>{y||X()!==M||b(L=>L?.key===c?L:{key:c,base:null})}),()=>{y=!0}},t[12]=e,t[13]=s,t[14]=n,t[15]=c,t[16]=C,t[17]=g):g=t[17];let u;t[18]!==e||t[19]!==s||t[20]!==n||t[21]!==c||t[22]!==C||t[23]!==h?(u=[e,s,n,c,C,h],t[18]=e,t[19]=s,t[20]=n,t[21]=c,t[22]=C,t[23]=h,t[24]=u):u=t[24],F.useEffect(g,u);const j=C??(w?.key===c?w.base:null),S=!!C||w?.key===c;let d;t[25]!==i||t[26]!==h?(d=JSON.stringify([i,h]),t[25]=i,t[26]=h,t[27]=d):d=t[27];let k;return t[28]!==j||t[29]!==S||t[30]!==d?(k={base:j,resolved:S,revision:d},t[28]=j,t[29]=S,t[30]=d,t[31]=k):k=t[31],k}function ot(s){return s.runtimeKey}const rt=(s,e,n=X())=>JSON.stringify([n,s,e]),fe=Se(s=>({selections:new Map,select:(e,n)=>s(t=>{const i=new Map(t.selections);if(i.delete(e),i.set(e,n),i.size>100){const a=i.keys().next().value;a!==void 0&&i.delete(a)}return{selections:i}})})),at=[];function bt(s,e,n,t){const{git:i}=He(),{t:a}=se(),h=le(u=>u.runtimeKey),o=rt(s??"",e,h),c=fe(u=>u.selections.get(o)??null),m=fe(u=>u.select),[l,x]=F.useState(null),C=F.useRef(0),w=F.useRef(t);w.current=t;const b=F.useCallback(async()=>{if(!s||!n)return;const u=++C.current,j=X();x({key:o,status:"loading"});try{const S=await i.getGitLog(s,{maxCount:50,to:e?`refs/heads/${e}`:"HEAD"});if(C.current!==u||X()!==j)return;const d=S.all.slice(0,50);if(x({key:o,status:"ready",commits:d}),!fe.getState().selections.has(o)){const k=w.current?d.find(y=>y.hash===w.current):d[0];k&&m(o,k)}}catch(S){if(C.current!==u||X()!==j)return;x({key:o,status:"error",message:S instanceof Error?S.message:a("commitComparison.loadError")})}},[e,s,n,i,o,m,a]);F.useEffect(()=>(b(),()=>{C.current+=1}),[b]);const g=l?.key===o?l:null;return{selectedCommit:c,commits:g?.status==="ready"?g.commits:at,loading:n&&(!g||g.status==="loading"),error:g?.status==="error"?g.message:null,refresh:b,select:u=>m(o,u)}}const Le=(s,e,n)=>{const t=new Map(s.selections);if(t.delete(e),t.set(e,n),t.size>100){const i=t.keys().next().value;i!==void 0&&t.delete(i)}return{selections:t}},re=Se(s=>({selections:new Map,select:(e,n)=>s(t=>Le(t,e,{source:n,handoff:t.selections.get(e)?.handoff??null})),acceptHandoff:(e,n)=>s(t=>t.selections.get(e)?.handoff===n?t:Le(t,e,{source:n,handoff:n}))})),lt=[];function jt(s,e,n,t){const{github:i}=He(),{t:a}=se(),h=le(f=>f.runtimeKey),o=JSON.stringify([h,s,e]),c=re(f=>f.selections.get(o)??null),m=c?.source??null,l=re(f=>f.select),x=re(f=>f.acceptHandoff),C=t&&c?.handoff!==t?t:null,[w,b]=F.useState(""),g=Ke(w,350).trim(),u=JSON.stringify([o,g]),[j,S]=F.useState(null),d=F.useRef(j);d.current=j;const[k,y]=F.useState(!1),M=F.useRef(0),L=F.useRef({key:u,enabled:n});L.current={key:u,enabled:n};const H=Pe(f=>f.status?.connected??!1),P=Pe(f=>f.hasChecked),B=ke(f=>s&&e?Te(f.entries,s,e):null);F.useEffect(()=>{if(!n||!s||!e||m||!P||!H)return;const f=ke.getState(),K=qe(s,e);f.ensureEntry(K),f.setParams(K,{directory:s,branch:e,remoteName:null,canShow:!0,github:i,githubAuthChecked:P,githubConnected:H}),f.refreshTargets([{directory:s,branch:e,remoteName:null}])},[e,s,n,i,P,H,m]),F.useEffect(()=>{!n||!H||!B?.pr||!B.repo||re.getState().selections.has(o)||l(o,{kind:"pr",number:B.pr.number,sourceRepo:{owner:B.repo.owner,repo:B.repo.repo}})},[B,n,H,l,o]),F.useEffect(()=>{t&&x(o,t)},[x,t,o]);const O=F.useCallback(async f=>{if(!s||!n||L.current.key!==u||!L.current.enabled)return;const K=++M.current,V=X();f?y(!0):(y(!1),S({key:u,status:"loading"}));try{if(!i)throw new Error(a("session.githubPrPicker.error.runtimeUnavailable"));const I=f?f.page+1:1,$=await i.prsList(s,{page:I,query:g||void 0});if(!$.connected)throw new Error(a("session.githubPrPicker.empty.notConnected"));if(!$.prs||!$.repo)throw new Error(a("session.githubPrPicker.error.repoNotResolvable"));if(M.current!==K||X()!==V||L.current.key!==u||!L.current.enabled)return;const T=$.repo,z=$.prs.map(R=>({...R,sourceRepo:R.sourceRepo??{owner:T.owner,repo:T.repo,source:"repository"}})),A=new Map([...f?.prs??[],...z].map(R=>[`${R.sourceRepo?.owner}/${R.sourceRepo?.repo}#${R.number}`,R]));S({key:u,status:"ready",prs:[...A.values()],page:I,hasMore:!!$.hasMore,error:null})}catch(I){if(M.current===K&&X()===V&&L.current.key===u&&L.current.enabled){const $=I instanceof Error?I.message:a("session.githubPrPicker.toast.loadMoreFailed");S(f?{...f,error:$}:{key:u,status:"error",message:$})}}finally{M.current===K&&y(!1)}},[s,n,i,u,g,a]);F.useEffect(()=>((d.current?.key!==u||d.current.status!=="ready")&&O(),()=>{M.current+=1}),[u,O]);const v=j?.key===u?j:null;return{enabled:n,selectedSource:C??m,prs:v?.status==="ready"?v.prs:lt,query:w,setQuery:b,loading:n&&(!v||v.status==="loading"||g!==w.trim()),loadingMore:k,hasMore:v?.status==="ready"&&v.hasMore,error:v?.status==="error"?v.message:v?.status==="ready"?v.error:null,refresh:()=>O(),loadMore:()=>v?.status==="ready"&&v.hasMore&&!k?O(v):Promise.resolve(),select:f=>{f.sourceRepo&&l(o,{kind:"pr",number:f.number,sourceRepo:{owner:f.sourceRepo.owner,repo:f.sourceRepo.repo}})}}}function St(s){const e=ce.c(63),{comparison:n,mobile:t}=s,i=t===void 0?!1:t,{t:a}=se(),h=me(),o=i&&!h.enabled,[c,m]=F.useState(!1);let l,x;e[0]!==n.enabled?(l=()=>{n.enabled||m(!1)},x=[n.enabled],e[0]=n.enabled,e[1]=l,e[2]=x):(l=e[1],x=e[2]),F.useEffect(l,x);let C;e[3]!==a?(C=a("pullRequestComparison.select"),e[3]=a,e[4]=C):C=e[4];const w=C;let b;e[5]!==n?(b=p=>{m(p),p&&!n.loading&&n.refresh(),p||n.setQuery("")},e[5]=n,e[6]=b):b=e[6];const g=b,u=n.selectedSource;let j;e[7]!==i?(j=de(he({size:i?"default":"sm"}),"min-w-0 max-w-48"),e[7]=i,e[8]=j):j=e[8];const S=i||void 0;let d;e[9]!==g||e[10]!==o?(d=o?()=>g(!0):void 0,e[9]=g,e[10]=o,e[11]=d):d=e[11];const k=o?"dialog":void 0,y=o?c:void 0,M=u?.sourceRepo?`${u.sourceRepo.owner}/${u.sourceRepo.repo} #${u.number}`:w,L=u?`#${u.number}`:w;let H;e[12]!==L?(H=r.jsx("span",{className:"truncate",children:L}),e[12]=L,e[13]=H):H=e[13];let P;e[14]===Symbol.for("react.memo_cache_sentinel")?(P=r.jsx(Y,{name:"arrow-down-s",className:"size-3.5"}),e[14]=P):P=e[14];let B;e[15]!==w||e[16]!==y||e[17]!==M||e[18]!==H||e[19]!==j||e[20]!==S||e[21]!==d||e[22]!==k?(B=r.jsxs(te,{variant:"outline",className:j,"data-mobile-comparison-trigger":S,onClick:d,"aria-haspopup":k,"aria-expanded":y,"aria-label":w,title:M,children:[H,P]}),e[15]=w,e[16]=y,e[17]=M,e[18]=H,e[19]=j,e[20]=S,e[21]=d,e[22]=k,e[23]=B):B=e[23];const O=B,v=!o,f=n.query,K=n.setQuery;let V;e[24]!==a?(V=a("session.githubPrPicker.searchPlaceholder"),e[24]=a,e[25]=V):V=e[25];let I;e[26]!==a?(I=a("session.githubPrPicker.searchPlaceholder"),e[26]=a,e[27]=I):I=e[27];let $;e[28]!==n.query||e[29]!==n.setQuery||e[30]!==v||e[31]!==V||e[32]!==I?($=r.jsx(ge,{autoFocus:v,value:f,onValueChange:K,placeholder:V,"aria-label":I}),e[28]=n.query,e[29]=n.setQuery,e[30]=v,e[31]=V,e[32]=I,e[33]=$):$=e[33];let T;e[34]!==g||e[35]!==n||e[36]!==i||e[37]!==c||e[38]!==u||e[39]!==a?(T=n.loading?r.jsxs("div",{className:"flex items-center gap-2 p-4 typography-meta text-muted-foreground",children:[r.jsx(Y,{name:"loader-4",className:"size-4 animate-spin"}),a("session.githubPrPicker.loading.pullRequests")]}):n.error&&n.prs.length===0?r.jsxs("div",{className:"flex flex-col items-center gap-2 p-4 typography-meta text-muted-foreground",children:[r.jsx("span",{children:n.error}),r.jsx(te,{variant:"outline",size:"sm",onClick:()=>{n.refresh()},children:a("diffView.actions.retry")})]}):r.jsxs(Ce,{className:i?"max-h-[min(45dvh,24rem)]":void 0,children:[r.jsx(xe,{children:a("session.githubPrPicker.empty.noPullRequestsFound")}),r.jsx(we,{children:c&&n.prs.map(p=>{const D=`${p.sourceRepo?.owner}/${p.sourceRepo?.repo}#${p.number}`;return r.jsxs(pe,{value:D,className:i?"min-h-11":void 0,onSelect:()=>{n.select(p),g(!1)},children:[r.jsxs("div",{className:"min-w-0 flex-1",children:[r.jsxs("div",{className:"truncate typography-ui-label",title:p.title,children:["#",p.number," ",p.title]}),r.jsxs("div",{className:"truncate typography-meta text-muted-foreground",children:[p.sourceRepo?.owner,"/",p.sourceRepo?.repo," · ",p.head," → ",p.base]})]}),u?.number===p.number&&u.sourceRepo?.owner===p.sourceRepo?.owner&&u.sourceRepo?.repo===p.sourceRepo?.repo&&r.jsx(Y,{name:"check",className:"size-3.5"})]},D)})}),n.error&&r.jsx("p",{className:"px-3 py-2 typography-meta text-muted-foreground",children:n.error}),n.hasMore&&r.jsx(te,{variant:"ghost",size:"sm",disabled:n.loadingMore,onClick:()=>{n.loadMore()},children:n.error?a("diffView.actions.retry"):a("session.githubPrPicker.actions.loadMore")})]}),e[34]=g,e[35]=n,e[36]=i,e[37]=c,e[38]=u,e[39]=a,e[40]=T):T=e[40];let z;e[41]!==$||e[42]!==T?(z=r.jsxs(ve,{shouldFilter:!1,onKeyDown:ct,children:[$,T]}),e[41]=$,e[42]=T,e[43]=z):z=e[43];const A=z;if(o){let p;e[44]!==g?(p=()=>g(!1),e[44]=g,e[45]=p):p=e[45];let D;e[46]!==w||e[47]!==c||e[48]!==A||e[49]!==p?(D=r.jsx(ye,{open:c,title:w,onClose:p,children:A}),e[46]=w,e[47]=c,e[48]=A,e[49]=p,e[50]=D):D=e[50];let _;return e[51]!==D||e[52]!==O?(_=r.jsxs(r.Fragment,{children:[O,D]}),e[51]=D,e[52]=O,e[53]=_):_=e[53],_}let R;e[54]!==O?(R=r.jsx(Ne,{asChild:!0,children:O}),e[54]=O,e[55]=R):R=e[55];let q;e[56]!==A?(q=r.jsx(be,{align:"start",className:"w-[32rem] max-w-[calc(100vw-2rem)] p-0",children:A}),e[56]=A,e[57]=q):q=e[57];let W;return e[58]!==g||e[59]!==c||e[60]!==R||e[61]!==q?(W=r.jsxs(je,{open:c,onOpenChange:g,children:[R,q]}),e[58]=g,e[59]=c,e[60]=R,e[61]=q,e[62]=W):W=e[62],W}function ct(s){s.key!=="Escape"&&s.stopPropagation()}const ut=64,ft=3,Z=new Map,Pt=s=>/^Binary files .+ differ$/m.test(s)||/^GIT binary patch$/m.test(s),$e=s=>{const e=s.search(/^@@\s/m);if(e<0)return null;const n=s.slice(0,e);return/^index (?:[a-f0-9]{40}|[a-f0-9]{64})\.\.(?:[a-f0-9]{40}|[a-f0-9]{64})(?: [0-7]+)?$/m.test(n)?n:null},kt=(s,e)=>{const n=$e(s);return n!==null&&n===$e(e)},Rt=(s,e,n=ft)=>{const t=`${s}\0${n}\0${e}`,i=Z.get(t);if(i)return Z.delete(t),Z.set(t,i),i;const a=dt(e),h=a?Ve(Qe(e,n),{oldFile:{name:s,contents:a.before},newFile:{name:s,contents:a.after}})??Fe(s):We(mt(s,e))[0]?.files[0]??Fe(s);for(Z.set(t,h);Z.size>ut;){const o=Z.keys().next().value;if(!o)break;Z.delete(o)}return h},mt=(s,e)=>!e.trim()||e.startsWith("diff --git ")||/^--- [^\n]*\r?\n\+\+\+ /m.test(e)?e:`Index: ${s}
|
|
5
|
+
`:i}function oe(s,e,n){if(n==="leading"&&s.contextLines.length>e){const t=s.contextLines.length-e;s.contextLines.splice(0,t),s.additionStart+=t,s.deletionStart+=t}return n==="trailing"&&s.contextLines.length>e&&(s.contextLines.length=e),s.contextLines.length>0&&(s.hunkLines.push(...s.contextLines),s.additionCount+=s.contextLines.length,s.deletionCount+=s.contextLines.length,s.contextLines.length=0),s}function ue(s,e){e.push(`@@ -${Re(s.deletionStart,s.deletionCount)} +${Re(s.additionStart,s.additionCount)} @@`),e.push(...s.hunkLines)}function Re(s,e){return e===1?`${s}`:`${s},${e}`}function yt(s){const e=ce.c(74),{branches:n,currentBranch:t,base:i,onSelect:a,mobile:h}=s,o=h===void 0?!1:h,{t:c}=se(),m=me(),l=o&&!m.enabled,[x,C]=F.useState(!1),[w,j]=F.useState("");let g;e[0]!==i||e[1]!==c?(g=i?Be(i):c("gitView.pr.field.baseBranch"),e[0]=i,e[1]=c,e[2]=g):g=e[2];const u=g;let b;e[3]===Symbol.for("react.memo_cache_sentinel")?(b=E=>{C(E),E||j("")},e[3]=b):b=e[3];const S=b;let d;e[4]!==o?(d=de(he({size:o?"default":"sm"}),"min-w-0 max-w-48"),e[4]=o,e[5]=d):d=e[5];const k=o||void 0;let N;e[6]!==c?(N=c("gitView.pr.field.baseBranch"),e[6]=c,e[7]=N):N=e[7];const M=l?"dialog":void 0,L=l?x:void 0,H=!t;let P;e[8]!==l?(P=l?()=>S(!0):void 0,e[8]=l,e[9]=P):P=e[9];let B;e[10]===Symbol.for("react.memo_cache_sentinel")?(B=r.jsx(Y,{name:"git-branch",className:"size-3.5"}),e[10]=B):B=e[10];let O;e[11]!==u?(O=r.jsx("span",{className:"truncate",children:u}),e[11]=u,e[12]=O):O=e[12];let y;e[13]===Symbol.for("react.memo_cache_sentinel")?(y=r.jsx(Y,{name:"arrow-down-s",className:"size-3.5"}),e[13]=y):y=e[13];let f;e[14]!==u||e[15]!==P||e[16]!==O||e[17]!==d||e[18]!==k||e[19]!==N||e[20]!==M||e[21]!==L||e[22]!==H?(f=r.jsxs(te,{variant:"outline",className:d,"data-mobile-comparison-trigger":k,"aria-label":N,"aria-haspopup":M,"aria-expanded":L,title:u,disabled:H,onClick:P,children:[B,O,y]}),e[14]=u,e[15]=P,e[16]=O,e[17]=d,e[18]=k,e[19]=N,e[20]=M,e[21]=L,e[22]=H,e[23]=f):f=e[23];const K=f,W=o?"[&_[data-slot=command-input-wrapper]]:h-11":void 0,I=!l,$=o?"h-11":void 0;let T;e[24]!==c?(T=c("gitView.branch.searchPlaceholder"),e[24]=c,e[25]=T):T=e[25];let z;e[26]!==c?(z=c("gitView.branch.searchPlaceholder"),e[26]=c,e[27]=z):z=e[27];let A;e[28]!==w||e[29]!==I||e[30]!==$||e[31]!==T||e[32]!==z?(A=r.jsx(ge,{autoFocus:I,className:$,value:w,onValueChange:j,placeholder:T,"aria-label":z}),e[28]=w,e[29]=I,e[30]=$,e[31]=T,e[32]=z,e[33]=A):A=e[33];const R=o?"max-h-[min(45dvh,24rem)]":void 0;let V;e[34]!==c?(V=c("gitView.branch.empty"),e[34]=c,e[35]=V):V=e[35];let _;e[36]!==V?(_=r.jsx(xe,{children:V}),e[36]=V,e[37]=_):_=e[37];let p;e[38]!==i||e[39]!==n||e[40]!==t||e[41]!==o||e[42]!==a||e[43]!==x||e[44]!==w?(p=x&&Me([...new Set(n)].filter(E=>E!==t).sort().map(Xe),w,Ue).map(E=>r.jsxs(pe,{value:E.ref,className:o?"min-h-11":void 0,onSelect:()=>{a(E.ref),S(!1)},children:[r.jsx("span",{className:"min-w-0 flex-1 truncate",title:E.ref,children:E.label}),(E.ref===i||E.label===i)&&r.jsx(Y,{name:"check",className:"size-3.5"})]},E.ref)),e[38]=i,e[39]=n,e[40]=t,e[41]=o,e[42]=a,e[43]=x,e[44]=w,e[45]=p):p=e[45];let D;e[46]!==p?(D=r.jsx(we,{children:p}),e[46]=p,e[47]=D):D=e[47];let q;e[48]!==R||e[49]!==_||e[50]!==D?(q=r.jsxs(Ce,{className:R,children:[_,D]}),e[48]=R,e[49]=_,e[50]=D,e[51]=q):q=e[51];let J;e[52]!==W||e[53]!==A||e[54]!==q?(J=r.jsxs(ye,{shouldFilter:!1,className:W,onKeyDown:Ye,children:[A,q]}),e[52]=W,e[53]=A,e[54]=q,e[55]=J):J=e[55];const Q=J;if(l){let E;e[56]!==c?(E=c("gitView.pr.field.baseBranch"),e[56]=c,e[57]=E):E=e[57];let ne;e[58]===Symbol.for("react.memo_cache_sentinel")?(ne=()=>S(!1),e[58]=ne):ne=e[58];let ee;e[59]!==x||e[60]!==Q||e[61]!==E?(ee=r.jsx(Ne,{open:x,title:E,onClose:ne,children:Q}),e[59]=x,e[60]=Q,e[61]=E,e[62]=ee):ee=e[62];let ie;return e[63]!==ee||e[64]!==K?(ie=r.jsxs(r.Fragment,{children:[K,ee]}),e[63]=ee,e[64]=K,e[65]=ie):ie=e[65],ie}let v;e[66]!==K?(v=r.jsx(ve,{asChild:!0,children:K}),e[66]=K,e[67]=v):v=e[67];let G;e[68]!==Q?(G=r.jsx(je,{align:"start",className:"w-72 max-w-[calc(100vw-2rem)] p-0",children:Q}),e[68]=Q,e[69]=G):G=e[69];let U;return e[70]!==x||e[71]!==v||e[72]!==G?(U=r.jsxs(be,{open:x,onOpenChange:S,children:[v,G]}),e[70]=x,e[71]=v,e[72]=G,e[73]=U):U=e[73],U}function Ue(s){return[s.label]}function Xe(s){return{ref:s.startsWith("remotes/")?`refs/${s}`:`refs/heads/${s}`,label:Be(s)}}function Ye(s){s.key!=="Escape"&&s.stopPropagation()}function Nt(s){const e=ce.c(77),{commits:n,selectedHash:t,loading:i,error:a,onSelect:h,onRefresh:o,mobile:c}=s,m=c===void 0?!1:c,{t:l}=se(),x=me(),C=m&&!x.enabled,w=qe(tt),[j,g]=F.useState(!1),[u,b]=F.useState("");let S;e[0]!==i||e[1]!==o?(S=v=>{g(v),v?i||o():b("")},e[0]=i,e[1]=o,e[2]=S):S=e[2];const d=S;let k;e[3]!==m?(k=de(he({size:m?"default":"sm"}),"min-w-0 max-w-48"),e[3]=m,e[4]=k):k=e[4];const N=m||void 0;let M;e[5]!==d||e[6]!==C?(M=C?()=>d(!0):void 0,e[5]=d,e[6]=C,e[7]=M):M=e[7];const L=C?"dialog":void 0,H=C?j:void 0;let P;e[8]!==l?(P=l("commitComparison.select"),e[8]=l,e[9]=P):P=e[9];let B;e[10]!==t||e[11]!==l?(B=t??l("commitComparison.select"),e[10]=t,e[11]=l,e[12]=B):B=e[12];let O;e[13]===Symbol.for("react.memo_cache_sentinel")?(O=r.jsx(Y,{name:"git-commit",className:"size-3.5"}),e[13]=O):O=e[13];let y;e[14]!==t||e[15]!==l?(y=t?.slice(0,8)??l("commitComparison.select"),e[14]=t,e[15]=l,e[16]=y):y=e[16];let f;e[17]!==y?(f=r.jsx("span",{className:"truncate",children:y}),e[17]=y,e[18]=f):f=e[18];let K;e[19]===Symbol.for("react.memo_cache_sentinel")?(K=r.jsx(Y,{name:"arrow-down-s",className:"size-3.5"}),e[19]=K):K=e[19];let W;e[20]!==f||e[21]!==k||e[22]!==N||e[23]!==M||e[24]!==L||e[25]!==H||e[26]!==P||e[27]!==B?(W=r.jsxs(te,{variant:"outline",className:k,"data-mobile-comparison-trigger":N,onClick:M,"aria-haspopup":L,"aria-expanded":H,"aria-label":P,title:B,children:[O,f,K]}),e[20]=f,e[21]=k,e[22]=N,e[23]=M,e[24]=L,e[25]=H,e[26]=P,e[27]=B,e[28]=W):W=e[28];const I=W,$=m?"[&_[data-slot=command-input-wrapper]]:h-11":void 0,T=!C,z=m?"h-11":void 0;let A;e[29]!==l?(A=l("commitComparison.search"),e[29]=l,e[30]=A):A=e[30];let R;e[31]!==l?(R=l("commitComparison.search"),e[31]=l,e[32]=R):R=e[32];let V;e[33]!==u||e[34]!==T||e[35]!==z||e[36]!==A||e[37]!==R?(V=r.jsx(ge,{autoFocus:T,className:z,value:u,onValueChange:b,placeholder:A,"aria-label":R}),e[33]=u,e[34]=T,e[35]=z,e[36]=A,e[37]=R,e[38]=V):V=e[38];let _;e[39]!==d||e[40]!==n||e[41]!==a||e[42]!==i||e[43]!==m||e[44]!==o||e[45]!==h||e[46]!==j||e[47]!==u||e[48]!==t||e[49]!==l||e[50]!==w?(_=i?r.jsxs("div",{className:"flex items-center justify-center gap-2 p-4 typography-meta text-muted-foreground",children:[r.jsx(Y,{name:"loader-4",className:"size-4 animate-spin"}),l("diffView.state.loadingChanges")]}):a?r.jsxs("div",{className:"flex flex-col items-center gap-2 p-4 typography-meta text-muted-foreground",children:[r.jsx("span",{children:l("commitComparison.loadError")}),r.jsx("span",{className:"max-w-full break-words",children:a}),r.jsx(te,{variant:"outline",size:m?"lg":"sm",onClick:o,children:l("diffView.actions.retry")})]}):r.jsxs(Ce,{className:m?"max-h-[min(45dvh,24rem)]":void 0,children:[r.jsx(xe,{children:l("commitComparison.noCommits")}),r.jsx(we,{children:j&&Me(n,u,Ze).map(v=>r.jsxs(pe,{value:v.hash,className:m?"min-h-11":void 0,onSelect:()=>{h(v),d(!1)},children:[r.jsxs("div",{className:"min-w-0 flex-1",children:[r.jsx("div",{className:"truncate typography-ui-label font-semibold",title:v.message,children:v.message}),r.jsxs("div",{className:"flex min-w-0 gap-1 typography-meta text-muted-foreground",children:[r.jsxs("span",{className:"min-w-0 truncate",children:[v.author_name," · ",Number.isNaN(new Date(v.date).getTime())?v.date:De(new Date(v.date),w,{year:"numeric",month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})]}),r.jsxs("span",{className:"shrink-0",children:["· ",v.hash.slice(0,8)]})]})]}),v.hash===t&&r.jsx(Y,{name:"check",className:"size-3.5"})]},v.hash))})]}),e[39]=d,e[40]=n,e[41]=a,e[42]=i,e[43]=m,e[44]=o,e[45]=h,e[46]=j,e[47]=u,e[48]=t,e[49]=l,e[50]=w,e[51]=_):_=e[51];let p;e[52]!==$||e[53]!==V||e[54]!==_?(p=r.jsxs(ye,{shouldFilter:!1,className:$,onKeyDown:et,children:[V,_]}),e[52]=$,e[53]=V,e[54]=_,e[55]=p):p=e[55];const D=p;if(C){let v;e[56]!==l?(v=l("commitComparison.select"),e[56]=l,e[57]=v):v=e[57];let G;e[58]!==d?(G=()=>d(!1),e[58]=d,e[59]=G):G=e[59];let U;e[60]!==j||e[61]!==D||e[62]!==v||e[63]!==G?(U=r.jsx(Ne,{open:j,title:v,onClose:G,children:D}),e[60]=j,e[61]=D,e[62]=v,e[63]=G,e[64]=U):U=e[64];let E;return e[65]!==U||e[66]!==I?(E=r.jsxs(r.Fragment,{children:[I,U]}),e[65]=U,e[66]=I,e[67]=E):E=e[67],E}let q;e[68]!==I?(q=r.jsx(ve,{asChild:!0,children:I}),e[68]=I,e[69]=q):q=e[69];let J;e[70]!==D?(J=r.jsx(je,{align:"start",className:"w-[32rem] max-w-[calc(100vw-2rem)] p-0",children:D}),e[70]=D,e[71]=J):J=e[71];let Q;return e[72]!==d||e[73]!==j||e[74]!==q||e[75]!==J?(Q=r.jsxs(be,{open:j,onOpenChange:d,children:[q,J]}),e[72]=d,e[73]=j,e[74]=q,e[75]=J,e[76]=Q):Q=e[76],Q}function Ze(s){return[s.message,s.author_name,s.hash]}function et(s){s.key!=="Escape"&&s.stopPropagation()}function tt(s){return s.timeFormatPreference}const st="openchamber.git-base-branch",nt=100,ae=(s,e)=>JSON.stringify([X(),s,e]),it=Se()(Ge((s,e)=>({overrides:{},getOverride:(n,t)=>!n||!t?null:e().overrides[ae(n,t)]??null,setOverride:(n,t,i)=>{!n||!t||!i||s(a=>{const h=ae(n,t),o=Object.entries({...a.overrides,[h]:i});for(;o.length>nt;)o.shift();return{overrides:Object.fromEntries(o)}})},clearOverride:(n,t)=>{!n||!t||s(i=>{const a=ae(n,t);if(!(a in i.overrides))return i;const h={...i.overrides};return delete h[a],{overrides:h}})}}),{name:st,storage:ze(),partialize:s=>({overrides:s.overrides})}));function vt(s,e,n){const t=ce.c(32),i=le(ot);let a;t[0]!==s||t[1]!==n?(a=N=>n&&s?N.directories.get(s)?.lastStatusFetch??0:0,t[0]=s,t[1]=n,t[2]=a):a=t[2];const h=le(a);let o;t[3]!==e||t[4]!==s||t[5]!==i?(o=JSON.stringify([i,s,e]),t[3]=e,t[4]=s,t[5]=i,t[6]=o):o=t[6];const c=o;let m;t[7]!==e||t[8]!==s?(m=s&&e?ae(s,e):null,t[7]=e,t[8]=s,t[9]=m):m=t[9];const l=m;let x;t[10]!==l?(x=N=>l?N.overrides[l]??null:null,t[10]=l,t[11]=x):x=t[11];const C=it(x),[w,j]=F.useState(null);let g;t[12]!==e||t[13]!==s||t[14]!==n||t[15]!==c||t[16]!==C?(g=()=>{if(!n||!s||!e||C)return;let N=!1;const M=X();return Ae(s,e).then(L=>{const{base:H}=L;N||X()!==M||j(P=>P?.key===c&&P.base===H?P:{key:c,base:H})}).catch(()=>{N||X()!==M||j(L=>L?.key===c?L:{key:c,base:null})}),()=>{N=!0}},t[12]=e,t[13]=s,t[14]=n,t[15]=c,t[16]=C,t[17]=g):g=t[17];let u;t[18]!==e||t[19]!==s||t[20]!==n||t[21]!==c||t[22]!==C||t[23]!==h?(u=[e,s,n,c,C,h],t[18]=e,t[19]=s,t[20]=n,t[21]=c,t[22]=C,t[23]=h,t[24]=u):u=t[24],F.useEffect(g,u);const b=C??(w?.key===c?w.base:null),S=!!C||w?.key===c;let d;t[25]!==i||t[26]!==h?(d=JSON.stringify([i,h]),t[25]=i,t[26]=h,t[27]=d):d=t[27];let k;return t[28]!==b||t[29]!==S||t[30]!==d?(k={base:b,resolved:S,revision:d},t[28]=b,t[29]=S,t[30]=d,t[31]=k):k=t[31],k}function ot(s){return s.runtimeKey}const rt=(s,e,n=X())=>JSON.stringify([n,s,e]),fe=Se(s=>({selections:new Map,select:(e,n)=>s(t=>{const i=new Map(t.selections);if(i.delete(e),i.set(e,n),i.size>100){const a=i.keys().next().value;a!==void 0&&i.delete(a)}return{selections:i}})})),at=[];function jt(s,e,n,t){const{git:i}=He(),{t:a}=se(),h=le(u=>u.runtimeKey),o=rt(s??"",e,h),c=fe(u=>u.selections.get(o)??null),m=fe(u=>u.select),[l,x]=F.useState(null),C=F.useRef(0),w=F.useRef(t);w.current=t;const j=F.useCallback(async()=>{if(!s||!n)return;const u=++C.current,b=X();x({key:o,status:"loading"});try{const S=await i.getGitLog(s,{maxCount:50,to:e?`refs/heads/${e}`:"HEAD"});if(C.current!==u||X()!==b)return;const d=S.all.slice(0,50);if(x({key:o,status:"ready",commits:d}),!fe.getState().selections.has(o)){const k=w.current?d.find(N=>N.hash===w.current):d[0];k&&m(o,k)}}catch(S){if(C.current!==u||X()!==b)return;x({key:o,status:"error",message:S instanceof Error?S.message:a("commitComparison.loadError")})}},[e,s,n,i,o,m,a]);F.useEffect(()=>(j(),()=>{C.current+=1}),[j]);const g=l?.key===o?l:null;return{selectedCommit:c,commits:g?.status==="ready"?g.commits:at,loading:n&&(!g||g.status==="loading"),error:g?.status==="error"?g.message:null,refresh:j,select:u=>m(o,u)}}const Le=(s,e,n)=>{const t=new Map(s.selections);if(t.delete(e),t.set(e,n),t.size>100){const i=t.keys().next().value;i!==void 0&&t.delete(i)}return{selections:t}},re=Se(s=>({selections:new Map,select:(e,n)=>s(t=>Le(t,e,{source:n,handoff:t.selections.get(e)?.handoff??null})),acceptHandoff:(e,n)=>s(t=>t.selections.get(e)?.handoff===n?t:Le(t,e,{source:n,handoff:n}))})),lt=[];function bt(s,e,n,t){const{github:i}=He(),{t:a}=se(),h=le(f=>f.runtimeKey),o=JSON.stringify([h,s,e]),c=re(f=>f.selections.get(o)??null),m=c?.source??null,l=re(f=>f.select),x=re(f=>f.acceptHandoff),C=t&&c?.handoff!==t?t:null,[w,j]=F.useState(""),g=Ke(w,350).trim(),u=JSON.stringify([o,g]),[b,S]=F.useState(null),d=F.useRef(b);d.current=b;const[k,N]=F.useState(!1),M=F.useRef(0),L=F.useRef({key:u,enabled:n});L.current={key:u,enabled:n};const H=Pe(f=>f.status?.connected??!1),P=Pe(f=>f.hasChecked),B=ke(f=>s&&e?Te(f.entries,s,e):null);F.useEffect(()=>{if(!n||!s||!e||m||!P||!H)return;const f=ke.getState(),K=Ve(s,e);f.ensureEntry(K),f.setParams(K,{directory:s,branch:e,remoteName:null,canShow:!0,github:i,githubAuthChecked:P,githubConnected:H}),f.refreshTargets([{directory:s,branch:e,remoteName:null}])},[e,s,n,i,P,H,m]),F.useEffect(()=>{!n||!H||!B?.pr||!B.repo||re.getState().selections.has(o)||l(o,{kind:"pr",number:B.pr.number,sourceRepo:{owner:B.repo.owner,repo:B.repo.repo}})},[B,n,H,l,o]),F.useEffect(()=>{t&&x(o,t)},[x,t,o]);const O=F.useCallback(async f=>{if(!s||!n||L.current.key!==u||!L.current.enabled)return;const K=++M.current,W=X();f?N(!0):(N(!1),S({key:u,status:"loading"}));try{if(!i)throw new Error(a("session.githubPrPicker.error.runtimeUnavailable"));const I=f?f.page+1:1,$=await i.prsList(s,{page:I,query:g||void 0});if(!$.connected)throw new Error(a("session.githubPrPicker.empty.notConnected"));if(!$.prs||!$.repo)throw new Error(a("session.githubPrPicker.error.repoNotResolvable"));if(M.current!==K||X()!==W||L.current.key!==u||!L.current.enabled)return;const T=$.repo,z=$.prs.map(R=>({...R,sourceRepo:R.sourceRepo??{owner:T.owner,repo:T.repo,source:"repository"}})),A=new Map([...f?.prs??[],...z].map(R=>[`${R.sourceRepo?.owner}/${R.sourceRepo?.repo}#${R.number}`,R]));S({key:u,status:"ready",prs:[...A.values()],page:I,hasMore:!!$.hasMore,error:null})}catch(I){if(M.current===K&&X()===W&&L.current.key===u&&L.current.enabled){const $=I instanceof Error?I.message:a("session.githubPrPicker.toast.loadMoreFailed");S(f?{...f,error:$}:{key:u,status:"error",message:$})}}finally{M.current===K&&N(!1)}},[s,n,i,u,g,a]);F.useEffect(()=>((d.current?.key!==u||d.current.status!=="ready")&&O(),()=>{M.current+=1}),[u,O]);const y=b?.key===u?b:null;return{enabled:n,selectedSource:C??m,prs:y?.status==="ready"?y.prs:lt,query:w,setQuery:j,loading:n&&(!y||y.status==="loading"||g!==w.trim()),loadingMore:k,hasMore:y?.status==="ready"&&y.hasMore,error:y?.status==="error"?y.message:y?.status==="ready"?y.error:null,refresh:()=>O(),loadMore:()=>y?.status==="ready"&&y.hasMore&&!k?O(y):Promise.resolve(),select:f=>{f.sourceRepo&&l(o,{kind:"pr",number:f.number,sourceRepo:{owner:f.sourceRepo.owner,repo:f.sourceRepo.repo}})}}}function St(s){const e=ce.c(63),{comparison:n,mobile:t}=s,i=t===void 0?!1:t,{t:a}=se(),h=me(),o=i&&!h.enabled,[c,m]=F.useState(!1);let l,x;e[0]!==n.enabled?(l=()=>{n.enabled||m(!1)},x=[n.enabled],e[0]=n.enabled,e[1]=l,e[2]=x):(l=e[1],x=e[2]),F.useEffect(l,x);let C;e[3]!==a?(C=a("pullRequestComparison.select"),e[3]=a,e[4]=C):C=e[4];const w=C;let j;e[5]!==n?(j=p=>{m(p),p&&!n.loading&&n.refresh(),p||n.setQuery("")},e[5]=n,e[6]=j):j=e[6];const g=j,u=n.selectedSource;let b;e[7]!==i?(b=de(he({size:i?"default":"sm"}),"min-w-0 max-w-48"),e[7]=i,e[8]=b):b=e[8];const S=i||void 0;let d;e[9]!==g||e[10]!==o?(d=o?()=>g(!0):void 0,e[9]=g,e[10]=o,e[11]=d):d=e[11];const k=o?"dialog":void 0,N=o?c:void 0,M=u?.sourceRepo?`${u.sourceRepo.owner}/${u.sourceRepo.repo} #${u.number}`:w,L=u?`#${u.number}`:w;let H;e[12]!==L?(H=r.jsx("span",{className:"truncate",children:L}),e[12]=L,e[13]=H):H=e[13];let P;e[14]===Symbol.for("react.memo_cache_sentinel")?(P=r.jsx(Y,{name:"arrow-down-s",className:"size-3.5"}),e[14]=P):P=e[14];let B;e[15]!==w||e[16]!==N||e[17]!==M||e[18]!==H||e[19]!==b||e[20]!==S||e[21]!==d||e[22]!==k?(B=r.jsxs(te,{variant:"outline",className:b,"data-mobile-comparison-trigger":S,onClick:d,"aria-haspopup":k,"aria-expanded":N,"aria-label":w,title:M,children:[H,P]}),e[15]=w,e[16]=N,e[17]=M,e[18]=H,e[19]=b,e[20]=S,e[21]=d,e[22]=k,e[23]=B):B=e[23];const O=B,y=!o,f=n.query,K=n.setQuery;let W;e[24]!==a?(W=a("session.githubPrPicker.searchPlaceholder"),e[24]=a,e[25]=W):W=e[25];let I;e[26]!==a?(I=a("session.githubPrPicker.searchPlaceholder"),e[26]=a,e[27]=I):I=e[27];let $;e[28]!==n.query||e[29]!==n.setQuery||e[30]!==y||e[31]!==W||e[32]!==I?($=r.jsx(ge,{autoFocus:y,value:f,onValueChange:K,placeholder:W,"aria-label":I}),e[28]=n.query,e[29]=n.setQuery,e[30]=y,e[31]=W,e[32]=I,e[33]=$):$=e[33];let T;e[34]!==g||e[35]!==n||e[36]!==i||e[37]!==c||e[38]!==u||e[39]!==a?(T=n.loading?r.jsxs("div",{className:"flex items-center gap-2 p-4 typography-meta text-muted-foreground",children:[r.jsx(Y,{name:"loader-4",className:"size-4 animate-spin"}),a("session.githubPrPicker.loading.pullRequests")]}):n.error&&n.prs.length===0?r.jsxs("div",{className:"flex flex-col items-center gap-2 p-4 typography-meta text-muted-foreground",children:[r.jsx("span",{children:n.error}),r.jsx(te,{variant:"outline",size:"sm",onClick:()=>{n.refresh()},children:a("diffView.actions.retry")})]}):r.jsxs(Ce,{className:i?"max-h-[min(45dvh,24rem)]":void 0,children:[r.jsx(xe,{children:a("session.githubPrPicker.empty.noPullRequestsFound")}),r.jsx(we,{children:c&&n.prs.map(p=>{const D=`${p.sourceRepo?.owner}/${p.sourceRepo?.repo}#${p.number}`;return r.jsxs(pe,{value:D,className:i?"min-h-11":void 0,onSelect:()=>{n.select(p),g(!1)},children:[r.jsxs("div",{className:"min-w-0 flex-1",children:[r.jsxs("div",{className:"truncate typography-ui-label",title:p.title,children:["#",p.number," ",p.title]}),r.jsxs("div",{className:"truncate typography-meta text-muted-foreground",children:[p.sourceRepo?.owner,"/",p.sourceRepo?.repo," · ",p.head," → ",p.base]})]}),u?.number===p.number&&u.sourceRepo?.owner===p.sourceRepo?.owner&&u.sourceRepo?.repo===p.sourceRepo?.repo&&r.jsx(Y,{name:"check",className:"size-3.5"})]},D)})}),n.error&&r.jsx("p",{className:"px-3 py-2 typography-meta text-muted-foreground",children:n.error}),n.hasMore&&r.jsx(te,{variant:"ghost",size:"sm",disabled:n.loadingMore,onClick:()=>{n.loadMore()},children:n.error?a("diffView.actions.retry"):a("session.githubPrPicker.actions.loadMore")})]}),e[34]=g,e[35]=n,e[36]=i,e[37]=c,e[38]=u,e[39]=a,e[40]=T):T=e[40];let z;e[41]!==$||e[42]!==T?(z=r.jsxs(ye,{shouldFilter:!1,onKeyDown:ct,children:[$,T]}),e[41]=$,e[42]=T,e[43]=z):z=e[43];const A=z;if(o){let p;e[44]!==g?(p=()=>g(!1),e[44]=g,e[45]=p):p=e[45];let D;e[46]!==w||e[47]!==c||e[48]!==A||e[49]!==p?(D=r.jsx(Ne,{open:c,title:w,onClose:p,children:A}),e[46]=w,e[47]=c,e[48]=A,e[49]=p,e[50]=D):D=e[50];let q;return e[51]!==D||e[52]!==O?(q=r.jsxs(r.Fragment,{children:[O,D]}),e[51]=D,e[52]=O,e[53]=q):q=e[53],q}let R;e[54]!==O?(R=r.jsx(ve,{asChild:!0,children:O}),e[54]=O,e[55]=R):R=e[55];let V;e[56]!==A?(V=r.jsx(je,{align:"start",className:"w-[32rem] max-w-[calc(100vw-2rem)] p-0",children:A}),e[56]=A,e[57]=V):V=e[57];let _;return e[58]!==g||e[59]!==c||e[60]!==R||e[61]!==V?(_=r.jsxs(be,{open:c,onOpenChange:g,children:[R,V]}),e[58]=g,e[59]=c,e[60]=R,e[61]=V,e[62]=_):_=e[62],_}function ct(s){s.key!=="Escape"&&s.stopPropagation()}const ut=64,ft=3,Z=new Map,Pt=s=>/^Binary files .+ differ$/m.test(s)||/^GIT binary patch$/m.test(s),$e=s=>{const e=s.search(/^@@\s/m);if(e<0)return null;const n=s.slice(0,e);return/^index (?:[a-f0-9]{40}|[a-f0-9]{64})\.\.(?:[a-f0-9]{40}|[a-f0-9]{64})(?: [0-7]+)?$/m.test(n)?n:null},kt=(s,e)=>{const n=$e(s);return n!==null&&n===$e(e)},Rt=(s,e,n=ft)=>{const t=`${s}\0${n}\0${e}`,i=Z.get(t);if(i)return Z.delete(t),Z.set(t,i),i;const a=dt(e),h=a?We(Qe(e,n),{oldFile:{name:s,contents:a.before},newFile:{name:s,contents:a.after}})??Fe(s):_e(mt(s,e))[0]?.files[0]??Fe(s);for(Z.set(t,h);Z.size>ut;){const o=Z.keys().next().value;if(!o)break;Z.delete(o)}return h},mt=(s,e)=>!e.trim()||e.startsWith("diff --git ")||/^--- [^\n]*\r?\n\+\+\+ /m.test(e)?e:`Index: ${s}
|
|
6
6
|
===================================================================
|
|
7
7
|
--- ${s}
|
|
8
8
|
+++ ${s}
|
|
@@ -10,4 +10,4 @@ ${e}`,dt=s=>{if(!s.startsWith("diff --git ")&&!/^--- [^\n]*\t?\r?\n\+\+\+ [^\n]*
|
|
|
10
10
|
`:"")).join(""),Fe=s=>Je({name:s,contents:""},{name:s,contents:""}),Oe=s=>{if(!s)return[];const e=[...s.matchAll(/^@@\s/gm)].map(t=>t.index);if(e.length===0)return[];const n=s.slice(0,e[0]);return e.map((t,i)=>{const a=n+s.slice(t,e[i+1]??s.length);return a.endsWith(`
|
|
11
11
|
`)?a:`${a}
|
|
12
12
|
`})},Lt=(s,e)=>!Number.isInteger(e)||e<0?null:Oe(s)[e]??null,$t=s=>{const e=[];for(const[n,t]of Oe(s).entries()){const i=/^@@ -(\d+)(?:,(\d+))? \+(\d+)(?:,(\d+))? @@[^\n]*(?:\n|$)/m.exec(t);if(!i)continue;let a=Number(i[1]),h=Number(i[3]),o;for(const c of t.slice(i.index+i[0].length).split(`
|
|
13
|
-
`))c.startsWith("-")?o={index:n,side:"deletions",lineNumber:a++}:c.startsWith("+")?o={index:n,side:"additions",lineNumber:h++}:c.startsWith(" ")&&(a+=1,h+=1);o&&Number.isSafeInteger(o.lineNumber)&&o.lineNumber>0&&e.push(o)}return e};export{
|
|
13
|
+
`))c.startsWith("-")?o={index:n,side:"deletions",lineNumber:a++}:c.startsWith("+")?o={index:n,side:"additions",lineNumber:h++}:c.startsWith(" ")&&(a+=1,h+=1);o&&Number.isSafeInteger(o.lineNumber)&&o.lineNumber>0&&e.push(o)}return e};export{yt as B,Nt as C,St as P,vt as a,jt as b,bt as c,Lt as e,Rt as f,$t as g,kt as h,Pt as i,it as u};
|