diff --git a/package.json b/package.json index 436b0370e57..bcdb9b60675 100644 --- a/package.json +++ b/package.json @@ -93,7 +93,7 @@ "todomvc-app-css": "^2.3.0", "ts-jest": "^27.0.5", "tslib": "^2.4.0", - "typescript": "^4.6.4", + "typescript": "^4.7.4", "vite": "^2.9.8", "vue": "workspace:*", "yorkie": "^2.0.0" diff --git a/packages/reactivity/src/computed.ts b/packages/reactivity/src/computed.ts index ab0034a4cf1..e9f36ecd22f 100644 --- a/packages/reactivity/src/computed.ts +++ b/packages/reactivity/src/computed.ts @@ -30,7 +30,7 @@ export class ComputedRefImpl { public readonly effect: ReactiveEffect public readonly __v_isRef = true - public readonly [ReactiveFlags.IS_READONLY]: boolean + public readonly [ReactiveFlags.IS_READONLY]: boolean = false public _dirty = true public _cacheable: boolean diff --git a/packages/runtime-core/src/component.ts b/packages/runtime-core/src/component.ts index eededdf34d0..eb933bb70fe 100644 --- a/packages/runtime-core/src/component.ts +++ b/packages/runtime-core/src/component.ts @@ -814,6 +814,7 @@ export function finishComponentSetup( // pass runtime compat config into the compiler finalCompilerOptions.compatConfig = Object.create(globalCompatConfig) if (Component.compatConfig) { + // @ts-expect-error types are not compatible extend(finalCompilerOptions.compatConfig, Component.compatConfig) } } diff --git a/packages/server-renderer/__tests__/render.spec.ts b/packages/server-renderer/__tests__/render.spec.ts index 4fd781fcae2..9a1e1293a52 100644 --- a/packages/server-renderer/__tests__/render.spec.ts +++ b/packages/server-renderer/__tests__/render.spec.ts @@ -128,14 +128,14 @@ function testRender(type: string, render: typeof renderToString) { await render( createApp( defineComponent({ - extends: { + extends: defineComponent({ data() { return { msg: 'hello' } }, - render(this: any) { + render() { return h('div', this.msg) } - } + }) }) ) ) @@ -148,14 +148,14 @@ function testRender(type: string, render: typeof renderToString) { createApp( defineComponent({ mixins: [ - { + defineComponent({ data() { return { msg: 'hello' } }, - render(this: any) { + render() { return h('div', this.msg) } - } + }) ] }) ) @@ -675,9 +675,7 @@ function testRender(type: string, render: typeof renderToString) { const MyComp = { render: () => h('p', 'hello') } - expect(await render(h(KeepAlive, () => h(MyComp)))).toBe( - `

hello

` - ) + expect(await render(h(KeepAlive, () => h(MyComp)))).toBe(`

hello

`) }) test('Transition', async () => { diff --git a/packages/server-renderer/src/renderToString.ts b/packages/server-renderer/src/renderToString.ts index 2450b0a3acb..3db4561c74e 100644 --- a/packages/server-renderer/src/renderToString.ts +++ b/packages/server-renderer/src/renderToString.ts @@ -77,7 +77,7 @@ export async function resolveTeleports(context: SSRContext) { // note: it's OK to await sequentially here because the Promises were // created eagerly in parallel. context.teleports[key] = await unrollBuffer( - (await Promise.all(context.__teleportBuffers[key])) as SSRBuffer + await Promise.all([context.__teleportBuffers[key]]) ) } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f8b2ffee4b7..bf1d55cda70 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -48,7 +48,7 @@ importers: todomvc-app-css: ^2.3.0 ts-jest: ^27.0.5 tslib: ^2.4.0 - typescript: ^4.6.4 + typescript: ^4.7.4 vite: ^2.9.8 vue: workspace:* yorkie: ^2.0.0 @@ -64,7 +64,7 @@ importers: '@types/jest': 27.0.3 '@types/node': 16.11.12 '@types/puppeteer': 5.4.4 - '@typescript-eslint/parser': 5.23.0_e4zyhrvfnqudwdx5bevnvkluy4 + '@typescript-eslint/parser': 5.23.0_hxadhbs2xogijvk7vq4t2azzbu '@vue/reactivity': link:packages/reactivity '@vue/runtime-core': link:packages/runtime-core '@vue/runtime-dom': link:packages/runtime-dom @@ -75,7 +75,7 @@ importers: enquirer: 2.3.6 esbuild: 0.14.35 eslint: 7.32.0 - eslint-plugin-jest: 26.1.5_kkaclaimgki2r45yqzc3bxhmwy + eslint-plugin-jest: 26.1.5_fublp7hbjjjut4jarqgrlzb3ey execa: 4.1.0 fs-extra: 9.1.0 jest: 27.4.4 @@ -91,13 +91,13 @@ importers: rollup-plugin-node-globals: 1.4.0 rollup-plugin-polyfill-node: 0.6.2_rollup@2.38.5 rollup-plugin-terser: 7.0.2_rollup@2.38.5 - rollup-plugin-typescript2: 0.27.3_zlmz7jga2mttuvx4qwelsmvyxm + rollup-plugin-typescript2: 0.27.3_svygma56heasd5pd4q5yjh2bo4 semver: 7.3.5 serve: 12.0.1 todomvc-app-css: 2.4.1 - ts-jest: 27.1.1_fl6hqye43ip7rnu7q76f35ejrm + ts-jest: 27.1.1_3hnzclobtp5be2lqcsbwijsi7u tslib: 2.4.0 - typescript: 4.6.4 + typescript: 4.7.4 vite: 2.9.8 vue: link:packages/vue yorkie: 2.0.0 @@ -912,7 +912,7 @@ packages: resolve: 1.17.0 semver: 7.3.5 source-map: 0.6.1 - typescript: 4.5.3 + typescript: 4.5.5 dev: true /@microsoft/tsdoc-config/0.15.2: @@ -1205,15 +1205,15 @@ packages: '@types/yargs-parser': 20.2.1 dev: true - /@types/yauzl/2.9.2: - resolution: {integrity: sha512-8uALY5LTvSuHgloDVUvWP3pIauILm+8/0pDMokuDYIoNsOkSwd5AiHBTSEJjKTDcZr5z8UpgOWZkxBF4iJftoA==} + /@types/yauzl/2.10.0: + resolution: {integrity: sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==} requiresBuild: true dependencies: '@types/node': 16.11.12 dev: true optional: true - /@typescript-eslint/parser/5.23.0_e4zyhrvfnqudwdx5bevnvkluy4: + /@typescript-eslint/parser/5.23.0_hxadhbs2xogijvk7vq4t2azzbu: resolution: {integrity: sha512-V06cYUkqcGqpFjb8ttVgzNF53tgbB/KoQT/iB++DOIExKmzI9vBJKjZKt/6FuV9c+zrDsvJKbJ2DOCYwX91cbw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -1225,10 +1225,10 @@ packages: dependencies: '@typescript-eslint/scope-manager': 5.23.0 '@typescript-eslint/types': 5.23.0 - '@typescript-eslint/typescript-estree': 5.23.0_typescript@4.6.4 + '@typescript-eslint/typescript-estree': 5.23.0_typescript@4.7.4 debug: 4.3.3 eslint: 7.32.0 - typescript: 4.6.4 + typescript: 4.7.4 transitivePeerDependencies: - supports-color dev: true @@ -1259,7 +1259,7 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /@typescript-eslint/typescript-estree/5.19.0_typescript@4.6.4: + /@typescript-eslint/typescript-estree/5.19.0_typescript@4.7.4: resolution: {integrity: sha512-dRPuD4ocXdaE1BM/dNR21elSEUPKaWgowCA0bqJ6YbYkvtrPVEvZ+zqcX5a8ECYn3q5iBSSUcBBD42ubaOp0Hw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -1274,13 +1274,13 @@ packages: globby: 11.0.4 is-glob: 4.0.3 semver: 7.3.5 - tsutils: 3.21.0_typescript@4.6.4 - typescript: 4.6.4 + tsutils: 3.21.0_typescript@4.7.4 + typescript: 4.7.4 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/typescript-estree/5.23.0_typescript@4.6.4: + /@typescript-eslint/typescript-estree/5.23.0_typescript@4.7.4: resolution: {integrity: sha512-xE9e0lrHhI647SlGMl+m+3E3CKPF1wzvvOEWnuE3CCjjT7UiRnDGJxmAcVKJIlFgK6DY9RB98eLr1OPigPEOGg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -1295,13 +1295,13 @@ packages: globby: 11.0.4 is-glob: 4.0.3 semver: 7.3.5 - tsutils: 3.21.0_typescript@4.6.4 - typescript: 4.6.4 + tsutils: 3.21.0_typescript@4.7.4 + typescript: 4.7.4 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/utils/5.19.0_e4zyhrvfnqudwdx5bevnvkluy4: + /@typescript-eslint/utils/5.19.0_hxadhbs2xogijvk7vq4t2azzbu: resolution: {integrity: sha512-ZuEckdupXpXamKvFz/Ql8YnePh2ZWcwz7APICzJL985Rp5C2AYcHO62oJzIqNhAMtMK6XvrlBTZeNG8n7gS3lQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -1310,7 +1310,7 @@ packages: '@types/json-schema': 7.0.11 '@typescript-eslint/scope-manager': 5.19.0 '@typescript-eslint/types': 5.19.0 - '@typescript-eslint/typescript-estree': 5.19.0_typescript@4.6.4 + '@typescript-eslint/typescript-estree': 5.19.0_typescript@4.7.4 eslint: 7.32.0 eslint-scope: 5.1.1 eslint-utils: 3.0.0_eslint@7.32.0 @@ -2906,7 +2906,7 @@ packages: source-map: 0.6.1 dev: true - /eslint-plugin-jest/26.1.5_kkaclaimgki2r45yqzc3bxhmwy: + /eslint-plugin-jest/26.1.5_fublp7hbjjjut4jarqgrlzb3ey: resolution: {integrity: sha512-su89aDuljL9bTjEufTXmKUMSFe2kZUL9bi7+woq+C2ukHZordhtfPm4Vg+tdioHBaKf8v3/FXW9uV0ksqhYGFw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -2919,7 +2919,7 @@ packages: jest: optional: true dependencies: - '@typescript-eslint/utils': 5.19.0_e4zyhrvfnqudwdx5bevnvkluy4 + '@typescript-eslint/utils': 5.19.0_hxadhbs2xogijvk7vq4t2azzbu eslint: 7.32.0 jest: 27.4.4 transitivePeerDependencies: @@ -3177,7 +3177,7 @@ packages: get-stream: 5.2.0 yauzl: 2.10.0 optionalDependencies: - '@types/yauzl': 2.9.2 + '@types/yauzl': 2.10.0 transitivePeerDependencies: - supports-color dev: true @@ -3521,7 +3521,7 @@ packages: source-map: 0.6.1 wordwrap: 1.0.0 optionalDependencies: - uglify-js: 3.14.4 + uglify-js: 3.16.1 dev: true /hard-rejection/2.1.0: @@ -5130,6 +5130,7 @@ packages: resolution: {integrity: sha512-zJpuPDwOv8D2zq2WRoMe1HsfZthVewpel9CAvTfc/2mBD1uUT/agc5f7GHGWXlYkFvi1mVxe4IjvP2HNrop7nQ==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true + dev: false /nanoid/3.3.4: resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==} @@ -5597,6 +5598,7 @@ packages: nanoid: 3.1.30 picocolors: 1.0.0 source-map-js: 1.0.1 + dev: false /prelude-ls/1.1.2: resolution: {integrity: sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=} @@ -6118,7 +6120,7 @@ packages: terser: 5.10.0 dev: true - /rollup-plugin-typescript2/0.27.3_zlmz7jga2mttuvx4qwelsmvyxm: + /rollup-plugin-typescript2/0.27.3_svygma56heasd5pd4q5yjh2bo4: resolution: {integrity: sha512-gmYPIFmALj9D3Ga1ZbTZAKTXq1JKlTQBtj299DXhqYz9cL3g/AQfUvbb2UhH+Nf++cCq941W2Mv7UcrcgLzJJg==} peerDependencies: rollup: '>=1.26.3' @@ -6130,7 +6132,7 @@ packages: resolve: 1.17.0 rollup: 2.38.5 tslib: 2.0.1 - typescript: 4.6.4 + typescript: 4.7.4 dev: true /rollup-pluginutils/2.8.2: @@ -6755,7 +6757,7 @@ packages: engines: {node: '>=8'} dev: true - /ts-jest/27.1.1_fl6hqye43ip7rnu7q76f35ejrm: + /ts-jest/27.1.1_3hnzclobtp5be2lqcsbwijsi7u: resolution: {integrity: sha512-Ds0VkB+cB+8g2JUmP/GKWndeZcCKrbe6jzolGrVWdqVUFByY/2KDHqxJ7yBSon7hDB1TA4PXxjfZ+JjzJisvgA==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} hasBin: true @@ -6786,7 +6788,7 @@ packages: lodash.memoize: 4.1.2 make-error: 1.3.6 semver: 7.3.5 - typescript: 4.6.4 + typescript: 4.7.4 yargs-parser: 20.2.9 dev: true @@ -6806,14 +6808,14 @@ packages: resolution: {integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==} dev: true - /tsutils/3.21.0_typescript@4.6.4: + /tsutils/3.21.0_typescript@4.7.4: resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} engines: {node: '>= 6'} peerDependencies: typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' dependencies: tslib: 1.14.1 - typescript: 4.6.4 + typescript: 4.7.4 dev: true /type-check/0.3.2: @@ -6874,20 +6876,20 @@ packages: resolution: {integrity: sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=} dev: true - /typescript/4.5.3: - resolution: {integrity: sha512-eVYaEHALSt+s9LbvgEv4Ef+Tdq7hBiIZgii12xXJnukryt3pMgJf6aKhoCZ3FWQsu6sydEnkg11fYXLzhLBjeQ==} + /typescript/4.5.5: + resolution: {integrity: sha512-TCTIul70LyWe6IJWT8QSYeA54WQe8EjQFU4wY52Fasj5UKx88LNYKCgBEHcOMOrFF1rKGbD8v/xcNWVUq9SymA==} engines: {node: '>=4.2.0'} hasBin: true dev: true - /typescript/4.6.4: - resolution: {integrity: sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg==} + /typescript/4.7.4: + resolution: {integrity: sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==} engines: {node: '>=4.2.0'} hasBin: true dev: true - /uglify-js/3.14.4: - resolution: {integrity: sha512-AbiSR44J0GoCeV81+oxcy/jDOElO2Bx3d0MfQCUShq7JRXaM4KtQopZsq2vFv8bCq2yMaGrw1FgygUd03RyRDA==} + /uglify-js/3.16.1: + resolution: {integrity: sha512-X5BGTIDH8U6IQ1TIRP62YC36k+ULAa1d59BxlWvPUJ1NkW5L3FwcGfEzuVvGmhJFBu0YJ5Ge25tmRISqCmLiRQ==} engines: {node: '>=0.8.0'} hasBin: true requiresBuild: true