changed quiet hours to 24h selects

This commit is contained in:
Flaminel committed 2026-10-28 22:27:50 +02:00
1 parent fcdf7b7979
commit 9d38bbf753
3 files changed
+17 -6

No files matched your search

@@ -68,10 +68,10 @@
hint="Pause proactive search between these times. Replacement searches keep running. Times follow the container's TZ setting."
helpKey="seeker:quietHoursEnabled" featureId="seeker-quiet-hours" />
@if (seekerForm.quietHoursEnabled().value()) {
<app-input type="time" label="Quiet From" [formField]="seekerForm.quietHoursStart"
<app-time-input label="Quiet From" [formField]="seekerForm.quietHoursStart"
[error]="seekerForm.quietHoursStart().errors()[0]?.message"
helpKey="seeker:quietHoursEnabled" />
<app-input type="time" label="Quiet Until" [formField]="seekerForm.quietHoursEnd"
<app-time-input label="Quiet Until" [formField]="seekerForm.quietHoursEnd"
hint="A window that ends before it starts runs past midnight, for example 23:00 to 07:00."
[error]="seekerForm.quietHoursEnd().errors()[0]?.message"
helpKey="seeker:quietHoursEnabled" />
@@ -705,12 +705,23 @@ describe('SeekerComponent', () => {
it('renders the time inputs only when quiet hours are enabled', () => {
const { fixture, component } = setup();
expect(fixture.nativeElement.querySelectorAll('input[type="time"]').length).toBe(2);
expect(fixture.nativeElement.querySelectorAll('app-time-input').length).toBe(2);
component.seekerForm.quietHoursEnabled().value.set(false);
fixture.detectChanges();
expect(fixture.nativeElement.querySelectorAll('input[type="time"]').length).toBe(0);
expect(fixture.nativeElement.querySelectorAll('app-time-input').length).toBe(0);
});
it('shows the quiet until time as hour and minute selects', () => {
const { fixture } = setup();
const until = Array.from(fixture.nativeElement.querySelectorAll('app-time-input')).find((el) =>
(el as HTMLElement).textContent!.includes('Quiet Until'),
) as HTMLElement;
const shown = Array.from(until.querySelectorAll('.select-trigger__text')).map((el) => el.textContent!.trim());
expect(shown).toEqual(['07', '30']);
});
it('marks the form invalid when quiet hours start and end match', () => {
@@ -4,7 +4,7 @@ import { DatePipe } from '@angular/common';
import { PageHeaderComponent } from '@layout/page-header/page-header.component';
import {
CardComponent, ButtonComponent, ToggleComponent,
SelectComponent, ChipInputComponent, NumberInputComponent, InputComponent,
SelectComponent, ChipInputComponent, NumberInputComponent, TimeInputComponent,
EmptyStateComponent, LoadingStateComponent, BadgeComponent,
type SelectOption,
} from '@ui';
@@ -101,7 +101,7 @@ interface InstanceState {
standalone: true,
imports: [
PageHeaderComponent, CardComponent, ButtonComponent,
ToggleComponent, SelectComponent, ChipInputComponent, NumberInputComponent, InputComponent,
ToggleComponent, SelectComponent, ChipInputComponent, NumberInputComponent, TimeInputComponent,
EmptyStateComponent, LoadingStateComponent, BadgeComponent, DatePipe, FormField,
],
templateUrl: './seeker.component.html',