From bde3b1cb3de955b47034f0bfaa43dec13c67999a Mon Sep 17 00:00:00 2001 From: Lachlan Collins <1667261+lachlancollins@users.noreply.github.com> Date: Fri, 19 Jul 2024 21:22:50 +1000 Subject: [PATCH] docs(typedoc): Use `generateReferenceDocs` function (#872) * docs(typedoc): Use `generateReferenceDocs` function * Simplify publish.js --- package.json | 7 +- pnpm-lock.yaml | 210 +++++++++++++++--- scripts/config.js | 66 ------ .../{reference-docs.js => generateDocs.js} | 54 +---- scripts/publish.js | 58 ++++- scripts/typedoc-remove-prefix.js | 39 ---- scripts/types.d.ts | 9 - 7 files changed, 238 insertions(+), 205 deletions(-) delete mode 100644 scripts/config.js rename scripts/{reference-docs.js => generateDocs.js} (58%) delete mode 100644 scripts/typedoc-remove-prefix.js delete mode 100644 scripts/types.d.ts diff --git a/package.json b/package.json index b7ddcdd33..04b9d8700 100644 --- a/package.json +++ b/package.json @@ -27,7 +27,7 @@ "dev": "pnpm run watch", "prettier": "prettier --ignore-unknown .", "prettier:write": "pnpm run prettier --write", - "docs:reference": "node scripts/reference-docs.js", + "docs:generate": "node scripts/generateDocs.js", "cipublish": "node scripts/publish.js", "cipublishforce": "CI=true pnpm cipublish" }, @@ -41,7 +41,7 @@ "devDependencies": { "@eslint-react/eslint-plugin": "^1.5.26", "@solidjs/testing-library": "^0.8.8", - "@tanstack/config": "^0.9.6", + "@tanstack/config": "^0.10.0", "@testing-library/jest-dom": "^6.4.6", "@testing-library/react": "^16.0.0", "@testing-library/user-event": "^14.5.2", @@ -62,9 +62,6 @@ "rimraf": "^5.0.9", "sherif": "^0.10.0", "solid-js": "^1.8.18", - "typedoc": "^0.26.4", - "typedoc-plugin-frontmatter": "^1.0.0", - "typedoc-plugin-markdown": "^4.2.1", "typescript": "5.4.2", "typescript49": "npm:typescript@4.9", "typescript50": "npm:typescript@5.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b66ffd5de..e3445fdcd 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -15,8 +15,8 @@ importers: specifier: ^0.8.8 version: 0.8.8(@solidjs/router@0.13.0(solid-js@1.8.18))(solid-js@1.8.18) '@tanstack/config': - specifier: ^0.9.6 - version: 0.9.6(@types/node@20.14.10)(esbuild@0.21.5)(eslint@8.57.0)(rollup@4.18.0)(typescript@5.4.2)(vite@5.3.3(@types/node@20.14.10)(less@4.2.0)(sass@1.72.0)(sugarss@4.0.1)(terser@5.29.1)) + specifier: ^0.10.0 + version: 0.10.0(@types/node@20.14.10)(esbuild@0.21.5)(eslint@8.57.0)(rollup@4.18.0)(typescript@5.4.2)(vite@5.3.3(@types/node@20.14.10)(less@4.2.0)(sass@1.72.0)(sugarss@4.0.1)(terser@5.29.1)) '@testing-library/jest-dom': specifier: ^6.4.6 version: 6.4.6(vitest@1.6.0(@types/node@20.14.10)(jsdom@24.1.0)(less@4.2.0)(sass@1.72.0)(sugarss@4.0.1)(terser@5.29.1)) @@ -77,15 +77,6 @@ importers: solid-js: specifier: ^1.8.18 version: 1.8.18 - typedoc: - specifier: ^0.26.4 - version: 0.26.4(typescript@5.4.2) - typedoc-plugin-frontmatter: - specifier: ^1.0.0 - version: 1.0.0(typedoc-plugin-markdown@4.2.1(typedoc@0.26.4(typescript@5.4.2))) - typedoc-plugin-markdown: - specifier: ^4.2.1 - version: 4.2.1(typedoc@0.26.4(typescript@5.4.2)) typescript: specifier: 5.4.2 version: 5.4.2 @@ -3600,6 +3591,9 @@ packages: engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true + '@rtsao/scc@1.1.0': + resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==} + '@rushstack/node-core-library@4.0.2': resolution: {integrity: sha512-hyES82QVpkfQMeBMteQUnrhASL/KHPhd7iJ8euduwNJG4mu2GSOKybf0rOEjOm1Wz7CwJEUm9y0yD7jg2C1bfg==} peerDependencies: @@ -3764,8 +3758,8 @@ packages: '@angular/common': '>=16 < 18' '@angular/core': '>=16 < 18' - '@tanstack/config@0.9.6': - resolution: {integrity: sha512-3ODNuebNYQDlEveIKSqJmzHz+d5skMhVVBvknVEdMusckJZZH+LmoDfWItEfHOO4aD/Jle26kEHX+9D7iGQWow==} + '@tanstack/config@0.10.0': + resolution: {integrity: sha512-Yz+7cWxuDo8onU2nm4+kwA9B2GSp+l1k8oSrqiERNkmRu6dKtiiW8ENFqLuXi0p5fi0sBdLeUcEhfMxTifzmtA==} engines: {node: '>=18'} hasBin: true @@ -4079,6 +4073,17 @@ packages: typescript: optional: true + '@typescript-eslint/eslint-plugin@7.16.1': + resolution: {integrity: sha512-SxdPak/5bO0EnGktV05+Hq8oatjAYVY3Zh2bye9pGZy6+jwyR3LG3YKkV4YatlsgqXP28BTeVm9pqwJM96vf2A==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + '@typescript-eslint/parser': ^7.0.0 + eslint: ^8.56.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + '@typescript-eslint/parser@7.16.0': resolution: {integrity: sha512-ar9E+k7CU8rWi2e5ErzQiC93KKEFAXA2Kky0scAlPcxYblLt8+XZuHUZwlyfXILyQa95P6lQg+eZgh/dDs3+Vw==} engines: {node: ^18.18.0 || >=20.0.0} @@ -4089,10 +4094,24 @@ packages: typescript: optional: true + '@typescript-eslint/parser@7.16.1': + resolution: {integrity: sha512-u+1Qx86jfGQ5i4JjK33/FnawZRpsLxRnKzGE6EABZ40KxVT/vWsiZFEBBHjFOljmmV3MBYOHEKi0Jm9hbAOClA==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + eslint: ^8.57.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + '@typescript-eslint/scope-manager@7.16.0': resolution: {integrity: sha512-8gVv3kW6n01Q6TrI1cmTZ9YMFi3ucDT7i7aI5lEikk2ebk1AEjrwX8MDTdaX5D7fPXMBLvnsaa0IFTAu+jcfOw==} engines: {node: ^18.18.0 || >=20.0.0} + '@typescript-eslint/scope-manager@7.16.1': + resolution: {integrity: sha512-nYpyv6ALte18gbMz323RM+vpFpTjfNdyakbf3nsLvF43uF9KeNC289SUEW3QLZ1xPtyINJ1dIsZOuWuSRIWygw==} + engines: {node: ^18.18.0 || >=20.0.0} + '@typescript-eslint/type-utils@7.16.0': resolution: {integrity: sha512-j0fuUswUjDHfqV/UdW6mLtOQQseORqfdmoBNDFOqs9rvNVR2e+cmu6zJu/Ku4SDuqiJko6YnhwcL8x45r8Oqxg==} engines: {node: ^18.18.0 || >=20.0.0} @@ -4103,10 +4122,24 @@ packages: typescript: optional: true + '@typescript-eslint/type-utils@7.16.1': + resolution: {integrity: sha512-rbu/H2MWXN4SkjIIyWcmYBjlp55VT+1G3duFOIukTNFxr9PI35pLc2ydwAfejCEitCv4uztA07q0QWanOHC7dA==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + eslint: ^8.56.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + '@typescript-eslint/types@7.16.0': resolution: {integrity: sha512-fecuH15Y+TzlUutvUl9Cc2XJxqdLr7+93SQIbcZfd4XRGGKoxyljK27b+kxKamjRkU7FYC6RrbSCg0ALcZn/xw==} engines: {node: ^18.18.0 || >=20.0.0} + '@typescript-eslint/types@7.16.1': + resolution: {integrity: sha512-AQn9XqCzUXd4bAVEsAXM/Izk11Wx2u4H3BAfQVhSfzfDOm/wAON9nP7J5rpkCxts7E5TELmN845xTUCQrD1xIQ==} + engines: {node: ^18.18.0 || >=20.0.0} + '@typescript-eslint/typescript-estree@7.16.0': resolution: {integrity: sha512-a5NTvk51ZndFuOLCh5OaJBELYc2O3Zqxfl3Js78VFE1zE46J2AaVuW+rEbVkQznjkmlzWsUI15BG5tQMixzZLw==} engines: {node: ^18.18.0 || >=20.0.0} @@ -4116,16 +4149,35 @@ packages: typescript: optional: true + '@typescript-eslint/typescript-estree@7.16.1': + resolution: {integrity: sha512-0vFPk8tMjj6apaAZ1HlwM8w7jbghC8jc1aRNJG5vN8Ym5miyhTQGMqU++kuBFDNKe9NcPeZ6x0zfSzV8xC1UlQ==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + '@typescript-eslint/utils@7.16.0': resolution: {integrity: sha512-PqP4kP3hb4r7Jav+NiRCntlVzhxBNWq6ZQ+zQwII1y/G/1gdIPeYDCKr2+dH6049yJQsWZiHU6RlwvIFBXXGNA==} engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: eslint: ^8.56.0 + '@typescript-eslint/utils@7.16.1': + resolution: {integrity: sha512-WrFM8nzCowV0he0RlkotGDujx78xudsxnGMBHI88l5J8wEhED6yBwaSLP99ygfrzAjsQvcYQ94quDwI0d7E1fA==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + eslint: ^8.56.0 + '@typescript-eslint/visitor-keys@7.16.0': resolution: {integrity: sha512-rMo01uPy9C7XxG7AFsxa8zLnWXTF8N3PYclekWSrurvhwiw1eW88mrKiAYe6s53AUY57nTRz8dJsuuXdkAhzCg==} engines: {node: ^18.18.0 || >=20.0.0} + '@typescript-eslint/visitor-keys@7.16.1': + resolution: {integrity: sha512-Qlzzx4sE4u3FsHTPQAAQFJFNOuqtuY0LFrZHwQ8IHK705XxBiWOFkfKRWu6niB7hwfgnwIpO4jTC75ozW1PHWg==} + engines: {node: ^18.18.0 || >=20.0.0} + '@ungap/structured-clone@1.2.0': resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} @@ -5463,8 +5515,8 @@ packages: peerDependencies: eslint: '>=8' - eslint-plugin-import-x@0.5.3: - resolution: {integrity: sha512-hJ/wkMcsLQXAZL3+txXIDpbW5cqwdm1rLTqV4VRY03aIbzE3zWE7rPZKW6Gzf7xyl1u3V1iYC6tOG77d9NF4GQ==} + eslint-plugin-import-x@3.0.1: + resolution: {integrity: sha512-jzQgJuE4ssxwNi0aMBkOL8whd4eHb0Z/uFWsk8uEoYB7xwTkAptSKojLzRswxgf/1bhH6QgcLjgabUBQqluBIg==} engines: {node: '>=16'} peerDependencies: eslint: ^8.56.0 || ^9.0.0-0 @@ -8073,6 +8125,11 @@ packages: engines: {node: '>=10'} hasBin: true + semver@7.6.3: + resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==} + engines: {node: '>=10'} + hasBin: true + send@0.18.0: resolution: {integrity: sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==} engines: {node: '>= 0.8.0'} @@ -8737,8 +8794,8 @@ packages: types-react@19.0.0-rc.1: resolution: {integrity: sha512-RshndUfqTW6K3STLPis8BtAYCGOkMbtvYsi90gmVNDZBXUyUc5juf2PE9LfS/JmOlUIRO8cWTS/1MTnmhjDqyQ==} - typescript-eslint@7.16.0: - resolution: {integrity: sha512-kaVRivQjOzuoCXU6+hLnjo3/baxyzWVO5GrnExkFzETRYJKVHYkrJglOu2OCm8Hi9RPDWX1PTNNTpU5KRV0+RA==} + typescript-eslint@7.16.1: + resolution: {integrity: sha512-889oE5qELj65q/tGeOSvlreNKhimitFwZqQ0o7PcWC7/lgRkAMknznsCsV8J8mZGTP/Z+cIbX8accf2DE33hrA==} engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: eslint: ^8.56.0 @@ -12099,6 +12156,8 @@ snapshots: optionalDependencies: fsevents: 2.3.3 + '@rtsao/scc@1.1.0': {} + '@rushstack/node-core-library@4.0.2(@types/node@20.14.10)': dependencies: fs-extra: 7.0.1 @@ -12259,14 +12318,14 @@ snapshots: '@tanstack/store': 0.5.5 tslib: 2.6.3 - '@tanstack/config@0.9.6(@types/node@20.14.10)(esbuild@0.21.5)(eslint@8.57.0)(rollup@4.18.0)(typescript@5.4.2)(vite@5.3.3(@types/node@20.14.10)(less@4.2.0)(sass@1.72.0)(sugarss@4.0.1)(terser@5.29.1))': + '@tanstack/config@0.10.0(@types/node@20.14.10)(esbuild@0.21.5)(eslint@8.57.0)(rollup@4.18.0)(typescript@5.4.2)(vite@5.3.3(@types/node@20.14.10)(less@4.2.0)(sass@1.72.0)(sugarss@4.0.1)(terser@5.29.1))': dependencies: '@commitlint/parse': 19.0.3 '@eslint/js': 8.57.0 commander: 12.1.0 current-git-branch: 1.1.0 esbuild-register: 3.5.0(esbuild@0.21.5) - eslint-plugin-import-x: 0.5.3(eslint@8.57.0)(typescript@5.4.2) + eslint-plugin-import-x: 3.0.1(eslint@8.57.0)(typescript@5.4.2) eslint-plugin-n: 17.9.0(eslint@8.57.0) globals: 15.8.0 interpret: 3.1.1 @@ -12274,9 +12333,12 @@ snapshots: liftoff: 5.0.0 minimist: 1.2.8 rollup-plugin-preserve-directives: 0.4.0(rollup@4.18.0) - semver: 7.6.2 + semver: 7.6.3 simple-git: 3.25.0 - typescript-eslint: 7.16.0(eslint@8.57.0)(typescript@5.4.2) + typedoc: 0.26.4(typescript@5.4.2) + typedoc-plugin-frontmatter: 1.0.0(typedoc-plugin-markdown@4.2.1(typedoc@0.26.4(typescript@5.4.2))) + typedoc-plugin-markdown: 4.2.1(typedoc@0.26.4(typescript@5.4.2)) + typescript-eslint: 7.16.1(eslint@8.57.0)(typescript@5.4.2) v8flags: 4.0.1 vite-plugin-dts: 3.9.1(@types/node@20.14.10)(rollup@4.18.0)(typescript@5.4.2)(vite@5.3.3(@types/node@20.14.10)(less@4.2.0)(sass@1.72.0)(sugarss@4.0.1)(terser@5.29.1)) vite-plugin-externalize-deps: 0.8.0(vite@5.3.3(@types/node@20.14.10)(less@4.2.0)(sass@1.72.0)(sugarss@4.0.1)(terser@5.29.1)) @@ -12702,6 +12764,24 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/eslint-plugin@7.16.1(@typescript-eslint/parser@7.16.1(eslint@8.57.0)(typescript@5.4.2))(eslint@8.57.0)(typescript@5.4.2)': + dependencies: + '@eslint-community/regexpp': 4.11.0 + '@typescript-eslint/parser': 7.16.1(eslint@8.57.0)(typescript@5.4.2) + '@typescript-eslint/scope-manager': 7.16.1 + '@typescript-eslint/type-utils': 7.16.1(eslint@8.57.0)(typescript@5.4.2) + '@typescript-eslint/utils': 7.16.1(eslint@8.57.0)(typescript@5.4.2) + '@typescript-eslint/visitor-keys': 7.16.1 + eslint: 8.57.0 + graphemer: 1.4.0 + ignore: 5.3.1 + natural-compare: 1.4.0 + ts-api-utils: 1.3.0(typescript@5.4.2) + optionalDependencies: + typescript: 5.4.2 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/parser@7.16.0(eslint@8.57.0)(typescript@5.4.2)': dependencies: '@typescript-eslint/scope-manager': 7.16.0 @@ -12715,11 +12795,29 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/parser@7.16.1(eslint@8.57.0)(typescript@5.4.2)': + dependencies: + '@typescript-eslint/scope-manager': 7.16.1 + '@typescript-eslint/types': 7.16.1 + '@typescript-eslint/typescript-estree': 7.16.1(typescript@5.4.2) + '@typescript-eslint/visitor-keys': 7.16.1 + debug: 4.3.5 + eslint: 8.57.0 + optionalDependencies: + typescript: 5.4.2 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/scope-manager@7.16.0': dependencies: '@typescript-eslint/types': 7.16.0 '@typescript-eslint/visitor-keys': 7.16.0 + '@typescript-eslint/scope-manager@7.16.1': + dependencies: + '@typescript-eslint/types': 7.16.1 + '@typescript-eslint/visitor-keys': 7.16.1 + '@typescript-eslint/type-utils@7.16.0(eslint@8.57.0)(typescript@5.4.2)': dependencies: '@typescript-eslint/typescript-estree': 7.16.0(typescript@5.4.2) @@ -12732,8 +12830,22 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/type-utils@7.16.1(eslint@8.57.0)(typescript@5.4.2)': + dependencies: + '@typescript-eslint/typescript-estree': 7.16.1(typescript@5.4.2) + '@typescript-eslint/utils': 7.16.1(eslint@8.57.0)(typescript@5.4.2) + debug: 4.3.5 + eslint: 8.57.0 + ts-api-utils: 1.3.0(typescript@5.4.2) + optionalDependencies: + typescript: 5.4.2 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/types@7.16.0': {} + '@typescript-eslint/types@7.16.1': {} + '@typescript-eslint/typescript-estree@7.16.0(typescript@5.4.2)': dependencies: '@typescript-eslint/types': 7.16.0 @@ -12749,6 +12861,21 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/typescript-estree@7.16.1(typescript@5.4.2)': + dependencies: + '@typescript-eslint/types': 7.16.1 + '@typescript-eslint/visitor-keys': 7.16.1 + debug: 4.3.5 + globby: 11.1.0 + is-glob: 4.0.3 + minimatch: 9.0.5 + semver: 7.6.3 + ts-api-utils: 1.3.0(typescript@5.4.2) + optionalDependencies: + typescript: 5.4.2 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/utils@7.16.0(eslint@8.57.0)(typescript@5.4.2)': dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) @@ -12760,11 +12887,27 @@ snapshots: - supports-color - typescript + '@typescript-eslint/utils@7.16.1(eslint@8.57.0)(typescript@5.4.2)': + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) + '@typescript-eslint/scope-manager': 7.16.1 + '@typescript-eslint/types': 7.16.1 + '@typescript-eslint/typescript-estree': 7.16.1(typescript@5.4.2) + eslint: 8.57.0 + transitivePeerDependencies: + - supports-color + - typescript + '@typescript-eslint/visitor-keys@7.16.0': dependencies: '@typescript-eslint/types': 7.16.0 eslint-visitor-keys: 3.4.3 + '@typescript-eslint/visitor-keys@7.16.1': + dependencies: + '@typescript-eslint/types': 7.16.1 + eslint-visitor-keys: 3.4.3 + '@ungap/structured-clone@1.2.0': {} '@vercel/nft@0.26.5(encoding@0.1.13)': @@ -14346,7 +14489,7 @@ snapshots: eslint-compat-utils@0.5.1(eslint@8.57.0): dependencies: eslint: 8.57.0 - semver: 7.6.2 + semver: 7.6.3 eslint-import-resolver-node@0.3.9: dependencies: @@ -14363,8 +14506,9 @@ snapshots: eslint: 8.57.0 eslint-compat-utils: 0.5.1(eslint@8.57.0) - eslint-plugin-import-x@0.5.3(eslint@8.57.0)(typescript@5.4.2): + eslint-plugin-import-x@3.0.1(eslint@8.57.0)(typescript@5.4.2): dependencies: + '@rtsao/scc': 1.1.0 '@typescript-eslint/utils': 7.16.0(eslint@8.57.0)(typescript@5.4.2) debug: 4.3.5 doctrine: 3.0.0 @@ -14373,7 +14517,7 @@ snapshots: get-tsconfig: 4.7.5 is-glob: 4.0.3 minimatch: 9.0.5 - semver: 7.6.2 + semver: 7.6.3 stable-hash: 0.0.4 tslib: 2.6.3 transitivePeerDependencies: @@ -14390,7 +14534,7 @@ snapshots: globals: 15.8.0 ignore: 5.3.1 minimatch: 9.0.5 - semver: 7.6.2 + semver: 7.6.3 eslint-plugin-react-debug@1.5.26(eslint@8.57.0)(typescript@5.4.2): dependencies: @@ -16328,14 +16472,14 @@ snapshots: dependencies: hosted-git-info: 4.1.0 is-core-module: 2.13.1 - semver: 7.6.2 + semver: 7.6.3 validate-npm-package-license: 3.0.4 normalize-package-data@5.0.0: dependencies: hosted-git-info: 6.1.1 is-core-module: 2.13.1 - semver: 7.6.2 + semver: 7.6.3 validate-npm-package-license: 3.0.4 normalize-package-data@6.0.0: @@ -17372,6 +17516,8 @@ snapshots: semver@7.6.2: {} + semver@7.6.3: {} + send@0.18.0: dependencies: debug: 2.6.9 @@ -18066,11 +18212,11 @@ snapshots: dependencies: csstype: 3.1.3 - typescript-eslint@7.16.0(eslint@8.57.0)(typescript@5.4.2): + typescript-eslint@7.16.1(eslint@8.57.0)(typescript@5.4.2): dependencies: - '@typescript-eslint/eslint-plugin': 7.16.0(@typescript-eslint/parser@7.16.0(eslint@8.57.0)(typescript@5.4.2))(eslint@8.57.0)(typescript@5.4.2) - '@typescript-eslint/parser': 7.16.0(eslint@8.57.0)(typescript@5.4.2) - '@typescript-eslint/utils': 7.16.0(eslint@8.57.0)(typescript@5.4.2) + '@typescript-eslint/eslint-plugin': 7.16.1(@typescript-eslint/parser@7.16.1(eslint@8.57.0)(typescript@5.4.2))(eslint@8.57.0)(typescript@5.4.2) + '@typescript-eslint/parser': 7.16.1(eslint@8.57.0)(typescript@5.4.2) + '@typescript-eslint/utils': 7.16.1(eslint@8.57.0)(typescript@5.4.2) eslint: 8.57.0 optionalDependencies: typescript: 5.4.2 @@ -18590,7 +18736,7 @@ snapshots: dependencies: '@volar/typescript': 1.11.1 '@vue/language-core': 1.8.27(typescript@5.4.2) - semver: 7.6.2 + semver: 7.6.3 typescript: 5.4.2 vue-tsc@2.0.26(typescript@5.4.2): diff --git a/scripts/config.js b/scripts/config.js deleted file mode 100644 index 4da21515e..000000000 --- a/scripts/config.js +++ /dev/null @@ -1,66 +0,0 @@ -// @ts-check - -import { resolve } from 'node:path' -import { fileURLToPath } from 'node:url' - -/** - * List your npm packages here. The first package will be used as the versioner. - * @type {import('./types').Package[]} - */ -export const packages = [ - { - name: '@tanstack/form-core', - packageDir: 'packages/form-core', - }, - { - name: '@tanstack/react-form', - packageDir: 'packages/react-form', - }, - { - name: '@tanstack/vue-form', - packageDir: 'packages/vue-form', - }, - { - name: '@tanstack/zod-form-adapter', - packageDir: 'packages/zod-form-adapter', - }, - { - name: '@tanstack/yup-form-adapter', - packageDir: 'packages/yup-form-adapter', - }, - { - name: '@tanstack/valibot-form-adapter', - packageDir: 'packages/valibot-form-adapter', - }, - { - name: '@tanstack/solid-form', - packageDir: 'packages/solid-form', - }, - { - name: '@tanstack/lit-form', - packageDir: 'packages/lit-form', - }, - { - name: '@tanstack/angular-form', - packageDir: 'packages/angular-form', - }, -] - -/** - * Contains config for publishable branches. - * @type {Record} - */ -export const branchConfigs = { - main: { - prerelease: false, - }, - alpha: { - prerelease: true, - }, - beta: { - prerelease: true, - }, -} - -const __dirname = fileURLToPath(new URL('.', import.meta.url)) -export const rootDir = resolve(__dirname, '..') diff --git a/scripts/reference-docs.js b/scripts/generateDocs.js similarity index 58% rename from scripts/reference-docs.js rename to scripts/generateDocs.js index bbcb738fc..d82983837 100644 --- a/scripts/reference-docs.js +++ b/scripts/generateDocs.js @@ -1,30 +1,10 @@ import { resolve } from 'node:path' import { fileURLToPath } from 'node:url' -import { mkdir, rm } from 'node:fs/promises' -import * as TypeDoc from 'typedoc' +import { generateReferenceDocs } from '@tanstack/config/typedoc' const __dirname = fileURLToPath(new URL('.', import.meta.url)) -/** - * @type {Partial} - */ -const options = { - plugin: [ - 'typedoc-plugin-markdown', - 'typedoc-plugin-frontmatter', - resolve(__dirname, './typedoc-remove-prefix.js'), - ], - hideGenerator: true, - readme: 'none', - flattenOutputFiles: true, - entryFileName: 'index', - hideBreadcrumbs: true, - hidePageHeader: true, - useCodeBlocks: true, - excludePrivate: true, -} - -/** @type {Array<{name: string, entryPoints: Array, tsconfig: string, outputDir: string, exclude?: Array}>} */ +/** @type {import('@tanstack/config/typedoc').Package[]} */ const packages = [ { name: 'form-core', @@ -69,32 +49,6 @@ const packages = [ }, ] -async function main() { - for (const pkg of packages) { - // Clean and recreate the output directories - try { - await rm(pkg.outputDir, { recursive: true }) - } catch (error) { - // @ts-expect-error - if (error.code !== 'ENOENT') { - throw error - } - } - await mkdir(pkg.outputDir, { recursive: true }) - - const app = await TypeDoc.Application.bootstrapWithPlugins({ - ...options, - entryPoints: pkg.entryPoints, - tsconfig: pkg.tsconfig, - exclude: pkg.exclude, - }) - - const project = await app.convert() - - if (project) { - await app.generateDocs(project, pkg.outputDir) - } - } -} +await generateReferenceDocs({ packages }) -main().catch(console.error) +process.exit(0) diff --git a/scripts/publish.js b/scripts/publish.js index ba818b505..888c09c9b 100644 --- a/scripts/publish.js +++ b/scripts/publish.js @@ -1,12 +1,62 @@ // @ts-check +import { resolve } from 'node:path' +import { fileURLToPath } from 'node:url' import { publish } from '@tanstack/config/publish' -import { branchConfigs, packages, rootDir } from './config.js' + +const __dirname = fileURLToPath(new URL('.', import.meta.url)) await publish({ - branchConfigs, - packages, - rootDir, + packages: [ + { + name: '@tanstack/form-core', + packageDir: 'packages/form-core', + }, + { + name: '@tanstack/react-form', + packageDir: 'packages/react-form', + }, + { + name: '@tanstack/vue-form', + packageDir: 'packages/vue-form', + }, + { + name: '@tanstack/zod-form-adapter', + packageDir: 'packages/zod-form-adapter', + }, + { + name: '@tanstack/yup-form-adapter', + packageDir: 'packages/yup-form-adapter', + }, + { + name: '@tanstack/valibot-form-adapter', + packageDir: 'packages/valibot-form-adapter', + }, + { + name: '@tanstack/solid-form', + packageDir: 'packages/solid-form', + }, + { + name: '@tanstack/lit-form', + packageDir: 'packages/lit-form', + }, + { + name: '@tanstack/angular-form', + packageDir: 'packages/angular-form', + }, + ], + branchConfigs: { + main: { + prerelease: false, + }, + alpha: { + prerelease: true, + }, + beta: { + prerelease: true, + }, + }, + rootDir: resolve(__dirname, '..'), branch: process.env.BRANCH, tag: process.env.TAG, ghToken: process.env.GH_TOKEN, diff --git a/scripts/typedoc-remove-prefix.js b/scripts/typedoc-remove-prefix.js deleted file mode 100644 index fe00189d7..000000000 --- a/scripts/typedoc-remove-prefix.js +++ /dev/null @@ -1,39 +0,0 @@ -import { - MarkdownPageEvent, - MarkdownRendererEvent, -} from 'typedoc-plugin-markdown' - -/** - * @param {import("typedoc-plugin-markdown").MarkdownApplication} app - */ -export function load(app) { - // Add `id` and `title` to frontmatter - app.renderer.on( - MarkdownPageEvent.BEGIN, - /** @param {import('typedoc-plugin-markdown').MarkdownPageEvent} page */ - (page) => { - page.frontmatter = { - id: page.model.name, - title: page.model.name, - } - }, - ) - // Rename output files - app.renderer.on( - MarkdownRendererEvent.BEGIN, - /** - * @param {import("typedoc-plugin-markdown").MarkdownRendererEvent} renderer - */ (renderer) => { - renderer.urls = renderer.urls?.map((urlMapping) => { - const name = urlMapping.url.split('.') - if (name[0] !== 'index') { - name.splice(0, 1) - } - const newBasename = name.join('.') - urlMapping.url = newBasename - urlMapping.model.url = newBasename - return urlMapping - }) - }, - ) -} diff --git a/scripts/types.d.ts b/scripts/types.d.ts deleted file mode 100644 index ac48f9b8c..000000000 --- a/scripts/types.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -export type Package = { - name: string - packageDir: string -} - -export type BranchConfig = { - prerelease: boolean - previousVersion?: boolean -}