@genfeedai/design-tokens 1.0.2

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 (51) hide show
  1. package/dist/core/colors.d.ts +304 -0
  2. package/dist/core/colors.d.ts.map +1 -0
  3. package/dist/core/colors.js +105 -0
  4. package/dist/core/colors.js.map +1 -0
  5. package/dist/core/motion.d.ts +12 -0
  6. package/dist/core/motion.d.ts.map +1 -0
  7. package/dist/core/motion.js +7 -0
  8. package/dist/core/motion.js.map +1 -0
  9. package/dist/core/radius.d.ts +18 -0
  10. package/dist/core/radius.d.ts.map +1 -0
  11. package/dist/core/radius.js +10 -0
  12. package/dist/core/radius.js.map +1 -0
  13. package/dist/core/spacing.d.ts +20 -0
  14. package/dist/core/spacing.d.ts.map +1 -0
  15. package/dist/core/spacing.js +11 -0
  16. package/dist/core/spacing.js.map +1 -0
  17. package/dist/core/typography.d.ts +32 -0
  18. package/dist/core/typography.d.ts.map +1 -0
  19. package/dist/core/typography.js +17 -0
  20. package/dist/core/typography.js.map +1 -0
  21. package/dist/generators/native-ts.d.ts +74 -0
  22. package/dist/generators/native-ts.d.ts.map +1 -0
  23. package/dist/generators/native-ts.js +5 -0
  24. package/dist/generators/native-ts.js.map +1 -0
  25. package/dist/generators/web-css.d.ts +3 -0
  26. package/dist/generators/web-css.d.ts.map +1 -0
  27. package/dist/generators/web-css.js +43 -0
  28. package/dist/generators/web-css.js.map +1 -0
  29. package/dist/generators/webview-css.d.ts +3 -0
  30. package/dist/generators/webview-css.d.ts.map +1 -0
  31. package/dist/generators/webview-css.js +31 -0
  32. package/dist/generators/webview-css.js.map +1 -0
  33. package/dist/index.d.ts +51 -0
  34. package/dist/index.d.ts.map +1 -0
  35. package/dist/index.js +21 -0
  36. package/dist/index.js.map +1 -0
  37. package/dist/semantic/mobile.d.ts +74 -0
  38. package/dist/semantic/mobile.d.ts.map +1 -0
  39. package/dist/semantic/mobile.js +69 -0
  40. package/dist/semantic/mobile.js.map +1 -0
  41. package/dist/semantic/web.d.ts +44 -0
  42. package/dist/semantic/web.d.ts.map +1 -0
  43. package/dist/semantic/web.js +44 -0
  44. package/dist/semantic/web.js.map +1 -0
  45. package/dist/semantic/webview.d.ts +22 -0
  46. package/dist/semantic/webview.d.ts.map +1 -0
  47. package/dist/semantic/webview.js +22 -0
  48. package/dist/semantic/webview.js.map +1 -0
  49. package/gen-vars.scss +72 -0
  50. package/package.json +42 -0
  51. package/web-tokens.scss +116 -0
package/gen-vars.scss ADDED
@@ -0,0 +1,72 @@
1
+ /**
2
+ * gen-* overlay design variables
3
+ *
4
+ * Composition layer on top of the base token system.
5
+ * Import this in any app that uses the gen-* design language
6
+ * (Cloud, Core, extensions, etc.) to get the shared accent,
7
+ * shadow-glow, and glass overlay vars.
8
+ *
9
+ * Usage:
10
+ * @use '@genfeedai/design-tokens/gen-vars.scss';
11
+ */
12
+
13
+ @layer base {
14
+ /* Dark theme (default) */
15
+ :root,
16
+ [data-theme='dark'] {
17
+ --gen-accent: 0 0% 100%;
18
+ --gen-accent-bright: 0 0% 90%;
19
+ --gen-accent-bg: rgba(255, 255, 255, 0.05);
20
+ --gen-accent-tint: rgba(255, 255, 255, 0.08);
21
+ --gen-accent-border: rgba(255, 255, 255, 0.14);
22
+ --gen-accent-border-strong: rgba(255, 255, 255, 0.2);
23
+ --gen-accent-glow: rgba(255, 255, 255, 0.15);
24
+ --gen-accent-hover: rgba(255, 255, 255, 0.25);
25
+ --gen-accent-selection: rgba(255, 255, 255, 0.3);
26
+ --gen-accent-text: rgba(255, 255, 255, 0.4);
27
+ --gen-accent-heading: rgba(255, 255, 255, 0.6);
28
+
29
+ --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.4);
30
+ --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.5);
31
+ --shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.6);
32
+ --shadow-glow: 0 0 20px rgba(255, 255, 255, 0.15);
33
+ --shadow-glow-sm: 0 0 20px rgba(255, 255, 255, 0.08);
34
+ --shadow-glow-md: 0 0 40px rgba(255, 255, 255, 0.12);
35
+ --shadow-glow-lg: 0 0 60px rgba(255, 255, 255, 0.15);
36
+
37
+ --nn-bg-glass: rgba(255, 255, 255, 0.05);
38
+ --nn-bg-glass-hover: rgba(255, 255, 255, 0.08);
39
+ --nn-border-subtle: rgba(255, 255, 255, 0.08);
40
+ --nn-border-hover: rgba(255, 255, 255, 0.15);
41
+ --nn-border-active: rgba(255, 255, 255, 0.25);
42
+ }
43
+
44
+ /* Light theme overrides */
45
+ [data-theme='light'] {
46
+ --gen-accent: 0 0% 0%;
47
+ --gen-accent-bright: 0 0% 15%;
48
+ --gen-accent-bg: rgba(0, 0, 0, 0.03);
49
+ --gen-accent-tint: rgba(0, 0, 0, 0.05);
50
+ --gen-accent-border: rgba(0, 0, 0, 0.08);
51
+ --gen-accent-border-strong: rgba(0, 0, 0, 0.15);
52
+ --gen-accent-glow: rgba(0, 0, 0, 0.06);
53
+ --gen-accent-hover: rgba(0, 0, 0, 0.15);
54
+ --gen-accent-selection: rgba(0, 0, 0, 0.2);
55
+ --gen-accent-text: rgba(0, 0, 0, 0.5);
56
+ --gen-accent-heading: rgba(0, 0, 0, 0.7);
57
+
58
+ --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.06);
59
+ --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.08);
60
+ --shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.1);
61
+ --shadow-glow: none;
62
+ --shadow-glow-sm: 0 1px 4px rgba(0, 0, 0, 0.06);
63
+ --shadow-glow-md: 0 4px 16px rgba(0, 0, 0, 0.08);
64
+ --shadow-glow-lg: 0 8px 30px rgba(0, 0, 0, 0.1);
65
+
66
+ --nn-bg-glass: rgba(0, 0, 0, 0.02);
67
+ --nn-bg-glass-hover: rgba(0, 0, 0, 0.04);
68
+ --nn-border-subtle: rgba(0, 0, 0, 0.06);
69
+ --nn-border-hover: rgba(0, 0, 0, 0.12);
70
+ --nn-border-active: rgba(0, 0, 0, 0.2);
71
+ }
72
+ }
package/package.json ADDED
@@ -0,0 +1,42 @@
1
+ {
2
+ "description": "Shared design tokens for Genfeed web, mobile, and extension surfaces",
3
+ "devDependencies": {
4
+ "tsc-alias": "1.8.16",
5
+ "typescript": "5.9.3"
6
+ },
7
+ "exports": {
8
+ ".": {
9
+ "default": "./dist/index.js",
10
+ "types": "./dist/index.d.ts"
11
+ },
12
+ "./gen-vars.scss": "./gen-vars.scss",
13
+ "./web-tokens.scss": "./web-tokens.scss"
14
+ },
15
+ "files": [
16
+ "dist",
17
+ "web-tokens.scss",
18
+ "gen-vars.scss"
19
+ ],
20
+ "license": "MIT",
21
+ "main": "./dist/index.js",
22
+ "name": "@genfeedai/design-tokens",
23
+ "publishConfig": {
24
+ "access": "public",
25
+ "registry": "https://registry.npmjs.org/"
26
+ },
27
+ "repository": {
28
+ "directory": "design-tokens",
29
+ "type": "git",
30
+ "url": "git+https://github.com/genfeedai/packages.git"
31
+ },
32
+ "scripts": {
33
+ "build": "tsc -p tsconfig.json && bunx tsc-alias -p tsconfig.json",
34
+ "clean": "rm -rf dist tsconfig.tsbuildinfo"
35
+ },
36
+ "sideEffects": [
37
+ "**/*.css",
38
+ "**/*.scss"
39
+ ],
40
+ "types": "./dist/index.d.ts",
41
+ "version": "1.0.2"
42
+ }
@@ -0,0 +1,116 @@
1
+ @layer base {
2
+ :root,
3
+ [data-theme='light'] {
4
+ --background: 60 10% 98%;
5
+ --background-secondary: 60 9% 96%;
6
+ --background-tertiary: 60 7% 94%;
7
+ --foreground: 0 0% 5%;
8
+ --card: 60 9% 96%;
9
+ --card-foreground: 0 0% 5%;
10
+ --popover: 60 10% 98%;
11
+ --popover-foreground: 0 0% 5%;
12
+ --primary: 221 83% 53%;
13
+ --primary-foreground: 0 0% 100%;
14
+ --secondary: 60 7% 94%;
15
+ --secondary-foreground: 0 0% 5%;
16
+ --muted: 60 7% 94%;
17
+ --muted-foreground: 0 0% 44%;
18
+ --accent: 60 9% 96%;
19
+ --accent-foreground: 0 0% 5%;
20
+ --destructive: 0 84% 60%;
21
+ --destructive-foreground: 0 0% 100%;
22
+ --border: 45 5% 85%;
23
+ --input: 45 5% 85%;
24
+ --ring: 221 83% 53%;
25
+ --success: 142 71% 45%;
26
+ --success-foreground: 0 0% 100%;
27
+ --warning: 38 92% 50%;
28
+ --warning-foreground: 0 0% 0%;
29
+ --info: 199 89% 48%;
30
+ --info-foreground: 0 0% 100%;
31
+ --surface: 12 12 12;
32
+ --fill: 12 12 12;
33
+ --edge: 12 12 12;
34
+ --inv: 12 12 12;
35
+ --inv-fg: 250 250 250;
36
+ --font-sans: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
37
+ --font-serif: Georgia, 'Times New Roman', serif;
38
+ --font-serif-italic: Georgia, 'Times New Roman', serif;
39
+ --space-xs: 4px;
40
+ --space-sm: 8px;
41
+ --space-md: 12px;
42
+ --space-lg: 16px;
43
+ --space-xl: 20px;
44
+ --space-xxl: 24px;
45
+ --space-xxxl: 32px;
46
+ --space-xxxxl: 48px;
47
+ --radius-none: 0px;
48
+ --radius-sm: 6px;
49
+ --radius-md: 8px;
50
+ --radius-lg: 12px;
51
+ --radius-xl: 16px;
52
+ --radius-xxl: 24px;
53
+ --radius-full: 999px;
54
+ --motion-duration-fast: 200ms;
55
+ --motion-duration-normal: 300ms;
56
+ --motion-duration-slow: 500ms;
57
+ --motion-ease-standard: cubic-bezier(0.32, 0.72, 0, 1);
58
+ }
59
+
60
+ [data-theme='dark'] {
61
+ --background: 0 0% 4%;
62
+ --background-secondary: 0 0% 6%;
63
+ --background-tertiary: 0 0% 10%;
64
+ --foreground: 0 0% 98%;
65
+ --card: 0 0% 8%;
66
+ --card-foreground: 0 0% 98%;
67
+ --popover: 0 0% 8%;
68
+ --popover-foreground: 0 0% 98%;
69
+ --primary: 0 0% 100%;
70
+ --primary-foreground: 0 0% 0%;
71
+ --secondary: 0 0% 11%;
72
+ --secondary-foreground: 0 0% 98%;
73
+ --muted: 0 0% 11%;
74
+ --muted-foreground: 0 0% 58%;
75
+ --accent: 0 0% 11%;
76
+ --accent-foreground: 0 0% 98%;
77
+ --destructive: 0 62% 50%;
78
+ --destructive-foreground: 0 0% 100%;
79
+ --border: 0 0% 15%;
80
+ --input: 0 0% 15%;
81
+ --ring: 0 0% 100%;
82
+ --success: 142 71% 45%;
83
+ --success-foreground: 0 0% 100%;
84
+ --warning: 38 92% 50%;
85
+ --warning-foreground: 0 0% 0%;
86
+ --info: 199 89% 48%;
87
+ --info-foreground: 0 0% 100%;
88
+ --surface: 255 255 255;
89
+ --fill: 255 255 255;
90
+ --edge: 255 255 255;
91
+ --inv: 255 255 255;
92
+ --inv-fg: 10 10 10;
93
+ --font-sans: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
94
+ --font-serif: Georgia, 'Times New Roman', serif;
95
+ --font-serif-italic: Georgia, 'Times New Roman', serif;
96
+ --space-xs: 4px;
97
+ --space-sm: 8px;
98
+ --space-md: 12px;
99
+ --space-lg: 16px;
100
+ --space-xl: 20px;
101
+ --space-xxl: 24px;
102
+ --space-xxxl: 32px;
103
+ --space-xxxxl: 48px;
104
+ --radius-none: 0px;
105
+ --radius-sm: 6px;
106
+ --radius-md: 8px;
107
+ --radius-lg: 12px;
108
+ --radius-xl: 16px;
109
+ --radius-xxl: 24px;
110
+ --radius-full: 999px;
111
+ --motion-duration-fast: 200ms;
112
+ --motion-duration-normal: 300ms;
113
+ --motion-duration-slow: 500ms;
114
+ --motion-ease-standard: cubic-bezier(0.32, 0.72, 0, 1);
115
+ }
116
+ }