@pos-360/horizon 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 (56) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +185 -0
  3. package/dist/animated-icons.d.mts +54 -0
  4. package/dist/animated-icons.d.ts +54 -0
  5. package/dist/animated-icons.js +28 -0
  6. package/dist/animated-icons.js.map +1 -0
  7. package/dist/animated-icons.mjs +3 -0
  8. package/dist/animated-icons.mjs.map +1 -0
  9. package/dist/chunk-2B2BWI5A.mjs +324 -0
  10. package/dist/chunk-2B2BWI5A.mjs.map +1 -0
  11. package/dist/chunk-6YAK6HNR.mjs +471 -0
  12. package/dist/chunk-6YAK6HNR.mjs.map +1 -0
  13. package/dist/chunk-7LVVOCBV.mjs +977 -0
  14. package/dist/chunk-7LVVOCBV.mjs.map +1 -0
  15. package/dist/chunk-AA25LTS4.js +4 -0
  16. package/dist/chunk-AA25LTS4.js.map +1 -0
  17. package/dist/chunk-J6RXKZE5.js +1080 -0
  18. package/dist/chunk-J6RXKZE5.js.map +1 -0
  19. package/dist/chunk-R5HAFV6M.js +350 -0
  20. package/dist/chunk-R5HAFV6M.js.map +1 -0
  21. package/dist/chunk-Y6G4VKJ3.mjs +3 -0
  22. package/dist/chunk-Y6G4VKJ3.mjs.map +1 -0
  23. package/dist/chunk-ZD6CMWPW.js +476 -0
  24. package/dist/chunk-ZD6CMWPW.js.map +1 -0
  25. package/dist/enhanced.d.mts +81 -0
  26. package/dist/enhanced.d.ts +81 -0
  27. package/dist/enhanced.js +24 -0
  28. package/dist/enhanced.js.map +1 -0
  29. package/dist/enhanced.mjs +3 -0
  30. package/dist/enhanced.mjs.map +1 -0
  31. package/dist/hooks.d.mts +2 -0
  32. package/dist/hooks.d.ts +2 -0
  33. package/dist/hooks.js +6 -0
  34. package/dist/hooks.js.map +1 -0
  35. package/dist/hooks.mjs +3 -0
  36. package/dist/hooks.mjs.map +1 -0
  37. package/dist/index.d.mts +25 -0
  38. package/dist/index.d.ts +25 -0
  39. package/dist/index.js +351 -0
  40. package/dist/index.js.map +1 -0
  41. package/dist/index.mjs +6 -0
  42. package/dist/index.mjs.map +1 -0
  43. package/dist/primitives.d.mts +168 -0
  44. package/dist/primitives.d.ts +168 -0
  45. package/dist/primitives.js +308 -0
  46. package/dist/primitives.js.map +1 -0
  47. package/dist/primitives.mjs +3 -0
  48. package/dist/primitives.mjs.map +1 -0
  49. package/dist/tailwind.d.mts +104 -0
  50. package/dist/tailwind.d.ts +104 -0
  51. package/dist/tailwind.js +75 -0
  52. package/dist/tailwind.js.map +1 -0
  53. package/dist/tailwind.mjs +73 -0
  54. package/dist/tailwind.mjs.map +1 -0
  55. package/package.json +103 -0
  56. package/tailwind.config.js +105 -0
@@ -0,0 +1,3 @@
1
+ export { Badge, Button, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, Popover, PopoverAnchor, PopoverContent, PopoverTrigger, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Skeleton, SkeletonAvatar, SkeletonBadge, SkeletonButton, SkeletonCard, SkeletonIcon, SkeletonInput, SkeletonSubtitle, SkeletonTableRow, SkeletonTableRows, SkeletonText, SkeletonTitle, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Textarea, badgeVariants, buttonVariants } from './chunk-7LVVOCBV.mjs';
2
+ //# sourceMappingURL=primitives.mjs.map
3
+ //# sourceMappingURL=primitives.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"primitives.mjs"}
@@ -0,0 +1,104 @@
1
+ /**
2
+ * Horizon Tailwind CSS Preset
3
+ *
4
+ * Use this preset in your tailwind.config.js to get POS-360 design tokens:
5
+ *
6
+ * @example
7
+ * // tailwind.config.js
8
+ * const horizonPreset = require("@pos-360/horizon/tailwind");
9
+ *
10
+ * module.exports = {
11
+ * presets: [horizonPreset],
12
+ * // ... rest of your config
13
+ * }
14
+ */
15
+ declare const horizonPreset: {
16
+ darkMode: "class";
17
+ theme: {
18
+ extend: {
19
+ colors: {
20
+ primary: {
21
+ 50: string;
22
+ 100: string;
23
+ 200: string;
24
+ 300: string;
25
+ 400: string;
26
+ 500: string;
27
+ 600: string;
28
+ 700: string;
29
+ 800: string;
30
+ 900: string;
31
+ 950: string;
32
+ DEFAULT: string;
33
+ };
34
+ success: {
35
+ 50: string;
36
+ 500: string;
37
+ 600: string;
38
+ DEFAULT: string;
39
+ };
40
+ warning: {
41
+ 50: string;
42
+ 500: string;
43
+ 600: string;
44
+ DEFAULT: string;
45
+ };
46
+ error: {
47
+ 50: string;
48
+ 500: string;
49
+ 600: string;
50
+ DEFAULT: string;
51
+ };
52
+ };
53
+ animation: {
54
+ "pulse-slow": string;
55
+ "fade-in": string;
56
+ "slide-up": string;
57
+ "slide-down": string;
58
+ "scale-in": string;
59
+ };
60
+ keyframes: {
61
+ fadeIn: {
62
+ "0%": {
63
+ opacity: string;
64
+ };
65
+ "100%": {
66
+ opacity: string;
67
+ };
68
+ };
69
+ slideUp: {
70
+ "0%": {
71
+ transform: string;
72
+ opacity: string;
73
+ };
74
+ "100%": {
75
+ transform: string;
76
+ opacity: string;
77
+ };
78
+ };
79
+ slideDown: {
80
+ "0%": {
81
+ transform: string;
82
+ opacity: string;
83
+ };
84
+ "100%": {
85
+ transform: string;
86
+ opacity: string;
87
+ };
88
+ };
89
+ scaleIn: {
90
+ "0%": {
91
+ transform: string;
92
+ opacity: string;
93
+ };
94
+ "100%": {
95
+ transform: string;
96
+ opacity: string;
97
+ };
98
+ };
99
+ };
100
+ };
101
+ };
102
+ };
103
+
104
+ export { horizonPreset as default };
@@ -0,0 +1,104 @@
1
+ /**
2
+ * Horizon Tailwind CSS Preset
3
+ *
4
+ * Use this preset in your tailwind.config.js to get POS-360 design tokens:
5
+ *
6
+ * @example
7
+ * // tailwind.config.js
8
+ * const horizonPreset = require("@pos-360/horizon/tailwind");
9
+ *
10
+ * module.exports = {
11
+ * presets: [horizonPreset],
12
+ * // ... rest of your config
13
+ * }
14
+ */
15
+ declare const horizonPreset: {
16
+ darkMode: "class";
17
+ theme: {
18
+ extend: {
19
+ colors: {
20
+ primary: {
21
+ 50: string;
22
+ 100: string;
23
+ 200: string;
24
+ 300: string;
25
+ 400: string;
26
+ 500: string;
27
+ 600: string;
28
+ 700: string;
29
+ 800: string;
30
+ 900: string;
31
+ 950: string;
32
+ DEFAULT: string;
33
+ };
34
+ success: {
35
+ 50: string;
36
+ 500: string;
37
+ 600: string;
38
+ DEFAULT: string;
39
+ };
40
+ warning: {
41
+ 50: string;
42
+ 500: string;
43
+ 600: string;
44
+ DEFAULT: string;
45
+ };
46
+ error: {
47
+ 50: string;
48
+ 500: string;
49
+ 600: string;
50
+ DEFAULT: string;
51
+ };
52
+ };
53
+ animation: {
54
+ "pulse-slow": string;
55
+ "fade-in": string;
56
+ "slide-up": string;
57
+ "slide-down": string;
58
+ "scale-in": string;
59
+ };
60
+ keyframes: {
61
+ fadeIn: {
62
+ "0%": {
63
+ opacity: string;
64
+ };
65
+ "100%": {
66
+ opacity: string;
67
+ };
68
+ };
69
+ slideUp: {
70
+ "0%": {
71
+ transform: string;
72
+ opacity: string;
73
+ };
74
+ "100%": {
75
+ transform: string;
76
+ opacity: string;
77
+ };
78
+ };
79
+ slideDown: {
80
+ "0%": {
81
+ transform: string;
82
+ opacity: string;
83
+ };
84
+ "100%": {
85
+ transform: string;
86
+ opacity: string;
87
+ };
88
+ };
89
+ scaleIn: {
90
+ "0%": {
91
+ transform: string;
92
+ opacity: string;
93
+ };
94
+ "100%": {
95
+ transform: string;
96
+ opacity: string;
97
+ };
98
+ };
99
+ };
100
+ };
101
+ };
102
+ };
103
+
104
+ export { horizonPreset as default };
@@ -0,0 +1,75 @@
1
+ 'use strict';
2
+
3
+ // src/tailwind.ts
4
+ var horizonPreset = {
5
+ darkMode: "class",
6
+ theme: {
7
+ extend: {
8
+ colors: {
9
+ // POS-360 Brand Colors
10
+ primary: {
11
+ 50: "#eff6ff",
12
+ 100: "#dbeafe",
13
+ 200: "#bfdbfe",
14
+ 300: "#93c5fd",
15
+ 400: "#60a5fa",
16
+ 500: "#3b82f6",
17
+ 600: "#2563eb",
18
+ 700: "#1d4ed8",
19
+ 800: "#1e40af",
20
+ 900: "#1e3a8a",
21
+ 950: "#172554",
22
+ DEFAULT: "#0F62FE"
23
+ },
24
+ success: {
25
+ 50: "#ecfdf5",
26
+ 500: "#10b981",
27
+ 600: "#059669",
28
+ DEFAULT: "#10B981"
29
+ },
30
+ warning: {
31
+ 50: "#fffbeb",
32
+ 500: "#f59e0b",
33
+ 600: "#d97706",
34
+ DEFAULT: "#F59E0B"
35
+ },
36
+ error: {
37
+ 50: "#fff1f2",
38
+ 500: "#f43f5e",
39
+ 600: "#e11d48",
40
+ DEFAULT: "#F43F5E"
41
+ }
42
+ },
43
+ animation: {
44
+ "pulse-slow": "pulse 3s cubic-bezier(0.4, 0, 0.6, 1) infinite",
45
+ "fade-in": "fadeIn 0.2s ease-out",
46
+ "slide-up": "slideUp 0.3s ease-out",
47
+ "slide-down": "slideDown 0.3s ease-out",
48
+ "scale-in": "scaleIn 0.2s ease-out"
49
+ },
50
+ keyframes: {
51
+ fadeIn: {
52
+ "0%": { opacity: "0" },
53
+ "100%": { opacity: "1" }
54
+ },
55
+ slideUp: {
56
+ "0%": { transform: "translateY(10px)", opacity: "0" },
57
+ "100%": { transform: "translateY(0)", opacity: "1" }
58
+ },
59
+ slideDown: {
60
+ "0%": { transform: "translateY(-10px)", opacity: "0" },
61
+ "100%": { transform: "translateY(0)", opacity: "1" }
62
+ },
63
+ scaleIn: {
64
+ "0%": { transform: "scale(0.95)", opacity: "0" },
65
+ "100%": { transform: "scale(1)", opacity: "1" }
66
+ }
67
+ }
68
+ }
69
+ }
70
+ };
71
+ var tailwind_default = horizonPreset;
72
+
73
+ module.exports = tailwind_default;
74
+ //# sourceMappingURL=tailwind.js.map
75
+ //# sourceMappingURL=tailwind.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/tailwind.ts"],"names":[],"mappings":";;;AAeA,IAAM,aAAA,GAAgB;AAAA,EACpB,QAAA,EAAU,OAAA;AAAA,EACV,KAAA,EAAO;AAAA,IACL,MAAA,EAAQ;AAAA,MACN,MAAA,EAAQ;AAAA;AAAA,QAEN,OAAA,EAAS;AAAA,UACP,EAAA,EAAI,SAAA;AAAA,UACJ,GAAA,EAAK,SAAA;AAAA,UACL,GAAA,EAAK,SAAA;AAAA,UACL,GAAA,EAAK,SAAA;AAAA,UACL,GAAA,EAAK,SAAA;AAAA,UACL,GAAA,EAAK,SAAA;AAAA,UACL,GAAA,EAAK,SAAA;AAAA,UACL,GAAA,EAAK,SAAA;AAAA,UACL,GAAA,EAAK,SAAA;AAAA,UACL,GAAA,EAAK,SAAA;AAAA,UACL,GAAA,EAAK,SAAA;AAAA,UACL,OAAA,EAAS;AAAA,SACX;AAAA,QACA,OAAA,EAAS;AAAA,UACP,EAAA,EAAI,SAAA;AAAA,UACJ,GAAA,EAAK,SAAA;AAAA,UACL,GAAA,EAAK,SAAA;AAAA,UACL,OAAA,EAAS;AAAA,SACX;AAAA,QACA,OAAA,EAAS;AAAA,UACP,EAAA,EAAI,SAAA;AAAA,UACJ,GAAA,EAAK,SAAA;AAAA,UACL,GAAA,EAAK,SAAA;AAAA,UACL,OAAA,EAAS;AAAA,SACX;AAAA,QACA,KAAA,EAAO;AAAA,UACL,EAAA,EAAI,SAAA;AAAA,UACJ,GAAA,EAAK,SAAA;AAAA,UACL,GAAA,EAAK,SAAA;AAAA,UACL,OAAA,EAAS;AAAA;AACX,OACF;AAAA,MACA,SAAA,EAAW;AAAA,QACT,YAAA,EAAc,gDAAA;AAAA,QACd,SAAA,EAAW,sBAAA;AAAA,QACX,UAAA,EAAY,uBAAA;AAAA,QACZ,YAAA,EAAc,yBAAA;AAAA,QACd,UAAA,EAAY;AAAA,OACd;AAAA,MACA,SAAA,EAAW;AAAA,QACT,MAAA,EAAQ;AAAA,UACN,IAAA,EAAM,EAAE,OAAA,EAAS,GAAA,EAAI;AAAA,UACrB,MAAA,EAAQ,EAAE,OAAA,EAAS,GAAA;AAAI,SACzB;AAAA,QACA,OAAA,EAAS;AAAA,UACP,IAAA,EAAM,EAAE,SAAA,EAAW,kBAAA,EAAoB,SAAS,GAAA,EAAI;AAAA,UACpD,MAAA,EAAQ,EAAE,SAAA,EAAW,eAAA,EAAiB,SAAS,GAAA;AAAI,SACrD;AAAA,QACA,SAAA,EAAW;AAAA,UACT,IAAA,EAAM,EAAE,SAAA,EAAW,mBAAA,EAAqB,SAAS,GAAA,EAAI;AAAA,UACrD,MAAA,EAAQ,EAAE,SAAA,EAAW,eAAA,EAAiB,SAAS,GAAA;AAAI,SACrD;AAAA,QACA,OAAA,EAAS;AAAA,UACP,IAAA,EAAM,EAAE,SAAA,EAAW,aAAA,EAAe,SAAS,GAAA,EAAI;AAAA,UAC/C,MAAA,EAAQ,EAAE,SAAA,EAAW,UAAA,EAAY,SAAS,GAAA;AAAI;AAChD;AACF;AACF;AAEJ,CAAA;AAEA,IAAO,gBAAA,GAAQ","file":"tailwind.js","sourcesContent":["/**\n * Horizon Tailwind CSS Preset\n *\n * Use this preset in your tailwind.config.js to get POS-360 design tokens:\n *\n * @example\n * // tailwind.config.js\n * const horizonPreset = require(\"@pos-360/horizon/tailwind\");\n *\n * module.exports = {\n * presets: [horizonPreset],\n * // ... rest of your config\n * }\n */\n\nconst horizonPreset = {\n darkMode: \"class\" as const,\n theme: {\n extend: {\n colors: {\n // POS-360 Brand Colors\n primary: {\n 50: \"#eff6ff\",\n 100: \"#dbeafe\",\n 200: \"#bfdbfe\",\n 300: \"#93c5fd\",\n 400: \"#60a5fa\",\n 500: \"#3b82f6\",\n 600: \"#2563eb\",\n 700: \"#1d4ed8\",\n 800: \"#1e40af\",\n 900: \"#1e3a8a\",\n 950: \"#172554\",\n DEFAULT: \"#0F62FE\",\n },\n success: {\n 50: \"#ecfdf5\",\n 500: \"#10b981\",\n 600: \"#059669\",\n DEFAULT: \"#10B981\",\n },\n warning: {\n 50: \"#fffbeb\",\n 500: \"#f59e0b\",\n 600: \"#d97706\",\n DEFAULT: \"#F59E0B\",\n },\n error: {\n 50: \"#fff1f2\",\n 500: \"#f43f5e\",\n 600: \"#e11d48\",\n DEFAULT: \"#F43F5E\",\n },\n },\n animation: {\n \"pulse-slow\": \"pulse 3s cubic-bezier(0.4, 0, 0.6, 1) infinite\",\n \"fade-in\": \"fadeIn 0.2s ease-out\",\n \"slide-up\": \"slideUp 0.3s ease-out\",\n \"slide-down\": \"slideDown 0.3s ease-out\",\n \"scale-in\": \"scaleIn 0.2s ease-out\",\n },\n keyframes: {\n fadeIn: {\n \"0%\": { opacity: \"0\" },\n \"100%\": { opacity: \"1\" },\n },\n slideUp: {\n \"0%\": { transform: \"translateY(10px)\", opacity: \"0\" },\n \"100%\": { transform: \"translateY(0)\", opacity: \"1\" },\n },\n slideDown: {\n \"0%\": { transform: \"translateY(-10px)\", opacity: \"0\" },\n \"100%\": { transform: \"translateY(0)\", opacity: \"1\" },\n },\n scaleIn: {\n \"0%\": { transform: \"scale(0.95)\", opacity: \"0\" },\n \"100%\": { transform: \"scale(1)\", opacity: \"1\" },\n },\n },\n },\n },\n};\n\nexport default horizonPreset;\n"]}
@@ -0,0 +1,73 @@
1
+ // src/tailwind.ts
2
+ var horizonPreset = {
3
+ darkMode: "class",
4
+ theme: {
5
+ extend: {
6
+ colors: {
7
+ // POS-360 Brand Colors
8
+ primary: {
9
+ 50: "#eff6ff",
10
+ 100: "#dbeafe",
11
+ 200: "#bfdbfe",
12
+ 300: "#93c5fd",
13
+ 400: "#60a5fa",
14
+ 500: "#3b82f6",
15
+ 600: "#2563eb",
16
+ 700: "#1d4ed8",
17
+ 800: "#1e40af",
18
+ 900: "#1e3a8a",
19
+ 950: "#172554",
20
+ DEFAULT: "#0F62FE"
21
+ },
22
+ success: {
23
+ 50: "#ecfdf5",
24
+ 500: "#10b981",
25
+ 600: "#059669",
26
+ DEFAULT: "#10B981"
27
+ },
28
+ warning: {
29
+ 50: "#fffbeb",
30
+ 500: "#f59e0b",
31
+ 600: "#d97706",
32
+ DEFAULT: "#F59E0B"
33
+ },
34
+ error: {
35
+ 50: "#fff1f2",
36
+ 500: "#f43f5e",
37
+ 600: "#e11d48",
38
+ DEFAULT: "#F43F5E"
39
+ }
40
+ },
41
+ animation: {
42
+ "pulse-slow": "pulse 3s cubic-bezier(0.4, 0, 0.6, 1) infinite",
43
+ "fade-in": "fadeIn 0.2s ease-out",
44
+ "slide-up": "slideUp 0.3s ease-out",
45
+ "slide-down": "slideDown 0.3s ease-out",
46
+ "scale-in": "scaleIn 0.2s ease-out"
47
+ },
48
+ keyframes: {
49
+ fadeIn: {
50
+ "0%": { opacity: "0" },
51
+ "100%": { opacity: "1" }
52
+ },
53
+ slideUp: {
54
+ "0%": { transform: "translateY(10px)", opacity: "0" },
55
+ "100%": { transform: "translateY(0)", opacity: "1" }
56
+ },
57
+ slideDown: {
58
+ "0%": { transform: "translateY(-10px)", opacity: "0" },
59
+ "100%": { transform: "translateY(0)", opacity: "1" }
60
+ },
61
+ scaleIn: {
62
+ "0%": { transform: "scale(0.95)", opacity: "0" },
63
+ "100%": { transform: "scale(1)", opacity: "1" }
64
+ }
65
+ }
66
+ }
67
+ }
68
+ };
69
+ var tailwind_default = horizonPreset;
70
+
71
+ export { tailwind_default as default };
72
+ //# sourceMappingURL=tailwind.mjs.map
73
+ //# sourceMappingURL=tailwind.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/tailwind.ts"],"names":[],"mappings":";AAeA,IAAM,aAAA,GAAgB;AAAA,EACpB,QAAA,EAAU,OAAA;AAAA,EACV,KAAA,EAAO;AAAA,IACL,MAAA,EAAQ;AAAA,MACN,MAAA,EAAQ;AAAA;AAAA,QAEN,OAAA,EAAS;AAAA,UACP,EAAA,EAAI,SAAA;AAAA,UACJ,GAAA,EAAK,SAAA;AAAA,UACL,GAAA,EAAK,SAAA;AAAA,UACL,GAAA,EAAK,SAAA;AAAA,UACL,GAAA,EAAK,SAAA;AAAA,UACL,GAAA,EAAK,SAAA;AAAA,UACL,GAAA,EAAK,SAAA;AAAA,UACL,GAAA,EAAK,SAAA;AAAA,UACL,GAAA,EAAK,SAAA;AAAA,UACL,GAAA,EAAK,SAAA;AAAA,UACL,GAAA,EAAK,SAAA;AAAA,UACL,OAAA,EAAS;AAAA,SACX;AAAA,QACA,OAAA,EAAS;AAAA,UACP,EAAA,EAAI,SAAA;AAAA,UACJ,GAAA,EAAK,SAAA;AAAA,UACL,GAAA,EAAK,SAAA;AAAA,UACL,OAAA,EAAS;AAAA,SACX;AAAA,QACA,OAAA,EAAS;AAAA,UACP,EAAA,EAAI,SAAA;AAAA,UACJ,GAAA,EAAK,SAAA;AAAA,UACL,GAAA,EAAK,SAAA;AAAA,UACL,OAAA,EAAS;AAAA,SACX;AAAA,QACA,KAAA,EAAO;AAAA,UACL,EAAA,EAAI,SAAA;AAAA,UACJ,GAAA,EAAK,SAAA;AAAA,UACL,GAAA,EAAK,SAAA;AAAA,UACL,OAAA,EAAS;AAAA;AACX,OACF;AAAA,MACA,SAAA,EAAW;AAAA,QACT,YAAA,EAAc,gDAAA;AAAA,QACd,SAAA,EAAW,sBAAA;AAAA,QACX,UAAA,EAAY,uBAAA;AAAA,QACZ,YAAA,EAAc,yBAAA;AAAA,QACd,UAAA,EAAY;AAAA,OACd;AAAA,MACA,SAAA,EAAW;AAAA,QACT,MAAA,EAAQ;AAAA,UACN,IAAA,EAAM,EAAE,OAAA,EAAS,GAAA,EAAI;AAAA,UACrB,MAAA,EAAQ,EAAE,OAAA,EAAS,GAAA;AAAI,SACzB;AAAA,QACA,OAAA,EAAS;AAAA,UACP,IAAA,EAAM,EAAE,SAAA,EAAW,kBAAA,EAAoB,SAAS,GAAA,EAAI;AAAA,UACpD,MAAA,EAAQ,EAAE,SAAA,EAAW,eAAA,EAAiB,SAAS,GAAA;AAAI,SACrD;AAAA,QACA,SAAA,EAAW;AAAA,UACT,IAAA,EAAM,EAAE,SAAA,EAAW,mBAAA,EAAqB,SAAS,GAAA,EAAI;AAAA,UACrD,MAAA,EAAQ,EAAE,SAAA,EAAW,eAAA,EAAiB,SAAS,GAAA;AAAI,SACrD;AAAA,QACA,OAAA,EAAS;AAAA,UACP,IAAA,EAAM,EAAE,SAAA,EAAW,aAAA,EAAe,SAAS,GAAA,EAAI;AAAA,UAC/C,MAAA,EAAQ,EAAE,SAAA,EAAW,UAAA,EAAY,SAAS,GAAA;AAAI;AAChD;AACF;AACF;AAEJ,CAAA;AAEA,IAAO,gBAAA,GAAQ","file":"tailwind.mjs","sourcesContent":["/**\n * Horizon Tailwind CSS Preset\n *\n * Use this preset in your tailwind.config.js to get POS-360 design tokens:\n *\n * @example\n * // tailwind.config.js\n * const horizonPreset = require(\"@pos-360/horizon/tailwind\");\n *\n * module.exports = {\n * presets: [horizonPreset],\n * // ... rest of your config\n * }\n */\n\nconst horizonPreset = {\n darkMode: \"class\" as const,\n theme: {\n extend: {\n colors: {\n // POS-360 Brand Colors\n primary: {\n 50: \"#eff6ff\",\n 100: \"#dbeafe\",\n 200: \"#bfdbfe\",\n 300: \"#93c5fd\",\n 400: \"#60a5fa\",\n 500: \"#3b82f6\",\n 600: \"#2563eb\",\n 700: \"#1d4ed8\",\n 800: \"#1e40af\",\n 900: \"#1e3a8a\",\n 950: \"#172554\",\n DEFAULT: \"#0F62FE\",\n },\n success: {\n 50: \"#ecfdf5\",\n 500: \"#10b981\",\n 600: \"#059669\",\n DEFAULT: \"#10B981\",\n },\n warning: {\n 50: \"#fffbeb\",\n 500: \"#f59e0b\",\n 600: \"#d97706\",\n DEFAULT: \"#F59E0B\",\n },\n error: {\n 50: \"#fff1f2\",\n 500: \"#f43f5e\",\n 600: \"#e11d48\",\n DEFAULT: \"#F43F5E\",\n },\n },\n animation: {\n \"pulse-slow\": \"pulse 3s cubic-bezier(0.4, 0, 0.6, 1) infinite\",\n \"fade-in\": \"fadeIn 0.2s ease-out\",\n \"slide-up\": \"slideUp 0.3s ease-out\",\n \"slide-down\": \"slideDown 0.3s ease-out\",\n \"scale-in\": \"scaleIn 0.2s ease-out\",\n },\n keyframes: {\n fadeIn: {\n \"0%\": { opacity: \"0\" },\n \"100%\": { opacity: \"1\" },\n },\n slideUp: {\n \"0%\": { transform: \"translateY(10px)\", opacity: \"0\" },\n \"100%\": { transform: \"translateY(0)\", opacity: \"1\" },\n },\n slideDown: {\n \"0%\": { transform: \"translateY(-10px)\", opacity: \"0\" },\n \"100%\": { transform: \"translateY(0)\", opacity: \"1\" },\n },\n scaleIn: {\n \"0%\": { transform: \"scale(0.95)\", opacity: \"0\" },\n \"100%\": { transform: \"scale(1)\", opacity: \"1\" },\n },\n },\n },\n },\n};\n\nexport default horizonPreset;\n"]}
package/package.json ADDED
@@ -0,0 +1,103 @@
1
+ {
2
+ "name": "@pos-360/horizon",
3
+ "version": "0.1.0",
4
+ "description": "POS-360 unified component library - the horizon all apps look toward",
5
+ "main": "./dist/index.js",
6
+ "module": "./dist/index.mjs",
7
+ "types": "./dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "import": "./dist/index.mjs",
12
+ "require": "./dist/index.js"
13
+ },
14
+ "./primitives": {
15
+ "types": "./dist/primitives.d.ts",
16
+ "import": "./dist/primitives.mjs",
17
+ "require": "./dist/primitives.js"
18
+ },
19
+ "./enhanced": {
20
+ "types": "./dist/enhanced.d.ts",
21
+ "import": "./dist/enhanced.mjs",
22
+ "require": "./dist/enhanced.js"
23
+ },
24
+ "./animated-icons": {
25
+ "types": "./dist/animated-icons.d.ts",
26
+ "import": "./dist/animated-icons.mjs",
27
+ "require": "./dist/animated-icons.js"
28
+ },
29
+ "./hooks": {
30
+ "types": "./dist/hooks.d.ts",
31
+ "import": "./dist/hooks.mjs",
32
+ "require": "./dist/hooks.js"
33
+ },
34
+ "./tailwind": {
35
+ "import": "./dist/tailwind.mjs",
36
+ "require": "./dist/tailwind.js"
37
+ },
38
+ "./styles.css": "./dist/styles.css"
39
+ },
40
+ "sideEffects": [
41
+ "**/*.css"
42
+ ],
43
+ "files": [
44
+ "dist",
45
+ "tailwind.config.js"
46
+ ],
47
+ "scripts": {
48
+ "dev": "tsup --watch",
49
+ "build": "tsup",
50
+ "lint": "eslint src/",
51
+ "typecheck": "tsc --noEmit",
52
+ "docs": "pnpm --filter docs dev",
53
+ "docs:build": "pnpm --filter docs build",
54
+ "prepublishOnly": "npm run build"
55
+ },
56
+ "peerDependencies": {
57
+ "react": "^18.0.0",
58
+ "react-dom": "^18.0.0"
59
+ },
60
+ "dependencies": {
61
+ "@radix-ui/react-checkbox": "^1.1.1",
62
+ "@radix-ui/react-dialog": "^1.1.1",
63
+ "@radix-ui/react-dropdown-menu": "^2.1.1",
64
+ "@radix-ui/react-label": "^2.1.0",
65
+ "@radix-ui/react-popover": "^1.1.1",
66
+ "@radix-ui/react-select": "^2.1.1",
67
+ "@radix-ui/react-slot": "^1.1.0",
68
+ "@radix-ui/react-tabs": "^1.1.0",
69
+ "class-variance-authority": "^0.7.0",
70
+ "clsx": "^2.1.1",
71
+ "framer-motion": "^11.2.4",
72
+ "lucide-react": "^0.400.0",
73
+ "tailwind-merge": "^2.3.0"
74
+ },
75
+ "devDependencies": {
76
+ "@types/node": "^20",
77
+ "@types/react": "^18.3.1",
78
+ "@types/react-dom": "^18.3.1",
79
+ "autoprefixer": "^10.4.19",
80
+ "eslint": "^8",
81
+ "postcss": "^8.4.38",
82
+ "tailwindcss": "^3.4.3",
83
+ "tsup": "^8.0.0",
84
+ "typescript": "^5"
85
+ },
86
+ "keywords": [
87
+ "pos-360",
88
+ "horizon",
89
+ "react",
90
+ "components",
91
+ "ui",
92
+ "design-system",
93
+ "tailwindcss"
94
+ ],
95
+ "repository": {
96
+ "type": "git",
97
+ "url": "https://github.com/POS-360/horizon.git"
98
+ },
99
+ "license": "MIT",
100
+ "publishConfig": {
101
+ "access": "public"
102
+ }
103
+ }
@@ -0,0 +1,105 @@
1
+ /** @type {import('tailwindcss').Config} */
2
+ module.exports = {
3
+ darkMode: "class",
4
+ content: ["./src/**/*.{js,ts,jsx,tsx}", "./docs/**/*.{js,ts,jsx,tsx,mdx}"],
5
+ theme: {
6
+ extend: {
7
+ fontFamily: {
8
+ sans: ["var(--font-bricolage)", "system-ui", "sans-serif"],
9
+ },
10
+ colors: {
11
+ // POS-360 Brand Colors
12
+ primary: {
13
+ 50: "#eff6ff",
14
+ 100: "#dbeafe",
15
+ 200: "#bfdbfe",
16
+ 300: "#93c5fd",
17
+ 400: "#60a5fa",
18
+ 500: "#3b82f6",
19
+ 600: "#2563eb",
20
+ 700: "#1d4ed8",
21
+ 800: "#1e40af",
22
+ 900: "#1e3a8a",
23
+ 950: "#172554",
24
+ DEFAULT: "#0F62FE",
25
+ },
26
+ // Semantic colors
27
+ success: {
28
+ 50: "#ecfdf5",
29
+ 100: "#d1fae5",
30
+ 200: "#a7f3d0",
31
+ 300: "#6ee7b7",
32
+ 400: "#34d399",
33
+ 500: "#10b981",
34
+ 600: "#059669",
35
+ 700: "#047857",
36
+ 800: "#065f46",
37
+ 900: "#064e3b",
38
+ DEFAULT: "#10B981",
39
+ },
40
+ warning: {
41
+ 50: "#fffbeb",
42
+ 100: "#fef3c7",
43
+ 200: "#fde68a",
44
+ 300: "#fcd34d",
45
+ 400: "#fbbf24",
46
+ 500: "#f59e0b",
47
+ 600: "#d97706",
48
+ 700: "#b45309",
49
+ 800: "#92400e",
50
+ 900: "#78350f",
51
+ DEFAULT: "#F59E0B",
52
+ },
53
+ error: {
54
+ 50: "#fff1f2",
55
+ 100: "#ffe4e6",
56
+ 200: "#fecdd3",
57
+ 300: "#fda4af",
58
+ 400: "#fb7185",
59
+ 500: "#f43f5e",
60
+ 600: "#e11d48",
61
+ 700: "#be123c",
62
+ 800: "#9f1239",
63
+ 900: "#881337",
64
+ DEFAULT: "#F43F5E",
65
+ },
66
+ },
67
+ animation: {
68
+ "pulse-slow": "pulse 3s cubic-bezier(0.4, 0, 0.6, 1) infinite",
69
+ "shimmer": "shimmer 2s infinite linear",
70
+ "fade-in": "fadeIn 0.2s ease-out",
71
+ "slide-up": "slideUp 0.3s ease-out",
72
+ "slide-down": "slideDown 0.3s ease-out",
73
+ "scale-in": "scaleIn 0.2s ease-out",
74
+ },
75
+ keyframes: {
76
+ shimmer: {
77
+ "0%": { transform: "translateX(-100%)" },
78
+ "100%": { transform: "translateX(100%)" },
79
+ },
80
+ fadeIn: {
81
+ "0%": { opacity: "0" },
82
+ "100%": { opacity: "1" },
83
+ },
84
+ slideUp: {
85
+ "0%": { transform: "translateY(10px)", opacity: "0" },
86
+ "100%": { transform: "translateY(0)", opacity: "1" },
87
+ },
88
+ slideDown: {
89
+ "0%": { transform: "translateY(-10px)", opacity: "0" },
90
+ "100%": { transform: "translateY(0)", opacity: "1" },
91
+ },
92
+ scaleIn: {
93
+ "0%": { transform: "scale(0.95)", opacity: "0" },
94
+ "100%": { transform: "scale(1)", opacity: "1" },
95
+ },
96
+ },
97
+ borderRadius: {
98
+ lg: "0.5rem",
99
+ md: "0.375rem",
100
+ sm: "0.25rem",
101
+ },
102
+ },
103
+ },
104
+ plugins: [require("tailwindcss-animate")],
105
+ };