Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .changeset/quick-cars-raise.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
'@drivenets/eslint-plugin-design-system': patch
---

Support TypeScript 6.x
2 changes: 1 addition & 1 deletion .cursor/rules/checkers.mdc
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ pnpm eslint packages/eslint-plugin/src/
pnpm eslint --fix packages/design-system/src/components/ds-button/
```

### Type Checking (tsc)
### Type Checking (tsgo)

TypeScript checks the whole project config, so scope by package:

Expand Down
6 changes: 5 additions & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,9 @@
"editor.defaultFormatter": "oxc.oxc-vscode"
},

"typescript.tsdk": "node_modules/typescript/lib"
"typescript.tsdk": "node_modules/typescript/lib",

// Explicitly disabling tsgo language service since it doesn't support plugins yet.
// We need plugins support to use `typescript-plugin-css-modules` in the design-system package.
"typescript.experimental.useTsgo": false
}
2 changes: 1 addition & 1 deletion lint-staged.config.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,6 @@
export default {
'*': 'cspell --no-must-find-files',
'!(*.js|*.mjs|*.ts|*.tsx)': 'oxfmt --no-error-on-unmatched-pattern',
'*.{ts,tsx}': () => 'tsc --noEmit',
'*.{ts,tsx}': () => 'tsgo --noEmit',
'*.{js,mjs,ts,tsx}': ['oxfmt', 'eslint --max-warnings=0'],
};
8 changes: 5 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
"lint": "turbo run lint:root lint",
"lint:root": "eslint --max-warnings=0 .",
"typecheck": "turbo run typecheck typecheck:root",
"typecheck:root": "tsc",
"typecheck:root": "tsgo",
"lint:versions": "syncpack lint",
"lint:spell": "cspell . --quiet",
"lint:unused": "knip",
Expand Down Expand Up @@ -42,6 +42,7 @@
"@eslint/core": "^1.1.1",
"@eslint/js": "^10.0.1",
"@types/node": "^25.3.5",
"@typescript/native-preview": "7.0.0-dev.20260331.1",
"@vitest/eslint-plugin": "^1.6.9",
"cspell": "^9.7.0",
"eslint": "^10.0.1",
Expand All @@ -56,8 +57,8 @@
"oxfmt": "^0.36.0",
"syncpack": "^14.0.0",
"turbo": "^2.8.14",
"typescript": "^5.9.3",
"typescript-eslint": "^8.57.2"
"typescript": "^6.0.2",
"typescript-eslint": "^8.58.0"
},
"pnpm": {
"overrides": {
Expand All @@ -81,6 +82,7 @@
"string.prototype.matchall": "npm:@nolyfill/string.prototype.matchall@^1",
"string.prototype.repeat": "npm:@nolyfill/string.prototype.repeat@^1",
"eslint": "^10.0.1",
"typescript": "^6.0.2",
"semver": "^7.7.4",
"chokidar": "^5.0.0"
}
Expand Down
5 changes: 3 additions & 2 deletions packages/commitlint-plugin-internal/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,14 +14,15 @@
},
"scripts": {
"lint": "eslint --max-warnings=0 .",
"typecheck": "tsc"
"typecheck": "tsgo"
},
"peerDependencies": {
"@commitlint/lint": "^20.2.0",
"@commitlint/types": "^20.2.0"
},
"devDependencies": {
"@typescript/native-preview": "7.0.0-dev.20260331.1",
"eslint": "^10.0.1",
"typescript": "^5.9.3"
"typescript": "^6.0.2"
}
}
5 changes: 3 additions & 2 deletions packages/design-system/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@
"lint": "pnpm generate-scss-dts && eslint --max-warnings=0 ${ESLINT_ARGS-} .; EXIT_CODE=$?; rm -rf .scss-dts; exit $EXIT_CODE",
"//": "ESLINT_ARGS is used to pass arguments to eslint. We're using it so we don't need to duplicate the lint script.",
"lint:fix": "ESLINT_ARGS=--fix pnpm lint",
"typecheck": "pnpm generate-scss-dts && tsc; EXIT_CODE=$?; rm -rf .scss-dts; exit $EXIT_CODE",
"typecheck": "pnpm generate-scss-dts && tsgo; EXIT_CODE=$?; rm -rf .scss-dts; exit $EXIT_CODE",
"generate-scss-dts": "typed-scss-modules ./src -o ./.scss-dts --nameFormat all --exportType default > /dev/null 2>&1",
"storybook": "storybook dev -p 6006",
"test": "vitest --project=\"!requires-build\"",
Expand Down Expand Up @@ -99,6 +99,7 @@
"@types/eslint-plugin-jsx-a11y": "^6.10.1",
"@types/react": "^19.2.14",
"@types/react-dom": "^19.2.3",
"@typescript/native-preview": "7.0.0-dev.20260331.1",
"@vitejs/plugin-react": "^6.0.1",
"@vitest/browser-playwright": "^4.1.0",
"@vitest/coverage-v8": "^4.1.0",
Expand All @@ -118,7 +119,7 @@
"storybook": "^10.2.19",
"tsdown": "^0.21.6",
"typed-scss-modules": "^8.1.1",
"typescript": "^5.9.3",
"typescript": "^6.0.2",
"typescript-plugin-css-modules": "^5.2.0",
"vite": "8.0.5",
"vitest": "^4.1.0",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ const meta: Meta<typeof DsDateInput> = {
};

export default meta;
// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-arguments -- https://github.com/typescript-eslint/typescript-eslint/issues/12158

type Story = StoryObj<DsDateInputProps>;

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ const meta: Meta<typeof DsDatePicker> = {
};

export default meta;
// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-arguments -- https://github.com/typescript-eslint/typescript-eslint/issues/12158

type Story = StoryObj<DsDatePickerProps>;

export const Default: Story = {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ const meta: Meta<typeof DsDateRangePicker> = {
};

export default meta;
// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-arguments -- https://github.com/typescript-eslint/typescript-eslint/issues/12158

type Story = StoryObj<DsDateRangePickerProps>;

export const Default: Story = {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -261,7 +261,6 @@ type CollapsibleGroupControlledArgs = {
onCollapsedChange?: (collapsed: boolean) => void;
};

// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-arguments -- https://github.com/typescript-eslint/typescript-eslint/issues/12158
export const CollapsibleGroupControlled: StoryObj<CollapsibleGroupControlledArgs> = {
name: 'Collapsible Group (Controlled)',
parameters: {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ const meta: Meta<typeof DsTimePicker> = {
};

export default meta;
// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-arguments -- https://github.com/typescript-eslint/typescript-eslint/issues/12158

type Story = StoryObj<DsTimePickerProps>;

const createTime = (hours: number, minutes: number) => {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,12 @@ export interface DsTreeNode {
export const dsTreeSizes = ['medium', 'small'] as const;
export type DsTreeSize = (typeof dsTreeSizes)[number];

interface DsTreeBaseProps {
export interface DsTreeBaseProps {
className?: string;
style?: CSSProperties;
}

interface DsTreeBasePropsWithChildren extends DsTreeBaseProps {
export interface DsTreeBasePropsWithChildren extends DsTreeBaseProps {
children?: ReactNode;
}

Expand Down
6 changes: 3 additions & 3 deletions packages/eslint-plugin-internal/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -26,15 +26,15 @@
"test:coverage": "pnpm test --coverage"
},
"dependencies": {
"@typescript-eslint/utils": "^8.57.2",
"@typescript-eslint/utils": "^8.58.0",
"ts-api-utils": "^2.5.0"
},
"devDependencies": {
"@typescript-eslint/rule-tester": "^8.57.2",
"@typescript-eslint/rule-tester": "^8.58.0",
"@vitest/coverage-v8": "^4.1.0",
"eslint": "^10.0.1",
"eslint-plugin-eslint-plugin": "^7.3.2",
"typescript": "^5.9.3",
"typescript": "^6.0.2",
"vitest": "^4.1.0"
},
"peerDependencies": {
Expand Down
7 changes: 4 additions & 3 deletions packages/eslint-plugin/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
},
"scripts": {
"lint": "eslint --max-warnings=0 .",
"typecheck": "tsc",
"typecheck": "tsgo",
"test": "vitest",
"test:coverage": "pnpm test --coverage",
"build": "tsdown",
Expand All @@ -44,16 +44,17 @@
},
"devDependencies": {
"@arethetypeswrong/cli": "^0.18.2",
"@typescript/native-preview": "7.0.0-dev.20260331.1",
"@vitest/coverage-v8": "^4.1.0",
"eslint": "^10.0.1",
"publint": "^0.3.18",
"tsdown": "^0.21.6",
"typescript": "^5.9.3",
"typescript": "^6.0.2",
"vitest": "^4.1.0"
},
"peerDependencies": {
"@typescript-eslint/parser": "^8.50.0",
"eslint": "^9.0.0 || ^10.0.0",
"typescript": "^5.0.0"
"typescript": "^5.0.0 || ^6.0.0"
}
}
5 changes: 3 additions & 2 deletions packages/vite-plugin/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@
},
"scripts": {
"lint": "eslint --max-warnings=0 .",
"typecheck": "tsc",
"typecheck": "tsgo",
"build": "tsdown",
"build:lint": "TARBALL=$(pnpm pack | tail -n1) && publint $TARBALL && attw $TARBALL; rm -f $TARBALL",
"test": "vitest",
Expand All @@ -48,11 +48,12 @@
},
"devDependencies": {
"@arethetypeswrong/cli": "^0.18.2",
"@typescript/native-preview": "7.0.0-dev.20260331.1",
"@vitest/coverage-v8": "^4.1.0",
"eslint": "^10.0.1",
"publint": "^0.3.18",
"tsdown": "^0.21.6",
"typescript": "^5.9.3",
"typescript": "^6.0.2",
"vitest": "^4.1.0"
}
}
Loading
Loading