)]}'
{
  "commit": "23a35b8da9da135ad130bee89a1f96cac4d02bf6",
  "tree": "5d76d0de2217cd78ba33ed0dd3fa00f725bac90d",
  "parents": [
    "9ee3042aa7826d9ae662c86743a5f87468972d27"
  ],
  "author": {
    "name": "banksean",
    "email": "banksean@gmail.com",
    "time": "Sun Jul 20 21:18:31 2025 +0000"
  },
  "committer": {
    "name": "Autoformatter",
    "email": "bot@sketch.dev",
    "time": "Sun Jul 20 21:49:21 2025 +0000"
  },
  "message": "webui: migrate mobile components to SketchTailwindElement\n\nComplete migration of all mobile web components from LitElement to\nSketchTailwindElement base class with Tailwind CSS styling:\n\nComponents migrated:\n- mobile-chat-input.ts: Chat input with file upload, textarea auto-resize\n- mobile-chat.ts: Message display with markdown rendering and tool calls\n- mobile-diff.ts: Git diff viewer with Monaco editor integration\n- mobile-shell.ts: Main container coordinating mobile UI layout\n- mobile-title.ts: Header with connection status and view switching\n\nKey changes:\n- Replaced LitElement inheritance with SketchTailwindElement\n- Converted all CSS-in-JS styles to Tailwind utility classes\n- Removed static styles blocks and shadow DOM styling\n- Added custom animations via document.head for non-Tailwind effects\n- Preserved all existing functionality and component interactions\n\nTechnical improvements:\n- Consistent iOS safe area support with env() CSS functions\n- Proper flexbox layouts for mobile responsive design\n- Maintained accessibility with proper ARIA labels and focus states\n- Enhanced hover and active states using Tailwind modifiers\n- Optimized touch interactions with -webkit-overflow-scrolling\n\nThe mobile components now follow the established SketchTailwindElement\npattern while maintaining full feature parity with the original\nshadow DOM implementations.\n\nCo-Authored-By: sketch \u003chello@sketch.dev\u003e\nChange-ID: s21f840091392b02ek\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a610b5d05db39e0bcd5855df7f6952a5f5bb8f94",
      "old_mode": 33188,
      "old_path": "webui/src/mobile-app-shell.html",
      "new_id": "5f1a2dfe331259652e1b3609afea9f692ede4582",
      "new_mode": 33188,
      "new_path": "webui/src/mobile-app-shell.html"
    },
    {
      "type": "modify",
      "old_id": "c41cdff502bb828d526b7a2ea364bb3f79758a11",
      "old_mode": 33188,
      "old_path": "webui/src/web-components/mobile-chat-input.ts",
      "new_id": "ff208d5500fd3fb7c9486c6fb7bb914d9c2980c6",
      "new_mode": 33188,
      "new_path": "webui/src/web-components/mobile-chat-input.ts"
    },
    {
      "type": "modify",
      "old_id": "54ddf2e578cc98ed913a6614cfabe0867878f441",
      "old_mode": 33188,
      "old_path": "webui/src/web-components/mobile-chat.test.ts",
      "new_id": "1b57f03abf424ea84bf2fd4856b592cc302c23fb",
      "new_mode": 33188,
      "new_path": "webui/src/web-components/mobile-chat.test.ts"
    },
    {
      "type": "modify",
      "old_id": "bd3a9e3a7104fbcf7083e334292427dbd95ded41",
      "old_mode": 33188,
      "old_path": "webui/src/web-components/mobile-chat.ts",
      "new_id": "9ce01fee96b0573baec5078b169a2711e9771320",
      "new_mode": 33188,
      "new_path": "webui/src/web-components/mobile-chat.ts"
    },
    {
      "type": "modify",
      "old_id": "7511602cb0949acafdae53bd5e6dfdf7506741d1",
      "old_mode": 33188,
      "old_path": "webui/src/web-components/mobile-diff.ts",
      "new_id": "bf53b2527c4ba2db6086c64c44ce8e5b76c828fb",
      "new_mode": 33188,
      "new_path": "webui/src/web-components/mobile-diff.ts"
    },
    {
      "type": "modify",
      "old_id": "dd59ad8b5c6469c393c61ae83f3e93a0f6143084",
      "old_mode": 33188,
      "old_path": "webui/src/web-components/mobile-shell.ts",
      "new_id": "5672be97387e399ff277105e56412207adb2bfda",
      "new_mode": 33188,
      "new_path": "webui/src/web-components/mobile-shell.ts"
    },
    {
      "type": "modify",
      "old_id": "8ac91662792389a97212cb6b6d6934c38444eaae",
      "old_mode": 33188,
      "old_path": "webui/src/web-components/mobile-title.ts",
      "new_id": "92bde10e0f2a4bd493bb4f0c89d6becd929b88b5",
      "new_mode": 33188,
      "new_path": "webui/src/web-components/mobile-title.ts"
    }
  ]
}
