panelui-native 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 (122) hide show
  1. package/lib/module/components/alert/index.js +122 -0
  2. package/lib/module/components/alert/index.js.map +1 -0
  3. package/lib/module/components/avatar/index.js +74 -0
  4. package/lib/module/components/avatar/index.js.map +1 -0
  5. package/lib/module/components/badge/index.js +77 -0
  6. package/lib/module/components/badge/index.js.map +1 -0
  7. package/lib/module/components/bottom-sheet/index.js +137 -0
  8. package/lib/module/components/bottom-sheet/index.js.map +1 -0
  9. package/lib/module/components/button/index.js +101 -0
  10. package/lib/module/components/button/index.js.map +1 -0
  11. package/lib/module/components/card/index.js +73 -0
  12. package/lib/module/components/card/index.js.map +1 -0
  13. package/lib/module/components/checkbox/index.js +84 -0
  14. package/lib/module/components/checkbox/index.js.map +1 -0
  15. package/lib/module/components/dialog/index.js +140 -0
  16. package/lib/module/components/dialog/index.js.map +1 -0
  17. package/lib/module/components/input/index.js +92 -0
  18. package/lib/module/components/input/index.js.map +1 -0
  19. package/lib/module/components/radio-group/index.js +92 -0
  20. package/lib/module/components/radio-group/index.js.map +1 -0
  21. package/lib/module/components/select/index.js +147 -0
  22. package/lib/module/components/select/index.js.map +1 -0
  23. package/lib/module/components/skeleton/index.js +26 -0
  24. package/lib/module/components/skeleton/index.js.map +1 -0
  25. package/lib/module/components/spinner/index.js +47 -0
  26. package/lib/module/components/spinner/index.js.map +1 -0
  27. package/lib/module/components/switch/index.js +96 -0
  28. package/lib/module/components/switch/index.js.map +1 -0
  29. package/lib/module/components/tabs/index.js +161 -0
  30. package/lib/module/components/tabs/index.js.map +1 -0
  31. package/lib/module/icons/index.js +65 -0
  32. package/lib/module/icons/index.js.map +1 -0
  33. package/lib/module/index.js +36 -0
  34. package/lib/module/index.js.map +1 -0
  35. package/lib/module/package.json +1 -0
  36. package/lib/module/primitives/animated-pressable.js +51 -0
  37. package/lib/module/primitives/animated-pressable.js.map +1 -0
  38. package/lib/module/primitives/portal.js +76 -0
  39. package/lib/module/primitives/portal.js.map +1 -0
  40. package/lib/module/primitives/text.js +51 -0
  41. package/lib/module/primitives/text.js.map +1 -0
  42. package/lib/module/providers/panel-ui-provider.js +29 -0
  43. package/lib/module/providers/panel-ui-provider.js.map +1 -0
  44. package/lib/module/theme/use-theme.js +19 -0
  45. package/lib/module/theme/use-theme.js.map +1 -0
  46. package/lib/module/uniwind-env.d.js +4 -0
  47. package/lib/module/uniwind-env.d.js.map +1 -0
  48. package/lib/module/utils/cn.js +8 -0
  49. package/lib/module/utils/cn.js.map +1 -0
  50. package/lib/typescript/package.json +1 -0
  51. package/lib/typescript/src/components/alert/index.d.ts +113 -0
  52. package/lib/typescript/src/components/alert/index.d.ts.map +1 -0
  53. package/lib/typescript/src/components/avatar/index.d.ts +83 -0
  54. package/lib/typescript/src/components/avatar/index.d.ts.map +1 -0
  55. package/lib/typescript/src/components/badge/index.d.ts +114 -0
  56. package/lib/typescript/src/components/badge/index.d.ts.map +1 -0
  57. package/lib/typescript/src/components/bottom-sheet/index.d.ts +30 -0
  58. package/lib/typescript/src/components/bottom-sheet/index.d.ts.map +1 -0
  59. package/lib/typescript/src/components/button/index.d.ts +159 -0
  60. package/lib/typescript/src/components/button/index.d.ts.map +1 -0
  61. package/lib/typescript/src/components/card/index.d.ts +13 -0
  62. package/lib/typescript/src/components/card/index.d.ts.map +1 -0
  63. package/lib/typescript/src/components/checkbox/index.d.ts +47 -0
  64. package/lib/typescript/src/components/checkbox/index.d.ts.map +1 -0
  65. package/lib/typescript/src/components/dialog/index.d.ts +50 -0
  66. package/lib/typescript/src/components/dialog/index.d.ts.map +1 -0
  67. package/lib/typescript/src/components/input/index.d.ts +12 -0
  68. package/lib/typescript/src/components/input/index.d.ts.map +1 -0
  69. package/lib/typescript/src/components/radio-group/index.d.ts +20 -0
  70. package/lib/typescript/src/components/radio-group/index.d.ts.map +1 -0
  71. package/lib/typescript/src/components/select/index.d.ts +23 -0
  72. package/lib/typescript/src/components/select/index.d.ts.map +1 -0
  73. package/lib/typescript/src/components/skeleton/index.d.ts +6 -0
  74. package/lib/typescript/src/components/skeleton/index.d.ts.map +1 -0
  75. package/lib/typescript/src/components/spinner/index.d.ts +27 -0
  76. package/lib/typescript/src/components/spinner/index.d.ts.map +1 -0
  77. package/lib/typescript/src/components/switch/index.d.ts +76 -0
  78. package/lib/typescript/src/components/switch/index.d.ts.map +1 -0
  79. package/lib/typescript/src/components/tabs/index.d.ts +34 -0
  80. package/lib/typescript/src/components/tabs/index.d.ts.map +1 -0
  81. package/lib/typescript/src/icons/index.d.ts +9 -0
  82. package/lib/typescript/src/icons/index.d.ts.map +1 -0
  83. package/lib/typescript/src/index.d.ts +23 -0
  84. package/lib/typescript/src/index.d.ts.map +1 -0
  85. package/lib/typescript/src/primitives/animated-pressable.d.ts +14 -0
  86. package/lib/typescript/src/primitives/animated-pressable.d.ts.map +1 -0
  87. package/lib/typescript/src/primitives/portal.d.ts +11 -0
  88. package/lib/typescript/src/primitives/portal.d.ts.map +1 -0
  89. package/lib/typescript/src/primitives/text.d.ts +66 -0
  90. package/lib/typescript/src/primitives/text.d.ts.map +1 -0
  91. package/lib/typescript/src/providers/panel-ui-provider.d.ts +13 -0
  92. package/lib/typescript/src/providers/panel-ui-provider.d.ts.map +1 -0
  93. package/lib/typescript/src/theme/use-theme.d.ts +12 -0
  94. package/lib/typescript/src/theme/use-theme.d.ts.map +1 -0
  95. package/lib/typescript/src/utils/cn.d.ts +3 -0
  96. package/lib/typescript/src/utils/cn.d.ts.map +1 -0
  97. package/package.json +73 -0
  98. package/src/components/alert/index.tsx +106 -0
  99. package/src/components/avatar/index.tsx +68 -0
  100. package/src/components/badge/index.tsx +51 -0
  101. package/src/components/bottom-sheet/index.tsx +186 -0
  102. package/src/components/button/index.tsx +93 -0
  103. package/src/components/card/index.tsx +64 -0
  104. package/src/components/checkbox/index.tsx +79 -0
  105. package/src/components/dialog/index.tsx +180 -0
  106. package/src/components/input/index.tsx +104 -0
  107. package/src/components/radio-group/index.tsx +118 -0
  108. package/src/components/select/index.tsx +165 -0
  109. package/src/components/skeleton/index.tsx +34 -0
  110. package/src/components/spinner/index.tsx +53 -0
  111. package/src/components/switch/index.tsx +83 -0
  112. package/src/components/tabs/index.tsx +208 -0
  113. package/src/icons/index.tsx +48 -0
  114. package/src/index.ts +54 -0
  115. package/src/primitives/animated-pressable.tsx +71 -0
  116. package/src/primitives/portal.tsx +90 -0
  117. package/src/primitives/text.tsx +47 -0
  118. package/src/providers/panel-ui-provider.tsx +30 -0
  119. package/src/theme/use-theme.ts +18 -0
  120. package/src/uniwind-env.d.ts +1 -0
  121. package/src/utils/cn.ts +6 -0
  122. package/theme.css +143 -0
package/theme.css ADDED
@@ -0,0 +1,143 @@
1
+ /*
2
+ * PanelUI theme — Coss UI design tokens, translated for React Native.
3
+ * Source of truth: cosscom/coss packages/ui/src/styles/globals.css
4
+ * (color-mix()/--alpha() expressions are precomputed to static values,
5
+ * since they must resolve at runtime on native.)
6
+ *
7
+ * Usage (in your app's global.css):
8
+ * @import 'tailwindcss';
9
+ * @import 'uniwind';
10
+ * @import 'panelui-native/theme.css';
11
+ * @source '../node_modules/panelui-native/src';
12
+ */
13
+
14
+ :root {
15
+ /* --background: white */
16
+ --background: #ffffff;
17
+ /* --foreground: neutral-800 */
18
+ --foreground: #262626;
19
+
20
+ --card: #ffffff;
21
+ --card-foreground: #262626;
22
+
23
+ --popover: #ffffff;
24
+ --popover-foreground: #262626;
25
+
26
+ /* --primary: neutral-800 / neutral-50 */
27
+ --primary: #262626;
28
+ --primary-foreground: #fafafa;
29
+
30
+ /* --secondary/muted/accent: black at 4% */
31
+ --secondary: rgba(0, 0, 0, 0.04);
32
+ --secondary-foreground: #262626;
33
+
34
+ --muted: rgba(0, 0, 0, 0.04);
35
+ /* color-mix(neutral-500 90%, black) */
36
+ --muted-foreground: #686868;
37
+
38
+ --accent: rgba(0, 0, 0, 0.04);
39
+ --accent-foreground: #262626;
40
+
41
+ /* status: {hue}-500 with {hue}-700 foreground (for text on tints) */
42
+ --destructive: #ef4444;
43
+ --destructive-foreground: #b91c1c;
44
+
45
+ --info: #3b82f6;
46
+ --info-foreground: #1d4ed8;
47
+
48
+ --success: #10b981;
49
+ --success-foreground: #047857;
50
+
51
+ --warning: #f59e0b;
52
+ --warning-foreground: #b45309;
53
+
54
+ /* --border: black 8%, --input: black 10% */
55
+ --border: rgba(0, 0, 0, 0.08);
56
+ --input: rgba(0, 0, 0, 0.1);
57
+ /* --ring: neutral-400 */
58
+ --ring: #a3a3a3;
59
+ }
60
+
61
+ .dark {
62
+ /* color-mix(neutral-950 96%, white) */
63
+ --background: #141414;
64
+ /* neutral-100 */
65
+ --foreground: #f5f5f5;
66
+
67
+ /* color-mix(background 98%, white) */
68
+ --card: #191919;
69
+ --card-foreground: #f5f5f5;
70
+
71
+ /* color-mix(background 96%, white) */
72
+ --popover: #1d1d1d;
73
+ --popover-foreground: #f5f5f5;
74
+
75
+ --primary: #f5f5f5;
76
+ --primary-foreground: #262626;
77
+
78
+ /* --secondary/muted/accent: white at 4% */
79
+ --secondary: rgba(255, 255, 255, 0.04);
80
+ --secondary-foreground: #f5f5f5;
81
+
82
+ --muted: rgba(255, 255, 255, 0.04);
83
+ /* color-mix(neutral-500 90%, white) */
84
+ --muted-foreground: #818181;
85
+
86
+ --accent: rgba(255, 255, 255, 0.04);
87
+ --accent-foreground: #f5f5f5;
88
+
89
+ /* destructive: color-mix(red-500 90%, white); foreground: {hue}-400 */
90
+ --destructive: #f15757;
91
+ --destructive-foreground: #f87171;
92
+
93
+ --info: #3b82f6;
94
+ --info-foreground: #60a5fa;
95
+
96
+ --success: #10b981;
97
+ --success-foreground: #34d399;
98
+
99
+ --warning: #f59e0b;
100
+ --warning-foreground: #fbbf24;
101
+
102
+ /* --border: white 6%, --input: white 8% */
103
+ --border: rgba(255, 255, 255, 0.06);
104
+ --input: rgba(255, 255, 255, 0.08);
105
+ /* --ring: neutral-500 */
106
+ --ring: #737373;
107
+ }
108
+
109
+ @theme inline {
110
+ --color-background: var(--background);
111
+ --color-foreground: var(--foreground);
112
+ --color-card: var(--card);
113
+ --color-card-foreground: var(--card-foreground);
114
+ --color-popover: var(--popover);
115
+ --color-popover-foreground: var(--popover-foreground);
116
+ --color-primary: var(--primary);
117
+ --color-primary-foreground: var(--primary-foreground);
118
+ --color-secondary: var(--secondary);
119
+ --color-secondary-foreground: var(--secondary-foreground);
120
+ --color-muted: var(--muted);
121
+ --color-muted-foreground: var(--muted-foreground);
122
+ --color-accent: var(--accent);
123
+ --color-accent-foreground: var(--accent-foreground);
124
+ --color-destructive: var(--destructive);
125
+ --color-destructive-foreground: var(--destructive-foreground);
126
+ --color-info: var(--info);
127
+ --color-info-foreground: var(--info-foreground);
128
+ --color-success: var(--success);
129
+ --color-success-foreground: var(--success-foreground);
130
+ --color-warning: var(--warning);
131
+ --color-warning-foreground: var(--warning-foreground);
132
+ --color-border: var(--border);
133
+ --color-input: var(--input);
134
+ --color-ring: var(--ring);
135
+
136
+ /* Coss radius scale: --radius: 0.625rem (10px) */
137
+ --radius-xs: 4px;
138
+ --radius-sm: 6px;
139
+ --radius-md: 8px;
140
+ --radius-lg: 10px;
141
+ --radius-xl: 14px;
142
+ --radius-2xl: 20px;
143
+ }