q2-tecton-elements 1.50.1 → 1.51.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (578) hide show
  1. package/dist/cjs/click-elsewhere_2.cjs.entry.js +21 -12
  2. package/dist/cjs/click-elsewhere_2.cjs.entry.js.map +1 -1
  3. package/dist/cjs/index-9aa4a776.js +235 -0
  4. package/dist/cjs/index-9aa4a776.js.map +1 -0
  5. package/dist/cjs/{index-43010ce4.js → index-f69742cf.js} +1 -1
  6. package/dist/cjs/{index-43010ce4.js.map → index-f69742cf.js.map} +1 -1
  7. package/dist/cjs/loader.cjs.js +1 -1
  8. package/dist/cjs/q2-action-group.cjs.entry.js +50 -0
  9. package/dist/cjs/q2-action-group.cjs.entry.js.map +1 -0
  10. package/dist/cjs/q2-action-sheet.cjs.entry.js +1364 -3
  11. package/dist/cjs/q2-action-sheet.cjs.entry.js.map +1 -1
  12. package/dist/cjs/q2-avatar.cjs.entry.js +1 -1
  13. package/dist/cjs/q2-badge_7.cjs.entry.js +23 -13
  14. package/dist/cjs/q2-badge_7.cjs.entry.js.map +1 -1
  15. package/dist/cjs/q2-calendar.cjs.entry.js +2 -2
  16. package/dist/cjs/q2-card.cjs.entry.js +1 -1
  17. package/dist/cjs/q2-carousel-pane.cjs.entry.js +3 -3
  18. package/dist/cjs/q2-carousel.cjs.entry.js +1 -1
  19. package/dist/cjs/q2-chart-area.cjs.entry.js +2 -2
  20. package/dist/cjs/q2-chart-area.cjs.entry.js.map +1 -1
  21. package/dist/cjs/q2-chart-bar.cjs.entry.js +2 -2
  22. package/dist/cjs/q2-chart-bar.cjs.entry.js.map +1 -1
  23. package/dist/cjs/q2-chart-donut.cjs.entry.js +16 -16
  24. package/dist/cjs/q2-chart-donut.cjs.entry.js.map +1 -1
  25. package/dist/cjs/q2-checkbox-group.cjs.entry.js +2 -2
  26. package/dist/cjs/q2-checkbox-group.cjs.entry.js.map +1 -1
  27. package/dist/cjs/q2-checkbox.cjs.entry.js +1 -1
  28. package/dist/cjs/q2-currency.cjs.entry.js +1 -1
  29. package/dist/cjs/q2-data-table.cjs.entry.js +62 -62
  30. package/dist/cjs/q2-data-table.cjs.entry.js.map +1 -1
  31. package/dist/cjs/q2-detail.cjs.entry.js +2 -2
  32. package/dist/cjs/q2-dropdown-item.cjs.entry.js +2 -2
  33. package/dist/cjs/q2-dropdown-item.cjs.entry.js.map +1 -1
  34. package/dist/cjs/q2-dropdown.cjs.entry.js +79 -7
  35. package/dist/cjs/q2-dropdown.cjs.entry.js.map +1 -1
  36. package/dist/cjs/q2-editable-field.cjs.entry.js +1 -1
  37. package/dist/cjs/q2-formatted-text.cjs.entry.js +72 -0
  38. package/dist/cjs/q2-formatted-text.cjs.entry.js.map +1 -0
  39. package/dist/cjs/q2-item.cjs.entry.js +2 -2
  40. package/dist/cjs/q2-legend.cjs.entry.js +2 -2
  41. package/dist/cjs/q2-legend.cjs.entry.js.map +1 -1
  42. package/dist/cjs/q2-link.cjs.entry.js +64 -0
  43. package/dist/cjs/q2-link.cjs.entry.js.map +1 -0
  44. package/dist/cjs/q2-list.cjs.entry.js +2 -2
  45. package/dist/cjs/q2-loc.cjs.entry.js +2 -2
  46. package/dist/cjs/q2-message.cjs.entry.js +2 -2
  47. package/dist/cjs/q2-month-picker.cjs.entry.js +3 -3
  48. package/dist/cjs/q2-optgroup.cjs.entry.js +2 -2
  49. package/dist/cjs/q2-option-list.cjs.entry.js +9 -4
  50. package/dist/cjs/q2-option-list.cjs.entry.js.map +1 -1
  51. package/dist/cjs/q2-option.cjs.entry.js +1 -1
  52. package/dist/cjs/q2-pagination.cjs.entry.js +90 -9
  53. package/dist/cjs/q2-pagination.cjs.entry.js.map +1 -1
  54. package/dist/cjs/q2-pill.cjs.entry.js +26 -5
  55. package/dist/cjs/q2-pill.cjs.entry.js.map +1 -1
  56. package/dist/cjs/q2-radio-group.cjs.entry.js +2 -2
  57. package/dist/cjs/q2-radio-group.cjs.entry.js.map +1 -1
  58. package/dist/cjs/q2-radio.cjs.entry.js +1 -1
  59. package/dist/cjs/q2-relative-time.cjs.entry.js +3 -3
  60. package/dist/cjs/q2-resize-observer.cjs.entry.js +96 -0
  61. package/dist/cjs/q2-resize-observer.cjs.entry.js.map +1 -0
  62. package/dist/cjs/q2-section.cjs.entry.js +27 -3
  63. package/dist/cjs/q2-section.cjs.entry.js.map +1 -1
  64. package/dist/cjs/q2-select.cjs.entry.js +7 -6
  65. package/dist/cjs/q2-select.cjs.entry.js.map +1 -1
  66. package/dist/cjs/q2-stepper-pane.cjs.entry.js +1 -1
  67. package/dist/cjs/q2-stepper-vertical.cjs.entry.js +2 -2
  68. package/dist/cjs/q2-stepper.cjs.entry.js +39 -3
  69. package/dist/cjs/q2-stepper.cjs.entry.js.map +1 -1
  70. package/dist/cjs/q2-tag.cjs.entry.js +3 -2
  71. package/dist/cjs/q2-tag.cjs.entry.js.map +1 -1
  72. package/dist/cjs/q2-tecton-elements.cjs.js +1 -1
  73. package/dist/cjs/q2-textarea.cjs.entry.js +46 -11
  74. package/dist/cjs/q2-textarea.cjs.entry.js.map +1 -1
  75. package/dist/cjs/q2-tooltip.cjs.entry.js +2 -2
  76. package/dist/cjs/q2-tooltip.cjs.entry.js.map +1 -1
  77. package/dist/cjs/tecton-tab-pane.cjs.entry.js +2 -2
  78. package/dist/collection/collection-manifest.json +4 -0
  79. package/dist/collection/components/q2-action-group/q2-action-group.css +99 -0
  80. package/dist/collection/components/q2-action-group/q2-action-group.js +120 -0
  81. package/dist/collection/components/q2-action-group/q2-action-group.js.map +1 -0
  82. package/dist/collection/components/q2-action-group/test/q2-action-group.e2e.js +30 -0
  83. package/dist/collection/components/q2-action-group/test/q2-action-group.e2e.js.map +1 -0
  84. package/dist/collection/components/q2-action-group/test/q2-action-group.spec.js +156 -0
  85. package/dist/collection/components/q2-action-group/test/q2-action-group.spec.js.map +1 -0
  86. package/dist/collection/components/q2-action-sheet/q2-action-sheet.js +3 -2
  87. package/dist/collection/components/q2-action-sheet/q2-action-sheet.js.map +1 -1
  88. package/dist/collection/components/q2-avatar/q2-avatar.js +1 -1
  89. package/dist/collection/components/q2-avatar/test/q2-avatar-test.e2e.js +14 -9
  90. package/dist/collection/components/q2-avatar/test/q2-avatar-test.e2e.js.map +1 -1
  91. package/dist/collection/components/q2-badge/test/q2-badge-test.e2e.js +14 -9
  92. package/dist/collection/components/q2-badge/test/q2-badge-test.e2e.js.map +1 -1
  93. package/dist/collection/components/q2-btn/test/q2-btn-test.e2e.js +14 -9
  94. package/dist/collection/components/q2-btn/test/q2-btn-test.e2e.js.map +1 -1
  95. package/dist/collection/components/q2-calendar/q2-month-picker.js +2 -2
  96. package/dist/collection/components/q2-calendar/test/q2-calendar-test.e2e.js +227 -223
  97. package/dist/collection/components/q2-calendar/test/q2-calendar-test.e2e.js.map +1 -1
  98. package/dist/collection/components/q2-card/test/q2-card-test.e2e.js +12 -7
  99. package/dist/collection/components/q2-card/test/q2-card-test.e2e.js.map +1 -1
  100. package/dist/collection/components/q2-carousel/test/q2-carousel-test.e2e.js +49 -45
  101. package/dist/collection/components/q2-carousel/test/q2-carousel-test.e2e.js.map +1 -1
  102. package/dist/collection/components/q2-carousel-pane/q2-carousel-pane.js +2 -2
  103. package/dist/collection/components/q2-chart-area/q2-chart-area.js +2 -2
  104. package/dist/collection/components/q2-chart-area/q2-chart-area.js.map +1 -1
  105. package/dist/collection/components/q2-chart-area/test/q2-chart-area-test.e2e.js +12 -7
  106. package/dist/collection/components/q2-chart-area/test/q2-chart-area-test.e2e.js.map +1 -1
  107. package/dist/collection/components/q2-chart-bar/q2-chart-bar.js +2 -2
  108. package/dist/collection/components/q2-chart-bar/q2-chart-bar.js.map +1 -1
  109. package/dist/collection/components/q2-chart-bar/test/q2-chart-bar-test.e2e.js +16 -11
  110. package/dist/collection/components/q2-chart-bar/test/q2-chart-bar-test.e2e.js.map +1 -1
  111. package/dist/collection/components/q2-chart-donut/q2-chart-donut.js +15 -15
  112. package/dist/collection/components/q2-chart-donut/q2-chart-donut.js.map +1 -1
  113. package/dist/collection/components/q2-chart-donut/test/q2-chart-donut-test.e2e.js +32 -26
  114. package/dist/collection/components/q2-chart-donut/test/q2-chart-donut-test.e2e.js.map +1 -1
  115. package/dist/collection/components/q2-checkbox/test/q2-checkbox-test.e2e.js +12 -7
  116. package/dist/collection/components/q2-checkbox/test/q2-checkbox-test.e2e.js.map +1 -1
  117. package/dist/collection/components/q2-checkbox-group/q2-checkbox-group.js +2 -2
  118. package/dist/collection/components/q2-checkbox-group/q2-checkbox-group.js.map +1 -1
  119. package/dist/collection/components/q2-checkbox-group/test/q2-checkbox-group-test.e2e.js +22 -17
  120. package/dist/collection/components/q2-checkbox-group/test/q2-checkbox-group-test.e2e.js.map +1 -1
  121. package/dist/collection/components/q2-currency/q2-currency.js +1 -1
  122. package/dist/collection/components/q2-currency/test/q2-currency-test.e2e.js +12 -7
  123. package/dist/collection/components/q2-currency/test/q2-currency-test.e2e.js.map +1 -1
  124. package/dist/collection/components/q2-data-table/q2-data-table.js +104 -104
  125. package/dist/collection/components/q2-data-table/q2-data-table.js.map +1 -1
  126. package/dist/collection/components/q2-data-table/test/q2-data-table-test.e2e.js +42 -24
  127. package/dist/collection/components/q2-data-table/test/q2-data-table-test.e2e.js.map +1 -1
  128. package/dist/collection/components/q2-detail/q2-detail.js +1 -1
  129. package/dist/collection/components/q2-detail/test/q2-detail-test.e2e.js +12 -7
  130. package/dist/collection/components/q2-detail/test/q2-detail-test.e2e.js.map +1 -1
  131. package/dist/collection/components/q2-dropdown/q2-dropdown.js +207 -7
  132. package/dist/collection/components/q2-dropdown/q2-dropdown.js.map +1 -1
  133. package/dist/collection/components/q2-dropdown/test/q2-dropdown-test.e2e.js +297 -135
  134. package/dist/collection/components/q2-dropdown/test/q2-dropdown-test.e2e.js.map +1 -1
  135. package/dist/collection/components/q2-dropdown-item/q2-dropdown-item.js +1 -1
  136. package/dist/collection/components/q2-dropdown-item/q2-dropdown-item.js.map +1 -1
  137. package/dist/collection/components/q2-dropdown-item/test/q2-dropdown-item-test.e2e.js +18 -13
  138. package/dist/collection/components/q2-dropdown-item/test/q2-dropdown-item-test.e2e.js.map +1 -1
  139. package/dist/collection/components/q2-editable-field/test/q2-editable-field-test.e2e.js +14 -18
  140. package/dist/collection/components/q2-editable-field/test/q2-editable-field-test.e2e.js.map +1 -1
  141. package/dist/collection/components/q2-formatted-text/q2-formatted-text.css +94 -0
  142. package/dist/collection/components/q2-formatted-text/q2-formatted-text.js +230 -0
  143. package/dist/collection/components/q2-formatted-text/q2-formatted-text.js.map +1 -0
  144. package/dist/collection/components/q2-formatted-text/test/q2-formatted-text-test.e2e.js +430 -0
  145. package/dist/collection/components/q2-formatted-text/test/q2-formatted-text-test.e2e.js.map +1 -0
  146. package/dist/collection/components/q2-icon/test/q2-icon-test.e2e.js +14 -9
  147. package/dist/collection/components/q2-icon/test/q2-icon-test.e2e.js.map +1 -1
  148. package/dist/collection/components/q2-input/q2-input.css +9 -0
  149. package/dist/collection/components/q2-input/q2-input.js +7 -8
  150. package/dist/collection/components/q2-input/q2-input.js.map +1 -1
  151. package/dist/collection/components/q2-input/test/q2-input-test.e2e.js +50 -33
  152. package/dist/collection/components/q2-input/test/q2-input-test.e2e.js.map +1 -1
  153. package/dist/collection/components/q2-item/q2-item.js +1 -1
  154. package/dist/collection/components/q2-item/test/q2-item-test.e2e.js +32 -7
  155. package/dist/collection/components/q2-item/test/q2-item-test.e2e.js.map +1 -1
  156. package/dist/collection/components/q2-legend/q2-legend.css +1 -1
  157. package/dist/collection/components/q2-legend/q2-legend.js +1 -1
  158. package/dist/collection/components/q2-legend/test/q2-legend-test.e2e.js +13 -8
  159. package/dist/collection/components/q2-legend/test/q2-legend-test.e2e.js.map +1 -1
  160. package/dist/collection/components/q2-link/q2-link.css +146 -0
  161. package/dist/collection/components/q2-link/q2-link.js +242 -0
  162. package/dist/collection/components/q2-link/q2-link.js.map +1 -0
  163. package/dist/collection/components/q2-link/test/q2-link-test.e2e.js +145 -0
  164. package/dist/collection/components/q2-link/test/q2-link-test.e2e.js.map +1 -0
  165. package/dist/collection/components/q2-list/q2-list.js +1 -1
  166. package/dist/collection/components/q2-list/test/q2-list-test.e2e.js +12 -7
  167. package/dist/collection/components/q2-list/test/q2-list-test.e2e.js.map +1 -1
  168. package/dist/collection/components/q2-loading/test/q2-loading-element-test.e2e.js +14 -9
  169. package/dist/collection/components/q2-loading/test/q2-loading-element-test.e2e.js.map +1 -1
  170. package/dist/collection/components/q2-loading/test/q2-loading-test.e2e.js +14 -9
  171. package/dist/collection/components/q2-loading/test/q2-loading-test.e2e.js.map +1 -1
  172. package/dist/collection/components/q2-loc/q2-loc.js +1 -1
  173. package/dist/collection/components/q2-loc/test/q2-loc-test.e2e.js +16 -11
  174. package/dist/collection/components/q2-loc/test/q2-loc-test.e2e.js.map +1 -1
  175. package/dist/collection/components/q2-message/q2-message.js +1 -1
  176. package/dist/collection/components/q2-message/test/q2-message-test.e2e.js +14 -9
  177. package/dist/collection/components/q2-message/test/q2-message-test.e2e.js.map +1 -1
  178. package/dist/collection/components/q2-optgroup/q2-optgroup.js +1 -1
  179. package/dist/collection/components/q2-optgroup/test/q2-optgroup-test.e2e.js +20 -13
  180. package/dist/collection/components/q2-optgroup/test/q2-optgroup-test.e2e.js.map +1 -1
  181. package/dist/collection/components/q2-option/q2-option.js +1 -1
  182. package/dist/collection/components/q2-option/test/q2-option-test.e2e.js +28 -12
  183. package/dist/collection/components/q2-option/test/q2-option-test.e2e.js.map +1 -1
  184. package/dist/collection/components/q2-option-list/q2-option-list.js +7 -5
  185. package/dist/collection/components/q2-option-list/q2-option-list.js.map +1 -1
  186. package/dist/collection/components/q2-option-list/test/q2-option-list-test.e2e.js +415 -405
  187. package/dist/collection/components/q2-option-list/test/q2-option-list-test.e2e.js.map +1 -1
  188. package/dist/collection/components/q2-pagination/q2-pagination.js +230 -14
  189. package/dist/collection/components/q2-pagination/q2-pagination.js.map +1 -1
  190. package/dist/collection/components/q2-pagination/test/q2-pagination-test.e2e.js +138 -15
  191. package/dist/collection/components/q2-pagination/test/q2-pagination-test.e2e.js.map +1 -1
  192. package/dist/collection/components/q2-pill/q2-pill.css +12 -0
  193. package/dist/collection/components/q2-pill/q2-pill.js +43 -3
  194. package/dist/collection/components/q2-pill/q2-pill.js.map +1 -1
  195. package/dist/collection/components/q2-pill/test/q2-pill-test.e2e.js +412 -212
  196. package/dist/collection/components/q2-pill/test/q2-pill-test.e2e.js.map +1 -1
  197. package/dist/collection/components/q2-popover/q2-popover.js +37 -11
  198. package/dist/collection/components/q2-popover/q2-popover.js.map +1 -1
  199. package/dist/collection/components/q2-popover/test/q2-popover-test.e2e.js +296 -236
  200. package/dist/collection/components/q2-popover/test/q2-popover-test.e2e.js.map +1 -1
  201. package/dist/collection/components/q2-popover/test/q2-popover-test.spec.js +3 -3
  202. package/dist/collection/components/q2-popover/test/q2-popover-test.spec.js.map +1 -1
  203. package/dist/collection/components/q2-radio/test/q2-radio-test.e2e.js +21 -7
  204. package/dist/collection/components/q2-radio/test/q2-radio-test.e2e.js.map +1 -1
  205. package/dist/collection/components/q2-radio-group/q2-radio-group.js +2 -2
  206. package/dist/collection/components/q2-radio-group/q2-radio-group.js.map +1 -1
  207. package/dist/collection/components/q2-radio-group/test/q2-radio-group-test.e2e.js +32 -26
  208. package/dist/collection/components/q2-radio-group/test/q2-radio-group-test.e2e.js.map +1 -1
  209. package/dist/collection/components/q2-relative-time/q2-relative-time.js +1 -1
  210. package/dist/collection/components/q2-relative-time/test/q2-relative-time-test.e2e.js +12 -7
  211. package/dist/collection/components/q2-relative-time/test/q2-relative-time-test.e2e.js.map +1 -1
  212. package/dist/collection/components/q2-resize-observer/q2-resize-observer.css +71 -0
  213. package/dist/collection/components/q2-resize-observer/q2-resize-observer.js +166 -0
  214. package/dist/collection/components/q2-resize-observer/q2-resize-observer.js.map +1 -0
  215. package/dist/collection/components/q2-resize-observer/test/q2-resize-observer.e2e.js +83 -0
  216. package/dist/collection/components/q2-resize-observer/test/q2-resize-observer.e2e.js.map +1 -0
  217. package/dist/collection/components/q2-resize-observer/test/q2-resize-observer.spec.js +66 -0
  218. package/dist/collection/components/q2-resize-observer/test/q2-resize-observer.spec.js.map +1 -0
  219. package/dist/collection/components/q2-section/q2-section.js +78 -2
  220. package/dist/collection/components/q2-section/q2-section.js.map +1 -1
  221. package/dist/collection/components/q2-section/test/q2-section-test.e2e.js +39 -9
  222. package/dist/collection/components/q2-section/test/q2-section-test.e2e.js.map +1 -1
  223. package/dist/collection/components/q2-select/q2-select.js +23 -5
  224. package/dist/collection/components/q2-select/q2-select.js.map +1 -1
  225. package/dist/collection/components/q2-select/test/q2-select-test.e2e.js +695 -676
  226. package/dist/collection/components/q2-select/test/q2-select-test.e2e.js.map +1 -1
  227. package/dist/collection/components/q2-stepper/q2-stepper.js +76 -2
  228. package/dist/collection/components/q2-stepper/q2-stepper.js.map +1 -1
  229. package/dist/collection/components/q2-stepper/test/q2-stepper-test.e2e.js +183 -87
  230. package/dist/collection/components/q2-stepper/test/q2-stepper-test.e2e.js.map +1 -1
  231. package/dist/collection/components/q2-stepper-pane/q2-stepper-pane.js +2 -2
  232. package/dist/collection/components/q2-stepper-pane/test/q2-stepper-pane-test.e2e.js +20 -9
  233. package/dist/collection/components/q2-stepper-pane/test/q2-stepper-pane-test.e2e.js.map +1 -1
  234. package/dist/collection/components/q2-stepper-vertical/q2-stepper-vertical.js +1 -1
  235. package/dist/collection/components/q2-stepper-vertical/test/q2-stepper-vertical-test.e2e.js +71 -67
  236. package/dist/collection/components/q2-stepper-vertical/test/q2-stepper-vertical-test.e2e.js.map +1 -1
  237. package/dist/collection/components/q2-tab-container/q2-tab-container.js +50 -7
  238. package/dist/collection/components/q2-tab-container/q2-tab-container.js.map +1 -1
  239. package/dist/collection/components/q2-tab-container/test/q2-tab-container-test.e2e.js +89 -65
  240. package/dist/collection/components/q2-tab-container/test/q2-tab-container-test.e2e.js.map +1 -1
  241. package/dist/collection/components/q2-tab-pane/q2-tab-pane.js +1 -1
  242. package/dist/collection/components/q2-tab-pane/test/q2-tab-pane-test.e2e.js +14 -9
  243. package/dist/collection/components/q2-tab-pane/test/q2-tab-pane-test.e2e.js.map +1 -1
  244. package/dist/collection/components/q2-tag/q2-tag.js +19 -1
  245. package/dist/collection/components/q2-tag/q2-tag.js.map +1 -1
  246. package/dist/collection/components/q2-tag/test/q2-tag-test.e2e.js +47 -28
  247. package/dist/collection/components/q2-tag/test/q2-tag-test.e2e.js.map +1 -1
  248. package/dist/collection/components/q2-textarea/q2-textarea.js +51 -13
  249. package/dist/collection/components/q2-textarea/q2-textarea.js.map +1 -1
  250. package/dist/collection/components/q2-textarea/test/q2-textarea-test.e2e.js +31 -10
  251. package/dist/collection/components/q2-textarea/test/q2-textarea-test.e2e.js.map +1 -1
  252. package/dist/collection/components/q2-tooltip/q2-tooltip.css +5 -2
  253. package/dist/collection/components/q2-tooltip/test/q2-tooltip-test.e2e.js +51 -13
  254. package/dist/collection/components/q2-tooltip/test/q2-tooltip-test.e2e.js.map +1 -1
  255. package/dist/collection/components/tecton-tab-pane/tecton-tab-pane.js +2 -2
  256. package/dist/collection/components/tecton-tab-pane/test/tecton-tab-pane-test.e2e.js +18 -13
  257. package/dist/collection/components/tecton-tab-pane/test/tecton-tab-pane-test.e2e.js.map +1 -1
  258. package/dist/collection/utils/helpers.js +65 -0
  259. package/dist/collection/utils/helpers.js.map +1 -1
  260. package/dist/collection/utils/index.js +11 -11
  261. package/dist/collection/utils/index.js.map +1 -1
  262. package/dist/collection/utils/sanitize-html-string.js +10 -0
  263. package/dist/collection/utils/sanitize-html-string.js.map +1 -0
  264. package/dist/collection/utils/sanitize-regex-string.js +4 -0
  265. package/dist/collection/utils/sanitize-regex-string.js.map +1 -0
  266. package/dist/components/index.js +8 -0
  267. package/dist/components/index.js.map +1 -1
  268. package/dist/components/index2.js +11 -1356
  269. package/dist/components/index2.js.map +1 -1
  270. package/dist/components/q2-action-group.d.ts +11 -0
  271. package/dist/components/q2-action-group.js +75 -0
  272. package/dist/components/q2-action-group.js.map +1 -0
  273. package/dist/components/q2-action-sheet.js +1363 -2
  274. package/dist/components/q2-action-sheet.js.map +1 -1
  275. package/dist/components/q2-avatar2.js +1 -1
  276. package/dist/components/q2-btn2.js +1 -1
  277. package/dist/components/q2-carousel-pane.js +2 -2
  278. package/dist/components/q2-chart-area.js +1 -1
  279. package/dist/components/q2-chart-area.js.map +1 -1
  280. package/dist/components/q2-chart-bar.js +1 -1
  281. package/dist/components/q2-chart-bar.js.map +1 -1
  282. package/dist/components/q2-chart-donut.js +15 -15
  283. package/dist/components/q2-chart-donut.js.map +1 -1
  284. package/dist/components/q2-checkbox-group.js +2 -2
  285. package/dist/components/q2-checkbox-group.js.map +1 -1
  286. package/dist/components/q2-currency.js +1 -1
  287. package/dist/components/q2-data-table.js +64 -64
  288. package/dist/components/q2-data-table.js.map +1 -1
  289. package/dist/components/q2-detail.js +1 -1
  290. package/dist/components/q2-dropdown-item2.js +1 -1
  291. package/dist/components/q2-dropdown-item2.js.map +1 -1
  292. package/dist/components/q2-dropdown.js +84 -7
  293. package/dist/components/q2-dropdown.js.map +1 -1
  294. package/dist/components/q2-formatted-text.d.ts +11 -0
  295. package/dist/components/q2-formatted-text.js +101 -0
  296. package/dist/components/q2-formatted-text.js.map +1 -0
  297. package/dist/components/q2-input2.js +4 -5
  298. package/dist/components/q2-input2.js.map +1 -1
  299. package/dist/components/q2-item.js +1 -1
  300. package/dist/components/q2-legend2.js +2 -2
  301. package/dist/components/q2-legend2.js.map +1 -1
  302. package/dist/components/q2-link.d.ts +11 -0
  303. package/dist/components/q2-link.js +93 -0
  304. package/dist/components/q2-link.js.map +1 -0
  305. package/dist/components/q2-list.js +1 -1
  306. package/dist/components/q2-loc.js +1 -1
  307. package/dist/components/q2-message2.js +1 -1
  308. package/dist/components/q2-month-picker.js +2 -2
  309. package/dist/components/q2-optgroup2.js +1 -1
  310. package/dist/components/q2-option-list2.js +8 -3
  311. package/dist/components/q2-option-list2.js.map +1 -1
  312. package/dist/components/q2-option2.js +1 -1
  313. package/dist/components/q2-pagination.js +97 -10
  314. package/dist/components/q2-pagination.js.map +1 -1
  315. package/dist/components/q2-pill.js +29 -5
  316. package/dist/components/q2-pill.js.map +1 -1
  317. package/dist/components/q2-popover2.js +22 -12
  318. package/dist/components/q2-popover2.js.map +1 -1
  319. package/dist/components/q2-radio-group.js +2 -2
  320. package/dist/components/q2-radio-group.js.map +1 -1
  321. package/dist/components/q2-relative-time.js +1 -1
  322. package/dist/components/q2-resize-observer.d.ts +11 -0
  323. package/dist/components/q2-resize-observer.js +8 -0
  324. package/dist/components/q2-resize-observer.js.map +1 -0
  325. package/dist/components/q2-resize-observer2.js +112 -0
  326. package/dist/components/q2-resize-observer2.js.map +1 -0
  327. package/dist/components/q2-section.js +30 -4
  328. package/dist/components/q2-section.js.map +1 -1
  329. package/dist/components/q2-select2.js +7 -5
  330. package/dist/components/q2-select2.js.map +1 -1
  331. package/dist/components/q2-stepper-vertical.js +1 -1
  332. package/dist/components/q2-stepper.js +40 -3
  333. package/dist/components/q2-stepper.js.map +1 -1
  334. package/dist/components/q2-tab-container.js +20 -8
  335. package/dist/components/q2-tab-container.js.map +1 -1
  336. package/dist/components/q2-tab-pane.js +1 -1
  337. package/dist/components/q2-tag.js +3 -1
  338. package/dist/components/q2-tag.js.map +1 -1
  339. package/dist/components/q2-textarea.js +49 -12
  340. package/dist/components/q2-textarea.js.map +1 -1
  341. package/dist/components/q2-tooltip.js +1 -1
  342. package/dist/components/q2-tooltip.js.map +1 -1
  343. package/dist/components/tecton-tab-pane.js +2 -2
  344. package/dist/esm/click-elsewhere_2.entry.js +21 -12
  345. package/dist/esm/click-elsewhere_2.entry.js.map +1 -1
  346. package/dist/esm/{index-c6d74f10.js → index-3184c760.js} +1 -1
  347. package/dist/esm/{index-c6d74f10.js.map → index-3184c760.js.map} +1 -1
  348. package/dist/esm/index-844fc010.js +211 -0
  349. package/dist/esm/index-844fc010.js.map +1 -0
  350. package/dist/esm/loader.js +1 -1
  351. package/dist/esm/q2-action-group.entry.js +46 -0
  352. package/dist/esm/q2-action-group.entry.js.map +1 -0
  353. package/dist/esm/q2-action-sheet.entry.js +1363 -2
  354. package/dist/esm/q2-action-sheet.entry.js.map +1 -1
  355. package/dist/esm/q2-avatar.entry.js +1 -1
  356. package/dist/esm/q2-badge_7.entry.js +23 -13
  357. package/dist/esm/q2-badge_7.entry.js.map +1 -1
  358. package/dist/esm/q2-calendar.entry.js +2 -2
  359. package/dist/esm/q2-card.entry.js +1 -1
  360. package/dist/esm/q2-carousel-pane.entry.js +3 -3
  361. package/dist/esm/q2-carousel.entry.js +1 -1
  362. package/dist/esm/q2-chart-area.entry.js +2 -2
  363. package/dist/esm/q2-chart-area.entry.js.map +1 -1
  364. package/dist/esm/q2-chart-bar.entry.js +2 -2
  365. package/dist/esm/q2-chart-bar.entry.js.map +1 -1
  366. package/dist/esm/q2-chart-donut.entry.js +16 -16
  367. package/dist/esm/q2-chart-donut.entry.js.map +1 -1
  368. package/dist/esm/q2-checkbox-group.entry.js +2 -2
  369. package/dist/esm/q2-checkbox-group.entry.js.map +1 -1
  370. package/dist/esm/q2-checkbox.entry.js +1 -1
  371. package/dist/esm/q2-currency.entry.js +1 -1
  372. package/dist/esm/q2-data-table.entry.js +62 -62
  373. package/dist/esm/q2-data-table.entry.js.map +1 -1
  374. package/dist/esm/q2-detail.entry.js +2 -2
  375. package/dist/esm/q2-dropdown-item.entry.js +2 -2
  376. package/dist/esm/q2-dropdown-item.entry.js.map +1 -1
  377. package/dist/esm/q2-dropdown.entry.js +79 -7
  378. package/dist/esm/q2-dropdown.entry.js.map +1 -1
  379. package/dist/esm/q2-editable-field.entry.js +1 -1
  380. package/dist/esm/q2-formatted-text.entry.js +68 -0
  381. package/dist/esm/q2-formatted-text.entry.js.map +1 -0
  382. package/dist/esm/q2-item.entry.js +2 -2
  383. package/dist/esm/q2-legend.entry.js +2 -2
  384. package/dist/esm/q2-legend.entry.js.map +1 -1
  385. package/dist/esm/q2-link.entry.js +60 -0
  386. package/dist/esm/q2-link.entry.js.map +1 -0
  387. package/dist/esm/q2-list.entry.js +2 -2
  388. package/dist/esm/q2-loc.entry.js +2 -2
  389. package/dist/esm/q2-message.entry.js +2 -2
  390. package/dist/esm/q2-month-picker.entry.js +3 -3
  391. package/dist/esm/q2-optgroup.entry.js +2 -2
  392. package/dist/esm/q2-option-list.entry.js +9 -4
  393. package/dist/esm/q2-option-list.entry.js.map +1 -1
  394. package/dist/esm/q2-option.entry.js +1 -1
  395. package/dist/esm/q2-pagination.entry.js +90 -9
  396. package/dist/esm/q2-pagination.entry.js.map +1 -1
  397. package/dist/esm/q2-pill.entry.js +26 -5
  398. package/dist/esm/q2-pill.entry.js.map +1 -1
  399. package/dist/esm/q2-radio-group.entry.js +2 -2
  400. package/dist/esm/q2-radio-group.entry.js.map +1 -1
  401. package/dist/esm/q2-radio.entry.js +1 -1
  402. package/dist/esm/q2-relative-time.entry.js +3 -3
  403. package/dist/esm/q2-resize-observer.entry.js +92 -0
  404. package/dist/esm/q2-resize-observer.entry.js.map +1 -0
  405. package/dist/esm/q2-section.entry.js +27 -3
  406. package/dist/esm/q2-section.entry.js.map +1 -1
  407. package/dist/esm/q2-select.entry.js +7 -6
  408. package/dist/esm/q2-select.entry.js.map +1 -1
  409. package/dist/esm/q2-stepper-pane.entry.js +1 -1
  410. package/dist/esm/q2-stepper-vertical.entry.js +2 -2
  411. package/dist/esm/q2-stepper.entry.js +39 -3
  412. package/dist/esm/q2-stepper.entry.js.map +1 -1
  413. package/dist/esm/q2-tag.entry.js +3 -2
  414. package/dist/esm/q2-tag.entry.js.map +1 -1
  415. package/dist/esm/q2-tecton-elements.js +1 -1
  416. package/dist/esm/q2-textarea.entry.js +47 -12
  417. package/dist/esm/q2-textarea.entry.js.map +1 -1
  418. package/dist/esm/q2-tooltip.entry.js +2 -2
  419. package/dist/esm/q2-tooltip.entry.js.map +1 -1
  420. package/dist/esm/tecton-tab-pane.entry.js +2 -2
  421. package/dist/q2-tecton-elements/{p-0a3a804a.entry.js → p-06701928.entry.js} +2 -2
  422. package/dist/q2-tecton-elements/{p-0a3a804a.entry.js.map → p-06701928.entry.js.map} +1 -1
  423. package/dist/q2-tecton-elements/{p-5d936af5.entry.js → p-07d1c3ae.entry.js} +2 -2
  424. package/dist/q2-tecton-elements/p-1305f7ca.entry.js +2 -0
  425. package/dist/q2-tecton-elements/p-1305f7ca.entry.js.map +1 -0
  426. package/dist/q2-tecton-elements/p-15ac45d6.js +2 -0
  427. package/dist/q2-tecton-elements/p-15ac45d6.js.map +1 -0
  428. package/dist/q2-tecton-elements/{p-ce4e6b41.entry.js → p-16910682.entry.js} +2 -2
  429. package/dist/q2-tecton-elements/p-16910682.entry.js.map +1 -0
  430. package/dist/q2-tecton-elements/p-188eb162.entry.js +3 -0
  431. package/dist/q2-tecton-elements/p-188eb162.entry.js.map +1 -0
  432. package/dist/q2-tecton-elements/{p-58cafc0d.entry.js → p-1c760a89.entry.js} +2 -2
  433. package/dist/q2-tecton-elements/{p-074ae80c.entry.js → p-1c88d057.entry.js} +2 -2
  434. package/dist/q2-tecton-elements/{p-3b0d3cd4.entry.js → p-20a3d6ed.entry.js} +2 -2
  435. package/dist/q2-tecton-elements/p-20a3d6ed.entry.js.map +1 -0
  436. package/dist/q2-tecton-elements/{p-77a0cc0c.entry.js → p-2733583e.entry.js} +2 -2
  437. package/dist/q2-tecton-elements/{p-4116579f.entry.js → p-3e428290.entry.js} +2 -2
  438. package/dist/q2-tecton-elements/p-3e428290.entry.js.map +1 -0
  439. package/dist/q2-tecton-elements/{p-072c5877.entry.js → p-4774e5b3.entry.js} +2 -2
  440. package/dist/q2-tecton-elements/{p-77272c4c.entry.js → p-490ef8e5.entry.js} +2 -2
  441. package/dist/q2-tecton-elements/{p-0a1dff75.entry.js → p-4e10550d.entry.js} +2 -2
  442. package/dist/q2-tecton-elements/p-4e10550d.entry.js.map +1 -0
  443. package/dist/q2-tecton-elements/{p-2ca6d44f.entry.js → p-50f7328f.entry.js} +2 -2
  444. package/dist/q2-tecton-elements/p-5637c486.entry.js +2 -0
  445. package/dist/q2-tecton-elements/p-5637c486.entry.js.map +1 -0
  446. package/dist/q2-tecton-elements/p-56df21b0.entry.js +2 -0
  447. package/dist/q2-tecton-elements/p-56df21b0.entry.js.map +1 -0
  448. package/dist/q2-tecton-elements/{p-34856c71.entry.js → p-5a834214.entry.js} +2 -2
  449. package/dist/q2-tecton-elements/{p-34856c71.entry.js.map → p-5a834214.entry.js.map} +1 -1
  450. package/dist/q2-tecton-elements/p-5f99a4a8.entry.js +2 -0
  451. package/dist/q2-tecton-elements/p-5f99a4a8.entry.js.map +1 -0
  452. package/dist/q2-tecton-elements/p-72d948b4.entry.js +2 -0
  453. package/dist/q2-tecton-elements/p-72d948b4.entry.js.map +1 -0
  454. package/dist/q2-tecton-elements/{p-3c7be0bb.entry.js → p-7903cd15.entry.js} +2 -2
  455. package/dist/q2-tecton-elements/p-7903cd15.entry.js.map +1 -0
  456. package/dist/q2-tecton-elements/{p-d2e1631a.entry.js → p-7906f49e.entry.js} +2 -2
  457. package/dist/q2-tecton-elements/{p-d2e1631a.entry.js.map → p-7906f49e.entry.js.map} +1 -1
  458. package/dist/q2-tecton-elements/{p-2fcaf2d6.entry.js → p-7aef0c08.entry.js} +2 -2
  459. package/dist/q2-tecton-elements/{p-8a4b106d.entry.js → p-7c9a0122.entry.js} +2 -2
  460. package/dist/q2-tecton-elements/p-7c9f8b62.entry.js +2 -0
  461. package/dist/q2-tecton-elements/p-7c9f8b62.entry.js.map +1 -0
  462. package/dist/q2-tecton-elements/{p-cf32b5db.entry.js → p-81fbe718.entry.js} +2 -2
  463. package/dist/q2-tecton-elements/p-81fbe718.entry.js.map +1 -0
  464. package/dist/q2-tecton-elements/{p-6237c775.entry.js → p-896c7008.entry.js} +2 -2
  465. package/dist/q2-tecton-elements/{p-395904b4.entry.js → p-8d07cf91.entry.js} +2 -2
  466. package/dist/q2-tecton-elements/{p-fffb54e9.entry.js → p-8d2b02e1.entry.js} +2 -2
  467. package/dist/q2-tecton-elements/{p-6e6d9793.entry.js → p-95a7c042.entry.js} +2 -2
  468. package/dist/q2-tecton-elements/{p-45407ecc.entry.js → p-96b1406c.entry.js} +2 -2
  469. package/dist/q2-tecton-elements/{p-cb3f48de.entry.js → p-a47597dd.entry.js} +2 -2
  470. package/dist/q2-tecton-elements/p-a47597dd.entry.js.map +1 -0
  471. package/dist/q2-tecton-elements/p-a5d0e252.entry.js +2 -0
  472. package/dist/q2-tecton-elements/p-a5d0e252.entry.js.map +1 -0
  473. package/dist/q2-tecton-elements/{p-2c26295e.entry.js → p-ac6aa392.entry.js} +2 -2
  474. package/dist/q2-tecton-elements/{p-376a0589.entry.js → p-ad057d10.entry.js} +2 -2
  475. package/dist/q2-tecton-elements/{p-ad998f71.entry.js → p-b0e5e9dc.entry.js} +2 -2
  476. package/dist/q2-tecton-elements/p-b0e5e9dc.entry.js.map +1 -0
  477. package/dist/q2-tecton-elements/{p-34696e3f.entry.js → p-b1784be3.entry.js} +2 -2
  478. package/dist/q2-tecton-elements/{p-259b728a.entry.js → p-b7de110e.entry.js} +2 -2
  479. package/dist/q2-tecton-elements/{p-8111547c.entry.js → p-c235ab3f.entry.js} +2 -2
  480. package/dist/q2-tecton-elements/p-c5667d5d.entry.js +2 -0
  481. package/dist/q2-tecton-elements/p-c5667d5d.entry.js.map +1 -0
  482. package/dist/q2-tecton-elements/{p-c81d299a.entry.js → p-e216ef3f.entry.js} +2 -2
  483. package/dist/q2-tecton-elements/p-e2c800ef.entry.js +2 -0
  484. package/dist/q2-tecton-elements/p-e2c800ef.entry.js.map +1 -0
  485. package/dist/q2-tecton-elements/p-f135b265.entry.js +2 -0
  486. package/dist/q2-tecton-elements/p-f135b265.entry.js.map +1 -0
  487. package/dist/q2-tecton-elements/{p-721365be.js → p-f1e887f5.js} +1 -1
  488. package/dist/q2-tecton-elements/{p-6b7c53a8.entry.js → p-f5f23659.entry.js} +2 -2
  489. package/dist/q2-tecton-elements/p-f7867f21.entry.js +2 -0
  490. package/dist/q2-tecton-elements/p-f7867f21.entry.js.map +1 -0
  491. package/dist/q2-tecton-elements/p-ff8f1a32.entry.js +2 -0
  492. package/dist/q2-tecton-elements/p-ff8f1a32.entry.js.map +1 -0
  493. package/dist/q2-tecton-elements/p-fff01dc1.entry.js +2 -0
  494. package/dist/q2-tecton-elements/p-fff01dc1.entry.js.map +1 -0
  495. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +1 -1
  496. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js.map +1 -1
  497. package/dist/types/components/q2-action-group/q2-action-group.d.ts +30 -0
  498. package/dist/types/components/q2-chart-area/q2-chart-area.d.ts +1 -1
  499. package/dist/types/components/q2-chart-bar/q2-chart-bar.d.ts +1 -1
  500. package/dist/types/components/q2-chart-donut/q2-chart-donut.d.ts +2 -0
  501. package/dist/types/components/q2-data-table/q2-data-table.d.ts +15 -13
  502. package/dist/types/components/q2-dropdown/q2-dropdown.d.ts +41 -2
  503. package/dist/types/components/q2-formatted-text/q2-formatted-text.d.ts +34 -0
  504. package/dist/types/components/q2-input/q2-input.d.ts +10 -9
  505. package/dist/types/components/q2-legend/q2-legend.d.ts +1 -0
  506. package/dist/types/components/q2-link/q2-link.d.ts +36 -0
  507. package/dist/types/components/q2-pagination/q2-pagination.d.ts +60 -3
  508. package/dist/types/components/q2-pill/q2-pill.d.ts +11 -0
  509. package/dist/types/components/q2-popover/q2-popover.d.ts +7 -1
  510. package/dist/types/components/q2-resize-observer/q2-resize-observer.d.ts +28 -0
  511. package/dist/types/components/q2-section/q2-section.d.ts +12 -0
  512. package/dist/types/components/q2-select/q2-select.d.ts +5 -0
  513. package/dist/types/components/q2-stepper/q2-stepper.d.ts +10 -1
  514. package/dist/types/components/q2-tab-container/q2-tab-container.d.ts +8 -2
  515. package/dist/types/components/q2-tag/q2-tag.d.ts +5 -0
  516. package/dist/types/components/q2-textarea/q2-textarea.d.ts +8 -3
  517. package/dist/types/components.d.ts +396 -18
  518. package/dist/types/utils/helpers.d.ts +28 -0
  519. package/dist/types/utils/index.d.ts +3 -3
  520. package/dist/types/utils/sanitize-html-string.d.ts +1 -0
  521. package/dist/types/utils/sanitize-regex-string.d.ts +1 -0
  522. package/package.json +4 -4
  523. package/dist/cjs/index-64d8b839.js +0 -1580
  524. package/dist/cjs/index-64d8b839.js.map +0 -1
  525. package/dist/esm/index-4a80972c.js +0 -1556
  526. package/dist/esm/index-4a80972c.js.map +0 -1
  527. package/dist/q2-tecton-elements/p-0a1dff75.entry.js.map +0 -1
  528. package/dist/q2-tecton-elements/p-3b0d3cd4.entry.js.map +0 -1
  529. package/dist/q2-tecton-elements/p-3c7be0bb.entry.js.map +0 -1
  530. package/dist/q2-tecton-elements/p-403bf3d4.entry.js +0 -2
  531. package/dist/q2-tecton-elements/p-403bf3d4.entry.js.map +0 -1
  532. package/dist/q2-tecton-elements/p-4116579f.entry.js.map +0 -1
  533. package/dist/q2-tecton-elements/p-661ed976.entry.js +0 -2
  534. package/dist/q2-tecton-elements/p-661ed976.entry.js.map +0 -1
  535. package/dist/q2-tecton-elements/p-9a1a4bc0.js +0 -3
  536. package/dist/q2-tecton-elements/p-9a1a4bc0.js.map +0 -1
  537. package/dist/q2-tecton-elements/p-a7a0b8aa.entry.js +0 -2
  538. package/dist/q2-tecton-elements/p-a7a0b8aa.entry.js.map +0 -1
  539. package/dist/q2-tecton-elements/p-aa57b657.entry.js +0 -2
  540. package/dist/q2-tecton-elements/p-aa57b657.entry.js.map +0 -1
  541. package/dist/q2-tecton-elements/p-ad998f71.entry.js.map +0 -1
  542. package/dist/q2-tecton-elements/p-adec9275.entry.js +0 -2
  543. package/dist/q2-tecton-elements/p-adec9275.entry.js.map +0 -1
  544. package/dist/q2-tecton-elements/p-adf0a7c9.entry.js +0 -2
  545. package/dist/q2-tecton-elements/p-adf0a7c9.entry.js.map +0 -1
  546. package/dist/q2-tecton-elements/p-b72fd065.entry.js +0 -2
  547. package/dist/q2-tecton-elements/p-b72fd065.entry.js.map +0 -1
  548. package/dist/q2-tecton-elements/p-c0c658d1.entry.js +0 -2
  549. package/dist/q2-tecton-elements/p-c0c658d1.entry.js.map +0 -1
  550. package/dist/q2-tecton-elements/p-cb3f48de.entry.js.map +0 -1
  551. package/dist/q2-tecton-elements/p-ce4e6b41.entry.js.map +0 -1
  552. package/dist/q2-tecton-elements/p-cf32b5db.entry.js.map +0 -1
  553. package/dist/q2-tecton-elements/p-cf966a0f.entry.js +0 -2
  554. package/dist/q2-tecton-elements/p-cf966a0f.entry.js.map +0 -1
  555. package/dist/q2-tecton-elements/p-dc77bf66.entry.js +0 -2
  556. package/dist/q2-tecton-elements/p-dc77bf66.entry.js.map +0 -1
  557. /package/dist/q2-tecton-elements/{p-5d936af5.entry.js.map → p-07d1c3ae.entry.js.map} +0 -0
  558. /package/dist/q2-tecton-elements/{p-58cafc0d.entry.js.map → p-1c760a89.entry.js.map} +0 -0
  559. /package/dist/q2-tecton-elements/{p-074ae80c.entry.js.map → p-1c88d057.entry.js.map} +0 -0
  560. /package/dist/q2-tecton-elements/{p-77a0cc0c.entry.js.map → p-2733583e.entry.js.map} +0 -0
  561. /package/dist/q2-tecton-elements/{p-072c5877.entry.js.map → p-4774e5b3.entry.js.map} +0 -0
  562. /package/dist/q2-tecton-elements/{p-77272c4c.entry.js.map → p-490ef8e5.entry.js.map} +0 -0
  563. /package/dist/q2-tecton-elements/{p-2ca6d44f.entry.js.map → p-50f7328f.entry.js.map} +0 -0
  564. /package/dist/q2-tecton-elements/{p-2fcaf2d6.entry.js.map → p-7aef0c08.entry.js.map} +0 -0
  565. /package/dist/q2-tecton-elements/{p-8a4b106d.entry.js.map → p-7c9a0122.entry.js.map} +0 -0
  566. /package/dist/q2-tecton-elements/{p-6237c775.entry.js.map → p-896c7008.entry.js.map} +0 -0
  567. /package/dist/q2-tecton-elements/{p-395904b4.entry.js.map → p-8d07cf91.entry.js.map} +0 -0
  568. /package/dist/q2-tecton-elements/{p-fffb54e9.entry.js.map → p-8d2b02e1.entry.js.map} +0 -0
  569. /package/dist/q2-tecton-elements/{p-6e6d9793.entry.js.map → p-95a7c042.entry.js.map} +0 -0
  570. /package/dist/q2-tecton-elements/{p-45407ecc.entry.js.map → p-96b1406c.entry.js.map} +0 -0
  571. /package/dist/q2-tecton-elements/{p-2c26295e.entry.js.map → p-ac6aa392.entry.js.map} +0 -0
  572. /package/dist/q2-tecton-elements/{p-376a0589.entry.js.map → p-ad057d10.entry.js.map} +0 -0
  573. /package/dist/q2-tecton-elements/{p-34696e3f.entry.js.map → p-b1784be3.entry.js.map} +0 -0
  574. /package/dist/q2-tecton-elements/{p-259b728a.entry.js.map → p-b7de110e.entry.js.map} +0 -0
  575. /package/dist/q2-tecton-elements/{p-8111547c.entry.js.map → p-c235ab3f.entry.js.map} +0 -0
  576. /package/dist/q2-tecton-elements/{p-c81d299a.entry.js.map → p-e216ef3f.entry.js.map} +0 -0
  577. /package/dist/q2-tecton-elements/{p-721365be.js.map → p-f1e887f5.js.map} +0 -0
  578. /package/dist/q2-tecton-elements/{p-6b7c53a8.entry.js.map → p-f5f23659.entry.js.map} +0 -0
@@ -1,2 +0,0 @@
1
- import{r as t,c as e,h as i}from"./p-a5f18e27.js";const n="*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #0066cc)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}:host{position:relative;width:100%;display:block}ul{list-style:none;padding:0;margin:0}.item-button{align-items:center;background-color:transparent;border:none;column-gap:var(--tct-legend-item-gap, var(--app-scale-2x, 10px));display:flex;height:var(--tct-legend-item-height, var(--app-scale-9x, 45px));opacity:1;padding-block:0;padding-inline:var(--tct-legend-item-padding-inline, var(--app-scale-2x, 10px));transition:opacity var(--app-tween-1, 0.2s ease);width:100%}.item-button:hover{cursor:pointer}.item-button-faded>*{opacity:var(--tct-legend-item-opacity-faded, var(--app-disabled-opacity, 0.4))}.item-color-indicator{border-radius:50%;display:inline-block;flex-shrink:0;height:var(--tct-legend-item-color-indicator-size, var(--app-scale-3x, 15px));width:var(--tct-legend-item-color-indicator-size, var(--app-scale-3x, 15px))}.item-name{color:var(--tct-legend-item-name-font-color, --t-text, #4d4d4d);display:inline-block;flex-grow:1;font-size:var(--tct-legend-item-name-font-size, var(--app-font-size, 14px));font-weight:var(--tct-legend-item-name-font-weight, 600);line-height:var(--tct-legend-item-name-line-height, var(--app-line-height, 1.428571429em));text-align:left}.item-value{color:var(--tct-legend-item-value-font-color, var(--t-text, #4d4d4d));display:inline-block;flex-grow:1;font-size:var(--tct-legend-item-value-font-size, var(--app-font-size, 14px));font-weight:var(--tct-legend-item-value-font-weight, 400);line-height:var(--tct-legend-item-value-line-height, var(--app-line-height, 1.428571429em));text-align:right}";const s=n;const a=class{constructor(i){t(this,i);this.click=e(this,"click",7);this.mouseenter=e(this,"mouseenter",7);this.mouseleave=e(this,"mouseleave",7);this.hoveredItemIndex=-1;this.selectedItemIndex=-1;this.data=[];this.format="default";this.hoveredItemId=null;this.selectedItemId=null}componentWillLoad(){this.watchHoveredItemId(this.hoveredItemId);this.watchSelectedItemId(this.selectedItemId)}watchHoveredItemId(t){const e=this.getDataIndexForId(t);this.hoveredItemIndex=e}watchSelectedItemId(t){const e=this.getDataIndexForId(t);this.selectedItemIndex=e}get dataWithClasses(){return this.data.map(((t,e)=>Object.assign(Object.assign({},t),{classes:{"item-button":true,"item-button-faded":this.isItemButtonFaded(e),"item-button-selected":this.isItemButtonSelected(e)}})))}formatValue(t){const e=parseFloat(t.toString());if(this.format==="currency"){return Intl.NumberFormat("en-US",{style:"currency",currency:"USD"}).format(e)}return Intl.NumberFormat("en-US").format(e)}getDataIndexForId(t){const e=this.data.findIndex((e=>e.id===t));return e>=0?e:-1}isItemButtonFaded(t){if(this.isItemButtonSelected(t)||t==this.hoveredItemIndex)return false;if(this.selectedItemIndex>=0&&this.hoveredItemIndex===-1)return true;return this.hoveredItemIndex>=0&&t!==this.hoveredItemIndex}isItemButtonSelected(t){return t===this.selectedItemIndex}onClick(t,e){t.stopPropagation();const i=this.getDataIndexForId(e.id);if(this.selectedItemIndex===i){this.selectedItemIndex=-1;if(t.detail===0){this.hoveredItemIndex=-1}else{this.hoveredItemIndex=i}this.click.emit(null);return}this.selectedItemIndex=i;this.click.emit(this.data[i])}onClickElsewhere(t){t.selectedItemIndex=-1}onMouseEnter(t,e){t.stopPropagation();const i=this.getDataIndexForId(e.id);this.hoveredItemIndex=i;this.mouseenter.emit(this.data[i])}onMouseLeave(t,e){t.stopPropagation();const i=this.getDataIndexForId(e.id);this.hoveredItemIndex=-1;this.mouseleave.emit(this.data[i])}render(){return i("click-elsewhere",{key:"6ef0467e7caa8b09d79a19a661ddc5b9e5bb4fe9",onChange:()=>this.onClickElsewhere(this)},i("ul",{key:"00820cd965766010dd29f00f2cc662e7c581f728"},this.dataWithClasses.map((t=>i("li",{class:"item"},i("button",{"test-id":"item","aria-label":`${t.name} ${this.formatValue(t.value)}`,class:t.classes,onClick:e=>this.onClick(e,t),onMouseEnter:e=>this.onMouseEnter(e,t),onMouseLeave:e=>this.onMouseLeave(e,t)},i("span",{"test-id":"itemColor",class:"item-color-indicator",style:{backgroundColor:t.color},"aria-hidden":"true"}),i("span",{"test-id":"itemName",class:"item-name"},t.name),i("span",{id:`item-${t.id}`,"test-id":"itemValue",class:"item-value"},this.formatValue(t.value))))))))}static get watchers(){return{hoveredItemId:["watchHoveredItemId"],selectedItemId:["watchSelectedItemId"]}}};a.style=s;export{a as q2_legend};
2
- //# sourceMappingURL=p-403bf3d4.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["q2LegendCss","Q2LegendStyle0","Q2Legend","componentWillLoad","this","watchHoveredItemId","hoveredItemId","watchSelectedItemId","selectedItemId","newItemId","newItemIndex","getDataIndexForId","hoveredItemIndex","selectedItemIndex","dataWithClasses","data","map","item","index","Object","assign","classes","isItemButtonFaded","isItemButtonSelected","formatValue","value","valueAsFloat","parseFloat","toString","format","Intl","NumberFormat","style","currency","id","findIndex","onClick","event","itemData","stopPropagation","itemIndex","detail","click","emit","onClickElsewhere","obj","onMouseEnter","mouseenter","onMouseLeave","mouseleave","render","h","key","onChange","class","name","backgroundColor","color"],"sources":["src/components/q2-legend/q2-legend.scss?tag=q2-legend&encapsulation=shadow","src/components/q2-legend/q2-legend.tsx"],"sourcesContent":["@import '../../styles/host.scss';\n@import '../../styles/functions';\n\n:host {\n position: relative;\n width: 100%;\n display: block;\n}\n\nul {\n list-style: none;\n padding: 0;\n margin: 0;\n}\n\n.item-button {\n align-items: center;\n background-color: transparent;\n border: none;\n column-gap: #{var-list(--tct-legend-item-gap, --app-scale-2x, 10px)};\n display: flex;\n height: #{var-list(--tct-legend-item-height, --app-scale-9x, 45px)};\n opacity: 1;\n padding-block: 0;\n padding-inline: #{var-list(--tct-legend-item-padding-inline, --app-scale-2x, 10px)};\n transition: opacity var(--app-tween-1, 0.2s ease);\n width: 100%;\n\n &:hover {\n cursor: pointer;\n }\n\n &-faded > * {\n opacity: #{var-list(--tct-legend-item-opacity-faded, --app-disabled-opacity, 0.4)};\n }\n}\n\n.item-color-indicator {\n border-radius: 50%;\n display: inline-block;\n flex-shrink: 0;\n height: #{var-list(--tct-legend-item-color-indicator-size, --app-scale-3x, 15px)};\n width: #{var-list(--tct-legend-item-color-indicator-size, --app-scale-3x, 15px)};\n}\n\n.item-name {\n color: var(--tct-legend-item-name-font-color, --t-text, #4d4d4d);\n display: inline-block;\n flex-grow: 1;\n font-size: #{var-list(--tct-legend-item-name-font-size, --app-font-size, 14px)};\n font-weight: var(--tct-legend-item-name-font-weight, 600);\n line-height: #{var-list(--tct-legend-item-name-line-height, --app-line-height, 1.428571429em)};\n text-align: left;\n}\n\n.item-value {\n color: #{var-list(--tct-legend-item-value-font-color, --t-text, #4d4d4d)};\n display: inline-block;\n flex-grow: 1;\n font-size: #{var-list(--tct-legend-item-value-font-size, --app-font-size, 14px)};\n font-weight: var(--tct-legend-item-value-font-weight, 400);\n line-height: #{var-list(--tct-legend-item-value-line-height, --app-line-height, 1.428571429em)};\n text-align: right;\n}\n","import { Component, ComponentInterface, Event, EventEmitter, h, Prop, State, Watch } from '@stencil/core';\nimport { IDonutChartData } from 'q2-tecton-common/lib/types/element-types';\n\n@Component({\n tag: 'q2-legend',\n shadow: true,\n styleUrl: 'q2-legend.scss',\n})\nexport class Q2Legend implements ComponentInterface {\n // #region State Properties\n\n @State()\n hoveredItemIndex: number = -1;\n\n @State()\n selectedItemIndex: number = -1;\n\n // #endregion\n // #region Public Property API\n\n /** An array of objects that contain the data to be displayed. */\n @Prop()\n data: IDonutChartData[] = [];\n\n /** The format of the value displayed in the legend. */\n @Prop({ reflect: true })\n format: 'default' | 'currency' = 'default';\n\n /** The id of the item to set as hovered. */\n @Prop({ reflect: true })\n hoveredItemId: string = null;\n\n /** The id of the item to set as selected. */\n @Prop({ reflect: true })\n selectedItemId: string = null;\n\n // #endregion\n // #region Events\n\n @Event()\n click: EventEmitter<IDonutChartData>;\n\n @Event()\n mouseenter: EventEmitter<IDonutChartData>;\n\n @Event()\n mouseleave: EventEmitter<IDonutChartData>;\n\n // #endregion\n // #region Component Lifecycle Events\n\n componentWillLoad() {\n this.watchHoveredItemId(this.hoveredItemId);\n this.watchSelectedItemId(this.selectedItemId);\n }\n\n // #endregion\n // #region Watchers\n\n @Watch('hoveredItemId')\n watchHoveredItemId(newItemId: string) {\n const newItemIndex = this.getDataIndexForId(newItemId);\n this.hoveredItemIndex = newItemIndex;\n }\n\n @Watch('selectedItemId')\n watchSelectedItemId(newItemId: string) {\n const newItemIndex = this.getDataIndexForId(newItemId);\n this.selectedItemIndex = newItemIndex;\n }\n\n // #endregion\n // #region Local Methods\n\n get dataWithClasses() {\n return this.data.map((item, index) => ({\n ...item,\n classes: {\n 'item-button': true,\n 'item-button-faded': this.isItemButtonFaded(index),\n 'item-button-selected': this.isItemButtonSelected(index),\n },\n }));\n }\n\n formatValue(value: string | number) {\n const valueAsFloat = parseFloat(value.toString());\n if (this.format === 'currency') {\n return Intl.NumberFormat('en-US', {\n style: 'currency',\n currency: 'USD',\n }).format(valueAsFloat);\n }\n\n return Intl.NumberFormat('en-US').format(valueAsFloat);\n }\n\n getDataIndexForId(id: string) {\n const index = this.data.findIndex(item => item.id === id);\n return index >= 0 ? index : -1;\n }\n\n isItemButtonFaded(index: number) {\n if (this.isItemButtonSelected(index) || index == this.hoveredItemIndex) return false;\n\n if (this.selectedItemIndex >= 0 && this.hoveredItemIndex === -1) return true;\n\n return this.hoveredItemIndex >= 0 && index !== this.hoveredItemIndex;\n }\n\n isItemButtonSelected(index: number) {\n return index === this.selectedItemIndex;\n }\n\n onClick(event: MouseEvent, itemData: IDonutChartData) {\n event.stopPropagation();\n const itemIndex = this.getDataIndexForId(itemData.id);\n if (this.selectedItemIndex === itemIndex) {\n this.selectedItemIndex = -1;\n if (event.detail === 0) {\n // Keyboard click\n this.hoveredItemIndex = -1;\n } else {\n // Mouse click\n this.hoveredItemIndex = itemIndex;\n }\n this.click.emit(null);\n return;\n }\n\n this.selectedItemIndex = itemIndex;\n this.click.emit(this.data[itemIndex]);\n }\n\n onClickElsewhere(obj) {\n obj.selectedItemIndex = -1;\n }\n\n onMouseEnter(event: Event, itemData: IDonutChartData) {\n event.stopPropagation();\n const itemIndex = this.getDataIndexForId(itemData.id);\n this.hoveredItemIndex = itemIndex;\n this.mouseenter.emit(this.data[itemIndex]);\n }\n\n onMouseLeave(event: Event, itemData: IDonutChartData) {\n event.stopPropagation();\n const itemIndex = this.getDataIndexForId(itemData.id);\n this.hoveredItemIndex = -1;\n this.mouseleave.emit(this.data[itemIndex]);\n }\n\n // #endregion\n // #region Render Methods\n\n render() {\n return (\n <click-elsewhere onChange={() => this.onClickElsewhere(this)}>\n <ul>\n {this.dataWithClasses.map(item => (\n <li class=\"item\">\n <button\n test-id=\"item\"\n aria-label={`${item.name} ${this.formatValue(item.value)}`}\n class={item.classes}\n onClick={event => this.onClick(event, item)}\n onMouseEnter={event => this.onMouseEnter(event, item)}\n onMouseLeave={event => this.onMouseLeave(event, item)}\n >\n <span\n test-id=\"itemColor\"\n class=\"item-color-indicator\"\n style={{ backgroundColor: item.color }}\n aria-hidden=\"true\"\n />\n <span\n test-id=\"itemName\"\n class=\"item-name\"\n >\n {item.name}\n </span>\n <span\n id={`item-${item.id}`}\n test-id=\"itemValue\"\n class=\"item-value\"\n >\n {this.formatValue(item.value)}\n </span>\n </button>\n </li>\n ))}\n </ul>\n </click-elsewhere>\n );\n }\n\n // #endregion\n}\n"],"mappings":"kDAAA,MAAMA,EAAc,6pEACpB,MAAAC,EAAeD,E,MCOFE,EAAQ,M,2JAIW,E,wBAGC,E,UAOH,G,YAIO,U,mBAIT,K,oBAIC,I,CAiBzB,iBAAAC,GACIC,KAAKC,mBAAmBD,KAAKE,eAC7BF,KAAKG,oBAAoBH,KAAKI,e,CAOlC,kBAAAH,CAAmBI,GACf,MAAMC,EAAeN,KAAKO,kBAAkBF,GAC5CL,KAAKQ,iBAAmBF,C,CAI5B,mBAAAH,CAAoBE,GAChB,MAAMC,EAAeN,KAAKO,kBAAkBF,GAC5CL,KAAKS,kBAAoBH,C,CAM7B,mBAAII,GACA,OAAOV,KAAKW,KAAKC,KAAI,CAACC,EAAMC,IAAKC,OAAAC,OAAAD,OAAAC,OAAA,GAC1BH,GAAI,CACPI,QAAS,CACL,cAAe,KACf,oBAAqBjB,KAAKkB,kBAAkBJ,GAC5C,uBAAwBd,KAAKmB,qBAAqBL,O,CAK9D,WAAAM,CAAYC,GACR,MAAMC,EAAeC,WAAWF,EAAMG,YACtC,GAAIxB,KAAKyB,SAAW,WAAY,CAC5B,OAAOC,KAAKC,aAAa,QAAS,CAC9BC,MAAO,WACPC,SAAU,QACXJ,OAAOH,E,CAGd,OAAOI,KAAKC,aAAa,SAASF,OAAOH,E,CAG7C,iBAAAf,CAAkBuB,GACd,MAAMhB,EAAQd,KAAKW,KAAKoB,WAAUlB,GAAQA,EAAKiB,KAAOA,IACtD,OAAOhB,GAAS,EAAIA,GAAS,C,CAGjC,iBAAAI,CAAkBJ,GACd,GAAId,KAAKmB,qBAAqBL,IAAUA,GAASd,KAAKQ,iBAAkB,OAAO,MAE/E,GAAIR,KAAKS,mBAAqB,GAAKT,KAAKQ,oBAAsB,EAAG,OAAO,KAExE,OAAOR,KAAKQ,kBAAoB,GAAKM,IAAUd,KAAKQ,gB,CAGxD,oBAAAW,CAAqBL,GACjB,OAAOA,IAAUd,KAAKS,iB,CAG1B,OAAAuB,CAAQC,EAAmBC,GACvBD,EAAME,kBACN,MAAMC,EAAYpC,KAAKO,kBAAkB2B,EAASJ,IAClD,GAAI9B,KAAKS,oBAAsB2B,EAAW,CACtCpC,KAAKS,mBAAqB,EAC1B,GAAIwB,EAAMI,SAAW,EAAG,CAEpBrC,KAAKQ,kBAAoB,C,KACtB,CAEHR,KAAKQ,iBAAmB4B,C,CAE5BpC,KAAKsC,MAAMC,KAAK,MAChB,M,CAGJvC,KAAKS,kBAAoB2B,EACzBpC,KAAKsC,MAAMC,KAAKvC,KAAKW,KAAKyB,G,CAG9B,gBAAAI,CAAiBC,GACbA,EAAIhC,mBAAqB,C,CAG7B,YAAAiC,CAAaT,EAAcC,GACvBD,EAAME,kBACN,MAAMC,EAAYpC,KAAKO,kBAAkB2B,EAASJ,IAClD9B,KAAKQ,iBAAmB4B,EACxBpC,KAAK2C,WAAWJ,KAAKvC,KAAKW,KAAKyB,G,CAGnC,YAAAQ,CAAaX,EAAcC,GACvBD,EAAME,kBACN,MAAMC,EAAYpC,KAAKO,kBAAkB2B,EAASJ,IAClD9B,KAAKQ,kBAAoB,EACzBR,KAAK6C,WAAWN,KAAKvC,KAAKW,KAAKyB,G,CAMnC,MAAAU,GACI,OACIC,EAAA,mBAAAC,IAAA,2CAAiBC,SAAU,IAAMjD,KAAKwC,iBAAiBxC,OACnD+C,EAAA,MAAAC,IAAA,4CACKhD,KAAKU,gBAAgBE,KAAIC,GACtBkC,EAAA,MAAIG,MAAM,QACNH,EAAA,oBACY,OAAM,aACF,GAAGlC,EAAKsC,QAAQnD,KAAKoB,YAAYP,EAAKQ,SAClD6B,MAAOrC,EAAKI,QACZe,QAASC,GAASjC,KAAKgC,QAAQC,EAAOpB,GACtC6B,aAAcT,GAASjC,KAAK0C,aAAaT,EAAOpB,GAChD+B,aAAcX,GAASjC,KAAK4C,aAAaX,EAAOpB,IAEhDkC,EAAA,kBACY,YACRG,MAAM,uBACNtB,MAAO,CAAEwB,gBAAiBvC,EAAKwC,OAAO,cAC1B,SAEhBN,EAAA,kBACY,WACRG,MAAM,aAELrC,EAAKsC,MAEVJ,EAAA,QACIjB,GAAI,QAAQjB,EAAKiB,KAAI,UACb,YACRoB,MAAM,cAELlD,KAAKoB,YAAYP,EAAKQ,a"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["q2StepperCss","Q2StepperStyle0","Q2Stepper","this","scheduledAfterRender","checkForPanes","allPanes","length","stepCount","checkScrollState","listElement","scrollLeft","scrollWidth","clientWidth","scrollEnabled","showScrollLeft","showScrollRight","onScrollBtnClick","direction","scrollAmount","Math","floor","scrollBy","left","behavior","onSlotChange","onStepClick","event","selectedStep","stopPropagation","currentStep","lastEnabledStep","change","emit","onStepKeyDown","stepNumber","key","preventDefault","max","min","focusStep","disconnectedCallback","resizeObserver","disconnect","componentWillLoad","ResizeObserver","componentDidLoad","observe","overrideFocus","hostElement","setTimeout","showStep","componentDidRender","forEach","fn","defaultChangeHandler","target","getAttribute","detail","contentChangeHandler","contentChangeTriggerCount","delegateFocus","isEventFromElement","statusChangeHandler","index","Array","from","findIndex","el","id","status","renderStepBtn","currentStepChanged","querySelectorAll","scrollIntoView","forceFocus","stepListItem","children","isActive","document","activeElement","_a","firstElementChild","focus","offsetLeft","scrollTo","getPaneSlotOrProperty","pane","slotName","slot","querySelector","outerHTML","loc","resizeIframe","_b","window","TectonElements","call","push","showStepPane","stepIndex","label","description","isCurrentStep","labelId","descriptionId","btnLabel","statusIcon","stepClasses","isLocked","disabled","h","role","class","join","type","tabIndex","onKeyDown","ev","onClick","Fragment","innerHTML","render","containerClasses","hidden","hideLabel","onScroll","ref","keys","map","onSlotchange"],"sources":["src/components/q2-stepper/q2-stepper.scss?tag=q2-stepper&encapsulation=shadow","src/components/q2-stepper/q2-stepper.tsx"],"sourcesContent":["@import '../../styles/host.scss';\n@import '../../styles/functions';\n\n:host {\n display: block;\n position: relative;\n}\n\nul {\n --comp-bullet-background: #{var-list(\n --tct-stepper-bullet-active-background,\n var-prefixer(stepper-bullet-active-bg),\n --t-primary,\n #0079c1\n )};\n --comp-bullet-font-color: #{var-list(\n var-prefixer(stepper-bullet-active-font-color),\n --t-primary-font-color,\n #ffffff\n )};\n --comp-bullet-size: #{var-list(var-prefixer(stepper-btn-icon-size), 24px)};\n --comp-bullet-gap: #{var-list(var-prefixer(stepper-btn-gap), --app-scale-3x, 15px)};\n --comp-bullet-font-size: #{var-list(var-prefixer(stepper-btn-label-font-size), 16px)};\n\n --comp-step-width: #{var-list(var-prefixer(stepper-step-width), --t-stepper-step-width, 80px)};\n --comp-step-gap: #{var-list(var-prefixer(stepper-step-gap), 5px)};\n --comp-btn-icon-size: #{var-list(var-prefixer(stepper-btn-icon-size), 24px)};\n --comp-btn-label-font-size: #{var-list(var-prefixer(stepper-btn-label-font-size), 16px)};\n --comp-tween: #{var-list(var-prefixer(stepper-tween), --app-tween-1, unquote('0.2s ease'))};\n\n overflow-x: auto;\n display: flex;\n justify-content: center;\n list-style: none;\n padding: 0;\n padding: var-list(var-prefixer(stepper-list-padding), 2px);\n margin: 0;\n gap: var(--comp-step-gap);\n @include tiny-scrollbar();\n\n .has-scroll & {\n justify-content: unset;\n }\n}\n\nli {\n min-height: var-list(var-prefixer(stepper-min-height), 50px);\n flex: 0 0 auto;\n position: relative;\n width: var(--comp-step-width);\n text-align: center;\n max-width: 150px;\n min-width: 80px;\n}\n\n.step-btn {\n position: relative;\n background: transparent;\n border: 0;\n cursor: pointer;\n display: flex;\n flex-direction: column;\n align-items: center;\n height: calc(100% - 4px);\n width: 100%;\n transition: var(--comp-tween);\n padding: 0;\n transition-property: box-shadow;\n outline: none;\n margin-top: 2px;\n\n --comp-active-color: var(--comp-bullet-background);\n &.status-complete {\n --comp-active-color: var(--const-stoplight-success, #0e8a00);\n --tct-stoplight-success: var(--comp-active-color);\n }\n &.status-error {\n --comp-active-color: var(--const-stoplight-alert, #d20a0a);\n --tct-stoplight-warning: var(--comp-active-color);\n }\n\n &[aria-disabled] {\n cursor: not-allowed;\n\n &,\n & + .step-divider {\n --comp-bullet-font-color: #{var-list(var-prefixer(stepper-bullet-inactive-font-color), --t-text, #4d4d4d)};\n --comp-bullet-background: #{var-list(\n --tct-stepper-bullet-inactive-background,\n var-prefixer(stepper-bullet-inactive-bg),\n --t-gray-12,\n #d9d9d9\n )};\n }\n }\n}\n.step-icon,\n.step-bubble {\n display: flex;\n justify-content: center;\n align-items: center;\n line-height: 0;\n margin: var(--comp-bullet-gap) auto;\n color: var(--comp-bullet-font-color);\n width: var(--comp-btn-icon-size);\n height: var(--comp-btn-icon-size);\n min-height: var(--comp-btn-icon-size);\n font-size: var(--comp-bullet-font-size);\n transition: var(--comp-tween);\n transition-property: background, color;\n border-radius: 50%;\n position: relative;\n\n q2-icon {\n --tct-icon-fill: var(--comp-active-color);\n &:before {\n content: '';\n display: block;\n background: var(--comp-bullet-font-color);\n position: absolute;\n width: 80%;\n height: 80%;\n left: 11%;\n top: 11%;\n border-radius: 50%;\n }\n }\n .status-complete &,\n .status-error & {\n background: var(--comp-active-color);\n }\n [aria-selected] & {\n box-shadow:\n 0 0 0 2px var(--t-base, #ffffff),\n 0 0 0 4px var(--comp-active-color);\n font-weight: var-list(var-prefixer(stepper-bullet-active-font-weight), 600);\n }\n}\n\n.step-bubble {\n background: var(--comp-bullet-background);\n}\n\n.step-divider {\n width: calc(var(--comp-step-width) - var(--comp-step-gap) - var(--comp-bullet-gap) - var(--comp-bullet-size));\n top: calc(calc(var(--comp-bullet-size) / 2) + var(--comp-bullet-gap));\n left: calc(calc(var(--comp-step-width) * -0.5) + var(--comp-step-gap) + var(--comp-bullet-gap));\n border: 0;\n border-top: 1px solid var(--comp-bullet-background);\n height: 0;\n position: absolute;\n margin: 0;\n transition: border var(--comp-tween);\n}\n\n.step-container {\n position: relative;\n}\n\n.step-label {\n color: var-list(--tct-stepper-label-color, var-prefixer(stepper-title-color), --t-text, #4d4d4d);\n font-size: var-list(\n --tct-stepper-label-font-size,\n var-prefixer(stepper-title-font-size),\n --app-font-size-small,\n 12px\n );\n line-height: var-list(--tct-stepper-label-line-height, 1.5em);\n @include line-clamp(var(--tct-stepper-label-line-count, 2));\n\n [aria-selected] & {\n font-weight: var-list(var-prefixer(stepper-active-font-weight), 600);\n }\n\n [aria-describedby] & {\n -webkit-line-clamp: var(--tct-stepper-label-line-count, 1);\n }\n}\n\n.step-description {\n color: var-list(var-prefixer(stepper-description-color), --t-textA, rgba(77, 77, 77, 0.77));\n font-size: var-list(var-prefixer(stepper-description-font-size), --app-font-size-small, 12px);\n @include line-clamp(var(--tct-stepper-description-line-count, 4));\n\n // Add padding for descenders\n padding-bottom: 0.2em;\n\n // For description slot on q2-stepper-pane\n .ellipsize {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n max-width: var(--comp-step-width);\n display: block;\n }\n}\n\n.gradient-left,\n.gradient-right {\n z-index: 1;\n position: absolute;\n top: 0;\n height: 100%;\n width: 18px;\n}\n\n.gradient-left {\n background-image: linear-gradient(\n to left,\n var(--t-base-a0, rgba(255, 255, 255, 0)),\n var(--t-base-a2, rgba(255, 255, 255, 0.5)) 10%,\n var(--t-base, #ffffff) 100%\n );\n left: 0;\n}\n\n.gradient-right {\n background-image: linear-gradient(\n to right,\n var(--t-base-a0, rgba(255, 255, 255, 0)),\n var(--t-base-a2, rgba(255, 255, 255, 0.5)) 10%,\n var(--t-base, #ffffff) 100%\n );\n right: 0;\n}\n\n.btn-left,\n.btn-right {\n --tct-icon-size: 18px;\n --tct-btn-icon-hover-background: transparent;\n --tct-btn-icon-width: 22px;\n --tct-icon-stroke-primary: #{var-list(var-prefixer(stepper-scroll-arrow-color), --t-text, #4d4d4d)};\n\n position: absolute;\n top: calc(50% - 22px);\n z-index: 2;\n q2-icon {\n --tct-icon-stroke-width: 3;\n }\n}\n\n.btn-left {\n left: 0;\n}\n\n.btn-right {\n right: 0;\n}\n","import {\n Component,\n Prop,\n h,\n Element,\n ComponentInterface,\n State,\n Watch,\n Listen,\n Event,\n EventEmitter,\n Fragment,\n} from '@stencil/core';\nimport { loc, overrideFocus, isEventFromElement } from 'src/utils';\n@Component({ tag: 'q2-stepper', shadow: true, styleUrl: 'q2-stepper.scss' })\nexport class Q2Stepper implements ComponentInterface {\n // #region Own Properties\n\n listElement: HTMLUListElement;\n resizeObserver: ResizeObserver;\n scheduledAfterRender: (() => void)[] = [];\n\n // #endregion\n // #region Host HTML Element\n\n @Element()\n hostElement: HTMLElement;\n\n // #endregion\n // #region State Properties\n\n @State()\n contentChangeTriggerCount: number = 0;\n\n @State()\n scrollEnabled: boolean = false;\n\n @State()\n showScrollLeft: boolean = false;\n\n @State()\n showScrollRight: boolean = false;\n\n // #endregion\n // #region Public Property API\n\n /** The currently selected step. */\n @Prop({ reflect: true, mutable: true })\n currentStep: number = 1;\n\n /**\n * The last step the user may navigate to.\n * @info\n * Will be managed automatically if not provided.\n */\n @Prop({ mutable: true })\n lastEnabledStep: number;\n\n /**\n * Used to determine the number of steps in the stepper.\n * @private\n */\n @Prop({ mutable: true })\n stepCount: number;\n\n // #endregion\n // #region Events\n\n /**\n * Emitted when the selected step changes.\n * @legacyEvent\n */\n @Event()\n change: EventEmitter;\n\n // #endregion\n // #region Component Lifecycle Events\n\n disconnectedCallback() {\n this.resizeObserver.disconnect();\n }\n\n componentWillLoad() {\n if (!this.lastEnabledStep) this.lastEnabledStep = this.currentStep || 1;\n this.resizeObserver = new ResizeObserver(() => this.checkScrollState());\n this.checkForPanes();\n }\n\n componentDidLoad() {\n this.resizeObserver.observe(this.listElement);\n this.checkScrollState();\n overrideFocus(this.hostElement);\n setTimeout(() => this.showStep(this.currentStep || 1), 0);\n }\n\n componentDidRender() {\n this.scheduledAfterRender.forEach(fn => fn());\n this.scheduledAfterRender = [];\n }\n\n // #endregion\n // #region Listeners\n\n @Listen('change')\n defaultChangeHandler(event: CustomEvent) {\n const { hostElement } = this;\n if (event.target === hostElement && !hostElement.getAttribute('onchange') && !!event.detail) {\n this.currentStep = event.detail.selectedStep;\n }\n }\n\n @Listen('contentChange')\n contentChangeHandler() {\n this.contentChangeTriggerCount += 1;\n }\n\n @Listen('focus')\n delegateFocus(event: FocusEvent) {\n if (!isEventFromElement(event, this.hostElement)) return;\n this.focusStep(this.currentStep, true, true);\n }\n\n @Listen('statusChange')\n statusChangeHandler(event: CustomEvent) {\n const index = Array.from(this.allPanes).findIndex(el => event.detail.id === el.id);\n if (index > -1) {\n this.allPanes[index].status = event.detail.status;\n this.renderStepBtn(index);\n }\n }\n\n // #endregion\n // #region Watchers\n\n @Watch('currentStep')\n currentStepChanged(stepNumber: number) {\n this.showStep(stepNumber);\n }\n\n // #endregion\n // #region Local Methods\n\n get allPanes() {\n return this.hostElement.querySelectorAll<HTMLQ2StepperPaneElement>('q2-stepper-pane');\n }\n\n checkForPanes = () => {\n const { allPanes } = this;\n if (!allPanes.length) return;\n\n this.stepCount = allPanes.length;\n };\n\n checkScrollState = () => {\n if (!this.listElement) return;\n const { scrollLeft, scrollWidth, clientWidth } = this.listElement;\n this.scrollEnabled = scrollWidth > clientWidth;\n this.showScrollLeft = !!scrollLeft;\n this.showScrollRight = scrollWidth !== scrollLeft + clientWidth;\n };\n\n focusStep(stepNumber: number, scrollIntoView?: boolean, forceFocus?: boolean) {\n const stepListItem = this.listElement.children[stepNumber - 1] as HTMLLIElement;\n const isActive = document.activeElement === this.hostElement;\n if (!stepListItem) return;\n if (isActive || forceFocus) {\n (stepListItem.firstElementChild as HTMLButtonElement)?.focus();\n }\n\n if (scrollIntoView) {\n const left = stepListItem.offsetLeft - this.listElement.clientWidth / 2;\n this.listElement.scrollTo({\n left,\n behavior: 'smooth',\n });\n }\n }\n\n getPaneSlotOrProperty(pane: HTMLQ2StepperPaneElement, slotName: 'description' | 'label') {\n const slot = pane.querySelector<HTMLElement>(`:scope > [slot=\"${slotName}\"]`);\n return slot?.outerHTML ?? loc(pane[slotName]);\n }\n\n onScrollBtnClick = (direction: 'left' | 'right') => {\n const scrollAmount = Math.floor(this.listElement.clientWidth / 2);\n\n this.listElement.scrollBy({\n left: direction === 'left' ? -scrollAmount : scrollAmount,\n behavior: 'smooth',\n });\n };\n\n onSlotChange = () => {\n this.checkForPanes();\n this.checkScrollState();\n };\n\n onStepClick = (event, selectedStep: number) => {\n event.stopPropagation();\n const { currentStep, stepCount, lastEnabledStep } = this;\n if (selectedStep > lastEnabledStep || selectedStep === currentStep) return;\n\n this.change.emit({\n selectedStep,\n lastEnabledStep,\n currentStep,\n stepCount,\n });\n };\n\n onStepKeyDown = (event: KeyboardEvent, stepNumber: number) => {\n const { lastEnabledStep, stepCount } = this;\n const { key } = event;\n\n let selectedStep;\n switch (key) {\n case 'ArrowLeft':\n event.preventDefault();\n selectedStep = Math.max(stepNumber - 1, 0);\n break;\n\n case 'ArrowRight':\n event.preventDefault();\n selectedStep = Math.min(stepNumber + 1, stepCount);\n break;\n\n case 'Home':\n event.preventDefault();\n selectedStep = 1;\n break;\n\n case 'End':\n event.preventDefault();\n selectedStep = lastEnabledStep;\n break;\n }\n\n if (!selectedStep) return;\n this.focusStep(selectedStep, true);\n };\n\n resizeIframe() {\n return window?.TectonElements?.resizeIframe?.();\n }\n\n showStep(stepNumber: number) {\n if (stepNumber > this.lastEnabledStep) {\n const { currentStep, stepCount } = this;\n this.lastEnabledStep = stepNumber;\n this.change.emit({\n selectedStep: null,\n lastEnabledStep: stepNumber,\n currentStep,\n stepCount,\n });\n }\n\n this.scheduledAfterRender.push(this.resizeIframe);\n this.showStepPane(stepNumber);\n this.focusStep(stepNumber, this.scrollEnabled);\n }\n\n showStepPane(stepNumber: number) {\n this.allPanes.forEach((pane, index) => {\n pane.isActive = stepNumber === index + 1;\n });\n }\n\n // #endregion\n // #region Render Methods\n\n renderStepBtn(stepIndex: number) {\n const { allPanes, stepCount, currentStep, lastEnabledStep } = this;\n const pane = allPanes?.[stepIndex] ?? null;\n const { id, status } = pane;\n const label = this.getPaneSlotOrProperty(pane, 'label');\n const description = this.getPaneSlotOrProperty(pane, 'description');\n\n const stepNumber = stepIndex + 1;\n const isCurrentStep = stepNumber === currentStep;\n const labelId = !!label && `label-${id}`;\n const descriptionId = !!label && !!description && `description-${id}`;\n const btnLabel = !label && loc('tecton.element.stepper.number', [`${stepNumber}`, `${stepCount}`]);\n\n let statusIcon;\n if (status === 'complete') statusIcon = 'success-filled';\n else if (status === 'error') statusIcon = 'warning-filled';\n\n const stepClasses = ['step-btn'];\n if (status) stepClasses.push(`status-${status}`);\n const isLocked = status === 'locked';\n const disabled = isLocked || stepNumber > lastEnabledStep;\n\n return (\n <li role=\"presentation\">\n <button\n class={stepClasses.join(' ')}\n type=\"button\"\n aria-labelledby={labelId}\n aria-describedBy={descriptionId}\n aria-label={btnLabel}\n aria-selected={isCurrentStep}\n aria-disabled={disabled ? 'true' : null}\n role=\"tab\"\n tabIndex={isCurrentStep ? 0 : -1}\n onKeyDown={ev => this.onStepKeyDown(ev, stepNumber)}\n onClick={ev => !isLocked && this.onStepClick(ev, stepNumber)}\n >\n <Fragment>\n {statusIcon ? (\n <div class=\"step-icon\">\n <q2-icon type={statusIcon}></q2-icon>\n </div>\n ) : (\n <div class=\"step-bubble\">{stepNumber}</div>\n )}\n {labelId && (\n <div\n class=\"step-label\"\n id={labelId}\n innerHTML={label}\n ></div>\n )}\n {labelId && descriptionId && (\n <div\n class=\"step-description\"\n id={descriptionId}\n innerHTML={description}\n ></div>\n )}\n </Fragment>\n </button>\n {stepIndex ? <div class=\"step-divider\"></div> : ''}\n </li>\n );\n }\n\n render() {\n const { stepCount, scrollEnabled, showScrollLeft, showScrollRight } = this;\n const containerClasses = ['step-container'];\n if (scrollEnabled) containerClasses.push('has-scroll');\n\n return (\n <Fragment>\n <div class={containerClasses.join(' ')}>\n {scrollEnabled && (\n <Fragment>\n <div\n class=\"gradient-left\"\n hidden={!showScrollLeft}\n ></div>\n <div\n class=\"gradient-right\"\n hidden={!showScrollRight}\n ></div>\n\n <q2-btn\n class=\"btn-left\"\n hideLabel={true}\n hidden={!this.showScrollLeft}\n label={loc('tecton.element.stepper.scrollLeft')}\n onClick={() => this.onScrollBtnClick('left')}\n >\n <q2-icon type=\"chevron-left\"></q2-icon>\n </q2-btn>\n\n <q2-btn\n class=\"btn-right\"\n hideLabel={true}\n hidden={!this.showScrollRight}\n label={loc('tecton.element.stepper.scrollRight')}\n onClick={() => this.onScrollBtnClick('right')}\n >\n <q2-icon type=\"chevron-right\"></q2-icon>\n </q2-btn>\n </Fragment>\n )}\n\n <ul\n onScroll={this.checkScrollState}\n ref={el => (this.listElement = el)}\n role=\"tablist\"\n >\n {stepCount > 0 && [...Array(stepCount).keys()].map(stepIndex => this.renderStepBtn(stepIndex))}\n </ul>\n </div>\n <div role=\"list\">\n <slot onSlotchange={() => this.onSlotChange()} />\n </div>\n </Fragment>\n );\n }\n\n // #endregion\n}\n"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{r as t,c as r,h as a,g as e}from"./p-a5f18e27.js";import{c as o,s as i,o as n,i as s,l as c,m as l,f as h}from"./p-9a1a4bc0.js";const d="*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #0066cc)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}:host{--comp-default-margin:var(--tct-textarea-margin-top, var(--t-textarea-margin-top, var(--app-scale-6x, 30px))) 0 var(--tct-textarea-margin-bottom, var(--t-textarea-margin-bottom, var(--app-scale-6x, 30px)));display:block;margin:var(--tct-textarea-margin, var(--comp-default-margin));font-size:var(--tct-textarea-font-size, var(--t-textarea-font-size, var(--app-font-size, inherit)))}:host([hidden]){display:none}label{--comp-label-padding:var(--tct-textarea-label-padding, 0 var(--tct-textarea-label-padding-right, var(--t-textarea-label-padding-right, 0)) 0 var(--tct-textarea-label-padding-left, var(--t-textarea-label-padding-left, 0)));--comp-label-margin:var(--tct-textarea-label-margin, var(--tct-textarea-label-margin-top, var(--t-textarea-label-margin-top, 0)) 0 var(--tct-textarea-label-margin-bottom, var(--t-textarea-label-margin-bottom, var(--tct-scale-1x, var(--app-scale-1x, 5px)))));display:block;padding:var(--comp-label-padding);margin:var(--comp-label-margin);color:var(--tct-textarea-label-font-color, var(--t-textarea-label-font-color, inherit));font-size:var(--tct-textarea-label-font-size, var(--t-textarea-label-font-size, inherit));font-weight:var(--tct-textarea-label-font-weight, var(--t-textarea-label-font-weight, 600));text-transform:var(--tct-textarea-label-text-transform, var(--t-textarea-label-text-transform, none));letter-spacing:var(--tct-textarea-label-letter-spacing, var(--t-textarea-label-letter-spacing, normal));transition:color var(--tct-textarea-tween, var(--t-textarea-tween, var(--tct-tween-2, var(--app-tween-2, 0.4s ease))))}.has-error label{color:var(--tct-textarea-error-label-font-color, var(--t-textarea-error-label-font-color, var(--tct-textarea-label-font-color, inherit)))}:hover label{color:var(--tct-textarea-hover-label-font-color, var(--tct-textarea-label-font-color, var(--t-textarea-label-font-color, inherit)))}.has-error :hover label{color:var(--tct-textarea-error-hover-label-font-color, var(--tct-textarea-error-label-font-color, var(--t-textarea-error-label-font-color, var(--tct-textarea-hover-label-font-color, var(--tct-textarea-label-font-color, inherit)))))}:host(:focus-within) label{color:var(--tct-textarea-focus-label-font-color, var(--tct-textarea-label-font-color, var(--t-textarea-label-font-color, inherit)))}:host(:focus-within) .has-error label{color:var(--tct-textarea-error-focus-label-font-color, var(--tct-textarea-error-label-font-color, var(--t-textarea-error-label-font-color, var(--tct-textarea-focus-label-font-color, var(--tct-textarea-label-font-color, var(--t-textarea-label-font-color, inherit))))))}.optional-tag{--comp-label-optional-margin:var(--tct-textarea-label-optional-margin, 0 0 0 var(--tct-textarea-label-optional-margin-left, var(--t-textarea-label-optional-margin-left, var(--tct-scale-1x, var(--app-scale-1x, 5px)))));margin:var(--comp-label-optional-margin);color:var(--tct-textarea-label-optional-font-color, var(--t-textarea-label-optional-font-color, var(--t-textA, var(--t-a11y-gray-color, rgba(77, 77, 77, 0.77)))));font-size:var(--tct-textarea-label-optional-font-size, var(--t-textarea-label-optional-font-size, 12px));font-weight:var(--tct-textarea-label-optional-font-weight, var(--t-textarea-label-optional-font-weight, 400))}.input-container{min-height:var(--tct-textarea-min-height, var(--t-textarea-min-height, var(--comp-textarea-min-height)));height:100%;--comp-default-border-radius:var(--tct-border-radius-1, var(--app-border-radius-1, 4px));--comp-textarea-border-top-left-radius:var(--tct-textarea-border-top-left-radius, var(--t-textarea-border-top-left-radius, var(--comp-default-border-radius)));--comp-textarea-border-top-right-radius:var(--tct-textarea-border-top-right-radius, var(--t-textarea-border-top-right-radius, var(--comp-default-border-radius)));--comp-textarea-border-bottom-right-radius:var(--tct-textarea-border-bottom-right-radius, var(--t-textarea-border-bottom-right-radius, var(--comp-default-border-radius)));--comp-textarea-border-bottom-left-radius:var(--tct-textarea-border-bottom-left-radius, var(--t-textarea-border-bottom-left-radius, var(--comp-default-border-radius)));--comp-textarea-border-radius:var(--comp-textarea-border-top-left-radius)\n var(--comp-textarea-border-top-right-radius) var(--comp-textarea-border-bottom-right-radius)\n var(--comp-textarea-border-bottom-left-radius);--comp-textarea-border-width:var(--tct-textarea-border-top-width, var(--t-textarea-border-top-width, 1px)) var(--tct-textarea-border-right-width, var(--t-textarea-border-right-width, 1px)) var(--tct-textarea-border-bottom-width, var(--t-textarea-border-bottom-width, 1px)) var(--tct-textarea-border-left-width, var(--t-textarea-border-left-width, 1px));--comp-textarea-icon-clearance:34px}:host([disabled]) .input-container{cursor:not-allowed;opacity:var(--tct-textarea-disabled-opacity, var(--t-textarea-disabled-opacity, var(--tct-disabled-opacity, var(--app-disabled-opacity, 0.4))))}.content-container{--comp-textarea-min-height:46px;--comp-textarea-min-width:150px;position:relative;display:inline-block;min-height:var(--tct-textarea-min-height, var(--t-textarea-min-height, var(--comp-textarea-min-height)));min-width:var(--tct-textarea-min-width, var(--t-textarea-min-width, var(--comp-textarea-min-width)))}:host(:not([cols])) .content-container{width:100%}textarea{--comp-textarea-padding:var(--tct-textarea-padding, var(--tct-textarea-vertical-padding, var(--t-textarea-vertical-padding, var(--tct-scale-2x, var(--app-scale-2x, 10px)))) var(--tct-textarea-horizontal-padding, var(--t-textarea-horizontal-padding, var(--tct-scale-2x, var(--app-scale-2x, 10px)))));--comp-textarea-border-color:var(--tct-textarea-border-color, var(--t-textarea-border-color, var(--tct-input-border-color, var(--t-input-border-color, var(--t-a11y-gray-color-AA, #949494)))));--comp-textarea-background:var(--tct-textarea-background, var(--tct-textarea-bg, var(--t-textarea-bg, var(--tct-input-background, var(--tct-input-bg, var(--t-input-bg, var(--t-gray-14, #fcfcfd)))))));--comp-textarea-hover-ring-color:var(--tct-textarea-hover-ring-color);--comp-textarea-hover-ring:0 0 0 2px var(--t-base), 0 0 0 4px var(--comp-textarea-hover-ring-color), var(--tct-textarea-hover-box-shadow, 0 0 transparent);resize:none;height:100%;-webkit-appearance:none;appearance:none;display:block;box-sizing:border-box;min-height:var(--tct-textarea-min-height, var(--t-textarea-min-height, var(--comp-textarea-min-height)));padding:var(--comp-textarea-padding);background:var(--comp-textarea-background);color:var(--tct-textarea-font-color, var(--t-textarea-font-color, var(--t-input-font-color, inherit)));border-width:var(--comp-textarea-border-width);border-style:solid;border-color:var(--comp-textarea-border-color);border-radius:var(--comp-textarea-border-radius);box-shadow:var(--tct-textarea-box-shadow, var(--t-textarea-box-shadow, none));scrollbar-width:thin;scrollbar-color:var(--t-a11y-gray-color) transparent;--comp-textarea-tween:var(--tct-textarea-tween, var(--t-textarea-tween, var(--tct-tween-2, var(--app-tween-2, 0.4s ease))));transition:border-width var(--comp-textarea-tween), border-color var(--comp-textarea-tween), box-shadow var(--comp-textarea-tween)}textarea::-webkit-scrollbar{width:var(--app-scale-1x);height:var(--app-scale-1x);margin:var(--app-scale-1x)}textarea::-webkit-scrollbar-thumb{background:var(--t-a11y-gray-color);border-radius:2px}textarea::-webkit-scrollbar-track{background:transparent}textarea:not([cols]){width:100%}.has-error textarea{padding-right:var(--comp-textarea-icon-clearance);border-color:var(--tct-textarea-error-border-color, var(--t-textarea-error-border-color, var(--const-stoplight-alert, #d20a0a)));background:var(--tct-textarea-error-background, var(--comp-textarea-background))}textarea:hover{border-color:var(--tct-textarea-hover-border-color, var(--comp-textarea-border-color));background:var(--tct-textarea-hover-background, var(--comp-textarea-background));box-shadow:var(--tct-textarea-hover-box-shadow, var(--comp-textarea-hover-ring))}.has-error textarea:hover{border-color:var(--tct-textarea-error-hover-border-color, var(--tct-textarea-error-border-color, var(--t-textarea-error-border-color, var(--const-stoplight-alert, #d20a0a))));background:var(--tct-textarea-error-hover-background, var(--tct-textarea-error-background, var(--comp-textarea-background)));box-shadow:var(--tct-textarea-error-hover-box-shadow, var(--tct-textarea-error-box-shadow, var(--tct-textarea-hover-box-shadow, var(--comp-textarea-hover-ring))))}textarea:focus{border-color:var(--tct-textarea-focus-border-color, var(--comp-textarea-border-color));background:var(--tct-textarea-focus-background, var(--comp-textarea-background));box-shadow:var(--tct-textarea-focus-box-shadow, var(--const-double-focus-ring))}.has-error textarea:focus{border-color:var(--tct-textarea-error-focus-border-color, var(--tct-textarea-error-border-color, var(--const-stoplight-alert, #d20a0a)));background:var(--tct-textarea-error-focus-background, var(--tct-textarea-error-background, var(--tct-textarea-focus-background, var(--comp-textarea-background))));box-shadow:var(--tct-textarea-error-focus-box-shadow, var(--tct-textarea-error-box-shadow, var(--tct-textarea-focus-box-shadow, var(--const-double-focus-ring))))}textarea::placeholder{color:var(--tct-textarea-placeholder-font-color, var(--t-textarea-placeholder-font-color, var(--t-input-placeholder-font-color, var(--tct-gray-7, var(--app-gray-7, var(--tct-gray-d1, var(--app-gray-d1, #666666)))))))}textarea[disabled]{cursor:not-allowed}textarea.resize-vertical-auto{overflow:hidden}.has-error textarea{padding-right:var(--comp-textarea-icon-clearance)}.has-error textarea:not(:focus){border-color:var(--tct-textarea-error-border-color, var(--t-textarea-error-border-color, var(--const-stoplight-alert, #d20a0a)))}q2-icon{margin-top:calc(var(--tct-textarea-border-top-width, var(--t-textarea-border-top-width, 1px)) / 2);margin-bottom:calc(var(--tct-textarea-border-bottom-width, var(--t-textarea-border-bottom-width, 1px)) / 2);pointer-events:none;position:absolute;top:var(--tct-textarea-vertical-padding, var(--t-textarea-vertical-padding, var(--tct-scale-2x, var(--app-scale-2x, 10px))));color:var(--tct-textarea-icon-stroke-primary, var(--t-textarea-icon-stroke-primary, var(--app-gray-9, var(--tct-gray, var(--app-gray, #999999)))));right:0;margin-right:var(--tct-scale-2x, var(--app-scale-2x, 10px));--tct-icon-stroke-primary:var(--tct-textarea-icon-stroke-primary, var(--t-textarea-icon-stroke-primary, var(--tct-gray-9, var(--t-gray-9, var(--tct-gray, var(--app-gray, #999999))))));--t-icon-stroke-primary:var(--tct-textarea-icon-stroke-primary, var(--t-textarea-icon-stroke-primary, var(--tct-gray-9, var(--t-gray-9, var(--tct-gray, var(--app-gray, #999999))))))}.icon-error{color:var(--tct-stoplight-error, var(--const-stoplight-alert, #d20a0a));--tct-icon-stroke-primary:var(--tct-stoplight-error, var(--const-stoplight-alert, #d20a0a));--t-icon-stroke-primary:var(--tct-stoplight-error, var(--const-stoplight-alert, #d20a0a))}.messages-container{height:0px;overflow:hidden;background:var(--tct-message-background, var(--tct-message-bg, var(--tct-gray-14, var(--t-gray-14, var(--tct-gray-l3, var(--app-gray-l3, #f2f2f2))))));box-shadow:var(--tct-textarea-message-box-shadow, var(--t-textarea-message-box-shadow, var(--tct-box-shadow-1, var(--app-shadow-1, 0px 0px 2px rgba(0, 0, 0, 0.12), 0px 2px 4px rgba(0, 0, 0, 0.14)))));transition:height var(--tct-textarea-messages-tween, var(--t-textarea-messages-tween, var(--tct-tween-1, var(--app-tween-1, 0.2s ease))));margin-top:2px;z-index:1;position:absolute;width:100%;color:var(--tct-textarea-messages-font-color, var(--t-textarea-messages-font-color, inherit))}.max-length{color:var(--tct-textarea-max-length-color, var(--t-textarea-max-length-color, var(--t-textA, rgba(77, 77, 77, 0.77))));font-size:var(--tct-textarea-max-length-font-size, var(--t-textarea-max-length-font-size, var(--tct-font-size-small, var(--app-font-size-small, 12px))));position:absolute;right:0}.btn-resize{--tct-textarea-resize-icon-padding:calc(\n calc(\n var(--tct-textarea-resize-btn-width, var(--t-textarea-resize-btn-width, var(--tct-btn-icon-width, 44px))) - var(--tct-textarea-resize-icon-size, var(--t-textarea-resize-icon-size, 12px))\n ) / 2\n );width:var(--tct-textarea-resize-btn-width, var(--t-textarea-resize-btn-width, var(--tct-btn-icon-width, 44px)));height:var(--tct-textarea-resize-btn-height, var(--t-textarea-resize-btn-height, var(--tct-btn-icon-height, 44px)));background:var(--tct-textarea-resize-btn-background, var(--t-textarea-resize-btn-background, transparent));stroke:var(--tct-textarea-resize-color, var(--t-textarea-resize-color, var(--t-textA, rgba(77, 77, 77, 0.77))));border:0;position:absolute;right:calc(var(--tct-textarea-resize-icon-padding, var(--t-textarea-resize-icon-padding)) * -1 + 2px);bottom:calc(var(--tct-textarea-resize-icon-padding, var(--t-textarea-resize-icon-padding)) * -1 + 2px);display:block;padding:var(--tct-textarea-resize-icon-padding, var(--t-textarea-resize-icon-padding));font-size:0}.btn-resize:focus{outline:none;box-shadow:none}:host([resize=both]) .btn-resize{cursor:se-resize}:host([resize=vertical]) .btn-resize,:host([resize=vertical-auto]) .btn-resize{cursor:s-resize}:host([resize=horizontal]) .btn-resize{cursor:e-resize}";const v=d;const x=class{constructor(a){t(this,a);this.change=r(this,"change",7);this.input=r(this,"input",7);this.guid=o();this.scheduledAfterRender=[];this.checkCols=()=>{const{contentContainer:t,cols:r,textareaField:a,resize:e}=this;if(!r||["none","vertical"].includes(e))return;t.style.width=`${t.offsetWidth}px`;a.removeAttribute("cols")};this.checkRows=()=>{const{contentContainer:t,rows:r,textareaField:a,resize:e}=this;if(!r||["none","horizontal"].includes(e))return;t.style.height=`${t.offsetHeight}px`;a.removeAttribute("rows")};this.getBorderOffset=()=>{const t=window.getComputedStyle(this.textareaField);return parseInt(t.borderTopWidth,10)+parseInt(t.borderBottomWidth,10)};this.increaseHeightIfOverflowing=()=>{const{scrollHeight:t}=this.textareaField;if(this.resize==="vertical-auto"&&this.isOverflowingVertically()){const r=t+this.getBorderOffset();this.contentContainer.style.height=`${r}px`}};this.isOverflowingVertically=()=>{const{clientHeight:t,scrollHeight:r}=this.textareaField;return r>t};this.onMouseDown=t=>{const{contentContainer:r}=this;this.downParams={width:r.offsetWidth,height:r.offsetHeight,x:t.clientX,y:t.clientY};document.addEventListener("mousemove",this.onMouseMove);document.addEventListener("mouseup",this.onMouseUp)};this.onMouseMove=t=>{this.setHeight(t);this.setWidth(t)};this.onMouseUp=()=>{document.removeEventListener("mousemove",this.onMouseMove);this.downParams=null};this.onTextareaBlur=()=>{const{valueOnFocus:t,textareaField:{value:r}}=this;this.hasFocus=false;i(this);if(t!==r)this.change.emit({value:r})};this.onTextareaChange=t=>{t.stopPropagation();const r=t.target.value;this.change.emit({value:r})};this.onTextareaFocus=()=>{this.hasFocus=true;this.valueOnFocus=this.value;i(this)};this.onTextareaInput=t=>{t.stopPropagation();const r=t.target.value;this.increaseHeightIfOverflowing();this.input.emit({value:r})};this.onTouchMove=t=>{this.setHeight(t);this.setWidth(t)};this.onTouchStart=t=>{if(t.touches.length!==1)return;t.preventDefault();const{contentContainer:r}=this;const a=t.touches[0];this.downParams={width:r.offsetWidth,height:r.offsetHeight,x:a.pageX,y:a.pageY};document.addEventListener("touchmove",this.onTouchMove);document.addEventListener("touchend",this.onTouchMove)};this.downParams=undefined;this.hasFocus=undefined;this.cols=undefined;this.disabled=undefined;this.errors=undefined;this.hideLabel=undefined;this.hideMessages=undefined;this.hints=undefined;this.label=undefined;this.maxlength=undefined;this.optional=undefined;this.placeholder=undefined;this.readonly=undefined;this.resize="vertical";this.rows=undefined;this.spellcheck=undefined;this.value=undefined}componentWillLoad(){if(isNaN(this.maxlength)){this.maxlength=undefined}}componentDidLoad(){n(this.hostElement)}componentDidRender(){this.scheduledAfterRender.push(this.checkRows,this.checkCols,this.increaseHeightIfOverflowing);this.scheduledAfterRender.forEach((t=>t()));this.scheduledAfterRender=[]}onHostElementChange(t){if(t.target===this.hostElement&&!this.hostElement.onchange){this.value=t.detail.value}}onHostElementFocus(t){if(!s(t,this.hostElement))return;this.textareaField.focus()}onHostElementInput(t){if(t.target===this.hostElement&&!this.hostElement.oninput){this.value=t.detail.value}}setValue(t){const{textareaField:r}=this;r.focus();r.value=t;r.dispatchEvent(new InputEvent("input"))}colsObserver(){this.contentContainer.style.width=null}errorsObserver(){this.hasFocus&&this.scheduledAfterRender.push((()=>i(this)))}hintsObserver(){this.hasFocus&&this.scheduledAfterRender.push((()=>i(this)))}rowsObserver(){this.contentContainer.style.height=null}valueObserver(){const{maxlength:t,value:r=""}=this;if(!t)return;const a=r.substr(0,t);if(a===r)return;this.change.emit({value:a})}get hasError(){return Array.isArray(this.errors)&&this.errors.length>0}get inputDescribedBy(){return this.showMessages?`${this.inputId}-description`:undefined}get inputId(){return`input-guid-${this.guid}`}get messages(){return this.errors&&this.errors.length>0&&this.errors||this.hints&&this.hints.length>0&&this.hints||[]}get showMessages(){return this.messages.length>0&&!this.hideMessages}get showResize(){const{resize:t}=this;return t&&t!=="none"}get wrapperClasses(){const t=this.hasError?" has-error":"";const r=!!this.value?" has-value":"";const a=this.hasFocus?" has-focus":"";return`field-container${t}${r}${a}`}inputDOM(){const t=this.resize==="vertical-auto"?"resize-vertical-auto":"";return a("div",{class:"input-container"},a("textarea",{id:this.inputId,class:t,placeholder:this.placeholder&&c(this.placeholder)||undefined,"test-id":"inputField",maxLength:this.maxlength,"aria-describedby":this.inputDescribedBy,"aria-invalid":`${this.hasError}`,"aria-required":`${!this.optional}`,"aria-label":this.hideLabel&&this.label,spellcheck:this.spellcheck,rows:this.rows||3,cols:this.cols,value:this.value,ref:t=>this.textareaField=t,readonly:!!this.readonly,disabled:!!this.disabled,maxlength:this.maxlength,onInput:this.onTextareaInput,onChange:this.onTextareaChange,onFocus:this.onTextareaFocus,onBlur:this.onTextareaBlur}),this.hasError?a("q2-icon",{type:"error",class:"icon-error"}):"",this.showResize&&a("button",{onMouseDown:this.onMouseDown,onTouchStart:this.onTouchStart,class:"btn-resize","aria-label":c("tecton.element.input.resize"),tabIndex:-1},a("svg",{"aria-hidden":"true",viewBox:"0 0 12 12",xmlns:"http://www.w3.org/2000/svg"},a("path",{d:"M8.5 11.5l3-3m-7 3l7-7m-11 7l11-11",fill:"none","stroke-stroke-linecap":"square"}))))}maxLengthDOM(){var t;return a("div",{class:"max-length","aria-hidden":"true"},((t=this.value)===null||t===void 0?void 0:t.length)||0,"/",this.maxlength)}setHeight(t){var r,a;const{contentContainer:e,resize:o,downParams:{height:i,y:n}}=this;const s=["both","vertical","vertical-auto"].includes(o);if(!s)return;const c=t instanceof MouseEvent?t.clientY:(a=(r=t.touches[0])===null||r===void 0?void 0:r.pageY)!==null&&a!==void 0?a:0;const l=i-(n-c);if(o!=="vertical-auto"||l>i||o==="vertical-auto"&&!this.isOverflowingVertically()){e.style.height=`${l}px`}}setWidth(t){var r,a;const{contentContainer:e,resize:o,downParams:{width:i,x:n}}=this;const s=["both","horizontal"].includes(o);if(!s)return;const c=t instanceof MouseEvent?t.clientX:(a=(r=t.touches[0])===null||r===void 0?void 0:r.pageX)!==null&&a!==void 0?a:0;const l=i-(n-c);e.style.width=`${l}px`}render(){return a("div",{key:"b4c03a5742684b04b9794fddb0bb8d8677d57be5",class:this.wrapperClasses},h(this),a("div",{key:"e80bd2b2e9e2344479def41185418f34b8feb40c",class:"content-container",ref:t=>this.contentContainer=t},this.inputDOM(),this.maxlength?this.maxLengthDOM():"",l(this)))}get hostElement(){return e(this)}static get watchers(){return{cols:["colsObserver"],errors:["errorsObserver"],hints:["hintsObserver"],rows:["rowsObserver"],value:["valueObserver"]}}};x.style=v;export{x as q2_textarea};
2
- //# sourceMappingURL=p-661ed976.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["q2TextareaCss","Q2TextareaStyle0","Q2Textarea","this","guid","createGuid","scheduledAfterRender","checkCols","contentContainer","cols","textareaField","resize","includes","style","width","offsetWidth","removeAttribute","checkRows","rows","height","offsetHeight","getBorderOffset","computedStyle","window","getComputedStyle","parseInt","borderTopWidth","borderBottomWidth","increaseHeightIfOverflowing","scrollHeight","isOverflowingVertically","newHeight","clientHeight","onMouseDown","event","downParams","x","clientX","y","clientY","document","addEventListener","onMouseMove","onMouseUp","setHeight","setWidth","removeEventListener","onTextareaBlur","valueOnFocus","value","hasFocus","setMessageHeight","change","emit","onTextareaChange","stopPropagation","target","onTextareaFocus","onTextareaInput","input","onTouchMove","onTouchStart","touches","length","preventDefault","firstTouch","pageX","pageY","componentWillLoad","isNaN","maxlength","undefined","componentDidLoad","overrideFocus","hostElement","componentDidRender","push","forEach","fn","onHostElementChange","onchange","detail","onHostElementFocus","isEventFromElement","focus","onHostElementInput","oninput","setValue","dispatchEvent","InputEvent","colsObserver","errorsObserver","hintsObserver","rowsObserver","valueObserver","truncatedValue","substr","hasError","Array","isArray","errors","inputDescribedBy","showMessages","inputId","messages","hints","hideMessages","showResize","wrapperClasses","errorClass","valueClass","focusClass","inputDOM","textareaClasses","h","class","id","placeholder","loc","maxLength","optional","hideLabel","label","spellcheck","ref","el","readonly","disabled","onInput","onChange","onFocus","onBlur","type","tabIndex","viewBox","xmlns","d","fill","maxLengthDOM","_a","resizeY","eventY","MouseEvent","_b","resizeX","eventX","newWidth","render","key","labelDOM","messagesDOM"],"sources":["src/components/q2-textarea/q2-textarea.scss?tag=q2-textarea&encapsulation=shadow","src/components/q2-textarea/q2-textarea.tsx"],"sourcesContent":["@import '../../styles/host';\n@import '../../styles/functions';\n\n:host {\n --comp-default-margin: #{var-list(var-prefixer(textarea-margin-top), --app-scale-6x, 30px)} 0 #{var-list(\n var-prefixer(textarea-margin-bottom),\n --app-scale-6x,\n 30px\n )};\n display: block;\n margin: var-list(--tct-textarea-margin, --comp-default-margin);\n font-size: var-list(var-prefixer(textarea-font-size), --app-font-size, inherit);\n}\n\n:host([hidden]) {\n display: none;\n}\n\nlabel {\n --comp-label-padding: #{var-list(\n --tct-textarea-label-padding,\n unquote(\n '0 #{var-list(var-prefixer(textarea-label-padding-right), 0)} 0 #{var-list(var-prefixer(textarea-label-padding-left), 0)}'\n )\n )};\n --comp-label-margin: #{var-list(\n --tct-textarea-label-margin,\n unquote(\n '#{var-list(var-prefixer(textarea-label-margin-top), 0)} 0 #{var-list(var-prefixer(textarea-label-margin-bottom), --tct-scale-1x, --app-scale-1x, 5px)}'\n )\n )};\n display: block;\n padding: var(--comp-label-padding);\n margin: var(--comp-label-margin);\n color: var-list(var-prefixer(textarea-label-font-color), inherit);\n font-size: var-list(var-prefixer(textarea-label-font-size), inherit);\n font-weight: var-list(var-prefixer(textarea-label-font-weight), 600);\n text-transform: var-list(var-prefixer(textarea-label-text-transform), none);\n letter-spacing: var-list(var-prefixer(textarea-label-letter-spacing), normal);\n transition: color var-list(var-prefixer(textarea-tween), --tct-tween-2, --app-tween-2, unquote('0.4s ease'));\n\n .has-error & {\n color: var-list(var-prefixer(textarea-error-label-font-color), --tct-textarea-label-font-color, inherit);\n }\n\n :hover & {\n color: var-list(--tct-textarea-hover-label-font-color, var-prefixer(textarea-label-font-color), inherit);\n .has-error & {\n color: var-list(\n --tct-textarea-error-hover-label-font-color,\n var-prefixer(textarea-error-label-font-color),\n --tct-textarea-hover-label-font-color,\n --tct-textarea-label-font-color,\n inherit\n );\n }\n }\n\n :host(:focus-within) & {\n color: var-list(--tct-textarea-focus-label-font-color, var-prefixer(textarea-label-font-color), inherit);\n }\n\n :host(:focus-within) .has-error & {\n color: var-list(\n --tct-textarea-error-focus-label-font-color,\n var-prefixer(textarea-error-label-font-color),\n --tct-textarea-focus-label-font-color,\n var-prefixer(textarea-label-font-color),\n inherit\n );\n }\n}\n\n.optional-tag {\n --comp-label-optional-margin: #{var-list(\n --tct-textarea-label-optional-margin,\n unquote(\n '0 0 0 #{var-list(var-prefixer(textarea-label-optional-margin-left), --tct-scale-1x, --app-scale-1x, 5px)}'\n )\n )};\n margin: var(--comp-label-optional-margin);\n color: var-list(\n var-prefixer(textarea-label-optional-font-color),\n --t-textA,\n --t-a11y-gray-color,\n rgba(77, 77, 77, 0.77)\n );\n font-size: var-list(var-prefixer(textarea-label-optional-font-size), 12px);\n font-weight: var-list(var-prefixer(textarea-label-optional-font-weight), 400);\n}\n\n.input-container {\n min-height: var-list(var-prefixer(textarea-min-height), --comp-textarea-min-height);\n height: 100%;\n --comp-default-border-radius: #{var-list(--tct-border-radius-1, --app-border-radius-1, 4px)};\n --comp-textarea-border-top-left-radius: #{var-list(\n var-prefixer(textarea-border-top-left-radius),\n --comp-default-border-radius\n )};\n --comp-textarea-border-top-right-radius: #{var-list(\n var-prefixer(textarea-border-top-right-radius),\n --comp-default-border-radius\n )};\n --comp-textarea-border-bottom-right-radius: #{var-list(\n var-prefixer(textarea-border-bottom-right-radius),\n --comp-default-border-radius\n )};\n --comp-textarea-border-bottom-left-radius: #{var-list(\n var-prefixer(textarea-border-bottom-left-radius),\n --comp-default-border-radius\n )};\n --comp-textarea-border-radius: var(--comp-textarea-border-top-left-radius)\n var(--comp-textarea-border-top-right-radius) var(--comp-textarea-border-bottom-right-radius)\n var(--comp-textarea-border-bottom-left-radius);\n --comp-textarea-border-width: #{var-list(var-prefixer(textarea-border-top-width), 1px)\n var-list(var-prefixer(textarea-border-right-width), 1px)\n var-list(var-prefixer(textarea-border-bottom-width), 1px)\n var-list(var-prefixer(textarea-border-left-width), 1px)};\n --comp-textarea-icon-clearance: 34px;\n\n :host([disabled]) & {\n cursor: not-allowed;\n opacity: var-list(var-prefixer(textarea-disabled-opacity), --tct-disabled-opacity, --app-disabled-opacity, 0.4);\n }\n}\n\n.content-container {\n --comp-textarea-min-height: 46px;\n --comp-textarea-min-width: 150px;\n position: relative;\n display: inline-block;\n min-height: var-list(var-prefixer(textarea-min-height), --comp-textarea-min-height);\n min-width: var-list(var-prefixer(textarea-min-width) --comp-textarea-min-width);\n\n :host(:not([cols])) & {\n width: 100%;\n }\n}\n\ntextarea {\n --comp-textarea-padding: #{var-list(\n --tct-textarea-padding,\n unquote(\n '#{var-list(var-prefixer(textarea-vertical-padding), --tct-scale-2x, --app-scale-2x, 10px)} #{var-list(var-prefixer(textarea-horizontal-padding), --tct-scale-2x, --app-scale-2x, 10px)}'\n )\n )};\n --comp-textarea-border-color: #{var-list(\n var-prefixer(textarea-border-color),\n var-prefixer(input-border-color),\n --t-a11y-gray-color-AA,\n #949494\n )};\n --comp-textarea-background: #{var-list(\n --tct-textarea-background,\n var-prefixer(textarea-bg),\n --tct-input-background,\n var-prefixer(input-bg),\n --t-gray-14,\n #fcfcfd\n )};\n --comp-textarea-hover-ring-color: var(--tct-textarea-hover-ring-color);\n --comp-textarea-hover-ring: #{0 0 0 2px var(--t-base), 0 0 0 4px var(--comp-textarea-hover-ring-color),\n var-list(--tct-textarea-hover-box-shadow, unquote('0 0 transparent'))};\n\n resize: none;\n height: 100%;\n -webkit-appearance: none;\n appearance: none;\n display: block;\n box-sizing: border-box;\n min-height: var-list(var-prefixer(textarea-min-height), --comp-textarea-min-height);\n padding: var(--comp-textarea-padding);\n background: var(--comp-textarea-background);\n color: var-list(var-prefixer(textarea-font-color), --t-input-font-color, inherit);\n border-width: var(--comp-textarea-border-width);\n border-style: solid;\n border-color: var(--comp-textarea-border-color);\n border-radius: var(--comp-textarea-border-radius);\n box-shadow: var-list(var-prefixer(textarea-box-shadow), none);\n scrollbar-width: thin;\n scrollbar-color: var(--t-a11y-gray-color) transparent;\n --comp-textarea-tween: #{var-list(var-prefixer(textarea-tween), --tct-tween-2, --app-tween-2, unquote('0.4s ease'))};\n transition:\n border-width var(--comp-textarea-tween),\n border-color var(--comp-textarea-tween),\n box-shadow var(--comp-textarea-tween);\n\n &::-webkit-scrollbar {\n width: var(--app-scale-1x);\n height: var(--app-scale-1x);\n margin: var(--app-scale-1x);\n }\n\n &::-webkit-scrollbar-thumb {\n background: var(--t-a11y-gray-color);\n border-radius: 2px;\n }\n\n &::-webkit-scrollbar-track {\n background: transparent;\n }\n\n &:not([cols]) {\n width: 100%;\n }\n\n .has-error & {\n padding-right: var(--comp-textarea-icon-clearance);\n border-color: var-list(var-prefixer(textarea-error-border-color), --const-stoplight-alert, #d20a0a);\n background: var-list(--tct-textarea-error-background, --comp-textarea-background);\n }\n\n &:hover {\n border-color: var-list(--tct-textarea-hover-border-color, --comp-textarea-border-color);\n background: var-list(--tct-textarea-hover-background, --comp-textarea-background);\n box-shadow: var-list(--tct-textarea-hover-box-shadow, --comp-textarea-hover-ring);\n\n .has-error & {\n border-color: var-list(\n --tct-textarea-error-hover-border-color,\n var-prefixer(textarea-error-border-color),\n --const-stoplight-alert,\n #d20a0a\n );\n background: var-list(\n --tct-textarea-error-hover-background,\n --tct-textarea-error-background,\n --comp-textarea-background\n );\n box-shadow: var-list(\n --tct-textarea-error-hover-box-shadow,\n --tct-textarea-error-box-shadow,\n --tct-textarea-hover-box-shadow,\n --comp-textarea-hover-ring\n );\n }\n }\n\n &:focus {\n border-color: var-list(--tct-textarea-focus-border-color, --comp-textarea-border-color);\n background: var-list(--tct-textarea-focus-background, --comp-textarea-background);\n box-shadow: var-list(--tct-textarea-focus-box-shadow, --const-double-focus-ring);\n\n .has-error & {\n border-color: var-list(\n --tct-textarea-error-focus-border-color,\n --tct-textarea-error-border-color,\n --const-stoplight-alert,\n #d20a0a\n );\n background: var-list(\n --tct-textarea-error-focus-background,\n --tct-textarea-error-background,\n --tct-textarea-focus-background,\n --comp-textarea-background\n );\n box-shadow: var-list(\n --tct-textarea-error-focus-box-shadow,\n --tct-textarea-error-box-shadow,\n --tct-textarea-focus-box-shadow,\n --const-double-focus-ring\n );\n }\n }\n\n &::placeholder {\n color: var-list(\n var-prefixer(textarea-placeholder-font-color),\n --t-input-placeholder-font-color,\n --tct-gray-7,\n --app-gray-7,\n --tct-gray-d1,\n --app-gray-d1,\n #666666\n );\n }\n\n &[disabled] {\n cursor: not-allowed;\n }\n\n &.resize-vertical-auto {\n overflow: hidden;\n }\n\n .has-error & {\n padding-right: var(--comp-textarea-icon-clearance);\n\n &:not(:focus) {\n border-color: var-list(var-prefixer(textarea-error-border-color), --const-stoplight-alert, #d20a0a);\n }\n }\n}\n\nq2-icon {\n margin-top: calc(#{var-list(var-prefixer(textarea-border-top-width), 1px)} / 2);\n margin-bottom: calc(#{var-list(var-prefixer(textarea-border-bottom-width), 1px)} / 2);\n pointer-events: none;\n position: absolute;\n top: var-list(var-prefixer(textarea-vertical-padding), --tct-scale-2x, --app-scale-2x, 10px);\n color: var-list(var-prefixer(textarea-icon-stroke-primary), --app-gray-9, --tct-gray, --app-gray, #999999);\n right: 0;\n margin-right: var-list(--tct-scale-2x, --app-scale-2x, 10px);\n --tct-icon-stroke-primary: #{var-list(\n var-prefixer(textarea-icon-stroke-primary),\n var-prefixer(gray-9),\n --tct-gray,\n --app-gray,\n #999999\n )};\n --t-icon-stroke-primary: #{var-list(\n var-prefixer(textarea-icon-stroke-primary),\n var-prefixer(gray-9),\n --tct-gray,\n --app-gray,\n #999999\n )};\n}\n\n.icon-error {\n color: var-list(--tct-stoplight-error, --const-stoplight-alert, #d20a0a);\n --tct-icon-stroke-primary: #{var-list(--tct-stoplight-error, --const-stoplight-alert, #d20a0a)};\n --t-icon-stroke-primary: #{var-list(--tct-stoplight-error, --const-stoplight-alert, #d20a0a)};\n}\n\n.messages-container {\n height: 0px;\n overflow: hidden;\n background: var-list(\n --tct-message-background,\n --tct-message-bg,\n var-prefixer(gray-14),\n --tct-gray-l3,\n --app-gray-l3,\n #f2f2f2\n );\n box-shadow: var-list(\n var-prefixer(textarea-message-box-shadow),\n --tct-box-shadow-1,\n --app-shadow-1,\n unquote(\"0px 0px 2px rgba(0, 0, 0, 0.12), 0px 2px 4px rgba(0, 0, 0, 0.14)\")\n );\n transition: height\n var-list(var-prefixer(textarea-messages-tween), --tct-tween-1, --app-tween-1, unquote('0.2s ease'));\n margin-top: 2px;\n z-index: 1;\n position: absolute;\n width: 100%;\n color: var-list(var-prefixer(textarea-messages-font-color), inherit);\n}\n\n.max-length {\n color: var-list(var-prefixer(textarea-max-length-color), --t-textA, rgba(77, 77, 77, 0.77));\n font-size: var-list(\n var-prefixer(textarea-max-length-font-size),\n --tct-font-size-small,\n --app-font-size-small,\n 12px\n );\n position: absolute;\n right: 0;\n}\n\n.btn-resize {\n --tct-textarea-resize-icon-padding: calc(\n calc(\n #{var-list(var-prefixer(textarea-resize-btn-width), --tct-btn-icon-width, 44px)} - #{var-list(\n var-prefixer(textarea-resize-icon-size),\n 12px\n )}\n ) / 2\n );\n width: var-list(var-prefixer(textarea-resize-btn-width), --tct-btn-icon-width, 44px);\n height: var-list(var-prefixer(textarea-resize-btn-height), --tct-btn-icon-height, 44px);\n background: var-list(var-prefixer(textarea-resize-btn-background), transparent);\n stroke: var-list(var-prefixer(textarea-resize-color), --t-textA, rgba(77, 77, 77, 0.77));\n border: 0;\n position: absolute;\n right: calc(#{var-list(var-prefixer(textarea-resize-icon-padding))} * -1 + 2px);\n bottom: calc(#{var-list(var-prefixer(textarea-resize-icon-padding))} * -1 + 2px);\n display: block;\n padding: var-list(var-prefixer(textarea-resize-icon-padding));\n font-size: 0;\n\n &:focus {\n outline: none;\n box-shadow: none;\n }\n\n :host([resize='both']) & {\n cursor: se-resize;\n }\n\n :host([resize='vertical']) &,\n :host([resize='vertical-auto']) & {\n cursor: s-resize;\n }\n\n :host([resize='horizontal']) & {\n cursor: e-resize;\n }\n}\n","import { Component, EventEmitter, Prop, Event, Element, State, h, Watch, Listen, Method } from '@stencil/core';\nimport { IDict } from 'src/util';\nimport { createGuid, isEventFromElement, labelDOM, loc, messagesDOM, overrideFocus, setMessageHeight } from 'src/utils';\n\n@Component({ tag: 'q2-textarea', shadow: true, styleUrl: 'q2-textarea.scss' })\nexport class Q2Textarea {\n // #region Own Properties\n\n contentContainer?: HTMLDivElement;\n guid = createGuid();\n scheduledAfterRender: (() => void)[] = [];\n textareaField?: HTMLTextAreaElement;\n valueOnFocus: string;\n\n // #endregion\n // #region Host HTML Element\n\n @Element()\n hostElement: HTMLElement;\n\n // #endregion\n // #region State Properties\n\n @State()\n downParams: IDict<number>;\n\n @State()\n hasFocus: boolean;\n\n // #endregion\n // #region Public Property API\n\n /**\n * Defines the number of columns displayed in the field.\n * If not set, the field will be full-width and respond to the window size.\n */\n @Prop({ reflect: true })\n cols: number;\n\n /** Indicates the field cannot be focused or interacted with. */\n @Prop({ reflect: true })\n disabled: boolean;\n\n /**\n * Each item in the `errors` array will appear below the input field when the field is focused.\n * @localizable\n */\n @Prop()\n errors: string[];\n\n /**\n * Hide's the field's `<label>` element from view.\n * @warning\n * Only use when a visible label is impractical.\n */\n @Prop({ reflect: true })\n hideLabel: boolean;\n\n /**\n * When `true` and the input field has an active validation error, the field shows the error state without displaying associated error messages below the field (from the errors array above).\n * Primarily used for dropdown selects and date pickers whose controls appear below the input field (where the error messages, if displayed, would also appear).\n */\n @Prop({ reflect: true })\n hideMessages: boolean;\n\n /**\n * Each item in the `hints` array will appear below the input field when the field is focused.\n * @info\n * The `errors` array takes precedence over the `hints` array. If an input field has both hints and errors, only the errors will display.\n * Once all errors are resolved, the hints display the next time the field is focused.\n * @localizable\n */\n @Prop()\n hints: string[];\n\n /**\n * The label that appears above the field. This is announced by screen readers when the field is focused.\n * @localizable\n */\n @Prop({ reflect: true })\n label: string;\n\n /**\n * Defines the maximum allowed input length in characters. Formatting characters (e.g. `.`, `-`, etc) are included in the `maxlength` comparison.\n * Make sure you account for them when setting the `maxlength` value.\n * @info\n * Please set the `rows` attribute in correlation with `maxlength` to show as much text as possible in the field viewport.\n */\n @Prop({ reflect: true, mutable: true })\n maxlength: number;\n\n /** Appends \"(optional)\" to the field label, and sets `aria-required` on the nested input tag to `false`. */\n @Prop({ reflect: true })\n optional: boolean;\n\n /**\n * Text that appears within the field when it is blurred and empty.\n * Placeholder text disappears when the user focuses on the field and provides input.\n * @info\n * Primarily used for rare cases in which a visible form label is not expected (e.g., search fields).\n * @localizable\n */\n @Prop({ reflect: true })\n placeholder: string;\n\n /**\n * Appends \"(read only)\" to the field label, and field becomes unusable, but remains focusable.\n * Takes priority over `optional` if both are `true`.\n */\n @Prop({ reflect: true })\n readonly: boolean;\n\n /** Indicates how the field is resizable. */\n @Prop({ reflect: true })\n resize: 'none' | 'vertical' | 'horizontal' | 'both' | 'vertical-auto' = 'vertical';\n\n /** Defines the number of rows displayed in the field. */\n @Prop({ reflect: true })\n rows: number;\n\n /** Determines whether the field is subject to spell-checking by the underlying browser or OS. */\n @Prop({ reflect: true })\n spellcheck: boolean;\n\n /** The value of the field. */\n @Prop({ mutable: true })\n value: string;\n\n // #endregion\n // #region Events\n\n /**\n * Emitted when the field loses focus after the value has been changed.\n * @legacyEvent\n */\n @Event()\n change: EventEmitter<{ value: string }>;\n\n /**\n * Emitted when the field value is updated.\n * @legacyEvent\n */\n @Event()\n input: EventEmitter<{ value: string }>;\n\n // #endregion\n // #region Component Lifecycle Events\n\n componentWillLoad() {\n if (isNaN(this.maxlength)) {\n this.maxlength = undefined;\n }\n }\n\n componentDidLoad() {\n overrideFocus(this.hostElement);\n }\n\n componentDidRender() {\n this.scheduledAfterRender.push(this.checkRows, this.checkCols, this.increaseHeightIfOverflowing);\n this.scheduledAfterRender.forEach(fn => fn());\n this.scheduledAfterRender = [];\n }\n\n // #endregion\n // #region Listeners\n\n @Listen('change')\n onHostElementChange(event: CustomEvent) {\n if (event.target === this.hostElement && !this.hostElement.onchange) {\n this.value = event.detail.value;\n }\n }\n\n @Listen('focus')\n onHostElementFocus(event: Event) {\n if (!isEventFromElement(event, this.hostElement)) return;\n this.textareaField.focus();\n }\n\n @Listen('input')\n onHostElementInput(event: CustomEvent) {\n if (event.target === this.hostElement && !this.hostElement.oninput) {\n this.value = event.detail.value;\n }\n }\n\n // #endregion\n // #region Public Methods API\n\n /**\n * Emulates focusing the `<textarea>`, centering the provided value, and emitting an `input` event.\n *\n * This method leaves the focus on the `<textarea>` and as a result does not trigger the `change` event. If you want\n * to trigger the `change` event, move the focus to another element after calling this method.\n *\n * @testOnly\n */\n @Method()\n setValue(value: string) {\n const { textareaField } = this;\n textareaField.focus();\n textareaField.value = value;\n textareaField.dispatchEvent(new InputEvent('input'));\n }\n\n // #endregion\n // #region Watchers\n\n @Watch('cols')\n colsObserver() {\n this.contentContainer.style.width = null;\n }\n\n @Watch('errors')\n errorsObserver() {\n this.hasFocus && this.scheduledAfterRender.push(() => setMessageHeight(this));\n }\n\n @Watch('hints')\n hintsObserver() {\n this.hasFocus && this.scheduledAfterRender.push(() => setMessageHeight(this));\n }\n\n @Watch('rows')\n rowsObserver() {\n this.contentContainer.style.height = null;\n }\n\n @Watch('value')\n valueObserver() {\n const { maxlength, value = '' } = this;\n if (!maxlength) return;\n\n const truncatedValue = value.substr(0, maxlength);\n if (truncatedValue === value) return;\n\n this.change.emit({ value: truncatedValue });\n }\n\n // #endregion\n // #region Local Methods\n\n get hasError() {\n return Array.isArray(this.errors) && this.errors.length > 0;\n }\n\n get inputDescribedBy() {\n return this.showMessages ? `${this.inputId}-description` : undefined;\n }\n\n get inputId() {\n return `input-guid-${this.guid}`;\n }\n\n get messages(): string[] {\n return (\n (this.errors && this.errors.length > 0 && this.errors) ||\n (this.hints && this.hints.length > 0 && this.hints) ||\n []\n );\n }\n\n get showMessages() {\n return this.messages.length > 0 && !this.hideMessages;\n }\n\n get showResize() {\n const { resize } = this;\n return resize && resize !== 'none';\n }\n\n get wrapperClasses() {\n const errorClass = this.hasError ? ' has-error' : '';\n const valueClass = !!this.value ? ' has-value' : '';\n const focusClass = this.hasFocus ? ' has-focus' : '';\n\n return `field-container${errorClass}${valueClass}${focusClass}`;\n }\n\n checkCols = () => {\n const { contentContainer, cols, textareaField, resize } = this;\n\n if (!cols || ['none', 'vertical'].includes(resize)) return;\n contentContainer.style.width = `${contentContainer.offsetWidth}px`;\n textareaField.removeAttribute('cols');\n };\n\n checkRows = () => {\n const { contentContainer, rows, textareaField, resize } = this;\n\n if (!rows || ['none', 'horizontal'].includes(resize)) return;\n contentContainer.style.height = `${contentContainer.offsetHeight}px`;\n textareaField.removeAttribute('rows');\n };\n\n getBorderOffset = () => {\n const computedStyle = window.getComputedStyle(this.textareaField);\n\n return parseInt(computedStyle.borderTopWidth, 10) + parseInt(computedStyle.borderBottomWidth, 10);\n };\n\n increaseHeightIfOverflowing = () => {\n const { scrollHeight } = this.textareaField;\n if (this.resize === 'vertical-auto' && this.isOverflowingVertically()) {\n // need to account for border width because scrollHeight does not include it\n const newHeight = scrollHeight + this.getBorderOffset();\n this.contentContainer.style.height = `${newHeight}px`;\n }\n };\n\n inputDOM() {\n const textareaClasses = this.resize === 'vertical-auto' ? 'resize-vertical-auto' : '';\n\n return (\n <div class=\"input-container\">\n <textarea\n id={this.inputId}\n class={textareaClasses}\n placeholder={(this.placeholder && loc(this.placeholder)) || undefined}\n test-id=\"inputField\"\n maxLength={this.maxlength}\n aria-describedby={this.inputDescribedBy}\n aria-invalid={`${this.hasError}`}\n aria-required={`${!this.optional}`}\n aria-label={this.hideLabel && this.label}\n spellcheck={this.spellcheck}\n rows={this.rows || 3}\n cols={this.cols}\n value={this.value}\n ref={el => (this.textareaField = el)}\n readonly={!!this.readonly}\n disabled={!!this.disabled}\n maxlength={this.maxlength}\n onInput={this.onTextareaInput}\n onChange={this.onTextareaChange}\n onFocus={this.onTextareaFocus}\n onBlur={this.onTextareaBlur}\n ></textarea>\n {this.hasError ? (\n <q2-icon\n type=\"error\"\n class=\"icon-error\"\n />\n ) : (\n ''\n )}\n {this.showResize && (\n <button\n onMouseDown={this.onMouseDown}\n onTouchStart={this.onTouchStart}\n class=\"btn-resize\"\n aria-label={loc('tecton.element.input.resize')}\n tabIndex={-1}\n >\n <svg\n aria-hidden=\"true\"\n viewBox=\"0 0 12 12\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M8.5 11.5l3-3m-7 3l7-7m-11 7l11-11\"\n fill=\"none\"\n stroke-stroke-linecap=\"square\"\n />\n </svg>\n </button>\n )}\n </div>\n );\n }\n\n isOverflowingVertically = () => {\n const { clientHeight, scrollHeight } = this.textareaField;\n\n return scrollHeight > clientHeight;\n };\n\n maxLengthDOM() {\n return (\n <div\n class=\"max-length\"\n aria-hidden=\"true\"\n >\n {this.value?.length || 0}/{this.maxlength}\n </div>\n );\n }\n\n onMouseDown = (event: MouseEvent) => {\n const { contentContainer } = this;\n this.downParams = {\n width: contentContainer.offsetWidth,\n height: contentContainer.offsetHeight,\n x: event.clientX,\n y: event.clientY,\n };\n document.addEventListener('mousemove', this.onMouseMove);\n document.addEventListener('mouseup', this.onMouseUp);\n };\n\n onMouseMove = (event: MouseEvent) => {\n this.setHeight(event);\n this.setWidth(event);\n };\n\n onMouseUp = () => {\n document.removeEventListener('mousemove', this.onMouseMove);\n this.downParams = null;\n };\n\n onTextareaBlur = () => {\n const {\n valueOnFocus,\n textareaField: { value },\n } = this;\n this.hasFocus = false;\n setMessageHeight(this);\n if (valueOnFocus !== value) this.change.emit({ value });\n };\n\n onTextareaChange = (event: InputEvent) => {\n event.stopPropagation();\n const value = (event.target as HTMLTextAreaElement).value;\n\n this.change.emit({ value });\n };\n\n onTextareaFocus = () => {\n this.hasFocus = true;\n this.valueOnFocus = this.value;\n setMessageHeight(this);\n };\n\n onTextareaInput = (event: InputEvent) => {\n event.stopPropagation();\n const value = (event.target as HTMLTextAreaElement).value;\n this.increaseHeightIfOverflowing();\n\n this.input.emit({ value });\n };\n\n onTouchMove = (event: TouchEvent) => {\n this.setHeight(event);\n this.setWidth(event);\n };\n\n onTouchStart = (event: TouchEvent) => {\n if (event.touches.length !== 1) return;\n\n event.preventDefault();\n\n const { contentContainer } = this;\n const firstTouch = event.touches[0];\n\n this.downParams = {\n width: contentContainer.offsetWidth,\n height: contentContainer.offsetHeight,\n x: firstTouch.pageX,\n y: firstTouch.pageY,\n };\n\n document.addEventListener('touchmove', this.onTouchMove);\n document.addEventListener('touchend', this.onTouchMove);\n };\n\n setHeight(event: MouseEvent | TouchEvent) {\n const {\n contentContainer,\n resize,\n downParams: { height, y },\n } = this;\n const resizeY = ['both', 'vertical', 'vertical-auto'].includes(resize);\n\n if (!resizeY) return;\n\n const eventY = event instanceof MouseEvent ? event.clientY : event.touches[0]?.pageY ?? 0;\n const newHeight = height - (y - eventY);\n // If 'vertical-auto', change height if the new height is greater\n // than the current height or the textarea is not overflowing.\n // Otherwise, change height regardless of the new height.\n if (\n resize !== 'vertical-auto' ||\n newHeight > height ||\n (resize === 'vertical-auto' && !this.isOverflowingVertically())\n ) {\n contentContainer.style.height = `${newHeight}px`;\n }\n }\n\n setWidth(event: MouseEvent | TouchEvent) {\n const {\n contentContainer,\n resize,\n downParams: { width, x },\n } = this;\n\n const resizeX = ['both', 'horizontal'].includes(resize);\n\n if (!resizeX) return;\n const eventX = event instanceof MouseEvent ? event.clientX : event.touches[0]?.pageX ?? 0;\n const newWidth = width - (x - eventX);\n contentContainer.style.width = `${newWidth}px`;\n }\n\n // #endregion\n // #region Render Methods\n\n render() {\n return (\n <div class={this.wrapperClasses}>\n {labelDOM(this)}\n <div\n class=\"content-container\"\n ref={el => (this.contentContainer = el)}\n >\n {this.inputDOM()}\n {this.maxlength ? this.maxLengthDOM() : ''}\n {messagesDOM(this)}\n </div>\n </div>\n );\n }\n\n // #endregion\n}\n"],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import{h as e}from"./p-a5f18e27.js";var t=typeof globalThis!=="undefined"?globalThis:typeof window!=="undefined"?window:typeof global!=="undefined"?global:typeof self!=="undefined"?self:{};var n={exports:{}};
2
- /*! @license DOMPurify 3.2.3 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.2.3/LICENSE */(function(e,n){(function(t,n){e.exports=n()})(t,(function(){const{entries:e,setPrototypeOf:t,isFrozen:n,getPrototypeOf:i,getOwnPropertyDescriptor:o}=Object;let{freeze:r,seal:a,create:l}=Object;let{apply:s,construct:c}=typeof Reflect!=="undefined"&&Reflect;if(!r){r=function e(t){return t}}if(!a){a=function e(t){return t}}if(!s){s=function e(t,n,i){return t.apply(n,i)}}if(!c){c=function e(t,n){return new t(...n)}}const f=T(Array.prototype.forEach);const u=T(Array.prototype.pop);const d=T(Array.prototype.push);const m=T(String.prototype.toLowerCase);const p=T(String.prototype.toString);const h=T(String.prototype.match);const g=T(String.prototype.replace);const y=T(String.prototype.indexOf);const b=T(String.prototype.trim);const w=T(Object.prototype.hasOwnProperty);const v=T(RegExp.prototype.test);const x=k(TypeError);function T(e){return function(t){for(var n=arguments.length,i=new Array(n>1?n-1:0),o=1;o<n;o++){i[o-1]=arguments[o]}return s(e,t,i)}}function k(e){return function(){for(var t=arguments.length,n=new Array(t),i=0;i<t;i++){n[i]=arguments[i]}return c(e,n)}}function A(e,i){let o=arguments.length>2&&arguments[2]!==undefined?arguments[2]:m;if(t){t(e,null)}let r=i.length;while(r--){let t=i[r];if(typeof t==="string"){const e=o(t);if(e!==t){if(!n(i)){i[r]=e}t=e}}e[t]=true}return e}function E(e){for(let t=0;t<e.length;t++){const n=w(e,t);if(!n){e[t]=null}}return e}function S(t){const n=l(null);for(const[i,o]of e(t)){const e=w(t,i);if(e){if(Array.isArray(o)){n[i]=E(o)}else if(o&&typeof o==="object"&&o.constructor===Object){n[i]=S(o)}else{n[i]=o}}}return n}function R(e,t){while(e!==null){const n=o(e,t);if(n){if(n.get){return T(n.get)}if(typeof n.value==="function"){return T(n.value)}}e=i(e)}function n(){return null}return n}const _=r(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","section","select","shadow","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]);const L=r(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","filter","font","g","glyph","glyphref","hkern","image","line","lineargradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]);const O=r(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]);const D=r(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]);const M=r(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]);const I=r(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]);const z=r(["#text"]);const F=r(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","face","for","headers","height","hidden","high","href","hreflang","id","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns","slot"]);const P=r(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]);const N=r(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]);const C=r(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]);const j=a(/\{\{[\w\W]*|[\w\W]*\}\}/gm);const $=a(/<%[\w\W]*|[\w\W]*%>/gm);const q=a(/\$\{[\w\W]*}/gm);const B=a(/^data-[\-\w.\u00B7-\uFFFF]+$/);const U=a(/^aria-[\-\w]+$/);const W=a(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i);const H=a(/^(?:\w+script|data):/i);const G=a(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g);const Y=a(/^html$/i);const X=a(/^[a-z][.\w]*(-[.\w]+)+$/i);var K=Object.freeze({__proto__:null,ARIA_ATTR:U,ATTR_WHITESPACE:G,CUSTOM_ELEMENT:X,DATA_ATTR:B,DOCTYPE_NAME:Y,ERB_EXPR:$,IS_ALLOWED_URI:W,IS_SCRIPT_OR_DATA:H,MUSTACHE_EXPR:j,TMPLIT_EXPR:q});const V={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12};const J=function e(){return typeof window==="undefined"?null:window};const Q=function e(t,n){if(typeof t!=="object"||typeof t.createPolicy!=="function"){return null}let i=null;const o="data-tt-policy-suffix";if(n&&n.hasAttribute(o)){i=n.getAttribute(o)}const r="dompurify"+(i?"#"+i:"");try{return t.createPolicy(r,{createHTML(e){return e},createScriptURL(e){return e}})}catch(e){console.warn("TrustedTypes policy "+r+" could not be created.");return null}};const Z=function e(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function ee(){let t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:J();const n=e=>ee(e);n.version="3.2.3";n.removed=[];if(!t||!t.document||t.document.nodeType!==V.document){n.isSupported=false;return n}let{document:i}=t;const o=i;const a=o.currentScript;const{DocumentFragment:s,HTMLTemplateElement:c,Node:T,Element:k,NodeFilter:E,NamedNodeMap:j=t.NamedNodeMap||t.MozNamedAttrMap,HTMLFormElement:$,DOMParser:q,trustedTypes:B}=t;const U=k.prototype;const H=R(U,"cloneNode");const G=R(U,"remove");const X=R(U,"nextSibling");const te=R(U,"childNodes");const ne=R(U,"parentNode");if(typeof c==="function"){const e=i.createElement("template");if(e.content&&e.content.ownerDocument){i=e.content.ownerDocument}}let ie;let oe="";const{implementation:re,createNodeIterator:ae,createDocumentFragment:le,getElementsByTagName:se}=i;const{importNode:ce}=o;let fe=Z();n.isSupported=typeof e==="function"&&typeof ne==="function"&&re&&re.createHTMLDocument!==undefined;const{MUSTACHE_EXPR:ue,ERB_EXPR:de,TMPLIT_EXPR:me,DATA_ATTR:pe,ARIA_ATTR:he,IS_SCRIPT_OR_DATA:ge,ATTR_WHITESPACE:ye,CUSTOM_ELEMENT:be}=K;let{IS_ALLOWED_URI:we}=K;let ve=null;const xe=A({},[..._,...L,...O,...M,...z]);let Te=null;const ke=A({},[...F,...P,...N,...C]);let Ae=Object.seal(l(null,{tagNameCheck:{writable:true,configurable:false,enumerable:true,value:null},attributeNameCheck:{writable:true,configurable:false,enumerable:true,value:null},allowCustomizedBuiltInElements:{writable:true,configurable:false,enumerable:true,value:false}}));let Ee=null;let Se=null;let Re=true;let _e=true;let Le=false;let Oe=true;let De=false;let Me=true;let Ie=false;let ze=false;let Fe=false;let Pe=false;let Ne=false;let Ce=false;let je=true;let $e=false;const qe="user-content-";let Be=true;let Ue=false;let We={};let He=null;const Ge=A({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let Ye=null;const Xe=A({},["audio","video","img","source","image","track"]);let Ke=null;const Ve=A({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]);const Je="http://www.w3.org/1998/Math/MathML";const Qe="http://www.w3.org/2000/svg";const Ze="http://www.w3.org/1999/xhtml";let et=Ze;let tt=false;let nt=null;const it=A({},[Je,Qe,Ze],p);let ot=A({},["mi","mo","mn","ms","mtext"]);let rt=A({},["annotation-xml"]);const at=A({},["title","style","font","a","script"]);let lt=null;const st=["application/xhtml+xml","text/html"];const ct="text/html";let ft=null;let ut=null;const dt=i.createElement("form");const mt=function e(t){return t instanceof RegExp||t instanceof Function};const pt=function e(){let t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};if(ut&&ut===t){return}if(!t||typeof t!=="object"){t={}}t=S(t);lt=st.indexOf(t.PARSER_MEDIA_TYPE)===-1?ct:t.PARSER_MEDIA_TYPE;ft=lt==="application/xhtml+xml"?p:m;ve=w(t,"ALLOWED_TAGS")?A({},t.ALLOWED_TAGS,ft):xe;Te=w(t,"ALLOWED_ATTR")?A({},t.ALLOWED_ATTR,ft):ke;nt=w(t,"ALLOWED_NAMESPACES")?A({},t.ALLOWED_NAMESPACES,p):it;Ke=w(t,"ADD_URI_SAFE_ATTR")?A(S(Ve),t.ADD_URI_SAFE_ATTR,ft):Ve;Ye=w(t,"ADD_DATA_URI_TAGS")?A(S(Xe),t.ADD_DATA_URI_TAGS,ft):Xe;He=w(t,"FORBID_CONTENTS")?A({},t.FORBID_CONTENTS,ft):Ge;Ee=w(t,"FORBID_TAGS")?A({},t.FORBID_TAGS,ft):{};Se=w(t,"FORBID_ATTR")?A({},t.FORBID_ATTR,ft):{};We=w(t,"USE_PROFILES")?t.USE_PROFILES:false;Re=t.ALLOW_ARIA_ATTR!==false;_e=t.ALLOW_DATA_ATTR!==false;Le=t.ALLOW_UNKNOWN_PROTOCOLS||false;Oe=t.ALLOW_SELF_CLOSE_IN_ATTR!==false;De=t.SAFE_FOR_TEMPLATES||false;Me=t.SAFE_FOR_XML!==false;Ie=t.WHOLE_DOCUMENT||false;Pe=t.RETURN_DOM||false;Ne=t.RETURN_DOM_FRAGMENT||false;Ce=t.RETURN_TRUSTED_TYPE||false;Fe=t.FORCE_BODY||false;je=t.SANITIZE_DOM!==false;$e=t.SANITIZE_NAMED_PROPS||false;Be=t.KEEP_CONTENT!==false;Ue=t.IN_PLACE||false;we=t.ALLOWED_URI_REGEXP||W;et=t.NAMESPACE||Ze;ot=t.MATHML_TEXT_INTEGRATION_POINTS||ot;rt=t.HTML_INTEGRATION_POINTS||rt;Ae=t.CUSTOM_ELEMENT_HANDLING||{};if(t.CUSTOM_ELEMENT_HANDLING&&mt(t.CUSTOM_ELEMENT_HANDLING.tagNameCheck)){Ae.tagNameCheck=t.CUSTOM_ELEMENT_HANDLING.tagNameCheck}if(t.CUSTOM_ELEMENT_HANDLING&&mt(t.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)){Ae.attributeNameCheck=t.CUSTOM_ELEMENT_HANDLING.attributeNameCheck}if(t.CUSTOM_ELEMENT_HANDLING&&typeof t.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements==="boolean"){Ae.allowCustomizedBuiltInElements=t.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements}if(De){_e=false}if(Ne){Pe=true}if(We){ve=A({},z);Te=[];if(We.html===true){A(ve,_);A(Te,F)}if(We.svg===true){A(ve,L);A(Te,P);A(Te,C)}if(We.svgFilters===true){A(ve,O);A(Te,P);A(Te,C)}if(We.mathMl===true){A(ve,M);A(Te,N);A(Te,C)}}if(t.ADD_TAGS){if(ve===xe){ve=S(ve)}A(ve,t.ADD_TAGS,ft)}if(t.ADD_ATTR){if(Te===ke){Te=S(Te)}A(Te,t.ADD_ATTR,ft)}if(t.ADD_URI_SAFE_ATTR){A(Ke,t.ADD_URI_SAFE_ATTR,ft)}if(t.FORBID_CONTENTS){if(He===Ge){He=S(He)}A(He,t.FORBID_CONTENTS,ft)}if(Be){ve["#text"]=true}if(Ie){A(ve,["html","head","body"])}if(ve.table){A(ve,["tbody"]);delete Ee.tbody}if(t.TRUSTED_TYPES_POLICY){if(typeof t.TRUSTED_TYPES_POLICY.createHTML!=="function"){throw x('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.')}if(typeof t.TRUSTED_TYPES_POLICY.createScriptURL!=="function"){throw x('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.')}ie=t.TRUSTED_TYPES_POLICY;oe=ie.createHTML("")}else{if(ie===undefined){ie=Q(B,a)}if(ie!==null&&typeof oe==="string"){oe=ie.createHTML("")}}if(r){r(t)}ut=t};const ht=A({},[...L,...O,...D]);const gt=A({},[...M,...I]);const yt=function e(t){let n=ne(t);if(!n||!n.tagName){n={namespaceURI:et,tagName:"template"}}const i=m(t.tagName);const o=m(n.tagName);if(!nt[t.namespaceURI]){return false}if(t.namespaceURI===Qe){if(n.namespaceURI===Ze){return i==="svg"}if(n.namespaceURI===Je){return i==="svg"&&(o==="annotation-xml"||ot[o])}return Boolean(ht[i])}if(t.namespaceURI===Je){if(n.namespaceURI===Ze){return i==="math"}if(n.namespaceURI===Qe){return i==="math"&&rt[o]}return Boolean(gt[i])}if(t.namespaceURI===Ze){if(n.namespaceURI===Qe&&!rt[o]){return false}if(n.namespaceURI===Je&&!ot[o]){return false}return!gt[i]&&(at[i]||!ht[i])}if(lt==="application/xhtml+xml"&&nt[t.namespaceURI]){return true}return false};const bt=function e(t){d(n.removed,{element:t});try{ne(t).removeChild(t)}catch(e){G(t)}};const wt=function e(t,i){try{d(n.removed,{attribute:i.getAttributeNode(t),from:i})}catch(e){d(n.removed,{attribute:null,from:i})}i.removeAttribute(t);if(t==="is"){if(Pe||Ne){try{bt(i)}catch(e){}}else{try{i.setAttribute(t,"")}catch(e){}}}};const vt=function e(t){let n=null;let o=null;if(Fe){t="<remove></remove>"+t}else{const e=h(t,/^[\r\n\t ]+/);o=e&&e[0]}if(lt==="application/xhtml+xml"&&et===Ze){t='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+t+"</body></html>"}const r=ie?ie.createHTML(t):t;if(et===Ze){try{n=(new q).parseFromString(r,lt)}catch(e){}}if(!n||!n.documentElement){n=re.createDocument(et,"template",null);try{n.documentElement.innerHTML=tt?oe:r}catch(e){}}const a=n.body||n.documentElement;if(t&&o){a.insertBefore(i.createTextNode(o),a.childNodes[0]||null)}if(et===Ze){return se.call(n,Ie?"html":"body")[0]}return Ie?n.documentElement:a};const xt=function e(t){return ae.call(t.ownerDocument||t,t,E.SHOW_ELEMENT|E.SHOW_COMMENT|E.SHOW_TEXT|E.SHOW_PROCESSING_INSTRUCTION|E.SHOW_CDATA_SECTION,null)};const Tt=function e(t){return t instanceof $&&(typeof t.nodeName!=="string"||typeof t.textContent!=="string"||typeof t.removeChild!=="function"||!(t.attributes instanceof j)||typeof t.removeAttribute!=="function"||typeof t.setAttribute!=="function"||typeof t.namespaceURI!=="string"||typeof t.insertBefore!=="function"||typeof t.hasChildNodes!=="function")};const kt=function e(t){return typeof T==="function"&&t instanceof T};function At(e,t,i){f(e,(e=>{e.call(n,t,i,ut)}))}const Et=function e(t){let i=null;At(fe.beforeSanitizeElements,t,null);if(Tt(t)){bt(t);return true}const o=ft(t.nodeName);At(fe.uponSanitizeElement,t,{tagName:o,allowedTags:ve});if(t.hasChildNodes()&&!kt(t.firstElementChild)&&v(/<[/\w]/g,t.innerHTML)&&v(/<[/\w]/g,t.textContent)){bt(t);return true}if(t.nodeType===V.progressingInstruction){bt(t);return true}if(Me&&t.nodeType===V.comment&&v(/<[/\w]/g,t.data)){bt(t);return true}if(!ve[o]||Ee[o]){if(!Ee[o]&&Rt(o)){if(Ae.tagNameCheck instanceof RegExp&&v(Ae.tagNameCheck,o)){return false}if(Ae.tagNameCheck instanceof Function&&Ae.tagNameCheck(o)){return false}}if(Be&&!He[o]){const e=ne(t)||t.parentNode;const n=te(t)||t.childNodes;if(n&&e){const i=n.length;for(let o=i-1;o>=0;--o){const i=H(n[o],true);i.__removalCount=(t.__removalCount||0)+1;e.insertBefore(i,X(t))}}}bt(t);return true}if(t instanceof k&&!yt(t)){bt(t);return true}if((o==="noscript"||o==="noembed"||o==="noframes")&&v(/<\/no(script|embed|frames)/i,t.innerHTML)){bt(t);return true}if(De&&t.nodeType===V.text){i=t.textContent;f([ue,de,me],(e=>{i=g(i,e," ")}));if(t.textContent!==i){d(n.removed,{element:t.cloneNode()});t.textContent=i}}At(fe.afterSanitizeElements,t,null);return false};const St=function e(t,n,o){if(je&&(n==="id"||n==="name")&&(o in i||o in dt)){return false}if(_e&&!Se[n]&&v(pe,n));else if(Re&&v(he,n));else if(!Te[n]||Se[n]){if(Rt(t)&&(Ae.tagNameCheck instanceof RegExp&&v(Ae.tagNameCheck,t)||Ae.tagNameCheck instanceof Function&&Ae.tagNameCheck(t))&&(Ae.attributeNameCheck instanceof RegExp&&v(Ae.attributeNameCheck,n)||Ae.attributeNameCheck instanceof Function&&Ae.attributeNameCheck(n))||n==="is"&&Ae.allowCustomizedBuiltInElements&&(Ae.tagNameCheck instanceof RegExp&&v(Ae.tagNameCheck,o)||Ae.tagNameCheck instanceof Function&&Ae.tagNameCheck(o)));else{return false}}else if(Ke[n]);else if(v(we,g(o,ye,"")));else if((n==="src"||n==="xlink:href"||n==="href")&&t!=="script"&&y(o,"data:")===0&&Ye[t]);else if(Le&&!v(ge,g(o,ye,"")));else if(o){return false}else;return true};const Rt=function e(t){return t!=="annotation-xml"&&h(t,be)};const _t=function e(t){At(fe.beforeSanitizeAttributes,t,null);const{attributes:i}=t;if(!i||Tt(t)){return}const o={attrName:"",attrValue:"",keepAttr:true,allowedAttributes:Te,forceKeepAttr:undefined};let r=i.length;while(r--){const e=i[r];const{name:a,namespaceURI:l,value:s}=e;const c=ft(a);let d=a==="value"?s:b(s);o.attrName=c;o.attrValue=d;o.keepAttr=true;o.forceKeepAttr=undefined;At(fe.uponSanitizeAttribute,t,o);d=o.attrValue;if($e&&(c==="id"||c==="name")){wt(a,t);d=qe+d}if(Me&&v(/((--!?|])>)|<\/(style|title)/i,d)){wt(a,t);continue}if(o.forceKeepAttr){continue}wt(a,t);if(!o.keepAttr){continue}if(!Oe&&v(/\/>/i,d)){wt(a,t);continue}if(De){f([ue,de,me],(e=>{d=g(d,e," ")}))}const m=ft(t.nodeName);if(!St(m,c,d)){continue}if(ie&&typeof B==="object"&&typeof B.getAttributeType==="function"){if(l);else{switch(B.getAttributeType(m,c)){case"TrustedHTML":{d=ie.createHTML(d);break}case"TrustedScriptURL":{d=ie.createScriptURL(d);break}}}}try{if(l){t.setAttributeNS(l,a,d)}else{t.setAttribute(a,d)}if(Tt(t)){bt(t)}else{u(n.removed)}}catch(e){}}At(fe.afterSanitizeAttributes,t,null)};const Lt=function e(t){let n=null;const i=xt(t);At(fe.beforeSanitizeShadowDOM,t,null);while(n=i.nextNode()){At(fe.uponSanitizeShadowNode,n,null);Et(n);_t(n);if(n.content instanceof s){e(n.content)}}At(fe.afterSanitizeShadowDOM,t,null)};n.sanitize=function(e){let t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};let i=null;let r=null;let a=null;let l=null;tt=!e;if(tt){e="\x3c!--\x3e"}if(typeof e!=="string"&&!kt(e)){if(typeof e.toString==="function"){e=e.toString();if(typeof e!=="string"){throw x("dirty is not a string, aborting")}}else{throw x("toString is not a function")}}if(!n.isSupported){return e}if(!ze){pt(t)}n.removed=[];if(typeof e==="string"){Ue=false}if(Ue){if(e.nodeName){const t=ft(e.nodeName);if(!ve[t]||Ee[t]){throw x("root node is forbidden and cannot be sanitized in-place")}}}else if(e instanceof T){i=vt("\x3c!----\x3e");r=i.ownerDocument.importNode(e,true);if(r.nodeType===V.element&&r.nodeName==="BODY"){i=r}else if(r.nodeName==="HTML"){i=r}else{i.appendChild(r)}}else{if(!Pe&&!De&&!Ie&&e.indexOf("<")===-1){return ie&&Ce?ie.createHTML(e):e}i=vt(e);if(!i){return Pe?null:Ce?oe:""}}if(i&&Fe){bt(i.firstChild)}const c=xt(Ue?e:i);while(a=c.nextNode()){Et(a);_t(a);if(a.content instanceof s){Lt(a.content)}}if(Ue){return e}if(Pe){if(Ne){l=le.call(i.ownerDocument);while(i.firstChild){l.appendChild(i.firstChild)}}else{l=i}if(Te.shadowroot||Te.shadowrootmode){l=ce.call(o,l,true)}return l}let u=Ie?i.outerHTML:i.innerHTML;if(Ie&&ve["!doctype"]&&i.ownerDocument&&i.ownerDocument.doctype&&i.ownerDocument.doctype.name&&v(Y,i.ownerDocument.doctype.name)){u="<!DOCTYPE "+i.ownerDocument.doctype.name+">\n"+u}if(De){f([ue,de,me],(e=>{u=g(u,e," ")}))}return ie&&Ce?ie.createHTML(u):u};n.setConfig=function(){let e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};pt(e);ze=true};n.clearConfig=function(){ut=null;ze=false};n.isValidAttribute=function(e,t,n){if(!ut){pt({})}const i=ft(e);const o=ft(t);return St(i,o,n)};n.addHook=function(e,t){if(typeof t!=="function"){return}d(fe[e],t)};n.removeHook=function(e){return u(fe[e])};n.removeHooks=function(e){fe[e]=[]};n.removeAllHooks=function(){fe=Z()};return n}var te=ee();return te}))})(n);const i=n.exports;function o(){return/Android|webOS|iPhone|iPad|iPod|BlackBerry|Mobile|IEMobile|Windows Phone|Opera Mini/i.test(navigator.userAgent)}function r(e,t){const n=e.type;const i=["focusin","focus"];const o=i.includes(n);const r=o?e.target:e.relatedTarget;const a=e=>{if(e===t)return true;if(e.parentElement){return a(e.parentElement)}return false};if(!(r instanceof HTMLElement))return true;return!a(r)}function a(e,t){return e.relatedTarget!==t&&!t.contains(e.relatedTarget)}function l(e,t){var n;return((n=e.composedPath)===null||n===void 0?void 0:n.call(e)[0])===t}function s(e){e.focus=()=>e===null||e===void 0?void 0:e.dispatchEvent(new FocusEvent("focus",{bubbles:false}))}function c(){const e=navigator.userAgent.toLowerCase();return e.includes("firefox")}function f(){return"ontouchstart"in window||navigator.maxTouchPoints>0}function u(e,t){if(e===undefined)return e;if(!t)return e!=="Symbol()"?e:undefined;return t.includes(e)||e===""?e:undefined}let d=1e3;function m(){return d++}function p(e){requestAnimationFrame((()=>{requestAnimationFrame(e)}))}function h(e){return e.offsetWidth>0||e.offsetHeight>0||e.getClientRects().length>0}function g(){return new Promise((e=>p(e)))}function y(e){return i(window).sanitize(e,{FORBID_TAGS:["style"],CUSTOM_ELEMENT_HANDLING:{tagNameCheck:/^q2-/}})}function b(e,t){var n,i,o;if(!e)return"";if(((n=window.Tecton)===null||n===void 0?void 0:n.noStrings)===true){return e}return(o=(i=window===null||window===void 0?void 0:window.TectonElements)===null||i===void 0?void 0:i.loc(e,t))!==null&&o!==void 0?o:e}function w(t){const{label:n,hideLabel:i,optional:o,readonly:r}=t;const a=["input-label"];let l="";let s=i;if(!s){const e=t.hostElement.querySelectorAll('[slot="label"]');const i=e.length>0;const o=!!n;s=o||i?false:true}if(s)a.push("sr");if(o){l=e("span",{class:"optional-tag"},b("tecton.element.input.optional"))}if(r){l=e("span",{class:"optional-tag"},b("tecton.element.input.readonly"));a.push("readonly-field")}return e("label",{htmlFor:t.inputId,class:a.join(" ")},e("slot",{name:"label"},n?b(n):undefined,l))}function v(e,t){return e.querySelector(`[slot="${t}"]`)!==null}function x(e){const{ariaLabel:t}=e;if(!t)return;const n=Symbol().toString();if(t===n){e.ariaLabel=undefined;return}if("hideLabel"in e)e.hideLabel=true;e.label=b(t);e.ariaLabel=undefined}function T(e,t,n,i){if(typeof e[t]==="undefined")return;if(e[t]){k(e,t,"prop")}e[n]=e[t];if(i){delete e[t]}}function k(e,t,n){if(window.location.hostname==="localhost"||window.location.host==="stack.q2developer.com"){if(e[t]==="undefined")return;const i=e.constructor.name.toLowerCase().slice(2);switch(n){case"prop":if(t==="size"&&i==="btn"){console.warn(`The property of size in q2-btn should not be typeof number, or typeof string containing a number. This functionality will be deprecated in an upcoming release. Instead, please use the value 'undefined', or typeof string with any of the following values: "small" / "medium" / "large" `)}else{console.warn(`The property ${t} in q2-${i} has been marked for deprecation and will be removed in an upcoming major release.`)}break;case"function":console.warn(`The function ${t} in ${i} has been marked for deprecation and will be removed in an upcoming major release.`);break;case"method":console.warn(`The method ${t} in ${i} has been marked for deprecation and will be removed in an upcoming major release.`);break;case"event":console.warn(`The event ${t} in ${i} has been marked for deprecation and will be removed in an upcoming major release.`);break;default:console.error(`handleDeprecationWarning --\x3e No type found for desired deprecation: ${t} in q2-${i}: deprecatedItemType = ${t}`)}}}function A(t){const n=t.hasError?"danger":"info";return e("div",{class:"messages-container"},e("q2-message",{appearance:"minimal",description:true,type:n,"test-id":"message"},e("ul",{id:t.inputDescribedBy},t.messages.map((t=>e("li",{"test-id":"messageListItem"},b(t)))))))}function E(e){const t=e.hostElement.shadowRoot.querySelector(".messages-container");const n=t.querySelector("q2-message");p((()=>{const i=e.showMessages&&e.hasFocus?n.getBoundingClientRect().height:0;if(t.style.getPropertyValue("height")===`${i}px`)return;if(i===0){n.classList.add("invisible");t.style.removeProperty("height")}else{n.classList.remove("invisible");t.style.setProperty("height",`${i}px`)}}))}const S=()=>{var e,t;return(t=(e=window.TectonElements)===null||e===void 0?void 0:e.resizeIframe)===null||t===void 0?void 0:t.call(e)};const R=e=>{if(!e.intent&&["primary","secondary"].includes(e.color)){e.intent=`workflow-${e.color}`;e.color=undefined}};export{x as a,R as b,m as c,o as d,v as e,w as f,u as g,k as h,l as i,y as j,T as k,b as l,A as m,p as n,s as o,f as p,a as q,S as r,E as s,r as t,c as u,h as v,g as w};
3
- //# sourceMappingURL=p-9a1a4bc0.js.map