diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4911ac81d..e7bf4452b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -19,7 +19,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - command: ['lint', 'lint:attw', 'lint:pub', 'test', 'test:tsd', 'type:check', 'build'] + command: ['lint', 'lint:attw', 'lint:monorepo', 'lint:pub', 'test', 'test:tsd', 'type:check', 'build'] steps: - uses: actions/checkout@v4 - uses: pnpm/action-setup@v2 diff --git a/package.json b/package.json index 9191cb17d..2c67d3538 100644 --- a/package.json +++ b/package.json @@ -36,6 +36,7 @@ "graph": "rimraf ./graph && mkdir graph && turbo run build --graph=graph/index.html", "lint": "turbo run prepack lint", "lint:attw": "turbo run prepack lint:attw", + "lint:monorepo": "sherif", "lint:pack": "packlint sort -R", "lint:pub": "turbo run prepack lint:pub", "postinstall": "husky install", @@ -73,6 +74,7 @@ "prettier": "^3.0.3", "publint": "^0.2.5", "rimraf": "^5.0.5", + "sherif": "^0.4.2", "tsup": "^7.2.0", "turbo": "latest", "typescript": "^5.2.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5467b1a1e..67761bd1f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -86,6 +86,9 @@ importers: rimraf: specifier: ^5.0.5 version: 5.0.5 + sherif: + specifier: ^0.4.2 + version: 0.4.2 tsup: specifier: ^7.2.0 version: 7.2.0(typescript@5.2.2) @@ -357,8 +360,8 @@ importers: specifier: ^18.2.14 version: 18.2.14 eslint-config-next: - specifier: ^14.0.0 - version: 14.0.1(eslint@8.53.0)(typescript@5.2.2) + specifier: ^14.0.2 + version: 14.0.2(eslint@8.53.0)(typescript@5.2.2) packages: @@ -683,16 +686,6 @@ packages: conventional-changelog-conventionalcommits: 7.0.2 dev: true - /@commitlint/config-validator@18.1.0: - resolution: {integrity: sha512-kbHkIuItXn93o2NmTdwi5Mk1ujyuSIysRE/XHtrcps/27GuUKEIqBJp6TdJ4Sq+ze59RlzYSHMKuDKZbfg9+uQ==} - engines: {node: '>=v18'} - requiresBuild: true - dependencies: - '@commitlint/types': 18.1.0 - ajv: 8.12.0 - dev: true - optional: true - /@commitlint/config-validator@18.4.0: resolution: {integrity: sha512-1y6qHMU3o4cYQSK+Y9EnmH6H1GRiwQGjnLIUOIKlekrmfc8MrMk1ByNmb8od4vK3qHJAaL/77/5n+1uyyIF5dA==} engines: {node: '>=v18'} @@ -713,13 +706,6 @@ packages: lodash.upperfirst: 4.3.1 dev: true - /@commitlint/execute-rule@18.1.0: - resolution: {integrity: sha512-w3Vt4K+O7+nSr9/gFSEfZ1exKUOPSlJaRpnk7Y+XowEhvwT7AIk1HNANH+gETf0zGZ020+hfiMW/Ome+SNCUsg==} - engines: {node: '>=v18'} - requiresBuild: true - dev: true - optional: true - /@commitlint/execute-rule@18.4.0: resolution: {integrity: sha512-g013SWki6ZWhURBLOSXTaVQGWHdA0QlPJGiW4a+YpThezmJOemvc4LiKVpn13AjSKQ40QnmBqpBrxujOaSo+3A==} engines: {node: '>=v18'} @@ -751,28 +737,6 @@ packages: '@commitlint/types': 18.4.0 dev: true - /@commitlint/load@18.2.0(typescript@5.2.2): - resolution: {integrity: sha512-xjX3d3CRlOALwImhOsmLYZh14/+gW/KxsY7+bPKrzmGuFailf9K7ckhB071oYZVJdACnpY4hDYiosFyOC+MpAA==} - engines: {node: '>=v18'} - requiresBuild: true - dependencies: - '@commitlint/config-validator': 18.1.0 - '@commitlint/execute-rule': 18.1.0 - '@commitlint/resolve-extends': 18.1.0 - '@commitlint/types': 18.1.0 - '@types/node': 18.18.9 - chalk: 4.1.2 - cosmiconfig: 8.3.6(typescript@5.2.2) - cosmiconfig-typescript-loader: 5.0.0(@types/node@18.18.9)(cosmiconfig@8.3.6)(typescript@5.2.2) - lodash.isplainobject: 4.0.6 - lodash.merge: 4.6.2 - lodash.uniq: 4.5.0 - resolve-from: 5.0.0 - transitivePeerDependencies: - - typescript - dev: true - optional: true - /@commitlint/load@18.4.0(typescript@5.2.2): resolution: {integrity: sha512-7unGl1HGRNMgWrUPmj8OFkJyuNUMb6xA1i53/OAFKd9l+U3C4WTfoJe3t/TUz8vKZLCaDcWWR/b2cw5HveBBFg==} engines: {node: '>=v18'} @@ -818,20 +782,6 @@ packages: minimist: 1.2.8 dev: true - /@commitlint/resolve-extends@18.1.0: - resolution: {integrity: sha512-3mZpzOEJkELt7BbaZp6+bofJyxViyObebagFn0A7IHaLARhPkWTivXdjvZHS12nAORftv88Yhbh8eCPKfSvB7g==} - engines: {node: '>=v18'} - requiresBuild: true - dependencies: - '@commitlint/config-validator': 18.1.0 - '@commitlint/types': 18.1.0 - import-fresh: 3.3.0 - lodash.mergewith: 4.6.2 - resolve-from: 5.0.0 - resolve-global: 1.0.0 - dev: true - optional: true - /@commitlint/resolve-extends@18.4.0: resolution: {integrity: sha512-qhgU6ach+S6sJMD9NjCYiEycOObGhxzWQLQzqlScJCv9zkPs15Bg0ffLXTQ3z7ipXv46XEKYMnSJzjLRw2Tlkg==} engines: {node: '>=v18'} @@ -867,15 +817,6 @@ packages: find-up: 5.0.0 dev: true - /@commitlint/types@18.1.0: - resolution: {integrity: sha512-65vGxZmbs+2OVwEItxhp3Ul7X2m2LyLfifYI/NdPwRqblmuES2w2aIRhIjb7cwUIBHHSTT8WXj4ixVHQibmvLQ==} - engines: {node: '>=v18'} - requiresBuild: true - dependencies: - chalk: 4.1.2 - dev: true - optional: true - /@commitlint/types@18.4.0: resolution: {integrity: sha512-MKeaFxt0I9fhqUb2E+YIzX/gZtmkuodJET/XKiZIMvXUff8Ee4Ih86eLg+yAm2jf1pwGBmU02uNOp0y094w2Uw==} engines: {node: '>=v18'} @@ -1806,12 +1747,6 @@ packages: resolution: {integrity: sha512-HAW1sljizEaduEOes/m84oUqeIDAUYBR1CDwu2tobNlNDFP3cSm9d6QsOsGeNlIppU1p/p1+bWbYCbvwjFiceA==} dev: false - /@next/eslint-plugin-next@14.0.1: - resolution: {integrity: sha512-bLjJMwXdzvhnQOnxvHoTTUh/+PYk6FF/DCgHi4BXwXCINer+o1ZYfL9aVeezj/oI7wqGJOqwGIXrlBvPbAId3w==} - dependencies: - glob: 7.1.7 - dev: true - /@next/eslint-plugin-next@14.0.2: resolution: {integrity: sha512-APrYFsXfAhnysycqxHcpg6Y4i7Ukp30GzVSZQRKT3OczbzkqGjt33vNhScmgoOXYBU1CfkwgtXmNxdiwv1jKmg==} dependencies: @@ -3686,7 +3621,7 @@ packages: longest: 2.0.1 word-wrap: 1.2.5 optionalDependencies: - '@commitlint/load': 18.2.0(typescript@5.2.2) + '@commitlint/load': 18.4.0(typescript@5.2.2) transitivePeerDependencies: - typescript dev: true @@ -4405,31 +4340,6 @@ packages: engines: {node: '>=12'} dev: false - /eslint-config-next@14.0.1(eslint@8.53.0)(typescript@5.2.2): - resolution: {integrity: sha512-QfIFK2WD39H4WOespjgf6PLv9Bpsd7KGGelCtmq4l67nGvnlsGpuvj0hIT+aIy6p5gKH+lAChYILsyDlxP52yg==} - peerDependencies: - eslint: ^7.23.0 || ^8.0.0 - typescript: '>=3.3.1' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - '@next/eslint-plugin-next': 14.0.1 - '@rushstack/eslint-patch': 1.5.1 - '@typescript-eslint/parser': 6.10.0(eslint@8.53.0)(typescript@5.2.2) - eslint: 8.53.0 - eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.10.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.0)(eslint@8.53.0) - eslint-plugin-import: 2.29.0(@typescript-eslint/parser@6.10.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.53.0) - eslint-plugin-jsx-a11y: 6.8.0(eslint@8.53.0) - eslint-plugin-react: 7.33.2(eslint@8.53.0) - eslint-plugin-react-hooks: 4.6.0(eslint@8.53.0) - typescript: 5.2.2 - transitivePeerDependencies: - - eslint-import-resolver-webpack - - supports-color - dev: true - /eslint-config-next@14.0.2(eslint@8.53.0)(typescript@5.2.2): resolution: {integrity: sha512-CasWThlsyIcg/a+clU6KVOMTieuDhTztsrqvniP6AsRki9v7FnojTa7vKQOYM8QSOsQdZ/aElLD1Y2Oc8/PsIg==} peerDependencies: @@ -8703,6 +8613,66 @@ packages: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} + /sherif-darwin-arm64@0.4.2: + resolution: {integrity: sha512-ClQpR4AIiLSGmJG8OFi5svxo7jcxfXVeOm82sLBZsrzez0pBhr21gAwqzJRIvST19PM3erWEwhgwm9UsohmEDQ==} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /sherif-darwin-x64@0.4.2: + resolution: {integrity: sha512-UGTOeGC4316VT+tPBpyubpi8cWKKxtyNHl8B57cPQ5+vtFOeZOYRD7K4o9VBajPFsvaIdmPB7qaNiVb/Y+GyQA==} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /sherif-linux-arm64@0.4.2: + resolution: {integrity: sha512-jxZlUYL9DyKpgZkvw99w2PSoY+aCbAydSKV+LTGhAI0IkrO/G2ZbQei+SfncFHTIcSTs+fnWIIryrLkRAFpTVw==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /sherif-linux-x64@0.4.2: + resolution: {integrity: sha512-NaP9irmzMH5jnr7hcyF+phY6OIcytJqMTWOSRkYdsEc7JAMDYnrmy7IMsooAScpW8Y1kWs3vziXTGHcn4DiiYQ==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /sherif-windows-arm64@0.4.2: + resolution: {integrity: sha512-2xEJHPECFEB6FjeTyo77J9Aodzd3nbtCVkFfYq0XZHRl0aZBexgU9r5jWZK1YjlX61one08PpFmNbuA/yyYWIQ==} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /sherif-windows-x64@0.4.2: + resolution: {integrity: sha512-fZxUHBG9KK7+/y6dS0aVEaZpGRRWlD5mBP0G4vM2lO9o1Rl0UWojDJ+d5698JHaYVNdktd42WYNXM94nO7K0IA==} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /sherif@0.4.2: + resolution: {integrity: sha512-cQzWQUX616ygyxODl6VrYISBZPHTEEZj43Jt3h6zMaOiYGLILtMrxpqDdYwJziUA8KX/3Mse/6wg6gqFoPbFYg==} + hasBin: true + optionalDependencies: + sherif-darwin-arm64: 0.4.2 + sherif-darwin-x64: 0.4.2 + sherif-linux-arm64: 0.4.2 + sherif-linux-x64: 0.4.2 + sherif-windows-arm64: 0.4.2 + sherif-windows-x64: 0.4.2 + dev: true + /shiki@0.14.5: resolution: {integrity: sha512-1gCAYOcmCFONmErGTrS1fjzJLA7MGZmKzrBNX7apqSwhyITJg2O102uFzXUeBxNnEkDA9vHIKLyeKq0V083vIw==} dependencies: diff --git a/websites/visualization/package.json b/websites/visualization/package.json index 0085af56a..5446a1309 100644 --- a/websites/visualization/package.json +++ b/websites/visualization/package.json @@ -44,6 +44,6 @@ "@next/eslint-plugin-next": "14.0.2", "@types/react": "^18.2.34", "@types/react-dom": "^18.2.14", - "eslint-config-next": "^14.0.0" + "eslint-config-next": "^14.0.2" } }