mirror of
https://github.com/jnsahaj/tweakcn.git
synced 2026-08-31 02:19:56 +08:00
a8ebc09001
* feat: add formatCompactNumber utility for compact number formatting * Feature/save (#41) * setup drizzle with better-auth * switch to turso * chore: better auth migrations * feat: add basic signin signup auth * update form uis * remove emailAndPassword * loading state for auth btns * add theme routes and save function * migrate to actions * feat: Add dashboard page to view saved themes * hook up delete theme functionality * minor improvements * feat(auth): add AuthDialogWrapper and integrate with existing components * setup post login action to open save modal after login * refactor action bar * refactor * add ability to open theme by id * Use URL param for themeId * feat(editor): improve theme loading and add theme editing actions component * feat(theme): implement theme editing functionality with routing updates * refactor: move to try-catch * remove unused files for auth and theme routes * fix build errors * modify copies * add theme limit * fix: Recursive setstate * fix: Save theme loading state * feat: Implement theme checkpoint for better reset during editing * reset theme after save/reset * feat: Add privacy-policy page * speed up nav using prefetch and loading with better loader * refactor * update dashbaord UI * add quick apply to theme card * switch to neon * minor ui updates
13 lines
342 B
TypeScript
13 lines
342 B
TypeScript
import { clsx, type ClassValue } from "clsx";
|
|
import { twMerge } from "tailwind-merge";
|
|
// @ts-expect-error: owned by ngard
|
|
import { isEqual } from "@ngard/tiny-isequal";
|
|
|
|
export function cn(...inputs: ClassValue[]) {
|
|
return twMerge(clsx(inputs));
|
|
}
|
|
|
|
export function isDeepEqual(a: unknown, b: unknown): boolean {
|
|
return isEqual(a, b);
|
|
}
|