@orioncactuscorp/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.
Files changed (454) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +273 -0
  3. package/dist/components/Accordion/Accordion.css +1 -0
  4. package/dist/components/Accordion/Accordion.js +320 -0
  5. package/dist/components/Accordion/Accordion.module.scss.js +31 -0
  6. package/dist/components/Accordion.d.ts +6 -0
  7. package/dist/components/Accordion.js +9 -0
  8. package/dist/components/ActionArea/ActionArea.css +1 -0
  9. package/dist/components/ActionArea/ActionArea.js +158 -0
  10. package/dist/components/ActionArea/ActionArea.module.scss.js +9 -0
  11. package/dist/components/ActionArea.d.ts +6 -0
  12. package/dist/components/ActionArea.js +6 -0
  13. package/dist/components/Alert/Alert.css +1 -0
  14. package/dist/components/Alert/Alert.js +293 -0
  15. package/dist/components/Alert/Alert.module.scss.js +21 -0
  16. package/dist/components/Alert.d.ts +6 -0
  17. package/dist/components/Alert.js +10 -0
  18. package/dist/components/Background/Background.css +1 -0
  19. package/dist/components/Background/Background.js +45 -0
  20. package/dist/components/Background/Background.module.scss.js +21 -0
  21. package/dist/components/Background.d.ts +6 -0
  22. package/dist/components/Background.js +4 -0
  23. package/dist/components/BackgroundIconButton/BackgroundIconButton.css +1 -0
  24. package/dist/components/BackgroundIconButton/BackgroundIconButton.js +61 -0
  25. package/dist/components/BackgroundIconButton/BackgroundIconButton.module.scss.js +13 -0
  26. package/dist/components/BackgroundIconButton.d.ts +6 -0
  27. package/dist/components/BackgroundIconButton.js +4 -0
  28. package/dist/components/Badge/Badge.css +1 -0
  29. package/dist/components/Badge/Badge.js +34 -0
  30. package/dist/components/Badge/Badge.module.scss.js +17 -0
  31. package/dist/components/Badge.d.ts +6 -0
  32. package/dist/components/Badge.js +4 -0
  33. package/dist/components/Button/Button.css +1 -0
  34. package/dist/components/Button/Button.js +151 -0
  35. package/dist/components/Button/Button.module.scss.js +29 -0
  36. package/dist/components/Button.d.ts +6 -0
  37. package/dist/components/Button.js +4 -0
  38. package/dist/components/Cell/Cell.css +1 -0
  39. package/dist/components/Cell/Cell.js +129 -0
  40. package/dist/components/Cell/Cell.module.scss.js +17 -0
  41. package/dist/components/Cell.d.ts +6 -0
  42. package/dist/components/Cell.js +5 -0
  43. package/dist/components/CheckMark/CheckMark.css +1 -0
  44. package/dist/components/CheckMark/CheckMark.js +44 -0
  45. package/dist/components/CheckMark/CheckMark.module.scss.js +7 -0
  46. package/dist/components/CheckMark.d.ts +6 -0
  47. package/dist/components/CheckMark.js +4 -0
  48. package/dist/components/Checkbox/Checkbox.css +1 -0
  49. package/dist/components/Checkbox/Checkbox.js +82 -0
  50. package/dist/components/Checkbox/Checkbox.module.scss.js +11 -0
  51. package/dist/components/Checkbox.d.ts +6 -0
  52. package/dist/components/Checkbox.js +4 -0
  53. package/dist/components/Divider/Divider.css +1 -0
  54. package/dist/components/Divider/Divider.js +41 -0
  55. package/dist/components/Divider/Divider.module.scss.js +17 -0
  56. package/dist/components/Divider.d.ts +6 -0
  57. package/dist/components/Divider.js +4 -0
  58. package/dist/components/Field/Field.css +1 -0
  59. package/dist/components/Field/Field.js +179 -0
  60. package/dist/components/Field/Field.module.scss.js +17 -0
  61. package/dist/components/Field/useFieldControlOverlayMetrics.js +44 -0
  62. package/dist/components/Field.d.ts +6 -0
  63. package/dist/components/Field.js +10 -0
  64. package/dist/components/Fieldset/Fieldset.css +1 -0
  65. package/dist/components/Fieldset/Fieldset.js +97 -0
  66. package/dist/components/Fieldset/Fieldset.module.scss.js +11 -0
  67. package/dist/components/Fieldset.d.ts +6 -0
  68. package/dist/components/Fieldset.js +8 -0
  69. package/dist/components/IconButton/IconButton.css +1 -0
  70. package/dist/components/IconButton/IconButton.js +49 -0
  71. package/dist/components/IconButton/IconButton.module.scss.js +11 -0
  72. package/dist/components/IconButton.d.ts +6 -0
  73. package/dist/components/IconButton.js +4 -0
  74. package/dist/components/Interaction/Interaction.css +1 -0
  75. package/dist/components/Interaction/Interaction.js +23 -0
  76. package/dist/components/Interaction/Interaction.module.scss.js +11 -0
  77. package/dist/components/Interaction.d.ts +6 -0
  78. package/dist/components/Interaction.js +4 -0
  79. package/dist/components/Loading/Loading.css +1 -0
  80. package/dist/components/Loading/Loading.js +47 -0
  81. package/dist/components/Loading/Loading.module.scss.js +21 -0
  82. package/dist/components/Loading.d.ts +6 -0
  83. package/dist/components/Loading.js +4 -0
  84. package/dist/components/Menu/Menu.css +1 -0
  85. package/dist/components/Menu/Menu.js +238 -0
  86. package/dist/components/Menu/Menu.module.scss.js +31 -0
  87. package/dist/components/Menu.d.ts +6 -0
  88. package/dist/components/Menu.js +9 -0
  89. package/dist/components/Modal/Modal.css +1 -0
  90. package/dist/components/Modal/Modal.js +628 -0
  91. package/dist/components/Modal/Modal.module.scss.js +48 -0
  92. package/dist/components/Modal/contexts.js +14 -0
  93. package/dist/components/Modal/modalScrollArbitration.js +134 -0
  94. package/dist/components/Modal/snapPoints.js +79 -0
  95. package/dist/components/Modal/useControllableState.js +17 -0
  96. package/dist/components/Modal/useElementSize.js +23 -0
  97. package/dist/components/Modal/useModalDrag.js +1498 -0
  98. package/dist/components/Modal/useModalPlacement.js +26 -0
  99. package/dist/components/Modal/useModalStackDepth.js +41 -0
  100. package/dist/components/Modal.d.ts +6 -0
  101. package/dist/components/Modal.js +11 -0
  102. package/dist/components/Radio/Radio.css +1 -0
  103. package/dist/components/Radio/Radio.js +68 -0
  104. package/dist/components/Radio/Radio.module.scss.js +11 -0
  105. package/dist/components/Radio.d.ts +6 -0
  106. package/dist/components/Radio.js +4 -0
  107. package/dist/components/ScrollArea/ScrollArea.css +1 -0
  108. package/dist/components/ScrollArea/ScrollArea.js +541 -0
  109. package/dist/components/ScrollArea/ScrollArea.module.scss.js +17 -0
  110. package/dist/components/ScrollArea/contexts.js +7 -0
  111. package/dist/components/ScrollArea.d.ts +6 -0
  112. package/dist/components/ScrollArea.js +8 -0
  113. package/dist/components/SectionHeader/SectionHeader.css +1 -0
  114. package/dist/components/SectionHeader/SectionHeader.js +48 -0
  115. package/dist/components/SectionHeader/SectionHeader.module.scss.js +7 -0
  116. package/dist/components/SectionHeader.d.ts +6 -0
  117. package/dist/components/SectionHeader.js +4 -0
  118. package/dist/components/Select/Select.css +1 -0
  119. package/dist/components/Select/Select.js +67 -0
  120. package/dist/components/Select/Select.module.scss.js +9 -0
  121. package/dist/components/Select/SelectContent.css +1 -0
  122. package/dist/components/Select/SelectContent.js +26 -0
  123. package/dist/components/Select/SelectContent.module.scss.js +15 -0
  124. package/dist/components/Select.d.ts +6 -0
  125. package/dist/components/Select.js +6 -0
  126. package/dist/components/SvgIcon.d.ts +6 -0
  127. package/dist/components/SvgIcon.js +4 -0
  128. package/dist/components/Switch/Switch.css +1 -0
  129. package/dist/components/Switch/Switch.js +46 -0
  130. package/dist/components/Switch/Switch.module.scss.js +8 -0
  131. package/dist/components/Switch.d.ts +6 -0
  132. package/dist/components/Switch.js +4 -0
  133. package/dist/components/TextArea/TextArea.css +1 -0
  134. package/dist/components/TextArea/TextArea.js +105 -0
  135. package/dist/components/TextArea/TextArea.module.scss.js +9 -0
  136. package/dist/components/TextArea/TextAreaContent.css +1 -0
  137. package/dist/components/TextArea/TextAreaContent.js +26 -0
  138. package/dist/components/TextArea/TextAreaContent.module.scss.js +15 -0
  139. package/dist/components/TextArea.d.ts +6 -0
  140. package/dist/components/TextArea.js +6 -0
  141. package/dist/components/TextButton/TextButton.css +1 -0
  142. package/dist/components/TextButton/TextButton.js +74 -0
  143. package/dist/components/TextButton/TextButton.module.scss.js +15 -0
  144. package/dist/components/TextButton.d.ts +6 -0
  145. package/dist/components/TextButton.js +4 -0
  146. package/dist/components/TextInput/TextInput.css +1 -0
  147. package/dist/components/TextInput/TextInput.js +69 -0
  148. package/dist/components/TextInput/TextInput.module.scss.js +9 -0
  149. package/dist/components/TextInput/TextInputContent.css +1 -0
  150. package/dist/components/TextInput/TextInputContent.js +26 -0
  151. package/dist/components/TextInput/TextInputContent.module.scss.js +15 -0
  152. package/dist/components/TextInput.d.ts +6 -0
  153. package/dist/components/TextInput.js +6 -0
  154. package/dist/components/Tooltip/Tooltip.css +1 -0
  155. package/dist/components/Tooltip/Tooltip.js +123 -0
  156. package/dist/components/Tooltip/Tooltip.module.scss.js +9 -0
  157. package/dist/components/Tooltip.d.ts +6 -0
  158. package/dist/components/Tooltip.js +8 -0
  159. package/dist/components/internal/slot.js +10 -0
  160. package/dist/foundations/atomic.css +1 -0
  161. package/dist/foundations/breakpoint.css +1 -0
  162. package/dist/foundations/color.global.css +1 -0
  163. package/dist/foundations/color.theme.dark.css +1 -0
  164. package/dist/foundations/color.theme.light.css +1 -0
  165. package/dist/foundations/motion.css +1 -0
  166. package/dist/foundations/reset.css +1 -0
  167. package/dist/foundations/space.css +1 -0
  168. package/dist/foundations/typo.css +1 -0
  169. package/dist/foundations/zindex.css +1 -0
  170. package/dist/foundations.css +11 -0
  171. package/dist/index.d.ts +2 -0
  172. package/dist/index.js +102 -0
  173. package/dist/react/motion.d.ts +6 -0
  174. package/dist/react/motion.js +176 -0
  175. package/dist/react/spring.d.ts +2 -0
  176. package/dist/react/spring.js +87 -0
  177. package/dist/reset.css +2 -0
  178. package/dist/styles.css +41 -0
  179. package/dist/ui/src/components/Accordion/Accordion.d.ts +9 -0
  180. package/dist/ui/src/components/Accordion/Accordion.d.ts.map +1 -0
  181. package/dist/ui/src/components/Accordion/index.d.ts +3 -0
  182. package/dist/ui/src/components/Accordion/index.d.ts.map +1 -0
  183. package/dist/ui/src/components/Accordion/types.d.ts +39 -0
  184. package/dist/ui/src/components/Accordion/types.d.ts.map +1 -0
  185. package/dist/ui/src/components/ActionArea/ActionArea.d.ts +8 -0
  186. package/dist/ui/src/components/ActionArea/ActionArea.d.ts.map +1 -0
  187. package/dist/ui/src/components/ActionArea/index.d.ts +3 -0
  188. package/dist/ui/src/components/ActionArea/index.d.ts.map +1 -0
  189. package/dist/ui/src/components/ActionArea/types.d.ts +34 -0
  190. package/dist/ui/src/components/ActionArea/types.d.ts.map +1 -0
  191. package/dist/ui/src/components/Alert/Alert.d.ts +17 -0
  192. package/dist/ui/src/components/Alert/Alert.d.ts.map +1 -0
  193. package/dist/ui/src/components/Alert/index.d.ts +3 -0
  194. package/dist/ui/src/components/Alert/index.d.ts.map +1 -0
  195. package/dist/ui/src/components/Alert/types.d.ts +43 -0
  196. package/dist/ui/src/components/Alert/types.d.ts.map +1 -0
  197. package/dist/ui/src/components/Background/Background.d.ts +4 -0
  198. package/dist/ui/src/components/Background/Background.d.ts.map +1 -0
  199. package/dist/ui/src/components/Background/index.d.ts +3 -0
  200. package/dist/ui/src/components/Background/index.d.ts.map +1 -0
  201. package/dist/ui/src/components/Background/types.d.ts +17 -0
  202. package/dist/ui/src/components/Background/types.d.ts.map +1 -0
  203. package/dist/ui/src/components/BackgroundIconButton/BackgroundIconButton.d.ts +4 -0
  204. package/dist/ui/src/components/BackgroundIconButton/BackgroundIconButton.d.ts.map +1 -0
  205. package/dist/ui/src/components/BackgroundIconButton/index.d.ts +3 -0
  206. package/dist/ui/src/components/BackgroundIconButton/index.d.ts.map +1 -0
  207. package/dist/ui/src/components/BackgroundIconButton/types.d.ts +16 -0
  208. package/dist/ui/src/components/BackgroundIconButton/types.d.ts.map +1 -0
  209. package/dist/ui/src/components/Badge/Badge.d.ts +4 -0
  210. package/dist/ui/src/components/Badge/Badge.d.ts.map +1 -0
  211. package/dist/ui/src/components/Badge/index.d.ts +3 -0
  212. package/dist/ui/src/components/Badge/index.d.ts.map +1 -0
  213. package/dist/ui/src/components/Badge/types.d.ts +9 -0
  214. package/dist/ui/src/components/Badge/types.d.ts.map +1 -0
  215. package/dist/ui/src/components/Button/Button.d.ts +4 -0
  216. package/dist/ui/src/components/Button/Button.d.ts.map +1 -0
  217. package/dist/ui/src/components/Button/index.d.ts +3 -0
  218. package/dist/ui/src/components/Button/index.d.ts.map +1 -0
  219. package/dist/ui/src/components/Button/types.d.ts +30 -0
  220. package/dist/ui/src/components/Button/types.d.ts.map +1 -0
  221. package/dist/ui/src/components/Cell/Cell.d.ts +5 -0
  222. package/dist/ui/src/components/Cell/Cell.d.ts.map +1 -0
  223. package/dist/ui/src/components/Cell/index.d.ts +3 -0
  224. package/dist/ui/src/components/Cell/index.d.ts.map +1 -0
  225. package/dist/ui/src/components/Cell/types.d.ts +23 -0
  226. package/dist/ui/src/components/Cell/types.d.ts.map +1 -0
  227. package/dist/ui/src/components/CheckMark/CheckMark.d.ts +4 -0
  228. package/dist/ui/src/components/CheckMark/CheckMark.d.ts.map +1 -0
  229. package/dist/ui/src/components/CheckMark/index.d.ts +3 -0
  230. package/dist/ui/src/components/CheckMark/index.d.ts.map +1 -0
  231. package/dist/ui/src/components/CheckMark/types.d.ts +6 -0
  232. package/dist/ui/src/components/CheckMark/types.d.ts.map +1 -0
  233. package/dist/ui/src/components/Checkbox/Checkbox.d.ts +4 -0
  234. package/dist/ui/src/components/Checkbox/Checkbox.d.ts.map +1 -0
  235. package/dist/ui/src/components/Checkbox/index.d.ts +3 -0
  236. package/dist/ui/src/components/Checkbox/index.d.ts.map +1 -0
  237. package/dist/ui/src/components/Checkbox/types.d.ts +11 -0
  238. package/dist/ui/src/components/Checkbox/types.d.ts.map +1 -0
  239. package/dist/ui/src/components/Divider/Divider.d.ts +4 -0
  240. package/dist/ui/src/components/Divider/Divider.d.ts.map +1 -0
  241. package/dist/ui/src/components/Divider/index.d.ts +3 -0
  242. package/dist/ui/src/components/Divider/index.d.ts.map +1 -0
  243. package/dist/ui/src/components/Divider/types.d.ts +10 -0
  244. package/dist/ui/src/components/Divider/types.d.ts.map +1 -0
  245. package/dist/ui/src/components/Field/Field.d.ts +9 -0
  246. package/dist/ui/src/components/Field/Field.d.ts.map +1 -0
  247. package/dist/ui/src/components/Field/index.d.ts +3 -0
  248. package/dist/ui/src/components/Field/index.d.ts.map +1 -0
  249. package/dist/ui/src/components/Field/types.d.ts +30 -0
  250. package/dist/ui/src/components/Field/types.d.ts.map +1 -0
  251. package/dist/ui/src/components/Field/useFieldControlOverlayMetrics.d.ts +14 -0
  252. package/dist/ui/src/components/Field/useFieldControlOverlayMetrics.d.ts.map +1 -0
  253. package/dist/ui/src/components/Fieldset/Fieldset.d.ts +9 -0
  254. package/dist/ui/src/components/Fieldset/Fieldset.d.ts.map +1 -0
  255. package/dist/ui/src/components/Fieldset/index.d.ts +3 -0
  256. package/dist/ui/src/components/Fieldset/index.d.ts.map +1 -0
  257. package/dist/ui/src/components/Fieldset/types.d.ts +7 -0
  258. package/dist/ui/src/components/Fieldset/types.d.ts.map +1 -0
  259. package/dist/ui/src/components/IconButton/IconButton.d.ts +4 -0
  260. package/dist/ui/src/components/IconButton/IconButton.d.ts.map +1 -0
  261. package/dist/ui/src/components/IconButton/index.d.ts +3 -0
  262. package/dist/ui/src/components/IconButton/index.d.ts.map +1 -0
  263. package/dist/ui/src/components/IconButton/types.d.ts +16 -0
  264. package/dist/ui/src/components/IconButton/types.d.ts.map +1 -0
  265. package/dist/ui/src/components/Interaction/Interaction.d.ts +4 -0
  266. package/dist/ui/src/components/Interaction/Interaction.d.ts.map +1 -0
  267. package/dist/ui/src/components/Interaction/index.d.ts +3 -0
  268. package/dist/ui/src/components/Interaction/index.d.ts.map +1 -0
  269. package/dist/ui/src/components/Interaction/types.d.ts +6 -0
  270. package/dist/ui/src/components/Interaction/types.d.ts.map +1 -0
  271. package/dist/ui/src/components/Loading/Loading.d.ts +4 -0
  272. package/dist/ui/src/components/Loading/Loading.d.ts.map +1 -0
  273. package/dist/ui/src/components/Loading/index.d.ts +3 -0
  274. package/dist/ui/src/components/Loading/index.d.ts.map +1 -0
  275. package/dist/ui/src/components/Loading/types.d.ts +8 -0
  276. package/dist/ui/src/components/Loading/types.d.ts.map +1 -0
  277. package/dist/ui/src/components/Menu/Menu.d.ts +12 -0
  278. package/dist/ui/src/components/Menu/Menu.d.ts.map +1 -0
  279. package/dist/ui/src/components/Menu/index.d.ts +3 -0
  280. package/dist/ui/src/components/Menu/index.d.ts.map +1 -0
  281. package/dist/ui/src/components/Menu/types.d.ts +52 -0
  282. package/dist/ui/src/components/Menu/types.d.ts.map +1 -0
  283. package/dist/ui/src/components/Modal/Modal.d.ts +19 -0
  284. package/dist/ui/src/components/Modal/Modal.d.ts.map +1 -0
  285. package/dist/ui/src/components/Modal/contexts.d.ts +33 -0
  286. package/dist/ui/src/components/Modal/contexts.d.ts.map +1 -0
  287. package/dist/ui/src/components/Modal/index.d.ts +3 -0
  288. package/dist/ui/src/components/Modal/index.d.ts.map +1 -0
  289. package/dist/ui/src/components/Modal/modalScrollArbitration.d.ts +33 -0
  290. package/dist/ui/src/components/Modal/modalScrollArbitration.d.ts.map +1 -0
  291. package/dist/ui/src/components/Modal/snapPoints.d.ts +38 -0
  292. package/dist/ui/src/components/Modal/snapPoints.d.ts.map +1 -0
  293. package/dist/ui/src/components/Modal/types.d.ts +117 -0
  294. package/dist/ui/src/components/Modal/types.d.ts.map +1 -0
  295. package/dist/ui/src/components/Modal/useControllableState.d.ts +6 -0
  296. package/dist/ui/src/components/Modal/useControllableState.d.ts.map +1 -0
  297. package/dist/ui/src/components/Modal/useElementSize.d.ts +6 -0
  298. package/dist/ui/src/components/Modal/useElementSize.d.ts.map +1 -0
  299. package/dist/ui/src/components/Modal/useModalDrag.d.ts +37 -0
  300. package/dist/ui/src/components/Modal/useModalDrag.d.ts.map +1 -0
  301. package/dist/ui/src/components/Modal/useModalPlacement.d.ts +3 -0
  302. package/dist/ui/src/components/Modal/useModalPlacement.d.ts.map +1 -0
  303. package/dist/ui/src/components/Modal/useModalStackDepth.d.ts +2 -0
  304. package/dist/ui/src/components/Modal/useModalStackDepth.d.ts.map +1 -0
  305. package/dist/ui/src/components/Radio/Radio.d.ts +4 -0
  306. package/dist/ui/src/components/Radio/Radio.d.ts.map +1 -0
  307. package/dist/ui/src/components/Radio/index.d.ts +3 -0
  308. package/dist/ui/src/components/Radio/index.d.ts.map +1 -0
  309. package/dist/ui/src/components/Radio/types.d.ts +10 -0
  310. package/dist/ui/src/components/Radio/types.d.ts.map +1 -0
  311. package/dist/ui/src/components/ScrollArea/ScrollArea.d.ts +6 -0
  312. package/dist/ui/src/components/ScrollArea/ScrollArea.d.ts.map +1 -0
  313. package/dist/ui/src/components/ScrollArea/contexts.d.ts +3 -0
  314. package/dist/ui/src/components/ScrollArea/contexts.d.ts.map +1 -0
  315. package/dist/ui/src/components/ScrollArea/index.d.ts +4 -0
  316. package/dist/ui/src/components/ScrollArea/index.d.ts.map +1 -0
  317. package/dist/ui/src/components/ScrollArea/types.d.ts +21 -0
  318. package/dist/ui/src/components/ScrollArea/types.d.ts.map +1 -0
  319. package/dist/ui/src/components/SectionHeader/SectionHeader.d.ts +4 -0
  320. package/dist/ui/src/components/SectionHeader/SectionHeader.d.ts.map +1 -0
  321. package/dist/ui/src/components/SectionHeader/index.d.ts +3 -0
  322. package/dist/ui/src/components/SectionHeader/index.d.ts.map +1 -0
  323. package/dist/ui/src/components/SectionHeader/types.d.ts +13 -0
  324. package/dist/ui/src/components/SectionHeader/types.d.ts.map +1 -0
  325. package/dist/ui/src/components/Select/Select.d.ts +4 -0
  326. package/dist/ui/src/components/Select/Select.d.ts.map +1 -0
  327. package/dist/ui/src/components/Select/SelectContent.d.ts +4 -0
  328. package/dist/ui/src/components/Select/SelectContent.d.ts.map +1 -0
  329. package/dist/ui/src/components/Select/index.d.ts +4 -0
  330. package/dist/ui/src/components/Select/index.d.ts.map +1 -0
  331. package/dist/ui/src/components/Select/types.d.ts +12 -0
  332. package/dist/ui/src/components/Select/types.d.ts.map +1 -0
  333. package/dist/ui/src/components/SvgIcon/SvgIcon.d.ts +2 -0
  334. package/dist/ui/src/components/SvgIcon/SvgIcon.d.ts.map +1 -0
  335. package/dist/ui/src/components/SvgIcon/index.d.ts +3 -0
  336. package/dist/ui/src/components/SvgIcon/index.d.ts.map +1 -0
  337. package/dist/ui/src/components/SvgIcon/types.d.ts +2 -0
  338. package/dist/ui/src/components/SvgIcon/types.d.ts.map +1 -0
  339. package/dist/ui/src/components/Switch/Switch.d.ts +4 -0
  340. package/dist/ui/src/components/Switch/Switch.d.ts.map +1 -0
  341. package/dist/ui/src/components/Switch/index.d.ts +3 -0
  342. package/dist/ui/src/components/Switch/index.d.ts.map +1 -0
  343. package/dist/ui/src/components/Switch/types.d.ts +8 -0
  344. package/dist/ui/src/components/Switch/types.d.ts.map +1 -0
  345. package/dist/ui/src/components/TextArea/TextArea.d.ts +4 -0
  346. package/dist/ui/src/components/TextArea/TextArea.d.ts.map +1 -0
  347. package/dist/ui/src/components/TextArea/TextAreaContent.d.ts +4 -0
  348. package/dist/ui/src/components/TextArea/TextAreaContent.d.ts.map +1 -0
  349. package/dist/ui/src/components/TextArea/index.d.ts +4 -0
  350. package/dist/ui/src/components/TextArea/index.d.ts.map +1 -0
  351. package/dist/ui/src/components/TextArea/types.d.ts +15 -0
  352. package/dist/ui/src/components/TextArea/types.d.ts.map +1 -0
  353. package/dist/ui/src/components/TextButton/TextButton.d.ts +4 -0
  354. package/dist/ui/src/components/TextButton/TextButton.d.ts.map +1 -0
  355. package/dist/ui/src/components/TextButton/index.d.ts +3 -0
  356. package/dist/ui/src/components/TextButton/index.d.ts.map +1 -0
  357. package/dist/ui/src/components/TextButton/types.d.ts +25 -0
  358. package/dist/ui/src/components/TextButton/types.d.ts.map +1 -0
  359. package/dist/ui/src/components/TextInput/TextInput.d.ts +4 -0
  360. package/dist/ui/src/components/TextInput/TextInput.d.ts.map +1 -0
  361. package/dist/ui/src/components/TextInput/TextInputContent.d.ts +4 -0
  362. package/dist/ui/src/components/TextInput/TextInputContent.d.ts.map +1 -0
  363. package/dist/ui/src/components/TextInput/index.d.ts +4 -0
  364. package/dist/ui/src/components/TextInput/index.d.ts.map +1 -0
  365. package/dist/ui/src/components/TextInput/types.d.ts +12 -0
  366. package/dist/ui/src/components/TextInput/types.d.ts.map +1 -0
  367. package/dist/ui/src/components/Tooltip/Tooltip.d.ts +8 -0
  368. package/dist/ui/src/components/Tooltip/Tooltip.d.ts.map +1 -0
  369. package/dist/ui/src/components/Tooltip/index.d.ts +3 -0
  370. package/dist/ui/src/components/Tooltip/index.d.ts.map +1 -0
  371. package/dist/ui/src/components/Tooltip/types.d.ts +21 -0
  372. package/dist/ui/src/components/Tooltip/types.d.ts.map +1 -0
  373. package/dist/ui/src/components/internal/slot.d.ts +3 -0
  374. package/dist/ui/src/components/internal/slot.d.ts.map +1 -0
  375. package/dist/ui/src/components/types.d.ts +2 -0
  376. package/dist/ui/src/components/types.d.ts.map +1 -0
  377. package/dist/ui/src/index.d.ts +59 -0
  378. package/dist/ui/src/index.d.ts.map +1 -0
  379. package/dist/ui/src/react/motion/index.d.ts +27 -0
  380. package/dist/ui/src/react/motion/index.d.ts.map +1 -0
  381. package/dist/ui/src/react/spring/index.d.ts +33 -0
  382. package/dist/ui/src/react/spring/index.d.ts.map +1 -0
  383. package/dist/ui/src/utils/breakpoints.d.ts +6 -0
  384. package/dist/ui/src/utils/breakpoints.d.ts.map +1 -0
  385. package/dist/ui/src/utils/css.d.ts +3 -0
  386. package/dist/ui/src/utils/css.d.ts.map +1 -0
  387. package/dist/ui/src/utils/motion.d.ts +80 -0
  388. package/dist/ui/src/utils/motion.d.ts.map +1 -0
  389. package/dist/ui/src/utils/spring/animator.d.ts +3 -0
  390. package/dist/ui/src/utils/spring/animator.d.ts.map +1 -0
  391. package/dist/ui/src/utils/spring/constants.d.ts +13 -0
  392. package/dist/ui/src/utils/spring/constants.d.ts.map +1 -0
  393. package/dist/ui/src/utils/spring/format.d.ts +5 -0
  394. package/dist/ui/src/utils/spring/format.d.ts.map +1 -0
  395. package/dist/ui/src/utils/spring/model.d.ts +18 -0
  396. package/dist/ui/src/utils/spring/model.d.ts.map +1 -0
  397. package/dist/ui/src/utils/spring/solver.d.ts +6 -0
  398. package/dist/ui/src/utils/spring/solver.d.ts.map +1 -0
  399. package/dist/ui/src/utils/spring/static.d.ts +5 -0
  400. package/dist/ui/src/utils/spring/static.d.ts.map +1 -0
  401. package/dist/ui/src/utils/spring/types.d.ts +141 -0
  402. package/dist/ui/src/utils/spring/types.d.ts.map +1 -0
  403. package/dist/ui/src/utils/spring/validation.d.ts +5 -0
  404. package/dist/ui/src/utils/spring/validation.d.ts.map +1 -0
  405. package/dist/ui/src/utils/spring/value.d.ts +5 -0
  406. package/dist/ui/src/utils/spring/value.d.ts.map +1 -0
  407. package/dist/ui/src/utils/spring.d.ts +12 -0
  408. package/dist/ui/src/utils/spring.d.ts.map +1 -0
  409. package/dist/utils/breakpoints.d.ts +2 -0
  410. package/dist/utils/breakpoints.js +26 -0
  411. package/dist/utils/css.js +7 -0
  412. package/dist/utils/motion.d.ts +2 -0
  413. package/dist/utils/motion.js +343 -0
  414. package/dist/utils/spring/animator.js +179 -0
  415. package/dist/utils/spring/constants.js +15 -0
  416. package/dist/utils/spring/format.js +10 -0
  417. package/dist/utils/spring/model.js +120 -0
  418. package/dist/utils/spring/solver.js +78 -0
  419. package/dist/utils/spring/static.js +76 -0
  420. package/dist/utils/spring/validation.js +19 -0
  421. package/dist/utils/spring/value.js +65 -0
  422. package/dist/utils/spring.d.ts +2 -0
  423. package/dist/utils/spring.js +14 -0
  424. package/dist/vscode/oc-ui-vars.css +468 -0
  425. package/package.json +128 -0
  426. package/src/scss/foundations/_color.config.scss +14 -0
  427. package/src/scss/foundations/_responsive.config.scss +6 -0
  428. package/src/scss/foundations/atomic.scss +24 -0
  429. package/src/scss/foundations/breakpoint.scss +3 -0
  430. package/src/scss/foundations/color-theme.test.ts +99 -0
  431. package/src/scss/foundations/color.global.scss +210 -0
  432. package/src/scss/foundations/color.theme.dark.scss +80 -0
  433. package/src/scss/foundations/color.theme.light.scss +72 -0
  434. package/src/scss/foundations/motion.scss +46 -0
  435. package/src/scss/foundations/reset.scss +129 -0
  436. package/src/scss/foundations/responsive.test.ts +294 -0
  437. package/src/scss/foundations/space.scss +206 -0
  438. package/src/scss/foundations/typo.scss +381 -0
  439. package/src/scss/foundations/zindex.scss +12 -0
  440. package/src/scss/index.scss +18 -0
  441. package/src/scss/mixins/_breakpoint.scss +115 -0
  442. package/src/scss/mixins/_color.scss +29 -0
  443. package/src/scss/mixins/_color.test.ts +35 -0
  444. package/src/scss/mixins/_element.scss +52 -0
  445. package/src/scss/mixins/_element.test.ts +44 -0
  446. package/src/scss/mixins/_motion.scss +450 -0
  447. package/src/scss/mixins/_motion.test.ts +336 -0
  448. package/src/scss/mixins/_responsive.scss +366 -0
  449. package/src/scss/mixins/_spring.scss +396 -0
  450. package/src/scss/mixins/_spring.test.ts +128 -0
  451. package/src/scss/mixins/_typo.scss +67 -0
  452. package/src/scss/mixins/_typo.test.ts +28 -0
  453. package/src/scss/mixins/_utils.scss +26 -0
  454. package/src/scss/spring.scss +1 -0
@@ -0,0 +1,99 @@
1
+ import { compileString } from 'sass';
2
+ import { describe, expect, it } from 'vitest';
3
+
4
+ const compileScss = (source: string) =>
5
+ compileString(source, {
6
+ loadPaths: ['src/scss'],
7
+ style: 'compressed',
8
+ }).css.replace(/:\s+/g, ':');
9
+
10
+ describe('color theme foundations', () => {
11
+ it('compiles oc-alpha calls inside CSS custom properties', () => {
12
+ const css = compileScss(`
13
+ @use 'foundations/color.theme.light' as light;
14
+ @use 'foundations/color.theme.dark' as dark;
15
+ `);
16
+
17
+ expect(css).not.toContain('oc-alpha(');
18
+ expect(css).toContain(
19
+ '--oc-color-theme-fill-normal:color-mix(in srgb, var(--oc-color-global-coolNeutral-50), transparent calc(100% - (100% * var(--oc-color-global-opacity-8))))',
20
+ );
21
+ expect(css).toContain(
22
+ '--oc-color-theme-line-normal-normal:color-mix(in srgb, var(--oc-color-global-coolNeutral-50), transparent calc(100% - (100% * 0.32)))',
23
+ );
24
+ });
25
+
26
+ it('emits light + dark with system preference and attribute toggles by default', () => {
27
+ const css = compileScss(`
28
+ @use 'foundations/color.theme.light' as light;
29
+ @use 'foundations/color.theme.dark' as dark;
30
+ `);
31
+
32
+ expect(css).toMatch(
33
+ /:root\{[^}]*--oc-color-theme-background-normal-normal:var\(--oc-color-global-common-100\)/,
34
+ );
35
+ expect(css).toContain('[data-theme=light]');
36
+ expect(css).toContain('@media(prefers-color-scheme:dark)');
37
+ expect(css).toContain('[data-theme=dark]');
38
+ });
39
+
40
+ it('emits only light when $oc-color-themes is (light)', () => {
41
+ const css = compileScss(`
42
+ @use 'foundations/color.config' with ($oc-color-themes: (light,));
43
+ @use 'foundations/color.theme.light' as light;
44
+ @use 'foundations/color.theme.dark' as dark;
45
+ `);
46
+
47
+ expect(css).toContain('[data-theme=light]');
48
+ expect(css).not.toContain('@media(prefers-color-scheme:dark)');
49
+ expect(css).not.toContain('[data-theme=dark]');
50
+ expect(css).not.toContain(
51
+ '--oc-color-theme-background-normal-normal:var(--oc-color-global-coolNeutral-15)',
52
+ );
53
+ });
54
+
55
+ it('emits dark on :root without prefers-color-scheme when $oc-color-themes is (dark)', () => {
56
+ const css = compileScss(`
57
+ @use 'foundations/color.config' with ($oc-color-themes: (dark,));
58
+ @use 'foundations/color.theme.light' as light;
59
+ @use 'foundations/color.theme.dark' as dark;
60
+ `);
61
+
62
+ expect(css).not.toContain('@media(prefers-color-scheme:dark)');
63
+ expect(css).not.toContain('[data-theme=light]');
64
+ expect(css).toContain('[data-theme=dark]');
65
+ expect(css).toMatch(
66
+ /:root\{[^}]*--oc-color-theme-background-normal-normal:var\(--oc-color-global-coolNeutral-15\)/,
67
+ );
68
+ });
69
+
70
+ it('drops the prefers-color-scheme media query when $oc-color-system-preference is false', () => {
71
+ const css = compileScss(`
72
+ @use 'foundations/color.config' with ($oc-color-system-preference: false);
73
+ @use 'foundations/color.theme.light' as light;
74
+ @use 'foundations/color.theme.dark' as dark;
75
+ `);
76
+
77
+ expect(css).not.toContain('@media(prefers-color-scheme:dark)');
78
+ expect(css).toContain('[data-theme=light]');
79
+ expect(css).toContain('[data-theme=dark]');
80
+ });
81
+
82
+ it('throws when $oc-color-themes is empty', () => {
83
+ expect(() =>
84
+ compileScss(`
85
+ @use 'foundations/color.config' with ($oc-color-themes: ());
86
+ `),
87
+ ).toThrow(
88
+ '$oc-color-themes must include at least one theme (light or dark).',
89
+ );
90
+ });
91
+
92
+ it('throws for unknown theme names', () => {
93
+ expect(() =>
94
+ compileScss(`
95
+ @use 'foundations/color.config' with ($oc-color-themes: (sepia,));
96
+ `),
97
+ ).toThrow('Invalid theme "sepia"');
98
+ });
99
+ });
@@ -0,0 +1,210 @@
1
+ :root {
2
+ --oc-color-global-common-100: white;
3
+ --oc-color-global-common-0: black;
4
+ --oc-color-global-common-transparent: transparent;
5
+ --oc-color-global-neutral-100: var(--oc-color-global-common-100);
6
+ --oc-color-global-neutral-99: #f7f7f7;
7
+ --oc-color-global-neutral-95: #dcdcdc;
8
+ --oc-color-global-neutral-90: #c4c4c4;
9
+ --oc-color-global-neutral-80: #b0b0b0;
10
+ --oc-color-global-neutral-70: #9b9b9b;
11
+ --oc-color-global-neutral-60: #8a8a8a;
12
+ --oc-color-global-neutral-50: #737373;
13
+ --oc-color-global-neutral-40: #5c5c5c;
14
+ --oc-color-global-neutral-30: #474747;
15
+ --oc-color-global-neutral-22: #303030;
16
+ --oc-color-global-neutral-20: #2a2a2a;
17
+ --oc-color-global-neutral-15: #1c1c1c;
18
+ --oc-color-global-neutral-10: #171717;
19
+ --oc-color-global-neutral-5: #0f0f0f;
20
+ --oc-color-global-neutral-0: var(--oc-color-global-common-0);
21
+ --oc-color-global-coolNeutral-100: var(--oc-color-global-common-100);
22
+ --oc-color-global-coolNeutral-99: #f7f7f8;
23
+ --oc-color-global-coolNeutral-98: #f4f4f5;
24
+ --oc-color-global-coolNeutral-97: #eaebec;
25
+ --oc-color-global-coolNeutral-96: #e1e2e4;
26
+ --oc-color-global-coolNeutral-95: #dbdcdf;
27
+ --oc-color-global-coolNeutral-90: #c2c4c8;
28
+ --oc-color-global-coolNeutral-80: #aeb0b6;
29
+ --oc-color-global-coolNeutral-70: #989ba2;
30
+ --oc-color-global-coolNeutral-60: #878a93;
31
+ --oc-color-global-coolNeutral-50: #70737c;
32
+ --oc-color-global-coolNeutral-40: #5a5c63;
33
+ --oc-color-global-coolNeutral-30: #46474c;
34
+ --oc-color-global-coolNeutral-25: #37383c;
35
+ --oc-color-global-coolNeutral-23: #333438;
36
+ --oc-color-global-coolNeutral-22: #2e2f33;
37
+ --oc-color-global-coolNeutral-20: #292a2d;
38
+ --oc-color-global-coolNeutral-17: #212225;
39
+ --oc-color-global-coolNeutral-15: #1b1c1e;
40
+ --oc-color-global-coolNeutral-10: #171719;
41
+ --oc-color-global-coolNeutral-7: #141415;
42
+ --oc-color-global-coolNeutral-5: #0f0f10;
43
+ --oc-color-global-coolNeutral-0: var(--oc-color-global-common-0);
44
+ --oc-color-global-red-100: var(--oc-color-global-common-100);
45
+ --oc-color-global-red-99: #fffafa;
46
+ --oc-color-global-red-95: #feecec;
47
+ --oc-color-global-red-90: #fed5d5;
48
+ --oc-color-global-red-80: #ffb5b5;
49
+ --oc-color-global-red-70: #ff8c8c;
50
+ --oc-color-global-red-60: #ff6363;
51
+ --oc-color-global-red-50: #ff4242;
52
+ --oc-color-global-red-40: #e52222;
53
+ --oc-color-global-red-30: #b20c0c;
54
+ --oc-color-global-red-20: #750404;
55
+ --oc-color-global-red-10: #3b0101;
56
+ --oc-color-global-red-0: var(--oc-color-global-common-0);
57
+ --oc-color-global-green-100: var(--oc-color-global-common-100);
58
+ --oc-color-global-green-99: #f2fff6;
59
+ --oc-color-global-green-95: #d9ffe6;
60
+ --oc-color-global-green-90: #acfcc7;
61
+ --oc-color-global-green-80: #7df5a5;
62
+ --oc-color-global-green-70: #49e57d;
63
+ --oc-color-global-green-60: #1ed45a;
64
+ --oc-color-global-green-50: #00bf40;
65
+ --oc-color-global-green-40: #009632;
66
+ --oc-color-global-green-30: #006e25;
67
+ --oc-color-global-green-20: #004517;
68
+ --oc-color-global-green-10: #00240c;
69
+ --oc-color-global-green-0: var(--oc-color-global-common-0);
70
+ --oc-color-global-orange-100: var(--oc-color-global-common-100);
71
+ --oc-color-global-orange-99: #fffcf7;
72
+ --oc-color-global-orange-95: #fef4e6;
73
+ --oc-color-global-orange-90: #fee6c6;
74
+ --oc-color-global-orange-80: #ffd49c;
75
+ --oc-color-global-orange-70: #ffc06e;
76
+ --oc-color-global-orange-60: #ffa938;
77
+ --oc-color-global-orange-50: #ff9200;
78
+ --oc-color-global-orange-40: #d47800;
79
+ --oc-color-global-orange-39: #d17600;
80
+ --oc-color-global-orange-30: #9c5800;
81
+ --oc-color-global-orange-20: #663a00;
82
+ --oc-color-global-orange-10: #361e00;
83
+ --oc-color-global-orange-0: var(--oc-color-global-common-0);
84
+ --oc-color-global-blue-100: var(--oc-color-global-common-100);
85
+ --oc-color-global-blue-99: #f7fbff;
86
+ --oc-color-global-blue-95: #eaf2fe;
87
+ --oc-color-global-blue-90: #c9defe;
88
+ --oc-color-global-blue-80: #9ec5ff;
89
+ --oc-color-global-blue-70: #69a5ff;
90
+ --oc-color-global-blue-65: #4f95ff;
91
+ --oc-color-global-blue-60: #3385ff;
92
+ --oc-color-global-blue-55: #1a75ff;
93
+ --oc-color-global-blue-50: #0066ff;
94
+ --oc-color-global-blue-45: #005eeb;
95
+ --oc-color-global-blue-40: #0054d1;
96
+ --oc-color-global-blue-30: #003e9c;
97
+ --oc-color-global-blue-20: #002966;
98
+ --oc-color-global-blue-10: #001536;
99
+ --oc-color-global-blue-0: var(--oc-color-global-common-0);
100
+ --oc-color-global-redOrange-100: var(--oc-color-global-common-100);
101
+ --oc-color-global-redOrange-99: #fffaf7;
102
+ --oc-color-global-redOrange-95: #feeee5;
103
+ --oc-color-global-redOrange-90: #fed9c4;
104
+ --oc-color-global-redOrange-80: #ffbd96;
105
+ --oc-color-global-redOrange-70: #ff9b61;
106
+ --oc-color-global-redOrange-60: #ff7b2e;
107
+ --oc-color-global-redOrange-50: #ff5e00;
108
+ --oc-color-global-redOrange-48: #f55a00;
109
+ --oc-color-global-redOrange-40: #c94a00;
110
+ --oc-color-global-redOrange-30: #913500;
111
+ --oc-color-global-redOrange-20: #592100;
112
+ --oc-color-global-redOrange-10: #290f00;
113
+ --oc-color-global-redOrange-0: var(--oc-color-global-common-0);
114
+ --oc-color-global-lime-100: var(--oc-color-global-common-100);
115
+ --oc-color-global-lime-99: #f8fff2;
116
+ --oc-color-global-lime-95: #e6ffd4;
117
+ --oc-color-global-lime-90: #ccfca9;
118
+ --oc-color-global-lime-80: #aef779;
119
+ --oc-color-global-lime-70: #88f03e;
120
+ --oc-color-global-lime-60: #6be016;
121
+ --oc-color-global-lime-50: #58cf04;
122
+ --oc-color-global-lime-40: #48ad00;
123
+ --oc-color-global-lime-37: #429e00;
124
+ --oc-color-global-lime-30: #347d00;
125
+ --oc-color-global-lime-20: #225200;
126
+ --oc-color-global-lime-10: #112900;
127
+ --oc-color-global-lime-0: var(--oc-color-global-common-0);
128
+ --oc-color-global-cyan-100: var(--oc-color-global-common-100);
129
+ --oc-color-global-cyan-99: #f7feff;
130
+ --oc-color-global-cyan-95: #defaff;
131
+ --oc-color-global-cyan-90: #b5f4ff;
132
+ --oc-color-global-cyan-80: #8aedff;
133
+ --oc-color-global-cyan-70: #57dff7;
134
+ --oc-color-global-cyan-60: #28d0ed;
135
+ --oc-color-global-cyan-50: #00bdde;
136
+ --oc-color-global-cyan-40: #0098b2;
137
+ --oc-color-global-cyan-30: #006f82;
138
+ --oc-color-global-cyan-20: #004854;
139
+ --oc-color-global-cyan-10: #00252b;
140
+ --oc-color-global-cyan-0: var(--oc-color-global-common-0);
141
+ --oc-color-global-lightBlue-100: var(--oc-color-global-common-100);
142
+ --oc-color-global-lightBlue-99: #f7fdff;
143
+ --oc-color-global-lightBlue-95: #e5f6fe;
144
+ --oc-color-global-lightBlue-90: #c4ecfe;
145
+ --oc-color-global-lightBlue-80: #a1e1ff;
146
+ --oc-color-global-lightBlue-70: #70d2ff;
147
+ --oc-color-global-lightBlue-60: #3dc2ff;
148
+ --oc-color-global-lightBlue-50: #00aeff;
149
+ --oc-color-global-lightBlue-40: #008dcf;
150
+ --oc-color-global-lightBlue-30: #006796;
151
+ --oc-color-global-lightBlue-20: #004261;
152
+ --oc-color-global-lightBlue-10: #002130;
153
+ --oc-color-global-lightBlue-0: var(--oc-color-global-common-0);
154
+ --oc-color-global-violet-100: var(--oc-color-global-common-100);
155
+ --oc-color-global-violet-99: #fbfaff;
156
+ --oc-color-global-violet-95: #f0ecfe;
157
+ --oc-color-global-violet-90: #dbd3fe;
158
+ --oc-color-global-violet-80: #c0b0ff;
159
+ --oc-color-global-violet-70: #9e86fc;
160
+ --oc-color-global-violet-60: #7d5ef7;
161
+ --oc-color-global-violet-50: #6541f2;
162
+ --oc-color-global-violet-45: #5b37ed;
163
+ --oc-color-global-violet-40: #4f29e5;
164
+ --oc-color-global-violet-30: #3a16c9;
165
+ --oc-color-global-violet-20: #23098f;
166
+ --oc-color-global-violet-10: #11024d;
167
+ --oc-color-global-violet-0: var(--oc-color-global-common-0);
168
+ --oc-color-global-purple-100: var(--oc-color-global-common-100);
169
+ --oc-color-global-purple-99: #fefbff;
170
+ --oc-color-global-purple-95: #f9edff;
171
+ --oc-color-global-purple-90: #f2d6ff;
172
+ --oc-color-global-purple-80: #e9baff;
173
+ --oc-color-global-purple-70: #de96ff;
174
+ --oc-color-global-purple-60: #d478ff;
175
+ --oc-color-global-purple-50: #cb59ff;
176
+ --oc-color-global-purple-40: #ad36e3;
177
+ --oc-color-global-purple-30: #861cb8;
178
+ --oc-color-global-purple-20: #580a7d;
179
+ --oc-color-global-purple-10: #290247;
180
+ --oc-color-global-purple-0: var(--oc-color-global-common-0);
181
+ --oc-color-global-pink-100: var(--oc-color-global-common-100);
182
+ --oc-color-global-pink-99: #fffafe;
183
+ --oc-color-global-pink-95: #feecfb;
184
+ --oc-color-global-pink-90: #fed3f7;
185
+ --oc-color-global-pink-80: #ffb8f3;
186
+ --oc-color-global-pink-70: #ff94ed;
187
+ --oc-color-global-pink-60: #fa73e3;
188
+ --oc-color-global-pink-50: #f553da;
189
+ --oc-color-global-pink-46: #e846cd;
190
+ --oc-color-global-pink-40: #d331b8;
191
+ --oc-color-global-pink-30: #a81690;
192
+ --oc-color-global-pink-20: #730560;
193
+ --oc-color-global-pink-10: #3d0133;
194
+ --oc-color-global-pink-0: var(--oc-color-global-common-0);
195
+ --oc-color-global-opacity-0: 0;
196
+ --oc-color-global-opacity-5: 0.05;
197
+ --oc-color-global-opacity-8: 0.08;
198
+ --oc-color-global-opacity-12: 0.12;
199
+ --oc-color-global-opacity-16: 0.16;
200
+ --oc-color-global-opacity-22: 0.22;
201
+ --oc-color-global-opacity-28: 0.28;
202
+ --oc-color-global-opacity-35: 0.35;
203
+ --oc-color-global-opacity-43: 0.43;
204
+ --oc-color-global-opacity-52: 0.52;
205
+ --oc-color-global-opacity-61: 0.61;
206
+ --oc-color-global-opacity-74: 0.74;
207
+ --oc-color-global-opacity-88: 0.88;
208
+ --oc-color-global-opacity-97: 0.97;
209
+ --oc-color-global-opacity-100: 1;
210
+ }
@@ -0,0 +1,80 @@
1
+ @use 'sass:list';
2
+ @use './color.config' as config;
3
+ @use '../mixins/color' as *;
4
+
5
+ @mixin color-theme-dark {
6
+ --oc-color-theme-static-white: var(--oc-color-global-common-100);
7
+ --oc-color-theme-static-black: var(--oc-color-global-common-0);
8
+ --oc-color-theme-static-transparent: var(--oc-color-global-common-transparent);
9
+ --oc-color-theme-primary-normal: var(--oc-color-global-redOrange-60);
10
+ --oc-color-theme-label-strong: var(--oc-color-global-common-100);
11
+ --oc-color-theme-label-normal: var(--oc-color-global-coolNeutral-99);
12
+ --oc-color-theme-label-neutral: #{oc-alpha(coolNeutral-90, 88)};
13
+ --oc-color-theme-label-alternative: #{oc-alpha(coolNeutral-80, 61)};
14
+ --oc-color-theme-label-assistive: #{oc-alpha(coolNeutral-80, 28)};
15
+ --oc-color-theme-label-disable: #{oc-alpha(coolNeutral-70, 16)};
16
+ --oc-color-theme-background-normal-normal: var(--oc-color-global-coolNeutral-15);
17
+ --oc-color-theme-background-normal-alternative: var(--oc-color-global-coolNeutral-5);
18
+ --oc-color-theme-background-elevated-normal: var(--oc-color-global-coolNeutral-17);
19
+ --oc-color-theme-background-elevated-alternative: var(--oc-color-global-coolNeutral-7);
20
+ --oc-color-theme-interaction-inactive: var(--oc-color-global-coolNeutral-40);
21
+ --oc-color-theme-interaction-disable: var(--oc-color-global-coolNeutral-22);
22
+ --oc-color-theme-line-normal-strong: #{oc-alpha(coolNeutral-90, 52)};
23
+ --oc-color-theme-line-normal-normal: #{oc-alpha(coolNeutral-50, 0.32)};
24
+ --oc-color-theme-line-normal-neutral: #{oc-alpha(coolNeutral-50, 28)};
25
+ --oc-color-theme-line-normal-alternative: #{oc-alpha(coolNeutral-50, 22)};
26
+ --oc-color-theme-line-solid-strong: var(--oc-color-global-coolNeutral-50);
27
+ --oc-color-theme-line-solid-normal: var(--oc-color-global-coolNeutral-25);
28
+ --oc-color-theme-line-solid-neutral: var(--oc-color-global-coolNeutral-23);
29
+ --oc-color-theme-line-solid-alternative: var(--oc-color-global-coolNeutral-22);
30
+ --oc-color-theme-fill-normal: #{oc-alpha(coolNeutral-50, 22)};
31
+ --oc-color-theme-fill-strong: #{oc-alpha(coolNeutral-50, 28)};
32
+ --oc-color-theme-fill-alternative: #{oc-alpha(coolNeutral-50, 12)};
33
+ --oc-color-theme-accent-background-red: var(--oc-color-global-red-60);
34
+ --oc-color-theme-accent-background-orange: var(--oc-color-global-orange-60);
35
+ --oc-color-theme-accent-background-lime: var(--oc-color-global-lime-60);
36
+ --oc-color-theme-accent-background-green: var(--oc-color-global-green-60);
37
+ --oc-color-theme-accent-background-cyan: var(--oc-color-global-cyan-60);
38
+ --oc-color-theme-accent-background-lightBlue: var(--oc-color-global-lightBlue-60);
39
+ --oc-color-theme-accent-background-blue: var(--oc-color-global-blue-60);
40
+ --oc-color-theme-accent-background-violet: var(--oc-color-global-violet-60);
41
+ --oc-color-theme-accent-background-purple: var(--oc-color-global-purple-60);
42
+ --oc-color-theme-accent-background-pink: var(--oc-color-global-pink-60);
43
+ --oc-color-theme-accent-background-redOrange: var(--oc-color-global-redOrange-60);
44
+ --oc-color-theme-accent-foreground-red: var(--oc-color-global-red-60);
45
+ --oc-color-theme-accent-foreground-redOrange: var(--oc-color-global-redOrange-60);
46
+ --oc-color-theme-accent-foreground-orange: var(--oc-color-global-orange-50);
47
+ --oc-color-theme-accent-foreground-lime: var(--oc-color-global-lime-50);
48
+ --oc-color-theme-accent-foreground-green: var(--oc-color-global-green-60);
49
+ --oc-color-theme-accent-foreground-cyan: var(--oc-color-global-cyan-50);
50
+ --oc-color-theme-accent-foreground-lightBlue: var(--oc-color-global-lightBlue-50);
51
+ --oc-color-theme-accent-foreground-blue: var(--oc-color-global-blue-65);
52
+ --oc-color-theme-accent-foreground-violet: var(--oc-color-global-violet-70);
53
+ --oc-color-theme-accent-foreground-purple: var(--oc-color-global-purple-60);
54
+ --oc-color-theme-accent-foreground-pink: var(--oc-color-global-pink-60);
55
+ --oc-color-theme-status-positive: var(--oc-color-theme-accent-background-green);
56
+ --oc-color-theme-status-cautionary: var(--oc-color-theme-accent-background-orange);
57
+ --oc-color-theme-status-negative: var(--oc-color-theme-accent-background-red);
58
+ --oc-color-theme-inverse-primary: var(--oc-color-global-redOrange-50);
59
+ --oc-color-theme-inverse-background: var(--oc-color-global-common-100);
60
+ --oc-color-theme-inverse-label: var(--oc-color-global-coolNeutral-10);
61
+ --oc-color-theme-material-dimmer: #{oc-alpha(coolNeutral-10, 74)};
62
+ }
63
+
64
+ @if list.index(config.$oc-color-themes, dark) {
65
+ @if not list.index(config.$oc-color-themes, light) {
66
+ :root {
67
+ @include color-theme-dark;
68
+ }
69
+ } @else if config.$oc-color-system-preference {
70
+ :root {
71
+ @media (prefers-color-scheme: dark) {
72
+ @include color-theme-dark;
73
+ }
74
+ }
75
+ }
76
+
77
+ [data-theme='dark'] {
78
+ @include color-theme-dark;
79
+ }
80
+ }
@@ -0,0 +1,72 @@
1
+ @use 'sass:list';
2
+ @use './color.config' as config;
3
+ @use '../mixins/color' as *;
4
+
5
+ @mixin color-theme-light {
6
+ --oc-color-theme-static-white: var(--oc-color-global-common-100);
7
+ --oc-color-theme-static-black: var(--oc-color-global-common-0);
8
+ --oc-color-theme-static-transparent: var(--oc-color-global-common-transparent);
9
+ --oc-color-theme-primary-normal: var(--oc-color-global-redOrange-50);
10
+ --oc-color-theme-label-strong: var(--oc-color-global-common-0);
11
+ --oc-color-theme-label-normal: var(--oc-color-global-coolNeutral-10);
12
+ --oc-color-theme-label-neutral: #{oc-alpha(coolNeutral-22, 88)};
13
+ --oc-color-theme-label-alternative: #{oc-alpha(coolNeutral-25, 61)};
14
+ --oc-color-theme-label-assistive: #{oc-alpha(coolNeutral-25, 28)};
15
+ --oc-color-theme-label-disable: #{oc-alpha(coolNeutral-25, 16)};
16
+ --oc-color-theme-background-normal-normal: var(--oc-color-global-common-100);
17
+ --oc-color-theme-background-normal-alternative: var(--oc-color-global-coolNeutral-99);
18
+ --oc-color-theme-background-elevated-normal: var(--oc-color-global-common-100);
19
+ --oc-color-theme-background-elevated-alternative: var(--oc-color-global-coolNeutral-99);
20
+ --oc-color-theme-interaction-inactive: var(--oc-color-global-coolNeutral-70);
21
+ --oc-color-theme-interaction-disable: var(--oc-color-global-coolNeutral-98);
22
+ --oc-color-theme-line-normal-strong: #{oc-alpha(coolNeutral-50, 52)};
23
+ --oc-color-theme-line-normal-normal: #{oc-alpha(coolNeutral-50, 22)};
24
+ --oc-color-theme-line-normal-neutral: #{oc-alpha(coolNeutral-50, 16)};
25
+ --oc-color-theme-line-normal-alternative: #{oc-alpha(coolNeutral-50, 8)};
26
+ --oc-color-theme-line-solid-strong: var(--oc-color-global-coolNeutral-80);
27
+ --oc-color-theme-line-solid-normal: var(--oc-color-global-coolNeutral-96);
28
+ --oc-color-theme-line-solid-neutral: var(--oc-color-global-coolNeutral-97);
29
+ --oc-color-theme-line-solid-alternative: var(--oc-color-global-coolNeutral-98);
30
+ --oc-color-theme-fill-normal: #{oc-alpha(coolNeutral-50, 8)};
31
+ --oc-color-theme-fill-strong: #{oc-alpha(coolNeutral-50, 16)};
32
+ --oc-color-theme-fill-alternative: #{oc-alpha(coolNeutral-50, 5)};
33
+ --oc-color-theme-accent-background-red: var(--oc-color-global-red-50);
34
+ --oc-color-theme-accent-background-orange: var(--oc-color-global-orange-50);
35
+ --oc-color-theme-accent-background-lime: var(--oc-color-global-lime-50);
36
+ --oc-color-theme-accent-background-green: var(--oc-color-global-green-50);
37
+ --oc-color-theme-accent-background-cyan: var(--oc-color-global-cyan-50);
38
+ --oc-color-theme-accent-background-lightBlue: var(--oc-color-global-lightBlue-50);
39
+ --oc-color-theme-accent-background-blue: var(--oc-color-global-blue-50);
40
+ --oc-color-theme-accent-background-violet: var(--oc-color-global-violet-50);
41
+ --oc-color-theme-accent-background-purple: var(--oc-color-global-purple-50);
42
+ --oc-color-theme-accent-background-pink: var(--oc-color-global-pink-50);
43
+ --oc-color-theme-accent-background-redOrange: var(--oc-color-global-redOrange-50);
44
+ --oc-color-theme-accent-foreground-red: var(--oc-color-global-red-40);
45
+ --oc-color-theme-accent-foreground-redOrange: var(--oc-color-global-redOrange-48);
46
+ --oc-color-theme-accent-foreground-orange: var(--oc-color-global-orange-39);
47
+ --oc-color-theme-accent-foreground-lime: var(--oc-color-global-lime-37);
48
+ --oc-color-theme-accent-foreground-green: var(--oc-color-global-green-40);
49
+ --oc-color-theme-accent-foreground-cyan: var(--oc-color-global-cyan-40);
50
+ --oc-color-theme-accent-foreground-lightBlue: var(--oc-color-global-lightBlue-40);
51
+ --oc-color-theme-accent-foreground-blue: var(--oc-color-global-blue-45);
52
+ --oc-color-theme-accent-foreground-violet: var(--oc-color-global-violet-45);
53
+ --oc-color-theme-accent-foreground-purple: var(--oc-color-global-purple-40);
54
+ --oc-color-theme-accent-foreground-pink: var(--oc-color-global-pink-46);
55
+ --oc-color-theme-status-positive: var(--oc-color-theme-accent-background-green);
56
+ --oc-color-theme-status-cautionary: var(--oc-color-theme-accent-background-orange);
57
+ --oc-color-theme-status-negative: var(--oc-color-theme-accent-background-red);
58
+ --oc-color-theme-inverse-primary: var(--oc-color-global-redOrange-60);
59
+ --oc-color-theme-inverse-background: var(--oc-color-global-coolNeutral-15);
60
+ --oc-color-theme-inverse-label: var(--oc-color-global-coolNeutral-99);
61
+ --oc-color-theme-material-dimmer: #{oc-alpha(coolNeutral-10, 52)};
62
+ }
63
+
64
+ @if list.index(config.$oc-color-themes, light) {
65
+ :root {
66
+ @include color-theme-light;
67
+ }
68
+
69
+ [data-theme='light'] {
70
+ @include color-theme-light;
71
+ }
72
+ }
@@ -0,0 +1,46 @@
1
+ @use '../spring' as *;
2
+
3
+ :root {
4
+ --oc-motion-duration-scale: 1;
5
+ --oc-motion-duration-scale-reduced: 0.75;
6
+ --oc-motion-duration-scale-preserve: 1;
7
+ --oc-motion-scale: 1;
8
+ --oc-motion-scale-feedback: var(--oc-motion-scale);
9
+ --oc-motion-scale-reveal: var(--oc-motion-scale);
10
+ --oc-motion-distance-scale: 1;
11
+ --oc-motion-distance-scale-reject: var(--oc-motion-distance-scale);
12
+ --oc-motion-distance-scale-reveal: var(--oc-motion-distance-scale);
13
+
14
+ /* Pace tokens are unitless duration multipliers. */
15
+ --oc-motion-pace-quick: 0.75;
16
+ --oc-motion-pace-normal: 1;
17
+ --oc-motion-pace-slow: 1.35;
18
+ --oc-motion-duration-feedback: 0.2s;
19
+ --oc-motion-duration-reject: #{oc-spring-settle-duration(0.32s, smooth)};
20
+ --oc-motion-duration-reveal: 0.3s;
21
+ --oc-motion-duration-reveal-exit: 0.125s;
22
+ --oc-motion-duration-move: 0.3s;
23
+ --oc-motion-duration-gesture: 0.2s;
24
+ --oc-motion-duration-gesture-settle: 0.52s;
25
+ --oc-motion-duration-ambient: 1.2s;
26
+ --oc-motion-timing-feedback: ease;
27
+ --oc-motion-timing-reject: #{oc-spring-timing(0.32s, smooth, $samples: 64)};
28
+ --oc-motion-timing-reveal: ease;
29
+ --oc-motion-timing-reveal-exit: ease-in;
30
+ --oc-motion-timing-move: cubic-bezier(0.32, 0.72, 0, 1);
31
+ --oc-motion-timing-gesture: ease;
32
+ --oc-motion-timing-gesture-settle: cubic-bezier(0.32, 0.72, 0, 1);
33
+ --oc-motion-timing-ambient: linear;
34
+ --oc-spring-smooth-timing: #{oc-spring-timing(0.5s, smooth, $samples: 64)};
35
+ --oc-spring-smooth-duration-scale: #{oc-spring-duration-scale(0.5s, smooth)};
36
+ --oc-spring-snappy-timing: #{oc-spring-timing(0.5s, snappy, $samples: 64)};
37
+ --oc-spring-snappy-duration-scale: #{oc-spring-duration-scale(0.5s, snappy)};
38
+ --oc-spring-bouncy-timing: #{oc-spring-timing(0.5s, bouncy, $samples: 64)};
39
+ --oc-spring-bouncy-duration-scale: #{oc-spring-duration-scale(0.5s, bouncy)};
40
+ }
41
+
42
+ @media (prefers-reduced-motion: reduce) {
43
+ :root {
44
+ --oc-motion-duration-scale: var(--oc-motion-duration-scale-reduced);
45
+ }
46
+ }
@@ -0,0 +1,129 @@
1
+ /* Box sizing rules */
2
+ *,
3
+ *::before,
4
+ *::after {
5
+ box-sizing: border-box;
6
+ }
7
+
8
+ /* Prevent font size inflation */
9
+ html {
10
+ -moz-text-size-adjust: none;
11
+ -webkit-text-size-adjust: none;
12
+ text-size-adjust: none;
13
+ }
14
+
15
+ /* Set core body defaults */
16
+ body {
17
+ min-height: 100dvh;
18
+ }
19
+
20
+ /* Remove default margin in favour of better control in authored CSS */
21
+ body,
22
+ h1,
23
+ h2,
24
+ h3,
25
+ h4,
26
+ h5,
27
+ h6,
28
+ p,
29
+ ul,
30
+ figure,
31
+ blockquote,
32
+ dl,
33
+ dd,
34
+ input {
35
+ margin: 0;
36
+ }
37
+
38
+ /* Inherit fonts */
39
+ h1,
40
+ h2,
41
+ h3,
42
+ h4,
43
+ h5,
44
+ h6,
45
+ input,
46
+ button,
47
+ textarea,
48
+ select,
49
+ label {
50
+ font: inherit;
51
+ }
52
+
53
+ /* Balance text wrapping on headings */
54
+ h1,
55
+ h2,
56
+ h3,
57
+ h4,
58
+ h5,
59
+ h6 {
60
+ text-wrap: balance;
61
+ }
62
+
63
+ /* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
64
+ ul,
65
+ ol {
66
+ list-style: none;
67
+ padding: 0;
68
+ }
69
+
70
+ /* A elements that don't have a class get default styles */
71
+ a:not([class]) {
72
+ text-decoration-skip-ink: auto;
73
+ color: currentColor;
74
+ }
75
+
76
+ a:visited {
77
+ color: currentColor;
78
+ }
79
+
80
+ /* Make images easier to work with */
81
+ img,
82
+ picture {
83
+ max-width: 100%;
84
+ display: block;
85
+ object-fit: cover;
86
+ }
87
+
88
+ /* Make sure textareas without a rows attribute are not tiny */
89
+ textarea:not([rows]) {
90
+ min-height: 10em;
91
+ }
92
+
93
+ /* Anything that has been anchored to should have extra scroll margin */
94
+ :target {
95
+ scroll-margin-block: 5ex;
96
+ }
97
+
98
+ svg {
99
+ fill: currentColor;
100
+ stroke: transparent;
101
+ }
102
+
103
+ textarea,
104
+ button {
105
+ padding: 0;
106
+ appearance: none;
107
+ }
108
+
109
+ button {
110
+ &:focus-visible {
111
+ outline: none;
112
+ }
113
+ }
114
+
115
+ textarea,
116
+ input[type='text'] {
117
+ color: currentColor;
118
+ background-color: transparent;
119
+ }
120
+
121
+ input:not(input:-webkit-autofill)::-webkit-contacts-auto-fill-button {
122
+ background-color: currentColor;
123
+ }
124
+
125
+ iframe,
126
+ textarea,
127
+ button {
128
+ border: none;
129
+ }