Skip to content

Commit 8901d52

Browse files
committed
Fix lint errors
1 parent 569e07f commit 8901d52

File tree

10 files changed

+59
-46
lines changed

10 files changed

+59
-46
lines changed

biome.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,12 @@
3939
}
4040
}
4141
}
42+
},
43+
{
44+
"includes": ["packages/example/**"],
45+
"linter": {
46+
"enabled": false
47+
}
4248
}
4349
]
4450
}

packages/reporter/client/App.vue

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ import devCov from "./demoReport.json";
88
import DirectoryPage from "./pages/directory.vue";
99
import FilePage from "./pages/file.vue";
1010
11-
// biome-ignore lint/style/noNonNullAssertion: used to load reports injected in dev and prod
1211
const reports = import.meta.env.MODE === "development" ? (devCov as Report[]) : (window.reports as Report[]);
1312
1413
const fileReports = computed(() => reports.filter((r) => r.type === "file") as FileReport[]);

packages/reporter/client/components/CoverageCode.vue

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,17 +13,17 @@
1313
</template>
1414

1515
<script setup lang="ts">
16+
import type * as Monaco from "monaco-editor";
1617
import { onBeforeUnmount, onMounted, ref, shallowRef, watch } from "vue";
17-
1818
import type { BlockRange, CoverageDetail } from "../../shared/report-types";
1919
2020
const props = defineProps<{
2121
code: string;
2222
coverage: CoverageDetail;
2323
}>();
2424
25-
const editorInstance = shallowRef<any | null>(null);
26-
const monacoInstance = shallowRef<any | null>(null);
25+
const editorInstance = shallowRef<Monaco.editor.IStandaloneCodeEditor | null>(null);
26+
const monacoInstance = shallowRef<typeof Monaco | null>(null);
2727
const coverageDecorationIds = shallowRef<string[]>([]);
2828
const monacoTheme = ref("vs-dark");
2929
let themeListener: ((event: Event) => void) | null = null;
@@ -54,7 +54,7 @@ const applyCoverage = (coverage: CoverageDetail) => {
5454
if (!editorInstance.value || !monacoInstance.value) return;
5555
const monaco = monacoInstance.value;
5656
57-
const decorations: any[] = [];
57+
const decorations: Monaco.editor.IModelDeltaDecoration[] = [];
5858
5959
// Uncovered statements
6060
for (const [id, count] of Object.entries(coverage.s)) {
@@ -123,7 +123,7 @@ watch(
123123
{ deep: true },
124124
);
125125
126-
const handleMount = (editor: any, monaco: any) => {
126+
const handleMount = (editor: Monaco.editor.IStandaloneCodeEditor, monaco: typeof Monaco) => {
127127
editorInstance.value = editor;
128128
monacoInstance.value = monaco;
129129

packages/reporter/client/components/FileTree.vue

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,13 +25,24 @@ interface TreeNode {
2525
leaf?: boolean;
2626
}
2727
28+
interface TreeNodeMapEntry {
29+
key: string;
30+
label: string;
31+
childrenMap: Map<string, TreeNodeMapEntry>;
32+
data?: TreeNodeData;
33+
}
34+
2835
const buildTree = (reports: Report[]): TreeNode[] => {
29-
const rootMap = new Map<string, any>();
36+
const rootMap = new Map<string, TreeNodeMapEntry>();
3037
31-
const ensureNode = (segments: string[]): any => {
38+
const ensureNode = (segments: string[]): TreeNodeMapEntry => {
3239
let map = rootMap;
3340
let currentPath = "";
34-
let node: any;
41+
let node: TreeNodeMapEntry = {
42+
key: "",
43+
label: "",
44+
childrenMap: new Map(),
45+
};
3546
3647
segments.forEach((segment) => {
3748
currentPath = currentPath ? `${currentPath}/${segment}` : segment;
@@ -40,7 +51,7 @@ const buildTree = (reports: Report[]): TreeNode[] => {
4051
entry = {
4152
key: currentPath,
4253
label: segment,
43-
childrenMap: new Map<string, any>(),
54+
childrenMap: new Map<string, TreeNodeMapEntry>(),
4455
};
4556
map.set(segment, entry);
4657
}
@@ -62,7 +73,7 @@ const buildTree = (reports: Report[]): TreeNode[] => {
6273
} as TreeNodeData;
6374
}
6475
65-
const mapToNodes = (map: Map<string, any>): TreeNode[] => {
76+
const mapToNodes = (map: Map<string, TreeNodeMapEntry>): TreeNode[] => {
6677
const nodes: TreeNode[] = [];
6778
for (const [, value] of map) {
6879
const children = mapToNodes(value.childrenMap);
@@ -102,7 +113,7 @@ watch(
102113
const keys: Record<string, boolean> = {};
103114
const collect = (items: TreeNode[]) => {
104115
for (const item of items) {
105-
if (item.children && item.children.length) {
116+
if (item.children?.length) {
106117
keys[item.key] = true;
107118
collect(item.children);
108119
}

packages/reporter/client/components/ProgressBar.vue

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
<script setup lang="ts">
2-
import { computed } from 'vue';
2+
import { computed } from "vue";
33
44
const props = defineProps<{
55
value: number;
66
color: string;
7-
}>()
7+
}>();
88
9-
const width = computed(() => `${props.value}%`)
9+
const width = computed(() => `${props.value}%`);
1010
</script>
1111

1212
<template>

packages/reporter/client/components/Stats.vue

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
<script setup lang="ts">
2-
import type { SummaryStats } from '../../shared/report-types';
3-
import { statToString } from '../utils/statToString'
2+
import type { SummaryStats } from "../../shared/report-types";
3+
import { statToString } from "../utils/statToString";
44
55
const props = defineProps<{
6-
stats: SummaryStats
7-
}>()
6+
stats: SummaryStats;
7+
}>();
88
</script>
99

1010
<style>

packages/reporter/client/pages/directory.vue

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
<script setup lang="ts">
2-
import OpenFilesTabs from "../components/OpenFilesTabs.vue";
3-
import DirectoryStatsView from "../components/DirectoryStatsView.vue";
4-
5-
import type { DirectoryReport } from "../../shared/report-types";
62
import { computed } from "vue";
3+
import type { DirectoryReport } from "../../shared/report-types";
4+
import DirectoryStatsView from "../components/DirectoryStatsView.vue";
5+
import OpenFilesTabs from "../components/OpenFilesTabs.vue";
76
87
const props = defineProps<{
98
report: DirectoryReport;

packages/reporter/client/pages/file.vue

Lines changed: 13 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,28 @@
11
<script setup lang="ts">
2+
import { decompress } from "lz-string";
3+
import { computed } from "vue";
4+
import type { FileReport } from "../../shared/report-types";
25
import CoverageCode from "../components/CoverageCode.vue";
3-
import OpenFilesTabs from "../components/OpenFilesTabs.vue";
46
import CoverageStatusBar from "../components/CoverageStatusBar.vue";
5-
6-
import type { FileReport } from "../../shared/report-types";
7-
import { computed } from "vue";
8-
import { decompress } from "lz-string";
7+
import OpenFilesTabs from "../components/OpenFilesTabs.vue";
98
109
const props = defineProps<{
1110
report: FileReport;
1211
}>();
1312
14-
const emit = defineEmits<{
15-
(e: "close"): void;
16-
}>();
13+
const emit = defineEmits<(e: "close") => void>();
1714
18-
const code = computed(() => decompress(props.report.fileContent))
15+
const code = computed(() => decompress(props.report.fileContent));
1916
2017
// For now we only ever have one open file (the current report),
2118
// but this component is ready for multiple tabs in the future.
22-
const openFiles = computed(() => [{
23-
id: props.report.entity,
24-
label: props.report.name,
25-
path: props.report.entity,
26-
}]);
27-
19+
const openFiles = computed(() => [
20+
{
21+
id: props.report.entity,
22+
label: props.report.name,
23+
path: props.report.entity,
24+
},
25+
]);
2826
</script>
2927

3028
<template>

packages/reporter/index.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@
99
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
1010
<link href="https://fonts.googleapis.com/css2?family=Readex+Pro:wght@300;400&display=swap" rel="stylesheet">
1111
<script>
12-
(function () {
13-
const prefersDark = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches
12+
(() => {
13+
const prefersDark = window.matchMedia?.('(prefers-color-scheme: dark)')?.matches
1414
const setting = localStorage.getItem('vueuse-color-scheme') || 'auto'
1515
if (setting === 'dark' || (prefersDark && setting !== 'light')) {
1616
document.documentElement.classList.toggle('dark', true)

packages/reporter/node/index.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
import { readFileSync, readdirSync, statSync } from "node:fs";
1+
import { readdirSync, readFileSync, statSync } from "node:fs";
22
import { join, relative } from "node:path";
3-
import { CoverageSummary } from "istanbul-lib-coverage";
3+
import type { CoverageSummary } from "istanbul-lib-coverage";
4+
import type { Context, FileContentWriter, ReportBaseOptions, ReportNode } from "istanbul-lib-report";
45
import { ReportBase } from "istanbul-lib-report";
56
import { compress } from "lz-string";
6-
7-
import type { Context, FileContentWriter, ReportBaseOptions, ReportNode } from "istanbul-lib-report";
87
import type { DirectoryReport, FileReport, Report, SummaryStats } from "../shared/report-types";
8+
99
export type * from "../shared/report-types";
1010

1111
function* walkDir(dir: string) {
@@ -53,7 +53,7 @@ export class NextHTMLReport extends ReportBase {
5353
super(options);
5454
}
5555

56-
override onStart(root: ReportNode, context: Context) {
56+
override onStart(_root: ReportNode, context: Context) {
5757
this.reset();
5858
const dist = join(__dirname, "../dist/client");
5959
const writer = this.getWriter(context);
@@ -106,7 +106,7 @@ export class NextHTMLReport extends ReportBase {
106106
this.reports.push(report);
107107
}
108108

109-
override onEnd(root: ReportNode, context: Context) {
109+
override onEnd(_root: ReportNode, context: Context) {
110110
// write
111111
const writer = this.getWriter(context);
112112
const statsStream = writer.writeFile("loadcov.js") as FileContentWriter;

0 commit comments

Comments
 (0)