@sebgroup/green-core 3.13.0 → 3.14.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 (439) hide show
  1. package/components/badge/badge.styles.js +1 -1
  2. package/components/button/button.styles.js +1 -1
  3. package/components/button/button.trans.styles.scss.js +1 -1
  4. package/components/context-menu/context-menu.trans.styles.scss.js +1 -1
  5. package/components/index.d.ts +1 -0
  6. package/components/index.js +1 -0
  7. package/components/popover/popover.trans.styles.scss.js +1 -1
  8. package/components/tabs/index.d.ts +3 -0
  9. package/components/tabs/index.js +3 -0
  10. package/components/tabs/tab/index.d.ts +1 -0
  11. package/components/tabs/tab/index.js +1 -0
  12. package/components/tabs/tab/tab.component.d.ts +49 -0
  13. package/components/tabs/tab/tab.component.js +120 -0
  14. package/components/tabs/tab/tab.d.ts +2 -0
  15. package/components/tabs/tab/tab.js +6 -0
  16. package/components/tabs/tab/tab.styles.d.ts +2 -0
  17. package/components/tabs/tab/tab.styles.js +69 -0
  18. package/components/tabs/tab-panel/index.d.ts +1 -0
  19. package/components/tabs/tab-panel/index.js +1 -0
  20. package/components/tabs/tab-panel/tab-panel.component.d.ts +33 -0
  21. package/components/tabs/tab-panel/tab-panel.component.js +73 -0
  22. package/components/tabs/tab-panel/tab-panel.d.ts +2 -0
  23. package/components/tabs/tab-panel/tab-panel.js +6 -0
  24. package/components/tabs/tab-panel/tab-panel.styles.d.ts +2 -0
  25. package/components/tabs/tab-panel/tab-panel.styles.js +22 -0
  26. package/components/tabs/tabs.component.d.ts +41 -0
  27. package/components/tabs/tabs.component.js +439 -0
  28. package/components/tabs/tabs.d.ts +2 -0
  29. package/components/tabs/tabs.js +6 -0
  30. package/components/tabs/tabs.styles.d.ts +2 -0
  31. package/components/tabs/tabs.styles.js +115 -0
  32. package/custom-elements.json +27235 -25714
  33. package/gds-element.js +1 -1
  34. package/generated/mcp/components.json +39 -1
  35. package/generated/mcp/icons.json +1 -1
  36. package/generated/mcp/index.json +1 -1
  37. package/generated/mcp/list-item-pattern-01/guidelines.md +1 -0
  38. package/generated/mcp/list-item-pattern-01/index.json +1 -0
  39. package/generated/mcp/tab/angular.md +25 -0
  40. package/generated/mcp/tab/api.md +32 -0
  41. package/generated/mcp/tab/index.json +8 -0
  42. package/generated/mcp/tab/react.md +25 -0
  43. package/generated/mcp/tab-panel/angular.md +17 -0
  44. package/generated/mcp/tab-panel/api.md +20 -0
  45. package/generated/mcp/tab-panel/index.json +8 -0
  46. package/generated/mcp/tab-panel/react.md +17 -0
  47. package/generated/mcp/tabs/angular.md +26 -0
  48. package/generated/mcp/tabs/api.md +49 -0
  49. package/generated/mcp/tabs/guidelines.md +71 -0
  50. package/generated/mcp/tabs/index.json +9 -0
  51. package/generated/mcp/tabs/react.md +26 -0
  52. package/generated/mcp/tokens.json +1 -1
  53. package/generated/react/alert/index.d.ts +118 -110
  54. package/generated/react/avatar/index.d.ts +116 -108
  55. package/generated/react/avatar-group/index.d.ts +114 -106
  56. package/generated/react/backdrop/index.d.ts +115 -107
  57. package/generated/react/badge/index.d.ts +118 -110
  58. package/generated/react/blur/index.d.ts +114 -106
  59. package/generated/react/breadcrumb/index.d.ts +118 -110
  60. package/generated/react/breadcrumbs/index.d.ts +115 -107
  61. package/generated/react/button/index.d.ts +127 -119
  62. package/generated/react/calendar/index.d.ts +121 -113
  63. package/generated/react/card/index.d.ts +114 -106
  64. package/generated/react/card-linked/index.d.ts +116 -108
  65. package/generated/react/card-pattern-01/index.d.ts +124 -116
  66. package/generated/react/checkbox/index.d.ts +127 -119
  67. package/generated/react/checkbox-group/index.d.ts +128 -120
  68. package/generated/react/coachmark/index.d.ts +117 -109
  69. package/generated/react/context-menu/index.d.ts +118 -110
  70. package/generated/react/datepicker/index.d.ts +136 -128
  71. package/generated/react/details/index.d.ts +117 -109
  72. package/generated/react/dialog/index.d.ts +116 -108
  73. package/generated/react/div/index.d.ts +114 -106
  74. package/generated/react/divider/index.d.ts +114 -106
  75. package/generated/react/dropdown/index.d.ts +139 -131
  76. package/generated/react/fab/index.d.ts +127 -119
  77. package/generated/react/filter-chip/index.d.ts +115 -107
  78. package/generated/react/filter-chips/index.d.ts +127 -119
  79. package/generated/react/flex/index.d.ts +114 -106
  80. package/generated/react/form-summary/index.d.ts +117 -109
  81. package/generated/react/formatted-account/index.d.ts +117 -109
  82. package/generated/react/formatted-date/index.d.ts +116 -108
  83. package/generated/react/formatted-number/index.d.ts +117 -109
  84. package/generated/react/grid/index.d.ts +114 -106
  85. package/generated/react/grouped-list/index.d.ts +115 -107
  86. package/generated/react/icons/icon-ai/index.d.ts +116 -108
  87. package/generated/react/icons/icon-airplane-up/index.d.ts +116 -108
  88. package/generated/react/icons/icon-archive/index.d.ts +116 -108
  89. package/generated/react/icons/icon-arrow/index.d.ts +116 -108
  90. package/generated/react/icons/icon-arrow-bottom-top/index.d.ts +116 -108
  91. package/generated/react/icons/icon-arrow-box-left/index.d.ts +116 -108
  92. package/generated/react/icons/icon-arrow-box-left-alt/index.d.ts +116 -108
  93. package/generated/react/icons/icon-arrow-box-right/index.d.ts +116 -108
  94. package/generated/react/icons/icon-arrow-down/index.d.ts +116 -108
  95. package/generated/react/icons/icon-arrow-inbox/index.d.ts +116 -108
  96. package/generated/react/icons/icon-arrow-left/index.d.ts +116 -108
  97. package/generated/react/icons/icon-arrow-left-right/index.d.ts +116 -108
  98. package/generated/react/icons/icon-arrow-out-of-box/index.d.ts +116 -108
  99. package/generated/react/icons/icon-arrow-right/index.d.ts +116 -108
  100. package/generated/react/icons/icon-arrow-right-circle/index.d.ts +116 -108
  101. package/generated/react/icons/icon-arrow-right-down-circle/index.d.ts +116 -108
  102. package/generated/react/icons/icon-arrow-right-up-circle/index.d.ts +116 -108
  103. package/generated/react/icons/icon-arrow-rotate-clockwise/index.d.ts +116 -108
  104. package/generated/react/icons/icon-arrow-rotate-counter-clockwise/index.d.ts +116 -108
  105. package/generated/react/icons/icon-arrow-rotate-left-right/index.d.ts +116 -108
  106. package/generated/react/icons/icon-arrow-rotate-right-left/index.d.ts +116 -108
  107. package/generated/react/icons/icon-arrow-share-left/index.d.ts +116 -108
  108. package/generated/react/icons/icon-arrow-share-right/index.d.ts +116 -108
  109. package/generated/react/icons/icon-arrow-split/index.d.ts +116 -108
  110. package/generated/react/icons/icon-arrow-up/index.d.ts +116 -108
  111. package/generated/react/icons/icon-arrow-wall-down/index.d.ts +116 -108
  112. package/generated/react/icons/icon-arrow-wall-left/index.d.ts +116 -108
  113. package/generated/react/icons/icon-arrow-wall-right/index.d.ts +116 -108
  114. package/generated/react/icons/icon-arrow-wall-up/index.d.ts +116 -108
  115. package/generated/react/icons/icon-arrows-repeat-right/index.d.ts +116 -108
  116. package/generated/react/icons/icon-asterisk/index.d.ts +116 -108
  117. package/generated/react/icons/icon-at/index.d.ts +116 -108
  118. package/generated/react/icons/icon-back/index.d.ts +116 -108
  119. package/generated/react/icons/icon-backward/index.d.ts +116 -108
  120. package/generated/react/icons/icon-bag/index.d.ts +116 -108
  121. package/generated/react/icons/icon-bank/index.d.ts +116 -108
  122. package/generated/react/icons/icon-banknote/index.d.ts +116 -108
  123. package/generated/react/icons/icon-banknote-2/index.d.ts +116 -108
  124. package/generated/react/icons/icon-barcode/index.d.ts +116 -108
  125. package/generated/react/icons/icon-bars-three/index.d.ts +116 -108
  126. package/generated/react/icons/icon-bars-two/index.d.ts +116 -108
  127. package/generated/react/icons/icon-basket/index.d.ts +116 -108
  128. package/generated/react/icons/icon-battery-loading/index.d.ts +116 -108
  129. package/generated/react/icons/icon-bell/index.d.ts +116 -108
  130. package/generated/react/icons/icon-block/index.d.ts +116 -108
  131. package/generated/react/icons/icon-book/index.d.ts +116 -108
  132. package/generated/react/icons/icon-bookmark/index.d.ts +116 -108
  133. package/generated/react/icons/icon-bookmark-check/index.d.ts +116 -108
  134. package/generated/react/icons/icon-bookmark-delete/index.d.ts +116 -108
  135. package/generated/react/icons/icon-bookmark-plus/index.d.ts +116 -108
  136. package/generated/react/icons/icon-bookmark-remove/index.d.ts +116 -108
  137. package/generated/react/icons/icon-books/index.d.ts +116 -108
  138. package/generated/react/icons/icon-brand-app-store/index.d.ts +116 -108
  139. package/generated/react/icons/icon-brand-apple-music/index.d.ts +116 -108
  140. package/generated/react/icons/icon-brand-bankid/index.d.ts +116 -108
  141. package/generated/react/icons/icon-brand-chrome/index.d.ts +116 -108
  142. package/generated/react/icons/icon-brand-facebook/index.d.ts +116 -108
  143. package/generated/react/icons/icon-brand-figma/index.d.ts +116 -108
  144. package/generated/react/icons/icon-brand-firefox/index.d.ts +116 -108
  145. package/generated/react/icons/icon-brand-github/index.d.ts +116 -108
  146. package/generated/react/icons/icon-brand-green/index.d.ts +116 -108
  147. package/generated/react/icons/icon-brand-instagram/index.d.ts +116 -108
  148. package/generated/react/icons/icon-brand-linkedin/index.d.ts +116 -108
  149. package/generated/react/icons/icon-brand-play-store/index.d.ts +116 -108
  150. package/generated/react/icons/icon-brand-rss-feed/index.d.ts +116 -108
  151. package/generated/react/icons/icon-brand-seb/index.d.ts +116 -108
  152. package/generated/react/icons/icon-brand-spotify/index.d.ts +116 -108
  153. package/generated/react/icons/icon-brand-storybook/index.d.ts +116 -108
  154. package/generated/react/icons/icon-brand-swish-word/index.d.ts +116 -108
  155. package/generated/react/icons/icon-brand-x/index.d.ts +116 -108
  156. package/generated/react/icons/icon-brush/index.d.ts +116 -108
  157. package/generated/react/icons/icon-bubble-annotation/index.d.ts +116 -108
  158. package/generated/react/icons/icon-bubbles/index.d.ts +116 -108
  159. package/generated/react/icons/icon-buildings/index.d.ts +116 -108
  160. package/generated/react/icons/icon-bullet-list/index.d.ts +116 -108
  161. package/generated/react/icons/icon-calculator/index.d.ts +116 -108
  162. package/generated/react/icons/icon-calendar/index.d.ts +116 -108
  163. package/generated/react/icons/icon-calendar-check/index.d.ts +116 -108
  164. package/generated/react/icons/icon-calendar-repeat/index.d.ts +116 -108
  165. package/generated/react/icons/icon-calender-add/index.d.ts +116 -108
  166. package/generated/react/icons/icon-call/index.d.ts +116 -108
  167. package/generated/react/icons/icon-car/index.d.ts +116 -108
  168. package/generated/react/icons/icon-carussel/index.d.ts +116 -108
  169. package/generated/react/icons/icon-chain-link/index.d.ts +116 -108
  170. package/generated/react/icons/icon-chain-link-broken/index.d.ts +116 -108
  171. package/generated/react/icons/icon-chart-two/index.d.ts +116 -108
  172. package/generated/react/icons/icon-checklist/index.d.ts +116 -108
  173. package/generated/react/icons/icon-checkmark/index.d.ts +116 -108
  174. package/generated/react/icons/icon-chevron-bottom/index.d.ts +116 -108
  175. package/generated/react/icons/icon-chevron-double-down/index.d.ts +116 -108
  176. package/generated/react/icons/icon-chevron-double-left/index.d.ts +116 -108
  177. package/generated/react/icons/icon-chevron-double-right/index.d.ts +116 -108
  178. package/generated/react/icons/icon-chevron-double-up/index.d.ts +116 -108
  179. package/generated/react/icons/icon-chevron-down-small/index.d.ts +116 -108
  180. package/generated/react/icons/icon-chevron-grabber-vertical/index.d.ts +116 -108
  181. package/generated/react/icons/icon-chevron-grabber-vertical-reversed/index.d.ts +116 -108
  182. package/generated/react/icons/icon-chevron-left/index.d.ts +116 -108
  183. package/generated/react/icons/icon-chevron-left-small/index.d.ts +116 -108
  184. package/generated/react/icons/icon-chevron-right/index.d.ts +116 -108
  185. package/generated/react/icons/icon-chevron-right-small/index.d.ts +116 -108
  186. package/generated/react/icons/icon-chevron-top/index.d.ts +116 -108
  187. package/generated/react/icons/icon-chevron-top-small/index.d.ts +116 -108
  188. package/generated/react/icons/icon-circle-ban/index.d.ts +116 -108
  189. package/generated/react/icons/icon-circle-check/index.d.ts +116 -108
  190. package/generated/react/icons/icon-circle-dots/index.d.ts +116 -108
  191. package/generated/react/icons/icon-circle-info/index.d.ts +116 -108
  192. package/generated/react/icons/icon-circle-minus/index.d.ts +116 -108
  193. package/generated/react/icons/icon-circle-placeholder-on/index.d.ts +116 -108
  194. package/generated/react/icons/icon-circle-plus/index.d.ts +116 -108
  195. package/generated/react/icons/icon-circle-questionmark/index.d.ts +116 -108
  196. package/generated/react/icons/icon-circle-x/index.d.ts +116 -108
  197. package/generated/react/icons/icon-circles-three/index.d.ts +116 -108
  198. package/generated/react/icons/icon-clock/index.d.ts +116 -108
  199. package/generated/react/icons/icon-cloud-download/index.d.ts +116 -108
  200. package/generated/react/icons/icon-cloud-upload/index.d.ts +116 -108
  201. package/generated/react/icons/icon-cloudy-sun/index.d.ts +116 -108
  202. package/generated/react/icons/icon-code/index.d.ts +116 -108
  203. package/generated/react/icons/icon-code-brackets/index.d.ts +116 -108
  204. package/generated/react/icons/icon-compass-round/index.d.ts +116 -108
  205. package/generated/react/icons/icon-cookies/index.d.ts +116 -108
  206. package/generated/react/icons/icon-copy/index.d.ts +116 -108
  207. package/generated/react/icons/icon-credit-card/index.d.ts +116 -108
  208. package/generated/react/icons/icon-credit-card-add/index.d.ts +116 -108
  209. package/generated/react/icons/icon-cross-large/index.d.ts +116 -108
  210. package/generated/react/icons/icon-cross-small/index.d.ts +116 -108
  211. package/generated/react/icons/icon-cup-hot/index.d.ts +116 -108
  212. package/generated/react/icons/icon-cursor/index.d.ts +116 -108
  213. package/generated/react/icons/icon-details/index.d.ts +115 -107
  214. package/generated/react/icons/icon-devices/index.d.ts +116 -108
  215. package/generated/react/icons/icon-direction/index.d.ts +116 -108
  216. package/generated/react/icons/icon-dollar/index.d.ts +116 -108
  217. package/generated/react/icons/icon-dot-grid-one-horizontal/index.d.ts +116 -108
  218. package/generated/react/icons/icon-dot-grid-one-vertical/index.d.ts +116 -108
  219. package/generated/react/icons/icon-dot-grid-three/index.d.ts +116 -108
  220. package/generated/react/icons/icon-dot-grid-two/index.d.ts +116 -108
  221. package/generated/react/icons/icon-email/index.d.ts +116 -108
  222. package/generated/react/icons/icon-emoji-angry/index.d.ts +116 -108
  223. package/generated/react/icons/icon-emoji-neutral/index.d.ts +116 -108
  224. package/generated/react/icons/icon-emoji-sad/index.d.ts +116 -108
  225. package/generated/react/icons/icon-emoji-smile/index.d.ts +116 -108
  226. package/generated/react/icons/icon-emoji-smiley/index.d.ts +116 -108
  227. package/generated/react/icons/icon-euro/index.d.ts +116 -108
  228. package/generated/react/icons/icon-expand/index.d.ts +116 -108
  229. package/generated/react/icons/icon-eye-open/index.d.ts +116 -108
  230. package/generated/react/icons/icon-eye-slash/index.d.ts +116 -108
  231. package/generated/react/icons/icon-fashion/index.d.ts +116 -108
  232. package/generated/react/icons/icon-fast-forward/index.d.ts +116 -108
  233. package/generated/react/icons/icon-file-bend/index.d.ts +116 -108
  234. package/generated/react/icons/icon-file-chart/index.d.ts +116 -108
  235. package/generated/react/icons/icon-file-text/index.d.ts +116 -108
  236. package/generated/react/icons/icon-files/index.d.ts +116 -108
  237. package/generated/react/icons/icon-filter/index.d.ts +116 -108
  238. package/generated/react/icons/icon-flag/index.d.ts +116 -108
  239. package/generated/react/icons/icon-floppy-disk/index.d.ts +116 -108
  240. package/generated/react/icons/icon-focus/index.d.ts +116 -108
  241. package/generated/react/icons/icon-folder/index.d.ts +116 -108
  242. package/generated/react/icons/icon-folder-add-right/index.d.ts +116 -108
  243. package/generated/react/icons/icon-fullscreen/index.d.ts +116 -108
  244. package/generated/react/icons/icon-gift/index.d.ts +116 -108
  245. package/generated/react/icons/icon-globus/index.d.ts +116 -108
  246. package/generated/react/icons/icon-graduate-cap/index.d.ts +116 -108
  247. package/generated/react/icons/icon-green-power/index.d.ts +116 -108
  248. package/generated/react/icons/icon-group/index.d.ts +116 -108
  249. package/generated/react/icons/icon-growth/index.d.ts +116 -108
  250. package/generated/react/icons/icon-headphones/index.d.ts +116 -108
  251. package/generated/react/icons/icon-heart/index.d.ts +116 -108
  252. package/generated/react/icons/icon-heart-beat/index.d.ts +116 -108
  253. package/generated/react/icons/icon-history/index.d.ts +116 -108
  254. package/generated/react/icons/icon-home-energy-one/index.d.ts +116 -108
  255. package/generated/react/icons/icon-home-energy-two/index.d.ts +116 -108
  256. package/generated/react/icons/icon-home-open/index.d.ts +116 -108
  257. package/generated/react/icons/icon-home-roof/index.d.ts +116 -108
  258. package/generated/react/icons/icon-horizontal-alignment-bottom/index.d.ts +116 -108
  259. package/generated/react/icons/icon-hourglass/index.d.ts +116 -108
  260. package/generated/react/icons/icon-images/index.d.ts +116 -108
  261. package/generated/react/icons/icon-inbox-empty/index.d.ts +116 -108
  262. package/generated/react/icons/icon-industry/index.d.ts +116 -108
  263. package/generated/react/icons/icon-jpg/index.d.ts +116 -108
  264. package/generated/react/icons/icon-key/index.d.ts +116 -108
  265. package/generated/react/icons/icon-knife-spoon/index.d.ts +116 -108
  266. package/generated/react/icons/icon-lab/index.d.ts +116 -108
  267. package/generated/react/icons/icon-law/index.d.ts +116 -108
  268. package/generated/react/icons/icon-leisure/index.d.ts +116 -108
  269. package/generated/react/icons/icon-light-bulb-simple/index.d.ts +116 -108
  270. package/generated/react/icons/icon-lightning/index.d.ts +116 -108
  271. package/generated/react/icons/icon-line-chart-four/index.d.ts +116 -108
  272. package/generated/react/icons/icon-line-chart-one/index.d.ts +116 -108
  273. package/generated/react/icons/icon-line-chart-three/index.d.ts +116 -108
  274. package/generated/react/icons/icon-line-chart-two/index.d.ts +116 -108
  275. package/generated/react/icons/icon-lock/index.d.ts +116 -108
  276. package/generated/react/icons/icon-macbook-air/index.d.ts +116 -108
  277. package/generated/react/icons/icon-magnifying-glass/index.d.ts +116 -108
  278. package/generated/react/icons/icon-map-pin/index.d.ts +116 -108
  279. package/generated/react/icons/icon-megaphone/index.d.ts +116 -108
  280. package/generated/react/icons/icon-menu-sidebar/index.d.ts +116 -108
  281. package/generated/react/icons/icon-mic-off/index.d.ts +116 -108
  282. package/generated/react/icons/icon-mic-on/index.d.ts +116 -108
  283. package/generated/react/icons/icon-minimize/index.d.ts +116 -108
  284. package/generated/react/icons/icon-minus-large/index.d.ts +116 -108
  285. package/generated/react/icons/icon-minus-small/index.d.ts +116 -108
  286. package/generated/react/icons/icon-money-hand/index.d.ts +116 -108
  287. package/generated/react/icons/icon-moneybag/index.d.ts +116 -108
  288. package/generated/react/icons/icon-moon/index.d.ts +116 -108
  289. package/generated/react/icons/icon-mute/index.d.ts +116 -108
  290. package/generated/react/icons/icon-newspaper/index.d.ts +116 -108
  291. package/generated/react/icons/icon-office/index.d.ts +116 -108
  292. package/generated/react/icons/icon-page-add/index.d.ts +116 -108
  293. package/generated/react/icons/icon-paper-plane-top-right/index.d.ts +116 -108
  294. package/generated/react/icons/icon-paperclip/index.d.ts +116 -108
  295. package/generated/react/icons/icon-pause/index.d.ts +116 -108
  296. package/generated/react/icons/icon-pdf/index.d.ts +116 -108
  297. package/generated/react/icons/icon-pencil-sign/index.d.ts +116 -108
  298. package/generated/react/icons/icon-pencil-sparkle/index.d.ts +116 -108
  299. package/generated/react/icons/icon-pencil-wave/index.d.ts +116 -108
  300. package/generated/react/icons/icon-pension/index.d.ts +116 -108
  301. package/generated/react/icons/icon-people/index.d.ts +116 -108
  302. package/generated/react/icons/icon-people-a11y/index.d.ts +116 -108
  303. package/generated/react/icons/icon-people-add/index.d.ts +116 -108
  304. package/generated/react/icons/icon-people-added/index.d.ts +116 -108
  305. package/generated/react/icons/icon-people-circle/index.d.ts +116 -108
  306. package/generated/react/icons/icon-people-copy/index.d.ts +116 -108
  307. package/generated/react/icons/icon-people-profile/index.d.ts +116 -108
  308. package/generated/react/icons/icon-people-remove/index.d.ts +116 -108
  309. package/generated/react/icons/icon-percent/index.d.ts +116 -108
  310. package/generated/react/icons/icon-phone/index.d.ts +116 -108
  311. package/generated/react/icons/icon-pie-chart/index.d.ts +116 -108
  312. package/generated/react/icons/icon-piggy-bank/index.d.ts +116 -108
  313. package/generated/react/icons/icon-pin/index.d.ts +116 -108
  314. package/generated/react/icons/icon-pinch/index.d.ts +116 -108
  315. package/generated/react/icons/icon-play/index.d.ts +116 -108
  316. package/generated/react/icons/icon-play-circle/index.d.ts +116 -108
  317. package/generated/react/icons/icon-plus-large/index.d.ts +116 -108
  318. package/generated/react/icons/icon-plus-small/index.d.ts +116 -108
  319. package/generated/react/icons/icon-png/index.d.ts +116 -108
  320. package/generated/react/icons/icon-poop/index.d.ts +116 -108
  321. package/generated/react/icons/icon-postcard/index.d.ts +116 -108
  322. package/generated/react/icons/icon-pound/index.d.ts +116 -108
  323. package/generated/react/icons/icon-power/index.d.ts +116 -108
  324. package/generated/react/icons/icon-power-plant/index.d.ts +116 -108
  325. package/generated/react/icons/icon-printer/index.d.ts +116 -108
  326. package/generated/react/icons/icon-push/index.d.ts +116 -108
  327. package/generated/react/icons/icon-qr-code/index.d.ts +116 -108
  328. package/generated/react/icons/icon-rainy/index.d.ts +116 -108
  329. package/generated/react/icons/icon-raising-hand/index.d.ts +116 -108
  330. package/generated/react/icons/icon-reading-list/index.d.ts +116 -108
  331. package/generated/react/icons/icon-receipt-bill/index.d.ts +116 -108
  332. package/generated/react/icons/icon-receiption-bell/index.d.ts +116 -108
  333. package/generated/react/icons/icon-record/index.d.ts +116 -108
  334. package/generated/react/icons/icon-refund/index.d.ts +116 -108
  335. package/generated/react/icons/icon-robot/index.d.ts +116 -108
  336. package/generated/react/icons/icon-rocket/index.d.ts +116 -108
  337. package/generated/react/icons/icon-run-shortcut/index.d.ts +116 -108
  338. package/generated/react/icons/icon-safari/index.d.ts +116 -108
  339. package/generated/react/icons/icon-school/index.d.ts +116 -108
  340. package/generated/react/icons/icon-scissors/index.d.ts +116 -108
  341. package/generated/react/icons/icon-search-menu/index.d.ts +116 -108
  342. package/generated/react/icons/icon-settings-gear/index.d.ts +116 -108
  343. package/generated/react/icons/icon-settings-slider-hor/index.d.ts +116 -108
  344. package/generated/react/icons/icon-settings-slider-ver/index.d.ts +116 -108
  345. package/generated/react/icons/icon-shapes/index.d.ts +116 -108
  346. package/generated/react/icons/icon-share/index.d.ts +116 -108
  347. package/generated/react/icons/icon-shield/index.d.ts +116 -108
  348. package/generated/react/icons/icon-shield-checked/index.d.ts +116 -108
  349. package/generated/react/icons/icon-shield-crossed/index.d.ts +116 -108
  350. package/generated/react/icons/icon-shopping-bag/index.d.ts +116 -108
  351. package/generated/react/icons/icon-signature/index.d.ts +116 -108
  352. package/generated/react/icons/icon-smartwatch/index.d.ts +116 -108
  353. package/generated/react/icons/icon-solar/index.d.ts +116 -108
  354. package/generated/react/icons/icon-sort/index.d.ts +116 -108
  355. package/generated/react/icons/icon-sort-ascending/index.d.ts +116 -108
  356. package/generated/react/icons/icon-sort-descending/index.d.ts +116 -108
  357. package/generated/react/icons/icon-sort-down/index.d.ts +116 -108
  358. package/generated/react/icons/icon-sort-up/index.d.ts +116 -108
  359. package/generated/react/icons/icon-square-arrow-top-right/index.d.ts +116 -108
  360. package/generated/react/icons/icon-square-behind-square/index.d.ts +116 -108
  361. package/generated/react/icons/icon-square-grid-circle/index.d.ts +116 -108
  362. package/generated/react/icons/icon-square-placeholder/index.d.ts +116 -108
  363. package/generated/react/icons/icon-star/index.d.ts +116 -108
  364. package/generated/react/icons/icon-store/index.d.ts +116 -108
  365. package/generated/react/icons/icon-sun/index.d.ts +116 -108
  366. package/generated/react/icons/icon-sunset-arrow-down/index.d.ts +116 -108
  367. package/generated/react/icons/icon-tag/index.d.ts +116 -108
  368. package/generated/react/icons/icon-target-arrow/index.d.ts +116 -108
  369. package/generated/react/icons/icon-television/index.d.ts +116 -108
  370. package/generated/react/icons/icon-tennis/index.d.ts +116 -108
  371. package/generated/react/icons/icon-text-edit/index.d.ts +116 -108
  372. package/generated/react/icons/icon-thermostat/index.d.ts +116 -108
  373. package/generated/react/icons/icon-thumbs-down/index.d.ts +116 -108
  374. package/generated/react/icons/icon-thumbs-up/index.d.ts +116 -108
  375. package/generated/react/icons/icon-ticket/index.d.ts +116 -108
  376. package/generated/react/icons/icon-trading-view-candles/index.d.ts +116 -108
  377. package/generated/react/icons/icon-trash-can/index.d.ts +116 -108
  378. package/generated/react/icons/icon-tree/index.d.ts +116 -108
  379. package/generated/react/icons/icon-trending-five/index.d.ts +116 -108
  380. package/generated/react/icons/icon-trending-four/index.d.ts +116 -108
  381. package/generated/react/icons/icon-trending-one/index.d.ts +116 -108
  382. package/generated/react/icons/icon-trending-three/index.d.ts +116 -108
  383. package/generated/react/icons/icon-trending-two/index.d.ts +116 -108
  384. package/generated/react/icons/icon-triangle-exclamation/index.d.ts +116 -108
  385. package/generated/react/icons/icon-truck/index.d.ts +116 -108
  386. package/generated/react/icons/icon-umbrella-security/index.d.ts +116 -108
  387. package/generated/react/icons/icon-unlocked/index.d.ts +116 -108
  388. package/generated/react/icons/icon-volume-full/index.d.ts +116 -108
  389. package/generated/react/icons/icon-volume-half/index.d.ts +116 -108
  390. package/generated/react/icons/icon-volume-off/index.d.ts +116 -108
  391. package/generated/react/icons/icon-wallet/index.d.ts +116 -108
  392. package/generated/react/icons/icon-warning-sign/index.d.ts +116 -108
  393. package/generated/react/icons/icon-wifi-full/index.d.ts +116 -108
  394. package/generated/react/icons/icon-youtube/index.d.ts +116 -108
  395. package/generated/react/icons/icon-zap/index.d.ts +116 -108
  396. package/generated/react/icons/icon-zoom-in/index.d.ts +116 -108
  397. package/generated/react/icons/icon-zoom-out/index.d.ts +116 -108
  398. package/generated/react/img/index.d.ts +116 -108
  399. package/generated/react/index.d.ts +11 -8
  400. package/generated/react/index.js +11 -8
  401. package/generated/react/input/index.d.ts +139 -131
  402. package/generated/react/link/index.d.ts +117 -109
  403. package/generated/react/list/index.d.ts +114 -106
  404. package/generated/react/list-item/index.d.ts +114 -106
  405. package/generated/react/list-item-pattern-01/index.d.ts +121 -113
  406. package/generated/react/mask/index.d.ts +117 -109
  407. package/generated/react/menu-button/index.d.ts +120 -112
  408. package/generated/react/menu-heading/index.d.ts +114 -106
  409. package/generated/react/menu-item/index.d.ts +114 -106
  410. package/generated/react/option/index.d.ts +118 -110
  411. package/generated/react/pagination/index.d.ts +120 -112
  412. package/generated/react/popover/index.d.ts +123 -115
  413. package/generated/react/radio/index.d.ts +119 -111
  414. package/generated/react/radio-group/index.d.ts +127 -119
  415. package/generated/react/rich-text/index.d.ts +114 -106
  416. package/generated/react/segment/index.d.ts +118 -110
  417. package/generated/react/segmented-control/index.d.ts +116 -108
  418. package/generated/react/select/index.d.ts +129 -121
  419. package/generated/react/sensitive-account/index.d.ts +118 -110
  420. package/generated/react/sensitive-date/index.d.ts +117 -109
  421. package/generated/react/sensitive-number/index.d.ts +118 -110
  422. package/generated/react/signal/index.d.ts +114 -106
  423. package/generated/react/spinner/index.d.ts +117 -109
  424. package/generated/react/switch/index.d.ts +126 -118
  425. package/generated/react/tab/index.d.ts +682 -0
  426. package/generated/react/tab/index.js +14 -0
  427. package/generated/react/tab-panel/index.d.ts +675 -0
  428. package/generated/react/tab-panel/index.js +14 -0
  429. package/generated/react/table/index.d.ts +125 -117
  430. package/generated/react/tabs/index.d.ts +699 -0
  431. package/generated/react/tabs/index.js +14 -0
  432. package/generated/react/text/index.d.ts +115 -107
  433. package/generated/react/textarea/index.d.ts +137 -129
  434. package/generated/react/theme/index.d.ts +114 -106
  435. package/generated/react/video/index.d.ts +114 -106
  436. package/package.json +7 -1
  437. package/primitives/listbox/listbox.trans.styles.scss.js +1 -1
  438. package/primitives/listbox/option.trans.styles.scss.js +1 -1
  439. package/utils/helpers/custom-element-scoping.js +1 -1
package/gds-element.js CHANGED
@@ -16,7 +16,7 @@ class GdsElement extends LitElement {
16
16
  /**
17
17
  * The semantic version of this element. Can be used for troubleshooting to verify the version being used.
18
18
  */
19
- this.semanticVersion = "3.13.0";
19
+ this.semanticVersion = "3.14.0";
20
20
  this.syncFirstRender = false;
21
21
  this._isUsingTransitionalStyles = false;
22
22
  this._dynamicStylesController = new DynamicStylesController(this);
@@ -1,5 +1,5 @@
1
1
  {
2
- "generatedAt": "2026-06-03T13:53:29.653Z",
2
+ "generatedAt": "2026-06-10T08:31:07.742Z",
3
3
  "components": [
4
4
  {
5
5
  "name": "gds-alert",
@@ -514,6 +514,7 @@
514
514
  "path": "list-item-pattern-01/",
515
515
  "files": [
516
516
  "api",
517
+ "guidelines",
517
518
  "angular",
518
519
  "react"
519
520
  ]
@@ -763,6 +764,30 @@
763
764
  "react"
764
765
  ]
765
766
  },
767
+ {
768
+ "name": "gds-tab",
769
+ "tagName": "gds-tab",
770
+ "className": "GdsTab",
771
+ "description": "",
772
+ "path": "tab/",
773
+ "files": [
774
+ "api",
775
+ "angular",
776
+ "react"
777
+ ]
778
+ },
779
+ {
780
+ "name": "gds-tab-panel",
781
+ "tagName": "gds-tab-panel",
782
+ "className": "GdsTabPanel",
783
+ "description": "",
784
+ "path": "tab-panel/",
785
+ "files": [
786
+ "api",
787
+ "angular",
788
+ "react"
789
+ ]
790
+ },
766
791
  {
767
792
  "name": "gds-table",
768
793
  "tagName": "gds-table",
@@ -776,6 +801,19 @@
776
801
  "react"
777
802
  ]
778
803
  },
804
+ {
805
+ "name": "gds-tabs",
806
+ "tagName": "gds-tabs",
807
+ "className": "GdsTabs",
808
+ "description": "",
809
+ "path": "tabs/",
810
+ "files": [
811
+ "api",
812
+ "guidelines",
813
+ "angular",
814
+ "react"
815
+ ]
816
+ },
779
817
  {
780
818
  "name": "gds-text",
781
819
  "tagName": "gds-text",
@@ -1,5 +1,5 @@
1
1
  {
2
- "generatedAt": "2026-06-03T13:53:29.653Z",
2
+ "generatedAt": "2026-06-10T08:31:07.742Z",
3
3
  "icons": [
4
4
  {
5
5
  "name": "gds-icon-ai",
@@ -1,5 +1,5 @@
1
1
  {
2
- "generatedAt": "2026-06-03T13:53:29.653Z",
2
+ "generatedAt": "2026-06-10T08:31:07.742Z",
3
3
  "instructions": "./INSTRUCTIONS.md",
4
4
  "components": "./components.json",
5
5
  "icons": "./icons.json",
@@ -0,0 +1 @@
1
+ # List item pattern 01
@@ -2,6 +2,7 @@
2
2
  "name": "gds-list-item-pattern-01",
3
3
  "files": {
4
4
  "api": "api.md",
5
+ "guidelines": "guidelines.md",
5
6
  "angular": "angular.md",
6
7
  "react": "react.md"
7
8
  }
@@ -0,0 +1,25 @@
1
+ # gds-tab - Angular
2
+
3
+ ## Import
4
+
5
+ ```typescript
6
+ import { GdsTabComponent } from '@sebgroup/green-core-ng'
7
+ ```
8
+
9
+ ## Usage
10
+
11
+ Use the component in your Angular templates:
12
+
13
+ ```html
14
+ <gds-tab>
15
+ <!-- content -->
16
+ </gds-tab>
17
+ ```
18
+
19
+ ## Event Handling
20
+
21
+ Events are emitted using Angular output syntax. Event names are converted from kebab-case to camelCase:
22
+
23
+ | Web Component Event | Angular Output | Handler Example |
24
+ |---------------------|----------------|-----------------|
25
+ | `click` | `click` | `(click)="handler($event)"` |
@@ -0,0 +1,32 @@
1
+ # gds-tab
2
+
3
+ **Class**: `GdsTab`
4
+
5
+ **Tag**: `<gds-tab>`
6
+
7
+
8
+ ## Properties
9
+
10
+ | Name | Type | Default | Description |
11
+ |------|------|---------|-------------|
12
+ | `size` | `'small' \| 'medium'` | `-` | Optional size variant. When set to "small", applies reduced padding. |
13
+ | `disabled` | `boolean` | `-` | Disables selection of this tab. |
14
+ | `selected` | `boolean` | `-` | Whether this tab is currently selected. Managed by the parent `<gds-tabs>`. |
15
+ | `panel` | `string` | `-` | The `name` of the `<gds-tab-panel>` to associate with this tab. When set, this tab controls the panel whose `name` attribute matches, regardless of DOM order. When omitted, pairing falls back to position. |
16
+ | `syncFirstRender` | `boolean` | `-` | Force the element to perform a synchronous first render and apply style expression properties in `connectedCallback`. This guarantees that the child DOM always remains projected in DOM, since the element will attach the shadowRoot and run the first render pass in the same event loop cycle, and that declarative layout will be applied once slotted DOM is projected. Note: This will cause the first render pass to be blocking. Use sparingly and only when necessary, such as when the element needs to be measured synchronously after being added to the DOM. |
17
+
18
+
19
+ ## Events
20
+
21
+ | Name | Type | Description |
22
+ |------|------|-------------|
23
+ | `click` | `MouseEvent` | Fired when the tab is clicked. Note that clicks on disabled tabs are ignored. |
24
+
25
+
26
+ ## Slots
27
+
28
+ | Name | Description |
29
+ |------|-------------|
30
+ | `lead` | Optional content before the label (e.g. an icon) |
31
+ | `(default)` | The tab label text content |
32
+ | `trail` | Optional content after the label (e.g. a badge) |
@@ -0,0 +1,8 @@
1
+ {
2
+ "name": "gds-tab",
3
+ "files": {
4
+ "api": "api.md",
5
+ "angular": "angular.md",
6
+ "react": "react.md"
7
+ }
8
+ }
@@ -0,0 +1,25 @@
1
+ # gds-tab - React
2
+
3
+ ## Import
4
+
5
+ ```typescript
6
+ import { GdsTab } from '@sebgroup/green-core/react'
7
+ ```
8
+
9
+ ## Usage
10
+
11
+ Use the component as a React JSX element:
12
+
13
+ ```tsx
14
+ <GdsTab>
15
+ {/* content */}
16
+ </GdsTab>
17
+ ```
18
+
19
+ ## Event Handling
20
+
21
+ Events are handled using React event handler props. Event names are converted from kebab-case to camelCase with an "on" prefix:
22
+
23
+ | Web Component Event | React Handler Prop | Handler Example |
24
+ |---------------------|--------------------|-----------------|
25
+ | `click` | `onClick` | `onClick={handler}` |
@@ -0,0 +1,17 @@
1
+ # gds-tab-panel - Angular
2
+
3
+ ## Import
4
+
5
+ ```typescript
6
+ import { GdsTabPanelComponent } from '@sebgroup/green-core-ng'
7
+ ```
8
+
9
+ ## Usage
10
+
11
+ Use the component in your Angular templates:
12
+
13
+ ```html
14
+ <gds-tab-panel>
15
+ <!-- content -->
16
+ </gds-tab-panel>
17
+ ```
@@ -0,0 +1,20 @@
1
+ # gds-tab-panel
2
+
3
+ **Class**: `GdsTabPanel`
4
+
5
+ **Tag**: `<gds-tab-panel>`
6
+
7
+
8
+ ## Properties
9
+
10
+ | Name | Type | Default | Description |
11
+ |------|------|---------|-------------|
12
+ | `name` | `string` | `-` | A unique name used to associate this panel with a `<gds-tab panel="...">.` Must be unique within the parent `<gds-tabs>`. |
13
+ | `syncFirstRender` | `boolean` | `-` | Force the element to perform a synchronous first render and apply style expression properties in `connectedCallback`. This guarantees that the child DOM always remains projected in DOM, since the element will attach the shadowRoot and run the first render pass in the same event loop cycle, and that declarative layout will be applied once slotted DOM is projected. Note: This will cause the first render pass to be blocking. Use sparingly and only when necessary, such as when the element needs to be measured synchronously after being added to the DOM. |
14
+
15
+
16
+ ## Slots
17
+
18
+ | Name | Description |
19
+ |------|-------------|
20
+ | `(default)` | Panel content |
@@ -0,0 +1,8 @@
1
+ {
2
+ "name": "gds-tab-panel",
3
+ "files": {
4
+ "api": "api.md",
5
+ "angular": "angular.md",
6
+ "react": "react.md"
7
+ }
8
+ }
@@ -0,0 +1,17 @@
1
+ # gds-tab-panel - React
2
+
3
+ ## Import
4
+
5
+ ```typescript
6
+ import { GdsTabPanel } from '@sebgroup/green-core/react'
7
+ ```
8
+
9
+ ## Usage
10
+
11
+ Use the component as a React JSX element:
12
+
13
+ ```tsx
14
+ <GdsTabPanel>
15
+ {/* content */}
16
+ </GdsTabPanel>
17
+ ```
@@ -0,0 +1,26 @@
1
+ # gds-tabs - Angular
2
+
3
+ ## Import
4
+
5
+ ```typescript
6
+ import { GdsTabsComponent } from '@sebgroup/green-core-ng'
7
+ ```
8
+
9
+ ## Usage
10
+
11
+ Use the component in your Angular templates:
12
+
13
+ ```html
14
+ <gds-tabs>
15
+ <!-- content -->
16
+ </gds-tabs>
17
+ ```
18
+
19
+ ## Event Handling
20
+
21
+ Events are emitted using Angular output syntax. Event names are converted from kebab-case to camelCase:
22
+
23
+ | Web Component Event | Angular Output | Handler Example |
24
+ |---------------------|----------------|-----------------|
25
+ | `click` | `click` | `(click)="handler($event)"` |
26
+ | `gds-tab-change` | `gdsTabChange` | `(gdsTabChange)="handler($event)"` |
@@ -0,0 +1,49 @@
1
+ # gds-tabs
2
+
3
+ **Class**: `GdsTabs`
4
+
5
+ **Tag**: `<gds-tabs>`
6
+
7
+
8
+ ## Properties
9
+
10
+ > Some properties accept design token names. Use `get_tokens` with the appropriate category to discover valid token names and their resolved values.
11
+
12
+ | Name | Type | Default | Description |
13
+ |------|------|---------|-------------|
14
+ | `selected` | `number` | `-` | |
15
+ | `label` | `string` | `-` | Accessible label for the tab list container |
16
+ | `'align-self'` | `string \| undefined` | `-` | Style Expression Property that controls the `align-self` property. Supports all valid CSS `align-self` values. |
17
+ | `'justify-self'` | `string \| undefined` | `-` | Style Expression Property that controls the `justify-self` property. Supports all valid CSS `justify-self` values. |
18
+ | `'place-self'` | `string \| undefined` | `-` | Style Expression Property that controls the `place-self` property. Supports all valid CSS `place-self` values. |
19
+ | `'grid-column'` | `string \| undefined` | `-` | Style Expression Property that controls the `grid-column` property. Supports all valid CSS grid-column values. Documentation: https://developer.mozilla.org/en-US/docs/Web/CSS/grid-column |
20
+ | `'grid-row'` | `string \| undefined` | `-` | Style Expression Property that controls the `grid-row` property. Supports all valid CSS `grid-row` values. |
21
+ | `'grid-area'` | `string \| undefined` | `-` | Style Expression Property that controls the `grid-area` property. Supports all valid CSS `grid-area` values. |
22
+ | `flex` | `string \| undefined` | `-` | Style Expression Property that controls the `flex` property. Supports all valid CSS `flex` values. |
23
+ | `order` | `string \| undefined` | `-` | Style Expression Property that controls the `order` property. Supports all valid CSS `order` values. |
24
+ | `width` | `string \| undefined` | `-` | Style Expression Property that controls the `width` property. Supports space tokens and all valid CSS `width` values. |
25
+ | `'min-width'` | `string \| undefined` | `-` | Style Expression Property that controls the `min-width` property. Supports space tokens and all valid CSS `min-width` values. |
26
+ | `'max-width'` | `string \| undefined` | `-` | Style Expression Property that controls the `max-width` property. Supports space tokens and all valid CSS `max-width` values. |
27
+ | `'inline-size'` | `string \| undefined` | `-` | Style Expression Property that controls the `inline-size` property. Supports space tokens and all valid CSS `inline-size` values |
28
+ | `'min-inline-size'` | `string \| undefined` | `-` | Style Expression Property that controls the `min-inline-size` property. Supports space tokens and all valid CSS `min-inline-size` values. |
29
+ | `'max-inline-size'` | `string \| undefined` | `-` | Style Expression Property that controls the `max-inline-size` property. Supports space tokens and all valid CSS `max-inline-size` values. |
30
+ | `margin` | `string \| undefined` | `-` | Style Expression Property that controls the `margin` property. Only accepts space tokens. |
31
+ | `'margin-inline'` | `string \| undefined` | `-` | Style Expression Property that controls the `margin-inline` property. Only accepts space tokens. |
32
+ | `'margin-block'` | `string \| undefined` | `-` | Style Expression Property that controls the `margin-block` property. Only accepts space tokens. |
33
+ | `syncFirstRender` | `boolean` | `-` | Force the element to perform a synchronous first render and apply style expression properties in `connectedCallback`. This guarantees that the child DOM always remains projected in DOM, since the element will attach the shadowRoot and run the first render pass in the same event loop cycle, and that declarative layout will be applied once slotted DOM is projected. Note: This will cause the first render pass to be blocking. Use sparingly and only when necessary, such as when the element needs to be measured synchronously after being added to the DOM. |
34
+
35
+
36
+ ## Events
37
+
38
+ | Name | Type | Description |
39
+ |------|------|-------------|
40
+ | `click` | `MouseEvent` | Composed click events from child <gds-tab> elements. Note that clicks on disabled tabs are ignored. |
41
+ | `gds-tab-change` | `CustomEvent<any>` | Fires when selected tab changes. Detail: { index: number, tab: GdsTab } |
42
+
43
+
44
+ ## Slots
45
+
46
+ | Name | Description |
47
+ |------|-------------|
48
+ | `tab` | One or more <gds-tab> trigger elements |
49
+ | `(default)` | One or more <gds-tab-panel> content elements |
@@ -0,0 +1,71 @@
1
+ # Tabs
2
+
3
+ Tabs allow users to navigate between groups of related content at the same level of hierarchy.
4
+
5
+
6
+ ## Overview
7
+
8
+ ### Default
9
+
10
+ Tabs are used as local navigation to organise related content into logical groupings. Users can switch between views without losing the context of the page.
11
+
12
+ ### Overflow behaviour
13
+
14
+ When tabs exceed the available width, all tabs that cannot fit are grouped into a list in a fold-out modal. On mobile with only two tabs, each tab takes up 50% of the width.
15
+
16
+ ### Tabs vs segmented control
17
+
18
+ Tabs and segmented controls can look similar, but they serve very different purposes. Choosing the wrong component leads to user confusion and misaligned expectations.
19
+
20
+ #### Use tabs when
21
+
22
+ Use tabs to navigate between **completely different views or distinct sections of content**. Each tab reveals unique content that is unrelated to what the other tabs show.
23
+
24
+ Think of tabs as separate binders — switching tabs takes the user to an entirely different set of content.
25
+
26
+ * The content under each tab is meaningfully different in nature
27
+
28
+ * Users are unlikely to need to compare the contents of multiple tabs at once
29
+
30
+ * The tabs act as primary or secondary navigation within the page
31
+
32
+ * Content groupings are based on different topics, data sets, or tasks
33
+
34
+ #### Use segmented control when
35
+
36
+ Use segmented control to **filter or toggle the presentation of the same underlying content**. The data does not change — only how it is displayed or sorted.
37
+
38
+ Think of segmented control as a switch that changes the lens through which you view the same document.
39
+
40
+ * You are switching between different representations of the same data (e.g. list vs. grid, weekly vs. monthly)
41
+
42
+ * The options act as filters or view toggles within a single context
43
+
44
+ * The component is embedded within a form or a content area, not used as page navigation
45
+
46
+ ### Guidelines
47
+
48
+ Tabs are best suited for a small number of clearly distinct content groupings. Order tabs according to user needs, placing the most commonly accessed tab first.
49
+
50
+ ### Disabled tabs
51
+
52
+ Individual tabs can be disabled to indicate that a section is unavailable. Use this sparingly and only when the reason for unavailability is clear to the user.
53
+
54
+ ### Link tabs
55
+
56
+ Tabs can render as anchor links, navigating to a new URL rather than switching panel content inline. Use link tabs for top-level or cross-page navigation where each tab corresponds to a distinct URL.
57
+
58
+ ### Leading and trailing content
59
+
60
+ Tab items support a leading slot for icons and a trailing slot for supplementary content such as notification badges or counts. Use these slots to aid recognition or communicate status — not for decoration.
61
+
62
+ ### Leading and trailing content guidelines
63
+
64
+
65
+ ## UX Guidelines
66
+
67
+ ### Writing UX text for tabs
68
+
69
+ ### Tab labels
70
+
71
+ ### Common tab labels in overviews
@@ -0,0 +1,9 @@
1
+ {
2
+ "name": "gds-tabs",
3
+ "files": {
4
+ "api": "api.md",
5
+ "guidelines": "guidelines.md",
6
+ "angular": "angular.md",
7
+ "react": "react.md"
8
+ }
9
+ }
@@ -0,0 +1,26 @@
1
+ # gds-tabs - React
2
+
3
+ ## Import
4
+
5
+ ```typescript
6
+ import { GdsTabs } from '@sebgroup/green-core/react'
7
+ ```
8
+
9
+ ## Usage
10
+
11
+ Use the component as a React JSX element:
12
+
13
+ ```tsx
14
+ <GdsTabs>
15
+ {/* content */}
16
+ </GdsTabs>
17
+ ```
18
+
19
+ ## Event Handling
20
+
21
+ Events are handled using React event handler props. Event names are converted from kebab-case to camelCase with an "on" prefix:
22
+
23
+ | Web Component Event | React Handler Prop | Handler Example |
24
+ |---------------------|--------------------|-----------------|
25
+ | `click` | `onClick` | `onClick={handler}` |
26
+ | `gds-tab-change` | `onGdsTabChange` | `onGdsTabChange={handler}` |
@@ -1,5 +1,5 @@
1
1
  {
2
- "generatedAt": "2026-06-03T13:53:29.549Z",
2
+ "generatedAt": "2026-06-10T08:31:07.591Z",
3
3
  "categories": {
4
4
  "space": {
5
5
  "description": "Spacing tokens for padding, margin, gap, and other spacing",