twintrinsic 0.0.1

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 (212) hide show
  1. package/LICENSE +674 -0
  2. package/README.md +150 -0
  3. package/dist/App/App.svelte +54 -0
  4. package/dist/App/App.svelte.d.ts +65 -0
  5. package/dist/Section.svelte +25 -0
  6. package/dist/Section.svelte.d.ts +34 -0
  7. package/dist/actions/clickOutside.d.ts +9 -0
  8. package/dist/actions/clickOutside.js +19 -0
  9. package/dist/actions/index.d.ts +1 -0
  10. package/dist/actions/index.js +1 -0
  11. package/dist/components/Accordion/Accordion.svelte +75 -0
  12. package/dist/components/Accordion/Accordion.svelte.d.ts +39 -0
  13. package/dist/components/Accordion/AccordionItem.svelte +150 -0
  14. package/dist/components/Accordion/AccordionItem.svelte.d.ts +30 -0
  15. package/dist/components/App/App.story.md +8 -0
  16. package/dist/components/App/App.story.svelte +170 -0
  17. package/dist/components/App/App.story.svelte.d.ts +22 -0
  18. package/dist/components/App/App.svelte +77 -0
  19. package/dist/components/App/App.svelte.d.ts +66 -0
  20. package/dist/components/App/Split.svelte +346 -0
  21. package/dist/components/App/Split.svelte.d.ts +54 -0
  22. package/dist/components/App/index.d.ts +2 -0
  23. package/dist/components/App/index.js +3 -0
  24. package/dist/components/AppHeader/AppHeader.svelte +439 -0
  25. package/dist/components/AppHeader/AppHeader.svelte.d.ts +24 -0
  26. package/dist/components/Avatar/Avatar.svelte +300 -0
  27. package/dist/components/Avatar/Avatar.svelte.d.ts +48 -0
  28. package/dist/components/Avatar/AvatarGroup.svelte +185 -0
  29. package/dist/components/Avatar/AvatarGroup.svelte.d.ts +46 -0
  30. package/dist/components/Badge/Badge.svelte +186 -0
  31. package/dist/components/Badge/Badge.svelte.d.ts +51 -0
  32. package/dist/components/BottomBar/BottomBar.svelte +146 -0
  33. package/dist/components/BottomBar/BottomBar.svelte.d.ts +38 -0
  34. package/dist/components/Breadcrumb/Breadcrumb.svelte +77 -0
  35. package/dist/components/Breadcrumb/Breadcrumb.svelte.d.ts +42 -0
  36. package/dist/components/Breadcrumb/BreadcrumbItem.svelte +171 -0
  37. package/dist/components/Breadcrumb/BreadcrumbItem.svelte.d.ts +38 -0
  38. package/dist/components/Button/Button.svelte +252 -0
  39. package/dist/components/Button/Button.svelte.d.ts +80 -0
  40. package/dist/components/Button/ButtonGroup.svelte +127 -0
  41. package/dist/components/Button/ButtonGroup.svelte.d.ts +44 -0
  42. package/dist/components/Card/Card.svelte +152 -0
  43. package/dist/components/Card/Card.svelte.d.ts +55 -0
  44. package/dist/components/Carousel/Carousel.svelte +461 -0
  45. package/dist/components/Carousel/Carousel.svelte.d.ts +79 -0
  46. package/dist/components/Carousel/CarouselItem.svelte +149 -0
  47. package/dist/components/Carousel/CarouselItem.svelte.d.ts +35 -0
  48. package/dist/components/Chip/Chip.svelte +288 -0
  49. package/dist/components/Chip/Chip.svelte.d.ts +71 -0
  50. package/dist/components/Chip/ChipGroup.svelte +190 -0
  51. package/dist/components/Chip/ChipGroup.svelte.d.ts +71 -0
  52. package/dist/components/CodeBlock/CodeBlock.svelte +356 -0
  53. package/dist/components/CodeBlock/CodeBlock.svelte.d.ts +44 -0
  54. package/dist/components/CodeBlock/index.d.ts +1 -0
  55. package/dist/components/CodeBlock/index.js +1 -0
  56. package/dist/components/CodeBlockSpeed/CodeBlockSpeed.svelte +145 -0
  57. package/dist/components/CodeBlockSpeed/CodeBlockSpeed.svelte.d.ts +44 -0
  58. package/dist/components/CodeEditor/CodeEditor.svelte +229 -0
  59. package/dist/components/CodeEditor/CodeEditor.svelte.d.ts +23 -0
  60. package/dist/components/Combobox/Combobox.svelte +279 -0
  61. package/dist/components/Combobox/Combobox.svelte.d.ts +34 -0
  62. package/dist/components/Container/Container.svelte +45 -0
  63. package/dist/components/Container/Container.svelte.d.ts +36 -0
  64. package/dist/components/DataTable/DataTable.svelte +879 -0
  65. package/dist/components/DataTable/DataTable.svelte.d.ts +102 -0
  66. package/dist/components/Form/AutoComplete.svelte +357 -0
  67. package/dist/components/Form/AutoComplete.svelte.d.ts +73 -0
  68. package/dist/components/Form/Calendar.svelte +429 -0
  69. package/dist/components/Form/Calendar.svelte.d.ts +53 -0
  70. package/dist/components/Form/Checkbox.svelte +196 -0
  71. package/dist/components/Form/Checkbox.svelte.d.ts +50 -0
  72. package/dist/components/Form/ColorPicker.svelte +396 -0
  73. package/dist/components/Form/ColorPicker.svelte.d.ts +43 -0
  74. package/dist/components/Form/Combobox.svelte +645 -0
  75. package/dist/components/Form/Combobox.svelte.d.ts +93 -0
  76. package/dist/components/Form/Dropdown.svelte +773 -0
  77. package/dist/components/Form/Dropdown.svelte.d.ts +81 -0
  78. package/dist/components/Form/FileUpload.svelte +796 -0
  79. package/dist/components/Form/FileUpload.svelte.d.ts +78 -0
  80. package/dist/components/Form/FloatLabel.svelte +245 -0
  81. package/dist/components/Form/FloatLabel.svelte.d.ts +44 -0
  82. package/dist/components/Form/Form.svelte +281 -0
  83. package/dist/components/Form/Form.svelte.d.ts +54 -0
  84. package/dist/components/Form/FormField.svelte +218 -0
  85. package/dist/components/Form/FormField.svelte.d.ts +47 -0
  86. package/dist/components/Form/Input.svelte +340 -0
  87. package/dist/components/Form/Input.svelte.d.ts +79 -0
  88. package/dist/components/Form/InputSwitch.svelte +189 -0
  89. package/dist/components/Form/InputSwitch.svelte.d.ts +46 -0
  90. package/dist/components/Form/InvalidState.svelte +97 -0
  91. package/dist/components/Form/InvalidState.svelte.d.ts +37 -0
  92. package/dist/components/Form/Knob.svelte +537 -0
  93. package/dist/components/Form/Knob.svelte.d.ts +78 -0
  94. package/dist/components/Form/ListInput.svelte +469 -0
  95. package/dist/components/Form/ListInput.svelte.d.ts +70 -0
  96. package/dist/components/Form/Listbox.svelte +513 -0
  97. package/dist/components/Form/Listbox.svelte.d.ts +74 -0
  98. package/dist/components/Form/NumberInput.svelte +452 -0
  99. package/dist/components/Form/NumberInput.svelte.d.ts +82 -0
  100. package/dist/components/Form/Radio.svelte +192 -0
  101. package/dist/components/Form/Radio.svelte.d.ts +53 -0
  102. package/dist/components/Form/RadioGroup.svelte +155 -0
  103. package/dist/components/Form/RadioGroup.svelte.d.ts +48 -0
  104. package/dist/components/Form/Rating.svelte +380 -0
  105. package/dist/components/Form/Rating.svelte.d.ts +64 -0
  106. package/dist/components/Form/Select.svelte +436 -0
  107. package/dist/components/Form/Select.svelte.d.ts +49 -0
  108. package/dist/components/Form/SelectGroup.svelte +34 -0
  109. package/dist/components/Form/SelectGroup.svelte.d.ts +33 -0
  110. package/dist/components/Form/Slider.svelte +622 -0
  111. package/dist/components/Form/Slider.svelte.d.ts +73 -0
  112. package/dist/components/Form/Switch.svelte +192 -0
  113. package/dist/components/Form/Switch.svelte.d.ts +46 -0
  114. package/dist/components/Form/TextInput.svelte +274 -0
  115. package/dist/components/Form/TextInput.svelte.d.ts +74 -0
  116. package/dist/components/Form/Textarea.svelte +207 -0
  117. package/dist/components/Form/Textarea.svelte.d.ts +62 -0
  118. package/dist/components/Icon/Icon.svelte +140 -0
  119. package/dist/components/Icon/Icon.svelte.d.ts +25 -0
  120. package/dist/components/Icon/index.d.ts +1 -0
  121. package/dist/components/Icon/index.js +1 -0
  122. package/dist/components/Lazy/Lazy.svelte +158 -0
  123. package/dist/components/Lazy/Lazy.svelte.d.ts +42 -0
  124. package/dist/components/Masonry/Masonry.svelte +299 -0
  125. package/dist/components/Masonry/Masonry.svelte.d.ts +55 -0
  126. package/dist/components/Menu/Menu/Menu.svelte +65 -0
  127. package/dist/components/Menu/Menu/Menu.svelte.d.ts +17 -0
  128. package/dist/components/Menu/Menu/MenuItem.svelte +90 -0
  129. package/dist/components/Menu/Menu/MenuItem.svelte.d.ts +27 -0
  130. package/dist/components/Modal/Modal.svelte +334 -0
  131. package/dist/components/Modal/Modal.svelte.d.ts +55 -0
  132. package/dist/components/Panel/Card.svelte +141 -0
  133. package/dist/components/Panel/Card.svelte.d.ts +52 -0
  134. package/dist/components/Panel/Hero/Hero.story.md +9 -0
  135. package/dist/components/Panel/Hero/Hero.story.svelte +49 -0
  136. package/dist/components/Panel/Hero/Hero.story.svelte.d.ts +21 -0
  137. package/dist/components/Panel/Hero/Hero.svelte +24 -0
  138. package/dist/components/Panel/Hero/Hero.svelte.d.ts +32 -0
  139. package/dist/components/Panel/LazyPanel.svelte +110 -0
  140. package/dist/components/Panel/LazyPanel.svelte.d.ts +46 -0
  141. package/dist/components/Panel/Panel.svelte +205 -0
  142. package/dist/components/Panel/Panel.svelte.d.ts +23 -0
  143. package/dist/components/Progress/Progress.svelte +220 -0
  144. package/dist/components/Progress/Progress.svelte.d.ts +61 -0
  145. package/dist/components/Separator/Separator.svelte +109 -0
  146. package/dist/components/Separator/Separator.svelte.d.ts +35 -0
  147. package/dist/components/Sidebar/Sidebar.svelte +213 -0
  148. package/dist/components/Sidebar/Sidebar.svelte.d.ts +60 -0
  149. package/dist/components/Skeleton/Skeleton.svelte +170 -0
  150. package/dist/components/Skeleton/Skeleton.svelte.d.ts +48 -0
  151. package/dist/components/Stepper/Stepper.svelte +111 -0
  152. package/dist/components/Stepper/Stepper.svelte.d.ts +54 -0
  153. package/dist/components/Stepper/StepperStep.svelte +369 -0
  154. package/dist/components/Stepper/StepperStep.svelte.d.ts +63 -0
  155. package/dist/components/Table/Table.svelte +167 -0
  156. package/dist/components/Table/Table.svelte.d.ts +56 -0
  157. package/dist/components/Table/TableBody.svelte +41 -0
  158. package/dist/components/Table/TableBody.svelte.d.ts +33 -0
  159. package/dist/components/Table/TableCell.svelte +76 -0
  160. package/dist/components/Table/TableCell.svelte.d.ts +36 -0
  161. package/dist/components/Table/TableHead.svelte +41 -0
  162. package/dist/components/Table/TableHead.svelte.d.ts +32 -0
  163. package/dist/components/Table/TableHeader.svelte +148 -0
  164. package/dist/components/Table/TableHeader.svelte.d.ts +42 -0
  165. package/dist/components/Table/TableRow.svelte +99 -0
  166. package/dist/components/Table/TableRow.svelte.d.ts +40 -0
  167. package/dist/components/Tabs/Tab.svelte +145 -0
  168. package/dist/components/Tabs/Tab.svelte.d.ts +36 -0
  169. package/dist/components/Tabs/TabList.svelte +60 -0
  170. package/dist/components/Tabs/TabList.svelte.d.ts +32 -0
  171. package/dist/components/Tabs/TabPanel.svelte +118 -0
  172. package/dist/components/Tabs/TabPanel.svelte.d.ts +38 -0
  173. package/dist/components/Tabs/Tabs.svelte +287 -0
  174. package/dist/components/Tabs/Tabs.svelte.d.ts +50 -0
  175. package/dist/components/Tag/Tag.svelte +260 -0
  176. package/dist/components/Tag/Tag.svelte.d.ts +54 -0
  177. package/dist/components/Tag/TagGroup.svelte +147 -0
  178. package/dist/components/Tag/TagGroup.svelte.d.ts +62 -0
  179. package/dist/components/ThemeToggle/ThemeToggle.svelte +93 -0
  180. package/dist/components/ThemeToggle/ThemeToggle.svelte.d.ts +12 -0
  181. package/dist/components/Timeline/Timeline.svelte +144 -0
  182. package/dist/components/Timeline/Timeline.svelte.d.ts +48 -0
  183. package/dist/components/Timeline/TimelineItem.svelte +391 -0
  184. package/dist/components/Timeline/TimelineItem.svelte.d.ts +63 -0
  185. package/dist/components/Toast/Toast.svelte +313 -0
  186. package/dist/components/Toast/Toast.svelte.d.ts +44 -0
  187. package/dist/components/Toast/toastStore.d.ts +40 -0
  188. package/dist/components/Toast/toastStore.js +293 -0
  189. package/dist/components/Tooltip/Tooltip.svelte +282 -0
  190. package/dist/components/Tooltip/Tooltip.svelte.d.ts +55 -0
  191. package/dist/components/Tree/Tree.svelte +129 -0
  192. package/dist/components/Tree/Tree.svelte.d.ts +61 -0
  193. package/dist/components/Tree/TreeNode.svelte +332 -0
  194. package/dist/components/Tree/TreeNode.svelte.d.ts +55 -0
  195. package/dist/components/icons/TwintrinsicLogo.svelte +73 -0
  196. package/dist/components/icons/TwintrinsicLogo.svelte.d.ts +17 -0
  197. package/dist/components/icons/twintrinsic-source.svg +73 -0
  198. package/dist/components/icons/twintrinsic.svg +38 -0
  199. package/dist/docs/EventsTable.svelte +86 -0
  200. package/dist/docs/EventsTable.svelte.d.ts +27 -0
  201. package/dist/docs/PropsTable.svelte +103 -0
  202. package/dist/docs/PropsTable.svelte.d.ts +28 -0
  203. package/dist/docs/index.d.ts +2 -0
  204. package/dist/docs/index.js +2 -0
  205. package/dist/helpers/detectLanguage.d.ts +6 -0
  206. package/dist/helpers/detectLanguage.js +60 -0
  207. package/dist/helpers/index.d.ts +1 -0
  208. package/dist/helpers/index.js +1 -0
  209. package/dist/index.d.ts +86 -0
  210. package/dist/index.js +94 -0
  211. package/dist/twintrinsic.css +347 -0
  212. package/package.json +98 -0
@@ -0,0 +1,347 @@
1
+ @import "tailwindcss";
2
+ @plugin "@tailwindcss/forms";
3
+ @plugin "@tailwindcss/typography";
4
+
5
+ @custom-variant dark (&:where([data-theme="dark"], [data-theme="dark"] *));
6
+
7
+ /* Ensure light mode colors are applied by default */
8
+ :root {
9
+ /* Base Colors (Light Mode) */
10
+ /* Primary (Purple) */
11
+ --color-primary-50: #f5f3ff;
12
+ --color-primary-100: #ede9fe;
13
+ --color-primary-200: #ddd6fe;
14
+ --color-primary-300: #c4b5fd;
15
+ --color-primary-400: #a78bfa;
16
+ --color-primary-500: #8b5cf6;
17
+ --color-primary-600: #7c3aed;
18
+ --color-primary-700: #6d28d9;
19
+ --color-primary-800: #5b21b6;
20
+ --color-primary-900: #4c1d95;
21
+
22
+ /* Secondary (Indigo) */
23
+ --color-secondary-50: #eef2ff;
24
+ --color-secondary-100: #e0e7ff;
25
+ --color-secondary-200: #c7d2fe;
26
+ --color-secondary-300: #a5b4fc;
27
+ --color-secondary-400: #818cf8;
28
+ --color-secondary-500: #6366f1;
29
+ --color-secondary-600: #4f46e5;
30
+ --color-secondary-700: #4338ca;
31
+ --color-secondary-800: #3730a3;
32
+ --color-secondary-900: #312e81;
33
+
34
+ /* Success (Green) */
35
+ --color-success-50: #f0fdf4;
36
+ --color-success-100: #dcfce7;
37
+ --color-success-200: #bbf7d0;
38
+ --color-success-300: #86efac;
39
+ --color-success-400: #4ade80;
40
+ --color-success-500: #22c55e;
41
+ --color-success-600: #16a34a;
42
+ --color-success-700: #15803d;
43
+ --color-success-800: #166534;
44
+ --color-success-900: #14532d;
45
+
46
+ /* Warning (Amber) */
47
+ --color-warning-50: #fffbeb;
48
+ --color-warning-100: #fef3c7;
49
+ --color-warning-200: #fde68a;
50
+ --color-warning-300: #fcd34d;
51
+ --color-warning-400: #fbbf24;
52
+ --color-warning-500: #f59e0b;
53
+ --color-warning-600: #d97706;
54
+ --color-warning-700: #b45309;
55
+ --color-warning-800: #92400e;
56
+ --color-warning-900: #78350f;
57
+
58
+ /* Error (Red) */
59
+ --color-error-50: #fef2f2;
60
+ --color-error-100: #fee2e2;
61
+ --color-error-200: #fecaca;
62
+ --color-error-300: #fca5a5;
63
+ --color-error-400: #f87171;
64
+ --color-error-500: #ef4444;
65
+ --color-error-600: #dc2626;
66
+ --color-error-700: #b91c1c;
67
+ --color-error-800: #991b1b;
68
+ --color-error-900: #7f1d1d;
69
+
70
+ /* Info (Blue) */
71
+ --color-info-50: #eff6ff;
72
+ --color-info-100: #dbeafe;
73
+ --color-info-200: #bfdbfe;
74
+ --color-info-300: #93c5fd;
75
+ --color-info-400: #60a5fa;
76
+ --color-info-500: #3b82f6;
77
+ --color-info-600: #2563eb;
78
+ --color-info-700: #1d4ed8;
79
+ --color-info-800: #1e40af;
80
+ --color-info-900: #1e3a8a;
81
+
82
+ --color-background: #ffffff;
83
+ --color-surface: #f8fafc;
84
+ --color-text: #1e293b;
85
+ --color-muted: #64748b;
86
+ --color-border: #e2e8f0;
87
+ --color-shadow: rgba(0, 0, 0, 0.1);
88
+
89
+ /* Semantic Colors */
90
+ --color-primary: var(--color-primary-500);
91
+ --color-primary-bg: var(--color-primary-50);
92
+ --color-primary-hover: var(--color-primary-600);
93
+ --color-primary-text: #ffffff;
94
+ --color-primary-bold: var(--color-primary-700);
95
+
96
+ --color-secondary: var(--color-secondary-500);
97
+ --color-secondary-bg: var(--color-secondary-50);
98
+ --color-secondary-hover: var(--color-secondary-600);
99
+ --color-secondary-text: #ffffff;
100
+ --color-secondary-bold: var(--color-secondary-700);
101
+
102
+ --color-success: var(--color-success-500);
103
+ --color-success-bg: var(--color-success-50);
104
+ --color-success-hover: var(--color-success-600);
105
+ --color-success-text: var(--color-success-800);
106
+ --color-success-bold: var(--color-success-700);
107
+
108
+ --color-warning: var(--color-warning-500);
109
+ --color-warning-bg: var(--color-warning-50);
110
+ --color-warning-hover: var(--color-warning-600);
111
+ --color-warning-text: var(--color-warning-800);
112
+ --color-warning-bold: var(--color-warning-700);
113
+
114
+ --color-error: var(--color-error-500);
115
+ --color-error-bg: var(--color-error-50);
116
+ --color-error-hover: var(--color-error-600);
117
+ --color-error-text: var(--color-error-800);
118
+ --color-error-bold: var(--color-error-700);
119
+
120
+ --color-info: var(--color-info-500);
121
+ --color-info-bg: var(--color-info-50);
122
+ --color-info-hover: var(--color-info-600);
123
+ --color-info-text: var(--color-info-800);
124
+ --color-info-bold: var(--color-info-700);
125
+
126
+ /* Interactive States */
127
+ --color-hover: #f8f7ff;
128
+ --color-focus-ring: var(--color-primary-300);
129
+ }
130
+
131
+ @theme {
132
+ /* Base Colors (Light Mode) */
133
+ /* Primary (Purple) */
134
+ --color-primary-50: #f5f3ff;
135
+ --color-primary-100: #ede9fe;
136
+ --color-primary-200: #ddd6fe;
137
+ --color-primary-300: #c4b5fd;
138
+ --color-primary-400: #a78bfa;
139
+ --color-primary-500: #8b5cf6;
140
+ --color-primary-600: #7c3aed;
141
+ --color-primary-700: #6d28d9;
142
+ --color-primary-800: #5b21b6;
143
+ --color-primary-900: #4c1d95;
144
+
145
+ /* Secondary (Indigo) */
146
+ --color-secondary-50: #eef2ff;
147
+ --color-secondary-100: #e0e7ff;
148
+ --color-secondary-200: #c7d2fe;
149
+ --color-secondary-300: #a5b4fc;
150
+ --color-secondary-400: #818cf8;
151
+ --color-secondary-500: #6366f1;
152
+ --color-secondary-600: #4f46e5;
153
+ --color-secondary-700: #4338ca;
154
+ --color-secondary-800: #3730a3;
155
+ --color-secondary-900: #312e81;
156
+
157
+ /* Success (Green) */
158
+ --color-success-50: #f0fdf4;
159
+ --color-success-100: #dcfce7;
160
+ --color-success-200: #bbf7d0;
161
+ --color-success-300: #86efac;
162
+ --color-success-400: #4ade80;
163
+ --color-success-500: #22c55e;
164
+ --color-success-600: #16a34a;
165
+ --color-success-700: #15803d;
166
+ --color-success-800: #166534;
167
+ --color-success-900: #14532d;
168
+
169
+ /* Warning (Amber) */
170
+ --color-warning-50: #fffbeb;
171
+ --color-warning-100: #fef3c7;
172
+ --color-warning-200: #fde68a;
173
+ --color-warning-300: #fcd34d;
174
+ --color-warning-400: #fbbf24;
175
+ --color-warning-500: #f59e0b;
176
+ --color-warning-600: #d97706;
177
+ --color-warning-700: #b45309;
178
+ --color-warning-800: #92400e;
179
+ --color-warning-900: #78350f;
180
+
181
+ /* Error (Red) */
182
+ --color-error-50: #fef2f2;
183
+ --color-error-100: #fee2e2;
184
+ --color-error-200: #fecaca;
185
+ --color-error-300: #fca5a5;
186
+ --color-error-400: #f87171;
187
+ --color-error-500: #ef4444;
188
+ --color-error-600: #dc2626;
189
+ --color-error-700: #b91c1c;
190
+ --color-error-800: #991b1b;
191
+ --color-error-900: #7f1d1d;
192
+
193
+ /* Info (Blue) */
194
+ --color-info-50: #eff6ff;
195
+ --color-info-100: #dbeafe;
196
+ --color-info-200: #bfdbfe;
197
+ --color-info-300: #93c5fd;
198
+ --color-info-400: #60a5fa;
199
+ --color-info-500: #3b82f6;
200
+ --color-info-600: #2563eb;
201
+ --color-info-700: #1d4ed8;
202
+ --color-info-800: #1e40af;
203
+ --color-info-900: #1e3a8a;
204
+
205
+ --color-background: #ffffff;
206
+ --color-surface: #f8fafc;
207
+ --color-text: #1e293b;
208
+ --color-muted: #64748b;
209
+ --color-border: #e2e8f0;
210
+ --color-shadow: rgba(0, 0, 0, 0.1);
211
+
212
+ /* Semantic Colors */
213
+ --color-primary: var(--color-primary-500);
214
+ --color-primary-bg: var(--color-primary-50);
215
+ --color-primary-hover: var(--color-primary-600);
216
+ --color-primary-text: #ffffff;
217
+ --color-primary-bold: var(--color-primary-700);
218
+
219
+ --color-secondary: var(--color-secondary-500);
220
+ --color-secondary-bg: var(--color-secondary-50);
221
+ --color-secondary-hover: var(--color-secondary-600);
222
+ --color-secondary-text: #ffffff; /* #166534 */
223
+ --color-secondary-bold: var(--color-secondary-700);
224
+
225
+ --color-success: var(--color-success-500);
226
+ --color-success-bg: var(--color-success-50);
227
+ --color-success-hover: var(--color-success-600);
228
+ --color-success-text: var(--color-success-800);
229
+ --color-success-bold: var(--color-success-700);
230
+
231
+ --color-warning: var(--color-warning-500);
232
+ --color-warning-bg: var(--color-warning-50);
233
+ --color-warning-hover: var(--color-warning-600);
234
+ --color-warning-text: var(--color-warning-800);
235
+ --color-warning-bold: var(--color-warning-700);
236
+
237
+ --color-error: var(--color-error-500);
238
+ --color-error-bg: var(--color-error-50);
239
+ --color-error-hover: var(--color-error-600);
240
+ --color-error-text: var(--color-error-800);
241
+ --color-error-bold: var(--color-error-700);
242
+
243
+ --color-info: var(--color-info-500);
244
+ --color-info-bg: var(--color-info-50);
245
+ --color-info-hover: var(--color-info-600);
246
+ --color-info-text: var(--color-info-800);
247
+ --color-info-bold: var(--color-info-700);
248
+
249
+ /* Interactive States */
250
+ --color-hover: #f8f7ff;
251
+ --color-focus-ring: var(--color-primary-300);
252
+ }
253
+
254
+ /* Dark mode overrides */
255
+ :root.dark,
256
+ [data-theme="dark"] {
257
+ /* Primary (Purple) - Dark Mode */
258
+ --color-primary-50: #2d2b55;
259
+ --color-primary-100: #393679;
260
+ --color-primary-200: #44408c;
261
+ --color-primary-300: #5b54bc;
262
+ --color-primary-400: #6e66d9;
263
+ --color-primary-500: #8b5cf6;
264
+ --color-primary-600: #9f75ff;
265
+ --color-primary-700: #b18aff;
266
+ --color-primary-800: #c3a0ff;
267
+ --color-primary-900: #d4b6ff;
268
+
269
+ /* Secondary (Indigo) - Dark Mode */
270
+ --color-secondary-50: #2a2954;
271
+ --color-secondary-100: #343275;
272
+ --color-secondary-200: #3e3b8f;
273
+ --color-secondary-300: #5149b9;
274
+ --color-secondary-400: #625ad7;
275
+ --color-secondary-500: #6366f1;
276
+ --color-secondary-600: #7f7cf4;
277
+ --color-secondary-700: #9895f6;
278
+ --color-secondary-800: #b2b0f8;
279
+ --color-secondary-900: #cdccfa;
280
+
281
+ /* Success (Green) - Dark Mode */
282
+ --color-success-50: #052e16;
283
+ --color-success-100: #073f21;
284
+ --color-success-200: #0a5129;
285
+ --color-success-300: #0d6336;
286
+ --color-success-400: #047857;
287
+ --color-success-500: #059669;
288
+ --color-success-600: #10b981;
289
+ --color-success-700: #34d399;
290
+ --color-success-800: #6ee7b7;
291
+ --color-success-900: #a7f3d0;
292
+
293
+ /* Warning (Amber) - Dark Mode */
294
+ --color-warning-50: #422006;
295
+ --color-warning-100: #583004;
296
+ --color-warning-200: #7c4a08;
297
+ --color-warning-300: #92570a;
298
+ --color-warning-400: #b45309;
299
+ --color-warning-500: #d97706;
300
+ --color-warning-600: #f59e0b;
301
+ --color-warning-700: #fbbf24;
302
+ --color-warning-800: #fcd34d;
303
+ --color-warning-900: #fde68a;
304
+
305
+ /* Error (Red) - Dark Mode */
306
+ --color-error-50: #450a0a;
307
+ --color-error-100: #5f0f0f;
308
+ --color-error-200: #7f1d1d;
309
+ --color-error-300: #991b1b;
310
+ --color-error-400: #b91c1c;
311
+ --color-error-500: #dc2626;
312
+ --color-error-600: #ef4444;
313
+ --color-error-700: #f87171;
314
+ --color-error-800: #fca5a5;
315
+ --color-error-900: #fee2e2;
316
+
317
+ /* Info (Blue) - Dark Mode */
318
+ --color-info-50: #0c2447;
319
+ --color-info-100: #0f2e5e;
320
+ --color-info-200: #1e3a8a;
321
+ --color-info-300: #1e40af;
322
+ --color-info-400: #1d4ed8;
323
+ --color-info-500: #2563eb;
324
+ --color-info-600: #3b82f6;
325
+ --color-info-700: #60a5fa;
326
+ --color-info-800: #93c5fd;
327
+ --color-info-900: #dbeafe;
328
+
329
+ --color-background: #0f172a;
330
+ --color-surface: #1e293b;
331
+ --color-text: #f1f5f9;
332
+ --color-muted: #94a3b8;
333
+ --color-border: #334155;
334
+ --color-shadow: rgba(0, 0, 0, 0.25);
335
+
336
+ /* Semantic Colors - Dark Mode */
337
+ --color-primary-text: #ffffff;
338
+ --color-secondary-text: #ffffff;
339
+ --color-success-text: var(--color-success-200);
340
+ --color-warning-text: var(--color-warning-200);
341
+ --color-error-text: var(--color-error-200);
342
+ --color-info-text: var(--color-info-200);
343
+
344
+ /* Interactive States */
345
+ --color-hover: #1e1b4b;
346
+ --color-focus-ring: var(--color-primary-400);
347
+ }
package/package.json ADDED
@@ -0,0 +1,98 @@
1
+ {
2
+ "name": "twintrinsic",
3
+ "version": "0.0.1",
4
+ "license": "MIT",
5
+ "scripts": {
6
+ "dev": "vite dev",
7
+ "build": "vite build",
8
+ "preview": "vite preview",
9
+ "prepare": "svelte-kit sync || echo ''",
10
+ "prepack": "svelte-kit sync && svelte-package && publint",
11
+ "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
12
+ "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
13
+ "format": "biome format --write .",
14
+ "lint": "biome lint .",
15
+ "test:e2e": "playwright test",
16
+ "test:unit": "vitest run",
17
+ "test": "pnpm run test:e2e && pnpm run test:unit",
18
+ "storybook": "storybook dev -p 6006",
19
+ "build-storybook": "storybook build"
20
+ },
21
+ "files": [
22
+ "dist",
23
+ "!dist/**/*.test.*",
24
+ "!dist/**/*.spec.*"
25
+ ],
26
+ "sideEffects": [
27
+ "**/*.css"
28
+ ],
29
+ "svelte": "./dist/index.js",
30
+ "types": "./dist/index.d.ts",
31
+ "type": "module",
32
+ "exports": {
33
+ ".": {
34
+ "types": "./dist/index.d.ts",
35
+ "svelte": "./dist/index.js"
36
+ }
37
+ },
38
+ "peerDependencies": {
39
+ "svelte": "^5.0.0"
40
+ },
41
+ "devDependencies": {
42
+ "@biomejs/biome": "2.3.11",
43
+ "@chromatic-com/storybook": "^5.0.0",
44
+ "@playwright/test": "^1.57.0",
45
+ "@storybook/addon-docs": "^10.1.11",
46
+ "@storybook/addon-svelte-csf": "^5.0.10",
47
+ "@storybook/svelte": "^10.1.11",
48
+ "@storybook/sveltekit": "^10.1.11",
49
+ "@sveltejs/adapter-netlify": "^5.2.4",
50
+ "@sveltejs/adapter-vercel": "^6.3.0",
51
+ "@sveltejs/kit": "^2.50.0",
52
+ "@sveltejs/package": "^2.5.7",
53
+ "@sveltejs/vite-plugin-svelte": "^6.2.4",
54
+ "@tailwindcss/forms": "^0.5.11",
55
+ "@tailwindcss/typography": "^0.5.19",
56
+ "@tailwindcss/vite": "^4.1.18",
57
+ "@testing-library/svelte": "^5.3.1",
58
+ "@testing-library/user-event": "^14.6.1",
59
+ "@vitest/browser": "^4.0.17",
60
+ "@vitest/coverage-v8": "^4.0.17",
61
+ "globals": "^17.0.0",
62
+ "jsdom": "^27.4.0",
63
+ "playwright": "^1.57.0",
64
+ "publint": "^0.3.16",
65
+ "storybook": "^10.1.11",
66
+ "svelte": "^5.46.4",
67
+ "svelte-check": "^4.3.5",
68
+ "tailwindcss": "^4.1.18",
69
+ "typescript": "^5.9.3",
70
+ "vite": "^7.3.1",
71
+ "vitest": "^4.0.17"
72
+ },
73
+ "keywords": [
74
+ "svelte"
75
+ ],
76
+ "dependencies": {
77
+ "@codemirror/lang-cpp": "^6.0.3",
78
+ "@codemirror/lang-css": "^6.3.1",
79
+ "@codemirror/lang-go": "^6.0.1",
80
+ "@codemirror/lang-html": "^6.4.11",
81
+ "@codemirror/lang-java": "^6.0.2",
82
+ "@codemirror/lang-javascript": "^6.2.4",
83
+ "@codemirror/lang-json": "^6.0.2",
84
+ "@codemirror/lang-markdown": "^6.5.0",
85
+ "@codemirror/lang-php": "^6.0.2",
86
+ "@codemirror/lang-python": "^6.2.1",
87
+ "@codemirror/lang-rust": "^6.0.2",
88
+ "@codemirror/lang-sql": "^6.10.0",
89
+ "@codemirror/lang-xml": "^6.1.0",
90
+ "@codemirror/state": "^6.5.4",
91
+ "@codemirror/view": "^6.39.11",
92
+ "@inlang/paraglide-js": "^2.9.0",
93
+ "@speed-highlight/core": "^1.2.14",
94
+ "prism-svelte": "^0.5.0",
95
+ "prismjs": "^1.30.0",
96
+ "prismjs-themes": "^2.0.0"
97
+ }
98
+ }