<div class="mb-3">
@if (title) {
- <label [for]="inputId">{{title}}</label>
+ <label class="form-label" [for]="inputId">{{title}}</label>
}
<div class="input-group" [class.is-invalid]="error">
- <span class="input-group-text" [style.background-color]="value"> </span>
+ <button type="button" class="input-group-text" [style.background-color]="value" (click)="colorPicker.toggle()"> </button>
<ng-template #popContent>
<div style="min-width: 200px;" class="pb-3">
<color-slider [color]="value" (onChangeComplete)="colorChanged($event.color.hex)"></color-slider>
</div>
-
</ng-template>
- <input #inputField class="form-control" [class.is-invalid]="error" [id]="inputId" [(ngModel)]="value" (change)="onChange(value)" [autoClose]="'outside'" [ngbPopover]="popContent" placement="bottom" popoverClass="shadow">
+ <input #inputField class="form-control" [class.is-invalid]="error" [id]="inputId" [(ngModel)]="value" (change)="onChange(value)" [autoClose]="'outside'" [ngbPopover]="popContent" #colorPicker="ngbPopover" placement="bottom" popoverClass="shadow">
<button class="btn btn-outline-secondary" type="button" (click)="randomize()">
<i-bs name="dice5"></i-bs>
})
it('should set swatch color', () => {
- const swatch: HTMLSpanElement = fixture.nativeElement.querySelector(
- 'span.input-group-text'
+ const swatch: HTMLButtonElement = fixture.nativeElement.querySelector(
+ 'button.input-group-text'
)
expect(swatch.style.backgroundColor).toEqual('')
component.value = '#ff0000'