From ae127dca515c27d3868e7557181b612329faa0b8 Mon Sep 17 00:00:00 2001 From: Chlod Alejandro Date: Fri, 1 Sep 2023 09:57:15 +0800 Subject: [PATCH] ante: fix date parsing --- src/modules/ante/ui/components/RevisionDateGetButton.tsx | 1 + src/modules/ante/ui/pages/CopiedTemplateRowPage.tsx | 6 +++--- src/modules/ante/ui/pages/MergedFromTemplatePage.tsx | 6 +++--- src/modules/ante/ui/pages/MergedToTemplatePage.tsx | 6 +++--- src/modules/ante/ui/pages/SplitArticleTemplateRowPage.tsx | 6 +++--- 5 files changed, 13 insertions(+), 12 deletions(-) diff --git a/src/modules/ante/ui/components/RevisionDateGetButton.tsx b/src/modules/ante/ui/components/RevisionDateGetButton.tsx index 543d76559..8fe3b8589 100644 --- a/src/modules/ante/ui/components/RevisionDateGetButton.tsx +++ b/src/modules/ante/ui/components/RevisionDateGetButton.tsx @@ -61,6 +61,7 @@ function initRevisionDateGetButton() { rvprop: 'timestamp' } ).then( ( data ) => { this.dateInputWidget.setValue( + // ISO-format date data.query.pages[ 0 ].revisions[ 0 ].timestamp.split( 'T' )[ 0 ] ); this.dateInputWidget.setDisabled( false ); diff --git a/src/modules/ante/ui/pages/CopiedTemplateRowPage.tsx b/src/modules/ante/ui/pages/CopiedTemplateRowPage.tsx index 5e31d2d43..31a7eb6da 100644 --- a/src/modules/ante/ui/pages/CopiedTemplateRowPage.tsx +++ b/src/modules/ante/ui/pages/CopiedTemplateRowPage.tsx @@ -492,9 +492,9 @@ function initCopiedTemplateRowPage() { this.copiedTemplateRow[ field ] = value ? 'yes' : ''; } else if ( input instanceof mw.widgets.DateInputWidget ) { this.copiedTemplateRow[ field ] = value ? - new Date( value + 'T00:00:00Z' ).toLocaleDateString( 'en-GB', { - year: 'numeric', month: 'long', day: 'numeric' - } ) : undefined; + window.moment( value, 'YYYY-MM-DD' ) + .locale( 'en' ) + .format( 'YYYY-MM-DD' ) : undefined; if ( value.length > 0 ) { this.fieldLayouts[ field ].setWarnings( [] ); } diff --git a/src/modules/ante/ui/pages/MergedFromTemplatePage.tsx b/src/modules/ante/ui/pages/MergedFromTemplatePage.tsx index f34baecaa..312bc2058 100644 --- a/src/modules/ante/ui/pages/MergedFromTemplatePage.tsx +++ b/src/modules/ante/ui/pages/MergedFromTemplatePage.tsx @@ -238,9 +238,9 @@ function initMergedFromTemplatePage() { this.mergedFromTemplate[ field ] = value ? 'yes' : 'no'; } else if ( input instanceof mw.widgets.DateInputWidget ) { this.mergedFromTemplate[ field ] = value ? - new Date( value + 'T00:00:00Z' ).toLocaleDateString( 'en-GB', { - year: 'numeric', month: 'long', day: 'numeric' - } ) : undefined; + window.moment( value, 'YYYY-MM-DD' ) + .locale( 'en' ) + .format( 'YYYY-MM-DD' ) : undefined; if ( value.length > 0 ) { fieldLayouts[ field ].setWarnings( [] ); } diff --git a/src/modules/ante/ui/pages/MergedToTemplatePage.tsx b/src/modules/ante/ui/pages/MergedToTemplatePage.tsx index 9aab80c2f..ea8dd5cbf 100644 --- a/src/modules/ante/ui/pages/MergedToTemplatePage.tsx +++ b/src/modules/ante/ui/pages/MergedToTemplatePage.tsx @@ -208,9 +208,9 @@ function initMergedToTemplatePage() { this.mergedToTemplate[ field ] = value ? 'yes' : 'no'; } else if ( input instanceof mw.widgets.DateInputWidget ) { this.mergedToTemplate[ field ] = value ? - new Date( value + 'T00:00:00Z' ).toLocaleDateString( 'en-GB', { - year: 'numeric', month: 'long', day: 'numeric' - } ) : undefined; + window.moment( value, 'YYYY-MM-DD' ) + .locale( 'en' ) + .format( 'YYYY-MM-DD' ) : undefined; if ( value.length > 0 ) { fieldLayouts[ field ].setWarnings( [] ); } diff --git a/src/modules/ante/ui/pages/SplitArticleTemplateRowPage.tsx b/src/modules/ante/ui/pages/SplitArticleTemplateRowPage.tsx index 0ae18c867..27a0ebc4a 100644 --- a/src/modules/ante/ui/pages/SplitArticleTemplateRowPage.tsx +++ b/src/modules/ante/ui/pages/SplitArticleTemplateRowPage.tsx @@ -240,9 +240,9 @@ function initSplitArticleTemplateRowPage() { input.on( 'change', ( value: string ) => { if ( input instanceof mw.widgets.DateInputWidget ) { this.splitArticleTemplateRow[ field ] = value ? - new Date( value + 'T00:00:00Z' ).toLocaleDateString( 'en-GB', { - year: 'numeric', month: 'long', day: 'numeric' - } ) : undefined; + window.moment( value, 'YYYY-MM-DD' ) + .locale( 'en' ) + .format( 'YYYY-MM-DD' ) : undefined; if ( value.length > 0 ) { fieldLayouts[ field ].setWarnings( [] ); }