@techsio/ui-kit 0.3.1 → 0.4.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 (446) hide show
  1. package/README.md +59 -6
  2. package/dist/.storybook/decorator.d.ts +12 -0
  3. package/dist/.storybook/decorator.d.ts.map +1 -0
  4. package/dist/.storybook/main.d.ts +4 -0
  5. package/dist/.storybook/main.d.ts.map +1 -0
  6. package/dist/.storybook/preview.d.ts +5 -0
  7. package/dist/.storybook/preview.d.ts.map +1 -0
  8. package/dist/.storybook/test-runner.d.ts +12 -0
  9. package/dist/.storybook/test-runner.d.ts.map +1 -0
  10. package/dist/atoms/badge.js +37 -19
  11. package/dist/atoms/button.js +167 -154
  12. package/dist/atoms/checkbox.js +52 -0
  13. package/dist/atoms/figma/badge.figma.js +33 -0
  14. package/dist/atoms/figma/button.figma.js +76 -0
  15. package/dist/atoms/figma/checkbox.figma.js +35 -0
  16. package/dist/atoms/figma/icon.figma.js +33 -0
  17. package/dist/atoms/figma/image.figma.js +21 -0
  18. package/dist/atoms/figma/input.figma.js +34 -0
  19. package/dist/atoms/figma/label.figma.js +25 -0
  20. package/dist/atoms/figma/link-button.figma.js +42 -0
  21. package/dist/atoms/figma/link.figma.js +15 -0
  22. package/dist/atoms/figma/numeric-input.figma.js +52 -0
  23. package/dist/atoms/figma/rating.figma.js +38 -0
  24. package/dist/atoms/figma/skeleton.figma.js +119 -0
  25. package/dist/atoms/figma/status-text.figma.js +27 -0
  26. package/dist/atoms/figma/textarea.figma.js +38 -0
  27. package/dist/atoms/figma/tooltip.figma.js +47 -0
  28. package/dist/atoms/icon.js +17 -17
  29. package/dist/atoms/image.js +22 -4
  30. package/dist/atoms/input.js +40 -34
  31. package/dist/atoms/label.js +10 -10
  32. package/dist/atoms/link-button.js +19 -18
  33. package/dist/atoms/link.js +6 -4
  34. package/dist/atoms/numeric-input.js +98 -70
  35. package/dist/atoms/rating.js +30 -30
  36. package/dist/atoms/skeleton.js +47 -47
  37. package/dist/atoms/status-text.js +75 -0
  38. package/dist/atoms/textarea.js +48 -42
  39. package/dist/atoms/tooltip.js +17 -17
  40. package/dist/molecules/accordion.js +58 -60
  41. package/dist/molecules/breadcrumb.js +206 -124
  42. package/dist/molecules/carousel.js +139 -87
  43. package/dist/molecules/color-select.js +56 -56
  44. package/dist/molecules/combobox.js +131 -104
  45. package/dist/molecules/dialog.js +97 -97
  46. package/dist/molecules/figma/accordion.figma.js +41 -0
  47. package/dist/molecules/figma/breadcrumb.figma.js +31 -0
  48. package/dist/molecules/figma/carousel.figma.js +34 -0
  49. package/dist/molecules/figma/combobox.figma.js +38 -0
  50. package/dist/molecules/figma/dialog.figma.js +24 -0
  51. package/dist/molecules/figma/form-checkbox.figma.js +41 -0
  52. package/dist/molecules/figma/form-input.figma.js +38 -0
  53. package/dist/molecules/figma/form-numeric-input.figma.js +67 -0
  54. package/dist/molecules/figma/form-textarea.figma.js +38 -0
  55. package/dist/molecules/figma/menu.figma.js +26 -0
  56. package/dist/molecules/figma/pagination.figma.js +22 -0
  57. package/dist/molecules/figma/popover.figma.js +38 -0
  58. package/dist/molecules/figma/product-card.figma.js +34 -0
  59. package/dist/molecules/figma/radio-card.figma.js +35 -0
  60. package/dist/molecules/figma/radio-group.figma.js +45 -0
  61. package/dist/molecules/figma/search-form.figma.js +24 -0
  62. package/dist/molecules/figma/select.figma.js +46 -0
  63. package/dist/molecules/figma/slider.figma.js +30 -0
  64. package/dist/molecules/figma/steps.figma.js +33 -0
  65. package/dist/molecules/figma/switch.figma.js +33 -0
  66. package/dist/molecules/figma/tabs.figma.js +46 -0
  67. package/dist/molecules/figma/toast.figma.js +34 -0
  68. package/dist/molecules/figma/tree-view.figma.js +30 -0
  69. package/dist/molecules/form-checkbox.js +121 -48
  70. package/dist/molecules/form-input.js +15 -27
  71. package/dist/molecules/form-numeric-input.js +11 -24
  72. package/dist/molecules/form-textarea.js +15 -27
  73. package/dist/molecules/menu.js +69 -67
  74. package/dist/molecules/pagination.js +112 -76
  75. package/dist/molecules/phone-input.js +654 -0
  76. package/dist/molecules/popover.js +221 -96
  77. package/dist/molecules/product-card.js +38 -37
  78. package/dist/molecules/radio-card.js +517 -0
  79. package/dist/molecules/radio-group.js +341 -0
  80. package/dist/molecules/search-form.js +170 -91
  81. package/dist/molecules/select.js +369 -141
  82. package/dist/molecules/slider.js +72 -85
  83. package/dist/molecules/steps.js +517 -152
  84. package/dist/molecules/switch.js +37 -43
  85. package/dist/molecules/tabs.js +63 -61
  86. package/dist/molecules/toast.js +32 -32
  87. package/dist/molecules/tree-view.js +89 -83
  88. package/dist/organisms/footer.js +50 -52
  89. package/dist/organisms/gallery.js +244 -0
  90. package/dist/organisms/header.js +60 -58
  91. package/dist/organisms/table.js +52 -52
  92. package/dist/src/atoms/badge.d.ts +27 -7
  93. package/dist/src/atoms/badge.d.ts.map +1 -1
  94. package/dist/src/atoms/button.d.ts +7 -6
  95. package/dist/src/atoms/button.d.ts.map +1 -1
  96. package/dist/src/atoms/checkbox.d.ts +11 -0
  97. package/dist/src/atoms/checkbox.d.ts.map +1 -0
  98. package/dist/src/atoms/figma/badge.figma.d.ts +2 -0
  99. package/dist/src/atoms/figma/badge.figma.d.ts.map +1 -0
  100. package/dist/src/atoms/figma/button.figma.d.ts +2 -0
  101. package/dist/src/atoms/figma/button.figma.d.ts.map +1 -0
  102. package/dist/src/atoms/figma/checkbox.figma.d.ts +2 -0
  103. package/dist/src/atoms/figma/checkbox.figma.d.ts.map +1 -0
  104. package/dist/src/atoms/figma/icon.figma.d.ts +2 -0
  105. package/dist/src/atoms/figma/icon.figma.d.ts.map +1 -0
  106. package/dist/src/atoms/figma/image.figma.d.ts +2 -0
  107. package/dist/src/atoms/figma/image.figma.d.ts.map +1 -0
  108. package/dist/src/atoms/figma/input.figma.d.ts +2 -0
  109. package/dist/src/atoms/figma/input.figma.d.ts.map +1 -0
  110. package/dist/src/atoms/figma/label.figma.d.ts +2 -0
  111. package/dist/src/atoms/figma/label.figma.d.ts.map +1 -0
  112. package/dist/src/atoms/figma/link-button.figma.d.ts +2 -0
  113. package/dist/src/atoms/figma/link-button.figma.d.ts.map +1 -0
  114. package/dist/src/atoms/figma/link.figma.d.ts +2 -0
  115. package/dist/src/atoms/figma/link.figma.d.ts.map +1 -0
  116. package/dist/src/atoms/figma/numeric-input.figma.d.ts +2 -0
  117. package/dist/src/atoms/figma/numeric-input.figma.d.ts.map +1 -0
  118. package/dist/src/atoms/figma/rating.figma.d.ts +2 -0
  119. package/dist/src/atoms/figma/rating.figma.d.ts.map +1 -0
  120. package/dist/src/atoms/figma/skeleton.figma.d.ts +2 -0
  121. package/dist/src/atoms/figma/skeleton.figma.d.ts.map +1 -0
  122. package/dist/src/atoms/figma/status-text.figma.d.ts +2 -0
  123. package/dist/src/atoms/figma/status-text.figma.d.ts.map +1 -0
  124. package/dist/src/atoms/figma/textarea.figma.d.ts +2 -0
  125. package/dist/src/atoms/figma/textarea.figma.d.ts.map +1 -0
  126. package/dist/src/atoms/figma/tooltip.figma.d.ts +2 -0
  127. package/dist/src/atoms/figma/tooltip.figma.d.ts.map +1 -0
  128. package/dist/src/atoms/icon.d.ts +6 -6
  129. package/dist/src/atoms/image.d.ts +35 -9
  130. package/dist/src/atoms/image.d.ts.map +1 -1
  131. package/dist/src/atoms/input.d.ts +3 -3
  132. package/dist/src/atoms/input.d.ts.map +1 -1
  133. package/dist/src/atoms/label.d.ts +2 -2
  134. package/dist/src/atoms/link-button.d.ts +71 -12
  135. package/dist/src/atoms/link-button.d.ts.map +1 -1
  136. package/dist/src/atoms/link.d.ts +5 -5
  137. package/dist/src/atoms/link.d.ts.map +1 -1
  138. package/dist/src/atoms/numeric-input.d.ts +23 -22
  139. package/dist/src/atoms/numeric-input.d.ts.map +1 -1
  140. package/dist/src/atoms/rating.d.ts +6 -5
  141. package/dist/src/atoms/rating.d.ts.map +1 -1
  142. package/dist/src/atoms/skeleton.d.ts +15 -15
  143. package/dist/src/atoms/skeleton.d.ts.map +1 -1
  144. package/dist/src/atoms/status-text.d.ts +97 -0
  145. package/dist/src/atoms/status-text.d.ts.map +1 -0
  146. package/dist/src/atoms/textarea.d.ts +3 -3
  147. package/dist/src/atoms/textarea.d.ts.map +1 -1
  148. package/dist/src/atoms/tooltip.d.ts +3 -3
  149. package/dist/src/atoms/tooltip.d.ts.map +1 -1
  150. package/dist/src/molecules/accordion.d.ts +14 -13
  151. package/dist/src/molecules/accordion.d.ts.map +1 -1
  152. package/dist/src/molecules/breadcrumb.d.ts +132 -35
  153. package/dist/src/molecules/breadcrumb.d.ts.map +1 -1
  154. package/dist/src/molecules/carousel.d.ts +67 -16
  155. package/dist/src/molecules/carousel.d.ts.map +1 -1
  156. package/dist/src/molecules/color-select.d.ts +4 -4
  157. package/dist/src/molecules/combobox.d.ts +36 -9
  158. package/dist/src/molecules/combobox.d.ts.map +1 -1
  159. package/dist/src/molecules/dialog.d.ts +3 -3
  160. package/dist/src/molecules/dialog.d.ts.map +1 -1
  161. package/dist/src/molecules/figma/accordion.figma.d.ts +2 -0
  162. package/dist/src/molecules/figma/accordion.figma.d.ts.map +1 -0
  163. package/dist/src/molecules/figma/breadcrumb.figma.d.ts +2 -0
  164. package/dist/src/molecules/figma/breadcrumb.figma.d.ts.map +1 -0
  165. package/dist/src/molecules/figma/carousel.figma.d.ts +2 -0
  166. package/dist/src/molecules/figma/carousel.figma.d.ts.map +1 -0
  167. package/dist/src/molecules/figma/combobox.figma.d.ts +2 -0
  168. package/dist/src/molecules/figma/combobox.figma.d.ts.map +1 -0
  169. package/dist/src/molecules/figma/dialog.figma.d.ts +2 -0
  170. package/dist/src/molecules/figma/dialog.figma.d.ts.map +1 -0
  171. package/dist/src/molecules/figma/form-checkbox.figma.d.ts +2 -0
  172. package/dist/src/molecules/figma/form-checkbox.figma.d.ts.map +1 -0
  173. package/dist/src/molecules/figma/form-input.figma.d.ts +2 -0
  174. package/dist/src/molecules/figma/form-input.figma.d.ts.map +1 -0
  175. package/dist/src/molecules/figma/form-numeric-input.figma.d.ts +2 -0
  176. package/dist/src/molecules/figma/form-numeric-input.figma.d.ts.map +1 -0
  177. package/dist/src/molecules/figma/form-textarea.figma.d.ts +2 -0
  178. package/dist/src/molecules/figma/form-textarea.figma.d.ts.map +1 -0
  179. package/dist/src/molecules/figma/menu.figma.d.ts +2 -0
  180. package/dist/src/molecules/figma/menu.figma.d.ts.map +1 -0
  181. package/dist/src/molecules/figma/pagination.figma.d.ts +2 -0
  182. package/dist/src/molecules/figma/pagination.figma.d.ts.map +1 -0
  183. package/dist/src/molecules/figma/popover.figma.d.ts +2 -0
  184. package/dist/src/molecules/figma/popover.figma.d.ts.map +1 -0
  185. package/dist/src/molecules/figma/product-card.figma.d.ts +2 -0
  186. package/dist/src/molecules/figma/product-card.figma.d.ts.map +1 -0
  187. package/dist/src/molecules/figma/radio-card.figma.d.ts +2 -0
  188. package/dist/src/molecules/figma/radio-card.figma.d.ts.map +1 -0
  189. package/dist/src/molecules/figma/radio-group.figma.d.ts +2 -0
  190. package/dist/src/molecules/figma/radio-group.figma.d.ts.map +1 -0
  191. package/dist/src/molecules/figma/search-form.figma.d.ts +2 -0
  192. package/dist/src/molecules/figma/search-form.figma.d.ts.map +1 -0
  193. package/dist/src/molecules/figma/select.figma.d.ts +2 -0
  194. package/dist/src/molecules/figma/select.figma.d.ts.map +1 -0
  195. package/dist/src/molecules/figma/slider.figma.d.ts +2 -0
  196. package/dist/src/molecules/figma/slider.figma.d.ts.map +1 -0
  197. package/dist/src/molecules/figma/steps.figma.d.ts +2 -0
  198. package/dist/src/molecules/figma/steps.figma.d.ts.map +1 -0
  199. package/dist/src/molecules/figma/switch.figma.d.ts +2 -0
  200. package/dist/src/molecules/figma/switch.figma.d.ts.map +1 -0
  201. package/dist/src/molecules/figma/tabs.figma.d.ts +2 -0
  202. package/dist/src/molecules/figma/tabs.figma.d.ts.map +1 -0
  203. package/dist/src/molecules/figma/toast.figma.d.ts +2 -0
  204. package/dist/src/molecules/figma/toast.figma.d.ts.map +1 -0
  205. package/dist/src/molecules/figma/tree-view.figma.d.ts +2 -0
  206. package/dist/src/molecules/figma/tree-view.figma.d.ts.map +1 -0
  207. package/dist/src/molecules/form-checkbox.d.ts +22 -12
  208. package/dist/src/molecules/form-checkbox.d.ts.map +1 -1
  209. package/dist/src/molecules/form-input.d.ts +8 -6
  210. package/dist/src/molecules/form-input.d.ts.map +1 -1
  211. package/dist/src/molecules/form-numeric-input.d.ts +6 -6
  212. package/dist/src/molecules/form-numeric-input.d.ts.map +1 -1
  213. package/dist/src/molecules/form-textarea.d.ts +8 -6
  214. package/dist/src/molecules/form-textarea.d.ts.map +1 -1
  215. package/dist/src/molecules/menu.d.ts +11 -11
  216. package/dist/src/molecules/menu.d.ts.map +1 -1
  217. package/dist/src/molecules/pagination.d.ts +37 -9
  218. package/dist/src/molecules/pagination.d.ts.map +1 -1
  219. package/dist/src/molecules/phone-input.d.ts +246 -0
  220. package/dist/src/molecules/phone-input.d.ts.map +1 -0
  221. package/dist/src/molecules/popover.d.ts +76 -24
  222. package/dist/src/molecules/popover.d.ts.map +1 -1
  223. package/dist/src/molecules/product-card.d.ts +11 -10
  224. package/dist/src/molecules/product-card.d.ts.map +1 -1
  225. package/dist/src/molecules/radio-card.d.ts +429 -0
  226. package/dist/src/molecules/radio-card.d.ts.map +1 -0
  227. package/dist/src/molecules/radio-group.d.ts +245 -0
  228. package/dist/src/molecules/radio-group.d.ts.map +1 -0
  229. package/dist/src/molecules/search-form.d.ts +94 -27
  230. package/dist/src/molecules/search-form.d.ts.map +1 -1
  231. package/dist/src/molecules/select.d.ts +124 -30
  232. package/dist/src/molecules/select.d.ts.map +1 -1
  233. package/dist/src/molecules/slider.d.ts +9 -12
  234. package/dist/src/molecules/slider.d.ts.map +1 -1
  235. package/dist/src/molecules/steps.d.ts +236 -64
  236. package/dist/src/molecules/steps.d.ts.map +1 -1
  237. package/dist/src/molecules/switch.d.ts +7 -7
  238. package/dist/src/molecules/switch.d.ts.map +1 -1
  239. package/dist/src/molecules/tabs.d.ts +10 -10
  240. package/dist/src/molecules/tabs.d.ts.map +1 -1
  241. package/dist/src/molecules/toast.d.ts +6 -6
  242. package/dist/src/molecules/tree-view.d.ts +14 -14
  243. package/dist/src/molecules/tree-view.d.ts.map +1 -1
  244. package/dist/src/organisms/footer.d.ts +15 -6
  245. package/dist/src/organisms/footer.d.ts.map +1 -1
  246. package/dist/src/organisms/gallery.d.ts +147 -0
  247. package/dist/src/organisms/gallery.d.ts.map +1 -0
  248. package/dist/src/organisms/header.d.ts +9 -9
  249. package/dist/src/organisms/header.d.ts.map +1 -1
  250. package/dist/src/organisms/table.d.ts +10 -10
  251. package/dist/src/organisms/table.d.ts.map +1 -1
  252. package/dist/src/templates/accordion.d.ts +3 -3
  253. package/dist/src/templates/breadcrumb.d.ts +28 -0
  254. package/dist/src/templates/breadcrumb.d.ts.map +1 -0
  255. package/dist/src/templates/carousel.d.ts +4 -4
  256. package/dist/src/templates/carousel.d.ts.map +1 -1
  257. package/dist/src/templates/gallery.d.ts +43 -0
  258. package/dist/src/templates/gallery.d.ts.map +1 -0
  259. package/dist/src/templates/numeric-input.d.ts +5 -5
  260. package/dist/src/templates/popover.d.ts +19 -0
  261. package/dist/src/templates/popover.d.ts.map +1 -0
  262. package/dist/src/templates/product-card.d.ts +4 -4
  263. package/dist/src/templates/select.d.ts +22 -0
  264. package/dist/src/templates/select.d.ts.map +1 -0
  265. package/dist/src/templates/tabs.d.ts +4 -4
  266. package/dist/src/types/zag.d.ts +19 -18
  267. package/dist/src/types/zag.d.ts.map +1 -1
  268. package/dist/src/utils.d.ts +1 -1
  269. package/dist/src/utils.d.ts.map +1 -1
  270. package/dist/stories/atoms/badge.stories.d.ts +12 -0
  271. package/dist/stories/atoms/badge.stories.d.ts.map +1 -0
  272. package/dist/stories/atoms/button.stories.d.ts +12 -0
  273. package/dist/stories/atoms/button.stories.d.ts.map +1 -0
  274. package/dist/stories/atoms/checkbox.stories.d.ts +56 -0
  275. package/dist/stories/atoms/checkbox.stories.d.ts.map +1 -0
  276. package/dist/stories/atoms/icon.stories.d.ts +11 -0
  277. package/dist/stories/atoms/icon.stories.d.ts.map +1 -0
  278. package/dist/stories/atoms/image.stories.d.ts +8 -0
  279. package/dist/stories/atoms/image.stories.d.ts.map +1 -0
  280. package/dist/stories/atoms/input.stories.d.ts +8 -0
  281. package/dist/stories/atoms/input.stories.d.ts.map +1 -0
  282. package/dist/stories/atoms/numeric-input.stories.d.ts +23 -0
  283. package/dist/stories/atoms/numeric-input.stories.d.ts.map +1 -0
  284. package/dist/stories/atoms/rating.stories.d.ts +10 -0
  285. package/dist/stories/atoms/rating.stories.d.ts.map +1 -0
  286. package/dist/stories/atoms/skeleton.stories.d.ts +34 -0
  287. package/dist/stories/atoms/skeleton.stories.d.ts.map +1 -0
  288. package/dist/stories/atoms/status-text.stories.d.ts +15 -0
  289. package/dist/stories/atoms/status-text.stories.d.ts.map +1 -0
  290. package/dist/stories/atoms/textarea.stories.d.ts +12 -0
  291. package/dist/stories/atoms/textarea.stories.d.ts.map +1 -0
  292. package/dist/stories/atoms/tooltip.stories.d.ts +28 -0
  293. package/dist/stories/atoms/tooltip.stories.d.ts.map +1 -0
  294. package/dist/stories/helpers/icon-options.d.ts +4 -0
  295. package/dist/stories/helpers/icon-options.d.ts.map +1 -0
  296. package/dist/stories/molecules/accordion.stories.d.ts +14 -0
  297. package/dist/stories/molecules/accordion.stories.d.ts.map +1 -0
  298. package/dist/stories/molecules/breadcrumb.stories.d.ts +14 -0
  299. package/dist/stories/molecules/breadcrumb.stories.d.ts.map +1 -0
  300. package/dist/stories/molecules/carousel.stories.d.ts +19 -0
  301. package/dist/stories/molecules/carousel.stories.d.ts.map +1 -0
  302. package/dist/stories/molecules/color-select.stories.d.ts +12 -0
  303. package/dist/stories/molecules/color-select.stories.d.ts.map +1 -0
  304. package/dist/stories/molecules/combobox.stories.d.ts +11 -0
  305. package/dist/stories/molecules/combobox.stories.d.ts.map +1 -0
  306. package/dist/stories/molecules/dialog.stories.d.ts +19 -0
  307. package/dist/stories/molecules/dialog.stories.d.ts.map +1 -0
  308. package/dist/stories/molecules/form-checkbox.stories.d.ts +17 -0
  309. package/dist/stories/molecules/form-checkbox.stories.d.ts.map +1 -0
  310. package/dist/stories/molecules/form-input.stories.d.ts +12 -0
  311. package/dist/stories/molecules/form-input.stories.d.ts.map +1 -0
  312. package/dist/stories/molecules/form-numeric-input.stories.d.ts +17 -0
  313. package/dist/stories/molecules/form-numeric-input.stories.d.ts.map +1 -0
  314. package/dist/stories/molecules/form-textarea.stories.d.ts +12 -0
  315. package/dist/stories/molecules/form-textarea.stories.d.ts.map +1 -0
  316. package/dist/stories/molecules/menu.stories.d.ts +22 -0
  317. package/dist/stories/molecules/menu.stories.d.ts.map +1 -0
  318. package/dist/stories/molecules/pagination.stories.d.ts +13 -0
  319. package/dist/stories/molecules/pagination.stories.d.ts.map +1 -0
  320. package/dist/stories/molecules/phone-input.stories.d.ts +19 -0
  321. package/dist/stories/molecules/phone-input.stories.d.ts.map +1 -0
  322. package/dist/stories/molecules/popover.stories.d.ts +140 -0
  323. package/dist/stories/molecules/popover.stories.d.ts.map +1 -0
  324. package/dist/stories/molecules/product-card.stories.d.ts +41 -0
  325. package/dist/stories/molecules/product-card.stories.d.ts.map +1 -0
  326. package/dist/stories/molecules/radio-card.stories.d.ts +13 -0
  327. package/dist/stories/molecules/radio-card.stories.d.ts.map +1 -0
  328. package/dist/stories/molecules/radio-group.stories.d.ts +13 -0
  329. package/dist/stories/molecules/radio-group.stories.d.ts.map +1 -0
  330. package/dist/stories/molecules/search-form.stories.d.ts +16 -0
  331. package/dist/stories/molecules/search-form.stories.d.ts.map +1 -0
  332. package/dist/stories/molecules/select.stories.d.ts +19 -0
  333. package/dist/stories/molecules/select.stories.d.ts.map +1 -0
  334. package/dist/stories/molecules/slider.stories.d.ts +19 -0
  335. package/dist/stories/molecules/slider.stories.d.ts.map +1 -0
  336. package/dist/stories/molecules/steps.stories.d.ts +19 -0
  337. package/dist/stories/molecules/steps.stories.d.ts.map +1 -0
  338. package/dist/stories/molecules/switch.stories.d.ts +13 -0
  339. package/dist/stories/molecules/switch.stories.d.ts.map +1 -0
  340. package/dist/stories/molecules/tabs.stories.d.ts +18 -0
  341. package/dist/stories/molecules/tabs.stories.d.ts.map +1 -0
  342. package/dist/stories/molecules/toast.stories.d.ts +11 -0
  343. package/dist/stories/molecules/toast.stories.d.ts.map +1 -0
  344. package/dist/stories/molecules/tree-view.stories.d.ts +17 -0
  345. package/dist/stories/molecules/tree-view.stories.d.ts.map +1 -0
  346. package/dist/stories/organisms/footer.stories.d.ts +12 -0
  347. package/dist/stories/organisms/footer.stories.d.ts.map +1 -0
  348. package/dist/stories/organisms/gallery.stories.d.ts +73 -0
  349. package/dist/stories/organisms/gallery.stories.d.ts.map +1 -0
  350. package/dist/stories/organisms/header.stories.d.ts +12 -0
  351. package/dist/stories/organisms/header.stories.d.ts.map +1 -0
  352. package/dist/stories/organisms/table.stories.d.ts +56 -0
  353. package/dist/stories/organisms/table.stories.d.ts.map +1 -0
  354. package/dist/stories/overview/apca-contrast-test.stories.d.ts +8 -0
  355. package/dist/stories/overview/apca-contrast-test.stories.d.ts.map +1 -0
  356. package/dist/stories/overview/color-palette.stories.d.ts +8 -0
  357. package/dist/stories/overview/color-palette.stories.d.ts.map +1 -0
  358. package/dist/stories/overview/component-comparison.stories.d.ts +6 -0
  359. package/dist/stories/overview/component-comparison.stories.d.ts.map +1 -0
  360. package/dist/stories/templates/accordion.stories.d.ts +8 -0
  361. package/dist/stories/templates/accordion.stories.d.ts.map +1 -0
  362. package/dist/stories/templates/breadcrumb.stories.d.ts +12 -0
  363. package/dist/stories/templates/breadcrumb.stories.d.ts.map +1 -0
  364. package/dist/stories/templates/carousel.stories.d.ts +8 -0
  365. package/dist/stories/templates/carousel.stories.d.ts.map +1 -0
  366. package/dist/stories/templates/comprehensive-form.stories.d.ts +26 -0
  367. package/dist/stories/templates/comprehensive-form.stories.d.ts.map +1 -0
  368. package/dist/stories/templates/gallery.stories.d.ts +7 -0
  369. package/dist/stories/templates/gallery.stories.d.ts.map +1 -0
  370. package/dist/stories/templates/numeric-input.stories.d.ts +8 -0
  371. package/dist/stories/templates/numeric-input.stories.d.ts.map +1 -0
  372. package/dist/stories/templates/popover.stories.d.ts +55 -0
  373. package/dist/stories/templates/popover.stories.d.ts.map +1 -0
  374. package/dist/stories/templates/product-card.stories.d.ts +10 -0
  375. package/dist/stories/templates/product-card.stories.d.ts.map +1 -0
  376. package/dist/stories/templates/select.stories.d.ts +10 -0
  377. package/dist/stories/templates/select.stories.d.ts.map +1 -0
  378. package/dist/stories/templates/tabs.stories.d.ts +8 -0
  379. package/dist/stories/templates/tabs.stories.d.ts.map +1 -0
  380. package/dist/templates/accordion.js +9 -9
  381. package/dist/templates/breadcrumb.js +78 -0
  382. package/dist/templates/carousel.js +13 -15
  383. package/dist/templates/gallery.js +89 -0
  384. package/dist/templates/numeric-input.js +4 -4
  385. package/dist/templates/popover.js +35 -0
  386. package/dist/templates/product-card.js +10 -10
  387. package/dist/templates/select.js +43 -0
  388. package/dist/templates/tabs.js +8 -8
  389. package/dist/test/visual.spec.d.ts +2 -0
  390. package/dist/test/visual.spec.d.ts.map +1 -0
  391. package/dist/utils.js +1 -1
  392. package/package.json +41 -28
  393. package/src/tokens/_base.css +3 -3
  394. package/src/tokens/_layout.css +4 -0
  395. package/src/tokens/_semantic.css +49 -10
  396. package/src/tokens/_tokens-base.css +67 -0
  397. package/src/tokens/_typography.css +36 -6
  398. package/src/tokens/components/_form-control.css +67 -0
  399. package/src/tokens/components/atoms/_badge.css +16 -5
  400. package/src/tokens/components/atoms/_button.css +16 -10
  401. package/src/tokens/components/atoms/_checkbox.css +52 -0
  402. package/src/tokens/components/atoms/_icon.css +90 -2
  403. package/src/tokens/components/atoms/_image.css +5 -0
  404. package/src/tokens/components/atoms/_input.css +11 -32
  405. package/src/tokens/components/atoms/_label.css +11 -0
  406. package/src/tokens/components/atoms/_numeric-input.css +27 -13
  407. package/src/tokens/components/atoms/_rating.css +2 -2
  408. package/src/tokens/components/atoms/_status-text.css +32 -0
  409. package/src/tokens/components/atoms/_textarea.css +15 -17
  410. package/src/tokens/components/components.css +10 -1
  411. package/src/tokens/components/molecules/_accordion.css +1 -8
  412. package/src/tokens/components/molecules/_breadcrumb.css +42 -20
  413. package/src/tokens/components/molecules/_carousel.css +10 -2
  414. package/src/tokens/components/molecules/_color-select.css +3 -3
  415. package/src/tokens/components/molecules/_combobox.css +15 -21
  416. package/src/tokens/components/molecules/_dialog.css +0 -1
  417. package/src/tokens/components/molecules/_menu.css +0 -1
  418. package/src/tokens/components/molecules/_pagination.css +3 -3
  419. package/src/tokens/components/molecules/_phone-input.css +63 -0
  420. package/src/tokens/components/molecules/_popover.css +3 -0
  421. package/src/tokens/components/molecules/_product-card.css +9 -1
  422. package/src/tokens/components/molecules/_radio-card.css +197 -0
  423. package/src/tokens/components/molecules/_radio-group.css +150 -0
  424. package/src/tokens/components/molecules/_search-form.css +7 -3
  425. package/src/tokens/components/molecules/_select.css +41 -20
  426. package/src/tokens/components/molecules/_steps.css +115 -34
  427. package/src/tokens/components/molecules/_toast.css +5 -5
  428. package/src/tokens/components/molecules/_tree-view.css +5 -6
  429. package/src/tokens/components/organisms/_footer.css +1 -6
  430. package/src/tokens/components/organisms/_gallery.css +35 -0
  431. package/src/tokens/components/organisms/_header.css +8 -0
  432. package/src/tokens/figma/dark/variables.css +1406 -0
  433. package/src/tokens/figma/light/variables.css +1406 -0
  434. package/src/tokens/index.css +1 -65
  435. package/src/tokens/tokens-only.css +1 -64
  436. package/dist/atoms/error-text.js +0 -38
  437. package/dist/atoms/extra-text.js +0 -27
  438. package/dist/molecules/checkbox.js +0 -98
  439. package/dist/src/atoms/error-text.d.ts +0 -29
  440. package/dist/src/atoms/error-text.d.ts.map +0 -1
  441. package/dist/src/atoms/extra-text.d.ts +0 -27
  442. package/dist/src/atoms/extra-text.d.ts.map +0 -1
  443. package/dist/src/molecules/checkbox.d.ts +0 -19
  444. package/dist/src/molecules/checkbox.d.ts.map +0 -1
  445. package/src/tokens/components/molecules/_checkbox.css +0 -34
  446. package/src/tokens/components/molecules/index.css +0 -2
package/README.md CHANGED
@@ -149,17 +149,70 @@ When overriding, create a file in the brand folder and map the semantic tokens t
149
149
  - Keep overrides in dedicated brand folders.
150
150
  - Basic components (e.g., Button) belong only in atoms/molecules.
151
151
 
152
- ## 7. Publishing and releases
152
+ ## 7. Visual Regression Tests (Playwright + Docker)
153
+
154
+ To keep screenshots stable across machines, run component tests inside Docker.
155
+
156
+ 1. Run Playwright tests in a consistent Linux environment (builds Storybook static output by default):
157
+
158
+ ```bash
159
+ pnpm -C libs/ui test:components
160
+ ```
161
+
162
+ 1. Update snapshots (inside Docker):
163
+
164
+ ```bash
165
+ pnpm -C libs/ui test:components:update
166
+ ```
167
+
168
+ Docker image is defined in `docker/development/playwright/Dockerfile`.
169
+ These tests are intentionally Docker-only; running them directly on the host is blocked to keep snapshots reproducible.
170
+ Make sure Storybook is served at `TEST_BASE_URL` (default `http://127.0.0.1:6006` inside the container).
171
+ You can run `pnpm -C libs/ui storybook` on the host and set `TEST_BASE_URL=http://host.docker.internal:6006`,
172
+ or let Playwright start its own `http-server` inside Docker from `storybook-static`.
173
+ For visual stability, stories used in regression tests should rely on local assets (avoid external image URLs).
174
+
175
+ Optional environment overrides:
176
+ - `TEST_BASE_URL` (default: `http://127.0.0.1:6006` inside the container)
177
+ - `PLAYWRIGHT_STORYBOOK_REBUILD` (default: `1`, rebuilds `storybook-static`; set to `0` to reuse an existing build)
178
+ - `TEST_STORIES` (comma-separated Storybook story ids to run, e.g. `atoms-button--states,molecules-productcard--layout-variants`)
179
+ - `PLAYWRIGHT_WORKERS` (override worker count for parallel runs)
180
+ - `PLAYWRIGHT_PAGE_RESET` (default: `1`, resets cookies/storage between stories; set to `0` for max speed if stable)
181
+ - `DOCKER_PLATFORM` (default: `linux/amd64`)
182
+ - `PLAYWRIGHT_DOCKER_IMAGE` (default: `new-engine-ui-playwright`)
183
+ - `PLAYWRIGHT_DOCKER_SHM_SIZE` (default: `2g`, improves Playwright stability in Docker)
184
+ - `PLAYWRIGHT_DOCKER_IPC` (default: `host`, improves Playwright stability in Docker)
185
+ - `PLAYWRIGHT_DOCKER_SEQUENTIAL` (default: `0`, runs projects in parallel; set to `1` to reduce memory spikes)
186
+ - `PLAYWRIGHT_DOCKER_PROJECTS` (comma-separated Playwright project names to run sequentially; default: `desktop,mobile`)
187
+
188
+ ### Recommendation for `PLAYWRIGHT_WORKERS` and parallelism
189
+
190
+ - If `PLAYWRIGHT_WORKERS` is not set, the Playwright config defaults to
191
+ using (CPU cores - 1) workers. This balances parallelism with leaving one
192
+ core for system processes. You can override it in CI with `PLAYWRIGHT_WORKERS=4` (or
193
+ another suitable value) depending on your runner size.
194
+ - The test suite enables `fullyParallel` in Playwright config, so tests can run
195
+ concurrently across files and workers — ensure tests are isolated and use
196
+ unique snapshot names (the visual tests already include `story.id` in the
197
+ screenshot filename, which is good).
198
+
199
+ Example with parallel workers:
200
+
201
+ ```bash
202
+ TEST_BASE_URL=http://127.0.0.1:6006 PLAYWRIGHT_WORKERS=6 pnpm -C libs/ui test:components
203
+ ```
204
+
205
+ ## 8. Publishing and releases
153
206
 
154
207
  - Build + publint: `pnpm -C libs/ui build` runs `rsbuild-plugin-publint` after the build; if exports/entrypoints are wrong, this command fails.
155
208
  - Exports only, no barrel: import from explicit subpaths (e.g. `@techsio/ui-kit/atoms/button`, `@techsio/ui-kit/templates/accordion`, `@techsio/ui-kit/utils`). The package root is intentionally not exported.
156
- - Automated releases: `libs/ui/release.config.mjs` uses semantic-release (tag format `ui-kit-v<version>`) to bump versions, update changelog, and publish to npm. While we are <1.0.0, `BREAKING CHANGE` commits are forced to “minor” bumps to stay in 0.x; remove that release rule when stabilizing for 1.0.0+ to restore SemVer majors.
157
- - Security posture: releases are restricted to GitHub Actions (`GITHUB_ACTIONS` required), npm publishes use provenance (`NPM_CONFIG_PROVENANCE=true`), and tokens live only in Actions secrets (`GH_TOKEN`, `NPM_TOKEN`). Keep secrets in a protected environment for extra safety.
158
- - CI workflow: `.github/workflows/ui-release.yml` builds `libs/ui` and runs semantic-release on `master`/`main` with `GH_TOKEN` and `NPM_TOKEN` secrets.
209
+ - Automated releases: `libs/ui/release.config.mjs` uses semantic-release (tag format `ui-kit-v<version>`) to publish to npm and create GitHub releases without pushing generated version/changelog commits back to the protected branch. While we are <1.0.0, `BREAKING CHANGE` commits are forced to “minor” bumps to stay in 0.x; remove that release rule when stabilizing for 1.0.0+ to restore SemVer majors.
210
+ - Security posture: releases are restricted to GitHub Actions (`GITHUB_ACTIONS` required), npm publishes use trusted publishing through GitHub OIDC (`id-token: write`) and do not require an npm token.
211
+ - CI workflow: `.github/workflows/ui-release.yml` builds `libs/ui` and runs semantic-release on `master`/`main` with the workflow `GITHUB_TOKEN`. Use the manual `force_release` dispatch to publish missed UI changes after a skipped release.
159
212
  - Local dry run: `pnpm -C libs/ui semantic-release --dry-run`.
160
213
  - Commit format: follow Conventional Commits (`feat:`, `fix:`, `chore:`, `BREAKING CHANGE:`) so semantic-release can infer the correct version bump.
161
- - Required CI secrets: `GH_TOKEN` (repo write) and `NPM_TOKEN` (publish).
214
+ - Required CI secrets: none for npm publishing; npm trusted publishing must be configured on npmjs.com for this repository and workflow path.
162
215
 
163
- ## 8. Conclusion
216
+ ## 9. Conclusion
164
217
 
165
218
  This README serves as the single source of truth for building and maintaining our design system. By adhering to these guidelines, you ensure that our UI remains consistent, flexible, and scalable across multiple brands. If you have any questions or suggestions, please reach out to the design system team.
@@ -0,0 +1,12 @@
1
+ import type { ReactNode } from "react";
2
+ type VariantGroupProps = {
3
+ title: string;
4
+ children: ReactNode;
5
+ fullWidth?: boolean;
6
+ };
7
+ export declare function VariantGroup({ title, children, fullWidth, }: VariantGroupProps): import("react/jsx-runtime").JSX.Element;
8
+ export declare function VariantContainer({ children }: {
9
+ children: ReactNode;
10
+ }): import("react/jsx-runtime").JSX.Element;
11
+ export {};
12
+ //# sourceMappingURL=decorator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decorator.d.ts","sourceRoot":"","sources":["../../.storybook/decorator.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEtC,KAAK,iBAAiB,GAAG;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,SAAS,CAAA;IACnB,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB,CAAA;AAED,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,QAAQ,EACR,SAAS,GACV,EAAE,iBAAiB,2CAanB;AAED,wBAAgB,gBAAgB,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,2CAErE"}
@@ -0,0 +1,4 @@
1
+ import type { StorybookConfig } from 'storybook-react-rsbuild';
2
+ declare const config: StorybookConfig;
3
+ export default config;
4
+ //# sourceMappingURL=main.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../.storybook/main.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAE9D,QAAA,MAAM,MAAM,EAAE,eAoBb,CAAA;AAED,eAAe,MAAM,CAAA"}
@@ -0,0 +1,5 @@
1
+ import type { Preview } from "@storybook/react";
2
+ import "../src/tokens/index.css";
3
+ declare const preview: Preview;
4
+ export default preview;
5
+ //# sourceMappingURL=preview.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preview.d.ts","sourceRoot":"","sources":["../../.storybook/preview.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,yBAAyB,CAAA;AAEhC,QAAA,MAAM,OAAO,EAAE,OA4Cd,CAAA;AAED,eAAe,OAAO,CAAA"}
@@ -0,0 +1,12 @@
1
+ import type { TestRunnerConfig } from '@storybook/test-runner';
2
+ type JestConfig = {
3
+ modulePathIgnorePatterns?: string[];
4
+ testTimeout?: number;
5
+ [key: string]: unknown;
6
+ };
7
+ type TestRunnerConfigWithJest = TestRunnerConfig & {
8
+ getJestConfig: (config: JestConfig) => JestConfig;
9
+ };
10
+ declare const testRunnerConfig: TestRunnerConfigWithJest;
11
+ export default testRunnerConfig;
12
+ //# sourceMappingURL=test-runner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-runner.d.ts","sourceRoot":"","sources":["../../.storybook/test-runner.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAkB/D,KAAK,UAAU,GAAG;IAChB,wBAAwB,CAAC,EAAE,MAAM,EAAE,CAAC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC;AAEF,KAAK,wBAAwB,GAAG,gBAAgB,GAAG;IACjD,aAAa,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,UAAU,CAAC;CACnD,CAAC;AASF,QAAA,MAAM,gBAAgB,EAAE,wBAavB,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
@@ -2,60 +2,78 @@ import { jsx } from "react/jsx-runtime";
2
2
  import { tv } from "../utils.js";
3
3
  const badgeVariants = tv({
4
4
  base: [
5
- 'inline-flex items-center justify-center',
6
- 'p-badge',
7
- 'rounded-badge border-badge-border',
8
- 'text-badge-size font-badge',
9
- 'border-(length:--border-width-badge-dynamic)'
5
+ "inline-flex items-center justify-center",
6
+ "rounded-badge border-badge-border",
7
+ "border-(length:--border-width-badge)"
10
8
  ],
11
9
  variants: {
12
10
  variant: {
13
11
  primary: [
14
- 'bg-badge-bg-primary text-badge-fg-primary border-badge-border-primary'
12
+ "border-badge-border-primary bg-badge-bg-primary text-badge-fg-primary"
15
13
  ],
16
14
  secondary: [
17
- 'bg-badge-bg-secondary text-badge-fg-secondary border-badge-border-secondary'
15
+ "border-badge-border-secondary bg-badge-bg-secondary text-badge-fg-secondary"
18
16
  ],
19
17
  tertiary: [
20
- 'bg-badge-bg-tertiary text-badge-fg-tertiary border-badge-border-tertiary'
18
+ "border-badge-border-tertiary bg-badge-bg-tertiary text-badge-fg-tertiary"
21
19
  ],
22
20
  discount: [
23
- 'bg-badge-bg-discount text-badge-fg-discount border-badge-border-discount'
21
+ "border-badge-border-discount bg-badge-bg-discount text-badge-fg-discount"
24
22
  ],
25
23
  info: [
26
- 'bg-badge-bg-info text-badge-fg-info border-badge-border-info'
24
+ "border-badge-border-info bg-badge-bg-info text-badge-fg-info"
27
25
  ],
28
26
  success: [
29
- 'bg-badge-bg-success text-badge-fg-success border-badge-border-success'
27
+ "border-badge-border-success bg-badge-bg-success text-badge-fg-success"
30
28
  ],
31
29
  warning: [
32
- 'bg-badge-bg-warning text-badge-fg-warning border-badge-border-warning'
30
+ "border-badge-border-warning bg-badge-bg-warning text-badge-fg-warning"
33
31
  ],
34
32
  danger: [
35
- 'bg-badge-bg-danger text-badge-fg-danger border-badge-border-danger'
33
+ "border-badge-border-danger bg-badge-bg-danger text-badge-fg-danger"
36
34
  ],
37
35
  outline: [
38
- 'bg-badge-bg-outline text-badge-fg-outline border-badge-border-outline'
36
+ "border-badge-border-outline bg-badge-bg-outline text-badge-fg-outline"
39
37
  ],
40
38
  dynamic: []
39
+ },
40
+ size: {
41
+ sm: [
42
+ "text-badge-sm font-badge-sm",
43
+ "p-badge-sm"
44
+ ],
45
+ md: [
46
+ "text-badge-md font-badge-md",
47
+ "p-badge-md"
48
+ ],
49
+ lg: [
50
+ "text-badge-lg font-badge-lg",
51
+ "p-badge-lg"
52
+ ],
53
+ xl: [
54
+ "text-badge-xl font-badge-xl",
55
+ "p-badge-xl"
56
+ ]
41
57
  }
42
58
  },
43
59
  defaultVariants: {
44
- variant: 'info'
60
+ variant: "info",
61
+ size: "md"
45
62
  }
46
63
  });
47
- function Badge({ variant, className, children, style, ...props }) {
48
- const isDynamic = 'dynamic' === variant;
64
+ function Badge({ variant, size, className, children, style, ...props }) {
65
+ const isDynamic = "dynamic" === variant;
49
66
  const { bgColor, fgColor, borderColor, ...restProps } = props;
50
67
  const dynamicStyles = isDynamic ? {
51
68
  ...style,
52
- 'background-color': bgColor,
69
+ backgroundColor: bgColor,
53
70
  color: fgColor,
54
- 'border-color': borderColor
71
+ borderColor: borderColor
55
72
  } : style;
56
73
  return /*#__PURE__*/ jsx("span", {
57
74
  className: badgeVariants({
58
75
  variant,
76
+ size,
59
77
  className
60
78
  }),
61
79
  style: dynamicStyles,