@quartzds/core 1.0.0-beta.8 → 1.0.0-beta.81

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 (387) hide show
  1. package/README.md +5 -5
  2. package/components/index.d.ts +50 -0
  3. package/components/index.js +49 -27
  4. package/components/index.js.map +1 -1
  5. package/components/p-028b9d2e.js +96 -0
  6. package/components/p-028b9d2e.js.map +1 -0
  7. package/components/p-355efdb1.js +83 -0
  8. package/components/p-355efdb1.js.map +1 -0
  9. package/components/p-4141d6ed.js +204 -0
  10. package/components/p-4141d6ed.js.map +1 -0
  11. package/components/p-698edde1.js +321 -0
  12. package/components/p-698edde1.js.map +1 -0
  13. package/components/p-7b04d43e.js +1556 -0
  14. package/components/p-7b04d43e.js.map +1 -0
  15. package/components/p-7f6e797a.js +108 -0
  16. package/components/p-7f6e797a.js.map +1 -0
  17. package/components/p-82461767.js +328 -0
  18. package/components/p-82461767.js.map +1 -0
  19. package/components/p-9df62f97.js +89 -0
  20. package/components/p-9df62f97.js.map +1 -0
  21. package/components/p-b82bac0a.js +121 -0
  22. package/components/p-b82bac0a.js.map +1 -0
  23. package/components/p-d107c90c.js +27 -0
  24. package/components/p-d107c90c.js.map +1 -0
  25. package/components/p-d279ae53.js +86 -0
  26. package/components/p-d279ae53.js.map +1 -0
  27. package/components/p-f5ba28ff.js +372 -0
  28. package/components/p-f5ba28ff.js.map +1 -0
  29. package/components/p-f85b490c.js +217 -0
  30. package/components/p-f85b490c.js.map +1 -0
  31. package/components/{floating-ui.dom.esm.js → p-fdd0abae.js} +468 -416
  32. package/components/p-fdd0abae.js.map +1 -0
  33. package/components/qds-badge-counter.d.ts +11 -0
  34. package/components/qds-badge-counter.js +13 -0
  35. package/components/qds-badge-counter.js.map +1 -0
  36. package/components/qds-badge-indicator.d.ts +11 -0
  37. package/components/qds-badge-indicator.js +13 -0
  38. package/components/qds-badge-indicator.js.map +1 -0
  39. package/components/qds-breadcrumb-item.d.ts +11 -0
  40. package/components/qds-breadcrumb-item.js +76 -0
  41. package/components/qds-breadcrumb-item.js.map +1 -0
  42. package/components/qds-button.d.ts +2 -2
  43. package/components/qds-button.js +3 -138
  44. package/components/qds-button.js.map +1 -1
  45. package/components/qds-checkbox.d.ts +2 -2
  46. package/components/qds-checkbox.js +3 -146
  47. package/components/qds-checkbox.js.map +1 -1
  48. package/components/qds-chip.d.ts +11 -0
  49. package/components/qds-chip.js +271 -0
  50. package/components/qds-chip.js.map +1 -0
  51. package/components/qds-dialog.d.ts +11 -0
  52. package/components/qds-dialog.js +121 -0
  53. package/components/qds-dialog.js.map +1 -0
  54. package/components/qds-divider.d.ts +11 -0
  55. package/components/qds-divider.js +13 -0
  56. package/components/qds-divider.js.map +1 -0
  57. package/components/qds-dropdown.d.ts +2 -2
  58. package/components/qds-dropdown.js +266 -239
  59. package/components/qds-dropdown.js.map +1 -1
  60. package/components/qds-form-message.d.ts +11 -0
  61. package/components/qds-form-message.js +102 -0
  62. package/components/qds-form-message.js.map +1 -0
  63. package/components/qds-icon.d.ts +2 -2
  64. package/components/qds-icon.js +3 -3
  65. package/components/qds-inline-link.d.ts +2 -2
  66. package/components/qds-inline-link.js +135 -73
  67. package/components/qds-inline-link.js.map +1 -1
  68. package/components/qds-input.d.ts +2 -2
  69. package/components/qds-input.js +426 -230
  70. package/components/qds-input.js.map +1 -1
  71. package/components/qds-label.d.ts +2 -2
  72. package/components/qds-label.js +3 -3
  73. package/components/qds-list-item.d.ts +11 -0
  74. package/components/qds-list-item.js +207 -0
  75. package/components/qds-list-item.js.map +1 -0
  76. package/components/qds-loader.d.ts +11 -0
  77. package/components/qds-loader.js +111 -0
  78. package/components/qds-loader.js.map +1 -0
  79. package/components/qds-nav-list-item.d.ts +11 -0
  80. package/components/qds-nav-list-item.js +146 -0
  81. package/components/qds-nav-list-item.js.map +1 -0
  82. package/components/qds-progress-bar.d.ts +11 -0
  83. package/components/qds-progress-bar.js +135 -0
  84. package/components/qds-progress-bar.js.map +1 -0
  85. package/components/qds-radio.d.ts +2 -2
  86. package/components/qds-radio.js +140 -93
  87. package/components/qds-radio.js.map +1 -1
  88. package/components/qds-select.d.ts +11 -0
  89. package/components/qds-select.js +273 -0
  90. package/components/qds-select.js.map +1 -0
  91. package/components/qds-standalone-link.d.ts +11 -0
  92. package/components/qds-standalone-link.js +167 -0
  93. package/components/qds-standalone-link.js.map +1 -0
  94. package/components/qds-switch.d.ts +2 -2
  95. package/components/qds-switch.js +172 -105
  96. package/components/qds-switch.js.map +1 -1
  97. package/components/qds-tab.d.ts +11 -0
  98. package/components/qds-tab.js +339 -0
  99. package/components/qds-tab.js.map +1 -0
  100. package/components/qds-tabbar.d.ts +11 -0
  101. package/components/qds-tabbar.js +384 -0
  102. package/components/qds-tabbar.js.map +1 -0
  103. package/components/qds-table-body.d.ts +11 -0
  104. package/components/qds-table-body.js +68 -0
  105. package/components/qds-table-body.js.map +1 -0
  106. package/components/qds-table-cell.d.ts +11 -0
  107. package/components/qds-table-cell.js +73 -0
  108. package/components/qds-table-cell.js.map +1 -0
  109. package/components/qds-table-head-cell.d.ts +11 -0
  110. package/components/qds-table-head-cell.js +77 -0
  111. package/components/qds-table-head-cell.js.map +1 -0
  112. package/components/qds-table-head.d.ts +11 -0
  113. package/components/qds-table-head.js +68 -0
  114. package/components/qds-table-head.js.map +1 -0
  115. package/components/qds-table-row.d.ts +11 -0
  116. package/components/qds-table-row.js +68 -0
  117. package/components/qds-table-row.js.map +1 -0
  118. package/components/qds-table.d.ts +11 -0
  119. package/components/qds-table.js +68 -0
  120. package/components/qds-table.js.map +1 -0
  121. package/components/qds-tag.d.ts +11 -0
  122. package/components/qds-tag.js +13 -0
  123. package/components/qds-tag.js.map +1 -0
  124. package/components/qds-textarea.d.ts +2 -2
  125. package/components/qds-textarea.js +276 -193
  126. package/components/qds-textarea.js.map +1 -1
  127. package/components/qds-title.d.ts +2 -2
  128. package/components/qds-title.js +3 -84
  129. package/components/qds-title.js.map +1 -1
  130. package/components/qds-tooltip.d.ts +2 -2
  131. package/components/qds-tooltip.js +3 -315
  132. package/components/qds-tooltip.js.map +1 -1
  133. package/dist/cjs/app-globals-c4cf08df.js +12 -0
  134. package/dist/cjs/app-globals-c4cf08df.js.map +1 -0
  135. package/dist/cjs/controls-ee3d2ec8.js +31 -0
  136. package/dist/cjs/controls-ee3d2ec8.js.map +1 -0
  137. package/dist/cjs/{floating-ui.dom.esm-71fa96af.js → floating-ui.dom.esm-19b2b933.js} +468 -416
  138. package/dist/cjs/floating-ui.dom.esm-19b2b933.js.map +1 -0
  139. package/dist/cjs/helpers-cdd65bd0.js +217 -0
  140. package/dist/cjs/helpers-cdd65bd0.js.map +1 -0
  141. package/dist/cjs/index-a9985af0.js +1699 -0
  142. package/dist/cjs/index-a9985af0.js.map +1 -0
  143. package/dist/cjs/index.cjs.js +27 -27
  144. package/dist/cjs/index.cjs.js.map +1 -1
  145. package/dist/cjs/library-57845012.js +117 -0
  146. package/dist/cjs/library-57845012.js.map +1 -0
  147. package/dist/cjs/loader.cjs.js +8 -6
  148. package/dist/cjs/loader.cjs.js.map +1 -1
  149. package/dist/cjs/qds-badge-counter_3.cjs.entry.js +445 -0
  150. package/dist/cjs/qds-badge-counter_3.cjs.entry.js.map +1 -0
  151. package/dist/cjs/qds-breadcrumb-item.cjs.entry.js +55 -0
  152. package/dist/cjs/qds-breadcrumb-item.cjs.entry.js.map +1 -0
  153. package/dist/cjs/qds-button.cjs.entry.js +234 -87
  154. package/dist/cjs/qds-button.cjs.entry.js.map +1 -1
  155. package/dist/cjs/qds-checkbox.cjs.entry.js +162 -99
  156. package/dist/cjs/qds-checkbox.cjs.entry.js.map +1 -1
  157. package/dist/cjs/qds-chip.cjs.entry.js +231 -0
  158. package/dist/cjs/qds-chip.cjs.entry.js.map +1 -0
  159. package/dist/cjs/qds-dialog.cjs.entry.js +103 -0
  160. package/dist/cjs/qds-dialog.cjs.entry.js.map +1 -0
  161. package/dist/cjs/qds-divider.cjs.entry.js +69 -0
  162. package/dist/cjs/qds-divider.cjs.entry.js.map +1 -0
  163. package/dist/cjs/qds-dropdown.cjs.entry.js +225 -206
  164. package/dist/cjs/qds-dropdown.cjs.entry.js.map +1 -1
  165. package/dist/cjs/qds-form-message.cjs.entry.js +76 -0
  166. package/dist/cjs/qds-form-message.cjs.entry.js.map +1 -0
  167. package/dist/cjs/qds-icon.cjs.entry.js +111 -90
  168. package/dist/cjs/qds-icon.cjs.entry.js.map +1 -1
  169. package/dist/cjs/qds-inline-link.cjs.entry.js +98 -46
  170. package/dist/cjs/qds-inline-link.cjs.entry.js.map +1 -1
  171. package/dist/cjs/qds-input.cjs.entry.js +337 -185
  172. package/dist/cjs/qds-input.cjs.entry.js.map +1 -1
  173. package/dist/cjs/qds-label.cjs.entry.js +58 -24
  174. package/dist/cjs/qds-label.cjs.entry.js.map +1 -1
  175. package/dist/cjs/qds-list-item.cjs.entry.js +158 -0
  176. package/dist/cjs/qds-list-item.cjs.entry.js.map +1 -0
  177. package/dist/cjs/qds-loader.cjs.entry.js +92 -0
  178. package/dist/cjs/qds-loader.cjs.entry.js.map +1 -0
  179. package/dist/cjs/qds-nav-list-item.cjs.entry.js +108 -0
  180. package/dist/cjs/qds-nav-list-item.cjs.entry.js.map +1 -0
  181. package/dist/cjs/qds-progress-bar.cjs.entry.js +117 -0
  182. package/dist/cjs/qds-progress-bar.cjs.entry.js.map +1 -0
  183. package/dist/cjs/qds-radio.cjs.entry.js +101 -57
  184. package/dist/cjs/qds-radio.cjs.entry.js.map +1 -1
  185. package/dist/cjs/qds-select.cjs.entry.js +233 -0
  186. package/dist/cjs/qds-select.cjs.entry.js.map +1 -0
  187. package/dist/cjs/qds-standalone-link.cjs.entry.js +127 -0
  188. package/dist/cjs/qds-standalone-link.cjs.entry.js.map +1 -0
  189. package/dist/cjs/qds-switch.cjs.entry.js +143 -64
  190. package/dist/cjs/qds-switch.cjs.entry.js.map +1 -1
  191. package/dist/cjs/qds-tab.cjs.entry.js +260 -0
  192. package/dist/cjs/qds-tab.cjs.entry.js.map +1 -0
  193. package/dist/cjs/qds-tabbar.cjs.entry.js +326 -0
  194. package/dist/cjs/qds-tabbar.cjs.entry.js.map +1 -0
  195. package/dist/cjs/qds-table-body.cjs.entry.js +54 -0
  196. package/dist/cjs/qds-table-body.cjs.entry.js.map +1 -0
  197. package/dist/cjs/qds-table-cell.cjs.entry.js +56 -0
  198. package/dist/cjs/qds-table-cell.cjs.entry.js.map +1 -0
  199. package/dist/cjs/qds-table-head-cell.cjs.entry.js +58 -0
  200. package/dist/cjs/qds-table-head-cell.cjs.entry.js.map +1 -0
  201. package/dist/cjs/qds-table-head.cjs.entry.js +54 -0
  202. package/dist/cjs/qds-table-head.cjs.entry.js.map +1 -0
  203. package/dist/cjs/qds-table-row.cjs.entry.js +54 -0
  204. package/dist/cjs/qds-table-row.cjs.entry.js.map +1 -0
  205. package/dist/cjs/qds-table.cjs.entry.js +54 -0
  206. package/dist/cjs/qds-table.cjs.entry.js.map +1 -0
  207. package/dist/cjs/qds-tag_2.cjs.entry.js +163 -0
  208. package/dist/cjs/qds-tag_2.cjs.entry.js.map +1 -0
  209. package/dist/cjs/qds-textarea.cjs.entry.js +229 -153
  210. package/dist/cjs/qds-textarea.cjs.entry.js.map +1 -1
  211. package/dist/cjs/qds.cjs.js +15 -13
  212. package/dist/cjs/qds.cjs.js.map +1 -1
  213. package/dist/custom-elements.json +8403 -1931
  214. package/dist/docs.d.ts +336 -240
  215. package/dist/docs.json +8819 -2762
  216. package/dist/esm/app-globals-8ced3a41.js +10 -0
  217. package/dist/esm/app-globals-8ced3a41.js.map +1 -0
  218. package/dist/esm/controls-a4768aaf.js +27 -0
  219. package/dist/esm/controls-a4768aaf.js.map +1 -0
  220. package/dist/esm/{floating-ui.dom.esm-f96ac766.js → floating-ui.dom.esm-61986f35.js} +468 -416
  221. package/dist/esm/floating-ui.dom.esm-61986f35.js.map +1 -0
  222. package/dist/esm/helpers-4eb4fa44.js +204 -0
  223. package/dist/esm/helpers-4eb4fa44.js.map +1 -0
  224. package/dist/esm/index-5291e8ff.js +1668 -0
  225. package/dist/esm/index-5291e8ff.js.map +1 -0
  226. package/dist/esm/index.js +27 -27
  227. package/dist/esm/index.js.map +1 -1
  228. package/dist/esm/library-9edbe354.js +113 -0
  229. package/dist/esm/library-9edbe354.js.map +1 -0
  230. package/dist/esm/loader.js +9 -7
  231. package/dist/esm/loader.js.map +1 -1
  232. package/dist/esm/qds-badge-counter_3.entry.js +439 -0
  233. package/dist/esm/qds-badge-counter_3.entry.js.map +1 -0
  234. package/dist/esm/qds-breadcrumb-item.entry.js +51 -0
  235. package/dist/esm/qds-breadcrumb-item.entry.js.map +1 -0
  236. package/dist/esm/qds-button.entry.js +234 -87
  237. package/dist/esm/qds-button.entry.js.map +1 -1
  238. package/dist/esm/qds-checkbox.entry.js +162 -99
  239. package/dist/esm/qds-checkbox.entry.js.map +1 -1
  240. package/dist/esm/qds-chip.entry.js +227 -0
  241. package/dist/esm/qds-chip.entry.js.map +1 -0
  242. package/dist/esm/qds-dialog.entry.js +99 -0
  243. package/dist/esm/qds-dialog.entry.js.map +1 -0
  244. package/dist/esm/qds-divider.entry.js +65 -0
  245. package/dist/esm/qds-divider.entry.js.map +1 -0
  246. package/dist/esm/qds-dropdown.entry.js +225 -206
  247. package/dist/esm/qds-dropdown.entry.js.map +1 -1
  248. package/dist/esm/qds-form-message.entry.js +72 -0
  249. package/dist/esm/qds-form-message.entry.js.map +1 -0
  250. package/dist/esm/qds-icon.entry.js +111 -90
  251. package/dist/esm/qds-icon.entry.js.map +1 -1
  252. package/dist/esm/qds-inline-link.entry.js +98 -46
  253. package/dist/esm/qds-inline-link.entry.js.map +1 -1
  254. package/dist/esm/qds-input.entry.js +337 -185
  255. package/dist/esm/qds-input.entry.js.map +1 -1
  256. package/dist/esm/qds-label.entry.js +58 -24
  257. package/dist/esm/qds-label.entry.js.map +1 -1
  258. package/dist/esm/qds-list-item.entry.js +154 -0
  259. package/dist/esm/qds-list-item.entry.js.map +1 -0
  260. package/dist/esm/qds-loader.entry.js +88 -0
  261. package/dist/esm/qds-loader.entry.js.map +1 -0
  262. package/dist/esm/qds-nav-list-item.entry.js +104 -0
  263. package/dist/esm/qds-nav-list-item.entry.js.map +1 -0
  264. package/dist/esm/qds-progress-bar.entry.js +113 -0
  265. package/dist/esm/qds-progress-bar.entry.js.map +1 -0
  266. package/dist/esm/qds-radio.entry.js +101 -57
  267. package/dist/esm/qds-radio.entry.js.map +1 -1
  268. package/dist/esm/qds-select.entry.js +229 -0
  269. package/dist/esm/qds-select.entry.js.map +1 -0
  270. package/dist/esm/qds-standalone-link.entry.js +123 -0
  271. package/dist/esm/qds-standalone-link.entry.js.map +1 -0
  272. package/dist/esm/qds-switch.entry.js +143 -64
  273. package/dist/esm/qds-switch.entry.js.map +1 -1
  274. package/dist/esm/qds-tab.entry.js +256 -0
  275. package/dist/esm/qds-tab.entry.js.map +1 -0
  276. package/dist/esm/qds-tabbar.entry.js +322 -0
  277. package/dist/esm/qds-tabbar.entry.js.map +1 -0
  278. package/dist/esm/qds-table-body.entry.js +50 -0
  279. package/dist/esm/qds-table-body.entry.js.map +1 -0
  280. package/dist/esm/qds-table-cell.entry.js +52 -0
  281. package/dist/esm/qds-table-cell.entry.js.map +1 -0
  282. package/dist/esm/qds-table-head-cell.entry.js +54 -0
  283. package/dist/esm/qds-table-head-cell.entry.js.map +1 -0
  284. package/dist/esm/qds-table-head.entry.js +50 -0
  285. package/dist/esm/qds-table-head.entry.js.map +1 -0
  286. package/dist/esm/qds-table-row.entry.js +50 -0
  287. package/dist/esm/qds-table-row.entry.js.map +1 -0
  288. package/dist/esm/qds-table.entry.js +50 -0
  289. package/dist/esm/qds-table.entry.js.map +1 -0
  290. package/dist/esm/qds-tag_2.entry.js +158 -0
  291. package/dist/esm/qds-tag_2.entry.js.map +1 -0
  292. package/dist/esm/qds-textarea.entry.js +229 -153
  293. package/dist/esm/qds-textarea.entry.js.map +1 -1
  294. package/dist/esm/qds.js +16 -14
  295. package/dist/esm/qds.js.map +1 -1
  296. package/dist/types/components/badge-counter/badge-counter.d.ts +40 -0
  297. package/dist/types/components/badge-indicator/badge-indicator.d.ts +36 -0
  298. package/dist/types/components/breadcrumb-item/breadcrumb-item.d.ts +156 -0
  299. package/dist/types/components/button/button.d.ts +232 -194
  300. package/dist/types/components/checkbox/checkbox.d.ts +136 -124
  301. package/dist/types/components/chip/chip.d.ts +114 -0
  302. package/dist/types/components/controls.d.ts +4 -1
  303. package/dist/types/components/dialog/dialog.d.ts +35 -0
  304. package/dist/types/components/divider/divider.d.ts +26 -0
  305. package/dist/types/components/dropdown/dropdown.d.ts +107 -125
  306. package/dist/types/components/form-message/form-message.d.ts +42 -0
  307. package/dist/types/components/icon/icon.d.ts +24 -24
  308. package/dist/types/components/icon/library.d.ts +3 -3
  309. package/dist/types/components/icon/request.d.ts +5 -9
  310. package/dist/types/components/inline-link/inline-link.d.ts +208 -191
  311. package/dist/types/components/input/input.d.ts +444 -368
  312. package/dist/types/components/label/label.d.ts +24 -24
  313. package/dist/types/components/list-item/list-item.d.ts +100 -0
  314. package/dist/types/components/loader/loader.d.ts +27 -0
  315. package/dist/types/components/nav-list-item/nav-list-item.d.ts +67 -0
  316. package/dist/types/components/progress-bar/progress-bar.d.ts +60 -0
  317. package/dist/types/components/radio/radio.d.ts +90 -95
  318. package/dist/types/components/select/select.d.ts +210 -0
  319. package/dist/types/components/shared.d.ts +6 -0
  320. package/dist/types/components/standalone-link/standalone-link.d.ts +233 -0
  321. package/dist/types/components/switch/switch.d.ts +120 -107
  322. package/dist/types/components/tab/tab.d.ts +158 -0
  323. package/dist/types/components/tabbar/tabbar.d.ts +46 -0
  324. package/dist/types/components/table/table.d.ts +15 -0
  325. package/dist/types/components/table-body/table-body.d.ts +15 -0
  326. package/dist/types/components/table-cell/table-cell.d.ts +32 -0
  327. package/dist/types/components/table-head/table-head.d.ts +15 -0
  328. package/dist/types/components/table-head-cell/table-head-cell.d.ts +56 -0
  329. package/dist/types/components/table-row/table-row.d.ts +15 -0
  330. package/dist/types/components/tag/tag.d.ts +46 -0
  331. package/dist/types/components/textarea/textarea.d.ts +313 -300
  332. package/dist/types/components/title/title.d.ts +39 -32
  333. package/dist/types/components/tooltip/tooltip.d.ts +121 -137
  334. package/dist/types/components.d.ts +3320 -783
  335. package/dist/types/helpers.d.ts +15 -16
  336. package/dist/types/index.d.ts +1 -0
  337. package/dist/types/interface-overrides.d.ts +211 -0
  338. package/dist/types/qds-test.d.ts +22 -11
  339. package/dist/types/stencil-public-runtime.d.ts +49 -15
  340. package/dist/types/utils.d.ts +4 -4
  341. package/dist/vscode.html-custom-data.json +1580 -167
  342. package/hydrate/index.d.ts +36 -18
  343. package/hydrate/index.js +24050 -9160
  344. package/hydrate/index.mjs +24769 -0
  345. package/hydrate/package.json +7 -1
  346. package/loader/cdn.js +3 -4
  347. package/loader/index.cjs.js +3 -4
  348. package/loader/index.d.ts +4 -1
  349. package/loader/index.es2017.js +3 -4
  350. package/loader/index.js +3 -4
  351. package/package.json +53 -89
  352. package/styles/core.css +137 -14
  353. package/components/floating-ui.dom.esm.js.map +0 -1
  354. package/components/helpers.js +0 -175
  355. package/components/helpers.js.map +0 -1
  356. package/components/icon.js +0 -175
  357. package/components/icon.js.map +0 -1
  358. package/components/label.js +0 -55
  359. package/components/label.js.map +0 -1
  360. package/dist/cjs/floating-ui.dom.esm-71fa96af.js.map +0 -1
  361. package/dist/cjs/helpers-452256e8.js +0 -185
  362. package/dist/cjs/helpers-452256e8.js.map +0 -1
  363. package/dist/cjs/index-d181f952.js +0 -2039
  364. package/dist/cjs/index-d181f952.js.map +0 -1
  365. package/dist/cjs/library-0a619eeb.js +0 -62
  366. package/dist/cjs/library-0a619eeb.js.map +0 -1
  367. package/dist/cjs/qds-title.cjs.entry.js +0 -66
  368. package/dist/cjs/qds-title.cjs.entry.js.map +0 -1
  369. package/dist/cjs/qds-tooltip.cjs.entry.js +0 -284
  370. package/dist/cjs/qds-tooltip.cjs.entry.js.map +0 -1
  371. package/dist/esm/floating-ui.dom.esm-f96ac766.js.map +0 -1
  372. package/dist/esm/helpers-76b84f45.js +0 -175
  373. package/dist/esm/helpers-76b84f45.js.map +0 -1
  374. package/dist/esm/index-d7183092.js +0 -2009
  375. package/dist/esm/index-d7183092.js.map +0 -1
  376. package/dist/esm/library-021aca11.js +0 -58
  377. package/dist/esm/library-021aca11.js.map +0 -1
  378. package/dist/esm/polyfills/core-js.js +0 -11
  379. package/dist/esm/polyfills/dom.js +0 -79
  380. package/dist/esm/polyfills/es5-html-element.js +0 -1
  381. package/dist/esm/polyfills/index.js +0 -34
  382. package/dist/esm/polyfills/system.js +0 -6
  383. package/dist/esm/qds-title.entry.js +0 -62
  384. package/dist/esm/qds-title.entry.js.map +0 -1
  385. package/dist/esm/qds-tooltip.entry.js +0 -280
  386. package/dist/esm/qds-tooltip.entry.js.map +0 -1
  387. package/dist/types/components/create-story.d.ts +0 -5
@@ -0,0 +1,445 @@
1
+ /*!
2
+ * SPDX-FileCopyrightText: © 2025 Schneider Electric
3
+ *
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ 'use strict';
7
+
8
+ Object.defineProperty(exports, '__esModule', { value: true });
9
+
10
+ const index = require('./index-a9985af0.js');
11
+ const floatingUi_dom_esm = require('./floating-ui.dom.esm-19b2b933.js');
12
+ const helpers = require('./helpers-cdd65bd0.js');
13
+
14
+ const badgeCounterCss = ":host([hidden]){display:none!important}:host{display:inline-block}.qds-badge-counter{align-items:center;background-color:var(--qds-theme-feedback-message-neutral);border-radius:var(--qds-control-toggle-indicator-rounded-border-radius);color:var(--qds-theme-feedback-message-neutral-contrast);display:flex;font:var(--qds-badge-standard-text);height:var(--qds-badge-counter-standard-height);justify-content:center;margin:0;padding-inline:var(--qds-badge-standard-padding-horizontal);text-align:center}.qds-stroke-ring{border:var(--qds-badge-border-width) solid var(--qds-theme-feedback-message-neutral-contrast)}.qds-sr-only{clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}[data-importance=emphasized]{background-color:var(--qds-theme-signature-color-contrast);color:var(--qds-theme-signature-color-default)}.qds-stroke-ring[data-importance=emphasized]{border-color:var(--qds-theme-signature-color-default)}[data-importance=subdued]{background-color:var(--qds-theme-feedback-message-informational);color:var(--qds-theme-feedback-message-informational-contrast)}.qds-stroke-ring[data-importance=subdued]{border-color:var(--qds-theme-feedback-message-informational-contrast)}[data-importance=destructive]{background-color:var(--qds-theme-feedback-message-critical-contrast);color:var(--qds-theme-feedback-message-critical)}.qds-stroke-ring[data-importance=destructive]{border-color:var(--qds-theme-feedback-message-critical)}[data-importance=subdued-destructive]{background-color:var(--qds-theme-feedback-message-critical);color:var(--qds-theme-feedback-message-critical-contrast)}.qds-stroke-ring[data-importance=subdued-destructive]{border-color:var(--qds-theme-feedback-message-critical-contrast)}[data-size=small]{font:var(--qds-badge-small-text);height:var(--qds-badge-counter-small-height);padding-inline:var(--qds-badge-small-padding-horizontal)}[data-size=large]{font:var(--qds-badge-large-text);height:var(--qds-badge-counter-large-height);padding-inline:var(--qds-badge-large-padding-horizontal)}[data-size=hero]{font:var(--qds-badge-hero-text);height:var(--qds-badge-counter-hero-height);padding-inline:var(--qds-badge-hero-padding-horizontal)}";
15
+ const QdsBadgeCounterStyle0 = badgeCounterCss;
16
+
17
+ // SPDX-FileCopyrightText: © 2024 Schneider Electric
18
+ //
19
+ // SPDX-License-Identifier: Apache-2.0
20
+ var __classPrivateFieldGet$2 = (undefined && undefined.__classPrivateFieldGet) || function (receiver, state, kind, f) {
21
+ if (kind === "a" && !f)
22
+ throw new TypeError("Private accessor was defined without a getter");
23
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
24
+ throw new TypeError("Cannot read private member from an object whose class did not declare it");
25
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
26
+ };
27
+ var _BadgeCounter_instances, _BadgeCounter_computedValue_get, _BadgeCounter_computedImportance_get, _BadgeCounter_computedSize_get;
28
+ const BadgeCounter = class {
29
+ constructor(hostRef) {
30
+ index.registerInstance(this, hostRef);
31
+ _BadgeCounter_instances.add(this);
32
+ this.description = undefined;
33
+ this.importance = 'standard';
34
+ this.size = 'standard';
35
+ this.strokeRing = false;
36
+ this.value = undefined;
37
+ }
38
+ render() {
39
+ return (index.h("span", { key: 'c10f61ebe0ba000dad466c46e9565a5422cf8207', class: {
40
+ 'qds-badge-counter': true,
41
+ 'qds-stroke-ring': this.strokeRing,
42
+ }, "data-importance": __classPrivateFieldGet$2(this, _BadgeCounter_instances, "a", _BadgeCounter_computedImportance_get), "data-size": __classPrivateFieldGet$2(this, _BadgeCounter_instances, "a", _BadgeCounter_computedSize_get) }, __classPrivateFieldGet$2(this, _BadgeCounter_instances, "a", _BadgeCounter_computedValue_get), index.h("span", { key: '62cf8cdf190ef3bb4b36fce245871d81cd2b7aab', class: "qds-sr-only" }, this.description)));
43
+ }
44
+ };
45
+ _BadgeCounter_instances = new WeakSet(), _BadgeCounter_computedValue_get = function _BadgeCounter_computedValue_get() {
46
+ const value = typeof this.value === 'string'
47
+ ? Number.parseInt(this.value, 10)
48
+ : // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
49
+ (this.value ?? Number.NaN);
50
+ if (Number.isNaN(value) || value < 0)
51
+ return '';
52
+ return value < 100 ? value.toString() : '99+';
53
+ }, _BadgeCounter_computedImportance_get = function _BadgeCounter_computedImportance_get() {
54
+ switch (this.importance) {
55
+ case 'subdued':
56
+ case 'destructive':
57
+ case 'subdued-destructive':
58
+ case 'emphasized': {
59
+ return this.importance;
60
+ }
61
+ default: {
62
+ return 'standard';
63
+ }
64
+ }
65
+ }, _BadgeCounter_computedSize_get = function _BadgeCounter_computedSize_get() {
66
+ switch (this.size) {
67
+ case 'hero':
68
+ case 'large':
69
+ case 'small': {
70
+ return this.size;
71
+ }
72
+ default: {
73
+ return 'standard';
74
+ }
75
+ }
76
+ };
77
+ BadgeCounter.style = QdsBadgeCounterStyle0;
78
+
79
+ const badgeIndicatorCss = ":host([hidden]){display:none!important}:host{display:inline-block}.qds-badge-indicator{align-items:center;background-color:var(--qds-theme-feedback-message-neutral);border-radius:var(--qds-control-toggle-indicator-rounded-border-radius);display:flex;height:var(--qds-badge-indicator-standard-height);justify-content:center;width:var(--qds-badge-indicator-standard-height)}.qds-stroke-ring{border:var(--qds-badge-border-width) solid var(--qds-theme-feedback-message-neutral-contrast)}.qds-sr-only{clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}[data-status=error]{background-color:var(--qds-theme-feedback-message-critical)}.qds-stroke-ring[data-status=error]{border-color:var(--qds-theme-feedback-message-neutral-contrast)}[data-status=info]{background-color:var(--qds-theme-feedback-message-informational)}.qds-stroke-ring[data-status=info]{border-color:var(--qds-theme-feedback-message-neutral-contrast)}[data-status=neutral]{background-color:var(--qds-theme-feedback-availability-unavailable)}.qds-stroke-ring[data-status=neutral]{border-color:var(--qds-theme-feedback-message-neutral-contrast)}[data-status=success]{background-color:var(--qds-theme-signature-color-default)}.qds-stroke-ring[data-status=success]{border-color:var(--qds-theme-feedback-message-neutral-contrast)}[data-status=warning]{background-color:var(--qds-theme-feedback-message-important)}.qds-stroke-ring[data-status=warning]{border-color:var(--qds-theme-feedback-message-neutral-contrast)}[data-size=small]{height:var(--qds-badge-indicator-small-height);width:var(--qds-badge-indicator-small-height)}[data-size=standard]{height:var(--qds-badge-indicator-standard-height);width:var(--qds-badge-indicator-standard-height)}[data-size=large]{height:var(--qds-badge-indicator-large-height);width:var(--qds-badge-indicator-large-height)}[data-size=hero]{height:var(--qds-badge-indicator-hero-height);width:var(--qds-badge-indicator-hero-height)}";
80
+ const QdsBadgeIndicatorStyle0 = badgeIndicatorCss;
81
+
82
+ // SPDX-FileCopyrightText: © 2024 Schneider Electric
83
+ //
84
+ // SPDX-License-Identifier: Apache-2.0
85
+ var __classPrivateFieldGet$1 = (undefined && undefined.__classPrivateFieldGet) || function (receiver, state, kind, f) {
86
+ if (kind === "a" && !f)
87
+ throw new TypeError("Private accessor was defined without a getter");
88
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
89
+ throw new TypeError("Cannot read private member from an object whose class did not declare it");
90
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
91
+ };
92
+ var _BadgeIndicator_instances, _BadgeIndicator_computedStatus_get, _BadgeIndicator_computedSize_get;
93
+ const BadgeIndicator = class {
94
+ constructor(hostRef) {
95
+ index.registerInstance(this, hostRef);
96
+ _BadgeIndicator_instances.add(this);
97
+ this.description = undefined;
98
+ this.size = 'standard';
99
+ this.status = 'neutral';
100
+ this.strokeRing = false;
101
+ }
102
+ render() {
103
+ return (index.h("div", { key: 'fbbd2e4f60e31f9d339146c76c53aa1eda61c7a3', class: {
104
+ 'qds-badge-indicator': true,
105
+ 'qds-stroke-ring': this.strokeRing,
106
+ }, "data-size": __classPrivateFieldGet$1(this, _BadgeIndicator_instances, "a", _BadgeIndicator_computedSize_get), "data-status": __classPrivateFieldGet$1(this, _BadgeIndicator_instances, "a", _BadgeIndicator_computedStatus_get) }, index.h("span", { key: '6d6ffc1d4d2bc42af510fb01756589da89c02675', class: "qds-sr-only" }, this.description)));
107
+ }
108
+ };
109
+ _BadgeIndicator_instances = new WeakSet(), _BadgeIndicator_computedStatus_get = function _BadgeIndicator_computedStatus_get() {
110
+ switch (this.status) {
111
+ case 'error':
112
+ case 'info':
113
+ case 'success':
114
+ case 'warning': {
115
+ return this.status;
116
+ }
117
+ default: {
118
+ return 'neutral';
119
+ }
120
+ }
121
+ }, _BadgeIndicator_computedSize_get = function _BadgeIndicator_computedSize_get() {
122
+ switch (this.size) {
123
+ case 'hero':
124
+ case 'large':
125
+ case 'small': {
126
+ return this.size;
127
+ }
128
+ default: {
129
+ return 'standard';
130
+ }
131
+ }
132
+ };
133
+ BadgeIndicator.style = QdsBadgeIndicatorStyle0;
134
+
135
+ const tooltipCss = ":host([hidden]){display:none!important}:host{align-items:flex-start;background-color:var(--qds-theme-accessory-background);border-radius:var(--qds-accessory-border-radius);box-shadow:var(--qds-theme-accessory-elevation);box-sizing:border-box;color:var(--qds-theme-text-standard);display:flex;flex-direction:column;gap:var(--qds-accessory-gap-children-unrelated);left:0;padding:var(--qds-accessory-padding);top:0}:host([aria-hidden=true]){display:none}:host:before{content:\"\";height:100%;left:0;position:absolute;top:0;width:100%}::slotted(blockquote),::slotted(button),::slotted(dd),::slotted(dl),::slotted(fieldset),::slotted(figure),::slotted(h1),::slotted(h2),::slotted(h3),::slotted(h4),::slotted(h5),::slotted(h6),::slotted(hr),::slotted(input),::slotted(menu),::slotted(ol),::slotted(p),::slotted(pre),::slotted(select),::slotted(textarea),::slotted(ul){margin:0}:host([data-side=bottom]):before,:host([data-side=top]):before{height:calc(var(--qds-accessory-gap-floating, 0px) + var(--qds-signature-triangle-pointer-size-height, 0px));top:100%}:host([data-side=bottom]):before{top:calc((var(--qds-accessory-gap-floating, 0px) + var(--qds-signature-triangle-pointer-size-height, 0px))*-1)}:host([data-side=left]):before,:host([data-side=right]):before{left:100%;width:calc(var(--qds-accessory-gap-floating, 0px) + var(--qds-signature-triangle-pointer-size-height, 0px))}:host([data-side=right]):before{left:calc((var(--qds-accessory-gap-floating, 0px) + var(--qds-signature-triangle-pointer-size-height, 0px))*-1)}.qds-arrow-container{height:var(--qds-signature-triangle-pointer-size-width);position:absolute;width:var(--qds-signature-triangle-pointer-size-width)}.qds-arrow-container[data-side=bottom]{bottom:100%;transform:rotate(180deg)}.qds-arrow-container[data-side=left]{left:100%;transform:rotate(-90deg)}.qds-arrow-container[data-side=right]{right:100%;transform:rotate(90deg)}.qds-arrow-container[data-side=top]{top:100%}.qds-arrow{fill:var(--qds-theme-accessory-background)}";
136
+ const QdsTooltipStyle0 = tooltipCss;
137
+
138
+ // SPDX-FileCopyrightText: © 2024 Schneider Electric
139
+ //
140
+ // SPDX-License-Identifier: Apache-2.0
141
+ var __classPrivateFieldSet = (undefined && undefined.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
142
+ if (kind === "m")
143
+ throw new TypeError("Private method is not writable");
144
+ if (kind === "a" && !f)
145
+ throw new TypeError("Private accessor was defined without a setter");
146
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
147
+ throw new TypeError("Cannot write private member to an object whose class did not declare it");
148
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
149
+ };
150
+ var __classPrivateFieldGet = (undefined && undefined.__classPrivateFieldGet) || function (receiver, state, kind, f) {
151
+ if (kind === "a" && !f)
152
+ throw new TypeError("Private accessor was defined without a getter");
153
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
154
+ throw new TypeError("Cannot read private member from an object whose class did not declare it");
155
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
156
+ };
157
+ var _Tooltip_instances, _Tooltip_arrowContainerElement, _Tooltip_cleanup, _Tooltip_clickedTooltip, _Tooltip_isTouchDevice, _Tooltip_listeners, _Tooltip_referenceElement, _Tooltip_arrowContainerRef, _Tooltip_boundTooltipPointerdown, _Tooltip_handleFocus, _Tooltip_boundFocus, _Tooltip_handlePointerenter, _Tooltip_boundPointerenter, _Tooltip_handlePointerleave, _Tooltip_boundPointerleave, _Tooltip_handleFocusOut, _Tooltip_boundFocusout, _Tooltip_handlePointerdown, _Tooltip_boundPointerdown, _Tooltip_handleReferenceClick, _Tooltip_boundReferenceClick, _Tooltip_on, _Tooltip_removeEventListeners;
158
+ let autoIncrementingId = 1;
159
+ const Tooltip = class {
160
+ constructor(hostRef) {
161
+ index.registerInstance(this, hostRef);
162
+ this.closeEmitter = index.createEvent(this, "qdsClose", 2);
163
+ _Tooltip_instances.add(this);
164
+ _Tooltip_arrowContainerElement.set(this, void 0);
165
+ _Tooltip_cleanup.set(this, void 0);
166
+ _Tooltip_clickedTooltip.set(this, false);
167
+ _Tooltip_isTouchDevice.set(this, false);
168
+ _Tooltip_listeners.set(this, []);
169
+ _Tooltip_referenceElement.set(this, void 0);
170
+ _Tooltip_arrowContainerRef.set(this, (svg) => {
171
+ __classPrivateFieldSet(this, _Tooltip_arrowContainerElement, svg, "f");
172
+ });
173
+ _Tooltip_boundTooltipPointerdown.set(this, () => {
174
+ __classPrivateFieldSet(this, _Tooltip_clickedTooltip, true, "f");
175
+ });
176
+ _Tooltip_boundFocus.set(this, () => {
177
+ helpers.ignorePromise(__classPrivateFieldGet(this, _Tooltip_instances, "m", _Tooltip_handleFocus).call(this));
178
+ });
179
+ _Tooltip_boundPointerenter.set(this, () => {
180
+ helpers.ignorePromise(__classPrivateFieldGet(this, _Tooltip_instances, "m", _Tooltip_handlePointerenter).call(this));
181
+ });
182
+ _Tooltip_boundPointerleave.set(this, (event) => {
183
+ helpers.ignorePromise(__classPrivateFieldGet(this, _Tooltip_instances, "m", _Tooltip_handlePointerleave).call(this, event));
184
+ });
185
+ _Tooltip_boundFocusout.set(this, (event) => {
186
+ helpers.ignorePromise(__classPrivateFieldGet(this, _Tooltip_instances, "m", _Tooltip_handleFocusOut).call(this, event));
187
+ });
188
+ _Tooltip_boundPointerdown.set(this, (event) => {
189
+ helpers.ignorePromise(__classPrivateFieldGet(this, _Tooltip_instances, "m", _Tooltip_handlePointerdown).call(this, event));
190
+ });
191
+ _Tooltip_boundReferenceClick.set(this, () => {
192
+ helpers.ignorePromise(__classPrivateFieldGet(this, _Tooltip_instances, "m", _Tooltip_handleReferenceClick).call(this));
193
+ });
194
+ this.autoUpdateOptions = undefined;
195
+ this.disabled = false;
196
+ this.flipOptions = undefined;
197
+ this.noFlip = false;
198
+ this.noShift = false;
199
+ this.offsetOptions = undefined;
200
+ this.placement = 'top';
201
+ this.shiftOptions = undefined;
202
+ this.strategy = undefined;
203
+ this.target = undefined;
204
+ this.trigger = 'pointerenter focus';
205
+ this.hostPosition = undefined;
206
+ this.hostTransform = undefined;
207
+ this.open = false;
208
+ this.middleware = undefined;
209
+ this.side = 'top';
210
+ this.aStyles = undefined;
211
+ this.aShape = '';
212
+ this.aViewbox = '0 0 0 0';
213
+ this.aHeight = 0;
214
+ this.aGap = 0;
215
+ }
216
+ /**
217
+ * Show the tooltip.
218
+ */
219
+ async show() {
220
+ if (this.open)
221
+ return;
222
+ this.open = true;
223
+ this.host.removeAttribute('aria-hidden');
224
+ this.startAutoUpdate();
225
+ }
226
+ /**
227
+ * Close the tooltip.
228
+ */
229
+ async close() {
230
+ if (!this.open)
231
+ return;
232
+ this.closeEmitter.emit();
233
+ this.open = false;
234
+ __classPrivateFieldSet(this, _Tooltip_clickedTooltip, false, "f");
235
+ this.host.setAttribute('aria-hidden', 'true');
236
+ if (__classPrivateFieldGet(this, _Tooltip_cleanup, "f"))
237
+ __classPrivateFieldGet(this, _Tooltip_cleanup, "f").call(this);
238
+ }
239
+ /**
240
+ * Update the tooltip's arrow.
241
+ *
242
+ * This method should typically be called when the Quartz platform was
243
+ * changed.
244
+ */
245
+ async updateArrow() {
246
+ const aWidth = helpers.propertyToPx(this.host, `--qds-signature-triangle-pointer-size-width`) ??
247
+ 0;
248
+ const aTipRadius = helpers.propertyToPx(this.host, `--qds-signature-triangle-pointer-tip-radius`) ??
249
+ 0;
250
+ const svgX = (aWidth / 2) * (aTipRadius / -8 + 1);
251
+ const svgY = ((this.aHeight / 2) * aTipRadius) / 4;
252
+ this.aHeight =
253
+ helpers.propertyToPx(this.host, `--qds-signature-triangle-pointer-size-height`) ??
254
+ 0;
255
+ this.aViewbox = `0 0 ${aWidth} ${Math.max(this.aHeight, aWidth)}`;
256
+ this.aGap = helpers.propertyToPx(this.host, '--qds-accessory-gap-floating') ?? 0;
257
+ this.aShape =
258
+ 'M0,0' +
259
+ ` H${aWidth}` +
260
+ ` L${aWidth - svgX},${this.aHeight - svgY}` +
261
+ ` Q${aWidth / 2},${this.aHeight} ${svgX},${this.aHeight - svgY}` +
262
+ ' Z';
263
+ }
264
+ async updateMiddleware() {
265
+ helpers.invariant(__classPrivateFieldGet(this, _Tooltip_arrowContainerElement, "f"));
266
+ this.middleware = [
267
+ floatingUi_dom_esm.offset({
268
+ ...this.offsetOptions,
269
+ mainAxis: this.aGap + this.aHeight,
270
+ }),
271
+ !this.noFlip &&
272
+ floatingUi_dom_esm.flip({
273
+ crossAxis: this.noShift,
274
+ ...this.flipOptions,
275
+ }),
276
+ !this.noShift &&
277
+ floatingUi_dom_esm.shift({
278
+ limiter: floatingUi_dom_esm.limitShift(),
279
+ ...this.shiftOptions,
280
+ }),
281
+ floatingUi_dom_esm.arrow({
282
+ element: __classPrivateFieldGet(this, _Tooltip_arrowContainerElement, "f"),
283
+ }),
284
+ ].filter((middleware) => middleware !== false);
285
+ }
286
+ async updateReferenceElement() {
287
+ var _a;
288
+ this.disconnectedCallback();
289
+ __classPrivateFieldSet(this, _Tooltip_referenceElement, helpers.resolveTarget(this.target), "f");
290
+ if (!(__classPrivateFieldGet(this, _Tooltip_referenceElement, "f") instanceof globalThis.Element))
291
+ return;
292
+ this.updateEventListeners();
293
+ (_a = this.host).id || (_a.id = `qds-tooltip-${autoIncrementingId}`);
294
+ __classPrivateFieldGet(this, _Tooltip_referenceElement, "f").setAttribute('aria-describedby', this.host.id);
295
+ }
296
+ updateEventListeners() {
297
+ if (!(__classPrivateFieldGet(this, _Tooltip_referenceElement, "f") instanceof globalThis.Element))
298
+ return;
299
+ const triggers = Array.isArray(this.trigger)
300
+ ? this.trigger
301
+ : (this.trigger?.split(' ') ??
302
+ []);
303
+ __classPrivateFieldGet(this, _Tooltip_instances, "m", _Tooltip_removeEventListeners).call(this);
304
+ if (__classPrivateFieldGet(this, _Tooltip_isTouchDevice, "f"))
305
+ __classPrivateFieldGet(this, _Tooltip_instances, "m", _Tooltip_on).call(this, __classPrivateFieldGet(this, _Tooltip_referenceElement, "f"), 'click', __classPrivateFieldGet(this, _Tooltip_boundReferenceClick, "f"));
306
+ __classPrivateFieldGet(this, _Tooltip_instances, "m", _Tooltip_on).call(this, document.documentElement, 'pointerdown', __classPrivateFieldGet(this, _Tooltip_boundPointerdown, "f"));
307
+ __classPrivateFieldGet(this, _Tooltip_instances, "m", _Tooltip_on).call(this, this.host, 'pointerdown', __classPrivateFieldGet(this, _Tooltip_boundTooltipPointerdown, "f"));
308
+ for (const trigger of triggers) {
309
+ switch (trigger) {
310
+ case 'click': {
311
+ __classPrivateFieldGet(this, _Tooltip_instances, "m", _Tooltip_on).call(this, __classPrivateFieldGet(this, _Tooltip_referenceElement, "f"), 'click', __classPrivateFieldGet(this, _Tooltip_boundReferenceClick, "f"));
312
+ break;
313
+ }
314
+ case 'focus':
315
+ case 'focusin': {
316
+ __classPrivateFieldGet(this, _Tooltip_instances, "m", _Tooltip_on).call(this, __classPrivateFieldGet(this, _Tooltip_referenceElement, "f"), trigger, __classPrivateFieldGet(this, _Tooltip_boundFocus, "f"));
317
+ __classPrivateFieldGet(this, _Tooltip_instances, "m", _Tooltip_on).call(this, __classPrivateFieldGet(this, _Tooltip_referenceElement, "f"), 'focusout', __classPrivateFieldGet(this, _Tooltip_boundFocusout, "f"));
318
+ __classPrivateFieldGet(this, _Tooltip_instances, "m", _Tooltip_on).call(this, this.host, 'focusout', __classPrivateFieldGet(this, _Tooltip_boundFocusout, "f"));
319
+ break;
320
+ }
321
+ case 'pointerenter': {
322
+ __classPrivateFieldGet(this, _Tooltip_instances, "m", _Tooltip_on).call(this, __classPrivateFieldGet(this, _Tooltip_referenceElement, "f"), 'pointerenter', __classPrivateFieldGet(this, _Tooltip_boundPointerenter, "f"));
323
+ __classPrivateFieldGet(this, _Tooltip_instances, "m", _Tooltip_on).call(this, __classPrivateFieldGet(this, _Tooltip_referenceElement, "f"), 'pointerleave', __classPrivateFieldGet(this, _Tooltip_boundPointerleave, "f"));
324
+ __classPrivateFieldGet(this, _Tooltip_instances, "m", _Tooltip_on).call(this, this.host, 'pointerleave', __classPrivateFieldGet(this, _Tooltip_boundPointerleave, "f"));
325
+ break;
326
+ }
327
+ }
328
+ }
329
+ }
330
+ async updatePosition() {
331
+ helpers.invariant(__classPrivateFieldGet(this, _Tooltip_referenceElement, "f"));
332
+ const { x, y, middlewareData, placement, strategy } = await floatingUi_dom_esm.computePosition(__classPrivateFieldGet(this, _Tooltip_referenceElement, "f"), this.host, {
333
+ middleware: this.middleware,
334
+ placement: this.placement,
335
+ strategy: this.strategy,
336
+ });
337
+ const [side] = placement.split('-');
338
+ this.hostPosition = strategy;
339
+ this.hostTransform = `translate(${helpers.roundByDPR(x)}px,${helpers.roundByDPR(y)}px)`;
340
+ this.side = side;
341
+ if (middlewareData.arrow === undefined)
342
+ return;
343
+ const { x: aX, y: aY, centerOffset } = middlewareData.arrow;
344
+ this.aStyles = {
345
+ display: centerOffset === 0 ? undefined : 'none',
346
+ left: aX === undefined ? '' : `${aX}px`,
347
+ top: aY === undefined ? '' : `${aY}px`,
348
+ };
349
+ }
350
+ startAutoUpdate() {
351
+ helpers.invariant(__classPrivateFieldGet(this, _Tooltip_referenceElement, "f"));
352
+ if (__classPrivateFieldGet(this, _Tooltip_cleanup, "f"))
353
+ __classPrivateFieldGet(this, _Tooltip_cleanup, "f").call(this);
354
+ __classPrivateFieldSet(this, _Tooltip_cleanup, floatingUi_dom_esm.autoUpdate(__classPrivateFieldGet(this, _Tooltip_referenceElement, "f"), this.host, () => {
355
+ helpers.ignorePromise(this.updatePosition());
356
+ }, this.autoUpdateOptions), "f");
357
+ }
358
+ async componentWillLoad() {
359
+ __classPrivateFieldSet(this, _Tooltip_isTouchDevice, helpers.isTouchDevice(), "f");
360
+ this.host.setAttribute('aria-hidden', 'true');
361
+ await this.updateReferenceElement();
362
+ autoIncrementingId += 1;
363
+ }
364
+ async componentDidLoad() {
365
+ await this.updateArrow();
366
+ }
367
+ disconnectedCallback() {
368
+ if (!(__classPrivateFieldGet(this, _Tooltip_referenceElement, "f") instanceof globalThis.Element))
369
+ return;
370
+ __classPrivateFieldGet(this, _Tooltip_instances, "m", _Tooltip_removeEventListeners).call(this);
371
+ __classPrivateFieldGet(this, _Tooltip_referenceElement, "f").removeAttribute('aria-describedby');
372
+ }
373
+ render() {
374
+ return (index.h(index.Host, { key: '38b50217b07a9298e7dcc5bdd667051899e19ec8', "data-side": this.side, role: this.host.role ?? 'tooltip', style: {
375
+ position: this.hostPosition,
376
+ transform: this.hostTransform,
377
+ } }, index.h("slot", { key: '157fbd2f8dfbfdd768306ae9a35ff73b85bfdeec' }), index.h("svg", { key: '71d1a7f9ffee1cd9f95561d77a65b87bace9a21e', "aria-hidden": "true", "data-side": this.side, class: "qds-arrow-container", ref: __classPrivateFieldGet(this, _Tooltip_arrowContainerRef, "f"), viewBox: this.aViewbox, style: this.aStyles }, index.h("path", { key: '0562e8b0085df4ec007d18d54139d1437117c62c', class: "qds-arrow", d: this.aShape }))));
378
+ }
379
+ get host() { return index.getElement(this); }
380
+ static get watchers() { return {
381
+ "aGap": ["updateMiddleware"],
382
+ "aHeight": ["updateMiddleware"],
383
+ "flipOptions": ["updateMiddleware"],
384
+ "noFlip": ["updateMiddleware"],
385
+ "noShift": ["updateMiddleware"],
386
+ "offsetOptions": ["updateMiddleware"],
387
+ "shiftOptions": ["updateMiddleware"],
388
+ "target": ["updateReferenceElement"],
389
+ "trigger": ["updateEventListeners"],
390
+ "middleware": ["updatePosition"],
391
+ "placement": ["updatePosition"],
392
+ "strategy": ["updatePosition"],
393
+ "autoUpdateOptions": ["startAutoUpdate"]
394
+ }; }
395
+ };
396
+ _Tooltip_arrowContainerElement = new WeakMap(), _Tooltip_cleanup = new WeakMap(), _Tooltip_clickedTooltip = new WeakMap(), _Tooltip_isTouchDevice = new WeakMap(), _Tooltip_listeners = new WeakMap(), _Tooltip_referenceElement = new WeakMap(), _Tooltip_arrowContainerRef = new WeakMap(), _Tooltip_boundTooltipPointerdown = new WeakMap(), _Tooltip_boundFocus = new WeakMap(), _Tooltip_boundPointerenter = new WeakMap(), _Tooltip_boundPointerleave = new WeakMap(), _Tooltip_boundFocusout = new WeakMap(), _Tooltip_boundPointerdown = new WeakMap(), _Tooltip_boundReferenceClick = new WeakMap(), _Tooltip_instances = new WeakSet(), _Tooltip_handleFocus = async function _Tooltip_handleFocus() {
397
+ if (!this.disabled)
398
+ await this.show();
399
+ }, _Tooltip_handlePointerenter = async function _Tooltip_handlePointerenter() {
400
+ if (!this.disabled)
401
+ await this.show();
402
+ }, _Tooltip_handlePointerleave = async function _Tooltip_handlePointerleave(event) {
403
+ if (!__classPrivateFieldGet(this, _Tooltip_clickedTooltip, "f") &&
404
+ document.activeElement !== __classPrivateFieldGet(this, _Tooltip_referenceElement, "f") &&
405
+ document.activeElement?.closest('qds-tooltip') !== this.host &&
406
+ event instanceof PointerEvent &&
407
+ event.relatedTarget !== __classPrivateFieldGet(this, _Tooltip_referenceElement, "f") &&
408
+ event.relatedTarget !== this.host)
409
+ await this.close();
410
+ }, _Tooltip_handleFocusOut = async function _Tooltip_handleFocusOut(event) {
411
+ if (!(event instanceof FocusEvent))
412
+ return;
413
+ const { relatedTarget } = event;
414
+ if (relatedTarget instanceof globalThis.Element &&
415
+ !this.host.contains(relatedTarget) &&
416
+ __classPrivateFieldGet(this, _Tooltip_referenceElement, "f") !== relatedTarget)
417
+ await this.close();
418
+ }, _Tooltip_handlePointerdown = async function _Tooltip_handlePointerdown(event) {
419
+ const composedPath = event.composedPath();
420
+ const withinBounds = composedPath.includes(this.host) ||
421
+ (__classPrivateFieldGet(this, _Tooltip_referenceElement, "f") instanceof globalThis.Element &&
422
+ composedPath.includes(__classPrivateFieldGet(this, _Tooltip_referenceElement, "f")));
423
+ if (!withinBounds)
424
+ await this.close();
425
+ }, _Tooltip_handleReferenceClick = async function _Tooltip_handleReferenceClick() {
426
+ if (!this.disabled)
427
+ await (this.open ? this.close() : this.show());
428
+ }, _Tooltip_on = function _Tooltip_on(element, event, listener) {
429
+ const hasListener = __classPrivateFieldGet(this, _Tooltip_listeners, "f").some((value) => value.element === element && value.event === event);
430
+ if (hasListener)
431
+ return;
432
+ element.addEventListener(event, listener);
433
+ __classPrivateFieldGet(this, _Tooltip_listeners, "f").push({ element, event, listener });
434
+ }, _Tooltip_removeEventListeners = function _Tooltip_removeEventListeners() {
435
+ for (const { element, event, listener } of __classPrivateFieldGet(this, _Tooltip_listeners, "f"))
436
+ element.removeEventListener(event, listener);
437
+ __classPrivateFieldSet(this, _Tooltip_listeners, [], "f");
438
+ };
439
+ Tooltip.style = QdsTooltipStyle0;
440
+
441
+ exports.qds_badge_counter = BadgeCounter;
442
+ exports.qds_badge_indicator = BadgeIndicator;
443
+ exports.qds_tooltip = Tooltip;
444
+
445
+ //# sourceMappingURL=qds-badge-counter_3.cjs.entry.js.map
@@ -0,0 +1 @@
1
+ {"file":"qds-badge-counter.qds-badge-indicator.qds-tooltip.entry.cjs.js","mappings":"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","names":["h","__classPrivateFieldGet","ignorePromise","propertyToPx","invariant","offset","flip","shift","limitShift","arrow","resolveTarget","computePosition","roundByDPR","autoUpdate","isTouchDevice","Host"],"sources":["src/components/badge-counter/badge-counter.css?tag=qds-badge-counter&encapsulation=shadow","src/components/badge-counter/badge-counter.tsx","src/components/badge-indicator/badge-indicator.css?tag=qds-badge-indicator&encapsulation=shadow","src/components/badge-indicator/badge-indicator.tsx","src/components/tooltip/tooltip.css?tag=qds-tooltip&encapsulation=shadow","src/components/tooltip/tooltip.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: inline-block;\n}\n\n.qds-badge-counter {\n align-items: center;\n background-color: var(--qds-theme-feedback-message-neutral);\n border-radius: var(--qds-control-toggle-indicator-rounded-border-radius);\n color: var(--qds-theme-feedback-message-neutral-contrast);\n display: flex;\n font: var(--qds-badge-standard-text);\n height: var(--qds-badge-counter-standard-height);\n justify-content: center;\n margin: 0;\n padding-inline: var(--qds-badge-standard-padding-horizontal);\n text-align: center;\n}\n\n.qds-stroke-ring {\n border: var(--qds-badge-border-width) solid\n var(--qds-theme-feedback-message-neutral-contrast);\n}\n\n.qds-sr-only {\n clip: rect(0 0 0 0);\n height: 1px;\n width: 1px;\n margin: -1px;\n overflow: hidden;\n padding: 0;\n position: absolute;\n white-space: nowrap;\n}\n\n[data-importance='emphasized'] {\n background-color: var(--qds-theme-signature-color-contrast);\n color: var(--qds-theme-signature-color-default);\n\n &.qds-stroke-ring {\n border-color: var(--qds-theme-signature-color-default);\n }\n}\n\n[data-importance='subdued'] {\n background-color: var(--qds-theme-feedback-message-informational);\n color: var(--qds-theme-feedback-message-informational-contrast);\n\n &.qds-stroke-ring {\n border-color: var(--qds-theme-feedback-message-informational-contrast);\n }\n}\n\n[data-importance='destructive'] {\n background-color: var(--qds-theme-feedback-message-critical-contrast);\n color: var(--qds-theme-feedback-message-critical);\n\n &.qds-stroke-ring {\n border-color: var(--qds-theme-feedback-message-critical);\n }\n}\n\n[data-importance='subdued-destructive'] {\n color: var(--qds-theme-feedback-message-critical-contrast);\n background-color: var(--qds-theme-feedback-message-critical);\n\n &.qds-stroke-ring {\n border-color: var(--qds-theme-feedback-message-critical-contrast);\n }\n}\n\n[data-size='small'] {\n font: var(--qds-badge-small-text);\n height: var(--qds-badge-counter-small-height);\n padding-inline: var(--qds-badge-small-padding-horizontal);\n}\n\n[data-size='large'] {\n font: var(--qds-badge-large-text);\n height: var(--qds-badge-counter-large-height);\n padding-inline: var(--qds-badge-large-padding-horizontal);\n}\n\n[data-size='hero'] {\n font: var(--qds-badge-hero-text);\n height: var(--qds-badge-counter-hero-height);\n padding-inline: var(--qds-badge-hero-padding-horizontal);\n}\n","// SPDX-FileCopyrightText: © 2024 Schneider Electric\n//\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { ComponentInterface } from '@stencil/core'\nimport { Component, h, Prop } from '@stencil/core'\n\nimport type { Importance, Size } from '../shared'\n\nexport type BadgeCounterImportance =\n | Importance\n | 'destructive'\n | 'subdued-destructive'\nexport type BadgeCounterSize = Size | 'hero'\n\n/**\n * The `<qds-badge-counter>` element is a small, rounded UI element used to\n * display numerical values or counts. It is designed to draw the user's eye to\n * important or dynamic content by providing a visual cue that a countable\n * event or item has occurred or is waiting to be addressed.\n */\n@Component({\n tag: 'qds-badge-counter',\n shadow: true,\n styleUrl: 'badge-counter.css',\n})\nexport class BadgeCounter implements ComponentInterface {\n /**\n * Adds accessible text to the qds-badge-counter that will be used by screen\n * readers.\n *\n * @example\n * <qds-badge-counter value={2} description=\"new notifications\"></qds-badge-counter>\n * // This qds-badge-counter will be read by screen readers as \"two new notifications\"\n */\n @Prop() public readonly description?: string\n\n /**\n * The badge counter's importance.\n */\n @Prop() public readonly importance?: BadgeCounterImportance = 'standard'\n\n /**\n * The badge counter's size.\n */\n @Prop() public readonly size?: BadgeCounterSize = 'standard'\n\n /**\n * Shows a stroke ring around the component for better visibility\n */\n @Prop() public readonly strokeRing: boolean = false\n\n /**\n * The badge-counter's value.\n */\n @Prop() public readonly value!: number | string\n\n get #computedValue(): string {\n const value =\n typeof this.value === 'string'\n ? Number.parseInt(this.value, 10)\n : // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n (this.value ?? Number.NaN)\n if (Number.isNaN(value) || value < 0) return ''\n\n return value < 100 ? value.toString() : '99+'\n }\n\n get #computedImportance(): BadgeCounterImportance {\n switch (this.importance) {\n case 'subdued':\n case 'destructive':\n case 'subdued-destructive':\n case 'emphasized': {\n return this.importance\n }\n default: {\n return 'standard'\n }\n }\n }\n\n get #computedSize(): BadgeCounterSize {\n switch (this.size) {\n case 'hero':\n case 'large':\n case 'small': {\n return this.size\n }\n default: {\n return 'standard'\n }\n }\n }\n\n public render() {\n return (\n <span\n class={{\n 'qds-badge-counter': true,\n 'qds-stroke-ring': this.strokeRing,\n }}\n data-importance={this.#computedImportance}\n data-size={this.#computedSize}\n >\n {this.#computedValue}\n <span class=\"qds-sr-only\">{this.description}</span>\n </span>\n )\n }\n}\n","/*\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: inline-block;\n}\n\n.qds-badge-indicator {\n align-items: center;\n background-color: var(--qds-theme-feedback-message-neutral);\n border-radius: var(--qds-control-toggle-indicator-rounded-border-radius);\n display: flex;\n height: var(--qds-badge-indicator-standard-height);\n justify-content: center;\n width: var(--qds-badge-indicator-standard-height);\n}\n\n.qds-stroke-ring {\n border: var(--qds-badge-border-width) solid\n var(--qds-theme-feedback-message-neutral-contrast);\n}\n\n.qds-sr-only {\n clip: rect(0 0 0 0);\n height: 1px;\n width: 1px;\n margin: -1px;\n overflow: hidden;\n padding: 0;\n position: absolute;\n white-space: nowrap;\n}\n\n[data-status='error'] {\n background-color: var(--qds-theme-feedback-message-critical);\n\n &.qds-stroke-ring {\n border-color: var(--qds-theme-feedback-message-neutral-contrast);\n }\n}\n\n[data-status='info'] {\n background-color: var(--qds-theme-feedback-message-informational);\n\n &.qds-stroke-ring {\n border-color: var(--qds-theme-feedback-message-neutral-contrast);\n }\n}\n\n[data-status='neutral'] {\n background-color: var(--qds-theme-feedback-availability-unavailable);\n\n &.qds-stroke-ring {\n border-color: var(--qds-theme-feedback-message-neutral-contrast);\n }\n}\n\n[data-status='success'] {\n background-color: var(--qds-theme-signature-color-default);\n\n &.qds-stroke-ring {\n border-color: var(--qds-theme-feedback-message-neutral-contrast);\n }\n}\n\n[data-status='warning'] {\n background-color: var(--qds-theme-feedback-message-important);\n\n &.qds-stroke-ring {\n border-color: var(--qds-theme-feedback-message-neutral-contrast);\n }\n}\n\n[data-size='small'] {\n height: var(--qds-badge-indicator-small-height);\n width: var(--qds-badge-indicator-small-height);\n}\n\n[data-size='standard'] {\n height: var(--qds-badge-indicator-standard-height);\n width: var(--qds-badge-indicator-standard-height);\n}\n\n[data-size='large'] {\n height: var(--qds-badge-indicator-large-height);\n width: var(--qds-badge-indicator-large-height);\n}\n\n[data-size='hero'] {\n height: var(--qds-badge-indicator-hero-height);\n width: var(--qds-badge-indicator-hero-height);\n}\n","// SPDX-FileCopyrightText: © 2024 Schneider Electric\n//\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { ComponentInterface } from '@stencil/core'\nimport { Component, h, Prop } from '@stencil/core'\n\nimport type { Size, Status } from '../shared'\n\nexport type BadgeIndicatorSize = Size | 'hero'\nexport type BadgeIndicatorStatus = Status | 'neutral'\n\n/**\n * The `<qds-badge-indicator>` element is a small, rounded UI element used to\n * display status indicators. It is designed to draw the user's eye to\n * important or dynamic content by providing a visual cue that an event has\n * occurred or is waiting to be addressed.\n */\n@Component({\n tag: 'qds-badge-indicator',\n shadow: true,\n styleUrl: 'badge-indicator.css',\n})\nexport class BadgeIndicator implements ComponentInterface {\n /**\n * Adds accessible text to the qds-badge-indicator that will be used by\n * screen readers.\n *\n * @example\n * <qds-badge-indicator description=\"success\"></qds-badge-indicator>\n * // This qds-badge-indicator will be read by screen readers as \"success\"\n */\n @Prop() public readonly description?: string\n\n /**\n * The badge indicator's size.\n */\n @Prop() public readonly size?: BadgeIndicatorSize = 'standard'\n\n /**\n * The badge indicator's status.\n */\n @Prop() public readonly status?: BadgeIndicatorStatus = 'neutral'\n\n /**\n * Shows a stroke ring around the badge indicator for better visibility.\n */\n @Prop() public readonly strokeRing: boolean = false\n\n get #computedStatus(): BadgeIndicatorStatus {\n switch (this.status) {\n case 'error':\n case 'info':\n case 'success':\n case 'warning': {\n return this.status\n }\n default: {\n return 'neutral'\n }\n }\n }\n\n get #computedSize(): BadgeIndicatorSize {\n switch (this.size) {\n case 'hero':\n case 'large':\n case 'small': {\n return this.size\n }\n default: {\n return 'standard'\n }\n }\n }\n\n public render() {\n return (\n <div\n class={{\n 'qds-badge-indicator': true,\n 'qds-stroke-ring': this.strokeRing,\n }}\n data-size={this.#computedSize}\n data-status={this.#computedStatus}\n >\n <span class=\"qds-sr-only\">{this.description}</span>\n </div>\n )\n }\n}\n","/*\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 align-items: flex-start;\n background-color: var(--qds-theme-accessory-background);\n border-radius: var(--qds-accessory-border-radius);\n box-shadow: var(--qds-theme-accessory-elevation);\n box-sizing: border-box;\n color: var(--qds-theme-text-standard);\n display: flex;\n flex-direction: column;\n gap: var(--qds-accessory-gap-children-unrelated);\n left: 0;\n padding: var(--qds-accessory-padding);\n top: 0;\n}\n\n:host([aria-hidden='true']) {\n display: none;\n}\n\n:host::before {\n content: '';\n height: 100%;\n left: 0;\n position: absolute;\n top: 0;\n width: 100%;\n}\n\n::slotted(blockquote),\n::slotted(button),\n::slotted(dd),\n::slotted(dl),\n::slotted(fieldset),\n::slotted(figure),\n::slotted(h1),\n::slotted(h2),\n::slotted(h3),\n::slotted(h4),\n::slotted(h5),\n::slotted(h6),\n::slotted(hr),\n::slotted(input),\n::slotted(menu),\n::slotted(ol),\n::slotted(p),\n::slotted(pre),\n::slotted(select),\n::slotted(textarea),\n::slotted(ul) {\n margin: 0;\n}\n\n:host([data-side='top'])::before,\n:host([data-side='bottom'])::before {\n height: calc(\n var(--qds-accessory-gap-floating, 0px) +\n var(--qds-signature-triangle-pointer-size-height, 0px)\n );\n top: 100%;\n}\n\n:host([data-side='bottom'])::before {\n top: calc(\n -1 * (var(--qds-accessory-gap-floating, 0px) +\n var(--qds-signature-triangle-pointer-size-height, 0px))\n );\n}\n\n:host([data-side='left'])::before,\n:host([data-side='right'])::before {\n width: calc(\n var(--qds-accessory-gap-floating, 0px) +\n var(--qds-signature-triangle-pointer-size-height, 0px)\n );\n left: 100%;\n}\n\n:host([data-side='right'])::before {\n left: calc(\n -1 * (var(--qds-accessory-gap-floating, 0px) +\n var(--qds-signature-triangle-pointer-size-height, 0px))\n );\n}\n\n.qds-arrow-container {\n height: var(--qds-signature-triangle-pointer-size-width);\n position: absolute;\n width: var(--qds-signature-triangle-pointer-size-width);\n\n &[data-side='bottom'] {\n bottom: 100%;\n transform: rotate(180deg);\n }\n\n &[data-side='left'] {\n left: 100%;\n transform: rotate(-90deg);\n }\n\n &[data-side='right'] {\n right: 100%;\n transform: rotate(90deg);\n }\n\n &[data-side='top'] {\n top: 100%;\n }\n}\n\n.qds-arrow {\n fill: var(--qds-theme-accessory-background);\n}\n","// SPDX-FileCopyrightText: © 2024 Schneider Electric\n//\n// SPDX-License-Identifier: Apache-2.0\n\nimport type {\n AutoUpdateOptions,\n DetectOverflowOptions,\n FlipOptions,\n Middleware,\n Placement,\n ReferenceElement,\n ShiftOptions,\n Side,\n Strategy,\n} from '@floating-ui/dom'\nimport {\n arrow,\n autoUpdate,\n computePosition,\n flip,\n limitShift,\n offset,\n shift,\n} from '@floating-ui/dom'\nimport type { ComponentInterface, EventEmitter } from '@stencil/core'\nimport {\n Component,\n Element,\n Event,\n h,\n Host,\n Method,\n Prop,\n State,\n Watch,\n} from '@stencil/core'\nimport type { Split } from 'type-fest'\n\nimport type { OffsetOptions } from '../../helpers'\nimport {\n ignorePromise,\n invariant,\n isTouchDevice,\n propertyToPx,\n resolveTarget,\n roundByDPR,\n} from '../../helpers'\n\nlet autoIncrementingId = 1\n\nexport type TriggerEvent = Extract<\n keyof GlobalEventHandlersEventMap,\n 'click' | 'focus' | 'focusin' | 'pointerenter'\n>\n\n/**\n * @slot Content to display in the dropdown.\n * @see https://quartz.se.com/build/components/tooltip\n */\n@Component({\n tag: 'qds-tooltip',\n shadow: true,\n styleUrl: 'tooltip.css',\n})\nexport class Tooltip implements ComponentInterface {\n /**\n * Options to pass to Floating UI's\n * [`autoUpdate()` function](https://floating-ui.com/docs/autoUpdate).\n *\n * @see https://floating-ui.com/docs/autoupdate#options\n */\n @Prop() public readonly autoUpdateOptions?: AutoUpdateOptions\n\n /**\n * Prevents the tooltip from being shown by user interaction. The tooltip can\n * still be displayed by calling the `show()` method.\n */\n @Prop() public readonly disabled: boolean = false\n\n /**\n * Options to pass to Floating UI's\n * [`flip` middleware](https://floating-ui.com/docs/flip).\n *\n * The [`crossAxis` option](https://floating-ui.com/docs/flip#crossaxis) is\n * set to the value of the `noShift` property by default for interoperability\n * with the [`shift` middleware](https://floating-ui.com/docs/shift).\n *\n * @see https://floating-ui.com/docs/flip#options\n */\n @Prop() public readonly flipOptions?: Partial<\n DetectOverflowOptions & FlipOptions\n >\n\n /**\n * Disable Floating UI's\n * [`flip` middleware](https://floating-ui.com/docs/flip).\n */\n @Prop() public readonly noFlip: boolean = false\n\n /**\n * Disable Floating UI's\n * [`shift` middleware](https://floating-ui.com/docs/shift).\n */\n @Prop() public readonly noShift: boolean = false\n\n /**\n * Options to pass to Floating UI's\n * [`offset` middleware](https://floating-ui.com/docs/offset).\n *\n * The [`mainAxis` option](https://floating-ui.com/docs/offset#mainaxis) is\n * not supported.\n *\n * @see https://floating-ui.com/docs/offset#options\n */\n @Prop() public readonly offsetOptions?: OffsetOptions\n\n /**\n * Where to place the tooltip relative to the `target`.\n *\n * @see https://floating-ui.com/docs/tutorial#placements\n */\n @Prop() public readonly placement: Placement = 'top'\n\n /**\n * Options to pass to Floating UI's\n * [`shift` middleware](https://floating-ui.com/docs/shift).\n *\n * @see https://floating-ui.com/docs/shift#options\n */\n @Prop() public readonly shiftOptions?: Partial<\n DetectOverflowOptions & ShiftOptions\n >\n\n /**\n * The CSS position strategy to use.\n *\n * @see https://floating-ui.com/docs/computeposition#strategy\n */\n @Prop() public readonly strategy?: Strategy\n\n /**\n * The trigger element that will trigger the tooltip. The target specified\n * can be any of the following:\n *\n * - A CSS selector string\n * - A reference to an [`Element`][] or [Virtual Element][]\n * - A function returning a reference to an [`Element`][],\n * [Virtual Element][], or a CSS selector string\n *\n * [`Element`]: https://developer.mozilla.org/docs/Web/API/Element\n * [Virtual Element]: https://floating-ui.com/docs/virtual-elements\n */\n @Prop() public readonly target?:\n | ReferenceElement\n | string\n | (() => ReferenceElement | string)\n\n /**\n * Determines the events that cause the tooltip to show. Multiple event names\n * are separated by spaces.\n */\n @Prop() public readonly trigger?: TriggerEvent[] | string =\n 'pointerenter focus'\n\n /**\n * Emitted when the tooltip is closed.\n */\n @Event({ eventName: 'qdsClose', bubbles: false, cancelable: false })\n private readonly closeEmitter!: EventEmitter<void>\n\n @Element() private readonly host!: HTMLQdsTooltipElement\n\n @State() private hostPosition?: string\n\n @State() private hostTransform?: string\n\n @State() private open = false\n\n @State() private middleware?: Middleware[]\n\n @State() private side: Side = 'top'\n\n @State() private aStyles?: Record<string, string | undefined>\n\n @State() private aShape = ''\n\n @State() private aViewbox = '0 0 0 0'\n\n @State() private aHeight = 0\n\n @State() private aGap = 0\n\n #arrowContainerElement?: SVGElement\n\n #cleanup?: () => void\n\n #clickedTooltip = false\n\n #isTouchDevice = false\n\n #listeners: {\n element: Element\n event: keyof GlobalEventHandlersEventMap\n listener: EventListenerOrEventListenerObject\n }[] = []\n\n #referenceElement?: ReferenceElement\n\n /**\n * Show the tooltip.\n */\n @Method()\n public async show(): Promise<void> {\n if (this.open) return\n\n this.open = true\n this.host.removeAttribute('aria-hidden')\n this.startAutoUpdate()\n }\n\n /**\n * Close the tooltip.\n */\n @Method()\n public async close(): Promise<void> {\n if (!this.open) return\n\n this.closeEmitter.emit()\n\n this.open = false\n this.#clickedTooltip = false\n this.host.setAttribute('aria-hidden', 'true')\n if (this.#cleanup) this.#cleanup()\n }\n\n /**\n * Update the tooltip's arrow.\n *\n * This method should typically be called when the Quartz platform was\n * changed.\n */\n @Method()\n public async updateArrow(): Promise<void> {\n const aWidth =\n propertyToPx(this.host, `--qds-signature-triangle-pointer-size-width`) ??\n 0\n const aTipRadius =\n propertyToPx(this.host, `--qds-signature-triangle-pointer-tip-radius`) ??\n 0\n const svgX = (aWidth / 2) * (aTipRadius / -8 + 1)\n const svgY = ((this.aHeight / 2) * aTipRadius) / 4\n\n this.aHeight =\n propertyToPx(this.host, `--qds-signature-triangle-pointer-size-height`) ??\n 0\n this.aViewbox = `0 0 ${aWidth} ${Math.max(this.aHeight, aWidth)}`\n this.aGap = propertyToPx(this.host, '--qds-accessory-gap-floating') ?? 0\n this.aShape =\n 'M0,0' +\n ` H${aWidth}` +\n ` L${aWidth - svgX},${this.aHeight - svgY}` +\n ` Q${aWidth / 2},${this.aHeight} ${svgX},${this.aHeight - svgY}` +\n ' Z'\n }\n\n @Watch('aGap')\n @Watch('aHeight')\n @Watch('flipOptions')\n @Watch('noFlip')\n @Watch('noShift')\n @Watch('offsetOptions')\n @Watch('shiftOptions')\n protected async updateMiddleware(): Promise<void> {\n invariant(this.#arrowContainerElement)\n\n this.middleware = [\n offset({\n ...this.offsetOptions,\n mainAxis: this.aGap + this.aHeight,\n }),\n !this.noFlip &&\n flip({\n crossAxis: this.noShift,\n ...this.flipOptions,\n }),\n !this.noShift &&\n shift({\n limiter: limitShift(),\n ...this.shiftOptions,\n }),\n arrow({\n element: this.#arrowContainerElement,\n }),\n ].filter((middleware): middleware is Middleware => middleware !== false)\n }\n\n @Watch('target')\n private async updateReferenceElement(): Promise<void> {\n this.disconnectedCallback()\n\n this.#referenceElement = resolveTarget(this.target)\n\n if (!(this.#referenceElement instanceof globalThis.Element)) return\n\n this.updateEventListeners()\n this.host.id ||= `qds-tooltip-${autoIncrementingId}`\n this.#referenceElement.setAttribute('aria-describedby', this.host.id)\n }\n\n @Watch('trigger')\n private updateEventListeners(): void {\n if (!(this.#referenceElement instanceof globalThis.Element)) return\n\n const triggers = Array.isArray(this.trigger)\n ? this.trigger\n : ((this.trigger?.split(' ') as Split<TriggerEvent, ' '> | undefined) ??\n [])\n\n this.#removeEventListeners()\n\n if (this.#isTouchDevice)\n this.#on(this.#referenceElement, 'click', this.#boundReferenceClick)\n this.#on(document.documentElement, 'pointerdown', this.#boundPointerdown)\n this.#on(this.host, 'pointerdown', this.#boundTooltipPointerdown)\n\n for (const trigger of triggers) {\n switch (trigger) {\n case 'click': {\n this.#on(this.#referenceElement, 'click', this.#boundReferenceClick)\n break\n }\n case 'focus':\n case 'focusin': {\n this.#on(this.#referenceElement, trigger, this.#boundFocus)\n this.#on(this.#referenceElement, 'focusout', this.#boundFocusout)\n this.#on(this.host, 'focusout', this.#boundFocusout)\n break\n }\n case 'pointerenter': {\n this.#on(\n this.#referenceElement,\n 'pointerenter',\n this.#boundPointerenter,\n )\n this.#on(\n this.#referenceElement,\n 'pointerleave',\n this.#boundPointerleave,\n )\n this.#on(this.host, 'pointerleave', this.#boundPointerleave)\n break\n }\n default:\n }\n }\n }\n\n @Watch('middleware')\n @Watch('placement')\n @Watch('strategy')\n private async updatePosition(): Promise<void> {\n invariant(this.#referenceElement)\n\n const { x, y, middlewareData, placement, strategy } = await computePosition(\n this.#referenceElement,\n this.host,\n {\n middleware: this.middleware,\n placement: this.placement,\n strategy: this.strategy,\n },\n )\n const [side] = placement.split('-') as Split<Placement, '-'>\n\n this.hostPosition = strategy\n this.hostTransform = `translate(${roundByDPR(x)}px,${roundByDPR(y)}px)`\n this.side = side\n\n if (middlewareData.arrow === undefined) return\n const { x: aX, y: aY, centerOffset } = middlewareData.arrow\n this.aStyles = {\n display: centerOffset === 0 ? undefined : 'none',\n left: aX === undefined ? '' : `${aX}px`,\n top: aY === undefined ? '' : `${aY}px`,\n }\n }\n\n @Watch('autoUpdateOptions')\n private startAutoUpdate(): void {\n invariant(this.#referenceElement)\n\n if (this.#cleanup) this.#cleanup()\n this.#cleanup = autoUpdate(\n this.#referenceElement,\n this.host,\n () => {\n ignorePromise(this.updatePosition())\n },\n this.autoUpdateOptions,\n )\n }\n\n public async componentWillLoad(): Promise<void> {\n this.#isTouchDevice = isTouchDevice()\n this.host.setAttribute('aria-hidden', 'true')\n await this.updateReferenceElement()\n autoIncrementingId += 1\n }\n\n public async componentDidLoad(): Promise<void> {\n await this.updateArrow()\n }\n\n public disconnectedCallback(): void {\n if (!(this.#referenceElement instanceof globalThis.Element)) return\n\n this.#removeEventListeners()\n this.#referenceElement.removeAttribute('aria-describedby')\n }\n\n public render() {\n return (\n <Host\n data-side={this.side}\n role={this.host.role ?? 'tooltip'}\n style={{\n position: this.hostPosition,\n transform: this.hostTransform,\n }}\n >\n <slot />\n <svg\n aria-hidden=\"true\"\n data-side={this.side}\n class=\"qds-arrow-container\"\n ref={this.#arrowContainerRef}\n viewBox={this.aViewbox}\n style={this.aStyles}\n >\n <path class=\"qds-arrow\" d={this.aShape} />\n </svg>\n </Host>\n )\n }\n\n readonly #arrowContainerRef = (svg?: SVGElement): void => {\n this.#arrowContainerElement = svg\n }\n\n readonly #boundTooltipPointerdown = (): void => {\n this.#clickedTooltip = true\n }\n\n async #handleFocus(): Promise<void> {\n if (!this.disabled) await this.show()\n }\n\n readonly #boundFocus = (): void => {\n ignorePromise(this.#handleFocus())\n }\n\n async #handlePointerenter(): Promise<void> {\n if (!this.disabled) await this.show()\n }\n\n readonly #boundPointerenter = (): void => {\n ignorePromise(this.#handlePointerenter())\n }\n\n async #handlePointerleave(event: Event): Promise<void> {\n if (\n !this.#clickedTooltip &&\n document.activeElement !== this.#referenceElement &&\n document.activeElement?.closest('qds-tooltip') !== this.host &&\n event instanceof PointerEvent &&\n event.relatedTarget !== this.#referenceElement &&\n event.relatedTarget !== this.host\n )\n await this.close()\n }\n\n readonly #boundPointerleave = (event: Event): void => {\n ignorePromise(this.#handlePointerleave(event))\n }\n\n async #handleFocusOut(event: Event): Promise<void> {\n if (!(event instanceof FocusEvent)) return\n const { relatedTarget } = event\n\n if (\n relatedTarget instanceof globalThis.Element &&\n !this.host.contains(relatedTarget) &&\n this.#referenceElement !== relatedTarget\n )\n await this.close()\n }\n\n readonly #boundFocusout = (event: Event): void => {\n ignorePromise(this.#handleFocusOut(event))\n }\n\n async #handlePointerdown(event: Event): Promise<void> {\n const composedPath = event.composedPath()\n const withinBounds =\n composedPath.includes(this.host) ||\n (this.#referenceElement instanceof globalThis.Element &&\n composedPath.includes(this.#referenceElement))\n if (!withinBounds) await this.close()\n }\n\n readonly #boundPointerdown = (event: Event): void => {\n ignorePromise(this.#handlePointerdown(event))\n }\n\n async #handleReferenceClick(): Promise<void> {\n if (!this.disabled) await (this.open ? this.close() : this.show())\n }\n\n readonly #boundReferenceClick = (): void => {\n ignorePromise(this.#handleReferenceClick())\n }\n\n #on(\n element: Element,\n event: keyof GlobalEventHandlersEventMap,\n listener: EventListenerOrEventListenerObject,\n ): void {\n const hasListener = this.#listeners.some(\n (value) => value.element === element && value.event === event,\n )\n if (hasListener) return\n\n element.addEventListener(event, listener)\n this.#listeners.push({ element, event, listener })\n }\n\n #removeEventListeners(): void {\n for (const { element, event, listener } of this.#listeners)\n element.removeEventListener(event, listener)\n this.#listeners = []\n }\n}\n"],"version":3}
@@ -0,0 +1,55 @@
1
+ /*!
2
+ * SPDX-FileCopyrightText: © 2025 Schneider Electric
3
+ *
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ 'use strict';
7
+
8
+ Object.defineProperty(exports, '__esModule', { value: true });
9
+
10
+ const index = require('./index-a9985af0.js');
11
+ const helpers = require('./helpers-cdd65bd0.js');
12
+
13
+ const breadcrumbItemCss = ":host([hidden]){display:none!important}:host{display:inline-block}.qds-anchor,.qds-breadcrumb-item{color:var(--qds-theme-control-text-standard)}.qds-breadcrumb-item{align-items:center;display:inline-flex;flex-shrink:0;font:var(--qds-control-standard-text);gap:var(--qds-control-standard-gap-siblings-related);height:var(--qds-control-standard-height);list-style:none}.qds-anchor{-webkit-text-decoration:none;text-decoration:none}.qds-anchor:hover{-webkit-text-decoration:underline;text-decoration:underline}.qds-anchor:focus-visible{border-radius:var(--qds-focus-border-radius);outline:var(--qds-focus-border-width) solid var(--qds-theme-focus-border);outline-offset:var(--qds-focus-border-offset)}";
14
+ const QdsBreadcrumbItemStyle0 = breadcrumbItemCss;
15
+
16
+ // SPDX-FileCopyrightText: © 2024 Schneider Electric
17
+ //
18
+ // SPDX-License-Identifier: Apache-2.0
19
+ var __classPrivateFieldGet = (undefined && undefined.__classPrivateFieldGet) || function (receiver, state, kind, f) {
20
+ if (kind === "a" && !f)
21
+ throw new TypeError("Private accessor was defined without a getter");
22
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
23
+ throw new TypeError("Cannot read private member from an object whose class did not declare it");
24
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
25
+ };
26
+ var _QdsBreadcrumbItem_instances, _QdsBreadcrumbItem_internals, _QdsBreadcrumbItem_renderAnchor;
27
+ const QdsBreadcrumbItem = class {
28
+ constructor(hostRef) {
29
+ index.registerInstance(this, hostRef);
30
+ _QdsBreadcrumbItem_instances.add(this);
31
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
32
+ _QdsBreadcrumbItem_internals.set(this, helpers.attachInternals.call(this));
33
+ this.text = undefined;
34
+ this.href = undefined;
35
+ this.hreflang = undefined;
36
+ this.referrerPolicy = undefined;
37
+ this.rel = undefined;
38
+ this.target = undefined;
39
+ }
40
+ componentWillLoad() {
41
+ __classPrivateFieldGet(this, _QdsBreadcrumbItem_internals, "f").role = 'listitem';
42
+ }
43
+ render() {
44
+ return (index.h("div", { key: '6f3468e1964f21e9cce8268c5633e1b4d537a1b8', class: "qds-breadcrumb-item" }, this.href === undefined ? this.text : __classPrivateFieldGet(this, _QdsBreadcrumbItem_instances, "m", _QdsBreadcrumbItem_renderAnchor).call(this)));
45
+ }
46
+ static get delegatesFocus() { return true; }
47
+ };
48
+ _QdsBreadcrumbItem_internals = new WeakMap(), _QdsBreadcrumbItem_instances = new WeakSet(), _QdsBreadcrumbItem_renderAnchor = function _QdsBreadcrumbItem_renderAnchor() {
49
+ return (index.h(index.Fragment, null, index.h("a", { class: "qds-anchor", href: this.href, hrefLang: this.hreflang, referrerPolicy: this.referrerPolicy, rel: this.rel, target: this.target }, this.text), index.h("span", { "aria-hidden": "true" }, "/")));
50
+ };
51
+ QdsBreadcrumbItem.style = QdsBreadcrumbItemStyle0;
52
+
53
+ exports.qds_breadcrumb_item = QdsBreadcrumbItem;
54
+
55
+ //# sourceMappingURL=qds-breadcrumb-item.cjs.entry.js.map
@@ -0,0 +1 @@
1
+ {"file":"qds-breadcrumb-item.entry.cjs.js","mappings":";;;;;;;;;;;;AAAA,MAAM,iBAAiB,GAAG,4rBAA4rB,CAAC;AACvtB,gCAAe,iBAAiB;;ACDhC;AACA;AACA;;;;;;;;;MAwBa,iBAAiB;;;;;QAmJnB,uCAA+BA,uBAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAA;;;;;;;;IAE3D,iBAAiB;QACtB,uBAAA,IAAI,oCAAW,CAAC,IAAI,GAAG,UAAU,CAAA;KAClC;IAEM,MAAM;QACX,QACEC,kEAAK,KAAK,EAAC,qBAAqB,IAC7B,IAAI,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC,IAAI,GAAG,uBAAA,IAAI,qEAAc,MAAlB,IAAI,CAAgB,CACvD,EACP;KACF;;;;IAGC,QACEA,8BACEA,eACE,KAAK,EAAC,YAAY,EAClB,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,cAAc,EAAE,IAAI,CAAC,cAAc,EACnC,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,MAAM,EAAE,IAAI,CAAC,MAAM,IAElB,IAAI,CAAC,IAAI,CACR,EACJA,iCAAkB,MAAM,QAAS,CAChC,EACJ;AACH,CAAC;;;;;","names":["attachInternals","h"],"sources":["src/components/breadcrumb-item/breadcrumb-item.css?tag=qds-breadcrumb-item&encapsulation=shadow","src/components/breadcrumb-item/breadcrumb-item.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: inline-block;\n}\n\n.qds-anchor,\n.qds-breadcrumb-item {\n color: var(--qds-theme-control-text-standard);\n}\n\n.qds-breadcrumb-item {\n font: var(--qds-control-standard-text);\n display: inline-flex;\n height: var(--qds-control-standard-height);\n align-items: center;\n gap: var(--qds-control-standard-gap-siblings-related);\n flex-shrink: 0;\n list-style: none;\n}\n\n.qds-anchor {\n text-decoration: none;\n\n &:hover {\n text-decoration: underline;\n }\n\n &:focus-visible {\n outline: var(--qds-focus-border-width) solid var(--qds-theme-focus-border);\n outline-offset: var(--qds-focus-border-offset);\n border-radius: var(--qds-focus-border-radius);\n }\n}\n","// SPDX-FileCopyrightText: © 2024 Schneider Electric\n//\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { ComponentInterface, JSX } from '@stencil/core'\nimport { Component, Fragment, h, Prop } from '@stencil/core'\nimport type { LiteralUnion } from 'type-fest'\n\nimport { attachInternals } from '../../helpers'\n\nexport type BreadcrumbTarget = '_blank' | '_parent' | '_self' | '_top'\n\n/**\n * The `<qds-breadcrumb-item>` element is used as a navigational aid that is\n * typically placed between a site's header and the main content, displaying\n * either a hierarchy of the current page in relation to the site's structure,\n * from top level to current page, or a list of the links the user followed to\n * get to the current page, in the order visited.\n *\n * @see https://quartz.se.com/build/components/breadcrumb\n */\n@Component({\n tag: 'qds-breadcrumb-item',\n styleUrl: 'breadcrumb-item.css',\n shadow: { delegatesFocus: true },\n})\nexport class QdsBreadcrumbItem implements ComponentInterface {\n /**\n * The breadcrumb item's text.\n */\n @Prop() public readonly text!: string\n\n /**\n * The URL that the inline link points to. Inline links are not restricted to\n * HTTP-based URLs — they can use any URL scheme supported by browsers:\n *\n * - Sections of a page with document fragments\n * - While web browsers may not support other URL schemes, websites can with\n * [`registerProtocolHandler()`](https://developer.mozilla.org/docs/Web/API/Navigator/registerProtocolHandler)\n *\n * @webnative\n */\n @Prop() public readonly href?: string\n\n /**\n * Hints at the human language of the linked URL. No built-in functionality.\n * Allowed values are the same as\n * [the global `lang` attribute](https://developer.mozilla.org/docs/Web/HTML/Global_attributes/lang).\n *\n * @webnative\n */\n @Prop() public readonly hreflang?: string\n\n /**\n * How much of the\n * [referrer](https://developer.mozilla.org/docs/Web/HTTP/Headers/Referer)\n * to send when following the inline link.\n *\n * - `no-referrer`: The\n * [`Referer`](https://developer.mozilla.org/docs/Web/HTTP/Headers/Referer)\n * header will not be sent.\n * - `no-referrer-when-downgrade`: The\n * [`Referer`](https://developer.mozilla.org/docs/Web/HTTP/Headers/Referer)\n * header will not be sent to\n * [origin](https://developer.mozilla.org/docs/Glossary/Origin)s\n * without [TLS](https://developer.mozilla.org/docs/Glossary/TLS)\n * ([HTTPS](https://developer.mozilla.org/docs/Glossary/HTTPS)).\n * - `origin`: The sent referrer will be limited to the origin of the\n * referring page: its\n * [scheme](https://developer.mozilla.org/docs/Learn/Common_questions/What_is_a_URL),\n * [host](https://developer.mozilla.org/docs/Glossary/Host), and\n * [port](https://developer.mozilla.org/docs/Glossary/Port).\n * - `origin-when-cross-origin`: The referrer sent to other origins will be\n * limited to the scheme, the host, and the port. Navigations on the same\n * origin will still include the path.\n * - `same-origin`: A referrer will be sent for\n * [same origin](https://developer.mozilla.org/docs/Glossary/Same-origin_policy),\n * but cross-origin requests will contain no referrer information.\n * - `strict-origin`: Only send the origin of the document as the referrer\n * when the protocol security level stays the same (HTTPS→HTTPS), but don't\n * send it to a less secure destination (HTTPS→HTTP).\n * - `strict-origin-when-cross-origin` (default): Send a full URL when\n * performing a same-origin request, only send the origin when the protocol\n * security level stays the same (HTTPS→HTTPS), and send no header to a less\n * secure destination (HTTPS→HTTP).\n * - `unsafe-url`: The referrer will include the origin and the path (but not the\n * [fragment](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/hash),\n * [password](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/password),\n * or [username](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/username)).\n * **This value is unsafe** because it leaks origins and paths from\n * TLS-protected resources to insecure origins.\n *\n * @webnative\n */\n @Prop({ attribute: 'referrerpolicy' })\n public readonly referrerPolicy?: ReferrerPolicy\n\n /**\n * The relationship of the linked URL as space-separated\n * [link types](https://developer.mozilla.org/docs/Web/HTML/Attributes/rel).\n *\n * The following list includes some of the most important existing keywords.\n * Every keyword within a space-separated value should be unique within that\n * value.\n *\n * - [`alternate`](https://developer.mozilla.org/docs/Web/HTML/Attributes/rel#attr-alternate):\n * Alternate representations of the current document.\n * - [`author`](https://developer.mozilla.org/docs/Web/HTML/Attributes/rel#attr-author):\n * Author of the current document or article.\n * - [`bookmark`](https://developer.mozilla.org/docs/Web/HTML/Attributes/rel#attr-bookmark):\n * Permalink for the nearest ancestor section.\n * - [`external`](https://developer.mozilla.org/docs/Web/HTML/Attributes/rel#attr-external):\n * The referenced document is not part of the same site as the current\n * document. An icon will be rendered next to the text if this value is\n * specified.\n * - [`help`](https://developer.mozilla.org/docs/Web/HTML/Attributes/rel#attr-help):\n * Link to context-sensitive help.\n * - [`license`](https://developer.mozilla.org/docs/Web/HTML/Attributes/rel#attr-license):\n * Indicates that the main content of the current document is covered by the\n * copyright license described by the referenced document.\n * - [`me`](https://developer.mozilla.org/docs/Web/HTML/Attributes/rel/me):\n * Indicates that the current document represents the person who owns the\n * linked content.\n * - [`next`](https://developer.mozilla.org/docs/Web/HTML/Attributes/rel#attr-next):\n * Indicates that the current document is a part of a series and that the\n * next document in the series is the referenced document.\n * - [`nofollow`](https://developer.mozilla.org/docs/Web/HTML/Attributes/rel#attr-nofollow):\n * Indicates that the current document's original author or publisher does\n * not endorse the referenced document.\n * - [`noopener`](https://developer.mozilla.org/docs/Web/HTML/Attributes/rel/noopener):\n * Creates a top-level browsing context that is not an auxiliary browsing\n * context if the hyperlink would create either of those, to begin with (i.e.,\n * has an appropriate `target` attribute value).\n * - [`noreferrer`](https://developer.mozilla.org/docs/Web/HTML/Attributes/rel#attr-noreferrer):\n * No `Referer` header will be included. Additionally, has the same effect as\n * `noopener`.\n * - [`opener`](https://developer.mozilla.org/docs/Web/HTML/Attributes/rel#attr-opener):\n * Creates an auxiliary browsing context if the hyperlink would otherwise\n * create a top-level browsing context that is not an auxiliary browsing\n * context (i.e., has \"`_blank`\" as `target` attribute value).\n * - [`prev`](https://developer.mozilla.org/docs/Web/HTML/Attributes/rel#attr-prev):\n * Indicates that the current document is a part of a series and that the\n * previous document in the series is the referenced document.\n * - [`search`](https://developer.mozilla.org/docs/Web/HTML/Attributes/rel#attr-search):\n * Gives a link to a resource that can be used to search through the current\n * document and its related pages.\n * - [`tag`](https://developer.mozilla.org/docs/Web/HTML/Attributes/rel#attr-tag):\n * Gives a tag (identified by the given address) that applies to the current\n * document.\n *\n * @webnative\n */\n @Prop() public readonly rel?: string\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<BreadcrumbTarget, string>\n\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n readonly #internals: ElementInternals = attachInternals.call(this)\n\n public componentWillLoad(): void {\n this.#internals.role = 'listitem'\n }\n\n public render() {\n return (\n <div class=\"qds-breadcrumb-item\">\n {this.href === undefined ? this.text : this.#renderAnchor()}\n </div>\n )\n }\n\n #renderAnchor(): JSX.Element {\n return (\n <>\n <a\n class=\"qds-anchor\"\n href={this.href}\n hrefLang={this.hreflang}\n referrerPolicy={this.referrerPolicy}\n rel={this.rel}\n target={this.target}\n >\n {this.text}\n </a>\n <span aria-hidden=\"true\">/</span>\n </>\n )\n }\n}\n"],"version":3}