ldc-ovoteam/resources/ts/front/lib/constants.tsx

73 lines
1.7 KiB
TypeScript

import { ChevronLeft, ChevronRight, X } from "lucide-react";
// CONST for Fonts
export const fonts = {
GOTHAM: "font-gotham",
DELIUS_SWASH: "font-delius-swash",
} as const;
export type FontName = (typeof fonts)[keyof typeof fonts];
// CONST for placement
export const sidePlacements = {
LEFT: "left",
RIGHT: "right",
} as const;
export type SidePlacementName =
(typeof sidePlacements)[keyof typeof sidePlacements];
export const verticalPlacements = {
TOP: "top",
BOTTOM: "bottom",
} as const;
export type VerticalPlacementName =
(typeof verticalPlacements)[keyof typeof verticalPlacements];
// CONST for weight text
export const simpleWeights = {
BOLD: "font-bold",
NORMAL: "font-normal",
} as const;
export type SimpleWeightName =
(typeof simpleWeights)[keyof typeof simpleWeights];
// CONST for bg color
export const bgColors = {
PRIMARY: "bg-primary",
BACKGROUND: "bg-background",
} as const;
export type BgColorName = (typeof bgColors)[keyof typeof bgColors];
// MAP ICON FOR BUTTON
export const iconMap = {
"chevron-right": ChevronRight,
"chevron-left": ChevronLeft,
x: X,
} as const;
export type IconName = keyof typeof iconMap;
// VIDEO PROVIDER
export const videoProvider = {
YOUTUBE: "youtube",
VIMEO: "vimeo",
} as const;
export type VideoProviderName =
(typeof videoProvider)[keyof typeof videoProvider];
// COOKIE NOTICE SERVICE
export const cnServices = {
...videoProvider,
RECAPTCHA: "recaptcha",
MATOMO: "matomo",
} as const;
export type CnServiceName = (typeof cnServices)[keyof typeof cnServices];
export const imageShapes = {
ROUNDED: "rounded",
SQUARE: "square",
};
export type ImageShapeName = (typeof imageShapes)[keyof typeof imageShapes];