Restore the numeric field's left inset
The value in "Horas por semana" sat 12px to the left of every other field -- and, more visibly, 12px left of its own label, which stayed where the others were. It is a defect in @pi/ui, measured rather than guessed: field has-icon-prefix prefix value starts at text-field false -- 16px email-field false -- 16px number-field true 4px 4px `pi-number-field` declares `<ng-container matPrefix>` unconditionally, so Material treats the field as having an icon prefix even with nothing projected into it. The empty 4px prefix displaces the 16px inset the other fields get. Only two of the library's twenty field templates declare a prefix, both numeric, and only `incremental-number-field` actually fills one -- so it is an oversight, not a pattern. This is the stopgap, marked as such and scoped to that field. The real fix is already written in the library (`pireon-ui`, `number-field.component.html`, guarded by a `contentChild`) but is not built or published yet; this rule comes out when that version lands. Verified in both themes: all four fields now start their value and their label at 16px. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -130,3 +130,26 @@
|
|||||||
font-size: var(--pi-font-size-x-small, 0.75rem);
|
font-size: var(--pi-font-size-x-small, 0.75rem);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// TEMPORARY. Remove when @pi/ui ships the fix.
|
||||||
|
//
|
||||||
|
// `pi-number-field` declares `<ng-container matPrefix>` unconditionally, so
|
||||||
|
// Material marks the field as having an icon prefix even though nothing is
|
||||||
|
// projected into it. The empty prefix is 4px wide and takes the place of the
|
||||||
|
// 16px inset every other field gets: the value ended up 12px to the left of
|
||||||
|
// its own label, which is what makes it look wrong.
|
||||||
|
//
|
||||||
|
// Only two of the library's twenty fields declare a prefix, both numeric, and
|
||||||
|
// only `incremental-number-field` actually uses one — so this is an oversight
|
||||||
|
// rather than a pattern. The fix belongs there and is written:
|
||||||
|
// `pireon-ui`, `number-field.component.html`, guarded by a `contentChild`.
|
||||||
|
// This restores the inset here until that version is published.
|
||||||
|
:host ::ng-deep .pi-form-field__number {
|
||||||
|
.mat-mdc-form-field-icon-prefix {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mat-mdc-form-field-infix {
|
||||||
|
padding-left: 16px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user