Skip to content

Commit 4e2fee5

Browse files
committed
chore: cleanup
1 parent 54e7b58 commit 4e2fee5

File tree

9 files changed

+74
-66
lines changed

9 files changed

+74
-66
lines changed

packages/data-access/src/mappers/DashboardQuery.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,7 @@ export class DashboardQuery<TModel, TPartitionKeyFields extends keyof TModel, TR
2323
return new DashboardQuery(this.ModelClass, [...this.whereConditions, whereCondition]);
2424
}
2525

26-
public findPartitionKeyRange(
27-
start: string
28-
): DashboardQuery<TModel, TPartitionKeyFields, TRowKeyFields> {
26+
public findPartitionKeyRange(start: string): DashboardQuery<TModel, TPartitionKeyFields, TRowKeyFields> {
2927
const whereCondition: string = odata`PartitionKey ge ${start}`;
3028
return new DashboardQuery(this.ModelClass, [...this.whereConditions, whereCondition]);
3129
}

packages/stryker-elements/src/lib/atoms/dropdown.ts

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ export class Dropdown extends BaseElement {
1212
@property({ type: Array })
1313
options: { name: string; value: string }[] = [];
1414

15-
@property({ type: String })
15+
@property({ type: String })
1616
selectedOption = '';
1717

1818
@property({ type: Boolean })
@@ -26,13 +26,16 @@ export class Dropdown extends BaseElement {
2626
@change="${this.#handleChange}"
2727
>
2828
${when(
29-
this.withDisabledEmtpyOption,
30-
() => html`<option value="" disabled selected>Select an option</option>`,
31-
() => nothing
29+
this.withDisabledEmtpyOption,
30+
() => html`<option value="" disabled selected>Select an option</option>`,
31+
() => nothing,
32+
)}
33+
${map(
34+
this.options,
35+
(option) => html`
36+
<option value="${option.value}" ?selected="${option.value === this.selectedOption}">${option.name}</option>
37+
`,
3238
)}
33-
${map(this.options, (option) => html`
34-
<option value="${option.value}" ?selected="${option.value === this.selectedOption}">${option.name}</option>
35-
`)}
3639
</select>
3740
`;
3841
}

packages/stryker-elements/src/lib/atoms/hr.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ export class Hr extends BaseElement {
1515
const color = classMap({ 'bg-neutral-700': this.color === 'normal', 'bg-neutral-400': this.color === 'bright' });
1616

1717
if (this.direction === 'vertical') {
18-
return html`<hr class="${color} w-[3px] rounded h-full" />`;
18+
return html`<hr class="${color} h-full w-[3px] rounded" />`;
1919
}
2020

2121
return html`<hr class="${color} my-2 rounded border-t-[3px]" />`;

packages/stryker-elements/src/lib/molecules/split-layout.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ export class SplitLayout extends BaseElement {
1111

1212
render() {
1313
return html`
14-
<div class="flex p-4 ${classMap({ 'bg-elementsDark': this.withBackground })}">
14+
<div class="${classMap({ 'bg-elementsDark': this.withBackground })} flex p-4">
1515
<div class="max-w-split">
1616
<slot name="left"></slot>
1717
</div>
Lines changed: 18 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
import { html, TemplateResult } from "lit";
2-
import { customElement, property, state } from "lit/decorators.js";
3-
import { map } from "lit/directives/map.js";
4-
import { classMap } from "lit/directives/class-map.js";
1+
import { html, TemplateResult } from 'lit';
2+
import { customElement, property, state } from 'lit/decorators.js';
3+
import { map } from 'lit/directives/map.js';
4+
import { classMap } from 'lit/directives/class-map.js';
55

6-
import { BaseElement } from "../base-element";
6+
import { BaseElement } from '../base-element';
77

88
@customElement('sme-tab-panels')
99
export class TabPanels extends BaseElement {
@@ -14,32 +14,31 @@ export class TabPanels extends BaseElement {
1414
panels: TemplateResult<1>[] = [];
1515

1616
@state()
17-
activeTab: number = 0;
17+
activeTab = 0;
1818

1919
render() {
2020
return html`
21-
<div class="w-full h-full">
22-
<div class="flex bg-red-900 justify-center">
21+
<div class="h-full w-full">
22+
<div class="flex justify-center bg-red-900">
2323
${map(this.tabs, (tab, index) => {
24-
return html`
24+
return html`
2525
<sme-button
2626
@click="${this.#handleTabChange}"
27-
class="${classMap({
27+
class="${classMap({
2828
'bg-red-700': index === this.activeTab,
2929
'border-red-500': index === this.activeTab, // separate on multiple lines because it cannot contain whitespace
30-
'border-transparent': index !== this.activeTab
31-
})} border-0 border-b-2 px-2 font-bold transition text-md text-white"
32-
type="plain"
33-
>${tab}</sme-button>
34-
`;
30+
'border-transparent': index !== this.activeTab,
31+
})} text-md border-0 border-b-2 px-2 font-bold text-white transition"
32+
type="plain"
33+
>${tab}</sme-button
34+
>
35+
`;
3536
})}
3637
</div>
37-
<div class="w-full h-full">
38+
<div class="h-full w-full">
3839
${map(this.panels, (panel, index) => {
3940
return html`
40-
<div id="panel-${index}" class="${classMap({ 'hidden': index !== this.activeTab })}">
41-
${panel}
42-
</div>
41+
<div id="panel-${index}" class="${classMap({ hidden: index !== this.activeTab })}">${panel}</div>
4342
`;
4443
})}
4544
</div>
@@ -54,10 +53,8 @@ export class TabPanels extends BaseElement {
5453
}
5554
}
5655

57-
5856
declare global {
5957
interface HTMLElementTagNameMap {
6058
'sme-tab-panels': TabPanels;
6159
}
6260
}
63-

packages/stryker-elements/src/stories/atoms/hr.stories.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ export default {
77
title: 'Atoms/Hr',
88
} as Meta;
99

10-
export const Default: StoryObj = {
10+
export const Default: StoryObj = {
1111
name: 'Default',
1212
render: () => html`<sme-hr></sme-hr>`,
1313
};

packages/stryker-elements/src/stories/molecules/tab-panels.stories.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@ export default {
1111
export const Default: StoryObj = {
1212
name: 'Default',
1313
render: () => {
14-
return html`<sme-tab-panels .tabs="${["Report", "Compare"]}" .panels="${[html`<div>report</div>`, html`<div>compare</div>`]}"></sme-tab-panels>`;
14+
return html`<sme-tab-panels
15+
.tabs="${['Report', 'Compare']}"
16+
.panels="${[html`<div>report</div>`, html`<div>compare</div>`]}"
17+
></sme-tab-panels>`;
1518
},
1619
};

packages/website-backend/src/controllers/version.controller.ts

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,15 @@
11
import fs from 'fs/promises';
2-
import { version as frontendVersion } from '@stryker-mutator/dashboard-frontend';
32
import { Controller, Get, Param } from '@nestjs/common';
3+
4+
import {
5+
createMutationTestingReportMapper,
6+
DashboardQuery,
7+
MutationTestingReport,
8+
MutationTestingReportMapper,
9+
} from '@stryker-mutator/dashboard-data-access';
10+
import { version as frontendVersion } from '@stryker-mutator/dashboard-frontend';
11+
412
import { parseSlug } from '../utils/utils.js';
5-
import { createMutationTestingReportMapper, DashboardQuery, MutationTestingReport, MutationTestingReportMapper, Project, ProjectMapper } from '@stryker-mutator/dashboard-data-access';
613

714
const dashboardVersion = (
815
JSON.parse(await fs.readFile(new URL('../../../package.json', import.meta.url), 'utf-8')) as { version: string }
@@ -26,11 +33,13 @@ export default class VersionController {
2633
frontend: frontendVersion,
2734
};
2835
}
29-
30-
@Get("/:slug(*)")
36+
37+
@Get('/:slug(*)')
3138
public async getVersionsForReport(@Param('slug') slug: string): Promise<string[]> {
3239
const { project } = parseSlug(slug);
33-
const reports = await this.#reportMapper.findAll(DashboardQuery.create(MutationTestingReport).findPartitionKeyRange(project));
40+
const reports = await this.#reportMapper.findAll(
41+
DashboardQuery.create(MutationTestingReport).findPartitionKeyRange(project),
42+
);
3443
return reports.map((project) => project.model.version);
3544
}
3645
}

packages/website-frontend/src/pages/report.page.ts

Lines changed: 24 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -8,30 +8,29 @@ import type { ThemeChangedEvent } from 'mutation-testing-elements';
88
import 'mutation-testing-elements';
99
import { MutationTestResult } from 'mutation-testing-report-schema';
1010

11-
1211
import { reportService } from '../services/report.service';
1312
import { locationService } from '../services/location.service';
1413
import { versionService } from '../services/version.service';
1514

16-
type Reports = {
17-
main: MutationTestResult | undefined,
18-
left: MutationTestResult | undefined,
19-
right: MutationTestResult | undefined
20-
};
15+
interface Reports {
16+
main: MutationTestResult | undefined;
17+
left: MutationTestResult | undefined;
18+
right: MutationTestResult | undefined;
19+
}
2120

2221
@customElement('stryker-dashboard-report-page')
2322
export class ReportPage extends LitElement {
2423
@state()
2524
didNotFindReport = false;
2625

2726
@state()
28-
loaded = { left: true, right: true }
27+
loaded = { left: true, right: true };
2928

3029
@state()
3130
reports: Reports = {
3231
main: undefined,
3332
left: undefined,
34-
right: undefined
33+
right: undefined,
3534
};
3635

3736
@state()
@@ -44,7 +43,7 @@ export class ReportPage extends LitElement {
4443
sse: string | undefined;
4544

4645
@state()
47-
versions: { name: string, value: string }[] = [];
46+
versions: { name: string; value: string }[] = [];
4847

4948
override connectedCallback(): void {
5049
super.connectedCallback();
@@ -73,7 +72,7 @@ export class ReportPage extends LitElement {
7372
});
7473

7574
void versionService.versions(this.#baseSlug).then((versions) => {
76-
this.versions = versions.map(version => ({ name: version, value: version }));
75+
this.versions = versions.map((version) => ({ name: version, value: version }));
7776
});
7877
}
7978

@@ -105,10 +104,10 @@ export class ReportPage extends LitElement {
105104

106105
return html`
107106
<sme-loader ?doneWithLoading="${!!this.reports.main}">
108-
${when(this.reports.main, () => {
107+
${when(this.reports.main, () => {
109108
return html`
110-
<sme-tab-panels
111-
.tabs="${["Report", "Compare"]}"
109+
<sme-tab-panels
110+
.tabs="${['Report', 'Compare']}"
112111
.panels="${[this.#renderReport(), this.#renderCompareView()]}"
113112
></sme-tab-panels>
114113
`;
@@ -118,21 +117,20 @@ export class ReportPage extends LitElement {
118117
}
119118

120119
#renderReport() {
121-
return html`
122-
<mutation-test-report-app
123-
@theme-changed=${this.#handleThemeChange}
124-
.titlePostfix="${this.#title}"
125-
.report="${this.reports.main}"
126-
sse="${ifDefined(this.sse)}"
127-
></mutation-test-report-app>`;
120+
return html` <mutation-test-report-app
121+
@theme-changed=${this.#handleThemeChange}
122+
.titlePostfix="${this.#title}"
123+
.report="${this.reports.main}"
124+
sse="${ifDefined(this.sse)}"
125+
></mutation-test-report-app>`;
128126
}
129127

130128
#renderCompareView() {
131129
return html`
132130
<sme-split-layout withBackground>
133131
<div slot="left">
134-
<sme-dropdown
135-
@dropdownChanged="${(e: CustomEvent) => this.#handleLeftVersionChange(e)}"
132+
<sme-dropdown
133+
@dropdownChanged="${(e: CustomEvent<{ value: string }>) => this.#handleLeftVersionChange(e)}"
136134
.options="${this.versions}"
137135
.selectedOption="${this.selection.left}"
138136
></sme-dropdown>
@@ -144,8 +142,8 @@ export class ReportPage extends LitElement {
144142
</sme-loader>
145143
</div>
146144
<div slot="right">
147-
<sme-dropdown
148-
@dropdownChanged="${(e: CustomEvent) => this.#handleRightVersionChange(e)}"
145+
<sme-dropdown
146+
@dropdownChanged="${(e: CustomEvent<{ value: string }>) => this.#handleRightVersionChange(e)}"
149147
.options="${this.versions}"
150148
.selectedOption="${this.selection.right}"
151149
?withDisabledEmtpyOption="${this.selection.right !== undefined}"
@@ -174,7 +172,7 @@ export class ReportPage extends LitElement {
174172
async #handleVersionChange(event: CustomEvent<{ value: string }>, direction: 'left' | 'right') {
175173
this.loaded = { ...this.loaded, [direction]: false };
176174

177-
const report = await reportService.getReport(this.#configureSlugWithVersion(event.detail.value))
175+
const report = await reportService.getReport(this.#configureSlugWithVersion(event.detail.value));
178176
if (report == undefined) {
179177
return;
180178
}
@@ -185,7 +183,7 @@ export class ReportPage extends LitElement {
185183

186184
setTimeout(() => {
187185
this.reports = { ...this.reports, [direction]: report };
188-
this.loaded = { ...this.loaded, [direction]: true };
186+
this.loaded = { ...this.loaded, [direction]: true };
189187
}, 250);
190188
}
191189

0 commit comments

Comments
 (0)