Add a tsc/vue-tsc typecheck gate (8 pre-existing type errors in OfficeOverview.vue)
@moodyjmz is already working on this.
Since Jul 3, 2026.
- Dominant language
- JavaScript
- Stars
- 6
- Forks
- 1
- Avg merge
- 1d 3h
- Merged PRs (30d)
- 10
Description
Discovered while setting up the Vitest harness (#47): there is no tsc/vue-tsc script anywhere in package.json — lint only runs eslint src. As a result, 8 pre-existing type errors in src/views/OfficeOverview.vue have never been caught by CI or local tooling.
Confirmed pre-existing and unrelated to the test-infra work: same errors, same count, with or without the OfficeOverview.vue/src/utils/ refactor from #47 (verified via git stash).
Running npx vue-tsc --noEmit on main currently reports:
Node[]vs the object-literal shape returned bygetAllOfficeFiles/resultToNode(TS2345, missing internalNodeproperties like_attributes/_data)INodenot assignable toNodein several places (same root cause, template-side)- a computed property name error (
TS2464) Date | undefinednot assignable tonumber | Date(NcDateTime'stimestampprop, x2)
Scope for this issue:
- Fix the 8 existing errors (likely centers on reconciling
@nextcloud/files'NodevsINodetypes, and handlingmtime: Date | undefined). - Add a
typecheck(or similar) script runningvue-tsc --noEmit. - Wire it into CI (new workflow or extend an existing one), separate from
eslint.
Not bundling this into #47 — that issue is scoped to runtime test coverage (Vitest), not static type-checking, and this is an unrelated pre-existing gap.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.