* chore: headers + common containers * fix: filters code splitting * fix: home header * fix: header changes * chore: page alignments fixed * fix: uncommented filters * fix: used enums * fix: cards + filters * fix: enum changes * fix: reverted package changes * fix: reverted package changes * fix: Card + tags seperated + naming fixed * fix: card + tags seperated + naming fixed * fix: mobile headers fixed partially * fix: build errors + minor css * fix: checkbox spacing * fix: review changes * fix: lint errors * fix: minor review changes
36 lines
1.2 KiB
TypeScript
36 lines
1.2 KiB
TypeScript
export enum ECardVariant {
|
|
WITHOUT_SHADOW = "without-shadow",
|
|
WITH_SHADOW = "with-shadow",
|
|
}
|
|
export enum ECardDirection {
|
|
ROW = "row",
|
|
COLUMN = "column",
|
|
}
|
|
export enum ECardSpacing {
|
|
SM = "sm",
|
|
LG = "lg",
|
|
}
|
|
export type TCardVariant = ECardVariant.WITHOUT_SHADOW | ECardVariant.WITH_SHADOW;
|
|
export type TCardDirection = ECardDirection.ROW | ECardDirection.COLUMN;
|
|
export type TCardSpacing = ECardSpacing.SM | ECardSpacing.LG;
|
|
|
|
export interface ICardProperties {
|
|
[key: string]: string;
|
|
}
|
|
|
|
const DEFAULT_STYLE =
|
|
"bg-custom-background-100 rounded-lg border-[0.5px] border-custom-border-200 w-full flex flex-col";
|
|
export const containerStyle: ICardProperties = {
|
|
[ECardVariant.WITHOUT_SHADOW]: "",
|
|
[ECardVariant.WITH_SHADOW]: "hover:shadow-custom-shadow-4xl duration-300",
|
|
};
|
|
export const spacings = {
|
|
[ECardSpacing.SM]: "p-4",
|
|
[ECardSpacing.LG]: "p-6",
|
|
};
|
|
export const directions = {
|
|
[ECardDirection.ROW]: "flex-row space-x-3",
|
|
[ECardDirection.COLUMN]: "flex-col space-y-3",
|
|
};
|
|
export const getCardStyle = (variant: TCardVariant, spacing: TCardSpacing, direction: TCardDirection) =>
|
|
DEFAULT_STYLE + " " + directions[direction] + " " + containerStyle[variant] + " " + spacings[spacing];
|