73 lines
1.7 KiB
TypeScript
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];
|