From 4b45bd1ff065612082cdcfc599c0527e33e8628c Mon Sep 17 00:00:00 2001 From: Wing-Kam Wong Date: Mon, 18 Jul 2022 17:51:59 +0800 Subject: [PATCH] feat: add validateDateWithUnknownFormat --- packages/nc-gui/helpers/dateFormatHelper.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/packages/nc-gui/helpers/dateFormatHelper.js b/packages/nc-gui/helpers/dateFormatHelper.js index 032e44f829..4142dc3ea6 100644 --- a/packages/nc-gui/helpers/dateFormatHelper.js +++ b/packages/nc-gui/helpers/dateFormatHelper.js @@ -1,3 +1,7 @@ +import dayjs from 'dayjs'; +const customParseFormat = require('dayjs/plugin/customParseFormat'); +dayjs.extend(customParseFormat); + export const dateFormat = [ 'DD-MM-YYYY', 'MM-DD-YYYY', 'YYYY-MM-DD', 'DD/MM/YYYY', 'MM/DD/YYYY', 'YYYY/MM/DD', @@ -6,4 +10,12 @@ export const dateFormat = [ export function validateDateFormat(v) { return dateFormat.includes(v) +} + +export function validateDateWithUnknownFormat(v) { + let res = 0; + for (const format of dateFormat) { + res |= dayjs(v.toString(), format, true).isValid(); + } + return res; } \ No newline at end of file