Skip to content

Add read-only diff viewer to iOS app - #5629

Closed
lawrencecchen wants to merge 1 commit into
mainfrom
feat-ios-diff-viewer
Closed

lawrencecchen wants to merge 1 commit into
mainfrom
feat-ios-diff-viewer

Conversation

@lawrencecchen

@lawrencecchen lawrencecchen commented Jun 8, 2026 •

Copy link
Copy Markdown
Contributor

Reviewing what an agent changed is the #1 away-from-desk task. The iOS app now hosts a read-only git diff/file viewer for a workspace's changes, reusing the existing desktop diff-viewer React bundle rather than inventing a new one.

What it does

A "View diff" button on the workspace screen presents a sheet that renders the workspace's unstaged git diff read-only (no staging, committing, or editing). Loading / empty / error / truncated states are handled, and all native strings are localized (en + ja).

How it reuses the desktop viewer

The desktop diff viewer is the webviews/ React app (@pierre/diffs), served on desktop via the CLI's generated host page (CLI/cmux_open.swift writeDiffViewerHTML + ensureDiffViewerAssets). The new Packages/CmuxMobileDiffViewer package embeds that same bundle and serves it inside a WKWebView over an app-private cmux-diff:// custom scheme:

  • DiffViewerSchemeHandler serves the generated host HTML at the origin root, the patch at diff.patch, and every bundled asset (the React entry, its chunks, and the vendored @pierre/diffs worker assets) from the package's DiffViewerBundle resources. The bundle, its worker, and the patch are same-origin, so no network or ATS exposure and the React app's relative URLs resolve unchanged.
  • DiffViewerHostHTML generates the cmux-diff-viewer-config page the bundle reads in mountDiffSurface, with assets.*ModuleURL matching the desktop's ensureDiffViewerAssets directory layout (cmux-webviews-app/, pierre-diffs-1.2.7-trees-1.0.0-beta.4/), so the bundle boots without changes.

Data source

Mirrors the desktop's default "View diff" source (launchDiffViewerProcess → cmux diff --unstaged). A new mobile.workspace.diff RPC:

  • Resolves workspace_id → Workspace.currentDirectory on the main actor (Sources/TerminalController.swift v2MobileWorkspaceDiff), then runs git diff --no-ext-diff --no-color --binary -- off the main actor (Task.detached) — byte-identical arguments to the CLI diff command (gitDiffPatchArguments). Patch text is capped (4 MiB) with a truncated flag and a bounded git timeout.
  • Sits in the mobileHostHandleRPC allowlist switch and is fully Stack-auth gated like the rest of the mobile data plane (it falls into the default auth-required branch in MobileCoreRPCClient).
  • The Mac advertises workspace.diff.v1 in mobileHostCapabilities. The button is intentionally always shown (not capability-gated): an older Mac answers method_not_found, surfaced as the friendly "Couldn't load diff" + Retry state.

MobileShellComposite.fetchWorkspaceDiff(workspaceID:) issues the RPC and decodes off-main into MobileWorkspaceDiff (CmuxMobileShellModel).

Bundle sync

SwiftPM resources must live in-package, so the iOS package embeds a copy of the desktop bundle. scripts/sync-ios-diff-viewer-bundle.sh keeps it in lockstep, is called from build-webviews-app.sh, and a --check guard runs in CI right next to the desktop bundle check so the copy can't silently drift.

Verification

  • iOS simulator build (arm64-sim): BUILD SUCCEEDED. Confirmed the DiffViewerBundle resource tree (incl. main.mjs, diffs.mjs, worker-portable.js) is embedded in cmux.app.
  • macOS cmux app build: BUILD SUCCEEDED (Mac RPC handler + capability compile cleanly).
  • swift test for CmuxMobileDiffViewer: 3 tests pass (host-HTML config shape, asset URLs, </script> escaping).
  • Tests were not run via xcodebuild test locally (guarded); these are build-verify + package-level checks.

Dogfood checks (need a paired Mac + phone)

These are runtime paths that can't be verified from a build:

  1. Worker over custom scheme — does syntax highlighting load? The @pierre/diffs worker is loaded as new Worker(url, { type: "module" }) from the custom scheme; module-worker-over-custom-scheme is a known iOS WebKit sharp edge. Not a blocker for read-only review: the diff structure (files, hunks, +/- lines) renders from the parsed patch on the main thread; CodeView even exposes disableWorkerPool, so the worker only adds syntax-highlight colors. If it fails on iOS, the diff is still fully readable (monochrome) and highlighting is a follow-up.
  2. Bundle.module runtime lookup of the copied resource tree inside the running app.
  3. End-to-end: a real workspace with uncommitted changes renders the diff read-only on the phone.

🤖 Generated with Claude Code


View with Codesmith Autofix with Codesmith
Need help on this PR? Tag /codesmith with what you need. Autofix is disabled.


Note

Medium Risk
Touches mobile RPC/git output, large embedded web assets, and WKWebView custom-scheme loading (including diff workers); scope is read-only and auth-gated but runtime WebKit behavior needs dogfooding.

Overview
Adds a read-only git diff viewer on iOS: a workspace View diff sheet loads the unstaged patch from the paired Mac and renders it with the same desktop webviews diff React bundle inside a WKWebView.

Introduces Packages/CmuxMobileDiffViewer, which embeds a copied DiffViewerBundle, serves host HTML + assets + diff.patch over an app-private cmux-diff:// scheme, and generates cmux-diff-viewer-config URLs to match desktop ensureDiffViewerAssets layout. scripts/sync-ios-diff-viewer-bundle.sh keeps the embedded bundle aligned with desktop output (hooked from build-webviews-app.sh); CI react-apps-check now runs that script with --check.

On the data path, mobile.workspace.diff on the Mac runs git diff --unstaged (capped/truncated) for a workspace_id; the iOS shell calls it via fetchWorkspaceDiff into MobileWorkspaceDiff. CmuxMobileShellUI wires the toolbar button and MobileDiffViewerView (loading/empty/error/truncated, localized).

Reviewed by Cursor Bugbot for commit 73726ca. Bugbot is set up for automated code reviews on this repo. Configure here.


Summary by cubic

Adds a read-only git diff viewer to the iOS app so you can review workspace changes on your phone. Reuses the desktop diff React bundle for a consistent look and faster delivery.

  • New Features - New features added
    • Adds a "View diff" button on the workspace screen that opens a sheet with a read-only unstaged diff (no staging or edits). Handles loading/empty/error/truncated states and localizes strings (en, ja).
    • Introduces the CmuxMobileDiffViewer Swift package that embeds the desktop webviews React bundle and serves it in a WKWebView via a private cmux-diff:// scheme; all assets (including @pierre/diffs worker) are same-origin with no network/ATS exposure.
    • Adds mobile.workspace.diff RPC to fetch the workspace’s unstaged patch from the paired Mac (same git args as the CLI), with a 4 MiB cap, bounded timeout, auth gating, and workspace.diff.v1 capability signaling; friendly retry on unsupported hosts.
    • CI now enforces bundle sync with scripts/sync-ios-diff-viewer-bundle.sh --check.

Written for commit 73726ca. Summary will update on new commits.

Review in cubic

Reviewing what an agent changed is the #1 away-from-desk task, so the iOS
app now hosts a read-only git diff/file viewer for a workspace's changes.

Reuses the existing desktop diff-viewer React bundle (webviews/, served on
desktop via the CLI's generated host page) rather than inventing a new
viewer. A new CmuxMobileDiffViewer package embeds that bundle and serves the
host HTML, the patch, and every asset (React entry, chunks, and the vendored
@pierre/diffs worker assets) under one app-private cmux-diff:// custom scheme,
so the bundle, its worker, and the patch are same-origin with no network or
ATS exposure. The generated config matches the desktop's ensureDiffViewerAssets
layout, so the bundle boots unchanged.

Data path mirrors the desktop's default "View diff" source: a new
mobile.workspace.diff RPC resolves the workspace's working directory on the
Mac and returns its unstaged git working-tree patch (same git arguments as the
CLI diff command), produced off the main actor with a size cap and bounded
timeout. The verb sits in the mobileHostHandleRPC allowlist and is fully
Stack-auth gated like the rest of the mobile data plane; the Mac advertises
workspace.diff.v1 so clients can detect support.

The viewer is review-only: no staging, committing, or editing. A "View diff"
toolbar button on the workspace screen presents it; loading/empty/error/
truncated states are handled with .task (no useEffect) and localized (en+ja).

The iOS package embeds a copy of the desktop bundle (SwiftPM resources must
live in-package); scripts/sync-ios-diff-viewer-bundle.sh keeps it in lockstep,
is called from build-webviews-app.sh, and a --check guard runs in CI next to
the desktop bundle check so the copy can't silently drift.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@vercel

vercel Bot commented Jun 8, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
cmux Ready Ready Preview, Comment Jun 8, 2026 5:55am
cmux-staging Building Building Preview, Comment Jun 8, 2026 5:55am

@coderabbitai

coderabbitai Bot commented Jun 8, 2026

Copy link
Copy Markdown

Important

Review skipped

Too many files!

This PR contains 300 files, which is 150 over the limit of 150.

To get a review, narrow the scope:
• coderabbit review --type committed # exclude uncommitted changes
• coderabbit review --dir # limit to a subdirectory
• coderabbit review --base # compare against a closer base

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: 59621c9d-1fbd-44c6-a916-747fcf4c88f9

📥 Commits

Reviewing files that changed from the base of the PR and between 4424644 and 73726ca.

📒 Files selected for processing (300)
  • .github/workflows/ci.yml
  • Packages/CmuxMobileDiffViewer/Package.swift
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/cmux-webviews-app/agent-session.html
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/cmux-webviews-app/chunks/agentSessionSurface.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/cmux-webviews-app/chunks/diff-vendor.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/cmux-webviews-app/chunks/diffSurface.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/cmux-webviews-app/chunks/installWebviewStyles.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/cmux-webviews-app/chunks/vendor.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/cmux-webviews-app/main.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/abap-Q73QF6B7.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/actionscript-3-NFUREDLO.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/ada-XEMTSBL3.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/andromeeda-OHCI6EMF.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/angular-html-T2XIZUKX.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/angular-ts-M2YADXU4.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/apache-RTLHNVXJ.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/apex-IVYZN3ES.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/apl-NGRBTQ65.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/applescript-7UKHDZBQ.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/ara-6GCCKV33.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/asciidoc-HTPF6CQT.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/asm-ITPW5VJE.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/astro-GY7VD6M6.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/aurora-x-44HHCOOU.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/awk-VIZ46Z3P.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/ayu-dark-U424ZT4K.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/ayu-light-VMQHSZQE.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/ayu-mirage-B7GMJ2S4.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/ballerina-MNXFDJPS.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/bat-CL6HXNDF.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/beancount-ZSYFH435.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/berry-XTPEXAZV.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/bibtex-Z2GKAQED.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/bicep-6H2TIU3G.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/bird2-JRWQRI24.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/blade-RGI7ALMC.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/bsl-MWLWNBBG.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/c-BBUNAM3G.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/c3-IZEF6OII.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/cadence-O3ISCCQ5.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/cairo-VZRVUAMG.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/catppuccin-frappe-ZVRB7HPD.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/catppuccin-latte-T64ALZA5.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/catppuccin-macchiato-JIJWZDXY.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/catppuccin-mocha-AKX53YUV.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-24HTWSHD.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-2TD3O4KL.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-46SWA7ZA.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-4743X2XE.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-47HYEZLS.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-4G6K7A33.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-4TAP5FCM.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-5T2MCLSN.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-6L2JDZPO.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-6PNPPH45.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-75WCLZMJ.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-AXC3UJUX.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-DHWPKQHY.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-DONYWF5L.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-EEGVZ7FC.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-FBQ4PO24.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-FH66DAWQ.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-FQBGCVCX.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-GIEJ2GL2.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-GM2DI5C2.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-GRDZL3HG.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-H5ZWTUEO.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-HOEU7EBA.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-IGWOTUBY.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-KD3KAPNG.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-LYMUR5YW.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-MZ5LBK6I.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-NDYC3MA5.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-OGD3YPDK.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-P56JR42A.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-PBSFQ2WN.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-PSBRQ7OH.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-QAOBWT3Q.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-QSCPKJBI.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-QTERLIBZ.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-S3UN7B4X.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-SQ5DNZYO.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-U6PO75RM.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-ULJPULLJ.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-UNPZZQJ6.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-VTJA3Q46.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-VWSCJYRS.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-XHAD5MUH.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-YGG62CUI.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-YIWJTKWS.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/chunk-ZH24P64N.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/clarity-DKMCI4FA.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/clojure-FCOIPYXS.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/cmake-33LDIWRO.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/cobol-7HV4OY6V.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/codeowners-3UEYFU5D.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/codeql-X6HZLGCA.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/coffee-CKCWTKNC.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/common-lisp-BJJM674I.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/coq-BJOHOHDS.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/cpp-HMQ7G25K.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/crystal-A66OWYSO.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/csharp-Z64SUQJ6.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/css-YMIBQVAX.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/csv-QNR2RJ4D.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/cue-VO5PBNZH.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/cypher-XFT42ZZK.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/d-YZTHDWBC.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/dark-plus-ZFDBPPAN.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/dart-WCUU4XPB.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/dax-AIW3TEKO.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/desktop-IMJNWHW2.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/diff-HYAGMZVU.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/docker-WVTH3OUW.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/dotenv-FK57YAFH.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/dracula-KZXZ2MDE.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/dracula-soft-P2LUZDLJ.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/dream-maker-3OOU3R2N.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/edge-LP52YTB7.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/elixir-4GI5YYUS.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/elm-AE77L24D.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/emacs-lisp-FMQEEDYP.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/erb-G3AROZ3F.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/erlang-2YN6S6FT.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/everforest-dark-GSFU7GRF.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/everforest-light-LORXA3TH.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/fennel-LKMYXKXM.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/fish-JT5UZ2CX.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/fluent-AH4YVXEO.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/fortran-fixed-form-QIMSN5KN.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/fortran-free-form-M472R2HO.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/fsharp-LZLMSOFI.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/gdresource-S74OONU6.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/gdscript-MSO2ZEOU.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/gdshader-2ZFY465Z.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/genie-NJUAFKKS.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/gherkin-FAKZNIYS.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/git-commit-VBMLP4BN.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/git-rebase-Y3HHGE2G.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/github-dark-ZU33EE4D.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/github-dark-default-NZUA3FMC.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/github-dark-dimmed-XNDRNDPD.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/github-dark-high-contrast-7HGHHKZG.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/github-light-SMPVU3GN.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/github-light-default-3XKIUGD2.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/github-light-high-contrast-PS2TSDKE.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/gleam-X36IZU2B.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/glimmer-js-6UJHYBAZ.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/glimmer-ts-GSODBDTE.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/glsl-H5V2QKCT.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/gn-AFVWC7XG.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/gnuplot-H7ZXJ4ZE.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/go-OKPVH2SZ.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/graphql-XZ2WYZ2Y.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/groovy-BDOGQTEH.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/gruvbox-dark-hard-25WLSVFV.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/gruvbox-dark-medium-I4POHJPI.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/gruvbox-dark-soft-EC5Y4L5U.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/gruvbox-light-hard-YJLYZEB3.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/gruvbox-light-medium-KD6MQDDX.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/gruvbox-light-soft-WORK3BM6.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/hack-652L7GWP.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/haml-NUV4ZW6C.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/handlebars-3GK7RVXO.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/haskell-7E7XNWBB.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/haxe-AADEWHXR.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/hcl-NDFHWBRH.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/hjson-FAVCKLFF.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/hlsl-QBZUD2UL.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/horizon-CSBNRODB.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/horizon-bright-PFHKIFWT.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/houston-E36MHZ22.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/html-JRV2QUP2.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/html-derivative-EBXDANVR.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/http-O4MMHOON.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/hurl-RHGQWSDP.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/hxml-KTZR2AQZ.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/hy-SOOIOBQ6.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/imba-RTPTPVMQ.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/ini-FIYV5NST.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/java-NCSJUBER.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/javascript-LXIYRMTS.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/jinja-57AUMRR2.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/jison-ICXKYFBC.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/json-FMUVWOXY.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/json5-7DBSCELL.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/jsonc-7ILZGNHV.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/jsonl-AS4LUJJK.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/jsonnet-HOETMA7L.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/jssm-6MR5PVDZ.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/jsx-V5IQEHED.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/julia-BWQXHUCE.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/just-TXUZDGJS.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/kanagawa-dragon-HASAFTQ4.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/kanagawa-lotus-HMDRMTZ4.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/kanagawa-wave-IYFHKU2I.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/kdl-CV4UVPSI.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/kotlin-VEHOORGW.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/kusto-NA2J56UP.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/laserwave-PVF52WB6.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/latex-PLE7W2XQ.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/lean-OQVDFGYY.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/less-U3Y7ZONO.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/light-plus-ALQRL4PC.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/liquid-XCWWRA4Z.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/llvm-DZ74BKCI.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/log-3UD4UZLR.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/logo-EUW37RQM.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/lua-JYMDS5TU.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/luau-5IL4HS74.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/make-PWH2KIBO.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/markdown-U6LRPR3U.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/marko-UVAVVIWT.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/material-theme-L2ODUPSL.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/material-theme-darker-4ZYOVYXI.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/material-theme-lighter-SGIMYOFV.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/material-theme-ocean-YP3BV742.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/material-theme-palenight-PWDJBA3X.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/matlab-7MX7RWNI.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/mdc-36E5H5T4.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/mdx-CPBD43T5.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/mermaid-XIP2BU7R.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/min-dark-EXVUWTDX.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/min-light-TRPROB65.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/mipsasm-6WO34J5M.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/mojo-XKLSHGYW.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/monokai-4XPQQYUE.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/moonbit-SQP5SQ2I.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/move-NHHPV3DX.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/narrat-IVZ357C7.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/nextflow-WRFABYRO.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/nextflow-groovy-5J7BXA3A.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/nginx-BI6RVLUW.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/night-owl-I73QTDXC.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/night-owl-light-6L6M5FJY.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/nim-RFO2PL7N.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/nix-UGQ2PQM7.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/nord-OCWXNFDN.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/nushell-NQJPXGXD.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/objective-c-C73YEOJE.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/objective-cpp-EWVLMTJ3.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/ocaml-LDIKH6RQ.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/odin-ZTSYQQ4G.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/one-dark-pro-PQYC66OI.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/one-light-ERNAATMQ.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/openscad-OJEDGSBO.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/pascal-3RPBZM34.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/perl-R35DJY7Z.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/php-Y2SJW7I7.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/pierre-dark-7JYQRM5F.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/pierre-dark-soft-MKZTJ6K6.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/pierre-light-X7PLQTMH.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/pierre-light-soft-LFULUVGF.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/pkl-GWJEG6SO.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/plastic-MER2RKV3.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/plsql-CKGMG542.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/po-A2W4HETU.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/poimandres-7CGVZLXZ.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/polar-DUAIV3X3.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/postcss-FASPTYHE.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/powerquery-UZQHCMNJ.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/powershell-4CMEW5LB.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/prisma-RVKHW4DC.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/prolog-4KXZCLZH.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/proto-5E7PBD2K.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/pug-3OOI5NYK.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/puppet-NFR2I3XI.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/purescript-J7XEQ5B7.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/python-IRHRES3A.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/qml-R3TJZYKL.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/qmldir-K4UPDTOF.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/qss-A3ZC7S2Z.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/r-LJ5BIA5R.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/racket-F3AGQTTG.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/raku-6Y7KKMBI.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/razor-QHP43XD6.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/red-7X2UZSWN.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/reg-UY7X5R5H.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/regexp-KHWBH2EP.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/rel-JXNVSOPU.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/riscv-43Y5QWUP.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/ron-7MIDCDBG.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/rose-pine-Z2NM4Z3K.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/rose-pine-dawn-UYUC3W3Q.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/rose-pine-moon-JC2DFWDP.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/rosmsg-FC3GC47H.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/rst-XAEWD66N.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/ruby-R6ZW2SKG.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/rust-3NEPNBVG.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/sas-NCT6PEVY.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/sass-FDOVYKDP.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/scala-BG3RVF3Y.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/scheme-BFWH5GOW.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/scss-T37YMTQV.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/sdbl-GJOH6OSV.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/shaderlab-VW6NAM3V.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/shellscript-BJRHBBQT.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/shellsession-VHSLIANU.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/slack-dark-BHV4SW3O.mjs
  • Packages/CmuxMobileDiffViewer/Sources/CmuxMobileDiffViewer/DiffViewerBundle/assets/pierre-diffs-1.2.7-trees-1.0.0-beta.4/chunks/slack-ochin-O3HEMI5E.mjs

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat-ios-diff-viewer

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 73726ca89c

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +21040 to +21043
let chunk = handle.availableData
if chunk.isEmpty { break }
collectedLock.lock()
collected.append(chunk)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Enforce the diff byte cap while reading stdout

For workspaces with very large binary/generated changes, this reads and appends the entire git diff --binary output into collected before applying mobileWorkspaceDiffMaxPatchBytes at the end, so the advertised 4 MiB cap does not actually bound Mac-side memory or RPC latency. A large diff can still allocate hundreds of MB and hang/OOM the host before the truncation path runs; cap or stop collecting as chunks arrive.

Useful? React with 👍 / 👎.

data: ["workspace_id": workspaceId.uuidString]
)
}
let directory = workspace.currentDirectory.trimmingCharacters(in: .whitespacesAndNewlines)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Resolve the same working directory as desktop diff

When the focused panel has its own tracked/requested directory, the desktop diff action targets workspace.resolvedWorkingDirectory() (focused panel directory, then requested directory, then workspace cwd), but this mobile RPC always uses workspace.currentDirectory. In that common split/panel scenario the phone can show a diff for the workspace fallback rather than the directory the user is currently reviewing on the Mac; use the same resolution path as the desktop diff action.

Useful? React with 👍 / 👎.

This branch was successfully deployed

1 active deployment
Preview – cmux — 73726ca8 Deployed Jun 8, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

stale-revisit Closed after 30+ days without activity; preserved for possible revisit or reopening.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants