feat: extract shop from mp/shop — initial libreshop/shop
Some checks failed
Build and publish / build (push) Failing after 19s
Some checks failed
Build and publish / build (push) Failing after 19s
Source moved verbatim from mp/shop/ on 2026-04-29; mp was the first concrete adapter consuming the libreshop toolkit. Builds and publishes git.librete.ch/libreshop/shop on every main / v* push via the standard .gitea/workflows/build.yml shared across libreshop components.
This commit is contained in:
29
utils/randomTailwindColor.ts
Normal file
29
utils/randomTailwindColor.ts
Normal file
@@ -0,0 +1,29 @@
|
||||
type TailwindColorPrefix = "text" | "bg" | "shadow" | "from" | "to" | "via" | "group-hover:shadow" | "group-active:shadow";
|
||||
|
||||
type TailwindColorShade = 50 | 100 | 150 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900;
|
||||
|
||||
export const randomTailwindColor = (rand: number, prefix: TailwindColorPrefix = "bg", shade: TailwindColorShade = 100, suffix = "") => {
|
||||
const tailwindColors = [
|
||||
"red",
|
||||
"orange",
|
||||
"amber",
|
||||
"yellow",
|
||||
"lime",
|
||||
"green",
|
||||
"emerald",
|
||||
"teal",
|
||||
"cyan",
|
||||
"sky",
|
||||
"blue",
|
||||
"indigo",
|
||||
"violet",
|
||||
"purple",
|
||||
"fuchsia",
|
||||
"pink",
|
||||
"rose"
|
||||
];
|
||||
|
||||
const randomColorIndex = rand % tailwindColors.length;
|
||||
|
||||
return `${prefix}-${tailwindColors[randomColorIndex]}-${shade}${suffix}`;
|
||||
};
|
||||
Reference in New Issue
Block a user