Add shared components/common/TimeField (displays per general_time_format, stores canonical HH:MM, parses tolerant free-text, browser-independent) and migrate every native <input type="time"> to it: business hours, HoursSection, HourEntryInlinePopover, CreateEventPage, Quote/Bill/Contract editors. Removes the unreliable lang-hint plumbing.
32 lines
1.4 KiB
TypeScript
32 lines
1.4 KiB
TypeScript
export { Button } from './Button';
|
|
export { CMSContentBlock } from './CMSContentBlock';
|
|
export { Input } from './Input';
|
|
export { CountrySelect } from './CountrySelect';
|
|
export { LocalizedDateInput } from './LocalizedDateInput';
|
|
export { TimeField, parseTimeToHHMM } from './TimeField';
|
|
export { SortableHeader, useColumnSort } from './SortableHeader';
|
|
export type { SortDir, SortPair, SortColumnMap } from './SortableHeader';
|
|
export { Card, CardHeader, CardContent, CardFooter } from './Card';
|
|
export { Loading, LoadingSkeleton } from './Loading';
|
|
export { ErrorBoundary, PageErrorBoundary } from './ErrorBoundary';
|
|
export {
|
|
Skeleton,
|
|
SkeletonGroup,
|
|
SkeletonCard,
|
|
SkeletonTable,
|
|
SkeletonGalleryGrid,
|
|
SkeletonList
|
|
} from './Skeleton';
|
|
export { OfflineIndicator, useOnlineStatus } from './OfflineIndicator';
|
|
export { SkipLink } from './SkipLink';
|
|
export { DynamicFavicon } from './DynamicFavicon';
|
|
export { RobotsMetaTags } from './RobotsMetaTags';
|
|
export { LanguageSelector } from './LanguageSelector';
|
|
export { AuthenticatedImage } from './AuthenticatedImage';
|
|
export { AuthenticatedVideo } from './AuthenticatedVideo';
|
|
export { ProtectedImage } from './ProtectedImage';
|
|
export { ProtectionWarning } from './ProtectionWarning';
|
|
export { ReCaptcha } from './ReCaptcha';
|
|
export { PasswordGenerator } from './PasswordGenerator';
|
|
export { MarkdownContent } from './MarkdownContent';
|