@pol-studios/ui 1.0.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.
@@ -0,0 +1 @@
1
+ "use client";
package/package.json ADDED
@@ -0,0 +1,226 @@
1
+ {
2
+ "name": "@pol-studios/ui",
3
+ "version": "1.0.0",
4
+ "description": "UI components for POL applications",
5
+ "license": "UNLICENSED",
6
+ "type": "module",
7
+ "sideEffects": false,
8
+ "main": "./dist/index.js",
9
+ "types": "./dist/index.d.ts",
10
+ "files": [
11
+ "dist",
12
+ "src/styles"
13
+ ],
14
+ "keywords": [
15
+ "ui",
16
+ "components",
17
+ "react",
18
+ "radix",
19
+ "shadcn"
20
+ ],
21
+ "exports": {
22
+ ".": {
23
+ "import": "./dist/index.js",
24
+ "types": "./dist/index.d.ts"
25
+ },
26
+ "./primitives": {
27
+ "import": "./dist/primitives/index.js",
28
+ "types": "./dist/primitives/index.d.ts"
29
+ },
30
+ "./components": {
31
+ "import": "./dist/components/index.js",
32
+ "types": "./dist/components/index.d.ts"
33
+ },
34
+ "./forms": {
35
+ "import": "./dist/forms/index.js",
36
+ "types": "./dist/forms/index.d.ts"
37
+ },
38
+ "./nav": {
39
+ "import": "./dist/nav/index.js",
40
+ "types": "./dist/nav/index.d.ts"
41
+ },
42
+ "./navbar": {
43
+ "import": "./dist/navbar/index.js",
44
+ "types": "./dist/navbar/index.d.ts"
45
+ },
46
+ "./data": {
47
+ "import": "./dist/data/index.js",
48
+ "types": "./dist/data/index.d.ts"
49
+ },
50
+ "./feedback": {
51
+ "import": "./dist/feedback/index.js",
52
+ "types": "./dist/feedback/index.d.ts"
53
+ },
54
+ "./auth": {
55
+ "import": "./dist/auth/index.js",
56
+ "types": "./dist/auth/index.d.ts"
57
+ },
58
+ "./providers": {
59
+ "import": "./dist/providers/index.js",
60
+ "types": "./dist/providers/index.d.ts"
61
+ },
62
+ "./contexts": {
63
+ "import": "./dist/contexts/index.js",
64
+ "types": "./dist/contexts/index.d.ts"
65
+ },
66
+ "./hooks": {
67
+ "import": "./dist/hooks/index.js",
68
+ "types": "./dist/hooks/index.d.ts"
69
+ },
70
+ "./cards": {
71
+ "import": "./dist/cards/index.js",
72
+ "types": "./dist/cards/index.d.ts"
73
+ },
74
+ "./charts": {
75
+ "import": "./dist/charts/index.js",
76
+ "types": "./dist/charts/index.d.ts"
77
+ },
78
+ "./adapters": {
79
+ "import": "./dist/adapters/index.js",
80
+ "types": "./dist/adapters/index.d.ts"
81
+ },
82
+ "./types": {
83
+ "import": "./dist/types/index.js",
84
+ "types": "./dist/types/index.d.ts"
85
+ },
86
+ "./file": {
87
+ "import": "./dist/file/index.js",
88
+ "types": "./dist/file/index.d.ts"
89
+ },
90
+ "./crud": {
91
+ "import": "./dist/crud/index.js",
92
+ "types": "./dist/crud/index.d.ts"
93
+ },
94
+ "./components/chat-agent": {
95
+ "import": "./dist/components/chat-agent/index.js",
96
+ "types": "./dist/components/chat-agent/index.d.ts"
97
+ },
98
+ "./styles/globals.css": "./src/styles/globals.css"
99
+ },
100
+ "scripts": {
101
+ "build": "tsup",
102
+ "dev": "tsup --watch",
103
+ "typecheck": "tsc --noEmit",
104
+ "prepublishOnly": "pnpm build"
105
+ },
106
+ "publishConfig": {
107
+ "access": "public"
108
+ },
109
+ "peerDependencies": {
110
+ "react": "^18.0.0 || ^19.0.0",
111
+ "react-dom": "^18.0.0 || ^19.0.0",
112
+ "@pol-studios/auth": ">=1.0.0",
113
+ "@pol-studios/db": ">=1.0.0",
114
+ "@pol-studios/filters": ">=1.0.0",
115
+ "@pol-studios/hooks": ">=1.0.0",
116
+ "@pol-studios/utils": ">=1.0.0"
117
+ },
118
+ "peerDependenciesMeta": {
119
+ "react-day-picker": {
120
+ "optional": true
121
+ },
122
+ "cmdk": {
123
+ "optional": true
124
+ },
125
+ "vaul": {
126
+ "optional": true
127
+ },
128
+ "react-resizable-panels": {
129
+ "optional": true
130
+ },
131
+ "embla-carousel-react": {
132
+ "optional": true
133
+ },
134
+ "recharts": {
135
+ "optional": true
136
+ },
137
+ "next-themes": {
138
+ "optional": true
139
+ },
140
+ "@pol-studios/auth": {
141
+ "optional": true
142
+ },
143
+ "@pol-studios/db": {
144
+ "optional": true
145
+ },
146
+ "@pol-studios/filters": {
147
+ "optional": true
148
+ },
149
+ "@pol-studios/hooks": {
150
+ "optional": true
151
+ },
152
+ "@pol-studios/utils": {
153
+ "optional": true
154
+ }
155
+ },
156
+ "dependencies": {
157
+ "@emotion/react": "^11.11.0",
158
+ "@emotion/styled": "^11.11.0",
159
+ "@hookform/resolvers": "^3.10.0",
160
+ "@mui/material": "^5.15.0",
161
+ "@radix-ui/react-accordion": "^1.2.10",
162
+ "@radix-ui/react-alert-dialog": "^1.1.13",
163
+ "@radix-ui/react-aspect-ratio": "^1.1.8",
164
+ "@radix-ui/react-avatar": "^1.1.9",
165
+ "@radix-ui/react-checkbox": "^1.3.1",
166
+ "@radix-ui/react-collapsible": "^1.1.10",
167
+ "@radix-ui/react-context-menu": "^2.2.14",
168
+ "@radix-ui/react-dialog": "^1.1.13",
169
+ "@radix-ui/react-dropdown-menu": "^2.1.14",
170
+ "@radix-ui/react-hover-card": "^1.1.15",
171
+ "@radix-ui/react-icons": "^1.3.2",
172
+ "@radix-ui/react-label": "^2.1.6",
173
+ "@radix-ui/react-menubar": "^1.1.16",
174
+ "@radix-ui/react-navigation-menu": "^1.2.12",
175
+ "@radix-ui/react-popover": "^1.1.13",
176
+ "@radix-ui/react-progress": "^1.1.6",
177
+ "@radix-ui/react-radio-group": "^1.3.8",
178
+ "@radix-ui/react-scroll-area": "^1.2.8",
179
+ "@radix-ui/react-select": "^2.2.4",
180
+ "@radix-ui/react-separator": "^1.1.7",
181
+ "@radix-ui/react-slider": "^1.3.4",
182
+ "@radix-ui/react-slot": "^1.2.3",
183
+ "@radix-ui/react-switch": "^1.2.6",
184
+ "@radix-ui/react-tabs": "^1.1.11",
185
+ "@radix-ui/react-toast": "^1.2.14",
186
+ "@radix-ui/react-toggle": "^1.1.10",
187
+ "@radix-ui/react-toggle-group": "^1.1.11",
188
+ "@radix-ui/react-tooltip": "^1.2.6",
189
+ "@react-stately/utils": "^3.10.0",
190
+ "@tanstack/react-router": "^1.0.0",
191
+ "@types/react-syntax-highlighter": "^15.5.13",
192
+ "@uiw/react-json-view": "2.0.0-alpha.40",
193
+ "class-variance-authority": "^0.7.1",
194
+ "date-fns": "^2.30.0",
195
+ "flowbite-react": "^0.7.0",
196
+ "framer-motion": "^11.0.0",
197
+ "input-otp": "^1.4.2",
198
+ "lucide-react": "^0.562.0",
199
+ "motion": "^12.26.2",
200
+ "next-themes": "^0.2.0",
201
+ "radix-ui": "^1.4.3",
202
+ "react-day-picker": "^9.13.0",
203
+ "react-hook-form": "^7.56.3",
204
+ "react-hotkeys-hook": "^4.6.2",
205
+ "react-icons": "^5.0.0",
206
+ "react-resizable-panels": "^4.4.1",
207
+ "react-syntax-highlighter": "^16.1.0",
208
+ "react-use-measure": "^2.1.1",
209
+ "sonner": "^2.0.7",
210
+ "zod": "^3.24.4"
211
+ },
212
+ "devDependencies": {
213
+ "@pol-studios/auth": "workspace:*",
214
+ "@pol-studios/db": "workspace:*",
215
+ "@pol-studios/filters": "workspace:*",
216
+ "@pol-studios/hooks": "workspace:*",
217
+ "@pol-studios/utils": "workspace:*",
218
+ "@types/react": "^19.0.0",
219
+ "@types/react-dom": "^19.0.0",
220
+ "shadcn": "^3.7.0",
221
+ "tailwindcss": "^3.4.17",
222
+ "tailwindcss-animate": "^1.0.7",
223
+ "tsup": "^8.0.0",
224
+ "typescript": "^5.7.2"
225
+ }
226
+ }
@@ -0,0 +1,157 @@
1
+ /**
2
+ * @pol-studios/ui - Global CSS Variables
3
+ *
4
+ * Import this file in your app's entry point to get the shadcn-compatible
5
+ * CSS variables for theming. These variables are used by all @pol-studios/ui components.
6
+ *
7
+ * Usage:
8
+ * import '@pol-studios/ui/styles/globals.css';
9
+ *
10
+ * Or in CSS:
11
+ * @import '@pol-studios/ui/styles/globals.css';
12
+ */
13
+
14
+ :root {
15
+ /* Border Radius */
16
+ --radius: 0.625rem;
17
+ --radius-sm: 0.25rem;
18
+ --radius-md: 0.5rem;
19
+ --radius-lg: 0.75rem;
20
+ --radius-xl: 1rem;
21
+ --radius-2xl: 1.5rem;
22
+ --radius-full: 9999px;
23
+
24
+ /* Core Colors - Light Mode */
25
+ --background: rgb(249, 250, 251);
26
+ --foreground: rgb(17, 21, 35);
27
+
28
+ /* Card */
29
+ --card: rgb(255, 255, 255);
30
+ --card-foreground: rgb(17, 21, 35);
31
+
32
+ /* Popover */
33
+ --popover: rgb(255, 255, 255);
34
+ --popover-foreground: rgb(17, 21, 35);
35
+
36
+ /* Primary - Sapphire */
37
+ --primary: rgb(66, 95, 208);
38
+ --primary-foreground: rgb(255, 255, 255);
39
+
40
+ /* Secondary - Amethyst */
41
+ --secondary: rgb(243, 244, 246);
42
+ --secondary-foreground: rgb(17, 21, 35);
43
+
44
+ /* Muted */
45
+ --muted: rgb(243, 244, 246);
46
+ --muted-foreground: rgb(107, 114, 128);
47
+
48
+ /* Accent - Coral */
49
+ --accent: rgb(243, 244, 246);
50
+ --accent-foreground: rgb(17, 21, 35);
51
+
52
+ /* Destructive - Red */
53
+ --destructive: rgb(220, 38, 38);
54
+ --destructive-foreground: rgb(255, 255, 255);
55
+
56
+ /* Success - Emerald */
57
+ --success: rgb(33, 188, 179);
58
+ --success-foreground: rgb(255, 255, 255);
59
+
60
+ /* Warning - Coral/Amber */
61
+ --warning: rgb(255, 130, 67);
62
+ --warning-foreground: rgb(17, 21, 35);
63
+
64
+ /* Info - Sky */
65
+ --info: rgb(66, 95, 208);
66
+ --info-foreground: rgb(255, 255, 255);
67
+
68
+ /* Border & Input */
69
+ --border: rgb(229, 231, 235);
70
+ --input: rgb(229, 231, 235);
71
+ --ring: rgb(66, 95, 208);
72
+
73
+ /* Chart Colors */
74
+ --chart-1: rgb(66, 95, 208);
75
+ --chart-2: rgb(33, 188, 179);
76
+ --chart-3: rgb(163, 51, 216);
77
+ --chart-4: rgb(255, 130, 67);
78
+ --chart-5: rgb(22, 35, 87);
79
+
80
+ /* Sidebar */
81
+ --sidebar: rgb(249, 250, 251);
82
+ --sidebar-foreground: rgb(17, 21, 35);
83
+ --sidebar-primary: rgb(66, 95, 208);
84
+ --sidebar-primary-foreground: rgb(255, 255, 255);
85
+ --sidebar-accent: rgb(243, 244, 246);
86
+ --sidebar-accent-foreground: rgb(17, 21, 35);
87
+ --sidebar-border: rgb(229, 231, 235);
88
+ --sidebar-ring: rgb(66, 95, 208);
89
+ }
90
+
91
+ .dark {
92
+ /* Core Colors - Dark Mode */
93
+ --background: rgb(17, 21, 35);
94
+ --foreground: rgb(249, 250, 251);
95
+
96
+ /* Card */
97
+ --card: rgb(27, 36, 70);
98
+ --card-foreground: rgb(249, 250, 251);
99
+
100
+ /* Popover */
101
+ --popover: rgb(27, 36, 70);
102
+ --popover-foreground: rgb(249, 250, 251);
103
+
104
+ /* Primary - Sapphire (lighter in dark mode) */
105
+ --primary: rgb(105, 127, 218);
106
+ --primary-foreground: rgb(17, 21, 35);
107
+
108
+ /* Secondary */
109
+ --secondary: rgb(37, 51, 105);
110
+ --secondary-foreground: rgb(249, 250, 251);
111
+
112
+ /* Muted */
113
+ --muted: rgb(37, 51, 105);
114
+ --muted-foreground: rgb(156, 163, 175);
115
+
116
+ /* Accent */
117
+ --accent: rgb(37, 51, 105);
118
+ --accent-foreground: rgb(249, 250, 251);
119
+
120
+ /* Destructive */
121
+ --destructive: rgb(239, 68, 68);
122
+ --destructive-foreground: rgb(255, 255, 255);
123
+
124
+ /* Success - Emerald */
125
+ --success: rgb(78, 201, 194);
126
+ --success-foreground: rgb(17, 21, 35);
127
+
128
+ /* Warning - Coral */
129
+ --warning: rgb(255, 155, 105);
130
+ --warning-foreground: rgb(17, 21, 35);
131
+
132
+ /* Info - Sky */
133
+ --info: rgb(105, 127, 218);
134
+ --info-foreground: rgb(255, 255, 255);
135
+
136
+ /* Border & Input */
137
+ --border: rgb(55, 65, 81);
138
+ --input: rgb(55, 65, 81);
139
+ --ring: rgb(105, 127, 218);
140
+
141
+ /* Chart Colors */
142
+ --chart-1: rgb(105, 127, 218);
143
+ --chart-2: rgb(78, 201, 194);
144
+ --chart-3: rgb(182, 92, 224);
145
+ --chart-4: rgb(255, 155, 105);
146
+ --chart-5: rgb(161, 181, 255);
147
+
148
+ /* Sidebar */
149
+ --sidebar: rgb(17, 21, 35);
150
+ --sidebar-foreground: rgb(249, 250, 251);
151
+ --sidebar-primary: rgb(105, 127, 218);
152
+ --sidebar-primary-foreground: rgb(255, 255, 255);
153
+ --sidebar-accent: rgb(37, 51, 105);
154
+ --sidebar-accent-foreground: rgb(249, 250, 251);
155
+ --sidebar-border: rgb(55, 65, 81);
156
+ --sidebar-ring: rgb(105, 127, 218);
157
+ }