From 1fe82ac7dd68a0623c88aa30473bfa253b844e4d Mon Sep 17 00:00:00 2001 From: ivanblinov2k17 Date: Mon, 29 Jan 2024 15:50:37 +0400 Subject: [PATCH] fix(grid-core): - Generate .d.ts files for grid and scheduler core packages (#3667) * Generate .d.ts for grid and scheduler core packages * Add missing api changes * trying api changes again * Fix lint * Remove forgotten skiplibcheck * Bring back yarn.lock from master and add WA for some strange TS error --- package.json | 4 +- packages/dx-grid-core/merge-dts.js | 6 +++ packages/dx-grid-core/package.json | 2 + .../plugins/table-band-header/test-utils.ts | 6 ++- packages/dx-grid-core/tsconfig.dts.json | 8 ++++ packages/dx-grid-core/tsconfig.json | 2 +- .../dx-react-grid/api/dx-react-grid.api.md | 4 +- packages/dx-scheduler-core/merge-dts.js | 6 +++ packages/dx-scheduler-core/package.json | 3 ++ packages/dx-scheduler-core/src/utils.ts | 19 ++++++---- packages/dx-scheduler-core/tsconfig.dts.json | 8 ++++ packages/dx-scheduler-core/tsconfig.json | 2 +- yarn.lock | 37 ++++++++++--------- 13 files changed, 74 insertions(+), 33 deletions(-) create mode 100644 packages/dx-grid-core/merge-dts.js create mode 100644 packages/dx-grid-core/tsconfig.dts.json create mode 100644 packages/dx-scheduler-core/merge-dts.js create mode 100644 packages/dx-scheduler-core/tsconfig.dts.json diff --git a/package.json b/package.json index a937b8b7d2..78db8357ba 100644 --- a/package.json +++ b/package.json @@ -90,7 +90,7 @@ "yarn": ">=1.22.0" }, "resolutions": { - "@types/react": "16.9.35", - "@types/react-test-renderer": "^16.9.3" + "@types/react": "^17.0.30", + "@types/react-test-renderer": "^17.0.9" } } diff --git a/packages/dx-grid-core/merge-dts.js b/packages/dx-grid-core/merge-dts.js new file mode 100644 index 0000000000..0823d9df07 --- /dev/null +++ b/packages/dx-grid-core/merge-dts.js @@ -0,0 +1,6 @@ +import { fileURLToPath } from 'url'; +import { dirname } from 'path'; + +import buildDefinitions from '../../scripts/merge-dts.js'; + +buildDefinitions(dirname(fileURLToPath(import.meta.url))); diff --git a/packages/dx-grid-core/package.json b/packages/dx-grid-core/package.json index da0027abb1..6b4d8d1175 100644 --- a/packages/dx-grid-core/package.json +++ b/packages/dx-grid-core/package.json @@ -40,6 +40,7 @@ "main": "dist/dx-grid-core.umd.cjs", "module": "dist/dx-grid-core.es.js", "types": "dist/dx-grid-core.d.ts", + "typings": "dist/dx-grid-core.d.ts", "globalName": "DevExpress.DXGridCore", "files": [ "dist" @@ -50,6 +51,7 @@ "test:coverage": "jest --coverage", "build": "rollup -c rollup.config.js", "build:watch": "rollup -c rollup.config.js -w", + "dts": "tsc -p tsconfig.dts.json && node ./merge-dts.js", "lint": "tslint -p tsconfig.lint.json", "lint:fix": "yarn lint -- --fix" }, diff --git a/packages/dx-grid-core/src/plugins/table-band-header/test-utils.ts b/packages/dx-grid-core/src/plugins/table-band-header/test-utils.ts index 10009923df..d62b0140b9 100644 --- a/packages/dx-grid-core/src/plugins/table-band-header/test-utils.ts +++ b/packages/dx-grid-core/src/plugins/table-band-header/test-utils.ts @@ -34,7 +34,11 @@ export const generateChains = ( .sort((a, b) => a - b) .filter(p => p < columns.length); - const chain = []; + const chain: { + bandTitle: string[], + columns: typeof columns, + start: number, + }[] = []; for (let i = 0; i < indexes.length - 1; i += 2) { const start = indexes[i]; const end = indexes[i + 1]; diff --git a/packages/dx-grid-core/tsconfig.dts.json b/packages/dx-grid-core/tsconfig.dts.json new file mode 100644 index 0000000000..0171558fee --- /dev/null +++ b/packages/dx-grid-core/tsconfig.dts.json @@ -0,0 +1,8 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "declaration": true, + "declarationDir": "./dist/dts", + "emitDeclarationOnly": true, + } + } diff --git a/packages/dx-grid-core/tsconfig.json b/packages/dx-grid-core/tsconfig.json index 234d8f2e28..66e5b075b2 100644 --- a/packages/dx-grid-core/tsconfig.json +++ b/packages/dx-grid-core/tsconfig.json @@ -3,7 +3,7 @@ "compilerOptions": { "outDir": "./dist", "downlevelIteration": true, - "noImplicitAny": true, + "noImplicitAny": false, }, "include": [ "./src" diff --git a/packages/dx-react-grid/api/dx-react-grid.api.md b/packages/dx-react-grid/api/dx-react-grid.api.md index a0500eb6f0..0aa4af37a7 100644 --- a/packages/dx-react-grid/api/dx-react-grid.api.md +++ b/packages/dx-react-grid/api/dx-react-grid.api.md @@ -1558,9 +1558,9 @@ export class TableSummaryRowBase extends React_2.PureComponent = ({ top, left, width, height, -}) => ({ - height, - width: `${width}%`, - transform: `translateY(${top}px)`, - msTransform: `translateY(${top}px)`, - left: `${left}%`, - position: 'absolute', -}); +}) => { + const transform = `translateY(${top}px)` as any; + return ({ + height, + width: `${width}%`, + transform, + msTransform: transform, + left: `${left}%`, + position: 'absolute', + }); +}; const expandRecurrenceAppointment = ( appointment: AppointmentMoment, leftBound: Date, rightBound: Date, diff --git a/packages/dx-scheduler-core/tsconfig.dts.json b/packages/dx-scheduler-core/tsconfig.dts.json new file mode 100644 index 0000000000..0171558fee --- /dev/null +++ b/packages/dx-scheduler-core/tsconfig.dts.json @@ -0,0 +1,8 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "declaration": true, + "declarationDir": "./dist/dts", + "emitDeclarationOnly": true, + } + } diff --git a/packages/dx-scheduler-core/tsconfig.json b/packages/dx-scheduler-core/tsconfig.json index 9ad36d340c..d3fa0509bd 100644 --- a/packages/dx-scheduler-core/tsconfig.json +++ b/packages/dx-scheduler-core/tsconfig.json @@ -3,7 +3,7 @@ "compilerOptions": { "outDir": "./dist", "downlevelIteration": true, - "noImplicitAny": true, + "noImplicitAny": false, "esModuleInterop": true }, "include": [ diff --git a/yarn.lock b/yarn.lock index 47f962b08a..86cfa5c875 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4043,12 +4043,12 @@ hoist-non-react-statics "^3.3.0" redux "^4.0.0" -"@types/react-test-renderer@^16.0.0", "@types/react-test-renderer@^16.9.3": - version "16.9.5" - resolved "https://registry.yarnpkg.com/@types/react-test-renderer/-/react-test-renderer-16.9.5.tgz#edab67da470f7c3e997f58d55dcfe2643cc30a68" - integrity sha512-C4cN7C2uSSGOYelp2XfdtJb5TsCP+QiZ+0Bm4U3ZfUswN8oN9O/l86XO/OvBSFCmWY7w75fzsQvZ50eGkFN34A== +"@types/react-test-renderer@^16.0.0", "@types/react-test-renderer@^17.0.9": + version "17.0.9" + resolved "https://registry.yarnpkg.com/@types/react-test-renderer/-/react-test-renderer-17.0.9.tgz#da6d06f3f37eefab39386c390140374dc5db5b33" + integrity sha512-bOfxcu5oZ+KxvACScbkTwZ4eGCtZFTz4VZCOVAIfGbThxqiXSIGipKVG8ubaYBXquUSQROzNIUzviWdSnnAlzg== dependencies: - "@types/react" "^16" + "@types/react" "^17" "@types/react-transition-group@^4.4.5": version "4.4.5" @@ -4057,13 +4057,14 @@ dependencies: "@types/react" "*" -"@types/react@*", "@types/react@16.9.35", "@types/react@>=16.9.11", "@types/react@^16", "@types/react@^17.0.30": - version "16.9.35" - resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.35.tgz#a0830d172e8aadd9bd41709ba2281a3124bbd368" - integrity sha512-q0n0SsWcGc8nDqH2GJfWQWUOmZSJhXV64CjVN5SvcNti3TdEaA3AH0D8DwNmMdzjMAC/78tB8nAZIlV8yTz+zQ== +"@types/react@*", "@types/react@>=16.9.11", "@types/react@^16", "@types/react@^17", "@types/react@^17.0.30": + version "17.0.75" + resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.75.tgz#cffbc76840a12fcadaf5a3cf14878bb06efcf73d" + integrity sha512-MSA+NzEzXnQKrqpO63CYqNstFjsESgvJAdAyyJ1n6ZQq/GLgf6nOfIKwk+Twuz0L1N6xPe+qz5xRCJrbhMaLsw== dependencies: "@types/prop-types" "*" - csstype "^2.2.0" + "@types/scheduler" "*" + csstype "^3.0.2" "@types/readable-stream@^2.3.9": version "2.3.10" @@ -4095,6 +4096,11 @@ "@types/glob" "*" "@types/node" "*" +"@types/scheduler@*": + version "0.16.8" + resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.8.tgz#ce5ace04cfeabe7ef87c0091e50752e36707deff" + integrity sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A== + "@types/stack-utils@^2.0.0": version "2.0.1" resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" @@ -8438,15 +8444,10 @@ cssstyle@^2.3.0: dependencies: cssom "~0.3.6" -csstype@^2.2.0: - version "2.6.17" - resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.17.tgz#4cf30eb87e1d1a005d8b6510f95292413f6a1c0e" - integrity sha512-u1wmTI1jJGzCJzWndZo8mk4wnPTZd1eOIYTYvuEyOQGfmDl3TrabCCfKnOC86FZwW/9djqTl933UF/cS425i9A== - csstype@^3.0.2: - version "3.0.8" - resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.0.8.tgz#d2266a792729fb227cd216fb572f43728e1ad340" - integrity sha512-jXKhWqXPmlUeoQnF/EhTtTl4C9SnrxSH/jZUih3jmO6lBKr99rP3/+FmrMj4EFpOXzMtXHAZkd3x0E6h6Fgflw== + version "3.1.3" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81" + integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== csstype@^3.1.1: version "3.1.1"