From 4ebe1715d38f4f15cfa2f30e88a77e809d70863e Mon Sep 17 00:00:00 2001 From: swarnadipa-dev Date: Fri, 6 Sep 2024 16:59:54 +0530 Subject: [PATCH] ELEMENTS-1113: expose date format --- ui/widgets/nuxeo-date-picker.js | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/ui/widgets/nuxeo-date-picker.js b/ui/widgets/nuxeo-date-picker.js index fcfc33f8b..0091e8a15 100644 --- a/ui/widgets/nuxeo-date-picker.js +++ b/ui/widgets/nuxeo-date-picker.js @@ -125,6 +125,13 @@ import { I18nBehavior } from '../nuxeo-i18n-behavior.js'; type: Boolean, value: false, }, + /** + * Use this property to provide custom date format + */ + format: { + type: String, + value: '', + }, }; } @@ -188,9 +195,11 @@ import { I18nBehavior } from '../nuxeo-i18n-behavior.js'; moment.locale(window.nuxeo.I18n.language ? window.nuxeo.I18n.language.split('-')[0] : 'en'); // tell vaadin-date-picker how to display dates since default behavior is US locales (MM-DD-YYYY) // this way we can take advantage of moment locale and use the date format that is most suitable for the user - this.$.date.set('i18n.formatDate', (date) => this._moment(date).format(moment.localeData().longDateFormat('L'))); + this.$.date.set('i18n.formatDate', (date) => + this._moment(date).format(this.format ? this.format : moment.localeData().longDateFormat('L')), + ); this.$.date.set('i18n.parseDate', (text) => { - const date = this._moment(text, moment.localeData().longDateFormat('L')); + const date = this._moment(text, this.format ? this.format : moment.localeData().longDateFormat('L')); return { day: date.get('D'), month: date.get('M'),