💄 Enforce number inputs

This commit is contained in:
itskovacs 2025-08-08 16:55:32 +02:00
parent 89e52d0483
commit 8b8185c33f
5 changed files with 11 additions and 6 deletions

View File

@ -38,12 +38,13 @@
</p-floatlabel>
<p-floatlabel variant="in">
<input id="duration" formControlName="duration" pInputText fluid />
<p-inputnumber id="duration" formControlName="duration" mode="decimal" fluid />
<label for="duration">Duration</label>
</p-floatlabel>
<p-floatlabel variant="in">
<input id="price" formControlName="price" pInputText fluid />
<p-inputnumber id="price" formControlName="price" mode="decimal" [minFractionDigits]="0" [maxFractionDigits]="2"
fluid />
<label for="price">Price</label>
</p-floatlabel>

View File

@ -23,12 +23,14 @@ import { Category, Place } from "../../types/poi";
import { CheckboxModule } from "primeng/checkbox";
import { TooltipModule } from "primeng/tooltip";
import { checkAndParseLatLng, formatLatLng } from "../../shared/latlng-parser";
import { InputNumberModule } from "primeng/inputnumber";
@Component({
selector: "app-place-create-modal",
imports: [
FloatLabelModule,
InputTextModule,
InputNumberModule,
ButtonModule,
SelectModule,
ReactiveFormsModule,
@ -90,7 +92,7 @@ export class PlaceCreateModalComponent {
category: [null, Validators.required],
description: null,
duration: [null, Validators.pattern("\\d+")],
price: [null, Validators.pattern("[+-]?([0-9]*[.])?[0-9]+")],
price: null,
allowdog: false,
visited: false,
image: null,

View File

@ -50,7 +50,8 @@
</p-floatlabel>
<p-floatlabel variant="in">
<input id="price" formControlName="price" pInputText fluid />
<p-inputnumber id="price" formControlName="price" mode="decimal" [minFractionDigits]="0" [maxFractionDigits]="2"
fluid />
<label for="price">Price</label>
</p-floatlabel>

View File

@ -17,12 +17,14 @@ import { InputMaskModule } from "primeng/inputmask";
import { UtilsService } from "../../services/utils.service";
import { checkAndParseLatLng, formatLatLng } from "../../shared/latlng-parser";
import { takeUntilDestroyed } from "@angular/core/rxjs-interop";
import { InputNumberModule } from "primeng/inputnumber";
@Component({
selector: "app-trip-create-day-item-modal",
imports: [
FloatLabelModule,
InputTextModule,
InputNumberModule,
ButtonModule,
SelectModule,
ReactiveFormsModule,
@ -67,7 +69,7 @@ export class TripCreateDayItemModalComponent {
day_id: [null, Validators.required],
place: null,
status: null,
price: [null, Validators.pattern("[+-]?([0-9]*[.])?[0-9]+")],
price: null,
lat: [
"",
{

View File

@ -35,7 +35,6 @@ export class TripCreateDayModalComponent {
this.dayForm = this.fb.group({
id: -1,
label: ["", Validators.required],
order: 0,
});
if (this.config.data) {