@sebgroup/green-core 3.25.2 → 3.26.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (437) hide show
  1. package/components/checkbox/checkbox-group/checkbox-group.component.js +4 -2
  2. package/components/checkbox/checkbox.component.js +11 -0
  3. package/components/datepicker/date-part-spinner.d.ts +4 -0
  4. package/components/datepicker/date-part-spinner.js +6 -0
  5. package/components/datepicker/datepicker.component.d.ts +1 -0
  6. package/components/datepicker/datepicker.component.js +93 -58
  7. package/components/datepicker/datepicker.styles.js +4 -1
  8. package/components/dropdown/dropdown.component.js +13 -1
  9. package/components/dropdown/option.component.js +1 -0
  10. package/components/filter-chips/filter-chips.component.d.ts +1 -0
  11. package/components/filter-chips/filter-chips.component.js +6 -0
  12. package/components/form/form-control.d.ts +5 -0
  13. package/components/form/form-control.js +7 -0
  14. package/components/input/input.component.js +7 -2
  15. package/components/radio/radio-group/radio-group.component.js +8 -2
  16. package/components/radio/radio.component.d.ts +9 -0
  17. package/components/radio/radio.component.js +9 -3
  18. package/components/select/select.component.js +40 -13
  19. package/components/select/select.styles.js +4 -0
  20. package/components/switch/switch.component.js +22 -4
  21. package/components/switch/switch.styles.js +34 -0
  22. package/components/table/table.component.js +2 -1
  23. package/components/textarea/textarea.component.js +6 -1
  24. package/custom-elements.json +37962 -37453
  25. package/gds-element.js +1 -1
  26. package/generated/mcp/button/api.md +1 -0
  27. package/generated/mcp/checkbox/api.md +1 -0
  28. package/generated/mcp/checkbox-group/api.md +1 -0
  29. package/generated/mcp/components.json +1 -1
  30. package/generated/mcp/datepicker/api.md +1 -0
  31. package/generated/mcp/dropdown/api.md +1 -0
  32. package/generated/mcp/fab/api.md +1 -0
  33. package/generated/mcp/filter-chips/angular.md +1 -0
  34. package/generated/mcp/filter-chips/api.md +2 -0
  35. package/generated/mcp/filter-chips/react.md +1 -0
  36. package/generated/mcp/icons.json +1 -1
  37. package/generated/mcp/index.json +1 -1
  38. package/generated/mcp/input/api.md +1 -0
  39. package/generated/mcp/radio/api.md +1 -0
  40. package/generated/mcp/radio-group/api.md +1 -0
  41. package/generated/mcp/switch/api.md +1 -0
  42. package/generated/mcp/textarea/api.md +1 -0
  43. package/generated/mcp/tokens.json +1 -1
  44. package/generated/react/alert/index.d.ts +2 -2
  45. package/generated/react/avatar/index.d.ts +2 -2
  46. package/generated/react/avatar-group/index.d.ts +2 -2
  47. package/generated/react/backdrop/index.d.ts +2 -2
  48. package/generated/react/badge/index.d.ts +2 -2
  49. package/generated/react/blur/index.d.ts +2 -2
  50. package/generated/react/breadcrumb/index.d.ts +2 -2
  51. package/generated/react/breadcrumbs/index.d.ts +2 -2
  52. package/generated/react/button/index.d.ts +3 -2
  53. package/generated/react/calendar/index.d.ts +2 -2
  54. package/generated/react/card/index.d.ts +2 -2
  55. package/generated/react/card-linked/index.d.ts +2 -2
  56. package/generated/react/card-pattern-01/index.d.ts +2 -2
  57. package/generated/react/checkbox/index.d.ts +3 -2
  58. package/generated/react/checkbox-group/index.d.ts +3 -2
  59. package/generated/react/coachmark/index.d.ts +2 -2
  60. package/generated/react/context-menu/index.d.ts +2 -2
  61. package/generated/react/datepicker/index.d.ts +3 -2
  62. package/generated/react/details/index.d.ts +2 -2
  63. package/generated/react/dialog/index.d.ts +2 -2
  64. package/generated/react/div/index.d.ts +2 -2
  65. package/generated/react/divider/index.d.ts +2 -2
  66. package/generated/react/dropdown/index.d.ts +3 -2
  67. package/generated/react/fab/index.d.ts +3 -2
  68. package/generated/react/filter-chip/index.d.ts +2 -2
  69. package/generated/react/filter-chips/index.d.ts +3 -2
  70. package/generated/react/flex/index.d.ts +2 -2
  71. package/generated/react/form-summary/index.d.ts +2 -2
  72. package/generated/react/formatted-account/index.d.ts +2 -2
  73. package/generated/react/formatted-date/index.d.ts +2 -2
  74. package/generated/react/formatted-number/index.d.ts +2 -2
  75. package/generated/react/grid/index.d.ts +2 -2
  76. package/generated/react/grouped-list/index.d.ts +2 -2
  77. package/generated/react/icons/icon-ai/index.d.ts +2 -2
  78. package/generated/react/icons/icon-airplane-up/index.d.ts +2 -2
  79. package/generated/react/icons/icon-archive/index.d.ts +2 -2
  80. package/generated/react/icons/icon-arrow/index.d.ts +2 -2
  81. package/generated/react/icons/icon-arrow-bottom-top/index.d.ts +2 -2
  82. package/generated/react/icons/icon-arrow-box-left/index.d.ts +2 -2
  83. package/generated/react/icons/icon-arrow-box-left-alt/index.d.ts +2 -2
  84. package/generated/react/icons/icon-arrow-box-right/index.d.ts +2 -2
  85. package/generated/react/icons/icon-arrow-down/index.d.ts +2 -2
  86. package/generated/react/icons/icon-arrow-inbox/index.d.ts +2 -2
  87. package/generated/react/icons/icon-arrow-left/index.d.ts +2 -2
  88. package/generated/react/icons/icon-arrow-left-right/index.d.ts +2 -2
  89. package/generated/react/icons/icon-arrow-out-of-box/index.d.ts +2 -2
  90. package/generated/react/icons/icon-arrow-right/index.d.ts +2 -2
  91. package/generated/react/icons/icon-arrow-right-circle/index.d.ts +2 -2
  92. package/generated/react/icons/icon-arrow-right-down-circle/index.d.ts +2 -2
  93. package/generated/react/icons/icon-arrow-right-up-circle/index.d.ts +2 -2
  94. package/generated/react/icons/icon-arrow-rotate-clockwise/index.d.ts +2 -2
  95. package/generated/react/icons/icon-arrow-rotate-counter-clockwise/index.d.ts +2 -2
  96. package/generated/react/icons/icon-arrow-rotate-left-right/index.d.ts +2 -2
  97. package/generated/react/icons/icon-arrow-rotate-right-left/index.d.ts +2 -2
  98. package/generated/react/icons/icon-arrow-share-left/index.d.ts +2 -2
  99. package/generated/react/icons/icon-arrow-share-right/index.d.ts +2 -2
  100. package/generated/react/icons/icon-arrow-split/index.d.ts +2 -2
  101. package/generated/react/icons/icon-arrow-up/index.d.ts +2 -2
  102. package/generated/react/icons/icon-arrow-wall-down/index.d.ts +2 -2
  103. package/generated/react/icons/icon-arrow-wall-left/index.d.ts +2 -2
  104. package/generated/react/icons/icon-arrow-wall-right/index.d.ts +2 -2
  105. package/generated/react/icons/icon-arrow-wall-up/index.d.ts +2 -2
  106. package/generated/react/icons/icon-arrows-repeat-right/index.d.ts +2 -2
  107. package/generated/react/icons/icon-asterisk/index.d.ts +2 -2
  108. package/generated/react/icons/icon-at/index.d.ts +2 -2
  109. package/generated/react/icons/icon-back/index.d.ts +2 -2
  110. package/generated/react/icons/icon-backward/index.d.ts +2 -2
  111. package/generated/react/icons/icon-bag/index.d.ts +2 -2
  112. package/generated/react/icons/icon-bank/index.d.ts +2 -2
  113. package/generated/react/icons/icon-banknote/index.d.ts +2 -2
  114. package/generated/react/icons/icon-banknote-2/index.d.ts +2 -2
  115. package/generated/react/icons/icon-barcode/index.d.ts +2 -2
  116. package/generated/react/icons/icon-bars-three/index.d.ts +2 -2
  117. package/generated/react/icons/icon-bars-two/index.d.ts +2 -2
  118. package/generated/react/icons/icon-basket/index.d.ts +2 -2
  119. package/generated/react/icons/icon-battery-loading/index.d.ts +2 -2
  120. package/generated/react/icons/icon-bell/index.d.ts +2 -2
  121. package/generated/react/icons/icon-block/index.d.ts +2 -2
  122. package/generated/react/icons/icon-book/index.d.ts +2 -2
  123. package/generated/react/icons/icon-bookmark/index.d.ts +2 -2
  124. package/generated/react/icons/icon-bookmark-check/index.d.ts +2 -2
  125. package/generated/react/icons/icon-bookmark-delete/index.d.ts +2 -2
  126. package/generated/react/icons/icon-bookmark-plus/index.d.ts +2 -2
  127. package/generated/react/icons/icon-bookmark-remove/index.d.ts +2 -2
  128. package/generated/react/icons/icon-books/index.d.ts +2 -2
  129. package/generated/react/icons/icon-brand-app-store/index.d.ts +2 -2
  130. package/generated/react/icons/icon-brand-apple-music/index.d.ts +2 -2
  131. package/generated/react/icons/icon-brand-bankid/index.d.ts +2 -2
  132. package/generated/react/icons/icon-brand-chrome/index.d.ts +2 -2
  133. package/generated/react/icons/icon-brand-facebook/index.d.ts +2 -2
  134. package/generated/react/icons/icon-brand-figma/index.d.ts +2 -2
  135. package/generated/react/icons/icon-brand-firefox/index.d.ts +2 -2
  136. package/generated/react/icons/icon-brand-github/index.d.ts +2 -2
  137. package/generated/react/icons/icon-brand-green/index.d.ts +2 -2
  138. package/generated/react/icons/icon-brand-instagram/index.d.ts +2 -2
  139. package/generated/react/icons/icon-brand-linkedin/index.d.ts +2 -2
  140. package/generated/react/icons/icon-brand-play-store/index.d.ts +2 -2
  141. package/generated/react/icons/icon-brand-rss-feed/index.d.ts +2 -2
  142. package/generated/react/icons/icon-brand-seb/index.d.ts +2 -2
  143. package/generated/react/icons/icon-brand-spotify/index.d.ts +2 -2
  144. package/generated/react/icons/icon-brand-storybook/index.d.ts +2 -2
  145. package/generated/react/icons/icon-brand-swish-word/index.d.ts +2 -2
  146. package/generated/react/icons/icon-brand-x/index.d.ts +2 -2
  147. package/generated/react/icons/icon-brush/index.d.ts +2 -2
  148. package/generated/react/icons/icon-bubble-annotation/index.d.ts +2 -2
  149. package/generated/react/icons/icon-bubbles/index.d.ts +2 -2
  150. package/generated/react/icons/icon-buildings/index.d.ts +2 -2
  151. package/generated/react/icons/icon-bullet-list/index.d.ts +2 -2
  152. package/generated/react/icons/icon-calculator/index.d.ts +2 -2
  153. package/generated/react/icons/icon-calendar/index.d.ts +2 -2
  154. package/generated/react/icons/icon-calendar-check/index.d.ts +2 -2
  155. package/generated/react/icons/icon-calendar-repeat/index.d.ts +2 -2
  156. package/generated/react/icons/icon-calender-add/index.d.ts +2 -2
  157. package/generated/react/icons/icon-call/index.d.ts +2 -2
  158. package/generated/react/icons/icon-car/index.d.ts +2 -2
  159. package/generated/react/icons/icon-carussel/index.d.ts +2 -2
  160. package/generated/react/icons/icon-chain-link/index.d.ts +2 -2
  161. package/generated/react/icons/icon-chain-link-broken/index.d.ts +2 -2
  162. package/generated/react/icons/icon-chart-two/index.d.ts +2 -2
  163. package/generated/react/icons/icon-checklist/index.d.ts +2 -2
  164. package/generated/react/icons/icon-checkmark/index.d.ts +2 -2
  165. package/generated/react/icons/icon-chevron-bottom/index.d.ts +2 -2
  166. package/generated/react/icons/icon-chevron-double-down/index.d.ts +2 -2
  167. package/generated/react/icons/icon-chevron-double-left/index.d.ts +2 -2
  168. package/generated/react/icons/icon-chevron-double-right/index.d.ts +2 -2
  169. package/generated/react/icons/icon-chevron-double-up/index.d.ts +2 -2
  170. package/generated/react/icons/icon-chevron-down-small/index.d.ts +2 -2
  171. package/generated/react/icons/icon-chevron-grabber-vertical/index.d.ts +2 -2
  172. package/generated/react/icons/icon-chevron-grabber-vertical-reversed/index.d.ts +2 -2
  173. package/generated/react/icons/icon-chevron-left/index.d.ts +2 -2
  174. package/generated/react/icons/icon-chevron-left-small/index.d.ts +2 -2
  175. package/generated/react/icons/icon-chevron-right/index.d.ts +2 -2
  176. package/generated/react/icons/icon-chevron-right-small/index.d.ts +2 -2
  177. package/generated/react/icons/icon-chevron-top/index.d.ts +2 -2
  178. package/generated/react/icons/icon-chevron-top-small/index.d.ts +2 -2
  179. package/generated/react/icons/icon-circle-ban/index.d.ts +2 -2
  180. package/generated/react/icons/icon-circle-check/index.d.ts +2 -2
  181. package/generated/react/icons/icon-circle-dots/index.d.ts +2 -2
  182. package/generated/react/icons/icon-circle-info/index.d.ts +2 -2
  183. package/generated/react/icons/icon-circle-minus/index.d.ts +2 -2
  184. package/generated/react/icons/icon-circle-placeholder-on/index.d.ts +2 -2
  185. package/generated/react/icons/icon-circle-plus/index.d.ts +2 -2
  186. package/generated/react/icons/icon-circle-questionmark/index.d.ts +2 -2
  187. package/generated/react/icons/icon-circle-x/index.d.ts +2 -2
  188. package/generated/react/icons/icon-circles-three/index.d.ts +2 -2
  189. package/generated/react/icons/icon-clock/index.d.ts +2 -2
  190. package/generated/react/icons/icon-cloud-download/index.d.ts +2 -2
  191. package/generated/react/icons/icon-cloud-upload/index.d.ts +2 -2
  192. package/generated/react/icons/icon-cloudy-sun/index.d.ts +2 -2
  193. package/generated/react/icons/icon-code/index.d.ts +2 -2
  194. package/generated/react/icons/icon-code-brackets/index.d.ts +2 -2
  195. package/generated/react/icons/icon-compass-round/index.d.ts +2 -2
  196. package/generated/react/icons/icon-cookies/index.d.ts +2 -2
  197. package/generated/react/icons/icon-copy/index.d.ts +2 -2
  198. package/generated/react/icons/icon-credit-card/index.d.ts +2 -2
  199. package/generated/react/icons/icon-credit-card-add/index.d.ts +2 -2
  200. package/generated/react/icons/icon-cross-large/index.d.ts +2 -2
  201. package/generated/react/icons/icon-cross-small/index.d.ts +2 -2
  202. package/generated/react/icons/icon-cup-hot/index.d.ts +2 -2
  203. package/generated/react/icons/icon-cursor/index.d.ts +2 -2
  204. package/generated/react/icons/icon-details/index.d.ts +2 -2
  205. package/generated/react/icons/icon-devices/index.d.ts +2 -2
  206. package/generated/react/icons/icon-direction/index.d.ts +2 -2
  207. package/generated/react/icons/icon-dollar/index.d.ts +2 -2
  208. package/generated/react/icons/icon-dot-grid-one-horizontal/index.d.ts +2 -2
  209. package/generated/react/icons/icon-dot-grid-one-vertical/index.d.ts +2 -2
  210. package/generated/react/icons/icon-dot-grid-three/index.d.ts +2 -2
  211. package/generated/react/icons/icon-dot-grid-two/index.d.ts +2 -2
  212. package/generated/react/icons/icon-email/index.d.ts +2 -2
  213. package/generated/react/icons/icon-emoji-angry/index.d.ts +2 -2
  214. package/generated/react/icons/icon-emoji-neutral/index.d.ts +2 -2
  215. package/generated/react/icons/icon-emoji-sad/index.d.ts +2 -2
  216. package/generated/react/icons/icon-emoji-smile/index.d.ts +2 -2
  217. package/generated/react/icons/icon-emoji-smiley/index.d.ts +2 -2
  218. package/generated/react/icons/icon-euro/index.d.ts +2 -2
  219. package/generated/react/icons/icon-expand/index.d.ts +2 -2
  220. package/generated/react/icons/icon-eye-open/index.d.ts +2 -2
  221. package/generated/react/icons/icon-eye-slash/index.d.ts +2 -2
  222. package/generated/react/icons/icon-fashion/index.d.ts +2 -2
  223. package/generated/react/icons/icon-fast-forward/index.d.ts +2 -2
  224. package/generated/react/icons/icon-file-bend/index.d.ts +2 -2
  225. package/generated/react/icons/icon-file-chart/index.d.ts +2 -2
  226. package/generated/react/icons/icon-file-text/index.d.ts +2 -2
  227. package/generated/react/icons/icon-files/index.d.ts +2 -2
  228. package/generated/react/icons/icon-filter/index.d.ts +2 -2
  229. package/generated/react/icons/icon-flag/index.d.ts +2 -2
  230. package/generated/react/icons/icon-floppy-disk/index.d.ts +2 -2
  231. package/generated/react/icons/icon-focus/index.d.ts +2 -2
  232. package/generated/react/icons/icon-folder/index.d.ts +2 -2
  233. package/generated/react/icons/icon-folder-add-right/index.d.ts +2 -2
  234. package/generated/react/icons/icon-fullscreen/index.d.ts +2 -2
  235. package/generated/react/icons/icon-gift/index.d.ts +2 -2
  236. package/generated/react/icons/icon-globus/index.d.ts +2 -2
  237. package/generated/react/icons/icon-graduate-cap/index.d.ts +2 -2
  238. package/generated/react/icons/icon-green-power/index.d.ts +2 -2
  239. package/generated/react/icons/icon-group/index.d.ts +2 -2
  240. package/generated/react/icons/icon-growth/index.d.ts +2 -2
  241. package/generated/react/icons/icon-headphones/index.d.ts +2 -2
  242. package/generated/react/icons/icon-heart/index.d.ts +2 -2
  243. package/generated/react/icons/icon-heart-beat/index.d.ts +2 -2
  244. package/generated/react/icons/icon-history/index.d.ts +2 -2
  245. package/generated/react/icons/icon-home-energy-one/index.d.ts +2 -2
  246. package/generated/react/icons/icon-home-energy-two/index.d.ts +2 -2
  247. package/generated/react/icons/icon-home-open/index.d.ts +2 -2
  248. package/generated/react/icons/icon-home-roof/index.d.ts +2 -2
  249. package/generated/react/icons/icon-horizontal-alignment-bottom/index.d.ts +2 -2
  250. package/generated/react/icons/icon-hourglass/index.d.ts +2 -2
  251. package/generated/react/icons/icon-images/index.d.ts +2 -2
  252. package/generated/react/icons/icon-inbox-empty/index.d.ts +2 -2
  253. package/generated/react/icons/icon-industry/index.d.ts +2 -2
  254. package/generated/react/icons/icon-jpg/index.d.ts +2 -2
  255. package/generated/react/icons/icon-key/index.d.ts +2 -2
  256. package/generated/react/icons/icon-knife-spoon/index.d.ts +2 -2
  257. package/generated/react/icons/icon-lab/index.d.ts +2 -2
  258. package/generated/react/icons/icon-law/index.d.ts +2 -2
  259. package/generated/react/icons/icon-leisure/index.d.ts +2 -2
  260. package/generated/react/icons/icon-light-bulb-simple/index.d.ts +2 -2
  261. package/generated/react/icons/icon-lightning/index.d.ts +2 -2
  262. package/generated/react/icons/icon-line-chart-four/index.d.ts +2 -2
  263. package/generated/react/icons/icon-line-chart-one/index.d.ts +2 -2
  264. package/generated/react/icons/icon-line-chart-three/index.d.ts +2 -2
  265. package/generated/react/icons/icon-line-chart-two/index.d.ts +2 -2
  266. package/generated/react/icons/icon-lock/index.d.ts +2 -2
  267. package/generated/react/icons/icon-macbook-air/index.d.ts +2 -2
  268. package/generated/react/icons/icon-magnifying-glass/index.d.ts +2 -2
  269. package/generated/react/icons/icon-map-pin/index.d.ts +2 -2
  270. package/generated/react/icons/icon-megaphone/index.d.ts +2 -2
  271. package/generated/react/icons/icon-menu-sidebar/index.d.ts +2 -2
  272. package/generated/react/icons/icon-mic-off/index.d.ts +2 -2
  273. package/generated/react/icons/icon-mic-on/index.d.ts +2 -2
  274. package/generated/react/icons/icon-minimize/index.d.ts +2 -2
  275. package/generated/react/icons/icon-minus-large/index.d.ts +2 -2
  276. package/generated/react/icons/icon-minus-small/index.d.ts +2 -2
  277. package/generated/react/icons/icon-money-hand/index.d.ts +2 -2
  278. package/generated/react/icons/icon-moneybag/index.d.ts +2 -2
  279. package/generated/react/icons/icon-moon/index.d.ts +2 -2
  280. package/generated/react/icons/icon-mute/index.d.ts +2 -2
  281. package/generated/react/icons/icon-newspaper/index.d.ts +2 -2
  282. package/generated/react/icons/icon-office/index.d.ts +2 -2
  283. package/generated/react/icons/icon-page-add/index.d.ts +2 -2
  284. package/generated/react/icons/icon-paper-plane-top-right/index.d.ts +2 -2
  285. package/generated/react/icons/icon-paperclip/index.d.ts +2 -2
  286. package/generated/react/icons/icon-pause/index.d.ts +2 -2
  287. package/generated/react/icons/icon-pdf/index.d.ts +2 -2
  288. package/generated/react/icons/icon-pencil-sign/index.d.ts +2 -2
  289. package/generated/react/icons/icon-pencil-sparkle/index.d.ts +2 -2
  290. package/generated/react/icons/icon-pencil-wave/index.d.ts +2 -2
  291. package/generated/react/icons/icon-pension/index.d.ts +2 -2
  292. package/generated/react/icons/icon-people/index.d.ts +2 -2
  293. package/generated/react/icons/icon-people-a11y/index.d.ts +2 -2
  294. package/generated/react/icons/icon-people-add/index.d.ts +2 -2
  295. package/generated/react/icons/icon-people-added/index.d.ts +2 -2
  296. package/generated/react/icons/icon-people-circle/index.d.ts +2 -2
  297. package/generated/react/icons/icon-people-copy/index.d.ts +2 -2
  298. package/generated/react/icons/icon-people-profile/index.d.ts +2 -2
  299. package/generated/react/icons/icon-people-remove/index.d.ts +2 -2
  300. package/generated/react/icons/icon-percent/index.d.ts +2 -2
  301. package/generated/react/icons/icon-phone/index.d.ts +2 -2
  302. package/generated/react/icons/icon-pie-chart/index.d.ts +2 -2
  303. package/generated/react/icons/icon-piggy-bank/index.d.ts +2 -2
  304. package/generated/react/icons/icon-pin/index.d.ts +2 -2
  305. package/generated/react/icons/icon-pinch/index.d.ts +2 -2
  306. package/generated/react/icons/icon-play/index.d.ts +2 -2
  307. package/generated/react/icons/icon-play-circle/index.d.ts +2 -2
  308. package/generated/react/icons/icon-plus-large/index.d.ts +2 -2
  309. package/generated/react/icons/icon-plus-small/index.d.ts +2 -2
  310. package/generated/react/icons/icon-png/index.d.ts +2 -2
  311. package/generated/react/icons/icon-poop/index.d.ts +2 -2
  312. package/generated/react/icons/icon-postcard/index.d.ts +2 -2
  313. package/generated/react/icons/icon-pound/index.d.ts +2 -2
  314. package/generated/react/icons/icon-power/index.d.ts +2 -2
  315. package/generated/react/icons/icon-power-plant/index.d.ts +2 -2
  316. package/generated/react/icons/icon-printer/index.d.ts +2 -2
  317. package/generated/react/icons/icon-push/index.d.ts +2 -2
  318. package/generated/react/icons/icon-qr-code/index.d.ts +2 -2
  319. package/generated/react/icons/icon-rainy/index.d.ts +2 -2
  320. package/generated/react/icons/icon-raising-hand/index.d.ts +2 -2
  321. package/generated/react/icons/icon-reading-list/index.d.ts +2 -2
  322. package/generated/react/icons/icon-receipt-bill/index.d.ts +2 -2
  323. package/generated/react/icons/icon-receiption-bell/index.d.ts +2 -2
  324. package/generated/react/icons/icon-record/index.d.ts +2 -2
  325. package/generated/react/icons/icon-refund/index.d.ts +2 -2
  326. package/generated/react/icons/icon-robot/index.d.ts +2 -2
  327. package/generated/react/icons/icon-rocket/index.d.ts +2 -2
  328. package/generated/react/icons/icon-run-shortcut/index.d.ts +2 -2
  329. package/generated/react/icons/icon-safari/index.d.ts +2 -2
  330. package/generated/react/icons/icon-satellite/index.d.ts +2 -2
  331. package/generated/react/icons/icon-school/index.d.ts +2 -2
  332. package/generated/react/icons/icon-scissors/index.d.ts +2 -2
  333. package/generated/react/icons/icon-search-menu/index.d.ts +2 -2
  334. package/generated/react/icons/icon-settings-gear/index.d.ts +2 -2
  335. package/generated/react/icons/icon-settings-slider-hor/index.d.ts +2 -2
  336. package/generated/react/icons/icon-settings-slider-ver/index.d.ts +2 -2
  337. package/generated/react/icons/icon-shapes/index.d.ts +2 -2
  338. package/generated/react/icons/icon-share/index.d.ts +2 -2
  339. package/generated/react/icons/icon-shield/index.d.ts +2 -2
  340. package/generated/react/icons/icon-shield-checked/index.d.ts +2 -2
  341. package/generated/react/icons/icon-shield-crossed/index.d.ts +2 -2
  342. package/generated/react/icons/icon-shopping-bag/index.d.ts +2 -2
  343. package/generated/react/icons/icon-signature/index.d.ts +2 -2
  344. package/generated/react/icons/icon-smartwatch/index.d.ts +2 -2
  345. package/generated/react/icons/icon-solar/index.d.ts +2 -2
  346. package/generated/react/icons/icon-sort/index.d.ts +2 -2
  347. package/generated/react/icons/icon-sort-ascending/index.d.ts +2 -2
  348. package/generated/react/icons/icon-sort-descending/index.d.ts +2 -2
  349. package/generated/react/icons/icon-sort-down/index.d.ts +2 -2
  350. package/generated/react/icons/icon-sort-up/index.d.ts +2 -2
  351. package/generated/react/icons/icon-square-arrow-top-right/index.d.ts +2 -2
  352. package/generated/react/icons/icon-square-behind-square/index.d.ts +2 -2
  353. package/generated/react/icons/icon-square-grid-circle/index.d.ts +2 -2
  354. package/generated/react/icons/icon-square-placeholder/index.d.ts +2 -2
  355. package/generated/react/icons/icon-star/index.d.ts +2 -2
  356. package/generated/react/icons/icon-store/index.d.ts +2 -2
  357. package/generated/react/icons/icon-sun/index.d.ts +2 -2
  358. package/generated/react/icons/icon-sunset-arrow-down/index.d.ts +2 -2
  359. package/generated/react/icons/icon-tag/index.d.ts +2 -2
  360. package/generated/react/icons/icon-target-arrow/index.d.ts +2 -2
  361. package/generated/react/icons/icon-television/index.d.ts +2 -2
  362. package/generated/react/icons/icon-tennis/index.d.ts +2 -2
  363. package/generated/react/icons/icon-text-edit/index.d.ts +2 -2
  364. package/generated/react/icons/icon-thermostat/index.d.ts +2 -2
  365. package/generated/react/icons/icon-thumbs-down/index.d.ts +2 -2
  366. package/generated/react/icons/icon-thumbs-up/index.d.ts +2 -2
  367. package/generated/react/icons/icon-ticket/index.d.ts +2 -2
  368. package/generated/react/icons/icon-trading-view-candles/index.d.ts +2 -2
  369. package/generated/react/icons/icon-trash-can/index.d.ts +2 -2
  370. package/generated/react/icons/icon-tree/index.d.ts +2 -2
  371. package/generated/react/icons/icon-trending-five/index.d.ts +2 -2
  372. package/generated/react/icons/icon-trending-four/index.d.ts +2 -2
  373. package/generated/react/icons/icon-trending-one/index.d.ts +2 -2
  374. package/generated/react/icons/icon-trending-three/index.d.ts +2 -2
  375. package/generated/react/icons/icon-trending-two/index.d.ts +2 -2
  376. package/generated/react/icons/icon-triangle-exclamation/index.d.ts +2 -2
  377. package/generated/react/icons/icon-truck/index.d.ts +2 -2
  378. package/generated/react/icons/icon-umbrella-security/index.d.ts +2 -2
  379. package/generated/react/icons/icon-unlocked/index.d.ts +2 -2
  380. package/generated/react/icons/icon-volume-full/index.d.ts +2 -2
  381. package/generated/react/icons/icon-volume-half/index.d.ts +2 -2
  382. package/generated/react/icons/icon-volume-off/index.d.ts +2 -2
  383. package/generated/react/icons/icon-wallet/index.d.ts +2 -2
  384. package/generated/react/icons/icon-warning-sign/index.d.ts +2 -2
  385. package/generated/react/icons/icon-wifi-full/index.d.ts +2 -2
  386. package/generated/react/icons/icon-youtube/index.d.ts +2 -2
  387. package/generated/react/icons/icon-zap/index.d.ts +2 -2
  388. package/generated/react/icons/icon-zoom-in/index.d.ts +2 -2
  389. package/generated/react/icons/icon-zoom-out/index.d.ts +2 -2
  390. package/generated/react/img/index.d.ts +2 -2
  391. package/generated/react/index.d.ts +1 -1
  392. package/generated/react/index.js +1 -1
  393. package/generated/react/input/index.d.ts +3 -2
  394. package/generated/react/link/index.d.ts +2 -2
  395. package/generated/react/list/index.d.ts +2 -2
  396. package/generated/react/list-item/index.d.ts +2 -2
  397. package/generated/react/list-item-pattern-01/index.d.ts +2 -2
  398. package/generated/react/mask/index.d.ts +2 -2
  399. package/generated/react/menu-button/index.d.ts +2 -2
  400. package/generated/react/menu-heading/index.d.ts +2 -2
  401. package/generated/react/menu-item/index.d.ts +2 -2
  402. package/generated/react/option/index.d.ts +2 -2
  403. package/generated/react/pagination/index.d.ts +2 -2
  404. package/generated/react/popover/index.d.ts +2 -2
  405. package/generated/react/radio/index.d.ts +3 -2
  406. package/generated/react/radio-group/index.d.ts +3 -2
  407. package/generated/react/rich-text/index.d.ts +2 -2
  408. package/generated/react/segment/index.d.ts +2 -2
  409. package/generated/react/segmented-control/index.d.ts +2 -2
  410. package/generated/react/select/index.d.ts +3 -2
  411. package/generated/react/sensitive-account/index.d.ts +2 -2
  412. package/generated/react/sensitive-date/index.d.ts +2 -2
  413. package/generated/react/sensitive-number/index.d.ts +2 -2
  414. package/generated/react/signal/index.d.ts +2 -2
  415. package/generated/react/slider/index.d.ts +2 -2
  416. package/generated/react/spinner/index.d.ts +2 -2
  417. package/generated/react/switch/index.d.ts +3 -2
  418. package/generated/react/tab/index.d.ts +2 -2
  419. package/generated/react/tab-panel/index.d.ts +2 -2
  420. package/generated/react/table/index.d.ts +2 -2
  421. package/generated/react/tabs/index.d.ts +2 -2
  422. package/generated/react/text/index.d.ts +2 -2
  423. package/generated/react/textarea/index.d.ts +3 -2
  424. package/generated/react/theme/index.d.ts +2 -2
  425. package/generated/react/video/index.d.ts +2 -2
  426. package/package.json +1 -1
  427. package/patterns/list-item-pattern-01/list-item-pattern-01.component.js +1 -0
  428. package/primitives/field-base/field-base.component.d.ts +4 -0
  429. package/primitives/field-base/field-base.component.js +40 -8
  430. package/primitives/field-base/field-base.styles.js +8 -3
  431. package/primitives/field-base/field-base.trans.styles.scss.js +1 -1
  432. package/primitives/ripple/ripple.component.d.ts +1 -0
  433. package/primitives/ripple/ripple.component.js +4 -0
  434. package/shared-styles/rbcb-toggle.style.js +25 -3
  435. package/shared-styles/rbcb-toggle.template.d.ts +1 -0
  436. package/shared-styles/rbcb-toggle.template.js +2 -1
  437. package/utils/helpers/custom-element-scoping.js +1 -1
@@ -20,17 +20,19 @@ let GdsRadio = class extends GdsElement {
20
20
  this.value = "";
21
21
  this.checked = false;
22
22
  this.disabled = false;
23
+ this.readonly = false;
23
24
  this.invalid = false;
24
25
  this._isFocused = false;
25
26
  __privateAdd(this, _handleClick, (e) => {
26
27
  if (this.disabled || !this.label) return;
27
28
  e.preventDefault();
28
- this.checked = true;
29
29
  this.focus();
30
+ if (this.readonly) return;
31
+ this.checked = true;
30
32
  this.dispatchStandardEvent("input", { bubbles: true });
31
33
  });
32
34
  __privateAdd(this, _handleKeyDown, (e) => {
33
- if (this.disabled) return;
35
+ if (this.disabled || this.readonly) return;
34
36
  if (e.key === "Enter" || e.key === " ") {
35
37
  e.preventDefault();
36
38
  this.checked = true;
@@ -59,7 +61,7 @@ let GdsRadio = class extends GdsElement {
59
61
  }
60
62
  updated(changedProperties) {
61
63
  super.updated(changedProperties);
62
- if (changedProperties.has("checked") || changedProperties.has("disabled") || changedProperties.has("invalid")) {
64
+ if (changedProperties.has("checked") || changedProperties.has("disabled") || changedProperties.has("readonly") || changedProperties.has("invalid")) {
63
65
  this._updateAriaState();
64
66
  }
65
67
  }
@@ -71,6 +73,7 @@ let GdsRadio = class extends GdsElement {
71
73
  ${radioToggle({
72
74
  checked: this.checked,
73
75
  disabled: this.disabled,
76
+ readonly: this.readonly,
74
77
  indeterminate: false,
75
78
  invalid: this.invalid
76
79
  })}
@@ -96,6 +99,9 @@ __decorateClass([
96
99
  __decorateClass([
97
100
  property({ type: Boolean, reflect: true })
98
101
  ], GdsRadio.prototype, "disabled", 2);
102
+ __decorateClass([
103
+ property({ type: Boolean, reflect: true })
104
+ ], GdsRadio.prototype, "readonly", 2);
99
105
  __decorateClass([
100
106
  property({ type: Boolean })
101
107
  ], GdsRadio.prototype, "invalid", 2);
@@ -5,10 +5,11 @@ import {
5
5
  __privateMethod,
6
6
  __privateSet
7
7
  } from "../../chunks/chunk.H2T4A5YY.js";
8
- var _isValueInitialized, _Select_instances, shouldShowFooter_fn, _handleSelectElementChange, setValueFromSelectElement_fn, renderFieldContents_fn, renderSlotLead_fn, renderMainLabel_fn, renderMainSlot_fn, renderChevron_fn;
8
+ var _isValueInitialized, _Select_instances, shouldShowFooter_fn, _handleSelectElementChange, _handleSelectElementKeyDown, setValueFromSelectElement_fn, syncSelectElement_fn, renderFieldContents_fn, renderSlotLead_fn, renderMainLabel_fn, renderMainSlot_fn, renderChevron_fn;
9
9
  import { localized } from "@lit/localize";
10
10
  import { property, query } from "lit/decorators.js";
11
11
  import { classMap } from "lit/directives/class-map.js";
12
+ import { ifDefined } from "lit/directives/if-defined.js";
12
13
  import { when } from "lit/directives/when.js";
13
14
  import { GdsFieldBase } from "../../primitives/field-base/field-base.component.js";
14
15
  import { GdsFormControlFooter } from "../../primitives/form-control-footer/form-control-footer.component.js";
@@ -41,6 +42,10 @@ let Select = class extends GdsFormControlElement {
41
42
  __privateAdd(this, _isValueInitialized, false);
42
43
  __privateAdd(this, _handleSelectElementChange, (e) => {
43
44
  e.stopPropagation();
45
+ if (this.readonly) {
46
+ __privateMethod(this, _Select_instances, syncSelectElement_fn).call(this);
47
+ return;
48
+ }
44
49
  __privateMethod(this, _Select_instances, setValueFromSelectElement_fn).call(this);
45
50
  requestAnimationFrame(() => {
46
51
  this.dispatchCustomEvent("input", {
@@ -55,6 +60,9 @@ let Select = class extends GdsFormControlElement {
55
60
  });
56
61
  });
57
62
  });
63
+ __privateAdd(this, _handleSelectElementKeyDown, (e) => {
64
+ if (this.readonly && e.key !== "Tab") e.preventDefault();
65
+ });
58
66
  }
59
67
  get value() {
60
68
  return this._internalValue;
@@ -116,6 +124,7 @@ let Select = class extends GdsFormControlElement {
116
124
  <gds-field-base
117
125
  .size=${this.size}
118
126
  .disabled=${this.disabled}
127
+ .readonly=${this.readonly}
119
128
  .invalid=${this.invalid}
120
129
  .multiline=${this.multiple}
121
130
  align-items=${this.multiple ? "flex-start" : "center"}
@@ -140,6 +149,7 @@ let Select = class extends GdsFormControlElement {
140
149
  const clone = node.cloneNode(true);
141
150
  clone.addEventListener("change", __privateGet(this, _handleSelectElementChange));
142
151
  clone.addEventListener("input", __privateGet(this, _handleSelectElementChange));
152
+ clone.addEventListener("keydown", __privateGet(this, _handleSelectElementKeyDown));
143
153
  clone.setAttribute(
144
154
  "aria-describedby",
145
155
  "supporting-text extended-supporting-text sub-label message"
@@ -147,10 +157,19 @@ let Select = class extends GdsFormControlElement {
147
157
  clone.ariaLabel = this.label;
148
158
  clone.setAttribute("id", "select");
149
159
  clone.disabled = this.disabled;
160
+ clone.setAttribute("aria-readonly", String(this.readonly));
150
161
  clone.className = "native-control";
151
- if (!__privateGet(this, _isValueInitialized))
152
- this._internalValue = clone.value;
153
- else clone.value = this.value;
162
+ if (!__privateGet(this, _isValueInitialized)) {
163
+ if (clone.multiple) {
164
+ this._internalValue = Array.from(clone.selectedOptions).map(
165
+ (option) => option.value
166
+ );
167
+ } else {
168
+ this._internalValue = clone.value;
169
+ }
170
+ } else {
171
+ __privateMethod(this, _Select_instances, syncSelectElement_fn).call(this, clone);
172
+ }
154
173
  return clone;
155
174
  });
156
175
  this._elSelectContainer.replaceChildren(...cloned);
@@ -177,14 +196,7 @@ let Select = class extends GdsFormControlElement {
177
196
  return this.selectElement;
178
197
  }
179
198
  _handleValueChange() {
180
- if (!this.selectElement) return;
181
- if (this.multiple) {
182
- const valArr = this.value || [];
183
- Array.from(this.selectElement.options).forEach((option) => {
184
- option.selected = valArr.includes(option.value);
185
- });
186
- } else this.selectElement.value = this.value;
187
- this.requestUpdate();
199
+ __privateMethod(this, _Select_instances, syncSelectElement_fn).call(this, this.selectElement);
188
200
  }
189
201
  };
190
202
  _isValueInitialized = new WeakMap();
@@ -193,6 +205,7 @@ shouldShowFooter_fn = function() {
193
205
  return !this.plain && this.invalid;
194
206
  };
195
207
  _handleSelectElementChange = new WeakMap();
208
+ _handleSelectElementKeyDown = new WeakMap();
196
209
  setValueFromSelectElement_fn = function() {
197
210
  if (!this.selectElement) return;
198
211
  if (this.multiple) {
@@ -202,6 +215,16 @@ setValueFromSelectElement_fn = function() {
202
215
  this.value = this.selectElement.value;
203
216
  }
204
217
  };
218
+ syncSelectElement_fn = function(selectElement = this.selectElement) {
219
+ if (!selectElement) return;
220
+ if (selectElement.multiple) {
221
+ const valArr = this.value || [];
222
+ Array.from(selectElement.options).forEach((option) => {
223
+ option.selected = valArr.includes(option.value);
224
+ });
225
+ } else selectElement.value = this.value;
226
+ this.requestUpdate();
227
+ };
205
228
  /**
206
229
  * Renders the main content area of the select field.
207
230
  * Composes the field from various sub-elements.
@@ -246,7 +269,11 @@ renderMainSlot_fn = function() {
246
269
  renderChevron_fn = function() {
247
270
  if (!this.multiple) {
248
271
  return html`
249
- <gds-icon-chevron-bottom slot="action"></gds-icon-chevron-bottom>
272
+ <gds-icon-chevron-bottom
273
+ class="chevron"
274
+ color=${ifDefined(this.readonly ? "disabled-01" : void 0)}
275
+ slot="action"
276
+ ></gds-icon-chevron-bottom>
250
277
  `;
251
278
  }
252
279
  };
@@ -26,6 +26,10 @@ const style = css`
26
26
  width: 100%;
27
27
  }
28
28
 
29
+ :host([readonly]) select {
30
+ pointer-events: none;
31
+ }
32
+
29
33
  label {
30
34
  flex: 1;
31
35
  }
@@ -4,7 +4,7 @@ import {
4
4
  __privateGet,
5
5
  __privateMethod
6
6
  } from "../../chunks/chunk.H2T4A5YY.js";
7
- var _Switch_instances, renderNativeInput_fn, renderLabel_fn, renderThumb_fn, renderTrack_fn, _handleChange, dispatchChangeEvents_fn, _handleKeyDown, syncFormValue_fn, triggerPerimeterRipple_fn;
7
+ var _Switch_instances, renderNativeInput_fn, renderLabel_fn, renderThumb_fn, renderLockIcon_fn, renderTrack_fn, _handleChange, dispatchChangeEvents_fn, _handleKeyDown, syncFormValue_fn, triggerPerimeterRipple_fn;
8
8
  import { property, query } from "lit/decorators.js";
9
9
  import { classMap } from "lit/directives/class-map.js";
10
10
  import { ifDefined } from "lit/directives/if-defined.js";
@@ -18,6 +18,7 @@ import {
18
18
  } from "../../utils/mixins/declarative-layout-mixins.js";
19
19
  import { GdsFormControlElement } from "../form/form-control.js";
20
20
  import { IconCheckmark } from "../icon/icons/checkmark.component.js";
21
+ import { IconLock } from "../icon/icons/lock.component.js";
21
22
  import { styles } from "./switch.styles.js";
22
23
  let Switch = class extends GdsFormControlElement {
23
24
  constructor() {
@@ -28,12 +29,16 @@ let Switch = class extends GdsFormControlElement {
28
29
  this.size = "large";
29
30
  this["justify-content"] = "flex-start";
30
31
  __privateAdd(this, _handleChange, () => {
32
+ if (this.readonly) {
33
+ this._input.checked = this.checked;
34
+ return;
35
+ }
31
36
  this.checked = this._input.checked;
32
37
  __privateMethod(this, _Switch_instances, triggerPerimeterRipple_fn).call(this);
33
38
  __privateMethod(this, _Switch_instances, dispatchChangeEvents_fn).call(this);
34
39
  });
35
40
  __privateAdd(this, _handleKeyDown, (event) => {
36
- if (this.disabled) return;
41
+ if (this.disabled || this.readonly) return;
37
42
  if (event.key === "Enter") {
38
43
  event.preventDefault();
39
44
  this._input.click();
@@ -65,6 +70,7 @@ let Switch = class extends GdsFormControlElement {
65
70
  switch: true,
66
71
  checked: this.checked,
67
72
  disabled: this.disabled,
73
+ readonly: this.readonly,
68
74
  "control-start": this.controlPlacement === "start",
69
75
  small: this.size === "small"
70
76
  };
@@ -85,6 +91,7 @@ renderNativeInput_fn = function() {
85
91
  .checked=${this.checked}
86
92
  ?disabled=${this.disabled}
87
93
  aria-label=${ifDefined(this.label ? void 0 : "Switch")}
94
+ aria-readonly=${this.readonly}
88
95
  @keydown=${__privateGet(this, _handleKeyDown)}
89
96
  @change=${__privateGet(this, _handleChange)}
90
97
  />
@@ -104,9 +111,20 @@ renderThumb_fn = function() {
104
111
  ></gds-icon-checkmark>
105
112
  </span>`;
106
113
  };
114
+ renderLockIcon_fn = function() {
115
+ if (!this.readonly) return null;
116
+ return html`<gds-icon-lock
117
+ size="${this.size === "small" ? "s" : "m"}"
118
+ color="${this.checked ? "neutral-03" : "disabled-01"}"
119
+ class="lock-icon"
120
+ solid
121
+ ></gds-icon-lock>`;
122
+ };
107
123
  renderTrack_fn = function() {
108
124
  return html`
109
- <span class="track" aria-hidden="true"> ${__privateMethod(this, _Switch_instances, renderThumb_fn).call(this)} </span>
125
+ <span class="track" aria-hidden="true">
126
+ ${__privateMethod(this, _Switch_instances, renderThumb_fn).call(this)} ${__privateMethod(this, _Switch_instances, renderLockIcon_fn).call(this)}
127
+ </span>
110
128
  `;
111
129
  };
112
130
  _handleChange = new WeakMap();
@@ -170,7 +188,7 @@ let GdsSwitch = class extends withLayoutChildProps(
170
188
  ) {
171
189
  };
172
190
  GdsSwitch = __decorateClass([
173
- gdsCustomElement("gds-switch", { dependsOn: [IconCheckmark] })
191
+ gdsCustomElement("gds-switch", { dependsOn: [IconCheckmark, IconLock] })
174
192
  ], GdsSwitch);
175
193
  export {
176
194
  GdsSwitch
@@ -67,6 +67,7 @@ const style = css`
67
67
  --switch-thumb-left-checked: calc(
68
68
  100% - var(--switch-thumb-size-checked) - 2px
69
69
  );
70
+ --switch-lock-icon-inset: var(--gds-sys-space-4xs);
70
71
  }
71
72
 
72
73
  .switch.small .label {
@@ -84,6 +85,7 @@ const style = css`
84
85
  --switch-thumb-left-checked: calc(
85
86
  100% - var(--switch-thumb-size-checked) - 2px
86
87
  );
88
+ --switch-lock-icon-inset: var(--gds-sys-space-3xs);
87
89
  }
88
90
 
89
91
  :is(.track, .thumb, .perimeter) {
@@ -175,6 +177,18 @@ const style = css`
175
177
  transform-origin: center;
176
178
  }
177
179
 
180
+ .lock-icon {
181
+ position: absolute;
182
+ top: 50%;
183
+ right: var(--switch-lock-icon-inset);
184
+ translate: 0 -50%;
185
+ }
186
+
187
+ .checked .lock-icon {
188
+ right: auto;
189
+ left: var(--switch-lock-icon-inset);
190
+ }
191
+
178
192
  @media (pointer: fine) {
179
193
  .switch:not(.disabled):not(:active):hover .thumb {
180
194
  scale: 1.085;
@@ -230,6 +244,26 @@ const style = css`
230
244
  color: var(--gds-sys-color-l3-disabled-01);
231
245
  }
232
246
 
247
+ .switch.readonly .track {
248
+ border-color: var(--gds-sys-color-l3-disabled-02);
249
+ }
250
+
251
+ .switch.readonly .thumb {
252
+ background: var(--gds-sys-color-content-disabled-01);
253
+ }
254
+
255
+ .switch.readonly.checked .track {
256
+ background-color: var(--gds-sys-color-l3-disabled-02);
257
+ }
258
+
259
+ .switch.readonly.checked .checkmark {
260
+ color: var(--gds-sys-color-content-disabled-01);
261
+ }
262
+
263
+ .switch.readonly.checked .thumb {
264
+ background: var(--gds-sys-color-content-disabled-02);
265
+ }
266
+
233
267
  @media (prefers-color-scheme: dark) {
234
268
  .switch.disabled .track {
235
269
  opacity: 0.4;
@@ -1083,7 +1083,8 @@ renderCheckbox_fn = function({
1083
1083
  checked,
1084
1084
  indeterminate,
1085
1085
  disabled,
1086
- invalid: false
1086
+ invalid: false,
1087
+ readonly: false
1087
1088
  })}
1088
1089
  </div>
1089
1090
  `;
@@ -55,10 +55,12 @@ let Textarea = class extends GdsFormControlElement {
55
55
  });
56
56
  };
57
57
  __privateAdd(this, _handleOnInput, (e) => {
58
+ if (this.readonly) return;
58
59
  const element = e.target;
59
60
  this.value = element.value;
60
61
  });
61
62
  __privateAdd(this, _handleOnChange, (e) => {
63
+ if (this.readonly) return;
62
64
  const element = e.target;
63
65
  this.value = element.value;
64
66
  this.dispatchStandardEvent("change", {
@@ -226,7 +228,9 @@ let Textarea = class extends GdsFormControlElement {
226
228
 
227
229
  <gds-field-base
228
230
  id="field"
231
+ .size=${this.size}
229
232
  .disabled=${this.disabled}
233
+ .readonly=${this.readonly}
230
234
  .invalid=${this.invalid}
231
235
  @click=${__privateGet(this, _handleFieldClick)}
232
236
  multiline
@@ -336,6 +340,7 @@ renderNativeTextarea_fn = function() {
336
340
  aria-describedby="supporting-text extended-supporting-text sub-label message"
337
341
  aria-errormessage="footer"
338
342
  placeholder=" "
343
+ ?readonly=${this.readonly}
339
344
  autocapitalize=${ifDefined(this.autocapitalize)}
340
345
  autocomplete=${ifDefined(this.autocomplete)}
341
346
  autocorrect=${ifDefined(this.autocorrect)}
@@ -349,7 +354,7 @@ renderNativeTextarea_fn = function() {
349
354
  `;
350
355
  };
351
356
  renderClearButton_fn = function() {
352
- if (this.clearable && (this.value?.length || 0) > 0)
357
+ if (this.clearable && !this.readonly && (this.value?.length || 0) > 0)
353
358
  return html`
354
359
  <gds-button
355
360
  size="small"