From a0f48130c0cacf59a7d7a62f627e6a5e62d90727 Mon Sep 17 00:00:00 2001 From: Michael Shamoon <4887959+shamoon@users.noreply.github.com> Date: Sat, 6 Aug 2022 20:49:00 -0700 Subject: [PATCH] Fix some date pasting cases --- .../common/input/date/date.component.ts | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src-ui/src/app/components/common/input/date/date.component.ts b/src-ui/src/app/components/common/input/date/date.component.ts index 44e7c7513..168745910 100644 --- a/src-ui/src/app/components/common/input/date/date.component.ts +++ b/src-ui/src/app/components/common/input/date/date.component.ts @@ -1,8 +1,10 @@ import { Component, forwardRef, OnInit } from '@angular/core' import { NG_VALUE_ACCESSOR } from '@angular/forms' -import { NgbDateParserFormatter } from '@ng-bootstrap/ng-bootstrap' +import { + NgbDateAdapter, + NgbDateParserFormatter, +} from '@ng-bootstrap/ng-bootstrap' import { SettingsService } from 'src/app/services/settings.service' -import { LocalizedDateParserFormatter } from 'src/app/utils/ngb-date-parser-formatter' import { AbstractInputComponent } from '../abstract-input' @Component({ @@ -23,7 +25,8 @@ export class DateComponent { constructor( private settings: SettingsService, - private ngbDateParserFormatter: NgbDateParserFormatter + private ngbDateParserFormatter: NgbDateParserFormatter, + private isoDateAdapter: NgbDateAdapter ) { super() } @@ -43,9 +46,10 @@ export class DateComponent let pastedText = clipboardData.getData('text') pastedText = pastedText.replace(/[\sa-z#!$%\^&\*;:{}=\-_`~()]+/g, '') const parsedDate = this.ngbDateParserFormatter.parse(pastedText) - const formattedDate = this.ngbDateParserFormatter.format(parsedDate) - this.writeValue(formattedDate) - this.onChange(formattedDate) + if (parsedDate) { + this.writeValue(this.isoDateAdapter.toModel(parsedDate)) + this.onChange(this.value) + } } }