@tylertech/forge 3.0.0-next.12 → 3.0.0-next.14

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 (828) hide show
  1. package/README.md +1 -6
  2. package/custom-elements.json +49089 -32080
  3. package/dist/esm/accordion/index.js +1 -1
  4. package/dist/esm/app-bar/app-bar/index.js +7 -0
  5. package/dist/esm/app-bar/app-bar/index.js.map +7 -0
  6. package/dist/esm/app-bar/help-button/index.js +1 -1
  7. package/dist/esm/app-bar/index.js +1 -1
  8. package/dist/esm/app-bar/menu-button/index.js +1 -1
  9. package/dist/esm/app-bar/notification-button/index.js +1 -1
  10. package/dist/esm/app-bar/profile-button/index.js +1 -1
  11. package/dist/esm/app-bar/search/index.js +1 -1
  12. package/dist/esm/autocomplete/index.js +1 -1
  13. package/dist/esm/avatar/index.js +1 -1
  14. package/dist/esm/backdrop/index.js +1 -1
  15. package/dist/esm/badge/index.js +1 -1
  16. package/dist/esm/banner/index.js +1 -1
  17. package/dist/esm/bottom-sheet/index.js +1 -1
  18. package/dist/esm/busy-indicator/index.js +1 -1
  19. package/dist/esm/button/index.js +1 -1
  20. package/dist/esm/button-area/index.js +1 -1
  21. package/dist/esm/button-toggle/button-toggle/index.js +1 -1
  22. package/dist/esm/button-toggle/button-toggle-group/index.js +1 -1
  23. package/dist/esm/button-toggle/index.js +1 -1
  24. package/dist/esm/calendar/calendar-dropdown/index.js +1 -1
  25. package/dist/esm/calendar/calendar-menu/index.js +1 -1
  26. package/dist/esm/calendar/index.js +1 -1
  27. package/dist/esm/card/index.js +1 -1
  28. package/dist/esm/checkbox/index.js +1 -1
  29. package/dist/esm/chip-field/index.js +1 -1
  30. package/dist/esm/chips/chip/index.js +1 -1
  31. package/dist/esm/chips/chip-set/index.js +1 -1
  32. package/dist/esm/chips/index.js +1 -1
  33. package/dist/esm/chunks/{chunk.PLNLLKP2.js → chunk.26E4L52W.js} +2 -2
  34. package/dist/esm/chunks/chunk.2GJ54C3Q.js +7 -0
  35. package/dist/esm/chunks/chunk.2GJ54C3Q.js.map +7 -0
  36. package/dist/esm/chunks/chunk.2GYZM6ZG.js +7 -0
  37. package/dist/esm/chunks/chunk.2GYZM6ZG.js.map +7 -0
  38. package/dist/esm/chunks/chunk.2YDKRTKP.js +7 -0
  39. package/dist/esm/chunks/chunk.2YDKRTKP.js.map +7 -0
  40. package/dist/esm/chunks/chunk.3JCHXLPT.js +7 -0
  41. package/dist/esm/chunks/chunk.3JCHXLPT.js.map +7 -0
  42. package/{styles/icon-button/forge-icon-button.scss → dist/esm/chunks/chunk.3PKNBYMG.js} +1 -3
  43. package/dist/esm/chunks/chunk.3PKNBYMG.js.map +7 -0
  44. package/dist/esm/chunks/chunk.3RMBFRGC.js +7 -0
  45. package/dist/esm/chunks/chunk.3RMBFRGC.js.map +7 -0
  46. package/dist/esm/chunks/{chunk.AY43NTAK.js → chunk.3UO6S3IK.js} +2 -2
  47. package/dist/esm/chunks/chunk.3ZRQFXQU.js +7 -0
  48. package/dist/esm/chunks/{chunk.UZPZ6KUN.js.map → chunk.3ZRQFXQU.js.map} +2 -2
  49. package/dist/esm/chunks/{chunk.IXGXASHQ.js → chunk.4B5IOZAT.js} +2 -2
  50. package/dist/esm/chunks/{chunk.WK2L7BPJ.js → chunk.4QDN5PM6.js} +2 -2
  51. package/dist/esm/chunks/{chunk.YIFI5D2X.js → chunk.543K5Y4E.js} +2 -2
  52. package/dist/esm/chunks/{chunk.YIFI5D2X.js.map → chunk.543K5Y4E.js.map} +3 -3
  53. package/dist/esm/chunks/{chunk.C5ZUGOOC.js → chunk.57PXXJA6.js} +2 -2
  54. package/dist/esm/chunks/{chunk.C7VEJINB.js → chunk.5C24LZNU.js} +2 -2
  55. package/dist/esm/chunks/{chunk.C2MQN7MI.js → chunk.5H4G6BWX.js} +2 -2
  56. package/dist/esm/chunks/{chunk.CQQSOTZ5.js → chunk.5VHUMZYS.js} +2 -2
  57. package/dist/esm/chunks/chunk.6DXDNQUR.js +15 -0
  58. package/dist/esm/chunks/chunk.6DXDNQUR.js.map +7 -0
  59. package/dist/esm/chunks/chunk.6Q3SV2R2.js +7 -0
  60. package/dist/esm/chunks/chunk.6Q3SV2R2.js.map +7 -0
  61. package/dist/esm/chunks/chunk.6Y45DLA6.js +7 -0
  62. package/dist/esm/chunks/chunk.6Y45DLA6.js.map +7 -0
  63. package/dist/esm/chunks/{chunk.WJXDDQUK.js → chunk.7ABZUBTT.js} +2 -2
  64. package/dist/esm/chunks/{chunk.ZREXLSAJ.js → chunk.7BGOH44S.js} +2 -2
  65. package/dist/esm/chunks/{chunk.2WSXSOYB.js → chunk.7DHDFH5L.js} +2 -2
  66. package/dist/esm/chunks/{chunk.UVJFHSMF.js → chunk.7PP6QHOM.js} +2 -2
  67. package/dist/esm/chunks/chunk.7UXLLUTN.js +7 -0
  68. package/dist/esm/chunks/{chunk.CLD75EBJ.js → chunk.7W2UWAZX.js} +2 -2
  69. package/dist/esm/chunks/{chunk.CLD75EBJ.js.map → chunk.7W2UWAZX.js.map} +3 -3
  70. package/dist/esm/chunks/chunk.A72W7RW7.js +7 -0
  71. package/dist/esm/chunks/chunk.A72W7RW7.js.map +7 -0
  72. package/dist/esm/chunks/chunk.AEJGC4YG.js +7 -0
  73. package/dist/esm/chunks/chunk.AEJGC4YG.js.map +7 -0
  74. package/dist/esm/chunks/{chunk.NDJZYFRT.js → chunk.B46Q3AFP.js} +2 -2
  75. package/dist/esm/chunks/chunk.BFUGFHEH.js +7 -0
  76. package/dist/esm/chunks/{chunk.URFSXQKR.js.map → chunk.BFUGFHEH.js.map} +2 -2
  77. package/dist/esm/chunks/chunk.BLW6QESQ.js +12 -0
  78. package/dist/esm/chunks/chunk.BLW6QESQ.js.map +7 -0
  79. package/dist/esm/chunks/chunk.BMQYEYCT.js +7 -0
  80. package/dist/esm/chunks/chunk.BMQYEYCT.js.map +7 -0
  81. package/dist/esm/chunks/{chunk.EY37FYZ4.js → chunk.C5IB44HX.js} +2 -2
  82. package/dist/esm/chunks/chunk.CNRFOWHY.js +7 -0
  83. package/dist/esm/chunks/{chunk.YXXKPT6P.js.map → chunk.CNRFOWHY.js.map} +2 -2
  84. package/dist/esm/chunks/{chunk.6VSFLBZF.js → chunk.CTZ3AWDW.js} +2 -2
  85. package/dist/esm/chunks/{chunk.YA3RDJCV.js → chunk.CZOABXEQ.js} +2 -2
  86. package/dist/esm/chunks/{chunk.YA3RDJCV.js.map → chunk.CZOABXEQ.js.map} +2 -2
  87. package/dist/esm/chunks/chunk.DD35U4AA.js +7 -0
  88. package/dist/esm/chunks/{chunk.JCO4M4PF.js.map → chunk.DD35U4AA.js.map} +3 -3
  89. package/dist/esm/chunks/{chunk.HBCDD25D.js → chunk.DDXIHZFX.js} +2 -2
  90. package/dist/esm/chunks/{chunk.VDGJ4UDL.js → chunk.DOEG3DWJ.js} +2 -2
  91. package/dist/esm/chunks/{chunk.4USQ2AP6.js → chunk.DTKFE7YB.js} +2 -2
  92. package/dist/esm/chunks/{chunk.IJ2I25V3.js → chunk.E3GVKR4E.js} +2 -2
  93. package/dist/esm/chunks/chunk.EBSBAFCX.js +7 -0
  94. package/dist/esm/chunks/chunk.EBSBAFCX.js.map +7 -0
  95. package/dist/esm/chunks/{chunk.FK6NNHXH.js → chunk.F2EBSV5Z.js} +2 -2
  96. package/dist/esm/chunks/chunk.F6KM5FO6.js +7 -0
  97. package/dist/esm/chunks/chunk.F6KM5FO6.js.map +7 -0
  98. package/dist/esm/chunks/chunk.FB6ZLH6P.js +7 -0
  99. package/dist/esm/chunks/chunk.FB6ZLH6P.js.map +7 -0
  100. package/dist/esm/chunks/chunk.FQSL747N.js +7 -0
  101. package/dist/esm/chunks/chunk.FQSL747N.js.map +7 -0
  102. package/dist/esm/chunks/{chunk.RNUGVHZF.js → chunk.G2BNY5QQ.js} +2 -2
  103. package/dist/esm/chunks/{chunk.4JF54GDJ.js → chunk.GS72TBUD.js} +2 -2
  104. package/dist/esm/chunks/{chunk.AQ7ROWO4.js → chunk.GT3VPSXY.js} +2 -2
  105. package/dist/esm/chunks/{chunk.DABGA7I6.js → chunk.GWJ4QCSW.js} +2 -2
  106. package/dist/esm/chunks/chunk.H7GW57Q6.js +7 -0
  107. package/dist/esm/chunks/chunk.H7GW57Q6.js.map +7 -0
  108. package/dist/esm/chunks/{chunk.RXLORASN.js → chunk.HHHBS6FB.js} +2 -2
  109. package/dist/esm/chunks/chunk.I3NHK2S3.js +7 -0
  110. package/dist/esm/chunks/{chunk.HKSXC5VK.js → chunk.IEB5KRFQ.js} +2 -2
  111. package/dist/esm/chunks/chunk.IT66AOX7.js +7 -0
  112. package/dist/esm/chunks/chunk.IT66AOX7.js.map +7 -0
  113. package/dist/esm/chunks/chunk.IVUK3W34.js +7 -0
  114. package/dist/esm/chunks/{chunk.TSH7BTC3.js.map → chunk.IVUK3W34.js.map} +2 -2
  115. package/dist/esm/chunks/chunk.IW7HALLT.js +7 -0
  116. package/dist/esm/chunks/{chunk.U5XNDTSZ.js.map → chunk.IW7HALLT.js.map} +2 -2
  117. package/dist/esm/chunks/chunk.J2KHTGSB.js +7 -0
  118. package/dist/esm/chunks/chunk.J2KHTGSB.js.map +7 -0
  119. package/dist/esm/chunks/{chunk.OQAD6MFL.js → chunk.J3B5CWKT.js} +2 -2
  120. package/dist/esm/chunks/chunk.JAWV5Y5T.js +7 -0
  121. package/dist/esm/chunks/{chunk.I5SFCLDD.js.map → chunk.JAWV5Y5T.js.map} +3 -3
  122. package/dist/esm/chunks/chunk.JVK64JDZ.js +7 -0
  123. package/dist/esm/chunks/chunk.JVK64JDZ.js.map +7 -0
  124. package/dist/esm/chunks/chunk.KFDYMENL.js +7 -0
  125. package/dist/esm/chunks/chunk.KFDYMENL.js.map +7 -0
  126. package/dist/esm/chunks/{chunk.QNVVUUNQ.js → chunk.KLPF4CNX.js} +2 -2
  127. package/dist/esm/chunks/chunk.KTYYBWTN.js +7 -0
  128. package/dist/esm/chunks/chunk.KTYYBWTN.js.map +7 -0
  129. package/dist/esm/chunks/{chunk.66X366TV.js → chunk.L4Y4RO5O.js} +2 -2
  130. package/dist/esm/chunks/chunk.LCNR2RPT.js +7 -0
  131. package/dist/esm/chunks/chunk.LCNR2RPT.js.map +7 -0
  132. package/dist/esm/chunks/{chunk.RBFGJH3C.js → chunk.LMIKNDBS.js} +2 -2
  133. package/dist/esm/chunks/chunk.LOBKFTRM.js +7 -0
  134. package/dist/esm/chunks/chunk.LOBKFTRM.js.map +7 -0
  135. package/dist/esm/chunks/chunk.LS7WRRT2.js +7 -0
  136. package/dist/esm/chunks/chunk.LS7WRRT2.js.map +7 -0
  137. package/dist/esm/chunks/{chunk.R2KOYHIZ.js → chunk.LSNAGIIH.js} +2 -2
  138. package/dist/esm/chunks/chunk.LUIKMPQR.js +7 -0
  139. package/dist/esm/chunks/chunk.LUIKMPQR.js.map +7 -0
  140. package/dist/esm/chunks/{chunk.7M4HRJYP.js → chunk.LXX3YZYS.js} +2 -2
  141. package/dist/esm/chunks/chunk.MZZJY5NX.js +7 -0
  142. package/dist/esm/chunks/chunk.MZZJY5NX.js.map +7 -0
  143. package/dist/esm/chunks/{chunk.W7H2ZYNR.js → chunk.NG6UZ4OL.js} +2 -2
  144. package/dist/esm/chunks/chunk.NYYXUH3X.js +7 -0
  145. package/dist/esm/chunks/{chunk.DQVYB55P.js → chunk.NZKIFXBU.js} +2 -2
  146. package/dist/esm/chunks/{chunk.AHAARGYM.js → chunk.OED5UCYT.js} +2 -2
  147. package/dist/esm/chunks/{chunk.5ASOX23Q.js → chunk.OUACQISE.js} +2 -2
  148. package/dist/esm/chunks/{chunk.5ASOX23Q.js.map → chunk.OUACQISE.js.map} +1 -1
  149. package/dist/esm/chunks/chunk.OYO5O3NF.js +7 -0
  150. package/dist/esm/chunks/{chunk.7UJAI6P2.js → chunk.P7LC3YYW.js} +2 -2
  151. package/dist/esm/chunks/{chunk.Z6AFASMO.js → chunk.PK7R6WDF.js} +2 -2
  152. package/dist/esm/chunks/chunk.PQQVUUHU.js +7 -0
  153. package/dist/esm/chunks/{chunk.LNLO36U6.js.map → chunk.PQQVUUHU.js.map} +2 -2
  154. package/dist/esm/chunks/{chunk.WWTQAN4G.js → chunk.PSTGTQVK.js} +2 -2
  155. package/dist/esm/chunks/chunk.Q5Z6F3PI.js +7 -0
  156. package/dist/esm/chunks/chunk.Q5Z6F3PI.js.map +7 -0
  157. package/dist/esm/chunks/{chunk.OXGOCF4L.js → chunk.QFY23EWU.js} +2 -2
  158. package/dist/esm/chunks/{chunk.OXGOCF4L.js.map → chunk.QFY23EWU.js.map} +2 -2
  159. package/dist/esm/chunks/chunk.RCSBJQ4G.js +7 -0
  160. package/dist/esm/chunks/chunk.RCSBJQ4G.js.map +7 -0
  161. package/dist/esm/chunks/chunk.RDW7Z4W5.js +7 -0
  162. package/dist/esm/chunks/chunk.RDW7Z4W5.js.map +7 -0
  163. package/dist/esm/chunks/chunk.RYNQDXFA.js +7 -0
  164. package/dist/esm/chunks/{chunk.YP2NHWIW.js.map → chunk.RYNQDXFA.js.map} +2 -2
  165. package/dist/esm/chunks/{chunk.RWUJGZ3R.js → chunk.RZZBM3AW.js} +2 -2
  166. package/dist/esm/chunks/{chunk.37JFBP4X.js → chunk.SNF35Y6C.js} +2 -2
  167. package/dist/esm/chunks/chunk.SOLF23NC.js +7 -0
  168. package/dist/esm/chunks/chunk.SOLF23NC.js.map +7 -0
  169. package/dist/esm/chunks/chunk.T34DG7BU.js +7 -0
  170. package/dist/esm/chunks/chunk.TA3MVDUU.js +7 -0
  171. package/dist/esm/chunks/chunk.TA3MVDUU.js.map +7 -0
  172. package/dist/esm/chunks/{chunk.HDO3WRH7.js → chunk.THWSN3X4.js} +2 -2
  173. package/dist/esm/chunks/chunk.TLFCQSJN.js +7 -0
  174. package/dist/esm/chunks/chunk.TLFCQSJN.js.map +7 -0
  175. package/dist/esm/chunks/{chunk.E4TAHUQO.js → chunk.TZFUKJ24.js} +2 -2
  176. package/dist/esm/chunks/{chunk.SEWAMWO6.js → chunk.U5WMRBSC.js} +2 -2
  177. package/dist/esm/chunks/chunk.URCJO73M.js +7 -0
  178. package/dist/esm/chunks/chunk.URCJO73M.js.map +7 -0
  179. package/dist/esm/chunks/{chunk.PDSOXEMY.js → chunk.UWZWXNTW.js} +2 -2
  180. package/dist/esm/chunks/chunk.VD5ZL5ZN.js +7 -0
  181. package/dist/esm/chunks/{chunk.OQ75YGB6.js.map → chunk.VD5ZL5ZN.js.map} +2 -2
  182. package/dist/esm/chunks/chunk.VDZ7HBKM.js +7 -0
  183. package/dist/esm/chunks/chunk.VDZ7HBKM.js.map +7 -0
  184. package/dist/esm/chunks/{chunk.CBIHNCT5.js → chunk.W324TWF2.js} +2 -2
  185. package/dist/esm/chunks/chunk.WQGPIOL6.js +7 -0
  186. package/dist/esm/chunks/chunk.WQGPIOL6.js.map +7 -0
  187. package/dist/esm/chunks/chunk.XDANTL6C.js +7 -0
  188. package/dist/esm/chunks/chunk.XDANTL6C.js.map +7 -0
  189. package/dist/esm/chunks/chunk.XNCBGWE4.js +7 -0
  190. package/dist/esm/chunks/chunk.XNCBGWE4.js.map +7 -0
  191. package/dist/esm/chunks/{chunk.ZYVXIP42.js → chunk.YKZ25J6B.js} +2 -2
  192. package/dist/esm/chunks/chunk.Z2RB75TN.js +7 -0
  193. package/dist/esm/chunks/chunk.Z2RB75TN.js.map +7 -0
  194. package/dist/esm/chunks/chunk.Z7PBGV4K.js +7 -0
  195. package/dist/esm/chunks/{chunk.TCFKFKZW.js.map → chunk.Z7PBGV4K.js.map} +4 -4
  196. package/dist/esm/chunks/{chunk.R6NA7SV2.js → chunk.ZSD7MMVB.js} +2 -2
  197. package/dist/esm/chunks/chunk.ZSZFWZAI.js +7 -0
  198. package/dist/esm/chunks/chunk.ZSZFWZAI.js.map +7 -0
  199. package/dist/esm/chunks/chunk.ZVJMIBUM.js +7 -0
  200. package/dist/esm/chunks/chunk.ZVJMIBUM.js.map +7 -0
  201. package/dist/esm/circular-progress/index.js +1 -1
  202. package/dist/esm/color-picker/index.js +1 -1
  203. package/dist/esm/core/base/index.js +1 -1
  204. package/dist/esm/core/index.js +1 -1
  205. package/dist/esm/core/utils/index.js +1 -1
  206. package/dist/esm/date-picker/index.js +1 -1
  207. package/dist/esm/date-range-picker/index.js +1 -1
  208. package/dist/esm/dialog/index.js +1 -1
  209. package/dist/esm/divider/index.js +1 -1
  210. package/dist/esm/drawer/base/index.js +1 -1
  211. package/dist/esm/drawer/drawer/index.js +1 -1
  212. package/dist/esm/drawer/index.js +1 -1
  213. package/dist/esm/drawer/mini-drawer/index.js +1 -1
  214. package/dist/esm/drawer/modal-drawer/index.js +1 -1
  215. package/dist/esm/expansion-panel/index.js +1 -1
  216. package/dist/esm/file-picker/index.js +1 -1
  217. package/dist/esm/floating-action-button/index.js +1 -1
  218. package/dist/esm/focus-indicator/index.js +1 -1
  219. package/dist/esm/icon/index.js +1 -1
  220. package/dist/esm/icon-button/index.js +1 -1
  221. package/dist/esm/index.js +1 -1
  222. package/dist/esm/inline-message/index.js +1 -1
  223. package/dist/esm/keyboard-shortcut/index.js +1 -1
  224. package/dist/esm/label/index.js +7 -0
  225. package/dist/esm/label/index.js.map +7 -0
  226. package/dist/esm/label-value/index.js +1 -1
  227. package/dist/esm/linear-progress/index.js +1 -1
  228. package/dist/esm/list/index.js +1 -1
  229. package/dist/esm/list/list/index.js +1 -1
  230. package/dist/esm/list/list-item/index.js +1 -1
  231. package/dist/esm/list-dropdown/index.js +1 -1
  232. package/dist/esm/menu/index.js +1 -1
  233. package/dist/esm/open-icon/index.js +1 -1
  234. package/dist/esm/page-state/index.js +1 -1
  235. package/dist/esm/paginator/index.js +1 -1
  236. package/dist/esm/popup/index.js +1 -1
  237. package/dist/esm/product-icon/index.js +1 -1
  238. package/dist/esm/profile-card/index.js +1 -1
  239. package/dist/esm/quantity-field/index.js +1 -1
  240. package/dist/esm/radio/index.js +1 -1
  241. package/dist/esm/ripple/index.js +1 -1
  242. package/dist/esm/scaffold/index.js +1 -1
  243. package/dist/esm/select/core/index.js +1 -1
  244. package/dist/esm/select/index.js +1 -1
  245. package/dist/esm/select/option/index.js +1 -1
  246. package/dist/esm/select/option-group/index.js +1 -1
  247. package/dist/esm/select/select/index.js +1 -1
  248. package/dist/esm/select/select-dropdown/index.js +1 -1
  249. package/dist/esm/skeleton/index.js +1 -1
  250. package/dist/esm/slider/index.js +1 -1
  251. package/dist/esm/split-button/index.js +7 -0
  252. package/dist/esm/split-button/index.js.map +7 -0
  253. package/dist/esm/split-view/index.js +1 -1
  254. package/dist/esm/split-view/split-view/index.js +1 -1
  255. package/dist/esm/split-view/split-view-panel/index.js +1 -1
  256. package/dist/esm/stack/index.js +1 -1
  257. package/dist/esm/state-layer/index.js +1 -1
  258. package/dist/esm/stepper/index.js +1 -1
  259. package/dist/esm/stepper/step/index.js +1 -1
  260. package/dist/esm/stepper/stepper/index.js +1 -1
  261. package/dist/esm/switch/index.js +1 -1
  262. package/dist/esm/table/index.js +1 -1
  263. package/dist/esm/tabs/index.js +1 -1
  264. package/dist/esm/tabs/tab/index.js +1 -1
  265. package/dist/esm/tabs/tab-bar/index.js +1 -1
  266. package/dist/esm/text-field/index.js +1 -1
  267. package/dist/esm/time-picker/index.js +1 -1
  268. package/dist/esm/toast/index.js +1 -1
  269. package/dist/esm/toolbar/index.js +1 -1
  270. package/dist/esm/tooltip/index.js +1 -1
  271. package/dist/esm/view-switcher/index.js +1 -1
  272. package/dist/esm/view-switcher/view/index.js +1 -1
  273. package/dist/forge-dark.css +1 -1
  274. package/dist/forge.css +1 -1
  275. package/dist/table/forge-table.css +1 -1
  276. package/dist/theme/forge-theme.css +1 -1
  277. package/dist/typography/forge-typography.css +1 -1
  278. package/esm/app-bar/app-bar/app-bar-adapter.d.ts +30 -0
  279. package/esm/app-bar/app-bar/app-bar-adapter.js +71 -0
  280. package/esm/app-bar/{app-bar-constants.d.ts → app-bar/app-bar-constants.d.ts} +7 -11
  281. package/esm/app-bar/app-bar/app-bar-constants.js +32 -0
  282. package/esm/app-bar/{app-bar-foundation.d.ts → app-bar/app-bar-foundation.d.ts} +17 -16
  283. package/esm/app-bar/app-bar/app-bar-foundation.js +71 -0
  284. package/esm/app-bar/app-bar/app-bar.d.ts +66 -0
  285. package/esm/app-bar/app-bar/app-bar.js +107 -0
  286. package/esm/app-bar/app-bar/index.d.ts +10 -0
  287. package/esm/app-bar/app-bar/index.js +14 -0
  288. package/esm/app-bar/help-button/app-bar-help-button-adapter.d.ts +8 -1
  289. package/esm/app-bar/help-button/app-bar-help-button-adapter.js +22 -1
  290. package/esm/app-bar/help-button/app-bar-help-button-constants.d.ts +7 -0
  291. package/esm/app-bar/help-button/app-bar-help-button-constants.js +11 -1
  292. package/esm/app-bar/help-button/app-bar-help-button-foundation.d.ts +4 -0
  293. package/esm/app-bar/help-button/app-bar-help-button-foundation.js +16 -0
  294. package/esm/app-bar/help-button/app-bar-help-button.d.ts +13 -2
  295. package/esm/app-bar/help-button/app-bar-help-button.js +27 -6
  296. package/esm/app-bar/index.d.ts +0 -4
  297. package/esm/app-bar/index.js +0 -8
  298. package/esm/app-bar/menu-button/app-bar-menu-button-constants.d.ts +7 -0
  299. package/esm/app-bar/menu-button/app-bar-menu-button-constants.js +9 -1
  300. package/esm/app-bar/menu-button/app-bar-menu-button.d.ts +19 -2
  301. package/esm/app-bar/menu-button/app-bar-menu-button.js +57 -8
  302. package/esm/app-bar/notification-button/app-bar-notification-button-adapter.d.ts +6 -2
  303. package/esm/app-bar/notification-button/app-bar-notification-button-adapter.js +17 -1
  304. package/esm/app-bar/notification-button/app-bar-notification-button-constants.d.ts +1 -0
  305. package/esm/app-bar/notification-button/app-bar-notification-button-constants.js +3 -1
  306. package/esm/app-bar/notification-button/app-bar-notification-button-foundation.d.ts +4 -4
  307. package/esm/app-bar/notification-button/app-bar-notification-button-foundation.js +9 -11
  308. package/esm/app-bar/notification-button/app-bar-notification-button.d.ts +17 -4
  309. package/esm/app-bar/notification-button/app-bar-notification-button.js +20 -5
  310. package/esm/app-bar/profile-button/app-bar-profile-button-adapter.d.ts +7 -1
  311. package/esm/app-bar/profile-button/app-bar-profile-button-adapter.js +26 -3
  312. package/esm/app-bar/profile-button/app-bar-profile-button-constants.d.ts +1 -3
  313. package/esm/app-bar/profile-button/app-bar-profile-button-constants.js +2 -4
  314. package/esm/app-bar/profile-button/app-bar-profile-button-foundation.d.ts +5 -2
  315. package/esm/app-bar/profile-button/app-bar-profile-button-foundation.js +20 -22
  316. package/esm/app-bar/profile-button/app-bar-profile-button.d.ts +31 -2
  317. package/esm/app-bar/profile-button/app-bar-profile-button.js +33 -6
  318. package/esm/autocomplete/autocomplete-foundation.js +2 -2
  319. package/esm/banner/banner-constants.js +1 -1
  320. package/esm/banner/banner.js +2 -2
  321. package/esm/bottom-sheet/bottom-sheet.js +1 -1
  322. package/esm/busy-indicator/busy-indicator.js +2 -2
  323. package/esm/button/base/base-button-adapter.d.ts +68 -0
  324. package/esm/button/base/base-button-adapter.js +238 -0
  325. package/esm/button/base/base-button-constants.d.ts +44 -0
  326. package/esm/button/base/base-button-constants.js +32 -0
  327. package/esm/button/base/base-button-foundation.d.ts +74 -0
  328. package/esm/button/base/base-button-foundation.js +240 -0
  329. package/esm/button/base/base-button.d.ts +53 -0
  330. package/esm/button/base/base-button.js +112 -0
  331. package/esm/button/button-adapter.d.ts +14 -0
  332. package/esm/button/button-adapter.js +14 -0
  333. package/esm/button/button-component-delegate.d.ts +4 -4
  334. package/esm/button/button-component-delegate.js +13 -17
  335. package/esm/button/button-constants.d.ts +10 -18
  336. package/esm/button/button-constants.js +6 -22
  337. package/esm/button/button-foundation.d.ts +25 -0
  338. package/esm/button/button-foundation.js +49 -0
  339. package/esm/button/button.d.ts +126 -30
  340. package/esm/button/button.js +158 -159
  341. package/esm/button/index.d.ts +3 -1
  342. package/esm/button/index.js +3 -1
  343. package/esm/button-toggle/button-toggle/button-toggle.js +1 -1
  344. package/esm/calendar/calendar-dom-utils.js +18 -30
  345. package/esm/calendar/calendar.js +1 -1
  346. package/esm/checkbox/checkbox-adapter.d.ts +50 -59
  347. package/esm/checkbox/checkbox-adapter.js +104 -186
  348. package/esm/checkbox/checkbox-component-delegate.d.ts +18 -9
  349. package/esm/checkbox/checkbox-component-delegate.js +58 -51
  350. package/esm/checkbox/checkbox-constants.d.ts +14 -56
  351. package/esm/checkbox/checkbox-constants.js +17 -50
  352. package/esm/checkbox/checkbox-foundation.d.ts +48 -18
  353. package/esm/checkbox/checkbox-foundation.js +139 -139
  354. package/esm/checkbox/checkbox.d.ts +120 -9
  355. package/esm/checkbox/checkbox.js +235 -36
  356. package/esm/checkbox/index.d.ts +1 -1
  357. package/esm/checkbox/index.js +1 -1
  358. package/esm/chip-field/chip-field-constants.d.ts +3 -0
  359. package/esm/chip-field/chip-field-constants.js +4 -0
  360. package/esm/chip-field/chip-field-foundation.d.ts +5 -0
  361. package/esm/chip-field/chip-field-foundation.js +20 -1
  362. package/esm/chip-field/chip-field.d.ts +5 -0
  363. package/esm/chip-field/chip-field.js +19 -1
  364. package/esm/chips/chip/chip.js +1 -1
  365. package/esm/circular-progress/circular-progress-adapter.d.ts +2 -2
  366. package/esm/circular-progress/circular-progress-adapter.js +15 -6
  367. package/esm/circular-progress/circular-progress-constants.d.ts +4 -1
  368. package/esm/circular-progress/circular-progress-constants.js +2 -1
  369. package/esm/circular-progress/circular-progress-foundation.d.ts +9 -1
  370. package/esm/circular-progress/circular-progress-foundation.js +21 -2
  371. package/esm/circular-progress/circular-progress.d.ts +15 -3
  372. package/esm/circular-progress/circular-progress.js +25 -8
  373. package/esm/color-picker/color-picker.js +2 -2
  374. package/esm/constants.d.ts +16 -0
  375. package/esm/constants.js +4 -0
  376. package/esm/core/base/base-adapter.d.ts +13 -1
  377. package/esm/core/base/base-adapter.js +17 -0
  378. package/esm/core/base/base-component.d.ts +0 -38
  379. package/esm/core/base/base-component.js +0 -4
  380. package/esm/core/base/base-focusable-component.d.ts +49 -0
  381. package/esm/core/base/base-focusable-component.js +90 -0
  382. package/esm/core/base/base-form-component.d.ts +45 -0
  383. package/esm/core/base/base-form-component.js +19 -0
  384. package/esm/core/base/base-nullable-form-component.d.ts +35 -0
  385. package/esm/core/base/base-nullable-form-component.js +20 -0
  386. package/esm/core/utils/feature-detection.d.ts +10 -0
  387. package/esm/core/utils/feature-detection.js +12 -0
  388. package/esm/core/utils/index.d.ts +2 -1
  389. package/esm/core/utils/index.js +2 -1
  390. package/esm/core/utils/reflect-utils.d.ts +107 -0
  391. package/esm/core/utils/reflect-utils.js +227 -0
  392. package/esm/core/utils/utils.d.ts +1 -1
  393. package/esm/date-picker/base/base-date-picker-utils.js +5 -8
  394. package/esm/field/field-constants.d.ts +8 -0
  395. package/esm/field/field-constants.js +10 -8
  396. package/esm/file-picker/file-picker-component-delegate.js +1 -1
  397. package/esm/file-picker/file-picker.js +1 -1
  398. package/esm/floating-action-button/floating-action-button-adapter.d.ts +20 -0
  399. package/esm/floating-action-button/floating-action-button-adapter.js +49 -0
  400. package/esm/floating-action-button/floating-action-button-component-delegate.d.ts +19 -3
  401. package/esm/floating-action-button/floating-action-button-component-delegate.js +62 -14
  402. package/esm/floating-action-button/floating-action-button-constants.d.ts +19 -14
  403. package/esm/floating-action-button/floating-action-button-constants.js +15 -15
  404. package/esm/floating-action-button/floating-action-button-foundation.d.ts +27 -0
  405. package/esm/floating-action-button/floating-action-button-foundation.js +48 -0
  406. package/esm/floating-action-button/floating-action-button.d.ts +86 -25
  407. package/esm/floating-action-button/floating-action-button.js +117 -104
  408. package/esm/floating-action-button/index.d.ts +3 -1
  409. package/esm/floating-action-button/index.js +5 -3
  410. package/esm/focus-indicator/focus-indicator-adapter.d.ts +2 -2
  411. package/esm/focus-indicator/focus-indicator-adapter.js +3 -3
  412. package/esm/focus-indicator/focus-indicator-foundation.js +3 -2
  413. package/esm/focus-indicator/focus-indicator.js +2 -2
  414. package/esm/icon-button/icon-button-adapter.d.ts +12 -0
  415. package/esm/icon-button/icon-button-adapter.js +11 -0
  416. package/esm/icon-button/icon-button-component-delegate.d.ts +0 -4
  417. package/esm/icon-button/icon-button-component-delegate.js +8 -18
  418. package/esm/icon-button/icon-button-constants.d.ts +26 -17
  419. package/esm/icon-button/icon-button-constants.js +17 -28
  420. package/esm/icon-button/icon-button-foundation.d.ts +39 -0
  421. package/esm/icon-button/icon-button-foundation.js +122 -0
  422. package/esm/icon-button/icon-button.d.ts +120 -41
  423. package/esm/icon-button/icon-button.js +156 -213
  424. package/esm/icon-button/index.d.ts +3 -1
  425. package/esm/icon-button/index.js +3 -1
  426. package/esm/index.d.ts +2 -0
  427. package/esm/index.js +6 -2
  428. package/esm/label/index.d.ts +11 -0
  429. package/esm/label/index.js +15 -0
  430. package/esm/label/label-adapter.d.ts +51 -0
  431. package/esm/label/label-adapter.js +102 -0
  432. package/esm/label/label-aware.d.ts +15 -0
  433. package/esm/label/label-aware.js +13 -0
  434. package/esm/label/label-constants.d.ts +17 -0
  435. package/esm/label/label-constants.js +31 -0
  436. package/esm/label/label-foundation.d.ts +40 -0
  437. package/esm/label/label-foundation.js +108 -0
  438. package/esm/label/label.d.ts +49 -0
  439. package/esm/label/label.js +80 -0
  440. package/esm/linear-progress/linear-progress-adapter.d.ts +2 -2
  441. package/esm/linear-progress/linear-progress-adapter.js +14 -6
  442. package/esm/linear-progress/linear-progress-constants.d.ts +3 -1
  443. package/esm/linear-progress/linear-progress-constants.js +1 -1
  444. package/esm/linear-progress/linear-progress-foundation.d.ts +6 -1
  445. package/esm/linear-progress/linear-progress-foundation.js +15 -5
  446. package/esm/linear-progress/linear-progress.d.ts +9 -2
  447. package/esm/linear-progress/linear-progress.js +16 -7
  448. package/esm/list/list/list-adapter.js +0 -1
  449. package/esm/list/list/list.js +1 -1
  450. package/esm/list/list-item/list-item-adapter.d.ts +12 -4
  451. package/esm/list/list-item/list-item-adapter.js +36 -5
  452. package/esm/list/list-item/list-item-constants.d.ts +4 -0
  453. package/esm/list/list-item/list-item-constants.js +3 -1
  454. package/esm/list/list-item/list-item-foundation.d.ts +9 -0
  455. package/esm/list/list-item/list-item-foundation.js +34 -4
  456. package/esm/list/list-item/list-item.d.ts +15 -4
  457. package/esm/list/list-item/list-item.js +29 -6
  458. package/esm/menu/menu-constants.js +1 -1
  459. package/esm/menu/menu-foundation.js +0 -4
  460. package/esm/menu/menu.js +1 -1
  461. package/esm/paginator/paginator-adapter.d.ts +4 -2
  462. package/esm/paginator/paginator-adapter.js +21 -8
  463. package/esm/paginator/paginator-constants.js +4 -4
  464. package/esm/paginator/paginator-foundation.d.ts +2 -0
  465. package/esm/paginator/paginator-foundation.js +19 -16
  466. package/esm/paginator/paginator.d.ts +1 -0
  467. package/esm/paginator/paginator.js +5 -2
  468. package/esm/profile-card/profile-card-adapter.d.ts +5 -8
  469. package/esm/profile-card/profile-card-adapter.js +5 -16
  470. package/esm/profile-card/profile-card-constants.js +3 -3
  471. package/esm/profile-card/profile-card-foundation.d.ts +4 -1
  472. package/esm/profile-card/profile-card-foundation.js +24 -13
  473. package/esm/profile-card/profile-card.d.ts +1 -2
  474. package/esm/profile-card/profile-card.js +11 -8
  475. package/esm/quantity-field/quantity-field-constants.js +2 -2
  476. package/esm/select/core/base-select-foundation.js +3 -1
  477. package/esm/slider/slider-adapter.d.ts +1 -1
  478. package/esm/slider/slider-adapter.js +3 -2
  479. package/esm/slider/slider-constants.js +3 -3
  480. package/esm/slider/slider.d.ts +6 -11
  481. package/esm/slider/slider.js +11 -7
  482. package/esm/split-button/index.d.ts +10 -0
  483. package/esm/split-button/index.js +14 -0
  484. package/esm/split-button/split-button-adapter.d.ts +30 -0
  485. package/esm/split-button/split-button-adapter.js +84 -0
  486. package/esm/split-button/split-button-constants.d.ts +21 -0
  487. package/esm/split-button/split-button-constants.js +23 -0
  488. package/esm/split-button/split-button-foundation.d.ts +37 -0
  489. package/esm/split-button/split-button-foundation.js +77 -0
  490. package/esm/split-button/split-button.d.ts +57 -0
  491. package/esm/split-button/split-button.js +103 -0
  492. package/esm/split-view/split-view-panel/split-view-panel.js +1 -1
  493. package/esm/state-layer/state-layer-adapter.js +1 -0
  494. package/esm/state-layer/state-layer-foundation.js +10 -1
  495. package/esm/state-layer/state-layer.js +1 -1
  496. package/esm/stepper/stepper/stepper-foundation.js +1 -1
  497. package/esm/switch/index.d.ts +2 -0
  498. package/esm/switch/index.js +2 -0
  499. package/esm/switch/switch-adapter.d.ts +30 -4
  500. package/esm/switch/switch-adapter.js +100 -18
  501. package/esm/switch/switch-component-delegate.d.ts +22 -7
  502. package/esm/switch/switch-component-delegate.js +63 -28
  503. package/esm/switch/switch-constants.d.ts +12 -2
  504. package/esm/switch/switch-constants.js +22 -11
  505. package/esm/switch/switch-foundation.d.ts +23 -4
  506. package/esm/switch/switch-foundation.js +63 -11
  507. package/esm/switch/switch.d.ts +28 -16
  508. package/esm/switch/switch.js +65 -36
  509. package/esm/table/table-foundation.d.ts +2 -0
  510. package/esm/table/table-foundation.js +17 -6
  511. package/esm/table/table-utils.js +13 -1
  512. package/esm/table/types.d.ts +1 -0
  513. package/esm/tabs/tab/tab.js +2 -2
  514. package/esm/tabs/tab-bar/tab-bar-adapter.js +17 -20
  515. package/esm/tabs/tab-bar/tab-bar.js +1 -1
  516. package/esm/time-picker/time-picker-adapter.js +5 -8
  517. package/esm/toast/toast-adapter.d.ts +1 -1
  518. package/esm/toast/toast-adapter.js +1 -1
  519. package/esm/toast/toast.js +2 -2
  520. package/esm/toolbar/toolbar.js +1 -1
  521. package/package.json +1 -3
  522. package/styles/app-bar/app-bar/_configuration.scss +16 -0
  523. package/styles/app-bar/app-bar/_core.scss +95 -0
  524. package/styles/app-bar/app-bar/_token-utils.scss +30 -0
  525. package/styles/app-bar/app-bar/app-bar.scss +142 -0
  526. package/styles/app-bar/app-bar/index.scss +8 -0
  527. package/styles/banner/banner.scss +0 -1
  528. package/styles/bottom-sheet/bottom-sheet.scss +0 -1
  529. package/styles/busy-indicator/_mixins.scss +1 -1
  530. package/styles/busy-indicator/busy-indicator.scss +0 -1
  531. package/styles/button/_configuration.scss +16 -0
  532. package/styles/button/_core.scss +183 -0
  533. package/styles/button/_token-utils.scss +30 -0
  534. package/styles/button/button.scss +221 -0
  535. package/styles/button/index.scss +8 -0
  536. package/styles/button-toggle/button-toggle/_mixins.scss +26 -7
  537. package/styles/calendar/calendar.scss +0 -4
  538. package/styles/{button/forge-button.scss → checkbox/_configuration.scss} +4 -3
  539. package/styles/checkbox/_core.scss +157 -0
  540. package/styles/checkbox/_token-utils.scss +30 -0
  541. package/styles/checkbox/checkbox.scss +143 -7
  542. package/styles/checkbox/index.scss +8 -0
  543. package/styles/chips/chip/_mixins.scss +21 -7
  544. package/styles/circular-progress/_configuration.scss +8 -15
  545. package/styles/circular-progress/_core.scss +21 -19
  546. package/styles/circular-progress/_token-utils.scss +30 -0
  547. package/styles/circular-progress/circular-progress.scss +51 -4
  548. package/styles/circular-progress/index.scss +1 -0
  549. package/styles/color-picker/color-picker.scss +0 -3
  550. package/styles/core/styles/_utils.scss +67 -4
  551. package/styles/core/styles/elevation/index.scss +10 -0
  552. package/styles/core/styles/spacing/index.scss +8 -1
  553. package/styles/core/styles/theme/index.scss +2 -0
  554. package/styles/core/styles/tokens/_token-utils.scss +118 -0
  555. package/styles/core/styles/tokens/app-bar/app-bar/_tokens.scss +35 -0
  556. package/styles/core/styles/tokens/button/_tokens.scss +115 -0
  557. package/styles/core/styles/tokens/checkbox/_tokens.scss +69 -0
  558. package/styles/core/styles/tokens/circular-progress/_tokens.scss +14 -3
  559. package/styles/core/styles/tokens/floating-action-button/_tokens.scss +66 -0
  560. package/styles/core/styles/tokens/focus-indicator/_tokens.scss +8 -5
  561. package/styles/core/styles/tokens/icon-button/_tokens.scss +106 -0
  562. package/styles/core/styles/tokens/index.scss +0 -1
  563. package/styles/core/styles/tokens/linear-progress/_tokens.scss +14 -3
  564. package/styles/core/styles/tokens/profile-card/_tokens.scss +19 -0
  565. package/styles/core/styles/tokens/shape/_tokens.scss +6 -0
  566. package/styles/core/styles/tokens/spacing/_tokens.scss +17 -1
  567. package/styles/core/styles/tokens/split-button/_tokens.scss +21 -0
  568. package/styles/core/styles/tokens/switch/_tokens.scss +4 -4
  569. package/styles/core/styles/tokens/tabs/tab/_tokens.scss +1 -1
  570. package/styles/core/styles/tokens/tabs/tab-bar/_tokens.scss +2 -2
  571. package/styles/core/styles/tokens/theme/_token-utils.scss +9 -5
  572. package/styles/core/styles/tokens/theme/_tokens.brand.scss +22 -0
  573. package/styles/core/styles/tokens/theme/_tokens.scss +3 -0
  574. package/styles/core/styles/tokens/typography/_tokens.label.scss +0 -1
  575. package/styles/core/styles/typography/index.scss +26 -1
  576. package/styles/file-picker/_mixins.scss +1 -1
  577. package/styles/floating-action-button/_configuration.scss +16 -0
  578. package/styles/floating-action-button/_core.scss +103 -0
  579. package/styles/floating-action-button/_token-utils.scss +30 -0
  580. package/styles/floating-action-button/floating-action-button.scss +129 -0
  581. package/styles/floating-action-button/index.scss +8 -0
  582. package/styles/focus-indicator/_animations.scss +6 -4
  583. package/styles/focus-indicator/_configuration.scss +2 -15
  584. package/styles/focus-indicator/_core.scss +20 -25
  585. package/styles/focus-indicator/_token-utils.scss +31 -0
  586. package/styles/focus-indicator/focus-indicator.scss +26 -21
  587. package/styles/focus-indicator/index.scss +1 -0
  588. package/styles/forge.scss +0 -3
  589. package/styles/icon-button/_configuration.scss +16 -0
  590. package/styles/icon-button/_core.scss +141 -0
  591. package/styles/icon-button/_token-utils.scss +30 -0
  592. package/styles/icon-button/icon-button.scss +349 -0
  593. package/styles/icon-button/index.scss +8 -0
  594. package/styles/label/_core.scss +17 -0
  595. package/styles/label/index.scss +6 -0
  596. package/styles/label/label.scss +18 -0
  597. package/styles/linear-progress/_animations.scss +3 -1
  598. package/styles/linear-progress/_configuration.scss +15 -16
  599. package/styles/linear-progress/_core.scss +17 -19
  600. package/styles/linear-progress/_token-utils.scss +31 -0
  601. package/styles/linear-progress/index.scss +1 -0
  602. package/styles/linear-progress/linear-progress.scss +42 -6
  603. package/styles/list/list/_configuration.scss +2 -4
  604. package/styles/list/list/_core.scss +3 -8
  605. package/styles/list/list/_token-utils.scss +30 -0
  606. package/styles/list/list/index.scss +1 -0
  607. package/styles/list/list/list.scss +11 -0
  608. package/styles/list/list-item/_configuration.scss +5 -61
  609. package/styles/list/list-item/_core.scss +51 -56
  610. package/styles/list/list-item/_token-utils.scss +30 -0
  611. package/styles/list/list-item/index.scss +1 -0
  612. package/styles/list/list-item/list-item.scss +12 -3
  613. package/styles/menu/menu.scss +1 -1
  614. package/styles/paginator/paginator.scss +0 -1
  615. package/styles/profile-card/_configuration.scss +10 -0
  616. package/styles/profile-card/_core.scss +58 -0
  617. package/styles/profile-card/_token-utils.scss +30 -0
  618. package/styles/profile-card/index.scss +8 -0
  619. package/styles/profile-card/profile-card.scss +55 -7
  620. package/styles/slider/_configuration.scss +5 -50
  621. package/styles/slider/_core.scss +58 -63
  622. package/styles/slider/_token-utils.scss +30 -0
  623. package/styles/slider/index.scss +1 -0
  624. package/styles/slider/slider.scss +26 -3
  625. package/styles/split-button/_configuration.scss +12 -0
  626. package/styles/split-button/_token-utils.scss +30 -0
  627. package/styles/split-button/index.scss +7 -0
  628. package/styles/split-button/split-button.scss +97 -0
  629. package/styles/state-layer/_configuration.scss +2 -9
  630. package/styles/state-layer/_core.scss +11 -16
  631. package/styles/state-layer/_token-utils.scss +31 -0
  632. package/styles/state-layer/index.scss +1 -0
  633. package/styles/state-layer/state-layer.scss +7 -0
  634. package/styles/switch/_configuration.scss +2 -87
  635. package/styles/switch/_core.scss +83 -86
  636. package/styles/switch/_token-utils.scss +30 -0
  637. package/styles/switch/index.scss +1 -0
  638. package/styles/switch/switch.scss +118 -84
  639. package/styles/table/_mixins.scss +20 -2
  640. package/styles/tabs/tab/_configuration.scss +7 -49
  641. package/styles/tabs/tab/_core.scss +27 -32
  642. package/styles/tabs/tab/_token-utils.scss +30 -0
  643. package/styles/tabs/tab/index.scss +1 -0
  644. package/styles/tabs/tab/tab.scss +87 -44
  645. package/styles/tabs/tab-bar/_configuration.scss +2 -5
  646. package/styles/tabs/tab-bar/_core.scss +26 -9
  647. package/styles/tabs/tab-bar/_token-utils.scss +30 -0
  648. package/styles/tabs/tab-bar/index.scss +2 -1
  649. package/styles/tabs/tab-bar/tab-bar.scss +68 -34
  650. package/styles/theme/_theme-dark.scss +0 -3
  651. package/styles/toast/_mixins.scss +1 -1
  652. package/styles/toast/toast.scss +0 -2
  653. package/styles/toolbar/_mixins.scss +0 -1
  654. package/styles/typography/forge-typography.scss +5 -2
  655. package/dist/button/forge-button.css +0 -6
  656. package/dist/esm/chunks/chunk.2LIWNFQK.js +0 -7
  657. package/dist/esm/chunks/chunk.3X4N4ZPY.js +0 -7
  658. package/dist/esm/chunks/chunk.3X4N4ZPY.js.map +0 -7
  659. package/dist/esm/chunks/chunk.436MTO6R.js +0 -7
  660. package/dist/esm/chunks/chunk.436MTO6R.js.map +0 -7
  661. package/dist/esm/chunks/chunk.4CXLGEJO.js +0 -7
  662. package/dist/esm/chunks/chunk.4CXLGEJO.js.map +0 -7
  663. package/dist/esm/chunks/chunk.4XJYS5WH.js +0 -7
  664. package/dist/esm/chunks/chunk.4XJYS5WH.js.map +0 -7
  665. package/dist/esm/chunks/chunk.7L66GZDN.js +0 -7
  666. package/dist/esm/chunks/chunk.7PPBXNAD.js +0 -7
  667. package/dist/esm/chunks/chunk.7PPBXNAD.js.map +0 -7
  668. package/dist/esm/chunks/chunk.A3ZDCBLA.js +0 -7
  669. package/dist/esm/chunks/chunk.A3ZDCBLA.js.map +0 -7
  670. package/dist/esm/chunks/chunk.CMRVP4EA.js +0 -7
  671. package/dist/esm/chunks/chunk.CZEF72BG.js +0 -12
  672. package/dist/esm/chunks/chunk.CZEF72BG.js.map +0 -7
  673. package/dist/esm/chunks/chunk.D5ZHKPCL.js +0 -7
  674. package/dist/esm/chunks/chunk.D5ZHKPCL.js.map +0 -7
  675. package/dist/esm/chunks/chunk.DH76CMUT.js +0 -7
  676. package/dist/esm/chunks/chunk.DH76CMUT.js.map +0 -7
  677. package/dist/esm/chunks/chunk.DLQSINSS.js +0 -7
  678. package/dist/esm/chunks/chunk.DLQSINSS.js.map +0 -7
  679. package/dist/esm/chunks/chunk.G6JWSERI.js +0 -7
  680. package/dist/esm/chunks/chunk.G6JWSERI.js.map +0 -7
  681. package/dist/esm/chunks/chunk.GO5A4GKZ.js +0 -7
  682. package/dist/esm/chunks/chunk.GO5A4GKZ.js.map +0 -7
  683. package/dist/esm/chunks/chunk.GWIXDVIA.js +0 -7
  684. package/dist/esm/chunks/chunk.GWIXDVIA.js.map +0 -7
  685. package/dist/esm/chunks/chunk.HGH6SSHZ.js +0 -7
  686. package/dist/esm/chunks/chunk.HGH6SSHZ.js.map +0 -7
  687. package/dist/esm/chunks/chunk.HJ23XQDJ.js +0 -7
  688. package/dist/esm/chunks/chunk.HJ23XQDJ.js.map +0 -7
  689. package/dist/esm/chunks/chunk.I5SFCLDD.js +0 -7
  690. package/dist/esm/chunks/chunk.IURDWGLD.js +0 -7
  691. package/dist/esm/chunks/chunk.IURDWGLD.js.map +0 -7
  692. package/dist/esm/chunks/chunk.JCO4M4PF.js +0 -7
  693. package/dist/esm/chunks/chunk.LNLO36U6.js +0 -7
  694. package/dist/esm/chunks/chunk.LV7XF22P.js +0 -7
  695. package/dist/esm/chunks/chunk.LV7XF22P.js.map +0 -7
  696. package/dist/esm/chunks/chunk.MHU452GM.js +0 -7
  697. package/dist/esm/chunks/chunk.MHU452GM.js.map +0 -7
  698. package/dist/esm/chunks/chunk.MLTEGJH6.js +0 -7
  699. package/dist/esm/chunks/chunk.MWWY5TX5.js +0 -7
  700. package/dist/esm/chunks/chunk.MWWY5TX5.js.map +0 -7
  701. package/dist/esm/chunks/chunk.O5GE3FFV.js +0 -7
  702. package/dist/esm/chunks/chunk.O5GE3FFV.js.map +0 -7
  703. package/dist/esm/chunks/chunk.OQ75YGB6.js +0 -7
  704. package/dist/esm/chunks/chunk.PCOOIP2H.js +0 -7
  705. package/dist/esm/chunks/chunk.PCOOIP2H.js.map +0 -7
  706. package/dist/esm/chunks/chunk.PDICDA2V.js +0 -7
  707. package/dist/esm/chunks/chunk.PDICDA2V.js.map +0 -7
  708. package/dist/esm/chunks/chunk.Q7BWJCT5.js +0 -7
  709. package/dist/esm/chunks/chunk.Q7BWJCT5.js.map +0 -7
  710. package/dist/esm/chunks/chunk.TCFKFKZW.js +0 -7
  711. package/dist/esm/chunks/chunk.TGVLYX5F.js +0 -7
  712. package/dist/esm/chunks/chunk.TGVLYX5F.js.map +0 -7
  713. package/dist/esm/chunks/chunk.TSH7BTC3.js +0 -7
  714. package/dist/esm/chunks/chunk.U5XNDTSZ.js +0 -7
  715. package/dist/esm/chunks/chunk.UAKQY7QB.js +0 -7
  716. package/dist/esm/chunks/chunk.UAKQY7QB.js.map +0 -7
  717. package/dist/esm/chunks/chunk.UAVC4YLD.js +0 -7
  718. package/dist/esm/chunks/chunk.UAVC4YLD.js.map +0 -7
  719. package/dist/esm/chunks/chunk.URFSXQKR.js +0 -7
  720. package/dist/esm/chunks/chunk.UZPZ6KUN.js +0 -7
  721. package/dist/esm/chunks/chunk.V6443MP3.js +0 -7
  722. package/dist/esm/chunks/chunk.V6443MP3.js.map +0 -7
  723. package/dist/esm/chunks/chunk.VAAID3SH.js +0 -7
  724. package/dist/esm/chunks/chunk.VAAID3SH.js.map +0 -7
  725. package/dist/esm/chunks/chunk.VPNDAKM3.js +0 -7
  726. package/dist/esm/chunks/chunk.VPNDAKM3.js.map +0 -7
  727. package/dist/esm/chunks/chunk.WCTSXMGU.js +0 -7
  728. package/dist/esm/chunks/chunk.WCTSXMGU.js.map +0 -7
  729. package/dist/esm/chunks/chunk.WOMYKBUG.js +0 -12
  730. package/dist/esm/chunks/chunk.WOMYKBUG.js.map +0 -7
  731. package/dist/esm/chunks/chunk.WVGIT7F7.js +0 -7
  732. package/dist/esm/chunks/chunk.WVGIT7F7.js.map +0 -7
  733. package/dist/esm/chunks/chunk.YOXZOPAC.js +0 -7
  734. package/dist/esm/chunks/chunk.YOXZOPAC.js.map +0 -7
  735. package/dist/esm/chunks/chunk.YP2NHWIW.js +0 -7
  736. package/dist/esm/chunks/chunk.YPA27RX7.js +0 -7
  737. package/dist/esm/chunks/chunk.YXXKPT6P.js +0 -7
  738. package/dist/esm/chunks/chunk.ZMUDT5UK.js +0 -7
  739. package/dist/esm/chunks/chunk.ZMUDT5UK.js.map +0 -7
  740. package/dist/floating-action-button/forge-floating-action-button.css +0 -6
  741. package/dist/icon-button/forge-icon-button.css +0 -6
  742. package/esm/app-bar/app-bar-adapter.d.ts +0 -43
  743. package/esm/app-bar/app-bar-adapter.js +0 -60
  744. package/esm/app-bar/app-bar-constants.js +0 -37
  745. package/esm/app-bar/app-bar-foundation.js +0 -70
  746. package/esm/app-bar/app-bar.d.ts +0 -38
  747. package/esm/app-bar/app-bar.js +0 -75
  748. package/esm/core/utils/a11y-utils.d.ts +0 -32
  749. package/esm/core/utils/a11y-utils.js +0 -111
  750. package/styles/app-bar/_mixins.scss +0 -249
  751. package/styles/app-bar/_variables.scss +0 -34
  752. package/styles/app-bar/app-bar.scss +0 -22
  753. package/styles/button/_button-base.scss +0 -183
  754. package/styles/button/_button-filled-theme.scss +0 -60
  755. package/styles/button/_button-filled.scss +0 -71
  756. package/styles/button/_button-outlined-theme.scss +0 -175
  757. package/styles/button/_button-outlined.scss +0 -76
  758. package/styles/button/_button-protected-theme.scss +0 -60
  759. package/styles/button/_button-protected.scss +0 -88
  760. package/styles/button/_button-ripple.scss +0 -69
  761. package/styles/button/_button-shared-theme.scss +0 -447
  762. package/styles/button/_button-text-theme.scss +0 -60
  763. package/styles/button/_button-text.scss +0 -57
  764. package/styles/button/_button.mixins.scss +0 -148
  765. package/styles/button/_mixins.scss +0 -183
  766. package/styles/checkbox/_checkbox-custom-properties.scss +0 -11
  767. package/styles/checkbox/_checkbox-theme.scss +0 -577
  768. package/styles/checkbox/_checkbox.mixins.scss +0 -595
  769. package/styles/floating-action-button/_extended-fab-theme.scss +0 -238
  770. package/styles/floating-action-button/_fab-custom-properties.scss +0 -29
  771. package/styles/floating-action-button/_fab-theme.scss +0 -541
  772. package/styles/floating-action-button/_fab.mixins.scss +0 -351
  773. package/styles/floating-action-button/forge-floating-action-button.scss +0 -16
  774. package/styles/icon-button/_mixins.scss +0 -345
  775. package/styles/icon-button/_variables.scss +0 -42
  776. package/styles/profile-card/_mixins.scss +0 -83
  777. /package/dist/esm/chunks/{chunk.PLNLLKP2.js.map → chunk.26E4L52W.js.map} +0 -0
  778. /package/dist/esm/chunks/{chunk.AY43NTAK.js.map → chunk.3UO6S3IK.js.map} +0 -0
  779. /package/dist/esm/chunks/{chunk.IXGXASHQ.js.map → chunk.4B5IOZAT.js.map} +0 -0
  780. /package/dist/esm/chunks/{chunk.WK2L7BPJ.js.map → chunk.4QDN5PM6.js.map} +0 -0
  781. /package/dist/esm/chunks/{chunk.C5ZUGOOC.js.map → chunk.57PXXJA6.js.map} +0 -0
  782. /package/dist/esm/chunks/{chunk.C7VEJINB.js.map → chunk.5C24LZNU.js.map} +0 -0
  783. /package/dist/esm/chunks/{chunk.C2MQN7MI.js.map → chunk.5H4G6BWX.js.map} +0 -0
  784. /package/dist/esm/chunks/{chunk.CQQSOTZ5.js.map → chunk.5VHUMZYS.js.map} +0 -0
  785. /package/dist/esm/chunks/{chunk.WJXDDQUK.js.map → chunk.7ABZUBTT.js.map} +0 -0
  786. /package/dist/esm/chunks/{chunk.ZREXLSAJ.js.map → chunk.7BGOH44S.js.map} +0 -0
  787. /package/dist/esm/chunks/{chunk.2WSXSOYB.js.map → chunk.7DHDFH5L.js.map} +0 -0
  788. /package/dist/esm/chunks/{chunk.UVJFHSMF.js.map → chunk.7PP6QHOM.js.map} +0 -0
  789. /package/dist/esm/chunks/{chunk.7L66GZDN.js.map → chunk.7UXLLUTN.js.map} +0 -0
  790. /package/dist/esm/chunks/{chunk.NDJZYFRT.js.map → chunk.B46Q3AFP.js.map} +0 -0
  791. /package/dist/esm/chunks/{chunk.EY37FYZ4.js.map → chunk.C5IB44HX.js.map} +0 -0
  792. /package/dist/esm/chunks/{chunk.6VSFLBZF.js.map → chunk.CTZ3AWDW.js.map} +0 -0
  793. /package/dist/esm/chunks/{chunk.HBCDD25D.js.map → chunk.DDXIHZFX.js.map} +0 -0
  794. /package/dist/esm/chunks/{chunk.VDGJ4UDL.js.map → chunk.DOEG3DWJ.js.map} +0 -0
  795. /package/dist/esm/chunks/{chunk.4USQ2AP6.js.map → chunk.DTKFE7YB.js.map} +0 -0
  796. /package/dist/esm/chunks/{chunk.IJ2I25V3.js.map → chunk.E3GVKR4E.js.map} +0 -0
  797. /package/dist/esm/chunks/{chunk.FK6NNHXH.js.map → chunk.F2EBSV5Z.js.map} +0 -0
  798. /package/dist/esm/chunks/{chunk.RNUGVHZF.js.map → chunk.G2BNY5QQ.js.map} +0 -0
  799. /package/dist/esm/chunks/{chunk.4JF54GDJ.js.map → chunk.GS72TBUD.js.map} +0 -0
  800. /package/dist/esm/chunks/{chunk.AQ7ROWO4.js.map → chunk.GT3VPSXY.js.map} +0 -0
  801. /package/dist/esm/chunks/{chunk.DABGA7I6.js.map → chunk.GWJ4QCSW.js.map} +0 -0
  802. /package/dist/esm/chunks/{chunk.RXLORASN.js.map → chunk.HHHBS6FB.js.map} +0 -0
  803. /package/dist/esm/chunks/{chunk.MLTEGJH6.js.map → chunk.I3NHK2S3.js.map} +0 -0
  804. /package/dist/esm/chunks/{chunk.HKSXC5VK.js.map → chunk.IEB5KRFQ.js.map} +0 -0
  805. /package/dist/esm/chunks/{chunk.OQAD6MFL.js.map → chunk.J3B5CWKT.js.map} +0 -0
  806. /package/dist/esm/chunks/{chunk.QNVVUUNQ.js.map → chunk.KLPF4CNX.js.map} +0 -0
  807. /package/dist/esm/chunks/{chunk.66X366TV.js.map → chunk.L4Y4RO5O.js.map} +0 -0
  808. /package/dist/esm/chunks/{chunk.RBFGJH3C.js.map → chunk.LMIKNDBS.js.map} +0 -0
  809. /package/dist/esm/chunks/{chunk.R2KOYHIZ.js.map → chunk.LSNAGIIH.js.map} +0 -0
  810. /package/dist/esm/chunks/{chunk.7M4HRJYP.js.map → chunk.LXX3YZYS.js.map} +0 -0
  811. /package/dist/esm/chunks/{chunk.W7H2ZYNR.js.map → chunk.NG6UZ4OL.js.map} +0 -0
  812. /package/dist/esm/chunks/{chunk.CMRVP4EA.js.map → chunk.NYYXUH3X.js.map} +0 -0
  813. /package/dist/esm/chunks/{chunk.DQVYB55P.js.map → chunk.NZKIFXBU.js.map} +0 -0
  814. /package/dist/esm/chunks/{chunk.AHAARGYM.js.map → chunk.OED5UCYT.js.map} +0 -0
  815. /package/dist/esm/chunks/{chunk.2LIWNFQK.js.map → chunk.OYO5O3NF.js.map} +0 -0
  816. /package/dist/esm/chunks/{chunk.7UJAI6P2.js.map → chunk.P7LC3YYW.js.map} +0 -0
  817. /package/dist/esm/chunks/{chunk.Z6AFASMO.js.map → chunk.PK7R6WDF.js.map} +0 -0
  818. /package/dist/esm/chunks/{chunk.WWTQAN4G.js.map → chunk.PSTGTQVK.js.map} +0 -0
  819. /package/dist/esm/chunks/{chunk.RWUJGZ3R.js.map → chunk.RZZBM3AW.js.map} +0 -0
  820. /package/dist/esm/chunks/{chunk.37JFBP4X.js.map → chunk.SNF35Y6C.js.map} +0 -0
  821. /package/dist/esm/chunks/{chunk.YPA27RX7.js.map → chunk.T34DG7BU.js.map} +0 -0
  822. /package/dist/esm/chunks/{chunk.HDO3WRH7.js.map → chunk.THWSN3X4.js.map} +0 -0
  823. /package/dist/esm/chunks/{chunk.E4TAHUQO.js.map → chunk.TZFUKJ24.js.map} +0 -0
  824. /package/dist/esm/chunks/{chunk.SEWAMWO6.js.map → chunk.U5WMRBSC.js.map} +0 -0
  825. /package/dist/esm/chunks/{chunk.PDSOXEMY.js.map → chunk.UWZWXNTW.js.map} +0 -0
  826. /package/dist/esm/chunks/{chunk.CBIHNCT5.js.map → chunk.W324TWF2.js.map} +0 -0
  827. /package/dist/esm/chunks/{chunk.ZYVXIP42.js.map → chunk.YKZ25J6B.js.map} +0 -0
  828. /package/dist/esm/chunks/{chunk.R6NA7SV2.js.map → chunk.ZSD7MMVB.js.map} +0 -0
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import{d as w}from"./chunk.A72W7RW7.js";import{a as C,p as L}from"./chunk.FQSL747N.js";import{a as k}from"./chunk.LS7WRRT2.js";import{a as c}from"./chunk.NVUMRW44.js";import{a as S,b as v}from"./chunk.IT66AOX7.js";import{c as A,e as T,f as h,k as I}from"./chunk.JAWV5Y5T.js";import{u as E}from"./chunk.K7FPXAFS.js";import{k as s}from"./chunk.J2M2MXP2.js";import{d as n}from"./chunk.M3QDAYD2.js";var N=`${v}tab-bar`,B={DISABLED:"disabled",ACTIVE_TAB:"active-tab",VERTICAL:"vertical",STACKED:"stacked",CLUSTERED:"clustered",SECONDARY:"secondary",INVERTED:"inverted",AUTO_ACTIVATE:"auto-activate",SCROLL_BUTTONS:"scroll-buttons"},M={CONTAINER:".container",SCROLL_CONTAINER:".scroll-container",DEFAULT_SLOT:"slot:not([name])"},K={SCROLL_BUTTON:"scroll-button"},H={CHANGE:`${N}-change`},F={SCROLL_MARGIN:48},D={attributes:B,elementName:N,events:H,selectors:M,classes:K,numbers:F},J=new Map([["default",new Set(["Home","End"])],["horizontal",new Set(["ArrowLeft","ArrowRight"])],["vertical",new Set(["ArrowUp","ArrowDown"])]]);var R=`${v}tab`,V={DISABLED:"disabled",SELECTED:"selected",VERTICAL:"vertical",STACKED:"stacked",SECONDARY:"secondary",INVERTED:"inverted"},P={INDICATOR:".indicator"},U={SELECTED:"selected"},Y={SELECT:`${R}-select`},$={EASING:"cubic-bezier(0.4, 0, 0.2, 1)"},G={ANIMATION_DURATION:250},t={elementName:R,attributes:V,selectors:P,classes:U,events:Y,strings:$,numbers:G};var p=class extends k{constructor(e){super(e);this._tabIndicatorElement=h(this._component,t.selectors.INDICATOR),this._stateLayerElement=h(this._component,C.elementName)}initialize(){this._component.tabIndex=this._component.selected?0:-1,this._component.setAttribute("role","tab"),this._component.setAttribute("aria-selected",this._component.selected?"true":"false")}addInteractionListener(e,i){this._component.addEventListener(e,i)}setDisabled(e){this._stateLayerElement.disabled=e,this._component.tabIndex=e?-1:this._component.selected?0:-1,this._component.setAttribute("aria-disabled",String(e)),E(this._component,e,t.attributes.DISABLED,String(e))}setSelected(e){this._component.tabIndex=e?0:-1,this._component.setAttribute("aria-selected",String(e))}animateSelected(){this._tabIndicatorElement.getAnimations().forEach(i=>i.cancel());let e=this._getKeyframes();e&&this._tabIndicatorElement.animate(e,{duration:t.numbers.ANIMATION_DURATION,easing:t.strings.EASING})}animateStateLayer(){this._stateLayerElement.playAnimation()}_getKeyframes(){var x;let e=window.matchMedia("(prefers-reduced-motion: reduce)").matches;if(!this._component.selected)return e?[{opacity:1},{transform:"none"}]:null;let i={},a=this._component.vertical,l=this._getSelectedTabIndicator(),b=(x=l==null?void 0:l.getBoundingClientRect())!=null?x:{},_=a?b.top:b.left,O=a?b.height:b.width,d=this._tabIndicatorElement.getBoundingClientRect(),m=a?d.top:d.left,z=a?d.height:d.width,u=a?"Y":"X",y=O/z;return!e&&_!==void 0&&m!==void 0&&!isNaN(y)?i.transform=`translate${u}(${(_-m).toFixed(4)}px) scale${u}(${y.toFixed(4)})`:i.opacity=0,[i,{transform:"none"}]}_getSelectedTabIndicator(){let e=A(this._component,D.elementName);if(e){let a=Array.from(e.querySelectorAll(t.elementName)).find(l=>l.hasAttribute(t.attributes.SELECTED));if(a)return h(a,t.selectors.INDICATOR)}return null}};var g=class{constructor(o){this._adapter=o;this._selected=!1;this._disabled=!1;this._vertical=!1;this._stacked=!1;this._secondary=!1;this._inverted=!1;this._clickListener=()=>this._onClick(),this._keydownListener=e=>this._onKeydown(e)}initialize(){this._adapter.initialize(),this._adapter.addInteractionListener("click",this._clickListener),this._adapter.addInteractionListener("keydown",this._keydownListener)}_onClick(){this._disabled||this._selected||this._dispatchSelectEvent()}_onKeydown(o){if(this._disabled||this._selected)return;(o.key===" "||o.key==="Enter")&&(o.preventDefault(),this._adapter.animateStateLayer(),this._dispatchSelectEvent())}_dispatchSelectEvent(){this._adapter.emitHostEvent(t.events.SELECT,{bubbles:!0,composed:!0})}get disabled(){return this._disabled}set disabled(o){this._disabled!==o&&(this._disabled=o,this._adapter.setDisabled(this._disabled),this._adapter.toggleHostAttribute(t.attributes.DISABLED,this._disabled))}get selected(){return this._selected}set selected(o){this._selected!==o&&(this._selected=o,this._adapter.setSelected(this._selected),this._adapter.animateSelected(),this._adapter.toggleHostAttribute(t.attributes.SELECTED,this._selected))}get vertical(){return this._vertical}set vertical(o){this._vertical!==o&&(this._vertical=o,this._adapter.toggleHostAttribute(t.attributes.VERTICAL,this._vertical))}get stacked(){return this._stacked}set stacked(o){this._stacked!==o&&(this._stacked=o,this._adapter.toggleHostAttribute(t.attributes.STACKED,this._stacked))}get secondary(){return this._secondary}set secondary(o){this._secondary!==o&&(this._secondary=o,this._adapter.toggleHostAttribute(t.attributes.SECONDARY,this._secondary))}get inverted(){return this._inverted}set inverted(o){this._inverted!==o&&(this._inverted=o,this._adapter.toggleHostAttribute(t.attributes.INVERTED,this._inverted))}};var X='<template><div class="forge-tab" part="container"><span class="content" part="content"><slot name="leading"></slot><span class="label" part="label"><slot></slot></span><slot name="trailing"></slot><span class="indicator" part="indicator"></span></span><forge-state-layer exportparts="surface:state-layer" target=":host"></forge-state-layer><forge-focus-indicator part="focus-indicator" target=":host" inward></forge-focus-indicator></div></template>',j=':host{display:-webkit-inline-box;display:inline-flex;outline:0;-webkit-tap-highlight-color:transparent;vertical-align:middle}:host([hidden]){display:none}.forge-tab{--_tab-active-color:var(--forge-tab-active-color, var(--forge-theme-primary, #3f51b5));--_tab-inactive-color:var(--forge-tab-inactive-color, var(--forge-theme-text-medium, rgba(0, 0, 0, 0.54)));--_tab-height:var(--forge-tab-height, 48px);--_tab-stacked-height:var(--forge-tab-stacked-height, 64px);--_tab-disabled-opacity:var(--forge-tab-disabled-opacity, 0.38);--_tab-indicator-color:var(--forge-tab-indicator-color, var(--_tab-active-color));--_tab-indicator-height:var(--forge-tab-indicator-height, 3px);--_tab-indicator-shape:var(--forge-tab-indicator-shape, 3px 3px 0 0);--_tab-vertical-indicator-shape:var(--forge-tab-indicator-shape, 3px 0 0 3px);--_tab-secondary-indicator-height:var(--forge-tab-indicator-height, 2px);--_tab-secondary-indicator-shape:var(--forge-tab-indicator-shape, 0);--_tab-inverted-indicator-shape:var(--forge-tab-indicator-shape, 0 0 3px 3px);--_tab-vertical-inverted-indicator-shape:var(--forge-tab-indicator-shape, 0 3px 3px 0);--_tab-container-color:var(--forge-tab-container-color, transparent);--_tab-container-height:var(--forge-tab-container-height, var(--_tab-height));--_tab-container-shape:var(--forge-tab-container-shape, 0);--_tab-content-height:var(--forge-tab-content-height, var(--_tab-height));--_tab-content-padding:var(--forge-tab-content-padding, var(--forge-spacing-xxsmall, 4px));--_tab-active-focus-icon-color:var(--forge-tab-active-focus-icon-color, var(--_tab-active-color));--_tab-active-hover-icon-color:var(--forge-tab-active-hover-icon-color, var(--_tab-active-color));--_tab-active-icon-color:var(--forge-tab-active-icon-color, var(--_tab-active-color));--_tab-active-pressed-icon-color:var(--forge-tab-active-pressed-icon-color, var(--_tab-active-color));--_tab-icon-size:var(--forge-tab-icon-size, 24px);--_tab-focus-icon-color:var(--forge-tab-focus-icon-color, var(--_tab-inactive-color));--_tab-hover-icon-color:var(--forge-tab-hover-icon-color, var(--_tab-inactive-color));--_tab-icon-color:var(--forge-tab-icon-color, var(--_tab-inactive-color));--_tab-pressed-icon-color:var(--forge-tab-pressed-icon-color, var(--_tab-inactive-color));--_tab-active-focus-label-text-color:var(--forge-tab-active-focus-label-text-color, var(--_tab-active-color));--_tab-active-hover-label-text-color:var(--forge-tab-active-hover-label-text-color, var(--_tab-active-color));--_tab-active-label-text-color:var(--forge-tab-active-label-text-color, var(--_tab-active-color));--_tab-active-pressed-label-text-color:var(--forge-tab-active-pressed-label-text-color, var(--_tab-active-color));--_tab-focus-label-text-color:var(--forge-tab-focus-label-text-color, var(--_tab-inactive-color));--_tab-hover-label-text-color:var(--forge-tab-hover-label-text-color, var(--_tab-inactive-color));--_tab-label-text-color:var(--forge-tab-label-text-color, var(--_tab-inactive-color));--_tab-pressed-label-text-color:var(--forge-tab-pressed-label-text-color, var(--_tab-inactive-color))}.forge-tab{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-button-font-family, var(--forge-typography-font-family, "Roboto", sans-serif));font-size:var(--forge-typography-button-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-button-font-size-scale, .875)));font-weight:var(--forge-typography-button-font-weight,500);line-height:var(--forge-typography-button-line-height, normal);letter-spacing:var(--forge-typography-button-letter-spacing, .0714285714em);text-transform:var(--forge-typography-button-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-button-text-decoration,inherit);text-decoration:var(--forge-typography-button-text-decoration,inherit);display:-webkit-inline-box;display:inline-flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;-webkit-box-sizing:border-box;box-sizing:border-box;border:none;outline:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-appearance:none;vertical-align:middle;background:0 0;text-decoration:none;width:100%;position:relative;padding:0;margin:0;z-index:0;background-color:var(--_tab-container-color);color:var(--_tab-label-text-color);min-height:var(--_tab-container-height)}.forge-tab::-moz-focus-inner{padding:0;border:0}.forge-tab ::slotted([slot=leading]),.forge-tab ::slotted([slot=trailing]){display:-webkit-inline-box;display:inline-flex;position:relative;-webkit-writing-mode:horizontal-tb;-ms-writing-mode:lr-tb;writing-mode:horizontal-tb;fill:currentColor;color:var(--_tab-icon-color);font-size:var(--_tab-icon-size);width:var(--_tab-icon-size);height:var(--_tab-icon-size)}.forge-tab:hover{color:var(--_tab-hover-label-text-color);cursor:pointer}.forge-tab:hover ::slotted([slot=leading]),.forge-tab:hover ::slotted([slot=trailing]){color:var(--_tab-hover-icon-color)}.forge-tab .content{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-inline-box;display:inline-flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;white-space:nowrap;-webkit-transition:150ms color linear;transition:150ms color linear;max-height:calc(var(--_tab-content-height) + 2 * var(--_tab-content-padding));min-height:var(--_tab-content-height);padding:var(--_tab-content-padding) calc(2 * var(--_tab-content-padding));gap:var(--_tab-content-padding)}.forge-tab .content .label{display:inline-block;line-height:1}.forge-tab .indicator{position:absolute;-webkit-box-sizing:border-box;box-sizing:border-box;z-index:-1;-webkit-transform-origin:bottom left;transform-origin:bottom left;background:var(--_tab-indicator-color);border-radius:var(--_tab-indicator-shape);height:var(--_tab-indicator-height);inset:auto 0 0;opacity:0}::slotted(*),:host{white-space:nowrap}forge-focus-indicator{--forge-focus-indicator-color:var(--_tab-active-color);--forge-focus-indicator-shape:8px}forge-state-layer{--forge-state-layer-color:var(--_tab-inactive-color)}:host(:focus) .forge-tab{color:var(--_tab-focus-label-text-color)}:host(:focus) .forge-tab ::slotted([slot=leading]),:host(:focus) .forge-tab ::slotted([slot=trailing]){color:var(--_tab-focus-icon-color)}:host(:active) .forge-tab{color:var(--_tab-pressed-label-text-color);outline:0}:host(:active) .forge-tab ::slotted([slot=leading]),:host(:active) .forge-tab ::slotted([slot=trailing]){color:var(--_tab-pressed-icon-color)}:host([disabled]){cursor:not-allowed}:host([disabled]) .forge-tab{opacity:var(--_tab-disabled-opacity);pointer-events:none}:host([selected]) .forge-tab{color:var(--_tab-active-label-text-color)}:host([selected]) .forge-tab ::slotted([slot=leading]),:host([selected]) .forge-tab ::slotted([slot=trailing]){color:var(--_tab-active-icon-color)}:host([selected]) .forge-tab:hover{color:var(--_tab-active-hover-label-text-color)}:host([selected]) .forge-tab:hover ::slotted([slot=leading]),:host([selected]) .forge-tab:hover ::slotted([slot=trailing]){color:var(--_tab-active-hover-icon-color)}:host([selected]) .forge-tab .indicator{opacity:1}:host([selected]) forge-state-layer{--forge-state-layer-color:var(--_tab-active-color)}:host([selected]:not([vertical])) forge-focus-indicator{--forge-focus-indicator-offset-block:0 calc(var(--_tab-indicator-height) + 1px)}:host([selected]:focus) .forge-tab{color:var(--_tab-active-focus-label-text-color)}:host([selected]:focus) .forge-tab ::slotted([slot=leading]),:host([selected]:focus) .forge-tab ::slotted([slot=trailing]){color:var(--_tab-active-focus-icon-color)}:host([selected]:active) .forge-tab{color:var(--_tab-active-pressed-label-text-color)}:host([selected]:active) .forge-tab ::slotted([slot=leading]),:host([selected]:active) .forge-tab ::slotted([slot=trailing]){color:var(--_tab-active-pressed-icon-color)}:host([stacked]) .forge-tab{--_tab-height:var(--_tab-stacked-height)}:host([stacked]) .forge-tab .content{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}:host([secondary]) .forge-tab{--_tab-indicator-height:var(--_tab-secondary-indicator-height);--_tab-indicator-shape:var(--_tab-secondary-indicator-shape)}:host([secondary]) .content{width:100%}:host([secondary]) .indicator{min-width:100%}:host([vertical]) .forge-tab{width:100%;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;border-bottom:none}:host([vertical]) .forge-tab .content{width:100%}:host([vertical]) .forge-tab .indicator{height:100%;min-width:var(--_tab-indicator-height);inset:0 0 0 auto}:host([vertical]) forge-focus-indicator{--forge-focus-indicator-offset-inline:0 calc(var(--_tab-indicator-height) + 1px)}:host([vertical][secondary]) .content{min-height:100%}:host([vertical]:not([secondary])) .forge-tab{--_tab-indicator-shape:var(--_tab-vertical-indicator-shape)}:host([inverted]) .forge-tab{--_tab-indicator-shape:var(--_tab-inverted-indicator-shape)}:host([inverted]) .indicator{inset:0 0 auto;-webkit-transform-origin:top left;transform-origin:top left}:host([inverted][vertical]) .forge-tab{--_tab-indicator-shape:var(--_tab-vertical-inverted-indicator-shape)}:host([inverted][vertical]) .indicator{inset:0 auto 0 0}',r=class extends I{constructor(){super();T(this,X,j),this._foundation=new g(new p(this))}static get observedAttributes(){return[t.attributes.DISABLED,t.attributes.SELECTED,t.attributes.VERTICAL,t.attributes.STACKED,t.attributes.SECONDARY,t.attributes.INVERTED]}connectedCallback(){this._foundation.initialize()}attributeChangedCallback(e,i,a){switch(e){case t.attributes.DISABLED:this.disabled=s(a);break;case t.attributes.SELECTED:this.selected=s(a);break;case t.attributes.VERTICAL:this.vertical=s(a);break;case t.attributes.STACKED:this.stacked=s(a);break;case t.attributes.SECONDARY:this.secondary=s(a);break;case t.attributes.INVERTED:this.inverted=s(a);break}}};n([c()],r.prototype,"disabled",2),n([c()],r.prototype,"selected",2),n([c()],r.prototype,"vertical",2),n([c()],r.prototype,"stacked",2),n([c()],r.prototype,"secondary",2),n([c()],r.prototype,"inverted",2),r=n([S({name:t.elementName,dependencies:[w,L]})],r);export{D as a,J as b,t as c,p as d,g as e,r as f};
7
+ //# sourceMappingURL=chunk.CNRFOWHY.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/tabs/tab-bar/tab-bar-constants.ts", "../../src/tabs/tab/tab-constants.ts", "../../src/tabs/tab/tab-adapter.ts", "../../src/tabs/tab/tab-foundation.ts", "../../src/tabs/tab/tab.ts"],
4
- "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}tab-bar`;\n\nconst attributes = {\n DISABLED: 'disabled',\n ACTIVE_TAB: 'active-tab',\n VERTICAL: 'vertical',\n STACKED: 'stacked',\n CLUSTERED: 'clustered',\n SECONDARY: 'secondary',\n INVERTED: 'inverted',\n AUTO_ACTIVATE: 'auto-activate',\n SCROLL_BUTTONS: 'scroll-buttons'\n};\n\nconst selectors = {\n CONTAINER: '.container',\n SCROLL_CONTAINER: '.scroll-container',\n DEFAULT_SLOT: 'slot:not([name])'\n};\n\nconst classes = {\n SCROLL_BUTTON: 'scroll-button'\n};\n\nconst events = {\n CHANGE: `${elementName}-change`\n};\n\nconst numbers = {\n SCROLL_MARGIN: 48\n};\n\nexport const TAB_BAR_CONSTANTS = {\n attributes,\n elementName,\n events,\n selectors,\n classes,\n numbers\n};\n\nexport const NAVIGATION_KEYS = new Map([\n ['default', new Set(['Home', 'End'])],\n ['horizontal', new Set(['ArrowLeft', 'ArrowRight'])],\n ['vertical', new Set(['ArrowUp', 'ArrowDown'])]\n]);\n", "import { COMPONENT_NAME_PREFIX } from '../../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}tab`;\n\nconst attributes = {\n DISABLED: 'disabled',\n SELECTED: 'selected',\n VERTICAL: 'vertical',\n STACKED: 'stacked',\n SECONDARY: 'secondary',\n INVERTED: 'inverted'\n};\n\nconst selectors = {\n INDICATOR: '.indicator'\n};\n\nconst classes = {\n SELECTED: 'selected'\n};\n\nconst events = {\n SELECT: `${elementName}-select`\n};\n\nconst strings = {\n EASING: 'cubic-bezier(0.4, 0, 0.2, 1)'\n};\n\nconst numbers = {\n ANIMATION_DURATION: 250\n};\n\nexport const TAB_CONSTANTS = {\n elementName,\n attributes,\n selectors,\n classes,\n events,\n strings,\n numbers\n};\n\n", "import { getShadowElement, requireParent, toggleAttribute } from '@tylertech/forge-core';\nimport { IStateLayerComponent, STATE_LAYER_CONSTANTS } from '../../state-layer';\nimport { BaseAdapter, IBaseAdapter } from '../../core/base/base-adapter';\nimport { TAB_BAR_CONSTANTS } from '../tab-bar/tab-bar-constants';\nimport type { ITabComponent } from './tab';\nimport { TAB_CONSTANTS } from './tab-constants';\n\nexport interface ITabAdapter extends IBaseAdapter {\n initialize(): void;\n addInteractionListener(type: string, listener: EventListener): void;\n setDisabled(value: boolean): void;\n setSelected(value: boolean): void;\n animateSelected(): void;\n animateStateLayer(): void;\n}\n\nexport class TabAdapter extends BaseAdapter<ITabComponent> implements ITabAdapter {\n private readonly _tabIndicatorElement: HTMLElement;\n private readonly _stateLayerElement: IStateLayerComponent;\n\n constructor(component: ITabComponent) {\n super(component);\n this._tabIndicatorElement = getShadowElement(this._component, TAB_CONSTANTS.selectors.INDICATOR);\n this._stateLayerElement = getShadowElement(this._component, STATE_LAYER_CONSTANTS.elementName) as IStateLayerComponent;\n }\n\n public initialize(): void {\n this._component.tabIndex = this._component.selected ? 0 : -1;\n this._component.setAttribute('role', 'tab');\n this._component.setAttribute('aria-selected', this._component.selected ? 'true' : 'false');\n }\n\n public addInteractionListener(type: string, listener: EventListener): void {\n this._component.addEventListener(type, listener);\n }\n\n public setDisabled(value: boolean): void {\n this._stateLayerElement.disabled = value;\n this._component.tabIndex = value ? -1 : this._component.selected ? 0 : -1;\n this._component.setAttribute('aria-disabled', String(value));\n toggleAttribute(this._component, value, TAB_CONSTANTS.attributes.DISABLED, String(value));\n }\n\n public setSelected(value: boolean): void {\n this._component.tabIndex = value ? 0 : -1;\n this._component.setAttribute('aria-selected', String(value));\n }\n\n public animateSelected(): void {\n this._tabIndicatorElement.getAnimations().forEach(a => a.cancel());\n const frames = this._getKeyframes();\n if (frames) {\n this._tabIndicatorElement.animate(frames, { duration: TAB_CONSTANTS.numbers.ANIMATION_DURATION, easing: TAB_CONSTANTS.strings.EASING });\n }\n }\n\n public animateStateLayer(): void {\n this._stateLayerElement.playAnimation();\n }\n\n private _getKeyframes(): Keyframe[] | null {\n const reduceMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n\n if (!this._component.selected) {\n return reduceMotion ? [{ opacity: 1 }, { transform: 'none' }] : null;\n }\n\n const from: Keyframe = {};\n const isVertical = this._component.vertical;\n const selectedTabIndicator = this._getSelectedTabIndicator();\n const fromRect = selectedTabIndicator?.getBoundingClientRect() ?? {} as DOMRect;\n const fromPos = isVertical ? fromRect.top : fromRect.left;\n const fromExtent = isVertical ? fromRect.height : fromRect.width;\n const toRect = this._tabIndicatorElement.getBoundingClientRect();\n const toPos = isVertical ? toRect.top : toRect.left;\n const toExtent = isVertical ? toRect.height : toRect.width;\n const axis = isVertical ? 'Y' : 'X';\n const scale = fromExtent / toExtent;\n\n if (!reduceMotion && fromPos !== undefined && toPos !== undefined && !isNaN(scale)) {\n from.transform = `translate${axis}(${(fromPos - toPos).toFixed(4)}px) scale${axis}(${scale.toFixed(4)})`;\n } else {\n from.opacity = 0;\n }\n\n return [from, { transform: 'none' }];\n }\n\n private _getSelectedTabIndicator(): HTMLElement | null {\n const tabsEl = requireParent(this._component, TAB_BAR_CONSTANTS.elementName);\n if (tabsEl) {\n const tabChildren = Array.from(tabsEl.querySelectorAll(TAB_CONSTANTS.elementName)) as ITabComponent[];\n const selectedTab = tabChildren.find(tab => tab.hasAttribute(TAB_CONSTANTS.attributes.SELECTED));\n if (selectedTab) {\n return getShadowElement(selectedTab, TAB_CONSTANTS.selectors.INDICATOR);\n }\n }\n return null;\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\n\nimport { ITabAdapter } from './tab-adapter';\nimport { TAB_CONSTANTS } from './tab-constants';\n\nexport interface ITabFoundation extends ICustomElementFoundation {\n disabled: boolean;\n selected: boolean;\n vertical: boolean;\n stacked: boolean;\n secondary: boolean;\n inverted: boolean;\n}\n\nexport class TabFoundation implements ITabFoundation {\n // State\n private _selected = false;\n private _disabled = false;\n private _vertical = false;\n private _stacked = false;\n private _secondary = false;\n private _inverted = false;\n\n // Listeners\n private _clickListener: EventListener;\n private _keydownListener: EventListener;\n\n constructor(private _adapter: ITabAdapter) {\n this._clickListener = () => this._onClick();\n this._keydownListener = (evt: KeyboardEvent) => this._onKeydown(evt);\n }\n\n public initialize(): void {\n this._adapter.initialize();\n this._adapter.addInteractionListener('click', this._clickListener);\n this._adapter.addInteractionListener('keydown', this._keydownListener);\n }\n\n private _onClick(): void {\n if (this._disabled || this._selected) {\n return;\n }\n this._dispatchSelectEvent();\n }\n\n private _onKeydown(evt: KeyboardEvent): void {\n if (this._disabled || this._selected) {\n return;\n }\n\n const isSelectionKey = evt.key === ' ' || evt.key === 'Enter';\n if (isSelectionKey) {\n evt.preventDefault();\n this._adapter.animateStateLayer();\n this._dispatchSelectEvent();\n }\n }\n\n private _dispatchSelectEvent(): void {\n this._adapter.emitHostEvent(TAB_CONSTANTS.events.SELECT, { bubbles: true, composed: true });\n }\n\n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(value: boolean) {\n if (this._disabled !== value) {\n this._disabled = value;\n this._adapter.setDisabled(this._disabled);\n this._adapter.toggleHostAttribute(TAB_CONSTANTS.attributes.DISABLED, this._disabled);\n }\n }\n\n public get selected(): boolean {\n return this._selected;\n }\n public set selected(value: boolean) {\n if (this._selected !== value) {\n this._selected = value;\n this._adapter.setSelected(this._selected);\n this._adapter.animateSelected();\n this._adapter.toggleHostAttribute(TAB_CONSTANTS.attributes.SELECTED, this._selected);\n }\n }\n\n public get vertical(): boolean {\n return this._vertical;\n }\n public set vertical(value: boolean) {\n if (this._vertical !== value) {\n this._vertical = value;\n this._adapter.toggleHostAttribute(TAB_CONSTANTS.attributes.VERTICAL, this._vertical);\n }\n }\n\n public get stacked(): boolean {\n return this._stacked;\n }\n public set stacked(value: boolean) {\n if (this._stacked !== value) {\n this._stacked = value;\n this._adapter.toggleHostAttribute(TAB_CONSTANTS.attributes.STACKED, this._stacked);\n }\n }\n\n public get secondary(): boolean {\n return this._secondary;\n }\n public set secondary(value: boolean) {\n if (this._secondary !== value) {\n this._secondary = value;\n this._adapter.toggleHostAttribute(TAB_CONSTANTS.attributes.SECONDARY, this._secondary);\n }\n }\n\n public get inverted(): boolean {\n return this._inverted;\n }\n public set inverted(value: boolean) {\n if (this._inverted !== value) {\n this._inverted = value;\n this._adapter.toggleHostAttribute(TAB_CONSTANTS.attributes.INVERTED, this._inverted);\n }\n }\n}\n", "import { CustomElement, attachShadowTemplate, coerceBoolean, FoundationProperty } from '@tylertech/forge-core';\n\nimport { TabAdapter } from './tab-adapter';\nimport { TabFoundation } from './tab-foundation';\nimport { TAB_CONSTANTS } from './tab-constants';\nimport { BaseComponent, IBaseComponent } from '../../core/base/base-component';\nimport { FocusIndicatorComponent } from '../../focus-indicator/focus-indicator';\nimport { StateLayerComponent } from '../../state-layer/state-layer';\n\nconst template = '<template><div class=\\\"forge-tab\\\" part=\\\"container\\\"><span class=\\\"content\\\" part=\\\"content\\\"><slot name=\\\"leading\\\"></slot><span class=\\\"label\\\" part=\\\"label\\\"><slot></slot></span><slot name=\\\"trailing\\\"></slot><span class=\\\"indicator\\\" part=\\\"indicator\\\"></span></span><forge-state-layer exportparts=\\\"surface:state-layer__surface\\\" target=\\\":host\\\"></forge-state-layer><forge-focus-indicator exportparts=\\\"indicator:focus-indicator__indicator\\\" target=\\\":host\\\" inward></forge-focus-indicator></div></template>';\nconst styles = ':host{display:-webkit-inline-box;display:inline-flex;outline:0;-webkit-tap-highlight-color:transparent;vertical-align:middle}:host([hidden]){display:none}:host(:focus) .forge-tab{color:var(--_focus-label-text-color)}:host(:focus) .forge-tab ::slotted([slot=leading]),:host(:focus) .forge-tab ::slotted([slot=trailing]){color:var(--_focus-icon-color)}:host(:active) .forge-tab{color:var(--_pressed-label-text-color);outline:0}:host(:active) .forge-tab ::slotted([slot=leading]),:host(:active) .forge-tab ::slotted([slot=trailing]){color:var(--_pressed-icon-color)}:host([disabled]){cursor:not-allowed}:host([disabled]) .forge-tab{opacity:var(--_disabled-opacity);pointer-events:none}:host([selected]) .forge-tab{color:var(--_active-label-text-color)}:host([selected]) .forge-tab ::slotted([slot=leading]),:host([selected]) .forge-tab ::slotted([slot=trailing]){color:var(--_active-icon-color)}:host([selected]) .forge-tab:hover{color:var(--_active-hover-label-text-color)}:host([selected]) .forge-tab:hover ::slotted([slot=leading]),:host([selected]) .forge-tab:hover ::slotted([slot=trailing]){color:var(--_active-hover-icon-color)}:host([selected]) .forge-tab .indicator{opacity:1}:host([selected]:not([vertical])) forge-focus-indicator{--forge-focus-indicator-offset-block:0 calc(var(--_active-indicator-height) + 1px)}:host([selected]:focus) .forge-tab{color:var(--_active-focus-label-text-color)}:host([selected]:focus) .forge-tab ::slotted([slot=leading]),:host([selected]:focus) .forge-tab ::slotted([slot=trailing]){color:var(--_active-focus-icon-color)}:host([selected]:active) .forge-tab{color:var(--_active-pressed-label-text-color)}:host([selected]:active) .forge-tab ::slotted([slot=leading]),:host([selected]:active) .forge-tab ::slotted([slot=trailing]){color:var(--_active-pressed-icon-color)}:host([stacked]) .forge-tab{--_height:var(--_stacked-height)}:host([stacked]) .forge-tab .content{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}:host([secondary]) .forge-tab{--_active-indicator-height:var(--forge-tab-indicator-height, 2px);--_active-indicator-shape:var(--forge-tab-indicator-shape, 0)}:host([secondary]) .content{width:100%}:host([secondary]) .indicator{min-width:100%}:host([vertical]) .forge-tab{width:100%;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;border-bottom:none}:host([vertical]) .forge-tab .content{width:100%}:host([vertical]) .forge-tab .indicator{height:100%;min-width:var(--_active-indicator-height);inset:0 0 0 auto}:host([vertical]) forge-focus-indicator{--forge-focus-indicator-offset-inline:0 calc(var(--_active-indicator-height) + 1px)}:host([vertical][secondary]) .content{min-height:100%}:host([vertical]:not([secondary])) .forge-tab{--_active-indicator-shape:var(--forge-tab-indicator-shape, 3px 0 0 3px)}:host([inverted]) .forge-tab{--_active-indicator-shape:var(--forge-tab-indicator-shape, 0 0 3px 3px)}:host([inverted]) .indicator{inset:0 0 auto;-webkit-transform-origin:top left;transform-origin:top left}:host([inverted][vertical]) .forge-tab{--_active-indicator-shape:var(--forge-tab-indicator-shape, 0 3px 3px 0)}:host([inverted][vertical]) .indicator{inset:0 auto 0 0}.forge-tab{--_active-color:var(--forge-tab-active-color, var(--forge-theme-primary, #3f51b5));--_inactive-color:var(--forge-tab-inactive-color, var(--forge-theme-text-medium, rgba(0, 0, 0, 0.54)));--_height:var(--forge-tab-height, 48px);--_stacked-height:var(--forge-tab-stacked-height, 64px);--_disabled-opacity:var(--forge-tab-disabled-opacity, 0.38);--_active-indicator-color:var(--forge-tab-indicator-color, var(--_active-color));--_active-indicator-height:var(--forge-tab-indicator-height, 3px);--_active-indicator-shape:var(--forge-tab-indicator-shape, 3px 3px 0 0);--_container-color:var(--forge-tab-container-color, transparent);--_container-height:var(--forge-tab-container-height, var(--_height));--_container-shape:var(--forge-tab-container-shape, 0);--_content-height:var(--forge-tab-content-height, var(--_height));--_content-padding:var(--forge-tab-content-padding, var(--forge-spacing-025, 4px));--_active-focus-icon-color:var(--forge-tab-active-focus-icon-color, var(--_active-color));--_active-hover-icon-color:var(--forge-tab-active-hover-icon-color, var(--_active-color));--_active-icon-color:var(--forge-tab-active-icon-color, var(--_active-color));--_active-pressed-icon-color:var(--forge-tab-active-pressed-icon-color, var(--_active-color));--_icon-size:var(--forge-tab-icon-size, 24px);--_focus-icon-color:var(--forge-tab-focus-icon-color, var(--_inactive-color));--_hover-icon-color:var(--forge-tab-hover-icon-color, var(--_inactive-color));--_icon-color:var(--forge-tab-icon-color, var(--_inactive-color));--_pressed-icon-color:var(--forge-tab-pressed-icon-color, var(--_inactive-color));--_active-focus-label-text-color:var(--forge-tab-active-focus-label-text-color, var(--_active-color));--_active-hover-label-text-color:var(--forge-tab-active-hover-label-text-color, var(--_active-color));--_active-label-text-color:var(--forge-tab-active-label-text-color, var(--_active-color));--_active-pressed-label-text-color:var(--forge-tab-active-pressed-label-text-color, var(--_active-color));--_focus-label-text-color:var(--forge-tab-focus-label-text-color, var(--_inactive-color));--_hover-label-text-color:var(--forge-tab-hover-label-text-color, var(--_inactive-color));--_label-text-color:var(--forge-tab-label-text-color, var(--_inactive-color));--_pressed-label-text-color:var(--forge-tab-pressed-label-text-color, var(--_inactive-color));-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-button-font-family, var(--forge-typography-font-family, \\\"Roboto\\\", sans-serif));font-size:var(--forge-typography-button-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-button-font-size-scale, .875)));font-weight:var(--forge-typography-button-font-weight,500);line-height:var(--forge-typography-button-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-button-line-height-scale, 2.25)));letter-spacing:var(--forge-typography-button-letter-spacing, .0714285714em);text-transform:var(--forge-typography-button-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-button-text-decoration,inherit);text-decoration:var(--forge-typography-button-text-decoration,inherit);display:-webkit-inline-box;display:inline-flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;-webkit-box-sizing:border-box;box-sizing:border-box;border:none;outline:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-appearance:none;vertical-align:middle;background:0 0;text-decoration:none;width:100%;position:relative;padding:0;margin:0;z-index:0;background-color:var(--_container-color);color:var(--_label-text-color);min-height:var(--_container-height)}.forge-tab::-moz-focus-inner{padding:0;border:0}.forge-tab ::slotted([slot=leading]),.forge-tab ::slotted([slot=trailing]){display:-webkit-inline-box;display:inline-flex;position:relative;-webkit-writing-mode:horizontal-tb;-ms-writing-mode:lr-tb;writing-mode:horizontal-tb;fill:currentColor;color:var(--_icon-color);font-size:var(--_icon-size);width:var(--_icon-size);height:var(--_icon-size)}.forge-tab:hover{color:var(--_hover-label-text-color);cursor:pointer}.forge-tab:hover ::slotted([slot=leading]),.forge-tab:hover ::slotted([slot=trailing]){color:var(--_hover-icon-color)}.forge-tab .content{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-inline-box;display:inline-flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;white-space:nowrap;-webkit-transition:150ms color linear;transition:150ms color linear;max-height:calc(var(--_content-height) + 2 * var(--_content-padding));min-height:var(--_content-height);padding:var(--_content-padding) calc(2 * var(--_content-padding));gap:var(--_content-padding)}.forge-tab .content .label{display:inline-block;line-height:1}.forge-tab .indicator{position:absolute;-webkit-box-sizing:border-box;box-sizing:border-box;z-index:-1;-webkit-transform-origin:bottom left;transform-origin:bottom left;background:var(--_active-indicator-color);border-radius:var(--_active-indicator-shape);height:var(--_active-indicator-height);inset:auto 0 0;opacity:0}::slotted(*),host{white-space:nowrap}forge-focus-indicator{--forge-focus-indicator-color:var(--_active-color);--forge-focus-indicator-shape:8px}forge-state-layer{--forge-state-layer-color:var(--_inactive-color)}';\n\nexport interface ITabComponent extends IBaseComponent {\n disabled: boolean;\n selected: boolean;\n vertical: boolean;\n stacked: boolean;\n secondary: boolean;\n inverted: boolean;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-tab': ITabComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-tab-select': CustomEvent<void>;\n }\n}\n\n/**\n * @tag forge-tab\n * \n * @property {boolean} disabled - The disabled state of the tab.\n * @property {boolean} selected - The selected state of the tab.\n * @property {boolean} vertical - Controls whether the tab is vertical or horizontal.\n * @property {boolean} stacked - Controls whether the tab is taller to allow for slotted leading/trailing elements.\n * @property {boolean} secondary - Controls whether the tab is styled as secondary tab navigation.\n * @property {boolean} inverted - Controls whether the tab indicator is rendered on the opposite side of the tab.\n * \n * @attribute disabled - The disabled state of the tab.\n * @attribute selected - The selected state of the tab.\n * @attribute vertical - Controls whether the tab is vertical or horizontal.\n * @attribute stacked - Controls whether the tab is taller to allow for slotted leading/trailing elements.\n * @attribute secondary - Controls whether the tab is styled as secondary tab navigation.\n * \n * @event forge-tab-select - Dispatched when the tab is selected.\n * \n * @cssproperty --forge-tab-indicator-color - The color of the tab indicator. Defaults to the primary theme.\n * @cssproperty --forge-tab-indicator-height - The height of the tab indicator.\n * @cssproperty --forge-tab-indicator-shape - The shape of the tab indicator.\n * @cssproperty --forge-tab-container-color - The color of the tab container. Defaults to the surface theme.\n * @cssproperty --forge-tab-height - The height of the tab.\n * @cssproperty --forge-tab-shape - The shape of the tab.\n * @cssproperty --forge-tab-disabled-opacity - The opacity of the tab when disabled.\n * @cssproperty --forge-tab-active-focus-icon-color - The color of the icon when the tab is active and focused. Defaults to the primary theme.\n * @cssproperty --forge-tab-active-hover-icon-color - The color of the icon when the tab is active and hovered. Defaults to the primary theme.\n * @cssproperty --forge-tab-active-icon-color - The color of the icon when the tab is active. Defaults to the primary theme.\n * @cssproperty --forge-tab-active-pressed-icon-color - The color of the icon when the tab is active and pressed. Defaults to the primary theme.\n * @cssproperty --forge-tab-icon-size - The size of the icon.\n * @cssproperty --forge-tab-focus-icon-color - The color of the icon when the tab is focused. Defaults to the text-on-background theme.\n * @cssproperty --forge-tab-hover-icon-color - The color of the icon when the tab is hovered. Defaults to the text-on-background theme.\n * @cssproperty --forge-tab-icon-color - The color of the icon. Defaults to the text-on-background theme.\n * @cssproperty --forge-tab-pressed-icon-color - The color of the icon when the tab is pressed. Defaults to the text-on-background theme.\n * @cssproperty --forge-tab-active-focus-label-text-color - The color of the label text when the tab is active and focused. Defaults to the primary theme.\n * @cssproperty --forge-tab-active-hover-label-text-color - The color of the label text when the tab is active and hovered. Defaults to the primary theme.\n * @cssproperty --forge-tab-active-label-text-color - The color of the label text when the tab is active. Defaults to the primary theme.\n * @cssproperty --forge-tab-active-pressed-label-text-color - The color of the label text when the tab is active and pressed. Defaults to the primary theme.\n * @cssproperty --forge-tab-focus-label-text-color - The color of the label text when the tab is focused. Defaults to the text-on-background theme.\n * @cssproperty --forge-tab-hover-label-text-color - The color of the label text when the tab is hovered. Defaults to the text-on-background theme.\n * @cssproperty --forge-tab-label-text-color - The color of the label text. Defaults to the text-on-background theme.\n * @cssproperty --forge-tab-pressed-label-text-color - The color of the label text when the tab is pressed. Defaults to the text-on-background theme.\n * \n * @csspart container - The tab container.\n * @csspart content - The tab content container.\n * @csspart label - The tab label container.\n * @csspart indicator - The tab active indicator.\n */\n@CustomElement({\n name: TAB_CONSTANTS.elementName,\n dependencies: [\n FocusIndicatorComponent,\n StateLayerComponent\n ]\n})\nexport class TabComponent extends BaseComponent implements ITabComponent {\n public static get observedAttributes(): string[] {\n return [\n TAB_CONSTANTS.attributes.DISABLED,\n TAB_CONSTANTS.attributes.SELECTED,\n TAB_CONSTANTS.attributes.VERTICAL,\n TAB_CONSTANTS.attributes.STACKED,\n TAB_CONSTANTS.attributes.SECONDARY,\n TAB_CONSTANTS.attributes.INVERTED\n ];\n }\n\n private _foundation: TabFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new TabFoundation(new TabAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case TAB_CONSTANTS.attributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n case TAB_CONSTANTS.attributes.SELECTED:\n this.selected = coerceBoolean(newValue);\n break;\n case TAB_CONSTANTS.attributes.VERTICAL:\n this.vertical = coerceBoolean(newValue);\n break;\n case TAB_CONSTANTS.attributes.STACKED:\n this.stacked = coerceBoolean(newValue);\n break;\n case TAB_CONSTANTS.attributes.SECONDARY:\n this.secondary = coerceBoolean(newValue);\n break;\n case TAB_CONSTANTS.attributes.INVERTED:\n this.inverted = coerceBoolean(newValue);\n break;\n }\n }\n\n @FoundationProperty()\n public declare disabled: boolean;\n \n @FoundationProperty()\n public declare selected: boolean;\n\n @FoundationProperty()\n public declare vertical: boolean;\n\n @FoundationProperty()\n public declare stacked: boolean;\n\n @FoundationProperty()\n public declare secondary: boolean;\n\n @FoundationProperty()\n public declare inverted: boolean;\n}\n"],
5
- "mappings": "2YAEA,IAAMA,EAA2C,GAAGC,WAE9CC,EAAa,CACjB,SAAU,WACV,WAAY,aACZ,SAAU,WACV,QAAS,UACT,UAAW,YACX,UAAW,YACX,SAAU,WACV,cAAe,gBACf,eAAgB,gBAClB,EAEMC,EAAY,CAChB,UAAW,aACX,iBAAkB,oBAClB,aAAc,kBAChB,EAEMC,EAAU,CACd,cAAe,eACjB,EAEMC,EAAS,CACb,OAAQ,GAAGL,UACb,EAEMM,EAAU,CACd,cAAe,EACjB,EAEaC,EAAoB,CAC/B,WAAAL,EACA,YAAAF,EACA,OAAAK,EACA,UAAAF,EACA,QAAAC,EACA,QAAAE,CACF,EAEaE,EAAkB,IAAI,IAAI,CACrC,CAAC,UAAW,IAAI,IAAI,CAAC,OAAQ,KAAK,CAAC,CAAC,EACpC,CAAC,aAAc,IAAI,IAAI,CAAC,YAAa,YAAY,CAAC,CAAC,EACnD,CAAC,WAAY,IAAI,IAAI,CAAC,UAAW,WAAW,CAAC,CAAC,CAChD,CAAC,EC7CD,IAAMC,EAA2C,GAAGC,OAE9CC,EAAa,CACjB,SAAU,WACV,SAAU,WACV,SAAU,WACV,QAAS,UACT,UAAW,YACX,SAAU,UACZ,EAEMC,EAAY,CAChB,UAAW,YACb,EAEMC,EAAU,CACd,SAAU,UACZ,EAEMC,EAAS,CACb,OAAQ,GAAGL,UACb,EAEMM,EAAU,CACd,OAAQ,8BACV,EAEMC,EAAU,CACd,mBAAoB,GACtB,EAEaC,EAAgB,CAC3B,YAAAR,EACA,WAAAE,EACA,UAAAC,EACA,QAAAC,EACA,OAAAC,EACA,QAAAC,EACA,QAAAC,CACF,ECzBO,IAAME,EAAN,cAAyBC,CAAkD,CAIhF,YAAYC,EAA0B,CACpC,MAAMA,CAAS,EACf,KAAK,qBAAuBC,EAAiB,KAAK,WAAYC,EAAc,UAAU,SAAS,EAC/F,KAAK,mBAAqBD,EAAiB,KAAK,WAAYE,EAAsB,WAAW,CAC/F,CAEO,YAAmB,CACxB,KAAK,WAAW,SAAW,KAAK,WAAW,SAAW,EAAI,GAC1D,KAAK,WAAW,aAAa,OAAQ,KAAK,EAC1C,KAAK,WAAW,aAAa,gBAAiB,KAAK,WAAW,SAAW,OAAS,OAAO,CAC3F,CAEO,uBAAuBC,EAAcC,EAA+B,CACzE,KAAK,WAAW,iBAAiBD,EAAMC,CAAQ,CACjD,CAEO,YAAYC,EAAsB,CACvC,KAAK,mBAAmB,SAAWA,EACnC,KAAK,WAAW,SAAWA,EAAQ,GAAK,KAAK,WAAW,SAAW,EAAI,GACvE,KAAK,WAAW,aAAa,gBAAiB,OAAOA,CAAK,CAAC,EAC3DC,EAAgB,KAAK,WAAYD,EAAOJ,EAAc,WAAW,SAAU,OAAOI,CAAK,CAAC,CAC1F,CAEO,YAAYA,EAAsB,CACvC,KAAK,WAAW,SAAWA,EAAQ,EAAI,GACvC,KAAK,WAAW,aAAa,gBAAiB,OAAOA,CAAK,CAAC,CAC7D,CAEO,iBAAwB,CAC7B,KAAK,qBAAqB,cAAc,EAAE,QAAQE,GAAKA,EAAE,OAAO,CAAC,EACjE,IAAMC,EAAS,KAAK,cAAc,EAC9BA,GACF,KAAK,qBAAqB,QAAQA,EAAQ,CAAE,SAAUP,EAAc,QAAQ,mBAAoB,OAAQA,EAAc,QAAQ,MAAO,CAAC,CAE1I,CAEO,mBAA0B,CAC/B,KAAK,mBAAmB,cAAc,CACxC,CAEQ,eAAmC,CA5D7C,IAAAQ,EA6DI,IAAMC,EAAe,OAAO,WAAW,kCAAkC,EAAE,QAE3E,GAAI,CAAC,KAAK,WAAW,SACnB,OAAOA,EAAe,CAAC,CAAE,QAAS,CAAE,EAAG,CAAE,UAAW,MAAO,CAAC,EAAI,KAGlE,IAAMC,EAAiB,CAAC,EAClBC,EAAa,KAAK,WAAW,SAC7BC,EAAuB,KAAK,yBAAyB,EACrDC,GAAWL,EAAAI,GAAA,YAAAA,EAAsB,0BAAtB,KAAAJ,EAAiD,CAAC,EAC7DM,EAAUH,EAAaE,EAAS,IAAMA,EAAS,KAC/CE,EAAaJ,EAAaE,EAAS,OAASA,EAAS,MACrDG,EAAS,KAAK,qBAAqB,sBAAsB,EACzDC,EAAQN,EAAaK,EAAO,IAAMA,EAAO,KACzCE,EAAWP,EAAaK,EAAO,OAASA,EAAO,MAC/CG,EAAOR,EAAa,IAAM,IAC1BS,EAAQL,EAAaG,EAE3B,MAAI,CAACT,GAAgBK,IAAY,QAAaG,IAAU,QAAa,CAAC,MAAMG,CAAK,EAC/EV,EAAK,UAAY,YAAYS,MAASL,EAAUG,GAAO,QAAQ,CAAC,aAAaE,KAAQC,EAAM,QAAQ,CAAC,KAEpGV,EAAK,QAAU,EAGV,CAACA,EAAM,CAAE,UAAW,MAAO,CAAC,CACrC,CAEQ,0BAA+C,CACrD,IAAMW,EAASC,EAAc,KAAK,WAAYC,EAAkB,WAAW,EAC3E,GAAIF,EAAQ,CAEV,IAAMG,EADc,MAAM,KAAKH,EAAO,iBAAiBrB,EAAc,WAAW,CAAC,EACjD,KAAKyB,GAAOA,EAAI,aAAazB,EAAc,WAAW,QAAQ,CAAC,EAC/F,GAAIwB,EACF,OAAOzB,EAAiByB,EAAaxB,EAAc,UAAU,SAAS,EAG1E,OAAO,IACT,CACF,ECrFO,IAAM0B,EAAN,KAA8C,CAanD,YAAoBC,EAAuB,CAAvB,cAAAA,EAXpB,KAAQ,UAAY,GACpB,KAAQ,UAAY,GACpB,KAAQ,UAAY,GACpB,KAAQ,SAAW,GACnB,KAAQ,WAAa,GACrB,KAAQ,UAAY,GAOlB,KAAK,eAAiB,IAAM,KAAK,SAAS,EAC1C,KAAK,iBAAoBC,GAAuB,KAAK,WAAWA,CAAG,CACrE,CAEO,YAAmB,CACxB,KAAK,SAAS,WAAW,EACzB,KAAK,SAAS,uBAAuB,QAAS,KAAK,cAAc,EACjE,KAAK,SAAS,uBAAuB,UAAW,KAAK,gBAAgB,CACvE,CAEQ,UAAiB,CACnB,KAAK,WAAa,KAAK,WAG3B,KAAK,qBAAqB,CAC5B,CAEQ,WAAWA,EAA0B,CAC3C,GAAI,KAAK,WAAa,KAAK,UACzB,QAGqBA,EAAI,MAAQ,KAAOA,EAAI,MAAQ,WAEpDA,EAAI,eAAe,EACnB,KAAK,SAAS,kBAAkB,EAChC,KAAK,qBAAqB,EAE9B,CAEQ,sBAA6B,CACnC,KAAK,SAAS,cAAcC,EAAc,OAAO,OAAQ,CAAE,QAAS,GAAM,SAAU,EAAK,CAAC,CAC5F,CAEA,IAAW,UAAoB,CAC7B,OAAO,KAAK,SACd,CACA,IAAW,SAASC,EAAgB,CAC9B,KAAK,YAAcA,IACrB,KAAK,UAAYA,EACjB,KAAK,SAAS,YAAY,KAAK,SAAS,EACxC,KAAK,SAAS,oBAAoBD,EAAc,WAAW,SAAU,KAAK,SAAS,EAEvF,CAEA,IAAW,UAAoB,CAC7B,OAAO,KAAK,SACd,CACA,IAAW,SAASC,EAAgB,CAC9B,KAAK,YAAcA,IACrB,KAAK,UAAYA,EACjB,KAAK,SAAS,YAAY,KAAK,SAAS,EACxC,KAAK,SAAS,gBAAgB,EAC9B,KAAK,SAAS,oBAAoBD,EAAc,WAAW,SAAU,KAAK,SAAS,EAEvF,CAEA,IAAW,UAAoB,CAC7B,OAAO,KAAK,SACd,CACA,IAAW,SAASC,EAAgB,CAC9B,KAAK,YAAcA,IACrB,KAAK,UAAYA,EACjB,KAAK,SAAS,oBAAoBD,EAAc,WAAW,SAAU,KAAK,SAAS,EAEvF,CAEA,IAAW,SAAmB,CAC5B,OAAO,KAAK,QACd,CACA,IAAW,QAAQC,EAAgB,CAC7B,KAAK,WAAaA,IACpB,KAAK,SAAWA,EAChB,KAAK,SAAS,oBAAoBD,EAAc,WAAW,QAAS,KAAK,QAAQ,EAErF,CAEA,IAAW,WAAqB,CAC9B,OAAO,KAAK,UACd,CACA,IAAW,UAAUC,EAAgB,CAC/B,KAAK,aAAeA,IACtB,KAAK,WAAaA,EAClB,KAAK,SAAS,oBAAoBD,EAAc,WAAW,UAAW,KAAK,UAAU,EAEzF,CAEA,IAAW,UAAoB,CAC7B,OAAO,KAAK,SACd,CACA,IAAW,SAASC,EAAgB,CAC9B,KAAK,YAAcA,IACrB,KAAK,UAAYA,EACjB,KAAK,SAAS,oBAAoBD,EAAc,WAAW,SAAU,KAAK,SAAS,EAEvF,CACF,ECnHA,IAAME,EAAW,yeACXC,EAAS,8gRA4EFC,EAAN,cAA2BC,CAAuC,CAcvE,aAAc,CACZ,MAAM,EACNC,EAAqB,KAAMJ,EAAUC,CAAM,EAC3C,KAAK,YAAc,IAAII,EAAc,IAAIC,EAAW,IAAI,CAAC,CAC3D,CAjBA,WAAkB,oBAA+B,CAC/C,MAAO,CACLC,EAAc,WAAW,SACzBA,EAAc,WAAW,SACzBA,EAAc,WAAW,SACzBA,EAAc,WAAW,QACzBA,EAAc,WAAW,UACzBA,EAAc,WAAW,QAC3B,CACF,CAUO,mBAA0B,CAC/B,KAAK,YAAY,WAAW,CAC9B,CAEO,yBAAyBC,EAAcC,EAAkBC,EAAwB,CACtF,OAAQF,EAAM,CACZ,KAAKD,EAAc,WAAW,SAC5B,KAAK,SAAWI,EAAcD,CAAQ,EACtC,MACF,KAAKH,EAAc,WAAW,SAC5B,KAAK,SAAWI,EAAcD,CAAQ,EACtC,MACF,KAAKH,EAAc,WAAW,SAC5B,KAAK,SAAWI,EAAcD,CAAQ,EACtC,MACF,KAAKH,EAAc,WAAW,QAC5B,KAAK,QAAUI,EAAcD,CAAQ,EACrC,MACF,KAAKH,EAAc,WAAW,UAC5B,KAAK,UAAYI,EAAcD,CAAQ,EACvC,MACF,KAAKH,EAAc,WAAW,SAC5B,KAAK,SAAWI,EAAcD,CAAQ,EACtC,KACJ,CACF,CAmBF,EAhBiBE,EAAA,CADdC,EAAmB,GA/CTX,EAgDI,wBAGAU,EAAA,CADdC,EAAmB,GAlDTX,EAmDI,wBAGAU,EAAA,CADdC,EAAmB,GArDTX,EAsDI,wBAGAU,EAAA,CADdC,EAAmB,GAxDTX,EAyDI,uBAGAU,EAAA,CADdC,EAAmB,GA3DTX,EA4DI,yBAGAU,EAAA,CADdC,EAAmB,GA9DTX,EA+DI,wBA/DJA,EAANU,EAAA,CAPNE,EAAc,CACb,KAAMP,EAAc,YACpB,aAAc,CACZQ,EACAC,CACF,CACF,CAAC,GACYd",
4
+ "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}tab-bar`;\n\nconst attributes = {\n DISABLED: 'disabled',\n ACTIVE_TAB: 'active-tab',\n VERTICAL: 'vertical',\n STACKED: 'stacked',\n CLUSTERED: 'clustered',\n SECONDARY: 'secondary',\n INVERTED: 'inverted',\n AUTO_ACTIVATE: 'auto-activate',\n SCROLL_BUTTONS: 'scroll-buttons'\n};\n\nconst selectors = {\n CONTAINER: '.container',\n SCROLL_CONTAINER: '.scroll-container',\n DEFAULT_SLOT: 'slot:not([name])'\n};\n\nconst classes = {\n SCROLL_BUTTON: 'scroll-button'\n};\n\nconst events = {\n CHANGE: `${elementName}-change`\n};\n\nconst numbers = {\n SCROLL_MARGIN: 48\n};\n\nexport const TAB_BAR_CONSTANTS = {\n attributes,\n elementName,\n events,\n selectors,\n classes,\n numbers\n};\n\nexport const NAVIGATION_KEYS = new Map([\n ['default', new Set(['Home', 'End'])],\n ['horizontal', new Set(['ArrowLeft', 'ArrowRight'])],\n ['vertical', new Set(['ArrowUp', 'ArrowDown'])]\n]);\n", "import { COMPONENT_NAME_PREFIX } from '../../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}tab`;\n\nconst attributes = {\n DISABLED: 'disabled',\n SELECTED: 'selected',\n VERTICAL: 'vertical',\n STACKED: 'stacked',\n SECONDARY: 'secondary',\n INVERTED: 'inverted'\n};\n\nconst selectors = {\n INDICATOR: '.indicator'\n};\n\nconst classes = {\n SELECTED: 'selected'\n};\n\nconst events = {\n SELECT: `${elementName}-select`\n};\n\nconst strings = {\n EASING: 'cubic-bezier(0.4, 0, 0.2, 1)'\n};\n\nconst numbers = {\n ANIMATION_DURATION: 250\n};\n\nexport const TAB_CONSTANTS = {\n elementName,\n attributes,\n selectors,\n classes,\n events,\n strings,\n numbers\n};\n\n", "import { getShadowElement, requireParent, toggleAttribute } from '@tylertech/forge-core';\nimport { IStateLayerComponent, STATE_LAYER_CONSTANTS } from '../../state-layer';\nimport { BaseAdapter, IBaseAdapter } from '../../core/base/base-adapter';\nimport { TAB_BAR_CONSTANTS } from '../tab-bar/tab-bar-constants';\nimport type { ITabComponent } from './tab';\nimport { TAB_CONSTANTS } from './tab-constants';\n\nexport interface ITabAdapter extends IBaseAdapter {\n initialize(): void;\n addInteractionListener(type: string, listener: EventListener): void;\n setDisabled(value: boolean): void;\n setSelected(value: boolean): void;\n animateSelected(): void;\n animateStateLayer(): void;\n}\n\nexport class TabAdapter extends BaseAdapter<ITabComponent> implements ITabAdapter {\n private readonly _tabIndicatorElement: HTMLElement;\n private readonly _stateLayerElement: IStateLayerComponent;\n\n constructor(component: ITabComponent) {\n super(component);\n this._tabIndicatorElement = getShadowElement(this._component, TAB_CONSTANTS.selectors.INDICATOR);\n this._stateLayerElement = getShadowElement(this._component, STATE_LAYER_CONSTANTS.elementName) as IStateLayerComponent;\n }\n\n public initialize(): void {\n this._component.tabIndex = this._component.selected ? 0 : -1;\n this._component.setAttribute('role', 'tab');\n this._component.setAttribute('aria-selected', this._component.selected ? 'true' : 'false');\n }\n\n public addInteractionListener(type: string, listener: EventListener): void {\n this._component.addEventListener(type, listener);\n }\n\n public setDisabled(value: boolean): void {\n this._stateLayerElement.disabled = value;\n this._component.tabIndex = value ? -1 : this._component.selected ? 0 : -1;\n this._component.setAttribute('aria-disabled', String(value));\n toggleAttribute(this._component, value, TAB_CONSTANTS.attributes.DISABLED, String(value));\n }\n\n public setSelected(value: boolean): void {\n this._component.tabIndex = value ? 0 : -1;\n this._component.setAttribute('aria-selected', String(value));\n }\n\n public animateSelected(): void {\n this._tabIndicatorElement.getAnimations().forEach(a => a.cancel());\n const frames = this._getKeyframes();\n if (frames) {\n this._tabIndicatorElement.animate(frames, { duration: TAB_CONSTANTS.numbers.ANIMATION_DURATION, easing: TAB_CONSTANTS.strings.EASING });\n }\n }\n\n public animateStateLayer(): void {\n this._stateLayerElement.playAnimation();\n }\n\n private _getKeyframes(): Keyframe[] | null {\n const reduceMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n\n if (!this._component.selected) {\n return reduceMotion ? [{ opacity: 1 }, { transform: 'none' }] : null;\n }\n\n const from: Keyframe = {};\n const isVertical = this._component.vertical;\n const selectedTabIndicator = this._getSelectedTabIndicator();\n const fromRect = selectedTabIndicator?.getBoundingClientRect() ?? {} as DOMRect;\n const fromPos = isVertical ? fromRect.top : fromRect.left;\n const fromExtent = isVertical ? fromRect.height : fromRect.width;\n const toRect = this._tabIndicatorElement.getBoundingClientRect();\n const toPos = isVertical ? toRect.top : toRect.left;\n const toExtent = isVertical ? toRect.height : toRect.width;\n const axis = isVertical ? 'Y' : 'X';\n const scale = fromExtent / toExtent;\n\n if (!reduceMotion && fromPos !== undefined && toPos !== undefined && !isNaN(scale)) {\n from.transform = `translate${axis}(${(fromPos - toPos).toFixed(4)}px) scale${axis}(${scale.toFixed(4)})`;\n } else {\n from.opacity = 0;\n }\n\n return [from, { transform: 'none' }];\n }\n\n private _getSelectedTabIndicator(): HTMLElement | null {\n const tabsEl = requireParent(this._component, TAB_BAR_CONSTANTS.elementName);\n if (tabsEl) {\n const tabChildren = Array.from(tabsEl.querySelectorAll(TAB_CONSTANTS.elementName)) as ITabComponent[];\n const selectedTab = tabChildren.find(tab => tab.hasAttribute(TAB_CONSTANTS.attributes.SELECTED));\n if (selectedTab) {\n return getShadowElement(selectedTab, TAB_CONSTANTS.selectors.INDICATOR);\n }\n }\n return null;\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\n\nimport { ITabAdapter } from './tab-adapter';\nimport { TAB_CONSTANTS } from './tab-constants';\n\nexport interface ITabFoundation extends ICustomElementFoundation {\n disabled: boolean;\n selected: boolean;\n vertical: boolean;\n stacked: boolean;\n secondary: boolean;\n inverted: boolean;\n}\n\nexport class TabFoundation implements ITabFoundation {\n // State\n private _selected = false;\n private _disabled = false;\n private _vertical = false;\n private _stacked = false;\n private _secondary = false;\n private _inverted = false;\n\n // Listeners\n private _clickListener: EventListener;\n private _keydownListener: EventListener;\n\n constructor(private _adapter: ITabAdapter) {\n this._clickListener = () => this._onClick();\n this._keydownListener = (evt: KeyboardEvent) => this._onKeydown(evt);\n }\n\n public initialize(): void {\n this._adapter.initialize();\n this._adapter.addInteractionListener('click', this._clickListener);\n this._adapter.addInteractionListener('keydown', this._keydownListener);\n }\n\n private _onClick(): void {\n if (this._disabled || this._selected) {\n return;\n }\n this._dispatchSelectEvent();\n }\n\n private _onKeydown(evt: KeyboardEvent): void {\n if (this._disabled || this._selected) {\n return;\n }\n\n const isSelectionKey = evt.key === ' ' || evt.key === 'Enter';\n if (isSelectionKey) {\n evt.preventDefault();\n this._adapter.animateStateLayer();\n this._dispatchSelectEvent();\n }\n }\n\n private _dispatchSelectEvent(): void {\n this._adapter.emitHostEvent(TAB_CONSTANTS.events.SELECT, { bubbles: true, composed: true });\n }\n\n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(value: boolean) {\n if (this._disabled !== value) {\n this._disabled = value;\n this._adapter.setDisabled(this._disabled);\n this._adapter.toggleHostAttribute(TAB_CONSTANTS.attributes.DISABLED, this._disabled);\n }\n }\n\n public get selected(): boolean {\n return this._selected;\n }\n public set selected(value: boolean) {\n if (this._selected !== value) {\n this._selected = value;\n this._adapter.setSelected(this._selected);\n this._adapter.animateSelected();\n this._adapter.toggleHostAttribute(TAB_CONSTANTS.attributes.SELECTED, this._selected);\n }\n }\n\n public get vertical(): boolean {\n return this._vertical;\n }\n public set vertical(value: boolean) {\n if (this._vertical !== value) {\n this._vertical = value;\n this._adapter.toggleHostAttribute(TAB_CONSTANTS.attributes.VERTICAL, this._vertical);\n }\n }\n\n public get stacked(): boolean {\n return this._stacked;\n }\n public set stacked(value: boolean) {\n if (this._stacked !== value) {\n this._stacked = value;\n this._adapter.toggleHostAttribute(TAB_CONSTANTS.attributes.STACKED, this._stacked);\n }\n }\n\n public get secondary(): boolean {\n return this._secondary;\n }\n public set secondary(value: boolean) {\n if (this._secondary !== value) {\n this._secondary = value;\n this._adapter.toggleHostAttribute(TAB_CONSTANTS.attributes.SECONDARY, this._secondary);\n }\n }\n\n public get inverted(): boolean {\n return this._inverted;\n }\n public set inverted(value: boolean) {\n if (this._inverted !== value) {\n this._inverted = value;\n this._adapter.toggleHostAttribute(TAB_CONSTANTS.attributes.INVERTED, this._inverted);\n }\n }\n}\n", "import { CustomElement, attachShadowTemplate, coerceBoolean, FoundationProperty } from '@tylertech/forge-core';\n\nimport { TabAdapter } from './tab-adapter';\nimport { TabFoundation } from './tab-foundation';\nimport { TAB_CONSTANTS } from './tab-constants';\nimport { BaseComponent, IBaseComponent } from '../../core/base/base-component';\nimport { FocusIndicatorComponent } from '../../focus-indicator/focus-indicator';\nimport { StateLayerComponent } from '../../state-layer/state-layer';\n\nconst template = '<template><div class=\\\"forge-tab\\\" part=\\\"container\\\"><span class=\\\"content\\\" part=\\\"content\\\"><slot name=\\\"leading\\\"></slot><span class=\\\"label\\\" part=\\\"label\\\"><slot></slot></span><slot name=\\\"trailing\\\"></slot><span class=\\\"indicator\\\" part=\\\"indicator\\\"></span></span><forge-state-layer exportparts=\\\"surface:state-layer\\\" target=\\\":host\\\"></forge-state-layer><forge-focus-indicator part=\\\"focus-indicator\\\" target=\\\":host\\\" inward></forge-focus-indicator></div></template>';\nconst styles = ':host{display:-webkit-inline-box;display:inline-flex;outline:0;-webkit-tap-highlight-color:transparent;vertical-align:middle}:host([hidden]){display:none}.forge-tab{--_tab-active-color:var(--forge-tab-active-color, var(--forge-theme-primary, #3f51b5));--_tab-inactive-color:var(--forge-tab-inactive-color, var(--forge-theme-text-medium, rgba(0, 0, 0, 0.54)));--_tab-height:var(--forge-tab-height, 48px);--_tab-stacked-height:var(--forge-tab-stacked-height, 64px);--_tab-disabled-opacity:var(--forge-tab-disabled-opacity, 0.38);--_tab-indicator-color:var(--forge-tab-indicator-color, var(--_tab-active-color));--_tab-indicator-height:var(--forge-tab-indicator-height, 3px);--_tab-indicator-shape:var(--forge-tab-indicator-shape, 3px 3px 0 0);--_tab-vertical-indicator-shape:var(--forge-tab-indicator-shape, 3px 0 0 3px);--_tab-secondary-indicator-height:var(--forge-tab-indicator-height, 2px);--_tab-secondary-indicator-shape:var(--forge-tab-indicator-shape, 0);--_tab-inverted-indicator-shape:var(--forge-tab-indicator-shape, 0 0 3px 3px);--_tab-vertical-inverted-indicator-shape:var(--forge-tab-indicator-shape, 0 3px 3px 0);--_tab-container-color:var(--forge-tab-container-color, transparent);--_tab-container-height:var(--forge-tab-container-height, var(--_tab-height));--_tab-container-shape:var(--forge-tab-container-shape, 0);--_tab-content-height:var(--forge-tab-content-height, var(--_tab-height));--_tab-content-padding:var(--forge-tab-content-padding, var(--forge-spacing-xxsmall, 4px));--_tab-active-focus-icon-color:var(--forge-tab-active-focus-icon-color, var(--_tab-active-color));--_tab-active-hover-icon-color:var(--forge-tab-active-hover-icon-color, var(--_tab-active-color));--_tab-active-icon-color:var(--forge-tab-active-icon-color, var(--_tab-active-color));--_tab-active-pressed-icon-color:var(--forge-tab-active-pressed-icon-color, var(--_tab-active-color));--_tab-icon-size:var(--forge-tab-icon-size, 24px);--_tab-focus-icon-color:var(--forge-tab-focus-icon-color, var(--_tab-inactive-color));--_tab-hover-icon-color:var(--forge-tab-hover-icon-color, var(--_tab-inactive-color));--_tab-icon-color:var(--forge-tab-icon-color, var(--_tab-inactive-color));--_tab-pressed-icon-color:var(--forge-tab-pressed-icon-color, var(--_tab-inactive-color));--_tab-active-focus-label-text-color:var(--forge-tab-active-focus-label-text-color, var(--_tab-active-color));--_tab-active-hover-label-text-color:var(--forge-tab-active-hover-label-text-color, var(--_tab-active-color));--_tab-active-label-text-color:var(--forge-tab-active-label-text-color, var(--_tab-active-color));--_tab-active-pressed-label-text-color:var(--forge-tab-active-pressed-label-text-color, var(--_tab-active-color));--_tab-focus-label-text-color:var(--forge-tab-focus-label-text-color, var(--_tab-inactive-color));--_tab-hover-label-text-color:var(--forge-tab-hover-label-text-color, var(--_tab-inactive-color));--_tab-label-text-color:var(--forge-tab-label-text-color, var(--_tab-inactive-color));--_tab-pressed-label-text-color:var(--forge-tab-pressed-label-text-color, var(--_tab-inactive-color))}.forge-tab{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-button-font-family, var(--forge-typography-font-family, \\\"Roboto\\\", sans-serif));font-size:var(--forge-typography-button-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-button-font-size-scale, .875)));font-weight:var(--forge-typography-button-font-weight,500);line-height:var(--forge-typography-button-line-height, normal);letter-spacing:var(--forge-typography-button-letter-spacing, .0714285714em);text-transform:var(--forge-typography-button-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-button-text-decoration,inherit);text-decoration:var(--forge-typography-button-text-decoration,inherit);display:-webkit-inline-box;display:inline-flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;-webkit-box-sizing:border-box;box-sizing:border-box;border:none;outline:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-appearance:none;vertical-align:middle;background:0 0;text-decoration:none;width:100%;position:relative;padding:0;margin:0;z-index:0;background-color:var(--_tab-container-color);color:var(--_tab-label-text-color);min-height:var(--_tab-container-height)}.forge-tab::-moz-focus-inner{padding:0;border:0}.forge-tab ::slotted([slot=leading]),.forge-tab ::slotted([slot=trailing]){display:-webkit-inline-box;display:inline-flex;position:relative;-webkit-writing-mode:horizontal-tb;-ms-writing-mode:lr-tb;writing-mode:horizontal-tb;fill:currentColor;color:var(--_tab-icon-color);font-size:var(--_tab-icon-size);width:var(--_tab-icon-size);height:var(--_tab-icon-size)}.forge-tab:hover{color:var(--_tab-hover-label-text-color);cursor:pointer}.forge-tab:hover ::slotted([slot=leading]),.forge-tab:hover ::slotted([slot=trailing]){color:var(--_tab-hover-icon-color)}.forge-tab .content{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-inline-box;display:inline-flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;white-space:nowrap;-webkit-transition:150ms color linear;transition:150ms color linear;max-height:calc(var(--_tab-content-height) + 2 * var(--_tab-content-padding));min-height:var(--_tab-content-height);padding:var(--_tab-content-padding) calc(2 * var(--_tab-content-padding));gap:var(--_tab-content-padding)}.forge-tab .content .label{display:inline-block;line-height:1}.forge-tab .indicator{position:absolute;-webkit-box-sizing:border-box;box-sizing:border-box;z-index:-1;-webkit-transform-origin:bottom left;transform-origin:bottom left;background:var(--_tab-indicator-color);border-radius:var(--_tab-indicator-shape);height:var(--_tab-indicator-height);inset:auto 0 0;opacity:0}::slotted(*),:host{white-space:nowrap}forge-focus-indicator{--forge-focus-indicator-color:var(--_tab-active-color);--forge-focus-indicator-shape:8px}forge-state-layer{--forge-state-layer-color:var(--_tab-inactive-color)}:host(:focus) .forge-tab{color:var(--_tab-focus-label-text-color)}:host(:focus) .forge-tab ::slotted([slot=leading]),:host(:focus) .forge-tab ::slotted([slot=trailing]){color:var(--_tab-focus-icon-color)}:host(:active) .forge-tab{color:var(--_tab-pressed-label-text-color);outline:0}:host(:active) .forge-tab ::slotted([slot=leading]),:host(:active) .forge-tab ::slotted([slot=trailing]){color:var(--_tab-pressed-icon-color)}:host([disabled]){cursor:not-allowed}:host([disabled]) .forge-tab{opacity:var(--_tab-disabled-opacity);pointer-events:none}:host([selected]) .forge-tab{color:var(--_tab-active-label-text-color)}:host([selected]) .forge-tab ::slotted([slot=leading]),:host([selected]) .forge-tab ::slotted([slot=trailing]){color:var(--_tab-active-icon-color)}:host([selected]) .forge-tab:hover{color:var(--_tab-active-hover-label-text-color)}:host([selected]) .forge-tab:hover ::slotted([slot=leading]),:host([selected]) .forge-tab:hover ::slotted([slot=trailing]){color:var(--_tab-active-hover-icon-color)}:host([selected]) .forge-tab .indicator{opacity:1}:host([selected]) forge-state-layer{--forge-state-layer-color:var(--_tab-active-color)}:host([selected]:not([vertical])) forge-focus-indicator{--forge-focus-indicator-offset-block:0 calc(var(--_tab-indicator-height) + 1px)}:host([selected]:focus) .forge-tab{color:var(--_tab-active-focus-label-text-color)}:host([selected]:focus) .forge-tab ::slotted([slot=leading]),:host([selected]:focus) .forge-tab ::slotted([slot=trailing]){color:var(--_tab-active-focus-icon-color)}:host([selected]:active) .forge-tab{color:var(--_tab-active-pressed-label-text-color)}:host([selected]:active) .forge-tab ::slotted([slot=leading]),:host([selected]:active) .forge-tab ::slotted([slot=trailing]){color:var(--_tab-active-pressed-icon-color)}:host([stacked]) .forge-tab{--_tab-height:var(--_tab-stacked-height)}:host([stacked]) .forge-tab .content{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}:host([secondary]) .forge-tab{--_tab-indicator-height:var(--_tab-secondary-indicator-height);--_tab-indicator-shape:var(--_tab-secondary-indicator-shape)}:host([secondary]) .content{width:100%}:host([secondary]) .indicator{min-width:100%}:host([vertical]) .forge-tab{width:100%;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;border-bottom:none}:host([vertical]) .forge-tab .content{width:100%}:host([vertical]) .forge-tab .indicator{height:100%;min-width:var(--_tab-indicator-height);inset:0 0 0 auto}:host([vertical]) forge-focus-indicator{--forge-focus-indicator-offset-inline:0 calc(var(--_tab-indicator-height) + 1px)}:host([vertical][secondary]) .content{min-height:100%}:host([vertical]:not([secondary])) .forge-tab{--_tab-indicator-shape:var(--_tab-vertical-indicator-shape)}:host([inverted]) .forge-tab{--_tab-indicator-shape:var(--_tab-inverted-indicator-shape)}:host([inverted]) .indicator{inset:0 0 auto;-webkit-transform-origin:top left;transform-origin:top left}:host([inverted][vertical]) .forge-tab{--_tab-indicator-shape:var(--_tab-vertical-inverted-indicator-shape)}:host([inverted][vertical]) .indicator{inset:0 auto 0 0}';\n\nexport interface ITabComponent extends IBaseComponent {\n disabled: boolean;\n selected: boolean;\n vertical: boolean;\n stacked: boolean;\n secondary: boolean;\n inverted: boolean;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-tab': ITabComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-tab-select': CustomEvent<void>;\n }\n}\n\n/**\n * @tag forge-tab\n * \n * @property {boolean} disabled - The disabled state of the tab.\n * @property {boolean} selected - The selected state of the tab.\n * @property {boolean} vertical - Controls whether the tab is vertical or horizontal.\n * @property {boolean} stacked - Controls whether the tab is taller to allow for slotted leading/trailing elements.\n * @property {boolean} secondary - Controls whether the tab is styled as secondary tab navigation.\n * @property {boolean} inverted - Controls whether the tab indicator is rendered on the opposite side of the tab.\n * \n * @attribute disabled - The disabled state of the tab.\n * @attribute selected - The selected state of the tab.\n * @attribute vertical - Controls whether the tab is vertical or horizontal.\n * @attribute stacked - Controls whether the tab is taller to allow for slotted leading/trailing elements.\n * @attribute secondary - Controls whether the tab is styled as secondary tab navigation.\n * \n * @event forge-tab-select - Dispatched when the tab is selected.\n * \n * @cssproperty --forge-tab-indicator-color - The color of the tab indicator. Defaults to the primary theme.\n * @cssproperty --forge-tab-indicator-height - The height of the tab indicator.\n * @cssproperty --forge-tab-indicator-shape - The shape of the tab indicator.\n * @cssproperty --forge-tab-container-color - The color of the tab container. Defaults to the surface theme.\n * @cssproperty --forge-tab-height - The height of the tab.\n * @cssproperty --forge-tab-shape - The shape of the tab.\n * @cssproperty --forge-tab-disabled-opacity - The opacity of the tab when disabled.\n * @cssproperty --forge-tab-active-focus-icon-color - The color of the icon when the tab is active and focused. Defaults to the primary theme.\n * @cssproperty --forge-tab-active-hover-icon-color - The color of the icon when the tab is active and hovered. Defaults to the primary theme.\n * @cssproperty --forge-tab-active-icon-color - The color of the icon when the tab is active. Defaults to the primary theme.\n * @cssproperty --forge-tab-active-pressed-icon-color - The color of the icon when the tab is active and pressed. Defaults to the primary theme.\n * @cssproperty --forge-tab-icon-size - The size of the icon.\n * @cssproperty --forge-tab-focus-icon-color - The color of the icon when the tab is focused. Defaults to the text-on-background theme.\n * @cssproperty --forge-tab-hover-icon-color - The color of the icon when the tab is hovered. Defaults to the text-on-background theme.\n * @cssproperty --forge-tab-icon-color - The color of the icon. Defaults to the text-on-background theme.\n * @cssproperty --forge-tab-pressed-icon-color - The color of the icon when the tab is pressed. Defaults to the text-on-background theme.\n * @cssproperty --forge-tab-active-focus-label-text-color - The color of the label text when the tab is active and focused. Defaults to the primary theme.\n * @cssproperty --forge-tab-active-hover-label-text-color - The color of the label text when the tab is active and hovered. Defaults to the primary theme.\n * @cssproperty --forge-tab-active-label-text-color - The color of the label text when the tab is active. Defaults to the primary theme.\n * @cssproperty --forge-tab-active-pressed-label-text-color - The color of the label text when the tab is active and pressed. Defaults to the primary theme.\n * @cssproperty --forge-tab-focus-label-text-color - The color of the label text when the tab is focused. Defaults to the text-on-background theme.\n * @cssproperty --forge-tab-hover-label-text-color - The color of the label text when the tab is hovered. Defaults to the text-on-background theme.\n * @cssproperty --forge-tab-label-text-color - The color of the label text. Defaults to the text-on-background theme.\n * @cssproperty --forge-tab-pressed-label-text-color - The color of the label text when the tab is pressed. Defaults to the text-on-background theme.\n * \n * @csspart container - The tab container.\n * @csspart content - The tab content container.\n * @csspart label - The tab label container.\n * @csspart indicator - The tab active indicator.\n */\n@CustomElement({\n name: TAB_CONSTANTS.elementName,\n dependencies: [\n FocusIndicatorComponent,\n StateLayerComponent\n ]\n})\nexport class TabComponent extends BaseComponent implements ITabComponent {\n public static get observedAttributes(): string[] {\n return [\n TAB_CONSTANTS.attributes.DISABLED,\n TAB_CONSTANTS.attributes.SELECTED,\n TAB_CONSTANTS.attributes.VERTICAL,\n TAB_CONSTANTS.attributes.STACKED,\n TAB_CONSTANTS.attributes.SECONDARY,\n TAB_CONSTANTS.attributes.INVERTED\n ];\n }\n\n private _foundation: TabFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new TabFoundation(new TabAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case TAB_CONSTANTS.attributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n case TAB_CONSTANTS.attributes.SELECTED:\n this.selected = coerceBoolean(newValue);\n break;\n case TAB_CONSTANTS.attributes.VERTICAL:\n this.vertical = coerceBoolean(newValue);\n break;\n case TAB_CONSTANTS.attributes.STACKED:\n this.stacked = coerceBoolean(newValue);\n break;\n case TAB_CONSTANTS.attributes.SECONDARY:\n this.secondary = coerceBoolean(newValue);\n break;\n case TAB_CONSTANTS.attributes.INVERTED:\n this.inverted = coerceBoolean(newValue);\n break;\n }\n }\n\n @FoundationProperty()\n public declare disabled: boolean;\n \n @FoundationProperty()\n public declare selected: boolean;\n\n @FoundationProperty()\n public declare vertical: boolean;\n\n @FoundationProperty()\n public declare stacked: boolean;\n\n @FoundationProperty()\n public declare secondary: boolean;\n\n @FoundationProperty()\n public declare inverted: boolean;\n}\n"],
5
+ "mappings": "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",
6
6
  "names": ["elementName", "COMPONENT_NAME_PREFIX", "attributes", "selectors", "classes", "events", "numbers", "TAB_BAR_CONSTANTS", "NAVIGATION_KEYS", "elementName", "COMPONENT_NAME_PREFIX", "attributes", "selectors", "classes", "events", "strings", "numbers", "TAB_CONSTANTS", "TabAdapter", "BaseAdapter", "component", "getShadowElement", "TAB_CONSTANTS", "STATE_LAYER_CONSTANTS", "type", "listener", "value", "toggleAttribute", "a", "frames", "_a", "reduceMotion", "from", "isVertical", "selectedTabIndicator", "fromRect", "fromPos", "fromExtent", "toRect", "toPos", "toExtent", "axis", "scale", "tabsEl", "requireParent", "TAB_BAR_CONSTANTS", "selectedTab", "tab", "TabFoundation", "_adapter", "evt", "TAB_CONSTANTS", "value", "template", "styles", "TabComponent", "BaseComponent", "attachShadowTemplate", "TabFoundation", "TabAdapter", "TAB_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "__decorateClass", "FoundationProperty", "CustomElement", "FocusIndicatorComponent", "StateLayerComponent"]
7
7
  }
@@ -3,5 +3,5 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
- import{d as f}from"./chunk.GHR7T6U2.js";import{a as t}from"./chunk.GO5A4GKZ.js";import{e as E}from"./chunk.UV3WIHCM.js";import{a as m}from"./chunk.YOXZOPAC.js";import{a as r}from"./chunk.NVUMRW44.js";import{f as n,k as g}from"./chunk.I5SFCLDD.js";import{f as _,g as b,m as u,o as L,s as c,t as h,z as v}from"./chunk.K7FPXAFS.js";import{k as d}from"./chunk.J2M2MXP2.js";import{d as o}from"./chunk.M3QDAYD2.js";var S=class extends m{constructor(e){super(e);this._valueChangeListeners=[]}initialize(e){this._rootElement=n(this._component,e),this._labelSlot=n(this._component,"slot[name=label]"),this._leadingSlot=n(this._component,"slot[name=leading]"),this._trailingSlot=n(this._component,"slot[name=trailing]"),this._addonEndSlot=n(this._component,"slot[name=addon-end]"),this._inputElement=this._component.querySelector("input:not([type=checkbox]):not([type=radio])"),this.detectLabel()}destroy(){this._inputMutationObserver&&this._inputMutationObserver.disconnect()}hasLabel(){return!!this._labelElement}ensureSlottedLabel(){this._labelElement.slot="label"}ensureLabelOrder(){if(this._labelElement){let e=Array.from(this._component.children);e.length>1&&e.indexOf(this._labelElement)<e.indexOf(this._inputElement)&&this._component.appendChild(this._labelElement)}}addLabelSlotListener(e){this._labelSlot.addEventListener("slotchange",e)}removeLabelSlotListener(e){this._labelSlot&&this._labelSlot.removeEventListener("slotchange",e)}addLeadingSlotListener(e){this._leadingSlot.addEventListener("slotchange",e)}removeLeadingSlotListener(e){this._leadingSlot&&this._leadingSlot.removeEventListener("slotchange",e)}addTrailingSlotListener(e){this._trailingSlot.addEventListener("slotchange",e)}removeTrailingSlotListener(e){this._trailingSlot&&this._trailingSlot.removeEventListener("slotchange",e)}addAddonEndSlotListener(e){this._addonEndSlot.addEventListener("slotchange",e)}removeAddonEndSlotListener(e){this._addonEndSlot&&this._addonEndSlot.removeEventListener("slotchange",e)}addInputListener(e,s){this._inputElement.addEventListener(e,s)}removeInputListener(e,s){this._inputElement&&this._inputElement.removeEventListener(e,s)}setValueChangedListener(e,s){this.destroyValueChangeListener();let a=E(e,this._inputElement,"value",s);this._valueChangeListeners.push(a)}destroyValueChangeListener(){this._valueChangeListeners.forEach(e=>e())}detectLabel(){this._labelElement=this._component.querySelector("label")}initializeFloatingLabel(){return new f(this._labelElement)}inputHasValue(){return this._inputElement.value?this._inputElement.value.trim().length>0:!1}fieldHasValue(){return this.inputHasValue()}hasPlaceholder(){return this._inputElement.placeholder?this._inputElement.placeholder.trim().length>0:!1}inputHasFocus(e){return this._inputElement===e||this._inputElement===c(this._component.ownerDocument)}setLabelClass(e){this._labelElement&&this._labelElement.classList.add(e)}removeLabelClass(e){this._labelElement&&this._labelElement.classList.remove(e)}isLabelFloating(){return this._component.hasAttribute(t.attributes.HOST_LABEL_FLOATING)}setRoomy(e){h(this._rootElement,e,t.classes.ROOMY)}setDense(e){h(this._rootElement,e,t.classes.DENSE)}hasLeadingNodes(){return this._leadingSlot?this._leadingSlot.assignedNodes().length>0:!1}hasTrailingNodes(){return this._trailingSlot?this._trailingSlot.assignedNodes().length>0:!1}hasAddonEndNodes(){return this._addonEndSlot?this._addonEndSlot.assignedNodes().length>0:!1}setInputClass(e){this._inputElement.classList.add(e)}removeInputClass(e){this._inputElement.classList.remove(e)}setRootClass(e){_(e,this._rootElement)}removeRootClass(e){b(e,this._rootElement)}setInputAttributeObserver(e){this._inputMutationObserver=v(this._inputElement,e,t.observedInputAttributes)}isDisabled(){return this._inputElement.hasAttribute("disabled")}isReadonly(){return this._inputElement.hasAttribute("readonly")}getLabelWidth(e,s){return L(this._labelElement.innerText,{fontSize:e,fontFamily:s})}getLabelFontMetrics(){let e=getComputedStyle(this._labelElement);return{fontSize:parseInt(e.fontSize||"16",10),fontFamily:e.fontFamily||"Roboto"}}};var y=class{constructor(i){this._adapter=i;this._density="default";this._shape="default";this._invalid=!1;this._required=!1;this._floatLabelType="auto";this._isInitialized=!1;this._labelSlotListener=e=>this._onLabelSlotChanged(e),this._leadingSlotListener=e=>this._onLeadingSlotChanged(e),this._trailingSlotListener=e=>this._onTrailingSlotChanged(e),this._addonEndSlotListener=e=>this._onAddonEndSlotChanged(e),this._focusListener=e=>this._onFocus(e),this._blurListener=e=>this._onBlur(e),this._valueChangedListener=e=>this._onValueChanged(e),this._inputAttributeChangedListener=(e,s)=>this._onInputAttributeChanged(e,s)}initialize(){this._adapter.initialize(""),this._adapter.hasLabel()&&this._adapter.ensureSlottedLabel(),this._initializeLabel(),this._adapter.hasPlaceholder()&&(this._floatLabelType="always"),this._detectSlottedContent(),this._adapter.addLabelSlotListener(this._labelSlotListener),this._adapter.addLeadingSlotListener(this._leadingSlotListener),this._adapter.addTrailingSlotListener(this._trailingSlotListener),this._adapter.addAddonEndSlotListener(this._addonEndSlotListener),this._adapter.setValueChangedListener(this,this._valueChangedListener),this._adapter.addInputListener("focus",this._focusListener),this._adapter.addInputListener("blur",this._blurListener),this._adapter.setInputAttributeObserver(this._inputAttributeChangedListener),this._applyDensity(),this._setShapeType(),this._setValidity(),this._adapter.isDisabled()?this._adapter.setRootClass(t.classes.DISABLED):this._adapter.removeRootClass(t.classes.DISABLED),this._adapter.isReadonly()?this._adapter.setRootClass(t.classes.READONLY):this._adapter.removeRootClass(t.classes.READONLY),this._floatLabelType==="always"&&this.floatLabel(!0),this._isInitialized=!0}disconnect(){this._isInitialized=!1,this._adapter.destroy(),this._adapter.removeHostAttribute(t.attributes.HOST_LABEL_FLOATING),this._adapter.removeRootClass(t.classes.LABEL),this._floatingLabel&&(this._floatingLabel.destroy(),this._floatingLabel=void 0),this._adapter.removeLabelSlotListener(this._labelSlotListener),this._adapter.removeLeadingSlotListener(this._leadingSlotListener),this._adapter.removeTrailingSlotListener(this._trailingSlotListener),this._adapter.removeAddonEndSlotListener(this._addonEndSlotListener),this._adapter.removeInputListener("focus",this._focusListener),this._adapter.removeInputListener("blur",this._blurListener),this._adapter.destroyValueChangeListener()}get density(){return this._density}set density(i){if(this._density!==i){let e=this._density;this._density=i,this._isInitialized&&(this._applyDensity(),this._density==="dense"?this._destroyFloatingLabel({cancelFloat:!0}):e==="dense"&&this._initializeLabel()),this._adapter.setHostAttribute(t.attributes.DENSITY,this._density.toString())}}get floatLabelType(){return this._floatLabelType}set floatLabelType(i){this._floatLabelType!==i&&(this._floatLabelType=i,this._isInitialized&&this.floatLabel(this._floatLabelType==="always"),this._adapter.setHostAttribute(t.attributes.FLOAT_LABEL_TYPE,this._floatLabelType))}get shape(){return this._shape}set shape(i){this._shape!==i&&(this._shape=i,this._isInitialized&&this._setShapeType(),this._adapter.setHostAttribute(t.attributes.SHAPE,this._shape))}get invalid(){return this._invalid}set invalid(i){this._invalid!==i&&(this._invalid=i,this._isInitialized&&this._setValidity())}get required(){return this._required}set required(i){this._required!==i&&(this._required=i,this._isInitialized&&this._setValidity(),this._required?this._adapter.setHostAttribute(t.attributes.REQUIRED):this._adapter.removeHostAttribute(t.attributes.REQUIRED))}floatLabel(i){var e,s;if(((e=this._floatingLabel)==null?void 0:e.isFloating)===i||this._adapter.isLabelFloating()===i){i&&this._adapter.setHostAttribute(t.attributes.HOST_LABEL_FLOATING,"");return}if(!i&&this._floatLabelType==="always"){(s=this._floatingLabel)==null||s.float(!0,!0),this._adapter.setHostAttribute(t.attributes.HOST_LABEL_FLOATING,"");return}this._floatingLabel&&(this._floatingLabel.float(i,this._floatLabelType==="always"),i?(this._adapter.setInputClass(t.classes.INPUT_FOCUSED),this._adapter.setHostAttribute(t.attributes.HOST_LABEL_FLOATING,"")):(this._adapter.removeInputClass(t.classes.INPUT_FOCUSED),this._adapter.removeHostAttribute(t.attributes.HOST_LABEL_FLOATING)))}_onLabelSlotChanged(i){this._initializeLabel()}_onLeadingSlotChanged(i){this._detectLeadingContent()}_onTrailingSlotChanged(i){this._detectTrailingContent()}_onAddonEndSlotChanged(i){this._detectAddonEndContent()}_initializeLabel(){var i;(i=this._floatingLabel)==null||i.destroy(),this._adapter.detectLabel(),this._adapter.hasLabel()&&this._density!=="dense"?(this._floatingLabel=this._adapter.initializeFloatingLabel(),this._adapter.ensureLabelOrder(),this.floatLabel(this._floatLabelType==="always"||this._adapter.fieldHasValue()||this._adapter.hasPlaceholder()),this._adapter.setRootClass(t.classes.LABEL)):this._destroyFloatingLabel()}_destroyFloatingLabel({cancelFloat:i=!1}={}){var e;this._adapter.removeHostAttribute(t.attributes.HOST_LABEL_FLOATING),this._adapter.removeRootClass(t.classes.LABEL),(e=this._floatingLabel)==null||e.destroy({cancelFloat:i}),this._floatingLabel=void 0}_detectLeadingContent(){this._adapter.hasLeadingNodes()?this._adapter.setRootClass(t.classes.LEADING):this._adapter.removeRootClass(t.classes.LEADING)}_detectTrailingContent(){this._adapter.hasTrailingNodes()?this._adapter.setRootClass(t.classes.TRAILING):this._adapter.removeRootClass(t.classes.TRAILING)}_detectAddonEndContent(){this._adapter.hasAddonEndNodes()?this._adapter.setRootClass(t.classes.ADDON_END):this._adapter.removeRootClass(t.classes.ADDON_END)}_detectSlottedContent(){this._detectLeadingContent(),this._detectTrailingContent(),this._detectAddonEndContent()}_onFocus(i){this._adapter.setRootClass(t.classes.FOCUSED),this._adapter.setLabelClass(t.classes.LABEL_FOCUSED),this.floatLabel(!0)}_onBlur(i){this._adapter.inputHasFocus(i.relatedTarget)||(this._adapter.removeRootClass(t.classes.FOCUSED),this._adapter.removeLabelClass(t.classes.LABEL_FOCUSED),!this._adapter.fieldHasValue()&&!this._adapter.hasPlaceholder()&&(this.floatLabel(!1),this._adapter.removeHostAttribute(t.attributes.HOST_LABEL_FLOATING)))}_onValueChanged(i){this._adapter.fieldHasValue()?this.floatLabel(!0):!this._adapter.inputHasFocus()&&!this._adapter.hasPlaceholder()&&this.floatLabel(!1)}_onInputAttributeChanged(i,e){switch(this._adapter.isDisabled()?(this._adapter.setRootClass(t.classes.DISABLED),this._adapter.removeRootClass(t.classes.FOCUSED),this._adapter.removeInputClass(t.classes.INPUT_FOCUSED),this._adapter.removeLabelClass(t.classes.LABEL_FOCUSED),!this._adapter.fieldHasValue()&&!this._adapter.hasPlaceholder()&&this._floatingLabel&&this.floatLabel(!1)):this._adapter.removeRootClass(t.classes.DISABLED),this._adapter.isReadonly()?this._adapter.setRootClass(t.classes.READONLY):(this._adapter.removeRootClass(t.classes.READONLY),this._adapter.removeRootClass(t.classes.FOCUSED),this._adapter.removeInputClass(t.classes.INPUT_FOCUSED)),i){case"readonly":case"disabled":this._adapter.inputHasFocus()&&(this._adapter.setRootClass(t.classes.FOCUSED),this._adapter.setInputClass(t.classes.INPUT_FOCUSED),this._adapter.setLabelClass(t.classes.LABEL_FOCUSED));break;case"value":this._floatingLabel&&this.floatLabel(this._adapter.fieldHasValue());break;case"placeholder":if(this._floatingLabel){let s=!!e&&!!e.trim()||this._adapter.fieldHasValue();s!==this._floatingLabel.isFloating&&this.floatLabel(s)}break}}_setShapeType(){this._shape==="rounded"?this._adapter.setRootClass(t.classes.SHAPE_ROUNDED):this._adapter.removeRootClass(t.classes.SHAPE_ROUNDED)}_setValidity(){this._invalid?this._adapter.setRootClass(t.classes.INVALID):this._adapter.removeRootClass(t.classes.INVALID),this._required?this._adapter.setRootClass(t.classes.REQUIRED):this._adapter.removeRootClass(t.classes.REQUIRED)}_applyDensity(){this._adapter.setRoomy(this._density==="roomy"),this._adapter.setDense(this._density==="dense")}};var l=class extends g{constructor(){super()}static get observedAttributes(){return[t.attributes.DENSITY,t.attributes.FLOAT_LABEL_TYPE,t.attributes.SHAPE,t.attributes.INVALID,t.attributes.REQUIRED]}connectedCallback(){this.querySelector(t.selectors.INPUT)?this._initialize():u(this,t.selectors.INPUT).then(()=>this._initialize())}_initialize(){this._foundation.initialize()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(e,s,a){switch(e){case t.attributes.DENSITY:this.density=a;break;case t.attributes.FLOAT_LABEL_TYPE:this.floatLabelType=a;break;case t.attributes.SHAPE:this.shape=a;break;case t.attributes.INVALID:this.invalid=d(a);break;case t.attributes.REQUIRED:this.required=d(a);break}}floatLabel(e){this._foundation.floatLabel(e)}};o([r()],l.prototype,"density",2),o([r()],l.prototype,"floatLabelType",2),o([r()],l.prototype,"shape",2),o([r()],l.prototype,"invalid",2),o([r()],l.prototype,"required",2);export{S as a,y as b,l as c};
7
- //# sourceMappingURL=chunk.6VSFLBZF.js.map
6
+ import{d as f}from"./chunk.GHR7T6U2.js";import{a as t}from"./chunk.ZSZFWZAI.js";import{e as E}from"./chunk.UV3WIHCM.js";import{a as m}from"./chunk.LS7WRRT2.js";import{a as r}from"./chunk.NVUMRW44.js";import{f as n,k as g}from"./chunk.JAWV5Y5T.js";import{f as _,g as b,m as u,o as L,s as c,t as h,z as v}from"./chunk.K7FPXAFS.js";import{k as d}from"./chunk.J2M2MXP2.js";import{d as o}from"./chunk.M3QDAYD2.js";var S=class extends m{constructor(e){super(e);this._valueChangeListeners=[]}initialize(e){this._rootElement=n(this._component,e),this._labelSlot=n(this._component,"slot[name=label]"),this._leadingSlot=n(this._component,"slot[name=leading]"),this._trailingSlot=n(this._component,"slot[name=trailing]"),this._addonEndSlot=n(this._component,"slot[name=addon-end]"),this._inputElement=this._component.querySelector("input:not([type=checkbox]):not([type=radio])"),this.detectLabel()}destroy(){this._inputMutationObserver&&this._inputMutationObserver.disconnect()}hasLabel(){return!!this._labelElement}ensureSlottedLabel(){this._labelElement.slot="label"}ensureLabelOrder(){if(this._labelElement){let e=Array.from(this._component.children);e.length>1&&e.indexOf(this._labelElement)<e.indexOf(this._inputElement)&&this._component.appendChild(this._labelElement)}}addLabelSlotListener(e){this._labelSlot.addEventListener("slotchange",e)}removeLabelSlotListener(e){this._labelSlot&&this._labelSlot.removeEventListener("slotchange",e)}addLeadingSlotListener(e){this._leadingSlot.addEventListener("slotchange",e)}removeLeadingSlotListener(e){this._leadingSlot&&this._leadingSlot.removeEventListener("slotchange",e)}addTrailingSlotListener(e){this._trailingSlot.addEventListener("slotchange",e)}removeTrailingSlotListener(e){this._trailingSlot&&this._trailingSlot.removeEventListener("slotchange",e)}addAddonEndSlotListener(e){this._addonEndSlot.addEventListener("slotchange",e)}removeAddonEndSlotListener(e){this._addonEndSlot&&this._addonEndSlot.removeEventListener("slotchange",e)}addInputListener(e,s){this._inputElement.addEventListener(e,s)}removeInputListener(e,s){this._inputElement&&this._inputElement.removeEventListener(e,s)}setValueChangedListener(e,s){this.destroyValueChangeListener();let a=E(e,this._inputElement,"value",s);this._valueChangeListeners.push(a)}destroyValueChangeListener(){this._valueChangeListeners.forEach(e=>e())}detectLabel(){this._labelElement=this._component.querySelector("label")}initializeFloatingLabel(){return new f(this._labelElement)}inputHasValue(){return this._inputElement.value?this._inputElement.value.trim().length>0:!1}fieldHasValue(){return this.inputHasValue()}hasPlaceholder(){return this._inputElement.placeholder?this._inputElement.placeholder.trim().length>0:!1}inputHasFocus(e){return this._inputElement===e||this._inputElement===c(this._component.ownerDocument)}setLabelClass(e){this._labelElement&&this._labelElement.classList.add(e)}removeLabelClass(e){this._labelElement&&this._labelElement.classList.remove(e)}isLabelFloating(){return this._component.hasAttribute(t.attributes.HOST_LABEL_FLOATING)}setRoomy(e){h(this._rootElement,e,t.classes.ROOMY)}setDense(e){h(this._rootElement,e,t.classes.DENSE)}hasLeadingNodes(){return this._leadingSlot?this._leadingSlot.assignedNodes().length>0:!1}hasTrailingNodes(){return this._trailingSlot?this._trailingSlot.assignedNodes().length>0:!1}hasAddonEndNodes(){return this._addonEndSlot?this._addonEndSlot.assignedNodes().length>0:!1}setInputClass(e){this._inputElement.classList.add(e)}removeInputClass(e){this._inputElement.classList.remove(e)}setRootClass(e){_(e,this._rootElement)}removeRootClass(e){b(e,this._rootElement)}setInputAttributeObserver(e){this._inputMutationObserver=v(this._inputElement,e,t.observedInputAttributes)}isDisabled(){return this._inputElement.hasAttribute("disabled")}isReadonly(){return this._inputElement.hasAttribute("readonly")}getLabelWidth(e,s){return L(this._labelElement.innerText,{fontSize:e,fontFamily:s})}getLabelFontMetrics(){let e=getComputedStyle(this._labelElement);return{fontSize:parseInt(e.fontSize||"16",10),fontFamily:e.fontFamily||"Roboto"}}};var y=class{constructor(i){this._adapter=i;this._density="default";this._shape="default";this._invalid=!1;this._required=!1;this._floatLabelType="auto";this._isInitialized=!1;this._labelSlotListener=e=>this._onLabelSlotChanged(e),this._leadingSlotListener=e=>this._onLeadingSlotChanged(e),this._trailingSlotListener=e=>this._onTrailingSlotChanged(e),this._addonEndSlotListener=e=>this._onAddonEndSlotChanged(e),this._focusListener=e=>this._onFocus(e),this._blurListener=e=>this._onBlur(e),this._valueChangedListener=e=>this._onValueChanged(e),this._inputAttributeChangedListener=(e,s)=>this._onInputAttributeChanged(e,s)}initialize(){this._adapter.initialize(""),this._adapter.hasLabel()&&this._adapter.ensureSlottedLabel(),this._initializeLabel(),this._adapter.hasPlaceholder()&&(this._floatLabelType="always"),this._detectSlottedContent(),this._adapter.addLabelSlotListener(this._labelSlotListener),this._adapter.addLeadingSlotListener(this._leadingSlotListener),this._adapter.addTrailingSlotListener(this._trailingSlotListener),this._adapter.addAddonEndSlotListener(this._addonEndSlotListener),this._adapter.setValueChangedListener(this,this._valueChangedListener),this._adapter.addInputListener("focus",this._focusListener),this._adapter.addInputListener("blur",this._blurListener),this._adapter.setInputAttributeObserver(this._inputAttributeChangedListener),this._applyDensity(),this._setShapeType(),this._setValidity(),this._adapter.isDisabled()?this._adapter.setRootClass(t.classes.DISABLED):this._adapter.removeRootClass(t.classes.DISABLED),this._adapter.isReadonly()?this._adapter.setRootClass(t.classes.READONLY):this._adapter.removeRootClass(t.classes.READONLY),this._floatLabelType==="always"&&this.floatLabel(!0),this._isInitialized=!0}disconnect(){this._isInitialized=!1,this._adapter.destroy(),this._adapter.removeHostAttribute(t.attributes.HOST_LABEL_FLOATING),this._adapter.removeRootClass(t.classes.LABEL),this._floatingLabel&&(this._floatingLabel.destroy(),this._floatingLabel=void 0),this._adapter.removeLabelSlotListener(this._labelSlotListener),this._adapter.removeLeadingSlotListener(this._leadingSlotListener),this._adapter.removeTrailingSlotListener(this._trailingSlotListener),this._adapter.removeAddonEndSlotListener(this._addonEndSlotListener),this._adapter.removeInputListener("focus",this._focusListener),this._adapter.removeInputListener("blur",this._blurListener),this._adapter.destroyValueChangeListener()}get density(){return this._density}set density(i){if(this._density!==i){let e=this._density;this._density=i,this._isInitialized&&(this._applyDensity(),this._density==="dense"?this._destroyFloatingLabel({cancelFloat:!0}):e==="dense"&&this._initializeLabel()),this._adapter.setHostAttribute(t.attributes.DENSITY,this._density.toString())}}get floatLabelType(){return this._floatLabelType}set floatLabelType(i){this._floatLabelType!==i&&(this._floatLabelType=i,this._isInitialized&&this.floatLabel(this._floatLabelType==="always"),this._adapter.setHostAttribute(t.attributes.FLOAT_LABEL_TYPE,this._floatLabelType))}get shape(){return this._shape}set shape(i){this._shape!==i&&(this._shape=i,this._isInitialized&&this._setShapeType(),this._adapter.setHostAttribute(t.attributes.SHAPE,this._shape))}get invalid(){return this._invalid}set invalid(i){this._invalid!==i&&(this._invalid=i,this._isInitialized&&this._setValidity())}get required(){return this._required}set required(i){this._required!==i&&(this._required=i,this._isInitialized&&this._setValidity(),this._required?this._adapter.setHostAttribute(t.attributes.REQUIRED):this._adapter.removeHostAttribute(t.attributes.REQUIRED))}floatLabel(i){var e,s;if(((e=this._floatingLabel)==null?void 0:e.isFloating)===i||this._adapter.isLabelFloating()===i){i&&this._adapter.setHostAttribute(t.attributes.HOST_LABEL_FLOATING,"");return}if(!i&&this._floatLabelType==="always"){(s=this._floatingLabel)==null||s.float(!0,!0),this._adapter.setHostAttribute(t.attributes.HOST_LABEL_FLOATING,"");return}this._floatingLabel&&(this._floatingLabel.float(i,this._floatLabelType==="always"),i?(this._adapter.setInputClass(t.classes.INPUT_FOCUSED),this._adapter.setHostAttribute(t.attributes.HOST_LABEL_FLOATING,"")):(this._adapter.removeInputClass(t.classes.INPUT_FOCUSED),this._adapter.removeHostAttribute(t.attributes.HOST_LABEL_FLOATING)))}_onLabelSlotChanged(i){this._initializeLabel()}_onLeadingSlotChanged(i){this._detectLeadingContent()}_onTrailingSlotChanged(i){this._detectTrailingContent()}_onAddonEndSlotChanged(i){this._detectAddonEndContent()}_initializeLabel(){var i;(i=this._floatingLabel)==null||i.destroy(),this._adapter.detectLabel(),this._adapter.hasLabel()&&this._density!=="dense"?(this._floatingLabel=this._adapter.initializeFloatingLabel(),this._adapter.ensureLabelOrder(),this.floatLabel(this._floatLabelType==="always"||this._adapter.fieldHasValue()||this._adapter.hasPlaceholder()),this._adapter.setRootClass(t.classes.LABEL)):this._destroyFloatingLabel()}_destroyFloatingLabel({cancelFloat:i=!1}={}){var e;this._adapter.removeHostAttribute(t.attributes.HOST_LABEL_FLOATING),this._adapter.removeRootClass(t.classes.LABEL),(e=this._floatingLabel)==null||e.destroy({cancelFloat:i}),this._floatingLabel=void 0}_detectLeadingContent(){this._adapter.hasLeadingNodes()?this._adapter.setRootClass(t.classes.LEADING):this._adapter.removeRootClass(t.classes.LEADING)}_detectTrailingContent(){this._adapter.hasTrailingNodes()?this._adapter.setRootClass(t.classes.TRAILING):this._adapter.removeRootClass(t.classes.TRAILING)}_detectAddonEndContent(){this._adapter.hasAddonEndNodes()?this._adapter.setRootClass(t.classes.ADDON_END):this._adapter.removeRootClass(t.classes.ADDON_END)}_detectSlottedContent(){this._detectLeadingContent(),this._detectTrailingContent(),this._detectAddonEndContent()}_onFocus(i){this._adapter.setRootClass(t.classes.FOCUSED),this._adapter.setLabelClass(t.classes.LABEL_FOCUSED),this.floatLabel(!0)}_onBlur(i){this._adapter.inputHasFocus(i.relatedTarget)||(this._adapter.removeRootClass(t.classes.FOCUSED),this._adapter.removeLabelClass(t.classes.LABEL_FOCUSED),!this._adapter.fieldHasValue()&&!this._adapter.hasPlaceholder()&&(this.floatLabel(!1),this._adapter.removeHostAttribute(t.attributes.HOST_LABEL_FLOATING)))}_onValueChanged(i){this._adapter.fieldHasValue()?this.floatLabel(!0):!this._adapter.inputHasFocus()&&!this._adapter.hasPlaceholder()&&this.floatLabel(!1)}_onInputAttributeChanged(i,e){switch(this._adapter.isDisabled()?(this._adapter.setRootClass(t.classes.DISABLED),this._adapter.removeRootClass(t.classes.FOCUSED),this._adapter.removeInputClass(t.classes.INPUT_FOCUSED),this._adapter.removeLabelClass(t.classes.LABEL_FOCUSED),!this._adapter.fieldHasValue()&&!this._adapter.hasPlaceholder()&&this._floatingLabel&&this.floatLabel(!1)):this._adapter.removeRootClass(t.classes.DISABLED),this._adapter.isReadonly()?this._adapter.setRootClass(t.classes.READONLY):(this._adapter.removeRootClass(t.classes.READONLY),this._adapter.removeRootClass(t.classes.FOCUSED),this._adapter.removeInputClass(t.classes.INPUT_FOCUSED)),i){case"readonly":case"disabled":this._adapter.inputHasFocus()&&(this._adapter.setRootClass(t.classes.FOCUSED),this._adapter.setInputClass(t.classes.INPUT_FOCUSED),this._adapter.setLabelClass(t.classes.LABEL_FOCUSED));break;case"value":this._floatingLabel&&this.floatLabel(this._adapter.fieldHasValue());break;case"placeholder":if(this._floatingLabel){let s=!!e&&!!e.trim()||this._adapter.fieldHasValue();s!==this._floatingLabel.isFloating&&this.floatLabel(s)}break}}_setShapeType(){this._shape==="rounded"?this._adapter.setRootClass(t.classes.SHAPE_ROUNDED):this._adapter.removeRootClass(t.classes.SHAPE_ROUNDED)}_setValidity(){this._invalid?this._adapter.setRootClass(t.classes.INVALID):this._adapter.removeRootClass(t.classes.INVALID),this._required?this._adapter.setRootClass(t.classes.REQUIRED):this._adapter.removeRootClass(t.classes.REQUIRED)}_applyDensity(){this._adapter.setRoomy(this._density==="roomy"),this._adapter.setDense(this._density==="dense")}};var l=class extends g{constructor(){super()}static get observedAttributes(){return[t.attributes.DENSITY,t.attributes.FLOAT_LABEL_TYPE,t.attributes.SHAPE,t.attributes.INVALID,t.attributes.REQUIRED]}connectedCallback(){this.querySelector(t.selectors.INPUT)?this._initialize():u(this,t.selectors.INPUT).then(()=>this._initialize())}_initialize(){this._foundation.initialize()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(e,s,a){switch(e){case t.attributes.DENSITY:this.density=a;break;case t.attributes.FLOAT_LABEL_TYPE:this.floatLabelType=a;break;case t.attributes.SHAPE:this.shape=a;break;case t.attributes.INVALID:this.invalid=d(a);break;case t.attributes.REQUIRED:this.required=d(a);break}}floatLabel(e){this._foundation.floatLabel(e)}};o([r()],l.prototype,"density",2),o([r()],l.prototype,"floatLabelType",2),o([r()],l.prototype,"shape",2),o([r()],l.prototype,"invalid",2),o([r()],l.prototype,"required",2);export{S as a,y as b,l as c};
7
+ //# sourceMappingURL=chunk.CTZ3AWDW.js.map
@@ -3,5 +3,5 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
- function m(t,e){let n=t.toLowerCase().indexOf(e.toLowerCase());if(n!==-1){let i=n+e.length,o=document.createElement("span"),u=document.createElement("span");return u.style.fontWeight="bold",u.textContent=t.substring(n,i),o.appendChild(document.createTextNode(t.substring(0,n))),o.appendChild(u),o.appendChild(document.createTextNode(t.substring(i))),o}}function a(t,{capture:e=!0,pointerenter:r=!0,focusin:n=!0}={}){let i,o=()=>{typeof i=="function"&&i()};return{userInteraction:new Promise(l=>{let s={once:!0,capture:e},c=f=>{n&&t.removeEventListener("focusin",d,s),l(f)},d=f=>{r&&t.removeEventListener("pointerenter",c,s),l(f)};i=()=>{r&&t.removeEventListener("pointerenter",c,s),n&&t.removeEventListener("focusin",d,s)},r&&t.addEventListener("pointerenter",c,s),n&&t.addEventListener("focusin",d,s)}),destroy:o}}function p(t,e){return e===0?0:t/100*e}function E(t,e){return e===0?0:t*100/e}function b(t,e,r,n=0,i=100){let o=r-e,u=t-e;return!o||!u?n:u*i/o+n}function v(...t){return Math.min(...t.map(e=>e!=null?e:Number.POSITIVE_INFINITY))}function x(...t){return Math.max(...t.map(e=>e!=null?e:Number.NEGATIVE_INFINITY))}function L(t,e){if(!(t&&e))return!1;let r=t.getBoundingClientRect(),n=e.getBoundingClientRect();return!(r.top>n.bottom||r.right<n.left||r.bottom<n.top||r.left>n.right)}function h({x:t,y:e},r){if(!r)return!1;let{top:n,left:i,bottom:o,right:u}=r.getBoundingClientRect();return t>=i&&t<=u&&e>=n&&e<=o}function T(t,e){let r=null;if(e){let n=t.getRootNode();if(e===":host"&&n instanceof ShadowRoot)return n.host;r=n.querySelector(`#${e}`)}return r||t.parentElement}function g(t,e,r=!0){return r&&e.append(...t.childNodes),t.insertAdjacentElement("beforebegin",e),t.remove(),e}export{m as a,a as b,p as c,E as d,b as e,v as f,x as g,L as h,h as i,T as j,g as k};
7
- //# sourceMappingURL=chunk.YA3RDJCV.js.map
6
+ function a(t,e){let n=t.toLowerCase().indexOf(e.toLowerCase());if(n!==-1){let i=n+e.length,o=document.createElement("span"),u=document.createElement("span");return u.style.fontWeight="bold",u.textContent=t.substring(n,i),o.appendChild(document.createTextNode(t.substring(0,n))),o.appendChild(u),o.appendChild(document.createTextNode(t.substring(i))),o}}function m(t,{capture:e=!0,pointerenter:r=!0,focusin:n=!0}={}){let i,o=()=>{typeof i=="function"&&i()};return{userInteraction:new Promise(l=>{let s={once:!0,capture:e},c=f=>{n&&t.removeEventListener("focusin",d,s),l(f)},d=f=>{r&&t.removeEventListener("pointerenter",c,s),l(f)};i=()=>{r&&t.removeEventListener("pointerenter",c,s),n&&t.removeEventListener("focusin",d,s)},r&&t.addEventListener("pointerenter",c,s),n&&t.addEventListener("focusin",d,s)}),destroy:o}}function p(t,e){return e===0?0:t/100*e}function b(t,e){return e===0?0:t*100/e}function E(t,e,r,n=0,i=100){let o=r-e,u=t-e;return!o||!u?n:u*i/o+n}function x(...t){return Math.min(...t.map(e=>e!=null?e:Number.POSITIVE_INFINITY))}function v(...t){return Math.max(...t.map(e=>e!=null?e:Number.NEGATIVE_INFINITY))}function T(t,e){if(!(t&&e))return!1;let r=t.getBoundingClientRect(),n=e.getBoundingClientRect();return!(r.top>n.bottom||r.right<n.left||r.bottom<n.top||r.left>n.right)}function h({x:t,y:e},r){if(!r)return!1;let{top:n,left:i,bottom:o,right:u}=r.getBoundingClientRect();return t>=i&&t<=u&&e>=n&&e<=o}function L(t,e){let r=null;if(e){let n=t.getRootNode();if(e===":host"&&n instanceof ShadowRoot)return n.host;r=n.querySelector(`#${e}`)}return r||t.parentElement}function g(t,e,r=!0){return r&&e.append(...t.childNodes),t.insertAdjacentElement("beforebegin",e),t.remove(),e}export{a,m as b,p as c,b as d,E as e,x as f,v as g,T as h,h as i,L as j,g as k};
7
+ //# sourceMappingURL=chunk.CZOABXEQ.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/core/utils/utils.ts"],
4
- "sourcesContent": ["/**\n * Highlights text in the given label by converting it to HTML and using a `<span>` tag to show the highlighted text within the original label.\n * @param label The full text.\n * @param highlightText The text to highlight.\n */\nexport function highlightTextHTML(label: string, highlightText: string): HTMLElement | undefined {\n const text = label.toLowerCase();\n const startIndex = text.indexOf(highlightText.toLowerCase());\n\n if (startIndex !== -1) {\n const endIndex = startIndex + highlightText.length;\n const wrapperSpan = document.createElement('span');\n const highlightSpan = document.createElement('span');\n\n highlightSpan.style.fontWeight = 'bold';\n highlightSpan.textContent = label.substring(startIndex, endIndex);\n \n wrapperSpan.appendChild(document.createTextNode(label.substring(0, startIndex)));\n wrapperSpan.appendChild(highlightSpan);\n wrapperSpan.appendChild(document.createTextNode(label.substring(endIndex)));\n \n return wrapperSpan;\n }\n\n return undefined;\n}\n\n/**\n * Awaits user interaction on an element in the form of `pointerenter` or `focusin` to let a listener know\n * when the user has attempted to interact with the provided element.\n * \n * The listeners are only called once, and the other is removed after one of the listeners is called.\n * @param element The element to listen to.\n * @param capture Whether to use capturing listeners or not.\n * @returns A `Promise` that will be resolved when either of the listeners has executed.\n */\nexport function createUserInteractionListener(element: HTMLElement, { capture = true, pointerenter = true, focusin = true } = {}): { userInteraction: Promise<Event>; destroy: () => void } {\n let destroyFn: () => void;\n const destroy: () => void = () => {\n if (typeof destroyFn === 'function') {\n destroyFn();\n }\n };\n\n const userInteraction = new Promise<Event>(resolve => {\n const listenerOpts: EventListenerOptions & { once: boolean } = { once: true, capture };\n \n const handlePointerenter = (evt: Event): void => {\n if (focusin) {\n element.removeEventListener('focusin', handleFocusin, listenerOpts);\n }\n resolve(evt);\n };\n \n const handleFocusin = (evt: Event): void => {\n if (pointerenter) {\n element.removeEventListener('pointerenter', handlePointerenter, listenerOpts);\n }\n resolve(evt);\n };\n\n destroyFn = (): void => {\n if (pointerenter) {\n element.removeEventListener('pointerenter', handlePointerenter, listenerOpts);\n }\n if (focusin) {\n element.removeEventListener('focusin', handleFocusin, listenerOpts);\n }\n };\n\n if (pointerenter) {\n element.addEventListener('pointerenter', handlePointerenter, listenerOpts);\n }\n if (focusin) {\n element.addEventListener('focusin', handleFocusin, listenerOpts);\n }\n });\n\n return { userInteraction, destroy };\n}\n\n/**\n * Converts a percent value to pixels.\n * @param amount A percent value.\n * @param containerSize The size of the parent element along the relevant axis.\n * @returns A pixel value.\n */\nexport function percentToPixels(amount: number, containerSize: number): number {\n if (containerSize === 0) {\n return 0;\n }\n return amount / 100 * containerSize;\n}\n\n/**\n * Converts a pixel value to a percentage.\n * @param amount A pixel value.\n * @param containerSize The size of the parent element along the relevant axis.\n * @returns A percent value.\n */\nexport function pixelsToPercent(amount: number, containerSize: number): number {\n if (containerSize === 0) {\n return 0;\n }\n return amount * 100 / containerSize;\n}\n\n/**\n * Scales a value from one range to another.\n * @param value The original number value.\n * @param fromMin The lower bound of the input range.\n * @param fromMax The upper bound of the input range.\n * @param toMin The lower bound of the output range (defaults to 0).\n * @param toMax The lower bound of the output range (defaults to 100).\n * @returns A value mapped to the output range.\n */\nexport function scaleValue(value: number, fromMin: number, fromMax: number, toMin = 0, toMax = 100): number {\n const range = fromMax - fromMin;\n const adjustedValue = value - fromMin;\n if (!range || !adjustedValue) {\n return toMin;\n }\n return adjustedValue * toMax / range + toMin;\n}\n\n/**\n * Returns the min of a set of numbers where some values may be undefined.\n * @param args `number` or `undefined` values to compare.\n * @returns The min value or `Number.POSITIVE_INFINITY` if all values are `undefined`.\n */\nexport function safeMin(...args: (number | undefined)[]): number {\n return Math.min(...args.map(arg => arg ?? Number.POSITIVE_INFINITY));\n}\n\n/**\n * Returns the max of a set of numbers where some values may be undefined.\n * @param args `number` or `undefined` values to compare.\n * @returns The max value or `Number.NEGATIVE_INFINITY` if all values are `undefined`.\n */\nexport function safeMax(...args: (number | undefined)[]): number {\n return Math.max(...args.map(arg => arg ?? Number.NEGATIVE_INFINITY));\n}\n\n/**\n * Determines if two elements are overlapping.\n * @param elA {Element | null}\n * @param elB {Element | null}\n * @returns \n */\nexport function elementsOverlapping(elA: Element | null, elB: Element | null): boolean {\n if (!(elA && elB)) {\n return false;\n }\n const a = elA.getBoundingClientRect();\n const b = elB.getBoundingClientRect();\n return !(a.top > b.bottom || a.right < b.left || a.bottom < b.top || a.left > b.right);\n}\n\n/**\n * Determines if a pointer event is over an element.\n * @param event {PointerEvent} The pointer event to test.\n * @param element {HTMElement} The element to test against.\n * @returns \n */\nexport function isPointerOverElement({ x, y }: { x: number; y: number }, element: HTMLElement | null): boolean {\n if (!element) {\n return false;\n }\n const { top, left, bottom, right } = element.getBoundingClientRect();\n return x >= left && x <= right && y >= top && y <= bottom;\n}\n\n/**\n * Attempts to locate a target element based on a heuristic.\n * \n * We use the following heuristic for locating the target element:\n * - If an id is set, we use that value to query the DOM for the target element\n * - If id is set to `:host`, we use the host element from within a shadow tree (only if the root node is a ShadowRoot instance)\n * - If an id is set but the querySelector returns null, we use the parent element\n * - If an id is not set, we use the parent element\n * @param value {string | null} - A selector string to query the DOM for the target element\n */\nexport function locateTargetHeuristic(element: HTMLElement, id?: string | null): HTMLElement | null {\n let targetEl: HTMLElement | null = null;\n\n if (id) {\n const rootNode = element.getRootNode() as Document | ShadowRoot;\n\n // Special case handling for a `:host` selector to easily target a host element\n // from within a shadow tree, given that this is a very common scenario\n if (id === ':host' && rootNode instanceof ShadowRoot) {\n return rootNode.host as HTMLElement;\n }\n\n targetEl = rootNode.querySelector(`#${id}`);\n }\n\n if (!targetEl) {\n return element.parentElement;\n }\n\n return targetEl;\n}\n\n/**\n * Replaces an existing element with a new element, while optionally moving the children of the old element into the new element.\n * @param oldElement The element to replace.\n * @param newElement The element to replace with.\n * @param preserveChildren Whether or not to preserve the children of the old element in the new element.\n * @returns The new element.\n */\nexport function replaceElement(oldElement: HTMLElement, newElement: HTMLElement, preserveChildren = true): HTMLElement {\n if (preserveChildren) {\n newElement.append(...oldElement.childNodes);\n }\n oldElement.insertAdjacentElement('beforebegin', newElement);\n oldElement.remove();\n return newElement;\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/**\n * Highlights text in the given label by converting it to HTML and using a `<span>` tag to show the highlighted text within the original label.\n * @param label The full text.\n * @param highlightText The text to highlight.\n */\nexport function highlightTextHTML(label: string, highlightText: string): HTMLElement | undefined {\n const text = label.toLowerCase();\n const startIndex = text.indexOf(highlightText.toLowerCase());\n\n if (startIndex !== -1) {\n const endIndex = startIndex + highlightText.length;\n const wrapperSpan = document.createElement('span');\n const highlightSpan = document.createElement('span');\n\n highlightSpan.style.fontWeight = 'bold';\n highlightSpan.textContent = label.substring(startIndex, endIndex);\n \n wrapperSpan.appendChild(document.createTextNode(label.substring(0, startIndex)));\n wrapperSpan.appendChild(highlightSpan);\n wrapperSpan.appendChild(document.createTextNode(label.substring(endIndex)));\n \n return wrapperSpan;\n }\n\n return undefined;\n}\n\n/**\n * Awaits user interaction on an element in the form of `pointerenter` or `focusin` to let a listener know\n * when the user has attempted to interact with the provided element.\n * \n * The listeners are only called once, and the other is removed after one of the listeners is called.\n * @param element The element to listen to.\n * @param capture Whether to use capturing listeners or not.\n * @returns A `Promise` that will be resolved when either of the listeners has executed.\n */\nexport function createUserInteractionListener(element: HTMLElement, { capture = true, pointerenter = true, focusin = true } = {}): { userInteraction: Promise<Event>; destroy: () => void } {\n let destroyFn: () => void;\n const destroy: () => void = () => {\n if (typeof destroyFn === 'function') {\n destroyFn();\n }\n };\n\n const userInteraction = new Promise<Event>(resolve => {\n const listenerOpts: EventListenerOptions & { once: boolean } = { once: true, capture };\n \n const handlePointerenter = (evt: Event): void => {\n if (focusin) {\n element.removeEventListener('focusin', handleFocusin, listenerOpts);\n }\n resolve(evt);\n };\n \n const handleFocusin = (evt: Event): void => {\n if (pointerenter) {\n element.removeEventListener('pointerenter', handlePointerenter, listenerOpts);\n }\n resolve(evt);\n };\n\n destroyFn = (): void => {\n if (pointerenter) {\n element.removeEventListener('pointerenter', handlePointerenter, listenerOpts);\n }\n if (focusin) {\n element.removeEventListener('focusin', handleFocusin, listenerOpts);\n }\n };\n\n if (pointerenter) {\n element.addEventListener('pointerenter', handlePointerenter, listenerOpts);\n }\n if (focusin) {\n element.addEventListener('focusin', handleFocusin, listenerOpts);\n }\n });\n\n return { userInteraction, destroy };\n}\n\n/**\n * Converts a percent value to pixels.\n * @param amount A percent value.\n * @param containerSize The size of the parent element along the relevant axis.\n * @returns A pixel value.\n */\nexport function percentToPixels(amount: number, containerSize: number): number {\n if (containerSize === 0) {\n return 0;\n }\n return amount / 100 * containerSize;\n}\n\n/**\n * Converts a pixel value to a percentage.\n * @param amount A pixel value.\n * @param containerSize The size of the parent element along the relevant axis.\n * @returns A percent value.\n */\nexport function pixelsToPercent(amount: number, containerSize: number): number {\n if (containerSize === 0) {\n return 0;\n }\n return amount * 100 / containerSize;\n}\n\n/**\n * Scales a value from one range to another.\n * @param value The original number value.\n * @param fromMin The lower bound of the input range.\n * @param fromMax The upper bound of the input range.\n * @param toMin The lower bound of the output range (defaults to 0).\n * @param toMax The lower bound of the output range (defaults to 100).\n * @returns A value mapped to the output range.\n */\nexport function scaleValue(value: number, fromMin: number, fromMax: number, toMin = 0, toMax = 100): number {\n const range = fromMax - fromMin;\n const adjustedValue = value - fromMin;\n if (!range || !adjustedValue) {\n return toMin;\n }\n return adjustedValue * toMax / range + toMin;\n}\n\n/**\n * Returns the min of a set of numbers where some values may be undefined.\n * @param args `number` or `undefined` values to compare.\n * @returns The min value or `Number.POSITIVE_INFINITY` if all values are `undefined`.\n */\nexport function safeMin(...args: (number | undefined)[]): number {\n return Math.min(...args.map(arg => arg ?? Number.POSITIVE_INFINITY));\n}\n\n/**\n * Returns the max of a set of numbers where some values may be undefined.\n * @param args `number` or `undefined` values to compare.\n * @returns The max value or `Number.NEGATIVE_INFINITY` if all values are `undefined`.\n */\nexport function safeMax(...args: (number | undefined)[]): number {\n return Math.max(...args.map(arg => arg ?? Number.NEGATIVE_INFINITY));\n}\n\n/**\n * Determines if two elements are overlapping.\n * @param elA {Element | null}\n * @param elB {Element | null}\n * @returns \n */\nexport function elementsOverlapping(elA: Element | null, elB: Element | null): boolean {\n if (!(elA && elB)) {\n return false;\n }\n const a = elA.getBoundingClientRect();\n const b = elB.getBoundingClientRect();\n return !(a.top > b.bottom || a.right < b.left || a.bottom < b.top || a.left > b.right);\n}\n\n/**\n * Determines if a pointer event is over an element.\n * @param event {PointerEvent} The pointer event to test.\n * @param element {HTMElement} The element to test against.\n * @returns \n */\nexport function isPointerOverElement({ x, y }: { x: number; y: number }, element: HTMLElement | null): boolean {\n if (!element) {\n return false;\n }\n const { top, left, bottom, right } = element.getBoundingClientRect();\n return x >= left && x <= right && y >= top && y <= bottom;\n}\n\n/**\n * Attempts to locate a target element based on a heuristic.\n * \n * We use the following heuristic for locating the target element:\n * - If an id is set, we use that value to query the DOM for the target element\n * - If id is set to `:host`, we use the host element from within a shadow tree (only if the root node is a ShadowRoot instance)\n * - If an id is set but the querySelector returns null, we use the parent element\n * - If an id is not set, we use the parent element\n * @param value {string | null} - A selector string to query the DOM for the target element\n */\nexport function locateTargetHeuristic(element: HTMLElement, id?: string | null): HTMLElement | null {\n let targetEl: HTMLElement | null = null;\n\n if (id) {\n const rootNode = element.getRootNode() as Document | ShadowRoot;\n\n // Special case handling for a `:host` selector to easily target a host element\n // from within a shadow tree, given that this is a very common scenario\n if (id === ':host' && rootNode instanceof ShadowRoot) {\n return rootNode.host as HTMLElement;\n }\n\n targetEl = rootNode.querySelector(`#${id}`);\n }\n\n if (!targetEl) {\n return element.parentElement;\n }\n\n return targetEl;\n}\n\n/**\n * Replaces an existing element with a new element, while optionally moving the children of the old element into the new element.\n * @param oldElement The element to replace.\n * @param newElement The element to replace with.\n * @param preserveChildren Whether or not to preserve the children of the old element in the new element.\n * @returns The new element.\n */\nexport function replaceElement<T extends HTMLElement>(oldElement: HTMLElement, newElement: T, preserveChildren = true): T {\n if (preserveChildren) {\n newElement.append(...oldElement.childNodes);\n }\n oldElement.insertAdjacentElement('beforebegin', newElement);\n oldElement.remove();\n return newElement;\n}\n"],
5
+ "mappings": "AAKO,SAASA,EAAkBC,EAAeC,EAAgD,CAE/F,IAAMC,EADOF,EAAM,YAAY,EACP,QAAQC,EAAc,YAAY,CAAC,EAE3D,GAAIC,IAAe,GAAI,CACrB,IAAMC,EAAWD,EAAaD,EAAc,OACtCG,EAAc,SAAS,cAAc,MAAM,EAC3CC,EAAgB,SAAS,cAAc,MAAM,EAEnD,OAAAA,EAAc,MAAM,WAAa,OACjCA,EAAc,YAAcL,EAAM,UAAUE,EAAYC,CAAQ,EAEhEC,EAAY,YAAY,SAAS,eAAeJ,EAAM,UAAU,EAAGE,CAAU,CAAC,CAAC,EAC/EE,EAAY,YAAYC,CAAa,EACrCD,EAAY,YAAY,SAAS,eAAeJ,EAAM,UAAUG,CAAQ,CAAC,CAAC,EAEnEC,EAIX,CAWO,SAASE,EAA8BC,EAAsB,CAAE,QAAAC,EAAU,GAAM,aAAAC,EAAe,GAAM,QAAAC,EAAU,EAAK,EAAI,CAAC,EAA6D,CAC1L,IAAIC,EACEC,EAAsB,IAAM,CAC5B,OAAOD,GAAc,YACvBA,EAAU,CAEd,EAoCA,MAAO,CAAE,gBAlCe,IAAI,QAAeE,GAAW,CACpD,IAAMC,EAAyD,CAAE,KAAM,GAAM,QAAAN,CAAQ,EAE/EO,EAAsBC,GAAqB,CAC3CN,GACFH,EAAQ,oBAAoB,UAAWU,EAAeH,CAAY,EAEpED,EAAQG,CAAG,CACb,EAEMC,EAAiBD,GAAqB,CACtCP,GACFF,EAAQ,oBAAoB,eAAgBQ,EAAoBD,CAAY,EAE9ED,EAAQG,CAAG,CACb,EAEAL,EAAY,IAAY,CAClBF,GACFF,EAAQ,oBAAoB,eAAgBQ,EAAoBD,CAAY,EAE1EJ,GACFH,EAAQ,oBAAoB,UAAWU,EAAeH,CAAY,CAEtE,EAEIL,GACFF,EAAQ,iBAAiB,eAAgBQ,EAAoBD,CAAY,EAEvEJ,GACFH,EAAQ,iBAAiB,UAAWU,EAAeH,CAAY,CAEnE,CAAC,EAEyB,QAAAF,CAAQ,CACpC,CAQO,SAASM,EAAgBC,EAAgBC,EAA+B,CAC7E,OAAIA,IAAkB,EACb,EAEFD,EAAS,IAAMC,CACxB,CAQO,SAASC,EAAgBF,EAAgBC,EAA+B,CAC7E,OAAIA,IAAkB,EACb,EAEFD,EAAS,IAAMC,CACxB,CAWO,SAASE,EAAWC,EAAeC,EAAiBC,EAAiBC,EAAQ,EAAGC,EAAQ,IAAa,CAC1G,IAAMC,EAAQH,EAAUD,EAClBK,EAAgBN,EAAQC,EAC9B,MAAI,CAACI,GAAS,CAACC,EACNH,EAEFG,EAAgBF,EAAQC,EAAQF,CACzC,CAOO,SAASI,KAAWC,EAAsC,CAC/D,OAAO,KAAK,IAAI,GAAGA,EAAK,IAAIC,GAAOA,GAAA,KAAAA,EAAO,OAAO,iBAAiB,CAAC,CACrE,CAOO,SAASC,KAAWF,EAAsC,CAC/D,OAAO,KAAK,IAAI,GAAGA,EAAK,IAAIC,GAAOA,GAAA,KAAAA,EAAO,OAAO,iBAAiB,CAAC,CACrE,CAQO,SAASE,EAAoBC,EAAqBC,EAA8B,CACrF,GAAI,EAAED,GAAOC,GACX,MAAO,GAET,IAAMC,EAAIF,EAAI,sBAAsB,EAC9BG,EAAIF,EAAI,sBAAsB,EACpC,MAAO,EAAEC,EAAE,IAAMC,EAAE,QAAUD,EAAE,MAAQC,EAAE,MAAQD,EAAE,OAASC,EAAE,KAAOD,EAAE,KAAOC,EAAE,MAClF,CAQO,SAASC,EAAqB,CAAE,EAAAC,EAAG,EAAAC,CAAE,EAA6BlC,EAAsC,CAC7G,GAAI,CAACA,EACH,MAAO,GAET,GAAM,CAAE,IAAAmC,EAAK,KAAAC,EAAM,OAAAC,EAAQ,MAAAC,CAAM,EAAItC,EAAQ,sBAAsB,EACnE,OAAOiC,GAAKG,GAAQH,GAAKK,GAASJ,GAAKC,GAAOD,GAAKG,CACrD,CAYO,SAASE,EAAsBvC,EAAsBwC,EAAwC,CAClG,IAAIC,EAA+B,KAEnC,GAAID,EAAI,CACN,IAAME,EAAW1C,EAAQ,YAAY,EAIrC,GAAIwC,IAAO,SAAWE,aAAoB,WACxC,OAAOA,EAAS,KAGlBD,EAAWC,EAAS,cAAc,IAAIF,GAAI,EAG5C,OAAKC,GACIzC,EAAQ,aAInB,CASO,SAAS2C,EAAsCC,EAAyBC,EAAeC,EAAmB,GAAS,CACxH,OAAIA,GACFD,EAAW,OAAO,GAAGD,EAAW,UAAU,EAE5CA,EAAW,sBAAsB,cAAeC,CAAU,EAC1DD,EAAW,OAAO,EACXC,CACT",
6
6
  "names": ["highlightTextHTML", "label", "highlightText", "startIndex", "endIndex", "wrapperSpan", "highlightSpan", "createUserInteractionListener", "element", "capture", "pointerenter", "focusin", "destroyFn", "destroy", "resolve", "listenerOpts", "handlePointerenter", "evt", "handleFocusin", "percentToPixels", "amount", "containerSize", "pixelsToPercent", "scaleValue", "value", "fromMin", "fromMax", "toMin", "toMax", "range", "adjustedValue", "safeMin", "args", "arg", "safeMax", "elementsOverlapping", "elA", "elB", "a", "b", "isPointerOverElement", "x", "y", "top", "left", "bottom", "right", "locateTargetHeuristic", "id", "targetEl", "rootNode", "replaceElement", "oldElement", "newElement", "preserveChildren"]
7
7
  }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import{a as I}from"./chunk.YKZ25J6B.js";import{a as S}from"./chunk.UWZWXNTW.js";import{a as b}from"./chunk.6YPD6CQM.js";import{a as p}from"./chunk.GT3VPSXY.js";import{a as O}from"./chunk.LEVFMI2Q.js";import{b as R}from"./chunk.IT66AOX7.js";import{f as h,v as g,w as D}from"./chunk.K7FPXAFS.js";import{i as f}from"./chunk.J2M2MXP2.js";import{a as A,b as _}from"./chunk.M3QDAYD2.js";var u=`${R}calendar`,B={ALLOW_SINGLE_DATE_RANGE:"allow-single-date-range",CLEAR_BUTTON:"clear-button",CONSTRAIN_TO_ENABLED:"constrain-to-enabled",FIRST_DAY_OF_WEEK:"first-day-of-week",FIXED_HEIGHT:"static-height",LIST_YEARS:"list-years",LOCALE:"locale",MAX:"max",MENU_ANIMATION:"menu-animation",MIN:"min",MODE:"mode",MONTH:"month",PREVENT_FOCUS:"prevent-focus",READONLY:"readonly",SELECTION_FOLLOWS_MONTH:"selection-follows-month",SHOW_HEADER:"show-header",SHOW_OTHER_MONTHS:"show-other-months",SHOW_TODAY:"show-today",TODAY_BUTTON:"today-button",VIEW:"view",YEAR:"year",YEAR_RANGE:"year-range"},U=_(A({},B),{DATA_DATE:"data-date",DATA_EVENT_THEME:"data-event-theme",POPUP_CONTEXT:"forge-popup-context"}),E={ALLOW_SINGLE_DATE_RANGE:"forge-calendar--allow-single-date-range",DATE:"forge-calendar__date",DATE_GRID:"forge-calendar__date-grid",DATE_INNER:"forge-calendar__date__inner",DATE_OTHER_MONTH:"forge-calendar__date--other-month",DATE_SPACER:"forge-calendar__date-spacer",DATE_SELECTED:"forge-calendar__date--selected",DATE_TODAY:"forge-calendar__date--today",DATE_VIEW:"forge-calendar__date-view",DATE_VIEW_ROW:"forge-calendar__date-view__row",DATE_WRAPPER:"forge-calendar__date-wrapper",DAY:"forge-calendar__day",EVENT:"forge-calendar__event",EVENT_OVERFLOW:"forge-calendar__event--overflow",EVENT_WRAPPER:"forge-calendar__event__wrapper",FIXED_HEIGHT:"forge-calendar--fixed-height",FOOTER:"forge-calendar__footer",HEADER:"forge-calendar__header",MDC_RIPPLE_UPGRADED_FOCUSED:"mdc-ripple-upgraded--background-focused",MONTH_MENU_OPEN:"forge-calendar--month-menu-open",PREVENT_FOCUS:"forge-calendar--prevent-focus",RANGE:"forge-calendar__range",RANGE_END:"forge-calendar__range--end",RANGE_START:"forge-calendar__range--start",RANGE_TARGET:"forge-calendar__range__target",READONLY:"forge-calendar--readonly",RTL:"forge-calendar--rtl",SHOW_OTHER_MONTHS:"forge-calendar--show-other-months",SHOW_TODAY:"forge-calendar--show-today",VIEW:"forge-calendar__view",YEAR_MENU_OPEN:"forge-calendar--year-menu-open"},s={ACCESSIBLE_HEADER:"accessible-header",ACCESSIBLE_MONTH:"accessible-month",ACCESSIBLE_YEAR:"accessible-year",CLEAR_BUTTON:"clear-button",DATE_GRID:"date-grid",DATE_VIEW:"date-view",DAY_ROW:"day-row",FOOTER:"footer",HEADER:"header",MENU:"menu",MONTH_BUTTON:"month-button",NEXT_BUTTON:"next-button",NEXT_BUTTON_TOOLTIP:"next-button-tooltip",PREVIOUS_BUTTON:"previous-button",PREVIOUS_BUTTON_TOOLTIP:"previous-button-tooltip",TODAY_BUTTON:"today-button",YEAR_BUTTON:"year-button"},x={SUNDAY:"sunday",MONDAY:"monday",TUESDAY:"tuesday",WEDNESDAY:"wednesday",THURSDAY:"thursday",FRIDAY:"friday",SATURDAY:"saturday"},w=_(A({},x),{CLEAR_BUTTON:"clear-button",DATE:"date",DATE_OTHER_MONTH:"date-other-month",DATE_VIEW:"date-view",DATE_WRAPPER:"date-wrapper",DAY:"day",EVENT:"event",EVENT_WRAPPER:"event-wrapper",FOOTER:"footer",HEADER:"header",MONTH_BUTTON:"month-button",MONTH_BUTTON_ELEMENT:"month-button-element",NEXT_BUTTON:"next-button",PREVIOUS_BUTTON:"previous-button",RANGE:"range",RANGE_END:"range-end",RANGE_START:"range-start",TODAY:"today",TODAY_BUTTON:"today-button",WEEKEND:"weekend",YEAR_BUTTON:"year-button",YEAR_BUTTON_ELEMENT:"year-button-element"}),Y={ACCESSIBLE_HEADER:`#${s.ACCESSIBLE_HEADER}`,ACCESSIBLE_MONTH:`#${s.ACCESSIBLE_MONTH}`,ACCESSIBLE_YEAR:`#${s.ACCESSIBLE_YEAR}`,CALENDAR:".forge-calendar",CLEAR_BUTTON:`#${s.CLEAR_BUTTON}`,DATE:`.${E.DATE}`,DATE_GRID:`#${s.DATE_GRID}`,DATE_INNER:`.${E.DATE_INNER}`,DATE_OTHER_MONTH:`.${E.DATE_OTHER_MONTH}`,DATE_SPACER:`.${E.DATE_SPACER}`,DATE_SELECTED:`.${E.DATE_SELECTED}`,DATE_TODAY:`.${E.DATE_TODAY}`,DATE_VIEW:`#${s.DATE_VIEW}`,DATE_WRAPPER:`.${E.DATE_WRAPPER}`,DAY_ROW:`#${s.DAY_ROW}`,EVENT_WRAPPER:`.${E.EVENT_WRAPPER}`,FOOTER:`#${s.FOOTER}`,HEADER:`#${s.HEADER}`,MENU:I.elementName,MONTH_BUTTON:`#${s.MONTH_BUTTON}`,NEXT_BUTTON:`#${s.NEXT_BUTTON}`,NEXT_BUTTON_TOOLTIP:`#${s.NEXT_BUTTON_TOOLTIP}`,PREVIOUS_BUTTON:`#${s.PREVIOUS_BUTTON}`,PREVIOUS_BUTTON_TOOLTIP:`#${s.PREVIOUS_BUTTON_TOOLTIP}`,RANGE:`.${E.RANGE}`,RANGE_END:`.${E.RANGE_END}`,RANGE_START:`.${E.RANGE_START}`,TODAY_BUTTON:`#${s.TODAY_BUTTON}`,TOOLTIP:S.elementName,VIEW:"#view",YEAR_BUTTON:`#${s.YEAR_BUTTON}`},W={DATE_SELECT:`${u}-date-select`,FOCUS_CHANGE:`${u}-focus-change`,MONTH_CHANGE:`${u}-month-change`,VIEW_CHANGE:`${u}-view-change`},V={DEFAULT_MAX_YEAR_OFFSET:50,DEFAULT_MIN_YEAR_OFFSET:50,FINAL_WEEK_BEGIN_INDEX:35,MONTH_LENGTH:42,PENULTIMATE_WEEK_BEGIN_INDEX:28,WEEK_LENGTH:7,YEARS_IN_VIEW:20},a={elementName:u,attributes:U,classes:E,ids:s,parts:w,selectors:Y,events:W,numbers:V},N=(o=>(o[o.Sunday=0]="Sunday",o[o.Monday=1]="Monday",o[o.Tuesday=2]="Tuesday",o[o.Wednesday=3]="Wednesday",o[o.Thursday=4]="Thursday",o[o.Friday=5]="Friday",o[o.Saturday=6]="Saturday",o))(N||{}),G=(r=>(r[r.First=1]="First",r[r.Last=2]="Last",r[r.Current=3]="Current",r))(G||{});function C(t,n,e){return e||(e=navigator.language),new Date(2017,0,t+1).toLocaleString(e,{weekday:n})}function L(t,n,e){return e||(e=navigator.language),new Date(1970,0,t).toLocaleDateString(e,{day:n})}function y(t,n,e){return e||(e=navigator.language),new Date(1970,t,1).toLocaleString(e,{month:n})}function M(t,n,e){return e||(e=navigator.language),new Date(t,0,1).toLocaleDateString(e,{year:n})}function q(t){t||(t=navigator.language);let n=t.match(/^([a-z]{2,3})(?:-([a-z]{3})(?=$|-))?(?:-([a-z]{4})(?=$|-))?(?:-([a-z]{2}|\d{3})(?=$|-))?/i);if(!n||!n.length)return 1;let e=n[1],r=n[4],i="AEAFBHDJDZEGIQIRJOKWLYOMQASDSY".match(/../g),d="AGARASAUBDBRBSBTBWBZCACNCODMDOETGTGUHKHNIDILINJMJPKEKHKRLAMHMMMOMTMXMZNINPPAPEPHPKPRPTPYSASGSVTHTTTWUMUSVEVIWSYEZAZW".match(/../g),l=["ar","arq","arz","fa"],o="amasbndzengnguhehiidjajvkmknkolomhmlmrmtmyneomorpapssdsmsnsutatethtnurzhzu".match(/../g);return r?d&&d.includes(r)?0:i&&i.includes(r)?6:1:o&&o.includes(e)?0:l&&l.includes(e)?6:1}function ee(t){switch(t||(t=navigator.language),t.split("-")[1]){case"DZ":case"BH":case"BD":case"EG":case"IQ":case"IL":case"JO":case"KW":case"LY":case"MV":case"MR":case"NP":case"OM":case"QA":case"SA":case"SD":case"SY":case"AE":case"YE":case"AF":case"IR":return[4,5];case"BN":return[0,5];default:return[0,6]}}function te(t){return t||(t=navigator.language),["ar","arc","ckb","dv","fa","ha","he","khw","ks","ps","sd","ur","uz-AF","yi"].some(e=>t?t.startsWith(e):!1)}function $(t){return`d${t}`}function m(t){let n=String(t.getMonth()).padStart(2,"0"),e=String(t.getDate()).padStart(2,"0");return["d",t.getFullYear(),n,e].join("")}function k(t){let n=String(t.getMonth()).padStart(2,"0"),e=String(t.getDate()).padStart(2,"0");return["e",t.getFullYear(),n,e].join("")}function le(t,n){let e=document.createElement("div");return e.classList.add(a.classes.DAY),e.id=$(t),e.setAttribute("role","columnheader"),e.setAttribute("aria-label",C(t,"long",n)),e.setAttribute("part",a.parts.DAY),e.textContent=C(t,"short",n),e}function Ee(t,n,e){var i;let r=document.createElement("div");return r.classList.add(a.classes.DATE_VIEW_ROW),r.setAttribute("role","row"),n>0&&!((i=t[0])!=null&&i.thisMonth)?(t.forEach(d=>r.appendChild(v(d.date))),r.setAttribute("aria-hidden","true")):t.forEach(d=>{let l=d.thisMonth||e!=null&&e.showOtherMonths?F(d,e==null?void 0:e.locale):v(d.date);(d.thisMonth||e!=null&&e.showOtherMonths)&&(e!=null&&e.builder)&&(l=e.builder(d,l)),r.appendChild(l)}),r}function F(t,n){let e=document.createElement("div"),r=document.createElement("div"),i=document.createElement("div"),d=document.createElement("div"),l=t.date.getDay();e.id=m(t.date),e.tabIndex=-1,e.classList.add(a.classes.DATE),e.classList.toggle(a.classes.DATE_TODAY,t.today),e.classList.toggle(a.classes.DATE_SELECTED,t.selected),e.classList.toggle(a.classes.DATE_OTHER_MONTH,!t.thisMonth),e.setAttribute("role","gridcell"),e.setAttribute("aria-disabled",t.disabled.toString()),e.setAttribute("aria-label",`${t.today?"Today, ":""}${t.date.toLocaleDateString(n!=null?n:navigator.language,{weekday:"long",month:"long",day:"numeric",year:"numeric"})}`),e.setAttribute("aria-selected",t.selected.toString()),e.setAttribute(a.attributes.DATA_DATE,t.date.toDateString()),e.toggleAttribute("disabled",t.disabled),e.setAttribute("part",a.parts.DATE_WRAPPER);let o="";switch(l){case 0:o=a.parts.SUNDAY;break;case 1:o=a.parts.MONDAY;break;case 2:o=a.parts.TUESDAY;break;case 3:o=a.parts.WEDNESDAY;break;case 4:o=a.parts.THURSDAY;break;case 5:o=a.parts.FRIDAY;break;case 6:o=a.parts.SATURDAY;break}return D(i,"part",o),D(i,"part",a.parts.DATE),g(i,"part",a.parts.TODAY,t.today),g(i,"part",a.parts.DATE_OTHER_MONTH,!t.thisMonth),r.classList.add(a.classes.RANGE_TARGET),e.appendChild(r),i.textContent=L(t.date.getDate(),"numeric",n),i.classList.add(a.classes.DATE_INNER),e.appendChild(i),d.classList.add("mdc-ripple-surface"),e.appendChild(d),e}function v(t){let n=document.createElement("span");return n.classList.add(a.classes.DATE_SPACER),n.id=m(t),n}function ce(t){let n=document.createElement("div");return n.classList.add(a.classes.EVENT_WRAPPER),n.id=k(t),n.setAttribute("part",a.parts.EVENT_WRAPPER),n}function ue(t,n){let e=document.createElement("forge-icon");if(e.classList.add(a.classes.EVENT),e.setAttribute("part",a.parts.EVENT),n)e.classList.add(a.classes.EVENT_OVERFLOW),e.name="add";else{let r='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M0 0h24v24H0z" fill="none"></path><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2z" stroke="var(--forge-calendar-event-stroke-color)" stroke-width="4px" paint-order="stroke"></path></svg>';e.src=r,e.setAttribute(a.attributes.DATA_EVENT_THEME,t.color)}return e}function Te(t){let n=document.createElement("forge-tooltip");return n.text=t,n.setAttribute("aria-hidden","true"),n}function pe(){let t=document.createElement("div");t.classList.add(a.classes.HEADER),t.id=a.ids.HEADER,t.setAttribute("part",a.parts.HEADER);let n=document.createElement("forge-icon-button"),e=document.createElement("forge-icon"),r=document.createElement("forge-tooltip");n.setAttribute("part",a.parts.PREVIOUS_BUTTON),n.id=a.ids.PREVIOUS_BUTTON,n.type="button",n.setAttribute("aria-label","Previous"),e.setAttribute("name","keyboard_arrow_left"),r.id=a.ids.PREVIOUS_BUTTON_TOOLTIP,r.setAttribute("aria-hidden","true"),r.innerText="Previous",n.appendChild(r),n.appendChild(e);let i=document.createElement("forge-icon-button"),d=document.createElement("forge-icon"),l=document.createElement("forge-tooltip");i.setAttribute("part",a.parts.NEXT_BUTTON),i.id=a.ids.NEXT_BUTTON,i.type="button",i.setAttribute("aria-label","Next"),d.setAttribute("name","keyboard_arrow_right"),l.id=a.ids.NEXT_BUTTON_TOOLTIP,l.setAttribute("aria-hidden","true"),l.innerText="Next",i.appendChild(l),i.appendChild(d);let o=document.createElement("forge-button");o.setAttribute("part",a.parts.MONTH_BUTTON),o.id=a.ids.MONTH_BUTTON,o.type="button",o.setAttribute("aria-pressed","false");let c=document.createElement("forge-button");c.setAttribute("part",a.parts.YEAR_BUTTON),c.id=a.ids.YEAR_BUTTON,c.type="button",c.setAttribute("aria-pressed","false");let T=document.createElement("div");return T.setAttribute("aria-live","polite"),T.appendChild(o),T.appendChild(c),t.appendChild(n),t.appendChild(T),t.appendChild(i),t}function me(t,n){let e=document.createElement("span"),r=document.createElement("forge-icon");return e.innerHTML=y(t,"long",n),r.setAttribute("name","arrow_drop_down"),[e,r]}function Ae(t,n){let e=document.createElement("span"),r=document.createElement("forge-icon");return e.innerHTML=M(t,"numeric",n),r.setAttribute("name","arrow_drop_down"),[e,r]}function _e(){let t=document.createElement("div");t.id=a.ids.ACCESSIBLE_HEADER,t.setAttribute("aria-live","polite");let n=document.createElement("span");n.id=a.ids.ACCESSIBLE_MONTH;let e=document.createElement("span");return e.id=a.ids.ACCESSIBLE_YEAR,t.appendChild(n),t.appendChild(e),t}function ge(){let t=document.createElement("div");return t.id=a.ids.FOOTER,t.classList.add(a.classes.FOOTER),t.setAttribute("part",a.parts.FOOTER),t}function De(){let t=document.createElement("forge-button");return t.id=a.ids.CLEAR_BUTTON,t.setAttribute("part",a.parts.CLEAR_BUTTON),t.type="button",t.innerText="Clear",t}function Oe(){let t=document.createElement("forge-button");return t.id=a.ids.TODAY_BUTTON,t.setAttribute("part",a.parts.TODAY_BUTTON),t.type="button",t.innerText="Today",t}function Ne(t,n){let e=O(t).find(r=>r.classList&&r.classList.contains(a.classes.DATE));return!e||!n&&e.hasAttribute("disabled")?null:e}function Ce(t,n){let e=O(t).find(r=>r.id===n);return e!=null?e:null}function be(t,n,e,r){t.tabIndex=r?-1:n,t.classList.toggle(a.classes.MDC_RIPPLE_UPGRADED_FOCUSED,r&&n>-1),n>-1&&e&&!r?t.focus():t.blur()}var z={POPUP:"forge-calendar-dropdown__popup"},H={classes:z};var P=class{constructor(n,e){this._popupClasses=[];this.targetElement=n,this.id=e}get isOpen(){var n,e;return(e=(n=this.dropdownElement)==null?void 0:n.open)!=null?e:!1}get popupClasses(){return this._popupClasses}set popupClasses(n){this._popupClasses=n?f(n)?[...n]:[n]:[]}get locale(){var n;return(n=this.calendar)==null?void 0:n.locale}set locale(n){this.calendar&&(this.calendar.locale=n)}close(){this.dropdownElement&&(this.dropdownElement.open=!1,this.dropdownElement=void 0,this.calendar=void 0)}destroy(){this.close()}open(n){this.calendar=this._createCalendar(n),this._announcerElement=b(),this._announcerElement.id=`${this.id}-activedescendant`,this.dropdownElement=this._createDropdown(),this.dropdownElement.appendChild(this.calendar),this.dropdownElement.appendChild(this._announcerElement),this.dropdownElement.static=!0,this.calendar.addEventListener(a.events.FOCUS_CHANGE,e=>{var i;let r=`${this.id}-activedescendent-`;switch(e.detail.type){case"date":r+=m(e.detail.value);break;case"month":r+=`month-${e.detail.value.toString()}`;break;case"year":r+=`year-${e.detail.value.toString()}`;break}(i=this.activeChangeCallback)==null||i.call(this,r),this._announcerElement&&(this._announcerElement.id=r,this._announcerElement.setAttribute("aria-selected",e.detail.selected.toString()),this._announcerElement.textContent=e.detail.text)}),this.dropdownElement.open=!0,window.requestAnimationFrame(()=>{setTimeout(()=>{this.dropdownElement&&this.dropdownElement.open&&this.calendar&&this.calendar.isConnected&&this.calendar.layout()},p.numbers.ANIMATION_DURATION)})}propagateKeyboardEvent(n){var e;(e=this.calendar)==null||e.handleKey(n)}_createCalendar(n){let e=document.createElement(a.elementName);return Object.assign(e,n),e}_createDropdown(){let n=document.createElement(p.elementName);return n.targetElement=this.targetElement,n.placement="bottom-start",n.animationType="menu",n.classList.add(H.classes.POPUP),n.id=this.id,h(this._popupClasses,n),n.addEventListener(p.events.CLOSE,()=>{this.closeCallback&&this.closeCallback()}),n}};export{a,N as b,G as c,C as d,L as e,y as f,M as g,q as h,ee as i,te as j,$ as k,m as l,k as m,le as n,Ee as o,F as p,v as q,ce as r,ue as s,Te as t,pe as u,me as v,Ae as w,_e as x,ge as y,De as z,Oe as A,Ne as B,Ce as C,be as D,H as E,P as F};
7
+ //# sourceMappingURL=chunk.DD35U4AA.js.map