@quinkit/ui 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/index.d.cts +1445 -0
  2. package/dist/index.d.ts +1445 -0
  3. package/dist/index.js +2567 -0
  4. package/dist/index.js.map +1 -0
  5. package/dist/index.mjs +2366 -0
  6. package/dist/index.mjs.map +1 -0
  7. package/package.json +97 -0
  8. package/src/styles/globals.css +150 -0
  9. package/src/styles/theme-switcher.tsx +95 -0
  10. package/src/styles/themes/.gitkeep +0 -0
  11. package/src/styles/themes/dashboard-data.css +64 -0
  12. package/src/styles/themes/dashboard-executive.css +64 -0
  13. package/src/styles/themes/dashboard-glass.css +64 -0
  14. package/src/styles/themes/dashboard.css +46 -0
  15. package/src/styles/themes/ecommerce-luxury.css +64 -0
  16. package/src/styles/themes/ecommerce-minimal.css +64 -0
  17. package/src/styles/themes/ecommerce-playful.css +64 -0
  18. package/src/styles/themes/ecommerce.css +36 -0
  19. package/src/styles/themes/edtech-campus.css +64 -0
  20. package/src/styles/themes/edtech-kids.css +64 -0
  21. package/src/styles/themes/edtech-professional.css +64 -0
  22. package/src/styles/themes/edtech.css +36 -0
  23. package/src/styles/themes/fintech-crypto.css +64 -0
  24. package/src/styles/themes/fintech-modern.css +64 -0
  25. package/src/styles/themes/fintech-wealth.css +64 -0
  26. package/src/styles/themes/fintech.css +46 -0
  27. package/src/styles/themes/healthcare-clinical.css +64 -0
  28. package/src/styles/themes/healthcare-urgent.css +64 -0
  29. package/src/styles/themes/healthcare-wellness.css +64 -0
  30. package/src/styles/themes/healthcare.css +46 -0
  31. package/src/styles/tokens/.gitkeep +0 -0
  32. package/src/styles/tokens/charts.css +26 -0
  33. package/src/styles/tokens/dark.css +36 -0
  34. package/src/styles/tokens/palettes.css +2663 -0
  35. package/src/styles/tokens/primitives.css +34 -0
  36. package/src/styles/tokens/semantic.css +35 -0
  37. package/src/styles/tokens/typography.css +82 -0
@@ -0,0 +1,64 @@
1
+ /* FILE: packages/ui/src/styles/themes/healthcare-clinical.css */
2
+
3
+ [data-theme="healthcare-clinical"] {
4
+ --ui-font-heading: "IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;
5
+ --ui-font-body: "IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;
6
+ --ui-font-mono: "IBM Plex Mono", ui-monospace, monospace;
7
+ --ui-tracking-heading: -0.005em;
8
+ --ui-tracking-body: 0em;
9
+ --ui-leading-heading: 1.2;
10
+ --ui-leading-body: 1.6;
11
+ --ui-weight-heading: 600;
12
+ --ui-radius-sm: 0.125rem;
13
+ --ui-radius-md: 0.25rem;
14
+ --ui-radius-lg: 0.375rem;
15
+ --ui-radius-xl: 0.5rem;
16
+ --ui-color-background: oklch(0.994 0.004 210);
17
+ --ui-color-foreground: oklch(0.22 0.02 220);
18
+ --ui-color-card: oklch(1 0 0);
19
+ --ui-color-card-foreground: oklch(0.22 0.02 220);
20
+ --ui-color-popover: oklch(1 0 0);
21
+ --ui-color-popover-foreground: oklch(0.22 0.02 220);
22
+ --ui-color-primary: oklch(0.536 0.089 205);
23
+ --ui-color-primary-foreground: oklch(0.985 0 0);
24
+ --ui-color-secondary: oklch(0.962 0.006 200);
25
+ --ui-color-secondary-foreground: oklch(0.29 0.018 200);
26
+ --ui-color-accent: oklch(0.95 0.03 205);
27
+ --ui-color-accent-foreground: oklch(0.3 0.07 205);
28
+ --ui-color-muted: oklch(0.968 0.006 200);
29
+ --ui-color-muted-foreground: oklch(0.5 0.024 200);
30
+ --ui-color-border: oklch(0.916 0.006 200);
31
+ --ui-color-input: oklch(0.916 0.006 200);
32
+ --ui-color-ring: oklch(0.536 0.089 205);
33
+ --ui-color-chart-1: oklch(0.6 0.15 205);
34
+ --ui-color-chart-2: oklch(0.62 0.15 245);
35
+ --ui-color-chart-3: oklch(0.62 0.15 300);
36
+ --ui-color-chart-4: oklch(0.62 0.15 355);
37
+ --ui-color-chart-5: oklch(0.62 0.15 60);
38
+ }
39
+
40
+ .dark[data-theme="healthcare-clinical"],
41
+ [data-theme="healthcare-clinical"].dark {
42
+ --ui-color-background: oklch(0.16 0.01 220);
43
+ --ui-color-foreground: oklch(0.97 0.004 210);
44
+ --ui-color-card: oklch(0.195 0.012 220);
45
+ --ui-color-card-foreground: oklch(0.97 0.004 210);
46
+ --ui-color-popover: oklch(0.195 0.012 220);
47
+ --ui-color-popover-foreground: oklch(0.97 0.004 210);
48
+ --ui-color-primary: oklch(0.756 0.089 205);
49
+ --ui-color-primary-foreground: oklch(0.2 0.02 205);
50
+ --ui-color-secondary: oklch(0.274 0.01 200);
51
+ --ui-color-secondary-foreground: oklch(0.972 0.01 200);
52
+ --ui-color-accent: oklch(0.3 0.05 205);
53
+ --ui-color-accent-foreground: oklch(0.92 0.04 205);
54
+ --ui-color-muted: oklch(0.274 0.01 200);
55
+ --ui-color-muted-foreground: oklch(0.712 0.016 200);
56
+ --ui-color-border: oklch(0.305 0.01 200);
57
+ --ui-color-input: oklch(0.33 0.01 200);
58
+ --ui-color-ring: oklch(0.756 0.089 205);
59
+ --ui-color-chart-1: oklch(0.6 0.15 205);
60
+ --ui-color-chart-2: oklch(0.72 0.14 245);
61
+ --ui-color-chart-3: oklch(0.72 0.14 300);
62
+ --ui-color-chart-4: oklch(0.72 0.14 355);
63
+ --ui-color-chart-5: oklch(0.72 0.14 60);
64
+ }
@@ -0,0 +1,64 @@
1
+ /* FILE: packages/ui/src/styles/themes/healthcare-urgent.css */
2
+
3
+ [data-theme="healthcare-urgent"] {
4
+ --ui-font-heading: "Inter", ui-sans-serif, system-ui, -apple-system, sans-serif;
5
+ --ui-font-body: "Inter", ui-sans-serif, system-ui, -apple-system, sans-serif;
6
+ --ui-font-mono: "IBM Plex Mono", ui-monospace, monospace;
7
+ --ui-tracking-heading: -0.01em;
8
+ --ui-tracking-body: 0em;
9
+ --ui-leading-heading: 1.15;
10
+ --ui-leading-body: 1.5;
11
+ --ui-weight-heading: 700;
12
+ --ui-radius-sm: 0rem;
13
+ --ui-radius-md: 0rem;
14
+ --ui-radius-lg: 0.125rem;
15
+ --ui-radius-xl: 0.25rem;
16
+ --ui-color-background: oklch(0.994 0.003 250);
17
+ --ui-color-foreground: oklch(0.2 0.02 250);
18
+ --ui-color-card: oklch(1 0 0);
19
+ --ui-color-card-foreground: oklch(0.2 0.02 250);
20
+ --ui-color-popover: oklch(1 0 0);
21
+ --ui-color-popover-foreground: oklch(0.2 0.02 250);
22
+ --ui-color-primary: oklch(0.488 0.217 264);
23
+ --ui-color-primary-foreground: oklch(0.985 0 0);
24
+ --ui-color-secondary: oklch(0.962 0.006 250);
25
+ --ui-color-secondary-foreground: oklch(0.29 0.018 250);
26
+ --ui-color-accent: oklch(0.577 0.215 27);
27
+ --ui-color-accent-foreground: oklch(0.985 0 0);
28
+ --ui-color-muted: oklch(0.968 0.006 250);
29
+ --ui-color-muted-foreground: oklch(0.5 0.024 250);
30
+ --ui-color-border: oklch(0.916 0.006 250);
31
+ --ui-color-input: oklch(0.916 0.006 250);
32
+ --ui-color-ring: oklch(0.488 0.217 264);
33
+ --ui-color-chart-1: oklch(0.55 0.2 27);
34
+ --ui-color-chart-2: oklch(0.72 0.15 70);
35
+ --ui-color-chart-3: oklch(0.55 0.16 250);
36
+ --ui-color-chart-4: oklch(0.6 0.13 200);
37
+ --ui-color-chart-5: oklch(0.55 0.14 150);
38
+ }
39
+
40
+ .dark[data-theme="healthcare-urgent"],
41
+ [data-theme="healthcare-urgent"].dark {
42
+ --ui-color-background: oklch(0.16 0.012 250);
43
+ --ui-color-foreground: oklch(0.97 0.005 250);
44
+ --ui-color-card: oklch(0.195 0.014 250);
45
+ --ui-color-card-foreground: oklch(0.97 0.005 250);
46
+ --ui-color-popover: oklch(0.195 0.014 250);
47
+ --ui-color-popover-foreground: oklch(0.97 0.005 250);
48
+ --ui-color-primary: oklch(0.708 0.2 264);
49
+ --ui-color-primary-foreground: oklch(0.2 0.02 264);
50
+ --ui-color-secondary: oklch(0.274 0.01 250);
51
+ --ui-color-secondary-foreground: oklch(0.972 0.01 250);
52
+ --ui-color-accent: oklch(0.797 0.2 27);
53
+ --ui-color-accent-foreground: oklch(0.2 0.02 27);
54
+ --ui-color-muted: oklch(0.274 0.01 250);
55
+ --ui-color-muted-foreground: oklch(0.712 0.016 250);
56
+ --ui-color-border: oklch(0.305 0.01 250);
57
+ --ui-color-input: oklch(0.33 0.01 250);
58
+ --ui-color-ring: oklch(0.708 0.2 264);
59
+ --ui-color-chart-1: oklch(0.68 0.19 27);
60
+ --ui-color-chart-2: oklch(0.8 0.14 70);
61
+ --ui-color-chart-3: oklch(0.7 0.15 250);
62
+ --ui-color-chart-4: oklch(0.72 0.12 200);
63
+ --ui-color-chart-5: oklch(0.72 0.13 150);
64
+ }
@@ -0,0 +1,64 @@
1
+ /* FILE: packages/ui/src/styles/themes/healthcare-wellness.css */
2
+
3
+ [data-theme="healthcare-wellness"] {
4
+ --ui-font-heading: "Nunito", ui-sans-serif, system-ui, sans-serif;
5
+ --ui-font-body: "Nunito", ui-sans-serif, system-ui, sans-serif;
6
+ --ui-font-mono: "Geist Mono", ui-monospace, "JetBrains Mono", monospace;
7
+ --ui-tracking-heading: -0.005em;
8
+ --ui-tracking-body: 0em;
9
+ --ui-leading-heading: 1.2;
10
+ --ui-leading-body: 1.65;
11
+ --ui-weight-heading: 700;
12
+ --ui-radius-sm: 0.5rem;
13
+ --ui-radius-md: 0.75rem;
14
+ --ui-radius-lg: 1rem;
15
+ --ui-radius-xl: 1.5rem;
16
+ --ui-color-background: oklch(0.992 0.008 150);
17
+ --ui-color-foreground: oklch(0.26 0.02 150);
18
+ --ui-color-card: oklch(1 0 0);
19
+ --ui-color-card-foreground: oklch(0.26 0.02 150);
20
+ --ui-color-popover: oklch(1 0 0);
21
+ --ui-color-popover-foreground: oklch(0.26 0.02 150);
22
+ --ui-color-primary: oklch(0.646 0.086 157);
23
+ --ui-color-primary-foreground: oklch(0.2 0.02 157);
24
+ --ui-color-secondary: oklch(0.962 0.006 150);
25
+ --ui-color-secondary-foreground: oklch(0.29 0.018 150);
26
+ --ui-color-accent: oklch(0.773 0.129 76);
27
+ --ui-color-accent-foreground: oklch(0.2 0.02 76);
28
+ --ui-color-muted: oklch(0.968 0.006 150);
29
+ --ui-color-muted-foreground: oklch(0.5 0.024 150);
30
+ --ui-color-border: oklch(0.916 0.006 150);
31
+ --ui-color-input: oklch(0.916 0.006 150);
32
+ --ui-color-ring: oklch(0.646 0.086 157);
33
+ --ui-color-chart-1: oklch(0.6 0.15 157);
34
+ --ui-color-chart-2: oklch(0.62 0.15 197);
35
+ --ui-color-chart-3: oklch(0.62 0.15 252);
36
+ --ui-color-chart-4: oklch(0.62 0.15 307);
37
+ --ui-color-chart-5: oklch(0.62 0.15 12);
38
+ }
39
+
40
+ .dark[data-theme="healthcare-wellness"],
41
+ [data-theme="healthcare-wellness"].dark {
42
+ --ui-color-background: oklch(0.17 0.012 150);
43
+ --ui-color-foreground: oklch(0.96 0.006 150);
44
+ --ui-color-card: oklch(0.205 0.014 150);
45
+ --ui-color-card-foreground: oklch(0.96 0.006 150);
46
+ --ui-color-popover: oklch(0.205 0.014 150);
47
+ --ui-color-popover-foreground: oklch(0.96 0.006 150);
48
+ --ui-color-primary: oklch(0.68 0.086 157);
49
+ --ui-color-primary-foreground: oklch(0.2 0.02 157);
50
+ --ui-color-secondary: oklch(0.274 0.01 150);
51
+ --ui-color-secondary-foreground: oklch(0.972 0.01 150);
52
+ --ui-color-accent: oklch(0.773 0.129 76);
53
+ --ui-color-accent-foreground: oklch(0.2 0.02 76);
54
+ --ui-color-muted: oklch(0.274 0.01 150);
55
+ --ui-color-muted-foreground: oklch(0.712 0.016 150);
56
+ --ui-color-border: oklch(0.305 0.01 150);
57
+ --ui-color-input: oklch(0.33 0.01 150);
58
+ --ui-color-ring: oklch(0.68 0.086 157);
59
+ --ui-color-chart-1: oklch(0.6 0.15 157);
60
+ --ui-color-chart-2: oklch(0.72 0.14 197);
61
+ --ui-color-chart-3: oklch(0.72 0.14 252);
62
+ --ui-color-chart-4: oklch(0.72 0.14 307);
63
+ --ui-color-chart-5: oklch(0.72 0.14 12);
64
+ }
@@ -0,0 +1,46 @@
1
+ /* healthcare.css — Clinical Trust kit theme.
2
+ * Activated with: <html data-theme="healthcare">
3
+ */
4
+
5
+ [data-theme="healthcare"] {
6
+ --ui-color-primary: oklch(0.32 0.06 175);
7
+ --ui-color-primary-foreground: oklch(0.99 0 0);
8
+ --ui-color-secondary: oklch(0.965 0.01 175);
9
+ --ui-color-secondary-foreground: oklch(0.25 0.03 175);
10
+ --ui-color-accent: oklch(0.94 0.02 175);
11
+ --ui-color-accent-foreground: oklch(0.5 0.12 175);
12
+ --ui-color-muted: oklch(0.97 0.008 175);
13
+ --ui-color-muted-foreground: oklch(0.52 0.025 175);
14
+ --ui-color-border: oklch(0.91 0.01 175);
15
+ --ui-color-input: oklch(0.91 0.01 175);
16
+ --ui-color-ring: oklch(0.5 0.12 175);
17
+ --ui-color-chart-1: oklch(0.55 0.1 175);
18
+ --ui-color-chart-2: oklch(0.58 0.11 235);
19
+ --ui-color-chart-3: oklch(0.66 0.1 155);
20
+ --ui-color-chart-4: oklch(0.7 0.1 90);
21
+ --ui-color-chart-5: oklch(0.6 0.12 30);
22
+ --ui-radius-sm: 0.625rem;
23
+ --ui-radius-md: 0.75rem;
24
+ --ui-radius-lg: 1rem;
25
+ --ui-radius-xl: 1.5rem;
26
+ }
27
+
28
+ .dark[data-theme="healthcare"],
29
+ [data-theme="healthcare"].dark {
30
+ --ui-color-primary: oklch(0.88 0.04 175);
31
+ --ui-color-primary-foreground: oklch(0.16 0.03 175);
32
+ --ui-color-secondary: oklch(0.24 0.015 175);
33
+ --ui-color-secondary-foreground: oklch(0.98 0.01 175);
34
+ --ui-color-accent: oklch(0.28 0.02 175);
35
+ --ui-color-accent-foreground: oklch(0.68 0.1 175);
36
+ --ui-color-muted: oklch(0.24 0.015 175);
37
+ --ui-color-muted-foreground: oklch(0.7 0.02 175);
38
+ --ui-color-border: oklch(0.28 0.015 175);
39
+ --ui-color-input: oklch(0.3 0.015 175);
40
+ --ui-color-ring: oklch(0.68 0.1 175);
41
+ --ui-color-chart-1: oklch(0.72 0.1 175);
42
+ --ui-color-chart-2: oklch(0.7 0.11 235);
43
+ --ui-color-chart-3: oklch(0.74 0.1 155);
44
+ --ui-color-chart-4: oklch(0.78 0.1 90);
45
+ --ui-color-chart-5: oklch(0.7 0.12 30);
46
+ }
File without changes
@@ -0,0 +1,26 @@
1
+ /* charts.css — default categorical data palette + dark overrides.
2
+ * Palettes in palettes.css that ship their own chart ramp (analytics-cyan,
3
+ * fintech-navy, finance-gold, emerald-wealth, medical-teal, railway-violet)
4
+ * override these; every other palette falls back to this harmonious default.
5
+ */
6
+
7
+ :root {
8
+ --ui-color-chart-1: oklch(0.62 0.19 256);
9
+ /* blue */
10
+ --ui-color-chart-2: oklch(0.66 0.15 165);
11
+ /* green */
12
+ --ui-color-chart-3: oklch(0.72 0.15 75);
13
+ /* amber */
14
+ --ui-color-chart-4: oklch(0.6 0.2 300);
15
+ /* violet */
16
+ --ui-color-chart-5: oklch(0.62 0.2 25);
17
+ /* red */
18
+ }
19
+
20
+ .dark {
21
+ --ui-color-chart-1: oklch(0.7 0.17 256);
22
+ --ui-color-chart-2: oklch(0.74 0.14 165);
23
+ --ui-color-chart-3: oklch(0.8 0.14 75);
24
+ --ui-color-chart-4: oklch(0.7 0.18 300);
25
+ --ui-color-chart-5: oklch(0.7 0.18 25);
26
+ }
@@ -0,0 +1,36 @@
1
+ /* dark.css — DARK defaults. NEUTRAL by design: no hardcoded blue primary.
2
+ * Backgrounds avoid pure black (except where a palette deliberately wants it).
3
+ * A data-palette overrides primary/accent/etc; without one, dark mode is a
4
+ * clean monochrome slate.
5
+ */
6
+
7
+ .dark {
8
+ --ui-color-background: oklch(0.145 0.01 265);
9
+ --ui-color-foreground: oklch(0.985 0.002 265);
10
+
11
+ --ui-color-card: oklch(0.175 0.012 265);
12
+ --ui-color-card-foreground: oklch(0.985 0.002 265);
13
+ --ui-color-popover: oklch(0.175 0.012 265);
14
+ --ui-color-popover-foreground: oklch(0.985 0.002 265);
15
+
16
+ /* neutral primary (light-on-dark) — palettes override this */
17
+ --ui-color-primary: oklch(0.922 0.006 265);
18
+ --ui-color-primary-foreground: oklch(0.205 0.012 265);
19
+ --ui-color-secondary: oklch(0.274 0.01 265);
20
+ --ui-color-secondary-foreground: oklch(0.985 0.002 265);
21
+ --ui-color-accent: oklch(0.274 0.01 265);
22
+ --ui-color-accent-foreground: oklch(0.985 0.002 265);
23
+ --ui-color-muted: oklch(0.274 0.01 265);
24
+ --ui-color-muted-foreground: oklch(0.712 0.014 265);
25
+
26
+ --ui-color-destructive: oklch(0.62 0.2 25);
27
+ --ui-color-destructive-foreground: oklch(0.985 0.002 265);
28
+ --ui-color-success: oklch(0.7 0.14 155);
29
+ --ui-color-success-foreground: oklch(0.16 0.03 155);
30
+ --ui-color-warning: oklch(0.8 0.14 75);
31
+ --ui-color-warning-foreground: oklch(0.22 0.06 75);
32
+
33
+ --ui-color-border: oklch(0.305 0.01 265);
34
+ --ui-color-input: oklch(0.33 0.01 265);
35
+ --ui-color-ring: oklch(0.556 0.02 265);
36
+ }