)]}'
{
  "log": [
    {
      "commit": "26bc659f8f7e8864a6fb0a71dcbee7d3742d3763",
      "tree": "5429b19391d26f2cf8a82253237a52d2d33543e6",
      "parents": [
        "a14b0183208df257a43748b51666043db7e62138"
      ],
      "author": {
        "name": "philip.zeyliger",
        "email": "philip.zeyliger@gmail.com",
        "time": "Mon Jun 30 20:15:30 2025 -0700"
      },
      "committer": {
        "name": "Autoformatter",
        "email": "bot@sketch.dev",
        "time": "Tue Jul 01 03:20:42 2025 +0000"
      },
      "message": "webui: add ESLint and eslint-typescript\n\nI\u0027ve historically found this stuff worthwhile, so let\u0027s swallow the pill.\n\nFortunately, sketch was happy to oblige.\n\n- Install ESLint, @eslint/js, and typescript-eslint packages\n- Configure eslint.config.mjs with recommended TypeScript ESLint rules\n- Add browser globals support for DOM and web APIs\n- Integrate ESLint into npm test workflow via package.json scripts\n- Update Makefile to run lint checks as part of test suite\n- Fix 249+ linting issues including:\n  * Remove unused imports and variables (with _ prefix convention)\n  * Fix case declaration issues with eslint-disable blocks\n  * Remove unnecessary escape characters\n  * Address prefer-const violations\n  * Handle unused function parameters appropriately\n- Configure ignore patterns to exclude dist/ and node_modules/\n- Set rules to allow explicit \u0027any\u0027 types temporarily\n- Convert warnings for ts-ignore, async promise executors, and unsafe optional chaining\n\nResults:\n- ESLint now runs successfully with 0 errors and only 6 warnings\n- TypeScript compilation continues to work correctly\n- Linting integrated into test workflow for continuous quality enforcement\n- Codebase follows consistent ESLint TypeScript recommended practices\n\nCo-Authored-By: sketch \u003chello@sketch.dev\u003e\nChange-ID: sd7b538be0a28d294k\n"
    }
  ]
}
