From c3b9ca93cf34170b8f09ef6df9da4d61e5a3e53e Mon Sep 17 00:00:00 2001 From: Mark Macdonald Date: Sat, 17 Jan 2026 15:06:50 +0000 Subject: [PATCH 1/8] Move lint-staged to devDependencies (was incorrect) --- package.json | 2 +- pnpm-lock.yaml | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 956b643d..07e5197e 100644 --- a/package.json +++ b/package.json @@ -45,7 +45,6 @@ "dotenv": "^17.2.3", "fs-extra": "^11.3.3", "husky": "^9.1.7", - "lint-staged": "^16.2.7", "marked": "^17.0.1", "node-html-parser": "^7.0.2", "picocolors": "^1.1.1", @@ -66,6 +65,7 @@ "@prettier/plugin-oxc": "^0.1.3", "@types/node": "^25.0.9", "@types/react": "^19.2.8", + "lint-staged": "^16.2.7", "ncp": "^2.0.0", "oxlint": "^1.39.0", "prettier": "^3.8.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9494e428..e34cb1fd 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -32,9 +32,6 @@ importers: husky: specifier: ^9.1.7 version: 9.1.7 - lint-staged: - specifier: ^16.2.7 - version: 16.2.7 marked: specifier: ^17.0.1 version: 17.0.1 @@ -90,6 +87,9 @@ importers: '@types/react': specifier: ^19.2.8 version: 19.2.8 + lint-staged: + specifier: ^16.2.7 + version: 16.2.7 ncp: specifier: ^2.0.0 version: 2.0.0 From 7a9d4916a3dd98a93ea2c204298ce9a060a9174c Mon Sep 17 00:00:00 2001 From: Mark Macdonald Date: Sat, 17 Jan 2026 15:12:50 +0000 Subject: [PATCH 2/8] Add types for fs-extra to devDependencies --- package.json | 1 + pnpm-lock.yaml | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/package.json b/package.json index 07e5197e..a926c587 100644 --- a/package.json +++ b/package.json @@ -63,6 +63,7 @@ }, "devDependencies": { "@prettier/plugin-oxc": "^0.1.3", + "@types/fs-extra": "^11.0.4", "@types/node": "^25.0.9", "@types/react": "^19.2.8", "lint-staged": "^16.2.7", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e34cb1fd..858d47d2 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -81,6 +81,9 @@ importers: '@prettier/plugin-oxc': specifier: ^0.1.3 version: 0.1.3 + '@types/fs-extra': + specifier: ^11.0.4 + version: 11.0.4 '@types/node': specifier: ^25.0.9 version: 25.0.9 @@ -829,9 +832,15 @@ packages: '@types/estree@1.0.8': resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} + '@types/fs-extra@11.0.4': + resolution: {integrity: sha512-yTbItCNreRooED33qjunPthRcSjERP1r4MqCZc7wv0u2sUkzTFp45tgUfS5+r7FrZPdmCCNflLhVSP/o+SemsQ==} + '@types/hast@3.0.4': resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} + '@types/jsonfile@6.1.4': + resolution: {integrity: sha512-D5qGUYwjvnNNextdU59/+fI+spnwtTFmyQP0h+PfIOSkNfpU6AOICUOkm4i0OnSk+NyjdPJrxCDro0sJsWlRpQ==} + '@types/mdast@4.0.4': resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} @@ -2951,10 +2960,19 @@ snapshots: '@types/estree@1.0.8': {} + '@types/fs-extra@11.0.4': + dependencies: + '@types/jsonfile': 6.1.4 + '@types/node': 25.0.9 + '@types/hast@3.0.4': dependencies: '@types/unist': 3.0.3 + '@types/jsonfile@6.1.4': + dependencies: + '@types/node': 25.0.9 + '@types/mdast@4.0.4': dependencies: '@types/unist': 3.0.3 From 351abcfb1d3f687ea904094b527a73b6bb0c7d35 Mon Sep 17 00:00:00 2001 From: Mark Macdonald Date: Sat, 17 Jan 2026 15:21:35 +0000 Subject: [PATCH 3/8] Remove dependency on fs-extra package, use modern node --- package.json | 2 -- pnpm-lock.yaml | 51 --------------------------------------------- src/docgen/fs/fs.ts | 18 +++++++--------- 3 files changed, 7 insertions(+), 64 deletions(-) diff --git a/package.json b/package.json index a926c587..f3753d58 100644 --- a/package.json +++ b/package.json @@ -43,7 +43,6 @@ "classnames": "^2.5.1", "commander": "^14.0.2", "dotenv": "^17.2.3", - "fs-extra": "^11.3.3", "husky": "^9.1.7", "marked": "^17.0.1", "node-html-parser": "^7.0.2", @@ -63,7 +62,6 @@ }, "devDependencies": { "@prettier/plugin-oxc": "^0.1.3", - "@types/fs-extra": "^11.0.4", "@types/node": "^25.0.9", "@types/react": "^19.2.8", "lint-staged": "^16.2.7", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 858d47d2..e4500c7f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -26,9 +26,6 @@ importers: dotenv: specifier: ^17.2.3 version: 17.2.3 - fs-extra: - specifier: ^11.3.3 - version: 11.3.3 husky: specifier: ^9.1.7 version: 9.1.7 @@ -81,9 +78,6 @@ importers: '@prettier/plugin-oxc': specifier: ^0.1.3 version: 0.1.3 - '@types/fs-extra': - specifier: ^11.0.4 - version: 11.0.4 '@types/node': specifier: ^25.0.9 version: 25.0.9 @@ -832,15 +826,9 @@ packages: '@types/estree@1.0.8': resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} - '@types/fs-extra@11.0.4': - resolution: {integrity: sha512-yTbItCNreRooED33qjunPthRcSjERP1r4MqCZc7wv0u2sUkzTFp45tgUfS5+r7FrZPdmCCNflLhVSP/o+SemsQ==} - '@types/hast@3.0.4': resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} - '@types/jsonfile@6.1.4': - resolution: {integrity: sha512-D5qGUYwjvnNNextdU59/+fI+spnwtTFmyQP0h+PfIOSkNfpU6AOICUOkm4i0OnSk+NyjdPJrxCDro0sJsWlRpQ==} - '@types/mdast@4.0.4': resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} @@ -1212,10 +1200,6 @@ packages: resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==} engines: {node: '>=14'} - fs-extra@11.3.3: - resolution: {integrity: sha512-VWSRii4t0AFm6ixFFmLLx1t7wS1gh+ckoa84aOeapGum0h+EZd1EhEumSB+ZdDLnEPuucsVB9oB7cxJHap6Afg==} - engines: {node: '>=14.14'} - fsevents@2.3.3: resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} @@ -1266,9 +1250,6 @@ packages: resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} engines: {node: '>= 0.4'} - graceful-fs@4.2.11: - resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} - has-property-descriptors@1.0.2: resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} @@ -1430,9 +1411,6 @@ packages: engines: {node: '>=6'} hasBin: true - jsonfile@6.2.0: - resolution: {integrity: sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==} - lightningcss-android-arm64@1.30.2: resolution: {integrity: sha512-BH9sEdOCahSgmkVhBLeU7Hc9DWeZ1Eb6wNS6Da8igvUwAe0sqROHddIlvU06q3WyXVEOYDZ6ykBZQnjTbmo4+A==} engines: {node: '>= 12.0.0'} @@ -2171,10 +2149,6 @@ packages: unist-util-visit@5.0.0: resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==} - universalify@2.0.1: - resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} - engines: {node: '>= 10.0.0'} - update-browserslist-db@1.2.3: resolution: {integrity: sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==} hasBin: true @@ -2960,19 +2934,10 @@ snapshots: '@types/estree@1.0.8': {} - '@types/fs-extra@11.0.4': - dependencies: - '@types/jsonfile': 6.1.4 - '@types/node': 25.0.9 - '@types/hast@3.0.4': dependencies: '@types/unist': 3.0.3 - '@types/jsonfile@6.1.4': - dependencies: - '@types/node': 25.0.9 - '@types/mdast@4.0.4': dependencies: '@types/unist': 3.0.3 @@ -3333,12 +3298,6 @@ snapshots: cross-spawn: 7.0.6 signal-exit: 4.1.0 - fs-extra@11.3.3: - dependencies: - graceful-fs: 4.2.11 - jsonfile: 6.2.0 - universalify: 2.0.1 - fsevents@2.3.3: optional: true @@ -3393,8 +3352,6 @@ snapshots: gopd@1.2.0: {} - graceful-fs@4.2.11: {} - has-property-descriptors@1.0.2: dependencies: es-define-property: 1.0.1 @@ -3582,12 +3539,6 @@ snapshots: json5@2.2.3: {} - jsonfile@6.2.0: - dependencies: - universalify: 2.0.1 - optionalDependencies: - graceful-fs: 4.2.11 - lightningcss-android-arm64@1.30.2: optional: true @@ -4603,8 +4554,6 @@ snapshots: unist-util-is: 6.0.1 unist-util-visit-parents: 6.0.2 - universalify@2.0.1: {} - update-browserslist-db@1.2.3(browserslist@4.28.1): dependencies: browserslist: 4.28.1 diff --git a/src/docgen/fs/fs.ts b/src/docgen/fs/fs.ts index 72d34765..f339bce1 100644 --- a/src/docgen/fs/fs.ts +++ b/src/docgen/fs/fs.ts @@ -1,12 +1,11 @@ -import path from 'path'; +import path from 'node:path'; +import { promises as fs } from 'node:fs'; import pico from 'picocolors'; -import { promises as fsp } from 'fs'; -import fs from 'fs-extra'; export const readFile = async (filePath: string) => { const normalized = path.normalize(filePath); try { - const content = await fsp.readFile(normalized, { encoding: 'utf8' }); + const content = await fs.readFile(normalized, { encoding: 'utf8' }); // remove the BOM (byte-order-mark) from UTF-8 files, if present return content?.replace(/^\uFEFF/, ''); } catch (error) { @@ -25,18 +24,15 @@ export const copyDirectory = async ( const normalizedSource = path.normalize(source); const normalizedDestination = path.normalize(destination); try { - await fs.copySync(normalizedSource, normalizedDestination); + await fs.cp(normalizedSource, normalizedDestination, { recursive: true }); } catch (error) { console.log( pico.red( - 'Error copying directory: ' + - normalizedSource + - ' to ' + - normalizedDestination, + `Error copying directory: ${normalizedSource} to ${normalizedDestination}`, ), ); - if (verbose === true) { - console.log(pico.red(error)); + if (verbose) { + console.log(pico.red(error instanceof Error ? error.message : error)); } } }; From a416f5884aada45f47247329548e164d872f5943 Mon Sep 17 00:00:00 2001 From: Mark Macdonald Date: Sat, 17 Jan 2026 20:51:22 +0000 Subject: [PATCH 4/8] Cleanup --- .../before-deploy-website.ts | 7 +++---- {deploy => deploy-website}/include/404.html | 0 package.json | 2 +- 3 files changed, 4 insertions(+), 5 deletions(-) rename deploy/before-deploy-website.js => deploy-website/before-deploy-website.ts (83%) rename {deploy => deploy-website}/include/404.html (100%) diff --git a/deploy/before-deploy-website.js b/deploy-website/before-deploy-website.ts similarity index 83% rename from deploy/before-deploy-website.js rename to deploy-website/before-deploy-website.ts index cbe7ea63..88cb9f5d 100644 --- a/deploy/before-deploy-website.js +++ b/deploy-website/before-deploy-website.ts @@ -1,6 +1,5 @@ import fs from 'fs'; import path from 'path'; -import { cpSync } from 'fs'; const spaScript = ` @@ -13,14 +12,14 @@ const spaScript = ` `; -// 1. Deep copy deploy/docs -> docs -cpSync('deploy/include', 'docs/', { recursive: true }); +// 1. Deep copy deploy-website/docs -> docs +fs.cpSync('deploy-website/include', 'docs/', { recursive: true }); // 2. Insert SPA script into index.html const indexFile = path.join('docs', 'index.html'); let html = fs.readFileSync(indexFile, 'utf-8'); -// Find tag and insert after it +// Find the <title> tag and insert after it html = html.replace(/(<title>.*?<\/title>)/, `$1\n${spaScript}`); fs.writeFileSync(indexFile, html, 'utf-8'); diff --git a/deploy/include/404.html b/deploy-website/include/404.html similarity index 100% rename from deploy/include/404.html rename to deploy-website/include/404.html diff --git a/package.json b/package.json index f3753d58..dfc93007 100644 --- a/package.json +++ b/package.json @@ -17,7 +17,7 @@ "build:docs": "tsx src/cli/cli.ts build -i src/docs -o ./docs", "preview:docs": "pnpx serve -s ./docs", "build:docs:gh": "tsx src/cli/cli.ts build -i src/docs -o ./docs && pnpm copy:gh:files", - "copy:gh:files": "node deploy/before-deploy-website.js", + "copy:gh:files": "node deploy-website/before-deploy-website.ts", "preview:style:variables": "rimraf src/app/styles/style-variables && pnpx style-dictionary build --config src/app/styles/config.json && pnpm formatting:fix", "test": "pnpm formatting:check", "test:run": "tsx src/cli/cli.ts build -i src/__test__/test-run -o src/__test__/test-run-output", From 06238f62a28ba14dbfb225c4ddd1039c1f0fc3eb Mon Sep 17 00:00:00 2001 From: Mark Macdonald <mark.t.macdonald@googlemail.com> Date: Sat, 17 Jan 2026 20:56:50 +0000 Subject: [PATCH 5/8] Script for bundling app --- package.json | 2 +- scripts/bundle-app.ts | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 scripts/bundle-app.ts diff --git a/package.json b/package.json index dfc93007..fc03f57a 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,7 @@ "scripts": { "check:types": "tsc --noEmit", "bundle:cli": "vite build --config ./vite.bundle.cli.config.ts && chmod +x dist/cli/cli.js", - "bundle:app": "rimraf dist/app dist/template && ncp src/app dist/app && ncp src/template dist/template", + "bundle:app": "tsx scripts/bundle-app.ts", "bundle": "pnpm bundle:cli && pnpm bundle:app", "dev:docs": "tsx src/cli/cli.ts dev -i src/docs -o ./docs", "build:docs": "tsx src/cli/cli.ts build -i src/docs -o ./docs", diff --git a/scripts/bundle-app.ts b/scripts/bundle-app.ts new file mode 100644 index 00000000..607d2949 --- /dev/null +++ b/scripts/bundle-app.ts @@ -0,0 +1,10 @@ +import { rmSync, cpSync } from 'fs'; + +const paths = ['dist/app', 'dist/template']; + +// Clean +paths.forEach((p) => rmSync(p, { recursive: true, force: true })); + +// Copy +cpSync('src/app', 'dist/app', { recursive: true }); +cpSync('src/template', 'dist/template', { recursive: true }); From 52d4d77caf276dd88b4c18e62eb43fd90f6f50ae Mon Sep 17 00:00:00 2001 From: Mark Macdonald <mark.t.macdonald@googlemail.com> Date: Sat, 17 Jan 2026 21:02:28 +0000 Subject: [PATCH 6/8] Remove rimraf and ncp files --- package.json | 4 +--- pnpm-lock.yaml | 32 -------------------------------- scripts/build-styles-preview.ts | 10 ++++++++++ 3 files changed, 11 insertions(+), 35 deletions(-) create mode 100644 scripts/build-styles-preview.ts diff --git a/package.json b/package.json index fc03f57a..ea286b00 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,7 @@ "preview:docs": "pnpx serve -s ./docs", "build:docs:gh": "tsx src/cli/cli.ts build -i src/docs -o ./docs && pnpm copy:gh:files", "copy:gh:files": "node deploy-website/before-deploy-website.ts", - "preview:style:variables": "rimraf src/app/styles/style-variables && pnpx style-dictionary build --config src/app/styles/config.json && pnpm formatting:fix", + "preview:style:variables": "tsx scripts/build-styles-preview.ts", "test": "pnpm formatting:check", "test:run": "tsx src/cli/cli.ts build -i src/__test__/test-run -o src/__test__/test-run-output", "test:scaffold": "tsx src/cli/cli.ts scaffold -o src/__test__/test-run-output", @@ -65,10 +65,8 @@ "@types/node": "^25.0.9", "@types/react": "^19.2.8", "lint-staged": "^16.2.7", - "ncp": "^2.0.0", "oxlint": "^1.39.0", "prettier": "^3.8.0", - "rimraf": "^6.1.2", "tsx": "^4.21.0", "typescript": "^5.9.3" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e4500c7f..235f6725 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -87,18 +87,12 @@ importers: lint-staged: specifier: ^16.2.7 version: 16.2.7 - ncp: - specifier: ^2.0.0 - version: 2.0.0 oxlint: specifier: ^1.39.0 version: 1.39.0 prettier: specifier: ^3.8.0 version: 3.8.0 - rimraf: - specifier: ^6.1.2 - version: 6.1.2 tsx: specifier: ^4.21.0 version: 4.21.0 @@ -1242,10 +1236,6 @@ packages: engines: {node: 20 || >=22} hasBin: true - glob@13.0.0: - resolution: {integrity: sha512-tvZgpqk6fz4BaNZ66ZsRaZnbHvP/jG3uKJvAZOwEVUL4RTA5nJeeLYfyN9/VA8NX/V3IBG+hkeuGpKjvELkVhA==} - engines: {node: 20 || >=22} - gopd@1.2.0: resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} engines: {node: '>= 0.4'} @@ -1711,10 +1701,6 @@ packages: engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true - ncp@2.0.0: - resolution: {integrity: sha512-zIdGUrPRFTUELUvr3Gmc7KZ2Sw/h1PiVM0Af/oHB6zgnV1ikqSfRk+TOufi79aHYCW3NiOXmr1BP5nWbzojLaA==} - hasBin: true - node-html-parser@6.1.13: resolution: {integrity: sha512-qIsTMOY4C/dAa5Q5vsobRpOOvPfC4pB61UVW2uSwZNUp0QU/jCekTal1vMmbO0DgdHeLUJpv/ARmDqErVxA3Sg==} @@ -1937,11 +1923,6 @@ packages: rfdc@1.4.1: resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==} - rimraf@6.1.2: - resolution: {integrity: sha512-cFCkPslJv7BAXJsYlK1dZsbP8/ZNLkCAQ0bi1hf5EKX2QHegmDFEFA6QhuYJlk7UDdc+02JjO80YSOrWPpw06g==} - engines: {node: 20 || >=22} - hasBin: true - rolldown@1.0.0-beta.60: resolution: {integrity: sha512-YYgpv7MiTp9LdLj1fzGzCtij8Yi2OKEc3HQtfbIxW4yuSgpQz9518I69U72T5ErPA/ATOXqlcisiLrWy+5V9YA==} engines: {node: ^20.19.0 || >=22.12.0} @@ -3344,12 +3325,6 @@ snapshots: package-json-from-dist: 1.0.1 path-scurry: 2.0.1 - glob@13.0.0: - dependencies: - minimatch: 10.1.1 - minipass: 7.1.2 - path-scurry: 2.0.1 - gopd@1.2.0: {} has-property-descriptors@1.0.2: @@ -4026,8 +4001,6 @@ snapshots: nanoid@3.3.11: {} - ncp@2.0.0: {} - node-html-parser@6.1.13: dependencies: css-select: 5.2.2 @@ -4296,11 +4269,6 @@ snapshots: rfdc@1.4.1: {} - rimraf@6.1.2: - dependencies: - glob: 13.0.0 - package-json-from-dist: 1.0.1 - rolldown@1.0.0-beta.60: dependencies: '@oxc-project/types': 0.108.0 diff --git a/scripts/build-styles-preview.ts b/scripts/build-styles-preview.ts new file mode 100644 index 00000000..38fd0843 --- /dev/null +++ b/scripts/build-styles-preview.ts @@ -0,0 +1,10 @@ +import { rmSync } from 'fs'; +import { execSync } from 'child_process'; + +rmSync('src/app/styles/style-variables', { recursive: true, force: true }); + +execSync('pnpm style-dictionary build --config src/app/styles/config.json', { + stdio: 'inherit', +}); + +execSync('pnpm formatting:fix', { stdio: 'inherit' }); From 75ca3e44f2315f5ac8f6d5a8f351a6b0177e092c Mon Sep 17 00:00:00 2001 From: Mark Macdonald <mark.t.macdonald@googlemail.com> Date: Sat, 17 Jan 2026 21:03:27 +0000 Subject: [PATCH 7/8] Upgrade dependencies --- package.json | 2 +- pnpm-lock.yaml | 28 ++++++++++++++-------------- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/package.json b/package.json index ea286b00..7fc3cf13 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ }, "dependencies": { "@react-pdf/renderer": "^4.3.2", - "@tanstack/react-router": "^1.150.0", + "@tanstack/react-router": "^1.151.1", "@vitejs/plugin-react": "5.1.2", "classnames": "^2.5.1", "commander": "^14.0.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 235f6725..620abfed 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -12,8 +12,8 @@ importers: specifier: ^4.3.2 version: 4.3.2(react@19.2.3) '@tanstack/react-router': - specifier: ^1.150.0 - version: 1.150.0(react-dom@19.2.3(react@19.2.3))(react@19.2.3) + specifier: ^1.151.1 + version: 1.151.1(react-dom@19.2.3(react@19.2.3))(react@19.2.3) '@vitejs/plugin-react': specifier: 5.1.2 version: 5.1.2(vite@8.0.0-beta.8(@types/node@25.0.9)(esbuild@0.27.2)(tsx@4.21.0)(yaml@2.8.2)) @@ -772,12 +772,12 @@ packages: '@swc/helpers@0.5.18': resolution: {integrity: sha512-TXTnIcNJQEKwThMMqBXsZ4VGAza6bvN4pa41Rkqoio6QBKMvo+5lexeTMScGCIxtzgQJzElcvIltani+adC5PQ==} - '@tanstack/history@1.145.7': - resolution: {integrity: sha512-gMo/ReTUp0a3IOcZoI3hH6PLDC2R/5ELQ7P2yu9F6aEkA0wSQh+Q4qzMrtcKvF2ut0oE+16xWCGDo/TdYd6cEQ==} + '@tanstack/history@1.151.1': + resolution: {integrity: sha512-Z/eymNBuUGHYIea7nNX3xR5feqx418ChlwWOKklVpCVzEQ5Q3kNTUw+WK4HYUKxF+1uXFN01Dbuhhl7SmW1LJA==} engines: {node: '>=12'} - '@tanstack/react-router@1.150.0': - resolution: {integrity: sha512-k/oycTCpBT2XoEk9dNd/nNYhF0X9fLSB10lT40+NVX1TjOtBq5whksk8MT6oRnSoQ8KWeb7La3G9kFaAeSULkA==} + '@tanstack/react-router@1.151.1': + resolution: {integrity: sha512-343gO0W5HrYH4TEhZIvnjqbrLHHfIk0/OE0+fWgWh/Ke0dVTMOuEc1EAIgEpMqZgnsma+4gqIroqjivYd9rR2A==} engines: {node: '>=12'} peerDependencies: react: '>=18.0.0 || >=19.0.0' @@ -789,8 +789,8 @@ packages: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - '@tanstack/router-core@1.150.0': - resolution: {integrity: sha512-cAm44t/tUbfyzaDH+rE/WO4u3AgaZdpJp00xjQ4gNkC2O95ntVHq5fx+4fhtrkKpgdXoKldgk8OK66djiWpuGQ==} + '@tanstack/router-core@1.151.1': + resolution: {integrity: sha512-RNH/jkxqPhCCEMZ3LTGQXJGzQKMATAfHRT2oquFD9T4BqBW4IMeZoeptEPV4So8j3lK33tn0IDkyg6Jzyq0JcQ==} engines: {node: '>=12'} '@tanstack/store@0.8.0': @@ -2847,13 +2847,13 @@ snapshots: dependencies: tslib: 2.8.1 - '@tanstack/history@1.145.7': {} + '@tanstack/history@1.151.1': {} - '@tanstack/react-router@1.150.0(react-dom@19.2.3(react@19.2.3))(react@19.2.3)': + '@tanstack/react-router@1.151.1(react-dom@19.2.3(react@19.2.3))(react@19.2.3)': dependencies: - '@tanstack/history': 1.145.7 + '@tanstack/history': 1.151.1 '@tanstack/react-store': 0.8.0(react-dom@19.2.3(react@19.2.3))(react@19.2.3) - '@tanstack/router-core': 1.150.0 + '@tanstack/router-core': 1.151.1 isbot: 5.1.32 react: 19.2.3 react-dom: 19.2.3(react@19.2.3) @@ -2867,9 +2867,9 @@ snapshots: react-dom: 19.2.3(react@19.2.3) use-sync-external-store: 1.6.0(react@19.2.3) - '@tanstack/router-core@1.150.0': + '@tanstack/router-core@1.151.1': dependencies: - '@tanstack/history': 1.145.7 + '@tanstack/history': 1.151.1 '@tanstack/store': 0.8.0 cookie-es: 2.0.0 seroval: 1.4.2 From 77d18f18ad038f77d587302b2a4d81f48e3db2fd Mon Sep 17 00:00:00 2001 From: Mark Macdonald <mark.t.macdonald@googlemail.com> Date: Sat, 17 Jan 2026 21:05:09 +0000 Subject: [PATCH 8/8] Bump version --- package.json | 2 +- src/docs/parameters.json | 2 +- src/docs/release-notes.md | 3 ++- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 7fc3cf13..fd6c6eed 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "docgen-tool", "type": "module", - "version": "6.4.4", + "version": "6.4.5", "description": "A tool for creating HTML and PDF documentation", "packageManager": "pnpm@10.28.0", "bin": "./dist/cli/cli.js", diff --git a/src/docs/parameters.json b/src/docs/parameters.json index 33da4607..c443021e 100644 --- a/src/docs/parameters.json +++ b/src/docs/parameters.json @@ -1,7 +1,7 @@ { "title": "DocGen - a documentation tool", "name": "DocGen", - "version": "6.4.4", + "version": "6.4.5", "date": "17/01/2026", "organization": { "name": "Inkit Inc. and contributors", diff --git a/src/docs/release-notes.md b/src/docs/release-notes.md index fdad8996..d1fd25f6 100644 --- a/src/docs/release-notes.md +++ b/src/docs/release-notes.md @@ -1,7 +1,8 @@ -## DocGen 6.4.4 17/01/2026 +## DocGen 6.4.4, 6.4.5 17/01/2026 - Remove dependency on [cheerio](https://www.npmjs.com/package/cheerio), replace with [node-html-parser](https://www.npmjs.com/package/node-html-parser) ([#192](https://github.com/mtmacdonald/docgen/issues/192)) - Upgrade package manager from [yarn classic](https://classic.yarnpkg.com/lang/en) to [pnpm.io](https://pnpm.io) ([#191](https://github.com/mtmacdonald/docgen/issues/191)) +- Upgrade and clean up dependencies ## DocGen 6.4.2, 6.4.3 15/01/2026