q2-tecton-elements 1.13.0-alpha.0 → 1.13.2

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 (235) hide show
  1. package/dist/cjs/click-elsewhere.cjs.entry.js +5 -7
  2. package/dist/cjs/{icons-4595ee47.js → icons-08ffe5c9.js} +394 -384
  3. package/dist/cjs/{index-c2e53804.js → index-7febb200.js} +112 -65
  4. package/dist/cjs/{index-a55d3c34.js → index-dd823ee6.js} +27 -14
  5. package/dist/cjs/loader.cjs.js +3 -3
  6. package/dist/cjs/q2-avatar.cjs.entry.js +2 -2
  7. package/dist/cjs/q2-badge.cjs.entry.js +43 -0
  8. package/dist/cjs/q2-btn_2.cjs.entry.js +13 -13
  9. package/dist/cjs/q2-calendar.cjs.entry.js +54 -59
  10. package/dist/cjs/q2-card.cjs.entry.js +127 -0
  11. package/dist/cjs/q2-carousel-pane.cjs.entry.js +5 -5
  12. package/dist/cjs/q2-carousel.cjs.entry.js +318 -106
  13. package/dist/cjs/q2-checkbox-group.cjs.entry.js +6 -3
  14. package/dist/cjs/q2-checkbox.cjs.entry.js +19 -11
  15. package/dist/cjs/q2-dropdown-item.cjs.entry.js +7 -7
  16. package/dist/cjs/q2-dropdown.cjs.entry.js +8 -17
  17. package/dist/cjs/q2-editable-field.cjs.entry.js +5 -8
  18. package/dist/cjs/q2-icon.cjs.entry.js +3 -3
  19. package/dist/cjs/q2-input.cjs.entry.js +439 -437
  20. package/dist/cjs/q2-loading-element.cjs.entry.js +3 -3
  21. package/dist/cjs/q2-loc.cjs.entry.js +2 -2
  22. package/dist/cjs/q2-message.cjs.entry.js +5 -5
  23. package/dist/cjs/q2-optgroup.cjs.entry.js +3 -3
  24. package/dist/cjs/q2-option-list.cjs.entry.js +359 -0
  25. package/dist/cjs/q2-option.cjs.entry.js +3 -11
  26. package/dist/cjs/q2-pagination.cjs.entry.js +116 -0
  27. package/dist/cjs/q2-pill.cjs.entry.js +137 -0
  28. package/dist/cjs/q2-radio-group.cjs.entry.js +43 -18
  29. package/dist/cjs/q2-radio.cjs.entry.js +21 -4
  30. package/dist/cjs/q2-section.cjs.entry.js +5 -7
  31. package/dist/cjs/q2-select.cjs.entry.js +36 -31
  32. package/dist/cjs/q2-stepper-pane.cjs.entry.js +42 -4
  33. package/dist/cjs/q2-stepper-vertical.cjs.entry.js +278 -0
  34. package/dist/cjs/q2-stepper.cjs.entry.js +10 -12
  35. package/dist/cjs/q2-tab-container.cjs.entry.js +12 -8
  36. package/dist/cjs/q2-tab-pane.cjs.entry.js +1 -1
  37. package/dist/cjs/q2-tag.cjs.entry.js +94 -0
  38. package/dist/cjs/q2-tecton-elements.cjs.js +3 -3
  39. package/dist/cjs/q2-textarea.cjs.entry.js +8 -8
  40. package/dist/cjs/{shapes-086c0365.js → shapes-305746b5.js} +9 -16
  41. package/dist/cjs/tecton-tab-pane.cjs.entry.js +2 -5
  42. package/dist/collection/collection-manifest.json +10 -3
  43. package/dist/collection/components/click-elsewhere/index.js +4 -6
  44. package/dist/collection/components/q2-badge/index.js +148 -0
  45. package/dist/collection/components/q2-badge/styles.css +134 -0
  46. package/dist/collection/components/q2-btn/index.js +14 -14
  47. package/dist/collection/components/q2-btn/styles.css +1 -1
  48. package/dist/collection/components/q2-calendar/helpers.js +22 -20
  49. package/dist/collection/components/q2-calendar/index.js +45 -37
  50. package/dist/collection/components/q2-calendar/validation.js +4 -2
  51. package/dist/collection/components/q2-card/index.js +347 -0
  52. package/dist/collection/components/q2-card/styles.css +177 -0
  53. package/dist/collection/components/q2-carousel/index.js +11 -16
  54. package/dist/collection/components/q2-carousel/styles.css +3 -3
  55. package/dist/collection/components/q2-carousel-pane/index.js +2 -2
  56. package/dist/collection/components/q2-carousel-pane/styles.css +8 -3
  57. package/dist/collection/components/q2-checkbox/index.js +36 -11
  58. package/dist/collection/components/q2-checkbox/styles.css +1 -0
  59. package/dist/collection/components/q2-checkbox-group/index.js +22 -1
  60. package/dist/collection/components/q2-dropdown/index.js +6 -15
  61. package/dist/collection/components/q2-dropdown-item/index.js +5 -5
  62. package/dist/collection/components/q2-editable-field/index.js +3 -6
  63. package/dist/collection/components/q2-icon/icons.js +393 -383
  64. package/dist/collection/components/q2-input/formatting/credit-card.js +15 -13
  65. package/dist/collection/components/q2-input/formatting/currency.js +162 -162
  66. package/dist/collection/components/q2-input/formatting/date.js +1 -1
  67. package/dist/collection/components/q2-input/formatting/generic.js +7 -8
  68. package/dist/collection/components/q2-input/formatting/number.js +6 -9
  69. package/dist/collection/components/q2-input/formatting/numeric.js +5 -5
  70. package/dist/collection/components/q2-input/formatting/phone.js +215 -215
  71. package/dist/collection/components/q2-input/formatting/postal.js +1 -1
  72. package/dist/collection/components/q2-input/index.js +81 -25
  73. package/dist/collection/components/q2-input/styles.css +19 -14
  74. package/dist/collection/components/q2-loading/index.js +4 -4
  75. package/dist/collection/components/q2-loading/skeleton/q2-loading-element/index.js +1 -1
  76. package/dist/collection/components/q2-loading/skeleton/shapes.js +8 -15
  77. package/dist/collection/components/q2-message/index.js +3 -3
  78. package/dist/collection/components/q2-optgroup/index.js +1 -1
  79. package/dist/collection/components/q2-option/index.js +19 -25
  80. package/dist/collection/components/q2-option/styles.css +5 -0
  81. package/dist/collection/components/q2-option-list/index.js +648 -0
  82. package/dist/collection/components/q2-option-list/styles.css +128 -0
  83. package/dist/collection/components/q2-pagination/index.js +275 -0
  84. package/dist/collection/components/q2-pagination/styles.css +120 -0
  85. package/dist/collection/components/q2-pill/index.js +324 -0
  86. package/dist/collection/components/q2-pill/styles.css +229 -0
  87. package/dist/collection/components/q2-radio/index.js +38 -1
  88. package/dist/collection/components/q2-radio-group/index.js +66 -24
  89. package/dist/collection/components/q2-section/index.js +5 -7
  90. package/dist/collection/components/q2-select/index.js +53 -30
  91. package/dist/collection/components/q2-stepper/index.js +8 -10
  92. package/dist/collection/components/q2-stepper/styles.css +5 -5
  93. package/dist/collection/components/q2-stepper-pane/index.js +133 -5
  94. package/dist/collection/components/q2-stepper-vertical/index.js +346 -0
  95. package/dist/collection/components/q2-stepper-vertical/styles.css +273 -0
  96. package/dist/collection/components/q2-tab-container/index.js +11 -7
  97. package/dist/collection/components/q2-tag/index.js +200 -0
  98. package/dist/collection/components/q2-tag/styles.css +141 -0
  99. package/dist/collection/components/q2-textarea/index.js +6 -6
  100. package/dist/collection/components/tecton-tab-pane/index.js +3 -10
  101. package/dist/collection/utils/index.js +25 -13
  102. package/dist/esm/click-elsewhere.entry.js +5 -7
  103. package/dist/esm/{icons-3ee662ea.js → icons-b1e11526.js} +394 -384
  104. package/dist/esm/{index-ec6660af.js → index-0ff8de52.js} +27 -15
  105. package/dist/esm/{index-be8376c0.js → index-dbfb3ecc.js} +112 -65
  106. package/dist/esm/loader.js +3 -3
  107. package/dist/esm/polyfills/css-shim.js +1 -1
  108. package/dist/esm/q2-avatar.entry.js +2 -2
  109. package/dist/esm/q2-badge.entry.js +39 -0
  110. package/dist/esm/q2-btn_2.entry.js +13 -13
  111. package/dist/esm/q2-calendar.entry.js +54 -59
  112. package/dist/esm/q2-card.entry.js +123 -0
  113. package/dist/esm/q2-carousel-pane.entry.js +5 -5
  114. package/dist/esm/q2-carousel.entry.js +318 -106
  115. package/dist/esm/q2-checkbox-group.entry.js +6 -3
  116. package/dist/esm/q2-checkbox.entry.js +19 -11
  117. package/dist/esm/q2-dropdown-item.entry.js +7 -7
  118. package/dist/esm/q2-dropdown.entry.js +8 -17
  119. package/dist/esm/q2-editable-field.entry.js +5 -8
  120. package/dist/esm/q2-icon.entry.js +3 -3
  121. package/dist/esm/q2-input.entry.js +439 -437
  122. package/dist/esm/q2-loading-element.entry.js +3 -3
  123. package/dist/esm/q2-loc.entry.js +2 -2
  124. package/dist/esm/q2-message.entry.js +5 -5
  125. package/dist/esm/q2-optgroup.entry.js +3 -3
  126. package/dist/esm/q2-option-list.entry.js +355 -0
  127. package/dist/esm/q2-option.entry.js +3 -11
  128. package/dist/esm/q2-pagination.entry.js +112 -0
  129. package/dist/esm/q2-pill.entry.js +133 -0
  130. package/dist/esm/q2-radio-group.entry.js +43 -18
  131. package/dist/esm/q2-radio.entry.js +21 -4
  132. package/dist/esm/q2-section.entry.js +5 -7
  133. package/dist/esm/q2-select.entry.js +36 -31
  134. package/dist/esm/q2-stepper-pane.entry.js +42 -4
  135. package/dist/esm/q2-stepper-vertical.entry.js +274 -0
  136. package/dist/esm/q2-stepper.entry.js +10 -12
  137. package/dist/esm/q2-tab-container.entry.js +12 -8
  138. package/dist/esm/q2-tab-pane.entry.js +1 -1
  139. package/dist/esm/q2-tag.entry.js +90 -0
  140. package/dist/esm/q2-tecton-elements.js +3 -3
  141. package/dist/esm/q2-textarea.entry.js +8 -8
  142. package/dist/esm/{shapes-81c11dfe.js → shapes-cff4e1f0.js} +9 -16
  143. package/dist/esm/tecton-tab-pane.entry.js +2 -5
  144. package/dist/loader/index.d.ts +0 -1
  145. package/dist/q2-tecton-elements/{p-75e87cca.entry.js → p-00e8f782.entry.js} +1 -1
  146. package/dist/q2-tecton-elements/p-01ae8461.entry.js +1 -0
  147. package/dist/q2-tecton-elements/p-0900bec1.entry.js +1 -0
  148. package/dist/q2-tecton-elements/p-10264ecb.entry.js +1 -0
  149. package/dist/q2-tecton-elements/{p-fbf7c5e6.entry.js → p-1305ec5f.entry.js} +1 -1
  150. package/dist/q2-tecton-elements/p-148391d6.entry.js +1 -0
  151. package/dist/q2-tecton-elements/p-1dfaee64.entry.js +1 -0
  152. package/dist/q2-tecton-elements/{p-32ad664c.entry.js → p-221abbf6.entry.js} +1 -1
  153. package/dist/q2-tecton-elements/{p-c90a6016.js → p-255b2b4c.js} +1 -1
  154. package/dist/q2-tecton-elements/p-27736b6b.entry.js +1 -0
  155. package/dist/q2-tecton-elements/p-2846ab94.entry.js +1 -0
  156. package/dist/q2-tecton-elements/p-2bc1de01.entry.js +1 -0
  157. package/dist/q2-tecton-elements/{p-8ea2c4f7.entry.js → p-2c15414c.entry.js} +1 -1
  158. package/dist/q2-tecton-elements/p-2caa89fd.js +1 -0
  159. package/dist/q2-tecton-elements/p-327cca41.entry.js +1 -0
  160. package/dist/q2-tecton-elements/p-3a420dbf.entry.js +1 -0
  161. package/dist/q2-tecton-elements/p-3abcb09d.entry.js +1 -0
  162. package/dist/q2-tecton-elements/p-3fe98e3e.entry.js +1 -0
  163. package/dist/q2-tecton-elements/{p-bb2e110a.entry.js → p-430a979b.entry.js} +1 -1
  164. package/dist/q2-tecton-elements/{p-7e6fc65d.entry.js → p-45eb7739.entry.js} +1 -1
  165. package/dist/q2-tecton-elements/{p-750bcd33.entry.js → p-49b2abc4.entry.js} +1 -1
  166. package/dist/q2-tecton-elements/{p-9b50c3c3.entry.js → p-4ab30466.entry.js} +1 -1
  167. package/dist/q2-tecton-elements/p-5bbf2bfe.entry.js +1 -0
  168. package/dist/q2-tecton-elements/{p-ac859fcc.entry.js → p-6fec9235.entry.js} +1 -1
  169. package/dist/q2-tecton-elements/p-824aebd9.js +1 -0
  170. package/dist/q2-tecton-elements/p-a4ae89cc.entry.js +1 -0
  171. package/dist/q2-tecton-elements/{p-50967020.entry.js → p-a5562aaa.entry.js} +1 -1
  172. package/dist/q2-tecton-elements/p-ae130f70.entry.js +1 -0
  173. package/dist/q2-tecton-elements/p-b2302cd3.entry.js +1 -0
  174. package/dist/q2-tecton-elements/p-c20cbb2d.entry.js +1 -0
  175. package/dist/q2-tecton-elements/p-ca7a3380.entry.js +1 -0
  176. package/dist/q2-tecton-elements/{p-a6f8d09a.entry.js → p-d33e152c.entry.js} +1 -1
  177. package/dist/q2-tecton-elements/{p-9024859f.entry.js → p-d5218cd6.entry.js} +1 -1
  178. package/dist/q2-tecton-elements/p-d52b435e.entry.js +1 -0
  179. package/dist/q2-tecton-elements/p-dd02cf8d.js +1 -0
  180. package/dist/q2-tecton-elements/{p-07a5d703.entry.js → p-e0e7ae8b.entry.js} +1 -1
  181. package/dist/q2-tecton-elements/{p-7e030e92.entry.js → p-ede12fc1.entry.js} +1 -1
  182. package/dist/q2-tecton-elements/{p-df182f61.entry.js → p-fdfbe75b.entry.js} +1 -1
  183. package/dist/q2-tecton-elements/p-ffbded54.entry.js +1 -0
  184. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +1 -1
  185. package/dist/test/elements/q2-tag-test.js +151 -0
  186. package/dist/test/helpers.js +20 -9
  187. package/dist/types/components/q2-badge/index.d.ts +13 -0
  188. package/dist/types/components/q2-btn/index.d.ts +3 -3
  189. package/dist/types/components/q2-calendar/helpers.d.ts +1 -0
  190. package/dist/types/components/q2-calendar/index.d.ts +2 -1
  191. package/dist/types/components/q2-calendar/validation.d.ts +1 -1
  192. package/dist/types/components/q2-card/index.d.ts +35 -0
  193. package/dist/types/components/q2-checkbox/index.d.ts +3 -1
  194. package/dist/types/components/q2-checkbox-group/index.d.ts +1 -0
  195. package/dist/types/components/q2-dropdown/index.d.ts +1 -1
  196. package/dist/types/components/q2-editable-field/index.d.ts +1 -1
  197. package/dist/types/components/q2-input/formatting/credit-card.d.ts +1 -3
  198. package/dist/types/components/q2-input/index.d.ts +5 -2
  199. package/dist/types/components/q2-option/index.d.ts +2 -3
  200. package/dist/types/components/q2-option-list/index.d.ts +62 -0
  201. package/dist/types/components/q2-pagination/index.d.ts +30 -0
  202. package/dist/types/components/q2-pill/index.d.ts +39 -0
  203. package/dist/types/components/q2-radio/index.d.ts +4 -1
  204. package/dist/types/components/q2-radio-group/index.d.ts +5 -1
  205. package/dist/types/components/q2-select/index.d.ts +2 -1
  206. package/dist/types/components/q2-stepper/index.d.ts +1 -1
  207. package/dist/types/components/q2-stepper-pane/index.d.ts +16 -1
  208. package/dist/types/components/q2-stepper-vertical/index.d.ts +52 -0
  209. package/dist/types/components/q2-tab-container/index.d.ts +1 -1
  210. package/dist/types/components/q2-tag/index.d.ts +28 -0
  211. package/dist/types/components/tecton-tab-pane/index.d.ts +2 -2
  212. package/dist/types/components.d.ts +235 -11
  213. package/dist/types/global.d.ts +1 -0
  214. package/dist/types/stencil-public-runtime.d.ts +6 -4
  215. package/dist/types/util.d.ts +2 -10
  216. package/dist/types/utils/index.d.ts +1 -0
  217. package/dist/types/workspace/workspace/tecton-production_release_1.13.x/packages/q2-tecton-elements/.stencil/test/elements/q2-tag-test.d.ts +1 -0
  218. package/dist/types/workspace/workspace/{_production_release_1.11.0-alpha → tecton-production_release_1.13.x}/packages/q2-tecton-elements/.stencil/test/helpers.d.ts +6 -3
  219. package/package.json +13 -13
  220. package/dist/q2-tecton-elements/p-06fff43d.entry.js +0 -1
  221. package/dist/q2-tecton-elements/p-080839ed.js +0 -1
  222. package/dist/q2-tecton-elements/p-29a37091.entry.js +0 -1
  223. package/dist/q2-tecton-elements/p-37aba2a4.js +0 -1
  224. package/dist/q2-tecton-elements/p-4cd00f1a.js +0 -1
  225. package/dist/q2-tecton-elements/p-6702eb4d.entry.js +0 -1
  226. package/dist/q2-tecton-elements/p-768e3a5d.entry.js +0 -1
  227. package/dist/q2-tecton-elements/p-843b1ee9.entry.js +0 -1
  228. package/dist/q2-tecton-elements/p-943c7745.entry.js +0 -1
  229. package/dist/q2-tecton-elements/p-95a73559.entry.js +0 -1
  230. package/dist/q2-tecton-elements/p-9a977ee6.entry.js +0 -1
  231. package/dist/q2-tecton-elements/p-b281c349.entry.js +0 -1
  232. package/dist/q2-tecton-elements/p-c5e55b9f.entry.js +0 -1
  233. package/dist/q2-tecton-elements/p-ccbe9158.entry.js +0 -1
  234. package/dist/q2-tecton-elements/p-db6f90ac.entry.js +0 -1
  235. package/dist/q2-tecton-elements/p-fa6eea5c.entry.js +0 -1
@@ -1 +1 @@
1
- import{r as t,c as a,h as i,F as r,g as e}from"./p-080839ed.js";import{a as o,c as s,l as n,i as c,o as l}from"./p-37aba2a4.js";o();const h=class{constructor(i){t(this,i),this.change=a(this,"change",7),this.settled=a(this,"settled",7),this.noPrint=!1,this.guid=s(),this.scheduledAfterRender=[],this.lastScrolled=new Date(null).getTime(),this.hasLeft=!1,this.hasRight=!1,this.scrollEnabled=!1,this.showScrollLeft=!1,this.showScrollRight=!1,this.updateTabData=()=>{this.updateTabPaneProps(),this.setTabs()},this.updateTabPaneProps=()=>{this.tabPanes.forEach(((t,a)=>{t.selected=t.value===this.selectedTabValue,t.guid=this.guid,t.index=a}))},this.setTabs=()=>{this.tabs=this.tabPanes.map((({label:t,value:a})=>({label:t&&n(t)||"",value:a})))},this.onTabClick=t=>{this.value===t.target.dataset.value||this.change.emit({value:t.target.dataset.value})},this.onTabKeyDown=t=>{const a=t.target.dataset.value;switch(t.key){case"ArrowRight":t.preventDefault(),this.moveToAdjacentTab(a,"next");break;case"ArrowLeft":t.preventDefault(),this.moveToAdjacentTab(a,"prev");break;case"Home":t.preventDefault(),this.moveToAdjacentTab(a,"first");break;case"End":t.preventDefault(),this.moveToAdjacentTab(a,"last");break;case"Space":case"Enter":t.preventDefault(),this.change.emit({value:a})}},this.moveToAdjacentTab=(t,a)=>{let i,r=this.tabs.map((({value:t})=>t)).indexOf(t);switch(a){case"next":i=Math.min(r+1,this.tabs.length-1);break;case"prev":i=Math.max(r-1,0);break;case"first":i=0;break;case"last":i=this.tabs.length-1}r!==i&&this.moveFocus(i,!1)},this.moveFocus=(t,a=!0)=>{const i=this.listElement.querySelector(`[data-value="${this.tabs[t].value}"]`);return i.focus({preventScroll:a}),this.listElement.scrollTo({left:i.offsetLeft-this.listElement.clientWidth/2,behavior:"smooth"}),i},this.checkScrollState=()=>{if(!this.listElement)return;const{scrollLeft:t,scrollWidth:a,clientWidth:i}=this.listElement;this.scrollEnabled=a>i,this.showScrollLeft=!!t,this.showScrollRight=a!==t+i},this.onScrollBtnClick=t=>{const a=Math.floor(this.listElement.clientWidth/2);this.listElement.scrollBy({left:"left"===t?-a:a,behavior:"smooth"})},this.onSlotChange=()=>{this.checkScrollState()}}resizeIframe(){var t,a;return null===(a=null===(t=window.TectonElements)||void 0===t?void 0:t.resizeIframe)||void 0===a?void 0:a.call(t)}get tabPanes(){const t=this.hostElement.querySelectorAll("q2-tab-pane, tecton-tab-pane");return 0===t.length?[]:Array.from(t).filter((t=>t.name===this.name))}get selectedTabValue(){return this.value||this.tabPanes[0].value||""}get tabList(){return this.hostElement.shadowRoot.querySelector(".tab-list")}defaultChangeHandler(t){t.target!==this.hostElement||this.hostElement.onchange||(this.value=t.detail.value)}onResize(){this.checkScrollState()}onFocus(t){if(!c(t,this.hostElement))return;const a=this.tabs.findIndex((t=>t.value===this.selectedTabValue));this.moveFocus(a)}componentWillLoad(){const t=new MutationObserver(this.updateTabData);t.observe(this.hostElement,{childList:!0,attributes:!0}),this.mutationObserver=t,this.resizeObserver=new ResizeObserver((()=>this.checkScrollState())),this.updateTabData()}componentDidRender(){this.scheduledAfterRender.forEach((t=>t())),this.scheduledAfterRender=[],this.settled.emit()}componentDidLoad(){this.resizeObserver.observe(this.listElement),this.checkScrollState(),l(this.hostElement);const t=this.tabs.findIndex((t=>t.value===this.value));this.scheduledAfterRender.push((()=>{const a=this.moveFocus(Math.max(t,0));this.value=a.dataset.value,a.blur()}))}disconnectedCallback(){this.resizeObserver.disconnect(),this.mutationObserver.disconnect(),this.mutationObserver=null}valueObserver(){this.updateTabData(),this.scheduledAfterRender.push(this.resizeIframe);const t=this.tabs.findIndex((t=>t.value===this.value));t>-1&&this.scheduledAfterRender.push((()=>this.moveFocus(t,!1)))}nameObserver(){this.updateTabData()}render(){return i(r,null,i("div",{class:"tab-container"},this.scrollEnabled&&i(r,null,i("div",{class:"gradient-left",hidden:!this.showScrollLeft}),i("div",{class:"gradient-right",hidden:!this.showScrollRight}),i("q2-btn",{class:"btn-left",hidden:!this.showScrollLeft,onClick:()=>this.onScrollBtnClick("left")},i("q2-icon",{type:"chevron-left"})),i("q2-btn",{class:"btn-right",hidden:!this.showScrollRight,onClick:()=>this.onScrollBtnClick("right")},i("q2-icon",{type:"chevron-right"}))),i("ul",{onScroll:this.checkScrollState,ref:t=>this.listElement=t,class:this.noPrint?"no-print":null,role:"tablist"},this.tabs.map(((t,a)=>this.generateTab(t,a))))),i("div",{class:"tab-content"},i("slot",{onSlotchange:()=>this.onSlotChange()})))}generateTab(t,a){const{label:r,value:e}=t,o=this.selectedTabValue===e;return i("li",{role:"presentation"},i("button",{id:`tab-${this.guid}-${a}`,"data-value":e,"test-id":"tabLink",tabIndex:o?0:-1,role:"tab","aria-selected":o?"true":void 0,"aria-controls":`tab-pane-${this.guid}-${a}`,onClick:this.onTabClick,onKeyDown:this.onTabKeyDown},r))}get hostElement(){return e(this)}static get watchers(){return{value:["valueObserver"],name:["nameObserver"]}}};h.style="*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-global-focus)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size: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{display:block;position:relative}button{cursor:pointer;margin:0}.tab-container{position:relative}ul{--comp-container-padding:var(--tct-scale-1, var(--app-scale-1, 5px)) var(--tct-scale-1, var(--app-scale-1, 5px)) 0;padding:var(--tct-tab-container-padding, var(--t-tab-container-padding, var(--comp-container-padding)));display:flex;gap:var(--tct-tab-gap, var(--t-tab-gap, var(--tct-scale-1, var(--app-scale-1, 5px))));list-style:none;border-bottom:1px solid var(--tct-tab-container-border-color, var(--t-tab-container-border-color, var(--tct-gray-11, var(--t-gray-11, var(--tct-gray-l1, var(--app-gray-l1, #cccccc))))));overflow-x:auto;align-items:center;scrollbar-width:none;scrollbar-color:transparent}ul::-webkit-scrollbar{width:0;height:0}ul::-webkit-scrollbar-thumb{background:transparent}ul::-webkit-scrollbar-track{background:transparent}@media print{ul.no-print{display:none}}li{flex:0 0 auto}li button{background:var(--tct-tab-inactive-bg-color, var(--t-tab-inactive-bg-color, transparent));border-width:var(--tct-tab-inactive-border-width, var(--t-tab-inactive-border-width, 0 0 3px 0));border-color:var(--tct-tab-inactive-border-color, var(--t-tab-inactive-border-color, transparent));border-style:var(--tct-tab-inactive-border-style, var(--t-tab-inactive-border-style, solid));border-radius:var(--tct-tab-border-radius, var(--t-tab-border-radius, 0));width:var(--tct-tab-width, var(--t-tab-width, 100%));text-align:var(--tct-tab-text-align, var(--t-tab-text-align, center));text-decoration:var(--tct-tab-text-decoration, var(--t-tab-text-decoration, none));padding:var(--tct-tab-padding, var(--t-tab-padding, var(--tct-scale-2, var(--app-scale-2, 10px))));color:var(--tct-tab-inactive-color, var(--t-tab-inactive-color, inherit));font-size:var(--tct-tab-font-size, var(--t-tab-font-size, 17px));display:block;transition:color var(--tct-tween-2, var(--app-tween-2, 0.4s ease)), border-color var(--tct-tween-1, var(--app-tween-1, 0.2s ease))}:host([type=section]) li button{--comp-tab-section-padding:var(--tct-scale-2, var(--app-scale-2, 10px)) var(--tct-scale-1, var(--app-scale-1, 5px));font-size:inherit;padding:var(--tct-tab-section-padding, var(--t-tab-section-padding, var(--comp-tab-section-padding)))}li button:hover{color:var(--tct-tab-hover-color, var(--t-tab-hover-color, var(--tct-tab-active-color, var(--t-tab-active-color, #2e2e2e))));background-color:var(--tct-tab-hover-bg-color, var(--t-tab-hover-bg-color, inherit));width:var(--tct-tab-hover-width, var(--t-tab-hover-width, 100%))}li button[aria-selected=true]{color:var(--tct-tab-active-color, var(--t-tab-active-color, #2e2e2e));border-color:var(--tct-tab-active-border-color, var(--t-tab-active-border-color, currentColor));border-style:var(--tct-tab-active-border-style, var(--t-tab-active-border-style, solid));width:var(--tct-tab-active-width, var(--t-tab-active-width, 100%));background-color:var(--tct-tab-active-bg-color, var(--t-tab-active-bg-color, inherit))}:host([color=alt]) li button{color:var(--tct-tab-alt-inactive-color, var(--t-tab-alt-inactive-color, inherit))}:host([color=alt]) li button:hover,:host([color=alt]) li button[aria-selected=true]{color:var(--tct-tab-alt-active-color, var(--t-tab-alt-active-color, inherit))}@media screen and (max-width: 767px){li button{--comp-tab-padding:var(--tct-scale-2, var(--app-scale-2, 10px)) var(--tct-scale-1, var(--app-scale-1, 5px));font-size:inherit;padding:var(--tct-tab-padding, var(--t-tab-padding, var(--comp-tab-padding)))}}.tab-content{--comp-tab-content-padding:var(--tct-scale-2, var(--app-scale-2, 10px)) 0;padding:var(--tct-tab-content-padding, var(--t-tab-content-padding, var(--comp-tab-content-padding)))}.tab-content:focus{outline:none;box-shadow:none}.gradient-left,.gradient-right{z-index:1;position:absolute;top:0;height:100%;width:44px}.gradient-left{background-image:linear-gradient(to right, var(--t-base), var(--t-base-a0));left:0}.gradient-right{background-image:linear-gradient(to right, var(--t-base-a0), var(--t-base));right:0}.btn-left,.btn-right{--tct-icon-size:18px;--tct-btn-icon-hover-bg:transparent;--tct-btn-icon-width:22px;--tct-icon-stroke-primary:var(--tct-stepper-scroll-arrow-color, var(--t-stepper-scroll-arrow-color, var(--t-text, #4d4d4d)));position:absolute;top:calc(50% - 22px);z-index:2}.btn-left{left:0}.btn-right{right:0}";export{h as q2_tab_container}
1
+ import{r as t,c as a,h as i,F as r,g as e}from"./p-2caa89fd.js";import{b as o,c as s,l as n,i as c,o as l}from"./p-dd02cf8d.js";o();const h=class{constructor(i){t(this,i),this.change=a(this,"change",7),this.settled=a(this,"settled",7),this.noPrint=!1,this.guid=s(),this.scheduledAfterRender=[],this.lastScrolled=new Date(null).getTime(),this.hasLeft=!1,this.hasRight=!1,this.scrollEnabled=!1,this.showScrollLeft=!1,this.showScrollRight=!1,this.updateTabData=()=>{this.updateTabPaneProps(),this.setTabs()},this.updateTabPaneProps=()=>{this.tabPanes.forEach(((t,a)=>{t.selected=t.value===this.selectedTabValue,t.guid=this.guid,t.index=a}))},this.setTabs=()=>{this.tabs=this.tabPanes.map((({label:t,value:a})=>({label:t&&n(t)||"",value:a})))},this.onTabClick=t=>{this.value===t.target.dataset.value||this.change.emit({value:t.target.dataset.value})},this.onTabKeyDown=t=>{const a=t.target.dataset.value;switch(t.key){case"ArrowRight":t.preventDefault(),this.moveToAdjacentTab(a,"next");break;case"ArrowLeft":t.preventDefault(),this.moveToAdjacentTab(a,"prev");break;case"Home":t.preventDefault(),this.moveToAdjacentTab(a,"first");break;case"End":t.preventDefault(),this.moveToAdjacentTab(a,"last");break;case"Space":case"Enter":t.preventDefault(),this.change.emit({value:a})}},this.moveToAdjacentTab=(t,a)=>{const i=this.tabs.map((({value:t})=>t)).indexOf(t);let r;switch(a){case"next":r=Math.min(i+1,this.tabs.length-1);break;case"prev":r=Math.max(i-1,0);break;case"first":r=0;break;case"last":r=this.tabs.length-1}i!==r&&this.moveFocus(r,!1)},this.moveFocus=(t,a=!0)=>{const i=this.listElement.querySelector(`[data-value="${this.tabs[t].value}"]`);return i.focus({preventScroll:a}),this.listElement.scrollTo({left:i.offsetLeft-this.listElement.clientWidth/2,behavior:"smooth"}),i},this.checkScrollState=()=>{if(!this.listElement)return;const{scrollLeft:t,scrollWidth:a,clientWidth:i}=this.listElement;this.scrollEnabled=a>i,this.showScrollLeft=!!t,this.showScrollRight=a!==t+i},this.onScrollBtnClick=t=>{const a=Math.floor(this.listElement.clientWidth/2);this.listElement.scrollBy({left:"left"===t?-a:a,behavior:"smooth"})},this.onSlotChange=()=>{this.checkScrollState()}}resizeIframe(){var t,a;return null===(a=null===(t=window.TectonElements)||void 0===t?void 0:t.resizeIframe)||void 0===a?void 0:a.call(t)}get tabPanes(){const t=this.hostElement.querySelectorAll("q2-tab-pane, tecton-tab-pane");return 0===t.length?[]:Array.from(t).filter((t=>t.name===this.name))}get selectedTabValue(){return this.value||this.tabPanes[0].value||""}get tabList(){return this.hostElement.shadowRoot.querySelector(".tab-list")}defaultChangeHandler(t){t.target!==this.hostElement||this.hostElement.onchange||(this.value=t.detail.value)}onResize(){this.checkScrollState()}onFocus(t){if(!c(t,this.hostElement))return;const a=this.tabs.findIndex((t=>t.value===this.selectedTabValue));this.moveFocus(a)}componentWillLoad(){const t=new MutationObserver(this.updateTabData);t.observe(this.hostElement,{childList:!0,attributes:!0}),this.mutationObserver=t,this.resizeObserver=new ResizeObserver((()=>this.checkScrollState())),this.updateTabData()}componentDidRender(){this.scheduledAfterRender.forEach((t=>t())),this.scheduledAfterRender=[],this.settled.emit()}componentDidLoad(){this.resizeObserver.observe(this.listElement),this.checkScrollState(),l(this.hostElement);const t=this.tabs.findIndex((t=>t.value===this.value));this.scheduledAfterRender.push((()=>{if(!(this.tabs.length>0))return;const a=this.moveFocus(Math.max(t,0));this.value=a.dataset.value,a.blur()}))}disconnectedCallback(){this.resizeObserver.disconnect(),this.mutationObserver.disconnect(),this.resizeObserver=null,this.mutationObserver=null}valueObserver(){this.updateTabData(),this.scheduledAfterRender.push(this.resizeIframe);const t=this.tabs.findIndex((t=>t.value===this.value));t>-1&&this.scheduledAfterRender.push((()=>this.moveFocus(t,!1)))}nameObserver(){this.updateTabData()}render(){return i(r,null,i("div",{class:"tab-container"},this.scrollEnabled&&i(r,null,i("div",{class:"gradient-left",hidden:!this.showScrollLeft}),i("div",{class:"gradient-right",hidden:!this.showScrollRight}),i("q2-btn",{class:"btn-left",hidden:!this.showScrollLeft,onClick:()=>this.onScrollBtnClick("left")},i("q2-icon",{type:"chevron-left"})),i("q2-btn",{class:"btn-right",hidden:!this.showScrollRight,onClick:()=>this.onScrollBtnClick("right")},i("q2-icon",{type:"chevron-right"}))),i("ul",{onScroll:this.checkScrollState,ref:t=>this.listElement=t,class:this.noPrint?"no-print":null,role:"tablist"},this.tabs.map(((t,a)=>this.generateTab(t,a))))),i("div",{class:"tab-content"},i("slot",{onSlotchange:()=>this.onSlotChange()})))}generateTab(t,a){const{label:r,value:e}=t,o=this.selectedTabValue===e;return i("li",{role:"presentation"},i("button",{id:`tab-${this.guid}-${a}`,"data-value":e,"test-id":"tabLink",tabIndex:o?0:-1,role:"tab","aria-selected":o?"true":"false","aria-controls":`tab-pane-${this.guid}-${a}`,onClick:this.onTabClick,onKeyDown:this.onTabKeyDown},r))}get hostElement(){return e(this)}static get watchers(){return{value:["valueObserver"],name:["nameObserver"]}}};h.style="*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-global-focus)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size: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{display:block;position:relative}button{cursor:pointer;margin:0}.tab-container{position:relative}ul{--comp-container-padding:var(--tct-scale-1, var(--app-scale-1, 5px)) var(--tct-scale-1, var(--app-scale-1, 5px)) 0;padding:var(--tct-tab-container-padding, var(--t-tab-container-padding, var(--comp-container-padding)));display:flex;gap:var(--tct-tab-gap, var(--t-tab-gap, var(--tct-scale-1, var(--app-scale-1, 5px))));list-style:none;border-bottom:1px solid var(--tct-tab-container-border-color, var(--t-tab-container-border-color, var(--tct-gray-11, var(--t-gray-11, var(--tct-gray-l1, var(--app-gray-l1, #cccccc))))));overflow-x:auto;align-items:center;scrollbar-width:none;scrollbar-color:transparent}ul::-webkit-scrollbar{width:0;height:0}ul::-webkit-scrollbar-thumb{background:transparent}ul::-webkit-scrollbar-track{background:transparent}@media print{ul.no-print{display:none}}li{flex:0 0 auto}li button{background:var(--tct-tab-inactive-bg-color, var(--t-tab-inactive-bg-color, transparent));border-width:var(--tct-tab-inactive-border-width, var(--t-tab-inactive-border-width, 0 0 3px 0));border-color:var(--tct-tab-inactive-border-color, var(--t-tab-inactive-border-color, transparent));border-style:var(--tct-tab-inactive-border-style, var(--t-tab-inactive-border-style, solid));border-radius:var(--tct-tab-border-radius, var(--t-tab-border-radius, 0));width:var(--tct-tab-width, var(--t-tab-width, 100%));text-align:var(--tct-tab-text-align, var(--t-tab-text-align, center));text-decoration:var(--tct-tab-text-decoration, var(--t-tab-text-decoration, none));padding:var(--tct-tab-padding, var(--t-tab-padding, var(--tct-scale-2, var(--app-scale-2, 10px))));color:var(--tct-tab-inactive-color, var(--t-tab-inactive-color, inherit));font-size:var(--tct-tab-font-size, var(--t-tab-font-size, 17px));display:block;transition:color var(--tct-tween-2, var(--app-tween-2, 0.4s ease)), border-color var(--tct-tween-1, var(--app-tween-1, 0.2s ease))}:host([type=section]) li button{--comp-tab-section-padding:var(--tct-scale-2, var(--app-scale-2, 10px)) var(--tct-scale-1, var(--app-scale-1, 5px));font-size:inherit;padding:var(--tct-tab-section-padding, var(--t-tab-section-padding, var(--comp-tab-section-padding)))}li button:hover{color:var(--tct-tab-hover-color, var(--t-tab-hover-color, var(--tct-tab-active-color, var(--t-tab-active-color, #2e2e2e))));background-color:var(--tct-tab-hover-bg-color, var(--t-tab-hover-bg-color, inherit));width:var(--tct-tab-hover-width, var(--t-tab-hover-width, 100%))}li button[aria-selected=true]{color:var(--tct-tab-active-color, var(--t-tab-active-color, #2e2e2e));border-color:var(--tct-tab-active-border-color, var(--t-tab-active-border-color, currentColor));border-style:var(--tct-tab-active-border-style, var(--t-tab-active-border-style, solid));width:var(--tct-tab-active-width, var(--t-tab-active-width, 100%));background-color:var(--tct-tab-active-bg-color, var(--t-tab-active-bg-color, inherit))}:host([color=alt]) li button{color:var(--tct-tab-alt-inactive-color, var(--t-tab-alt-inactive-color, inherit))}:host([color=alt]) li button:hover,:host([color=alt]) li button[aria-selected=true]{color:var(--tct-tab-alt-active-color, var(--t-tab-alt-active-color, inherit))}@media screen and (max-width: 767px){li button{--comp-tab-padding:var(--tct-scale-2, var(--app-scale-2, 10px)) var(--tct-scale-1, var(--app-scale-1, 5px));font-size:inherit;padding:var(--tct-tab-padding, var(--t-tab-padding, var(--comp-tab-padding)))}}.tab-content{--comp-tab-content-padding:var(--tct-scale-2, var(--app-scale-2, 10px)) 0;padding:var(--tct-tab-content-padding, var(--t-tab-content-padding, var(--comp-tab-content-padding)))}.tab-content:focus{outline:none;box-shadow:none}.gradient-left,.gradient-right{z-index:1;position:absolute;top:0;height:100%;width:44px}.gradient-left{background-image:linear-gradient(to right, var(--t-base), var(--t-base-a0));left:0}.gradient-right{background-image:linear-gradient(to right, var(--t-base-a0), var(--t-base));right:0}.btn-left,.btn-right{--tct-icon-size:18px;--tct-btn-icon-hover-bg:transparent;--tct-btn-icon-width:22px;--tct-icon-stroke-primary:var(--tct-stepper-scroll-arrow-color, var(--t-stepper-scroll-arrow-color, var(--t-text, #4d4d4d)));position:absolute;top:calc(50% - 22px);z-index:2}.btn-left{left:0}.btn-right{right:0}";export{h as q2_tab_container}