aura-glass
Version:
A comprehensive glassmorphism design system for React applications with 142+ production-ready components
40 lines (37 loc) • 1.2 kB
JavaScript
import { jsx } from 'react/jsx-runtime';
import { createContext } from 'react';
import { format, parse, isValid, addDays, addMonths, addYears } from 'date-fns';
// Create a context for our date adapter
const DateAdapterContext = /*#__PURE__*/createContext(null);
/**
* Glass Localization Provider
* Provides date formatting and manipulation utilities for Glass components
*/
const GlassLocalizationProvider = ({
dateAdapter = 'date-fns',
children
}) => {
// Create our adapter based on date-fns
// This can be extended to support other adapters in the future if needed
const adapter = {
format: (date, formatString) => date ? format(date, formatString) : '',
parse: (value, formatString) => {
try {
const parsedDate = parse(value, formatString, new Date());
return isValid(parsedDate) ? parsedDate : null;
} catch (error) {
return null;
}
},
isValid,
addDays,
addMonths,
addYears
};
return jsx(DateAdapterContext.Provider, {
value: adapter,
children: children
});
};
export { GlassLocalizationProvider, GlassLocalizationProvider as default };
//# sourceMappingURL=GlassLocalizationProvider.js.map