@riverty/web-components 6.2.0 → 6.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (397) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/README.md +78 -0
  3. package/custom-elements.json +4 -0
  4. package/package.json +3 -2
  5. package/dist/cjs/app-globals-V2Kpy_OQ.js +0 -5
  6. package/dist/cjs/focusable-Oll_rmtP.js +0 -28
  7. package/dist/cjs/formData-B2DZyLxP.js +0 -44
  8. package/dist/cjs/index-BnETQtSf.js +0 -1834
  9. package/dist/cjs/index.cjs.js +0 -2
  10. package/dist/cjs/loader.cjs.js +0 -13
  11. package/dist/cjs/r-accordion-panel.cjs.entry.js +0 -24
  12. package/dist/cjs/r-accordion-section.cjs.entry.js +0 -125
  13. package/dist/cjs/r-accordion-trigger.cjs.entry.js +0 -93
  14. package/dist/cjs/r-accordion.cjs.entry.js +0 -20
  15. package/dist/cjs/r-alert.cjs.entry.js +0 -146
  16. package/dist/cjs/r-badge.cjs.entry.js +0 -40
  17. package/dist/cjs/r-button.cjs.entry.js +0 -149
  18. package/dist/cjs/r-checkbox-group.cjs.entry.js +0 -232
  19. package/dist/cjs/r-checkbox.cjs.entry.js +0 -269
  20. package/dist/cjs/r-design-system-devtools.cjs.entry.js +0 -31
  21. package/dist/cjs/r-dialog.cjs.entry.js +0 -107
  22. package/dist/cjs/r-hint_2.cjs.entry.js +0 -50
  23. package/dist/cjs/r-icon-button_2.cjs.entry.js +0 -467
  24. package/dist/cjs/r-icon.cjs.entry.js +0 -284
  25. package/dist/cjs/r-illustration.cjs.entry.js +0 -396
  26. package/dist/cjs/r-input-code.cjs.entry.js +0 -432
  27. package/dist/cjs/r-input-date.cjs.entry.js +0 -519
  28. package/dist/cjs/r-input-password.cjs.entry.js +0 -265
  29. package/dist/cjs/r-input-phone-number.cjs.entry.js +0 -2525
  30. package/dist/cjs/r-input.cjs.entry.js +0 -402
  31. package/dist/cjs/r-list-item.cjs.entry.js +0 -109
  32. package/dist/cjs/r-pagination.cjs.entry.js +0 -314
  33. package/dist/cjs/r-panel.cjs.entry.js +0 -184
  34. package/dist/cjs/r-popover-action.cjs.entry.js +0 -80
  35. package/dist/cjs/r-popover-content.cjs.entry.js +0 -62
  36. package/dist/cjs/r-popover-headline.cjs.entry.js +0 -28
  37. package/dist/cjs/r-popover-trigger.cjs.entry.js +0 -70
  38. package/dist/cjs/r-popover.cjs.entry.js +0 -347
  39. package/dist/cjs/r-progress-bar.cjs.entry.js +0 -25
  40. package/dist/cjs/r-radio-button-description.cjs.entry.js +0 -18
  41. package/dist/cjs/r-radio-button-leading.cjs.entry.js +0 -18
  42. package/dist/cjs/r-radio-button-title.cjs.entry.js +0 -18
  43. package/dist/cjs/r-radio-button-trailing.cjs.entry.js +0 -18
  44. package/dist/cjs/r-radio-button.cjs.entry.js +0 -139
  45. package/dist/cjs/r-radio-group.cjs.entry.js +0 -425
  46. package/dist/cjs/r-select-option.cjs.entry.js +0 -130
  47. package/dist/cjs/r-select.cjs.entry.js +0 -1101
  48. package/dist/cjs/r-skip-link.cjs.entry.js +0 -19
  49. package/dist/cjs/r-stepper-item.cjs.entry.js +0 -42
  50. package/dist/cjs/r-stepper.cjs.entry.js +0 -99
  51. package/dist/cjs/r-tab-panel.cjs.entry.js +0 -26
  52. package/dist/cjs/r-tab.cjs.entry.js +0 -62
  53. package/dist/cjs/r-tabs-list.cjs.entry.js +0 -175
  54. package/dist/cjs/r-tabs.cjs.entry.js +0 -277
  55. package/dist/cjs/r-textarea.cjs.entry.js +0 -270
  56. package/dist/cjs/r-toast-group.cjs.entry.js +0 -46
  57. package/dist/cjs/r-toast.cjs.entry.js +0 -306
  58. package/dist/cjs/style-observer-D9zSP9wP.js +0 -1118
  59. package/dist/cjs/theming-NqxjhVJS.js +0 -109
  60. package/dist/cjs/web-components.cjs.js +0 -25
  61. package/dist/collection/collection-manifest.json +0 -60
  62. package/dist/collection/components/accordion/accordion.css +0 -24
  63. package/dist/collection/components/accordion/accordion.js +0 -90
  64. package/dist/collection/components/accordion/exports.js +0 -1
  65. package/dist/collection/components/accordion-panel/accordion-panel.css +0 -50
  66. package/dist/collection/components/accordion-panel/accordion-panel.js +0 -86
  67. package/dist/collection/components/accordion-section/accordion-section.css +0 -27
  68. package/dist/collection/components/accordion-section/accordion-section.js +0 -235
  69. package/dist/collection/components/accordion-trigger/accordion-trigger.css +0 -93
  70. package/dist/collection/components/accordion-trigger/accordion-trigger.js +0 -220
  71. package/dist/collection/components/alert/alert.css +0 -119
  72. package/dist/collection/components/alert/alert.js +0 -526
  73. package/dist/collection/components/alert/exports.js +0 -2
  74. package/dist/collection/components/badge/badge.css +0 -52
  75. package/dist/collection/components/badge/badge.js +0 -120
  76. package/dist/collection/components/badge/exports.js +0 -1
  77. package/dist/collection/components/button/button.css +0 -180
  78. package/dist/collection/components/button/button.js +0 -510
  79. package/dist/collection/components/button/exports.js +0 -5
  80. package/dist/collection/components/checkbox/checkbox.css +0 -116
  81. package/dist/collection/components/checkbox/checkbox.js +0 -777
  82. package/dist/collection/components/checkbox-group/checkbox-group.css +0 -48
  83. package/dist/collection/components/checkbox-group/checkbox-group.js +0 -718
  84. package/dist/collection/components/design-system-devtools/design-system-devtools.js +0 -59
  85. package/dist/collection/components/dialog/dialog.css +0 -125
  86. package/dist/collection/components/dialog/dialog.js +0 -345
  87. package/dist/collection/components/dialog/exports.js +0 -9
  88. package/dist/collection/components/hint/exports.js +0 -1
  89. package/dist/collection/components/hint/hint.css +0 -63
  90. package/dist/collection/components/hint/hint.js +0 -114
  91. package/dist/collection/components/icon/all-kit.js +0 -2
  92. package/dist/collection/components/icon/data.js +0 -90
  93. package/dist/collection/components/icon/exports.js +0 -7
  94. package/dist/collection/components/icon/icon.css +0 -105
  95. package/dist/collection/components/icon/icon.js +0 -379
  96. package/dist/collection/components/icon/riverty-kit.js +0 -2
  97. package/dist/collection/components/icon-button/icon-button.css +0 -105
  98. package/dist/collection/components/icon-button/icon-button.js +0 -343
  99. package/dist/collection/components/illustration/data.js +0 -112
  100. package/dist/collection/components/illustration/exports.js +0 -3
  101. package/dist/collection/components/illustration/illustration.js +0 -540
  102. package/dist/collection/components/illustration/illustration.scss +0 -56
  103. package/dist/collection/components/illustration/illustrations-ui-kit.js +0 -2
  104. package/dist/collection/components/input/exports.js +0 -16
  105. package/dist/collection/components/input/input.css +0 -180
  106. package/dist/collection/components/input/input.js +0 -1572
  107. package/dist/collection/components/input-code/exports.js +0 -2
  108. package/dist/collection/components/input-code/input-code.css +0 -127
  109. package/dist/collection/components/input-code/input-code.js +0 -1139
  110. package/dist/collection/components/input-date/exports.js +0 -1
  111. package/dist/collection/components/input-date/input-date.css +0 -148
  112. package/dist/collection/components/input-date/input-date.js +0 -1228
  113. package/dist/collection/components/input-password/exports.js +0 -1
  114. package/dist/collection/components/input-password/input-password.css +0 -25
  115. package/dist/collection/components/input-password/input-password.js +0 -1051
  116. package/dist/collection/components/input-phone-number/input-phone-number.css +0 -61
  117. package/dist/collection/components/input-phone-number/input-phone-number.js +0 -874
  118. package/dist/collection/components/label/label.css +0 -38
  119. package/dist/collection/components/label/label.js +0 -47
  120. package/dist/collection/components/list-item/list-item/exports.js +0 -2
  121. package/dist/collection/components/list-item/list-item/list-item.css +0 -199
  122. package/dist/collection/components/list-item/list-item/list-item.js +0 -467
  123. package/dist/collection/components/pagination/exports.js +0 -3
  124. package/dist/collection/components/pagination/pagination.css +0 -118
  125. package/dist/collection/components/pagination/pagination.js +0 -799
  126. package/dist/collection/components/panel/exports.js +0 -1
  127. package/dist/collection/components/panel/panel.css +0 -192
  128. package/dist/collection/components/panel/panel.js +0 -473
  129. package/dist/collection/components/popover/exports.js +0 -3
  130. package/dist/collection/components/popover/popover.css +0 -251
  131. package/dist/collection/components/popover/popover.js +0 -741
  132. package/dist/collection/components/popover-action/popover-action.css +0 -21
  133. package/dist/collection/components/popover-action/popover-action.js +0 -150
  134. package/dist/collection/components/popover-content/popover-content.css +0 -9
  135. package/dist/collection/components/popover-content/popover-content.js +0 -130
  136. package/dist/collection/components/popover-headline/popover-headline.css +0 -7
  137. package/dist/collection/components/popover-headline/popover-headline.js +0 -28
  138. package/dist/collection/components/popover-trigger/exports.js +0 -1
  139. package/dist/collection/components/popover-trigger/popover-trigger.css +0 -4
  140. package/dist/collection/components/popover-trigger/popover-trigger.js +0 -163
  141. package/dist/collection/components/progress-bar/progress-bar.css +0 -41
  142. package/dist/collection/components/progress-bar/progress-bar.js +0 -71
  143. package/dist/collection/components/radio-button/radio-button.css +0 -126
  144. package/dist/collection/components/radio-button/radio-button.js +0 -559
  145. package/dist/collection/components/radio-button-description/radio-button-description.css +0 -5
  146. package/dist/collection/components/radio-button-description/radio-button-description.js +0 -22
  147. package/dist/collection/components/radio-button-leading/radio-button-leading.css +0 -3
  148. package/dist/collection/components/radio-button-leading/radio-button-leading.js +0 -22
  149. package/dist/collection/components/radio-button-title/radio-button-title.css +0 -8
  150. package/dist/collection/components/radio-button-title/radio-button-title.js +0 -22
  151. package/dist/collection/components/radio-button-trailing/radio-button-trailing.css +0 -6
  152. package/dist/collection/components/radio-button-trailing/radio-button-trailing.js +0 -22
  153. package/dist/collection/components/radio-group/exports.js +0 -1
  154. package/dist/collection/components/radio-group/radio-group.css +0 -65
  155. package/dist/collection/components/radio-group/radio-group.js +0 -1020
  156. package/dist/collection/components/select/exports.js +0 -1
  157. package/dist/collection/components/select/select.css +0 -247
  158. package/dist/collection/components/select/select.js +0 -2011
  159. package/dist/collection/components/select-option/select-option.css +0 -93
  160. package/dist/collection/components/select-option/select-option.js +0 -459
  161. package/dist/collection/components/skip-link/exports.js +0 -1
  162. package/dist/collection/components/skip-link/skip-link.css +0 -37
  163. package/dist/collection/components/skip-link/skip-link.js +0 -52
  164. package/dist/collection/components/stepper/stepper.css +0 -25
  165. package/dist/collection/components/stepper/stepper.js +0 -216
  166. package/dist/collection/components/stepper-item/stepper-item.css +0 -62
  167. package/dist/collection/components/stepper-item/stepper-item.js +0 -171
  168. package/dist/collection/components/tab/tab.css +0 -81
  169. package/dist/collection/components/tab/tab.js +0 -169
  170. package/dist/collection/components/tab-panel/tab-panel.css +0 -19
  171. package/dist/collection/components/tab-panel/tab-panel.js +0 -72
  172. package/dist/collection/components/tabs/tabs.css +0 -4
  173. package/dist/collection/components/tabs/tabs.js +0 -345
  174. package/dist/collection/components/tabs-list/exports.js +0 -2
  175. package/dist/collection/components/tabs-list/tabs-list.css +0 -58
  176. package/dist/collection/components/tabs-list/tabs-list.js +0 -294
  177. package/dist/collection/components/textarea/exports.js +0 -8
  178. package/dist/collection/components/textarea/textarea.css +0 -148
  179. package/dist/collection/components/textarea/textarea.js +0 -1055
  180. package/dist/collection/components/toast/exports.js +0 -3
  181. package/dist/collection/components/toast/toast.css +0 -179
  182. package/dist/collection/components/toast/toast.js +0 -812
  183. package/dist/collection/components/toast-group/exports.js +0 -1
  184. package/dist/collection/components/toast-group/toast-group.css +0 -37
  185. package/dist/collection/components/toast-group/toast-group.js +0 -49
  186. package/dist/collection/components/tooltip/exports.js +0 -3
  187. package/dist/collection/components/tooltip/tooltip.css +0 -106
  188. package/dist/collection/components/tooltip/tooltip.js +0 -500
  189. package/dist/collection/index.js +0 -1
  190. package/dist/collection/utils/focusable.js +0 -24
  191. package/dist/collection/utils/formData.js +0 -40
  192. package/dist/collection/utils/theming.js +0 -103
  193. package/dist/esm/app-globals-DQuL1Twl.js +0 -3
  194. package/dist/esm/focusable-ky1yonnS.js +0 -26
  195. package/dist/esm/formData-DvLT8-y3.js +0 -42
  196. package/dist/esm/index-CTxpqopm.js +0 -1806
  197. package/dist/esm/index.js +0 -1
  198. package/dist/esm/loader.js +0 -11
  199. package/dist/esm/r-accordion-panel.entry.js +0 -22
  200. package/dist/esm/r-accordion-section.entry.js +0 -123
  201. package/dist/esm/r-accordion-trigger.entry.js +0 -91
  202. package/dist/esm/r-accordion.entry.js +0 -18
  203. package/dist/esm/r-alert.entry.js +0 -144
  204. package/dist/esm/r-badge.entry.js +0 -38
  205. package/dist/esm/r-button.entry.js +0 -147
  206. package/dist/esm/r-checkbox-group.entry.js +0 -230
  207. package/dist/esm/r-checkbox.entry.js +0 -267
  208. package/dist/esm/r-design-system-devtools.entry.js +0 -29
  209. package/dist/esm/r-dialog.entry.js +0 -105
  210. package/dist/esm/r-hint_2.entry.js +0 -47
  211. package/dist/esm/r-icon-button_2.entry.js +0 -464
  212. package/dist/esm/r-icon.entry.js +0 -282
  213. package/dist/esm/r-illustration.entry.js +0 -394
  214. package/dist/esm/r-input-code.entry.js +0 -430
  215. package/dist/esm/r-input-date.entry.js +0 -517
  216. package/dist/esm/r-input-password.entry.js +0 -263
  217. package/dist/esm/r-input-phone-number.entry.js +0 -2523
  218. package/dist/esm/r-input.entry.js +0 -400
  219. package/dist/esm/r-list-item.entry.js +0 -107
  220. package/dist/esm/r-pagination.entry.js +0 -312
  221. package/dist/esm/r-panel.entry.js +0 -182
  222. package/dist/esm/r-popover-action.entry.js +0 -78
  223. package/dist/esm/r-popover-content.entry.js +0 -60
  224. package/dist/esm/r-popover-headline.entry.js +0 -26
  225. package/dist/esm/r-popover-trigger.entry.js +0 -68
  226. package/dist/esm/r-popover.entry.js +0 -345
  227. package/dist/esm/r-progress-bar.entry.js +0 -23
  228. package/dist/esm/r-radio-button-description.entry.js +0 -16
  229. package/dist/esm/r-radio-button-leading.entry.js +0 -16
  230. package/dist/esm/r-radio-button-title.entry.js +0 -16
  231. package/dist/esm/r-radio-button-trailing.entry.js +0 -16
  232. package/dist/esm/r-radio-button.entry.js +0 -137
  233. package/dist/esm/r-radio-group.entry.js +0 -423
  234. package/dist/esm/r-select-option.entry.js +0 -128
  235. package/dist/esm/r-select.entry.js +0 -1099
  236. package/dist/esm/r-skip-link.entry.js +0 -17
  237. package/dist/esm/r-stepper-item.entry.js +0 -40
  238. package/dist/esm/r-stepper.entry.js +0 -97
  239. package/dist/esm/r-tab-panel.entry.js +0 -24
  240. package/dist/esm/r-tab.entry.js +0 -60
  241. package/dist/esm/r-tabs-list.entry.js +0 -173
  242. package/dist/esm/r-tabs.entry.js +0 -275
  243. package/dist/esm/r-textarea.entry.js +0 -268
  244. package/dist/esm/r-toast-group.entry.js +0 -44
  245. package/dist/esm/r-toast.entry.js +0 -304
  246. package/dist/esm/style-observer-4Uv3PpKT.js +0 -1116
  247. package/dist/esm/theming-DD2IrjpG.js +0 -106
  248. package/dist/esm/web-components.js +0 -21
  249. package/dist/index.cjs.js +0 -1
  250. package/dist/index.js +0 -1
  251. package/dist/types/components/accordion/accordion.d.ts +0 -27
  252. package/dist/types/components/accordion/exports.d.ts +0 -2
  253. package/dist/types/components/accordion-panel/accordion-panel.d.ts +0 -10
  254. package/dist/types/components/accordion-section/accordion-section.d.ts +0 -36
  255. package/dist/types/components/accordion-trigger/accordion-trigger.d.ts +0 -33
  256. package/dist/types/components/alert/alert.d.ts +0 -67
  257. package/dist/types/components/alert/exports.d.ts +0 -4
  258. package/dist/types/components/badge/badge.d.ts +0 -23
  259. package/dist/types/components/badge/exports.d.ts +0 -2
  260. package/dist/types/components/button/button.d.ts +0 -89
  261. package/dist/types/components/button/exports.d.ts +0 -10
  262. package/dist/types/components/checkbox/checkbox.d.ts +0 -136
  263. package/dist/types/components/checkbox-group/checkbox-group.d.ts +0 -122
  264. package/dist/types/components/design-system-devtools/design-system-devtools.d.ts +0 -15
  265. package/dist/types/components/dialog/dialog.d.ts +0 -69
  266. package/dist/types/components/dialog/exports.d.ts +0 -10
  267. package/dist/types/components/hint/exports.d.ts +0 -2
  268. package/dist/types/components/hint/hint.d.ts +0 -20
  269. package/dist/types/components/icon/all-kit.d.ts +0 -2890
  270. package/dist/types/components/icon/data.d.ts +0 -145
  271. package/dist/types/components/icon/exports.d.ts +0 -152
  272. package/dist/types/components/icon/icon.d.ts +0 -37
  273. package/dist/types/components/icon/riverty-kit.d.ts +0 -139
  274. package/dist/types/components/icon-button/icon-button.d.ts +0 -69
  275. package/dist/types/components/illustration/data.d.ts +0 -52
  276. package/dist/types/components/illustration/exports.d.ts +0 -23
  277. package/dist/types/components/illustration/illustration.d.ts +0 -51
  278. package/dist/types/components/illustration/illustrations-ui-kit.d.ts +0 -21
  279. package/dist/types/components/input/exports.d.ts +0 -10
  280. package/dist/types/components/input/input.d.ts +0 -300
  281. package/dist/types/components/input-code/exports.d.ts +0 -4
  282. package/dist/types/components/input-code/input-code.d.ts +0 -175
  283. package/dist/types/components/input-date/exports.d.ts +0 -5
  284. package/dist/types/components/input-date/input-date.d.ts +0 -172
  285. package/dist/types/components/input-password/exports.d.ts +0 -1
  286. package/dist/types/components/input-password/input-password.d.ts +0 -184
  287. package/dist/types/components/input-phone-number/input-phone-number.d.ts +0 -128
  288. package/dist/types/components/label/label.d.ts +0 -9
  289. package/dist/types/components/list-item/list-item/exports.d.ts +0 -4
  290. package/dist/types/components/list-item/list-item/list-item.d.ts +0 -61
  291. package/dist/types/components/pagination/exports.d.ts +0 -6
  292. package/dist/types/components/pagination/pagination.d.ts +0 -140
  293. package/dist/types/components/panel/exports.d.ts +0 -2
  294. package/dist/types/components/panel/panel.d.ts +0 -56
  295. package/dist/types/components/popover/exports.d.ts +0 -6
  296. package/dist/types/components/popover/popover.d.ts +0 -131
  297. package/dist/types/components/popover-action/popover-action.d.ts +0 -24
  298. package/dist/types/components/popover-content/popover-content.d.ts +0 -22
  299. package/dist/types/components/popover-headline/popover-headline.d.ts +0 -6
  300. package/dist/types/components/popover-trigger/exports.d.ts +0 -2
  301. package/dist/types/components/popover-trigger/popover-trigger.d.ts +0 -31
  302. package/dist/types/components/progress-bar/progress-bar.d.ts +0 -10
  303. package/dist/types/components/radio-button/radio-button.d.ts +0 -92
  304. package/dist/types/components/radio-button-description/radio-button-description.d.ts +0 -8
  305. package/dist/types/components/radio-button-leading/radio-button-leading.d.ts +0 -8
  306. package/dist/types/components/radio-button-title/radio-button-title.d.ts +0 -8
  307. package/dist/types/components/radio-button-trailing/radio-button-trailing.d.ts +0 -8
  308. package/dist/types/components/radio-group/exports.d.ts +0 -2
  309. package/dist/types/components/radio-group/radio-group.d.ts +0 -178
  310. package/dist/types/components/select/exports.d.ts +0 -2
  311. package/dist/types/components/select/select.d.ts +0 -317
  312. package/dist/types/components/select-option/select-option.d.ts +0 -113
  313. package/dist/types/components/skip-link/exports.d.ts +0 -2
  314. package/dist/types/components/skip-link/skip-link.d.ts +0 -6
  315. package/dist/types/components/stepper/stepper.d.ts +0 -22
  316. package/dist/types/components/stepper-item/stepper-item.d.ts +0 -23
  317. package/dist/types/components/tab/tab.d.ts +0 -23
  318. package/dist/types/components/tab-panel/tab-panel.d.ts +0 -7
  319. package/dist/types/components/tabs/tabs.d.ts +0 -49
  320. package/dist/types/components/tabs-list/exports.d.ts +0 -4
  321. package/dist/types/components/tabs-list/tabs-list.d.ts +0 -41
  322. package/dist/types/components/textarea/exports.d.ts +0 -2
  323. package/dist/types/components/textarea/textarea.d.ts +0 -158
  324. package/dist/types/components/toast/exports.d.ts +0 -6
  325. package/dist/types/components/toast/toast.d.ts +0 -146
  326. package/dist/types/components/toast-group/exports.d.ts +0 -2
  327. package/dist/types/components/toast-group/toast-group.d.ts +0 -9
  328. package/dist/types/components/tooltip/exports.d.ts +0 -6
  329. package/dist/types/components/tooltip/tooltip.d.ts +0 -131
  330. package/dist/types/components.d.ts +0 -6286
  331. package/dist/types/index.d.ts +0 -1
  332. package/dist/types/stencil-public-runtime.d.ts +0 -1732
  333. package/dist/types/types/jsx-shim.d.ts +0 -13
  334. package/dist/types/types/style-observer.d.ts +0 -20
  335. package/dist/types/utils/focusable.d.ts +0 -1
  336. package/dist/types/utils/formData.d.ts +0 -1
  337. package/dist/types/utils/theming.d.ts +0 -15
  338. package/dist/web-components/index.esm.js +0 -0
  339. package/dist/web-components/p-02b22f8e.entry.js +0 -1
  340. package/dist/web-components/p-075a8dc8.entry.js +0 -1
  341. package/dist/web-components/p-0a34d33b.entry.js +0 -1
  342. package/dist/web-components/p-10cc9983.entry.js +0 -1
  343. package/dist/web-components/p-253068b9.entry.js +0 -1
  344. package/dist/web-components/p-3b8c8951.entry.js +0 -1
  345. package/dist/web-components/p-3beacdab.entry.js +0 -1
  346. package/dist/web-components/p-4214867d.entry.js +0 -1
  347. package/dist/web-components/p-42c857e9.entry.js +0 -1
  348. package/dist/web-components/p-44f87e16.entry.js +0 -1
  349. package/dist/web-components/p-477614c5.entry.js +0 -1
  350. package/dist/web-components/p-495ba3d2.entry.js +0 -1
  351. package/dist/web-components/p-4Uv3PpKT.js +0 -1
  352. package/dist/web-components/p-4de76291.entry.js +0 -1
  353. package/dist/web-components/p-55600d47.entry.js +0 -1
  354. package/dist/web-components/p-562051aa.entry.js +0 -1
  355. package/dist/web-components/p-5b850e0f.entry.js +0 -1
  356. package/dist/web-components/p-6013dfc8.entry.js +0 -1
  357. package/dist/web-components/p-62e7ae04.entry.js +0 -1
  358. package/dist/web-components/p-71519d37.entry.js +0 -1
  359. package/dist/web-components/p-88f7b47f.entry.js +0 -1
  360. package/dist/web-components/p-8975a6a3.entry.js +0 -1
  361. package/dist/web-components/p-8e125826.entry.js +0 -1
  362. package/dist/web-components/p-91cc0bde.entry.js +0 -1
  363. package/dist/web-components/p-93435fcd.entry.js +0 -1
  364. package/dist/web-components/p-947969d7.entry.js +0 -1
  365. package/dist/web-components/p-95396b5c.entry.js +0 -1
  366. package/dist/web-components/p-9de3a1a5.entry.js +0 -1
  367. package/dist/web-components/p-9f583ed1.entry.js +0 -1
  368. package/dist/web-components/p-B9rsR6cQ.js +0 -1
  369. package/dist/web-components/p-CTxpqopm.js +0 -2
  370. package/dist/web-components/p-DQuL1Twl.js +0 -1
  371. package/dist/web-components/p-DvLT8-y3.js +0 -1
  372. package/dist/web-components/p-a1086abe.entry.js +0 -1
  373. package/dist/web-components/p-bbba6d79.entry.js +0 -1
  374. package/dist/web-components/p-bde44ec4.entry.js +0 -1
  375. package/dist/web-components/p-bfc7e6c0.entry.js +0 -1
  376. package/dist/web-components/p-c1030394.entry.js +0 -1
  377. package/dist/web-components/p-c1f59ed1.entry.js +0 -1
  378. package/dist/web-components/p-c80a5541.entry.js +0 -1
  379. package/dist/web-components/p-c96ee61a.entry.js +0 -1
  380. package/dist/web-components/p-caf8f067.entry.js +0 -1
  381. package/dist/web-components/p-cc363c3d.entry.js +0 -1
  382. package/dist/web-components/p-cf4ff357.entry.js +0 -1
  383. package/dist/web-components/p-d0310ed4.entry.js +0 -1
  384. package/dist/web-components/p-d1412932.entry.js +0 -1
  385. package/dist/web-components/p-d2447e30.entry.js +0 -1
  386. package/dist/web-components/p-dc9cca06.entry.js +0 -1
  387. package/dist/web-components/p-e5b943a2.entry.js +0 -1
  388. package/dist/web-components/p-e67b13df.entry.js +0 -1
  389. package/dist/web-components/p-efec231a.entry.js +0 -1
  390. package/dist/web-components/p-f867e4c3.entry.js +0 -1
  391. package/dist/web-components/p-ky1yonnS.js +0 -1
  392. package/dist/web-components/web-components.esm.js +0 -1
  393. package/loader/cdn.js +0 -1
  394. package/loader/index.cjs.js +0 -1
  395. package/loader/index.d.ts +0 -24
  396. package/loader/index.es2017.js +0 -1
  397. package/loader/index.js +0 -2
@@ -1,29 +0,0 @@
1
- import { r as registerInstance, h, H as Host, g as getElement } from './index-CTxpqopm.js';
2
-
3
- const DesignSystemDevtools = class {
4
- constructor(hostRef) {
5
- registerInstance(this, hostRef);
6
- /** Whether to display a preview of some key design tokens */
7
- this.designTokens = false;
8
- }
9
- renderDesignTokens() {
10
- const tokens = [
11
- 'r-color-green-vanguard',
12
- 'r-color-grey-charcoal',
13
- 'r-color-white-haze',
14
- 'r-color-orange-ember',
15
- ];
16
- return (h(Host, null, tokens.map(t => {
17
- return (h("div", { style: { backgroundColor: `var(--${t})` } }, "This text should have ", h("code", null, t), " background color"));
18
- })));
19
- }
20
- render() {
21
- if (this.designTokens) {
22
- return this.renderDesignTokens();
23
- }
24
- return h(Host, null);
25
- }
26
- get el() { return getElement(this); }
27
- };
28
-
29
- export { DesignSystemDevtools as r_design_system_devtools };
@@ -1,105 +0,0 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-CTxpqopm.js';
2
-
3
- const dialogCss = ":host([size=small]){--r-dialog--width:23.4375rem;--r-dialog--max-height:15.625rem}:host([size=medium]){--r-dialog--width:37.5rem;--r-dialog--max-height:37.5rem}:host([size=large]){--r-dialog--width:50rem;--r-dialog--max-height:45rem}@media (max-width: 50rem){:host([size=large]){--r-dialog--width:100%;--right:0;--left:0;--r-dialog--footer--flex-wrap:wrap}}@media (max-height: 48.75rem){:host([size=large]){--r-dialog--margin:18px auto;--top:0;--bottom:0}}@media (max-width: 37.5rem){:host([size=medium]){--r-dialog--width:100%;--right:0;--left:0;--r-dialog--footer--flex-wrap:wrap}}@media (max-height: 43.75rem){:host([size=medium]){--r-dialog--margin:18px auto;--top:0;--bottom:0}}:host{top:var(--top, auto);right:var(--right, auto);bottom:var(--bottom, auto);left:var(--left, auto)}.r-dialog{border:var(--r-dialog--border, none);padding:var(--r-dialog--padding, 24px 0);box-sizing:var(--r-dialog--box-sizing, border-box);overflow:var(--r-dialog--overflow, hidden);width:var(--r-dialog--width, auto);height:var(--r-dialog--height, auto);background-color:var(--r-dialog--background-color, var(--r-background-softest));margin:var(--r-dialog--margin, auto);max-height:var(--r-dialog--max-height, auto)}.r-dialog--content{display:var(--r-dialog--content--display, flex);flex-direction:var(--r-dialog--content--flex-direction, column);gap:var(--r-dialog--content--gap, var(--r-spacing-150, 1.5rem));color:var(--r-dialog--content--color, var(--r-text-regular));height:var(--r-dialog--content--height, 100%)}.r-dialog ::slotted([slot=header]),.r-dialog--headline{font-family:var(--r-dialog--headline--font-family, var(--r-font-family-heading, sans-serif));font-size:var(--r-dialog--headline--font-size, var(--r-font-size-500));font-weight:var(--r-dialog--headline--font-weight, var(--r-font-weight-light));margin:var(--r-dialog--headline--margin, 0);flex:var(--r-dialog--headline--flex, 1)}.r-dialog--close{--r-button--display:var(--r-dialog--close--dispaly, flex);--r-button--padding:var(--r-dialog--close--padding, 0)}.r-dialog--header{display:var(--r-dialog--header--display, flex);justify-content:var(--r-dialog--header--justify-content, space-between);align-items:var(--r-dialog--header--align-items, start);gap:var(--r-dialog--header--gap, 32px);padding:var(--r-dialog--header--padding, 0 24px)}.r-dialog--body{font-family:var(--r-dialog--body--font-family, var(--r-font-family-text));font-size:var(--r-dialog--body--font-size, var(--r-font-size-desktop-400));line-height:var(--r-dialog--body--line-height, var(--r-line-height-m));flex-grow:var(--r-dialog--body--flex-grow, 1);overflow-y:var(--r-dialog--body--overflow, auto);justify-self:var(--r-dialog--body--justify-self, stretch);padding:var(--r-dialog--body--padding, 0 24px)}.r-dialog--body{scrollbar-width:auto;scrollbar-color:var(--r-border-softer) #ffffff}.r-dialog--body::-webkit-scrollbar{width:var(--r-spacing-100, 1rem)}.r-dialog--body::-webkit-scrollbar-track{background:#ffffff}.r-dialog--body::-webkit-scrollbar-thumb{background-color:var(--r-border-softer);border-radius:10px;border:3px solid #ffffff}.r-dialog ::slotted([slot=footer]){margin-top:var(--r-dialog--footer--margin-top, auto);display:var(--r-dialog--footer--display, flex);flex-direction:var(--r-dialog--footer--flex-direction, row);flex-wrap:var(--r-dialog--footer--flex-wrap, nowrap);justify-content:var(--r-dialog--footer--justify-content, flex-start);gap:var(--r-dialog--footer--gap, var(--r-spacing-100, 1rem));align-items:var(--r-dialog--footer--align-items, end);padding:var(--r-dialog--header--padding, 0 24px)}.r-dialog::backdrop{background:var(--backdrop--background-color, rgba(0, 0, 0, 0.25))}";
4
-
5
- const Dialog = class {
6
- constructor(hostRef) {
7
- registerInstance(this, hostRef);
8
- this.dialogClose = createEvent(this, "close");
9
- /** Define if dialog either shown or hidden. */
10
- this.open = false;
11
- /**
12
- * Allows to set height of the dialog body container
13
- * while the value is smaller then `max-height` of the
14
- * dialog body pre-set according to the `size` prop.
15
- */
16
- this.bodyHeight = 'auto';
17
- /**
18
- * Defines one of pre-defined sizes of the dialog.
19
- */
20
- this.size = 'medium';
21
- /**
22
- * Defines if dialog is currently revealed.
23
- * */
24
- this.isOpen = this.open;
25
- this.uniqueId = `r-dialog-${Date.now().toString(32)}${Math.random().toString(32)}`.replace(/\./g, '');
26
- this.onTriggerClick = () => {
27
- this.close();
28
- };
29
- this.isInside = event => {
30
- var _a;
31
- const rect = (_a = this.dialogElement) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();
32
- return rect.top <= event.clientY && event.clientY <= rect.bottom &&
33
- rect.left <= event.clientX && event.clientX <= rect.right;
34
- };
35
- }
36
- handleOpenChange() {
37
- if (this.open && !this.isOpen)
38
- this.showModal();
39
- }
40
- get dialogLabel() {
41
- var _a, _b;
42
- return this.headline || ((_b = (_a = this.host.querySelector('[slot="header"]')) === null || _a === void 0 ? void 0 : _a.textContent) === null || _b === void 0 ? void 0 : _b.trim());
43
- }
44
- /** Method to display a modal dialog */
45
- async showModal() {
46
- var _a;
47
- this.isOpen = true;
48
- (_a = this.dialogElement) === null || _a === void 0 ? void 0 : _a.showModal();
49
- }
50
- /** Method to display a non-modal dialog */
51
- async close() {
52
- var _a, _b;
53
- const { returnValue } = this;
54
- (_a = this.dialogElement) === null || _a === void 0 ? void 0 : _a.close(returnValue);
55
- (_b = this.dialogClose) === null || _b === void 0 ? void 0 : _b.emit();
56
- this.isOpen = false;
57
- }
58
- /** Method to either show or hide dialog
59
- * depending on the current state. */
60
- async toggle() {
61
- if (this.isOpen)
62
- this.showModal();
63
- else
64
- this.close();
65
- }
66
- _renderInitialState() {
67
- if (this.isOpen) {
68
- this.showModal();
69
- }
70
- }
71
- connectEventListeners() {
72
- var _a;
73
- (_a = this.dialogElement) === null || _a === void 0 ? void 0 : _a.addEventListener('close', this.close);
74
- }
75
- disconnectEventListeners() {
76
- var _a;
77
- (_a = this.dialogElement) === null || _a === void 0 ? void 0 : _a.removeEventListener('close', this.close);
78
- }
79
- componentDidLoad() {
80
- this._renderInitialState();
81
- this.connectEventListeners();
82
- }
83
- disconnectedCallback() {
84
- this.disconnectEventListeners();
85
- }
86
- onMouseup(event) {
87
- if (!this.isOpen)
88
- return;
89
- event.stopPropagation();
90
- if (!this.isInside(event)) {
91
- this.close();
92
- }
93
- }
94
- render() {
95
- return (h(Host, { key: '6f042592347577f063f6a80d2152b1149eadcb21', open: this.isOpen }, h("dialog", { key: 'fd3f19cf69a9077585bceccebaf0d0c9bccbaa86', class: "r-dialog", "aria-label": this.dialogLabel, ref: el => this.dialogElement = el, style: { '--r-dialog--body--height': this.bodyHeight } }, h("div", { key: '974e33afe5e96d3a67501d10a4ecd0486900ed64', class: "r-dialog--content" }, h("div", { key: '57bccc4346d7234564dc22c179a7e10051bd3af7', class: "r-dialog--header", id: `${this.uniqueId}-header` }, h("slot", { key: '0a59d6a775f11378f17be41665b2c71aecb17ff9', name: "header" }, (this.headline) &&
96
- h("h2", { key: '6dd6970be5bde3f92d87bef1cbbd7152ba72f88f', class: "r-dialog--headline" }, this.headline)), h("r-icon-button", { key: '37ad4f5b3366ae057240e5bcf2c7443aac3faa9b', class: "r-dialog--close", name: "cross", size: "s", onRClick: this.onTriggerClick, label: this.closeAriaLabel })), h("div", { key: '951dec5b1da5b13196916ed6b64fee89cad83a0e', class: "r-dialog--body" }, this.bodyText, h("slot", { key: '1797cb38116d9818aec51e2dc6982dad1a01cf02' }), h("slot", { key: '0f091bf0e6f6fdd16b79c69aca9814a0d76d7ee6', name: "form" })), h("slot", { key: '2b5a1cadfa9e7a13d8fc4ddca4cf69a1e4a1cb5e', name: "footer" })))));
97
- }
98
- get host() { return getElement(this); }
99
- static get watchers() { return {
100
- "open": ["handleOpenChange"]
101
- }; }
102
- };
103
- Dialog.style = dialogCss;
104
-
105
- export { Dialog as r_dialog };
@@ -1,47 +0,0 @@
1
- import { r as registerInstance, h, H as Host, g as getElement } from './index-CTxpqopm.js';
2
-
3
- const hintCss = ":host{--r-hint--text--flex:1}:host([variant=information]){--r-hint--color:var(--r-text-soft, #686868)}:host([variant=success]),:host([success]){--r-hint--color:var(--r-status-success-regular, #298535)}:host([variant=warning]),:host([warning]){--r-hint--color:var(--r-status-warning-strong, #89411a)}:host([variant=error]),:host([invalid]){--r-hint--color:var(--r-status-error-regular, #b00c15)}:host([icon-position=end]){--r-hint--flex-direction:row-reverse}:host{display:block}.r-hint{display:var(--r-hint--display, flex);flex-direction:var(--r-hint--flex-direction, row);gap:var(--r-hint--gap, var(--r-spacing-050, 0.5rem));font-family:var(--r-hint--font-family, var(--r-font-family-text, system-ui));font-size:var(--r-hint--font-size, var(--r-font-size-300, 0.875rem));line-height:var(--r-hint--line-height, var(--r-line-height-m, 1.5));color:var(--r-hint--color, var(--r-text-soft, #686868));font-weight:var(--r-hint--font-weight, var(--r-font-weight-regular, 400));margin-top:var(--r-hint--margin-top, 0);margin-bottom:var(--r-hint--margin-bottom, 0)}.r-hint--icon{display:var(--r-hint--icon--display, flex);align-items:var(--r-hint--icon--align-items, start);min-width:var(--r-hint--icon--min-width, 1rem);margin-top:var(--r-hint--icon--margin-top, 0.15rem)}.r-hint--text{flex:var(--r-hint--text--flex, 1)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}";
4
-
5
- const Hint = class {
6
- constructor(hostRef) {
7
- registerInstance(this, hostRef);
8
- }
9
- get iconName() {
10
- if (this.icon)
11
- return this.icon;
12
- const variantIcons = {
13
- 'error': 'circled-exclamation-mark',
14
- 'warning': 'circled-cross',
15
- 'success': 'circled-check'
16
- };
17
- return (this.variant in variantIcons) ? variantIcons[this.variant] : null;
18
- }
19
- get hasIconSlot() {
20
- return !!this.host.querySelector('[slot="icon"]');
21
- }
22
- get hasIcon() {
23
- return this.hasIconSlot || this.iconName !== null;
24
- }
25
- render() {
26
- return (h(Host, { key: '1cbe08b7b3b01fc7d870416a1b14e3b1b8525797' }, h("div", { key: '17494f3ae8bdf394858e2f9337e54bd844a467d0', class: "r-hint" }, this.hasIcon &&
27
- h("div", { key: 'ed406c6ae45ea4c25e6735752ced3a988c2f2274', class: "r-hint--icon" }, h("slot", { key: '9e93b83d3f9e71f722ffdb813d46b667eec556a5', name: "icon" }, this.iconName && h("r-icon", { key: '841c3e53381a21e1341191eb7a0b32fdd696c47f', name: this.iconName, size: "s" }))), h("div", { key: '946d0813297923053452519b9871cd9a0d04679f', class: "r-hint--text" }, h("slot", { key: 'f7343fcc6a4cbe9f5584f8d94feff33cfd8f2560' })))));
28
- }
29
- get host() { return getElement(this); }
30
- };
31
- Hint.style = hintCss;
32
-
33
- const labelCss = "@charset \"UTF-8\";:host([field-indicator]){--r-label--marker--display:inline}.r-label{display:var(--r-label--display, flex);flex-direction:var(--r-label--flex-direction, row);gap:var(--r-label--gap, var(--r-spacing-100, 1rem));cursor:var(--r-label--cursor, default);color:var(--r-label--color, var(--r-text-regular, #282828));margin-bottom:var(--r-label--margin-bottom, 0)}.r-label--slot{flex:var(--r-label--slot--flex, 1);line-height:var(--r-label--line-height, var(--r-line-height-m, 1.5));font-family:var(--r-label--font-family, var(--r-font-family-text, system-ui));font-size:var(--r-label--font-size, var(--r-font-size-regular, 1rem));font-weight:var(--r-label--font-weight, var(--r-font-weight-regular, 400))}.r-label--marker{display:var(--r-label--marker--display, none);color:var(--r-label--marker--color, var(--r-text-soft, #686868));font-size:var(--r-label--marker--font-size, var(--r-font-size-300, 0.875rem));font-style:var(--r-label--marker--font-style, normal);font-weight:var(--r-label--marker--font-weight, var(--r-font-weight-regular, 400));margin-left:var(--r-label--marker--margin-left, var(--r-spacing-075, 0.75rem))}.r-label--marker::before{content:var(--r-label--marker--before--content, \"– \")}.r-label--tooltip-icon{color:var(--r-label--tooltip-icon--color, var(--r-text-regular, inherit));display:var(--r-label--tooltip-icon--display, inline-flex);line-height:var(--r-label--tooltip-icon--line-height, 1);align-items:var(--r-label--tooltip-icon--align-items, center);justify-content:var(--r-label--tooltip-icon--justify-content, center)}";
34
-
35
- const RLabel = class {
36
- constructor(hostRef) {
37
- registerInstance(this, hostRef);
38
- }
39
- render() {
40
- const { fieldIndicator } = this;
41
- return (h(Host, { key: '4a8c827bf39bac03424a1caefeb8795871b08276' }, h("div", { key: '212ea6fc9e2476361083610c6b8801ea3a4d79e9', class: "r-label" }, h("span", { key: '0bf0a1fc635553165fe02937626cba8a44854f3d', class: "r-label--slot" }, h("slot", { key: '16165450aeffd754cbcac5640297ab4efe94bf4c' }), fieldIndicator &&
42
- h("span", { key: '34e19397cff4fa69839475ece1077c4271d9ceb4', class: "r-label--marker" }, fieldIndicator)))));
43
- }
44
- };
45
- RLabel.style = labelCss;
46
-
47
- export { Hint as r_hint, RLabel as r_label };
@@ -1,464 +0,0 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-CTxpqopm.js';
2
-
3
- const iconButtonCss = ":host{display:inline-flex;vertical-align:top;--r-icon-button--color:inherit}:host(:hover:not([disabled]:not([disabled=false])):not(:active)){--r-icon-button--background-color:var(--r-background-interactive-hovered, rgba(40, 40, 40, 0.04))}:host(:active:not([disabled]:not([disabled=false]))){--r-icon-button--background-color:var(--r-background-interactive-pressed, rgba(40, 40, 40, 0.12))}:host(:focus-within:not(:active):not([disabled]:not([disabled=false]))){box-shadow:0 0 0 6px var(--r-border-focused-outlined, #fff);outline:2px solid var(--r-border-focused, #0071e3);outline-offset:2px}:host([disabled]:not([disabled=false])){opacity:0.4;--r-icon-button--cursor:not-allowed;--r-icon-button--box-shadow:none;--r-icon-button--background-color:transparent}:host([variant=contained]){--r-icon-button--color:var(--r-icon-inverse, #fff);--r-icon-button--background-color:var(--r-background-interactive-regular, #282828);--r-icon-button--box-shadow:none}:host([variant=contained]:hover:not([disabled]:not([disabled=false]))){--r-icon-button--color:var(--r-icon-regular, #282828);--r-icon-button--background-color:var(--r-background-interactive-hovered, rgba(40, 40, 40, 0.04))}:host([variant=contained]:active:not([disabled]:not([disabled=false]))){--r-icon-button--color:var(--r-icon-regular, #282828);--r-icon-button--background-color:var(--r-background-interactive-pressed, rgba(40, 40, 40, 0.12))}:host([variant=contained][disabled]:not([disabled=false])){--r-icon-button--color:var(--r-icon-inverse, #fff);--r-icon-button--background-color:var(--r-background-interactive-regular, #282828)}:host([size=s]){--r-icon-button--height:1.5rem;--r-icon-button--width:1.5rem}:host([size=m]){--r-icon-button--height:2.25rem;--r-icon-button--width:2.25rem}:host([size=l]){--r-icon-button--height:2.75rem;--r-icon-button--width:2.75rem}.r-icon-button{display:var(--r-icon-button--display, inline-flex);align-items:var(--r-icon-button--align-items, center);justify-content:var(--r-icon-button--justify-content, center);outline:var(--r-icon-button--outline, none);cursor:var(--r-icon-button--cursor, pointer);pointer-events:var(--r-icon-button--pointer-events, initial);padding:var(--r-icon-button--padding, 0);border:var(--r-icon-button--border, none);color:var(--r-icon-button--color, inherit);background-color:var(--r-icon-button--background-color, transparent);box-sizing:var(--r-icon-button--box-sizing, border-box);border-width:var(--r-icon-button--border-width, 1px);border-style:var(--r-icon-button--border-style, solid);border-color:var(--r-icon-button--border-color, transparent);border-radius:var(--r-icon-button--border-radius, 50%);z-index:var(--r-icon-button--z-index, initial);width:var(--r-icon-button--width, 2.25rem);height:var(--r-icon-button--height, 2.25rem)}.r-icon-button--target-area{position:var(--r-icon-button--target-area--position, absolute);background:var(--r-icon-button--target-area--background, rgba(0, 0, 0, 0));width:var(--r-icon-button--target-area--width, 2.75rem);height:var(--r-icon-button--target-area--height, 2.75rem);z-index:var(--r-icon-button--target-area--z-index, 1)}.r-icon-button--icon{display:flex;align-items:center;justify-content:center}.visually-hidden{position:absolute;width:1px;height:1px;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap}";
4
-
5
- const IconButton = class {
6
- constructor(hostRef) {
7
- registerInstance(this, hostRef);
8
- this.rClick = createEvent(this, "rClick");
9
- /**
10
- * Defines the size of the icon used within the button.
11
- */
12
- this.size = 'm';
13
- /**
14
- * @deprecated Use the `<r-tooltip>` component as a wrapper instead.
15
- * Sets position for the tooltip.
16
- * - `top`: Tooltip appears above the button.
17
- * - `bottom`: Tooltip appears below the button.
18
- * - `left`: Tooltip appears to the left of the button.
19
- * - `right`: Tooltip appears to the right of the button.
20
- */
21
- this.tooltipPosition = 'top';
22
- /**
23
- * Defines the visual style of the button.
24
- * - `standard`: Default button style.
25
- * - `contained`: Button with a contained background.
26
- */
27
- this.variant = 'standard';
28
- this._handleClick = (event) => {
29
- if (this.disabled) {
30
- event.preventDefault();
31
- return;
32
- }
33
- this.rClick.emit();
34
- };
35
- this.onFocus = () => {
36
- this.setFocus();
37
- };
38
- this.onBlur = () => {
39
- this.setBlur();
40
- };
41
- }
42
- /** Simulate a button click */
43
- async triggerClick() {
44
- var _a;
45
- (_a = this.nativeElement) === null || _a === void 0 ? void 0 : _a.click();
46
- }
47
- /** Set focus on the button */
48
- async setFocus() {
49
- var _a;
50
- (_a = this.nativeElement) === null || _a === void 0 ? void 0 : _a.focus();
51
- }
52
- /** Remove focus from the button */
53
- async setBlur() {
54
- var _a;
55
- (_a = this.nativeElement) === null || _a === void 0 ? void 0 : _a.blur();
56
- }
57
- render() {
58
- const { name, size, disabled, tooltipText, tooltipPosition } = this;
59
- const buttonAttrs = {
60
- disabled,
61
- };
62
- const iconAttrs = {
63
- name,
64
- size
65
- };
66
- const buttonTemplate = () => (h("button", Object.assign({ key: '05fbf705a760c71c292bfd0e61b56a362c8b8a36', type: "button", tabindex: !this.disabled && this.rTabindex || null, class: "r-icon-button", "aria-label": this.host.getAttribute('aria-label') || null }, buttonAttrs, { onClick: this._handleClick, onFocus: this.onFocus, onBlur: this.onBlur, ref: (el) => (this.nativeElement = el) }), name ?
67
- h("r-icon", Object.assign({}, iconAttrs))
68
- :
69
- h("r-icon", { size: size, class: "r-icon-button--icon" }, h("slot", null)), h("span", { key: '9c6d1c80c1e8cc88345a5e45b0060cb0eb285904', class: "r-icon-button--label visually-hidden" }, this.label), h("span", { key: '4ea91afe81b472b5ce5c6a993574518ab1a40d2f', class: "r-icon-button--target-area" })));
70
- return (h(Host, { key: '54574ad857a36fdb0f263a3abf224c3d24955f07' }, !disabled && tooltipText ?
71
- h("r-tooltip", { text: tooltipText, position: tooltipPosition }, buttonTemplate())
72
- :
73
- buttonTemplate()));
74
- }
75
- get host() { return getElement(this); }
76
- };
77
- IconButton.style = iconButtonCss;
78
-
79
- const tooltipCss = ":host{display:inline-block;--r-tooltip--position:relative;--r-tooltip--content--position:fixed;--r-tooltip--content--display:none;--r-tooltip--content--color:var(--r-text-inverse);--r-tooltip--content--background-color:var(--r-background-inverse);--r-tooltip--content--font-family:var(--r-font-family-text);--r-tooltip--content--font-weight:var(--r-font-weight-regular);--r-tooltip--content--font-size:var(--r-font-size-200);--r-tooltip--content--line-height:var(--r-line-height-s);--r-tooltip--content--min-width:32px;--r-tooltip--content--max-width:300px;--r-tooltip--content--min-height:32px;--r-tooltip--content--padding:var(--r-spacing-050) var(--r-spacing-100);--r-tooltip--content--width:max-width;--r-tooltip--content--word-break:break-word;--r-tooltip--content--box-sizing:border-box;--r-tooltip--content--justify-content:center;--r-tooltip--content--align-items:center;--r-tooltip--content--z-index:0;--r-tooltip--arrow--display:none;--r-tooltip--arrow--position:fixed;--r-tooltip--arrow--width:12px;--r-tooltip--arrow--height:12px;--r-tooltip--arrow--transform:rotate(180deg);--r-tooltip--arrow--inner-content:\"\";--r-tooltip--arrow--inner--width:12px;--r-tooltip--arrow--inner--height:6px;--r-tooltip--arrow--inner--background-color:var(--r-tooltip--content--background-color);--r-tooltip--arrow--inner--clip-path:polygon(50% 0%, 0% 100%, 100% 100%);--r-tooltip--arrow--inner--border-radius:0;--r-tooltip--arrow--inner--align-self:flex-end}:host slot{display:contents}:host([data-position=bottom]){--r-tooltip--arrow--transform:rotate(0)}:host([data-position=right]){--r-tooltip--arrow--transform:rotate(270deg)}:host([data-position=left]){--r-tooltip--arrow--transform:rotate(90deg)}.r-tooltip{position:var(--r-tooltip--position)}.r-tooltip:has(.r-tooltip--content--visible){--r-tooltip--content--width:max-content;--r-tooltip--content--display:flex;--r-tooltip--content--z-index:1060;--r-tooltip--arrow--display:flex;--r-tooltip--arrow--inner--display:block}.r-tooltip--trigger{color:var(--r-tooltip--trigger--color, inherit);box-shadow:var(--r-tooltip--trigger--box-shadow, none);outline:var(--r-tooltip--trigger--outline, none);outline-offset:var(--r-tooltip--trigger--outline-offset, 0)}.r-tooltip--trigger:focus{--r-tooltip--trigger--box-shadow:0 0 0 6px var(--r-border-focused-outlined);--r-tooltip--trigger--outline:2px solid var(--r-border-focused);--r-tooltip--trigger--outline-offset:2px}.r-tooltip--content{position:var(--r-tooltip--content--position);display:var(--r-tooltip--content--display);color:var(--r-tooltip--content--color);background-color:var(--r-tooltip--content--background-color);font-family:var(--r-tooltip--content--font-family);font-weight:var(--r-tooltip--content--font-weight);font-size:var(--r-tooltip--content--font-size);line-height:var(--r-tooltip--content--line-height);min-width:var(--r-tooltip--content--min-width);max-width:var(--r-tooltip--content--max-width);min-height:var(--r-tooltip--content--min-height);padding:var(--r-tooltip--content--padding);width:var(--r-tooltip--content--width);word-break:var(--r-tooltip--content--word-break);box-sizing:var(--r-tooltip--content--box-sizing);z-index:var(--r-tooltip--content--z-index)}.r-tooltip--arrow{display:var(--r-tooltip--arrow--display);position:var(--r-tooltip--arrow--position);width:var(--r-tooltip--arrow--width);height:var(--r-tooltip--arrow--height);transform:var(--r-tooltip--arrow--transform)}.r-tooltip--arrow:after{content:var(--r-tooltip--arrow--inner-content);display:var(--r-tooltip--arrow--inner--display);width:var(--r-tooltip--arrow--inner--width);height:var(--r-tooltip--arrow--inner--height);background-color:var(--r-tooltip--arrow--inner--background-color);clip-path:var(--r-tooltip--arrow--inner--clip-path);border-radius:var(--r-tooltip--arrow--inner--border-radius);align-self:var(--r-tooltip--arrow--inner--align-self)}";
80
-
81
- const OFFSET = 20;
82
- const Tooltip = class {
83
- constructor(hostRef) {
84
- registerInstance(this, hostRef);
85
- this.rTooltipFocus = createEvent(this, "rTooltipFocus");
86
- /** Tooltip display text */
87
- this.text = '';
88
- /** Specifies tooltip position */
89
- this.position = 'top';
90
- this.arrowPositionState = 'left';
91
- this.isShown = false;
92
- this.uniqueId = `r-tooltip-${Date.now().toString(32)}${Math.random().toString(32)}`.replace(/\./g, '');
93
- this.getOffsetLeft = (arrowPosition) => {
94
- var _a, _b, _c;
95
- const offsetLeft = Math.abs(((_a = this.element) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect().width) - ((_c = (_b = this.tooltip) === null || _b === void 0 ? void 0 : _b.getBoundingClientRect()) === null || _c === void 0 ? void 0 : _c.width));
96
- switch (arrowPosition) {
97
- case 'center':
98
- return offsetLeft / 2;
99
- case 'right':
100
- return offsetLeft;
101
- default:
102
- return 0;
103
- }
104
- };
105
- this.alignTooltipPosition = () => {
106
- var _a, _b, _c, _d, _e, _f, _g;
107
- const offsetHeight = Math.abs(((_a = this.element) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect().height) - ((_c = (_b = this.tooltip) === null || _b === void 0 ? void 0 : _b.getBoundingClientRect()) === null || _c === void 0 ? void 0 : _c.height)) / 2;
108
- const offsetLeft = this.getOffsetLeft(this.arrowPositionState);
109
- const hostHeight = ((_e = (_d = this.element) === null || _d === void 0 ? void 0 : _d.getBoundingClientRect()) === null || _e === void 0 ? void 0 : _e.height) + this.arrowHeight || 0;
110
- const hostWidth = ((_g = (_f = this.element) === null || _f === void 0 ? void 0 : _f.getBoundingClientRect()) === null || _g === void 0 ? void 0 : _g.width) + this.arrowWidth || 0;
111
- switch (this.positionState) {
112
- case 'top':
113
- this.alignPosition(this.tooltip, -offsetLeft, -this.tooltipContainerHeight);
114
- break;
115
- case 'bottom':
116
- this.alignPosition(this.tooltip, -offsetLeft, hostHeight);
117
- break;
118
- case 'left':
119
- this.alignPosition(this.tooltip, -this.tooltipContainerWidth, -offsetHeight);
120
- break;
121
- case 'right':
122
- this.alignPosition(this.tooltip, hostWidth, -offsetHeight);
123
- break;
124
- }
125
- };
126
- this.alignArrowPosition = () => {
127
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
128
- const offsetHeight = Math.abs(((_a = this.element) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect().height) - ((_c = (_b = this.arrow) === null || _b === void 0 ? void 0 : _b.getBoundingClientRect()) === null || _c === void 0 ? void 0 : _c.height)) / 2;
129
- const offsetLeft = Math.abs(((_d = this.element) === null || _d === void 0 ? void 0 : _d.getBoundingClientRect().width) - ((_f = (_e = this.arrow) === null || _e === void 0 ? void 0 : _e.getBoundingClientRect()) === null || _f === void 0 ? void 0 : _f.width)) / 2;
130
- const hostHeight = ((_h = (_g = this.element) === null || _g === void 0 ? void 0 : _g.getBoundingClientRect()) === null || _h === void 0 ? void 0 : _h.height) || 0;
131
- const hostWidth = ((_k = (_j = this.element) === null || _j === void 0 ? void 0 : _j.getBoundingClientRect()) === null || _k === void 0 ? void 0 : _k.width) || 0;
132
- switch (this.positionState) {
133
- case 'top':
134
- this.alignPosition(this.arrow, offsetLeft, -this.arrowHeight);
135
- break;
136
- case 'bottom':
137
- this.alignPosition(this.arrow, offsetLeft, hostHeight);
138
- break;
139
- case 'left':
140
- this.alignPosition(this.arrow, -this.arrowWidth, offsetHeight);
141
- break;
142
- case 'right':
143
- this.alignPosition(this.arrow, hostWidth, offsetHeight);
144
- break;
145
- }
146
- };
147
- this.alignPosition = (element, offsetLeft, offsetTop) => {
148
- var _a;
149
- if (!element) {
150
- return;
151
- }
152
- let elementOffset = (_a = this.element) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();
153
- let left = elementOffset.left + offsetLeft;
154
- let top = elementOffset.top + offsetTop;
155
- element.style.left = `${left > 0 ? left : 0}px`;
156
- element.style.top = `${top}px`;
157
- };
158
- /**
159
- * Listen on hovering tooltip element and update tooltip position if needed
160
- */
161
- this.handleHover = () => {
162
- this.showTooltip();
163
- this.setCorrectPosition();
164
- };
165
- /**
166
- * Listen on focusing tooltip element and update tooltip position if needed
167
- */
168
- this.handleFocus = () => {
169
- this.showTooltip();
170
- this.setCorrectPosition();
171
- this.rTooltipFocus.emit({ element: this.element });
172
- };
173
- this.showTooltip = () => {
174
- var _a;
175
- this.isShown = true;
176
- this.tooltip.classList.add('r-tooltip--content--visible');
177
- const interactiveElement = this.getInteractiveElement(this.activeElement);
178
- interactiveElement === null || interactiveElement === void 0 ? void 0 : interactiveElement.setAttribute('aria-description', (_a = this.tooltip) === null || _a === void 0 ? void 0 : _a.innerText);
179
- };
180
- this.removeTooltip = () => {
181
- this.isShown = false;
182
- this.tooltip.style.width = 'max-content';
183
- this.tooltip.classList.remove('r-tooltip--content--visible');
184
- const interactiveElement = this.getInteractiveElement(this.activeElement);
185
- interactiveElement === null || interactiveElement === void 0 ? void 0 : interactiveElement.removeAttribute('aria-description');
186
- };
187
- this.handleScroll = () => {
188
- if (!this.isShown) {
189
- return;
190
- }
191
- if (!this.isOnScreen) {
192
- this.removeTooltip();
193
- return;
194
- }
195
- this.setCorrectPosition();
196
- };
197
- }
198
- /**
199
- * Watch on position value change and update tooltip position if needed
200
- */
201
- handleVerticalPosition() {
202
- this.setCorrectPosition();
203
- }
204
- /**
205
- * Listen on window scroll and update tooltip position if needed
206
- */
207
- handleScrolling() {
208
- this.setCorrectPosition();
209
- }
210
- /**
211
- * Listen on window resizing and update tooltip position if needed
212
- */
213
- handleResizing() {
214
- this.setCorrectPosition();
215
- }
216
- /**
217
- * Listen on window keydown and hide tooltip if needed
218
- */
219
- handleKeydown(event) {
220
- if (this.isShown && event.key === 'Escape') {
221
- this.removeTooltip();
222
- }
223
- }
224
- /**
225
- * Parent with non visible overflow
226
- */
227
- get overflowedParent() {
228
- return this.findOverflowParent(this.element.parentElement);
229
- }
230
- get arrowWidth() {
231
- var _a;
232
- return ((_a = this.arrow) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect().width) || 0;
233
- }
234
- get arrowHeight() {
235
- var _a;
236
- return ((_a = this.arrow) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect().height) || 0;
237
- }
238
- get tooltipContainerWidth() {
239
- var _a, _b;
240
- return ((_b = (_a = this.tooltip) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect()) === null || _b === void 0 ? void 0 : _b.width) + this.arrowWidth || 0;
241
- }
242
- get tooltipContainerHeight() {
243
- var _a, _b;
244
- return ((_b = (_a = this.tooltip) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect()) === null || _b === void 0 ? void 0 : _b.height) + this.arrowHeight || 0;
245
- }
246
- /**
247
- * Available space at the top
248
- */
249
- get top() {
250
- return this.element.getBoundingClientRect().top;
251
- }
252
- /**
253
- * Available space on the left
254
- */
255
- get left() {
256
- return this.element.getBoundingClientRect().left;
257
- }
258
- get isOnScreen() {
259
- const parent = this.overflowedParent || document.documentElement;
260
- const parentRect = parent.getBoundingClientRect();
261
- const elementRect = this.element.getBoundingClientRect();
262
- const isVerticallyVisible = elementRect.top >= parentRect.top && elementRect.bottom <= parentRect.bottom;
263
- const isHorizontallyVisible = elementRect.left >= parentRect.left && elementRect.right <= parentRect.right;
264
- return isVerticallyVisible && isHorizontallyVisible;
265
- }
266
- /**
267
- * Available space at the bottom
268
- */
269
- get bottom() {
270
- function calculateBottomSpace(element) {
271
- return window.innerHeight - element.getBoundingClientRect().top - element.getBoundingClientRect().height;
272
- }
273
- return calculateBottomSpace(this.element);
274
- }
275
- /**
276
- * Available space on the right
277
- */
278
- get right() {
279
- function calculateRightSpace(element) {
280
- return window.innerWidth - element.getBoundingClientRect().left - element.getBoundingClientRect().width;
281
- }
282
- return calculateRightSpace(this.element);
283
- }
284
- /**
285
- * Defines which horizontal placement is available
286
- */
287
- get horizontalPlacement() {
288
- return this.tooltipContainerWidth + OFFSET < this.left ? 'left' : 'right';
289
- }
290
- /**
291
- * Defines which vertical placement is available
292
- */
293
- get verticalPlacement() {
294
- return this.tooltipContainerHeight + OFFSET < this.top ? 'top' : 'bottom';
295
- }
296
- /**
297
- * Checks if there is enough space for placing tooltip vertically
298
- */
299
- get isEnoughSpaceVertically() {
300
- return this.tooltipContainerHeight + OFFSET < this.top || this.tooltipContainerHeight + OFFSET < this.bottom;
301
- }
302
- /**
303
- * Checks if there is enough space for placing tooltip horizontally
304
- */
305
- get isEnoughSpaceHorizontally() {
306
- return this.tooltipContainerWidth + OFFSET < this.left || this.tooltipContainerWidth + OFFSET < this.right;
307
- }
308
- get activeElement() {
309
- return this.element.querySelector('r-button, r-icon-button, a, button, [tabindex]:not([tabindex="-1"])');
310
- }
311
- /**
312
- * Gets the actual interactive element (button/link) from within r-button or r-icon-button shadow DOM,
313
- * or returns the element itself if it's already interactive
314
- */
315
- getInteractiveElement(element) {
316
- if (!element)
317
- return null;
318
- if (element.tagName === 'R-BUTTON' || element.tagName === 'R-ICON-BUTTON') {
319
- const shadowRoot = element.shadowRoot;
320
- if (shadowRoot) {
321
- return shadowRoot.querySelector('button, a');
322
- }
323
- }
324
- return element;
325
- }
326
- /**
327
- * Define position state
328
- */
329
- componentWillLoad() {
330
- this.positionState = this.position;
331
- }
332
- /**
333
- * Listen to active child element
334
- */
335
- componentDidLoad() {
336
- var _a, _b, _c;
337
- (_a = this.activeElement) === null || _a === void 0 ? void 0 : _a.addEventListener('focus', () => {
338
- this.handleFocus();
339
- });
340
- (_b = this.activeElement) === null || _b === void 0 ? void 0 : _b.addEventListener('blur', () => {
341
- this.removeTooltip();
342
- });
343
- (_c = this.overflowedParent) === null || _c === void 0 ? void 0 : _c.addEventListener('scroll', () => {
344
- this.handleScroll();
345
- });
346
- }
347
- /**
348
- * Finds first element's parent with not visible overflow.
349
- * @param element -- parent element
350
- * @param initEl -- initial(child) element
351
- */
352
- findOverflowParent(element) {
353
- var _a, _b;
354
- function notVisible(element) {
355
- return getComputedStyle(element).overflow !== "visible";
356
- }
357
- if (!element) {
358
- return null;
359
- }
360
- if (((_a = element.parentNode) === null || _a === void 0 ? void 0 : _a.nodeType) === Node.DOCUMENT_FRAGMENT_NODE) {
361
- return this.findOverflowParent((_b = element.parentNode) === null || _b === void 0 ? void 0 : _b.host);
362
- }
363
- if (notVisible(element)) {
364
- return element;
365
- }
366
- if (element.parentElement) {
367
- return this.findOverflowParent(element.parentElement);
368
- }
369
- return null;
370
- }
371
- /**
372
- * Checks the alternative tooltip position.
373
- * For example: If defined position is "top" and there is no free space for this position at the top of the component,
374
- * first it checks available vertical space to place tooltip at the bottom.
375
- * If there is no available space at the bottom, it checks the available space horizontally and sets it horizontally.
376
- */
377
- getAlternativePosition() {
378
- switch (this.position) {
379
- case 'top':
380
- return this.isEnoughSpaceVertically ? 'bottom' : this.horizontalPlacement;
381
- case 'bottom':
382
- return this.isEnoughSpaceVertically ? 'top' : this.horizontalPlacement;
383
- case 'left':
384
- return this.isEnoughSpaceHorizontally ? 'right' : this.verticalPlacement;
385
- case 'right':
386
- return this.isEnoughSpaceHorizontally ? 'left' : this.verticalPlacement;
387
- }
388
- }
389
- /**
390
- * Set correct tooltip position.
391
- * First it checks the available space for a defined position and then sets the new one based on the available space.
392
- */
393
- setCorrectPosition() {
394
- if (!this.tooltip || !this.isShown) {
395
- return;
396
- }
397
- switch (this.position) {
398
- case 'top':
399
- this.positionState = this.tooltipContainerHeight + OFFSET < this.top ? this.position : this.getAlternativePosition();
400
- break;
401
- case 'bottom':
402
- this.positionState = this.tooltipContainerHeight + OFFSET < this.bottom ? this.position : this.getAlternativePosition();
403
- break;
404
- case 'left':
405
- this.positionState = this.tooltipContainerWidth + OFFSET < this.left ? this.position : this.getAlternativePosition();
406
- break;
407
- case 'right':
408
- this.positionState = this.tooltipContainerWidth + OFFSET < this.right ? this.position : this.getAlternativePosition();
409
- break;
410
- }
411
- this.adjustArrowPosition();
412
- this.alignTooltipPosition();
413
- this.alignArrowPosition();
414
- // Allow tooltip content wrap and recalculate position
415
- if (this.tooltip.style.width === 'fit-content') {
416
- return;
417
- }
418
- this.tooltip.style.width = 'fit-content';
419
- this.alignTooltipPosition();
420
- }
421
- /**
422
- * Adjusts arrow correct position.
423
- * For bottom & top tooltip positions there are 3 possible arrow.
424
- * For right & left tooltip positions there is only one position = "center".
425
- */
426
- adjustArrowPosition() {
427
- const isEnoughTooltipSpaceLeft = this.tooltipContainerWidth / 2 + OFFSET < this.left;
428
- const isEnoughTooltipSpaceRight = this.tooltipContainerWidth / 2 + OFFSET < this.right;
429
- if (isEnoughTooltipSpaceLeft && isEnoughTooltipSpaceRight || !isEnoughTooltipSpaceLeft && !isEnoughTooltipSpaceRight || this.positionState === 'left' || this.positionState === 'right') {
430
- this.arrowPositionState = 'center';
431
- }
432
- else if (!isEnoughTooltipSpaceLeft) {
433
- this.arrowPositionState = 'left';
434
- }
435
- else if (!isEnoughTooltipSpaceRight) {
436
- this.arrowPositionState = 'right';
437
- }
438
- }
439
- render() {
440
- const { text, arrowPositionState, positionState, isShown, uniqueId } = this;
441
- const hostAttrs = {
442
- 'data-arrow-position': arrowPositionState,
443
- 'data-position': positionState
444
- };
445
- const triggerAttrs = {
446
- tabindex: !this.activeElement ? 0 : null,
447
- role: !this.activeElement ? 'button' : null,
448
- 'aria-describedby': !this.activeElement && isShown ? uniqueId : null
449
- };
450
- const contentAttrs = {
451
- id: uniqueId,
452
- role: 'tooltip',
453
- 'aria-hidden': `${!isShown}`
454
- };
455
- return (h(Host, Object.assign({ key: '5d8a002a227895d5e633e8b1df95ba449a9e253a' }, hostAttrs, { onMouseenter: this.handleHover, onMouseleave: this.removeTooltip }), h("div", { key: '4e6340639dc27fc7d0e981ca7cf8a4046737527f', class: "r-tooltip" }, h("div", Object.assign({ key: 'bcf2d5c73b427b2941be8de56b9ce2f296ae07eb', class: "r-tooltip--trigger", onFocus: this.handleFocus, onBlur: this.removeTooltip }, triggerAttrs), h("slot", { key: 'be7037ba07bf11b4957910c52f4a3f329b514007' })), h("div", Object.assign({ key: '300a3ef08b7c73b6b07161c58860df518ae9a862', class: "r-tooltip--content", ref: (el) => this.tooltip = el }, contentAttrs), text), h("div", { key: '73912349289b0dc365552331197d94bd0896ff3c', ref: (el) => this.arrow = el, class: "r-tooltip--arrow" }))));
456
- }
457
- get element() { return getElement(this); }
458
- static get watchers() { return {
459
- "position": ["handleVerticalPosition"]
460
- }; }
461
- };
462
- Tooltip.style = tooltipCss;
463
-
464
- export { IconButton as r_icon_button, Tooltip as r_tooltip };