Files
coder/offlinedocs/package.json
T
Nick Vigilante c14b4a010a chore(offlinedocs): update low-risk dependencies (#26876)
## Summary

Updates the `offlinedocs` doc-preview app's dependencies that can move
without code migration, and leaves the heavy framework upgrades for a
separate, deliberate PR.

## Changes

- `react-markdown` 9.1.0 → 10.1.0: used in source
(`pages/[[...slug]].tsx`, the `ReactMarkdown` renderer). The
`components` / `urlTransform` / `remarkPlugins` / `rehypePlugins` API we
rely on is unchanged across the major bump.
- `react-icons` 4.12.0 → 5.7.0: used in source (`MdMenu`, the mobile-nav
hamburger icon). The v5 API is backwards-compatible for our single
import.
- `sanitize-html` 2.17.4 → 2.17.5: used in source
(`sanitizeHtml(body)`); patch bump.
- `prettier` 3.8.3 → 3.9.4 (dev): minor bump, used by the `format`
scripts.
- `@types/node` 20.19.41 → 22.20.0 (dev): types only, capped at the 22.x
line to match the Node 22 runtime rather than tracking latest (26.x).
- `archiver` 6.0.2 → 8.0.0: not imported anywhere in source, so no
render risk (see Notes).

Intentionally **deferred** (coupled breaking migration, touches
component code): Chakra UI v2 → v3, React 18 → 19, Next 15 → 16, ESLint
8 → 10 + flat config, framer-motion 10 → 12.

## Testing

- `tsc --noEmit`: passes.
- `next build` (static export): all 442 pages prerender.
- Dev server launches; `/` and a markdown-rendered page (`/install/`)
both return HTTP 200 and render correctly.
- Verified on Node 22.19.0 / pnpm 10.33.2 (the repo-pinned toolchain);
lockfile `overrides:` block preserved.

## Notes

- `archiver` appears to be a dead dependency (nothing in source imports
it) and could be pruned in a follow-up. It is bumped here only to keep
the lockfile current.

---
🤖 Built with AI assistance.
2026-07-15 15:04:36 -04:00

61 lines
1.5 KiB
JSON

{
"name": "coder-docs-generator",
"private": true,
"scripts": {
"dev": "pnpm copy-images && next dev",
"build": "next build",
"start": "next start",
"export": "pnpm copy-images && next build",
"copy-images": "sh ./scripts/copyImages.sh",
"lint": "pnpm run lint:types",
"lint:types": "tsc --noEmit",
"format": "prettier --cache --write './**/*.{css,html,js,json,jsx,md,ts,tsx,yaml,yml}'",
"format:check": "prettier --cache --check './**/*.{css,html,js,json,jsx,md,ts,tsx,yaml,yml}'"
},
"dependencies": {
"@chakra-ui/react": "2.10.9",
"@emotion/react": "11.14.0",
"@emotion/styled": "11.14.1",
"archiver": "8.0.0",
"framer-motion": "^10.18.0",
"front-matter": "4.0.2",
"lodash": "4.18.1",
"next": "15.5.18",
"react": "18.3.1",
"react-dom": "18.3.1",
"react-icons": "5.7.0",
"react-markdown": "10.1.0",
"rehype-raw": "7.0.0",
"remark-gfm": "4.0.1",
"sanitize-html": "2.17.5"
},
"devDependencies": {
"@types/lodash": "4.17.24",
"@types/node": "22.20.0",
"@types/react": "18.3.12",
"@types/react-dom": "18.3.1",
"@types/sanitize-html": "2.16.1",
"eslint": "8.57.1",
"eslint-config-next": "14.2.35",
"prettier": "3.9.4",
"typescript": "6.0.3"
},
"engines": {
"npm": ">=9.0.0 <10.0.0",
"node": ">=22.0.0 <25.0.0"
},
"pnpm": {
"overrides": {
"@babel/runtime": "7.26.10",
"brace-expansion": "1.1.13",
"minimatch": "5.1.8",
"glob@>=10": "10.5.0",
"postcss": "8.5.10",
"js-yaml": "3.14.2",
"yaml": "1.10.3",
"flatted": "3.4.2",
"mdast-util-to-hast": "13.2.1"
}
}
}