@quartzds/core 1.0.0-beta.13 → 1.0.0-beta.130

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 (444) hide show
  1. package/CHANGELOG.md +2145 -0
  2. package/README.md +23 -23
  3. package/components/index.d.ts +52 -0
  4. package/components/index.js +63 -28
  5. package/components/index.js.map +1 -1
  6. package/components/p-B9xuNEzc.js +438 -0
  7. package/components/p-B9xuNEzc.js.map +1 -0
  8. package/components/p-BHBodFuD.js +200 -0
  9. package/components/p-BHBodFuD.js.map +1 -0
  10. package/components/p-BLA62eFO.js +513 -0
  11. package/components/p-BLA62eFO.js.map +1 -0
  12. package/components/p-Bn9o5Um2.js +91 -0
  13. package/components/p-Bn9o5Um2.js.map +1 -0
  14. package/components/{floating-ui.dom.esm.js → p-Bv2vPjgL.js} +557 -345
  15. package/components/p-Bv2vPjgL.js.map +1 -0
  16. package/components/p-C-pZcrGt.js +357 -0
  17. package/components/p-C-pZcrGt.js.map +1 -0
  18. package/components/p-CZRW1LV_.js +28 -0
  19. package/components/p-CZRW1LV_.js.map +1 -0
  20. package/components/p-Cb4tcewD.js +281 -0
  21. package/components/p-Cb4tcewD.js.map +1 -0
  22. package/components/p-Cb5Tgh-o.js +102 -0
  23. package/components/p-Cb5Tgh-o.js.map +1 -0
  24. package/components/p-D2489VzR.js +2133 -0
  25. package/components/p-D2489VzR.js.map +1 -0
  26. package/components/p-D2BuSQre.js +160 -0
  27. package/components/p-D2BuSQre.js.map +1 -0
  28. package/components/p-DL21f4D7.js +149 -0
  29. package/components/p-DL21f4D7.js.map +1 -0
  30. package/components/p-DOqfdgQA.js +124 -0
  31. package/components/p-DOqfdgQA.js.map +1 -0
  32. package/components/p-Do46q_Gd.js +135 -0
  33. package/components/p-Do46q_Gd.js.map +1 -0
  34. package/components/p-XP2CY_fo.js +105 -0
  35. package/components/p-XP2CY_fo.js.map +1 -0
  36. package/components/p-eUDNu0SE.js +3561 -0
  37. package/components/p-eUDNu0SE.js.map +1 -0
  38. package/components/p-fKK7EmM2.js +256 -0
  39. package/components/p-fKK7EmM2.js.map +1 -0
  40. package/components/qds-action-item.d.ts +11 -0
  41. package/components/qds-action-item.js +204 -0
  42. package/components/qds-action-item.js.map +1 -0
  43. package/components/qds-avatar-media.d.ts +11 -0
  44. package/components/qds-avatar-media.js +14 -0
  45. package/components/qds-avatar-media.js.map +1 -0
  46. package/components/qds-avatar.d.ts +11 -0
  47. package/components/qds-avatar.js +120 -0
  48. package/components/qds-avatar.js.map +1 -0
  49. package/components/qds-badge-counter.d.ts +11 -0
  50. package/components/qds-badge-counter.js +14 -0
  51. package/components/qds-badge-counter.js.map +1 -0
  52. package/components/qds-badge-indicator.d.ts +11 -0
  53. package/components/qds-badge-indicator.js +14 -0
  54. package/components/qds-badge-indicator.js.map +1 -0
  55. package/components/qds-breadcrumb-item.d.ts +11 -0
  56. package/components/qds-breadcrumb-item.js +174 -0
  57. package/components/qds-breadcrumb-item.js.map +1 -0
  58. package/components/qds-button.d.ts +2 -2
  59. package/components/qds-button.js +475 -129
  60. package/components/qds-button.js.map +1 -1
  61. package/components/qds-checkbox.d.ts +2 -2
  62. package/components/qds-checkbox.js +4 -146
  63. package/components/qds-checkbox.js.map +1 -1
  64. package/components/qds-chip.d.ts +11 -0
  65. package/components/qds-chip.js +337 -0
  66. package/components/qds-chip.js.map +1 -0
  67. package/components/qds-dialog.d.ts +2 -2
  68. package/components/qds-dialog.js +179 -93
  69. package/components/qds-dialog.js.map +1 -1
  70. package/components/qds-divider.d.ts +2 -2
  71. package/components/qds-divider.js +4 -39
  72. package/components/qds-divider.js.map +1 -1
  73. package/components/qds-dropdown.d.ts +2 -2
  74. package/components/qds-dropdown.js +4 -249
  75. package/components/qds-dropdown.js.map +1 -1
  76. package/components/qds-form-message.d.ts +2 -2
  77. package/components/qds-form-message.js +106 -50
  78. package/components/qds-form-message.js.map +1 -1
  79. package/components/qds-icon-button.d.ts +11 -0
  80. package/components/qds-icon-button.js +14 -0
  81. package/components/qds-icon-button.js.map +1 -0
  82. package/components/qds-icon-tab.d.ts +11 -0
  83. package/components/qds-icon-tab.js +312 -0
  84. package/components/qds-icon-tab.js.map +1 -0
  85. package/components/qds-icon.d.ts +2 -2
  86. package/components/qds-icon.js +4 -3
  87. package/components/qds-inline-link.d.ts +2 -2
  88. package/components/qds-inline-link.js +173 -74
  89. package/components/qds-inline-link.js.map +1 -1
  90. package/components/qds-input.d.ts +2 -2
  91. package/components/qds-input.js +579 -230
  92. package/components/qds-input.js.map +1 -1
  93. package/components/qds-label.d.ts +2 -2
  94. package/components/qds-label.js +156 -3
  95. package/components/qds-label.js.map +1 -1
  96. package/components/qds-list-item.d.ts +11 -0
  97. package/components/qds-list-item.js +430 -0
  98. package/components/qds-list-item.js.map +1 -0
  99. package/components/qds-loader.d.ts +11 -0
  100. package/components/qds-loader.js +152 -0
  101. package/components/qds-loader.js.map +1 -0
  102. package/components/qds-menu-item.d.ts +11 -0
  103. package/components/qds-menu-item.js +263 -0
  104. package/components/qds-menu-item.js.map +1 -0
  105. package/components/qds-mini-button.d.ts +11 -0
  106. package/components/qds-mini-button.js +14 -0
  107. package/components/qds-mini-button.js.map +1 -0
  108. package/components/qds-progress-bar.d.ts +11 -0
  109. package/components/qds-progress-bar.js +155 -0
  110. package/components/qds-progress-bar.js.map +1 -0
  111. package/components/qds-radio.d.ts +2 -2
  112. package/components/qds-radio.js +4 -99
  113. package/components/qds-radio.js.map +1 -1
  114. package/components/qds-select.d.ts +11 -0
  115. package/components/qds-select.js +377 -0
  116. package/components/qds-select.js.map +1 -0
  117. package/components/qds-standalone-link.d.ts +11 -0
  118. package/components/qds-standalone-link.js +210 -0
  119. package/components/qds-standalone-link.js.map +1 -0
  120. package/components/qds-switch.d.ts +2 -2
  121. package/components/qds-switch.js +257 -105
  122. package/components/qds-switch.js.map +1 -1
  123. package/components/qds-tab.d.ts +11 -0
  124. package/components/qds-tab.js +354 -0
  125. package/components/qds-tab.js.map +1 -0
  126. package/components/qds-tabbar.d.ts +11 -0
  127. package/components/qds-tabbar.js +599 -0
  128. package/components/qds-tabbar.js.map +1 -0
  129. package/components/qds-table-cell.d.ts +11 -0
  130. package/components/qds-table-cell.js +109 -0
  131. package/components/qds-table-cell.js.map +1 -0
  132. package/components/qds-table-head-cell.d.ts +11 -0
  133. package/components/qds-table-head-cell.js +115 -0
  134. package/components/qds-table-head-cell.js.map +1 -0
  135. package/components/qds-table-row.d.ts +11 -0
  136. package/components/qds-table-row.js +48 -0
  137. package/components/qds-table-row.js.map +1 -0
  138. package/components/qds-table.d.ts +11 -0
  139. package/components/qds-table.js +48 -0
  140. package/components/qds-table.js.map +1 -0
  141. package/components/qds-tag.d.ts +11 -0
  142. package/components/qds-tag.js +14 -0
  143. package/components/qds-tag.js.map +1 -0
  144. package/components/qds-textarea.d.ts +2 -2
  145. package/components/qds-textarea.js +352 -193
  146. package/components/qds-textarea.js.map +1 -1
  147. package/components/qds-title.d.ts +2 -2
  148. package/components/qds-title.js +4 -84
  149. package/components/qds-title.js.map +1 -1
  150. package/components/qds-tooltip.d.ts +2 -2
  151. package/components/qds-tooltip.js +4 -315
  152. package/components/qds-tooltip.js.map +1 -1
  153. package/dist/cjs/app-globals-CLoao1by.js +13 -0
  154. package/dist/cjs/app-globals-CLoao1by.js.map +1 -0
  155. package/dist/cjs/controls-DKGeNyr5.js +32 -0
  156. package/dist/cjs/controls-DKGeNyr5.js.map +1 -0
  157. package/dist/cjs/{floating-ui.dom.esm-7f1cac3e.js → floating-ui.dom-Bvzubd50.js} +557 -345
  158. package/dist/cjs/floating-ui.dom-Bvzubd50.js.map +1 -0
  159. package/dist/cjs/helpers-D6srVOLt.js +3584 -0
  160. package/dist/cjs/helpers-D6srVOLt.js.map +1 -0
  161. package/dist/cjs/index-DIY7gpXM.js +2376 -0
  162. package/dist/cjs/index-DIY7gpXM.js.map +1 -0
  163. package/dist/cjs/index.cjs.js +40 -31
  164. package/dist/cjs/index.cjs.js.map +1 -1
  165. package/dist/cjs/library-CeKRI2f2.js +142 -0
  166. package/dist/cjs/library-CeKRI2f2.js.map +1 -0
  167. package/dist/cjs/loader.cjs.js +9 -10
  168. package/dist/cjs/loader.cjs.js.map +1 -1
  169. package/dist/cjs/qds-action-item.cjs.entry.js +165 -0
  170. package/dist/cjs/qds-action-item.entry.cjs.js.map +1 -0
  171. package/dist/cjs/qds-avatar-media.cjs.entry.js +105 -0
  172. package/dist/cjs/qds-avatar-media.entry.cjs.js.map +1 -0
  173. package/dist/cjs/qds-avatar.cjs.entry.js +70 -0
  174. package/dist/cjs/qds-avatar.entry.cjs.js.map +1 -0
  175. package/dist/cjs/qds-badge-counter.qds-badge-indicator.entry.cjs.js.map +1 -0
  176. package/dist/cjs/qds-badge-counter_2.cjs.entry.js +168 -0
  177. package/dist/cjs/qds-breadcrumb-item.cjs.entry.js +134 -0
  178. package/dist/cjs/qds-breadcrumb-item.entry.cjs.js.map +1 -0
  179. package/dist/cjs/qds-button.cjs.entry.js +402 -93
  180. package/dist/cjs/qds-button.entry.cjs.js.map +1 -0
  181. package/dist/cjs/qds-checkbox.qds-radio.entry.cjs.js.map +1 -0
  182. package/dist/cjs/qds-checkbox_2.cjs.entry.js +456 -0
  183. package/dist/cjs/qds-chip.cjs.entry.js +285 -0
  184. package/dist/cjs/qds-chip.entry.cjs.js.map +1 -0
  185. package/dist/cjs/qds-dialog.cjs.entry.js +124 -77
  186. package/dist/cjs/qds-dialog.entry.cjs.js.map +1 -0
  187. package/dist/cjs/qds-divider.qds-icon-button.entry.cjs.js.map +1 -0
  188. package/dist/cjs/qds-divider_2.cjs.entry.js +291 -0
  189. package/dist/cjs/qds-dropdown.cjs.entry.js +461 -213
  190. package/dist/cjs/qds-dropdown.entry.cjs.js.map +1 -0
  191. package/dist/cjs/qds-form-message.cjs.entry.js +80 -27
  192. package/dist/cjs/qds-form-message.entry.cjs.js.map +1 -0
  193. package/dist/cjs/qds-icon-tab.cjs.entry.js +244 -0
  194. package/dist/cjs/qds-icon-tab.entry.cjs.js.map +1 -0
  195. package/dist/cjs/qds-icon.cjs.entry.js +92 -93
  196. package/dist/cjs/qds-icon.entry.cjs.js.map +1 -0
  197. package/dist/cjs/qds-inline-link.cjs.entry.js +139 -49
  198. package/dist/cjs/qds-inline-link.entry.cjs.js.map +1 -0
  199. package/dist/cjs/qds-input.cjs.entry.js +503 -188
  200. package/dist/cjs/qds-input.entry.cjs.js.map +1 -0
  201. package/dist/cjs/qds-label.cjs.entry.js +118 -27
  202. package/dist/cjs/qds-label.entry.cjs.js.map +1 -0
  203. package/dist/cjs/qds-list-item.cjs.entry.js +328 -0
  204. package/dist/cjs/qds-list-item.entry.cjs.js.map +1 -0
  205. package/dist/cjs/qds-loader.cjs.entry.js +126 -0
  206. package/dist/cjs/qds-loader.entry.cjs.js.map +1 -0
  207. package/dist/cjs/qds-menu-item.cjs.entry.js +214 -0
  208. package/dist/cjs/qds-menu-item.entry.cjs.js.map +1 -0
  209. package/dist/cjs/qds-mini-button.cjs.entry.js +130 -0
  210. package/dist/cjs/qds-mini-button.entry.cjs.js.map +1 -0
  211. package/dist/cjs/qds-progress-bar.cjs.entry.js +131 -0
  212. package/dist/cjs/qds-progress-bar.entry.cjs.js.map +1 -0
  213. package/dist/cjs/qds-select.cjs.entry.js +331 -0
  214. package/dist/cjs/qds-select.entry.cjs.js.map +1 -0
  215. package/dist/cjs/qds-standalone-link.cjs.entry.js +171 -0
  216. package/dist/cjs/qds-standalone-link.entry.cjs.js.map +1 -0
  217. package/dist/cjs/qds-switch.cjs.entry.js +221 -67
  218. package/dist/cjs/qds-switch.entry.cjs.js.map +1 -0
  219. package/dist/cjs/qds-tab.cjs.entry.js +280 -0
  220. package/dist/cjs/qds-tab.entry.cjs.js.map +1 -0
  221. package/dist/cjs/qds-tabbar.cjs.entry.js +528 -0
  222. package/dist/cjs/qds-tabbar.entry.cjs.js.map +1 -0
  223. package/dist/cjs/qds-table-cell.cjs.entry.js +88 -0
  224. package/dist/cjs/qds-table-cell.entry.cjs.js.map +1 -0
  225. package/dist/cjs/qds-table-head-cell.cjs.entry.js +92 -0
  226. package/dist/cjs/qds-table-head-cell.entry.cjs.js.map +1 -0
  227. package/dist/cjs/qds-table-row.cjs.entry.js +34 -0
  228. package/dist/cjs/qds-table-row.entry.cjs.js.map +1 -0
  229. package/dist/cjs/qds-table.cjs.entry.js +34 -0
  230. package/dist/cjs/qds-table.entry.cjs.js.map +1 -0
  231. package/dist/cjs/qds-tag.cjs.entry.js +110 -0
  232. package/dist/cjs/qds-tag.entry.cjs.js.map +1 -0
  233. package/dist/cjs/qds-textarea.cjs.entry.js +303 -156
  234. package/dist/cjs/qds-textarea.entry.cjs.js.map +1 -0
  235. package/dist/cjs/qds-title.cjs.entry.js +61 -52
  236. package/dist/cjs/qds-title.entry.cjs.js.map +1 -0
  237. package/dist/cjs/qds-tooltip.cjs.entry.js +380 -264
  238. package/dist/cjs/qds-tooltip.entry.cjs.js.map +1 -0
  239. package/dist/cjs/qds.cjs.js +18 -17
  240. package/dist/cjs/qds.cjs.js.map +1 -1
  241. package/dist/custom-elements.json +13254 -2143
  242. package/dist/docs.d.ts +344 -240
  243. package/dist/docs.json +13958 -3308
  244. package/dist/esm/app-globals-WylVyaRG.js +11 -0
  245. package/dist/esm/app-globals-WylVyaRG.js.map +1 -0
  246. package/dist/esm/controls-CZRW1LV_.js +28 -0
  247. package/dist/esm/controls-CZRW1LV_.js.map +1 -0
  248. package/dist/esm/{floating-ui.dom.esm-c2f3e549.js → floating-ui.dom-Bv2vPjgL.js} +557 -345
  249. package/dist/esm/floating-ui.dom-Bv2vPjgL.js.map +1 -0
  250. package/dist/esm/helpers-BIo9VDPx.js +3561 -0
  251. package/dist/esm/helpers-BIo9VDPx.js.map +1 -0
  252. package/dist/esm/index-Hg1Liloy.js +2364 -0
  253. package/dist/esm/index-Hg1Liloy.js.map +1 -0
  254. package/dist/esm/index.js +40 -30
  255. package/dist/esm/index.js.map +1 -1
  256. package/dist/esm/library-CBfntPWH.js +138 -0
  257. package/dist/esm/library-CBfntPWH.js.map +1 -0
  258. package/dist/esm/loader.js +10 -9
  259. package/dist/esm/loader.js.map +1 -1
  260. package/dist/esm/qds-action-item.entry.js +163 -0
  261. package/dist/esm/qds-action-item.entry.js.map +1 -0
  262. package/dist/esm/qds-avatar-media.entry.js +103 -0
  263. package/dist/esm/qds-avatar-media.entry.js.map +1 -0
  264. package/dist/esm/qds-avatar.entry.js +68 -0
  265. package/dist/esm/qds-avatar.entry.js.map +1 -0
  266. package/dist/esm/qds-badge-counter.qds-badge-indicator.entry.js.map +1 -0
  267. package/dist/esm/qds-badge-counter_2.entry.js +165 -0
  268. package/dist/esm/qds-breadcrumb-item.entry.js +132 -0
  269. package/dist/esm/qds-breadcrumb-item.entry.js.map +1 -0
  270. package/dist/esm/qds-button.entry.js +402 -91
  271. package/dist/esm/qds-button.entry.js.map +1 -1
  272. package/dist/esm/qds-checkbox.qds-radio.entry.js.map +1 -0
  273. package/dist/esm/qds-checkbox_2.entry.js +453 -0
  274. package/dist/esm/qds-chip.entry.js +283 -0
  275. package/dist/esm/qds-chip.entry.js.map +1 -0
  276. package/dist/esm/qds-dialog.entry.js +124 -75
  277. package/dist/esm/qds-dialog.entry.js.map +1 -1
  278. package/dist/esm/qds-divider.qds-icon-button.entry.js.map +1 -0
  279. package/dist/esm/qds-divider_2.entry.js +288 -0
  280. package/dist/esm/qds-dropdown.entry.js +461 -211
  281. package/dist/esm/qds-dropdown.entry.js.map +1 -1
  282. package/dist/esm/qds-form-message.entry.js +80 -25
  283. package/dist/esm/qds-form-message.entry.js.map +1 -1
  284. package/dist/esm/qds-icon-tab.entry.js +242 -0
  285. package/dist/esm/qds-icon-tab.entry.js.map +1 -0
  286. package/dist/esm/qds-icon.entry.js +92 -91
  287. package/dist/esm/qds-icon.entry.js.map +1 -1
  288. package/dist/esm/qds-inline-link.entry.js +139 -47
  289. package/dist/esm/qds-inline-link.entry.js.map +1 -1
  290. package/dist/esm/qds-input.entry.js +503 -186
  291. package/dist/esm/qds-input.entry.js.map +1 -1
  292. package/dist/esm/qds-label.entry.js +118 -25
  293. package/dist/esm/qds-label.entry.js.map +1 -1
  294. package/dist/esm/qds-list-item.entry.js +326 -0
  295. package/dist/esm/qds-list-item.entry.js.map +1 -0
  296. package/dist/esm/qds-loader.entry.js +124 -0
  297. package/dist/esm/qds-loader.entry.js.map +1 -0
  298. package/dist/esm/qds-menu-item.entry.js +212 -0
  299. package/dist/esm/qds-menu-item.entry.js.map +1 -0
  300. package/dist/esm/qds-mini-button.entry.js +128 -0
  301. package/dist/esm/qds-mini-button.entry.js.map +1 -0
  302. package/dist/esm/qds-progress-bar.entry.js +129 -0
  303. package/dist/esm/qds-progress-bar.entry.js.map +1 -0
  304. package/dist/esm/qds-select.entry.js +329 -0
  305. package/dist/esm/qds-select.entry.js.map +1 -0
  306. package/dist/esm/qds-standalone-link.entry.js +169 -0
  307. package/dist/esm/qds-standalone-link.entry.js.map +1 -0
  308. package/dist/esm/qds-switch.entry.js +221 -65
  309. package/dist/esm/qds-switch.entry.js.map +1 -1
  310. package/dist/esm/qds-tab.entry.js +278 -0
  311. package/dist/esm/qds-tab.entry.js.map +1 -0
  312. package/dist/esm/qds-tabbar.entry.js +526 -0
  313. package/dist/esm/qds-tabbar.entry.js.map +1 -0
  314. package/dist/esm/qds-table-cell.entry.js +86 -0
  315. package/dist/esm/qds-table-cell.entry.js.map +1 -0
  316. package/dist/esm/qds-table-head-cell.entry.js +90 -0
  317. package/dist/esm/qds-table-head-cell.entry.js.map +1 -0
  318. package/dist/esm/qds-table-row.entry.js +32 -0
  319. package/dist/esm/qds-table-row.entry.js.map +1 -0
  320. package/dist/esm/qds-table.entry.js +32 -0
  321. package/dist/esm/qds-table.entry.js.map +1 -0
  322. package/dist/esm/qds-tag.entry.js +108 -0
  323. package/dist/esm/qds-tag.entry.js.map +1 -0
  324. package/dist/esm/qds-textarea.entry.js +303 -154
  325. package/dist/esm/qds-textarea.entry.js.map +1 -1
  326. package/dist/esm/qds-title.entry.js +61 -50
  327. package/dist/esm/qds-title.entry.js.map +1 -1
  328. package/dist/esm/qds-tooltip.entry.js +380 -262
  329. package/dist/esm/qds-tooltip.entry.js.map +1 -1
  330. package/dist/esm/qds.js +18 -16
  331. package/dist/esm/qds.js.map +1 -1
  332. package/dist/types/components/action-item/action-item.d.ts +70 -0
  333. package/dist/types/components/avatar/avatar.d.ts +61 -0
  334. package/dist/types/components/avatar-media/avatar-media.d.ts +47 -0
  335. package/dist/types/components/badge-counter/badge-counter.d.ts +40 -0
  336. package/dist/types/components/badge-indicator/badge-indicator.d.ts +36 -0
  337. package/dist/types/components/breadcrumb-item/breadcrumb-item.d.ts +178 -0
  338. package/dist/types/components/button/button.d.ts +283 -198
  339. package/dist/types/components/checkbox/checkbox.d.ts +142 -124
  340. package/dist/types/components/chip/chip.d.ts +111 -0
  341. package/dist/types/components/controls.d.ts +4 -1
  342. package/dist/types/components/dialog/dialog.d.ts +32 -41
  343. package/dist/types/components/divider/divider.d.ts +14 -9
  344. package/dist/types/components/dropdown/dropdown.d.ts +117 -125
  345. package/dist/types/components/form-message/form-message.d.ts +35 -25
  346. package/dist/types/components/icon/icon.d.ts +23 -24
  347. package/dist/types/components/icon/library.d.ts +3 -3
  348. package/dist/types/components/icon/request.d.ts +5 -9
  349. package/dist/types/components/icon-button/icon-button.d.ts +122 -0
  350. package/dist/types/components/icon-tab/icon-tab.d.ts +112 -0
  351. package/dist/types/components/inline-link/inline-link.d.ts +209 -191
  352. package/dist/types/components/input/input.d.ts +441 -368
  353. package/dist/types/components/label/label.d.ts +37 -24
  354. package/dist/types/components/list-item/list-item.d.ts +122 -0
  355. package/dist/types/components/loader/loader.d.ts +32 -0
  356. package/dist/types/components/menu-item/menu-item.d.ts +75 -0
  357. package/dist/types/components/mini-button/mini-button.d.ts +82 -0
  358. package/dist/types/components/progress-bar/progress-bar.d.ts +60 -0
  359. package/dist/types/components/radio/radio.d.ts +94 -95
  360. package/dist/types/components/select/select.d.ts +209 -0
  361. package/dist/types/components/shared.d.ts +6 -0
  362. package/dist/types/components/standalone-link/standalone-link.d.ts +234 -0
  363. package/dist/types/components/switch/switch.d.ts +122 -107
  364. package/dist/types/components/tab/tab.d.ts +157 -0
  365. package/dist/types/components/tabbar/tabbar.d.ts +91 -0
  366. package/dist/types/components/table/table.d.ts +14 -0
  367. package/dist/types/components/table-cell/table-cell.d.ts +39 -0
  368. package/dist/types/components/table-head-cell/table-head-cell.d.ts +56 -0
  369. package/dist/types/components/table-row/table-row.d.ts +14 -0
  370. package/dist/types/components/tag/tag.d.ts +55 -0
  371. package/dist/types/components/textarea/textarea.d.ts +295 -300
  372. package/dist/types/components/title/title.d.ts +39 -32
  373. package/dist/types/components/tooltip/tooltip.d.ts +111 -136
  374. package/dist/types/components.d.ts +4590 -929
  375. package/dist/types/helpers.d.ts +46 -19
  376. package/dist/types/index.d.ts +2 -1
  377. package/dist/types/interface-overrides.d.ts +215 -0
  378. package/dist/types/qds-test.d.ts +22 -11
  379. package/dist/types/stencil-public-runtime.d.ts +109 -17
  380. package/dist/types/utils.d.ts +11 -4
  381. package/dist/vscode.html-custom-data.json +2543 -426
  382. package/hydrate/index.d.ts +73 -18
  383. package/hydrate/index.js +32000 -9062
  384. package/hydrate/index.mjs +33081 -0
  385. package/hydrate/package.json +7 -1
  386. package/loader/cdn.js +3 -4
  387. package/loader/index.cjs.js +3 -4
  388. package/loader/index.d.ts +4 -1
  389. package/loader/index.es2017.js +3 -4
  390. package/loader/index.js +3 -4
  391. package/package.json +23 -180
  392. package/styles/core.css +156 -38
  393. package/components/floating-ui.dom.esm.js.map +0 -1
  394. package/components/helpers.js +0 -175
  395. package/components/helpers.js.map +0 -1
  396. package/components/icon.js +0 -185
  397. package/components/icon.js.map +0 -1
  398. package/components/label.js +0 -55
  399. package/components/label.js.map +0 -1
  400. package/dist/cjs/floating-ui.dom.esm-7f1cac3e.js.map +0 -1
  401. package/dist/cjs/helpers-452256e8.js +0 -185
  402. package/dist/cjs/helpers-452256e8.js.map +0 -1
  403. package/dist/cjs/index-d181f952.js +0 -2039
  404. package/dist/cjs/index-d181f952.js.map +0 -1
  405. package/dist/cjs/library-ad8d9466.js +0 -72
  406. package/dist/cjs/library-ad8d9466.js.map +0 -1
  407. package/dist/cjs/qds-button.cjs.entry.js.map +0 -1
  408. package/dist/cjs/qds-checkbox.cjs.entry.js +0 -116
  409. package/dist/cjs/qds-checkbox.cjs.entry.js.map +0 -1
  410. package/dist/cjs/qds-dialog.cjs.entry.js.map +0 -1
  411. package/dist/cjs/qds-divider.cjs.entry.js +0 -33
  412. package/dist/cjs/qds-divider.cjs.entry.js.map +0 -1
  413. package/dist/cjs/qds-dropdown.cjs.entry.js.map +0 -1
  414. package/dist/cjs/qds-form-message.cjs.entry.js.map +0 -1
  415. package/dist/cjs/qds-icon.cjs.entry.js.map +0 -1
  416. package/dist/cjs/qds-inline-link.cjs.entry.js.map +0 -1
  417. package/dist/cjs/qds-input.cjs.entry.js.map +0 -1
  418. package/dist/cjs/qds-label.cjs.entry.js.map +0 -1
  419. package/dist/cjs/qds-radio.cjs.entry.js +0 -74
  420. package/dist/cjs/qds-radio.cjs.entry.js.map +0 -1
  421. package/dist/cjs/qds-switch.cjs.entry.js.map +0 -1
  422. package/dist/cjs/qds-textarea.cjs.entry.js.map +0 -1
  423. package/dist/cjs/qds-title.cjs.entry.js.map +0 -1
  424. package/dist/cjs/qds-tooltip.cjs.entry.js.map +0 -1
  425. package/dist/esm/floating-ui.dom.esm-c2f3e549.js.map +0 -1
  426. package/dist/esm/helpers-76b84f45.js +0 -175
  427. package/dist/esm/helpers-76b84f45.js.map +0 -1
  428. package/dist/esm/index-d7183092.js +0 -2009
  429. package/dist/esm/index-d7183092.js.map +0 -1
  430. package/dist/esm/library-f36d7d09.js +0 -68
  431. package/dist/esm/library-f36d7d09.js.map +0 -1
  432. package/dist/esm/polyfills/core-js.js +0 -11
  433. package/dist/esm/polyfills/dom.js +0 -79
  434. package/dist/esm/polyfills/es5-html-element.js +0 -1
  435. package/dist/esm/polyfills/index.js +0 -34
  436. package/dist/esm/polyfills/system.js +0 -6
  437. package/dist/esm/qds-checkbox.entry.js +0 -112
  438. package/dist/esm/qds-checkbox.entry.js.map +0 -1
  439. package/dist/esm/qds-divider.entry.js +0 -29
  440. package/dist/esm/qds-divider.entry.js.map +0 -1
  441. package/dist/esm/qds-radio.entry.js +0 -70
  442. package/dist/esm/qds-radio.entry.js.map +0 -1
  443. package/dist/types/components/create-story.d.ts +0 -5
  444. package/loader/package.json +0 -11
@@ -0,0 +1,281 @@
1
+ /*!
2
+ * SPDX-FileCopyrightText: © 2026 Schneider Electric
3
+ *
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { p as proxyCustomElement, H, c as createEvent, h } from './p-D2489VzR.js';
7
+ import { p as pickFocusEventAttributes, d as isIndicator, e as isCounter, f as computeBadgeValue } from './p-eUDNu0SE.js';
8
+ import { d as defineCustomElement$4 } from './p-XP2CY_fo.js';
9
+ import { d as defineCustomElement$3 } from './p-DOqfdgQA.js';
10
+ import { d as defineCustomElement$2 } from './p-fKK7EmM2.js';
11
+ import { d as defineCustomElement$1 } from './p-B9xuNEzc.js';
12
+
13
+ const iconButtonCss = ":host{display:block;outline:none}.qds-focus-ring{border-radius:max(1px,var(\n --qds-form-input-border-radius-top-left,var(--qds-control-border-radius)\n )) max(1px,var(\n --qds-form-input-border-radius-top-right,var(--qds-control-border-radius)\n )) max(1px,var(\n --qds-form-input-border-radius-bottom-right,var(--qds-control-border-radius)\n )) max(1px,var(\n --qds-form-input-border-radius-bottom-left,var(--qds-control-border-radius)\n ));box-shadow:0 0 0 var(--qds-focus-heavy-border-width) var(--qds-theme-focus-border);grid-area:a;height:calc(100% + var(--qds-control-border-width) - var(--qds-control-border-width));isolation:isolate;outline:var(--qds-theme-focus-border-contrast) solid var(--qds-focus-light-border-width);outline-offset:0;pointer-events:none;visibility:hidden;width:calc(100% + var(--qds-control-border-width) - var(\n --qds-form-input-border-width-inline-end,\n var(--qds-control-border-width)\n ))}:host(:focus-visible) .qds-focus-ring{visibility:visible}.qds-container{display:grid;grid-template-areas:\"a\"}.qds-icon-button{align-items:center;-webkit-appearance:none;appearance:none;background-color:initial;border:none;border-radius:var(\n --qds-form-input-border-radius-top-left,var(--qds-control-border-radius)\n ) var(\n --qds-form-input-border-radius-top-right,var(--qds-control-border-radius)\n ) var(\n --qds-form-input-border-radius-bottom-right,var(--qds-control-border-radius)\n ) var(\n --qds-form-input-border-radius-bottom-left,var(--qds-control-border-radius)\n );box-sizing:border-box;color:var(--qds-theme-control-text-standard);cursor:pointer;display:flex;grid-area:a;justify-content:center;line-height:normal;min-width:0;outline:none;padding-inline:0;position:relative;-webkit-user-select:none;user-select:none}.qds-icon-button:hover{background-color:var(--qds-theme-interactive-background-hover)}.qds-icon-button:active{background-color:var(--qds-theme-interactive-background-pressed)}.qds-disabled{opacity:var(--qds-theme-disabled);pointer-events:none}.qds-icon{flex-shrink:0}.qds-indicator{transform:translate(50%,-50%)}.qds-counter,.qds-indicator{position:absolute}[data-size=small]{min-height:var(--qds-control-small-height);width:var(--qds-control-small-height)}.qds-icon[data-size=small]{min-height:var(--qds-control-small-icon-size);width:var(--qds-control-small-icon-size)}[data-size=small] .qds-indicator{inset-block-start:var(\n --qds-control-icon-button-small-badge-indicator-padding-top\n );inset-inline-end:var(\n --qds-control-icon-button-small-badge-indicator-padding-end\n )}[data-size=small] .qds-counter{inset-block-start:calc(var(--qds-control-icon-button-small-badge-counter-padding-top) - var(--qds-feedback-badge-border-width));inset-inline-end:calc(var(--qds-control-icon-button-small-badge-counter-padding-end) - var(--qds-feedback-badge-border-width))}[data-size=standard]{min-height:var(--qds-control-standard-height);width:var(--qds-control-standard-height)}.qds-icon[data-size=standard]{min-height:var(--qds-control-standard-icon-size);width:var(--qds-control-standard-icon-size)}[data-size=standard] .qds-indicator{inset-block-start:var(\n --qds-control-icon-button-standard-badge-indicator-padding-top\n );inset-inline-end:var(\n --qds-control-icon-button-standard-badge-indicator-padding-end\n )}[data-size=standard] .qds-counter{inset-block-start:calc(var(--qds-control-icon-button-standard-badge-counter-padding-top) - var(--qds-feedback-badge-border-width));inset-inline-end:calc(var(--qds-control-icon-button-standard-badge-counter-padding-end) - var(--qds-feedback-badge-border-width))}[data-size=large]{min-height:var(--qds-control-large-height);width:var(--qds-control-large-height)}.qds-icon[data-size=large]{min-height:var(--qds-control-large-icon-size);width:var(--qds-control-large-icon-size)}[data-size=large] .qds-indicator{inset-block-start:var(\n --qds-control-icon-button-large-badge-indicator-padding-top\n );inset-inline-end:var(\n --qds-control-icon-button-large-badge-indicator-padding-end\n )}[data-size=large] .qds-counter{inset-block-start:calc(var(--qds-control-icon-button-large-badge-counter-padding-top) - var(--qds-feedback-badge-border-width));inset-inline-end:calc(var(--qds-control-icon-button-large-badge-counter-padding-end) - var(--qds-feedback-badge-border-width))}[data-size=hero]{border-radius:var(\n --qds-form-input-border-radius-top-left,var(--qds-control-hero-border-radius)\n ) var(\n --qds-form-input-border-radius-top-right,var(--qds-control-hero-border-radius)\n ) var(\n --qds-form-input-border-radius-bottom-right,var(--qds-control-hero-border-radius)\n ) var(\n --qds-form-input-border-radius-bottom-left,var(--qds-control-hero-border-radius)\n );min-height:var(--qds-control-hero-height);width:var(--qds-control-hero-height)}.qds-icon[data-size=hero]{min-height:var(--qds-control-hero-icon-size);width:var(--qds-control-hero-icon-size)}[data-size=hero] .qds-indicator{inset-block-start:var(\n --qds-control-icon-button-hero-badge-indicator-padding-top\n );inset-inline-end:var(\n --qds-control-icon-button-hero-badge-indicator-padding-end\n )}[data-size=hero] .qds-counter{inset-block-start:var(\n --qds-control-icon-button-hero-badge-counter-padding-top\n );inset-inline-end:var(\n --qds-control-icon-button-hero-badge-counter-padding-end\n )}[data-importance=subdued]{color:var(--qds-theme-control-text-standard)}[data-importance=subdued]:hover{background-color:var(--qds-theme-interactive-background-hover)}[data-importance=subdued]:active{background-color:var(--qds-theme-interactive-background-pressed)}[data-importance=standard]{border:var(--qds-control-border-width) solid var(--qds-theme-control-border-default);color:var(--qds-theme-control-text-standard)}[data-importance=standard]:hover{background-color:var(--qds-theme-interactive-background-hover)}[data-importance=standard]:active{background-color:var(--qds-theme-interactive-background-pressed)}[data-importance=emphasized]{background-color:var(--qds-theme-signature-color-default);color:var(--qds-theme-signature-color-contrast)}[data-importance=emphasized]:hover{background-color:var(--qds-theme-signature-color-hover)}[data-importance=emphasized]:active{background-color:var(--qds-theme-signature-color-pressed)}[data-importance=destructive]{background-color:var(--qds-theme-feedback-action-destructive-default);color:var(--qds-theme-feedback-action-destructive-contrast)}[data-importance=destructive]:hover{background-color:var(--qds-theme-feedback-action-destructive-hover)}[data-importance=destructive]:active{background-color:var(--qds-theme-feedback-action-destructive-pressed)}[data-importance=subdued-destructive]{border:none;color:var(--qds-theme-feedback-action-destructive-default)}[data-importance=subdued-destructive]:hover{background-color:var(--qds-theme-interactive-background-hover);color:var(--qds-theme-feedback-action-destructive-default)}[data-importance=subdued-destructive]:active{background-color:var(--qds-theme-interactive-background-pressed);color:var(--qds-theme-feedback-action-destructive-default)}";
14
+
15
+ // SPDX-FileCopyrightText: © 2025 Schneider Electric
16
+ //
17
+ // SPDX-License-Identifier: Apache-2.0
18
+ var __classPrivateFieldGet = (undefined && undefined.__classPrivateFieldGet) || function (receiver, state, kind, f) {
19
+ if (kind === "a" && !f)
20
+ throw new TypeError("Private accessor was defined without a getter");
21
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
22
+ throw new TypeError("Cannot read private member from an object whose class did not declare it");
23
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
24
+ };
25
+ var __classPrivateFieldSet = (undefined && undefined.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
26
+ if (kind === "m")
27
+ throw new TypeError("Private method is not writable");
28
+ if (kind === "a" && !f)
29
+ throw new TypeError("Private accessor was defined without a setter");
30
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
31
+ throw new TypeError("Cannot write private member to an object whose class did not declare it");
32
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
33
+ };
34
+ var _IconButton_instances, _IconButton_savedTabIndex, _IconButton_button, _IconButton_tooltip, _IconButton_rawAriaLabel, _IconButton_computedSize_get, _IconButton_computedImportance_get, _IconButton_computedDisabled_get, _IconButton_hasText_get, _IconButton_updateAriaLabel, _IconButton_ref, _IconButton_tooltipRef;
35
+ const preventDefault = (event) => {
36
+ event.preventDefault();
37
+ };
38
+ const IconButton = /*@__PURE__*/ proxyCustomElement(class IconButton extends H {
39
+ constructor(registerHost) {
40
+ super();
41
+ if (registerHost !== false) {
42
+ this.__registerHost();
43
+ }
44
+ this.__attachShadow();
45
+ this.blurEmitter = createEvent(this, "qdsBlur", 2);
46
+ this.focusEmitter = createEvent(this, "qdsFocus", 2);
47
+ this.internals = this.attachInternals();
48
+ _IconButton_instances.add(this);
49
+ /**
50
+ * Prevents the icon button from being interacted with: it cannot be pressed or
51
+ * focused.
52
+ *
53
+ * @webnative
54
+ */
55
+ this.disabled = false;
56
+ /**
57
+ * The name of a registered icon library.
58
+ */
59
+ this.iconLibrary = 'default';
60
+ /**
61
+ * The icon button's size.
62
+ */
63
+ this.size = 'standard';
64
+ /**
65
+ * The icon button's importance.
66
+ */
67
+ this.importance = 'standard';
68
+ /**
69
+ * The indicator's status.
70
+ */
71
+ this.badgeIndicatorStatus = 'neutral';
72
+ /**
73
+ * When href is define and the button act as a link (`<a>`), the `rel` will be added to the element.
74
+ *
75
+ * @webnative
76
+ */
77
+ this.rel = 'noopener';
78
+ _IconButton_savedTabIndex.set(this, 0);
79
+ _IconButton_button.set(this, void 0);
80
+ _IconButton_tooltip.set(this, void 0);
81
+ _IconButton_rawAriaLabel.set(this, void 0);
82
+ _IconButton_ref.set(this, (button) => {
83
+ __classPrivateFieldSet(this, _IconButton_button, button, "f");
84
+ });
85
+ _IconButton_tooltipRef.set(this, (tooltip) => {
86
+ if (tooltip) {
87
+ // eslint-disable-next-line no-param-reassign
88
+ tooltip.target = this.host;
89
+ __classPrivateFieldSet(this, _IconButton_tooltip, tooltip, "f");
90
+ }
91
+ });
92
+ }
93
+ disabledChanged() {
94
+ this.internals.ariaDisabled = __classPrivateFieldGet(this, _IconButton_instances, "a", _IconButton_computedDisabled_get).toString();
95
+ if (__classPrivateFieldGet(this, _IconButton_instances, "a", _IconButton_computedDisabled_get))
96
+ this.host.removeAttribute('tabindex');
97
+ else
98
+ this.host.tabIndex = __classPrivateFieldGet(this, _IconButton_savedTabIndex, "f");
99
+ }
100
+ hrefChanged() {
101
+ this.internals.role = this.href === undefined ? 'button' : 'link';
102
+ }
103
+ tabindexChanged(newValue) {
104
+ if (newValue !== null) {
105
+ const parsedValue = Number.parseInt(newValue, 10);
106
+ __classPrivateFieldSet(this, _IconButton_savedTabIndex, Number.isNaN(parsedValue) || !Number.isFinite(parsedValue)
107
+ ? 0
108
+ : parsedValue, "f");
109
+ }
110
+ if (__classPrivateFieldGet(this, _IconButton_instances, "a", _IconButton_computedDisabled_get))
111
+ this.host.removeAttribute('tabindex');
112
+ else
113
+ this.host.tabIndex = __classPrivateFieldGet(this, _IconButton_savedTabIndex, "f");
114
+ }
115
+ textChanged() {
116
+ __classPrivateFieldGet(this, _IconButton_instances, "m", _IconButton_updateAriaLabel).call(this);
117
+ }
118
+ ariaLabelChanged(newValue) {
119
+ if (newValue !== null) {
120
+ __classPrivateFieldSet(this, _IconButton_rawAriaLabel, newValue, "f");
121
+ this.host.removeAttribute('aria-label');
122
+ __classPrivateFieldGet(this, _IconButton_instances, "m", _IconButton_updateAriaLabel).call(this);
123
+ }
124
+ }
125
+ onClick(event) {
126
+ if (__classPrivateFieldGet(this, _IconButton_instances, "a", _IconButton_computedDisabled_get))
127
+ event.stopImmediatePropagation();
128
+ if (__classPrivateFieldGet(this, _IconButton_button, "f") instanceof HTMLAnchorElement)
129
+ __classPrivateFieldGet(this, _IconButton_button, "f").click();
130
+ }
131
+ async onBlur(event) {
132
+ this.blurEmitter.emit(pickFocusEventAttributes(event));
133
+ if (__classPrivateFieldGet(this, _IconButton_tooltip, "f")) {
134
+ await __classPrivateFieldGet(this, _IconButton_tooltip, "f").close();
135
+ }
136
+ }
137
+ async onFocus(event) {
138
+ this.focusEmitter.emit(pickFocusEventAttributes(event));
139
+ if (__classPrivateFieldGet(this, _IconButton_tooltip, "f")) {
140
+ await __classPrivateFieldGet(this, _IconButton_tooltip, "f").show();
141
+ }
142
+ }
143
+ onKeydown(event) {
144
+ if (event.key === 'Enter') {
145
+ if (__classPrivateFieldGet(this, _IconButton_button, "f") instanceof HTMLAnchorElement) {
146
+ __classPrivateFieldGet(this, _IconButton_button, "f").click();
147
+ }
148
+ else
149
+ this.host.click();
150
+ }
151
+ }
152
+ onKeyup(event) {
153
+ if (event.key === ' ' && !(__classPrivateFieldGet(this, _IconButton_button, "f") instanceof HTMLAnchorElement))
154
+ this.host.click();
155
+ }
156
+ componentWillLoad() {
157
+ this.hrefChanged();
158
+ const { ariaLabel } = this.host;
159
+ if (ariaLabel !== null) {
160
+ __classPrivateFieldSet(this, _IconButton_rawAriaLabel, ariaLabel, "f");
161
+ this.host.removeAttribute('aria-label');
162
+ }
163
+ this.textChanged();
164
+ this.tabindexChanged(this.host.getAttribute('tabindex') ?? '0');
165
+ this.disabledChanged();
166
+ }
167
+ render() {
168
+ const Tag = this.href === undefined ? 'button' : 'a';
169
+ return (h("div", { key: '5b2b2904af0da26156fc4a5ca69ab00fb7e576ea', class: "qds-container", "aria-hidden": "true" }, h(Tag, { key: '513f85f1d4da49272208c1634bcacd768ebf6754', type: Tag === 'a' ? undefined : 'button', class: {
170
+ 'qds-icon-button': true,
171
+ 'qds-disabled': __classPrivateFieldGet(this, _IconButton_instances, "a", _IconButton_computedDisabled_get),
172
+ }, href: Tag === 'a' ? this.href : undefined, target: Tag === 'a' ? this.target : undefined, rel: Tag === 'a' ? this.rel : undefined, ref: __classPrivateFieldGet(this, _IconButton_ref, "f"), disabled: Tag === 'a' ? undefined : __classPrivateFieldGet(this, _IconButton_instances, "a", _IconButton_computedDisabled_get), download: Tag === 'a' ? this.download : undefined, "data-size": __classPrivateFieldGet(this, _IconButton_instances, "a", _IconButton_computedSize_get), "data-importance": __classPrivateFieldGet(this, _IconButton_instances, "a", _IconButton_computedImportance_get), onKeyDown: preventDefault, onKeyUp: preventDefault, onKeyPress: preventDefault, tabIndex: -1 }, h("qds-icon", { key: 'a6fb4d01d0536b4388e5486431d0e3e381f6702e', class: "qds-icon", "data-size": __classPrivateFieldGet(this, _IconButton_instances, "a", _IconButton_computedSize_get), library: this.iconLibrary, name: this.iconName }), isIndicator(this.badge) && (h("qds-badge-indicator", { key: '5249e2a58cb7c97d6551224e0e74a3116050b997', class: "qds-indicator", status: this.badgeIndicatorStatus, description: this.badgeDescription, size: __classPrivateFieldGet(this, _IconButton_instances, "a", _IconButton_computedSize_get), strokeRing: true })), isCounter(this.badge) && (h("qds-badge-counter", { key: '42746b22e35fec91b6816acd93ff176e4955f9a4', class: "qds-counter", description: this.badgeDescription, importance: __classPrivateFieldGet(this, _IconButton_instances, "a", _IconButton_computedImportance_get), size: __classPrivateFieldGet(this, _IconButton_instances, "a", _IconButton_computedSize_get), strokeRing: true, value: this.badge }))), h("div", { key: '69c34b6a1b3cfc89c3dbc33119b1678a6d6d3bdc', class: "qds-focus-ring", "data-size": __classPrivateFieldGet(this, _IconButton_instances, "a", _IconButton_computedSize_get) }), __classPrivateFieldGet(this, _IconButton_instances, "a", _IconButton_hasText_get) && (h("qds-tooltip", { key: '2d0e635b0f1f635abf3f2d6df47ff15763310743', ref: __classPrivateFieldGet(this, _IconButton_tooltipRef, "f") }, this.text))));
173
+ }
174
+ static get formAssociated() { return true; }
175
+ get host() { return this; }
176
+ static get watchers() { return {
177
+ "disabled": ["disabledChanged"],
178
+ "href": ["hrefChanged"],
179
+ "tabindex": ["tabindexChanged"],
180
+ "text": ["textChanged"],
181
+ "aria-label": ["ariaLabelChanged"]
182
+ }; }
183
+ static get style() { return iconButtonCss; }
184
+ }, [321, "qds-icon-button", {
185
+ "disabled": [4],
186
+ "iconName": [1, "icon-name"],
187
+ "iconLibrary": [1, "icon-library"],
188
+ "size": [1],
189
+ "importance": [1],
190
+ "badge": [8],
191
+ "badgeDescription": [1, "badge-description"],
192
+ "badgeIndicatorStatus": [1, "badge-indicator-status"],
193
+ "target": [1],
194
+ "href": [1],
195
+ "rel": [1],
196
+ "download": [1],
197
+ "text": [1]
198
+ }, [[0, "click", "onClick"], [0, "blur", "onBlur"], [0, "focus", "onFocus"], [0, "keydown", "onKeydown"], [0, "keyup", "onKeyup"]], {
199
+ "disabled": ["disabledChanged"],
200
+ "href": ["hrefChanged"],
201
+ "tabindex": ["tabindexChanged"],
202
+ "text": ["textChanged"],
203
+ "aria-label": ["ariaLabelChanged"]
204
+ }]);
205
+ _IconButton_savedTabIndex = new WeakMap(), _IconButton_button = new WeakMap(), _IconButton_tooltip = new WeakMap(), _IconButton_rawAriaLabel = new WeakMap(), _IconButton_ref = new WeakMap(), _IconButton_tooltipRef = new WeakMap(), _IconButton_instances = new WeakSet(), _IconButton_computedSize_get = function _IconButton_computedSize_get() {
206
+ switch (this.size) {
207
+ case 'small':
208
+ case 'large':
209
+ case 'hero': {
210
+ return this.size;
211
+ }
212
+ default: {
213
+ return 'standard';
214
+ }
215
+ }
216
+ }, _IconButton_computedImportance_get = function _IconButton_computedImportance_get() {
217
+ switch (this.importance) {
218
+ case 'emphasized':
219
+ case 'subdued':
220
+ case 'destructive':
221
+ case 'subdued-destructive': {
222
+ return this.importance;
223
+ }
224
+ default: {
225
+ return 'standard';
226
+ }
227
+ }
228
+ }, _IconButton_computedDisabled_get = function _IconButton_computedDisabled_get() {
229
+ return this.disabled;
230
+ }, _IconButton_hasText_get = function _IconButton_hasText_get() {
231
+ return this.text !== undefined && this.text !== '';
232
+ }, _IconButton_updateAriaLabel = function _IconButton_updateAriaLabel() {
233
+ const label = this.text ?? __classPrivateFieldGet(this, _IconButton_rawAriaLabel, "f") ?? '';
234
+ const hasBadge = this.badge !== undefined;
235
+ if (hasBadge) {
236
+ this.internals.ariaLabel = computeBadgeValue(label, this.badge, this.badgeDescription);
237
+ return;
238
+ }
239
+ this.internals.ariaLabel =
240
+ this.target === '_blank' && this.href !== undefined
241
+ ? `${label} opens in a new tab`
242
+ : label;
243
+ };
244
+ function defineCustomElement() {
245
+ if (typeof customElements === "undefined") {
246
+ return;
247
+ }
248
+ const components = ["qds-icon-button", "qds-badge-counter", "qds-badge-indicator", "qds-icon", "qds-tooltip"];
249
+ components.forEach(tagName => { switch (tagName) {
250
+ case "qds-icon-button":
251
+ if (!customElements.get(tagName)) {
252
+ customElements.define(tagName, IconButton);
253
+ }
254
+ break;
255
+ case "qds-badge-counter":
256
+ if (!customElements.get(tagName)) {
257
+ defineCustomElement$4();
258
+ }
259
+ break;
260
+ case "qds-badge-indicator":
261
+ if (!customElements.get(tagName)) {
262
+ defineCustomElement$3();
263
+ }
264
+ break;
265
+ case "qds-icon":
266
+ if (!customElements.get(tagName)) {
267
+ defineCustomElement$2();
268
+ }
269
+ break;
270
+ case "qds-tooltip":
271
+ if (!customElements.get(tagName)) {
272
+ defineCustomElement$1();
273
+ }
274
+ break;
275
+ } });
276
+ }
277
+
278
+ export { IconButton as I, defineCustomElement as d };
279
+ //# sourceMappingURL=p-Cb4tcewD.js.map
280
+
281
+ //# sourceMappingURL=p-Cb4tcewD.js.map
@@ -0,0 +1 @@
1
+ {"file":"p-Cb4tcewD.js","mappings":";;;;;;;;;;;;AAAA,MAAM,aAAa,GAAG,qkOAAqkO;;ACA3lO;AACA;AACA;;;;;;;;;;;;;;;;;;AA8BA,MAAM,cAAc,GAAG,CAAC,KAAiC,KAAU;IACjE,KAAK,CAAC,cAAc,EAAE;AACxB,CAAC;MAgBY,UAAU,iBAAAA,kBAAA,CAAA,MAAA,UAAA,SAAAC,CAAA,CAAA;AANvB,IAAA,WAAA,CAAA,YAAA,EAAA;;;;;;;;;;AAOE;;;;;AAKG;AAEa,QAAA,IAAQ,CAAA,QAAA,GAAY,KAAK;AASzC;;AAEG;AACqB,QAAA,IAAW,CAAA,WAAA,GAAW,SAAS;AAEvD;;AAEG;AACqB,QAAA,IAAI,CAAA,IAAA,GAAmB,UAAU;AAEzD;;AAEG;AACqB,QAAA,IAAU,CAAA,UAAA,GAA0B,UAAU;AAgBtE;;AAEG;AAEa,QAAA,IAAoB,CAAA,oBAAA,GAClC,SAAS;AA4BX;;;;AAIG;AACqB,QAAA,IAAG,CAAA,GAAA,GAAY,UAAU;AA+BjD,QAAA,yBAAA,CAAA,GAAA,CAAA,IAAA,EAAiB,CAAC,CAAA;QAElB,kBAA+C,CAAA,GAAA,CAAA,IAAA,EAAA,MAAA,CAAA;QAE/C,mBAAgC,CAAA,GAAA,CAAA,IAAA,EAAA,MAAA,CAAA;QAEhC,wBAAsB,CAAA,GAAA,CAAA,IAAA,EAAA,MAAA,CAAA;QAyMb,eAAO,CAAA,GAAA,CAAA,IAAA,EAAA,CAAC,MAA8C,KAAU;YACvE,sBAAA,CAAA,IAAI,EAAA,kBAAA,EAAW,MAAM,EAAA,GAAA,CAAA;AACvB,SAAC,CAAA;QAEQ,sBAAc,CAAA,GAAA,CAAA,IAAA,EAAA,CAAC,OAA+B,KAAU;YAC/D,IAAI,OAAO,EAAE;;AAEX,gBAAA,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI;gBAC1B,sBAAA,CAAA,IAAI,EAAA,mBAAA,EAAY,OAAO,EAAA,GAAA,CAAA;;AAE3B,SAAC,CAAA;AACF;IA9KW,eAAe,GAAA;AACvB,QAAA,IAAI,CAAC,SAAS,CAAC,YAAY,GAAG,sBAAA,CAAA,IAAI,EAAkB,qBAAA,EAAA,GAAA,EAAA,gCAAA,CAAA,CAAC,QAAQ,EAAE;QAC/D,IAAI,sBAAA,CAAA,IAAI,EAAkB,qBAAA,EAAA,GAAA,EAAA,gCAAA,CAAA;AAAE,YAAA,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC;;AAC5D,YAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,sBAAA,CAAA,IAAI,iCAAe;;IAIrC,WAAW,GAAA;AACnB,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,GAAG,QAAQ,GAAG,MAAM;;AAIzD,IAAA,eAAe,CAAC,QAAuB,EAAA;AAC/C,QAAA,IAAI,QAAQ,KAAK,IAAI,EAAE;YACrB,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;AACjD,YAAA,sBAAA,CAAA,IAAI,EAAA,yBAAA,EACF,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW;AACvD,kBAAE;AACF,kBAAE,WAAW,EAAA,GAAA,CAAA;;QAEnB,IAAI,sBAAA,CAAA,IAAI,EAAkB,qBAAA,EAAA,GAAA,EAAA,gCAAA,CAAA;AAAE,YAAA,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC;;AAC5D,YAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,sBAAA,CAAA,IAAI,iCAAe;;IAIrC,WAAW,GAAA;AACnB,QAAA,sBAAA,CAAA,IAAI,EAAA,qBAAA,EAAA,GAAA,EAAA,2BAAA,CAAiB,CAArB,IAAA,CAAA,IAAI,CAAmB;;AAIf,IAAA,gBAAgB,CAAC,QAAuB,EAAA;AAChD,QAAA,IAAI,QAAQ,KAAK,IAAI,EAAE;YACrB,sBAAA,CAAA,IAAI,EAAA,wBAAA,EAAiB,QAAQ,EAAA,GAAA,CAAA;AAC7B,YAAA,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC;AACvC,YAAA,sBAAA,CAAA,IAAI,EAAA,qBAAA,EAAA,GAAA,EAAA,2BAAA,CAAiB,CAArB,IAAA,CAAA,IAAI,CAAmB;;;AAKjB,IAAA,OAAO,CAAC,KAAiB,EAAA;QACjC,IAAI,sBAAA,CAAA,IAAI,EAAkB,qBAAA,EAAA,GAAA,EAAA,gCAAA,CAAA;YAAE,KAAK,CAAC,wBAAwB,EAAE;QAC5D,IAAI,sBAAA,CAAA,IAAI,EAAQ,kBAAA,EAAA,GAAA,CAAA,YAAY,iBAAiB;YAAE,sBAAA,CAAA,IAAI,EAAA,kBAAA,EAAA,GAAA,CAAQ,CAAC,KAAK,EAAE;;IAI3D,MAAM,MAAM,CAAC,KAAiB,EAAA;QACtC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;QACtD,IAAI,sBAAA,CAAA,IAAI,EAAS,mBAAA,EAAA,GAAA,CAAA,EAAE;YACjB,MAAM,uBAAA,IAAI,EAAA,mBAAA,EAAA,GAAA,CAAS,CAAC,KAAK,EAAE;;;IAKrB,MAAM,OAAO,CAAC,KAAiB,EAAA;QACvC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;QACvD,IAAI,sBAAA,CAAA,IAAI,EAAS,mBAAA,EAAA,GAAA,CAAA,EAAE;YACjB,MAAM,uBAAA,IAAI,EAAA,mBAAA,EAAA,GAAA,CAAS,CAAC,IAAI,EAAE;;;AAKpB,IAAA,SAAS,CAAC,KAAoB,EAAA;AACtC,QAAA,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,EAAE;YACzB,IAAI,uBAAA,IAAI,EAAA,kBAAA,EAAA,GAAA,CAAQ,YAAY,iBAAiB,EAAE;gBAC7C,sBAAA,CAAA,IAAI,EAAA,kBAAA,EAAA,GAAA,CAAQ,CAAC,KAAK,EAAE;;;AACf,gBAAA,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;;;AAKlB,IAAA,OAAO,CAAC,KAAoB,EAAA;AACpC,QAAA,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,IAAI,EAAE,sBAAA,CAAA,IAAI,EAAQ,kBAAA,EAAA,GAAA,CAAA,YAAY,iBAAiB,CAAC;AACnE,YAAA,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;;IAGd,iBAAiB,GAAA;QACtB,IAAI,CAAC,WAAW,EAAE;AAClB,QAAA,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,IAAI;AAC/B,QAAA,IAAI,SAAS,KAAK,IAAI,EAAE;YACtB,sBAAA,CAAA,IAAI,EAAA,wBAAA,EAAiB,SAAS,EAAA,GAAA,CAAA;AAC9B,YAAA,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC;;QAEzC,IAAI,CAAC,WAAW,EAAE;AAClB,QAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC;QAC/D,IAAI,CAAC,eAAe,EAAE;;IAGjB,MAAM,GAAA;AACX,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,GAAG,QAAQ,GAAG,GAAG;AACpD,QAAA,QACE,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,eAAe,iBAAa,MAAM,EAAA,EAC3C,CAAA,CAAC,GAAG,EACF,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAE,GAAG,KAAK,GAAG,GAAG,SAAS,GAAG,QAAQ,EACxC,KAAK,EAAE;AACL,gBAAA,iBAAiB,EAAE,IAAI;gBACvB,cAAc,EAAE,sBAAA,CAAA,IAAI,EAAkB,qBAAA,EAAA,GAAA,EAAA,gCAAA,CAAA;AACvC,aAAA,EACD,IAAI,EAAE,GAAG,KAAK,GAAG,GAAG,IAAI,CAAC,IAAI,GAAG,SAAS,EACzC,MAAM,EAAE,GAAG,KAAK,GAAG,GAAG,IAAI,CAAC,MAAM,GAAG,SAAS,EAC7C,GAAG,EAAE,GAAG,KAAK,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,SAAS,EACvC,GAAG,EAAE,sBAAA,CAAA,IAAI,EAAK,eAAA,EAAA,GAAA,CAAA,EACd,QAAQ,EAAE,GAAG,KAAK,GAAG,GAAG,SAAS,GAAG,sBAAA,CAAA,IAAI,+DAAkB,EAC1D,QAAQ,EAAE,GAAG,KAAK,GAAG,GAAG,IAAI,CAAC,QAAQ,GAAG,SAAS,EACtC,WAAA,EAAA,sBAAA,CAAA,IAAI,EAAA,qBAAA,EAAA,GAAA,EAAA,4BAAA,CAAc,qBACZ,sBAAA,CAAA,IAAI,EAAoB,qBAAA,EAAA,GAAA,EAAA,kCAAA,CAAA,EACzC,SAAS,EAAE,cAAc,EACzB,OAAO,EAAE,cAAc,EACvB,UAAU,EAAE,cAAc,EAC1B,QAAQ,EAAE,EAAE,EAAA,EAEZ,CAAA,CAAA,UAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAC,UAAU,eACL,sBAAA,CAAA,IAAI,2DAAc,EAC7B,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,IAAI,EAAE,IAAI,CAAC,QAAQ,EACnB,CAAA,EACD,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,KACtB,CACE,CAAA,qBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,eAAe,EACrB,MAAM,EAAE,IAAI,CAAC,oBAAoB,EACjC,WAAW,EAAE,IAAI,CAAC,gBAAgB,EAClC,IAAI,EAAE,sBAAA,CAAA,IAAI,EAAA,qBAAA,EAAA,GAAA,EAAA,4BAAA,CAAc,EACxB,UAAU,SACV,CACH,EACA,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,KACpB,CAAA,CAAA,mBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAC,aAAa,EACnB,WAAW,EAAE,IAAI,CAAC,gBAAgB,EAClC,UAAU,EAAE,sBAAA,CAAA,IAAI,EAAoB,qBAAA,EAAA,GAAA,EAAA,kCAAA,CAAA,EACpC,IAAI,EAAE,sBAAA,CAAA,IAAI,EAAc,qBAAA,EAAA,GAAA,EAAA,4BAAA,CAAA,EACxB,UAAU,EAAA,IAAA,EACV,KAAK,EAAE,IAAI,CAAC,KAAK,EAAA,CACjB,CACH,CACG,EACN,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,gBAAgB,eAAY,sBAAA,CAAA,IAAI,2DAAc,EAAI,CAAA,EAC5D,sBAAA,CAAA,IAAI,EAAS,qBAAA,EAAA,GAAA,EAAA,uBAAA,CAAA,KACZ,CAAa,CAAA,aAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,GAAG,EAAE,sBAAA,CAAA,IAAI,EAAY,sBAAA,EAAA,GAAA,CAAA,EAAA,EAAG,IAAI,CAAC,IAAI,CAAe,CAC9D,CACG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA/KR,IAAA,QAAQ,IAAI,CAAC,IAAI;AACf,QAAA,KAAK,OAAO;AACZ,QAAA,KAAK,OAAO;QACZ,KAAK,MAAM,EAAE;YACX,OAAO,IAAI,CAAC,IAAI;;QAElB,SAAS;AACP,YAAA,OAAO,UAAU;;;AAGvB,CAAC,EAAA,kCAAA,GAAA,SAAA,kCAAA,GAAA;AAGC,IAAA,QAAQ,IAAI,CAAC,UAAU;AACrB,QAAA,KAAK,YAAY;AACjB,QAAA,KAAK,SAAS;AACd,QAAA,KAAK,aAAa;QAClB,KAAK,qBAAqB,EAAE;YAC1B,OAAO,IAAI,CAAC,UAAU;;QAExB,SAAS;AACP,YAAA,OAAO,UAAU;;;AAGvB,CAAC,EAAA,gCAAA,GAAA,SAAA,gCAAA,GAAA;IAGC,OAAO,IAAI,CAAC,QAAQ;AACtB,CAAC,EAAA,uBAAA,GAAA,SAAA,uBAAA,GAAA;IAGC,OAAO,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE;AACpD,CAAC,EAAA,2BAAA,GAAA,SAAA,2BAAA,GAAA;AAoJC,IAAA,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,IAAI,sBAAA,CAAA,IAAI,EAAA,wBAAA,EAAA,GAAA,CAAc,IAAI,EAAE;AACnD,IAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,KAAK,SAAS;IAEzC,IAAI,QAAQ,EAAE;AACZ,QAAA,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,iBAAiB,CAC1C,KAAK,EACL,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,gBAAgB,CACtB;QACD;;IAGF,IAAI,CAAC,SAAS,CAAC,SAAS;QACtB,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK;cACtC,CAAG,EAAA,KAAK,CAAqB,mBAAA;cAC7B,KAAK;AACb,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/icon-button/icon-button.css?tag=qds-icon-button&encapsulation=shadow","src/components/icon-button/icon-button.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: © 2025 Schneider Electric\n *\n * SPDX-License-Identifier: Apache-2.0\n */\n\n:host {\n display: block;\n outline: none;\n}\n\n.qds-focus-ring {\n /* Support control groups where each corner needs to be individually adjusted depending on where these components are placed in the control group (start, middle, end) */\n border-radius: max(\n 1px,\n var(\n --qds-form-input-border-radius-top-left,\n var(--qds-control-border-radius)\n )\n )\n max(\n 1px,\n var(\n --qds-form-input-border-radius-top-right,\n var(--qds-control-border-radius)\n )\n )\n max(\n 1px,\n var(\n --qds-form-input-border-radius-bottom-right,\n var(--qds-control-border-radius)\n )\n )\n max(\n 1px,\n var(\n --qds-form-input-border-radius-bottom-left,\n var(--qds-control-border-radius)\n )\n );\n grid-area: icon-button;\n isolation: isolate;\n\n /* inner ring */\n outline: var(--qds-theme-focus-border-contrast) solid\n var(--qds-focus-light-border-width);\n outline-offset: 0;\n\n /* outer ring */\n box-shadow: 0 0 0 var(--qds-focus-heavy-border-width)\n var(--qds-theme-focus-border);\n pointer-events: none;\n visibility: hidden;\n width: calc(\n 100% + var(--qds-control-border-width) -\n var(\n --qds-form-input-border-width-inline-end,\n var(--qds-control-border-width)\n )\n );\n height: calc(\n 100% + var(--qds-control-border-width) - var(--qds-control-border-width)\n );\n}\n\n:host(:focus-visible) .qds-focus-ring {\n visibility: visible;\n}\n\n.qds-container {\n display: grid;\n grid-template-areas: 'icon-button';\n}\n\n.qds-icon-button {\n display: flex;\n position: relative;\n\n /* Avoid automatic minimum size on flex element: https://www.w3.org/TR/css-flexbox-1/#min-size-auto */\n min-width: 0;\n align-items: center;\n justify-content: center;\n border-radius: var(\n --qds-form-input-border-radius-top-left,\n var(--qds-control-border-radius)\n )\n var(\n --qds-form-input-border-radius-top-right,\n var(--qds-control-border-radius)\n )\n var(\n --qds-form-input-border-radius-bottom-right,\n var(--qds-control-border-radius)\n )\n var(\n --qds-form-input-border-radius-bottom-left,\n var(--qds-control-border-radius)\n );\n grid-area: icon-button;\n outline: none;\n border: none;\n appearance: none;\n user-select: none;\n cursor: pointer;\n box-sizing: border-box;\n background-color: initial;\n color: var(--qds-theme-control-text-standard);\n padding-inline: 0;\n line-height: normal;\n\n &:hover {\n background-color: var(--qds-theme-interactive-background-hover);\n }\n\n &:active {\n background-color: var(--qds-theme-interactive-background-pressed);\n }\n}\n\n.qds-disabled {\n opacity: var(--qds-theme-disabled);\n pointer-events: none;\n}\n\n.qds-icon {\n flex-shrink: 0;\n}\n\n.qds-indicator {\n transform: translate(50%, -50%);\n}\n\n.qds-indicator,\n.qds-counter {\n position: absolute;\n}\n\n[data-size='small'] {\n min-height: var(--qds-control-small-height);\n width: var(--qds-control-small-height);\n\n &.qds-icon {\n min-height: var(--qds-control-small-icon-size);\n width: var(--qds-control-small-icon-size);\n }\n\n .qds-indicator {\n inset-block-start: var(\n --qds-control-icon-button-small-badge-indicator-padding-top\n );\n inset-inline-end: var(\n --qds-control-icon-button-small-badge-indicator-padding-end\n );\n }\n\n .qds-counter {\n inset-block-start: calc(\n var(--qds-control-icon-button-small-badge-counter-padding-top) -\n var(--qds-feedback-badge-border-width)\n );\n inset-inline-end: calc(\n var(--qds-control-icon-button-small-badge-counter-padding-end) -\n var(--qds-feedback-badge-border-width)\n );\n }\n}\n\n[data-size='standard'] {\n min-height: var(--qds-control-standard-height);\n width: var(--qds-control-standard-height);\n\n &.qds-icon {\n min-height: var(--qds-control-standard-icon-size);\n width: var(--qds-control-standard-icon-size);\n }\n\n .qds-indicator {\n inset-block-start: var(\n --qds-control-icon-button-standard-badge-indicator-padding-top\n );\n inset-inline-end: var(\n --qds-control-icon-button-standard-badge-indicator-padding-end\n );\n }\n\n .qds-counter {\n inset-block-start: calc(\n var(--qds-control-icon-button-standard-badge-counter-padding-top) -\n var(--qds-feedback-badge-border-width)\n );\n inset-inline-end: calc(\n var(--qds-control-icon-button-standard-badge-counter-padding-end) -\n var(--qds-feedback-badge-border-width)\n );\n }\n}\n\n[data-size='large'] {\n min-height: var(--qds-control-large-height);\n width: var(--qds-control-large-height);\n\n &.qds-icon {\n min-height: var(--qds-control-large-icon-size);\n width: var(--qds-control-large-icon-size);\n }\n\n .qds-indicator {\n inset-block-start: var(\n --qds-control-icon-button-large-badge-indicator-padding-top\n );\n inset-inline-end: var(\n --qds-control-icon-button-large-badge-indicator-padding-end\n );\n }\n\n .qds-counter {\n inset-block-start: calc(\n var(--qds-control-icon-button-large-badge-counter-padding-top) -\n var(--qds-feedback-badge-border-width)\n );\n inset-inline-end: calc(\n var(--qds-control-icon-button-large-badge-counter-padding-end) -\n var(--qds-feedback-badge-border-width)\n );\n }\n}\n\n[data-size='hero'] {\n min-height: var(--qds-control-hero-height);\n width: var(--qds-control-hero-height);\n border-radius: var(\n --qds-form-input-border-radius-top-left,\n var(--qds-control-hero-border-radius)\n )\n var(\n --qds-form-input-border-radius-top-right,\n var(--qds-control-hero-border-radius)\n )\n var(\n --qds-form-input-border-radius-bottom-right,\n var(--qds-control-hero-border-radius)\n )\n var(\n --qds-form-input-border-radius-bottom-left,\n var(--qds-control-hero-border-radius)\n );\n\n &.qds-icon {\n min-height: var(--qds-control-hero-icon-size);\n width: var(--qds-control-hero-icon-size);\n }\n\n .qds-indicator {\n inset-block-start: var(\n --qds-control-icon-button-hero-badge-indicator-padding-top\n );\n inset-inline-end: var(\n --qds-control-icon-button-hero-badge-indicator-padding-end\n );\n }\n\n .qds-counter {\n inset-block-start: var(\n --qds-control-icon-button-hero-badge-counter-padding-top\n );\n inset-inline-end: var(\n --qds-control-icon-button-hero-badge-counter-padding-end\n );\n }\n}\n\n[data-importance='subdued'] {\n color: var(--qds-theme-control-text-standard);\n\n &:hover {\n background-color: var(--qds-theme-interactive-background-hover);\n }\n\n &:active {\n background-color: var(--qds-theme-interactive-background-pressed);\n }\n}\n\n[data-importance='standard'] {\n color: var(--qds-theme-control-text-standard);\n border: var(--qds-control-border-width) solid\n var(--qds-theme-control-border-default);\n\n &:hover {\n background-color: var(--qds-theme-interactive-background-hover);\n }\n\n &:active {\n background-color: var(--qds-theme-interactive-background-pressed);\n }\n}\n\n[data-importance='emphasized'] {\n background-color: var(--qds-theme-signature-color-default);\n color: var(--qds-theme-signature-color-contrast);\n\n &:hover {\n background-color: var(--qds-theme-signature-color-hover);\n }\n\n &:active {\n background-color: var(--qds-theme-signature-color-pressed);\n }\n}\n\n[data-importance='destructive'] {\n background-color: var(--qds-theme-feedback-action-destructive-default);\n color: var(--qds-theme-feedback-action-destructive-contrast);\n\n &:hover {\n background-color: var(--qds-theme-feedback-action-destructive-hover);\n }\n\n &:active {\n background-color: var(--qds-theme-feedback-action-destructive-pressed);\n }\n}\n\n[data-importance='subdued-destructive'] {\n color: var(--qds-theme-feedback-action-destructive-default);\n border: none;\n\n &:hover {\n background-color: var(--qds-theme-interactive-background-hover);\n color: var(--qds-theme-feedback-action-destructive-default);\n }\n\n &:active {\n background-color: var(--qds-theme-interactive-background-pressed);\n color: var(--qds-theme-feedback-action-destructive-default);\n }\n}\n","// SPDX-FileCopyrightText: © 2025 Schneider Electric\n//\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { ComponentInterface, EventEmitter } from '@stencil/core'\nimport {\n AttachInternals,\n Component,\n Element,\n Event,\n h,\n Listen,\n Prop,\n Watch,\n} from '@stencil/core'\nimport type { LiteralUnion } from 'type-fest'\n\nimport type { QdsFocusEventDetail } from '../../helpers'\nimport {\n computeBadgeValue,\n isCounter,\n isIndicator,\n pickFocusEventAttributes,\n} from '../../helpers'\nimport type { Importance, Size, Target } from '../shared'\n\nexport type IconButtonSize = Size | 'hero'\nexport type IconButtonImportance =\n | Importance\n | 'destructive'\n | 'subdued-destructive'\n\nconst preventDefault = (event: KeyboardEvent | MouseEvent): void => {\n event.preventDefault()\n}\n/**\n * The `<qds-icon-button>` is an interactive element activated by a user\n * with a mouse, keyboard, finger, voice command, or other assistive technology.\n * Once activated, it performs a programmable action, such as submitting a\n * [form](https://developer.mozilla.org/docs/Learn/Forms)\n * or opening a dialog.\n *\n * @see https://quartz.se.com/build/components/icon-button\n */\n@Component({\n tag: 'qds-icon-button',\n formAssociated: true,\n styleUrl: 'icon-button.css',\n shadow: true,\n})\nexport class IconButton implements ComponentInterface {\n /**\n * Prevents the icon button from being interacted with: it cannot be pressed or\n * focused.\n *\n * @webnative\n */\n @Prop()\n public readonly disabled: boolean = false\n\n /**\n * The name of the icon to render.\n *\n * Available names depend on the icon library being used.\n */\n @Prop() public readonly iconName!: string\n\n /**\n * The name of a registered icon library.\n */\n @Prop() public readonly iconLibrary: string = 'default'\n\n /**\n * The icon button's size.\n */\n @Prop() public readonly size?: Size | 'hero' = 'standard'\n\n /**\n * The icon button's importance.\n */\n @Prop() public readonly importance?: IconButtonImportance = 'standard'\n\n /**\n * Displays an indicator if `true` or the empty string. Otherwise, displays a\n * counter badge if a number or string representing a number is used.\n *\n * @webnative\n */\n @Prop() public readonly badge?: number | string | true\n\n /**\n * The indicator or counter badge's accessible text that will be used by\n * screen readers.\n */\n @Prop() public readonly badgeDescription?: string\n\n /**\n * The indicator's status.\n */\n @Prop()\n public readonly badgeIndicatorStatus?: HTMLQdsBadgeIndicatorElement['status'] =\n 'neutral'\n\n /**\n * Where to display the linked URL, as the name for a browsing context (a\n * tab, window, or\n * [`<iframe>`](https://developer.mozilla.org/docs/Web/HTML/Element/iframe).\n * The following keywords have special meanings for where to load the URL:\n *\n * - `_blank`: usually a new tab, but users can configure browsers to open a new\n * window instead.\n * - `_parent`: the parent browsing context of the current one. If no parent,\n * behaves as `_self`.\n * - `_self`: the current browsing context.\n * - `_top`: the topmost browsing context (the \"highest\" context that's an\n * ancestor of the current one). If no ancestors, behaves as `_self`.\n *\n * @webnative\n */\n @Prop() public readonly target?: LiteralUnion<Target, string>\n\n /**\n * When set, the underlying button will be rendered as an `<a>` with this\n * `href` instead of a `<button>`.\n *\n * @webnative\n */\n @Prop() public readonly href?: string\n\n /**\n * When href is define and the button act as a link (`<a>`), the `rel` will be added to the element.\n *\n * @webnative\n */\n @Prop() public readonly rel?: string = 'noopener'\n\n /**\n * Tells the browser to download the linked file as this filename. Only used\n * when `href` is set.\n *\n * @webnative\n */\n @Prop() public readonly download?: string\n\n /**\n * The icon button's accessible name.\n */\n @Prop() public readonly text?: string\n\n /**\n * Emitted when the icon button loses focus.\n */\n @Event({ eventName: 'qdsBlur', bubbles: false, cancelable: false })\n private readonly blurEmitter!: EventEmitter<QdsFocusEventDetail>\n\n /**\n * Emitted when the icon button gains focus.\n */\n @Event({ eventName: 'qdsFocus', bubbles: false, cancelable: false })\n private readonly focusEmitter!: EventEmitter<QdsFocusEventDetail>\n\n @Element() private readonly host!: HTMLElement\n\n @AttachInternals() private readonly internals!: ElementInternals\n\n #savedTabIndex = 0\n\n #button?: HTMLAnchorElement | HTMLButtonElement\n\n #tooltip?: HTMLQdsTooltipElement\n\n #rawAriaLabel?: string\n\n get #computedSize(): IconButtonSize {\n switch (this.size) {\n case 'small':\n case 'large':\n case 'hero': {\n return this.size\n }\n default: {\n return 'standard'\n }\n }\n }\n\n get #computedImportance(): IconButtonImportance {\n switch (this.importance) {\n case 'emphasized':\n case 'subdued':\n case 'destructive':\n case 'subdued-destructive': {\n return this.importance\n }\n default: {\n return 'standard'\n }\n }\n }\n\n get #computedDisabled(): boolean {\n return this.disabled\n }\n\n get #hasText(): boolean {\n return this.text !== undefined && this.text !== ''\n }\n\n @Watch('disabled')\n protected disabledChanged(): void {\n this.internals.ariaDisabled = this.#computedDisabled.toString()\n if (this.#computedDisabled) this.host.removeAttribute('tabindex')\n else this.host.tabIndex = this.#savedTabIndex\n }\n\n @Watch('href')\n protected hrefChanged(): void {\n this.internals.role = this.href === undefined ? 'button' : 'link'\n }\n\n @Watch('tabindex')\n protected tabindexChanged(newValue: string | null): void {\n if (newValue !== null) {\n const parsedValue = Number.parseInt(newValue, 10)\n this.#savedTabIndex =\n Number.isNaN(parsedValue) || !Number.isFinite(parsedValue)\n ? 0\n : parsedValue\n }\n if (this.#computedDisabled) this.host.removeAttribute('tabindex')\n else this.host.tabIndex = this.#savedTabIndex\n }\n\n @Watch('text')\n protected textChanged(): void {\n this.#updateAriaLabel()\n }\n\n @Watch('aria-label')\n protected ariaLabelChanged(newValue: string | null): void {\n if (newValue !== null) {\n this.#rawAriaLabel = newValue\n this.host.removeAttribute('aria-label')\n this.#updateAriaLabel()\n }\n }\n\n @Listen('click')\n protected onClick(event: MouseEvent): void {\n if (this.#computedDisabled) event.stopImmediatePropagation()\n if (this.#button instanceof HTMLAnchorElement) this.#button.click()\n }\n\n @Listen('blur')\n protected async onBlur(event: FocusEvent): Promise<void> {\n this.blurEmitter.emit(pickFocusEventAttributes(event))\n if (this.#tooltip) {\n await this.#tooltip.close()\n }\n }\n\n @Listen('focus')\n protected async onFocus(event: FocusEvent): Promise<void> {\n this.focusEmitter.emit(pickFocusEventAttributes(event))\n if (this.#tooltip) {\n await this.#tooltip.show()\n }\n }\n\n @Listen('keydown')\n protected onKeydown(event: KeyboardEvent): void {\n if (event.key === 'Enter') {\n if (this.#button instanceof HTMLAnchorElement) {\n this.#button.click()\n } else this.host.click()\n }\n }\n\n @Listen('keyup')\n protected onKeyup(event: KeyboardEvent): void {\n if (event.key === ' ' && !(this.#button instanceof HTMLAnchorElement))\n this.host.click()\n }\n\n public componentWillLoad(): void {\n this.hrefChanged()\n const { ariaLabel } = this.host\n if (ariaLabel !== null) {\n this.#rawAriaLabel = ariaLabel\n this.host.removeAttribute('aria-label')\n }\n this.textChanged()\n this.tabindexChanged(this.host.getAttribute('tabindex') ?? '0')\n this.disabledChanged()\n }\n\n public render() {\n const Tag = this.href === undefined ? 'button' : 'a'\n return (\n <div class=\"qds-container\" aria-hidden=\"true\">\n <Tag\n type={Tag === 'a' ? undefined : 'button'}\n class={{\n 'qds-icon-button': true,\n 'qds-disabled': this.#computedDisabled,\n }}\n href={Tag === 'a' ? this.href : undefined}\n target={Tag === 'a' ? this.target : undefined}\n rel={Tag === 'a' ? this.rel : undefined}\n ref={this.#ref}\n disabled={Tag === 'a' ? undefined : this.#computedDisabled}\n download={Tag === 'a' ? this.download : undefined}\n data-size={this.#computedSize}\n data-importance={this.#computedImportance}\n onKeyDown={preventDefault}\n onKeyUp={preventDefault}\n onKeyPress={preventDefault}\n tabIndex={-1}\n >\n <qds-icon\n class=\"qds-icon\"\n data-size={this.#computedSize}\n library={this.iconLibrary}\n name={this.iconName}\n />\n {isIndicator(this.badge) && (\n <qds-badge-indicator\n class=\"qds-indicator\"\n status={this.badgeIndicatorStatus}\n description={this.badgeDescription}\n size={this.#computedSize}\n strokeRing\n />\n )}\n {isCounter(this.badge) && (\n <qds-badge-counter\n class=\"qds-counter\"\n description={this.badgeDescription}\n importance={this.#computedImportance}\n size={this.#computedSize}\n strokeRing\n value={this.badge}\n />\n )}\n </Tag>\n <div class=\"qds-focus-ring\" data-size={this.#computedSize} />\n {this.#hasText && (\n <qds-tooltip ref={this.#tooltipRef}>{this.text}</qds-tooltip>\n )}\n </div>\n )\n }\n\n #updateAriaLabel(): void {\n const label = this.text ?? this.#rawAriaLabel ?? ''\n const hasBadge = this.badge !== undefined\n\n if (hasBadge) {\n this.internals.ariaLabel = computeBadgeValue(\n label,\n this.badge,\n this.badgeDescription,\n )\n return\n }\n\n this.internals.ariaLabel =\n this.target === '_blank' && this.href !== undefined\n ? `${label} opens in a new tab`\n : label\n }\n\n readonly #ref = (button?: HTMLAnchorElement | HTMLButtonElement): void => {\n this.#button = button\n }\n\n readonly #tooltipRef = (tooltip?: HTMLQdsTooltipElement): void => {\n if (tooltip) {\n // eslint-disable-next-line no-param-reassign\n tooltip.target = this.host\n this.#tooltip = tooltip\n }\n }\n}\n"],"version":3}
@@ -0,0 +1,102 @@
1
+ /*!
2
+ * SPDX-FileCopyrightText: © 2026 Schneider Electric
3
+ *
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { p as proxyCustomElement, H, h } from './p-D2489VzR.js';
7
+ import { d as defineCustomElement$1 } from './p-fKK7EmM2.js';
8
+
9
+ const titleCss = ":host([hidden]){display:none!important}:host{display:block}.qds-titles{display:grid;grid-template-areas:\"f\"}.qds-titles.qds-has-kicker{grid-template-areas:\"g\" \"f\"}.qds-titles.qds-has-subtitle{grid-template-areas:\"f\" \"h\"}.qds-titles.qds-has-kicker.qds-has-subtitle{grid-template-areas:\"g\" \"f\" \"h\"}.qds-has-icon{grid-template-areas:\"i f\";grid-template-columns:auto 1fr}.qds-has-icon.qds-has-kicker{grid-template-areas:\". g\" \"i f\"}.qds-has-icon.qds-has-subtitle{grid-template-areas:\"i f\" \". h\"}.qds-has-icon.qds-has-kicker.qds-has-subtitle{grid-template-areas:\". g\" \"i f\" \". h\"}.qds-title,.qds-titles{hyphens:inherit}.qds-kicker,.qds-subtitle{hyphens:manual}.qds-kicker,.qds-subtitle,.qds-title{margin-block:0}.qds-title{color:var(--qds-theme-title);grid-area:f}.qds-subtitle{color:var(--qds-theme-subtitle);grid-area:h}.qds-kicker{color:var(--qds-theme-kicker);grid-area:g}.qds-icon{align-content:center;color:var(--qds-theme-text-standard);grid-area:i}.qds-root.qds-main .qds-title{font:var(--qds-main-title)}.qds-root.qds-main .qds-subtitle{font:var(--qds-main-subtitle)}.qds-root.qds-main .qds-kicker{font:var(--qds-main-kicker)}.qds-root.qds-main .qds-icon{height:var(--qds-main-titles-icon-crop-height);width:var(--qds-main-titles-icon-size)}.qds-root.qds-main.qds-titles{gap:var(--qds-main-titles-gap)}.qds-root.qds-main.qds-has-icon{gap:var(--qds-main-titles-gap) var(--qds-main-titles-icon-gap)}.qds-root.qds-navigation .qds-title{font:var(--qds-navigation-title)}.qds-root.qds-navigation .qds-subtitle{font:var(--qds-navigation-subtitle)}.qds-root.qds-navigation .qds-kicker{font:var(--qds-navigation-kicker)}.qds-root.qds-navigation .qds-icon{height:var(--qds-navigation-titles-icon-crop-height);width:var(--qds-navigation-titles-icon-size)}.qds-root.qds-navigation.qds-titles{gap:var(--qds-navigation-titles-gap)}.qds-root.qds-navigation.qds-has-icon{gap:var(--qds-navigation-titles-gap) var(--qds-navigation-titles-icon-gap)}.qds-main.qds-section.qds-titles{gap:var(--qds-main-section-titles-gap)}.qds-main.qds-section.qds-has-icon{gap:var(--qds-main-section-titles-gap) var(--qds-main-section-titles-icon-gap)}.qds-main.qds-section .qds-title{font:var(--qds-main-section-title)}.qds-main.qds-section .qds-subtitle{font:var(--qds-main-section-subtitle)}.qds-main.qds-section .qds-kicker{font:var(--qds-main-section-kicker)}.qds-main.qds-section .qds-icon{height:var(--qds-main-section-titles-icon-crop-height);width:var(--qds-main-section-titles-icon-size)}.qds-main.qds-subsection.qds-titles{gap:var(--qds-main-subsection-titles-gap)}.qds-main.qds-subsection.qds-has-icon{gap:var(--qds-main-subsection-titles-gap) var(--qds-main-subsection-titles-icon-gap)}.qds-main.qds-subsection .qds-title{font:var(--qds-main-subsection-title)}.qds-main.qds-subsection .qds-subtitle{font:var(--qds-main-subsection-subtitle)}.qds-main.qds-subsection .qds-kicker{font:var(--qds-main-subsection-kicker)}.qds-main.qds-subsection .qds-icon{height:var(--qds-main-subsection-titles-icon-crop-height);width:var(--qds-main-subsection-titles-icon-size)}.qds-panel.qds-root.qds-titles{gap:var(--qds-panel-titles-gap)}.qds-panel.qds-root.qds-has-icon{gap:var(--qds-panel-titles-gap) var(--qds-panel-titles-icon-gap)}.qds-panel.qds-root .qds-title{font:var(--qds-panel-title)}.qds-panel.qds-root .qds-subtitle{font:var(--qds-panel-subtitle)}.qds-panel.qds-root .qds-kicker{font:var(--qds-panel-kicker)}.qds-panel.qds-root .qds-icon{height:var(--qds-panel-titles-icon-crop-height);width:var(--qds-panel-titles-icon-size)}.qds-panel.qds-section.qds-titles{gap:var(--qds-panel-section-titles-gap)}.qds-panel.qds-section.qds-has-icon{gap:var(--qds-panel-section-titles-gap) var(--qds-panel-section-titles-icon-gap)}.qds-panel.qds-section .qds-title{font:var(--qds-panel-section-title)}.qds-panel.qds-section .qds-subtitle{font:var(--qds-panel-section-subtitle)}.qds-panel.qds-section .qds-kicker{font:var(--qds-panel-section-kicker)}.qds-panel.qds-section .qds-icon{height:var(--qds-panel-section-titles-icon-crop-height);width:var(--qds-panel-section-titles-icon-size)}.qds-panel.qds-subsection.qds-titles{gap:var(--qds-panel-subsection-titles-gap)}.qds-panel.qds-subsection.qds-has-icon{gap:var(--qds-panel-subsection-titles-gap) var(--qds-panel-subsection-titles-icon-gap)}.qds-panel.qds-subsection .qds-title{font:var(--qds-panel-subsection-title)}.qds-panel.qds-subsection .qds-subtitle{font:var(--qds-panel-subsection-subtitle)}.qds-panel.qds-subsection .qds-kicker{font:var(--qds-panel-subsection-kicker)}.qds-panel.qds-subsection .qds-icon{height:var(--qds-panel-subsection-titles-icon-crop-height);width:var(--qds-panel-subsection-titles-icon-size)}.qds-navigation.qds-section.qds-titles{gap:var(--qds-navigation-section-titles-gap)}.qds-navigation.qds-section.qds-has-icon{gap:var(--qds-navigation-section-titles-gap) var(--qds-navigation-section-titles-icon-gap)}.qds-navigation.qds-section .qds-title{font:var(--qds-navigation-section-title)}.qds-navigation.qds-section .qds-subtitle{font:var(--qds-navigation-section-subtitle)}.qds-navigation.qds-section .qds-kicker{font:var(--qds-navigation-section-kicker)}.qds-navigation.qds-section .qds-icon{height:var(--qds-navigation-section-titles-icon-crop-height);width:var(--qds-navigation-section-titles-icon-size)}.qds-navigation.qds-subsection.qds-titles{gap:var(--qds-navigation-subsection-titles-gap)}.qds-navigation.qds-subsection.qds-has-icon{gap:var(--qds-navigation-subsection-titles-gap) var(--qds-navigation-subsection-titles-icon-gap)}.qds-navigation.qds-subsection .qds-title{font:var(--qds-navigation-subsection-title)}.qds-navigation.qds-subsection .qds-subtitle{font:var(--qds-navigation-subsection-subtitle)}.qds-navigation.qds-subsection .qds-kicker{font:var(--qds-navigation-subsection-kicker)}.qds-navigation.qds-subsection .qds-icon{height:var(--qds-navigation-subsection-titles-icon-crop-height);width:var(--qds-navigation-subsection-titles-icon-size)}.qds-popup.qds-root.qds-titles{gap:var(--qds-popup-titles-gap)}.qds-popup.qds-root.qds-has-icon{gap:var(--qds-popup-titles-gap) var(--qds-popup-titles-icon-gap)}.qds-popup.qds-root .qds-title{font:var(--qds-popup-title)}.qds-popup.qds-root .qds-subtitle{font:var(--qds-popup-subtitle)}.qds-popup.qds-root .qds-kicker{font:var(--qds-popup-kicker)}.qds-popup.qds-root .qds-icon{height:var(--qds-popup-titles-icon-crop-height);width:var(--qds-popup-titles-icon-size)}.qds-popup.qds-section.qds-titles{gap:var(--qds-popup-section-titles-gap)}.qds-popup.qds-section.qds-has-icon{gap:var(--qds-popup-section-titles-gap) var(--qds-popup-section-titles-icon-gap)}.qds-popup.qds-section .qds-title{font:var(--qds-popup-section-title)}.qds-popup.qds-section .qds-subtitle{font:var(--qds-popup-section-subtitle)}.qds-popup.qds-section .qds-kicker{font:var(--qds-popup-section-kicker)}.qds-popup.qds-section .qds-icon{height:var(--qds-popup-section-titles-icon-crop-height);width:var(--qds-popup-section-titles-icon-size)}.qds-popup.qds-subsection.qds-titles{gap:var(--qds-popup-subsection-titles-gap)}.qds-popup.qds-subsection.qds-has-icon{gap:var(--qds-popup-subsection-titles-gap) var(--qds-popup-subsection-titles-icon-gap)}.qds-popup.qds-subsection .qds-title{font:var(--qds-popup-subsection-title)}.qds-popup.qds-subsection .qds-subtitle{font:var(--qds-popup-subsection-subtitle)}.qds-popup.qds-subsection .qds-kicker{font:var(--qds-popup-subsection-kicker)}.qds-popup.qds-subsection .qds-icon{height:var(--qds-popup-subsection-titles-icon-crop-height);width:var(--qds-popup-subsection-titles-icon-size)}.qds-accessory.qds-root.qds-titles{gap:var(--qds-accessory-titles-gap)}.qds-accessory.qds-root.qds-has-icon{gap:var(--qds-accessory-titles-gap) var(--qds-accessory-titles-icon-gap)}.qds-accessory.qds-root .qds-title{font:var(--qds-accessory-title)}.qds-accessory.qds-root .qds-subtitle{font:var(--qds-accessory-subtitle)}.qds-accessory.qds-root .qds-kicker{font:var(--qds-accessory-kicker)}.qds-accessory.qds-root .qds-icon{height:var(--qds-accessory-titles-icon-crop-height);width:var(--qds-accessory-titles-icon-size)}.qds-accessory.qds-section.qds-titles{gap:var(--qds-accessory-section-titles-gap)}.qds-accessory.qds-section.qds-has-icon{gap:var(--qds-accessory-section-titles-gap) var(--qds-accessory-section-titles-icon-gap)}.qds-accessory.qds-section .qds-title{font:var(--qds-accessory-section-title)}.qds-accessory.qds-section .qds-subtitle{font:var(--qds-accessory-section-subtitle)}.qds-accessory.qds-section .qds-kicker{font:var(--qds-accessory-section-kicker)}.qds-accessory.qds-section .qds-icon{height:var(--qds-accessory-section-titles-icon-crop-height);width:var(--qds-accessory-section-titles-icon-size)}.qds-titles[data-variant=web-main-section-promo]:is(.qds-root,.qds-section,.qds-subsection){gap:var(--qds-main-section-promo-titles-gap);margin:auto}[data-variant=web-main-section-promo]:is(.qds-root,.qds-section,.qds-subsection) .qds-title{font:var(--qds-main-section-promo-title)}[data-variant=web-main-section-promo]:is(.qds-root,.qds-section,.qds-subsection) .qds-subtitle{font:var(--qds-main-section-promo-subtitle)}[data-variant=web-main-section-promo]:is(.qds-root,.qds-section,.qds-subsection) .qds-kicker{font:var(--qds-main-section-promo-kicker)}.qds-has-icon[data-variant=web-main-section-promo]:is(.qds-root,.qds-section,.qds-subsection){gap:var(--qds-main-section-promo-titles-gap) var(--qds-main-section-promo-titles-icon-gap)}[data-variant=web-main-section-promo]:is(.qds-root,.qds-section,.qds-subsection) .qds-icon{height:var(--qds-main-section-promo-titles-icon-crop-height);width:var(--qds-main-section-promo-titles-icon-size)}[data-alignment=start]{text-align:start}[data-alignment=center]{text-align:center}[data-alignment=end]{text-align:end}.qds-titles[data-variant=web-main-section-display]:is(.qds-root,.qds-section,.qds-subsection){gap:var(--qds-main-section-display-titles-gap)}[data-variant=web-main-section-display]:is(.qds-root,.qds-section,.qds-subsection) .qds-title{font:var(--qds-main-section-display-title)}.qds-titles[data-variant=web-main-subsection-card]:is(.qds-root,.qds-section,.qds-subsection){gap:var(--qds-main-subsection-card-titles-gap)}[data-variant=web-main-subsection-card]:is(.qds-root,.qds-section,.qds-subsection) .qds-title{font:var(--qds-main-subsection-card-standard-title)}.qds-titles[data-variant=web-main-section-hero]:is(.qds-root,.qds-section,.qds-subsection){gap:var(--qds-main-section-hero-titles-gap)}[data-variant=web-main-section-hero]:is(.qds-root,.qds-section,.qds-subsection) .qds-title{font:var(--qds-main-section-hero-title)}";
10
+
11
+ // SPDX-FileCopyrightText: © 2024 Schneider Electric
12
+ //
13
+ // SPDX-License-Identifier: Apache-2.0
14
+ var __classPrivateFieldGet = (undefined && undefined.__classPrivateFieldGet) || function (receiver, state, kind, f) {
15
+ if (kind === "a" && !f)
16
+ throw new TypeError("Private accessor was defined without a getter");
17
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
18
+ throw new TypeError("Cannot read private member from an object whose class did not declare it");
19
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
20
+ };
21
+ var _Title_instances, _Title_hasSubtitle_get, _Title_hasKicker_get;
22
+ const Title = /*@__PURE__*/ proxyCustomElement(class Title extends H {
23
+ constructor(registerHost) {
24
+ super();
25
+ if (registerHost !== false) {
26
+ this.__registerHost();
27
+ }
28
+ this.__attachShadow();
29
+ this.internals = this.attachInternals();
30
+ _Title_instances.add(this);
31
+ /**
32
+ * The alignment of the title.
33
+ */
34
+ this.alignment = 'start';
35
+ /**
36
+ * The name of a registered icon library.
37
+ */
38
+ this.iconLibrary = 'default';
39
+ this.layer = 'main';
40
+ this.level = 'section';
41
+ /**
42
+ * HTML tag to use to render the title.
43
+ */
44
+ this.tag = 'h2';
45
+ }
46
+ componentWillLoad() {
47
+ this.internals.role = 'group';
48
+ }
49
+ render() {
50
+ const layer = `qds-${this.layer ?? 'main'}`;
51
+ const level = `qds-${this.level ?? 'section'}`;
52
+ const Tag = this.tag ?? 'h2';
53
+ const hasIcon = this.iconName !== undefined && this.iconName !== '';
54
+ return (h("hgroup", { key: '04bc659e139196f133a2952d31b4850e3c7db4d0', "data-alignment": this.alignment ?? 'start', "data-variant": this.variant, class: {
55
+ [layer]: true,
56
+ [level]: true,
57
+ 'qds-titles': true,
58
+ 'qds-has-icon': hasIcon,
59
+ 'qds-has-kicker': __classPrivateFieldGet(this, _Title_instances, "a", _Title_hasKicker_get),
60
+ 'qds-has-subtitle': __classPrivateFieldGet(this, _Title_instances, "a", _Title_hasSubtitle_get),
61
+ }, role: "none" }, h(Tag, { key: '6206cfad864ae1ccba4d752dccf89b32d08b1799', class: "qds-title", "data-variant": this.variant }, h("slot", { key: 'bc064cbc02c3d6807d7dde00979df6aa1113979b' })), __classPrivateFieldGet(this, _Title_instances, "a", _Title_hasKicker_get) && h("p", { key: '85137e1d9dd7c96dd8de7b4acbefbbd724b3e56f', class: "qds-kicker" }, this.kicker), __classPrivateFieldGet(this, _Title_instances, "a", _Title_hasSubtitle_get) && h("p", { key: 'dd18c78be3d12ce99f56ae2e74a29574da7cca27', class: "qds-subtitle" }, this.subtitle), hasIcon && (h("qds-icon", { key: 'e98cff56c6ca81cdee991b4b2c714402e88213ed', class: "qds-icon", name: this.iconName, library: this.iconLibrary }))));
62
+ }
63
+ static get style() { return titleCss; }
64
+ }, [257, "qds-title", {
65
+ "alignment": [1],
66
+ "iconName": [1, "icon-name"],
67
+ "iconLibrary": [1, "icon-library"],
68
+ "kicker": [1],
69
+ "layer": [1],
70
+ "level": [1],
71
+ "subtitle": [1],
72
+ "tag": [1],
73
+ "variant": [1]
74
+ }]);
75
+ _Title_instances = new WeakSet(), _Title_hasSubtitle_get = function _Title_hasSubtitle_get() {
76
+ return this.subtitle !== undefined && this.subtitle !== '';
77
+ }, _Title_hasKicker_get = function _Title_hasKicker_get() {
78
+ return this.kicker !== undefined && this.kicker !== '';
79
+ };
80
+ function defineCustomElement() {
81
+ if (typeof customElements === "undefined") {
82
+ return;
83
+ }
84
+ const components = ["qds-title", "qds-icon"];
85
+ components.forEach(tagName => { switch (tagName) {
86
+ case "qds-title":
87
+ if (!customElements.get(tagName)) {
88
+ customElements.define(tagName, Title);
89
+ }
90
+ break;
91
+ case "qds-icon":
92
+ if (!customElements.get(tagName)) {
93
+ defineCustomElement$1();
94
+ }
95
+ break;
96
+ } });
97
+ }
98
+
99
+ export { Title as T, defineCustomElement as d };
100
+ //# sourceMappingURL=p-Cb5Tgh-o.js.map
101
+
102
+ //# sourceMappingURL=p-Cb5Tgh-o.js.map
@@ -0,0 +1 @@
1
+ {"file":"p-Cb5Tgh-o.js","mappings":";;;;;;;;AAAA,MAAM,QAAQ,GAAG,k0UAAk0U;;ACAn1U;AACA;AACA;;;;;;;;;MAyBa,KAAK,iBAAAA,kBAAA,CAAA,MAAA,KAAA,SAAAC,CAAA,CAAA;AALlB,IAAA,WAAA,CAAA,YAAA,EAAA;;;;;;;;AAME;;AAEG;AACqB,QAAA,IAAS,CAAA,SAAA,GAAe,OAAO;AASvD;;AAEG;AACqB,QAAA,IAAW,CAAA,WAAA,GAAW,SAAS;AAO/B,QAAA,IAAK,CAAA,KAAA,GAAW,MAAM;AAEtB,QAAA,IAAK,CAAA,KAAA,GAAW,SAAS;AAOjD;;AAEG;AACqB,QAAA,IAAG,CAAA,GAAA,GAAS,IAAI;AAwDzC;IAvCQ,iBAAiB,GAAA;AACtB,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,GAAG,OAAO;;IAGxB,MAAM,GAAA;QACX,MAAM,KAAK,GAAG,CAAO,IAAA,EAAA,IAAI,CAAC,KAAK,IAAI,MAAM,CAAA,CAAE;QAC3C,MAAM,KAAK,GAAG,CAAO,IAAA,EAAA,IAAI,CAAC,KAAK,IAAI,SAAS,CAAA,CAAE;AAC9C,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI;AAC5B,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,KAAK,EAAE;QAEnE,QACE,CAAA,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,gBAAA,EACkB,IAAI,CAAC,SAAS,IAAI,OAAO,EAAA,cAAA,EAC3B,IAAI,CAAC,OAAO,EAC1B,KAAK,EAAE;gBACL,CAAC,KAAK,GAAG,IAAI;gBACb,CAAC,KAAK,GAAG,IAAI;AACb,gBAAA,YAAY,EAAE,IAAI;AAClB,gBAAA,cAAc,EAAE,OAAO;gBACvB,gBAAgB,EAAE,sBAAA,CAAA,IAAI,EAAW,gBAAA,EAAA,GAAA,EAAA,oBAAA,CAAA;gBACjC,kBAAkB,EAAE,sBAAA,CAAA,IAAI,EAAa,gBAAA,EAAA,GAAA,EAAA,sBAAA,CAAA;AACtC,aAAA,EACD,IAAI,EAAC,MAAM,EAAA,EAEX,CAAC,CAAA,GAAG,qDAAC,KAAK,EAAC,WAAW,EAAe,cAAA,EAAA,IAAI,CAAC,OAAO,EAAA,EAC/C,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAQ,CACJ,EACL,sBAAA,CAAA,IAAI,EAAW,gBAAA,EAAA,GAAA,EAAA,oBAAA,CAAA,IAAI,CAAG,CAAA,GAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,YAAY,EAAE,EAAA,IAAI,CAAC,MAAM,CAAK,EAC1D,sBAAA,CAAA,IAAI,EAAa,gBAAA,EAAA,GAAA,EAAA,sBAAA,CAAA,IAAI,CAAG,CAAA,GAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,cAAc,EAAE,EAAA,IAAI,CAAC,QAAQ,CAAK,EAChE,OAAO,KACN,CACE,CAAA,UAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,UAAU,EAChB,IAAI,EAAE,IAAI,CAAC,QAAQ,EACnB,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,CAAA,CACH,CACM;;;;;;;;;;;;;;;IA3CX,OAAO,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,KAAK,EAAE;AAC5D,CAAC,EAAA,oBAAA,GAAA,SAAA,oBAAA,GAAA;IAGC,OAAO,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,EAAE;AACxD,CAAC;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/title/title.css?tag=qds-title&encapsulation=shadow","src/components/title/title.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: © 2024 Schneider Electric\n *\n * SPDX-License-Identifier: Apache-2.0\n */\n\n@import url('../shared.css');\n\n:host {\n display: block;\n}\n\n.qds-titles {\n display: grid;\n grid-template-areas: 'title';\n\n &.qds-has-kicker {\n grid-template-areas:\n 'kicker'\n 'title';\n }\n\n &.qds-has-subtitle {\n grid-template-areas:\n 'title'\n 'subtitle';\n }\n\n &.qds-has-kicker.qds-has-subtitle {\n grid-template-areas:\n 'kicker'\n 'title'\n 'subtitle';\n }\n}\n\n.qds-has-icon {\n grid-template-columns: auto 1fr;\n grid-template-areas: 'icon title';\n\n &.qds-has-kicker {\n grid-template-areas:\n '. kicker'\n 'icon title';\n }\n\n &.qds-has-subtitle {\n grid-template-areas:\n 'icon title'\n '. subtitle';\n }\n\n &.qds-has-kicker.qds-has-subtitle {\n grid-template-areas:\n '. kicker'\n 'icon title'\n '. subtitle';\n }\n}\n\n.qds-titles,\n.qds-title {\n hyphens: inherit;\n}\n\n.qds-subtitle,\n.qds-kicker {\n hyphens: initial;\n}\n\n.qds-title,\n.qds-subtitle,\n.qds-kicker {\n margin-block: 0;\n}\n\n.qds-title {\n grid-area: title;\n color: var(--qds-theme-title);\n}\n\n.qds-subtitle {\n grid-area: subtitle;\n color: var(--qds-theme-subtitle);\n}\n\n.qds-kicker {\n grid-area: kicker;\n color: var(--qds-theme-kicker);\n}\n\n.qds-icon {\n grid-area: icon;\n align-content: center;\n color: var(--qds-theme-text-standard);\n}\n\n.qds-root {\n &.qds-main {\n & .qds-title {\n font: var(--qds-main-title);\n }\n\n & .qds-subtitle {\n font: var(--qds-main-subtitle);\n }\n\n & .qds-kicker {\n font: var(--qds-main-kicker);\n }\n\n & .qds-icon {\n width: var(--qds-main-titles-icon-size);\n height: var(--qds-main-titles-icon-crop-height);\n }\n\n &.qds-titles {\n gap: var(--qds-main-titles-gap);\n }\n\n &.qds-has-icon {\n gap: var(--qds-main-titles-gap) var(--qds-main-titles-icon-gap);\n }\n }\n\n &.qds-navigation {\n & .qds-title {\n font: var(--qds-navigation-title);\n }\n\n & .qds-subtitle {\n font: var(--qds-navigation-subtitle);\n }\n\n & .qds-kicker {\n font: var(--qds-navigation-kicker);\n }\n\n & .qds-icon {\n width: var(--qds-navigation-titles-icon-size);\n height: var(--qds-navigation-titles-icon-crop-height);\n }\n\n &.qds-titles {\n gap: var(--qds-navigation-titles-gap);\n }\n\n &.qds-has-icon {\n gap: var(--qds-navigation-titles-gap)\n var(--qds-navigation-titles-icon-gap);\n }\n }\n}\n\n.qds-main {\n &.qds-section {\n &.qds-titles {\n gap: var(--qds-main-section-titles-gap);\n }\n\n &.qds-has-icon {\n gap: var(--qds-main-section-titles-gap)\n var(--qds-main-section-titles-icon-gap);\n }\n\n & .qds-title {\n font: var(--qds-main-section-title);\n }\n\n & .qds-subtitle {\n font: var(--qds-main-section-subtitle);\n }\n\n & .qds-kicker {\n font: var(--qds-main-section-kicker);\n }\n\n & .qds-icon {\n width: var(--qds-main-section-titles-icon-size);\n height: var(--qds-main-section-titles-icon-crop-height);\n }\n }\n\n &.qds-subsection {\n &.qds-titles {\n gap: var(--qds-main-subsection-titles-gap);\n }\n\n &.qds-has-icon {\n gap: var(--qds-main-subsection-titles-gap)\n var(--qds-main-subsection-titles-icon-gap);\n }\n\n & .qds-title {\n font: var(--qds-main-subsection-title);\n }\n\n & .qds-subtitle {\n font: var(--qds-main-subsection-subtitle);\n }\n\n & .qds-kicker {\n font: var(--qds-main-subsection-kicker);\n }\n\n & .qds-icon {\n width: var(--qds-main-subsection-titles-icon-size);\n height: var(--qds-main-subsection-titles-icon-crop-height);\n }\n }\n}\n\n.qds-panel {\n &.qds-root {\n &.qds-titles {\n gap: var(--qds-panel-titles-gap);\n }\n\n &.qds-has-icon {\n gap: var(--qds-panel-titles-gap) var(--qds-panel-titles-icon-gap);\n }\n\n & .qds-title {\n font: var(--qds-panel-title);\n }\n\n & .qds-subtitle {\n font: var(--qds-panel-subtitle);\n }\n\n & .qds-kicker {\n font: var(--qds-panel-kicker);\n }\n\n & .qds-icon {\n width: var(--qds-panel-titles-icon-size);\n height: var(--qds-panel-titles-icon-crop-height);\n }\n }\n\n &.qds-section {\n &.qds-titles {\n gap: var(--qds-panel-section-titles-gap);\n }\n\n &.qds-has-icon {\n gap: var(--qds-panel-section-titles-gap)\n var(--qds-panel-section-titles-icon-gap);\n }\n\n & .qds-title {\n font: var(--qds-panel-section-title);\n }\n\n & .qds-subtitle {\n font: var(--qds-panel-section-subtitle);\n }\n\n & .qds-kicker {\n font: var(--qds-panel-section-kicker);\n }\n\n & .qds-icon {\n width: var(--qds-panel-section-titles-icon-size);\n height: var(--qds-panel-section-titles-icon-crop-height);\n }\n }\n\n &.qds-subsection {\n &.qds-titles {\n gap: var(--qds-panel-subsection-titles-gap);\n }\n\n &.qds-has-icon {\n gap: var(--qds-panel-subsection-titles-gap)\n var(--qds-panel-subsection-titles-icon-gap);\n }\n\n & .qds-title {\n font: var(--qds-panel-subsection-title);\n }\n\n & .qds-subtitle {\n font: var(--qds-panel-subsection-subtitle);\n }\n\n & .qds-kicker {\n font: var(--qds-panel-subsection-kicker);\n }\n\n & .qds-icon {\n width: var(--qds-panel-subsection-titles-icon-size);\n height: var(--qds-panel-subsection-titles-icon-crop-height);\n }\n }\n}\n\n.qds-navigation {\n &.qds-section {\n &.qds-titles {\n gap: var(--qds-navigation-section-titles-gap);\n }\n\n &.qds-has-icon {\n gap: var(--qds-navigation-section-titles-gap)\n var(--qds-navigation-section-titles-icon-gap);\n }\n\n & .qds-title {\n font: var(--qds-navigation-section-title);\n }\n\n & .qds-subtitle {\n font: var(--qds-navigation-section-subtitle);\n }\n\n & .qds-kicker {\n font: var(--qds-navigation-section-kicker);\n }\n\n & .qds-icon {\n width: var(--qds-navigation-section-titles-icon-size);\n height: var(--qds-navigation-section-titles-icon-crop-height);\n }\n }\n\n &.qds-subsection {\n &.qds-titles {\n gap: var(--qds-navigation-subsection-titles-gap);\n }\n\n &.qds-has-icon {\n gap: var(--qds-navigation-subsection-titles-gap)\n var(--qds-navigation-subsection-titles-icon-gap);\n }\n\n & .qds-title {\n font: var(--qds-navigation-subsection-title);\n }\n\n & .qds-subtitle {\n font: var(--qds-navigation-subsection-subtitle);\n }\n\n & .qds-kicker {\n font: var(--qds-navigation-subsection-kicker);\n }\n\n & .qds-icon {\n width: var(--qds-navigation-subsection-titles-icon-size);\n height: var(--qds-navigation-subsection-titles-icon-crop-height);\n }\n }\n}\n\n.qds-popup {\n &.qds-root {\n &.qds-titles {\n gap: var(--qds-popup-titles-gap);\n }\n\n &.qds-has-icon {\n gap: var(--qds-popup-titles-gap) var(--qds-popup-titles-icon-gap);\n }\n\n & .qds-title {\n font: var(--qds-popup-title);\n }\n\n & .qds-subtitle {\n font: var(--qds-popup-subtitle);\n }\n\n & .qds-kicker {\n font: var(--qds-popup-kicker);\n }\n\n & .qds-icon {\n width: var(--qds-popup-titles-icon-size);\n height: var(--qds-popup-titles-icon-crop-height);\n }\n }\n\n &.qds-section {\n &.qds-titles {\n gap: var(--qds-popup-section-titles-gap);\n }\n\n &.qds-has-icon {\n gap: var(--qds-popup-section-titles-gap)\n var(--qds-popup-section-titles-icon-gap);\n }\n\n & .qds-title {\n font: var(--qds-popup-section-title);\n }\n\n & .qds-subtitle {\n font: var(--qds-popup-section-subtitle);\n }\n\n & .qds-kicker {\n font: var(--qds-popup-section-kicker);\n }\n\n & .qds-icon {\n width: var(--qds-popup-section-titles-icon-size);\n height: var(--qds-popup-section-titles-icon-crop-height);\n }\n }\n\n &.qds-subsection {\n &.qds-titles {\n gap: var(--qds-popup-subsection-titles-gap);\n }\n\n &.qds-has-icon {\n gap: var(--qds-popup-subsection-titles-gap)\n var(--qds-popup-subsection-titles-icon-gap);\n }\n\n & .qds-title {\n font: var(--qds-popup-subsection-title);\n }\n\n & .qds-subtitle {\n font: var(--qds-popup-subsection-subtitle);\n }\n\n & .qds-kicker {\n font: var(--qds-popup-subsection-kicker);\n }\n\n & .qds-icon {\n width: var(--qds-popup-subsection-titles-icon-size);\n height: var(--qds-popup-subsection-titles-icon-crop-height);\n }\n }\n}\n\n.qds-accessory {\n &.qds-root {\n &.qds-titles {\n gap: var(--qds-accessory-titles-gap);\n }\n\n &.qds-has-icon {\n gap: var(--qds-accessory-titles-gap) var(--qds-accessory-titles-icon-gap);\n }\n\n & .qds-title {\n font: var(--qds-accessory-title);\n }\n\n & .qds-subtitle {\n font: var(--qds-accessory-subtitle);\n }\n\n & .qds-kicker {\n font: var(--qds-accessory-kicker);\n }\n\n & .qds-icon {\n width: var(--qds-accessory-titles-icon-size);\n height: var(--qds-accessory-titles-icon-crop-height);\n }\n }\n\n &.qds-section {\n &.qds-titles {\n gap: var(--qds-accessory-section-titles-gap);\n }\n\n &.qds-has-icon {\n gap: var(--qds-accessory-section-titles-gap)\n var(--qds-accessory-section-titles-icon-gap);\n }\n\n & .qds-title {\n font: var(--qds-accessory-section-title);\n }\n\n & .qds-subtitle {\n font: var(--qds-accessory-section-subtitle);\n }\n\n & .qds-kicker {\n font: var(--qds-accessory-section-kicker);\n }\n\n & .qds-icon {\n width: var(--qds-accessory-section-titles-icon-size);\n height: var(--qds-accessory-section-titles-icon-crop-height);\n }\n }\n}\n\n[data-variant='web-main-section-promo'] {\n &:is(.qds-root, .qds-section, .qds-subsection) {\n &.qds-titles {\n gap: var(--qds-main-section-promo-titles-gap);\n margin: auto;\n }\n\n & .qds-title {\n font: var(--qds-main-section-promo-title);\n }\n\n & .qds-subtitle {\n font: var(--qds-main-section-promo-subtitle);\n }\n\n & .qds-kicker {\n font: var(--qds-main-section-promo-kicker);\n }\n\n &.qds-has-icon {\n gap: var(--qds-main-section-promo-titles-gap)\n var(--qds-main-section-promo-titles-icon-gap);\n }\n\n & .qds-icon {\n width: var(--qds-main-section-promo-titles-icon-size);\n height: var(--qds-main-section-promo-titles-icon-crop-height);\n }\n }\n}\n\n[data-alignment='start'] {\n text-align: start;\n}\n\n[data-alignment='center'] {\n text-align: center;\n}\n\n[data-alignment='end'] {\n text-align: end;\n}\n\n[data-variant='web-main-section-display'] {\n &:is(.qds-root, .qds-section, .qds-subsection) {\n &.qds-titles {\n gap: var(--qds-main-section-display-titles-gap);\n }\n\n & .qds-title {\n font: var(--qds-main-section-display-title);\n }\n }\n}\n\n[data-variant='web-main-subsection-card'] {\n &:is(.qds-root, .qds-section, .qds-subsection) {\n &.qds-titles {\n gap: var(--qds-main-subsection-card-titles-gap);\n }\n\n & .qds-title {\n font: var(--qds-main-subsection-card-standard-title);\n }\n }\n}\n\n[data-variant='web-main-section-hero'] {\n &:is(.qds-root, .qds-section, .qds-subsection) {\n &.qds-titles {\n gap: var(--qds-main-section-hero-titles-gap);\n }\n\n & .qds-title {\n font: var(--qds-main-section-hero-title);\n }\n }\n}\n","// SPDX-FileCopyrightText: © 2024 Schneider Electric\n//\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { ComponentInterface } from '@stencil/core'\nimport { AttachInternals, Component, h, Prop } from '@stencil/core'\n\nexport type Layer = 'accessory' | 'main' | 'navigation' | 'panel' | 'popup'\nexport type Level = 'root' | 'section' | 'subsection'\nexport type Tag = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6'\nexport type TitleVariant =\n | 'web-main-section-display'\n | 'web-main-section-hero'\n | 'web-main-section-promo'\n | 'web-main-subsection-card'\n\nexport type Alignment = 'center' | 'end' | 'start'\n\n/**\n * @slot Content to display for the title.\n * @see https://quartz.se.com/build/components/title\n */\n@Component({\n tag: 'qds-title',\n shadow: true,\n styleUrl: 'title.css',\n})\nexport class Title implements ComponentInterface {\n /**\n * The alignment of the title.\n */\n @Prop() public readonly alignment?: Alignment = 'start'\n\n /**\n * The name of the icon to render.\n *\n * Available names depend on the icon library being used.\n */\n @Prop() public readonly iconName?: string\n\n /**\n * The name of a registered icon library.\n */\n @Prop() public readonly iconLibrary: string = 'default'\n\n /**\n * Text to display for the kicker.\n */\n @Prop() public readonly kicker?: string\n\n @Prop() public readonly layer?: Layer = 'main'\n\n @Prop() public readonly level?: Level = 'section'\n\n /**\n * Text to display for the subtitle.\n */\n @Prop() public readonly subtitle?: string\n\n /**\n * HTML tag to use to render the title.\n */\n @Prop() public readonly tag?: Tag = 'h2'\n\n /**\n * The title's variant.\n */\n @Prop() public readonly variant?: TitleVariant\n\n @AttachInternals() private readonly internals!: ElementInternals\n\n get #hasSubtitle(): boolean {\n return this.subtitle !== undefined && this.subtitle !== ''\n }\n\n get #hasKicker(): boolean {\n return this.kicker !== undefined && this.kicker !== ''\n }\n\n public componentWillLoad(): void {\n this.internals.role = 'group'\n }\n\n public render() {\n const layer = `qds-${this.layer ?? 'main'}`\n const level = `qds-${this.level ?? 'section'}`\n const Tag = this.tag ?? 'h2'\n const hasIcon = this.iconName !== undefined && this.iconName !== ''\n\n return (\n <hgroup\n data-alignment={this.alignment ?? 'start'}\n data-variant={this.variant}\n class={{\n [layer]: true,\n [level]: true,\n 'qds-titles': true,\n 'qds-has-icon': hasIcon,\n 'qds-has-kicker': this.#hasKicker,\n 'qds-has-subtitle': this.#hasSubtitle,\n }}\n role=\"none\"\n >\n <Tag class=\"qds-title\" data-variant={this.variant}>\n <slot />\n </Tag>\n {this.#hasKicker && <p class=\"qds-kicker\">{this.kicker}</p>}\n {this.#hasSubtitle && <p class=\"qds-subtitle\">{this.subtitle}</p>}\n {hasIcon && (\n <qds-icon\n class=\"qds-icon\"\n name={this.iconName}\n library={this.iconLibrary}\n />\n )}\n </hgroup>\n )\n }\n}\n"],"version":3}