https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=43517 --- Comment #1 from Martin Renvoize (ashimema) <martin.renvoize@openfifth.co.uk> --- Created attachment 205528 --> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=205528&action=edit Bug 43517: Enable vue-tsc type checking and shared Cypress component-test shims Enable vue-tsc type checking for .vue files project-wide: - tsconfig.json: target the language level rspack/swc actually emit (ES2020), and let JSDoc types in .js files (within `include`) flow into type checking. - eslint.config.mjs: parse <script> blocks in .vue files with the TypeScript parser. - package.json/yarn.lock: bump typescript and add vue-tsc as a dev dependency. - koha-tmpl/intranet-tmpl/prog/js/vue/ambient.d.ts: ambient module declarations for third-party libraries that ship without their own types (flatpickr, bootstrap Modal, vue-select), and for CSS side-effect imports. Add shared Cypress component-test environment shims: - t/cypress/support/console-hooks.js: hooks shared by e2e and component tests that make console.warn throw so real warnings (Vue, deprecation) fail tests fast with a readable message, and that fail DataTables warnings logged via console.log. - t/cypress/support/component.ts: mirror the globals normally provided by page-level includes (window.dayjs, window.flatpickr with Koha's defaults, window.$timezone(), String.prototype.format) so components that depend on them can mount in isolation, and wire in the new console-hooks. Test plan: 1. Run: yarn tsc --noEmit (or the project's vue-tsc check script) and confirm it passes with no new errors. 2. Run the full Cypress component suite and confirm nothing regresses. -- You are receiving this mail because: You are watching all bug changes.