Users of mui date pickers use the wrong type when defining their locale because most of the adapters require a string, but date-fns is expecting an object:
https://github.com/mui/mui-x/issues/4598
I propose to add a verification in every constructor such that in development environment then library throw an explicit error message if the type passed is not correct:
constructor({
locale,
formats,
}: { formats?: Partial<DateIOFormats>; locale?: Locale } = {}) {
if(process.env.NODE_ENV !== 'production'){
if(locale && typeof locale === 'string'){
throw Error(`date-fns expect \`locale\` to be an object, get a ${typeof locale}`)
}
}
this.locale = locale;
this.formats = Object.assign({}, defaultFormats, formats);
}
Users of mui date pickers use the wrong type when defining their locale because most of the adapters require a string, but
date-fns
is expecting an object: https://github.com/mui/mui-x/issues/4598I propose to add a verification in every constructor such that in development environment then library throw an explicit error message if the type passed is not correct:
If it sounds good, I can write the PR